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

html {
  font-size: 62.5%;
}

body {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

img,
picture,
video,
canvas,
svg {
  display: block;
}

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

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

ul,
ol {
  list-style: none;
}

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

@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Thin.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Light.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Regular.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Medium.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Bold.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Kinto Sans";
  src: url("../fonts/KintoSans/KintoSans-Black.woff2") format("woff2"), url("../fonts/KintoSans/KintoSans-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --p-color: #000;
  --s-color: #000;
  --color-error: #b20000;
  --section-gap-pc: 12rem;
  --section-gap-sp: 6rem;
  --padding-pc: 4rem;
  --padding-sp: 2rem;
  --z-bg: -1;
  --z-base: 0;
  --z-float: 10;
  --z-sticky: 100;
  --z-modal: 200;
  --z-toast: 300;
  --easing: cubic-bezier(.4, .4, 0, 1);
}

html {
  scroll-behavior: smooth;
  overflow-x: auto;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #fff;
  line-height: 170%;
  letter-spacing: 0;
  min-width: 1100px;
  position: relative;
  overflow-x: clip;
}
@media (max-width: 750px) {
  body {
    min-width: auto;
    font-size: clamp(18px, 4.8vw, 36px);
  }
}

main {
  position: relative;
  z-index: var(--z-float);
}

body.is-fixed {
  overflow: hidden;
}

a {
  transition: opacity 0.6s var(--easing);
}
@media (min-width: 750.11px) {
  a:hover {
    opacity: 0.7;
  }
}

img {
  height: auto;
}

h1 {
  font-size: 4rem;
  font-weight: 700;
  line-height: 150%;
}
@media (max-width: 750px) {
  h1 {
    font-size: clamp(28px, 7.4666666667vw, 56px);
  }
}

h2 {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 150%;
}
@media (max-width: 750px) {
  h2 {
    font-size: clamp(24px, 6.4vw, 48px);
  }
}

h3 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 160%;
}
@media (max-width: 750px) {
  h3 {
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
}

h4 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 170%;
}
@media (max-width: 750px) {
  h4 {
    font-size: clamp(18px, 4.8vw, 36px);
  }
}

h5 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 170%;
}
@media (max-width: 750px) {
  h5 {
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
}

[data-anime] {
  opacity: 0;
  transition: opacity 0.8s var(--easing), transform 0.8s var(--easing);
  will-change: opacity, transform;
}

[data-anime=fadeUp] {
  transform: translateY(30px);
}
@media (max-width: 750px) {
  [data-anime=fadeUp] {
    transform: translateY(clamp(30px, 8vw, 60px));
  }
}

[data-anime=fadeIn] {
  transform: none;
}

[data-anime=blur] {
  filter: blur(10px);
  transition: opacity 0.8s var(--easing), filter 0.8s var(--easing);
}
@media (max-width: 750px) {
  [data-anime=blur] {
    filter: blur(clamp(10px, 2.6666666667vw, 20px));
  }
}

[data-anime].is-active {
  opacity: 1;
  transform: none;
  filter: none;
}

@media (min-width: 750.11px) {
  .p-index-fv__btn:hover img,
  .p-index-fv__news__link:hover .p-index-fv__news__arrow,
  .p-index-commitment__btn:hover img,
  .p-index-strengths__btn:hover img,
  .p-index-about__links a:hover img,
  .p-index-news__btn:hover img,
  .p-index-news__list a:hover img,
  .p-index-blog__btn:hover img,
  .p-strengths__feature__link:hover img,
  .p-company__btn:hover img,
  .p-sitemap__link:hover img,
  .p-scrap__btn:hover .p-scrap__btn__arrow,
  .p-scrap__flow__btn:hover img,
  .p-business__btn:hover .p-business__btn__arrow,
  .p-contact__submit-btn:hover img,
  .p-news-detail__back-btn:hover img,
  .p-news__item:hover .p-news__item__arrow,
  .p-news__nav__list a:hover .p-news__nav__more img,
  .p-market__blog__btn:hover img,
  .p-search__graph-btn:hover img,
  .p-recruit__entry__btn:hover img,
  .p-recruit__intro__banner:hover .p-recruit__arrow img,
  .p-recruit__cta__btn:hover .p-recruit__arrow img,
  .p-copper__filter__btn:hover .p-copper__filter__arrow img,
  .c-cta:hover .c-cta__btn img,
  .c-contact__form-btn:hover .c-contact__form-btn__arrow,
  .c-contact__link:hover .c-contact__link__arrow,
  .l-footer__link:hover .l-footer__link__arrow,
  .p-news__pager__btn.--next:not(.is-disabled):hover img,
  .p-blog__pager__btn.--next:not(.is-disabled):hover img {
    animation: arrow-toright 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .p-contact__back-btn:hover img,
  .p-news__pager__btn.--prev:not(.is-disabled):hover img,
  .p-blog__pager__btn.--prev:not(.is-disabled):hover img {
    animation: arrow-toleft 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .l-footer__pagetop:hover .l-footer__pagetop__btn img {
    animation: arrow-totop 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .p-copper__search__card:hover .p-copper__search__card__arrow img {
    animation: arrow-tobottom 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  }
}
@keyframes arrow-toright {
  30% {
    opacity: 0;
    translate: 100% 0;
  }
  31%, 40% {
    opacity: 0;
    translate: -100% 0;
  }
}
@keyframes arrow-toleft {
  30% {
    opacity: 0;
    translate: -100% 0;
  }
  31%, 40% {
    opacity: 0;
    translate: 100% 0;
  }
}
@keyframes arrow-totop {
  30% {
    opacity: 0;
    translate: 0 -100%;
  }
  31%, 40% {
    opacity: 0;
    translate: 0 100%;
  }
}
@keyframes arrow-tobottom {
  30% {
    opacity: 0;
    translate: 0 100%;
  }
  31%, 40% {
    opacity: 0;
    translate: 0 -100%;
  }
}
.c-inner {
  width: min(90%, 1120px);
  margin-left: auto;
  margin-right: auto;
}

.c-hero {
  position: relative;
  height: clamp(335px, 24.2708333333vw, 466px);
  box-sizing: border-box;
  padding-top: clamp(152px, 10.9895833333vw, 211px);
}

.c-hero__title {
  position: relative;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  font-size: inherit;
  line-height: 1;
}

.c-hero__title .ja {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  line-height: 1;
}

.c-hero__title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.c-hero__title .en {
  display: block;
  margin-top: clamp(14px, 1.0416666667vw, 20px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.c-hero.--visual {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: clamp(38px, 2.7604166667vw, 53px);
  height: auto;
  padding-top: clamp(129px, 9.375vw, 180px);
  padding-bottom: clamp(30px, 2.1875vw, 42px);
}

.c-hero.--visual .c-hero__content {
  width: clamp(465px, 33.6979166667vw, 647px);
  margin-left: calc((100% - clamp(802px, 72.9166666667vw, 1400px)) / 2);
  padding-top: clamp(22px, 1.6145833333vw, 31px);
  flex-shrink: 0;
  box-sizing: border-box;
}

.c-hero.--visual .c-hero__title {
  width: auto;
  margin-left: 0;
  margin-right: 0;
}

.c-hero.--visual .c-hero__title .en {
  margin-top: clamp(8px, 0.5729166667vw, 11px);
  white-space: nowrap;
}

.c-hero__catch {
  margin: clamp(29px, 2.0833333333vw, 40px) 0 0;
  color: #292929;
  font-size: clamp(31px, 2.2395833333vw, 43px);
}

.c-hero.--visual .c-hero__content > p {
  margin: clamp(22px, 1.5625vw, 30px) 0 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.8;
}

.c-hero__visual {
  width: 50%;
  height: clamp(396px, 28.6979166667vw, 551px);
}

.c-hero__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px) 0 0 clamp(14px, 1.0416666667vw, 20px);
}

@media (max-width: 750px) {
  .c-hero {
    height: auto;
    padding: clamp(115px, 30.6666666667vw, 230px) 0 clamp(45px, 12vw, 90px);
  }
  .c-hero__title {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .c-hero__title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .c-hero__title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .c-hero__title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: 1.1;
  }
  .c-hero.--visual {
    display: block;
    padding: clamp(115px, 30.6666666667vw, 230px) 0 clamp(45px, 12vw, 90px);
  }
  .c-hero.--visual .c-hero__content {
    width: auto;
    margin-left: 0;
    padding: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .c-hero.--visual .c-hero__title .en {
    margin-top: clamp(15px, 4vw, 30px);
    white-space: normal;
  }
  .c-hero__catch {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .c-hero.--visual .c-hero__content > p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .c-hero.--visual .c-hero__content > p br {
    display: none;
  }
  .c-hero__visual {
    width: calc(100% - clamp(20px, 5.3333333333vw, 40px));
    height: clamp(200px, 53.3333333333vw, 400px);
    margin: clamp(30px, 8vw, 60px) 0 0 auto;
  }
  .c-hero__visual img {
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 0 clamp(10px, 2.6666666667vw, 20px);
  }
}
.c-ttl {
  margin: 0;
  line-height: 1;
  text-align: center;
}

.c-ttl .ja {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  line-height: 1;
}

.c-ttl .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.c-ttl .en {
  display: block;
  margin-top: clamp(8px, 0.5729166667vw, 11px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(58px, 4.1666666667vw, 80px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.c-ttl.--white .ja,
.c-ttl.--white .en {
  color: #ffffff;
}

.c-ttl.--white .ja::before {
  background-color: #ffffff;
}

@media (max-width: 750px) {
  .c-ttl .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .c-ttl .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .c-ttl .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
}
.c-breadcrumb {
  position: relative;
  width: clamp(917px, 83.3333333333vw, 1600px);
  max-width: calc(100% - 80px);
  margin: clamp(72px, 5.2083333333vw, 100px) auto 0;
  box-sizing: border-box;
}

.c-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.2;
}

.c-breadcrumb__item {
  display: flex;
  align-items: center;
  color: #000000;
}

.c-breadcrumb__item:last-child {
  color: #085cac;
}

.c-breadcrumb__item:not(:last-child)::after {
  content: ">";
  margin: 0 0.35em;
  color: #000000;
}

.c-breadcrumb__item a {
  color: inherit;
}

html:lang(en) .c-breadcrumb__list,
html[lang=en] .c-breadcrumb__list {
  flex-wrap: nowrap;
}

html:lang(en) .c-breadcrumb__item:last-child,
html[lang=en] .c-breadcrumb__item:last-child {
  flex-shrink: 0;
  min-width: auto;
  white-space: nowrap;
}

html:lang(en) .c-breadcrumb__item:last-child span,
html[lang=en] .c-breadcrumb__item:last-child span {
  display: inline-block;
  white-space: nowrap;
}

@media (max-width: 750px) {
  .c-breadcrumb {
    width: auto;
    max-width: none;
    margin: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .c-breadcrumb__list {
    flex-wrap: nowrap;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    white-space: nowrap;
  }
  .c-breadcrumb__item {
    flex-shrink: 0;
  }
  .c-breadcrumb__item:last-child {
    flex-shrink: 1;
    min-width: 0;
  }
  .c-breadcrumb__item:last-child > span {
    overflow: hidden;
    text-overflow: ellipsis;
  }
  html:lang(en) .c-breadcrumb__list,
  html[lang=en] .c-breadcrumb__list {
    display: block;
    white-space: normal;
  }
  html:lang(en) .c-breadcrumb__item,
  html[lang=en] .c-breadcrumb__item {
    display: inline;
  }
  html:lang(en) .c-breadcrumb__item:last-child,
  html[lang=en] .c-breadcrumb__item:last-child {
    min-width: 0;
    white-space: normal;
  }
  html:lang(en) .c-breadcrumb__item:last-child span,
  html[lang=en] .c-breadcrumb__item:last-child span {
    display: inline;
    white-space: normal;
  }
  html:lang(en) .c-breadcrumb__item:last-child > span,
  html[lang=en] .c-breadcrumb__item:last-child > span {
    display: inline;
    overflow: visible;
    text-overflow: clip;
  }
}
.c-table-wrap {
  margin-top: 20px;
  overflow-x: auto;
  background-color: #ecf5ff;
  border-radius: 10px;
}

.c-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  color: #292929;
  text-align: center;
}

.c-table thead {
  background-color: #085cac;
  color: #ffffff;
}

.c-table th,
.c-table td {
  padding: clamp(4px, 0.3125vw, 6px);
  border: 1px solid #d1d6dd;
  vertical-align: middle;
  font-weight: 700;
  box-sizing: border-box;
  line-height: 1.2;
}

.c-table thead th {
  font-weight: 700;
  border-color: rgba(255, 255, 255, 0.25);
}

.c-table tbody th,
.c-table tbody td {
  background-color: #ecf5ff;
}

.c-table.--comp thead tr:last-child th {
  padding-top: clamp(17px, 1.25vw, 24px);
  padding-bottom: clamp(17px, 1.25vw, 24px);
}

@media (max-width: 750px) {
  .c-table-wrap {
    margin-top: clamp(15px, 4vw, 30px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .c-table {
    width: clamp(840px, 224vw, 1680px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .c-table th,
  .c-table td {
    padding: clamp(4px, 1.0666666667vw, 8px);
  }
  .c-table thead th {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .c-table.--comp thead tr:last-child th {
    padding-top: clamp(12px, 3.2vw, 24px);
    padding-bottom: clamp(12px, 3.2vw, 24px);
  }
}
.c-panel {
  background-color: #ffffff;
  border-radius: 40px;
  padding: 140px 0 20px;
  box-sizing: border-box;
}

.c-panel.--sm {
  padding-top: 112px;
}

.c-panel__inner {
  width: clamp(688px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 750px) {
  .c-panel,
  .c-panel.--sm {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .c-panel__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
}
.c-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: clamp(122px, 8.8020833333vw, 169px);
  height: clamp(35px, 2.5520833333vw, 49px);
  padding: 0 clamp(17px, 1.25vw, 24px);
  box-sizing: border-box;
  border-radius: clamp(18px, 1.3020833333vw, 25px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(17px, 1.1979166667vw, 23px);
  font-weight: 700;
  line-height: 1;
}

.c-tag.--dark {
  background-color: #292929;
}

@media (max-width: 750px) {
  .c-tag {
    min-width: clamp(120px, 32vw, 240px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(18px, 4.8vw, 36px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
}
.c-block {
  margin-top: clamp(86px, 6.25vw, 120px);
}

.c-block + .c-block {
  margin-top: clamp(29px, 2.0833333333vw, 40px);
}

@media (max-width: 750px) {
  .c-block {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .c-block + .c-block {
    margin-top: clamp(30px, 8vw, 60px);
  }
}
.c-contact {
  position: relative;
  height: clamp(605px, 52.3958333333vw, 1006px);
  padding: clamp(18px, 1.5625vw, 30px) clamp(16px, 1.40625vw, 27px);
  box-sizing: border-box;
}

.c-contact__panel {
  position: relative;
  height: 100%;
  background-color: #0a2034;
  border-radius: clamp(24px, 2.0833333333vw, 40px);
  box-sizing: border-box;
  overflow: hidden;
}

.c-contact__photos {
  position: absolute;
  top: 0;
  bottom: 0;
  width: clamp(211px, 18.28125vw, 351px);
  z-index: var(--z-base);
  pointer-events: none;
}

.c-contact__photos.--left {
  left: clamp(21px, 1.8229166667vw, 35px);
}

.c-contact__photos.--right {
  right: clamp(21px, 1.8229166667vw, 35px);
}

.c-contact__photos__track {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
  will-change: transform;
}

.c-contact__photos.--left .c-contact__photos__track {
  animation: c-contact-photos-up 40s linear infinite;
}

.c-contact__photos.--right .c-contact__photos__track {
  animation: c-contact-photos-down 40s linear infinite;
}

.c-contact__photos li {
  line-height: 0;
  flex-shrink: 0;
  margin-bottom: clamp(12px, 1.0416666667vw, 20px);
}

.c-contact__photos img {
  display: block;
  width: clamp(211px, 18.28125vw, 351px);
  height: clamp(166px, 14.375vw, 276px);
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

@keyframes c-contact-photos-up {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-50%);
  }
}
@keyframes c-contact-photos-down {
  from {
    transform: translateY(-50%);
  }
  to {
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-contact__photos.--left .c-contact__photos__track,
  .c-contact__photos.--right .c-contact__photos__track {
    animation: none;
  }
  .c-contact__photos.--right .c-contact__photos__track {
    transform: translateY(0);
  }
}
.c-contact__body {
  position: relative;
  z-index: var(--z-float);
  padding-top: clamp(102px, 8.8541666667vw, 170px);
  text-align: center;
  box-sizing: border-box;
}

.c-contact__title {
  margin: 0;
  font-size: inherit;
  line-height: 1;
}

.c-contact__title .ja {
  display: block;
  color: #ffffff;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1;
}

.c-contact__title .en {
  display: block;
  margin-top: clamp(12px, 1.0416666667vw, 20px);
  color: #b7d3f2;
  font-family: "Roboto", sans-serif;
  font-size: clamp(66px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.c-contact__lead {
  margin: clamp(14px, 1.25vw, 24px) 0 0;
  color: #ffffff;
  font-size: clamp(21px, 1.8229166667vw, 35px);
  font-weight: 700;
  line-height: 1.4;
}

.c-contact__lead .hl {
  background-image: linear-gradient(90deg, #0083FF 0%, #ADD7FF 50%, #0083FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-weight: 700;
}

.c-contact__lead .tail {
  font-size: clamp(19px, 1.6145833333vw, 31px);
  font-weight: 700;
}

.c-contact__text {
  margin: clamp(11px, 0.9375vw, 18px) 0 0;
  color: #ffffff;
  font-size: clamp(10px, 0.8333333333vw, 16px);
  line-height: 170%;
}

.c-contact__actions {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: clamp(11px, 0.9895833333vw, 19px);
  width: fit-content;
  margin-top: clamp(30px, 2.6041666667vw, 50px);
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #085cac;
  box-sizing: border-box;
  padding-top: clamp(30px, 2.6041666667vw, 50px);
}

.c-contact__col {
  display: flex;
  flex-direction: column;
  gap: clamp(8px, 0.6770833333vw, 13px);
  width: clamp(260px, 22.5vw, 432px);
}

.c-contact__phone {
  background-color: #ecf5ff;
  border: 1px solid #085cac;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  padding: clamp(13px, 1.09375vw, 21px) clamp(17px, 1.5104166667vw, 29px) clamp(17px, 1.4583333333vw, 28px);
  box-sizing: border-box;
  text-align: left;
}

.c-contact__phone__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.625vw, 12px);
  margin: 0 0 clamp(11px, 0.9375vw, 18px);
  color: #085cac;
  font-size: clamp(11px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.c-contact__phone__label::before,
.c-contact__phone__label::after {
  content: "";
  display: block;
  width: clamp(14px, 1.25vw, 24px);
  height: clamp(1px, 0.1041666667vw, 2px);
  background-color: #085cac;
  flex-shrink: 0;
}

.c-contact__phone__label__en,
.c-contact__links__label__en {
  display: none;
}

html[lang=en] .c-contact__phone__label__ja,
html[lang=en] .c-contact__links__label__ja {
  display: none;
}

html[lang=en] .c-contact__phone__label__en,
html[lang=en] .c-contact__links__label__en {
  display: block;
  text-align: center;
}

.c-contact__phone__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.c-contact__phone__list li + li {
  margin-top: clamp(8px, 0.7291666667vw, 14px);
}

.c-contact__phone__list a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  color: #292929;
  text-decoration: none;
}

.c-contact__phone__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(22px, 1.875vw, 36px);
  height: clamp(22px, 1.875vw, 36px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
  margin-right: clamp(4px, 0.3645833333vw, 7px);
}

.c-contact__phone__icon img {
  display: block;
  width: clamp(11px, 0.9375vw, 18px);
  height: clamp(11px, 0.9375vw, 18px);
}

.c-contact__phone__num {
  font-size: clamp(19px, 1.6666666667vw, 32px);
  font-weight: 700;
}

.c-contact__phone__area {
  color: #292929;
  font-size: clamp(11px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.c-contact__form-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(53px, 4.5833333333vw, 88px);
  background-color: #085cac;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  color: #ffffff;
  font-size: clamp(12px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .c-contact__form-btn:hover {
    background-color: #292929;
    opacity: 1;
  }
}
.c-contact__form-btn__arrow {
  position: absolute;
  top: 50%;
  right: clamp(12px, 1.0416666667vw, 20px);
  transform: translateY(-50%);
  display: block;
  width: clamp(9px, 0.78125vw, 15px);
  height: clamp(9px, 0.78125vw, 15px);
}

.c-contact__links {
  display: flex;
  flex-direction: column;
  width: clamp(260px, 22.5vw, 432px);
  background-color: #ffffff;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  padding: clamp(13px, 1.09375vw, 21px) clamp(7px, 0.5729166667vw, 11px) clamp(7px, 0.5729166667vw, 11px);
  box-sizing: border-box;
  text-align: left;
}

.c-contact__links__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.625vw, 12px);
  margin: 0 0 clamp(11px, 0.9375vw, 18px);
  color: #085cac;
  font-size: clamp(11px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.c-contact__links__label::before,
.c-contact__links__label::after {
  content: "";
  display: block;
  width: clamp(14px, 1.25vw, 24px);
  height: clamp(1px, 0.1041666667vw, 2px);
  background-color: #085cac;
  flex-shrink: 0;
}

.c-contact__link {
  position: relative;
  display: block;
  background-color: #ecf5ff;
  border: 1px solid #085cac;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  padding: clamp(11px, 0.9375vw, 18px) clamp(24px, 2.0833333333vw, 40px) clamp(11px, 0.9375vw, 18px) clamp(19px, 1.6145833333vw, 31px);
  box-sizing: border-box;
  text-decoration: none;
}

.c-contact__link + .c-contact__link {
  margin-top: clamp(5px, 0.4166666667vw, 8px);
}

.c-contact__link__title {
  display: block;
  color: #085cac;
  font-size: clamp(12px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.3;
}

.c-contact__link__desc {
  display: block;
  margin-top: clamp(4px, 0.3125vw, 6px);
  color: #292929;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1.4;
}

.c-contact__link__arrow {
  position: absolute;
  top: 50%;
  right: clamp(12px, 1.0416666667vw, 20px);
  transform: translateY(-50%);
  display: block;
  width: clamp(9px, 0.78125vw, 15px);
  height: clamp(9px, 0.78125vw, 15px);
}

@keyframes c-contact-photos-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@keyframes c-contact-photos-right {
  from {
    transform: translateX(-50%);
  }
  to {
    transform: translateX(0);
  }
}
@media (max-width: 750px) {
  .c-contact {
    height: auto;
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(11px, 2.9333333333vw, 22px);
  }
  .c-contact__panel {
    display: flex;
    flex-direction: column;
    height: auto;
    padding-bottom: clamp(69px, 18.4vw, 138px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .c-contact__body {
    order: 1;
    padding-top: clamp(85px, 22.6666666667vw, 170px);
  }
  .c-contact__photos {
    order: 2;
    position: static;
    width: auto;
  }
  .c-contact__photos.--left {
    margin-top: clamp(48.7px, 12.9866666667vw, 97.4px);
  }
  .c-contact__photos.--right {
    margin-top: clamp(15px, 4vw, 30px);
  }
  .c-contact__photos__track {
    flex-direction: row;
    gap: 0;
    width: max-content;
  }
  .c-contact__photos.--left .c-contact__photos__track {
    animation-name: c-contact-photos-left;
  }
  .c-contact__photos.--right .c-contact__photos__track {
    animation-name: c-contact-photos-right;
  }
  .c-contact__photos li {
    margin-bottom: 0;
    margin-right: clamp(9px, 2.4vw, 18px);
  }
  .c-contact__photos img {
    width: clamp(177px, 47.2vw, 354px);
    height: clamp(139px, 37.0666666667vw, 278px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .c-contact__title .ja {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .c-contact__title .ja::before {
    content: "";
    display: block;
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
    border-radius: 50%;
    background-color: #085cac;
    flex-shrink: 0;
  }
  .c-contact__title .en {
    margin-top: clamp(16px, 4.2666666667vw, 32px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
  }
  .c-contact__lead {
    margin-top: clamp(19px, 5.0666666667vw, 38px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .c-contact__lead .hl {
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .c-contact__lead .tail {
    font-size: clamp(15px, 4vw, 30px);
  }
  .c-contact__text {
    margin: clamp(8.5px, 2.2666666667vw, 17px) clamp(26px, 6.9333333333vw, 52px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .c-contact__actions {
    flex-direction: column;
    gap: clamp(18px, 4.8vw, 36px);
    width: auto;
    margin: clamp(29px, 7.7333333333vw, 58px) clamp(24px, 6.4vw, 48px) 0;
    padding-top: clamp(35px, 9.3333333333vw, 70px);
  }
  .c-contact__col {
    gap: clamp(8.2px, 2.1866666667vw, 16.4px);
    width: auto;
    margin: 0 clamp(0.9px, 0.24vw, 1.8px);
  }
  .c-contact__phone {
    padding: clamp(19.8px, 5.28vw, 39.6px) 0 clamp(15.9px, 4.24vw, 31.8px);
    border: none;
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .c-contact__phone__label,
  .c-contact__links__label {
    gap: clamp(6px, 1.6vw, 12px);
    margin-bottom: clamp(9.6px, 2.56vw, 19.2px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  html[lang=en] .c-contact__phone__label__en,
  html[lang=en] .c-contact__links__label__en {
    line-height: 1.4;
  }
  .c-contact__phone__label::before,
  .c-contact__phone__label::after,
  .c-contact__links__label::before,
  .c-contact__links__label::after {
    width: clamp(14.6px, 3.8933333333vw, 29.2px);
    height: clamp(2px, 0.5333333333vw, 4px);
  }
  .c-contact__phone__list li + li {
    margin-top: clamp(7.6px, 2.0266666667vw, 15.2px);
  }
  .c-contact__phone__icon {
    width: clamp(28.6px, 7.6266666667vw, 57.2px);
    height: clamp(28.6px, 7.6266666667vw, 57.2px);
    margin-right: clamp(5.8px, 1.5466666667vw, 11.6px);
  }
  .c-contact__phone__icon img {
    width: clamp(14.3px, 3.8133333333vw, 28.6px);
    height: clamp(14.3px, 3.8133333333vw, 28.6px);
  }
  .c-contact__phone__num {
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: 1;
  }
  .c-contact__phone__area {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .c-contact__form-btn {
    height: clamp(71px, 18.9333333333vw, 142px);
    padding-right: clamp(11px, 2.9333333333vw, 22px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .c-contact__form-btn__arrow {
    right: clamp(21.2px, 5.6533333333vw, 42.4px);
    width: clamp(14.2px, 3.7866666667vw, 28.4px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .c-contact__links {
    width: auto;
    padding: clamp(22.9px, 6.1066666667vw, 45.8px) clamp(13.8px, 3.68vw, 27.6px) clamp(11.7px, 3.12vw, 23.4px) clamp(12.8px, 3.4133333333vw, 25.6px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .c-contact__links__label {
    margin-bottom: clamp(16.7px, 4.4533333333vw, 33.4px);
  }
  .c-contact__link {
    padding: clamp(15.2px, 4.0533333333vw, 30.4px) clamp(40px, 10.6666666667vw, 80px) clamp(11.4px, 3.04vw, 22.8px) clamp(21px, 5.6vw, 42px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .c-contact__link + .c-contact__link {
    margin-top: clamp(5.6px, 1.4933333333vw, 11.2px);
  }
  .c-contact__link__title {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .c-contact__link__desc {
    margin-top: clamp(2.9px, 0.7733333333vw, 5.8px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .c-contact__link__arrow {
    right: clamp(21.8px, 5.8133333333vw, 43.6px);
    width: clamp(15.7px, 4.1866666667vw, 31.4px);
    height: clamp(15.5px, 4.1333333333vw, 31px);
  }
}
.c-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(7px, 0.5208333333vw, 10px);
  color: #085cac;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.c-label__required,
.c-label__optional {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(37px, 2.7083333333vw, 52px);
  height: clamp(17px, 1.1979166667vw, 23px);
  border-radius: 0;
  color: #ffffff;
  font-size: clamp(11px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.c-label__required {
  background-color: #292929;
}

.c-label__optional {
  background-color: rgba(41, 41, 41, 0.35);
}

.c-input,
.c-textarea {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: none;
  border-radius: 0;
  background-color: #ecf5ff;
  color: #292929;
  font-family: inherit;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.c-input {
  height: clamp(50px, 3.59375vw, 69px);
  padding: 0 clamp(22px, 1.5625vw, 30px);
}

.c-textarea {
  height: clamp(99px, 7.1875vw, 138px);
  padding: clamp(20px, 1.4583333333vw, 28px) clamp(22px, 1.5625vw, 30px);
  resize: vertical;
}

.c-input::placeholder,
.c-textarea::placeholder {
  color: rgba(41, 41, 41, 0.38);
}

.c-checkbox {
  display: inline-flex;
  align-items: flex-start;
  gap: clamp(11px, 0.8333333333vw, 16px);
  cursor: pointer;
  color: #000000;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: clamp(19px, 1.3541666667vw, 26px);
}

.c-checkbox input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
}

.c-checkbox__box {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
  margin-top: clamp(4px, 0.2604166667vw, 5px);
  box-sizing: border-box;
  border: 1px solid #bfbfbf;
  background-color: #ffffff;
}

.c-checkbox input:checked + .c-checkbox__box {
  border-color: #085cac;
  background-color: #085cac;
}

.c-checkbox input:checked + .c-checkbox__box::after {
  content: "";
  position: absolute;
  inset: 0;
  background: center/72% 72% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");
}

.c-checkbox__text {
  flex: 1;
  min-width: 0;
}

@media (max-width: 750px) {
  .c-label {
    justify-content: flex-start;
    gap: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .c-label__required,
  .c-label__optional {
    width: clamp(40px, 10.6666666667vw, 80px);
    height: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .c-input,
  .c-textarea {
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .c-input {
    height: clamp(50px, 13.3333333333vw, 100px);
    padding: 0 clamp(15px, 4vw, 30px);
  }
  .c-textarea {
    height: clamp(160px, 42.6666666667vw, 320px);
    padding: clamp(12px, 3.2vw, 24px) clamp(15px, 4vw, 30px);
  }
  .c-checkbox {
    gap: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .c-checkbox__box {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
}
.c-cta {
  position: relative;
  display: block;
  width: clamp(917px, 83.3333333333vw, 1600px);
  max-width: calc(100% - 80px);
  height: clamp(232px, 16.8229166667vw, 323px);
  margin: clamp(72px, 5.2083333333vw, 100px) auto 0;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.c-cta__bg {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  clip-path: inset(0 round clamp(29px, 2.0833333333vw, 40px));
}

.c-cta__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  object-position: center 50%;
  transition: transform 0.4s var(--easing);
}

.c-cta__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-color: rgba(0, 18, 34, 0.63);
}

.c-cta__body {
  position: relative;
  z-index: var(--z-base);
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  height: 100%;
  padding: 0 clamp(101px, 7.34375vw, 141px);
}

.c-cta__content {
  max-width: clamp(719px, 52.0833333333vw, 1000px);
}

.c-cta__title {
  margin: 0;
  color: #ffffff;
  font-size: clamp(30px, 2.1875vw, 42px);
  font-weight: 700;
  line-height: 1.5;
}

.c-cta__text {
  margin: clamp(14px, 1.0416666667vw, 20px) 0 0;
  color: #ffffff;
  line-height: 1.7;
}

.c-cta__btn {
  position: absolute;
  right: clamp(32px, 2.2916666667vw, 44px);
  bottom: clamp(26px, 1.875vw, 36px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(9px, 0.625vw, 12px);
  width: clamp(210px, 15.2083333333vw, 292px);
  height: clamp(58px, 4.21875vw, 81px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.c-cta__btn img {
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  transition: filter 0.3s ease-out;
}

@media (max-width: 750px) {
  .c-cta {
    width: auto;
    max-width: none;
    height: auto;
    margin: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px) 0;
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .c-cta__bg {
    clip-path: inset(0 round clamp(20px, 5.3333333333vw, 40px));
  }
  .c-cta__body {
    padding: clamp(40px, 10.6666666667vw, 80px) clamp(20px, 5.3333333333vw, 40px);
  }
  .c-cta__content {
    max-width: none;
  }
  .c-cta__title {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: 1.6;
  }
  .c-cta__text {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .c-cta__text br {
    display: none;
  }
  .c-cta__btn {
    position: static;
    align-self: center;
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    margin-top: clamp(30px, 8vw, 60px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .c-cta__btn img {
    width: clamp(15px, 4vw, 30px);
    height: clamp(15px, 4vw, 30px);
  }
}
.c-cycle {
  position: relative;
  width: 590px;
  height: 522px;
  transform-origin: top left;
}

.c-cycle__ring {
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.c-cycle__item {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  offset-path: path("M 390.04,396.19 A 156.35,244.69 54.65 1 1 209.12,141.15 A 156.35,244.69 54.65 1 1 390.04,396.19");
  offset-distance: 0%;
  offset-anchor: center;
  offset-rotate: 0deg;
  animation: c-cycle-orbit 24s linear infinite;
  animation-delay: calc(var(--cycle-start) * -0.24s);
  will-change: offset-distance;
  pointer-events: none;
}

.c-cycle__item img {
  display: block;
  width: 100%;
  height: 100%;
}

.c-cycle__item.--icon {
  width: 214px;
  height: 214px;
  z-index: 2;
  animation: none;
  offset-distance: calc(var(--cycle-start) * 1%);
  will-change: auto;
}

.c-cycle__item.--arrow {
  width: 24px;
  height: 24px;
  offset-rotate: auto 35deg;
  z-index: 1;
}

.c-cycle__item.--dot {
  width: 28px;
  height: 28px;
  z-index: 1;
}

@keyframes c-cycle-orbit {
  to {
    offset-distance: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-cycle__item {
    animation: none;
    offset-distance: calc(var(--cycle-start) * 1%);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .c-cta:hover {
    opacity: 1;
  }
  .c-cta:hover .c-cta__bg img {
    transform: scale(1.05);
  }
  .c-cta:hover .c-cta__btn {
    background-color: #085cac;
    color: #ffffff;
  }
  .c-cta:hover .c-cta__btn img {
    filter: brightness(0) invert(1);
  }
}
.c-sp-fixed {
  display: none;
}

@media (max-width: 750px) {
  .c-sp-fixed {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: var(--z-sticky);
    display: flex;
    width: 100%;
  }
  .c-sp-fixed__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: clamp(53px, 14.1333333333vw, 106px);
    box-sizing: border-box;
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
    color: #ffffff;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
    transition: background-color 0.3s ease-out;
  }
  .c-sp-fixed__btn.--primary {
    background-color: #085cac;
  }
  .c-sp-fixed__btn.--dark {
    background-color: #292929;
  }
}
@media (min-width: 750.11px) {
  .c-sp-fixed__btn:hover {
    opacity: 1;
  }
  .c-sp-fixed__btn.--primary:hover {
    background-color: #292929;
  }
  .c-sp-fixed__btn.--dark:hover {
    background-color: #085cac;
  }
}
@media (max-width: 750px) {
  .u-pc-only {
    display: none !important;
  }
}

.u-sp-only {
  display: none !important;
}
@media (max-width: 750px) {
  .u-sp-only {
    display: block !important;
  }
}

.u-tab-only {
  display: none !important;
}
@media (min-width: 750.11px) and (max-width: 1399px) {
  .u-tab-only {
    display: block !important;
  }
}

.u-tab-sp-only {
  display: none !important;
}
@media (max-width: 1399px) {
  .u-tab-sp-only {
    display: block !important;
  }
}

.u-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

.u-pd-0 {
  padding: 0px !important;
}

.u-pt-0 {
  padding-top: 0px !important;
}

.u-pb-0 {
  padding-bottom: 0px !important;
}

.u-pl-0 {
  padding-left: 0px !important;
}

.u-pr-0 {
  padding-right: 0px !important;
}

.u-mg-0 {
  margin: 0px !important;
}

.u-mt-0 {
  margin-top: 0px !important;
}

.u-mb-0 {
  margin-bottom: 0px !important;
}

.u-ml-0 {
  margin-left: 0px !important;
}

.u-mr-0 {
  margin-right: 0px !important;
}

.u-pd-8 {
  padding: 8px !important;
}

.u-pt-8 {
  padding-top: 8px !important;
}

.u-pb-8 {
  padding-bottom: 8px !important;
}

.u-pl-8 {
  padding-left: 8px !important;
}

.u-pr-8 {
  padding-right: 8px !important;
}

.u-mg-8 {
  margin: 8px !important;
}

.u-mt-8 {
  margin-top: 8px !important;
}

.u-mb-8 {
  margin-bottom: 8px !important;
}

.u-ml-8 {
  margin-left: 8px !important;
}

.u-mr-8 {
  margin-right: 8px !important;
}

.u-pd-16 {
  padding: 16px !important;
}

.u-pt-16 {
  padding-top: 16px !important;
}

.u-pb-16 {
  padding-bottom: 16px !important;
}

.u-pl-16 {
  padding-left: 16px !important;
}

.u-pr-16 {
  padding-right: 16px !important;
}

.u-mg-16 {
  margin: 16px !important;
}

.u-mt-16 {
  margin-top: 16px !important;
}

.u-mb-16 {
  margin-bottom: 16px !important;
}

.u-ml-16 {
  margin-left: 16px !important;
}

.u-mr-16 {
  margin-right: 16px !important;
}

.u-pd-24 {
  padding: 24px !important;
}

.u-pt-24 {
  padding-top: 24px !important;
}

.u-pb-24 {
  padding-bottom: 24px !important;
}

.u-pl-24 {
  padding-left: 24px !important;
}

.u-pr-24 {
  padding-right: 24px !important;
}

.u-mg-24 {
  margin: 24px !important;
}

.u-mt-24 {
  margin-top: 24px !important;
}

.u-mb-24 {
  margin-bottom: 24px !important;
}

.u-ml-24 {
  margin-left: 24px !important;
}

.u-mr-24 {
  margin-right: 24px !important;
}

.u-pd-32 {
  padding: 32px !important;
}

.u-pt-32 {
  padding-top: 32px !important;
}

.u-pb-32 {
  padding-bottom: 32px !important;
}

.u-pl-32 {
  padding-left: 32px !important;
}

.u-pr-32 {
  padding-right: 32px !important;
}

.u-mg-32 {
  margin: 32px !important;
}

.u-mt-32 {
  margin-top: 32px !important;
}

.u-mb-32 {
  margin-bottom: 32px !important;
}

.u-ml-32 {
  margin-left: 32px !important;
}

.u-mr-32 {
  margin-right: 32px !important;
}

.u-pd-40 {
  padding: 40px !important;
}

.u-pt-40 {
  padding-top: 40px !important;
}

.u-pb-40 {
  padding-bottom: 40px !important;
}

.u-pl-40 {
  padding-left: 40px !important;
}

.u-pr-40 {
  padding-right: 40px !important;
}

.u-mg-40 {
  margin: 40px !important;
}

.u-mt-40 {
  margin-top: 40px !important;
}

.u-mb-40 {
  margin-bottom: 40px !important;
}

.u-ml-40 {
  margin-left: 40px !important;
}

.u-mr-40 {
  margin-right: 40px !important;
}

.u-pd-48 {
  padding: 48px !important;
}

.u-pt-48 {
  padding-top: 48px !important;
}

.u-pb-48 {
  padding-bottom: 48px !important;
}

.u-pl-48 {
  padding-left: 48px !important;
}

.u-pr-48 {
  padding-right: 48px !important;
}

.u-mg-48 {
  margin: 48px !important;
}

.u-mt-48 {
  margin-top: 48px !important;
}

.u-mb-48 {
  margin-bottom: 48px !important;
}

.u-ml-48 {
  margin-left: 48px !important;
}

.u-mr-48 {
  margin-right: 48px !important;
}

.u-pd-56 {
  padding: 56px !important;
}

.u-pt-56 {
  padding-top: 56px !important;
}

.u-pb-56 {
  padding-bottom: 56px !important;
}

.u-pl-56 {
  padding-left: 56px !important;
}

.u-pr-56 {
  padding-right: 56px !important;
}

.u-mg-56 {
  margin: 56px !important;
}

.u-mt-56 {
  margin-top: 56px !important;
}

.u-mb-56 {
  margin-bottom: 56px !important;
}

.u-ml-56 {
  margin-left: 56px !important;
}

.u-mr-56 {
  margin-right: 56px !important;
}

.u-pd-64 {
  padding: 64px !important;
}

.u-pt-64 {
  padding-top: 64px !important;
}

.u-pb-64 {
  padding-bottom: 64px !important;
}

.u-pl-64 {
  padding-left: 64px !important;
}

.u-pr-64 {
  padding-right: 64px !important;
}

.u-mg-64 {
  margin: 64px !important;
}

.u-mt-64 {
  margin-top: 64px !important;
}

.u-mb-64 {
  margin-bottom: 64px !important;
}

.u-ml-64 {
  margin-left: 64px !important;
}

.u-mr-64 {
  margin-right: 64px !important;
}

.u-pd-72 {
  padding: 72px !important;
}

.u-pt-72 {
  padding-top: 72px !important;
}

.u-pb-72 {
  padding-bottom: 72px !important;
}

.u-pl-72 {
  padding-left: 72px !important;
}

.u-pr-72 {
  padding-right: 72px !important;
}

.u-mg-72 {
  margin: 72px !important;
}

.u-mt-72 {
  margin-top: 72px !important;
}

.u-mb-72 {
  margin-bottom: 72px !important;
}

.u-ml-72 {
  margin-left: 72px !important;
}

.u-mr-72 {
  margin-right: 72px !important;
}

.u-pd-80 {
  padding: 80px !important;
}

.u-pt-80 {
  padding-top: 80px !important;
}

.u-pb-80 {
  padding-bottom: 80px !important;
}

.u-pl-80 {
  padding-left: 80px !important;
}

.u-pr-80 {
  padding-right: 80px !important;
}

.u-mg-80 {
  margin: 80px !important;
}

.u-mt-80 {
  margin-top: 80px !important;
}

.u-mb-80 {
  margin-bottom: 80px !important;
}

.u-ml-80 {
  margin-left: 80px !important;
}

.u-mr-80 {
  margin-right: 80px !important;
}

.u-pd-88 {
  padding: 88px !important;
}

.u-pt-88 {
  padding-top: 88px !important;
}

.u-pb-88 {
  padding-bottom: 88px !important;
}

.u-pl-88 {
  padding-left: 88px !important;
}

.u-pr-88 {
  padding-right: 88px !important;
}

.u-mg-88 {
  margin: 88px !important;
}

.u-mt-88 {
  margin-top: 88px !important;
}

.u-mb-88 {
  margin-bottom: 88px !important;
}

.u-ml-88 {
  margin-left: 88px !important;
}

.u-mr-88 {
  margin-right: 88px !important;
}

.u-pd-96 {
  padding: 96px !important;
}

.u-pt-96 {
  padding-top: 96px !important;
}

.u-pb-96 {
  padding-bottom: 96px !important;
}

.u-pl-96 {
  padding-left: 96px !important;
}

.u-pr-96 {
  padding-right: 96px !important;
}

.u-mg-96 {
  margin: 96px !important;
}

.u-mt-96 {
  margin-top: 96px !important;
}

.u-mb-96 {
  margin-bottom: 96px !important;
}

.u-ml-96 {
  margin-left: 96px !important;
}

.u-mr-96 {
  margin-right: 96px !important;
}

.u-pd-104 {
  padding: 104px !important;
}

.u-pt-104 {
  padding-top: 104px !important;
}

.u-pb-104 {
  padding-bottom: 104px !important;
}

.u-pl-104 {
  padding-left: 104px !important;
}

.u-pr-104 {
  padding-right: 104px !important;
}

.u-mg-104 {
  margin: 104px !important;
}

.u-mt-104 {
  margin-top: 104px !important;
}

.u-mb-104 {
  margin-bottom: 104px !important;
}

.u-ml-104 {
  margin-left: 104px !important;
}

.u-mr-104 {
  margin-right: 104px !important;
}

.u-pd-112 {
  padding: 112px !important;
}

.u-pt-112 {
  padding-top: 112px !important;
}

.u-pb-112 {
  padding-bottom: 112px !important;
}

.u-pl-112 {
  padding-left: 112px !important;
}

.u-pr-112 {
  padding-right: 112px !important;
}

.u-mg-112 {
  margin: 112px !important;
}

.u-mt-112 {
  margin-top: 112px !important;
}

.u-mb-112 {
  margin-bottom: 112px !important;
}

.u-ml-112 {
  margin-left: 112px !important;
}

.u-mr-112 {
  margin-right: 112px !important;
}

.u-pd-120 {
  padding: 120px !important;
}

.u-pt-120 {
  padding-top: 120px !important;
}

.u-pb-120 {
  padding-bottom: 120px !important;
}

.u-pl-120 {
  padding-left: 120px !important;
}

.u-pr-120 {
  padding-right: 120px !important;
}

.u-mg-120 {
  margin: 120px !important;
}

.u-mt-120 {
  margin-top: 120px !important;
}

.u-mb-120 {
  margin-bottom: 120px !important;
}

.u-ml-120 {
  margin-left: 120px !important;
}

.u-mr-120 {
  margin-right: 120px !important;
}

.u-pd-128 {
  padding: 128px !important;
}

.u-pt-128 {
  padding-top: 128px !important;
}

.u-pb-128 {
  padding-bottom: 128px !important;
}

.u-pl-128 {
  padding-left: 128px !important;
}

.u-pr-128 {
  padding-right: 128px !important;
}

.u-mg-128 {
  margin: 128px !important;
}

.u-mt-128 {
  margin-top: 128px !important;
}

.u-mb-128 {
  margin-bottom: 128px !important;
}

.u-ml-128 {
  margin-left: 128px !important;
}

.u-mr-128 {
  margin-right: 128px !important;
}

.u-pd-136 {
  padding: 136px !important;
}

.u-pt-136 {
  padding-top: 136px !important;
}

.u-pb-136 {
  padding-bottom: 136px !important;
}

.u-pl-136 {
  padding-left: 136px !important;
}

.u-pr-136 {
  padding-right: 136px !important;
}

.u-mg-136 {
  margin: 136px !important;
}

.u-mt-136 {
  margin-top: 136px !important;
}

.u-mb-136 {
  margin-bottom: 136px !important;
}

.u-ml-136 {
  margin-left: 136px !important;
}

.u-mr-136 {
  margin-right: 136px !important;
}

.u-pd-144 {
  padding: 144px !important;
}

.u-pt-144 {
  padding-top: 144px !important;
}

.u-pb-144 {
  padding-bottom: 144px !important;
}

.u-pl-144 {
  padding-left: 144px !important;
}

.u-pr-144 {
  padding-right: 144px !important;
}

.u-mg-144 {
  margin: 144px !important;
}

.u-mt-144 {
  margin-top: 144px !important;
}

.u-mb-144 {
  margin-bottom: 144px !important;
}

.u-ml-144 {
  margin-left: 144px !important;
}

.u-mr-144 {
  margin-right: 144px !important;
}

.u-pd-152 {
  padding: 152px !important;
}

.u-pt-152 {
  padding-top: 152px !important;
}

.u-pb-152 {
  padding-bottom: 152px !important;
}

.u-pl-152 {
  padding-left: 152px !important;
}

.u-pr-152 {
  padding-right: 152px !important;
}

.u-mg-152 {
  margin: 152px !important;
}

.u-mt-152 {
  margin-top: 152px !important;
}

.u-mb-152 {
  margin-bottom: 152px !important;
}

.u-ml-152 {
  margin-left: 152px !important;
}

.u-mr-152 {
  margin-right: 152px !important;
}

.u-pd-160 {
  padding: 160px !important;
}

.u-pt-160 {
  padding-top: 160px !important;
}

.u-pb-160 {
  padding-bottom: 160px !important;
}

.u-pl-160 {
  padding-left: 160px !important;
}

.u-pr-160 {
  padding-right: 160px !important;
}

.u-mg-160 {
  margin: 160px !important;
}

.u-mt-160 {
  margin-top: 160px !important;
}

.u-mb-160 {
  margin-bottom: 160px !important;
}

.u-ml-160 {
  margin-left: 160px !important;
}

.u-mr-160 {
  margin-right: 160px !important;
}

.u-pd-168 {
  padding: 168px !important;
}

.u-pt-168 {
  padding-top: 168px !important;
}

.u-pb-168 {
  padding-bottom: 168px !important;
}

.u-pl-168 {
  padding-left: 168px !important;
}

.u-pr-168 {
  padding-right: 168px !important;
}

.u-mg-168 {
  margin: 168px !important;
}

.u-mt-168 {
  margin-top: 168px !important;
}

.u-mb-168 {
  margin-bottom: 168px !important;
}

.u-ml-168 {
  margin-left: 168px !important;
}

.u-mr-168 {
  margin-right: 168px !important;
}

.u-pd-176 {
  padding: 176px !important;
}

.u-pt-176 {
  padding-top: 176px !important;
}

.u-pb-176 {
  padding-bottom: 176px !important;
}

.u-pl-176 {
  padding-left: 176px !important;
}

.u-pr-176 {
  padding-right: 176px !important;
}

.u-mg-176 {
  margin: 176px !important;
}

.u-mt-176 {
  margin-top: 176px !important;
}

.u-mb-176 {
  margin-bottom: 176px !important;
}

.u-ml-176 {
  margin-left: 176px !important;
}

.u-mr-176 {
  margin-right: 176px !important;
}

.u-pd-184 {
  padding: 184px !important;
}

.u-pt-184 {
  padding-top: 184px !important;
}

.u-pb-184 {
  padding-bottom: 184px !important;
}

.u-pl-184 {
  padding-left: 184px !important;
}

.u-pr-184 {
  padding-right: 184px !important;
}

.u-mg-184 {
  margin: 184px !important;
}

.u-mt-184 {
  margin-top: 184px !important;
}

.u-mb-184 {
  margin-bottom: 184px !important;
}

.u-ml-184 {
  margin-left: 184px !important;
}

.u-mr-184 {
  margin-right: 184px !important;
}

.u-pd-192 {
  padding: 192px !important;
}

.u-pt-192 {
  padding-top: 192px !important;
}

.u-pb-192 {
  padding-bottom: 192px !important;
}

.u-pl-192 {
  padding-left: 192px !important;
}

.u-pr-192 {
  padding-right: 192px !important;
}

.u-mg-192 {
  margin: 192px !important;
}

.u-mt-192 {
  margin-top: 192px !important;
}

.u-mb-192 {
  margin-bottom: 192px !important;
}

.u-ml-192 {
  margin-left: 192px !important;
}

.u-mr-192 {
  margin-right: 192px !important;
}

.u-pd-200 {
  padding: 200px !important;
}

.u-pt-200 {
  padding-top: 200px !important;
}

.u-pb-200 {
  padding-bottom: 200px !important;
}

.u-pl-200 {
  padding-left: 200px !important;
}

.u-pr-200 {
  padding-right: 200px !important;
}

.u-mg-200 {
  margin: 200px !important;
}

.u-mt-200 {
  margin-top: 200px !important;
}

.u-mb-200 {
  margin-bottom: 200px !important;
}

.u-ml-200 {
  margin-left: 200px !important;
}

.u-mr-200 {
  margin-right: 200px !important;
}

.l-fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ecf5ff;
  z-index: var(--z-bg);
  pointer-events: none;
}

.l-fixed-bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.7;
  object-position: 0 0;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: var(--z-sticky);
  transition: background-color 0.6s var(--easing);
}

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(19px, 1.5625vw, 30px);
  width: 100%;
  padding: clamp(30px, 2.5vw, 48px) clamp(29px, 2.3958333333vw, 46px) 0 clamp(20px, 1.6666666667vw, 32px);
  box-sizing: border-box;
  transition: padding 0.6s var(--easing);
}

.l-header__logo {
  flex-shrink: 0;
  display: block;
  width: clamp(206px, 17.1354166667vw, 329px);
  margin-top: -8px;
  line-height: 0;
  transition: margin-top 0.6s var(--easing);
}

@media (min-width: 750.11px) {
  .l-header.is-scrolled {
    background-color: #ffffff;
  }
  .l-header.is-scrolled .l-header__inner {
    padding-top: clamp(9px, 0.78125vw, 15px);
    padding-bottom: clamp(9px, 0.78125vw, 15px);
  }
  .l-header.is-scrolled .l-header__logo {
    margin-top: 0;
  }
}
.l-header__logo img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

.l-header__nav {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.l-header__nav__list {
  display: flex;
  align-items: center;
  gap: clamp(19px, 1.5625vw, 30px);
}

.l-header__nav__item {
  position: relative;
}

.l-header__nav__item > a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #292929;
  font-size: clamp(14px, 0.8333333333vw, 16px);
  font-weight: 700;
  white-space: nowrap;
}

.l-header__nav__label {
  display: inline-grid;
  place-items: center;
  white-space: nowrap;
}

.l-header__nav__label::before {
  content: attr(data-text);
  grid-area: 1/1;
  font-size: clamp(15px, 0.8854166667vw, 17px);
  font-weight: 900;
  visibility: hidden;
}

.l-header__nav__label span {
  grid-area: 1/1;
  transition: font-size 0.3s ease-out, font-weight 0.3s ease-out;
}

html[lang=en] .l-header__nav__label[data-text=東洋サクセスの強み]::before {
  content: none;
}

.l-header__nav__chevron {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #ffffff;
  color: #085cac;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
}

.l-header__nav__item.--has-sub > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 3px;
  background-color: #085cac;
  opacity: 0;
  transition: opacity 0.3s var(--easing);
}

.l-header__nav__item.is-open > a::after {
  opacity: 1;
}

.l-header__mega {
  position: absolute;
  top: 100%;
  left: 50%;
  width: clamp(179px, 16.3020833333vw, 313px);
  padding-top: clamp(17px, 1.5104166667vw, 29px);
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: var(--z-float);
  transition: opacity 0.3s var(--easing), visibility 0.3s;
}

html[lang=en] .l-header__mega {
  width: max-content;
  min-width: clamp(179px, 16.3020833333vw, 313px);
}

.l-header__nav__item.is-open .l-header__mega {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.l-header__mega__list {
  background-color: #ffffff;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.l-header__mega__item {
  position: relative;
}

.l-header__mega__item + .l-header__mega__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: clamp(13px, 1.1979166667vw, 23px);
  right: clamp(13px, 1.1979166667vw, 23px);
  height: 1px;
  background-color: #2793e9;
}

.l-header__mega__item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: clamp(38px, 3.4375vw, 66px);
  padding: 0 clamp(16px, 1.4583333333vw, 28px) 0 clamp(17px, 1.5104166667vw, 29px);
  color: #292929;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  line-height: 1.2;
  white-space: nowrap;
}

.l-header__mega__arrow {
  display: flex;
  flex-shrink: 0;
  font-size: clamp(8px, 0.7291666667vw, 14px);
  line-height: 1;
}

@media (min-width: 750.11px) {
  .l-header__nav__item > a:hover .l-header__nav__label span,
  .l-header__nav__item.is-open > a .l-header__nav__label span {
    font-size: clamp(15px, 0.8854166667vw, 17px);
    font-weight: 900;
  }
  .l-header__mega__item a:hover {
    color: #085cac;
  }
}
.l-header__actions {
  display: flex;
  align-items: center;
  gap: clamp(4px, 0.3125vw, 6px);
  flex-shrink: 0;
}

.l-header__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  height: clamp(41px, 3.4375vw, 66px);
  padding: 0 clamp(14px, 1.1458333333vw, 22px);
  border-radius: clamp(21px, 1.71875vw, 33px);
  box-sizing: border-box;
  font-size: clamp(11px, 0.8854166667vw, 17px);
  font-weight: 700;
  white-space: nowrap;
  transition: opacity 0.6s var(--easing);
}

.l-header__btn__icon {
  display: block;
  width: clamp(14px, 1.1458333333vw, 22px);
  height: auto;
  flex-shrink: 0;
}

.l-header__btn.--market {
  width: clamp(103px, 8.5416666667vw, 164px);
  padding: 0;
  color: #ffffff;
  background-color: #085cac;
}

html[lang=en] .l-header__actions .l-header__btn.--market,
html[lang=en] .l-header__actions .l-header__btn.--recruit {
  line-height: 1;
}

.l-header__btn.--recruit {
  width: clamp(103px, 8.5416666667vw, 164px);
  padding: 0;
  color: #085cac;
  background-color: #d1e7ff;
  border: 1px solid #085cac;
}

.l-header__btn.--en {
  width: clamp(73px, 6.09375vw, 117px);
  padding: 0;
  color: #085cac;
  background-color: #ffffff;
  border: 1px solid #085cac;
}

.l-header__btn.--en[data-stt-changelang=ja] {
  display: none;
}

.l-header__btn.--en[data-stt-changelang=en][data-stt-active] {
  display: none;
}

.l-header__btn.--en[data-stt-changelang=en][data-stt-active] + .l-header__btn.--en[data-stt-changelang=ja] {
  display: inline-flex;
}

.l-header__btn.--market,
.l-header__btn.--en {
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .l-header__btn.--market:hover {
    background-color: #292929;
    opacity: 1;
  }
  .l-header__btn.--en:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
}
.l-header__en {
  display: none;
}

.l-header__hamburger {
  display: none;
}
@media (max-width: 750px) {
  .l-header__hamburger {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    width: clamp(60px, 16vw, 120px);
    height: clamp(60px, 16vw, 120px);
    background-color: #085cac;
    border: none;
    border-radius: 0 0 0 clamp(9px, 2.4vw, 18px);
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
    cursor: pointer;
    position: fixed;
    top: 0;
    right: 0;
    z-index: calc(var(--z-modal) + 1);
  }
}

.l-header__hamburger__line {
  display: block;
  width: clamp(25px, 6.6666666667vw, 50px);
  height: clamp(2px, 0.5333333333vw, 4px);
  background-color: transparent;
  position: relative;
}

.l-header__hamburger__line::before,
.l-header__hamburger__line::after {
  content: "";
  display: block;
  width: clamp(25px, 6.6666666667vw, 50px);
  height: clamp(2px, 0.5333333333vw, 4px);
  background-color: #ffffff;
  position: absolute;
  left: 0;
  transition: transform 0.3s, top 0.3s, bottom 0.3s;
}

.l-header__hamburger__line::before {
  top: calc(clamp(5px, 1.3333333333vw, 10px) * -1);
}

.l-header__hamburger__line::after {
  bottom: calc(clamp(5px, 1.3333333333vw, 10px) * -1);
}

.l-header__hamburger.is-active .l-header__hamburger__line {
  background-color: transparent;
}

.l-header__hamburger.is-active .l-header__hamburger__line::before {
  top: 0;
  transform: rotate(30deg);
}

.l-header__hamburger.is-active .l-header__hamburger__line::after {
  bottom: 0;
  transform: rotate(-30deg);
}

.l-header__sp-nav {
  display: none;
}
@media (max-width: 750px) {
  .l-header__sp-nav {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: clamp(69px, 18.4vw, 138px);
    box-sizing: border-box;
    z-index: var(--z-modal);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
  }
}

@media (max-width: 750px) {
  .l-header__sp-nav.is-active {
    opacity: 1;
    visibility: visible;
  }
}

.l-header__sp-nav__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ecf5ff;
}

.l-header__sp-nav__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.53;
}

.l-header__sp-nav__body {
  position: relative;
  flex: 1;
  padding: clamp(13px, 3.4666666667vw, 26px) 0 clamp(64px, 17.0666666667vw, 128px);
  overflow-y: auto;
}

.l-header__sp-nav__list {
  margin: 0 clamp(53px, 14.1333333333vw, 106px);
}

.l-header__sp-nav__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: clamp(54px, 14.4vw, 108px);
  border-bottom: 1px solid #80afdb;
  color: #292929;
  font-size: clamp(16px, 4.2666666667vw, 32px);
  font-weight: 700;
}

.l-header__sp-nav__head a {
  display: flex;
  align-items: center;
  flex: 1;
  height: 100%;
  color: #292929;
}

.l-header__sp-nav__head img {
  width: clamp(14px, 3.7333333333vw, 28px);
  margin-right: clamp(2px, 0.5333333333vw, 4px);
}

.l-header__sp-nav__toggle {
  position: relative;
  flex-shrink: 0;
  width: clamp(44px, 11.7333333333vw, 88px);
  height: 100%;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
}

.l-header__sp-nav__toggle::before,
.l-header__sp-nav__toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: clamp(18px, 4.8vw, 36px);
  height: clamp(2px, 0.5333333333vw, 4px);
  margin-top: calc(clamp(1px, 0.2666666667vw, 2px) * -1);
  background-color: #085cac;
  transition: transform 0.3s var(--easing);
}

.l-header__sp-nav__toggle::after {
  transform: rotate(90deg);
}

.l-header__sp-nav__toggle.is-active::after {
  transform: rotate(90deg) scaleX(0);
}

.l-header__sp-nav__sub {
  display: none;
}

.l-header__sp-nav__item.is-open .l-header__sp-nav__sub {
  display: block;
}

.l-header__sp-nav__sub ul {
  padding: clamp(5px, 1.3333333333vw, 10px) 0 clamp(11px, 2.9333333333vw, 22px);
}

.l-header__sp-nav__sub a {
  display: block;
  color: #292929;
  font-size: clamp(15px, 4vw, 30px);
  font-weight: 700;
  line-height: clamp(30px, 8vw, 60px);
}

.l-header__sp-nav__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(5px, 1.3333333333vw, 10px);
  margin: clamp(21px, 5.6vw, 42px) clamp(28px, 7.4666666667vw, 56px) 0;
}

.l-header__sp-nav__actions .l-header__btn {
  gap: clamp(8px, 2.1333333333vw, 16px);
  width: auto;
  height: clamp(53px, 14.1333333333vw, 106px);
  border-radius: clamp(27px, 7.2vw, 54px);
  font-size: clamp(16px, 4.2666666667vw, 32px);
}

html[lang=en] .l-header__sp-nav__actions .l-header__btn {
  line-height: 1;
}

.l-header__sp-nav__actions .l-header__btn__icon {
  width: clamp(23px, 6.1333333333vw, 46px);
}

.l-header__sp-nav__scrap {
  position: relative;
  display: block;
  height: clamp(123px, 32.8vw, 246px);
  margin: clamp(20px, 5.3333333333vw, 40px) clamp(11px, 2.9333333333vw, 22px) 0;
  border-radius: clamp(10px, 2.6666666667vw, 20px);
  background: linear-gradient(180deg, #39ba98 0%, #1d5d4c 100%);
}

.l-header__sp-nav__scrap img {
  position: absolute;
  top: clamp(7px, 1.8666666667vw, 14px);
  left: clamp(8px, 2.1333333333vw, 16px);
  width: calc(100% - clamp(15px, 4vw, 30px));
  height: calc(100% - clamp(16px, 4.2666666667vw, 32px));
  border-radius: clamp(5px, 1.3333333333vw, 10px);
  object-fit: cover;
  opacity: 0.5;
}

.l-header__sp-nav__scrap__label {
  position: absolute;
  top: clamp(39px, 10.4vw, 78px);
  left: clamp(68px, 18.1333333333vw, 136px);
  display: flex;
  align-items: center;
  width: clamp(246px, 65.6vw, 492px);
  height: clamp(45px, 12vw, 90px);
  padding-left: clamp(61px, 16.2666666667vw, 122px);
  box-sizing: border-box;
  border: 1px solid #008b41;
  border-radius: clamp(23px, 6.1333333333vw, 46px);
  background-color: #ffffff;
  color: #004822;
  font-size: clamp(20px, 5.3333333333vw, 40px);
  font-weight: 800;
  line-height: 1;
}

.l-header__sp-nav__scrap__badge {
  position: absolute;
  top: clamp(26px, 6.9333333333vw, 52px);
  left: clamp(40px, 10.6666666667vw, 80px);
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(70px, 18.6666666667vw, 140px);
  height: clamp(70px, 18.6666666667vw, 140px);
  border-radius: 50%;
  background: linear-gradient(180deg, #ffad71 0%, #ff6c00 100%);
  color: #ffffff;
  font-size: clamp(17px, 4.5333333333vw, 34px);
  font-weight: 800;
  line-height: 1.06;
  text-align: center;
}

.l-header__sp-nav__recruit {
  display: block;
  margin: 0 clamp(11px, 2.9333333333vw, 22px) 0;
  line-height: 0;
}

.l-header__sp-nav__recruit img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 750px) {
  .l-header {
    position: absolute;
  }
  .l-header:has(.l-header__sp-nav.is-active) {
    position: fixed;
  }
  .l-header__inner {
    align-items: flex-start;
    gap: 0;
    padding: 0;
  }
  .l-header__logo {
    position: relative;
    width: clamp(200px, 53.3333333333vw, 400px);
    margin: clamp(15px, 4vw, 30px) 0 0 clamp(12px, 3.2vw, 24px);
    z-index: calc(var(--z-modal) + 1);
  }
  .l-header__nav,
  .l-header__actions {
    display: none;
  }
  .l-header__en {
    position: fixed;
    top: clamp(12px, 3.2vw, 24px);
    right: clamp(70px, 18.6666666667vw, 140px);
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(38px, 10.1333333333vw, 76px);
    height: clamp(38px, 10.1333333333vw, 76px);
    padding: 0 0 clamp(2px, 0.5333333333vw, 4px);
    color: #085cac;
    background-color: #ffffff;
    border: 1px solid #085cac;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: clamp(15px, 4vw, 30px);
    font-weight: 700;
    line-height: 1;
    z-index: calc(var(--z-modal) + 1);
  }
  .l-header__en[data-stt-changelang=ja] {
    display: none;
  }
  .l-header__en[data-stt-changelang=en][data-stt-active] {
    display: none;
  }
  .l-header__en[data-stt-changelang=en][data-stt-active] + .l-header__en[data-stt-changelang=ja] {
    display: flex;
  }
}
.l-header-scrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: var(--z-sticky);
}

.l-header-scrap__inner {
  display: flex;
  gap: clamp(3px, 0.3125vw, 6px);
  width: 100%;
  padding: clamp(19px, 1.71875vw, 33px) clamp(14px, 1.3020833333vw, 25px) 0 clamp(24px, 2.1875vw, 42px);
  box-sizing: border-box;
}

.l-header-scrap__bar {
  flex: 1;
  display: flex;
  align-items: center;
  height: clamp(38px, 3.4895833333vw, 67px);
  border-radius: clamp(24px, 2.1875vw, 42px);
  transition: background-color 0.6s var(--easing), box-shadow 0.6s var(--easing);
}

.l-header-scrap__logo {
  flex-shrink: 0;
  display: block;
  margin-left: clamp(3px, 0.2604166667vw, 5px);
  line-height: 0;
}

.l-header-scrap__logo img {
  display: block;
  width: clamp(217px, 19.7395833333vw, 379px);
}

.l-header-scrap__logo .--dark {
  display: none;
  width: clamp(137px, 12.4479166667vw, 239px);
}

.l-header-scrap__label {
  flex-shrink: 0;
  align-self: flex-start;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(63px, 5.7291666667vw, 110px);
  height: clamp(21px, 1.875vw, 36px);
  margin: clamp(2px, 0.2083333333vw, 4px) 0 0 calc(clamp(19px, 1.71875vw, 33px) * -1);
  border-radius: clamp(12px, 1.09375vw, 21px);
  background-color: #ffffff;
  color: #292929;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1;
  transition: background-color 0.6s var(--easing), color 0.6s var(--easing);
}

.l-header-scrap__nav {
  display: flex;
  align-items: center;
  height: 100%;
  margin-left: auto;
  padding: 0 clamp(30px, 2.7083333333vw, 52px) 0 clamp(28px, 2.5vw, 48px);
  border-radius: clamp(24px, 2.1875vw, 42px);
  background-color: #ffffff;
  box-shadow: 0 2px 3px rgba(53, 142, 70, 0.251);
  transition: background-color 0.6s var(--easing), box-shadow 0.6s var(--easing);
}

.l-header-scrap__nav ul {
  display: flex;
  gap: clamp(17px, 1.5625vw, 30px);
}

.l-header-scrap__nav a {
  display: block;
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.9125;
  white-space: nowrap;
}

.l-header-scrap__btn {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.5729166667vw, 11px);
  width: clamp(136px, 12.3958333333vw, 238px);
  height: clamp(38px, 3.4895833333vw, 67px);
  padding-left: clamp(18px, 1.6145833333vw, 31px);
  box-sizing: border-box;
  border-radius: clamp(19px, 1.71875vw, 33px);
  background: linear-gradient(38.94deg, #ff6c00 30%, #ffb57e 66%, #fa954a 81%);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
  color: #ffffff;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1.8;
  white-space: nowrap;
}

.l-header-scrap__btn img {
  flex-shrink: 0;
  width: clamp(13px, 1.1979166667vw, 23px);
}

.l-header-scrap.is-scrolled .l-header-scrap__btn {
  box-shadow: none;
}

@media (min-width: 750.11px) {
  .l-header-scrap__btn {
    background: linear-gradient(38.94deg, #ff6c00 12.08%, #ffb57e 26.58%, #fa954a 32.62%, #fa954a 40.27%, #ff6c00 59.73%, #ff6c00 71.81%, #ffb57e 86.31%, #fa954a 92.35%) 0 0/300% 100%;
    transition: background-position 0.8s ease-in-out;
  }
  .l-header-scrap__btn:hover {
    background-position: 100% 0;
    opacity: 1;
  }
}
@media (min-width: 750.11px) {
  .l-header-scrap.is-scrolled .l-header-scrap__bar {
    background-color: #ffffff;
    box-shadow: 0 2px 3px rgba(53, 142, 70, 0.251);
  }
  .l-header-scrap.is-scrolled .l-header-scrap__logo {
    margin-left: clamp(11px, 1.0416666667vw, 20px);
  }
  .l-header-scrap.is-scrolled .l-header-scrap__logo .--white {
    display: none;
  }
  .l-header-scrap.is-scrolled .l-header-scrap__logo .--dark {
    display: block;
  }
  .l-header-scrap.is-scrolled .l-header-scrap__label {
    align-self: center;
    margin: 0 0 0 clamp(9px, 0.78125vw, 15px);
    background-color: #085cac;
    color: #ffffff;
  }
  .l-header-scrap.is-scrolled .l-header-scrap__nav {
    background-color: rgba(255, 255, 255, 0);
    box-shadow: none;
  }
}
.l-header-scrap__hamburger {
  display: none;
}

.l-header-scrap__hamburger__line {
  position: relative;
  display: block;
  width: clamp(18px, 4.8vw, 36px);
  height: clamp(2px, 0.5333333333vw, 4px);
  background-color: #292929;
  transition: background-color 0.3s;
}

.l-header-scrap__hamburger__line::before,
.l-header-scrap__hamburger__line::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #292929;
  transition: transform 0.3s, top 0.3s;
}

.l-header-scrap__hamburger__line::before {
  top: calc(clamp(5px, 1.3333333333vw, 10px) * -1);
}

.l-header-scrap__hamburger__line::after {
  top: clamp(5px, 1.3333333333vw, 10px);
}

.l-header-scrap__hamburger.is-active .l-header-scrap__hamburger__line {
  background-color: transparent;
}

.l-header-scrap__hamburger.is-active .l-header-scrap__hamburger__line::before {
  top: 0;
  transform: rotate(45deg);
}

.l-header-scrap__hamburger.is-active .l-header-scrap__hamburger__line::after {
  top: 0;
  transform: rotate(-45deg);
}

@media (max-width: 750px) {
  .l-header-scrap__inner {
    gap: clamp(4px, 1.0666666667vw, 8px);
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 clamp(15px, 4vw, 30px);
  }
  .l-header-scrap__bar {
    height: clamp(40px, 10.6666666667vw, 80px);
  }
  .l-header-scrap__logo {
    position: relative;
    z-index: var(--z-float);
    margin-left: clamp(2px, 0.5333333333vw, 4px);
  }
  .l-header-scrap__logo img {
    width: clamp(152px, 40.5333333333vw, 304px);
  }
  .l-header-scrap__label {
    position: relative;
    z-index: var(--z-float);
    width: clamp(60px, 16vw, 120px);
    height: clamp(20px, 5.3333333333vw, 40px);
    margin: 5px 0 0 calc(clamp(13px, 3.4666666667vw, 26px) * -1);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(10px, 2.6666666667vw, 20px);
  }
  .l-header-scrap__nav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--z-base);
    display: block;
    width: 100%;
    margin-left: 0;
    padding: clamp(80px, 21.3333333333vw, 160px) clamp(30px, 8vw, 60px) clamp(70px, 18.6666666667vw, 140px);
    box-sizing: border-box;
    border-radius: 0;
    background: linear-gradient(180deg, #39ba98 0%, #1d5d4c 100%);
    box-shadow: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
  }
  .l-header-scrap__nav.is-active {
    opacity: 1;
    visibility: visible;
  }
  .l-header-scrap__nav ul {
    display: block;
  }
  .l-header-scrap__nav li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
  .l-header-scrap__nav a {
    padding: clamp(16px, 4.2666666667vw, 32px) 0;
    color: #ffffff;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: 1.5;
  }
  .l-header-scrap__hamburger {
    position: relative;
    z-index: var(--z-float);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(40px, 10.6666666667vw, 80px);
    height: clamp(40px, 10.6666666667vw, 80px);
    margin-left: auto;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: #ffffff;
    box-shadow: 0 2px 3px rgba(53, 142, 70, 0.251);
    cursor: pointer;
  }
  .l-header-scrap__btn {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: var(--z-float);
    justify-content: center;
    gap: clamp(8px, 2.1333333333vw, 16px);
    width: 100%;
    height: clamp(50px, 13.3333333333vw, 100px);
    padding-left: 0;
    border-radius: 0;
    font-size: clamp(15px, 4vw, 30px);
    line-height: 1.5;
  }
  .l-header-scrap__btn img {
    width: clamp(16px, 4.2666666667vw, 32px);
  }
}
.l-footer {
  position: relative;
  z-index: var(--z-base);
}

.l-footer__main {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #00498e;
  color: #ffffff;
  padding-top: clamp(78px, 5.625vw, 108px);
  padding-bottom: clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.l-footer__inner {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(23px, 2.0833333333vw, 40px);
  width: clamp(745px, 67.7083333333vw, 1300px);
  margin-left: auto;
  margin-right: auto;
}

.l-footer__brand {
  flex-shrink: 0;
}

.l-footer__logo {
  display: block;
  width: clamp(188px, 17.1354166667vw, 329px);
}

.l-footer__logo img {
  display: block;
  width: 100%;
  height: auto;
  filter: brightness(0) invert(1);
}

.l-footer__address {
  margin: clamp(20px, 1.4583333333vw, 28px) 0 0;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
}

.l-footer__tels {
  margin: clamp(14px, 1.0416666667vw, 20px) 0 0;
}

.l-footer__tels li + li {
  margin-top: clamp(12px, 0.8333333333vw, 16px);
}

.l-footer__tels a,
.l-footer__tels__row {
  display: flex;
  align-items: center;
  gap: clamp(9px, 0.625vw, 12px);
  color: #ffffff;
  font-size: clamp(24px, 1.71875vw, 33px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.l-footer__tels__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(29px, 2.1354166667vw, 41px);
  height: clamp(29px, 2.1354166667vw, 41px);
  border-radius: 50%;
  background-color: #ffffff;
  flex-shrink: 0;
}

.l-footer__tels__icon img,
.l-footer__tels__icon i {
  display: block;
  width: clamp(14px, 1.0416666667vw, 20px);
  height: clamp(14px, 1.0416666667vw, 20px);
  color: #003e79;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 1;
}

.l-footer__tels__row .l-footer__tels__icon img {
  width: clamp(17px, 1.1979166667vw, 23px);
  height: clamp(19px, 1.3541666667vw, 26px);
}

.l-footer__nav {
  display: flex;
  align-items: flex-start;
  gap: clamp(41px, 3.6979166667vw, 71px);
  margin-top: 0;
  padding-top: clamp(14px, 1.0416666667vw, 20px);
}
@media (max-width: 1399px) {
  .l-footer__nav {
    min-width: 0;
  }
}

.l-footer__col {
  width: clamp(147px, 13.3333333333vw, 256px);
}

.l-footer__link {
  position: relative;
  display: block;
  width: 100%;
  padding-right: clamp(14px, 1.25vw, 24px);
  color: #ffffff;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  box-sizing: border-box;
}

.l-footer__link__arrow {
  position: absolute;
  top: 50%;
  right: 0;
  width: clamp(6px, 0.46875vw, 9px);
  height: clamp(7px, 0.5208333333vw, 10px);
  transform: translateY(-50%);
}

.l-footer__item + .l-footer__item {
  margin-top: clamp(22px, 1.5625vw, 30px);
}

.l-footer__sub {
  margin: clamp(7px, 0.5208333333vw, 10px) 0 0;
}

.l-footer__sub li + li {
  margin-top: clamp(1px, 0.1041666667vw, 2px);
}

.l-footer__sub a {
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  text-decoration: none;
}

.l-footer__pagetop {
  position: absolute;
  top: clamp(11px, 0.78125vw, 15px);
  right: max(clamp(69px, 6.25vw, 120px) * -1, 20px - (100vw - clamp(745px, 67.7083333333vw, 1300px)) / 2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #ffffff;
  text-decoration: none;
}

.l-footer__pagetop__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(30px, 3.0729166667vw, 59px);
  height: clamp(30px, 3.0729166667vw, 59px);
  border-radius: 50%;
  background-color: #ecf5ff;
}

.l-footer__pagetop__btn img {
  display: block;
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  transform: rotate(-90deg);
}

.l-footer__pagetop__label {
  font-family: "Roboto", sans-serif;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.l-footer__copy {
  margin: clamp(29px, 2.0833333333vw, 40px) 0 0;
  color: #ffffff;
  font-size: clamp(10px, 0.7291666667vw, 14px);
  font-weight: 700;
  text-align: center;
}

.l-footer.--scrap .l-footer__main {
  padding: clamp(123px, 11.1458333333vw, 214px) 0 clamp(40px, 3.6458333333vw, 70px);
  background-color: #ffffff;
  color: #292929;
}

.l-footer.--scrap .l-footer__inner {
  gap: clamp(23px, 2.0833333333vw, 40px);
  width: clamp(802px, 72.9166666667vw, 1400px);
}

.l-footer.--scrap .l-footer__logo {
  width: clamp(218px, 19.84375vw, 381px);
  margin-left: calc(clamp(3px, 0.2604166667vw, 5px) * -1);
}

.l-footer.--scrap .l-footer__logo img {
  filter: none;
}

.l-footer.--scrap .l-footer__address {
  margin-top: clamp(24px, 2.1875vw, 42px);
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.l-footer.--scrap .l-footer__tels {
  margin-top: clamp(7px, 0.625vw, 12px);
}

.l-footer.--scrap .l-footer__tels li + li {
  margin-top: clamp(9px, 0.8333333333vw, 16px);
}

.l-footer.--scrap .l-footer__tels a,
.l-footer.--scrap .l-footer__tels__row {
  gap: clamp(7px, 0.625vw, 12px);
  color: #292929;
  font-size: clamp(19px, 1.71875vw, 33px);
}

.l-footer.--scrap .l-footer__tels__icon {
  width: clamp(23px, 2.1354166667vw, 41px);
  height: clamp(23px, 2.1354166667vw, 41px);
  background-color: #ff6c00;
}

.l-footer.--scrap .l-footer__tels__icon img {
  width: clamp(11px, 1.0416666667vw, 20px);
  height: clamp(11px, 1.0416666667vw, 20px);
}

.l-footer.--scrap .l-footer__tels__row .l-footer__tels__icon {
  background-color: #39ba98;
}

.l-footer.--scrap .l-footer__tels__row .l-footer__tels__icon img {
  width: clamp(13px, 1.1979166667vw, 23px);
  height: clamp(15px, 1.3541666667vw, 26px);
}

.l-footer.--scrap .l-footer__nav {
  gap: clamp(41px, 3.6979166667vw, 71px);
  margin-right: clamp(8px, 0.7291666667vw, 14px);
  padding-top: 1px;
}

.l-footer.--scrap .l-footer__col {
  width: clamp(147px, 13.3333333333vw, 256px);
}

.l-footer.--scrap .l-footer__link {
  padding-right: clamp(14px, 1.25vw, 24px);
  font-size: clamp(10px, 0.8854166667vw, 17px);
}

.l-footer.--scrap .l-footer__link,
.l-footer.--scrap .l-footer__sub a {
  color: #292929;
}

.l-footer.--scrap .l-footer__link__arrow {
  width: clamp(5px, 0.46875vw, 9px);
  height: clamp(6px, 0.5208333333vw, 10px);
  margin-top: calc(clamp(2px, 0.2083333333vw, 4px) * -1);
}

.l-footer.--scrap .l-footer__item + .l-footer__item {
  margin-top: clamp(19px, 1.7708333333vw, 34px);
}

.l-footer.--scrap .l-footer__sub {
  margin-top: clamp(6px, 0.5208333333vw, 10px);
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.l-footer.--scrap .l-footer__col:nth-child(2) .l-footer__sub {
  margin-top: clamp(10px, 0.9375vw, 18px);
}

.l-footer.--scrap .l-footer__sub a {
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

.l-footer.--scrap .l-footer__pagetop {
  top: calc(clamp(2px, 0.15625vw, 3px) * -1);
  right: calc(clamp(57px, 5.2083333333vw, 100px) * -1);
  gap: clamp(7px, 0.625vw, 12px);
  color: #292929;
}

.l-footer.--scrap .l-footer__pagetop__btn {
  background-color: #ff6c00;
}

.l-footer.--scrap .l-footer__pagetop__btn img {
  width: clamp(9px, 0.78125vw, 15px);
  height: clamp(9px, 0.78125vw, 15px);
}

.l-footer.--scrap .l-footer__pagetop__label {
  font-size: clamp(11px, 1.0416666667vw, 20px);
}

.l-footer.--scrap .l-footer__copy {
  margin-top: clamp(33px, 2.96875vw, 57px);
  color: #292929;
  font-size: clamp(8px, 0.7291666667vw, 14px);
  line-height: 2.1857;
}

@media (max-width: 750px) {
  .l-footer.--scrap .l-footer__main {
    padding: clamp(90px, 24vw, 180px) 0 clamp(110px, 29.3333333333vw, 220px);
  }
  .l-footer.--scrap .l-footer__inner {
    width: 100%;
  }
  .l-footer.--scrap .l-footer__logo {
    width: clamp(315px, 84vw, 630px);
    margin: 0 auto;
  }
  .l-footer.--scrap .l-footer__address {
    margin-top: clamp(19.6px, 5.2266666667vw, 39.2px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .l-footer.--scrap .l-footer__tels {
    margin-top: clamp(19.8px, 5.28vw, 39.6px);
    border-color: #292929;
  }
  .l-footer.--scrap .l-footer__tels li + li {
    margin-top: clamp(8.5px, 2.2666666667vw, 17px);
  }
  .l-footer.--scrap .l-footer__tels a,
  .l-footer.--scrap .l-footer__tels__row {
    gap: clamp(10.4px, 2.7733333333vw, 20.8px);
    font-size: clamp(29px, 7.7333333333vw, 58px);
  }
  .l-footer.--scrap .l-footer__tels__icon {
    width: clamp(34px, 9.0666666667vw, 68px);
    height: clamp(34px, 9.0666666667vw, 68px);
  }
  .l-footer.--scrap .l-footer__tels__icon img {
    width: clamp(16.5px, 4.4vw, 33px);
    height: clamp(16.5px, 4.4vw, 33px);
  }
  .l-footer.--scrap .l-footer__tels__row .l-footer__tels__icon img {
    width: clamp(19px, 5.0666666667vw, 38px);
    height: clamp(20.7px, 5.52vw, 41.4px);
  }
  .l-footer.--scrap .l-footer__nav {
    margin-right: clamp(45.5px, 12.1333333333vw, 91px);
    padding-top: 0;
  }
  .l-footer.--scrap .l-footer__col {
    width: auto;
  }
  .l-footer.--scrap .l-footer__link {
    padding-right: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .l-footer.--scrap .l-footer__link__arrow {
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
    margin-top: 0;
  }
  .l-footer.--scrap .l-footer__item + .l-footer__item {
    margin-top: clamp(31px, 8.2666666667vw, 62px);
  }
  .l-footer.--scrap .l-footer__sub {
    margin-top: clamp(7.8px, 2.08vw, 15.6px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .l-footer.--scrap .l-footer__col:nth-child(2) .l-footer__sub {
    margin-top: clamp(11.5px, 3.0666666667vw, 23px);
  }
  .l-footer.--scrap .l-footer__sub a {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.7;
  }
  .l-footer.--scrap .l-footer__pagetop {
    top: auto;
    right: auto;
    gap: clamp(10px, 2.6666666667vw, 20px);
  }
  .l-footer.--scrap .l-footer__pagetop__btn img {
    width: clamp(13px, 3.4666666667vw, 26px);
    height: clamp(13px, 3.4666666667vw, 26px);
  }
  .l-footer.--scrap .l-footer__pagetop__label {
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .l-footer.--scrap .l-footer__copy {
    margin-top: clamp(26.5px, 7.0666666667vw, 53px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: 1.7;
  }
}
@media (max-width: 750px) {
  .l-footer__main {
    padding: clamp(62px, 16.5333333333vw, 124px) 0 clamp(71px, 18.9333333333vw, 142px);
  }
  .l-footer__inner {
    display: block;
    width: 100%;
  }
  .l-footer__logo {
    width: clamp(315px, 84vw, 630px);
    margin: 0 auto;
  }
  .l-footer__address {
    margin: clamp(19.6px, 5.2266666667vw, 39.2px) clamp(35px, 9.3333333333vw, 70px) 0;
    font-size: clamp(15px, 4vw, 30px);
    line-height: 1.7;
  }
  .l-footer__tels {
    margin: clamp(19.8px, 5.28vw, 39.6px) clamp(35px, 9.3333333333vw, 70px) 0;
    padding: clamp(19.8px, 5.28vw, 39.6px) 0 clamp(20.7px, 5.52vw, 41.4px) clamp(33.8px, 9.0133333333vw, 67.6px);
    border-top: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
  }
  .l-footer__tels li + li {
    margin-top: clamp(8.5px, 2.2666666667vw, 17px);
  }
  .l-footer__tels a,
  .l-footer__tels__row {
    gap: clamp(10.4px, 2.7733333333vw, 20.8px);
    font-size: clamp(29px, 7.7333333333vw, 58px);
  }
  .l-footer__tels__icon {
    width: clamp(34px, 9.0666666667vw, 68px);
    height: clamp(34px, 9.0666666667vw, 68px);
  }
  .l-footer__tels__icon img {
    width: clamp(16.5px, 4.4vw, 33px);
    height: clamp(16.5px, 4.4vw, 33px);
  }
  .l-footer__tels__row .l-footer__tels__icon img {
    width: clamp(19px, 5.0666666667vw, 38px);
    height: clamp(20.7px, 5.52vw, 41.4px);
  }
  .l-footer__nav {
    display: block;
    margin: clamp(40px, 10.6666666667vw, 80px) clamp(45.5px, 12.1333333333vw, 91px) 0 clamp(35px, 9.3333333333vw, 70px);
    padding-top: 0;
  }
  .l-footer__col {
    width: auto;
  }
  .l-footer__col + .l-footer__col,
  .l-footer__item + .l-footer__item {
    margin-top: clamp(31px, 8.2666666667vw, 62px);
  }
  .l-footer__link {
    padding-right: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .l-footer__link__arrow {
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .l-footer__sub {
    margin-top: clamp(7.8px, 2.08vw, 15.6px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.7;
  }
  .l-footer__sub li + li {
    margin-top: clamp(5.2px, 1.3866666667vw, 10.4px);
  }
  .l-footer__col:nth-child(2) .l-footer__sub {
    margin-top: clamp(11.5px, 3.0666666667vw, 23px);
  }
  .l-footer__col:nth-child(2) .l-footer__sub li + li {
    margin-top: clamp(11.1px, 2.96vw, 22.2px);
  }
  .l-footer__sub a {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .l-footer__pagetop {
    position: relative;
    top: auto;
    right: auto;
    gap: clamp(10px, 2.6666666667vw, 20px);
    width: fit-content;
    margin: clamp(47px, 12.5333333333vw, 94px) auto 0;
  }
  .l-footer__pagetop__btn {
    width: clamp(49px, 13.0666666667vw, 98px);
    height: clamp(49px, 13.0666666667vw, 98px);
  }
  .l-footer__pagetop__btn img {
    width: clamp(13px, 3.4666666667vw, 26px);
    height: clamp(13px, 3.4666666667vw, 26px);
  }
  .l-footer__pagetop__label {
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .l-footer__copy {
    margin-top: clamp(26.5px, 7.0666666667vw, 53px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: 1.7;
  }
}
@media (min-width: 750.11px) {
  html[lang=en] .l-footer__inner {
    justify-content: center;
  }
  html[lang=en] .l-footer__brand {
    flex-shrink: 1;
    min-width: 0;
    width: clamp(188px, 17.1354166667vw, 329px);
  }
  html[lang=en] .l-footer.--scrap .l-footer__brand {
    width: clamp(218px, 19.84375vw, 381px);
  }
  html[lang=en] .l-footer__nav,
  html[lang=en] .l-footer__col {
    min-width: 0;
  }
  html[lang=en] .l-footer__sub a[href*=technical-proposals] {
    display: block;
    line-height: 1.4;
  }
}
@media (min-width: 750.11px) {
  .l-footer__link:hover,
  .l-footer__sub a:hover,
  .l-footer__tels a:hover,
  .l-footer__logo:hover,
  .l-footer__pagetop:hover {
    opacity: 0.7;
  }
}
.p-materials__panel {
  background-color: #ffffff;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  padding: clamp(86px, 6.1979166667vw, 119px) 0 clamp(14px, 1.0416666667vw, 20px);
  box-sizing: border-box;
}

.p-materials__list {
  display: flex;
  justify-content: center;
  gap: clamp(20px, 1.8229166667vw, 35px);
  width: clamp(688px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
  list-style: none;
  padding: 0;
}

.p-materials__card {
  position: relative;
  display: block;
  width: clamp(208px, 18.8958333333vw, 362.8px);
  height: clamp(212px, 19.2708333333vw, 370px);
  color: #ffffff;
  text-decoration: none;
}

.p-materials__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #085cac;
  opacity: 0.16;
  transition: transform 0.3s ease-out;
}

.p-materials__card__photo {
  position: absolute;
  top: clamp(6px, 0.5260416667vw, 10.1px);
  left: clamp(6px, 0.5260416667vw, 10.1px);
  width: clamp(196px, 17.84375vw, 342.6px);
  height: clamp(196px, 17.84375vw, 342.6px);
  border-radius: 50%;
  background: linear-gradient(213.5deg, #085cac 32%, #042e56 86%);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
}

.p-materials__card__photo img {
  display: block;
  width: clamp(174px, 15.78125vw, 303px);
  height: clamp(174px, 15.78125vw, 303px);
  margin: clamp(10px, 0.9322916667vw, 17.9px) 0 0 clamp(11px, 1.03125vw, 19.8px);
  border-radius: 50%;
}

.p-materials__card__ttl {
  position: absolute;
  top: clamp(149px, 13.5260416667vw, 259.7px);
  left: 0;
  width: 100%;
  font-size: clamp(17px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.p-materials__card__ttl:has(br) {
  transform: translateY(-25%);
}

html[lang=en] .p-materials__card__ttl,
html[lang=en] .p-materials__card__ttl:has(br) {
  top: auto;
  bottom: clamp(46px, 4.1822916667vw, 80.3px);
  transform: none;
}

.p-materials__card__btn {
  position: absolute;
  top: clamp(182px, 16.5416666667vw, 317.6px);
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  gap: clamp(3px, 0.3125vw, 6px);
  width: fit-content;
  height: clamp(30px, 2.7083333333vw, 52px);
  margin: 0 auto;
  padding: 0 clamp(9px, 0.8333333333vw, 16px) 0 clamp(11px, 0.9895833333vw, 19px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(15px, 1.3541666667vw, 26px);
  background-color: #ecf5ff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-materials__card__btn::after {
  content: "";
  flex-shrink: 0;
  width: clamp(14px, 1.1458333333vw, 22px);
  height: clamp(14px, 1.1458333333vw, 22px);
  background-color: currentColor;
  -webkit-mask: url("../img/common/icon_search.png") center/contain no-repeat;
  mask: url("../img/common/icon_search.png") center/contain no-repeat;
}

@media (min-width: 750.11px) {
  .p-materials__card:hover {
    opacity: 1;
  }
  .p-materials__card:hover::before {
    transform: scale(1.0632471064);
  }
  .p-materials__card:hover .p-materials__card__btn {
    background-color: #085cac;
    color: #ffffff;
  }
}
@media (max-width: 750px) {
  .p-materials__panel {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-materials__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(8.5px, 2.2666666667vw, 17px);
    width: auto;
  }
  .p-materials__card {
    width: clamp(250px, 66.6666666667vw, 500px);
    height: clamp(257.1px, 68.56vw, 514.2px);
  }
  .p-materials__card__photo {
    top: clamp(7px, 1.8533333333vw, 13.9px);
    left: clamp(7px, 1.8533333333vw, 13.9px);
    width: clamp(236.2px, 63vw, 472.5px);
    height: clamp(236.2px, 63vw, 472.5px);
  }
  .p-materials__card__photo img {
    width: clamp(208.9px, 55.6933333333vw, 417.7px);
    height: clamp(208.9px, 55.6933333333vw, 417.7px);
    margin: clamp(12.3px, 3.2933333333vw, 24.7px) 0 0 clamp(13.7px, 3.6533333333vw, 27.4px);
  }
  .p-materials__card__ttl {
    top: clamp(178.8px, 47.68vw, 357.6px);
    font-size: clamp(21.4px, 5.6933333333vw, 42.7px);
  }
  html[lang=en] .p-materials__card__ttl,
  html[lang=en] .p-materials__card__ttl:has(br) {
    top: auto;
    bottom: clamp(56.9px, 15.1866666667vw, 113.9px);
  }
  .p-materials__card__btn {
    top: clamp(218.9px, 58.3733333333vw, 437.8px);
    gap: clamp(4.7px, 1.2666666667vw, 9.5px);
    height: clamp(38px, 10.12vw, 75.9px);
    padding: 0 clamp(12.7px, 3.3733333333vw, 25.3px) 0 clamp(15px, 4.0133333333vw, 30.1px);
    border-radius: clamp(19px, 5.0666666667vw, 38px);
    font-size: clamp(16.6px, 4.4266666667vw, 33.2px);
  }
  .p-materials__card__btn::after {
    width: clamp(16px, 4vw, 30px);
    height: clamp(16px, 4vw, 30px);
  }
}
.p-stainless__cats {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.0416666667vw, 20px);
  margin-top: clamp(29px, 2.0833333333vw, 40px);
  padding: 0;
  list-style: none;
}

.p-stainless__cat {
  display: flex;
  align-items: center;
  gap: clamp(23px, 2.6041666667vw, 50px);
}

.p-stainless__cat__name {
  flex-shrink: 0;
  width: clamp(115px, 9.375vw, 180px);
  box-sizing: border-box;
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
}

.p-stainless__cat__line {
  flex-shrink: 0;
  width: 1px;
  height: clamp(42px, 3.0208333333vw, 58px);
  background-color: #003e79;
}

.p-stainless__cat__grades {
  flex: 1;
  min-width: 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.9;
}

.p-stainless__cat.--multi {
  align-items: stretch;
}

.p-stainless__cat.--multi .p-stainless__cat__name {
  align-self: center;
}

.p-stainless__cat.--multi .p-stainless__cat__line {
  height: auto;
}

.p-stainless__sep {
  display: block;
  width: 92%;
  height: 1px;
  margin: clamp(58px, 4.1666666667vw, 80px) auto;
  border: 0;
  background-color: rgba(8, 92, 172, 0.314);
}

@media (max-width: 750px) {
  .p-stainless__cats {
    gap: clamp(15px, 4vw, 30px);
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-stainless__cat {
    align-items: stretch;
    gap: clamp(12px, 3.2vw, 24px);
  }
  html[lang=en] .p-stainless__cat {
    gap: 35px;
  }
  .p-stainless__cat__name {
    align-self: center;
    width: clamp(115px, 30.6666666667vw, 230px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-stainless__cat__line {
    height: auto;
  }
  .p-stainless__cat__grades {
    align-self: center;
    padding: clamp(8px, 2.1333333333vw, 16px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
    white-space: normal;
  }
  .p-stainless__sep {
    width: auto;
    margin: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px);
  }
}
.p-aluminum__head {
  display: flex;
  align-items: center;
  gap: clamp(27px, 1.9270833333vw, 37px);
}

.p-aluminum__grades {
  flex: 1;
  min-width: 0;
  margin: 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(22px, 1.5625vw, 30px);
}

.p-aluminum__section {
  margin-top: clamp(58px, 4.1666666667vw, 80px);
}

@media (max-width: 750px) {
  .p-aluminum__head {
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(15px, 4vw, 30px);
  }
  .p-aluminum__grades {
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-aluminum__section {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-aluminum .c-table {
    width: clamp(940px, 250.6666666667vw, 1880px);
  }
}
.p-market .c-panel {
  padding-bottom: clamp(72px, 5.2083333333vw, 100px);
}

.p-market__inner {
  width: clamp(777px, 70.625vw, 1356px);
  margin-left: auto;
  margin-right: auto;
}

.p-market__lead {
  margin: 0;
  color: #292929;
  font-size: clamp(23px, 1.6666666667vw, 32px);
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
}

.p-market__lead .hl {
  color: #085cac;
}

.p-market__prices {
  width: clamp(895px, 81.3541666667vw, 1562px);
  margin-top: clamp(40px, 2.9166666667vw, 56px);
  margin-left: 50%;
  translate: -50% 0;
}

.p-market__prices__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: clamp(35px, 2.5520833333vw, 49px);
  margin: 0;
  border-radius: clamp(18px, 1.3020833333vw, 25px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(17px, 1.1979166667vw, 23px);
  font-weight: 700;
  line-height: 1;
}

.p-market__prices__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(6px, 0.5729166667vw, 11px);
  margin: clamp(23px, 1.6666666667vw, 32px) 0 0;
  padding: 0;
  list-style: none;
}

.p-market__card {
  display: flex;
  flex-direction: column;
  flex: 0 1 calc((100% - clamp(6px, 0.5729166667vw, 11px) * 5) / 6);
  row-gap: clamp(9px, 0.8333333333vw, 16px);
  min-width: 0;
  box-sizing: border-box;
  padding: clamp(24px, 2.1875vw, 42px) clamp(6px, 0.5208333333vw, 10px) clamp(5px, 0.4166666667vw, 8px);
  border-radius: 10px;
  background-color: #ecf5ff;
}

.p-market__card__name {
  margin: 0;
  color: #085cac;
  font-size: clamp(16px, 1.4583333333vw, 28px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-market__card__unit {
  font-size: clamp(10px, 0.9375vw, 18px);
}

.p-market__card__text {
  margin: 0;
  padding: 0 clamp(6px, 0.5208333333vw, 10px);
  color: #292929;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.p-market__card__rows {
  margin: 0;
  padding: clamp(10px, 0.8854166667vw, 17px) clamp(7px, 0.6770833333vw, 13px);
  border-radius: 5px;
  background-color: #ffffff;
}

.p-market__card > * + .p-market__card__rows {
  margin-top: auto;
}

.p-market__card__row {
  display: flex;
  align-items: center;
  gap: clamp(9px, 0.78125vw, 15px);
}

.p-market__card__row + .p-market__card__row {
  margin-top: clamp(3px, 0.2604166667vw, 5px);
}

.p-market__card__row dt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(42px, 3.8541666667vw, 74px);
  height: clamp(16px, 1.4583333333vw, 28px);
  margin: 0;
  border-radius: 100px;
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1;
}

.p-market__card__row dd {
  margin: 0;
  color: #292929;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1.2;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-market__card__row {
    align-items: flex-start;
  }
  html[lang=en] .p-market__card__row + .p-market__card__row {
    margin-top: clamp(5px, 0.4166666667vw, 8px);
  }
  html[lang=en] .p-market__card__row dt {
    width: clamp(52px, 4.5833333333vw, 88px);
    height: auto;
    min-height: clamp(16px, 1.4583333333vw, 28px);
    padding: clamp(4px, 0.3645833333vw, 7px) clamp(4px, 0.4166666667vw, 8px);
    line-height: 1.2;
    text-align: center;
  }
}
.p-market__monthly {
  margin-top: clamp(56px, 4.0625vw, 78px);
}

.p-market__monthly .c-tag {
  margin: 0;
}

.p-market__monthly__wrap {
  margin-top: clamp(14px, 1.0416666667vw, 20px);
  border-radius: 10px;
  background-color: #ecf5ff;
}

.p-market__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #292929;
  text-align: center;
}

.p-market__table th,
.p-market__table td {
  box-sizing: border-box;
  padding: clamp(14px, 1.0416666667vw, 20px) clamp(4px, 0.3125vw, 6px);
  border: 1px solid #d1e7ff;
  font-weight: 700;
  line-height: 1.2;
  vertical-align: middle;
}

.p-market__table thead th {
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
}

.p-market__table thead th:first-child,
.p-market__table tbody th {
  width: clamp(139px, 10.1041666667vw, 194px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  border-color: rgba(255, 255, 255, 0.2);
}

.p-market__table tbody td {
  font-size: clamp(12px, 0.8854166667vw, 17px);
  background-color: #ecf5ff;
}

.p-market__note {
  margin: clamp(15px, 1.09375vw, 21px) 0 0;
  color: #000000;
  font-size: clamp(10px, 0.7291666667vw, 14px);
  line-height: 1.7;
}
.p-market__note p {
  margin: 0;
}

.p-market__blog {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin: clamp(72px, 5.2083333333vw, 100px) auto 0;
}

.p-market__blog__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(29px, 2.0833333333vw, 40px);
}

.p-market__blog__intro {
  flex: 1;
  min-width: 0;
}

.p-market__blog__intro h2 {
  margin: 0;
  color: #085cac;
  font-size: clamp(25px, 1.8229166667vw, 35px);
  font-weight: 700;
  line-height: 1.3;
}

.p-market__blog__intro p {
  margin: clamp(14px, 1.0416666667vw, 20px) 0 0;
  color: #292929;
  line-height: 1.7;
}

.p-market__blog__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(9px, 0.625vw, 12px);
  flex-shrink: 0;
  width: clamp(243px, 17.6041666667vw, 338px);
  height: clamp(58px, 4.21875vw, 81px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-market__blog__btn img {
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  transition: filter 0.3s ease-out;
}

.p-market__blog__list {
  margin: clamp(58px, 4.1666666667vw, 80px) 0 0;
  padding: 0;
  list-style: none;
  width: calc(50% + 50vw);
}

.p-market__blog__list .slick-list {
  margin: 0;
}

.p-market__blog__list .slick-track {
  display: flex;
  margin-left: 0;
}

.p-market__blog__list .slick-slide {
  box-sizing: content-box;
  width: clamp(333px, 23.0729166667vw, 443px);
  padding-right: clamp(26px, 1.875vw, 36px);
  height: auto;
}

.p-market__blog__list .slick-slide > div {
  height: 100%;
}

.p-market__blog__card {
  display: block;
  color: inherit;
  text-decoration: none;
}

.p-market__blog__card img {
  width: 100%;
  height: auto;
  aspect-ratio: 678/452;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  vertical-align: top;
}

.p-market__blog__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(7px, 0.5208333333vw, 10px);
  margin-top: clamp(14px, 0.9895833333vw, 19px);
}

.p-market__blog__date {
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-market__blog__cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(6px, 0.4166666667vw, 8px) clamp(11px, 0.78125vw, 15px);
  border: 1px solid #085cac;
  border-radius: clamp(19px, 1.40625vw, 27px);
  background-color: transparent;
  color: #085cac;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.4;
}

.p-market__blog__ttl {
  display: block;
  margin-top: clamp(7px, 0.5208333333vw, 10px);
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.5;
}

.p-market__blog__excerpt {
  display: block;
  margin-top: clamp(7px, 0.5208333333vw, 10px);
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.7;
}

@media (max-width: 750px) {
  .p-market .c-panel {
    padding-bottom: clamp(30px, 8vw, 60px);
  }
  .p-market__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-market__lead {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: 1.7;
  }
  .p-market__prices {
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
    margin-left: 0;
    translate: none;
  }
  .p-market__prices__title {
    height: clamp(36px, 9.6vw, 72px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-market__prices__list {
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-market__card {
    flex-basis: calc((100% - clamp(10px, 2.6666666667vw, 20px)) / 2);
    row-gap: clamp(8px, 2.1333333333vw, 16px);
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(8px, 2.1333333333vw, 16px) clamp(8px, 2.1333333333vw, 16px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-market__card__name {
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-market__card__unit {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-market__card__text {
    margin-bottom: clamp(4px, 1.0666666667vw, 8px);
    padding: 0;
    font-size: clamp(11px, 2.9333333333vw, 22px);
  }
  .p-market__card__name:has(+ .p-market__card__rows) {
    margin-bottom: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-market__card__rows {
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(8px, 2.1333333333vw, 16px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-market__card__row {
    flex-direction: column;
    gap: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-market__card__row + .p-market__card__row {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-market__card__row dt {
    width: clamp(72px, 19.2vw, 144px);
    height: clamp(22px, 5.8666666667vw, 44px);
    border-radius: 100px;
    font-size: clamp(12px, 3.2vw, 24px);
  }
  html[lang=en] .p-market__card__row dt {
    width: 100%;
    height: clamp(22px, 5.8666666667vw, 44px);
    min-height: 0;
    padding: 0 clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(9px, 2vw, 15px);
    line-height: 1;
    white-space: nowrap;
  }
  .p-market__card__row dd {
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-market__monthly {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-market__monthly__wrap {
    margin-top: clamp(15px, 4vw, 30px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    overflow-x: auto;
  }
  .p-market__table {
    width: clamp(700px, 186.6666666667vw, 1400px);
  }
  .p-market__table th,
  .p-market__table td {
    padding: clamp(12px, 3.2vw, 24px) clamp(4px, 1.0666666667vw, 8px);
  }
  .p-market__table thead th {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-market__table thead th:first-child,
  .p-market__table tbody th {
    width: clamp(88px, 23.4666666667vw, 176px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-market__table tbody td {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-market__note {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-market__note br {
    display: none;
  }
  .p-market__blog {
    display: flex;
    flex-direction: column;
    width: auto;
    margin: clamp(60px, 16vw, 120px) 0 0;
  }
  .p-market__blog__head {
    display: contents;
  }
  .p-market__blog__intro {
    order: 1;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-market__blog__intro h2 {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: 1.5;
  }
  .p-market__blog__intro p {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-market__blog__list {
    order: 2;
    width: auto;
    margin: clamp(30px, 8vw, 60px) 0 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-market__blog__btn {
    order: 3;
    align-self: center;
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-market__blog__btn img {
    width: clamp(15px, 4vw, 30px);
    height: clamp(15px, 4vw, 30px);
  }
  .p-market__blog__list .slick-slide {
    width: clamp(234px, 62.4vw, 468px);
    padding-right: clamp(26px, 6.9333333333vw, 52px);
  }
  .p-market__blog__card img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-market__blog__meta {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-market__blog__date {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-market__blog__cat {
    height: clamp(25px, 6.6666666667vw, 50px);
    padding: 0 clamp(12px, 3.2vw, 24px);
    box-sizing: border-box;
    border-radius: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: 1;
  }
  .p-market__blog__ttl {
    margin-top: clamp(9px, 2.4vw, 18px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-market__blog__excerpt {
    margin-top: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(23px, 6.1333333333vw, 46px);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-market__blog__card:hover {
    opacity: 0.7;
  }
  .p-market__blog__btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-market__blog__btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-copper__panel {
  position: relative;
  z-index: var(--z-float);
  background-color: #ffffff;
  border-radius: 40px;
  padding: 148px 0 100px;
  box-sizing: border-box;
}

.p-copper__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.p-copper__search > .p-copper__inner {
  max-width: clamp(688px, 62.5vw, 1200px);
}

.p-copper__search__head {
  display: flex;
  align-items: flex-start;
  gap: 0;
}

.p-copper__search__title {
  flex-shrink: 0;
  width: clamp(217px, 15.7291666667vw, 302px);
  margin: 0;
  line-height: 1;
}

.p-copper__search__title .ja {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-copper__search__title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-copper__search__title .en {
  display: block;
  margin-top: clamp(5px, 0.3645833333vw, 7px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(58px, 4.1666666667vw, 80px);
  font-weight: 500;
  font-style: italic;
  line-height: 1.15;
}

.p-copper__search__lead {
  flex: 1;
  min-width: 0;
  max-width: clamp(637px, 46.1458333333vw, 886px);
}

.p-copper__search__lead-title {
  margin-top: 0;
  margin-bottom: 0;
  color: #085cac;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.44;
}

.p-copper__search__lead > p:not(.p-copper__search__lead-title) {
  margin: clamp(9px, 0.625vw, 12px) 0 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
}

.p-copper__search__list {
  display: flex;
  gap: clamp(12px, 0.8854166667vw, 17px);
  max-width: clamp(802px, 72.9166666667vw, 1400px);
  margin: clamp(66px, 4.7916666667vw, 92px) auto 0;
  padding: 0;
  list-style: none;
}

.p-copper__search__list > li {
  flex: 1;
  min-width: 0;
}

.p-copper__search__card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  box-sizing: border-box;
  width: 100%;
  min-height: clamp(228px, 16.5104166667vw, 317px);
  padding: clamp(22px, 1.6145833333vw, 31px) clamp(20px, 1.4583333333vw, 28px) clamp(20px, 1.4583333333vw, 28px);
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  background-color: #ecf5ff;
  text-decoration: none;
  color: inherit;
}

.p-copper__search__card__icon {
  display: block;
  width: clamp(65px, 4.7395833333vw, 91px);
  height: clamp(65px, 4.7395833333vw, 91px);
  margin-left: auto;
  margin-right: auto;
}

.p-copper__search__card__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  margin-top: clamp(19px, 1.40625vw, 27px);
  color: #085cac;
  font-size: clamp(17px, 1.25vw, 24px);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.p-copper__search__card__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(17px, 1.25vw, 24px);
  height: clamp(17px, 1.25vw, 24px);
  border: 1px solid #085cac;
  border-radius: 50%;
  background-color: #ffffff;
  box-sizing: border-box;
  flex-shrink: 0;
}

.p-copper__search__card__arrow img {
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  transform: rotate(90deg);
}

.p-copper__search__card p {
  margin: clamp(8px, 0.5729166667vw, 11px) 0 0;
  color: #000000;
  font-size: clamp(11px, 0.78125vw, 15px);
  line-height: 1.7;
  text-align: left;
}

.p-copper__search__card p strong {
  font-weight: 700;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-copper__search__list {
    align-items: stretch;
  }
  html[lang=en] .p-copper__search__list > li {
    display: flex;
  }
  html[lang=en] .p-copper__search__card {
    height: 100%;
  }
}
@media (max-width: 750px) {
  .p-copper__panel {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
  }
  .p-copper__search > .p-copper__inner {
    max-width: none;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__search__head {
    flex-direction: column;
    align-items: stretch;
  }
  .p-copper__search__title {
    width: auto;
    text-align: center;
  }
  .p-copper__search__title .ja {
    justify-content: center;
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-copper__search__title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-copper__search__title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  html[lang=en] .p-copper__search__title {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
  }
  html[lang=en] .p-copper__search__title .ja {
    justify-content: flex-start;
    align-items: center;
    text-align: left;
  }
  html[lang=en] .p-copper__search__title .en {
    text-align: left;
  }
  .p-copper__search__lead {
    max-width: none;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-copper__search__lead-title {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: 1.5;
    text-align: center;
  }
  .p-copper__search__lead > p:not(.p-copper__search__lead-title) {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-copper__search__list {
    flex-wrap: wrap;
    gap: clamp(10px, 2.6666666667vw, 20px);
    max-width: none;
    margin: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-copper__search__list > li {
    flex: 0 0 calc(50% - clamp(5px, 1.3333333333vw, 10px));
  }
  .p-copper__search__card {
    min-height: auto;
    height: 100%;
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(12px, 3.2vw, 24px) clamp(18px, 4.8vw, 36px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-copper__search__card__icon {
    width: clamp(60px, 16vw, 120px);
    height: clamp(60px, 16vw, 120px);
  }
  .p-copper__search__card__label {
    gap: clamp(5px, 1.3333333333vw, 10px);
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-copper__search__card__arrow {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-copper__search__card__arrow img {
    width: clamp(7px, 1.8666666667vw, 14px);
    height: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-copper__search__card p {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
}
.p-copper__sec-title {
  margin: 0 0 48px;
  text-align: center;
  line-height: 1;
}

.p-copper__sec-title .ja {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #292929;
  font-size: 2.2rem;
  font-weight: 700;
}

.p-copper__sec-title .ja::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-copper__sec-title .en {
  display: block;
  margin-top: 8px;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: 8rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.15;
}

.p-copper__sec-title.--light .ja {
  color: #ffffff;
}

.p-copper__sec-title.--light .ja::before {
  background-color: #ffffff;
}

.p-copper__sec-title.--light .en {
  color: #ffffff;
}

.p-copper__filter {
  display: flex;
  justify-content: center;
  margin-top: 48px;
}

.p-copper__filter.--left {
  justify-content: flex-start;
  margin-top: 40px;
}

.p-copper__filter.--inline {
  margin-top: 0;
  align-items: flex-end;
}

.p-copper__filter__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 259px;
  height: 81px;
  padding: 0 28px;
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: 41px;
  background-color: #ffffff;
  color: #085cac;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-copper__filter__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.p-copper__filter__arrow img {
  display: block;
  width: 16px;
  height: 16px;
  transition: filter 0.3s ease-out;
}

.p-copper__chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px 7px;
}

.p-copper__chip {
  display: inline-flex;
  cursor: pointer;
}

.p-copper__chip input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.p-copper__chip span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 47px;
  padding: 0 4px;
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: 38px;
  background-color: #ffffff;
  color: #085cac;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
}

.p-copper__chip input:checked + span {
  background-color: #60b9ff;
  color: #292929;
}

.p-copper__chip.--light span {
  background-color: #ffffff;
  color: #085cac;
}

.p-copper__chip.--light input:checked + span {
  background-color: #085cac;
  color: #ffffff;
}

.p-copper__category {
  position: relative;
  z-index: 1;
  margin-top: calc(clamp(32px, 2.34375vw, 45px) * -1);
  padding: clamp(90px, 6.5104166667vw, 125px) 0 clamp(72px, 5.2083333333vw, 100px);
  background-color: #00498e;
  border-radius: 0 0 clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px);
}

.p-copper__category::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: var(--z-bg);
  border-radius: inherit;
  background: url("../img/copper/category_bg.png") no-repeat right bottom/100% auto;
  pointer-events: none;
}

.p-copper__category > .p-copper__inner {
  position: relative;
  z-index: var(--z-base);
  max-width: clamp(802px, 72.9166666667vw, 1400px);
}

.p-copper__category .p-copper__sec-title {
  margin: 0 0 clamp(35px, 2.5vw, 48px);
}

.p-copper__category .p-copper__sec-title .ja {
  gap: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(16px, 1.1458333333vw, 22px);
}

.p-copper__category .p-copper__sec-title .ja::before {
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
}

.p-copper__category .p-copper__sec-title .en {
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(58px, 4.1666666667vw, 80px);
}

.p-copper__category__cols {
  display: flex;
  gap: clamp(43px, 3.125vw, 60px);
}

.p-copper__category__col {
  flex: 1;
  min-width: 0;
}

.p-copper__category__col-title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(252px, 18.2291666667vw, 350px);
  height: clamp(65px, 4.6875vw, 90px);
  margin: 0 auto clamp(29px, 2.0833333333vw, 40px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  color: #003e79;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.p-copper__category__col-title img {
  position: absolute;
  top: 50%;
  right: clamp(18px, 1.3020833333vw, 25px);
  display: block;
  width: clamp(12px, 0.8333333333vw, 16px);
  height: auto;
  transform: translateY(-50%);
}

@media (min-width: 750.11px) {
  html[lang=en] .p-copper__category__col-title {
    width: 100%;
    height: auto;
    min-height: clamp(65px, 4.6875vw, 90px);
    padding: clamp(14px, 1.0416666667vw, 20px) clamp(44px, 3.125vw, 60px) clamp(14px, 1.0416666667vw, 20px) clamp(18px, 1.3020833333vw, 25px);
    line-height: 1.3;
    text-align: center;
  }
}
.p-copper__category__rows {
  margin: 0;
  padding: clamp(14px, 1.0416666667vw, 20px) 0 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.p-copper__category__rows > li {
  display: flex;
  align-items: flex-start;
  gap: 0;
  padding: clamp(7px, 0.5208333333vw, 10px) 0;
}

.p-copper__category__name {
  flex-shrink: 0;
  width: clamp(93px, 6.7708333333vw, 130px);
  color: #ffffff;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.4;
  padding-top: clamp(7px, 0.5208333333vw, 10px);
}

.p-copper__category .p-copper__chips {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  flex: 1;
  min-width: 0;
  gap: clamp(6px, 0.4166666667vw, 8px) clamp(5px, 0.3645833333vw, 7px);
}

.p-copper__category .p-copper__chip {
  min-width: 0;
}

.p-copper__category .p-copper__chip span {
  width: 100%;
  height: clamp(34px, 2.4479166667vw, 47px);
  padding: 0 clamp(3px, 0.2083333333vw, 4px);
  border-radius: clamp(27px, 1.9791666667vw, 38px);
  color: #085cac;
  font-size: clamp(13px, 0.9114583333vw, 17.5px);
}

.p-copper__category .p-copper__filter {
  margin-top: clamp(35px, 2.5vw, 48px);
}

.p-copper__category .p-copper__filter__btn {
  gap: clamp(9px, 0.625vw, 12px);
  min-width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  padding: 0 clamp(20px, 1.4583333333vw, 28px);
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  font-size: clamp(14px, 0.9895833333vw, 19px);
}

.p-copper__category .p-copper__filter__arrow img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
}

@media (max-width: 750px) {
  .p-copper__category {
    margin-top: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(50px, 13.3333333333vw, 100px);
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__category > .p-copper__inner {
    max-width: none;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__category__cols {
    flex-direction: column;
    gap: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-copper__category__col-title {
    width: clamp(250px, 66.6666666667vw, 500px);
    height: clamp(55px, 14.6666666667vw, 110px);
    margin-bottom: clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-copper__category__col-title img {
    right: clamp(18px, 4.8vw, 36px);
    width: clamp(12px, 3.2vw, 24px);
  }
  html[lang=en] .p-copper__category__col-title {
    width: 100%;
    height: auto;
    min-height: clamp(55px, 14.6666666667vw, 110px);
    padding: clamp(14px, 3.7333333333vw, 28px) clamp(44px, 11.7333333333vw, 88px) clamp(14px, 3.7333333333vw, 28px) clamp(18px, 4.8vw, 36px);
    line-height: 1.3;
    text-align: center;
  }
  .p-copper__category__rows {
    padding-top: clamp(12px, 3.2vw, 24px);
  }
  .p-copper__category__rows > li {
    padding: clamp(6px, 1.6vw, 12px) 0;
  }
  .p-copper__category__name {
    width: clamp(95px, 25.3333333333vw, 190px);
    padding-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-copper__category .p-copper__chips {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-wrap: wrap;
    gap: clamp(6px, 1.6vw, 12px) clamp(5px, 1.3333333333vw, 10px);
  }
  .p-copper__category .p-copper__chip span {
    width: clamp(75px, 20vw, 150px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(3px, 0.8vw, 6px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
}
.p-copper__use {
  position: relative;
  z-index: 0;
  margin-top: calc(clamp(29px, 2.0833333333vw, 40px) * -1);
  background-color: #ecf5ff;
  padding: calc(clamp(58px, 4.1666666667vw, 80px) + clamp(29px, 2.0833333333vw, 40px)) 0 clamp(72px, 5.2083333333vw, 100px);
}

.p-copper__use > .p-copper__inner {
  max-width: clamp(802px, 72.9166666667vw, 1400px);
}

.p-copper__use .p-copper__sec-title {
  margin: 0 0 clamp(35px, 2.5vw, 48px);
}

.p-copper__use .p-copper__sec-title .ja {
  gap: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(16px, 1.1458333333vw, 22px);
}

.p-copper__use .p-copper__sec-title .ja::before {
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
}

.p-copper__use .p-copper__sec-title .en {
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(58px, 4.1666666667vw, 80px);
}

.p-copper__use__tabs {
  display: flex;
  gap: clamp(5px, 0.3645833333vw, 7px);
  width: 100%;
}

.p-copper__use__tab {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: clamp(9px, 0.625vw, 12px);
  min-width: 0;
  height: clamp(51px, 3.6979166667vw, 71px);
  padding: 0 clamp(29px, 2.0833333333vw, 40px) 0 clamp(10px, 0.7291666667vw, 14px);
  box-sizing: border-box;
  border: none;
  border-radius: clamp(25px, 1.8229166667vw, 35px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  opacity: 1;
}
@media (min-width: 750.11px) {
  .p-copper__use__tab {
    width: clamp(206px, 14.8958333333vw, 286px);
  }
}

.p-copper__use__tab > img {
  position: absolute;
  top: 50%;
  right: clamp(13px, 0.9375vw, 18px);
  display: block;
  width: clamp(12px, 0.8333333333vw, 16px);
  height: auto;
  transform: translateY(-50%);
  pointer-events: none;
}

.p-copper__use__tab:last-child {
  justify-content: center;
  padding-left: clamp(29px, 2.0833333333vw, 40px);
}
@media (min-width: 750.11px) {
  .p-copper__use__tab:last-child {
    width: clamp(164px, 11.875vw, 228px);
  }
}

.p-copper__use__tab-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(41px, 2.96875vw, 57px);
  height: clamp(41px, 2.96875vw, 57px);
  border-radius: clamp(23px, 1.6666666667vw, 32px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(20px, 1.4583333333vw, 28px);
  flex-shrink: 0;
}

.p-copper__use__tab-icon img {
  display: block;
  width: clamp(26px, 1.875vw, 36px);
  height: clamp(26px, 1.875vw, 36px);
  object-fit: contain;
}

.p-copper__use__tab[data-use-tab=mobility] .p-copper__use__tab-icon img {
  width: clamp(32px, 2.2916666667vw, 44px);
  height: clamp(32px, 2.2916666667vw, 44px);
}

.p-copper__use__panel {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  width: 95%;
  margin: clamp(29px, 2.0833333333vw, 40px) auto 0;
  border-radius: clamp(22px, 1.5625vw, 30px);
  background-color: #ffffff;
  overflow: hidden;
}

.p-copper__use__body {
  min-width: 0;
  padding: clamp(35px, 2.5vw, 48px) clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.p-copper__use__visual {
  width: 100%;
}

.p-copper__use__visual img {
  display: none;
  width: 100%;
  height: auto;
}

.p-copper__use__visual img.is-active {
  display: block;
}

.p-copper__use__panel > .p-copper__filter {
  padding: clamp(29px, 2.0833333333vw, 40px);
  margin-top: 0;
  box-sizing: border-box;
}

.p-copper__use .p-copper__filter.--left {
  margin-top: 0;
}

.p-copper__use .p-copper__filter__btn {
  gap: clamp(9px, 0.625vw, 12px);
  min-width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  padding: 0 clamp(20px, 1.4583333333vw, 28px);
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  font-size: clamp(14px, 0.9895833333vw, 19px);
}

.p-copper__use .p-copper__filter__arrow img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
}

.p-copper__use__subs {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(9px, 0.625vw, 12px);
  margin-bottom: clamp(17px, 1.25vw, 24px);
}

.p-copper__use__sub {
  cursor: pointer;
}

.p-copper__use__sub input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.p-copper__use__sub span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(121px, 8.75vw, 168px);
  height: clamp(34px, 2.4479166667vw, 47px);
  padding: 0 clamp(12px, 0.8333333333vw, 16px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(27px, 1.9791666667vw, 38px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
}

.p-copper__use__sub input:checked + span,
.p-copper__use__sub.is-active span {
  background-color: #085cac;
  color: #ffffff;
}

.p-copper__use .p-copper__chips {
  gap: clamp(6px, 0.4166666667vw, 8px) clamp(5px, 0.3645833333vw, 7px);
}

@media (min-width: 750.11px) {
  .p-copper__use .p-copper__chip {
    flex: 0 1 calc((100% - clamp(5px, 0.3645833333vw, 7px) * 9) / 10);
    min-width: clamp(72px, 5.2083333333vw, 100px);
  }
}

.p-copper__use .p-copper__chip span {
  width: 100%;
  height: clamp(34px, 2.4479166667vw, 47px);
  padding: 0 clamp(3px, 0.2083333333vw, 4px);
  border-radius: clamp(27px, 1.9791666667vw, 38px);
  font-size: clamp(13px, 0.9114583333vw, 17.5px);
}

.p-copper__use__placeholder {
  margin: 0;
  color: #292929;
}

@media (max-width: 750px) {
  .p-copper__use {
    margin-top: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
    padding: calc(clamp(50px, 13.3333333333vw, 100px) + clamp(20px, 5.3333333333vw, 40px)) 0 clamp(70px, 18.6666666667vw, 140px);
  }
  .p-copper__use > .p-copper__inner {
    max-width: none;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__use__tabs {
    flex-wrap: wrap;
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-copper__use__tab {
    flex: 0 0 calc(50% - clamp(4px, 1.0666666667vw, 8px));
    gap: clamp(6px, 1.6vw, 12px);
    height: clamp(50px, 13.3333333333vw, 100px);
    padding: 0 clamp(28px, 7.4666666667vw, 56px) 0 clamp(6px, 1.6vw, 12px);
    border-radius: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: 1.2;
  }
  .p-copper__use__tab > img {
    right: clamp(10px, 2.6666666667vw, 20px);
    width: clamp(12px, 3.2vw, 24px);
  }
  .p-copper__use__tab:last-child {
    flex-basis: 100%;
    padding-left: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-copper__use__tab-icon {
    width: clamp(38px, 10.1333333333vw, 76px);
    height: clamp(38px, 10.1333333333vw, 76px);
    border-radius: clamp(19px, 5.0666666667vw, 38px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__use__tab-icon img {
    width: clamp(24px, 6.4vw, 48px);
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-copper__use__tab[data-use-tab=mobility] .p-copper__use__tab-icon img {
    width: clamp(30px, 8vw, 60px);
    height: clamp(30px, 8vw, 60px);
  }
  .p-copper__use__panel {
    width: 100%;
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(15px, 4vw, 30px);
  }
  .p-copper__use__body {
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(15px, 4vw, 30px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__use__subs {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-bottom: clamp(18px, 4.8vw, 36px);
  }
  .p-copper__use__sub span {
    min-width: 0;
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(14px, 3.7333333333vw, 28px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-copper__use .p-copper__chips {
    flex-wrap: wrap;
    gap: clamp(6px, 1.6vw, 12px) clamp(5px, 1.3333333333vw, 10px);
  }
  .p-copper__use .p-copper__chip span {
    width: clamp(75px, 20vw, 150px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(3px, 0.8vw, 6px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-copper__use__panel > .p-copper__filter {
    justify-content: center;
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(15px, 4vw, 30px) clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-copper__char {
  position: relative;
  z-index: var(--z-float);
  margin-top: calc(clamp(29px, 2.0833333333vw, 40px) * -1);
  background-color: #ffffff;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  padding: clamp(115px, 8.3333333333vw, 160px) 0 clamp(72px, 5.2083333333vw, 100px);
}

.p-copper__char > .p-copper__inner {
  max-width: clamp(802px, 72.9166666667vw, 1400px);
}

.p-copper__char .p-copper__sec-title {
  margin: 0 0 clamp(35px, 2.5vw, 48px);
}

.p-copper__char .p-copper__sec-title .ja {
  gap: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(16px, 1.1458333333vw, 22px);
}

.p-copper__char .p-copper__sec-title .ja::before {
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
}

.p-copper__char .p-copper__sec-title .en {
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(58px, 4.1666666667vw, 80px);
}

.p-copper__char .p-copper__filter {
  margin-top: clamp(35px, 2.5vw, 48px);
}

.p-copper__char .p-copper__filter__btn {
  gap: clamp(9px, 0.625vw, 12px);
  min-width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  padding: 0 clamp(20px, 1.4583333333vw, 28px);
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  font-size: clamp(14px, 0.9895833333vw, 19px);
}

.p-copper__char .p-copper__filter__arrow img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
}

.p-copper__ranges {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 1.4583333333vw, 28px);
  max-width: clamp(802px, 72.9166666667vw, 1400px);
  margin: 0 auto;
}

.p-copper__range {
  background-color: #ecf5ff;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  padding: clamp(35px, 2.5vw, 48px) 0 clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.p-copper__range__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(13px, 0.9375vw, 18px);
  margin: 0 0 clamp(14px, 0.9895833333vw, 19px);
  color: #085cac;
  font-size: clamp(15px, 1.09375vw, 21px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-copper__range__choice {
  position: relative;
  display: block;
  width: clamp(19px, 1.3541666667vw, 26px);
  height: clamp(19px, 1.3541666667vw, 26px);
  flex-shrink: 0;
  border: 1px solid #085cac;
  border-radius: 50%;
  background-color: #ffffff;
  box-sizing: border-box;
}

.p-copper__range__choice::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(9px, 0.625vw, 12px);
  height: clamp(9px, 0.625vw, 12px);
  border-radius: 50%;
  background-color: #085cac;
  transform: translate(-50%, -50%);
}

.p-copper__range__body {
  display: flex;
  align-items: flex-start;
  gap: clamp(18px, 1.3020833333vw, 25px);
  padding: 0 clamp(135px, 9.7916666667vw, 188px) 0 clamp(12px, 0.8854166667vw, 17px);
  box-sizing: border-box;
}

.p-copper__range__label-wrap {
  display: flex;
  flex: 0 0 clamp(106px, 7.65625vw, 147px);
  align-items: center;
  justify-content: flex-end;
  margin-top: clamp(12px, 0.8854166667vw, 17px);
}

.p-copper__range__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: clamp(25px, 1.8229166667vw, 35px);
  padding: 0 clamp(9px, 0.625vw, 12px);
  border-radius: clamp(13px, 0.9375vw, 18px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  box-sizing: border-box;
}

.p-copper__range__control {
  position: relative;
  flex: 1;
  min-width: 0;
}

.p-copper__range__values {
  position: relative;
  height: clamp(16px, 1.1458333333vw, 22px);
  margin-bottom: clamp(4px, 0.3125vw, 6px);
  color: #2793e9;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
}

.p-copper__range__values span {
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-copper__range__bar {
  position: relative;
  height: clamp(17px, 1.25vw, 24px);
}

.p-copper__range__rail {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: clamp(10px, 0.7291666667vw, 14px);
  border-radius: clamp(5px, 0.3645833333vw, 7px);
  background-color: #ffffff;
  box-shadow: 0 3px 3.5px rgba(178, 196, 216, 0.596);
  transform: translateY(-50%);
}

.p-copper__range__selection {
  position: absolute;
  top: 50%;
  height: clamp(4px, 0.3125vw, 6px);
  background-color: rgba(39, 147, 233, 0.667);
  transform: translateY(-50%);
}

.p-copper__range__input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: clamp(17px, 1.25vw, 24px);
  margin: 0;
  background: transparent;
  pointer-events: none;
  appearance: none;
  -webkit-appearance: none;
}

.p-copper__range__input::-webkit-slider-runnable-track {
  height: clamp(17px, 1.25vw, 24px);
  background: transparent;
  border: none;
}

.p-copper__range__input::-webkit-slider-thumb {
  appearance: none;
  -webkit-appearance: none;
  width: clamp(10px, 0.7291666667vw, 14px);
  height: clamp(10px, 0.7291666667vw, 14px);
  margin-top: clamp(4px, 0.2604166667vw, 5px);
  border: none;
  border-radius: 50%;
  background-color: #2793e9;
  box-shadow: 0 0 0 clamp(4px, 0.2604166667vw, 5px) rgba(39, 147, 233, 0.27);
  pointer-events: auto;
  cursor: pointer;
}

.p-copper__range__input::-moz-range-track {
  height: clamp(17px, 1.25vw, 24px);
  background: transparent;
  border: none;
}

.p-copper__range__input::-moz-range-thumb {
  width: clamp(10px, 0.7291666667vw, 14px);
  height: clamp(10px, 0.7291666667vw, 14px);
  border: none;
  border-radius: 50%;
  background-color: #2793e9;
  box-shadow: 0 0 0 clamp(4px, 0.2604166667vw, 5px) rgba(39, 147, 233, 0.27);
  pointer-events: auto;
  cursor: pointer;
}

.p-copper__range__input.--from {
  z-index: 2;
}

.p-copper__range__input.--to {
  z-index: 3;
}

.p-copper__range__scale {
  display: flex;
  justify-content: space-between;
  margin-top: clamp(9px, 0.625vw, 12px);
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
}

@media (max-width: 750px) {
  .p-copper__char {
    margin-top: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(50px, 13.3333333333vw, 100px);
  }
  .p-copper__char > .p-copper__inner {
    max-width: none;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__ranges {
    gap: clamp(15px, 4vw, 30px);
    max-width: none;
  }
  .p-copper__range {
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(15px, 4vw, 30px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-copper__range__title {
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-bottom: clamp(15px, 4vw, 30px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-copper__range__choice {
    width: clamp(20px, 5.3333333333vw, 40px);
    height: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__range__choice::after {
    width: clamp(9px, 2.4vw, 18px);
    height: clamp(9px, 2.4vw, 18px);
  }
  .p-copper__range__body {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(10px, 2.6666666667vw, 20px);
    padding: 0;
  }
  .p-copper__range__label-wrap {
    flex: none;
    justify-content: flex-start;
    margin-top: 0;
  }
  .p-copper__range__label {
    height: clamp(26px, 6.9333333333vw, 52px);
    padding: 0 clamp(8px, 2.1333333333vw, 16px);
    border-radius: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-copper__range__values {
    height: clamp(18px, 4.8vw, 36px);
    margin-bottom: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-copper__range__bar {
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-copper__range__rail {
    height: clamp(12px, 3.2vw, 24px);
    border-radius: clamp(6px, 1.6vw, 12px);
  }
  .p-copper__range__selection {
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-copper__range__input {
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-copper__range__input::-webkit-slider-runnable-track {
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-copper__range__input::-moz-range-track {
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-copper__range__input::-webkit-slider-thumb {
    width: 14px;
    height: 14px;
    margin-top: calc((clamp(24px, 6.4vw, 48px) - 14px) / 2);
    box-shadow: 0 0 0 5px rgba(39, 147, 233, 0.27);
  }
  .p-copper__range__input::-moz-range-thumb {
    width: 14px;
    height: 14px;
    box-shadow: 0 0 0 5px rgba(39, 147, 233, 0.27);
  }
  .p-copper__range__scale {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
}
.p-copper__alloy {
  padding: clamp(36px, 2.6041666667vw, 50px) 0 clamp(21px, 1.5104166667vw, 29px);
}

.p-copper__alloy__panel {
  position: relative;
  width: calc(100% - clamp(76px, 5.5208333333vw, 106px));
  margin: 0 auto;
  padding: clamp(69px, 5vw, 96px) 0 clamp(51px, 3.6979166667vw, 71px);
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  background: linear-gradient(220deg, #004f9a 0%, #003260 100%);
  box-sizing: border-box;
}

.p-copper__alloy__panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  background: url("../img/copper/alloy_texture.jpg") center/cover no-repeat;
  opacity: 0.06;
  pointer-events: none;
}

.p-copper__alloy__panel > * {
  position: relative;
}

.p-copper__alloy__panel .p-copper__sec-title {
  margin-bottom: clamp(31px, 2.2395833333vw, 43px);
}

.p-copper__alloy .p-copper__sec-title .ja {
  gap: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(16px, 1.1458333333vw, 22px);
}

.p-copper__alloy .p-copper__sec-title .ja::before {
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
}

.p-copper__alloy .p-copper__sec-title .en {
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  font-size: clamp(58px, 4.1666666667vw, 80px);
}

.p-copper__alloy__form {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(33px, 2.3958333333vw, 46px);
}

.p-copper__alloy__field {
  display: flex;
  align-items: stretch;
  width: clamp(320px, 23.1770833333vw, 445px);
  height: clamp(53px, 3.8541666667vw, 74px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  box-sizing: border-box;
}

.p-copper__alloy__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(88px, 6.3541666667vw, 122px);
  border-radius: clamp(7px, 0.5208333333vw, 10px) 0 0 clamp(7px, 0.5208333333vw, 10px);
  background-color: #cae0f8;
  color: #085cac;
  font-size: clamp(19px, 1.3541666667vw, 26px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.p-copper__alloy__form > .p-copper__alloy__field {
  width: clamp(390px, 28.125vw, 540px);
  height: clamp(78px, 5.625vw, 108px);
}

.p-copper__alloy__form > .p-copper__alloy__field .p-copper__alloy__label {
  width: clamp(160px, 11.25vw, 216px);
  padding: 0 clamp(8px, 0.625vw, 12px);
  line-height: 1.3;
  text-align: center;
}

.p-copper__alloy__form > .p-copper__alloy__field .p-copper__alloy__label span {
  display: block;
  width: 100%;
  text-align: center;
}

.p-copper__alloy__cda {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-copper__alloy__cda .p-copper__alloy__field {
    width: clamp(400px, 29.1666666667vw, 560px);
  }
  html[lang=en] .p-copper__alloy__cda .p-copper__alloy__label {
    width: clamp(70px, 5.1041666667vw, 98px);
  }
}
.p-copper__alloy__arrow {
  display: block;
  width: clamp(25px, 1.8229166667vw, 35px);
  height: clamp(15px, 1.09375vw, 21px);
  margin: clamp(7px, 0.5208333333vw, 10px) 0;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='22' viewBox='0 0 36 22' fill='none'%3E%3Cpath fill='%239fccff' d='M18 22 36 0l-18 9L0 0l18 22Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: clamp(25px, 1.8229166667vw, 35px) clamp(15px, 1.09375vw, 21px);
}

.p-copper__alloy__control {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 100%;
}

.p-copper__alloy__placeholder {
  position: absolute;
  top: 0;
  right: clamp(40px, 2.9166666667vw, 56px);
  bottom: 0;
  left: clamp(14px, 1.0416666667vw, 20px);
  display: flex;
  align-items: center;
  color: #292929;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1.3;
  pointer-events: none;
}

.p-copper__alloy__control:has(option[value=""]:checked) .p-copper__alloy__select {
  color: transparent;
}

.p-copper__alloy__control .p-copper__alloy__select option {
  color: #292929;
}

.p-copper__alloy__control:not(:has(option[value=""]:checked)) .p-copper__alloy__placeholder {
  visibility: hidden;
}

.p-copper__alloy__select {
  flex: 1;
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 clamp(40px, 2.9166666667vw, 56px) 0 clamp(14px, 1.0416666667vw, 20px);
  border: none;
  border-radius: 0 clamp(7px, 0.5208333333vw, 10px) clamp(7px, 0.5208333333vw, 10px) 0;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'%3E%3Ccircle cx='12' cy='12' r='11.5' fill='%23fff' stroke='%23085cac'/%3E%3Cpath fill='%23085cac' d='M12 16.95 16.84 7.04 12 11.28 7.15 7.04Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right clamp(19px, 1.3541666667vw, 26px) center;
  color: #292929;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}

.p-copper__alloy .p-copper__filter.--inline {
  align-self: center;
  margin-left: clamp(35px, 2.5520833333vw, 49px);
}

.p-copper__alloy .p-copper__filter__btn {
  gap: clamp(9px, 0.625vw, 12px);
  min-width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  padding: 0 clamp(20px, 1.4583333333vw, 28px);
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  font-size: clamp(14px, 0.9895833333vw, 19px);
}

.p-copper__alloy .p-copper__filter__arrow img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
}

@media (max-width: 750px) {
  .p-copper__alloy {
    padding: clamp(40px, 10.6666666667vw, 80px) 0 0;
  }
  .p-copper__alloy__panel {
    width: auto;
    margin: 0 clamp(11px, 2.9333333333vw, 22px);
    padding: clamp(50px, 13.3333333333vw, 100px) clamp(15px, 4vw, 30px) clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(15px, 4vw, 30px);
  }
  .p-copper__alloy__panel::before {
    border-radius: clamp(15px, 4vw, 30px);
  }
  .p-copper__alloy__panel .p-copper__sec-title {
    margin-bottom: clamp(30px, 8vw, 60px);
  }
  .p-copper__alloy__form {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-copper__alloy__field {
    width: 100%;
    height: clamp(55px, 14.6666666667vw, 110px);
    border-radius: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-copper__alloy__label {
    width: clamp(85px, 22.6666666667vw, 170px);
    border-radius: clamp(8px, 2.1333333333vw, 16px) 0 0 clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-copper__alloy__form > .p-copper__alloy__field {
    width: 100%;
    height: clamp(76px, 18.6666666667vw, 140px);
  }
  .p-copper__alloy__form > .p-copper__alloy__field .p-copper__alloy__label {
    width: clamp(136px, 34.6666666667vw, 260px);
    padding: 0 clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(16px, 4vw, 30px);
    line-height: 1.3;
  }
  .p-copper__alloy__cda {
    align-items: stretch;
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  html[lang=en] .p-copper__alloy__cda .p-copper__alloy__label {
    width: clamp(52px, 13.8666666667vw, 104px);
  }
  .p-copper__alloy__arrow {
    align-self: center;
    width: clamp(25px, 6.6666666667vw, 50px);
    height: clamp(15px, 4vw, 30px);
    margin: clamp(10px, 2.6666666667vw, 20px) 0;
    background-size: clamp(25px, 6.6666666667vw, 50px) clamp(15px, 4vw, 30px);
  }
  .p-copper__alloy__placeholder {
    right: clamp(40px, 10.6666666667vw, 80px);
    left: clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-copper__alloy__select {
    padding: 0 clamp(40px, 10.6666666667vw, 80px) 0 clamp(12px, 3.2vw, 24px);
    border-radius: 0 clamp(8px, 2.1333333333vw, 16px) clamp(8px, 2.1333333333vw, 16px) 0;
    background-position: right clamp(12px, 3.2vw, 24px) center;
    background-size: clamp(24px, 6.4vw, 48px) clamp(24px, 6.4vw, 48px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-copper__alloy .p-copper__filter.--inline {
    margin: clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
}
@media (max-width: 750px) {
  .p-copper__category .p-copper__sec-title,
  .p-copper__use .p-copper__sec-title,
  .p-copper__char .p-copper__sec-title {
    margin-bottom: clamp(30px, 8vw, 60px);
  }
  .p-copper__category .p-copper__sec-title .ja,
  .p-copper__use .p-copper__sec-title .ja,
  .p-copper__char .p-copper__sec-title .ja,
  .p-copper__alloy .p-copper__sec-title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-copper__category .p-copper__sec-title .ja::before,
  .p-copper__use .p-copper__sec-title .ja::before,
  .p-copper__char .p-copper__sec-title .ja::before,
  .p-copper__alloy .p-copper__sec-title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-copper__category .p-copper__sec-title .en,
  .p-copper__use .p-copper__sec-title .en,
  .p-copper__char .p-copper__sec-title .en,
  .p-copper__alloy .p-copper__sec-title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-copper__char .p-copper__sec-title .en {
    font-size: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-copper__category .p-copper__filter,
  .p-copper__char .p-copper__filter {
    margin-top: clamp(35px, 9.3333333333vw, 70px);
  }
  .p-copper__category .p-copper__filter__btn,
  .p-copper__use .p-copper__filter__btn,
  .p-copper__char .p-copper__filter__btn,
  .p-copper__alloy .p-copper__filter__btn {
    gap: clamp(12px, 3.2vw, 24px);
    min-width: 0;
    width: clamp(260px, 69.3333333333vw, 520px);
    height: clamp(71px, 18.9333333333vw, 142px);
    padding: 0 clamp(24px, 6.4vw, 48px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  html[lang=en] .p-copper__filter {
    width: 100%;
    box-sizing: border-box;
  }
  html[lang=en] .p-copper__category .p-copper__filter__btn,
  html[lang=en] .p-copper__use .p-copper__filter__btn,
  html[lang=en] .p-copper__char .p-copper__filter__btn,
  html[lang=en] .p-copper__alloy .p-copper__filter__btn {
    width: 100%;
  }
  .p-copper__category .p-copper__filter__arrow img,
  .p-copper__use .p-copper__filter__arrow img,
  .p-copper__char .p-copper__filter__arrow img,
  .p-copper__alloy .p-copper__filter__arrow img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
}
@media (min-width: 750.11px) {
  .p-copper__filter__btn:hover {
    background-color: #085cac;
    color: #ffffff;
  }
  .p-copper__filter__btn:hover .p-copper__filter__arrow img {
    filter: brightness(0) invert(1);
  }
}
.p-search__panel {
  position: relative;
  z-index: var(--z-float);
  background-color: #ffffff;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  padding: clamp(124px, 8.9583333333vw, 172px) 0 clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.p-search__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.p-search__table-wrap {
  width: 100%;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  overflow: clip;
}

.p-search__table {
  --p-search-row1: clamp(55px, 5vw, 96px);
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.p-search__table th,
.p-search__table td {
  box-sizing: border-box;
  border-right: 1px solid #d1d6dd;
  border-bottom: 1px solid #d1d6dd;
  text-align: center;
  vertical-align: middle;
  color: #292929;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1.35;
}

.p-search__table th:last-child,
.p-search__table td:last-child {
  border-right: none;
}

.p-search__table thead th {
  position: sticky;
  top: var(--p-search-head-top, 0px);
  z-index: var(--z-float);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.4375;
  padding: clamp(7px, 0.625vw, 12px) clamp(2px, 0.2083333333vw, 4px);
}

.p-search__table thead tr:nth-child(2) th {
  top: calc(var(--p-search-head-top, 0px) + var(--p-search-row1));
}

.p-search__table thead tr:first-child th {
  height: clamp(55px, 5vw, 96px);
}

.p-search__table thead .p-search__th-select {
  width: clamp(66px, 6.0416666667vw, 116px);
}

.p-search__table thead .p-search__th-category {
  width: clamp(77px, 7.03125vw, 135px);
}

.p-search__table thead .p-search__th-type {
  width: clamp(78px, 7.1354166667vw, 137px);
}

.p-search__table thead .p-search__th-alloy {
  width: clamp(142px, 12.8645833333vw, 247px);
}

.p-search__table thead .p-search__th-temper {
  width: clamp(60px, 5.46875vw, 105px);
}

.p-search__table thead .p-search__th-density {
  width: clamp(60px, 5.4166666667vw, 104px);
}

.p-search__table thead .p-search__th-tensile {
  width: clamp(126px, 11.4583333333vw, 220px);
  height: clamp(55px, 5vw, 96px);
  padding: clamp(6px, 0.5208333333vw, 10px) clamp(2px, 0.2083333333vw, 4px) clamp(5px, 0.4166666667vw, 8px);
  vertical-align: bottom;
  border-bottom: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
}

.p-search__table thead .p-search__th-tensile-unit {
  display: block;
  margin-top: clamp(2px, 0.2083333333vw, 4px);
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
}

.p-search__table thead .p-search__th-min,
.p-search__table thead .p-search__th-max {
  width: clamp(63px, 5.7291666667vw, 110px);
  height: clamp(28px, 2.5520833333vw, 49px);
  padding: clamp(5px, 0.4166666667vw, 8px) clamp(2px, 0.2083333333vw, 4px);
}

.p-search__table thead .p-search__th-min {
  border-left: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
}

.p-search__table thead .p-search__th-max {
  border-right: 1px solid #ffffff;
}

.p-search__table thead .p-search__th-elongation {
  width: clamp(97px, 8.8020833333vw, 169px);
}

.p-search__table thead .p-search__th-conductivity {
  width: clamp(96px, 8.6979166667vw, 167px);
}

.p-search__table tbody tr:last-child td {
  border-bottom: none;
}

.p-search__table tbody td {
  height: clamp(41px, 3.6979166667vw, 71px);
  padding: 0 clamp(2px, 0.2083333333vw, 4px);
  background-color: #ecf5ff;
  transition: background-color 0.6s var(--easing);
}

.p-search__table tbody tr.is-active td {
  background-color: #cce4ff;
}

.p-search__check {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(19px, 1.40625vw, 27px);
  height: clamp(19px, 1.40625vw, 27px);
}

.p-search__check input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.p-search__check span {
  display: block;
  width: clamp(19px, 1.40625vw, 27px);
  height: clamp(19px, 1.40625vw, 27px);
  border: 1.5px solid #adadad;
  border-radius: 50%;
  background-color: #ffffff;
  box-sizing: border-box;
  pointer-events: none;
}

.p-search__check input:checked + span {
  border-color: #085cac;
  background-color: #085cac;
}

.p-search__graph {
  display: flex;
  justify-content: center;
  margin-top: clamp(58px, 4.1666666667vw, 80px);
}

.p-search__graph-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
  width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  padding: 0;
  border: 1px solid #085cac;
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-search__graph-btn img {
  display: block;
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  transition: filter 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .p-search__graph-btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-search__graph-btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-search__chart {
  width: clamp(748px, 67.96875vw, 1305px);
  margin-top: clamp(55px, 5vw, 96px);
  margin-left: clamp(22px, 2.03125vw, 39px);
}

.p-search__chart__svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.p-search__chart__badge {
  fill: #085cac;
}

.p-search__chart__badge-text {
  fill: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  text-anchor: middle;
}

.p-search__chart__axis {
  stroke: #003e79;
  stroke-width: 2;
}

.p-search__chart__ticks-y line,
.p-search__chart__ticks-x line {
  stroke: #003e79;
  stroke-width: 1;
}

.p-search__chart__ticks-y text {
  fill: #003e79;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.7rem;
  font-weight: 700;
  text-anchor: start;
}

.p-search__chart__ticks-x text {
  fill: #003e79;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.7rem;
  font-weight: 700;
  text-anchor: middle;
}

.p-search__chart__point {
  cursor: pointer;
}

.p-search__chart__point circle {
  fill: #0064c3;
}

.p-search__chart__point text {
  fill: #0d0d0d;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  text-anchor: middle;
}

.p-search__chart__point:hover circle {
  fill: #085cac;
}

.p-search__empty > p {
  font-size: clamp(13px, 0.9375vw, 18px);
  text-align: center;
}

@media (max-width: 750px) {
  .p-search__empty > p {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-search__panel {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-search__inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-search__table-wrap {
    border-radius: clamp(7px, 1.8666666667vw, 14px);
    overflow-x: auto;
  }
  .p-search__table {
    --p-search-row1: clamp(72px, 19.2vw, 144px);
    width: clamp(840px, 224vw, 1680px);
  }
  .p-search__table thead {
    position: relative;
    z-index: var(--z-float);
  }
  .p-search__table thead th {
    position: static;
  }
  .p-search__table th,
  .p-search__table td {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-search__table thead th,
  .p-search__table thead .p-search__th-tensile-unit {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-search__table thead th {
    padding: clamp(9px, 2.4vw, 18px) clamp(3px, 0.8vw, 6px);
  }
  .p-search__table thead tr:first-child th,
  .p-search__table thead .p-search__th-tensile {
    height: clamp(72px, 19.2vw, 144px);
  }
  .p-search__table thead .p-search__th-tensile-unit {
    margin-top: clamp(3px, 0.8vw, 6px);
  }
  .p-search__table thead .p-search__th-select {
    width: clamp(70px, 18.6666666667vw, 140px);
  }
  .p-search__table thead .p-search__th-category {
    width: clamp(80px, 21.3333333333vw, 160px);
  }
  .p-search__table thead .p-search__th-type {
    width: clamp(90px, 24vw, 180px);
  }
  .p-search__table thead .p-search__th-alloy {
    width: clamp(150px, 40vw, 300px);
  }
  .p-search__table thead .p-search__th-temper {
    width: clamp(55px, 14.6666666667vw, 110px);
  }
  .p-search__table thead .p-search__th-density {
    width: clamp(65px, 17.3333333333vw, 130px);
  }
  .p-search__table thead .p-search__th-tensile {
    width: clamp(160px, 42.6666666667vw, 320px);
    padding: clamp(7px, 1.8666666667vw, 14px) clamp(3px, 0.8vw, 6px) clamp(6px, 1.6vw, 12px);
  }
  .p-search__table thead .p-search__th-min,
  .p-search__table thead .p-search__th-max {
    width: clamp(80px, 21.3333333333vw, 160px);
    height: clamp(36px, 9.6vw, 72px);
    padding: clamp(6px, 1.6vw, 12px) clamp(3px, 0.8vw, 6px);
  }
  .p-search__table thead .p-search__th-elongation {
    width: clamp(70px, 18.6666666667vw, 140px);
  }
  .p-search__table thead .p-search__th-conductivity {
    width: clamp(100px, 26.6666666667vw, 200px);
  }
  .p-search__table tbody td {
    height: clamp(46px, 12.2666666667vw, 92px);
    padding: 0 clamp(3px, 0.8vw, 6px);
  }
  .p-search__check,
  .p-search__check span {
    width: clamp(22px, 5.8666666667vw, 44px);
    height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-search__graph {
    margin-top: clamp(35px, 9.3333333333vw, 70px);
  }
  .p-search__graph-btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(260px, 69.3333333333vw, 520px);
    height: clamp(71px, 18.9333333333vw, 142px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-search__graph-btn img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-search__chart {
    width: auto;
    margin: clamp(40px, 10.6666666667vw, 80px) 0 0;
    overflow-x: auto;
  }
  .p-search__chart__svg {
    width: clamp(900px, 240vw, 1800px);
  }
  .p-search__chart__badge-text,
  .p-search__chart__ticks-y text,
  .p-search__chart__ticks-x text,
  .p-search__chart__point text {
    font-size: 1.8rem;
  }
}
.p-profile .c-panel {
  padding-top: clamp(122px, 8.8541666667vw, 170px);
  padding-bottom: clamp(101px, 7.2916666667vw, 140px);
}

.p-profile__inner {
  width: clamp(688px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
}

.p-profile__info-title {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  margin: 0;
  color: #292929;
  font-size: clamp(22px, 1.5625vw, 30px);
}

.p-profile__info-title::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-profile__info {
  margin: clamp(45px, 3.2291666667vw, 62px) 0 0;
  padding: 0;
  font-weight: 700;
}

.p-profile__info__row {
  display: flex;
  align-items: stretch;
  margin: 0;
}

.p-profile__info__row dt {
  width: clamp(79px, 5.7291666667vw, 110px);
  flex-shrink: 0;
  box-sizing: border-box;
  margin: 0;
  padding: clamp(14px, 1.0416666667vw, 20px) 0;
  border-bottom: 1px solid #085cac;
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 1.8;
}

.p-profile__info__row dd {
  flex: 1;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  padding: clamp(14px, 1.0416666667vw, 20px) 0;
  border-bottom: 1px solid #b7b7b7;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 2;
}

.p-profile__info__row:first-child dt,
.p-profile__info__row:first-child dd {
  padding-top: 0;
}

.p-profile__info__officers {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 2;
}

.p-profile__info__officers > li {
  display: grid;
  grid-template-columns: 8em 6em 1fr;
  column-gap: clamp(12px, 0.8333333333vw, 16px);
  align-items: start;
}

.p-profile__info__officers__title,
.p-profile__info__officers__name,
.p-profile__info__officers__role {
  display: block;
}

.p-profile__info__place {
  margin-top: clamp(23px, 1.6666666667vw, 32px);
}

.p-profile__info__place:first-child {
  margin-top: 0;
}

.p-profile__info__place-name {
  margin: 0;
  color: #292929;
  font-weight: 700;
}

.p-profile__info__place-name.--with-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: clamp(16px, 1.25vw, 24px);
}

.p-profile__info__tabelog {
  display: inline-flex;
  align-items: center;
  gap: clamp(3px, 0.2083333333vw, 4px);
  color: #292929;
}

.p-profile__info__tabelog span {
  text-decoration: underline;
}

.p-profile__info__tabelog::after {
  content: "";
  flex-shrink: 0;
  width: calc(1em + 3px);
  height: calc(1em + 3px);
  background-color: currentColor;
  -webkit-mask: url("../img/common/icon_search.png") center/contain no-repeat;
  mask: url("../img/common/icon_search.png") center/contain no-repeat;
}

.p-profile__info__place p {
  margin: 0;
  color: #292929;
}

.p-profile__info__place a {
  color: #292929;
  text-decoration: underline;
}

.p-profile__info__qr {
  display: block;
  width: clamp(70px, 5.1041666667vw, 98px);
  height: clamp(70px, 5.1041666667vw, 98px);
  margin-top: clamp(12px, 0.8333333333vw, 16px);
}

.p-profile__info__suppliers {
  display: flex;
  gap: 0;
}

.p-profile__info__suppliers__col {
  width: clamp(260px, 18.8541666667vw, 362px);
  flex-shrink: 0;
}

.p-profile__info__suppliers__col + .p-profile__info__suppliers__col {
  margin-left: 0;
  width: calc(100% - clamp(260px, 18.8541666667vw, 362px));
}

.p-profile__info__suppliers__col p {
  margin: 0;
  color: #292929;
}

.p-profile__info__suppliers__col p + p {
  margin-top: clamp(23px, 1.6666666667vw, 32px);
}

.p-profile__info__row.--suppliers dd {
  padding-bottom: clamp(12px, 0.8333333333vw, 16px);
}

.p-profile__scrap-title {
  margin-top: clamp(76px, 5.5208333333vw, 106px);
}

.p-profile__scrap {
  margin-top: clamp(45px, 3.2291666667vw, 62px);
}

.p-profile__scrap .p-profile__info__row dt {
  width: clamp(154px, 11.1458333333vw, 214px);
}
@media (min-width: 750.11px) {
  .p-profile__scrap .p-profile__info__row dt {
    line-height: 1.4;
  }
}

@media (min-width: 750.11px) {
  html[lang=en] .p-profile__info__row dt {
    width: clamp(154px, 11.1458333333vw, 214px);
    padding-right: clamp(16px, 1.1458333333vw, 22px);
    box-sizing: border-box;
  }
  html[lang=en] .p-profile__scrap .p-profile__info__row dt {
    width: clamp(180px, 13.0208333333vw, 250px);
  }
  html[lang=en] .p-profile__info__suppliers {
    gap: clamp(30px, 2.1875vw, 42px);
  }
  html[lang=en] .p-profile__info__suppliers__col + .p-profile__info__suppliers__col {
    width: auto;
    flex: 1;
    min-width: 0;
  }
}
html[lang=en] .p-profile__history__timeline__year:has(.p-profile__history__timeline__tag) {
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(7px, 0.5208333333vw, 10px);
}

html[lang=en] .p-profile__history__timeline__year:has(.p-profile__history__timeline__tag) .p-profile__history__timeline__tag {
  order: -1;
}

html[lang=en] .p-profile__history__timeline__tag {
  width: auto;
  height: auto;
  min-height: clamp(35px, 2.5vw, 48px);
  padding: 0 clamp(10px, 0.7291666667vw, 14px);
  white-space: nowrap;
}

@media (max-width: 750px) {
  .p-profile .c-panel {
    padding-top: clamp(50px, 13.3333333333vw, 100px);
    padding-bottom: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-profile__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-profile__info-title {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-profile__info-title::before {
    width: clamp(7px, 1.8666666667vw, 14px);
    height: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-profile__info {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-profile__info__row dt {
    width: clamp(85px, 22.6666666667vw, 170px);
    padding: clamp(14px, 3.7333333333vw, 28px) 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-profile__info__row dd {
    padding: clamp(14px, 3.7333333333vw, 28px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-profile__info__officers {
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-profile__info__officers > li {
    grid-template-columns: 7em 1fr;
    column-gap: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-profile__info__officers > li + li {
    margin-top: clamp(6px, 1.6vw, 12px);
  }
  .p-profile__info__officers__role {
    grid-column: 2;
  }
  .p-profile__info__place {
    margin-top: clamp(18px, 4.8vw, 36px);
  }
  .p-profile__info__place a {
    white-space: nowrap;
  }
  .p-profile__info__qr {
    width: clamp(80px, 21.3333333333vw, 160px);
    height: clamp(80px, 21.3333333333vw, 160px);
    margin-top: clamp(12px, 3.2vw, 24px);
  }
  .p-profile__info__suppliers {
    display: block;
  }
  .p-profile__info__suppliers__col,
  .p-profile__info__suppliers__col + .p-profile__info__suppliers__col {
    width: auto;
  }
  .p-profile__info__suppliers__col + .p-profile__info__suppliers__col,
  .p-profile__info__suppliers__col p + p {
    margin-top: clamp(18px, 4.8vw, 36px);
  }
  .p-profile__info__row.--suppliers dd {
    padding-bottom: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-profile__scrap-title {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-profile__scrap {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-profile__scrap .p-profile__info__row dt {
    width: clamp(150px, 40vw, 300px);
  }
  html[lang=en] .p-profile__info__row dt {
    width: clamp(115px, 22.6666666667vw, 170px);
    padding-right: clamp(10px, 2.6666666667vw, 20px);
    box-sizing: border-box;
  }
}
.p-profile__history {
  box-sizing: border-box;
  padding: clamp(114px, 8.2291666667vw, 158px) 0 clamp(58px, 4.1666666667vw, 80px);
  background-color: #ecf5ff;
}

.p-profile__history__head {
  text-align: center;
}

.p-profile__history__title {
  margin: 0;
  font-size: inherit;
  line-height: 1;
}

.p-profile__history__title .ja {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
}

.p-profile__history__title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-profile__history__title .en {
  display: block;
  margin-top: clamp(8px, 0.5729166667vw, 11px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.p-profile__history__head > p {
  width: clamp(592px, 53.8020833333vw, 1033px);
  margin: clamp(29px, 2.0833333333vw, 40px) auto 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
  text-align: center;
}

.p-profile__history__main {
  display: grid;
  grid-template-columns: clamp(387px, 35.15625vw, 675px) minmax(0, 1fr);
  row-gap: clamp(29px, 2.0833333333vw, 40px);
  align-items: start;
  margin-top: clamp(83px, 6.0416666667vw, 116px);
  padding-right: clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.p-profile__history__phase {
  position: relative;
  width: 100%;
  min-height: clamp(389px, 28.1770833333vw, 541px);
  height: auto;
  box-sizing: border-box;
  border-radius: 0 clamp(7px, 0.5208333333vw, 10px) clamp(7px, 0.5208333333vw, 10px) 0;
}

.p-profile__history__phase.--01 {
  grid-column: 1;
  grid-row: 1;
}

.p-profile__history__phase.--02 {
  grid-column: 1;
  grid-row: 2;
}

.p-profile__history__phase.--03 {
  grid-column: 1;
  grid-row: 3;
}

.p-profile__history__phase.--03 .p-profile__history__phase__body h3 {
  font-size: clamp(24px, 2.0833333333vw, 40px);
}

.p-profile__history__phase img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0 clamp(7px, 0.5208333333vw, 10px) clamp(7px, 0.5208333333vw, 10px) 0;
}

.p-profile__history__phase::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0 clamp(7px, 0.5208333333vw, 10px) clamp(7px, 0.5208333333vw, 10px) 0;
}

.p-profile__history__phase.--01::after,
.p-profile__history__phase.--03::after {
  background-color: rgba(8, 92, 172, 0.84);
}

.p-profile__history__phase.--02::after {
  background-color: rgba(48, 65, 80, 0.84);
}

.p-profile__history__phase__body {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: clamp(334px, 24.21875vw, 465px);
  max-width: calc(100% - clamp(86px, 6.25vw, 120px));
  min-width: 0;
  margin-left: clamp(86px, 6.25vw, 120px);
  padding-top: clamp(90px, 6.5104166667vw, 125px);
  padding-right: clamp(16px, 1.1458333333vw, 22px);
  padding-bottom: clamp(40px, 2.9166666667vw, 56px);
  color: #ffffff;
}

.p-profile__history__phase__label {
  margin: 0;
  font-family: "Roboto", sans-serif;
  font-size: clamp(27px, 1.9791666667vw, 38px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-profile__history__phase__body h3 {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  width: fit-content;
  max-width: 100%;
  min-width: min(clamp(268px, 19.4270833333vw, 373px), 100%);
  height: auto;
  min-height: clamp(58px, 4.21875vw, 81px);
  margin: clamp(19px, 1.40625vw, 27px) 0 0;
  padding: clamp(10px, 0.7291666667vw, 14px) clamp(19px, 1.40625vw, 27px);
  border-radius: clamp(4px, 0.2604166667vw, 5px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(29px, 2.0833333333vw, 40px);
  text-align: left;
}

.p-profile__history__phase.--02 .p-profile__history__phase__body h3 {
  min-width: min(clamp(213px, 15.4166666667vw, 296px), 100%);
}

.p-profile__history__phase__catch {
  margin: clamp(29px, 2.0833333333vw, 40px) 0 0;
  color: #ffffff;
  font-size: clamp(20px, 1.4583333333vw, 28px);
  font-weight: 700;
}

.p-profile__history__phase__body > p:not(.p-profile__history__phase__label):not(.p-profile__history__phase__catch) {
  margin: clamp(7px, 0.5208333333vw, 10px) 0 0;
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 2.3;
  min-width: 0;
  overflow-wrap: anywhere;
}

.p-profile__history__timeline {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 0 0 0 clamp(165px, 11.9791666667vw, 230px);
  list-style: none;
  box-sizing: border-box;
}

.p-profile__history__timeline.--early {
  grid-column: 2;
  grid-row: 1;
}

.p-profile__history__timeline.--late {
  grid-column: 2;
  grid-row: 2;
}

.p-profile__history__timeline.--global {
  grid-column: 2;
  grid-row: 3;
}

.p-profile__history__timeline::before {
  content: "";
  position: absolute;
  left: clamp(114px, 8.2291666667vw, 158px);
  width: 0;
  border-left: 1px dotted #085cac;
  background-color: transparent;
}

.p-profile__history__timeline.--early::before {
  top: clamp(14px, 1.0416666667vw, 20px);
  bottom: calc(-1 * clamp(29px, 2.0833333333vw, 40px));
}

.p-profile__history__timeline.--late::before {
  top: calc(-1 * clamp(29px, 2.0833333333vw, 40px));
  bottom: calc(-1 * clamp(29px, 2.0833333333vw, 40px));
}

.p-profile__history__timeline.--global::before {
  top: calc(-1 * clamp(29px, 2.0833333333vw, 40px));
  bottom: calc(-1 * clamp(58px, 4.1666666667vw, 80px));
}

.p-profile__history__timeline > li {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: clamp(43px, 3.125vw, 60px);
  margin-top: clamp(29px, 2.0833333333vw, 40px);
  min-width: 0;
}

.p-profile__history__timeline > li:first-child {
  margin-top: 0;
}

.p-profile__history__timeline > li::before {
  content: "";
  position: absolute;
  top: -2px;
  left: calc(-1 * clamp(75px, 5.46875vw, 105px));
  width: clamp(47px, 3.4375vw, 66px);
  height: clamp(47px, 3.4375vw, 66px);
  border-radius: 50%;
  background-color: rgba(8, 92, 172, 0.24);
}

.p-profile__history__timeline > li::after {
  content: "";
  position: absolute;
  top: clamp(14px, 0.9895833333vw, 19px);
  left: calc(-1 * clamp(60px, 4.375vw, 84px));
  width: clamp(17px, 1.25vw, 24px);
  height: clamp(17px, 1.25vw, 24px);
  border-radius: 50%;
  background-color: #085cac;
}

.p-profile__history__timeline__content {
  flex: 1;
  min-width: 0;
}

.p-profile__history__timeline > li:has(.p-profile__history__timeline__visual) .p-profile__history__timeline__content {
  flex: 0 1 clamp(216px, 15.625vw, 300px);
  width: clamp(216px, 15.625vw, 300px);
  max-width: 100%;
  min-width: 0;
}

.p-profile__history__timeline__year {
  display: flex;
  align-items: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
  margin: 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(45px, 3.2291666667vw, 62px);
  font-weight: 700;
  line-height: 1;
}

.p-profile__history__timeline__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: clamp(63px, 4.53125vw, 87px);
  height: clamp(35px, 2.5vw, 48px);
  border: 1px solid #085cac;
  border-radius: clamp(2px, 0.15625vw, 3px);
  background-color: #ffffff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(17px, 1.25vw, 24px);
  font-weight: 700;
}

.p-profile__history__timeline__content > p:not(.p-profile__history__timeline__year) {
  margin: clamp(20px, 1.4583333333vw, 28px) 0 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
}

.p-profile__history__timeline__visual {
  flex: 0 1 clamp(239px, 17.2916666667vw, 332px);
  width: clamp(239px, 17.2916666667vw, 332px);
  max-width: 100%;
  min-width: 0;
  height: clamp(151px, 10.9375vw, 210px);
  margin-top: 0;
}

.p-profile__history__timeline__visual.--1972 {
  height: auto;
}

.p-profile__history__timeline__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
}

.p-profile__history__timeline__visual.--1972 img {
  height: auto;
}

.p-profile__history__timeline__visual.--2001 img {
  object-position: center bottom;
}

@media (max-width: 750px) {
  .p-profile__history {
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(60px, 16vw, 120px);
  }
  .p-profile__history__title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-profile__history__title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-profile__history__title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-profile__history__head > p {
    width: auto;
    margin: clamp(25px, 6.6666666667vw, 50px) clamp(20px, 5.3333333333vw, 40px) 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-profile__history__main {
    display: block;
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    padding-right: 0;
  }
  .p-profile__history__phase {
    width: calc(100% - clamp(20px, 5.3333333333vw, 40px));
    height: auto;
    padding: clamp(40px, 10.6666666667vw, 80px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: 0 clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0;
  }
  .p-profile__history__phase img,
  .p-profile__history__phase::after {
    border-radius: 0 clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0;
  }
  .p-profile__history__phase.--02,
  .p-profile__history__phase.--03 {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-profile__history__phase__body {
    width: auto;
    margin-left: 0;
    padding-top: 0;
  }
  html[lang=en] .p-profile__history__phase__body {
    max-width: 100%;
  }
  .p-profile__history__phase__label {
    font-size: clamp(24px, 6.4vw, 48px);
  }
  .p-profile__history__phase__body h3,
  .p-profile__history__phase.--02 .p-profile__history__phase__body h3,
  .p-profile__history__phase.--03 .p-profile__history__phase__body h3 {
    min-width: 0;
    height: clamp(48px, 12.8vw, 96px);
    margin-top: clamp(15px, 4vw, 30px);
    padding: 0 clamp(16px, 4.2666666667vw, 32px);
    border-radius: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(22px, 5.8666666667vw, 44px);
    white-space: nowrap;
  }
  html[lang=en] .p-profile__history__phase__body h3,
  html[lang=en] .p-profile__history__phase.--02 .p-profile__history__phase__body h3,
  html[lang=en] .p-profile__history__phase.--03 .p-profile__history__phase__body h3 {
    display: block;
    width: auto;
    min-width: 0;
    height: auto;
    min-height: clamp(48px, 12.8vw, 96px);
    padding-top: clamp(8px, 2.1333333333vw, 16px);
    padding-bottom: clamp(8px, 2.1333333333vw, 16px);
    white-space: normal;
    line-height: 1.3;
    max-width: 100%;
  }
  .p-profile__history__phase__catch {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-profile__history__phase__body > p:not(.p-profile__history__phase__label):not(.p-profile__history__phase__catch) {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-profile__history__phase__body br {
    display: none;
  }
  .p-profile__history__timeline {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    padding: 0 clamp(20px, 5.3333333333vw, 40px) 0 clamp(70px, 18.6666666667vw, 140px);
  }
  .p-profile__history__timeline::before {
    left: clamp(38px, 10.1333333333vw, 76px);
  }
  .p-profile__history__timeline.--early::before {
    top: clamp(18px, 4.8vw, 36px);
  }
  .p-profile__history__timeline.--late::before {
    bottom: 0;
  }
  .p-profile__history__timeline.--global::before {
    top: clamp(18px, 4.8vw, 36px);
    bottom: calc(clamp(60px, 16vw, 120px) * -1);
  }
  .p-profile__history__timeline > li {
    display: block;
    margin-top: clamp(35px, 9.3333333333vw, 70px);
  }
  .p-profile__history__timeline > li::before {
    top: calc(clamp(2px, 0.5333333333vw, 4px) * -1);
    left: calc(clamp(52px, 13.8666666667vw, 104px) * -1);
    width: clamp(40px, 10.6666666667vw, 80px);
    height: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-profile__history__timeline > li::after {
    top: clamp(11px, 2.9333333333vw, 22px);
    left: calc(clamp(39px, 10.4vw, 78px) * -1);
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-profile__history__timeline > li:has(.p-profile__history__timeline__visual) .p-profile__history__timeline__content {
    width: auto;
  }
  .p-profile__history__timeline__year {
    gap: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(36px, 9.6vw, 72px);
  }
  .p-profile__history__timeline__tag {
    width: clamp(52px, 13.8666666667vw, 104px);
    height: clamp(28px, 7.4666666667vw, 56px);
    border-radius: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-profile__history__timeline__content > p:not(.p-profile__history__timeline__year) {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-profile__history__timeline__visual {
    width: 100%;
    height: auto;
    margin-top: clamp(15px, 4vw, 30px);
    aspect-ratio: 332/210;
  }
  .p-profile__history__timeline__visual.--1972 {
    aspect-ratio: auto;
  }
  .p-profile__history__timeline__visual img {
    border-radius: clamp(7px, 1.8666666667vw, 14px);
  }
}
.p-news .c-panel {
  padding: clamp(75px, 5.4166666667vw, 104px) 0 clamp(13px, 0.9375vw, 18px);
}

.p-news__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(47px, 3.3854166667vw, 65px);
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-news__side {
  flex-shrink: 0;
  width: clamp(144px, 10.4166666667vw, 200px);
}

.p-news__nav + .p-news__nav {
  margin-top: clamp(44px, 3.1770833333vw, 61px);
}

.p-news__nav__head {
  position: relative;
  margin-bottom: clamp(22px, 1.5625vw, 30px);
}

.p-news__nav__head .en {
  margin: 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(29px, 2.0833333333vw, 40px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.p-news__nav__head .ja {
  margin: clamp(9px, 0.625vw, 12px) 0 0;
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news__nav__list {
  margin: clamp(9px, 0.625vw, 12px) 0 0;
  padding: 0;
  list-style: none;
  line-height: 1;
}

.p-news__nav__list li {
  line-height: 1;
}

.p-news__nav__list li + li {
  margin-top: clamp(12px, 0.8854166667vw, 17px);
}

.p-news__nav__list a {
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  opacity: 0.5;
}

.p-news__nav__list a::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: transparent;
  flex-shrink: 0;
}

.p-news__nav__list a.is-active {
  opacity: 1;
}

.p-news__nav__list a.is-active::before {
  background-color: #085cac;
}

.p-news__nav__list.--archive a {
  opacity: 1;
}

.p-news__nav__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(19px, 1.3541666667vw, 26px);
  height: clamp(19px, 1.3541666667vw, 26px);
  margin-left: clamp(6px, 0.4166666667vw, 8px);
  border: 1px solid #085cac;
  border-radius: 50%;
  box-sizing: border-box;
}

.p-news__nav__more img {
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  object-fit: contain;
}

.p-news__main {
  flex: 1;
  min-width: 0;
  width: clamp(816px, 59.1145833333vw, 1135px);
}

.p-news__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-news__list > li + li {
  margin-top: clamp(8px, 0.5729166667vw, 11px);
}

.p-news__item {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  min-height: clamp(65px, 4.7395833333vw, 91px);
  padding: 0 clamp(29px, 2.0833333333vw, 40px) 0 clamp(44px, 3.1770833333vw, 61px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  color: #292929;
  text-decoration: none;
}

.p-news__item__date {
  flex-shrink: 0;
  width: clamp(75px, 5.4166666667vw, 104px);
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-news__item__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: clamp(68px, 4.8958333333vw, 94px);
  height: clamp(27px, 1.9791666667vw, 38px);
  margin-right: clamp(12px, 0.8333333333vw, 16px);
  padding: 0 clamp(10px, 0.7291666667vw, 14px);
  border-radius: 100px;
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.p-news__item__title {
  flex: 1;
  min-width: 0;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1.4;
  transition: color 0.25s;
}

.p-news__item__arrow {
  flex-shrink: 0;
  width: clamp(14px, 1.0416666667vw, 20px);
  height: clamp(14px, 1.0416666667vw, 20px);
  margin-left: clamp(12px, 0.8333333333vw, 16px);
  object-fit: contain;
}

.p-news__item::after {
  content: "";
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: inherit;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.35s cubic-bezier(0.87, 0, 0.13, 1);
}

@media (min-width: 750.11px) {
  .p-news__item:hover {
    opacity: 1;
  }
  .p-news__item:hover::after {
    clip-path: inset(0);
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  }
  .p-news__item:hover .p-news__item__title {
    color: #085cac;
  }
}
.p-news__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: clamp(54px, 3.90625vw, 75px);
}

.p-news__pager__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(29px, 2.0833333333vw, 40px);
  height: clamp(29px, 2.0833333333vw, 40px);
  border-radius: 50%;
  background-color: #085cac;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-news__pager__btn img {
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  object-fit: contain;
}

.p-news__pager__btn.--prev img {
  transform: scaleX(-1);
}

.p-news__pager__btn.is-disabled {
  opacity: 0.3;
}

.p-news__empty {
  margin: 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
}

.p-news__pager__list {
  display: flex;
  align-items: center;
  gap: clamp(19px, 1.40625vw, 27px);
  margin: 0 clamp(14px, 1.0416666667vw, 20px);
  padding: 0;
  list-style: none;
}

.p-news__pager__list a {
  color: #292929;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.p-news__pager__list a.is-current {
  font-weight: 700;
}

@media (max-width: 750px) {
  .p-news .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-news__inner {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(50px, 13.3333333333vw, 100px);
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news__side {
    order: 1;
    display: flex;
    gap: clamp(20px, 5.3333333333vw, 40px);
    width: auto;
  }
  .p-news__nav {
    flex: 1;
    min-width: 0;
  }
  .p-news__nav + .p-news__nav {
    margin-top: 0;
  }
  .p-news__nav__head {
    margin-bottom: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-news__nav__head .en {
    font-size: clamp(30px, 8vw, 60px);
  }
  .p-news__nav__head .ja {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-news__nav__list {
    margin-top: 0;
  }
  .p-news__nav__list li + li {
    margin-top: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news__nav__list a {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-news__nav__list a::before {
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-news__nav__more {
    width: clamp(22px, 5.8666666667vw, 44px);
    height: clamp(22px, 5.8666666667vw, 44px);
    margin-left: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-news__nav__more img {
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-news__main {
    width: auto;
  }
  .p-news__list > li + li {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-news__item {
    flex-wrap: wrap;
    row-gap: clamp(6px, 1.6vw, 12px);
    min-height: clamp(65px, 17.3333333333vw, 130px);
    padding: clamp(15px, 4vw, 30px) clamp(19px, 5.0666666667vw, 38px) clamp(16px, 4.2666666667vw, 32px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news__item__date {
    width: clamp(79px, 21.0666666667vw, 158px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news__item__tag {
    min-width: clamp(78px, 20.8vw, 156px);
    height: clamp(28px, 7.4666666667vw, 56px);
    margin-right: 0;
    padding: 0 clamp(11px, 2.9333333333vw, 22px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news__item__title {
    flex: 0 0 calc(100% - clamp(26px, 6.9333333333vw, 52px));
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news__item__arrow {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
    margin-left: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news__pager {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-news__pager__btn {
    width: clamp(36px, 9.6vw, 72px);
    height: clamp(36px, 9.6vw, 72px);
  }
  .p-news__pager__btn img {
    width: clamp(13px, 3.4666666667vw, 26px);
    height: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-news__empty {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-news__pager__list {
    gap: clamp(20px, 5.3333333333vw, 40px);
    margin: 0 clamp(16px, 4.2666666667vw, 32px);
  }
  .p-news__pager__list a {
    font-size: clamp(15px, 4vw, 30px);
  }
  html:lang(en) .p-news__item__tag,
  html[lang=en] .p-news__item__tag {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
}
@media (min-width: 750.11px) {
  html:lang(en) .p-news__item__tag,
  html[lang=en] .p-news__item__tag {
    margin-left: clamp(10px, 0.7291666667vw, 14px);
    font-size: clamp(11px, 0.78125vw, 15px);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-news__nav__list a:hover,
  .p-news__pager__list a:hover {
    opacity: 0.7;
  }
  .p-news__pager__btn:not(.is-disabled):hover {
    background-color: #292929;
    opacity: 1;
  }
  .p-news__nav__list a.is-active:hover {
    opacity: 0.7;
  }
}
.p-news-detail .c-panel {
  padding: clamp(147px, 10.625vw, 204px) 0 clamp(13px, 0.9375vw, 18px);
}

.p-news-detail__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-news-detail__head {
  padding-bottom: clamp(45px, 3.28125vw, 63px);
  border-bottom: 1px solid #085cac;
}

.p-news-detail__meta {
  display: flex;
  align-items: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
}

.p-news-detail__meta time {
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-news-detail__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(68px, 4.8958333333vw, 94px);
  height: clamp(27px, 1.9791666667vw, 38px);
  padding: 0 clamp(10px, 0.7291666667vw, 14px);
  border-radius: 100px;
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.p-news-detail__title {
  margin: clamp(48px, 3.4895833333vw, 67px) 0 0;
  color: #292929;
  font-size: clamp(35px, 2.5520833333vw, 49px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__body {
  margin-top: clamp(45px, 3.28125vw, 63px);
  font-weight: 700;
}

.p-news-detail__body > p {
  margin: clamp(25px, 1.8229166667vw, 35px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__h3 {
  margin-top: clamp(40px, 2.8645833333vw, 55px);
}

.p-news-detail__body > .p-news-detail__h3:first-child {
  margin-top: 0;
}

.p-news-detail__h3 .en {
  position: relative;
  margin: 0;
  padding-left: clamp(13px, 0.9375vw, 18px);
  color: #292929;
  font-family: "Roboto", sans-serif;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.p-news-detail__h3 .en::before {
  content: "";
  position: absolute;
  top: clamp(2px, 0.1041666667vw, 2px);
  left: 0;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
}

.p-news-detail__h3 h3 {
  margin: clamp(6px, 0.4166666667vw, 8px) 0 0;
  color: #085cac;
  font-size: clamp(29px, 2.0833333333vw, 40px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__h4 {
  display: flex;
  align-items: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
  margin-top: clamp(27px, 1.9791666667vw, 38px);
}

.p-news-detail__h4::before {
  content: "";
  display: block;
  width: 6px;
  height: clamp(24px, 1.7708333333vw, 34px);
  background-color: #085cac;
  flex-shrink: 0;
}

.p-news-detail__h4 h4 {
  margin: 0;
  color: #085cac;
  font-size: clamp(22px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__body > h5 {
  margin: clamp(25px, 1.8229166667vw, 35px) 0 0;
  color: #292929;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__h3:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)),
.p-news-detail__h4:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)),
.p-news-detail__body > h5:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)) {
  padding-bottom: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__u {
  text-decoration: underline;
}

.p-news-detail__color {
  color: #ff2626;
  font-weight: 700;
}

.p-news-detail__ext,
.p-news-detail__pdf {
  display: inline-flex;
  align-items: center;
  gap: clamp(4px, 0.3125vw, 6px);
  color: #292929;
  text-decoration: underline;
}

.p-news-detail__ext img,
.p-news-detail__pdf img {
  width: clamp(12px, 0.8854166667vw, 17px);
  height: clamp(12px, 0.8854166667vw, 17px);
  object-fit: contain;
  flex-shrink: 0;
}

.p-news-detail__pdf img {
  width: clamp(14px, 0.9895833333vw, 19px);
  height: clamp(14px, 0.9895833333vw, 19px);
}

.p-news-detail__block {
  margin-top: clamp(58px, 4.1666666667vw, 80px);
}

.p-news-detail__block.--bg {
  padding: clamp(32px, 2.34375vw, 45px) clamp(48px, 3.4895833333vw, 67px) clamp(43px, 3.125vw, 60px);
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  background-color: #ecf5ff;
  box-sizing: border-box;
}

.p-news-detail__h3 + .p-news-detail__block,
.p-news-detail__h4 + .p-news-detail__block,
.p-news-detail__body > h5 + .p-news-detail__block,
.p-news-detail__h3 + .p-news-detail__links,
.p-news-detail__h4 + .p-news-detail__links,
.p-news-detail__body > h5 + .p-news-detail__links {
  margin-top: clamp(40px, 2.8645833333vw, 55px);
}

.p-news-detail__block.--bg.--text-only {
  padding-bottom: clamp(32px, 2.34375vw, 45px);
}

.p-news-detail__block.--bg > p {
  margin: 0;
  color: #000000;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__block__label {
  display: flex;
  align-items: center;
  gap: clamp(14px, 1.0416666667vw, 20px);
  margin-bottom: clamp(29px, 2.0833333333vw, 40px);
}

.p-news-detail__block.--bg .p-news-detail__block__label {
  margin-bottom: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__block__label .num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(50px, 3.59375vw, 69px);
  height: clamp(50px, 3.59375vw, 69px);
  border: 1px solid #085cac;
  border-radius: 50%;
  background-color: #ecf5ff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(19px, 1.3541666667vw, 26px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  box-sizing: border-box;
  flex-shrink: 0;
}

.p-news-detail__block.--bg .p-news-detail__block__label .num {
  background-color: #ffffff;
}

.p-news-detail__block__label .ja {
  color: #292929;
  font-size: clamp(25px, 1.8229166667vw, 35px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__list-block__ttl {
  margin: 0 0 clamp(14px, 1.0416666667vw, 20px);
  color: #292929;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__list {
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 2px solid #085cac;
  border-bottom: 2px solid #085cac;
}

.p-news-detail__list li {
  position: relative;
  padding: clamp(22px, 1.5625vw, 30px) 0 clamp(22px, 1.5625vw, 30px) clamp(14px, 1.0416666667vw, 20px);
  border-bottom: 1px solid rgba(8, 92, 172, 0.25);
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.2;
  box-sizing: border-box;
}

.p-news-detail__list li:last-child {
  border-bottom: none;
}

.p-news-detail__list li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  margin-top: clamp(-4px, -0.2604166667vw, -5px);
  border-radius: 50%;
  background-color: #085cac;
}

.p-news-detail__table-wrap {
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  overflow-x: auto;
}

.p-news-detail__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #292929;
  text-align: center;
}

.p-news-detail__table th,
.p-news-detail__table td {
  padding: clamp(16px, 1.1458333333vw, 22px) clamp(7px, 0.5208333333vw, 10px);
  border-bottom: 1px solid #d1d6dd;
  vertical-align: middle;
  box-sizing: border-box;
  line-height: 1.2;
}

.p-news-detail__table thead th {
  padding-top: clamp(18px, 1.3020833333vw, 25px);
  padding-bottom: clamp(18px, 1.3020833333vw, 25px);
  border-bottom: 1px solid #d1d6dd;
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  background-color: #ecf5ff;
}

.p-news-detail__table thead th:first-child {
  width: 24%;
  color: #ffffff;
  background-color: #085cac;
  border-bottom-color: rgba(255, 255, 255, 0.25);
  border-radius: clamp(7px, 0.5208333333vw, 10px) 0 0 0;
}

.p-news-detail__table tbody th {
  width: 24%;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  background-color: #085cac;
  border-bottom-color: rgba(255, 255, 255, 0.25);
}

/* 青背景の th 内リンクは白（本文リンクの #292929 を上書き） */
.p-news-detail__table thead th:first-child a,
.p-news-detail__table tbody th a {
  color: #ffffff;
}

.p-news-detail__table tbody tr:last-child th {
  border-radius: 0 0 0 clamp(7px, 0.5208333333vw, 10px);
  border-bottom: none;
}

.p-news-detail__table tbody tr:last-child td {
  border-bottom: none;
}

.p-news-detail__table tbody td {
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  background-color: #ecf5ff;
}

.p-news-detail__table tr > :nth-child(2) {
  border-right: 1px solid #d1d6dd;
}

.p-news-detail__col1 img {
  display: block;
  width: 70%;
  height: auto;
  aspect-ratio: 979/622;
  object-fit: cover;
  margin-left: auto;
  margin-right: auto;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
}

.p-news-detail__col1 > p {
  margin: clamp(14px, 1.0416666667vw, 20px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__cols2 {
  display: flex;
  gap: clamp(58px, 4.21875vw, 81px);
}

.p-news-detail__cols2__item {
  flex: 1;
  min-width: 0;
}

.p-news-detail__cols2__ttl {
  margin: 0 0 clamp(14px, 1.0416666667vw, 20px);
  color: #292929;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.2;
}

.p-news-detail__cols2__item img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 658/418;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
}

.p-news-detail__cols2__item > p:not(.p-news-detail__cols2__ttl) {
  margin: clamp(14px, 1.0416666667vw, 20px) 0 clamp(14px, 1.0416666667vw, 20px);
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__pics2 {
  display: flex;
  gap: clamp(13px, 0.9375vw, 18px);
}

.p-news-detail__pics2 img {
  display: block;
  flex: 1;
  min-width: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 691/439;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
}

.p-news-detail__media {
  display: flex;
  align-items: flex-start;
  gap: clamp(29px, 2.0833333333vw, 40px);
}

.p-news-detail__media img {
  display: block;
  width: clamp(473px, 34.2708333333vw, 658px);
  height: auto;
  aspect-ratio: 658/418;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  flex-shrink: 0;
}

.p-news-detail__block.--bg .p-news-detail__media img {
  width: clamp(430px, 31.1458333333vw, 598px);
  aspect-ratio: 598/380;
}

.p-news-detail__media > p {
  flex: 1;
  min-width: 0;
  margin: clamp(27px, 1.9791666667vw, 38px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

.p-news-detail__block.--bg .p-news-detail__media > p {
  margin-top: 0;
  color: #000000;
}

.p-news-detail__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(22px, 1.5625vw, 30px);
  margin-top: clamp(58px, 4.1666666667vw, 80px);
}

.p-news-detail__body > .p-news-detail__links:first-child {
  margin-top: 0;
}

.p-news-detail__link-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
  width: clamp(186px, 13.4895833333vw, 259px);
  min-height: clamp(58px, 4.21875vw, 81px);
  height: auto;
  padding: clamp(12px, 0.8333333333vw, 16px) clamp(18px, 1.4583333333vw, 28px);
  border-radius: 100px;
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-news-detail__link-btn span {
  min-width: 0;
  text-align: center;
}

.p-news-detail__link-btn img {
  width: clamp(14px, 1.0416666667vw, 20px);
  height: clamp(14px, 1.0416666667vw, 20px);
  object-fit: contain;
  flex-shrink: 0;
}

.p-news-detail__back {
  display: flex;
  justify-content: center;
  margin-top: clamp(72px, 5.2083333333vw, 100px);
}

.p-news-detail__back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.5208333333vw, 10px);
  width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  border-radius: 100px;
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-news-detail__back-btn img {
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  object-fit: contain;
}

@media (max-width: 750px) {
  .p-news-detail .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-news-detail__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news-detail__head {
    padding-bottom: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__meta {
    gap: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__meta time {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__tag {
    min-width: clamp(78px, 20.8vw, 156px);
    height: clamp(28px, 7.4666666667vw, 56px);
    padding: 0 clamp(11px, 2.9333333333vw, 22px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__title {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: 1.4;
  }
  .p-news-detail__body {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-news-detail__body > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__h3 {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-news-detail__body > .p-news-detail__h3:first-child {
    margin-top: 0;
  }
  .p-news-detail__h3 .en {
    padding-left: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__h3 .en::before {
    top: clamp(3px, 0.8vw, 6px);
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-news-detail__h3 h3 {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(24px, 6.4vw, 48px);
    line-height: 1.4;
  }
  .p-news-detail__h4 {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__h4::before {
    width: clamp(5px, 1.3333333333vw, 10px);
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-news-detail__h4 h4 {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: 1.4;
  }
  .p-news-detail__body > h5 {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
    line-height: 1.4;
  }
  .p-news-detail__h3:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)),
  .p-news-detail__h4:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)),
  .p-news-detail__body > h5:not(:has(+ .p-news-detail__h3, + .p-news-detail__h4, + h5, + .p-news-detail__block, + .p-news-detail__links)) {
    padding-bottom: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news-detail__ext,
  .p-news-detail__pdf {
    gap: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-news-detail__ext img {
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__pdf img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-news-detail__block {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-news-detail__block.--bg {
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(20px, 5.3333333333vw, 40px) clamp(30px, 8vw, 60px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__h3 + .p-news-detail__block,
  .p-news-detail__h4 + .p-news-detail__block,
  .p-news-detail__body > h5 + .p-news-detail__block,
  .p-news-detail__h3 + .p-news-detail__links,
  .p-news-detail__h4 + .p-news-detail__links,
  .p-news-detail__body > h5 + .p-news-detail__links {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-news-detail__block.--bg.--text-only {
    padding-bottom: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__block.--bg > p {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__block__label {
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-bottom: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news-detail__block.--bg .p-news-detail__block__label {
    margin-bottom: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-news-detail__block__label .num {
    width: clamp(50px, 13.3333333333vw, 100px);
    height: clamp(50px, 13.3333333333vw, 100px);
    font-size: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-news-detail__block__label .ja {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: 1.4;
  }
  .p-news-detail__list-block__ttl {
    margin-bottom: clamp(12px, 3.2vw, 24px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
    line-height: 1.4;
  }
  .p-news-detail__list {
    border-top-width: clamp(2px, 0.5333333333vw, 4px);
    border-bottom-width: clamp(2px, 0.5333333333vw, 4px);
  }
  .p-news-detail__list li {
    padding: clamp(16px, 4.2666666667vw, 32px) 0 clamp(16px, 4.2666666667vw, 32px) clamp(16px, 4.2666666667vw, 32px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.5;
  }
  .p-news-detail__list li::before {
    top: clamp(23px, 6.1333333333vw, 46px);
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
    margin-top: 0;
  }
  .p-news-detail__table-wrap {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    overflow-x: auto;
  }
  .p-news-detail__table {
    width: clamp(840px, 224vw, 1680px);
  }
  .p-news-detail__table th,
  .p-news-detail__table td {
    padding: clamp(14px, 3.7333333333vw, 28px) clamp(6px, 1.6vw, 12px);
  }
  .p-news-detail__table thead th {
    padding-top: clamp(14px, 3.7333333333vw, 28px);
    padding-bottom: clamp(14px, 3.7333333333vw, 28px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__table thead th:first-child {
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 0 0;
  }
  .p-news-detail__table tbody th {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__table tbody tr:last-child th {
    border-radius: 0 0 0 clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__table tbody td {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-news-detail__col1 img {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__col1 > p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__cols2 {
    flex-direction: column;
    gap: clamp(30px, 8vw, 60px);
  }
  .p-news-detail__cols2__ttl {
    margin-bottom: clamp(12px, 3.2vw, 24px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
    line-height: 1.4;
  }
  .p-news-detail__cols2__item img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__cols2__item > p:not(.p-news-detail__cols2__ttl) {
    margin: clamp(12px, 3.2vw, 24px) 0 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__pics2 {
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-news-detail__pics2 img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__media {
    flex-direction: column;
    gap: clamp(15px, 4vw, 30px);
  }
  .p-news-detail__media.--img-right {
    flex-direction: column-reverse;
  }
  .p-news-detail__media img,
  .p-news-detail__block.--bg .p-news-detail__media img {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-news-detail__media > p {
    margin-top: 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-news-detail__links {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    gap: clamp(15px, 4vw, 30px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-news-detail__link-btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    min-height: clamp(71px, 18.9333333333vw, 142px);
    padding: clamp(14px, 3.7333333333vw, 28px) clamp(24px, 6.4vw, 48px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-news-detail__link-btn img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-news-detail__back {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-news-detail__back-btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-news-detail__back-btn img {
    width: clamp(15px, 4vw, 30px);
    height: clamp(15px, 4vw, 30px);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-news-detail__ext:hover,
  .p-news-detail__pdf:hover {
    opacity: 0.7;
  }
  .p-news-detail__link-btn:hover,
  .p-news-detail__back-btn:hover {
    background-color: #292929;
    opacity: 1;
  }
}
.p-blog .c-panel {
  padding: clamp(102px, 7.3958333333vw, 142px) 0 clamp(29px, 2.1354166667vw, 41px);
}

.p-blog__inner {
  width: clamp(902px, 81.9791666667vw, 1574px);
  max-width: calc(100% - 80px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-blog__lead {
  margin: 0;
  color: #292929;
  font-size: clamp(23px, 1.6666666667vw, 32px);
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
}

.p-blog__lead__em {
  color: #085cac;
  font-weight: 700;
}

.p-blog__filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(8px, 0.5729166667vw, 11px);
  margin-top: clamp(59px, 4.2708333333vw, 82px);
  padding: 0;
  list-style: none;
}

.p-blog__filters a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: clamp(115px, 8.3333333333vw, 160px);
  height: clamp(36px, 2.6041666667vw, 50px);
  border: 1px solid #085cac;
  border-radius: clamp(19px, 1.40625vw, 27px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.p-blog__filters a.is-active {
  background-color: #292929;
  color: #ffffff;
}

.p-blog__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(63px, 4.53125vw, 87px) clamp(26px, 1.875vw, 36px);
  margin: clamp(79px, 5.7291666667vw, 110px) 0 0;
  padding: 0;
  list-style: none;
}

.p-blog__card {
  display: block;
  color: inherit;
  text-decoration: none;
}

.p-blog__card img {
  width: 100%;
  height: auto;
  aspect-ratio: 500/316;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  vertical-align: top;
}

.p-blog__card__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(7px, 0.5208333333vw, 10px);
  margin-top: clamp(14px, 0.9895833333vw, 19px);
}

.p-blog__card__date {
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-blog__card__cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 clamp(11px, 0.78125vw, 15px);
  min-height: clamp(27px, 1.9791666667vw, 38px);
  border: 1px solid #085cac;
  border-radius: clamp(19px, 1.40625vw, 27px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1;
  box-sizing: border-box;
}

.p-blog__card__ttl {
  display: block;
  margin-top: clamp(7px, 0.5208333333vw, 10px);
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.5;
}

.p-blog__card__excerpt {
  display: block;
  margin-top: clamp(7px, 0.5208333333vw, 10px);
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.8;
}

.p-blog__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: clamp(61px, 4.4270833333vw, 85px);
}

.p-blog__pager__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(29px, 2.0833333333vw, 40px);
  height: clamp(29px, 2.0833333333vw, 40px);
  border-radius: 50%;
  background-color: #085cac;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-blog__pager__btn img {
  width: clamp(11px, 0.78125vw, 15px);
  height: clamp(11px, 0.78125vw, 15px);
  object-fit: contain;
}

.p-blog__pager__btn.--prev img {
  transform: scaleX(-1);
}

.p-blog__pager__btn.is-disabled {
  opacity: 0.3;
}

.p-blog__empty {
  margin: clamp(79px, 5.7291666667vw, 110px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  text-align: center;
}

.p-blog__pager__list {
  display: flex;
  align-items: center;
  gap: clamp(19px, 1.40625vw, 27px);
  margin: 0 clamp(14px, 1.0416666667vw, 20px);
  padding: 0;
  list-style: none;
}

.p-blog__pager__list a {
  color: #292929;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.p-blog__pager__list a.is-current {
  font-weight: 700;
}

@media (max-width: 750px) {
  .p-blog .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-blog__inner {
    width: auto;
    max-width: none;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-blog__lead {
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-blog__filters {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-blog__filters a {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(36px, 9.6vw, 72px);
    border-radius: clamp(18px, 4.8vw, 36px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html:lang(en) .p-blog__filters,
  html[lang=en] .p-blog__filters,
  html:has(.l-header__en[data-stt-changelang=en][data-stt-active]) .p-blog__filters,
  html:has(.l-header__btn.--en[data-stt-changelang=en][data-stt-active]) .p-blog__filters {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    justify-items: center;
  }
  html:lang(en) .p-blog__filters a,
  html:lang(en) .p-blog__filters a * {
    font-size: clamp(9px, 2.4vw, 18px) !important;
  }
  html[lang=en] .p-blog__filters a,
  html[lang=en] .p-blog__filters a * {
    font-size: clamp(9px, 2.4vw, 18px) !important;
  }
  html:has(.l-header__en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a,
  html:has(.l-header__en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a * {
    font-size: clamp(9px, 2.4vw, 18px) !important;
  }
  html:has(.l-header__btn.--en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a,
  html:has(.l-header__btn.--en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a * {
    font-size: clamp(9px, 2.4vw, 18px) !important;
  }
  html:lang(en) .p-blog__filters a {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(4px, 1.0666666667vw, 8px);
    line-height: 1;
    text-align: center;
  }
  html[lang=en] .p-blog__filters a {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(4px, 1.0666666667vw, 8px);
    line-height: 1;
    text-align: center;
  }
  html:has(.l-header__en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(4px, 1.0666666667vw, 8px);
    line-height: 1;
    text-align: center;
  }
  html:has(.l-header__btn.--en[data-stt-changelang=en][data-stt-active]) .p-blog__filters a {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(4px, 1.0666666667vw, 8px);
    line-height: 1;
    text-align: center;
  }
  .p-blog__list {
    grid-template-columns: 1fr;
    gap: clamp(40px, 10.6666666667vw, 80px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-blog__card img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-blog__card__meta {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-blog__card__date {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-blog__card__cat {
    height: clamp(25px, 6.6666666667vw, 50px);
    min-height: 0;
    padding: 0 clamp(12px, 3.2vw, 24px);
    border-radius: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-blog__card__ttl {
    margin-top: clamp(9px, 2.4vw, 18px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-blog__card__excerpt {
    margin-top: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(23px, 6.1333333333vw, 46px);
  }
  .p-blog__pager {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-blog__empty {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-blog__pager__btn {
    width: clamp(36px, 9.6vw, 72px);
    height: clamp(36px, 9.6vw, 72px);
  }
  .p-blog__pager__btn img {
    width: clamp(13px, 3.4666666667vw, 26px);
    height: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-blog__pager__list {
    gap: clamp(20px, 5.3333333333vw, 40px);
    margin: 0 clamp(16px, 4.2666666667vw, 32px);
  }
  .p-blog__pager__list a {
    font-size: clamp(15px, 4vw, 30px);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-blog__filters a:hover,
  .p-blog__card:hover,
  .p-blog__pager__list a:hover {
    opacity: 0.7;
  }
  .p-blog__pager__btn:not(.is-disabled):hover {
    background-color: #292929;
    opacity: 1;
  }
}
.p-faq .c-panel {
  padding: clamp(95px, 6.875vw, 132px) 0 clamp(14px, 1.0416666667vw, 20px);
}

.p-faq__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-faq__list {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 1.71875vw, 33px);
}

.p-faq__item {
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: transparent;
  transition: background-color 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.p-faq__item[open],
.p-faq__item.is-closing {
  background-color: #ecf5ff;
}

.p-faq__q {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(24px, 1.71875vw, 33px);
  min-height: clamp(78px, 5.6770833333vw, 109px);
  padding: clamp(17px, 1.25vw, 24px) clamp(38px, 2.7604166667vw, 53px);
  box-sizing: border-box;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background: linear-gradient(94.49deg, #085cac 0%, #042e56 100%);
  color: #ffffff;
  cursor: pointer;
  list-style: none;
}

.p-faq__q::-webkit-details-marker {
  display: none;
}

.p-faq__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(43px, 3.125vw, 60px);
  height: clamp(43px, 3.125vw, 60px);
  border-radius: 50%;
  border: clamp(1px, 0.1041666667vw, 2px) solid #ffffff;
  background-color: #ecf5ff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(20px, 1.4583333333vw, 28px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  box-sizing: border-box;
}

.p-faq__badge.--a {
  border-color: #085cac;
  background-color: #ffffff;
}

.p-faq__q__text {
  flex: 1;
  min-width: 0;
  padding-right: clamp(29px, 2.0833333333vw, 40px);
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: clamp(29px, 2.0833333333vw, 40px);
}

.p-faq__arrow {
  position: absolute;
  top: 50%;
  right: clamp(38px, 2.7604166667vw, 53px);
  display: block;
  width: clamp(14px, 1.0416666667vw, 20px);
  height: clamp(14px, 1.0416666667vw, 20px);
  transform: translateY(-50%) rotate(180deg);
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  line-height: 0;
}

.p-faq__arrow svg {
  display: block;
  width: 100%;
  height: 100%;
}

.p-faq__item[open] .p-faq__arrow,
.p-faq__item.is-closing .p-faq__arrow {
  transform: translateY(-50%) rotate(0deg);
}

.p-faq__a-wrap {
  overflow: hidden;
  height: 0;
}

.p-faq__a {
  display: flex;
  align-items: flex-start;
  gap: clamp(24px, 1.71875vw, 33px);
  padding: clamp(30px, 2.1875vw, 42px) clamp(38px, 2.7604166667vw, 53px) clamp(30px, 2.1875vw, 42px);
  box-sizing: border-box;
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.35s cubic-bezier(0.22, 1, 0.36, 1), transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.p-faq__item[open]:not(.is-closing) .p-faq__a {
  opacity: 1;
  transform: translateY(0);
}

.p-faq__a__text {
  flex: 1;
  min-width: 0;
  margin: clamp(9px, 0.6770833333vw, 13px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: clamp(25px, 1.8229166667vw, 35px);
}

@media (max-width: 750px) {
  .p-faq .c-panel {
    padding: clamp(95px, 25.3333333333vw, 190px) 0 clamp(14px, 3.7333333333vw, 28px);
  }
  .p-faq__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-faq__list {
    gap: clamp(24px, 6.4vw, 48px);
  }
  .p-faq__item {
    border-radius: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-faq__q {
    gap: clamp(12px, 3.2vw, 24px);
    min-height: clamp(78px, 20.8vw, 156px);
    padding: clamp(17px, 4.5333333333vw, 34px) clamp(15px, 4vw, 30px);
    border-radius: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-faq__badge {
    width: clamp(32px, 8.5333333333vw, 64px);
    height: clamp(32px, 8.5333333333vw, 64px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-faq__q__text {
    padding-right: clamp(22px, 5.8666666667vw, 44px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-faq__arrow {
    right: clamp(15px, 4vw, 30px);
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-faq__a {
    gap: clamp(12px, 3.2vw, 24px);
    padding: clamp(30px, 8vw, 60px) clamp(15px, 4vw, 30px) clamp(30px, 8vw, 60px);
    transform: translateY(calc(clamp(10px, 2.6666666667vw, 20px) * -1));
  }
  .p-faq__a__text {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-privacy .c-panel {
  padding: clamp(68px, 4.9479166667vw, 95px) 0 clamp(14px, 1.0416666667vw, 20px);
}

.p-privacy__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-privacy__page-ttl {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  height: clamp(78px, 5.6770833333vw, 109px);
  padding: 0 clamp(35px, 2.5520833333vw, 49px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background: linear-gradient(94.49deg, #085cac 0%, #042e56 100%);
  color: #ffffff;
  font-size: clamp(19px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1.4;
}

.p-privacy__lead {
  margin-top: clamp(24px, 1.71875vw, 33px);
  color: #292929;
}

.p-privacy__lead p {
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 2.2;
}

.p-privacy__lead p + p {
  margin-top: 0;
}

.p-privacy__sec {
  margin-top: clamp(78px, 5.6770833333vw, 109px);
}

.p-privacy__sec + .p-privacy__sec {
  margin-top: clamp(82px, 5.9375vw, 114px);
}

.p-privacy__sec-ttl {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  height: clamp(49px, 3.5416666667vw, 68px);
  padding: 0 clamp(35px, 2.5520833333vw, 49px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(17px, 1.1979166667vw, 23px);
  font-weight: 700;
  line-height: 1.4;
}

.p-privacy__sec-lead {
  margin-top: clamp(24px, 1.71875vw, 33px);
  color: #292929;
}

.p-privacy__sec-lead p {
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 2.2;
}

.p-privacy__block {
  margin-top: clamp(41px, 2.96875vw, 57px);
}

.p-privacy__sec-ttl + .p-privacy__block {
  margin-top: clamp(24px, 1.71875vw, 33px);
}

.p-privacy__item-ttl {
  display: grid;
  grid-template-columns: clamp(24px, 1.7708333333vw, 34px) 1fr;
  align-items: baseline;
  color: #085cac;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.75;
}

.p-privacy__item-ttl .num {
  font-family: "Roboto", sans-serif;
  font-size: clamp(22px, 1.5625vw, 30px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-privacy__body {
  margin-top: clamp(5px, 0.3645833333vw, 7px);
  padding-left: clamp(24px, 1.7708333333vw, 34px);
  color: #292929;
}

.p-privacy__body > p {
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.9;
}

.p-privacy__body > p + p {
  margin-top: 0;
}

.p-privacy__body > p + .p-privacy__olist,
.p-privacy__body > p + .p-privacy__ulist {
  margin-top: clamp(5px, 0.3645833333vw, 7px);
}

.p-privacy__body > .p-privacy__olist + p,
.p-privacy__body > .p-privacy__ulist + p {
  margin-top: clamp(5px, 0.3645833333vw, 7px);
}

.p-privacy__olist,
.p-privacy__ulist {
  margin: 0;
  padding: 0;
  list-style: none;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.9;
}

.p-privacy__olist li,
.p-privacy__ulist li {
  position: relative;
  padding-left: 2.2em;
}

.p-privacy__olist li + li,
.p-privacy__ulist li + li {
  margin-top: 0;
}

.p-privacy__olist li::before {
  position: absolute;
  left: 0;
  content: counter(privacy-ol) ".　";
  counter-increment: privacy-ol;
  color: #085cac;
}

.p-privacy__olist {
  counter-reset: privacy-ol;
}

.p-privacy__ulist li::before {
  position: absolute;
  left: 0;
  content: "・";
  color: #085cac;
}

.p-privacy__info {
  margin: clamp(10px, 0.7291666667vw, 14px) 0 0;
  padding: 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.9;
}

.p-privacy__info > div {
  display: grid;
  grid-template-columns: clamp(144px, 10.4166666667vw, 200px) 1fr;
  gap: clamp(10px, 0.7291666667vw, 14px);
}

.p-privacy__info > div + div {
  margin-top: clamp(10px, 0.7291666667vw, 14px);
}

.p-privacy__info dt,
.p-privacy__info dd {
  margin: 0;
}

.p-privacy__info dt {
  font-weight: 700;
}

.p-privacy__date {
  margin-top: clamp(71px, 5.15625vw, 99px);
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
}

@media (max-width: 750px) {
  .p-privacy .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-privacy__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-privacy__page-ttl {
    height: auto;
    padding: clamp(18px, 4.8vw, 36px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-privacy__lead,
  .p-privacy__sec-lead {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-privacy__lead p,
  .p-privacy__sec-lead p,
  .p-privacy__body > p,
  .p-privacy__olist,
  .p-privacy__ulist,
  .p-privacy__info,
  .p-privacy__date {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-privacy__sec,
  .p-privacy__sec + .p-privacy__sec {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-privacy__sec-ttl {
    height: auto;
    padding: clamp(13px, 3.4666666667vw, 26px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-privacy__block {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-privacy__sec-ttl + .p-privacy__block {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-privacy__item-ttl {
    grid-template-columns: clamp(24px, 6.4vw, 48px) 1fr;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: 1.5;
  }
  .p-privacy__item-ttl .num {
    font-size: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-privacy__body {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    padding-left: clamp(24px, 6.4vw, 48px);
  }
  .p-privacy__body > p + .p-privacy__olist,
  .p-privacy__body > p + .p-privacy__ulist,
  .p-privacy__body > .p-privacy__olist + p,
  .p-privacy__body > .p-privacy__ulist + p {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-privacy__olist li,
  .p-privacy__ulist li {
    padding-left: 2em;
  }
  .p-privacy__olist li + li,
  .p-privacy__ulist li + li {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-privacy__info {
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-privacy__info > div {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .p-privacy__info > div + div {
    margin-top: clamp(12px, 3.2vw, 24px);
  }
  .p-privacy__date {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
}
.p-contact .c-panel {
  padding: clamp(68px, 4.9479166667vw, 95px) 0 clamp(14px, 1.0416666667vw, 20px);
}

.p-contact__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-contact__form {
  width: clamp(688px, 62.5520833333vw, 1201px);
  margin-left: auto;
  margin-right: auto;
}

.p-contact__flow {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
}

.p-contact__flow__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(63px, 5.7291666667vw, 110px);
}

.p-contact__flow__num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(63px, 5.7291666667vw, 110px);
  height: clamp(63px, 5.7291666667vw, 110px);
  border-radius: 50%;
  background-color: #ecf5ff;
  color: rgba(8, 92, 172, 0.6);
  font-family: "Roboto", sans-serif;
  font-size: clamp(23px, 2.0833333333vw, 40px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  box-sizing: border-box;
}

.p-contact__flow__item.is-done .p-contact__flow__num,
.p-contact__flow__item.is-current .p-contact__flow__num {
  background-color: #085cac;
  color: #ffffff;
}

.p-contact__flow__label {
  margin-top: clamp(9px, 0.8333333333vw, 16px);
  color: rgba(8, 92, 172, 0.6);
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: clamp(20px, 1.8229166667vw, 35px);
  text-align: center;
}

.p-contact__flow__item.is-done .p-contact__flow__label,
.p-contact__flow__item.is-current .p-contact__flow__label {
  color: #085cac;
}

.p-contact__flow__line {
  position: relative;
  width: clamp(29px, 2.6041666667vw, 50px);
  height: clamp(11px, 0.9895833333vw, 19px);
  margin-top: clamp(26px, 2.3958333333vw, 46px);
  background-color: #ecf5ff;
  flex-shrink: 0;
}

.p-contact__flow__line.is-half {
  margin-left: -1px;
}

.p-contact__flow__line.is-half::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 65%;
  height: 100%;
  border-radius: 0 999px 999px 0;
  background-color: #085cac;
}

.p-contact__flow__line.is-done {
  margin-right: -1px;
  background-color: #085cac;
}

.p-contact__notice {
  width: 100%;
  margin-top: clamp(53px, 4.84375vw, 93px);
  padding: clamp(14px, 1.0416666667vw, 20px) clamp(18px, 1.4583333333vw, 28px);
  box-sizing: border-box;
  border: 1px solid #f5c2c7;
  border-radius: clamp(4px, 0.3125vw, 6px);
  background-color: #f8d7da;
  color: #842029;
  font-size: clamp(16px, 1.25vw, 24px);
  font-weight: 700;
  line-height: clamp(28px, 2.0833333333vw, 40px);
  text-align: center;
}

.p-contact__list {
  display: flex;
  flex-direction: column;
  gap: clamp(23px, 2.0833333333vw, 40px);
  margin-top: clamp(48px, 4.3229166667vw, 83px);
}

.p-contact__row {
  display: flex;
  align-items: center;
  gap: clamp(34px, 3.0729166667vw, 59px);
}

.p-contact__row.--top {
  align-items: flex-start;
}

.p-contact__row.--top .p-contact__label {
  margin-top: clamp(11px, 1.0416666667vw, 20px);
}

.p-contact__label {
  width: clamp(159px, 14.4270833333vw, 277px);
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-contact__field {
  flex: 1;
  min-width: 0;
}

.p-contact__zip {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.5208333333vw, 10px);
  width: clamp(180px, 16.3541666667vw, 314px);
}

.p-contact__zip-mark {
  flex-shrink: 0;
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(20px, 1.8229166667vw, 35px);
}

.p-contact__address {
  display: flex;
  flex-direction: column;
  gap: clamp(11px, 1.0416666667vw, 20px);
}

.p-contact__survey-q {
  position: relative;
  display: flex;
  align-items: center;
  height: clamp(40px, 3.59375vw, 69px);
  padding: 0 clamp(17px, 1.5625vw, 30px) 0 clamp(14px, 1.3020833333vw, 25px);
  box-sizing: border-box;
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(20px, 1.8229166667vw, 35px);
}

.p-contact__survey-q::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: clamp(5px, 0.46875vw, 9px);
  height: clamp(13px, 1.1979166667vw, 23px);
  transform: translateY(-50%);
  background-color: #085cac;
}

.p-contact__checks {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(23px, 2.0833333333vw, 40px) clamp(40px, 3.6458333333vw, 70px);
  margin-top: clamp(2px, 0.2083333333vw, 4px);
}

.p-contact__checks .c-checkbox {
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: clamp(20px, 1.8229166667vw, 35px);
}

.p-contact__checks .c-checkbox__box {
  margin-top: clamp(6px, 0.5208333333vw, 10px);
}

.p-contact__agree {
  margin-top: clamp(25px, 2.2395833333vw, 43px);
  padding-top: clamp(38px, 3.4375vw, 66px);
  border-top: 1px solid #085cac;
}

.p-contact__agree__block {
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.p-contact__agree__block + .p-contact__agree__block {
  margin-top: clamp(32px, 2.8645833333vw, 55px);
}

.p-contact__agree__check {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  column-gap: 0;
}

.p-contact__agree__check .c-checkbox {
  align-items: center;
}

.p-contact__agree__check .c-checkbox__box {
  margin-top: 0;
}

.p-contact__agree__check .c-checkbox__text {
  text-decoration: none;
}

.p-contact__agree__link {
  display: inline-flex;
  align-items: center;
  gap: clamp(3px, 0.3125vw, 6px);
  color: inherit;
  font-weight: inherit;
  text-decoration: underline;
}

.p-contact__agree__link img {
  display: block;
  width: clamp(11px, 0.9895833333vw, 19px);
  height: clamp(11px, 0.9895833333vw, 19px);
  margin-right: 0.25em;
  flex-shrink: 0;
}

.p-contact__agree__action {
  margin-left: 0.15em;
  color: #000000;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: clamp(15px, 1.3541666667vw, 26px);
}

.p-contact__agree__note {
  margin-top: clamp(8px, 0.7291666667vw, 14px);
  color: #000000;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(15px, 1.3541666667vw, 26px);
  text-align: left;
}

.p-contact__submit {
  display: flex;
  justify-content: center;
  margin-top: clamp(41px, 3.75vw, 72px);
}

.p-contact__submit-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(9px, 0.78125vw, 15px);
  width: clamp(184px, 16.71875vw, 321px);
  height: clamp(46px, 4.21875vw, 81px);
  border: 1px solid #085cac;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  background-color: #085cac;
  color: #ffffff;
  font-family: inherit;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  transition: opacity 0.6s var(--easing), background-color 0.3s ease-out, border-color 0.3s ease-out;
}

.p-contact__submit-btn img {
  display: block;
  width: clamp(9px, 0.8333333333vw, 16px);
  height: clamp(9px, 0.8333333333vw, 16px);
}

.p-contact .wpcf7-form-control-wrap {
  display: block;
}

.p-contact .wpcf7-list-item {
  margin: 0;
}

.p-contact__zip .wpcf7-form-control-wrap {
  flex: 1;
  min-width: 0;
}

.p-contact__agree__check .wpcf7-form-control-wrap {
  display: contents;
}

.p-contact .wpcf7-not-valid-tip {
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  color: var(--color-error);
  font-size: clamp(12px, 0.7291666667vw, 14px);
  font-weight: 700;
  line-height: 1.5;
}

.p-contact__agree__check .wpcf7-not-valid-tip {
  order: 1;
  width: 100%;
  margin-top: 0;
  text-align: left;
}

.p-contact__zip .wpcf7-not-valid-tip {
  white-space: nowrap;
}

.p-contact__zip:has(.wpcf7-not-valid-tip) {
  align-items: flex-start;
}

.p-contact__zip:has(.wpcf7-not-valid-tip) .p-contact__zip-mark {
  margin-top: clamp(10px, 0.8854166667vw, 17px);
}

@media (min-width: 750.11px) {
  .p-contact__row:not(.--top):has(.wpcf7-not-valid-tip) {
    align-items: flex-start;
  }
  .p-contact__row:not(.--top):has(.wpcf7-not-valid-tip) .p-contact__label {
    margin-top: clamp(13px, 0.8854166667vw, 17px);
  }
}
.p-contact .c-input.wpcf7-not-valid,
.p-contact .c-textarea.wpcf7-not-valid {
  box-shadow: inset 0 0 0 1px var(--color-error);
}

.p-contact .wpcf7 form .wpcf7-response-output {
  margin: clamp(29px, 2.0833333333vw, 40px) 0 0;
  padding: clamp(11px, 0.78125vw, 15px) clamp(14px, 1.0416666667vw, 20px);
  border: 1px solid var(--color-error);
  color: var(--color-error);
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.p-contact .wpcf7 form.sent .wpcf7-response-output {
  display: none;
}

.p-contact .wpcf7-form.submitting .p-contact__submit-btn {
  opacity: 0.5;
  pointer-events: none;
}

html[lang=en] .p-contact .c-label__required,
html[lang=en] .p-contact .c-label__optional {
  width: clamp(76px, 5vw, 96px);
  height: clamp(17px, 1.1979166667vw, 23px);
  padding: 0 clamp(8px, 0.625vw, 12px);
  white-space: nowrap;
}

html[lang=en] .p-contact .c-label__required {
  font-size: clamp(10px, 0.6770833333vw, 13px);
}

html[lang=en] .p-contact .c-label__optional {
  font-size: clamp(9px, 0.5729166667vw, 11px);
}

@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-contact__submit-btn:hover {
    border-color: #292929;
    background-color: #292929;
    opacity: 1;
  }
}
@media (max-width: 750px) {
  .p-contact .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-contact__inner,
  .p-contact__form {
    width: auto;
  }
  .p-contact__inner {
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-contact__flow__item {
    width: clamp(70px, 18.6666666667vw, 140px);
  }
  .p-contact__flow__num {
    width: clamp(70px, 18.6666666667vw, 140px);
    height: clamp(70px, 18.6666666667vw, 140px);
    font-size: clamp(26px, 6.9333333333vw, 52px);
  }
  .p-contact__flow__label {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-contact__flow__line {
    width: clamp(34px, 9.0666666667vw, 68px);
    height: clamp(12px, 3.2vw, 24px);
    margin-top: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-contact__notice {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    font-size: clamp(16px, 3.7333333333vw, 28px);
    font-weight: 700;
    line-height: clamp(28px, 5.8666666667vw, 44px);
    text-align: left;
  }
  .p-contact__list {
    gap: clamp(25px, 6.6666666667vw, 50px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-contact__row,
  .p-contact__row.--top {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-contact__row.--top .p-contact__label {
    margin-top: 0;
  }
  .p-contact__label {
    width: auto;
  }
  .p-contact__address {
    gap: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-contact__address .p-contact__row + .p-contact__row .p-contact__label {
    display: none;
  }
  .p-contact__zip {
    gap: clamp(8px, 2.1333333333vw, 16px);
    width: clamp(200px, 53.3333333333vw, 400px);
  }
  .p-contact__zip-mark {
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-contact__survey-q {
    height: auto;
    padding: 0 0 0 clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-contact__survey-q::before {
    width: clamp(5px, 1.3333333333vw, 10px);
    height: clamp(18px, 4.8vw, 36px);
  }
  .p-contact__checks {
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(12px, 3.2vw, 24px);
  }
  .p-contact__checks .c-checkbox {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-contact__checks .c-checkbox__box {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-contact__agree {
    margin-top: clamp(30px, 8vw, 60px);
    padding-top: clamp(30px, 8vw, 60px);
  }
  .p-contact__agree__block + .p-contact__agree__block {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-contact__agree__check {
    justify-content: flex-start;
    gap: 0;
    column-gap: 0;
  }
  .p-contact__agree__check .c-checkbox {
    align-items: flex-start;
  }
  .p-contact__agree__check .c-checkbox__box {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-contact__agree__check br,
  .p-contact__agree__note br {
    display: none;
  }
  .p-contact__agree__link {
    gap: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-contact__agree__link img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-contact__agree__action {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-contact__agree__note {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
    text-align: left;
  }
  .p-contact__submit {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-contact__submit-btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-contact__submit-btn img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-contact .wpcf7-not-valid-tip {
    margin-top: clamp(6px, 1.6vw, 12px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-contact__agree__check .wpcf7-not-valid-tip {
    margin-top: 0;
    text-align: left;
  }
  .p-contact__zip:has(.wpcf7-not-valid-tip) .p-contact__zip-mark {
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-contact .wpcf7 form .wpcf7-response-output {
    margin-top: clamp(30px, 8vw, 60px);
    padding: clamp(12px, 3.2vw, 24px) clamp(15px, 4vw, 30px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    text-align: left;
  }
  html[lang=en] .p-contact .c-label__required,
  html[lang=en] .p-contact .c-label__optional {
    width: clamp(88px, 23.4666666667vw, 176px);
    height: clamp(20px, 5.3333333333vw, 40px);
    padding: 0 clamp(8px, 2.1333333333vw, 16px);
  }
  html[lang=en] .p-contact .c-label__required {
    font-size: clamp(11px, 2.9333333333vw, 22px);
  }
  html[lang=en] .p-contact .c-label__optional {
    font-size: clamp(10px, 2.6666666667vw, 20px);
  }
}
.p-contact-confirm .p-contact__notice {
  width: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: #292929;
  font-size: clamp(11px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: clamp(20px, 1.8229166667vw, 35px);
}

.p-contact-confirm .p-contact__value {
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: clamp(25px, 1.8229166667vw, 35px);
  white-space: pre-wrap;
}

.p-contact-confirm .p-contact__list > .p-contact__row:not(.--top) .p-contact__field > .p-contact__value {
  display: flex;
  align-items: center;
  min-height: clamp(50px, 3.59375vw, 69px);
}

.p-contact-confirm .p-contact__zip {
  min-height: clamp(50px, 3.59375vw, 69px);
}

.p-contact-confirm .p-contact__survey-q + .p-contact__value {
  margin-top: clamp(4px, 0.3125vw, 6px);
}

.p-contact-confirm .p-contact__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 1.0416666667vw, 20px);
  margin-top: clamp(52px, 3.75vw, 72px);
  padding-top: clamp(29px, 2.0833333333vw, 40px);
  border-top: 1px solid #085cac;
}

.p-contact-confirm .p-contact__back-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(11px, 0.78125vw, 15px);
  width: clamp(231px, 16.71875vw, 321px);
  height: clamp(58px, 4.21875vw, 81px);
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  transition: opacity 0.6s var(--easing);
}

.p-contact-confirm .p-contact__back-btn img {
  display: block;
  width: clamp(11px, 0.8333333333vw, 16px);
  height: clamp(11px, 0.8333333333vw, 16px);
  transform: rotate(180deg);
}

.p-contact-confirm .p-contact__actions .p-contact__submit-btn {
  margin: 0;
}

@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-contact-confirm .p-contact__back-btn:hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .p-contact-confirm .p-contact__notice {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-contact-confirm .p-contact__row {
    gap: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-contact-confirm .p-contact__value {
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-contact-confirm .p-contact__list > .p-contact__row:not(.--top) .p-contact__field > .p-contact__value,
  .p-contact-confirm .p-contact__zip {
    min-height: 0;
  }
  .p-contact-confirm .p-contact__zip-mark {
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-contact-confirm .p-contact__address {
    gap: 0;
  }
  .p-contact-confirm .p-contact__survey-q + .p-contact__value {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-contact-confirm .p-contact__actions {
    flex-direction: column-reverse;
    gap: clamp(15px, 4vw, 30px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    padding-top: clamp(30px, 8vw, 60px);
  }
  .p-contact-confirm .p-contact__back-btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-contact-confirm .p-contact__back-btn img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
}
.p-contact-thanks__body {
  margin-top: 87px;
  text-align: center;
}

.p-contact-thanks__body h2 {
  color: #292929;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.4;
}

.p-contact-thanks__body > p {
  margin-top: 53px;
  color: #292929;
  text-align: center;
}

.p-contact-thanks__tel {
  width: 77%;
  margin: 36px auto 0;
  padding: 36px 40px 20px;
  border-radius: 20px;
  background-color: #ecf5ff;
  box-sizing: border-box;
}

.p-contact-thanks__tel__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 17px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-contact-thanks__tel__list a {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #292929;
  text-decoration: none;
  transition: opacity 0.6s var(--easing);
}

.p-contact-thanks__tel__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-contact-thanks__tel__icon img {
  display: block;
  width: 33px;
  height: 33px;
}

.p-contact-thanks__tel__num {
  font-size: 5.3rem;
  font-weight: 700;
  line-height: 1;
}

.p-contact-thanks__tel__area {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}

.p-contact-thanks__tel__hours {
  margin-top: 20px;
  color: #020d38;
  font-size: 1.4rem;
  text-align: center;
}

.p-contact-thanks__action {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}

.p-contact-thanks__action .p-contact__submit-btn {
  text-decoration: none;
}

@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-contact-thanks__tel__list a:hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .p-contact-thanks__body {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-contact-thanks__body h2 {
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: 1.5;
  }
  .p-contact-thanks__body > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-contact-thanks__body > p br {
    display: none;
  }
  .p-contact-thanks__tel {
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(15px, 4vw, 30px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-contact-thanks__tel__list {
    gap: clamp(12px, 3.2vw, 24px);
  }
  .p-contact-thanks__tel__list a {
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-contact-thanks__tel__icon {
    width: clamp(40px, 10.6666666667vw, 80px);
    height: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-contact-thanks__tel__icon img {
    width: clamp(20px, 5.3333333333vw, 40px);
    height: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-contact-thanks__tel__num {
    font-size: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-contact-thanks__tel__area {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-contact-thanks__tel__hours {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-contact-thanks__action {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
}
.p-innovation {
  background-color: #ecf5ff;
  border-radius: 0 0 clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px);
}

.p-innovation .c-panel {
  padding: clamp(106px, 7.7083333333vw, 148px) 0 clamp(92px, 6.6666666667vw, 128px);
}

.p-innovation__inner {
  width: clamp(688px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-innovation__sec-title {
  margin: 0;
  line-height: 1;
}

.p-innovation__sec-title .ja {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1;
}

.p-innovation__sec-title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-innovation__sec-title .en {
  display: block;
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(58px, 4.1666666667vw, 80px);
  font-weight: 500;
  font-style: italic;
  line-height: 1.15;
}

.p-innovation__catch {
  margin: clamp(32px, 2.2916666667vw, 44px) 0 0;
  color: #085cac;
  font-size: clamp(18px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.44;
}

.p-innovation__inner > p:not(.p-innovation__catch) {
  margin: clamp(9px, 0.625vw, 12px) 0 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
}

@media (max-width: 750px) {
  .p-innovation {
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-innovation .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
  }
  .p-innovation__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-innovation__sec-title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-innovation__sec-title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-innovation__sec-title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-innovation__catch {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-innovation__inner > p:not(.p-innovation__catch) {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-innovation__collab {
  padding: clamp(124px, 9.0104166667vw, 173px) 0 clamp(14px, 1.0416666667vw, 20px);
  box-sizing: border-box;
}

.p-innovation__collab-inner {
  width: clamp(917px, 83.3333333333vw, 1600px);
  max-width: calc(100% - 80px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-innovation__collab-ttl {
  margin: 0;
  color: #292929;
  font-size: clamp(35px, 2.5vw, 48px);
  font-weight: 700;
  line-height: 1.17;
  text-align: center;
}

.p-innovation__collab-ttl span {
  color: #085cac;
}

.p-innovation__collab-lead {
  margin: clamp(19px, 1.3541666667vw, 26px) 0 0;
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.p-innovation__flow {
  margin-top: clamp(47px, 3.4375vw, 66px);
}

.p-innovation__flow img {
  display: block;
  width: 100%;
  height: auto;
}

.p-innovation__consult-ttl {
  display: block;
  margin: clamp(82px, 5.9375vw, 114px) auto 0;
  color: #292929;
  font-size: clamp(27px, 1.9791666667vw, 38px);
  font-weight: 700;
  line-height: 1.47;
  text-align: center;
}

.p-innovation__consult-ttl span {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding: 0 0 clamp(3px, 0.2083333333vw, 4px);
}

.p-innovation__consult-ttl span::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(9px, 0.625vw, 12px);
  height: clamp(14px, 1.0416666667vw, 20px);
  background-color: rgba(86, 148, 198, 0.21);
  z-index: -1;
}

.p-innovation__consult-lead {
  margin: clamp(11px, 0.78125vw, 15px) 0 0;
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
}

.p-innovation__collab .c-cta {
  margin-top: clamp(86px, 6.25vw, 120px);
}

.p-innovation__collab .c-breadcrumb {
  margin-top: clamp(116px, 8.3854166667vw, 161px);
}

@media (max-width: 750px) {
  .p-innovation__collab {
    padding: clamp(60px, 16vw, 120px) 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-innovation__collab-inner {
    width: auto;
    max-width: none;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-innovation__collab-ttl {
    font-size: clamp(24px, 6.4vw, 48px);
    line-height: clamp(36px, 9.6vw, 72px);
  }
  .p-innovation__collab-lead {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-innovation__flow {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-innovation__flow__sp {
    text-align: center;
  }
  .p-innovation__flow__card {
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(20px, 5.3333333333vw, 40px);
    border: 1px solid #085cac;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    background-color: #ffffff;
    color: #292929;
  }
  .p-innovation__flow__card.--toyo {
    border: none;
    background: linear-gradient(132.54deg, #085cac 0%, #042e56 100%);
    color: #ffffff;
  }
  .p-innovation__flow__card.--new {
    border: none;
    background: linear-gradient(131.48deg, #2793e9 0%, #0069c3 100%);
    color: #ffffff;
  }
  .p-innovation__flow__card h3 {
    margin: 0;
    font-size: clamp(18px, 4.8vw, 36px);
    font-weight: 700;
    line-height: clamp(26px, 6.9333333333vw, 52px);
  }
  .p-innovation__flow__card > p {
    margin: clamp(10px, 2.6666666667vw, 20px) 0 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    font-weight: 700;
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-innovation__flow__tags {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(6px, 1.6vw, 12px);
    margin: clamp(15px, 4vw, 30px) 0 0;
    padding: 0;
    list-style: none;
  }
  .p-innovation__flow__tags li {
    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    background-color: #ecf5ff;
    color: rgba(41, 41, 41, 0.639);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    font-weight: 700;
    line-height: 1;
  }
  .p-innovation__flow__arrow {
    position: relative;
    height: clamp(54px, 14.4vw, 108px);
    padding-left: calc(50% + clamp(25px, 6.6666666667vw, 50px));
    color: #085cac;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    font-weight: 700;
    line-height: clamp(54px, 14.4vw, 108px);
    text-align: left;
  }
  .p-innovation__flow__arrow::before,
  .p-innovation__flow__arrow::after {
    content: "";
    position: absolute;
    left: 50%;
    background-color: #2793e9;
    opacity: 0.67;
    transform: translateX(-50%);
  }
  .p-innovation__flow__arrow::before {
    top: clamp(8px, 2.1333333333vw, 16px);
    width: clamp(3px, 0.8vw, 6px);
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-innovation__flow__arrow::after {
    top: clamp(22px, 5.8666666667vw, 44px);
    width: clamp(23px, 6.1333333333vw, 46px);
    height: clamp(23px, 6.1333333333vw, 46px);
    clip-path: polygon(0 0, 50% 43%, 100% 0, 50% 100%);
  }
  .p-innovation__flow__value {
    display: inline-flex;
    align-items: center;
    height: clamp(44px, 11.7333333333vw, 88px);
    margin: 0;
    padding: 0 clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(22px, 5.8666666667vw, 44px);
    background: linear-gradient(180deg, #415b8d 0%, #232d36 100%);
    color: #ffffff;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    font-weight: 700;
    line-height: 1;
  }
  .p-innovation__consult-ttl {
    margin-top: clamp(60px, 16vw, 120px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-innovation__consult-ttl span {
    display: inline;
    padding: 0;
    background: linear-gradient(transparent 55%, rgba(86, 148, 198, 0.21) 55% 90%, transparent 90%);
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .p-innovation__consult-ttl span::after {
    content: none;
  }
  .p-innovation__consult-lead {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-innovation__consult-lead br {
    display: none;
  }
  .p-innovation__collab .c-cta {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-innovation__collab .c-breadcrumb {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
}
.c-hero.--sustainability .c-hero__title .en {
  font-size: clamp(70px, 5.1041666667vw, 98px);
}

.p-sustainability__resource {
  margin-top: clamp(58px, 4.1666666667vw, 80px);
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  background-color: rgba(255, 255, 255, 0.604);
  box-sizing: border-box;
  padding: clamp(133px, 9.6354166667vw, 185px) 0 clamp(86px, 6.25vw, 120px);
}

.p-sustainability__resource-inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-sustainability__resource-head {
  width: 100%;
}

.p-sustainability__resource-copy {
  display: flex;
  align-items: flex-start;
  gap: clamp(28px, 2.5vw, 48px);
  width: 100%;
  box-sizing: border-box;
}

.p-sustainability__resource-ttl {
  flex-shrink: 0;
  width: clamp(240px, 18.75vw, 360px);
  margin: 0;
  color: #0885a2;
  font-size: clamp(34px, 2.4479166667vw, 47px);
  line-height: 1.4;
}

.p-sustainability__resource-copy > p {
  flex: 1;
  min-width: 0;
  margin: clamp(10px, 0.9375vw, 18px) 0 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
}

.p-sustainability__cycle {
  width: 100%;
  margin: clamp(70px, 5.1041666667vw, 98px) auto 0;
}

.p-sustainability__cycle img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 750px) {
  .p-sustainability__resource {
    margin-top: 0;
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
  }
  .p-sustainability__resource-inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__resource-copy {
    display: block;
  }
  .p-sustainability__resource-ttl {
    width: auto;
    font-size: clamp(24px, 6.4vw, 48px);
    line-height: clamp(36px, 9.6vw, 72px);
  }
  .p-sustainability__resource-copy > p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-sustainability__cycle {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-sustainability__cycle__sp {
    padding: clamp(30px, 8vw, 60px) clamp(15px, 4vw, 30px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    background-color: #d5efea;
    background-image: radial-gradient(circle at 50% clamp(105px, 28vw, 210px), rgba(255, 255, 255, 0.74) 0 clamp(166px, 44.2666666667vw, 332px), rgba(255, 255, 255, 0.44) clamp(166px, 44.2666666667vw, 332px) clamp(287px, 76.5333333333vw, 574px), rgba(255, 255, 255, 0.24) clamp(287px, 76.5333333333vw, 574px) clamp(396px, 105.6vw, 792px), transparent clamp(396px, 105.6vw, 792px));
  }
  .p-sustainability__cycle__center {
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(150px, 40vw, 300px);
    height: clamp(150px, 40vw, 300px);
    margin: 0 auto;
    border-radius: 50%;
    background: radial-gradient(circle at 63% 36%, #50d9de 0%, #009d91 43%, #0ec469 100%);
    color: #ffffff;
    font-size: clamp(18px, 4.8vw, 36px);
    font-weight: 700;
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: center;
  }
  .p-sustainability__cycle__list {
    display: flex;
    flex-direction: column;
    gap: clamp(70px, 18.6666666667vw, 140px);
    margin: clamp(62px, 16.5333333333vw, 124px) 0 0;
    padding: 0;
    list-style: none;
  }
  .p-sustainability__cycle__item {
    position: relative;
    padding: clamp(42px, 11.2vw, 84px) clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    background-color: #ffffff;
    box-shadow: 0 0 clamp(5px, 1.3333333333vw, 10px) rgba(133, 179, 230, 0.608);
  }
  .p-sustainability__cycle__item + .p-sustainability__cycle__item::before {
    content: "";
    position: absolute;
    top: calc(clamp(60px, 16vw, 120px) * -1);
    left: 50%;
    width: clamp(20px, 5.3333333333vw, 40px);
    height: clamp(22px, 5.8666666667vw, 44px);
    transform: translateX(-50%);
    clip-path: polygon(0 0, 50% 30%, 100% 0, 50% 100%);
  }
  .p-sustainability__cycle__item:nth-child(2)::before {
    background-color: #44a7a2;
  }
  .p-sustainability__cycle__item:nth-child(3)::before {
    background-color: #359a95;
  }
  .p-sustainability__cycle__item:nth-child(4)::before {
    background-color: #13807b;
  }
  .p-sustainability__cycle__num {
    position: absolute;
    top: calc(clamp(32px, 8.5333333333vw, 64px) * -1);
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: clamp(64px, 17.0666666667vw, 128px);
    height: clamp(64px, 17.0666666667vw, 128px);
    padding: 0 clamp(8px, 2.1333333333vw, 16px);
    border-radius: 50%;
    transform: translateX(-50%);
    color: #ffffff;
    font-size: clamp(11px, 2.9333333333vw, 22px);
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }
  .p-sustainability__cycle__num-index {
    flex-shrink: 0;
    font-family: "Roboto", sans-serif;
    font-size: clamp(24px, 6.4vw, 48px);
    font-style: italic;
    line-height: 1;
  }
  .p-sustainability__cycle__num-label__ja,
  .p-sustainability__cycle__num-label__en {
    display: block;
    width: 100%;
    max-width: 100%;
    line-height: 1.15;
    text-align: center;
  }
  .p-sustainability__cycle__num-label__en {
    display: none;
  }
  html[lang=en] .p-sustainability__cycle__num-label__ja {
    display: none;
  }
  html[lang=en] .p-sustainability__cycle__num-label__en {
    display: block;
  }
  html[lang=en] .p-sustainability__cycle__num {
    font-size: clamp(8px, 1.7333333333vw, 13px);
    line-height: 1.1;
    padding: 0 clamp(10px, 2.6666666667vw, 20px);
  }
  html[lang=en] .p-sustainability__cycle__num-index {
    font-size: clamp(18px, 4.5333333333vw, 34px);
  }
  .p-sustainability__cycle__item:nth-child(1) .p-sustainability__cycle__num {
    background-color: #59c3be;
  }
  .p-sustainability__cycle__item:nth-child(2) .p-sustainability__cycle__num {
    background-color: #44a7a2;
  }
  .p-sustainability__cycle__item:nth-child(3) .p-sustainability__cycle__num {
    background-color: #359a95;
  }
  .p-sustainability__cycle__item:nth-child(4) .p-sustainability__cycle__num {
    background-color: #12807a;
  }
  .p-sustainability__cycle__item h3 {
    margin: 0;
    color: #292929;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    font-weight: 700;
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: center;
  }
  .p-sustainability__cycle__item > p {
    margin: clamp(8px, 2.1333333333vw, 16px) 0 0;
    color: #000000;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
}
.p-sustainability__quality {
  box-sizing: border-box;
  padding: clamp(29px, 2.6041666667vw, 50px) 0 clamp(40px, 3.6458333333vw, 70px);
}

.p-sustainability__quality-panel {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 6%;
  box-sizing: border-box;
  width: calc(100% - clamp(54px, 4.8958333333vw, 94px));
  margin-left: auto;
  margin-right: auto;
  padding: 6% 10% 2% 6%;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background-image: linear-gradient(196deg, rgba(49, 188, 108, 0.72) 0%, rgba(37, 141, 186, 0.72) 100%), url("../img/sustainability/quality_bg.jpg");
  background-size: cover;
  background-position: center;
}

.p-sustainability__quality-photos {
  position: relative;
  flex-shrink: 0;
  width: 48%;
  aspect-ratio: 736/661;
}

.p-sustainability__quality-photos__01 {
  position: absolute;
  left: 0;
  top: 0;
  width: 81%;
  height: auto;
  aspect-ratio: 594/588;
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-sustainability__quality-photos__02 {
  position: absolute;
  left: 66%;
  top: 47%;
  width: 34%;
  height: auto;
  aspect-ratio: 248/348;
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-sustainability__quality-body {
  width: 46%;
  padding-top: 3%;
  box-sizing: border-box;
}

.p-sustainability__quality-ttl {
  margin: 0;
  color: #ffffff;
  font-size: clamp(27px, 2.4479166667vw, 47px);
}

.p-sustainability__quality-iso {
  display: block;
  width: 53%;
  height: auto;
  margin-top: clamp(10px, 0.8854166667vw, 17px);
}

.p-sustainability__quality-body > p {
  margin: clamp(22px, 2.03125vw, 39px) 0 0;
  color: #ffffff;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 2.1;
}

.p-sustainability__quality-meta {
  width: 92%;
  margin: clamp(22px, 1.9791666667vw, 38px) 0 0;
  padding: 0;
}

.p-sustainability__quality-meta__row {
  display: flex;
  align-items: stretch;
  box-sizing: border-box;
  width: 100%;
  height: clamp(26px, 2.34375vw, 45px);
  margin: 0;
  border-radius: clamp(13px, 1.1979166667vw, 23px);
  background-color: #ecf5ff;
}

.p-sustainability__quality-meta__row + .p-sustainability__quality-meta__row {
  margin-top: clamp(3px, 0.3125vw, 6px);
}

.p-sustainability__quality-meta__row dt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-sizing: border-box;
  width: 16%;
  margin: 0;
  border-radius: clamp(13px, 1.1979166667vw, 23px) 0 0 clamp(13px, 1.1979166667vw, 23px);
  background-color: #292929;
  color: #ffffff;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1;
}

.p-sustainability__quality-meta__row.--scope dt {
  background-color: #88eac4;
  color: #004d57;
}

.p-sustainability__quality-meta__row dd {
  display: flex;
  align-items: center;
  flex: 1;
  margin: 0;
  padding: 0 clamp(11px, 1.0416666667vw, 20px);
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1;
  white-space: nowrap;
}

.p-sustainability__quality-meta__row.--examples {
  height: auto;
  min-height: clamp(108px, 9.7916666667vw, 188px);
  align-items: stretch;
}

.p-sustainability__quality-meta__row.--examples dt {
  background-color: #0b503e;
  color: #ffffff;
  line-height: 1.4;
  text-align: center;
}

.p-sustainability__quality-meta__row.--examples dd {
  align-items: flex-start;
  gap: clamp(16px, 1.4583333333vw, 28px);
  padding-top: clamp(10px, 0.9375vw, 18px);
  padding-bottom: clamp(5px, 0.4166666667vw, 8px);
  font-weight: 500;
  line-height: 1.7;
  white-space: normal;
}

.p-sustainability__quality-examples {
  flex: 1;
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-sustainability__quality-examples li {
  margin: 0;
  padding: 0;
}

.p-sustainability__quality-examples li::before {
  content: "・";
}

@media (min-width: 750.11px) {
  html[lang=en] .p-sustainability__quality-meta__row {
    height: auto;
    min-height: clamp(26px, 2.34375vw, 45px);
  }
  html[lang=en] .p-sustainability__quality-meta__row dt {
    display: grid;
    place-items: center;
    width: 22%;
    padding: clamp(6px, 0.5208333333vw, 10px) clamp(4px, 0.4166666667vw, 8px);
    line-height: 1.3;
    text-align: center;
  }
  html[lang=en] .p-sustainability__quality-meta__row dd {
    min-width: 0;
    padding: clamp(6px, 0.5208333333vw, 10px) clamp(14px, 1.1458333333vw, 22px);
    line-height: 1.4;
    white-space: normal;
  }
  html[lang=en] .p-sustainability__quality-meta__row.--examples dd {
    padding-top: clamp(10px, 0.9375vw, 18px);
    padding-bottom: clamp(5px, 0.4166666667vw, 8px);
    padding-left: clamp(14px, 1.1458333333vw, 22px);
    padding-right: clamp(14px, 1.1458333333vw, 22px);
  }
}
@media (max-width: 750px) {
  .p-sustainability__quality {
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
  }
  .p-sustainability__quality-panel {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(30px, 8vw, 60px);
    width: auto;
    margin-left: clamp(11px, 2.9333333333vw, 22px);
    margin-right: clamp(11px, 2.9333333333vw, 22px);
    padding: clamp(40px, 10.6666666667vw, 80px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__quality-photos {
    width: 100%;
  }
  .p-sustainability__quality-photos__01,
  .p-sustainability__quality-photos__02 {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-sustainability__quality-body {
    width: auto;
    padding-top: 0;
  }
  .p-sustainability__quality-ttl {
    font-size: clamp(24px, 6.4vw, 48px);
    line-height: clamp(36px, 9.6vw, 72px);
  }
  .p-sustainability__quality-iso {
    width: clamp(200px, 53.3333333333vw, 400px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-sustainability__quality-body > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-sustainability__quality-meta {
    width: auto;
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__quality-meta__row {
    height: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-sustainability__quality-meta__row + .p-sustainability__quality-meta__row {
    margin-top: clamp(6px, 1.6vw, 12px);
  }
  .p-sustainability__quality-meta__row dt {
    width: clamp(80px, 21.3333333333vw, 160px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 0 clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-sustainability__quality-meta__row dd {
    padding: clamp(8px, 2.1333333333vw, 16px) clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(20px, 5.3333333333vw, 40px);
    white-space: normal;
  }
  .p-sustainability__quality-meta__row.--examples {
    min-height: 0;
  }
  .p-sustainability__quality-meta__row.--examples dt {
    line-height: 1.4;
  }
  .p-sustainability__quality-meta__row.--examples dd {
    flex-direction: column;
    gap: 0;
    padding-top: clamp(10px, 2.6666666667vw, 20px);
    padding-bottom: clamp(10px, 2.6666666667vw, 20px);
    line-height: 1.7;
  }
  html[lang=en] .p-sustainability__quality-meta__row dt {
    display: grid;
    place-items: center;
    width: clamp(100px, 21.3333333333vw, 160px);
    padding: clamp(8px, 2.1333333333vw, 16px) clamp(10px, 2.6666666667vw, 20px);
    line-height: 1.3;
    text-align: center;
  }
}
.p-sustainability__policy {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  padding: clamp(147px, 10.625vw, 204px) 0 clamp(29px, 2.0833333333vw, 40px);
}

.p-sustainability__policy-bg {
  position: absolute;
  inset: 0;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  z-index: 0;
}

.p-sustainability__policy-bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
}

.p-sustainability__policy-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  background: linear-gradient(180deg, #b9f8de 0%, #5ecad8 100%);
  mix-blend-mode: soft-light;
}

.p-sustainability__policy-inner {
  position: relative;
  z-index: 1;
  width: clamp(688px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  text-align: center;
}

.p-sustainability__policy-ttl {
  margin: 0;
  color: #0885a2;
  font-size: clamp(34px, 2.4479166667vw, 47px);
}

.p-sustainability__policy-inner > p {
  width: clamp(602px, 43.6458333333vw, 838px);
  margin: clamp(8px, 0.5729166667vw, 11px) auto 0;
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2.1;
}

.p-sustainability__policy-list {
  display: flex;
  flex-direction: column;
  gap: clamp(7px, 0.5208333333vw, 10px);
  list-style: none;
  margin: clamp(45px, 3.2291666667vw, 62px) 0 0;
  padding: 0;
  text-align: left;
}

.p-sustainability__policy-item {
  display: flex;
  align-items: center;
  gap: clamp(22px, 1.5625vw, 30px);
  box-sizing: border-box;
  width: 100%;
  height: clamp(91px, 6.6145833333vw, 127px);
  margin: 0;
  padding: 0 clamp(22px, 1.5625vw, 30px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ffffff;
}

.p-sustainability__policy-item__num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(60px, 4.375vw, 84px);
  height: clamp(60px, 4.375vw, 84px);
  border-radius: 50%;
  background: radial-gradient(circle at 65% 25%, #50d9de 0%, #009d91 43%, #0ec469 100%);
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(25px, 1.8229166667vw, 35px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-sustainability__policy-item > p {
  margin: 0;
  color: #292929;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  line-height: 1.7;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-sustainability__policy-item {
    height: auto;
    min-height: clamp(91px, 6.6145833333vw, 127px);
    padding: clamp(14px, 1.0416666667vw, 20px) clamp(22px, 1.5625vw, 30px);
  }
}
@media (max-width: 750px) {
  .p-sustainability__policy,
  .p-sustainability__policy-bg,
  .p-sustainability__policy-bg img,
  .p-sustainability__policy-bg::after {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__policy {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
  }
  .p-sustainability__policy-inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__policy-ttl {
    font-size: clamp(24px, 6.4vw, 48px);
    line-height: clamp(36px, 9.6vw, 72px);
  }
  .p-sustainability__policy-inner > p {
    width: auto;
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-sustainability__policy-inner > p br,
  .p-sustainability__policy-item > p br {
    display: none;
  }
  .p-sustainability__policy-list {
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-sustainability__policy-item {
    gap: clamp(15px, 4vw, 30px);
    height: auto;
    padding: clamp(15px, 4vw, 30px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-sustainability__policy-item__num {
    width: clamp(50px, 13.3333333333vw, 100px);
    height: clamp(50px, 13.3333333333vw, 100px);
    font-size: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-sustainability__policy-item > p {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
}
.p-sustainability__chem {
  box-sizing: border-box;
  width: 100%;
  padding: clamp(116px, 10.5729166667vw, 203px) 0 clamp(17px, 1.5104166667vw, 29px);
  border-radius: 0 0 clamp(23px, 2.0833333333vw, 40px) clamp(23px, 2.0833333333vw, 40px);
  background-color: rgba(213, 239, 223, 0.7);
}

.p-sustainability__chem-inner {
  width: clamp(863px, 62.5vw, 1200px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  text-align: center;
}

.p-sustainability__chem-ttl {
  margin: 0;
  color: #16a537;
  font-size: clamp(27px, 2.4479166667vw, 47px);
  line-height: 1.4;
}

.p-sustainability__chem-inner > p:not(.p-sustainability__chem-foot) {
  width: clamp(862px, 62.3958333333vw, 1198px);
  margin: clamp(6px, 0.5729166667vw, 11px) auto 0;
  color: #292929;
  font-weight: 500;
  line-height: 2.1;
  text-align: left;
}

.p-sustainability__chem-box {
  box-sizing: border-box;
  width: 100%;
  margin-top: clamp(23px, 2.0833333333vw, 40px);
  border: 1px solid #39ba98;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  overflow: hidden;
  text-align: left;
}

.p-sustainability__chem-box__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 0.6770833333vw, 13px);
  box-sizing: border-box;
  width: 100%;
  height: clamp(37px, 3.3333333333vw, 64px);
  margin: 0;
  background: linear-gradient(229.42deg, #50de5b 0%, #43c370 43%, #3ca55d 100%);
  color: #ffffff;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.2;
}

.p-sustainability__chem-box__ttl::before,
.p-sustainability__chem-box__ttl::after {
  content: "";
  flex-shrink: 0;
  width: clamp(11px, 0.9895833333vw, 19px);
  height: 2px;
  border-radius: 23px;
  background-color: #ffffff;
}

.p-sustainability__chem-box__list {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: clamp(11px, 1.0416666667vw, 20px) clamp(84px, 7.65625vw, 147px) clamp(17px, 1.5625vw, 30px);
  list-style: none;
}

.p-sustainability__chem-box__list li {
  margin: 0;
  padding: 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 500;
  line-height: 2.1;
}

.p-sustainability__chem-box__list li::before {
  content: "・";
}

.p-sustainability__chem-foot {
  margin: clamp(41px, 3.75vw, 72px) 0 0;
  color: #16a537;
  font-size: clamp(17px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 2;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}

.p-sustainability__chem .c-breadcrumb {
  margin-top: clamp(53px, 4.7916666667vw, 92px);
}

@media (max-width: 750px) {
  .p-sustainability__chem {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__chem-inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__chem-ttl {
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: 1.4;
  }
  .p-sustainability__chem-inner > p:not(.p-sustainability__chem-foot) {
    width: auto;
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 2.1;
    text-align: left;
  }
  .p-sustainability__chem-inner > p:not(.p-sustainability__chem-foot) br,
  .p-sustainability__chem-foot br {
    display: none;
  }
  .p-sustainability__chem-box {
    margin-top: clamp(30px, 8vw, 60px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-sustainability__chem-box__ttl {
    gap: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(44px, 11.7333333333vw, 88px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-sustainability__chem-box__ttl::before,
  .p-sustainability__chem-box__ttl::after {
    width: clamp(12px, 3.2vw, 24px);
  }
  .p-sustainability__chem-box__list {
    padding: clamp(16px, 4.2666666667vw, 32px) clamp(16px, 4.2666666667vw, 32px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sustainability__chem-box__list li {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 2.1;
  }
  .p-sustainability__chem-foot {
    margin-top: clamp(30px, 8vw, 60px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: 1.8;
    text-align: left;
  }
  .p-sustainability__chem .c-breadcrumb {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
}
.c-hero.--tech-proposals .c-hero__title .ja {
  display: block;
  color: #085cac;
  font-size: clamp(38px, 2.7604166667vw, 53px);
  font-weight: 700;
  line-height: 1.32;
}

.c-hero.--tech-proposals .c-hero__title .ja::before {
  display: none;
}

.c-hero.--tech-proposals .c-hero__catch {
  margin-top: clamp(17px, 1.25vw, 24px);
  font-size: clamp(24px, 1.71875vw, 33px);
  font-weight: 700;
  line-height: 1.45;
}

.c-hero.--tech-proposals .c-hero__content > p {
  margin-top: clamp(17px, 1.25vw, 24px);
  font-weight: 700;
}

@media (max-width: 750px) {
  .c-hero.--tech-proposals .c-hero__title .ja {
    font-size: clamp(30px, 8vw, 60px);
    line-height: clamp(42px, 11.2vw, 84px);
  }
  .c-hero.--tech-proposals .c-hero__catch {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .c-hero.--tech-proposals .c-hero__content > p {
    margin-top: clamp(15px, 4vw, 30px);
  }
}
.p-tech-proposals__bridge {
  background-color: #ffffff;
  border-radius: clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px) 0 0;
  padding: clamp(83px, 5.9895833333vw, 115px) 0 clamp(86px, 6.25vw, 120px);
  box-sizing: border-box;
}

.p-tech-proposals__bridge-inner {
  width: clamp(917px, 83.3333333333vw, 1600px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-tech-proposals__steps {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: clamp(6px, 0.4166666667vw, 8px);
}

.p-tech-proposals__step {
  width: clamp(456px, 41.4583333333vw, 796px);
  box-sizing: border-box;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  padding: clamp(48px, 3.4895833333vw, 67px) clamp(56px, 4.0625vw, 78px) clamp(43px, 3.125vw, 60px);
}

.p-tech-proposals__step.--1 {
  background: linear-gradient(239deg, #ecf5ff 0%, #bed8f5 100%);
}

.p-tech-proposals__step.--2 {
  background: linear-gradient(243deg, #2793e9 0%, #0a5faf 95%, #085cac 100%);
}
@media (min-width: 750.11px) {
  .p-tech-proposals__step.--2 {
    padding-left: clamp(80px, 5.8333333333vw, 112px);
  }
}

.p-tech-proposals__step__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(155px, 11.25vw, 216px);
  height: clamp(33px, 2.3958333333vw, 46px);
  padding: 0 clamp(13px, 0.9375vw, 18px);
  box-sizing: border-box;
  margin: 0;
  border-radius: clamp(17px, 1.1979166667vw, 23px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-tech-proposals__step.--2 .p-tech-proposals__step__label {
  min-width: clamp(169px, 12.2395833333vw, 235px);
  background-color: #ffffff;
  color: #085cac;
}

.p-tech-proposals__step__ttl {
  margin: clamp(19px, 1.3541666667vw, 26px) 0 0;
  font-size: clamp(29px, 2.0833333333vw, 40px);
  font-weight: 700;
  line-height: 1.4;
}

.p-tech-proposals__step.--1 .p-tech-proposals__step__ttl {
  color: #085cac;
}

.p-tech-proposals__step.--2 .p-tech-proposals__step__ttl {
  color: #ffffff;
}

.p-tech-proposals__step > p:not(.p-tech-proposals__step__label) {
  margin: clamp(11px, 0.78125vw, 15px) 0 0;
  color: #292929;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.9;
}

.p-tech-proposals__step.--2 > p:not(.p-tech-proposals__step__label) {
  color: #ffffff;
}

.p-tech-proposals__bridge-circle {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(131px, 9.4791666667vw, 182px);
  height: clamp(131px, 9.4791666667vw, 182px);
  margin: 0;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 0 clamp(6px, 0.4166666667vw, 8px) rgba(39, 150, 255, 0.557);
  transform: translate(-50%, -50%);
  box-sizing: border-box;
}

.p-tech-proposals__bridge-circle p {
  margin: 0;
  color: #292929;
  font-size: clamp(19px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1.33;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: clamp(3px, 0.2083333333vw, 4px);
}

.p-tech-proposals__bridge-circle__arrows {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(3px, 0.2083333333vw, 4px);
  margin-top: clamp(4px, 0.3125vw, 6px);
  width: clamp(29px, 2.1354166667vw, 41px);
  height: clamp(14px, 0.9895833333vw, 19px);
}

.p-tech-proposals__bridge-circle__arrows svg {
  display: block;
  flex-shrink: 0;
  width: clamp(9px, 0.625vw, 12px);
  height: clamp(16px, 1.1458333333vw, 22px);
  overflow: visible;
}

@media (max-width: 750px) {
  .p-tech-proposals__bridge {
    border-radius: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) 0 0;
    padding: clamp(60px, 16vw, 120px) 0;
  }
  .p-tech-proposals__bridge-inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__steps {
    flex-direction: column;
    gap: 0;
  }
  .p-tech-proposals__step {
    width: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    padding: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__step.--1 {
    padding-bottom: clamp(45px, 12vw, 90px);
  }
  .p-tech-proposals__step.--2 {
    padding-top: clamp(45px, 12vw, 90px);
  }
  .p-tech-proposals__step__label,
  .p-tech-proposals__step.--2 .p-tech-proposals__step__label {
    min-width: 0;
    height: clamp(30px, 8vw, 60px);
    padding: 0 clamp(15px, 4vw, 30px);
    border-radius: clamp(15px, 4vw, 30px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-tech-proposals__step__ttl {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-tech-proposals__step > p:not(.p-tech-proposals__step__label) {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__step > p br {
    display: none;
  }
  .p-tech-proposals__bridge-circle {
    position: relative;
    left: auto;
    top: auto;
    width: clamp(110px, 29.3333333333vw, 220px);
    height: clamp(110px, 29.3333333333vw, 220px);
    margin: calc(clamp(25px, 6.6666666667vw, 50px) * -1) auto;
    box-shadow: 0 0 clamp(8px, 2.1333333333vw, 16px) rgba(39, 150, 255, 0.557);
    transform: none;
  }
  .p-tech-proposals__bridge-circle p {
    font-size: clamp(17px, 4.5333333333vw, 34px);
    text-underline-offset: clamp(3px, 0.8vw, 6px);
  }
  .p-tech-proposals__bridge-circle__arrows {
    gap: clamp(4px, 1.0666666667vw, 8px);
    margin-top: clamp(12px, 3.2vw, 24px);
    width: clamp(41px, 10.9333333333vw, 82px);
    height: clamp(19px, 5.0666666667vw, 38px);
    transform: rotate(90deg) scale(0.8);
  }
  .p-tech-proposals__bridge-circle__arrows svg {
    width: clamp(12px, 3.2vw, 24px);
    height: clamp(22px, 5.8666666667vw, 44px);
  }
}
.p-tech-proposals__proposal {
  position: relative;
  background-color: #00498e;
  padding: clamp(126px, 9.1145833333vw, 175px) 0 clamp(86px, 6.25vw, 120px);
  box-sizing: border-box;
}

.p-tech-proposals__proposal::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.08;
  background-image: linear-gradient(to right, #ffffff 1px, transparent 1px), linear-gradient(to bottom, #ffffff 1px, transparent 1px);
  background-size: clamp(65px, 4.6875vw, 90px) clamp(65px, 4.6875vw, 90px);
  pointer-events: none;
}

.p-tech-proposals__proposal-inner {
  position: relative;
  z-index: 1;
  width: clamp(858px, 77.96875vw, 1497px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-tech-proposals__sec-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(29px, 2.0833333333vw, 40px);
}

.p-tech-proposals__sec-title {
  margin: 0;
  line-height: 1;
  flex-shrink: 0;
}

.p-tech-proposals__sec-title .ja {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #ffffff;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1;
}

.p-tech-proposals__sec-title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #ffffff;
  flex-shrink: 0;
}

.p-tech-proposals__sec-title .en {
  display: block;
  margin-top: clamp(6px, 0.4166666667vw, 8px);
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.p-tech-proposals__sec-title.--dark .ja {
  color: #292929;
}

.p-tech-proposals__sec-title.--dark .ja::before {
  background-color: #085cac;
}

.p-tech-proposals__sec-title.--dark .en {
  color: #085cac;
}

.p-tech-proposals__sec-copy {
  flex: 1 1 auto;
  width: clamp(604px, 43.75vw, 840px);
  min-width: 0;
  box-sizing: border-box;
}

.p-tech-proposals__sec-catch {
  margin: 0;
  color: #ffffff;
  font-size: clamp(29px, 2.1354166667vw, 41px);
  font-weight: 700;
  line-height: 1.4;
}

.p-tech-proposals__sec-catch.--dark {
  color: #292929;
}

.p-tech-proposals__sec-copy > p:not(.p-tech-proposals__sec-catch) {
  margin: clamp(13px, 0.9375vw, 18px) 0 0;
  color: #ffffff;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.7;
}

.p-tech-proposals__sec-head.--process .p-tech-proposals__sec-copy > p:not(.p-tech-proposals__sec-catch) {
  color: #292929;
  white-space: normal;
}

.p-tech-proposals__cards {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: clamp(11px, 0.9895833333vw, 19px);
  margin: clamp(40px, 3.6458333333vw, 70px) 0 0;
  padding: clamp(15px, 1.3541666667vw, 26px) 0 0;
  list-style: none;
}

.p-tech-proposals__card {
  position: relative;
  flex: 0 0 clamp(206px, 18.75vw, 360px);
  width: clamp(206px, 18.75vw, 360px);
  min-height: clamp(252px, 22.9166666667vw, 440px);
  box-sizing: border-box;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  border: 1px solid #ffffff;
  background: linear-gradient(202.57deg, rgba(255, 255, 255, 0.745) 27.6%, #ffffff 87.3%);
  padding: clamp(6px, 0.5729166667vw, 11px) clamp(7px, 0.6770833333vw, 13px) clamp(17px, 1.5625vw, 30px);
}

.p-tech-proposals__card__num {
  position: absolute;
  top: calc(clamp(15px, 1.3541666667vw, 26px) * -1);
  left: 50%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(42px, 3.8541666667vw, 74px);
  height: clamp(42px, 3.8541666667vw, 74px);
  margin: 0;
  border-radius: 50%;
  background-color: #ffffff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(23px, 2.1354166667vw, 41px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  transform: translateX(-50%);
}

.p-tech-proposals__card__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(191px, 17.3958333333vw, 334px);
  height: clamp(112px, 10.2083333333vw, 196px);
  margin: 0 auto;
  box-sizing: border-box;
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  background: linear-gradient(125.57deg, #aad2ff 0%, #ecf5ff 100%);
  overflow: hidden;
}

.p-tech-proposals__card__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-tech-proposals__card__ttl {
  margin: clamp(21px, 1.9270833333vw, 37px) 0 0;
  color: #085cac;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.p-tech-proposals__card > p:not(.p-tech-proposals__card__num) {
  margin: clamp(7px, 0.625vw, 12px) clamp(8px, 0.7291666667vw, 14px) 0;
  color: #000000;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.7;
}

.p-tech-proposals__card__tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(3px, 0.2604166667vw, 5px);
  margin: clamp(13px, 1.1458333333vw, 22px) 0 0;
  padding: 0;
  list-style: none;
}

.p-tech-proposals__card__tags li {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1px, 0.15625vw, 3px) clamp(7px, 0.6770833333vw, 13px) clamp(3px, 0.2604166667vw, 5px);
  box-sizing: border-box;
  border-radius: clamp(7px, 0.6770833333vw, 13px);
  background-color: #2793e9;
  color: #ffffff;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1;
}

.p-tech-proposals__card__tags li:nth-child(even) {
  background-color: #085cac;
}

@media (max-width: 750px) {
  .p-tech-proposals__proposal {
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(60px, 16vw, 120px);
  }
  .p-tech-proposals__proposal::before {
    background-size: clamp(90px, 24vw, 180px) clamp(90px, 24vw, 180px);
  }
  .p-tech-proposals__proposal-inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__sec-head {
    display: block;
  }
  .p-tech-proposals__sec-title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-tech-proposals__sec-title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-tech-proposals__sec-title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-tech-proposals__sec-copy {
    width: auto;
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__sec-catch {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-tech-proposals__sec-copy > p:not(.p-tech-proposals__sec-catch) {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    white-space: normal;
  }
  .p-tech-proposals__sec-copy > p:not(.p-tech-proposals__sec-catch) br {
    display: none;
  }
  .p-tech-proposals__cards {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(40px, 10.6666666667vw, 80px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    padding-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__card {
    flex: none;
    width: auto;
    min-height: 0;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__card__num {
    top: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
    width: clamp(56px, 14.9333333333vw, 112px);
    height: clamp(56px, 14.9333333333vw, 112px);
    font-size: clamp(30px, 8vw, 60px);
  }
  .p-tech-proposals__card__visual {
    width: auto;
    height: auto;
    border-radius: clamp(5px, 1.3333333333vw, 10px);
    aspect-ratio: 334/196;
  }
  .p-tech-proposals__card__ttl {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-tech-proposals__card > p:not(.p-tech-proposals__card__num) {
    margin: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__card__tags {
    gap: clamp(5px, 1.3333333333vw, 10px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-tech-proposals__card__tags li {
    padding: clamp(4px, 1.2vw, 9px) clamp(12px, 3.2vw, 24px) clamp(6px, 1.4666666667vw, 11px);
    border-radius: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
}
.p-tech-proposals__process {
  padding: clamp(122px, 8.8541666667vw, 170px) 0 clamp(58px, 4.1666666667vw, 80px);
  box-sizing: border-box;
}

.p-tech-proposals__process-inner {
  width: clamp(773px, 70.2604166667vw, 1349px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-tech-proposals__sec-head.--process {
  align-items: flex-start;
}

.p-tech-proposals__sec-head.--process .p-tech-proposals__sec-copy {
  width: clamp(439px, 31.8229166667vw, 611px);
  padding-top: 0;
}

.p-tech-proposals__flow {
  display: flex;
  justify-content: flex-start;
  gap: clamp(25px, 2.2395833333vw, 43px);
  margin: clamp(46px, 4.1666666667vw, 80px) 0 0;
  padding: 0;
  list-style: none;
  position: relative;
}

.p-tech-proposals__flow::before {
  content: "";
  position: absolute;
  top: clamp(74px, 6.7708333333vw, 130px);
  left: clamp(100px, 9.1145833333vw, 175px);
  width: clamp(555px, 50.4166666667vw, 968px);
  height: clamp(23px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  z-index: 0;
}

.p-tech-proposals__flow::after {
  content: "";
  position: absolute;
  top: clamp(85px, 7.7083333333vw, 148px);
  left: clamp(100px, 9.1145833333vw, 175px);
  width: clamp(555px, 50.4166666667vw, 968px);
  height: 3px;
  background-image: radial-gradient(circle, rgba(8, 92, 172, 0.61) 1.5px, rgba(8, 92, 172, 0) 1.6px);
  background-size: 6px 3px;
  background-repeat: repeat-x;
  background-position: 0 0;
  z-index: 0;
}

.p-tech-proposals__flow-item {
  position: relative;
  z-index: 1;
  width: clamp(135px, 12.2395833333vw, 235px);
  height: clamp(139px, 12.65625vw, 243px);
  box-sizing: border-box;
}

.p-tech-proposals__flow-item__num {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(48px, 4.375vw, 84px);
  height: clamp(48px, 4.375vw, 84px);
  margin: 0;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 0 clamp(5px, 0.4166666667vw, 8px) rgba(0, 40, 175, 0.161);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(26px, 2.3958333333vw, 46px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-tech-proposals__flow-item__num span {
  display: block;
  margin-top: -2px;
}

.p-tech-proposals__flow-item__body {
  position: absolute;
  top: clamp(33px, 2.96875vw, 57px);
  left: 0;
  width: clamp(135px, 12.2395833333vw, 235px);
  height: clamp(107px, 9.6875vw, 186px);
  box-sizing: border-box;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #085cac;
  padding: clamp(33px, 3.0208333333vw, 58px) clamp(14px, 1.3020833333vw, 25px) 0;
}

.p-tech-proposals__flow-item__ttl {
  margin: 0;
  color: #ffffff;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-tech-proposals__flow-item__ttl::after {
  content: "";
  display: block;
  width: clamp(105px, 9.5833333333vw, 184px);
  height: 1px;
  margin: clamp(17px, 1.5104166667vw, 29px) auto clamp(10px, 0.9375vw, 18px);
  background-color: #ffffff;
}

.p-tech-proposals__flow-item__body > p {
  margin: 0;
  color: #ffffff;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: clamp(12px, 1.09375vw, 21px);
  text-align: center;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-tech-proposals__flow {
    align-items: stretch;
  }
  html[lang=en] .p-tech-proposals__flow-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-self: stretch;
    height: auto;
  }
  html[lang=en] .p-tech-proposals__flow-item__num {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    flex-shrink: 0;
    margin-bottom: clamp(-24px, -2.1875vw, -42px);
  }
  html[lang=en] .p-tech-proposals__flow-item__body {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    flex-grow: 1;
    height: auto;
    min-height: clamp(107px, 9.6875vw, 186px);
    box-sizing: border-box;
    padding: clamp(33px, 3.0208333333vw, 58px) clamp(14px, 1.3020833333vw, 25px) clamp(14px, 1.3020833333vw, 25px);
  }
}
@media (max-width: 750px) {
  .p-tech-proposals__process {
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(60px, 16vw, 120px);
  }
  .p-tech-proposals__process-inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__sec-head.--process .p-tech-proposals__sec-copy {
    width: auto;
  }
  .p-tech-proposals__flow {
    flex-direction: column;
    gap: clamp(20px, 5.3333333333vw, 40px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-tech-proposals__flow::before {
    top: clamp(20px, 5.3333333333vw, 40px);
    bottom: 0;
    left: calc(50% - clamp(20px, 5.3333333333vw, 40px));
    width: clamp(41px, 10.9333333333vw, 82px);
    height: auto;
  }
  .p-tech-proposals__flow::after {
    top: 0;
    bottom: 0;
    left: calc(50% - clamp(1.5px, 0.4vw, 3px));
    width: clamp(3px, 0.8vw, 6px);
    height: auto;
    background-image: radial-gradient(circle, rgba(8, 92, 172, 0.61) clamp(1.5px, 0.4vw, 3px), rgba(8, 92, 172, 0) clamp(1.6px, 0.4266666667vw, 3.2px));
    background-size: clamp(3px, 0.8vw, 6px) clamp(6px, 1.6vw, 12px);
    background-repeat: repeat-y;
  }
  .p-tech-proposals__flow-item {
    width: auto;
    height: auto;
    padding-top: clamp(30px, 8vw, 60px);
  }
  .p-tech-proposals__flow-item__num {
    width: clamp(60px, 16vw, 120px);
    height: clamp(60px, 16vw, 120px);
    box-shadow: 0 0 clamp(8px, 2.1333333333vw, 16px) rgba(0, 40, 175, 0.161);
    font-size: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-tech-proposals__flow-item__num span {
    margin-top: calc(clamp(2px, 0.5333333333vw, 4px) * -1);
  }
  .p-tech-proposals__flow-item__body {
    position: static;
    width: auto;
    height: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    padding: clamp(42px, 11.2vw, 84px) clamp(20px, 5.3333333333vw, 40px) clamp(22px, 5.8666666667vw, 44px);
  }
  .p-tech-proposals__flow-item__ttl {
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-tech-proposals__flow-item__ttl::after {
    width: clamp(184px, 49.0666666667vw, 368px);
    margin: clamp(15px, 4vw, 30px) auto clamp(12px, 3.2vw, 24px);
  }
  .p-tech-proposals__flow-item__body > p {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(21px, 5.6vw, 42px);
  }
}
.p-tech-proposals__panel {
  background-color: rgba(255, 255, 255, 0.604);
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  padding: clamp(122px, 8.8541666667vw, 170px) 0 clamp(29px, 2.0833333333vw, 40px);
  box-sizing: border-box;
}

.p-tech-proposals__cases-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: clamp(815px, 74.1145833333vw, 1423px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-tech-proposals__cases__intro {
  width: clamp(350px, 31.8229166667vw, 611px);
  box-sizing: border-box;
}

.p-tech-proposals__cases__intro .p-tech-proposals__sec-title .en {
  line-height: 0.85;
}

.p-tech-proposals__cases__intro .p-tech-proposals__sec-catch {
  margin-top: clamp(29px, 2.1354166667vw, 41px);
}

.p-tech-proposals__cases__intro > p:not(.p-tech-proposals__sec-catch) {
  margin: clamp(22px, 1.6145833333vw, 31px) 0 0;
  padding-right: clamp(28px, 2.5vw, 48px);
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.7;
  box-sizing: border-box;
}

.p-tech-proposals__cases__list {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 0.8854166667vw, 17px);
  width: clamp(453px, 41.1458333333vw, 790px);
  margin: 0;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
}

.p-tech-proposals__case {
  width: clamp(453px, 41.1458333333vw, 790px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  overflow: hidden;
}

.p-tech-proposals__case__head {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(46px, 3.3333333333vw, 64px);
  box-sizing: border-box;
  background: linear-gradient(264.45deg, #5099de 0%, #0069cc 43%, #0e6cc4 100%);
}

.p-tech-proposals__case__client {
  display: flex;
  align-items: center;
  gap: clamp(9px, 0.6770833333vw, 13px);
  margin: 0;
  color: #ffffff;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.2;
}

.p-tech-proposals__case__client::before,
.p-tech-proposals__case__client::after {
  content: "";
  display: block;
  width: clamp(14px, 0.9895833333vw, 19px);
  height: 2px;
  background-color: #ffffff;
  flex-shrink: 0;
}

.p-tech-proposals__case__body {
  padding: clamp(23px, 2.0833333333vw, 40px) clamp(24px, 2.1875vw, 42px) clamp(18px, 1.6666666667vw, 32px) clamp(38px, 3.4895833333vw, 67px);
  box-sizing: border-box;
}

.p-tech-proposals__case__ttl {
  margin: 0;
  color: #292929;
  font-size: clamp(20px, 1.4583333333vw, 28px);
  font-weight: 700;
  line-height: 1.4;
}

.p-tech-proposals__case__rows {
  display: flex;
  flex-direction: column;
  gap: clamp(4px, 0.2604166667vw, 5px);
  margin: clamp(17px, 1.1979166667vw, 23px) 0 0;
}

.p-tech-proposals__case__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(8px, 0.5729166667vw, 11px);
  min-height: clamp(24px, 1.71875vw, 33px);
}

.p-tech-proposals__case__row dt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(62px, 4.4791666667vw, 86px);
  height: clamp(24px, 1.71875vw, 33px);
  margin: 0;
  padding-bottom: 0.05em;
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(17px, 1.1979166667vw, 23px);
  color: #085cac;
  font-size: clamp(11px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1;
}

.p-tech-proposals__case__row:last-child dt {
  border-color: transparent;
  background-color: #085cac;
  color: #ffffff;
}

.p-tech-proposals__case__row dd {
  margin: 0;
  padding-top: clamp(3px, 0.2083333333vw, 4px);
  color: #292929;
  font-size: clamp(11.5px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.6;
}

.p-tech-proposals__panel .c-breadcrumb {
  margin-top: clamp(65px, 4.6875vw, 90px);
}

@media (max-width: 750px) {
  .p-tech-proposals__panel {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(60px, 16vw, 120px) 0 clamp(30px, 8vw, 60px);
  }
  .p-tech-proposals__cases-inner {
    display: block;
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__cases__intro {
    width: auto;
  }
  .p-tech-proposals__cases__intro .p-tech-proposals__sec-title .en {
    line-height: clamp(45px, 12vw, 90px);
  }
  .p-tech-proposals__cases__intro .p-tech-proposals__sec-catch {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__cases__intro > p:not(.p-tech-proposals__sec-catch) {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-tech-proposals__cases__intro > p:not(.p-tech-proposals__sec-catch) br {
    display: none;
  }
  .p-tech-proposals__cases__list {
    gap: clamp(15px, 4vw, 30px);
    width: auto;
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-tech-proposals__case {
    width: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-tech-proposals__case__head {
    height: clamp(50px, 13.3333333333vw, 100px);
  }
  html[lang=en] .p-tech-proposals__case__head {
    height: auto;
    min-height: clamp(50px, 13.3333333333vw, 100px);
    padding: clamp(14px, 3.7333333333vw, 28px) clamp(16px, 4.2666666667vw, 32px);
  }
  .p-tech-proposals__case__client {
    gap: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-tech-proposals__case__client {
    line-height: 1.4;
  }
  .p-tech-proposals__case__client::before,
  .p-tech-proposals__case__client::after {
    width: clamp(12px, 3.2vw, 24px);
    height: clamp(2px, 0.5333333333vw, 4px);
  }
  .p-tech-proposals__case__body {
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-tech-proposals__case__ttl {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-tech-proposals__case__rows {
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-tech-proposals__case__row {
    gap: clamp(10px, 2.6666666667vw, 20px);
    min-height: 0;
  }
  .p-tech-proposals__case__row dt {
    width: clamp(72px, 19.2vw, 144px);
    height: clamp(26px, 6.9333333333vw, 52px);
    border-radius: clamp(23px, 6.1333333333vw, 46px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-tech-proposals__case__row dd {
    padding-top: clamp(1px, 0.2666666667vw, 2px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-tech-proposals__panel .c-breadcrumb {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
}
.p-network__global {
  position: relative;
  width: calc(100% - clamp(29px, 2.6041666667vw, 50px));
  margin: 0 auto;
  padding: clamp(143px, 13.0208333333vw, 250px) 0 clamp(69px, 6.25vw, 120px);
  box-sizing: border-box;
  color: #ffffff;
  font-weight: 700;
}

.p-network__global::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #00498e;
  background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(76px, 6.875vw, 132px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(76px, 6.875vw, 132px));
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 2554' preserveAspectRatio='none'%3E%3Cpath fill='%23000' d='M787.289 103.463L787.289 11.34C787.29 5.078 782.215 0.001 775.953 0H11.339C5.077 0 0 5.075 0 11.337V2542.664C0 2548.925 5.077 2554 11.338 2554H1858.661C1864.924 2554 1870.002 2548.924 1870.003 2542.661V126.14C1870.001 119.878 1864.926 114.801 1858.664 114.8H798.628C792.366 114.8 787.289 109.723 787.289 103.461Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 2554' preserveAspectRatio='none'%3E%3Cpath fill='%23000' d='M787.289 103.463L787.289 11.34C787.29 5.078 782.215 0.001 775.953 0H11.339C5.077 0 0 5.075 0 11.337V2542.664C0 2548.925 5.077 2554 11.338 2554H1858.661C1864.924 2554 1870.002 2548.924 1870.003 2542.661V126.14C1870.001 119.878 1864.926 114.801 1858.664 114.8H798.628C792.366 114.8 787.289 109.723 787.289 103.461Z'/%3E%3C/svg%3E");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  pointer-events: none;
}

.p-network__global-inner {
  position: relative;
  z-index: 1;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-network__global-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: clamp(23px, 2.0833333333vw, 40px);
}

.p-network__global-title {
  margin: 0;
  line-height: 1;
  flex-shrink: 0;
}

.p-network__global-title .ja {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  color: #ffffff;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1;
}

.p-network__global-title .ja::before {
  content: "";
  display: block;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #ffffff;
  flex-shrink: 0;
}

.p-network__global-title .en {
  display: block;
  margin-top: clamp(6px, 0.5729166667vw, 11px);
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(62px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
  white-space: nowrap;
}

.p-network__global-lead {
  width: clamp(394px, 35.78125vw, 687px);
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-network__global-lead__ttl {
  margin: 0;
  color: #ffffff;
  font-size: clamp(23px, 2.1354166667vw, 41px);
  font-weight: 700;
  line-height: 1.37;
}

.p-network__global-lead > p:not(.p-network__global-lead__ttl) {
  margin: clamp(7px, 0.625vw, 12px) 0 0;
  color: #ffffff;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 2.1;
  white-space: nowrap;
}

.p-network__cards {
  margin-top: clamp(47px, 4.2708333333vw, 82px);
  display: flex;
  flex-direction: column;
  gap: clamp(85px, 7.7604166667vw, 149px);
}

.p-network__card {
  position: relative;
}

.p-network__arrow.--lg {
  position: absolute;
  left: 50%;
  top: 100%;
  z-index: 2;
  display: block;
  width: clamp(93px, 8.4895833333vw, 163px);
  height: clamp(40px, 3.59375vw, 69px);
  margin-top: clamp(22px, 1.9791666667vw, 38px);
  transform: translateX(-50%);
  pointer-events: none;
}

.p-network__arrow.--lg img {
  display: block;
  width: 100%;
  height: auto;
}

.p-network__arrows {
  position: absolute;
  left: 50%;
  top: 100%;
  z-index: 2;
  display: flex;
  gap: clamp(22px, 1.9791666667vw, 38px);
  width: clamp(239px, 21.7708333333vw, 418px);
  margin-top: clamp(25px, 2.2916666667vw, 44px);
  transform: translateX(-50%);
  pointer-events: none;
}

.p-network__arrows img {
  display: block;
  width: clamp(65px, 5.9375vw, 114px);
  height: auto;
  flex-shrink: 0;
}

.p-network__card__panel {
  position: relative;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  box-sizing: border-box;
}

.p-network__card.--japan .p-network__card__panel {
  padding: clamp(31px, 2.8125vw, 54px) clamp(31px, 2.8125vw, 54px) clamp(30px, 2.7604166667vw, 53px) 0;
  height: clamp(307px, 27.9166666667vw, 536px);
}

.p-network__card.--asia .p-network__card__panel {
  position: relative;
  padding: clamp(41px, 3.6979166667vw, 71px) clamp(31px, 2.8125vw, 54px) clamp(31px, 2.8125vw, 54px);
  height: clamp(323px, 29.375vw, 564px);
  overflow: hidden;
}

.p-network__card.--world .p-network__card__panel {
  padding: clamp(52px, 4.6875vw, 90px) 0 0;
  height: clamp(307px, 27.9166666667vw, 536px);
  overflow: hidden;
}

.p-network__card__badge {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  height: clamp(41px, 3.6979166667vw, 71px);
  padding: 0 clamp(23px, 2.0833333333vw, 40px);
  box-sizing: border-box;
  border-radius: clamp(3px, 0.2604166667vw, 5px) 0 clamp(3px, 0.2604166667vw, 5px) 0;
  background-color: #292929;
  color: #ffffff;
  font-size: clamp(17px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1;
}

.p-network__card.--japan .p-network__card__badge {
  min-width: clamp(94px, 8.5416666667vw, 164px);
}

.p-network__card.--asia .p-network__card__badge {
  min-width: clamp(190px, 17.2916666667vw, 332px);
}

.p-network__card.--world .p-network__card__badge {
  min-width: clamp(162px, 14.6875vw, 282px);
}

.p-network__card__body {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(17px, 1.5625vw, 30px);
}

.p-network__card.--asia .p-network__card__body {
  justify-content: flex-end;
  align-items: flex-end;
  min-height: clamp(252px, 22.8645833333vw, 439px);
}

.p-network__card.--world .p-network__card__body {
  display: block;
}

.p-network__map {
  position: relative;
  flex-shrink: 0;
}

.p-network__map img {
  display: block;
  width: 100%;
  height: auto;
}

.p-network__map.--japan {
  position: absolute;
  left: 0;
  top: clamp(-68px, -4.8958333333vw, -94px);
  width: clamp(403px, 36.6666666667vw, 704px);
  margin: 0;
  z-index: 1;
}

.p-network__map.--asia {
  position: absolute;
  left: clamp(107px, 9.6875vw, 186px);
  top: clamp(-119px, -8.59375vw, -165px);
  width: clamp(507px, 46.09375vw, 885px);
  margin: 0;
  z-index: 0;
}

.p-network__map.--world {
  position: absolute;
  left: clamp(70px, 6.40625vw, 123px);
  top: clamp(-22px, -1.6145833333vw, -31px);
  width: clamp(661px, 60.1041666667vw, 1154px);
  margin: 0;
  z-index: 0;
  pointer-events: none;
}

.p-network__card.--japan .p-network__services {
  margin-left: auto;
}

.p-network__services {
  width: clamp(435px, 39.5833333333vw, 760px);
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: clamp(9px, 0.78125vw, 15px);
  flex-shrink: 0;
}

.p-network__service {
  display: flex;
  align-items: center;
  gap: clamp(17px, 1.5104166667vw, 29px);
  height: clamp(76px, 6.9270833333vw, 133px);
  padding: 0 clamp(21px, 1.875vw, 36px);
  box-sizing: border-box;
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  background-color: #ffffff;
  box-shadow: 0 0 clamp(2px, 0.15625vw, 3px) rgba(0, 0, 0, 0.161);
}

.p-network__service__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(48px, 4.375vw, 84px);
  height: clamp(48px, 4.375vw, 84px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-network__service__icon img {
  display: block;
  width: clamp(26px, 2.3958333333vw, 46px);
  height: auto;
}

.p-network__service__text {
  min-width: 0;
}

.p-network__service__ttl {
  margin: 0;
  color: #085cac;
  font-size: clamp(15px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1.4;
}

.p-network__service__text > p:not(.p-network__service__ttl) {
  margin: clamp(2px, 0.2083333333vw, 4px) 0 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.4;
}

.p-network__card__copy {
  width: clamp(241px, 21.875vw, 420px);
  flex-shrink: 0;
  padding-bottom: clamp(23px, 2.0833333333vw, 40px);
  box-sizing: border-box;
  color: #292929;
}

.p-network__card.--asia .p-network__card__copy {
  position: relative;
  z-index: 1;
  width: clamp(298px, 27.0833333333vw, 520px);
  padding-bottom: clamp(9px, 0.8333333333vw, 16px);
}

.p-network__card__ttl {
  margin: 0;
  color: #085cac;
  font-size: clamp(17px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1.37;
}

.p-network__card__copy > p {
  margin: clamp(7px, 0.625vw, 12px) 0 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.4;
}

.p-network__card__copy.--world {
  position: relative;
  z-index: 1;
  width: clamp(401px, 36.4583333333vw, 700px);
  margin: 0 auto;
  padding-bottom: 0;
  text-align: center;
}

.p-network__card__copy.--world .p-network__card__ttl {
  font-size: clamp(25px, 2.2395833333vw, 43px);
  line-height: 1.67;
}

.p-network__card__copy.--world > p {
  margin-top: clamp(7px, 0.625vw, 12px);
  color: #000000;
  font-size: clamp(10px, 0.9375vw, 18px);
}

.p-network__globe {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(102px, 9.2708333333vw, 178px);
  height: clamp(102px, 9.2708333333vw, 178px);
  margin: 0 auto clamp(13px, 1.1979166667vw, 23px);
  border-radius: 50%;
  background: linear-gradient(180deg, #2793e9 0%, #085cac 100%);
  box-sizing: border-box;
}

.p-network__globe img {
  display: block;
  width: clamp(68px, 6.1458333333vw, 118px);
  height: auto;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-network__card.--world .p-network__card__panel {
    height: auto;
    min-height: clamp(307px, 27.9166666667vw, 536px);
    padding-bottom: clamp(30px, 2.7604166667vw, 53px);
    box-sizing: border-box;
  }
  html[lang=en] .p-network__card.--world .p-network__card__body {
    box-sizing: border-box;
    padding-left: clamp(31px, 2.8125vw, 54px);
    padding-right: clamp(31px, 2.8125vw, 54px);
    min-width: 0;
  }
  html[lang=en] .p-network__card__copy.--world {
    width: 100%;
    max-width: clamp(401px, 36.4583333333vw, 700px);
    padding-bottom: clamp(23px, 2.0833333333vw, 40px);
    box-sizing: border-box;
  }
  html[lang=en] .p-network__card__copy.--world .p-network__card__ttl,
  html[lang=en] .p-network__card__copy.--world > p {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 750px) {
  .p-network__global {
    width: auto;
    margin: 0 clamp(11px, 2.9333333333vw, 22px);
    padding: clamp(60px, 16vw, 120px) 0;
  }
  .p-network__global::before {
    border-radius: clamp(2px, 0.5333333333vw, 4px);
    background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px));
    -webkit-mask-image: none;
    mask-image: none;
  }
  .p-network__global-inner {
    width: auto;
    margin: 0 clamp(12px, 3.2vw, 24px);
  }
  .p-network__global-head {
    display: block;
  }
  .p-network__global-title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-network__global-title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-network__global-title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
    white-space: normal;
  }
  .p-network__global-lead {
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-network__global-lead__ttl {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-network__global-lead > p:not(.p-network__global-lead__ttl) {
    margin-top: clamp(11px, 2.9333333333vw, 22px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    white-space: normal;
  }
  .p-network__global-lead > p br {
    display: none;
  }
  .p-network__cards {
    margin-top: clamp(60px, 16vw, 120px);
    gap: clamp(60px, 16vw, 120px);
  }
  .p-network__arrow.--lg {
    width: clamp(80px, 21.3333333333vw, 160px);
    height: clamp(34px, 9.0666666667vw, 68px);
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-network__arrows {
    gap: clamp(14px, 3.7333333333vw, 28px);
    width: clamp(160px, 42.6666666667vw, 320px);
    margin-top: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-network__arrows img {
    width: clamp(44px, 11.7333333333vw, 88px);
  }
  .p-network__card__panel {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-network__card.--japan .p-network__card__panel,
  .p-network__card.--asia .p-network__card__panel {
    height: auto;
    padding: 0 0 clamp(15px, 4vw, 30px);
  }
  .p-network__card.--world .p-network__card__panel {
    height: auto;
    padding: clamp(70px, 18.6666666667vw, 140px) clamp(15px, 4vw, 30px) clamp(30px, 8vw, 60px);
  }
  .p-network__card__badge,
  .p-network__card.--japan .p-network__card__badge,
  .p-network__card.--asia .p-network__card__badge,
  .p-network__card.--world .p-network__card__badge {
    min-width: 0;
    height: clamp(36px, 9.6vw, 72px);
    padding: 0 clamp(15px, 4vw, 30px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 clamp(5px, 1.3333333333vw, 10px) 0;
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-network__card__body,
  .p-network__card.--asia .p-network__card__body {
    display: block;
    min-height: 0;
  }
  .p-network__map.--japan,
  .p-network__map.--asia {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
  }
  .p-network__map.--japan {
    margin-top: calc(clamp(25px, 6.6666666667vw, 50px) * -1);
  }
  .p-network__map.--world {
    left: calc(clamp(100px, 26.6666666667vw, 200px) * -1);
    top: 0;
    width: clamp(540px, 144vw, 1080px);
  }
  .p-network__card.--japan .p-network__services {
    margin: clamp(15px, 4vw, 30px) clamp(15px, 4vw, 30px) 0;
  }
  .p-network__services {
    width: auto;
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-network__service {
    gap: clamp(12px, 3.2vw, 24px);
    height: auto;
    padding: clamp(15px, 4vw, 30px);
    border-radius: clamp(4px, 1.0666666667vw, 8px);
    box-shadow: 0 0 clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
  }
  .p-network__service__icon {
    width: clamp(50px, 13.3333333333vw, 100px);
    height: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-network__service__icon img {
    width: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-network__service__ttl {
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-network__service__text > p:not(.p-network__service__ttl) {
    margin-top: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: 1.6;
  }
  .p-network__card__copy,
  .p-network__card.--asia .p-network__card__copy {
    width: auto;
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(15px, 4vw, 30px) clamp(10px, 2.6666666667vw, 20px);
  }
  .p-network__card__ttl {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-network__card__copy > p {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-network__card__copy > p br {
    display: none;
  }
  .p-network__card__copy.--world {
    width: auto;
    padding: 0;
  }
  .p-network__card__copy.--world .p-network__card__ttl {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-network__card__copy.--world > p {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    text-align: left;
  }
  .p-network__globe {
    width: clamp(90px, 24vw, 180px);
    height: clamp(90px, 24vw, 180px);
    margin-bottom: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-network__globe img {
    width: clamp(60px, 16vw, 120px);
  }
}
.p-network__offices {
  padding: clamp(133px, 9.6354166667vw, 185px) 0 clamp(29px, 2.0833333333vw, 40px);
  margin-top: clamp(30px, 2.1875vw, 42px);
  box-sizing: border-box;
}

.p-network__offices-inner {
  width: clamp(815px, 74.0625vw, 1422px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-network__offices-title {
  margin: 0;
  text-align: center;
  line-height: 1;
}

.p-network__offices-title .ja {
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1;
}

.p-network__offices-title .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-network__offices-title .en {
  display: block;
  margin-top: clamp(8px, 0.5729166667vw, 11px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
}

.p-network__offices-heading {
  display: flex;
  align-items: center;
  gap: clamp(8px, 0.5729166667vw, 11px);
  margin: clamp(46px, 3.3333333333vw, 64px) 0 0;
  color: #000000;
  font-size: clamp(22px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1;
}

.p-network__offices-heading::before {
  content: "";
  display: block;
  width: clamp(9px, 0.625vw, 12px);
  height: clamp(9px, 0.625vw, 12px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-network__office-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(16px, 1.1458333333vw, 22px);
  margin: clamp(33px, 2.3958333333vw, 46px) 0 0;
  padding: 0;
  list-style: none;
}

.p-network__office-list.--overseas {
  gap: clamp(22px, 1.6145833333vw, 31px) clamp(16px, 1.1458333333vw, 22px);
}

.p-network__office {
  position: relative;
  width: clamp(244px, 17.65625vw, 339px);
  box-sizing: border-box;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  box-shadow: 0 clamp(2px, 0.15625vw, 3px) clamp(2px, 0.15625vw, 3px) rgba(0, 0, 0, 0.161);
}

.p-network__office__visual {
  position: relative;
  width: 100%;
  height: clamp(152px, 11.0416666667vw, 212px);
  border-radius: clamp(7px, 0.5208333333vw, 10px) clamp(7px, 0.5208333333vw, 10px) 0 0;
}

.p-network__office__visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  vertical-align: top;
}

.p-network__office__visual.--hongkong img {
  object-position: center bottom;
}

.p-network__office__visual.--shenzhen img,
.p-network__office__visual.--shanghai img {
  object-position: center 10%;
}

.p-network__office__map {
  position: absolute;
  right: clamp(6px, 0.4166666667vw, 8px);
  bottom: clamp(6px, 0.46875vw, 9px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(74px, 5.3645833333vw, 103px);
  height: clamp(27px, 1.9270833333vw, 37px);
  box-sizing: content-box;
  border: 1px solid #ffffff;
  border-radius: clamp(14px, 0.9895833333vw, 19px);
  background-color: #085cac;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(10px, 0.7291666667vw, 14px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.p-network__office__badge {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  width: clamp(43px, 3.125vw, 60px);
  height: clamp(27px, 1.9270833333vw, 37px);
  box-sizing: border-box;
  border-radius: clamp(7px, 0.5208333333vw, 10px) 0 clamp(7px, 0.5208333333vw, 10px) 0;
  background-color: #2793e9;
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1;
}

.p-network__office__badge.--wide {
  width: clamp(54px, 3.90625vw, 75px);
}

.p-network__office__body {
  padding: clamp(19px, 1.40625vw, 27px) clamp(12px, 0.8854166667vw, 17px) clamp(14px, 1.0416666667vw, 20px);
  box-sizing: border-box;
  text-align: left;
}

.p-network__office__name {
  margin: 0 0 clamp(11px, 0.78125vw, 15px);
  color: #085cac;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-network__office__body > p {
  margin: 0;
  color: #000000;
  font-size: clamp(11px, 0.78125vw, 15px);
  line-height: 1.4;
}

.p-network__office__tel,
.p-network__office__fax {
  display: flex;
  align-items: center;
  gap: clamp(4px, 0.3125vw, 6px);
}

.p-network__office__tel img,
.p-network__office__fax img {
  display: block;
  width: clamp(10px, 0.7291666667vw, 14px);
  height: auto;
  flex-shrink: 0;
}

.p-network__office__body .p-profile__info__tabelog {
  margin-top: clamp(8px, 0.5729166667vw, 11px);
  color: #000000;
  font-size: clamp(11px, 0.78125vw, 15px);
  line-height: 1.4;
}

.p-network__offices .c-cta {
  margin-top: clamp(55px, 3.9583333333vw, 76px);
}

.p-network__offices .c-cta__text {
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.875;
}

@media (max-width: 750px) {
  .p-network__offices {
    margin-top: 0;
    padding: clamp(70px, 18.6666666667vw, 140px) 0 0;
  }
  .p-network__offices-inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-network__offices-title .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-network__offices-title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-network__offices-title .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-network__offices-heading {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-network__offices-heading::before {
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-network__office-list,
  .p-network__office-list.--overseas {
    flex-direction: column;
    gap: clamp(15px, 4vw, 30px);
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-network__office {
    width: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
  }
  .p-network__office__visual {
    height: clamp(200px, 53.3333333333vw, 400px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-network__office__map {
    right: clamp(10px, 2.6666666667vw, 20px);
    bottom: clamp(10px, 2.6666666667vw, 20px);
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(34px, 9.0666666667vw, 68px);
    border-radius: clamp(17px, 4.5333333333vw, 34px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-network__office__badge {
    width: clamp(56px, 14.9333333333vw, 112px);
    height: clamp(32px, 8.5333333333vw, 64px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 clamp(10px, 2.6666666667vw, 20px) 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-network__office__badge.--wide {
    width: clamp(70px, 18.6666666667vw, 140px);
  }
  html[lang=en] .p-network__office__badge,
  html[lang=en] .p-network__office__badge.--wide {
    width: auto;
    padding-left: clamp(10px, 2.6666666667vw, 20px);
    padding-right: clamp(10px, 2.6666666667vw, 20px);
    white-space: nowrap;
  }
  .p-network__office__body {
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) clamp(22px, 5.8666666667vw, 44px);
  }
  .p-network__office__name {
    margin-bottom: clamp(12px, 3.2vw, 24px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: 1.4;
  }
  .p-network__office__body > p {
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: 1.6;
  }
  .p-network__office__tel,
  .p-network__office__fax {
    gap: clamp(6px, 1.6vw, 12px);
  }
  .p-network__office__tel img,
  .p-network__office__fax img {
    width: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-network__offices .c-cta {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-network__offices .c-cta__text {
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
@media (min-width: 750.11px) and (min-width: 750.11px) {
  .p-network__office__map:hover {
    opacity: 0.7;
  }
}
.p-strengths {
  position: relative;
  width: calc(100% - clamp(29px, 2.6041666667vw, 50px));
  margin: 0 auto;
  padding: clamp(117px, 10.625vw, 204px) 0 clamp(85px, 7.7083333333vw, 148px);
  box-sizing: border-box;
  color: #ffffff;
}

.p-strengths::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #00498e;
  background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(76px, 6.875vw, 132px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(76px, 6.875vw, 132px));
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 2894' preserveAspectRatio='none'%3E%3Cpath fill='%23000' d='M787.289 103.463L787.289 11.34C787.29 5.078 782.215 0 775.953 0H11.339C5.077 0 0 5.075 0 11.337V2882.664C0 2888.925 5.077 2894 11.338 2894H1858.661C1864.924 2894 1870 2888.924 1870 2882.661V126.14C1870 119.878 1864.926 114.801 1858.664 114.8H798.628C792.366 114.8 787.289 109.723 787.289 103.461Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 2894' preserveAspectRatio='none'%3E%3Cpath fill='%23000' d='M787.289 103.463L787.289 11.34C787.29 5.078 782.215 0 775.953 0H11.339C5.077 0 0 5.075 0 11.337V2882.664C0 2888.925 5.077 2894 11.338 2894H1858.661C1864.924 2894 1870 2888.924 1870 2882.661V126.14C1870 119.878 1864.926 114.801 1858.664 114.8H798.628C792.366 114.8 787.289 109.723 787.289 103.461Z'/%3E%3C/svg%3E");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  pointer-events: none;
}

.p-strengths__inner {
  position: relative;
  z-index: 1;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-strengths__intro {
  display: flex;
  align-items: flex-start;
}

.p-strengths__intro-ttl {
  width: clamp(317px, 28.8541666667vw, 554px);
  margin: 0;
  color: #ffffff;
  font-size: clamp(23px, 2.1354166667vw, 41px);
  font-weight: 700;
  line-height: 1.37;
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-strengths__intro-lead {
  margin: clamp(57px, 5.2083333333vw, 100px) 0 0;
  color: #ffffff;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 2.1;
  box-sizing: border-box;
}

html[lang=en] .p-strengths__intro {
  gap: clamp(29px, 2.6041666667vw, 50px);
}

.p-strengths__tabs {
  display: flex;
  gap: clamp(14px, 1.3020833333vw, 25px);
  margin: clamp(57px, 5.2083333333vw, 100px) 0 0;
  padding: 0;
  list-style: none;
}

.p-strengths__tabs > li {
  width: clamp(258px, 23.4375vw, 450px);
  flex-shrink: 0;
}

.p-strengths__tab {
  position: relative;
  display: block;
  height: clamp(119px, 10.78125vw, 207px);
  margin-top: clamp(23px, 2.1354166667vw, 41px);
  padding: clamp(21px, 1.9270833333vw, 37px) clamp(16px, 1.4583333333vw, 28px) 0 clamp(26px, 2.34375vw, 45px);
  border: 1px solid rgba(255, 255, 255, 0.435);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background: linear-gradient(123.09deg, #5099de 0%, #0069cc 43.11%, #0e6cc4 100%);
  color: #ffffff;
  text-decoration: none;
  box-sizing: border-box;
  transition: transform 0.4s var(--easing), border-color 0.4s var(--easing), box-shadow 0.4s var(--easing);
}

.p-strengths__tab__icon {
  position: absolute;
  top: calc(clamp(23px, 2.1354166667vw, 41px) * -1);
  right: clamp(13px, 1.1979166667vw, 23px);
  width: clamp(96px, 8.6979166667vw, 167px);
  height: clamp(89px, 8.125vw, 156px);
  pointer-events: none;
}

.p-strengths__tab.--speed .p-strengths__tab__icon {
  top: calc(clamp(11px, 1.0416666667vw, 20px) * -1);
  right: clamp(17px, 1.5625vw, 30px);
  width: clamp(106px, 9.6354166667vw, 185px);
  height: clamp(89px, 8.125vw, 156px);
}

.p-strengths__tab.--people .p-strengths__tab__icon {
  top: calc(clamp(9px, 0.8333333333vw, 16px) * -1);
  right: clamp(11px, 0.9895833333vw, 19px);
  width: clamp(95px, 8.59375vw, 165px);
  height: clamp(93px, 8.4895833333vw, 163px);
}

.p-strengths__tab__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.4s var(--easing);
}

.p-strengths__tab__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}

.p-strengths__tab__label {
  display: flex;
  align-items: center;
  height: clamp(15px, 1.40625vw, 27px);
  padding: 0 clamp(3px, 0.3125vw, 6px);
  background-color: #ecf5ff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  box-sizing: border-box;
}

.p-strengths__tab__ttl {
  display: block;
  margin-top: clamp(15px, 1.3541666667vw, 26px);
  color: #ffffff;
  font-size: clamp(16px, 1.4583333333vw, 28px);
  font-weight: 700;
  line-height: clamp(22px, 2.03125vw, 39px);
}

html[lang=en] .p-strengths__tab {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 0;
  padding-bottom: 0;
}

html[lang=en] .p-strengths__tab__ttl {
  margin-top: clamp(6px, 0.5208333333vw, 10px);
}

html[lang=en] .p-strengths__tab.--network .p-strengths__tab__icon {
  top: calc(clamp(16px, 1.4583333333vw, 28px) * -1);
  right: clamp(28px, 2.5vw, 48px);
}

.p-strengths__tab__arrow {
  position: absolute;
  right: clamp(78px, 7.0833333333vw, 136px);
  bottom: clamp(23px, 2.0833333333vw, 40px);
  width: clamp(19px, 1.7708333333vw, 34px);
  height: clamp(19px, 1.7708333333vw, 34px);
  border-radius: 50%;
  background-color: #ffffff;
}

.p-strengths__tab.--network .p-strengths__tab__arrow,
.p-strengths__tab.--speed .p-strengths__tab__arrow,
.p-strengths__tab.--people .p-strengths__tab__arrow {
  position: relative;
  display: inline-block;
  right: auto;
  bottom: auto;
  margin-left: clamp(9px, 0.8333333333vw, 16px);
  vertical-align: middle;
}

.p-strengths__tab__arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(7px, 0.625vw, 12px);
  height: clamp(7px, 0.625vw, 12px);
  background: url("../img/strengths/tab_arrow.svg") center/contain no-repeat;
  transform: translate(-50%, -45%);
}

@media (min-width: 750.11px) {
  .p-strengths__tab:hover {
    opacity: 1;
    border-color: #ffffff;
    box-shadow: 0 clamp(6px, 0.5208333333vw, 10px) clamp(12px, 1.0416666667vw, 20px) rgba(0, 0, 0, 0.2);
    transform: translateY(calc(clamp(4px, 0.3125vw, 6px) * -1));
  }
  .p-strengths__tab:hover .p-strengths__tab__icon img {
    transform: translateY(calc(clamp(5px, 0.4166666667vw, 8px) * -1));
  }
  .p-strengths__tab:hover .p-strengths__tab__arrow::before {
    animation: p-strengths-tab-arrow 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  }
}
@keyframes p-strengths-tab-arrow {
  30% {
    opacity: 0;
    transform: translate(-50%, 55%);
  }
  31%, 40% {
    opacity: 0;
    transform: translate(-50%, -145%);
  }
}
.p-strengths__feature {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: clamp(914px, 83.0729166667vw, 1595px);
  margin-top: clamp(29px, 2.6041666667vw, 50px);
  box-sizing: border-box;
}

.p-strengths__feature:first-of-type {
  margin-top: clamp(69px, 6.25vw, 120px);
}

.p-strengths__feature.--reverse {
  flex-direction: row-reverse;
  width: clamp(914px, 83.125vw, 1596px);
  margin-left: calc(clamp(112px, 10.2083333333vw, 196px) * -1);
}

.p-strengths__feature__copy {
  width: clamp(209px, 19.0104166667vw, 365px);
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-strengths__feature__num {
  margin: 0;
  color: #ecf5ff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(80px, 7.2916666667vw, 140px);
  font-weight: 700;
  font-style: italic;
  line-height: 1.33;
}

.p-strengths__feature__ttl {
  margin: clamp(1px, 0.1041666667vw, 2px) 0 0;
  color: #ecf5ff;
  font-size: clamp(20px, 1.8229166667vw, 35px);
  font-weight: 700;
  line-height: 1.43;
  white-space: nowrap;
}

.p-strengths__feature__copy > p:not(.p-strengths__feature__num) {
  margin: clamp(8px, 0.7291666667vw, 14px) 0 0;
  color: #ecf5ff;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.7;
}

.p-strengths__feature__link {
  position: absolute;
  right: clamp(23px, 2.0833333333vw, 40px);
  bottom: clamp(21px, 1.875vw, 36px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  width: clamp(148px, 13.4895833333vw, 259px);
  height: clamp(46px, 4.21875vw, 81px);
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-strengths__feature__link img {
  display: block;
  width: clamp(9px, 0.8333333333vw, 16px);
  height: clamp(9px, 0.8333333333vw, 16px);
}

@media (min-width: 750.11px) {
  .p-strengths__feature__link:hover {
    background-color: #292929;
    opacity: 1;
  }
}
.p-strengths__feature__visual {
  position: relative;
  width: clamp(642px, 58.3854166667vw, 1121px);
  height: clamp(356px, 32.3958333333vw, 622px);
  flex-shrink: 0;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  box-sizing: border-box;
}

.p-strengths__feature__visual.--map {
  background-color: #cbe4ff;
}

.p-strengths__feature__visual.--map img {
  position: absolute;
  left: clamp(70px, 6.3541666667vw, 122px);
  top: calc(clamp(47px, 4.2708333333vw, 82px) * -1);
  width: clamp(539px, 48.9583333333vw, 940px);
  height: auto;
  max-width: none;
}

.p-strengths__feature__visual.--photo {
  overflow: hidden;
}

.p-strengths__feature__visual.--photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-strengths__feature__visual.--cycle {
  background-color: #cbe4ff;
  overflow: hidden;
}

.p-strengths__feature__cycle {
  position: absolute;
  left: clamp(156px, 14.21875vw, 273px);
  top: clamp(23px, 2.0833333333vw, 40px);
  transform: scale(calc(clamp(338px, 30.7291666667vw, 590px) / 590px));
}

.p-strengths__feature__cycle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(215.64deg, #ecf5ff 10%, #cbe4ff 55%, #b7d7fa 91%);
  -webkit-mask-image: url("../img/strengths/feature_cycle_path.png");
  mask-image: url("../img/strengths/feature_cycle_path.png");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  mix-blend-mode: multiply;
}

@media (max-width: 750px) {
  .p-strengths {
    width: auto;
    margin: 0 clamp(11px, 2.9333333333vw, 22px);
    padding: clamp(60px, 16vw, 120px) 0;
  }
  .p-strengths::before {
    border-radius: clamp(2px, 0.5333333333vw, 4px);
    background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.08) 0, rgba(255, 255, 255, 0.08) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px));
    -webkit-mask-image: none;
    mask-image: none;
  }
  .p-strengths__inner {
    width: auto;
    margin: 0 clamp(12px, 3.2vw, 24px);
  }
  .p-strengths__intro {
    display: block;
    text-align: center;
  }
  .p-strengths__intro-ttl {
    width: auto;
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-strengths__intro-lead {
    margin-top: clamp(11px, 2.9333333333vw, 22px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-strengths__intro-lead br {
    display: none;
  }
  .p-strengths__tabs {
    flex-direction: column;
    gap: clamp(15px, 4vw, 30px);
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-strengths__tabs > li {
    width: auto;
  }
  .p-strengths__tab {
    height: auto;
    margin-top: 0;
    padding: clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  html[lang=en] .p-strengths__tab {
    display: block;
    padding: clamp(20px, 5.3333333333vw, 40px);
  }
  html[lang=en] .p-strengths__tab__ttl {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-strengths__tab__icon,
  .p-strengths__tab.--speed .p-strengths__tab__icon,
  .p-strengths__tab.--people .p-strengths__tab__icon {
    top: 50%;
    right: clamp(20px, 5.3333333333vw, 40px);
    width: clamp(76px, 20.2666666667vw, 152px);
    height: clamp(70px, 18.6666666667vw, 140px);
    transform: translateY(-50%);
  }
  .p-strengths__tab__label {
    height: clamp(22px, 5.8666666667vw, 44px);
    padding: 0 clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-strengths__tab__ttl {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths__tab__arrow {
    right: auto;
    left: clamp(173px, 46.1333333333vw, 346px);
    bottom: clamp(21.5px, 5.7333333333vw, 43px);
    width: clamp(22px, 5.8666666667vw, 44px);
    height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-strengths__tab.--network .p-strengths__tab__arrow,
  .p-strengths__tab.--speed .p-strengths__tab__arrow,
  .p-strengths__tab.--people .p-strengths__tab__arrow {
    left: auto;
    margin-left: clamp(9px, 2.4vw, 18px);
  }
  .p-strengths__tab__arrow::before {
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-strengths__feature,
  .p-strengths__feature.--reverse,
  .p-strengths__feature:first-of-type {
    display: block;
    width: auto;
    margin: clamp(60px, 16vw, 120px) 0 0;
  }
  .p-strengths__feature__copy {
    width: auto;
  }
  .p-strengths__feature__num {
    font-size: clamp(70px, 18.6666666667vw, 140px);
    line-height: 1.2;
  }
  .p-strengths__feature__ttl {
    margin-top: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
    white-space: normal;
  }
  .p-strengths__feature__copy > p:not(.p-strengths__feature__num) {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths__feature__visual {
    width: auto;
    height: clamp(200px, 53.3333333333vw, 400px);
    margin-top: clamp(30px, 8vw, 60px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-strengths__feature__visual.--map {
    margin-top: clamp(55px, 14.6666666667vw, 110px);
  }
  .p-strengths__feature__visual.--map img {
    left: calc(50% - clamp(150px, 40vw, 300px));
    top: calc(clamp(26px, 6.9333333333vw, 52px) * -1);
    width: clamp(300px, 80vw, 600px);
    height: auto;
  }
  .p-strengths__feature__visual.--photo img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-strengths__feature__visual.--cycle {
    height: clamp(370px, 98.6666666667vw, 740px);
  }
  .p-strengths__feature__cycle {
    left: calc(50% - clamp(151.5px, 40.4vw, 303px));
    top: clamp(20px, 5.3333333333vw, 40px);
    transform: scale(calc(clamp(303px, 80.8vw, 606px) / 590px));
  }
  .p-strengths__feature__link {
    right: clamp(15px, 4vw, 30px);
    bottom: clamp(15px, 4vw, 30px);
    gap: clamp(8px, 2.1333333333vw, 16px);
    width: clamp(180px, 48vw, 360px);
    height: clamp(50px, 13.3333333333vw, 100px);
    border-radius: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-strengths__feature__link img {
    width: clamp(12px, 3.2vw, 24px);
    height: clamp(12px, 3.2vw, 24px);
  }
  html[lang=en] .p-strengths__feature__link {
    width: auto;
    max-width: calc(100% - clamp(30px, 8vw, 60px));
    padding-left: clamp(16px, 4.2666666667vw, 32px);
    padding-right: clamp(16px, 4.2666666667vw, 32px);
  }
}
.p-strengths-turning {
  position: relative;
  width: 100%;
  margin: 0;
  padding: clamp(109px, 9.8958333333vw, 190px) 0 clamp(60px, 5.46875vw, 105px);
  box-sizing: border-box;
}

.p-strengths-turning__glow {
  position: absolute;
  inset: 0;
  clip-path: inset(0);
  pointer-events: none;
  z-index: 0;
}
@media (min-width: 750.11px) {
  .p-strengths-turning__glow {
    bottom: calc(clamp(29px, 2.0833333333vw, 40px) * -1);
    -webkit-mask: linear-gradient(#000, #000) top/100% calc(100% - clamp(29px, 2.0833333333vw, 40px)) no-repeat, radial-gradient(circle clamp(29px, 2.0833333333vw, 40px) at 100% 100%, transparent 97%, #000 100%) left bottom/clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px) no-repeat;
    mask: linear-gradient(#000, #000) top/100% calc(100% - clamp(29px, 2.0833333333vw, 40px)) no-repeat, radial-gradient(circle clamp(29px, 2.0833333333vw, 40px) at 100% 100%, transparent 97%, #000 100%) left bottom/clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px) no-repeat;
  }
}

.p-strengths-turning__glow__circle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.p-strengths-turning__glow__circle.--a {
  top: calc(clamp(117px, 10.6770833333vw, 205px) * -1);
  left: clamp(470px, 42.7083333333vw, 820px);
  width: calc(100% - clamp(470px, 42.7083333333vw, 820px));
  height: clamp(762px, 69.2708333333vw, 1330px);
  border-radius: 0;
  background: radial-gradient(circle clamp(381px, 34.6354166667vw, 665px) at clamp(381px, 34.6354166667vw, 665px) clamp(381px, 34.6354166667vw, 665px), #53b3ff 0%, rgba(255, 255, 255, 0) 100%);
}

.p-strengths-turning__glow__circle.--b {
  top: clamp(151px, 13.75vw, 264px);
  left: 0;
  width: clamp(550px, 50vw, 960px);
  height: clamp(799px, 72.6041666667vw, 1394px);
  border-radius: 0;
  opacity: 0.49;
  background: radial-gradient(circle clamp(399px, 36.3020833333vw, 697px) at clamp(151px, 13.6979166667vw, 263px) clamp(399px, 36.3020833333vw, 697px), #89c9ff 0%, rgba(255, 255, 255, 0) 100%);
}

.p-strengths-turning__en {
  position: absolute;
  top: clamp(53px, 4.7916666667vw, 92px);
  left: clamp(6px, 0.5208333333vw, 10px);
  z-index: 1;
  margin: 0;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(107px, 9.7395833333vw, 187px);
  font-weight: 500;
  font-style: italic;
  line-height: clamp(102px, 9.2708333333vw, 178px);
  white-space: nowrap;
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.p-strengths-turning__content {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(77px, 6.9791666667vw, 134px);
  width: 100%;
}

.p-strengths-turning__copy {
  position: relative;
  width: clamp(322px, 29.2708333333vw, 562px);
  margin-top: clamp(17px, 1.5625vw, 30px);
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-strengths-turning__quote {
  position: absolute;
  top: 0;
  left: 0;
  color: #085cac;
  font-size: clamp(125px, 11.3541666667vw, 218px);
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}

.p-strengths-turning__copy h2 {
  position: relative;
  z-index: 1;
  margin: clamp(42px, 3.8020833333vw, 73px) 0 0 clamp(59px, 5.3645833333vw, 103px);
  color: #085cac;
  font-size: clamp(45px, 4.1145833333vw, 79px);
  font-weight: 700;
  line-height: clamp(63px, 5.7291666667vw, 110px);
  white-space: nowrap;
}

.p-strengths-turning__copy > p {
  position: relative;
  z-index: 1;
  width: clamp(263px, 23.90625vw, 459px);
  margin: clamp(11px, 1.0416666667vw, 20px) 0 0 clamp(59px, 5.3645833333vw, 103px);
  color: #085cac;
  white-space: nowrap;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  line-height: 220%;
  font-weight: 700;
}

.p-strengths-turning__photos {
  position: relative;
  width: clamp(523px, 47.5520833333vw, 913px);
  height: clamp(463px, 42.1354166667vw, 809px);
  flex-shrink: 0;
}

.p-strengths-turning__photo {
  position: absolute;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  box-sizing: border-box;
}

.p-strengths-turning__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-strengths-turning__photo.--01 {
  top: 0;
  left: 0;
  width: clamp(367px, 33.3854166667vw, 641px);
  height: clamp(214px, 19.4791666667vw, 374px);
}

.p-strengths-turning__photo.--01 img {
  object-position: 56% 56%;
}

.p-strengths-turning__photo.--02 {
  top: clamp(140px, 12.7604166667vw, 245px);
  left: clamp(382px, 34.7395833333vw, 667px);
  width: clamp(141px, 12.8125vw, 246px);
  height: clamp(212px, 19.2708333333vw, 370px);
}

.p-strengths-turning__photo.--02 img {
  object-position: 50% 18%;
}

.p-strengths-turning__photo.--03 {
  top: clamp(277px, 25.2083333333vw, 484px);
  left: clamp(65px, 5.8854166667vw, 113px);
  width: clamp(276px, 25.0520833333vw, 481px);
  height: clamp(186px, 16.9270833333vw, 325px);
}

.p-strengths-turning__photo.--03 img {
  object-position: 41% 62%;
}

@media (max-width: 750px) {
  .p-strengths-turning {
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(60px, 16vw, 120px);
  }
  .p-strengths-turning__glow__circle.--a,
  .p-strengths-turning__glow__circle.--b {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p-strengths-turning__glow__circle.--a {
    background: radial-gradient(circle clamp(300px, 80vw, 600px) at 85% 70%, #53b3ff 0%, rgba(255, 255, 255, 0) 100%);
  }
  .p-strengths-turning__glow__circle.--b {
    background: radial-gradient(circle clamp(280px, 74.6666666667vw, 560px) at 10% 35%, #89c9ff 0%, rgba(255, 255, 255, 0) 100%);
  }
  .p-strengths-turning__en {
    top: clamp(20px, 5.3333333333vw, 40px);
    left: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(54px, 14.4vw, 108px);
    line-height: 120%;
  }
  .p-strengths-turning__content {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-strengths-turning__copy {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-strengths-turning__quote {
    font-size: clamp(100px, 26.6666666667vw, 200px);
  }
  .p-strengths-turning__copy h2 {
    margin: clamp(34px, 9.0666666667vw, 68px) 0 0 clamp(45px, 12vw, 90px);
    font-size: clamp(34px, 9.0666666667vw, 68px);
    line-height: clamp(48px, 12.8vw, 96px);
  }
  .p-strengths-turning__copy > p {
    width: auto;
    margin: clamp(20px, 5.3333333333vw, 40px) 0 0 clamp(45px, 12vw, 90px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(26px, 6.9333333333vw, 52px);
  }
  .p-strengths-turning__photos {
    width: clamp(335px, 89.3333333333vw, 670px);
    height: clamp(297px, 79.2vw, 594px);
    margin: 0 auto;
  }
  .p-strengths-turning__photo,
  .p-strengths-turning__photo img {
    border-radius: clamp(6px, 1.6vw, 12px);
  }
  .p-strengths-turning__photo.--01 {
    width: clamp(235px, 62.6666666667vw, 470px);
    height: clamp(137px, 36.5333333333vw, 274px);
  }
  .p-strengths-turning__photo.--02 {
    top: clamp(90px, 24vw, 180px);
    left: clamp(245px, 65.3333333333vw, 490px);
    width: clamp(90px, 24vw, 180px);
    height: clamp(136px, 36.2666666667vw, 272px);
  }
  .p-strengths-turning__photo.--03 {
    top: clamp(178px, 47.4666666667vw, 356px);
    left: clamp(41px, 10.9333333333vw, 82px);
    width: clamp(177px, 47.2vw, 354px);
    height: clamp(119px, 31.7333333333vw, 238px);
  }
}
.p-strengths-numbers {
  position: relative;
  width: 100%;
  padding: clamp(150px, 10.8333333333vw, 208px) 0 clamp(129px, 9.375vw, 180px);
  border-radius: clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px) 0 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.604) 0%, rgba(255, 255, 255, 0.604) 81%, rgba(255, 255, 255, 0) 99%);
  box-sizing: border-box;
}

.p-strengths-numbers__inner {
  width: clamp(805px, 73.0208333333vw, 1402px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-strengths-numbers__ttl {
  text-align: center;
}

.p-strengths-numbers__ttl .ja {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  margin: 0;
  color: #292929;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-strengths-numbers__ttl .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-strengths-numbers__ttl .en {
  margin: clamp(8px, 0.5729166667vw, 11px) 0 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: clamp(66px, 4.7916666667vw, 92px);
}

.p-strengths-numbers__note {
  margin: clamp(50px, 3.6458333333vw, 70px) 0 clamp(14px, 1.0416666667vw, 20px) 0;
  color: #000000;
  font-size: clamp(11px, 0.78125vw, 15px);
  line-height: 1.2;
}

.p-strengths-numbers__timeline {
  position: relative;
  width: clamp(802px, 72.9166666667vw, 1400px);
  height: clamp(225px, 20.4166666667vw, 392px);
  margin-top: clamp(5px, 0.46875vw, 9px);
  margin-left: 1px;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  box-shadow: 0 0 clamp(3px, 0.2604166667vw, 5px) rgba(10, 127, 199, 0.263);
  box-sizing: border-box;
}

.p-strengths-numbers__timeline::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(22px, 2.03125vw, 39px);
  height: 1px;
  background-color: #085cac;
}

.p-strengths-numbers__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  height: clamp(24px, 2.1875vw, 42px);
  padding: 0 clamp(7px, 0.6770833333vw, 13px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  box-sizing: border-box;
}

.p-strengths-numbers__timeline .p-strengths-numbers__label {
  position: absolute;
  top: clamp(26px, 2.34375vw, 45px);
  left: 50%;
  width: clamp(126px, 11.4583333333vw, 220px);
  transform: translateX(-50%);
  z-index: 2;
}

.p-strengths-numbers__milestones {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
}

.p-strengths-numbers__milestones > li {
  position: absolute;
  top: clamp(77px, 6.9791666667vw, 134px);
  width: clamp(115px, 10.4166666667vw, 200px);
  text-align: left;
  box-sizing: border-box;
}

.p-strengths-numbers__milestones > li:nth-child(1) {
  left: clamp(49px, 4.4270833333vw, 85px);
}

.p-strengths-numbers__milestones > li:nth-child(2) {
  left: clamp(192px, 17.5vw, 336px);
}

.p-strengths-numbers__milestones > li:nth-child(3) {
  left: clamp(343px, 31.1979166667vw, 599px);
}

.p-strengths-numbers__milestones > li:nth-child(4) {
  left: clamp(510px, 46.3541666667vw, 890px);
}

.p-strengths-numbers__milestones > li:nth-child(5) {
  left: clamp(661px, 60.1041666667vw, 1154px);
}

.p-strengths-numbers__milestones > li::before {
  content: "";
  position: absolute;
  left: calc(clamp(9px, 0.8333333333vw, 16px) * -1);
  top: clamp(15px, 1.3541666667vw, 26px);
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  box-shadow: 0 clamp(2px, 0.15625vw, 3px) clamp(2px, 0.15625vw, 3px) rgba(0, 0, 0, 0.161);
  z-index: 2;
}

.p-strengths-numbers__milestones > li::after {
  content: "";
  position: absolute;
  left: calc(clamp(7px, 0.625vw, 12px) * -1);
  top: clamp(17px, 1.5625vw, 30px);
  width: 1px;
  height: clamp(108px, 9.84375vw, 189px);
  background: repeating-linear-gradient(to bottom, #085cac 0, #085cac clamp(2px, 0.2083333333vw, 4px), transparent clamp(2px, 0.2083333333vw, 4px), transparent clamp(4px, 0.3645833333vw, 7px));
  z-index: 1;
}

@media (min-width: 750.11px) {
  .p-strengths-numbers__milestones > li:nth-child(n+3)::before {
    left: calc(clamp(14px, 1.3020833333vw, 25px) * -1);
  }
}

@media (min-width: 750.11px) {
  .p-strengths-numbers__milestones > li:nth-child(n+3)::after {
    left: calc(clamp(12px, 1.09375vw, 21px) * -1);
  }
}

.p-strengths-numbers__year {
  position: relative;
  z-index: 2;
  margin: 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(37px, 3.3333333333vw, 64px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-strengths-numbers__mile-ttl {
  position: relative;
  z-index: 2;
  margin: clamp(2px, 0.15625vw, 3px) 0 0;
  color: #292929;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: clamp(14px, 1.3020833333vw, 25px);
}

.p-strengths-numbers__mile-txt {
  position: relative;
  z-index: 2;
  margin: clamp(7px, 0.625vw, 12px) 0 0;
  color: #292929;
  font-size: clamp(9px, 0.78125vw, 15px);
  font-weight: 700;
  line-height: 1.6;
}

.p-strengths-numbers__grid {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(8px, 0.7291666667vw, 14px);
  margin-top: clamp(8px, 0.7291666667vw, 14px);
}

.p-strengths-numbers__card {
  position: relative;
  width: clamp(195px, 17.7083333333vw, 340px);
  height: clamp(241px, 21.875vw, 420px);
  padding: clamp(21px, 1.9270833333vw, 37px) clamp(11px, 1.0416666667vw, 20px) 0;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  box-shadow: 0 0 clamp(3px, 0.2604166667vw, 5px) rgba(10, 127, 199, 0.263);
  text-align: center;
  box-sizing: border-box;
}

.p-strengths-numbers__card.--tint {
  background-color: #ecf5ff;
}

.p-strengths-numbers__card.--network {
  width: clamp(398px, 36.1458333333vw, 694px);
  height: clamp(241px, 21.875vw, 420px);
  padding: 0;
  text-align: left;
}

.p-strengths-numbers__card__clip {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  clip-path: inset(0 round clamp(6px, 0.5208333333vw, 10px));
}

.p-strengths-numbers__card.--network .p-strengths-numbers__label {
  position: absolute;
  top: clamp(21px, 1.9270833333vw, 37px);
  left: clamp(154px, 13.9583333333vw, 268px);
  width: clamp(106px, 9.6354166667vw, 185px);
  z-index: 3;
}

.p-strengths-numbers__card .p-strengths-numbers__label {
  min-width: clamp(43px, 3.90625vw, 75px);
}

html[lang=en] .p-strengths-numbers__label {
  font-size: clamp(10px, 0.9375vw, 18px);
}

html[lang=en] .p-strengths-numbers__card .p-strengths-numbers__label {
  max-width: 100%;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-strengths-numbers__timeline {
    height: clamp(267px, 24.2708333333vw, 466px);
  }
  html[lang=en] .p-strengths-numbers__milestones > li::after {
    height: clamp(150px, 13.6979166667vw, 263px);
  }
}
.p-strengths-numbers__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(80px, 7.2916666667vw, 140px);
  margin-top: clamp(23px, 2.0833333333vw, 40px);
}

.p-strengths-numbers__icon img {
  display: block;
  max-width: clamp(92px, 8.3333333333vw, 160px);
  max-height: clamp(80px, 7.2916666667vw, 140px);
  width: auto;
  height: auto;
  object-fit: contain;
}

.p-strengths-numbers__value {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: nowrap;
  margin: clamp(11px, 1.0416666667vw, 20px) 0 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(52px, 4.6875vw, 90px);
  font-weight: 700;
  font-style: italic;
  line-height: 1.2;
  white-space: nowrap;
}

.p-strengths-numbers__value span {
  margin-left: clamp(2px, 0.2083333333vw, 4px);
  color: #292929;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(18px, 1.6666666667vw, 32px);
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
}

.p-strengths-numbers__value.--iso {
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2px;
  margin-top: clamp(16px, 1.4583333333vw, 28px);
  margin-left: clamp(16px, 1.4583333333vw, 28px);
  font-size: clamp(25px, 2.2916666667vw, 44px);
  line-height: 1;
  white-space: normal;
}

.p-strengths-numbers__value .p-strengths-numbers__iso-codes {
  display: block;
  margin-left: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  line-height: inherit;
  white-space: normal;
}

.p-strengths-numbers__iso-unit {
  margin-bottom: clamp(2px, 0.2083333333vw, 4px);
  color: #292929;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(18px, 1.6666666667vw, 32px);
  font-weight: 700;
  font-style: normal;
  line-height: 1.3;
  white-space: nowrap;
}

html[lang=en] .p-strengths-numbers__value .p-strengths-numbers__iso-unit {
  font-size: clamp(11px, 1.0416666667vw, 20px);
}

html[lang=en] .p-strengths-numbers__card:has(.p-strengths-numbers__value.--iso) {
  text-align: left;
}

html[lang=en] .p-strengths-numbers__card:has(.p-strengths-numbers__value.--iso) .p-strengths-numbers__label {
  display: flex;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

html[lang=en] .p-strengths-numbers__value.--iso {
  display: inline-flex;
  justify-content: flex-start;
  gap: 0;
  width: auto;
  max-width: 100%;
  margin-left: 0;
}

html[lang=en] .p-strengths-numbers__value .p-strengths-numbers__iso-codes {
  flex: 0 0 auto;
  text-align: center;
}

html[lang=en] .p-strengths-numbers__value.--iso .p-strengths-numbers__iso-unit {
  flex: 0 0 auto;
  margin-left: clamp(1px, 0.1041666667vw, 2px);
}

.p-strengths-numbers__sub {
  margin: clamp(2px, 0.2083333333vw, 4px) 0 0;
  color: #000000;
  font-size: clamp(9px, 0.78125vw, 15px);
  line-height: 1.2;
}

.p-strengths-numbers__sub.--top {
  position: absolute;
  top: clamp(52px, 4.7395833333vw, 91px);
  left: 0;
  width: 100%;
  margin: 0;
}

.p-strengths-numbers__network {
  position: relative;
  width: 100%;
  height: 100%;
}

.p-strengths-numbers__network__jp {
  position: absolute;
  top: clamp(65px, 5.9375vw, 114px);
  left: clamp(23px, 2.0833333333vw, 40px);
  width: clamp(160px, 14.5833333333vw, 280px);
  height: clamp(149px, 13.5416666667vw, 260px);
  z-index: 2;
}

.p-strengths-numbers__hub {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(76px, 6.875vw, 132px);
  height: clamp(76px, 6.875vw, 132px);
  border-radius: 50%;
  background: linear-gradient(214deg, #2793e9 0%, #085cac 100%);
  box-sizing: border-box;
}

.p-strengths-numbers__hub span {
  color: #ffffff;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-strengths-numbers__hub.--hq {
  top: 0;
  left: clamp(41px, 3.75vw, 72px);
}

.p-strengths-numbers__hub.--tokyo {
  top: clamp(69px, 6.25vw, 120px);
  left: 0;
}

.p-strengths-numbers__hub.--tokyo span {
  font-size: clamp(10px, 0.8854166667vw, 17px);
}

.p-strengths-numbers__hub.--yodo {
  top: clamp(69px, 6.25vw, 120px);
  left: clamp(82px, 7.5vw, 144px);
}

.p-strengths-numbers__hub-sum {
  position: absolute;
  top: clamp(57px, 5.2083333333vw, 100px);
  left: clamp(54px, 4.9479166667vw, 95px);
  width: clamp(49px, 4.4791666667vw, 86px);
  height: clamp(49px, 4.4791666667vw, 86px);
  margin: 0;
  border-radius: 50%;
  background-color: #ecf5ff;
  box-shadow: 0 0 clamp(4px, 0.390625vw, 7.5px) rgba(0, 0, 0, 0.161);
  color: #085cac;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: clamp(13px, 1.1458333333vw, 22px);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  z-index: 3;
}

.p-strengths-numbers__network__link {
  position: absolute;
  top: clamp(126px, 11.4583333333vw, 220px);
  left: clamp(174px, 15.78125vw, 303px);
  width: clamp(29px, 2.65625vw, 51px);
  height: clamp(2px, 0.15625vw, 3px);
  background-color: #292929;
  z-index: 2;
}

.p-strengths-numbers__network__link::before {
  content: "";
  position: absolute;
  left: clamp(14px, 1.3020833333vw, 25px);
  top: calc(clamp(14px, 1.3020833333vw, 25px) * -1);
  width: clamp(2px, 0.15625vw, 3px);
  height: clamp(29px, 2.65625vw, 51px);
  background-color: #292929;
}

.p-strengths-numbers__network__asia {
  position: absolute;
  top: 0;
  left: clamp(154px, 13.9583333333vw, 268px);
  width: clamp(264px, 23.9583333333vw, 460px);
  height: clamp(234px, 21.25vw, 408px);
  z-index: 1;
}

.p-strengths-numbers__globe {
  position: absolute;
  top: clamp(13px, 1.1458333333vw, 22px);
  left: 0;
  width: clamp(264px, 23.9583333333vw, 460px);
  height: auto;
  opacity: 0.34;
  pointer-events: none;
}

.p-strengths-numbers__asia-ring {
  position: absolute;
  top: clamp(84px, 7.65625vw, 147px);
  left: clamp(92px, 8.3854166667vw, 161px);
  width: clamp(101px, 9.21875vw, 177px);
  height: clamp(101px, 9.21875vw, 177px);
  border: 1px solid rgba(8, 92, 172, 0.282);
  border-radius: 50%;
  box-sizing: border-box;
  z-index: 2;
}

.p-strengths-numbers__hub-sum.--asia {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  transform: translate(-50%, -50%);
  font-size: clamp(10px, 0.8854166667vw, 17px);
  line-height: clamp(13px, 1.1458333333vw, 22px);
}

.p-strengths-numbers__pin {
  position: absolute;
  width: clamp(60px, 5.46875vw, 105px);
  height: clamp(60px, 5.46875vw, 105px);
  border: 1px solid #085cac;
  border-radius: 50%;
  background-color: #ecf5ff;
  box-sizing: border-box;
  z-index: 3;
}

.p-strengths-numbers__pin__flag {
  position: absolute;
  top: calc(clamp(6px, 0.5729166667vw, 11px) * -1);
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(24px, 2.1875vw, 42px);
  height: clamp(24px, 2.1875vw, 42px);
  border-radius: 50%;
  background-color: #ffffff;
  filter: drop-shadow(0 clamp(2px, 0.15625vw, 3px) clamp(2px, 0.15625vw, 3px) rgba(44, 109, 173, 0.161));
  transform: translateX(-50%);
  box-sizing: border-box;
}

.p-strengths-numbers__pin__flag::after {
  content: "";
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  width: clamp(5px, 0.4166666667vw, 8px);
  height: clamp(5px, 0.4166666667vw, 8px);
  background-color: #ffffff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  transform: translateX(-50%);
}

.p-strengths-numbers__pin__flag img {
  display: block;
  width: clamp(15px, 1.40625vw, 27px);
  height: auto;
}

.p-strengths-numbers__pin__name {
  position: absolute;
  top: clamp(26px, 2.3958333333vw, 46px);
  left: 50%;
  width: 100%;
  color: #085cac;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-strengths-numbers__pin.--shanghai {
  top: clamp(54px, 4.8958333333vw, 94px);
  left: clamp(113px, 10.2604166667vw, 197px);
}

.p-strengths-numbers__pin.--shenzhen {
  top: clamp(91px, 8.2291666667vw, 158px);
  left: clamp(56px, 5.0520833333vw, 97px);
}

.p-strengths-numbers__pin.--hk {
  top: clamp(91px, 8.2291666667vw, 158px);
  left: clamp(171px, 15.5208333333vw, 298px);
}

.p-strengths-numbers__pin.--india {
  top: clamp(154px, 13.9583333333vw, 268px);
  left: clamp(79px, 7.1875vw, 138px);
}

.p-strengths-numbers__pin.--bangkok {
  top: clamp(154px, 13.9583333333vw, 268px);
  left: clamp(147px, 13.3333333333vw, 256px);
}

@media (max-width: 750px) {
  .p-strengths-numbers {
    padding: clamp(70px, 18.6666666667vw, 140px) 0 clamp(60px, 16vw, 120px);
    border-radius: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) 0 0;
  }
  .p-strengths-numbers__inner {
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-strengths-numbers__ttl .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-strengths-numbers__ttl .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-strengths-numbers__ttl .en {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-strengths-numbers__note {
    margin: clamp(30px, 8vw, 60px) 0 clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-strengths-numbers__timeline {
    width: auto;
    height: auto;
    margin: 0;
    padding: clamp(25px, 6.6666666667vw, 50px) clamp(20px, 5.3333333333vw, 40px) clamp(30px, 8vw, 60px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    box-shadow: 0 0 clamp(4px, 1.0666666667vw, 8px) rgba(10, 127, 199, 0.263);
  }
  .p-strengths-numbers__timeline::after {
    display: none;
  }
  .p-strengths-numbers__label {
    height: clamp(30px, 8vw, 60px);
    padding: 0 clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-strengths-numbers__label {
    font-size: clamp(11px, 2.9333333333vw, 22px);
    padding: 0 clamp(6px, 1.6vw, 12px);
  }
  .p-strengths-numbers__timeline .p-strengths-numbers__label {
    position: static;
    display: flex;
    width: clamp(160px, 42.6666666667vw, 320px);
    margin: 0 auto;
    transform: none;
  }
  .p-strengths-numbers__milestones {
    height: auto;
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    padding-left: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-strengths-numbers__milestones > li:nth-child(n) {
    position: relative;
    top: auto;
    left: auto;
    display: grid;
    grid-template-columns: clamp(85px, 22.6666666667vw, 170px) 1fr;
    column-gap: clamp(10px, 2.6666666667vw, 20px);
    width: auto;
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths-numbers__milestones > li:first-child {
    margin-top: 0;
  }
  .p-strengths-numbers__milestones > li::before {
    left: calc(clamp(22px, 5.8666666667vw, 44px) * -1);
    top: clamp(13px, 3.4666666667vw, 26px);
    width: clamp(10px, 2.6666666667vw, 20px);
    height: clamp(10px, 2.6666666667vw, 20px);
    box-shadow: 0 clamp(2px, 0.5333333333vw, 4px) clamp(2px, 0.5333333333vw, 4px) rgba(0, 0, 0, 0.161);
  }
  .p-strengths-numbers__milestones > li::after {
    left: calc(clamp(17px, 4.5333333333vw, 34px) * -1);
    top: clamp(23px, 6.1333333333vw, 46px);
    height: calc(100% + clamp(15px, 4vw, 30px));
    background: repeating-linear-gradient(to bottom, #085cac 0, #085cac clamp(4px, 1.0666666667vw, 8px), transparent clamp(4px, 1.0666666667vw, 8px), transparent clamp(7px, 1.8666666667vw, 14px));
  }
  .p-strengths-numbers__milestones > li:last-child::after {
    display: none;
  }
  .p-strengths-numbers__year {
    grid-row: 1/3;
    font-size: clamp(36px, 9.6vw, 72px);
  }
  .p-strengths-numbers__mile-ttl {
    margin: 0;
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-strengths-numbers__mile-ttl br {
    display: none;
  }
  .p-strengths-numbers__mile-txt {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-strengths-numbers__grid {
    align-items: stretch;
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-strengths-numbers__card {
    width: calc(50% - clamp(5px, 1.3333333333vw, 10px));
    height: auto;
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(8px, 2.1333333333vw, 16px) clamp(22px, 5.8666666667vw, 44px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    box-shadow: 0 0 clamp(4px, 1.0666666667vw, 8px) rgba(10, 127, 199, 0.263);
  }
  .p-strengths-numbers__card.--wide {
    width: calc(50% - clamp(5px, 1.3333333333vw, 10px));
  }
  .p-strengths-numbers__card.--network {
    width: 100%;
    height: auto;
    padding: 0;
  }
  .p-strengths-numbers__card__clip {
    height: auto;
    padding: clamp(20px, 5.3333333333vw, 40px) 0 clamp(22px, 5.8666666667vw, 44px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    clip-path: inset(0 round clamp(10px, 2.6666666667vw, 20px));
  }
  .p-strengths-numbers__card.--network .p-strengths-numbers__label {
    position: static;
    display: flex;
    width: clamp(133px, 35.4666666667vw, 266px);
    margin: 0 auto;
  }
  .p-strengths-numbers__network {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: auto;
  }
  .p-strengths-numbers__network__jp,
  .p-strengths-numbers__network__link,
  .p-strengths-numbers__network__asia {
    position: relative;
    top: auto;
    left: auto;
  }
  .p-strengths-numbers__network__jp {
    width: clamp(201px, 53.6vw, 402px);
    height: clamp(187px, 49.8666666667vw, 374px);
    margin-top: clamp(18px, 4.8vw, 36px);
  }
  .p-strengths-numbers__network__link {
    width: clamp(37px, 9.8666666667vw, 74px);
    height: clamp(2px, 0.5333333333vw, 4px);
    margin: clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-strengths-numbers__card .p-strengths-numbers__label {
    min-width: clamp(54px, 14.4vw, 108px);
  }
  .p-strengths-numbers__hub {
    width: clamp(95px, 25.3333333333vw, 190px);
    height: clamp(95px, 25.3333333333vw, 190px);
  }
  .p-strengths-numbers__hub span {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-strengths-numbers__hub.--hq {
    left: clamp(52px, 13.8666666667vw, 104px);
  }
  .p-strengths-numbers__hub.--tokyo {
    top: clamp(86px, 22.9333333333vw, 172px);
  }
  .p-strengths-numbers__hub.--tokyo span {
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-strengths-numbers__hub.--yodo {
    top: clamp(86px, 22.9333333333vw, 172px);
    left: clamp(104px, 27.7333333333vw, 208px);
  }
  .p-strengths-numbers__hub-sum {
    top: clamp(72px, 19.2vw, 144px);
    left: clamp(68px, 18.1333333333vw, 136px);
    width: clamp(62px, 16.5333333333vw, 124px);
    height: clamp(62px, 16.5333333333vw, 124px);
    box-shadow: 0 0 clamp(5px, 1.3333333333vw, 10px) rgba(0, 0, 0, 0.161);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-strengths-numbers__network__link::before {
    left: clamp(18px, 4.8vw, 36px);
    top: calc(clamp(18px, 4.8vw, 36px) * -1);
    width: clamp(2px, 0.5333333333vw, 4px);
    height: clamp(37px, 9.8666666667vw, 74px);
  }
  .p-strengths-numbers__network__asia {
    width: clamp(331px, 88.2666666667vw, 662px);
    height: clamp(293px, 78.1333333333vw, 586px);
  }
  .p-strengths-numbers__globe {
    top: clamp(16px, 4.2666666667vw, 32px);
    width: clamp(331px, 88.2666666667vw, 662px);
  }
  .p-strengths-numbers__asia-ring {
    top: clamp(106px, 28.2666666667vw, 212px);
    left: clamp(102px, 27.2vw, 204px);
    width: clamp(127px, 33.8666666667vw, 254px);
    height: clamp(127px, 33.8666666667vw, 254px);
  }
  .p-strengths-numbers__hub-sum.--asia {
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-strengths-numbers__pin {
    width: clamp(75px, 20vw, 150px);
    height: clamp(75px, 20vw, 150px);
  }
  .p-strengths-numbers__pin__flag {
    top: calc(clamp(8px, 2.1333333333vw, 16px) * -1);
    width: clamp(30px, 8vw, 60px);
    height: clamp(30px, 8vw, 60px);
    filter: drop-shadow(0 clamp(2px, 0.5333333333vw, 4px) clamp(2px, 0.5333333333vw, 4px) rgba(44, 109, 173, 0.161));
  }
  .p-strengths-numbers__pin__flag::after {
    width: clamp(6px, 1.4666666667vw, 11px);
    height: clamp(6px, 1.4666666667vw, 11px);
  }
  .p-strengths-numbers__pin__flag img {
    width: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-strengths-numbers__pin__name {
    top: clamp(33px, 8.8vw, 66px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-strengths-numbers__pin.--shanghai {
    top: clamp(68px, 18.1333333333vw, 136px);
    left: clamp(128px, 34.1333333333vw, 256px);
  }
  .p-strengths-numbers__pin.--shenzhen {
    top: clamp(114px, 30.4vw, 228px);
    left: clamp(56px, 14.9333333333vw, 112px);
  }
  .p-strengths-numbers__pin.--hk {
    top: clamp(114px, 30.4vw, 228px);
    left: clamp(200px, 53.3333333333vw, 400px);
  }
  .p-strengths-numbers__pin.--india {
    top: clamp(193px, 51.4666666667vw, 386px);
    left: clamp(85px, 22.6666666667vw, 170px);
  }
  .p-strengths-numbers__pin.--bangkok {
    top: clamp(193px, 51.4666666667vw, 386px);
    left: clamp(170px, 45.3333333333vw, 340px);
  }
  .p-strengths-numbers__icon {
    height: clamp(70px, 18.6666666667vw, 140px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-strengths-numbers__icon img {
    max-width: clamp(90px, 24vw, 180px);
    max-height: clamp(70px, 18.6666666667vw, 140px);
  }
  .p-strengths-numbers__value {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-strengths-numbers__value span {
    margin-left: clamp(3px, 0.8vw, 6px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-strengths-numbers__value.--iso {
    margin-top: clamp(12px, 3.2vw, 24px);
    margin-left: clamp(13px, 3.3333333333vw, 25px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-strengths-numbers__iso-unit {
    margin-bottom: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  html[lang=en] .p-strengths-numbers__value .p-strengths-numbers__iso-unit {
    font-size: clamp(9px, 2.1333333333vw, 16px);
  }
  html[lang=en] .p-strengths-numbers__value.--iso {
    margin-left: 0;
  }
  .p-strengths-numbers__sub {
    margin: clamp(3px, 0.8vw, 6px) 0 0;
    font-size: clamp(11px, 2.9333333333vw, 22px);
  }
  .p-strengths-numbers__sub.--top {
    top: clamp(52px, 13.8666666667vw, 104px);
  }
  html[lang=en] .p-strengths-numbers__sub.--top {
    top: clamp(59px, 15.7333333333vw, 118px);
    font-size: clamp(8px, 1.8666666667vw, 14px);
  }
}
.p-strengths-roots {
  position: relative;
  width: 100%;
  padding: 0 clamp(13px, 1.1979166667vw, 23px);
  box-sizing: border-box;
}

.p-strengths-roots__panel {
  position: relative;
  width: 100%;
  aspect-ratio: 1874/853;
  border-radius: clamp(17px, 1.5625vw, 30px);
  box-sizing: border-box;
}

.p-strengths-roots__bg {
  position: absolute;
  inset: 0;
  border-radius: clamp(17px, 1.5625vw, 30px);
  z-index: 0;
  pointer-events: none;
  isolation: isolate;
}

.p-strengths-roots__bg img:not(.p-strengths-roots__particles) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(17px, 1.5625vw, 30px);
}

.p-strengths-roots__bg__screen {
  position: absolute;
  inset: 0;
  border-radius: clamp(17px, 1.5625vw, 30px);
  background-color: #2793e9;
  mix-blend-mode: screen;
}

.p-strengths-roots__bg__dim {
  position: absolute;
  inset: 0;
  border-radius: clamp(17px, 1.5625vw, 30px);
  background-color: rgba(0, 0, 0, 0.19);
}

.p-strengths-roots__particles {
  position: absolute;
  top: -6%;
  left: 5%;
  display: block;
  width: 43%;
  height: auto;
  aspect-ratio: 807/803;
  object-fit: contain;
  pointer-events: none;
}

.p-strengths-roots__photos {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.p-strengths-roots__photo {
  position: absolute;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-strengths-roots__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-strengths-roots__photo.--01 {
  top: 14%;
  left: 4%;
  width: 43%;
  height: auto;
  aspect-ratio: 400/253;
}

.p-strengths-roots__copy {
  position: absolute;
  top: 20%;
  left: 53%;
  width: 32%;
  z-index: 1;
  color: #ffffff;
  box-sizing: border-box;
}

.p-strengths-roots__copy h2 {
  margin: 0;
  font-size: clamp(30px, 2.7083333333vw, 52px);
  font-weight: 700;
  line-height: clamp(43px, 3.90625vw, 75px);
  white-space: nowrap;
}

.p-strengths-roots__catch {
  margin: clamp(17px, 1.5625vw, 30px) 0 0;
  font-size: clamp(15px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: clamp(26px, 2.3958333333vw, 46px);
  text-align: left;
}

.p-strengths-roots__copy > p:not(.p-strengths-roots__catch) {
  margin: clamp(17px, 1.5625vw, 30px) 0 0;
  width: 100%;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: clamp(17px, 1.5625vw, 30px);
}

.p-strengths-roots__copy > p:not(.p-strengths-roots__catch) + p:not(.p-strengths-roots__catch) {
  margin-top: clamp(17px, 1.5625vw, 30px);
}

.p-strengths-roots__line {
  position: absolute;
  top: 0;
  left: 91%;
  width: 1px;
  height: 17%;
  background-color: #ffffff;
  z-index: 1;
}

.p-strengths-roots__en {
  position: absolute;
  top: 17%;
  left: 93%;
  margin: 0;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(62px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: clamp(38px, 3.4895833333vw, 67px);
  white-space: nowrap;
  transform: rotate(90deg);
  transform-origin: top left;
  z-index: 1;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-strengths-roots {
    container-type: inline-size;
  }
  html[lang=en] .p-strengths-roots__panel {
    aspect-ratio: auto;
    min-height: 45.5176093917cqw;
  }
  html[lang=en] .p-strengths-roots__en {
    top: 7.7379935966cqw;
  }
  html[lang=en] .p-strengths-roots__line {
    height: 7.7379935966cqw;
  }
  html[lang=en] .p-strengths-roots__copy {
    position: relative;
    top: auto;
    left: auto;
    width: 32%;
    margin-left: 53%;
    padding-top: 7.7379935966cqw;
    padding-bottom: clamp(17px, 1.5625vw, 30px);
  }
}
@media (max-width: 750px) {
  .p-strengths-roots {
    padding: 0 clamp(11px, 2.9333333333vw, 22px);
  }
  .p-strengths-roots__panel {
    display: flex;
    flex-direction: column;
    aspect-ratio: auto;
    padding: 0 clamp(20px, 5.3333333333vw, 40px) clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-strengths-roots__bg,
  .p-strengths-roots__bg img:not(.p-strengths-roots__particles),
  .p-strengths-roots__bg__screen,
  .p-strengths-roots__bg__dim {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-strengths-roots__particles {
    top: -2%;
    left: -10%;
    width: 90%;
  }
  .p-strengths-roots__line {
    position: relative;
    top: auto;
    left: auto;
    order: -2;
    align-self: center;
    height: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-strengths-roots__en {
    position: relative;
    top: auto;
    left: auto;
    order: -1;
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
    text-align: center;
    transform: none;
  }
  .p-strengths-roots__copy {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-strengths-roots__copy h2 {
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: clamp(34px, 9.0666666667vw, 68px);
    text-align: center;
  }
  .p-strengths-roots__catch {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths-roots__copy > p:not(.p-strengths-roots__catch) {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths-roots__copy > p:not(.p-strengths-roots__catch) + p:not(.p-strengths-roots__catch) {
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-strengths-roots__photos {
    position: relative;
    inset: auto;
    order: 1;
    display: flex;
    align-items: flex-end;
    gap: clamp(10px, 2.6666666667vw, 20px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-strengths-roots__photo,
  .p-strengths-roots__photo img {
    border-radius: clamp(6px, 1.6vw, 12px);
  }
  .p-strengths-roots__photo.--01 {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
  }
}
.p-strengths-cta .c-cta {
  height: clamp(301px, 21.8229166667vw, 419px);
  margin-top: clamp(84px, 6.09375vw, 117px);
}

.p-strengths-cta .c-cta__text {
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.875;
}

.p-strengths-cta .c-breadcrumb {
  margin-top: clamp(88px, 6.40625vw, 123px);
}

@media (max-width: 750px) {
  .p-strengths-cta .c-cta {
    height: auto;
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-strengths-cta .c-cta__text {
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-strengths-cta .c-breadcrumb {
    margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
}
.p-sitemap .c-panel {
  padding-top: clamp(76px, 5.5208333333vw, 106px);
}

.p-sitemap__inner {
  display: grid;
  grid-template-columns: repeat(3, clamp(311px, 22.5vw, 432px));
  grid-template-rows: repeat(4, auto);
  justify-content: space-between;
  row-gap: clamp(27px, 1.9270833333vw, 37px);
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.p-sitemap__col {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  width: auto;
}

.p-sitemap__item + .p-sitemap__item {
  margin-top: 0;
}

.p-sitemap__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: clamp(47px, 3.4375vw, 66px);
  padding: 0 clamp(27px, 1.9270833333vw, 37px) 0 clamp(24px, 1.71875vw, 33px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-weight: 700;
  box-sizing: border-box;
  transition: background-color 0.3s ease-out;
}

.p-sitemap__link img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
  flex-shrink: 0;
}

.p-sitemap__sub {
  margin: clamp(4px, 0.3125vw, 6px) 0 0;
  padding-left: clamp(24px, 1.7708333333vw, 34px);
}
@media (min-width: 750.11px) {
  .p-sitemap__sub {
    font-size: clamp(12px, 0.8854166667vw, 17px);
    line-height: 2;
  }
}

.p-sitemap__sub a {
  color: #292929;
  font-weight: 700;
  transition: opacity 0.6s var(--easing);
}

@media (max-width: 750px) {
  .p-sitemap .c-panel {
    padding-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-sitemap__inner {
    display: block;
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sitemap__col {
    display: block;
    grid-row: auto;
    width: auto;
  }
  .p-sitemap__col + .p-sitemap__col,
  .p-sitemap__item + .p-sitemap__item {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sitemap__link {
    height: clamp(56px, 14.9333333333vw, 112px);
    padding: 0 clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(7px, 1.8666666667vw, 14px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-sitemap__link img {
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-sitemap__sub {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    padding-left: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-sitemap__sub li + li {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-sitemap__sub a {
    font-size: clamp(15px, 4vw, 30px);
  }
}
@media (min-width: 750.11px) {
  .p-sitemap__link:hover {
    background-color: #292929;
    opacity: 1;
  }
  .p-sitemap__sub a:hover {
    opacity: 0.7;
  }
}
.p-company .c-panel {
  padding-bottom: clamp(22px, 1.71875vw, 33px);
}

.p-company__inner {
  width: clamp(885px, 80.46875vw, 1545px);
  max-width: calc(100% - 54px);
  margin-left: auto;
  margin-right: auto;
  padding-bottom: clamp(62px, 5.625vw, 108px);
}

.p-company__ttl {
  margin: 0;
  font-size: inherit;
  line-height: 1;
}

.p-company__ttl .ja {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  color: #292929;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  line-height: 1;
}

.p-company__ttl .ja::before {
  content: "";
  display: block;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-company__ttl .en {
  display: block;
  margin-top: clamp(6px, 0.5208333333vw, 10px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(46px, 4.21875vw, 81px);
  font-weight: 500;
  font-style: italic;
  line-height: 1;
  white-space: nowrap;
}

.p-company__about__body > p,
.p-company__card__body > p,
.p-company__card__row > p {
  margin: clamp(22px, 1.9791666667vw, 38px) 0 0;
  color: #292929;
  font-size: clamp(23px, 2.0833333333vw, 40px);
  font-weight: 700;
  line-height: 1.25;
}

.p-company__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(9px, 0.8333333333vw, 16px);
  width: clamp(148px, 13.4895833333vw, 259px);
  height: clamp(46px, 4.21875vw, 81px);
  margin-top: clamp(25px, 2.2916666667vw, 44px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(13px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  flex-shrink: 0;
  transition: background-color 0.3s ease-out, border-color 0.3s ease-out;
}

.p-company__btn img {
  width: clamp(11px, 0.8333333333vw, 16px);
  height: clamp(11px, 0.8333333333vw, 16px);
}

@media (min-width: 750.11px) {
  .p-company__btn:hover {
    border-color: #292929;
    background-color: #292929;
    opacity: 1;
  }
}
.p-company__about {
  display: flex;
}

.p-company__about__body {
  width: clamp(359px, 32.65625vw, 627px);
  padding: clamp(79px, 7.1875vw, 138px) 0 0 clamp(56px, 5.0520833333vw, 97px);
  box-sizing: border-box;
  border-radius: clamp(11px, 1.0416666667vw, 20px) 0 0 clamp(11px, 1.0416666667vw, 20px);
  background: linear-gradient(180deg, #ecf5ff 0%, #cbe4ff 100%);
  flex-shrink: 0;
}

.p-company__about__visual {
  flex: 1;
}

.p-company__about__visual img {
  display: block;
  width: 100%;
  height: clamp(358px, 32.5520833333vw, 625px);
  object-fit: cover;
  border-radius: 0 clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px) 0;
}

.p-company__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(17px, 1.5625vw, 30px) clamp(17px, 1.5104166667vw, 29px);
  margin: clamp(18px, 1.6145833333vw, 31px) 0 0;
  padding: 0;
  list-style: none;
}

.p-company__card {
  display: flex;
  flex-direction: column;
}

.p-company__card > img {
  display: block;
  width: 100%;
  border-radius: clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px) 0 0;
}

.p-company__card__body {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  height: clamp(292px, 26.5625vw, 510px);
  padding: 0 clamp(54px, 4.9479166667vw, 95px) clamp(42px, 3.8020833333vw, 73px) clamp(56px, 5.0520833333vw, 97px);
  box-sizing: border-box;
  border-radius: 0 0 clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px);
  background: linear-gradient(180deg, #ecf5ff 0%, #cbe4ff 100%);
}

.p-company__card.--network .p-company__card__body {
  align-items: stretch;
  padding-bottom: clamp(31px, 2.8125vw, 54px);
}

.p-company__card.--network .p-company__ttl .en {
  font-size: clamp(40px, 3.6458333333vw, 70px);
}

.p-company__card.--business .p-company__ttl .en {
  font-size: clamp(45px, 4.1145833333vw, 79px);
}

.p-company__card.--innovation .p-company__ttl .en {
  font-size: clamp(37px, 3.125vw, 60px);
}

.p-company__card.--sustainability .p-company__ttl .en {
  font-size: clamp(37px, 3.125vw, 60px);
}

.p-company__card__row,
.p-company__card__sub {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.p-company__card__row {
  margin-top: clamp(14px, 1.25vw, 24px);
}

.p-company__card__row > p {
  min-width: 0;
  margin: 0;
  font-size: clamp(20px, 1.8229166667vw, 35px);
  white-space: nowrap;
}

.p-company__card__sub {
  margin-top: clamp(25px, 2.2395833333vw, 43px);
  padding-top: clamp(22px, 1.9791666667vw, 38px);
  border-top: 1px solid #085cac;
}

.p-company__card__row .p-company__btn,
.p-company__card__sub .p-company__btn {
  margin-top: 0;
}

.p-company__card.--network .p-company__card__sub .en {
  margin-top: clamp(5px, 0.4166666667vw, 8px);
  font-size: clamp(23px, 2.0833333333vw, 40px);
}

@media (min-width: 750.11px) {
  html[lang=en] .p-company__card {
    height: 100%;
  }
  html[lang=en] .p-company__card__body {
    flex: 1;
    height: auto;
    min-height: clamp(292px, 26.5625vw, 510px);
    justify-content: flex-start;
    align-items: flex-start;
    padding-top: clamp(42px, 3.8020833333vw, 73px);
  }
  html[lang=en] .p-company__card.--network .p-company__card__body {
    align-items: stretch;
    padding-top: clamp(42px, 3.8020833333vw, 73px);
  }
}
@media (max-width: 750px) {
  .p-company .c-panel {
    padding-bottom: clamp(30px, 8vw, 60px);
  }
  .p-company__inner {
    width: auto;
    max-width: none;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
    padding-bottom: 0;
  }
  .p-company__ttl .ja {
    gap: clamp(6px, 1.6vw, 12px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-company__ttl .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-company__ttl .en,
  .p-company__card.--network .p-company__ttl .en,
  .p-company__card.--business .p-company__ttl .en,
  .p-company__card.--innovation .p-company__ttl .en,
  .p-company__card.--sustainability .p-company__ttl .en {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(36px, 9.6vw, 72px);
    line-height: 1.1;
    white-space: normal;
  }
  .p-company__card.--network .p-company__card__sub .en {
    margin-top: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-company__about__body > p,
  .p-company__card__body > p,
  .p-company__card__row > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-company__btn {
    gap: clamp(12px, 3.2vw, 24px);
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(71px, 18.9333333333vw, 142px);
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-company__btn img {
    width: clamp(15px, 4vw, 30px);
    height: clamp(15px, 4vw, 30px);
  }
  .p-company__about {
    flex-direction: column-reverse;
  }
  .p-company__about__body {
    width: auto;
    padding: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px) clamp(35px, 9.3333333333vw, 70px);
    border-radius: 0 0 clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px);
  }
  .p-company__about__visual img {
    height: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-company__list {
    grid-template-columns: 1fr;
    gap: clamp(30px, 8vw, 60px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-company__card > img {
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-company__card__body,
  .p-company__card.--network .p-company__card__body {
    height: auto;
    padding: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px) clamp(35px, 9.3333333333vw, 70px);
    border-radius: 0 0 clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px);
  }
  .p-company__card__row,
  .p-company__card__sub {
    display: block;
  }
  .p-company__card__row {
    margin-top: 0;
  }
  .p-company__card__row > p {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    white-space: normal;
  }
  .p-company__card__row .p-company__btn,
  .p-company__card__sub .p-company__btn {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-company__card__sub {
    margin-top: clamp(30px, 8vw, 60px);
    padding-top: clamp(30px, 8vw, 60px);
  }
}
.p-404 .c-panel {
  padding-top: clamp(170px, 12.34375vw, 237px);
}

.p-404__body {
  text-align: center;
}

.p-404__body h1 {
  color: #292929;
  font-size: clamp(29px, 2.0833333333vw, 40px);
  font-weight: 700;
  line-height: 1.4;
}

.p-404__body > p {
  margin-top: clamp(21px, 1.5104166667vw, 29px);
  color: #292929;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-404__action {
  display: flex;
  justify-content: center;
  margin-top: clamp(20px, 1.4583333333vw, 28px);
}

.p-404__action .p-contact__submit-btn {
  text-decoration: none;
}

@media (max-width: 750px) {
  .p-404 .c-panel {
    padding-top: clamp(115px, 30.6666666667vw, 230px);
  }
  .p-404__body {
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-404__body h1 {
    font-size: clamp(22px, 5.8666666667vw, 44px);
    line-height: 1.5;
  }
  .p-404__body > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-404__body > p br {
    display: none;
  }
  .p-404__action {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
}
.c-hero.--global .c-hero__visual {
  height: auto;
}

.c-hero.--global .c-hero__visual img {
  height: auto;
  border-radius: 0;
}

@media (min-width: 750.11px) {
  .c-hero.--global {
    gap: clamp(23px, 2.0833333333vw, 40px);
    padding-bottom: clamp(63px, 4.5833333333vw, 88px);
  }
  .c-hero.--global .c-hero__content {
    width: auto;
    margin-left: 12%;
  }
  .c-hero.--global .c-hero__title .ja {
    gap: clamp(5px, 0.4166666667vw, 8px);
    font-size: clamp(13px, 1.1458333333vw, 22px);
  }
  .c-hero.--global .c-hero__title .ja::before {
    width: clamp(6px, 0.5208333333vw, 10px);
    height: clamp(6px, 0.5208333333vw, 10px);
  }
  .c-hero.--global .c-hero__title .en {
    margin-top: clamp(9px, 0.8333333333vw, 16px);
    font-size: clamp(62px, 5.6770833333vw, 109px);
    line-height: 0.92;
  }
  .c-hero.--global .c-hero__catch {
    margin-top: clamp(18px, 1.6666666667vw, 32px);
    font-size: clamp(25px, 2.2395833333vw, 43px);
    white-space: nowrap;
  }
  .c-hero.--global .c-hero__content > p {
    margin-top: clamp(14px, 1.3020833333vw, 25px);
    font-size: clamp(10px, 0.9375vw, 18px);
    line-height: 1.7;
  }
  .c-hero.--global .c-hero__visual {
    flex: 0 1 clamp(459px, 41.71875vw, 801px);
    margin: calc(clamp(9px, 0.78125vw, 15px) * -1) clamp(57px, 5.2083333333vw, 100px) 0 0;
  }
  html[lang=en] .c-hero.--global .c-hero__catch {
    white-space: normal;
  }
  html[lang=en] .c-hero.--global .c-hero__content {
    flex: 1 1 0;
    min-width: 0;
  }
  html[lang=en] .c-hero.--global .c-hero__visual {
    flex: 0 0 clamp(459px, 41.71875vw, 801px);
  }
}
@media (max-width: 750px) {
  .c-hero.--global .c-hero__title .en {
    font-size: clamp(40px, 10.6666666667vw, 80px);
    line-height: clamp(40px, 10.6666666667vw, 80px);
  }
  .c-hero.--global .c-hero__visual {
    width: auto;
    margin: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
}
.p-global__service {
  margin-bottom: clamp(30px, 2.1875vw, 42px);
  padding: 0 clamp(18px, 1.3020833333vw, 25px);
  color: #292929;
}

.p-global__service .c-panel {
  padding: clamp(91px, 6.5625vw, 126px) 0 clamp(93px, 6.7708333333vw, 130px);
  background-color: rgba(255, 255, 255, 0.6);
}

.p-global__service__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.p-global__service__inner > p {
  margin: clamp(30px, 2.1875vw, 42px) 0 0;
  font-size: clamp(14px, 1.0416666667vw, 20px);
  text-align: center;
  font-weight: 700;
  line-height: 2.2;
}

.p-global__service__list {
  display: flex;
  flex-direction: column;
  gap: clamp(11px, 1.0416666667vw, 20px);
  margin-top: clamp(64px, 5.78125vw, 111px);
}

.p-global__service__card {
  display: flex;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background: linear-gradient(117.59deg, #ecf5ff 0%, #cbe4ff 61%);
  box-shadow: 0 0 6px rgba(8, 92, 172, 0.2);
}

.p-global__service__card.--reverse {
  flex-direction: row-reverse;
  background: linear-gradient(116.4deg, #ecf5ff 39%, #cbe4ff 101%);
}

.p-global__service__card > img {
  display: block;
  width: clamp(362px, 32.9166666667vw, 632px);
  height: clamp(231px, 21.0416666667vw, 404px);
  border-radius: 0 clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px) 0;
  flex-shrink: 0;
}

.p-global__service__card.--reverse > img {
  border-radius: clamp(11px, 1.0416666667vw, 20px) 0 0 clamp(11px, 1.0416666667vw, 20px);
}

.p-global__service__card__body {
  flex: 1;
  padding: clamp(40px, 3.6458333333vw, 70px) 0 0 clamp(57px, 5.2083333333vw, 100px);
  box-sizing: border-box;
}

.p-global__service__card.--reverse .p-global__service__card__body {
  padding-left: clamp(61px, 5.5208333333vw, 106px);
}

.p-global__service__card__body .num {
  margin: 0 0 0 calc(clamp(22px, 1.9791666667vw, 38px) * -1);
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(74px, 6.7708333333vw, 130px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-global__service__card__body h3 {
  margin: calc(clamp(22px, 2.03125vw, 39px) * -1) 0 0;
  color: #085cac;
  font-size: clamp(20px, 1.8229166667vw, 35px);
  line-height: 1;
}

.p-global__service__card__body p:not(.num) {
  width: clamp(344px, 31.25vw, 600px);
  margin: clamp(21px, 1.875vw, 36px) 0 0;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

@media (max-width: 750px) {
  .p-global__service {
    margin-bottom: clamp(30px, 8vw, 60px);
    padding: 0;
  }
  .p-global__service .c-panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
  }
  .p-global__service__inner {
    width: auto;
    margin-left: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-global__service__inner > p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-global__service__inner > p br {
    display: none;
  }
  .p-global__service__list {
    gap: clamp(20px, 5.3333333333vw, 40px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-global__service__card,
  .p-global__service__card.--reverse {
    flex-direction: column-reverse;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-global__service__card > img,
  .p-global__service__card.--reverse > img {
    width: 100%;
    height: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-global__service__card__body,
  .p-global__service__card.--reverse .p-global__service__card__body {
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) clamp(30px, 8vw, 60px);
  }
  .p-global__service__card__body .num {
    margin-left: 0;
    font-size: clamp(80px, 21.3333333333vw, 160px);
  }
  .p-global__service__card__body h3 {
    margin-top: calc(clamp(24px, 6.4vw, 48px) * -1);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: 1.5;
  }
  .p-global__service__card__body p:not(.num) {
    width: auto;
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-global__panel {
  position: relative;
  isolation: isolate;
  margin: 0 clamp(18px, 1.3020833333vw, 25px);
  border-radius: clamp(29px, 2.0833333333vw, 40px);
  background-color: #00498e;
  color: #ffffff;
}

.p-global__panel::before {
  content: "";
  position: absolute;
  top: clamp(430px, 31.1458333333vw, 598px);
  right: 0;
  bottom: 0;
  left: 0;
  z-index: var(--z-bg);
  border-radius: 0 0 clamp(29px, 2.0833333333vw, 40px) clamp(29px, 2.0833333333vw, 40px);
  background: linear-gradient(168.87deg, rgba(8, 92, 172, 0) 8%, rgba(6, 69, 129, 0.5) 38.5%, #042e56 69%);
  pointer-events: none;
}

.p-global__panel::after {
  content: "";
  position: absolute;
  top: clamp(96px, 6.9270833333vw, 133px);
  right: 0;
  bottom: clamp(12px, 0.8854166667vw, 17px);
  left: 0;
  z-index: var(--z-bg);
  background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.084) 0, rgba(255, 255, 255, 0.084) 1px, transparent 1px, transparent clamp(95px, 6.875vw, 132px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.084) 0, rgba(255, 255, 255, 0.084) 1px, transparent 1px, transparent clamp(95px, 6.875vw, 132px));
  background-size: clamp(95px, 6.875vw, 132px) clamp(95px, 6.875vw, 132px);
  background-position: clamp(66px, 4.7916666667vw, 92px) clamp(72px, 5.2083333333vw, 100px);
  pointer-events: none;
}

.p-global__panel__glow {
  position: absolute;
  top: clamp(727px, 52.65625vw, 1011px);
  right: 0;
  z-index: var(--z-bg);
  width: clamp(562px, 40.6770833333vw, 781px);
  height: auto;
  mix-blend-mode: soft-light;
  pointer-events: none;
}

@media (max-width: 750px) {
  .p-global__panel {
    margin: 0 clamp(11px, 2.9333333333vw, 22px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-global__panel::before {
    top: clamp(500px, 133.3333333333vw, 1000px);
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-global__panel::after {
    top: 0;
    bottom: 0;
    background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.084) 0, rgba(255, 255, 255, 0.084) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px)), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.084) 0, rgba(255, 255, 255, 0.084) 1px, transparent 1px, transparent clamp(132px, 35.2vw, 264px));
    background-size: clamp(132px, 35.2vw, 264px) clamp(132px, 35.2vw, 264px);
    background-position: 0 0;
  }
  .p-global__panel__glow {
    display: none;
  }
}
.p-global__network {
  padding-top: clamp(60px, 4.3229166667vw, 83px);
}

.p-global__network__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.p-global__network__body {
  margin-top: clamp(61px, 4.4270833333vw, 85px);
}

.p-global__network__body h2 {
  font-size: clamp(29px, 2.1354166667vw, 41px);
}

.p-global__network__body p {
  margin-top: clamp(9px, 0.625vw, 12px);
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 2;
}

.p-global__network__inner > img {
  width: clamp(574px, 41.5625vw, 798px);
  height: auto;
  margin-right: calc(clamp(9px, 0.625vw, 12px) * -1);
  flex-shrink: 0;
}

@media (max-width: 750px) {
  .p-global__network {
    padding-top: clamp(60px, 16vw, 120px);
  }
  .p-global__network__inner {
    display: block;
    width: auto;
    margin-left: clamp(12px, 3.2vw, 24px);
    margin-right: clamp(12px, 3.2vw, 24px);
  }
  .p-global__network__body {
    margin-top: 0;
  }
  .p-global__network__body h2 {
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-global__network__body p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-global__network__body p br {
    display: none;
  }
  .p-global__network__inner > img {
    width: 100%;
    margin: clamp(30px, 8vw, 60px) 0 0;
  }
}
.p-global__flow {
  position: relative;
  padding: clamp(60px, 4.375vw, 84px) 0 clamp(123px, 8.90625vw, 171px);
}

.p-global__flow__map {
  position: absolute;
  top: clamp(113px, 8.1770833333vw, 157px);
  right: 0;
  z-index: var(--z-bg);
  width: clamp(564px, 40.8333333333vw, 784px);
  height: auto;
  opacity: 0.63;
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.p-global__flow__inner {
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.p-global__flow__list {
  display: flex;
  flex-direction: column;
  gap: clamp(47px, 3.4375vw, 66px);
  margin-top: clamp(52px, 3.75vw, 72px);
}

.p-global__flow__item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.p-global__flow__item__body {
  width: clamp(595px, 43.125vw, 828px);
}

.p-global__flow__item__head {
  display: flex;
  align-items: center;
  gap: clamp(18px, 1.3020833333vw, 25px);
}

.p-global__flow__item__head .num {
  margin: 0;
  font-family: "Roboto", sans-serif;
  font-size: clamp(72px, 5.2083333333vw, 100px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-global__flow__item__head h3 {
  margin: 0;
  font-size: clamp(25px, 1.8229166667vw, 35px);
  line-height: 1;
}

.p-global__flow__item__route {
  display: flex;
  gap: clamp(50px, 3.6458333333vw, 70px);
  margin-top: clamp(19px, 1.3541666667vw, 26px);
}

.p-global__flow__item__route span {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(144px, 10.4166666667vw, 200px);
  height: clamp(40px, 2.9166666667vw, 56px);
  border: 1px solid #ffffff;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(19px, 1.3541666667vw, 26px);
  font-weight: 700;
  line-height: 1;
  box-sizing: border-box;
}

.p-global__flow__item__route span + span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(clamp(40px, 2.8645833333vw, 55px) * -1);
  width: clamp(29px, 2.0833333333vw, 40px);
  height: clamp(29px, 2.0833333333vw, 40px);
  background: linear-gradient(to right, rgba(255, 255, 255, 0.384), #ffffff);
  opacity: 0.7;
  clip-path: polygon(0 0, 100% 50%, 0 100%, 43% 50%);
  transform: translateY(-50%);
}

.p-global__flow__item__body > p {
  margin: clamp(22px, 1.5625vw, 30px) 0 0;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

.p-global__flow__item__example {
  position: relative;
  z-index: 0;
  width: clamp(374px, 27.0833333333vw, 520px);
  margin-top: clamp(91px, 6.5625vw, 126px);
  padding: clamp(19px, 1.3541666667vw, 26px) clamp(34px, 2.4479166667vw, 47px) clamp(18px, 1.3020833333vw, 25px);
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  box-sizing: border-box;
  flex-shrink: 0;
}

.p-global__flow__item__example::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(20px);
  opacity: 0.8;
  z-index: -1;
}

.p-global__flow__item__example h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(12px, 0.8333333333vw, 16px);
  margin: 0;
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 1;
}

.p-global__flow__item__example h4::before,
.p-global__flow__item__example h4::after {
  content: "";
  width: clamp(15px, 1.09375vw, 21px);
  height: 2px;
  background-color: #ffffff;
}

.p-global__flow__item__example p {
  margin: clamp(9px, 0.625vw, 12px) 0 0;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-global__flow .c-ttl.--white .ja {
    display: inline-flex;
    width: auto;
    max-width: 100%;
    white-space: nowrap;
  }
  html[lang=en] .p-global__flow .c-ttl.--white .ja > span {
    white-space: nowrap;
  }
  html[lang=en] .p-global__flow .c-ttl.--white .ja br {
    display: none;
  }
}
@media (max-width: 750px) {
  .p-global__flow {
    padding: clamp(60px, 16vw, 120px) 0 clamp(50px, 13.3333333333vw, 100px);
  }
  .p-global__flow__map {
    display: none;
  }
  .p-global__flow__inner {
    width: auto;
    margin-left: clamp(12px, 3.2vw, 24px);
    margin-right: clamp(12px, 3.2vw, 24px);
  }
  .p-global__flow__list {
    gap: clamp(40px, 10.6666666667vw, 80px);
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-global__flow__item {
    display: block;
  }
  .p-global__flow__item__body {
    width: auto;
  }
  .p-global__flow__item__head {
    gap: clamp(12px, 3.2vw, 24px);
  }
  .p-global__flow__item__head .num {
    font-size: clamp(60px, 16vw, 120px);
  }
  .p-global__flow__item__head h3 {
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: 1.5;
  }
  .p-global__flow__item__route {
    gap: clamp(40px, 10.6666666667vw, 80px);
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-global__flow__item__route span {
    flex: 1;
    width: auto;
    height: clamp(44px, 11.7333333333vw, 88px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-global__flow__item__route span + span::before {
    left: calc(clamp(32px, 8.5333333333vw, 64px) * -1);
    width: clamp(24px, 6.4vw, 48px);
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-global__flow__item__body > p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-global__flow__item__body > p br {
    display: none;
  }
  .p-global__flow__item__example {
    width: auto;
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) clamp(25px, 6.6666666667vw, 50px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-global__flow__item__example h4 {
    gap: clamp(12px, 3.2vw, 24px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-global__flow__item__example h4::before,
  .p-global__flow__item__example h4::after {
    width: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-global__flow__item__example p {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-global__flow__item__example p br {
    display: none;
  }
}
.c-hero.--recruit .c-hero__catch {
  color: #085cac;
}

@media (min-width: 750.11px) {
  .c-hero.--recruit {
    gap: clamp(23px, 2.0833333333vw, 40px);
    padding-bottom: 0;
  }
  .c-hero.--recruit .c-hero__content {
    width: auto;
    margin-left: 12%;
    padding-top: clamp(60px, 5.4166666667vw, 104px);
  }
  .c-hero.--recruit .c-hero__title .en {
    margin-top: clamp(8px, 0.7291666667vw, 14px);
    white-space: nowrap;
    line-height: 1.1;
  }
  .c-hero.--recruit .c-hero__catch {
    margin-top: clamp(15px, 1.3541666667vw, 26px);
    font-size: clamp(29px, 2.6041666667vw, 50px);
    white-space: nowrap;
  }
  .c-hero.--recruit .c-hero__content > p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(2px, 0.2083333333vw, 4px);
    margin-top: clamp(19px, 1.7708333333vw, 34px);
    font-size: clamp(13px, 1.1458333333vw, 22px);
    line-height: 1.3909;
  }
  .c-hero.--recruit .c-hero__content > p span {
    padding: clamp(3px, 0.3125vw, 6px) clamp(6px, 0.5208333333vw, 10px);
    white-space: nowrap;
    background-color: #ffffff;
  }
  .c-hero.--recruit .c-hero__visual {
    flex: 0 1 clamp(541px, 49.1666666667vw, 944px);
  }
}
@media (max-width: 750px) {
  .c-hero.--recruit .c-hero__title .en {
    white-space: nowrap;
    font-size: clamp(44px, 11.7333333333vw, 88px);
    line-height: 1.1;
  }
  .c-hero.--recruit .c-hero__content > p {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(19px, 5.0666666667vw, 38px);
  }
  .c-hero.--recruit .c-hero__content > p span {
    padding: clamp(4px, 1.0666666667vw, 8px) clamp(8px, 2.1333333333vw, 16px);
    background-color: #ffffff;
  }
}
.p-recruit__intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: clamp(6px, 0.5208333333vw, 10px) 0 clamp(66px, 6.0416666667vw, 116px);
}

.p-recruit__intro__body {
  flex-shrink: 0;
  margin-left: 12%;
}

.p-recruit__intro__body p {
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 2.2;
}

.p-recruit__intro__body p + p {
  margin-top: clamp(29px, 2.6041666667vw, 50px);
}

.p-recruit__intro__visual {
  display: flex;
  align-items: flex-start;
  gap: clamp(26px, 2.34375vw, 45px);
  width: clamp(523px, 47.5520833333vw, 913px);
  min-width: 0;
  margin: clamp(8px, 0.7291666667vw, 14px) clamp(92px, 8.3333333333vw, 160px) 0 calc(clamp(53px, 4.7916666667vw, 92px) * -1);
}

.p-recruit__intro__visual > img {
  min-width: 0;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-recruit__intro__visual > img:first-child {
  width: clamp(227px, 20.6770833333vw, 397px);
}

.p-recruit__intro__visual > img:nth-child(2) {
  width: clamp(270px, 24.53125vw, 471px);
  margin-top: clamp(56px, 5.0520833333vw, 97px);
}

.p-recruit__intro__banner {
  position: fixed;
  right: clamp(5px, 0.46875vw, 9px);
  bottom: clamp(30px, 2.7083333333vw, 52px);
  z-index: calc(var(--z-sticky) - 1);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(48px, 4.375vw, 84px);
  width: clamp(292px, 26.5625vw, 510px);
  height: clamp(105px, 9.5833333333vw, 184px);
  padding: clamp(6px, 0.5729166667vw, 11px) clamp(18px, 1.6666666667vw, 32px) 0 0;
  background-color: #00386e;
  border: 3px solid #085cac;
  border-radius: clamp(5px, 0.46875vw, 9px);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.102);
}

.p-recruit__intro__banner > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(3px, 0.3125vw, 6px);
  opacity: 0.77;
}

.p-recruit__intro__banner__btn {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(107px, 9.6875vw, 186px);
  height: clamp(53px, 4.84375vw, 93px);
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: 700;
  line-height: 1.275;
  color: #ffffff;
  text-align: center;
  background: linear-gradient(204.21deg, #0083ff 15%, #022342 77%);
  border-radius: clamp(3px, 0.2604166667vw, 5px);
}

.p-recruit__intro__banner__btn span + span {
  font-size: clamp(13px, 1.1458333333vw, 22px);
  line-height: 1.3909;
}

.p-recruit__arrow {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(18px, 1.6666666667vw, 32px);
  height: clamp(18px, 1.6666666667vw, 32px);
  background-color: #ecf5ff;
  border-radius: 50%;
}

.p-recruit__arrow img {
  width: clamp(7px, 0.6770833333vw, 13px);
}

html[lang=en] .p-recruit__intro__banner .p-recruit__arrow,
html[lang=en] .p-recruit__cta__btn .p-recruit__arrow {
  margin-right: clamp(9px, 0.78125vw, 15px);
}

.p-recruit__intro__banner__btn,
.p-recruit__intro__banner .p-recruit__arrow {
  transition: opacity 0.6s var(--easing);
}

@media (min-width: 750.11px) {
  .p-recruit__intro__banner:hover {
    opacity: 1;
  }
  .p-recruit__intro__banner:hover .p-recruit__intro__banner__btn,
  .p-recruit__intro__banner:hover .p-recruit__arrow {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .p-recruit__intro {
    display: block;
    padding: 0 clamp(20px, 5.3333333333vw, 40px) clamp(60px, 16vw, 120px);
  }
  .p-recruit__intro__body {
    margin-left: 0;
  }
  .p-recruit__intro__body p {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-recruit__intro__body p br {
    display: none;
  }
  .p-recruit__intro__body p + p {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-recruit__intro__visual {
    gap: clamp(15px, 4vw, 30px);
    width: auto;
    margin: clamp(30px, 8vw, 60px) 0 0;
  }
  .p-recruit__intro__visual > img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__intro__visual > img:first-child {
    width: clamp(146px, 38.9333333333vw, 292px);
  }
  .p-recruit__intro__visual > img:nth-child(2) {
    width: clamp(174px, 46.4vw, 348px);
    margin-top: clamp(36px, 9.6vw, 72px);
  }
  .p-recruit__intro__banner {
    right: clamp(10px, 2.6666666667vw, 20px);
    bottom: clamp(10px, 2.6666666667vw, 20px);
    gap: clamp(24px, 6.4vw, 48px);
    width: clamp(220px, 58.6666666667vw, 440px);
    height: clamp(80px, 21.3333333333vw, 160px);
    padding: 0 clamp(14px, 3.7333333333vw, 28px) 0 0;
    border-radius: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-recruit__intro__banner > img {
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-recruit__intro__banner__btn {
    width: clamp(104px, 27.7333333333vw, 208px);
    height: clamp(52px, 13.8666666667vw, 104px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(17px, 4.5333333333vw, 34px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-recruit__intro__banner__btn span + span {
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-recruit__arrow {
    width: clamp(24px, 6.4vw, 48px);
    height: clamp(24px, 6.4vw, 48px);
  }
  .p-recruit__arrow img {
    width: clamp(10px, 2.6666666667vw, 20px);
  }
}
.p-recruit__entry {
  position: relative;
  isolation: isolate;
}

.p-recruit__entry::before,
.p-recruit__entry::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: clamp(144px, 13.125vw, 252px);
  bottom: clamp(396px, 35.9895833333vw, 691px);
}

.p-recruit__entry::before {
  left: clamp(110px, 10vw, 192px);
  width: clamp(14px, 1.25vw, 24px);
  background-color: rgba(255, 255, 255, 0.1);
}

.p-recruit__entry::after {
  left: clamp(116px, 10.5208333333vw, 202px);
  border-left: 3px dotted #88caff;
}

.p-recruit__entry__item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(29px, 2.65625vw, 51px);
  padding: clamp(64px, 5.78125vw, 111px) clamp(49px, 4.4791666667vw, 86px) clamp(60px, 5.4166666667vw, 104px) clamp(80px, 7.2916666667vw, 140px);
  color: #ffffff;
  background-color: #00498e;
  box-shadow: 0 3px 33px rgba(0, 0, 0, 0.161);
}

.p-recruit__entry__item:nth-child(even) {
  background-color: #0c66bc;
}

.p-recruit__entry__item:first-child {
  padding-top: clamp(81px, 7.34375vw, 141px);
  padding-bottom: clamp(76px, 6.875vw, 132px);
  border-radius: clamp(23px, 2.0833333333vw, 40px) clamp(23px, 2.0833333333vw, 40px) 0 0;
}

.p-recruit__entry__item:last-child {
  border-radius: 0 0 clamp(23px, 2.0833333333vw, 40px) clamp(23px, 2.0833333333vw, 40px);
}

.p-recruit__entry__item.--iso {
  padding-bottom: clamp(68px, 6.1458333333vw, 118px);
}

.p-recruit__entry__body {
  display: flex;
  gap: clamp(27px, 2.4479166667vw, 47px);
  flex: 0 1 clamp(459px, 41.7708333333vw, 802px);
  min-width: 0;
  margin-top: clamp(19px, 1.7708333333vw, 34px);
}

.p-recruit__entry__body .num {
  position: relative;
  z-index: var(--z-float);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(73px, 6.6666666667vw, 128px);
  height: clamp(73px, 6.6666666667vw, 128px);
  font-family: "Roboto", sans-serif;
  font-size: clamp(36px, 3.2291666667vw, 62px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  background-color: #1d5d9a;
  border: 1px solid #ffffff;
  border-radius: 50%;
}

.p-recruit__entry__item:nth-child(even) .num {
  background-color: #2c76be;
}

.p-recruit__entry__text {
  flex: 1;
  min-width: 0;
  padding-top: clamp(7px, 0.625vw, 12px);
}

.p-recruit__entry__text .label {
  display: flex;
  align-items: center;
  width: fit-content;
  height: clamp(23px, 2.0833333333vw, 40px);
  padding: 0 clamp(9px, 0.8333333333vw, 16px);
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.53;
  color: #085cac;
  background-color: #ecf5ff;
  border-radius: clamp(17px, 1.5625vw, 30px);
}

.p-recruit__entry__text h2 {
  margin-top: clamp(29px, 2.6041666667vw, 50px);
  font-size: clamp(29px, 2.6041666667vw, 50px);
}

.p-recruit__entry__text > p:not([class]) {
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-recruit__entry__text h2 + p {
  margin-top: clamp(14px, 1.25vw, 24px);
}

.p-recruit__entry__text p + p {
  margin-top: clamp(21px, 1.9270833333vw, 37px);
}

.p-recruit__entry__visual {
  flex: 0 1 clamp(482px, 43.8020833333vw, 841px);
  min-width: 0;
}

.p-recruit__entry__visual > img {
  width: 100%;
  height: auto;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
}

.p-recruit__entry__photos {
  display: flex;
  gap: clamp(12px, 1.09375vw, 21px);
}

.p-recruit__entry__photos > img {
  flex: 1;
  min-width: 0;
  height: auto;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
}

.p-recruit__entry__iso {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0 clamp(18px, 1.6666666667vw, 32px);
  margin-top: clamp(22px, 2.03125vw, 39px);
}

.p-recruit__entry__iso__cert {
  flex-shrink: 0;
  width: clamp(168px, 15.3125vw, 294px);
  background-color: #ffffff;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  color: #292929;
}

.p-recruit__entry__iso__cert > img {
  width: 100%;
  height: auto;
  border-radius: clamp(6px, 0.5208333333vw, 10px) clamp(6px, 0.5208333333vw, 10px) 0 0;
}

.p-recruit__entry__iso__scope {
  padding: clamp(2px, 0.2083333333vw, 4px) clamp(8px, 0.7291666667vw, 14px) clamp(10px, 0.8333333333vw, 16px);
}

.p-recruit__entry__iso__scope dt,
.p-recruit__entry__iso__scope dd {
  font-size: clamp(7px, 0.6770833333vw, 13px);
  line-height: 1.5;
}

.p-recruit__entry__iso__scope > div + div {
  margin-top: clamp(4px, 0.3125vw, 6px);
}

.p-recruit__entry__iso > p {
  flex: 1 1 clamp(172px, 15.625vw, 300px);
  margin-top: clamp(16px, 1.4583333333vw, 28px);
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
  container-type: inline-size;
}

.p-recruit__entry__iso > p span {
  font-size: min(1em, 3.5087719298cqi);
}

@media (max-width: 750px) {
  .p-recruit__entry::before,
  .p-recruit__entry::after {
    display: none;
  }
  .p-recruit__entry__item,
  .p-recruit__entry__item:first-child,
  .p-recruit__entry__item.--iso {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(30px, 8vw, 60px);
    padding: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__item:first-child {
    border-radius: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) 0 0;
  }
  .p-recruit__entry__item:last-child {
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__body,
  .p-recruit__entry__visual {
    flex: none;
  }
  .p-recruit__entry__body {
    display: block;
    margin-top: 0;
  }
  .p-recruit__entry__body .num {
    width: clamp(64px, 17.0666666667vw, 128px);
    height: clamp(64px, 17.0666666667vw, 128px);
    font-size: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-recruit__entry__text {
    padding-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__text .label {
    height: clamp(30px, 8vw, 60px);
    padding: 0 clamp(12px, 3.2vw, 24px);
    font-size: clamp(15px, 4vw, 30px);
    border-radius: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-recruit__entry__text .label {
    height: auto;
    min-height: clamp(30px, 8vw, 60px);
    padding: clamp(4px, 1.0666666667vw, 8px) clamp(12px, 3.2vw, 24px);
    line-height: 1.3;
    text-align: left;
  }
  .p-recruit__entry__text h2 {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-recruit__entry__text > p:not([class]) {
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-recruit__entry__text > p:not([class]) br {
    display: none;
  }
  .p-recruit__entry__text h2 + p,
  .p-recruit__entry__text p + p {
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-recruit__entry__visual > img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__photos {
    gap: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__photos > img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__iso {
    display: block;
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__iso__cert {
    width: clamp(200px, 53.3333333333vw, 400px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__iso__cert > img {
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-recruit__entry__iso__scope {
    padding: clamp(4px, 1.0666666667vw, 8px) clamp(10px, 2.4vw, 18px) clamp(12px, 2.9333333333vw, 22px);
  }
  .p-recruit__entry__iso__scope dt,
  .p-recruit__entry__iso__scope dd {
    font-size: clamp(9px, 2.2666666667vw, 17px);
  }
  .p-recruit__entry__iso__scope > div + div {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-recruit__entry__iso > p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-recruit__entry__item.--history {
  padding-top: clamp(67px, 6.09375vw, 117px);
  padding-bottom: clamp(62px, 5.6770833333vw, 109px);
}

.p-recruit__entry__item.--history .p-recruit__entry__body {
  flex: 1;
}

.p-recruit__entry__item.--history .p-recruit__entry__text {
  padding-top: clamp(17px, 1.5625vw, 30px);
}

.p-recruit__entry__item.--history .p-recruit__entry__text h2 + p {
  margin-top: clamp(9px, 0.8333333333vw, 16px);
}

.p-recruit__entry__text .note {
  margin-top: clamp(37px, 3.3854166667vw, 65px);
  font-size: clamp(9px, 0.78125vw, 15px);
  line-height: 2.04;
}

.p-recruit__entry__history {
  margin: clamp(3px, 0.2604166667vw, 5px) clamp(68px, 6.1979166667vw, 119px) 0 0;
  padding: clamp(26px, 2.34375vw, 45px) 0 clamp(22px, 1.9791666667vw, 38px);
  color: #292929;
  background-color: #ffffff;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  box-shadow: 0 0 5px rgba(10, 127, 199, 0.263);
}

.p-recruit__entry__history h3 {
  display: flex;
  align-items: center;
  width: fit-content;
  height: clamp(24px, 2.1875vw, 42px);
  margin: 0 auto;
  padding: 0 clamp(7px, 0.6770833333vw, 13px);
  font-size: clamp(14px, 1.3020833333vw, 25px);
  color: #ffffff;
  background-color: #085cac;
}

.p-recruit__entry__history__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: clamp(17px, 1.5625vw, 30px) clamp(23px, 2.0833333333vw, 40px);
  margin-top: clamp(26px, 2.34375vw, 45px);
  padding: 0 clamp(38px, 3.4375vw, 66px) 0 clamp(40px, 3.59375vw, 69px);
  line-height: 1.7;
  border-bottom: 1px solid #085cac;
}

.p-recruit__entry__history__list li {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 0 clamp(5px, 0.4166666667vw, 8px) clamp(14px, 1.3020833333vw, 25px);
}

.p-recruit__entry__history__list li::before {
  content: "";
  position: absolute;
  top: clamp(19px, 1.7708333333vw, 34px);
  bottom: 0;
  left: clamp(2px, 0.2083333333vw, 4px);
  border-left: 1px dashed #085cac;
}

.p-recruit__entry__history__list li::after {
  content: "";
  position: absolute;
  top: clamp(17px, 1.5104166667vw, 29px);
  left: 0;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  background-color: #085cac;
  border-radius: 50%;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
}

.p-recruit__entry__history__list .year {
  font-family: "Roboto", sans-serif;
  font-size: clamp(37px, 3.3333333333vw, 64px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  color: #085cac;
}

.p-recruit__entry__history__list h4 {
  font-size: clamp(11px, 0.9895833333vw, 19px);
}

.p-recruit__entry__history__list h4 + p {
  margin-top: auto;
  font-size: clamp(9px, 0.78125vw, 15px);
}

@media (max-width: 750px) {
  .p-recruit__entry__item.--history {
    padding: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__item.--history .p-recruit__entry__text {
    padding-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__item.--history .p-recruit__entry__text h2 + p {
    margin-top: clamp(15px, 4vw, 30px);
  }
  .p-recruit__entry__text .note {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__history {
    margin: clamp(10px, 2.6666666667vw, 20px) 0 0;
    padding: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__history h3 {
    height: clamp(34px, 9.0666666667vw, 68px);
    padding: 0 clamp(12px, 3.2vw, 24px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-recruit__entry__history__list {
    flex-direction: column;
    flex-wrap: nowrap;
    gap: clamp(25px, 6.6666666667vw, 50px);
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    padding: 0;
    border-bottom: none;
  }
  .p-recruit__entry__history__list li {
    padding: 0 0 0 clamp(25px, 6.6666666667vw, 50px);
  }
  .p-recruit__entry__history__list li::before {
    top: clamp(18px, 4.8vw, 36px);
    bottom: calc(clamp(25px, 6.6666666667vw, 50px) * -1);
    left: clamp(4px, 1.0666666667vw, 8px);
  }
  .p-recruit__entry__history__list li:last-child::before {
    display: none;
  }
  .p-recruit__entry__history__list li::after {
    top: clamp(13px, 3.4666666667vw, 26px);
    width: clamp(10px, 2.6666666667vw, 20px);
    height: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__history__list .year {
    font-size: clamp(36px, 9.6vw, 72px);
  }
  .p-recruit__entry__history__list h4 {
    margin-top: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(24px, 6.4vw, 48px);
  }
  .p-recruit__entry__history__list h4 + p {
    margin-top: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
}
.p-recruit__entry__item.--business {
  padding-top: clamp(56px, 5.1041666667vw, 98px);
  padding-bottom: clamp(55px, 5vw, 96px);
}

@media (min-width: 750.11px) {
  html[lang=en] .p-recruit__entry__item.--business {
    position: relative;
  }
  html[lang=en] .p-recruit__entry__item.--business .p-recruit__entry__body {
    position: relative;
    z-index: 2;
  }
  html[lang=en] .p-recruit__entry__item.--business::after {
    content: "";
    position: absolute;
    left: clamp(110px, 10vw, 192px);
    width: clamp(14px, 1.25vw, 24px);
    top: calc(clamp(56px, 5.1041666667vw, 98px) + clamp(19px, 1.7708333333vw, 34px) + clamp(73px, 6.6666666667vw, 128px) - 2px);
    bottom: 0;
    background-color: #00498e;
    z-index: 1;
    pointer-events: none;
  }
}
.p-recruit__entry__btn {
  display: flex;
  align-items: center;
  gap: clamp(15px, 1.40625vw, 27px);
  width: fit-content;
  height: clamp(46px, 4.21875vw, 81px);
  margin-top: clamp(55px, 5vw, 96px);
  padding-left: clamp(31px, 2.8125vw, 54px);
  padding-right: clamp(31px, 2.8125vw, 54px);
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1.6105;
  color: #085cac;
  background-color: #ffffff;
  border: 1px solid #085cac;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
  box-sizing: border-box;
}

.p-recruit__entry__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
  transition: filter 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .p-recruit__entry__btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-recruit__entry__btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-recruit__entry__business {
  padding: clamp(34px, 3.0729166667vw, 59px) 0 clamp(32px, 2.8645833333vw, 55px);
  color: #292929;
  background-color: #ecf5ff;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
}

.p-recruit__entry__business h3 {
  display: flex;
  align-items: center;
  width: fit-content;
  height: clamp(22px, 2.03125vw, 39px);
  margin: 0 auto;
  padding: 0 clamp(9px, 0.8333333333vw, 16px);
  font-size: clamp(13px, 1.1458333333vw, 22px);
  color: #ffffff;
  background-color: #085cac;
}

.p-recruit__entry__business > p {
  margin-top: clamp(11px, 0.9895833333vw, 19px);
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.7;
  text-align: center;
}

.p-recruit__entry__business__cycle {
  width: clamp(286px, 26.0416666667vw, 500px);
  height: clamp(254px, 23.0729166667vw, 443px);
  margin: clamp(21px, 1.9270833333vw, 37px) auto 0;
}

.p-recruit__entry__business__cycle .c-cycle {
  transform: scale(calc(clamp(286px, 26.0416666667vw, 500px) / 590px));
}

.p-recruit__entry__business__cycle .c-cycle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(215.64deg, #ecf5ff 10%, #cbe4ff 55%, #b7d7fa 91%);
  -webkit-mask-image: url("../img/strengths/feature_cycle_path.png");
  mask-image: url("../img/strengths/feature_cycle_path.png");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  mix-blend-mode: multiply;
}

@media (max-width: 750px) {
  .p-recruit__entry__item.--business {
    padding: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__btn {
    justify-content: center;
    gap: clamp(15px, 4vw, 30px);
    width: fit-content;
    max-width: 100%;
    height: clamp(60px, 16vw, 120px);
    margin: clamp(30px, 8vw, 60px) auto 0;
    padding-left: clamp(20px, 5.3333333333vw, 40px);
    padding-right: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(24px, 6.4vw, 48px);
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-recruit__entry__btn img {
    width: clamp(12px, 3.2vw, 24px);
  }
  .p-recruit__entry__business {
    padding: clamp(30px, 8vw, 60px) clamp(10px, 2.6666666667vw, 20px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__entry__business h3 {
    height: clamp(32px, 8.5333333333vw, 64px);
    padding: 0 clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-recruit__entry__business h3 {
    height: auto;
    min-height: clamp(32px, 8.5333333333vw, 64px);
    margin-left: 0;
    margin-right: auto;
    padding: clamp(4px, 1.0666666667vw, 8px) clamp(10px, 2.6666666667vw, 20px);
    line-height: 1.3;
    text-align: left;
  }
  .p-recruit__entry__business > p {
    margin-top: clamp(15px, 4vw, 30px);
    padding: 0 clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-recruit__entry__business > p br {
    display: none;
  }
  .p-recruit__entry__business__cycle {
    width: clamp(280px, 74.6666666667vw, 560px);
    height: clamp(248px, 66.1333333333vw, 496px);
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__entry__business__cycle .c-cycle {
    transform: scale(calc(clamp(280px, 74.6666666667vw, 560px) / 590px));
  }
}
.p-recruit__gallery {
  padding-top: clamp(39px, 3.5416666667vw, 68px);
}

.p-recruit__gallery__track {
  display: flex;
  align-items: flex-start;
  width: max-content;
  will-change: transform;
  animation: p-recruit-gallery 40s linear infinite;
}

.p-recruit__gallery__track li {
  flex-shrink: 0;
  margin-right: clamp(6px, 0.5208333333vw, 10px);
}

.p-recruit__gallery__track li:nth-child(even) {
  margin-top: clamp(26px, 2.34375vw, 45px);
}

.p-recruit__gallery__track img {
  display: block;
  width: clamp(273px, 24.7916666667vw, 476px);
  height: clamp(193px, 17.5520833333vw, 337px);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

@media (max-width: 750px) {
  .p-recruit__gallery {
    padding-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-recruit__gallery__track li {
    margin-right: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-recruit__gallery__track li:nth-child(even) {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-recruit__gallery__track img {
    width: clamp(200px, 53.3333333333vw, 400px);
    height: clamp(142px, 37.8666666667vw, 284px);
    border-radius: clamp(6px, 1.6vw, 12px);
  }
}
@keyframes p-recruit-gallery {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-recruit__gallery__track {
    animation: none;
  }
}
.p-recruit__cta {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: clamp(31px, 2.8125vw, 54px) clamp(28px, 2.5vw, 48px) 0;
  padding: clamp(68px, 6.1979166667vw, 119px) 0 clamp(44px, 4.0104166667vw, 77px);
  color: #ffffff;
  text-align: center;
  background-color: #00386e;
  border: 3px solid #085cac;
  border-radius: clamp(5px, 0.46875vw, 9px);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.102);
}

.p-recruit__cta > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(3px, 0.3125vw, 6px);
  opacity: 0.7;
}

.p-recruit__cta h2 {
  position: relative;
  font-size: clamp(29px, 2.6041666667vw, 50px);
}

.p-recruit__cta p {
  position: relative;
  margin-top: clamp(16px, 1.4583333333vw, 28px);
  font-size: clamp(11px, 0.9895833333vw, 19px);
  line-height: 1.7;
}

.p-recruit__cta__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 0.8854166667vw, 17px);
  width: clamp(179px, 16.25vw, 312px);
  height: clamp(46px, 4.21875vw, 81px);
  margin-top: clamp(32px, 2.9166666667vw, 56px);
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.3909;
  color: #ffffff;
  background: linear-gradient(220.89deg, #ffd77e 18%, #ff6c00 57%);
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  z-index: 0;
  transition: color 0.3s ease-out;
}

.p-recruit__cta__btn .p-recruit__arrow {
  background-color: #ffffff;
}

.p-recruit__cta__btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: #ffffff;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.3s ease-out;
}

.p-recruit__cta__btn span span {
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.53;
}

@media (min-width: 750.11px) {
  .p-recruit__cta__btn:hover {
    color: #ff6c00;
    opacity: 1;
  }
  .p-recruit__cta__btn:hover::before {
    opacity: 1;
  }
}
@media (max-width: 750px) {
  .p-recruit__cta {
    margin: clamp(40px, 10.6666666667vw, 80px) clamp(20px, 5.3333333333vw, 40px) 0;
    padding: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-recruit__cta > img {
    object-position: 8% center;
    border-radius: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-recruit__cta h2 {
    font-size: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-recruit__cta p {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-recruit__cta p br {
    display: none;
  }
  .p-recruit__cta__btn {
    gap: clamp(15px, 4vw, 30px);
    width: clamp(260px, 69.3333333333vw, 520px);
    height: clamp(68px, 18.1333333333vw, 136px);
    margin-top: clamp(30px, 8vw, 60px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-recruit__cta__btn span span {
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(22px, 5.8666666667vw, 44px);
  }
}
@media (min-width: 750.11px) {
  .c-hero.--business {
    gap: clamp(23px, 2.0833333333vw, 40px);
    padding-bottom: clamp(30px, 2.7083333333vw, 52px);
  }
  .c-hero.--business .c-hero__content {
    width: clamp(371px, 33.75vw, 648px);
    margin-left: 12%;
    padding-top: clamp(16px, 1.4583333333vw, 28px);
  }
  .c-hero.--business .c-hero__title .en {
    margin-top: clamp(8px, 0.7291666667vw, 14px);
  }
  .c-hero.--business .c-hero__visual {
    flex: 0 1 clamp(541px, 49.1666666667vw, 944px);
  }
}
.p-business__hero__intro h2 {
  margin-top: clamp(25px, 2.2395833333vw, 43px);
  color: #292929;
  font-size: clamp(23px, 2.1354166667vw, 41px);
  line-height: 1.5;
}

.p-business__hero__intro p {
  margin-top: clamp(15px, 1.40625vw, 27px);
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-business__hero__visual {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  height: auto;
}

.p-business__hero__visual img {
  border-radius: 0;
}

.p-business__hero__cycle {
  flex-shrink: 0;
  width: clamp(353px, 32.0833333333vw, 616px);
  height: clamp(312px, 28.3854166667vw, 545px);
}

.p-business__hero__cycle .c-cycle {
  transform: scale(calc(clamp(353px, 32.0833333333vw, 616px) / 590px));
}

.p-business__hero__cycle .c-cycle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(215.64deg, #ecf5ff 10%, #cbe4ff 55%, #b7d7fa 91%);
  -webkit-mask-image: url("../img/strengths/feature_cycle_path.png");
  mask-image: url("../img/strengths/feature_cycle_path.png");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  mix-blend-mode: multiply;
}

.p-business__panel {
  margin: 0 clamp(14px, 1.3020833333vw, 25px);
}

@media (max-width: 750px) {
  .p-business__panel {
    margin: 0;
  }
  .p-business__hero__intro h2 {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-business__hero__intro p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-business__hero__visual {
    justify-content: center;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-business__hero__cycle {
    width: clamp(303px, 80.8vw, 606px);
    height: clamp(268px, 71.4666666667vw, 536px);
    margin: 0 auto;
  }
  .p-business__hero__cycle .c-cycle {
    transform: scale(calc(clamp(303px, 80.8vw, 606px) / 590px));
  }
}
.p-business__panel > .p-business__block:first-child .p-business__banner {
  border-radius: clamp(23px, 2.0833333333vw, 40px) clamp(23px, 2.0833333333vw, 40px) 0 0;
}

@media (max-width: 750px) {
  .p-business__panel > .p-business__block:first-child .p-business__banner {
    border-radius: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) 0 0;
  }
}
.p-business__banner {
  position: relative;
  isolation: isolate;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: clamp(38px, 3.4895833333vw, 67px) clamp(49px, 4.4270833333vw, 85px) clamp(38px, 3.4375vw, 66px) clamp(135px, 12.2395833333vw, 235px);
  background: linear-gradient(240.06deg, #085cac 16%, #042e56 88%);
  color: #ffffff;
}

.p-business__banner__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: var(--z-bg);
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: color-burn;
}

.p-business__banner__body {
  width: clamp(315px, 28.6458333333vw, 550px);
  flex-shrink: 0;
  margin-top: clamp(1px, 0.1041666667vw, 2px);
}

.p-business__banner__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(88px, 8.0208333333vw, 154px);
}

.p-business__banner__head .num {
  padding-left: clamp(5px, 0.4166666667vw, 8px);
  font-family: "Roboto", sans-serif;
  font-size: clamp(74px, 6.7708333333vw, 130px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
  opacity: 0.25;
}

.p-business__banner__head h2 {
  margin-top: calc(clamp(52px, 4.6875vw, 90px) * -1);
  font-size: clamp(14px, 1.3020833333vw, 25px);
  white-space: nowrap;
}

.p-business__banner__body h3 {
  margin-top: clamp(36px, 3.28125vw, 63px);
  font-size: clamp(21px, 1.9270833333vw, 37px);
}

.p-business__banner__body .catch {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(9px, 0.8333333333vw, 16px);
  margin-top: clamp(7px, 0.6770833333vw, 13px);
  color: #292929;
  font-size: clamp(26px, 2.34375vw, 45px);
  line-height: 1;
  text-spacing-trim: space-all;
}

.p-business__banner__body .catch span {
  padding: clamp(5px, 0.46875vw, 9px) clamp(17px, 1.5625vw, 30px) clamp(6px, 0.5729166667vw, 11px);
  border-radius: clamp(6px, 0.5729166667vw, 11px);
  background-color: #ffffff;
  white-space: nowrap;
  font-weight: 700;
}

.p-business__banner__body > p:not([class]) {
  margin-top: clamp(22px, 1.9791666667vw, 38px);
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-business__banner__photos {
  display: flex;
  width: clamp(505px, 45.9375vw, 882px);
  flex-shrink: 0;
}

.p-business__banner__photos img {
  flex: 1;
  min-width: 0;
}

.p-business__banner__photos img:first-child {
  border-top-left-radius: clamp(11px, 1.0416666667vw, 20px);
  border-bottom-left-radius: clamp(11px, 1.0416666667vw, 20px);
}

.p-business__banner__photos img:last-child {
  border-top-right-radius: clamp(11px, 1.0416666667vw, 20px);
  border-bottom-right-radius: clamp(11px, 1.0416666667vw, 20px);
}

.p-business__block.--scrap .p-business__banner {
  padding-bottom: clamp(40px, 3.59375vw, 69px);
}

.p-business__block.--scrap .p-business__banner__photos {
  margin-top: clamp(2px, 0.15625vw, 3px);
}

.p-business__block.--scrap .p-business__banner__body {
  width: clamp(321px, 29.1666666667vw, 560px);
}

.p-business__block.--scrap .p-business__banner__body h3 {
  white-space: nowrap;
}

.p-business__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(15px, 1.40625vw, 27px);
  width: clamp(211px, 19.1666666667vw, 368px);
  height: clamp(46px, 4.21875vw, 81px);
  margin-top: clamp(29px, 2.6041666667vw, 50px);
  border: 1px solid #ffffff;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1.6105;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-business__btn__arrow {
  display: grid;
}

.p-business__btn__arrow img {
  grid-area: 1/1;
  transition: opacity 0.3s ease-out;
}

.p-business__btn__arrow .--blue {
  opacity: 0;
}

.p-business__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
}

@media (min-width: 750.11px) {
  .p-business__btn:hover {
    background-color: #ffffff;
    color: #085cac;
    opacity: 1;
  }
  .p-business__btn:hover .p-business__btn__arrow .--blue {
    opacity: 1;
  }
}
@media (max-width: 750px) {
  .p-business__banner,
  .p-business__block.--scrap .p-business__banner {
    display: block;
    padding: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__banner__body,
  .p-business__block.--scrap .p-business__banner__body {
    width: auto;
    margin-top: 0;
  }
  .p-business__banner__head {
    align-items: flex-start;
    width: auto;
  }
  .p-business__banner__head .num {
    padding-left: 0;
    font-size: clamp(80px, 21.3333333333vw, 160px);
  }
  .p-business__banner__head h2 {
    margin-top: calc(clamp(55px, 14.6666666667vw, 110px) * -1);
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__banner__body h3 {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__block.--scrap .p-business__banner__body h3 {
    white-space: normal;
  }
  .p-business__banner__body .catch {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(24px, 6.4vw, 48px);
  }
  .p-business__banner__body .catch span {
    padding: clamp(5px, 1.3333333333vw, 10px) clamp(15px, 4vw, 30px) clamp(6px, 1.6vw, 12px);
    border-radius: clamp(6px, 1.6vw, 12px);
  }
  html[lang=en] .p-business__banner__body .catch {
    width: 100%;
  }
  html[lang=en] .p-business__banner__body .catch span {
    white-space: normal;
    max-width: 100%;
  }
  .p-business__banner__body > p:not([class]) {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-business__banner__body > p:not([class]) br {
    display: none;
  }
  .p-business__banner__photos,
  .p-business__block.--scrap .p-business__banner__photos {
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-business__banner__photos img:first-child {
    border-top-left-radius: clamp(10px, 2.6666666667vw, 20px);
    border-bottom-left-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-business__banner__photos img:last-child {
    border-top-right-radius: clamp(10px, 2.6666666667vw, 20px);
    border-bottom-right-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-business__btn {
    gap: clamp(15px, 4vw, 30px);
    width: clamp(260px, 69.3333333333vw, 520px);
    height: clamp(60px, 16vw, 120px);
    margin: clamp(30px, 8vw, 60px) auto 0;
    border-radius: clamp(30px, 8vw, 60px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-business__btn {
    width: fit-content;
    max-width: 100%;
    padding-left: clamp(20px, 5.3333333333vw, 40px);
    padding-right: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__btn img {
    width: clamp(12px, 3.2vw, 24px);
  }
}
.p-business__detail {
  padding: clamp(45px, 4.0625vw, 78px) 0 clamp(128px, 11.6666666667vw, 224px);
  background: radial-gradient(103% 103% at 50% 0, #ecf5ff 0%, #ecf5ff 42%, #cbe4ff 100%);
  color: #292929;
}

.p-business__lead {
  font-size: clamp(20px, 1.8229166667vw, 35px);
  line-height: 1.7;
  text-align: center;
  font-weight: 700;
}

.p-business__lead span {
  color: #085cac;
}

@media (max-width: 750px) {
  .p-business__detail {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(60px, 16vw, 120px);
  }
  .p-business__lead {
    padding: 0 clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(18px, 4.8vw, 36px);
  }
}
.p-business__point {
  margin-top: clamp(63px, 5.7291666667vw, 110px);
}

.p-business__block.--processing .p-business__point {
  margin-top: clamp(61px, 5.5208333333vw, 106px);
}

.p-business__block.--scrap .p-business__point {
  margin-top: clamp(78px, 7.1354166667vw, 137px);
}

.p-business__point__list {
  display: flex;
  flex-direction: column;
  gap: clamp(11px, 1.0416666667vw, 20px);
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin: clamp(29px, 2.6041666667vw, 50px) auto 0;
}

.p-business__point__card {
  display: flex;
  align-items: center;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background-color: rgba(255, 255, 255, 0.859);
  box-shadow: 0 0 6px rgba(8, 92, 172, 0.2);
}

.p-business__point__card.--reverse {
  flex-direction: row-reverse;
}

.p-business__point__card > img {
  width: clamp(362px, 32.9166666667vw, 632px);
  height: clamp(231px, 21.0416666667vw, 404px);
  border-radius: 0 clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px) 0;
  flex-shrink: 0;
}

.p-business__point__card.--reverse > img {
  border-radius: clamp(11px, 1.0416666667vw, 20px) 0 0 clamp(11px, 1.0416666667vw, 20px);
}

.p-business__point__body {
  flex: 1;
  padding-left: clamp(57px, 5.2083333333vw, 100px);
}

.p-business__point__card.--reverse .p-business__point__body {
  padding-left: clamp(68px, 6.1979166667vw, 119px);
}

.p-business__point__body .label {
  display: flex;
  align-items: center;
  width: clamp(56px, 5.0520833333vw, 97px);
  height: clamp(18px, 1.6145833333vw, 31px);
  padding-left: clamp(3px, 0.3125vw, 6px);
  background: linear-gradient(180deg, #5099de 0%, #0069cc 43%, #0e6cc4 100%);
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  font-style: italic;
  line-height: 1;
}

.p-business__point__body h4 {
  margin-top: clamp(23px, 2.0833333333vw, 40px);
  font-size: clamp(20px, 1.8229166667vw, 35px);
  line-height: 1.3;
}

.p-business__point__body p:not(.label) {
  width: clamp(344px, 31.25vw, 600px);
  margin-top: clamp(17px, 1.5625vw, 30px);
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

@media (min-width: 750.11px) {
  html[lang=en] .p-business__point__body {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  html[lang=en] .p-business__point__card > img {
    align-self: stretch;
    height: auto;
    aspect-ratio: 632/404;
    object-fit: cover;
  }
  html[lang=en] .p-business__btn {
    width: fit-content;
    max-width: 100%;
    padding-left: clamp(31px, 2.8125vw, 54px);
    padding-right: clamp(31px, 2.8125vw, 54px);
  }
}
@media (max-width: 750px) {
  .p-business__point,
  .p-business__block.--processing .p-business__point,
  .p-business__block.--scrap .p-business__point {
    margin: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-business__point__list {
    gap: clamp(20px, 5.3333333333vw, 40px);
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-business__point__card,
  .p-business__point__card.--reverse {
    flex-direction: column-reverse;
    align-items: stretch;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-business__point__card > img,
  .p-business__point__card.--reverse > img {
    width: 100%;
    height: auto;
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
  }
  .p-business__point__body,
  .p-business__point__card.--reverse .p-business__point__body {
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) clamp(30px, 8vw, 60px);
  }
  .p-business__point__body .label {
    width: clamp(78px, 20.8vw, 156px);
    height: clamp(25px, 6.6666666667vw, 50px);
    padding-left: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-business__point__body h4 {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: 1.5;
  }
  .p-business__point__body p:not(.label) {
    width: auto;
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-business__tech {
  margin-top: clamp(72px, 6.5104166667vw, 125px);
}

.p-business__tech__list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(10px, 0.8854166667vw, 17px) clamp(11px, 1.0416666667vw, 20px);
  width: clamp(688px, 62.5vw, 1200px);
  margin: clamp(40px, 3.59375vw, 69px) auto 0;
}

.p-business__tech__card {
  display: flex;
  flex-direction: column;
  width: clamp(338px, 30.7291666667vw, 590px);
  border: 2px solid #2793e9;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background-color: #ffffff;
}

.p-business__tech__card.--wide {
  width: 100%;
}

.p-business__tech__card h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(11px, 1.0416666667vw, 20px);
  height: clamp(36px, 3.2291666667vw, 62px);
  margin: -2px -2px 0;
  border-radius: clamp(11px, 1.0416666667vw, 20px) clamp(11px, 1.0416666667vw, 20px) 0 0;
  background: linear-gradient(270deg, #2793e9 0%, #0069c3 100%);
  color: #ffffff;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1;
}

.p-business__tech__card h4 .num {
  position: relative;
  top: 0.1em;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.p-business__tech__card p {
  margin: auto clamp(21px, 1.9270833333vw, 37px);
  padding: clamp(14px, 1.25vw, 24px) 0;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.9125;
  text-align: center;
}

.p-business__tech__card p.--list {
  text-align: left;
}

.p-business__tech__cols {
  display: flex;
  justify-content: center;
  gap: clamp(22px, 2.03125vw, 39px);
  margin: auto 0;
  padding: clamp(14px, 1.25vw, 24px) 0;
}

.p-business__tech__cols p {
  width: clamp(239px, 21.71875vw, 417px);
  margin: 0;
  padding: 0;
}

@media (max-width: 750px) {
  .p-business__tech {
    margin: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-business__tech__list {
    gap: clamp(15px, 4vw, 30px);
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-business__tech__card {
    width: 100%;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-business__tech__card h4 {
    gap: clamp(10px, 2.6666666667vw, 20px);
    height: clamp(44px, 11.7333333333vw, 88px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) 0 0;
    font-size: clamp(18px, 4.8vw, 36px);
  }
  .p-business__tech__card p {
    width: fit-content;
    margin: 0 auto;
    padding: clamp(17px, 4.6666666667vw, 35px) clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    text-align: left;
  }
  .p-business__tech__cols {
    display: block;
    width: fit-content;
    margin: 0 auto;
    padding: clamp(17px, 4.6666666667vw, 35px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__tech__cols p {
    width: auto;
    margin: 0;
    padding: 0;
  }
}
.p-business__block.--scrap .p-business__detail {
  padding: clamp(72px, 6.5625vw, 126px) 0 clamp(14px, 1.25vw, 24px);
  border-radius: 0 0 clamp(23px, 2.0833333333vw, 40px) clamp(23px, 2.0833333333vw, 40px);
}

.p-business__block.--processing .p-business__detail {
  padding-bottom: clamp(93px, 8.4895833333vw, 163px);
}

@media (max-width: 750px) {
  .p-business__block.--scrap .p-business__detail {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(30px, 8vw, 60px);
    border-radius: 0 0 clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-business__block.--processing .p-business__detail {
    padding-bottom: clamp(60px, 16vw, 120px);
  }
}
.p-scrap section[id] {
  scroll-margin-top: clamp(57px, 5.2083333333vw, 100px);
}

.p-scrap section.p-scrap__faq {
  scroll-margin-top: calc(clamp(2px, 0.2083333333vw, 4px) * -1);
}

@media (max-width: 750px) {
  .p-scrap section[id] {
    scroll-margin-top: clamp(50px, 13.3333333333vw, 100px);
  }
  .p-scrap section.p-scrap__faq {
    scroll-margin-top: clamp(10px, 2.6666666667vw, 20px);
  }
}
.p-scrap__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(183px, 16.6666666667vw, 320px);
  height: clamp(50px, 4.53125vw, 87px);
  border-radius: clamp(26px, 2.3958333333vw, 46px);
  background: linear-gradient(44.2deg, #ff6c00 35%, #ffb57e 66%, #fa954a 78%);
  box-shadow: calc(clamp(1px, 0.1041666667vw, 2px) * -1) clamp(3px, 0.2604166667vw, 5px) 0 #c75400;
  color: #ffffff;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.53;
}

.p-scrap__btn__icon {
  width: clamp(15px, 1.40625vw, 27px);
  margin-right: clamp(8px, 0.7291666667vw, 14px);
}

.p-scrap__btn__arrow {
  width: clamp(9px, 0.8333333333vw, 16px);
  margin-left: clamp(6px, 0.5208333333vw, 10px);
}

@media (max-width: 750px) {
  .p-scrap__btn {
    width: clamp(260px, 69.3333333333vw, 520px);
    height: clamp(60px, 16vw, 120px);
    border-radius: clamp(30px, 8vw, 60px);
    box-shadow: calc(clamp(1px, 0.2666666667vw, 2px) * -1) clamp(3px, 0.8vw, 6px) 0 #c75400;
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__btn__icon {
    width: clamp(20px, 5.3333333333vw, 40px);
    margin-right: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-scrap__btn__arrow {
    width: clamp(12px, 3.2vw, 24px);
    margin-left: clamp(8px, 2.1333333333vw, 16px);
  }
}
@media (min-width: 750.11px) {
  .p-scrap__btn {
    background: linear-gradient(44.2deg, #ff6c00 13.66%, #ffb57e 25.75%, #fa954a 30.43%, #fa954a 39.02%, #ff6c00 60.98%, #ff6c00 74.64%, #ffb57e 86.73%, #fa954a 91.42%) 0 0/300% 100%;
    transition: background-position 0.8s ease-in-out;
  }
  .p-scrap__btn:hover {
    background-position: 100% 0;
    opacity: 1;
  }
}
.p-scrap__fv {
  position: sticky;
  top: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100vh;
  padding: 0 clamp(57px, 5.2083333333vw, 100px) clamp(40px, 3.6458333333vw, 70px);
  background: linear-gradient(212.96deg, #39ba98 43%, #276756 87%);
}

.p-scrap__fv__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.145;
}

.p-scrap__fv__photo {
  position: absolute;
  top: clamp(80px, 7.2916666667vw, 140px);
  left: clamp(149px, 13.5416666667vw, 260px);
  right: 0;
  bottom: 0;
}

.p-scrap__fv__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(23px, 2.0833333333vw, 40px) 0 0 0;
}

.p-scrap__fv__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: clamp(23px, 2.0833333333vw, 40px) 0 0 0;
  background: linear-gradient(203.93deg, rgba(255, 255, 255, 0) 46%, #808080 79%);
  mix-blend-mode: multiply;
}

.p-scrap__fv__mark {
  position: absolute;
  top: clamp(57px, 5.2083333333vw, 100px);
  left: calc(clamp(101px, 9.1666666667vw, 176px) * -1);
  width: clamp(592px, 53.8541666667vw, 1034px);
}

.p-scrap__fv__body {
  position: relative;
  color: #ffffff;
}

.p-scrap__fv__labels {
  display: flex;
  align-items: center;
  gap: clamp(9px, 0.8333333333vw, 16px);
}

.p-scrap__fv__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(179px, 16.25vw, 312px);
  height: clamp(28px, 2.5520833333vw, 49px);
  padding-bottom: clamp(2px, 0.15625vw, 3px);
  border: 1px solid #39ba98;
  border-radius: clamp(14px, 1.3020833333vw, 25px);
  background-color: rgba(255, 255, 255, 0.77);
  backdrop-filter: blur(50px) brightness(1.15);
  color: #292929;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  line-height: 1.3909;
  font-weight: 700;
  white-space: nowrap;
}

.p-scrap__fv__label.--short {
  width: clamp(116px, 10.5208333333vw, 202px);
}

.p-scrap__fv__catch {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(3px, 0.3125vw, 6px);
  margin-top: clamp(22px, 1.9791666667vw, 38px);
  font-size: clamp(46px, 4.1666666667vw, 80px);
  line-height: 1;
  text-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
}

.p-scrap__fv__catch > span {
  display: flex;
  align-items: baseline;
}

.p-scrap__fv__catch .box {
  margin-right: clamp(7px, 0.6770833333vw, 13px);
  padding: clamp(8px, 0.7291666667vw, 14px) clamp(13px, 1.1458333333vw, 22px) clamp(13px, 1.1458333333vw, 22px) clamp(12px, 1.09375vw, 21px);
  border-radius: 2px;
  background-color: #ffffff;
  color: #0b503e;
  text-shadow: none;
}

.p-scrap__fv__catch .box.--green {
  padding: clamp(8px, 0.7291666667vw, 14px) clamp(11px, 0.9895833333vw, 19px) clamp(13px, 1.1458333333vw, 22px);
  background: linear-gradient(65.75deg, #39ba98 21%, #6fc641 84%);
  color: #ffffff;
}

.p-scrap__fv__catch .small {
  font-size: clamp(40px, 3.6458333333vw, 70px);
}

.p-scrap__fv__body > p:not([class]) {
  width: clamp(404px, 36.71875vw, 705px);
  margin-top: clamp(21px, 1.9270833333vw, 37px);
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.7;
  text-shadow: 0 3px 7px rgba(0, 0, 0, 0.416);
  font-weight: 700;
}

.p-scrap__fv .p-scrap__btn {
  margin: clamp(23px, 2.0833333333vw, 40px) 0 0 clamp(1px, 0.1041666667vw, 2px);
}

.p-scrap__fv__points {
  position: absolute;
  bottom: clamp(17px, 1.5625vw, 30px);
  right: clamp(25px, 2.2395833333vw, 43px);
  display: flex;
  gap: clamp(10px, 0.8854166667vw, 17px);
}

.p-scrap__fv__points li {
  position: relative;
  width: clamp(142px, 12.9166666667vw, 248px);
  height: clamp(142px, 12.9166666667vw, 248px);
  padding: clamp(46px, 4.21875vw, 81px) clamp(4px, 0.3645833333vw, 7px) 0 0;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.47);
  box-shadow: 0 3px 7.5px rgba(116, 165, 135, 0.203);
  text-align: center;
}

.p-scrap__fv__points li::before {
  content: "";
  position: absolute;
  top: clamp(5px, 0.46875vw, 9px);
  left: clamp(5px, 0.46875vw, 9px);
  width: clamp(131px, 11.9270833333vw, 229px);
  height: clamp(131px, 11.9270833333vw, 229px);
  border-radius: 50%;
  background: radial-gradient(circle at 61% 32%, rgba(255, 255, 255, 0.745) 0, #ffffff clamp(58px, 5.3125vw, 102px));
  box-shadow: 0 3px 7.5px rgba(116, 165, 135, 0.431);
}

.p-scrap__fv__points img {
  position: absolute;
}

.p-scrap__fv__points li:nth-child(1) img {
  top: clamp(24px, 2.1875vw, 42px);
  left: clamp(25px, 2.2395833333vw, 43px);
  width: clamp(93px, 8.4375vw, 162px);
}

.p-scrap__fv__points li:nth-child(2) img {
  top: clamp(28px, 2.5520833333vw, 49px);
  left: clamp(29px, 2.6041666667vw, 50px);
  width: clamp(85px, 7.7604166667vw, 149px);
}

.p-scrap__fv__points p {
  position: relative;
  color: #0b503e;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: clamp(23px, 2.0833333333vw, 40px);
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
  font-weight: 700;
}

.p-scrap__fv__points span {
  font-size: clamp(17px, 1.5104166667vw, 29px);
}

.p-scrap__fv__points li:nth-child(1) span {
  color: #fb6b04;
}

.p-scrap__fv__points li:nth-child(2) span {
  color: #ff6c02;
}

@media (max-width: 750px) {
  .p-scrap__fv {
    position: relative;
    height: auto;
    padding: clamp(70px, 18.6666666667vw, 140px) clamp(20px, 5.3333333333vw, 40px) clamp(50px, 13.3333333333vw, 100px);
  }
  .p-scrap__fv__photo {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    height: clamp(300px, 80vw, 600px);
    margin-right: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
  }
  .p-scrap__fv__photo img,
  .p-scrap__fv__photo::after {
    border-radius: clamp(20px, 5.3333333333vw, 40px) 0 0 0;
  }
  .p-scrap__fv__mark {
    top: clamp(40px, 10.6666666667vw, 80px);
    left: calc(clamp(80px, 21.3333333333vw, 160px) * -1);
    width: clamp(400px, 106.6666666667vw, 800px);
  }
  .p-scrap__fv__body {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-scrap__fv__labels {
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__fv__label {
    width: clamp(180px, 48vw, 360px);
    height: clamp(30px, 8vw, 60px);
    padding-bottom: clamp(2px, 0.5333333333vw, 4px);
    border-radius: clamp(15px, 4vw, 30px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-scrap__fv__label.--short {
    width: clamp(115px, 30.6666666667vw, 230px);
  }
  .p-scrap__fv__catch {
    gap: clamp(4px, 1.0666666667vw, 8px);
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-scrap__fv__catch .box {
    margin-right: clamp(5px, 1.3333333333vw, 10px);
    padding: clamp(6px, 1.6vw, 12px) clamp(9px, 2.4vw, 18px) clamp(9px, 2.4vw, 18px) clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__fv__catch .box.--green {
    padding: clamp(6px, 1.6vw, 12px) clamp(8px, 2.1333333333vw, 16px) clamp(9px, 2.4vw, 18px);
  }
  .p-scrap__fv__catch .small {
    font-size: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-scrap__fv__body > p:not([class]) {
    width: auto;
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.8;
  }
  .p-scrap__fv__body > p:not([class]) br {
    display: none;
  }
  .p-scrap__fv .p-scrap__btn {
    margin: clamp(25px, 6.6666666667vw, 50px) 0 0;
  }
  .p-scrap__fv__points {
    top: clamp(240px, 64vw, 480px);
    bottom: auto;
    right: clamp(10px, 2.6666666667vw, 20px);
    gap: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__fv__points li {
    width: clamp(120px, 32vw, 240px);
    height: clamp(120px, 32vw, 240px);
    padding: clamp(39px, 10.4vw, 78px) clamp(3px, 0.8vw, 6px) 0 0;
  }
  .p-scrap__fv__points li::before {
    top: clamp(4px, 1.0666666667vw, 8px);
    left: clamp(4px, 1.0666666667vw, 8px);
    width: clamp(112px, 29.8666666667vw, 224px);
    height: clamp(112px, 29.8666666667vw, 224px);
    background: radial-gradient(circle at 61% 32%, rgba(255, 255, 255, 0.745) 0, #ffffff clamp(49px, 13.0666666667vw, 98px));
  }
  .p-scrap__fv__points li:nth-child(1) img {
    top: clamp(20px, 5.3333333333vw, 40px);
    left: clamp(21px, 5.6vw, 42px);
    width: clamp(78px, 20.8vw, 156px);
  }
  .p-scrap__fv__points li:nth-child(2) img {
    top: clamp(24px, 6.4vw, 48px);
    left: clamp(24px, 6.4vw, 48px);
    width: clamp(72px, 19.2vw, 144px);
  }
  .p-scrap__fv__points p {
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-scrap__fv__points span {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
}
.p-scrap__concerns {
  position: relative;
  width: 100%;
  background-color: #ecf5ff;
}

.p-scrap__concerns__panel {
  position: relative;
  z-index: var(--z-float);
  padding: clamp(67px, 6.09375vw, 117px) 0 clamp(40px, 3.6458333333vw, 70px);
  border-radius: clamp(52px, 4.6875vw, 90px);
  background: linear-gradient(180deg, #ffffff 0%, #aceada 106%);
}

.p-scrap__concerns__panel::before,
.p-scrap__concerns__panel::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(50% - clamp(25px, 2.2916666667vw, 44px));
  width: clamp(50px, 4.5833333333vw, 88px);
  height: clamp(26px, 2.3958333333vw, 46px);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.p-scrap__concerns__panel::before {
  top: calc(100% - 1px);
  height: calc(clamp(26px, 2.3958333333vw, 46px) + 1px);
  background: linear-gradient(180deg, #b1ebdb, #aceada);
}

.p-scrap__concerns__panel::after {
  background: url("../img/scrap/concerns_bg.jpg") center bottom/clamp(1100px, 100vw, 1920px) clamp(411px, 37.34375vw, 717px);
  opacity: 0.146;
}

.p-scrap__concerns__panel__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(52px, 4.6875vw, 90px);
  opacity: 0.146;
}

.p-scrap__concerns__inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin: 0 auto;
}

.p-scrap__concerns__head {
  margin-top: clamp(9px, 0.8333333333vw, 16px);
  color: #292929;
}

.p-scrap__concerns__label {
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.5729166667vw, 11px);
  height: clamp(28px, 2.5520833333vw, 49px);
  margin-left: clamp(1px, 0.1041666667vw, 2px);
  padding: 0 clamp(17px, 1.5104166667vw, 29px);
  border-radius: clamp(14px, 1.3020833333vw, 25px);
  background-color: #ffffff;
  color: #008b41;
  font-family: "Play", sans-serif;
  font-size: clamp(15px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1.1333;
}

.p-scrap__concerns__label::before {
  content: "";
  width: clamp(5px, 0.4166666667vw, 8px);
  height: clamp(5px, 0.4166666667vw, 8px);
  border-radius: 50%;
  background-color: #ff9b52;
}

.p-scrap__concerns__head h2 {
  position: relative;
  z-index: var(--z-base);
  margin-top: clamp(15px, 1.3541666667vw, 26px);
  font-size: clamp(37px, 3.3854166667vw, 65px);
}

.p-scrap__concerns__head h2 span {
  color: #0b503e;
  font-size: clamp(45px, 4.0625vw, 78px);
}

.p-scrap__concerns__deco {
  position: absolute;
  top: clamp(40px, 3.6458333333vw, 70px);
  left: clamp(112px, 10.2083333333vw, 196px);
  z-index: var(--z-bg);
  width: clamp(157px, 14.2708333333vw, 274px);
}

.p-scrap__concerns__head > p:not([class]) {
  width: clamp(283px, 25.7291666667vw, 494px);
  margin-top: clamp(11px, 0.9895833333vw, 19px);
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.7;
}

.p-scrap__concerns__problems {
  position: relative;
  width: clamp(447px, 40.625vw, 780px);
}

.p-scrap__concerns__list {
  padding: clamp(4px, 0.3645833333vw, 7px) clamp(10px, 0.9375vw, 18px) clamp(3px, 0.3125vw, 6px);
  border-radius: clamp(17px, 1.5625vw, 30px);
  background-color: #292929;
  color: #ffffff;
  font-size: clamp(13px, 1.1979166667vw, 23px);
  line-height: 1.3304;
}

.p-scrap__concerns__list li {
  display: flex;
  align-items: center;
  height: clamp(53px, 4.7916666667vw, 92px);
  padding-left: clamp(84px, 7.6041666667vw, 146px);
  font-weight: 700;
}

.p-scrap__concerns__list li + li {
  border-top: 2px dotted #ffffff;
}

.p-scrap__concerns__list img {
  width: clamp(18px, 1.6666666667vw, 32px);
  margin-right: clamp(7px, 0.6770833333vw, 13px);
}

.p-scrap__concerns__list span {
  color: #ff6c00;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1.224;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}

.p-scrap__concerns__person {
  position: absolute;
  top: clamp(157px, 14.1666666667vw, 272px);
}

.p-scrap__concerns__person.--01 {
  left: calc(clamp(32px, 2.8645833333vw, 55px) * -1);
  width: clamp(116px, 10.5729166667vw, 203px);
}

.p-scrap__concerns__person.--02 {
  left: clamp(383px, 34.7916666667vw, 668px);
  width: clamp(97px, 8.8020833333vw, 169px);
}

.p-scrap__concerns__etc {
  margin-top: clamp(15px, 1.3541666667vw, 26px);
  padding-left: clamp(203px, 18.4895833333vw, 355px);
  color: #292929;
  font-size: clamp(17px, 1.5104166667vw, 29px);
  line-height: 1.0552;
  font-weight: 700;
}

.p-scrap__concerns__band {
  position: relative;
  margin-top: calc(clamp(73px, 6.6666666667vw, 128px) * -1);
  padding: clamp(142px, 12.9166666667vw, 248px) 0 clamp(68px, 6.1458333333vw, 118px);
  background: linear-gradient(174.18deg, #003f45 33%, #20918d 83%);
  text-align: center;
}

.p-scrap__concerns__band__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.32;
}

.p-scrap__concerns__photo {
  position: absolute;
  z-index: var(--z-float);
  border-radius: 50%;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.322);
}

.p-scrap__concerns__photo.--01 {
  top: clamp(56px, 5.0520833333vw, 97px);
  left: clamp(33px, 3.0208333333vw, 58px);
  width: clamp(158px, 14.375vw, 276px);
}

.p-scrap__concerns__photo.--02 {
  top: clamp(214px, 19.4270833333vw, 373px);
  left: clamp(149px, 13.5416666667vw, 260px);
  width: clamp(77px, 6.9791666667vw, 134px);
}

.p-scrap__concerns__photo.--03 {
  top: clamp(60px, 5.4166666667vw, 104px);
  right: clamp(6px, 0.5729166667vw, 11px);
  width: clamp(200px, 18.1770833333vw, 349px);
}

.p-scrap__concerns__message {
  position: relative;
  display: inline-block;
  margin-left: clamp(19px, 1.7708333333vw, 34px);
  color: #ffffff;
  font-size: clamp(36px, 3.28125vw, 63px);
  line-height: 1.4;
  font-weight: 700;
}

.p-scrap__concerns__message span {
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}

.p-scrap__concerns__message::before,
.p-scrap__concerns__message::after {
  content: "";
  position: absolute;
  top: clamp(26px, 2.3958333333vw, 46px);
  width: clamp(44px, 4.0104166667vw, 77px);
  height: clamp(85px, 7.7604166667vw, 149px);
  background-color: #ff6c00;
}

.p-scrap__concerns__message::before {
  left: calc(clamp(60px, 5.4166666667vw, 104px) * -1);
  clip-path: polygon(100% 100%, 0 10%, 30% 0);
}

.p-scrap__concerns__message::after {
  right: calc(clamp(34px, 3.0729166667vw, 59px) * -1);
  clip-path: polygon(0 100%, 70% 0, 100% 10%);
}

@media (max-width: 750px) {
  .p-scrap__concerns__panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0 clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-scrap__concerns__panel::before,
  .p-scrap__concerns__panel::after {
    left: calc(50% - clamp(15px, 4vw, 30px));
    width: clamp(30px, 8vw, 60px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__concerns__panel::before {
    height: calc(clamp(16px, 4.2666666667vw, 32px) + 1px);
  }
  .p-scrap__concerns__panel__bg {
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-scrap__concerns__inner {
    display: block;
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__concerns__head {
    margin-top: 0;
  }
  .p-scrap__concerns__label {
    gap: clamp(7px, 1.8666666667vw, 14px);
    height: clamp(30px, 8vw, 60px);
    margin-left: 0;
    padding: 0 clamp(18px, 4.8vw, 36px);
    border-radius: clamp(15px, 4vw, 30px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-scrap__concerns__label::before {
    width: clamp(5px, 1.3333333333vw, 10px);
    height: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-scrap__concerns__head h2 {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(30px, 8vw, 60px);
  }
  .p-scrap__concerns__head h2 span {
    font-size: clamp(36px, 9.6vw, 72px);
  }
  .p-scrap__concerns__deco {
    top: clamp(32px, 8.5333333333vw, 64px);
    left: clamp(90px, 24vw, 180px);
    width: clamp(126px, 33.6vw, 252px);
  }
  .p-scrap__concerns__head > p:not([class]) {
    width: auto;
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.8;
  }
  .p-scrap__concerns__head > p:not([class]) br {
    display: none;
  }
  .p-scrap__concerns__problems {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    width: auto;
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-scrap__concerns__list {
    width: 100%;
    padding: clamp(5px, 1.3333333333vw, 10px) clamp(15px, 4vw, 30px);
    border-radius: clamp(15px, 4vw, 30px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-scrap__concerns__list li {
    display: grid;
    grid-template-columns: clamp(24px, 6.4vw, 48px) 1fr;
    align-items: center;
    column-gap: clamp(10px, 2.6666666667vw, 20px);
    height: auto;
    padding: clamp(12px, 3.2vw, 24px) 0;
  }
  .p-scrap__concerns__list li + li {
    border-top-width: clamp(2px, 0.5333333333vw, 4px);
  }
  .p-scrap__concerns__list img {
    grid-row: 1/3;
    width: 100%;
    margin-right: 0;
  }
  .p-scrap__concerns__list span {
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__concerns__person {
    position: static;
    margin-top: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-scrap__concerns__person.--01 {
    width: clamp(90px, 24vw, 180px);
  }
  .p-scrap__concerns__person.--02 {
    order: 2;
    width: clamp(76px, 20.2666666667vw, 152px);
  }
  .p-scrap__concerns__etc {
    order: 1;
    margin: 0 0 clamp(10px, 2.6666666667vw, 20px);
    padding-left: 0;
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__concerns__band {
    margin-top: calc(clamp(60px, 16vw, 120px) * -1);
    padding: clamp(240px, 64vw, 480px) 0 clamp(50px, 13.3333333333vw, 100px);
  }
  .p-scrap__concerns__photo.--01 {
    top: clamp(75px, 20vw, 150px);
    left: clamp(15px, 4vw, 30px);
    width: clamp(130px, 34.6666666667vw, 260px);
  }
  .p-scrap__concerns__photo.--02 {
    top: clamp(175px, 46.6666666667vw, 350px);
    left: clamp(150px, 32vw, 240px);
    width: clamp(60px, 16vw, 120px);
  }
  .p-scrap__concerns__photo.--03 {
    top: clamp(80px, 21.3333333333vw, 160px);
    right: clamp(15px, 4vw, 30px);
    width: clamp(150px, 40vw, 300px);
  }
  .p-scrap__concerns__message {
    margin-left: 0;
    font-size: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__concerns__message::before,
  .p-scrap__concerns__message::after {
    top: clamp(15px, 4vw, 30px);
    width: clamp(24px, 6.4vw, 48px);
    height: clamp(47px, 12.5333333333vw, 94px);
  }
  .p-scrap__concerns__message::before {
    left: calc(clamp(33px, 8.8vw, 66px) * -1);
  }
  .p-scrap__concerns__message::after {
    right: calc(clamp(19px, 5.0666666667vw, 38px) * -1);
  }
}
.p-scrap__ttl {
  position: relative;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
  text-align: center;
}

.p-scrap__ttl .en {
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.5729166667vw, 11px);
  height: clamp(28px, 2.5520833333vw, 49px);
  padding: 0 clamp(17px, 1.5104166667vw, 29px);
  border-radius: clamp(14px, 1.3020833333vw, 25px);
  background-color: #ff6c00;
  color: #ffffff;
  font-family: "Play", sans-serif;
  font-size: clamp(15px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1.1333;
}

.p-scrap__ttl .en::before {
  content: "";
  width: clamp(5px, 0.4166666667vw, 8px);
  height: clamp(5px, 0.4166666667vw, 8px);
  border-radius: 50%;
  background-color: #ffffff;
}

.p-scrap__ttl .ja {
  margin-top: clamp(11px, 1.0416666667vw, 20px);
  color: #0b503e;
  font-size: clamp(32px, 2.8645833333vw, 55px);
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}

.p-scrap__ttl.--dark .ja {
  color: #292929;
}

.p-scrap__ttl.--white .en {
  background-color: #ffffff;
  color: #292929;
}

.p-scrap__ttl.--white .en::before {
  background-color: #ff6c00;
}

.p-scrap__ttl.--white .ja {
  color: #ffffff;
}

.p-scrap__ttl.--left {
  text-align: left;
}

@media (max-width: 750px) {
  .p-scrap__ttl {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__ttl .en {
    gap: clamp(7px, 1.8666666667vw, 14px);
    height: clamp(30px, 8vw, 60px);
    padding: 0 clamp(18px, 4.8vw, 36px);
    border-radius: clamp(15px, 4vw, 30px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-scrap__ttl .en::before {
    width: clamp(5px, 1.3333333333vw, 10px);
    height: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-scrap__ttl .ja {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(24px, 6.4vw, 48px);
  }
  .p-scrap__ttl.--left {
    text-align: center;
  }
}
.p-scrap__point {
  position: relative;
  display: flex;
  height: clamp(424px, 38.5416666667vw, 740px);
  box-shadow: 0 3px 6.5px rgba(11, 80, 62, 0.173);
}

.p-scrap__point.--tall {
  height: clamp(477px, 43.3333333333vw, 832px);
}

.p-scrap__point.--reverse {
  flex-direction: row-reverse;
}

.p-scrap__point__body {
  position: relative;
  z-index: var(--z-float);
  flex-shrink: 0;
  width: 50%;
  padding: clamp(56px, 5.1041666667vw, 98px) clamp(81px, 7.34375vw, 141px) 0 clamp(92px, 8.3333333333vw, 160px);
  border-radius: 0 clamp(34px, 3.125vw, 60px) clamp(34px, 3.125vw, 60px) 0;
  background: linear-gradient(217.36deg, #39ba98 5.7%, #0b503e 75.1%);
  color: #ffffff;
}

.p-scrap__point.--tall .p-scrap__point__body {
  background: linear-gradient(214.18deg, #39ba98 6.5%, #0b503e 78%);
}

.p-scrap__point.--reverse .p-scrap__point__body {
  padding: clamp(62px, 5.6770833333vw, 109px) clamp(92px, 8.3333333333vw, 160px) 0 clamp(81px, 7.34375vw, 141px);
  border-radius: clamp(34px, 3.125vw, 60px) 0 0 clamp(34px, 3.125vw, 60px);
  background: linear-gradient(142.64deg, #ffa664 5.7%, #ff9445 27%, #d05901 75.1%);
}

.p-scrap__point.--reverse.--tall .p-scrap__point__body {
  background: linear-gradient(145.82deg, #ffa664 6.5%, #ff9445 28.4%, #d05901 78%);
}

.p-scrap__point__body .num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(69px, 6.25vw, 120px);
  height: clamp(69px, 6.25vw, 120px);
  border: 1.5px solid;
  border-radius: 50%;
  color: #ff9546;
  font-family: "Play", sans-serif;
  font-size: clamp(37px, 3.3333333333vw, 64px);
  line-height: 1;
}

.p-scrap__point.--reverse .p-scrap__point__body .num {
  color: #ffffff;
}

.p-scrap__point__body h3 {
  margin-top: clamp(20px, 1.8229166667vw, 35px);
  font-size: clamp(29px, 2.65625vw, 51px);
  line-height: 1.41;
}

.p-scrap__point__body .sub {
  margin-top: clamp(18px, 1.6145833333vw, 31px);
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1.64;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}

.p-scrap__point__body > p:not([class]) {
  margin-top: clamp(17px, 1.5104166667vw, 29px);
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-scrap__point__photo {
  flex: 1;
  margin-left: calc(clamp(34px, 3.125vw, 60px) * -1);
  background-color: #ffffff;
}

.p-scrap__point.--reverse .p-scrap__point__photo {
  margin: 0 calc(clamp(34px, 3.125vw, 60px) * -1) 0 0;
}

.p-scrap__point__photo > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-scrap__point:nth-child(4) .p-scrap__point__body .sub {
  white-space: nowrap;
}

.p-scrap__point:nth-child(6) .p-scrap__point__body {
  padding-top: clamp(83px, 7.5520833333vw, 145px);
}

.p-scrap__point__photo.--network {
  position: relative;
  background-color: #edfdf9;
}

.p-scrap__point__photo.--network > img:first-child {
  opacity: 0.17;
}

.p-scrap__point__photo.--network::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(39, 147, 233, 0.133);
}

.p-scrap__point__photo .p-scrap__reason__map {
  position: absolute;
  top: clamp(41px, 3.6979166667vw, 71px);
  left: clamp(51px, 4.6354166667vw, 89px);
  width: clamp(524px, 47.65625vw, 915px);
  height: auto;
}

.p-scrap__reason {
  position: relative;
  width: 100%;
  padding-top: clamp(105px, 9.5833333333vw, 184px);
  background-color: #edfdf9;
}

.p-scrap__reason__deco {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: clamp(344px, 31.25vw, 600px);
  clip-path: inset(0);
}

.p-scrap__reason__deco::before,
.p-scrap__reason__deco::after {
  content: "";
  position: absolute;
  filter: drop-shadow(0 3px 18px rgba(54, 172, 141, 0.192));
}

.p-scrap__reason__deco.--left::before,
.p-scrap__reason__deco.--left::after {
  top: 0;
  background: linear-gradient(to bottom right, #edfef9 50%, transparent 50%);
}

.p-scrap__reason__deco.--left::before {
  left: 0;
  width: clamp(393px, 35.7291666667vw, 686px);
  height: clamp(305px, 27.7083333333vw, 532px);
}

.p-scrap__reason__deco.--left::after {
  left: calc(clamp(54px, 4.9479166667vw, 95px) * -1);
  width: clamp(333px, 30.3125vw, 582px);
  height: clamp(258px, 23.4895833333vw, 451px);
}

.p-scrap__reason__deco.--right::before,
.p-scrap__reason__deco.--right::after {
  width: clamp(428px, 38.90625vw, 747px);
  height: clamp(332px, 30.15625vw, 579px);
  background: linear-gradient(to top left, #edfef9 50%, transparent 50%);
}

.p-scrap__reason__deco.--right::before {
  top: calc(clamp(38px, 3.4375vw, 66px) * -1);
  left: clamp(727px, 66.09375vw, 1269px);
}

.p-scrap__reason__deco.--right::after {
  top: calc(clamp(14px, 1.25vw, 24px) * -1);
  left: clamp(839px, 76.25vw, 1464px);
}

.p-scrap__reason__list {
  display: flex;
  flex-direction: column;
  gap: clamp(17px, 1.5625vw, 30px);
  margin-top: clamp(93px, 8.4114583333vw, 161.5px);
}

.p-scrap__reason__chart {
  width: clamp(363px, 33.0208333333vw, 634px);
  margin: clamp(68px, 6.1979166667vw, 119px) 0 0 clamp(115px, 10.4166666667vw, 200px);
  font-weight: 700;
  text-align: center;
}

.p-scrap__reason__chart__customer {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(36px, 3.28125vw, 63px);
  border-radius: clamp(17px, 1.5625vw, 30px);
  background-color: #ff6c00;
  color: #ffffff;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1.224;
}

.p-scrap__reason__chart__routes {
  display: flex;
  justify-content: space-between;
  margin-top: clamp(21px, 1.9270833333vw, 37px);
}

.p-scrap__reason__chart__route {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(172px, 15.625vw, 300px);
  padding-left: clamp(6px, 0.5729166667vw, 11px);
  color: #292929;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  line-height: 1.6105;
}

.p-scrap__reason__chart__route::before {
  content: "";
  position: absolute;
  top: calc(clamp(21px, 1.9270833333vw, 37px) * -1);
  left: clamp(88px, 8.0208333333vw, 154px);
  height: clamp(160px, 14.53125vw, 279px);
  border-left: 3px dotted #39ba98;
}

.p-scrap__reason__chart__route::after {
  content: "";
  width: clamp(24px, 2.1875vw, 42px);
  height: clamp(14px, 1.25vw, 24px);
  margin-top: clamp(5px, 0.46875vw, 9px);
  background-color: #39ba98;
  clip-path: polygon(0 0, 50% 43%, 100% 0, 50% 100%);
}

.p-scrap__reason__chart__route ul {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(7px, 0.6770833333vw, 13px);
  width: clamp(172px, 15.625vw, 300px);
  margin-left: calc(clamp(6px, 0.5729166667vw, 11px) * -1);
}

.p-scrap__reason__chart__route li {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(36px, 3.28125vw, 63px);
  border: 1px solid #39ba98;
  border-radius: clamp(17px, 1.5625vw, 30px);
  background-color: #e5fff8;
  color: #0b503e;
}

.p-scrap__reason__chart__route li:nth-child(2) {
  background-color: #b6f0e1;
}

.p-scrap__reason__chart__route li:nth-child(3) {
  background-color: #86e3cb;
}

.p-scrap__reason__chart__route > p {
  margin-top: clamp(18px, 1.6145833333vw, 31px);
}

.p-scrap__reason__chart__route.--direct {
  width: clamp(177px, 16.09375vw, 309px);
  padding-left: 0;
  color: #3255cc;
  font-size: clamp(15px, 1.40625vw, 27px);
  line-height: 1.1333;
}

.p-scrap__reason__chart__route.--direct::before {
  left: clamp(88px, 7.96875vw, 153px);
  border-left-color: #3255cc;
}

.p-scrap__reason__chart__route.--direct::after {
  background-color: #3255cc;
}

.p-scrap__reason__chart__route.--direct img {
  position: relative;
  width: clamp(177px, 16.09375vw, 309px);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-scrap__reason__chart__route.--direct > p {
  margin-top: clamp(17px, 1.5625vw, 30px);
}

.p-scrap__reason__chart__maker {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(50px, 4.5833333333vw, 88px);
  margin-top: clamp(11px, 0.9895833333vw, 19px);
  padding-left: clamp(10px, 0.8854166667vw, 17px);
  border-radius: clamp(27px, 2.4479166667vw, 47px);
  background: linear-gradient(70.48deg, #6a3406 46.3%, #c37e4b 77.7%, #9a5b2d 90.8%);
  color: #ffffff;
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1.224;
}

@media (max-width: 750px) {
  .p-scrap__point,
  .p-scrap__point.--tall {
    height: auto;
  }
  .p-scrap__point,
  .p-scrap__point.--reverse {
    flex-direction: column;
  }
  .p-scrap__point__body,
  .p-scrap__point.--reverse .p-scrap__point__body,
  .p-scrap__point:nth-child(6) .p-scrap__point__body {
    width: 100%;
    padding: clamp(40px, 10.6666666667vw, 80px) clamp(20px, 5.3333333333vw, 40px) clamp(45px, 12vw, 90px);
    border-radius: 0 0 clamp(30px, 8vw, 60px) clamp(30px, 8vw, 60px);
  }
  .p-scrap__point__body .num {
    width: clamp(60px, 16vw, 120px);
    height: clamp(60px, 16vw, 120px);
    font-size: clamp(32px, 8.5333333333vw, 64px);
  }
  .p-scrap__point__body h3 {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(24px, 6.4vw, 48px);
  }
  .p-scrap__point__body .sub {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-scrap__point__body > p:not([class]) {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.8;
  }
  .p-scrap__point:nth-child(4) .p-scrap__point__body .sub {
    white-space: normal;
  }
  .p-scrap__point__photo,
  .p-scrap__point.--reverse .p-scrap__point__photo {
    flex: none;
    height: clamp(290px, 77.3333333333vw, 580px);
    margin: calc(clamp(30px, 8vw, 60px) * -1) 0 0;
  }
  .p-scrap__point:nth-child(1) .p-scrap__point__photo {
    height: auto;
    padding-bottom: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-scrap__point__photo.--network {
    height: clamp(330px, 88vw, 660px);
  }
  .p-scrap__point__photo .p-scrap__reason__map {
    top: clamp(55px, 14.6666666667vw, 110px);
    left: clamp(20px, 5.3333333333vw, 40px);
    width: clamp(335px, 89.3333333333vw, 670px);
  }
  .p-scrap__reason {
    padding-top: clamp(70px, 18.6666666667vw, 140px);
  }
  .p-scrap__reason__deco {
    height: clamp(210px, 56vw, 420px);
  }
  .p-scrap__reason__deco.--left::before {
    width: clamp(240px, 64vw, 480px);
    height: clamp(186px, 49.6vw, 372px);
  }
  .p-scrap__reason__deco.--left::after {
    left: calc(clamp(33px, 8.8vw, 66px) * -1);
    width: clamp(204px, 54.4vw, 408px);
    height: clamp(158px, 42.1333333333vw, 316px);
  }
  .p-scrap__reason__deco.--right::before,
  .p-scrap__reason__deco.--right::after {
    width: clamp(261px, 69.6vw, 522px);
    height: clamp(203px, 54.1333333333vw, 406px);
  }
  .p-scrap__reason__deco.--right::before {
    top: calc(clamp(23px, 6.1333333333vw, 46px) * -1);
    left: clamp(248px, 66.1333333333vw, 496px);
  }
  .p-scrap__reason__deco.--right::after {
    top: calc(clamp(8px, 2.1333333333vw, 16px) * -1);
    left: clamp(286px, 76.2666666667vw, 572px);
  }
  .p-scrap__reason__list {
    gap: 0;
    margin-top: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-scrap__reason__chart {
    width: auto;
    margin: clamp(60px, 16vw, 120px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-scrap__reason__chart__customer {
    height: clamp(33px, 8.8vw, 66px);
    border-radius: clamp(16px, 4.2666666667vw, 32px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__reason__chart__routes {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__reason__chart__route {
    width: clamp(158px, 42.1333333333vw, 316px);
    padding-left: clamp(6px, 1.6vw, 12px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-scrap__reason__chart__route::before {
    top: calc(clamp(20px, 5.3333333333vw, 40px) * -1);
    left: clamp(81px, 21.6vw, 162px);
    height: clamp(147px, 39.2vw, 294px);
    border-left-width: clamp(2px, 0.5333333333vw, 4px);
  }
  .p-scrap__reason__chart__route::after {
    width: clamp(22px, 5.8666666667vw, 44px);
    height: clamp(13px, 3.4666666667vw, 26px);
    margin-top: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-scrap__reason__chart__route ul {
    gap: clamp(7px, 1.8666666667vw, 14px);
    width: clamp(158px, 42.1333333333vw, 316px);
    margin-left: calc(clamp(6px, 1.6vw, 12px) * -1);
  }
  .p-scrap__reason__chart__route li {
    height: clamp(33px, 8.8vw, 66px);
    border-radius: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__reason__chart__route > p {
    margin-top: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__reason__chart__route.--direct {
    width: clamp(163px, 43.4666666667vw, 326px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__reason__chart__route.--direct::before {
    left: clamp(81px, 21.6vw, 162px);
  }
  .p-scrap__reason__chart__route.--direct img {
    width: clamp(163px, 43.4666666667vw, 326px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-scrap__reason__chart__route.--direct > p {
    margin-top: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__reason__chart__maker {
    height: clamp(46px, 12.2666666667vw, 92px);
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    padding-left: clamp(9px, 2.4vw, 18px);
    border-radius: clamp(23px, 6.1333333333vw, 46px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
}
.p-scrap__scrap {
  position: relative;
  width: 100%;
  padding: clamp(21px, 1.9270833333vw, 37px) clamp(19px, 1.7708333333vw, 34px) clamp(26px, 2.34375vw, 45px);
  background-color: #ffffff;
}

.p-scrap__scrap__panel {
  position: relative;
  isolation: isolate;
  padding: clamp(94px, 8.5416666667vw, 164px) 0 clamp(95px, 8.6458333333vw, 166px);
  border-radius: clamp(23px, 2.0833333333vw, 40px);
  background: linear-gradient(180deg, #ffffff 0%, #d1f4eb 100%);
}

.p-scrap__scrap__panel__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(23px, 2.0833333333vw, 40px);
  opacity: 0.523;
  mix-blend-mode: multiply;
}

.p-scrap__scrap__body {
  position: relative;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin: clamp(56px, 5.1302083333vw, 98.5px) auto 0;
}

.p-scrap__scrap__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(22px, 2.03125vw, 39px) clamp(17px, 1.5104166667vw, 29px);
}

.p-scrap__scrap__list li {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(119px, 10.8333333333vw, 208px);
}

.p-scrap__scrap__list img {
  width: clamp(119px, 10.8333333333vw, 208px);
  height: clamp(119px, 10.8333333333vw, 208px);
  padding: clamp(11px, 1.0416666667vw, 20px) clamp(12px, 1.09375vw, 21px) clamp(13px, 1.1458333333vw, 22px);
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 0 8px rgba(11, 80, 62, 0.212);
}

.p-scrap__scrap__list p {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(56px, 5.0520833333vw, 97px);
  height: clamp(21px, 1.9270833333vw, 37px);
  margin-top: calc(clamp(13px, 1.1458333333vw, 22px) * -1);
  padding: 0 clamp(10px, 0.9375vw, 18px);
  border-radius: clamp(12px, 1.09375vw, 21px);
  background: linear-gradient(245.59deg, #39ba98 11.1%, #0b503e 72.6%);
  color: #ffffff;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.53;
  text-align: center;
}

.p-scrap__scrap__list li:nth-child(1) img {
  padding: clamp(10px, 0.9375vw, 18px) clamp(15px, 1.3541666667vw, 26px) clamp(14px, 1.25vw, 24px) clamp(9px, 0.8333333333vw, 16px);
}

.p-scrap__scrap__list li:nth-child(2) img {
  padding: clamp(15px, 1.40625vw, 27px) clamp(16px, 1.4583333333vw, 28px) clamp(17px, 1.5104166667vw, 29px);
}

.p-scrap__scrap__list li:nth-child(6) img {
  padding: clamp(9px, 0.78125vw, 15px) clamp(12px, 1.09375vw, 21px) clamp(15px, 1.40625vw, 27px);
}

.p-scrap__scrap__list li:nth-child(9) img {
  padding: clamp(11px, 1.0416666667vw, 20px) clamp(15px, 1.3541666667vw, 26px) clamp(18px, 1.6666666667vw, 32px);
}

.p-scrap__scrap__list li:nth-child(10) img {
  padding: clamp(11px, 1.0416666667vw, 20px) clamp(10px, 0.9375vw, 18px) clamp(13px, 1.1458333333vw, 22px) clamp(14px, 1.25vw, 24px);
}

.p-scrap__scrap__list li:nth-child(11) img {
  padding: clamp(16px, 1.4583333333vw, 28px) clamp(17px, 1.5104166667vw, 29px) clamp(17px, 1.5625vw, 30px);
}

.p-scrap__scrap__etc {
  position: absolute;
  top: clamp(262px, 23.8020833333vw, 457px);
  left: clamp(718px, 65.3125vw, 1254px);
  color: #0b503e;
  font-size: clamp(14px, 1.25vw, 24px);
  line-height: 1.275;
  white-space: nowrap;
}

@media (max-width: 750px) {
  .p-scrap__scrap {
    padding: clamp(15px, 4vw, 30px) clamp(11px, 2.9333333333vw, 22px) clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__scrap__panel {
    padding: clamp(50px, 13.3333333333vw, 100px) 0;
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__scrap__panel__bg {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__scrap__body {
    width: auto;
    margin: clamp(30px, 8vw, 60px) clamp(12px, 3.2vw, 24px) 0;
  }
  .p-scrap__scrap__list {
    gap: clamp(15px, 4vw, 30px) clamp(12px, 3.2vw, 24px);
  }
  .p-scrap__scrap__list li {
    width: clamp(100px, 26.6666666667vw, 200px);
  }
  .p-scrap__scrap__list img {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(100px, 26.6666666667vw, 200px);
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px) clamp(11px, 2.9333333333vw, 22px);
  }
  .p-scrap__scrap__list p {
    min-width: clamp(50px, 13.3333333333vw, 100px);
    height: clamp(24px, 6.4vw, 48px);
    margin-top: calc(clamp(12px, 3.2vw, 24px) * -1);
    padding: 0 clamp(10px, 2.6666666667vw, 20px);
    border-radius: clamp(12px, 3.2vw, 24px);
    font-size: clamp(12px, 3.2vw, 24px);
  }
  .p-scrap__scrap__list li:nth-child(1) img {
    padding: clamp(9px, 2.4vw, 18px) clamp(12px, 3.2vw, 24px) clamp(12px, 3.2vw, 24px) clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__scrap__list li:nth-child(2) img {
    padding: clamp(13px, 3.4666666667vw, 26px) clamp(13px, 3.4666666667vw, 26px) clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__scrap__list li:nth-child(6) img {
    padding: clamp(7px, 1.8666666667vw, 14px) clamp(10px, 2.6666666667vw, 20px) clamp(13px, 3.4666666667vw, 26px);
  }
  .p-scrap__scrap__list li:nth-child(9) img {
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(12px, 3.2vw, 24px) clamp(15px, 4vw, 30px);
  }
  .p-scrap__scrap__list li:nth-child(10) img {
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(9px, 2.4vw, 18px) clamp(11px, 2.9333333333vw, 22px) clamp(12px, 3.2vw, 24px);
  }
  .p-scrap__scrap__list li:nth-child(11) img {
    padding: clamp(13px, 3.4666666667vw, 26px) clamp(14px, 3.7333333333vw, 28px) clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__scrap__etc {
    position: static;
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    text-align: right;
  }
}
.p-scrap__cta {
  position: relative;
  z-index: var(--z-float);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-bottom: calc(clamp(89px, 8.125vw, 156px) * -1);
  padding: clamp(61px, 5.5208333333vw, 106px) 0 clamp(55px, 5vw, 96px);
  border-radius: clamp(46px, 4.1666666667vw, 80px);
  background: linear-gradient(9.38deg, #001a13 31%, #179675 114.5%);
  color: #ffffff;
  text-align: center;
}

.p-scrap__cta.--footer {
  margin-top: calc(clamp(261px, 23.6979166667vw, 455px) * -1);
  margin-bottom: calc(clamp(58px, 5.3125vw, 102px) * -1);
}

.p-scrap__cta__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: var(--z-bg);
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(46px, 4.1666666667vw, 80px);
  opacity: 0.171;
}

.p-scrap__cta h2 {
  font-size: clamp(28px, 2.5vw, 48px);
}

.p-scrap__cta p {
  margin-top: clamp(17px, 1.5104166667vw, 29px);
  font-size: clamp(10px, 0.8854166667vw, 17px);
  line-height: 1.8;
}

.p-scrap__cta .p-scrap__btn {
  margin-top: clamp(32px, 2.8645833333vw, 55px);
}

@media (max-width: 750px) {
  .p-scrap__cta {
    margin-bottom: calc(clamp(60px, 16vw, 120px) * -1);
    padding: clamp(50px, 13.3333333333vw, 100px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-scrap__cta.--footer {
    margin-top: calc(clamp(60px, 16vw, 120px) * -1);
    margin-bottom: calc(clamp(40px, 10.6666666667vw, 80px) * -1);
  }
  .p-scrap__cta__bg {
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-scrap__cta h2 {
    font-size: clamp(22px, 5.8666666667vw, 44px);
  }
  .p-scrap__cta p {
    margin-top: clamp(15px, 4vw, 30px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__cta .p-scrap__btn {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
}
.p-scrap__flow {
  position: relative;
  width: 100%;
  padding: clamp(201px, 18.28125vw, 351px) 0 clamp(121px, 10.9895833333vw, 211px);
  background: linear-gradient(180deg, #fff6d8 clamp(758px, 68.90625vw, 1323px), #ffc091 clamp(2050px, 186.3541666667vw, 3578px));
  color: #292929;
}

.p-scrap__flow__deco {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-scrap__flow__deco.--bottom {
  opacity: 0.456;
}

.p-scrap__flow__deco span {
  position: absolute;
  width: clamp(1100px, 100vw, 1920px);
}

.p-scrap__flow__deco.--top span {
  background: linear-gradient(to bottom left, #fff9e5 50%, transparent 50%) left bottom/clamp(1100px, 100vw, 1920px) clamp(777px, 70.625vw, 1356px) no-repeat;
  filter: drop-shadow(0 3px 18px #ffe9a2);
}

.p-scrap__flow__deco.--top span:nth-child(1) {
  top: clamp(41px, 3.6979166667vw, 71px);
  left: 0;
  height: clamp(777px, 70.625vw, 1356px);
  opacity: 0.22;
}

.p-scrap__flow__deco.--top span:nth-child(2) {
  top: clamp(14px, 1.25vw, 24px);
  left: clamp(114px, 10.3645833333vw, 199px);
  height: clamp(698px, 63.4895833333vw, 1219px);
  opacity: 0.39;
}

.p-scrap__flow__deco.--top span:nth-child(3) {
  top: clamp(14px, 1.25vw, 24px);
  left: clamp(305px, 27.7083333333vw, 532px);
  height: clamp(524px, 47.6041666667vw, 914px);
  opacity: 0.58;
}

.p-scrap__flow__deco.--bottom span {
  bottom: 0;
  background: linear-gradient(to top right, #fff9e5 50%, transparent 50%) left top/clamp(1100px, 100vw, 1920px) clamp(777px, 70.625vw, 1356px) no-repeat;
  opacity: 0.58;
  filter: drop-shadow(0 3px 18px rgba(224, 192, 88, 0.306));
}

.p-scrap__flow__deco.--bottom span:nth-child(1) {
  top: clamp(1273px, 115.7291666667vw, 2222px);
  left: 0;
}

.p-scrap__flow__deco.--bottom span:nth-child(2) {
  top: clamp(1378px, 125.3125vw, 2406px);
  left: calc(clamp(115px, 10.46875vw, 201px) * -1);
}

.p-scrap__flow__deco.--bottom span:nth-child(3) {
  top: clamp(1553px, 141.1979166667vw, 2711px);
  left: calc(clamp(306px, 27.8125vw, 534px) * -1);
}

.p-scrap__flow__list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(17px, 1.5625vw, 30px);
  width: clamp(773px, 70.3125vw, 1350px);
  margin: clamp(51px, 4.6614583333vw, 89.5px) auto 0;
}

.p-scrap__flow__step {
  display: flex;
  align-items: flex-start;
  height: clamp(189px, 17.1875vw, 330px);
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background-color: #ffffff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
}

.p-scrap__flow__step:nth-child(1) {
  height: clamp(379px, 34.4791666667vw, 662px);
}

.p-scrap__flow__step__img {
  flex-shrink: 0;
}

.p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__img {
  width: clamp(240px, 21.8229166667vw, 419px);
  margin: clamp(100px, 9.0625vw, 174px) 0 0 clamp(11px, 0.9895833333vw, 19px);
}

.p-scrap__flow__step:nth-child(2) .p-scrap__flow__step__img {
  width: clamp(226px, 20.5208333333vw, 394px);
  margin: clamp(12px, 1.09375vw, 21px) 0 0 clamp(22px, 1.9791666667vw, 38px);
}

.p-scrap__flow__step:nth-child(3) .p-scrap__flow__step__img {
  width: clamp(203px, 18.4375vw, 354px);
  margin: clamp(19px, 1.71875vw, 33px) 0 0 clamp(34px, 3.0729166667vw, 59px);
}

.p-scrap__flow__step:nth-child(4) .p-scrap__flow__step__img {
  width: clamp(184px, 16.7708333333vw, 322px);
  margin: clamp(29px, 2.6041666667vw, 50px) 0 0 clamp(45px, 4.0625vw, 78px);
}

.p-scrap__flow__step:nth-child(5) .p-scrap__flow__step__img {
  width: clamp(223px, 20.3125vw, 390px);
  margin: clamp(14px, 1.25vw, 24px) 0 0 clamp(25px, 2.2395833333vw, 43px);
}

.p-scrap__flow__step:nth-child(6) .p-scrap__flow__step__img {
  width: clamp(228px, 20.7291666667vw, 398px);
  margin: clamp(8px, 0.7291666667vw, 14px) 0 0 0;
}

.p-scrap__flow__step__body {
  width: clamp(507px, 46.09375vw, 885px);
  margin-left: auto;
  padding-top: clamp(40px, 3.59375vw, 69px);
}

.p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__body {
  padding-top: clamp(41px, 3.6979166667vw, 71px);
}

.p-scrap__flow__step__body .num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(74px, 6.7708333333vw, 130px);
  height: clamp(24px, 2.1875vw, 42px);
  padding-bottom: clamp(2px, 0.2083333333vw, 4px);
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  background: linear-gradient(244.89deg, #ff974b 23.7%, #ff6c00 96.7%);
  color: #ffffff;
  font-family: "Play", sans-serif;
  font-size: clamp(17px, 1.5104166667vw, 29px);
  font-weight: 700;
  line-height: 1;
}

.p-scrap__flow__step__body h3 {
  margin-top: clamp(13px, 1.1458333333vw, 22px);
  color: #0b503e;
  font-size: clamp(21px, 1.875vw, 36px);
}

.p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__body h3 {
  margin-top: clamp(14px, 1.3020833333vw, 25px);
}

.p-scrap__flow__step__body > p:not([class]) {
  margin-top: clamp(7px, 0.625vw, 12px);
  font-size: clamp(10px, 0.8854166667vw, 17px);
  line-height: 1.8;
}

.p-scrap__flow__tel {
  width: clamp(358px, 32.5vw, 624px);
  margin: clamp(18px, 1.6145833333vw, 31px) 0 0 calc(clamp(6px, 0.5208333333vw, 10px) * -1);
  padding: clamp(18px, 1.6666666667vw, 32px) clamp(77px, 6.9791666667vw, 134px) clamp(19px, 1.7708333333vw, 34px);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #edfdf9;
  font-weight: 700;
}

.p-scrap__flow__tel__ttl {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  margin-left: clamp(3px, 0.3125vw, 6px);
  color: #0b503e;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-scrap__flow__tel__ttl::before,
.p-scrap__flow__tel__ttl::after {
  content: "";
  width: clamp(12px, 1.09375vw, 21px);
  height: 2px;
  border-radius: 1px;
  background-color: #0b503e;
}

.p-scrap__flow__tel__list {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 0.5208333333vw, 10px);
  margin-top: clamp(7px, 0.6770833333vw, 13px);
}

.p-scrap__flow__tel__list a {
  display: flex;
  align-items: baseline;
  color: #292929;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  line-height: 1.6105;
}

.p-scrap__flow__tel__list img {
  align-self: center;
  width: clamp(23px, 2.1354166667vw, 41px);
  margin-right: clamp(5px, 0.4166666667vw, 8px);
  padding: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #0b503e;
}

.p-scrap__flow__tel__list span {
  font-size: clamp(19px, 1.71875vw, 33px);
  line-height: 0.9273;
}

.p-scrap__flow__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 1.4583333333vw, 28px);
  width: clamp(204px, 18.5416666667vw, 356px);
  height: clamp(50px, 4.5833333333vw, 88px);
  margin-top: clamp(14px, 1.3020833333vw, 25px);
  padding-left: clamp(7px, 0.625vw, 12px);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #0b503e;
  color: #ffffff;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.53;
}

.p-scrap__flow__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
}

.p-scrap__flow__summary {
  position: relative;
  margin-top: clamp(71px, 6.4583333333vw, 124px);
  font-weight: 700;
  text-align: center;
}

.p-scrap__flow__summary .catch {
  padding-left: clamp(25px, 2.2916666667vw, 44px);
  color: #6f2600;
  font-size: clamp(29px, 2.6041666667vw, 50px);
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-position: from-font;
}

.p-scrap__flow__summary > p:not([class]) {
  margin-top: clamp(25px, 2.2916666667vw, 44px);
  padding-right: clamp(11px, 0.9895833333vw, 19px);
  font-size: clamp(14px, 1.3020833333vw, 25px);
  line-height: 1.7;
}

@media (max-width: 750px) {
  .p-scrap__flow {
    padding: clamp(120px, 32vw, 240px) 0 clamp(90px, 24vw, 180px);
    background: linear-gradient(180deg, #fff6d8 37%, #ffc091 100%);
  }
  .p-scrap__flow__deco span {
    width: clamp(375px, 100vw, 750px);
  }
  .p-scrap__flow__deco.--top span,
  .p-scrap__flow__deco.--bottom span {
    background-size: clamp(375px, 100vw, 750px) clamp(265px, 70.6666666667vw, 530px);
  }
  .p-scrap__flow__deco.--top span:nth-child(1) {
    top: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(265px, 70.6666666667vw, 530px);
  }
  .p-scrap__flow__deco.--top span:nth-child(2) {
    top: clamp(5px, 1.3333333333vw, 10px);
    left: clamp(39px, 10.4vw, 78px);
    height: clamp(238px, 63.4666666667vw, 476px);
  }
  .p-scrap__flow__deco.--top span:nth-child(3) {
    top: clamp(5px, 1.3333333333vw, 10px);
    left: clamp(104px, 27.7333333333vw, 208px);
    height: clamp(178px, 47.4666666667vw, 356px);
  }
  .p-scrap__flow__deco.--bottom span:nth-child(1) {
    top: auto;
    height: clamp(265px, 70.6666666667vw, 530px);
  }
  .p-scrap__flow__deco.--bottom span:nth-child(2) {
    top: auto;
    left: calc(clamp(39px, 10.4vw, 78px) * -1);
    height: clamp(229px, 61.0666666667vw, 458px);
  }
  .p-scrap__flow__deco.--bottom span:nth-child(3) {
    top: auto;
    left: calc(clamp(104px, 27.7333333333vw, 208px) * -1);
    height: clamp(169px, 45.0666666667vw, 338px);
  }
  .p-scrap__flow__list {
    gap: clamp(15px, 4vw, 30px);
    width: auto;
    margin: clamp(30px, 8vw, 60px) clamp(20px, 5.3333333333vw, 40px) 0;
  }
  .p-scrap__flow__step,
  .p-scrap__flow__step:nth-child(1) {
    flex-direction: column;
    align-items: stretch;
    height: auto;
    padding: clamp(20px, 5.3333333333vw, 40px) clamp(20px, 5.3333333333vw, 40px) clamp(25px, 6.6666666667vw, 50px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__img {
    width: clamp(189px, 50.4vw, 378px);
    margin: 0 auto;
  }
  .p-scrap__flow__step:nth-child(2) .p-scrap__flow__step__img {
    width: clamp(177px, 47.2vw, 354px);
    margin: 0 auto;
  }
  .p-scrap__flow__step:nth-child(3) .p-scrap__flow__step__img {
    width: clamp(159px, 42.4vw, 318px);
    margin: 0 auto;
  }
  .p-scrap__flow__step:nth-child(4) .p-scrap__flow__step__img {
    width: clamp(145px, 38.6666666667vw, 290px);
    margin: 0 auto;
  }
  .p-scrap__flow__step:nth-child(5) .p-scrap__flow__step__img {
    width: clamp(176px, 46.9333333333vw, 352px);
    margin: 0 auto;
  }
  .p-scrap__flow__step:nth-child(6) .p-scrap__flow__step__img {
    width: clamp(179px, 47.7333333333vw, 358px);
    margin: 0 auto;
  }
  .p-scrap__flow__step__body,
  .p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__body {
    width: auto;
    margin-left: 0;
    padding-top: clamp(15px, 4vw, 30px);
  }
  .p-scrap__flow__step__body .num {
    width: clamp(80px, 21.3333333333vw, 160px);
    height: clamp(26px, 6.9333333333vw, 52px);
    margin: 0 auto;
    padding-bottom: clamp(2px, 0.5333333333vw, 4px);
    border-radius: clamp(3px, 0.8vw, 6px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-scrap__flow__step__body h3,
  .p-scrap__flow__step:nth-child(1) .p-scrap__flow__step__body h3 {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    text-align: center;
  }
  .p-scrap__flow__step__body > p:not([class]) {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__flow__tel {
    width: auto;
    margin: clamp(15px, 4vw, 30px) 0 0;
    padding: clamp(15px, 4vw, 30px) clamp(15px, 4vw, 30px) clamp(18px, 4.8vw, 36px);
    border-radius: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__flow__tel__ttl {
    justify-content: center;
    gap: clamp(6px, 1.6vw, 12px);
    margin-left: 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__flow__tel__ttl::before,
  .p-scrap__flow__tel__ttl::after {
    width: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__flow__tel__list {
    align-items: center;
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-scrap__flow__tel__list a {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-scrap__flow__tel__list img {
    width: clamp(30px, 8vw, 60px);
    margin-right: clamp(6px, 1.6vw, 12px);
    padding: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-scrap__flow__tel__list span {
    font-size: clamp(24px, 6.4vw, 48px);
  }
  .p-scrap__flow__btn {
    gap: clamp(14px, 3.7333333333vw, 28px);
    width: 100%;
    height: clamp(56px, 14.9333333333vw, 112px);
    margin-top: clamp(15px, 4vw, 30px);
    padding-left: clamp(6px, 1.6vw, 12px);
    border-radius: clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-scrap__flow__btn img {
    width: clamp(12px, 3.2vw, 24px);
  }
  .p-scrap__flow__summary {
    margin-top: clamp(40px, 10.6666666667vw, 80px);
    padding: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__flow__summary .catch {
    padding-left: 0;
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: 1.5;
  }
  .p-scrap__flow__summary > p:not([class]) {
    margin-top: clamp(15px, 4vw, 30px);
    padding-right: 0;
    font-size: clamp(15px, 4vw, 30px);
    line-height: 1.8;
    text-align: left;
  }
  .p-scrap__flow__summary > p:not([class]) br {
    display: none;
  }
}
.p-scrap__voice {
  position: relative;
  z-index: var(--z-float);
  width: 100%;
  margin: calc(clamp(42px, 3.8541666667vw, 74px) * -1) 0 calc(clamp(60px, 5.4166666667vw, 104px) * -1);
  padding: clamp(119px, 10.78125vw, 207px) 0 clamp(90px, 8.1770833333vw, 157px);
  border-radius: clamp(52px, 4.6875vw, 90px);
  background: linear-gradient(180deg, #edfdf9 37%, #6cdbbe 100%);
  color: #292929;
}

.p-scrap__voice__deco {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: inset(0 round clamp(52px, 4.6875vw, 90px));
}

.p-scrap__voice__deco span {
  position: absolute;
  width: clamp(1100px, 100vw, 1920px);
  height: clamp(783px, 71.1458333333vw, 1366px);
  background: linear-gradient(to bottom left, #ccf7ec 50%, transparent 50%);
  filter: drop-shadow(0 3px 18px #edfdf9);
}

.p-scrap__voice__deco span:nth-child(1) {
  top: calc(clamp(49px, 4.4791666667vw, 86px) * -1);
  left: 0;
  opacity: 0.22;
}

.p-scrap__voice__deco span:nth-child(2) {
  top: calc(clamp(156px, 14.1666666667vw, 272px) * -1);
  left: clamp(115px, 10.4166666667vw, 200px);
  opacity: 0.39;
}

.p-scrap__voice__deco span:nth-child(3) {
  top: calc(clamp(332px, 30.15625vw, 579px) * -1);
  left: clamp(305px, 27.7604166667vw, 533px);
  opacity: 0.58;
}

.p-scrap__voice .p-scrap__voice__slider {
  margin-top: clamp(26px, 2.3697916667vw, 45.5px);
  overflow: visible;
}

.p-scrap__voice__list {
  align-items: flex-start;
}

.p-scrap__voice__slider .p-scrap__voice__card {
  width: clamp(290px, 26.3541666667vw, 506px);
}

.p-scrap__voice__card.--down {
  margin-top: clamp(17px, 1.5104166667vw, 29px);
}

.p-scrap__voice__card__photo {
  position: relative;
  width: clamp(104px, 9.4791666667vw, 182px);
  height: clamp(104px, 9.4270833333vw, 181px);
  margin: 0 auto;
  border-radius: 50%;
}

.p-scrap__voice__card__body {
  display: flex;
  flex-direction: column;
  height: clamp(341px, 30.9895833333vw, 595px);
  margin-top: calc(clamp(52px, 4.7395833333vw, 91px) * -1);
  padding: clamp(62px, 5.625vw, 108px) clamp(11px, 1.0416666667vw, 20px) clamp(21px, 1.875vw, 36px);
  border: 1px solid #39ba98;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  background-color: #ffffff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.161);
}

.p-scrap__voice__card__body .name {
  font-size: clamp(11px, 1.0416666667vw, 20px);
  line-height: 1.53;
  text-align: center;
}

.p-scrap__voice__card__body h3 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(265px, 24.0625vw, 462px);
  height: clamp(69px, 6.3020833333vw, 121px);
  margin-top: clamp(18px, 1.6145833333vw, 31px);
  padding-right: clamp(3px, 0.3125vw, 6px);
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  background-color: #d9f5ee;
  color: #0b503e;
  font-size: clamp(15px, 1.3541666667vw, 26px);
  text-align: center;
}

.p-scrap__voice__card__body h3::before {
  content: "";
  position: absolute;
  top: calc(clamp(7px, 0.6770833333vw, 13px) * -1);
  left: clamp(124px, 11.3020833333vw, 217px);
  width: clamp(17px, 1.5104166667vw, 29px);
  height: clamp(19px, 1.7708333333vw, 34px);
  background-color: #d9f5ee;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.p-scrap__voice__card__body > p:not([class]) {
  margin: clamp(12px, 1.09375vw, 21px) clamp(6px, 0.5208333333vw, 10px) 0;
  color: #000000;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.9125;
}

.p-scrap__voice__pagination {
  position: relative;
  display: flex;
  justify-content: center;
  gap: clamp(8px, 0.7291666667vw, 14px);
  margin-top: clamp(23px, 2.0833333333vw, 40px);
}

.p-scrap__voice__pagination button {
  width: clamp(7px, 0.625vw, 12px);
  height: clamp(7px, 0.625vw, 12px);
  padding: 0;
  border: none;
  border-radius: 50%;
  background-color: #ffffff;
  cursor: pointer;
  transition: background-color 0.6s var(--easing);
}

.p-scrap__voice__pagination button.is-active {
  background-color: #0b503e;
}

@media (max-width: 750px) {
  .p-scrap__voice {
    margin: calc(clamp(30px, 8vw, 60px) * -1) 0 calc(clamp(40px, 10.6666666667vw, 80px) * -1);
    padding: clamp(80px, 21.3333333333vw, 160px) 0 clamp(60px, 16vw, 120px);
    border-radius: clamp(30px, 8vw, 60px);
  }
  .p-scrap__voice__deco {
    clip-path: inset(0 round clamp(30px, 8vw, 60px));
  }
  .p-scrap__voice__deco span {
    width: clamp(375px, 100vw, 750px);
    height: clamp(266px, 70.9333333333vw, 532px);
  }
  .p-scrap__voice__deco span:nth-child(1) {
    top: calc(clamp(17px, 4.5333333333vw, 34px) * -1);
  }
  .p-scrap__voice__deco span:nth-child(2) {
    top: calc(clamp(53px, 14.1333333333vw, 106px) * -1);
    left: clamp(39px, 10.4vw, 78px);
  }
  .p-scrap__voice__deco span:nth-child(3) {
    top: calc(clamp(113px, 30.1333333333vw, 226px) * -1);
    left: clamp(104px, 27.7333333333vw, 208px);
  }
  .p-scrap__voice .p-scrap__voice__slider {
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-scrap__voice__slider .p-scrap__voice__card {
    width: clamp(290px, 77.3333333333vw, 580px);
  }
  .p-scrap__voice__card.--down {
    margin-top: clamp(30px, 8vw, 60px);
  }
  .p-scrap__voice__card__photo {
    width: clamp(100px, 26.6666666667vw, 200px);
    height: clamp(100px, 26.6666666667vw, 200px);
  }
  .p-scrap__voice__card__body {
    height: clamp(440px, 117.3333333333vw, 880px);
    margin-top: calc(clamp(50px, 13.3333333333vw, 100px) * -1);
    padding: clamp(60px, 16vw, 120px) clamp(12px, 3.2vw, 24px) clamp(20px, 5.3333333333vw, 40px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-scrap__voice__card__body .name {
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-scrap__voice__card__body h3 {
    width: auto;
    height: clamp(64px, 17.0666666667vw, 128px);
    margin-top: clamp(12px, 3.2vw, 24px);
    padding-right: 0;
    border-radius: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-scrap__voice__card__body h3::before {
    top: calc(clamp(7px, 1.8666666667vw, 14px) * -1);
    left: calc(50% - clamp(8px, 2.1333333333vw, 16px));
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-scrap__voice__card__body > p:not([class]) {
    margin: clamp(12px, 3.2vw, 24px) clamp(6px, 1.6vw, 12px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: 1.8;
  }
  .p-scrap__voice__pagination {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__voice__pagination button {
    width: clamp(8px, 2.1333333333vw, 16px);
    height: clamp(8px, 2.1333333333vw, 16px);
  }
}
.p-scrap__faq {
  position: relative;
  padding: clamp(135px, 12.2916666667vw, 236px) 0 clamp(336px, 30.5729166667vw, 587px);
  background-color: #d1681b;
}

.p-scrap__faq::before {
  content: "";
  position: absolute;
  top: clamp(60px, 5.4166666667vw, 104px);
  bottom: clamp(261px, 23.6979166667vw, 455px);
  left: 0;
  width: 100%;
  background: linear-gradient(90deg, #ffffff 1px, transparent 1px) clamp(51px, 4.6354166667vw, 89px) 0/clamp(76px, 6.875vw, 132px) clamp(76px, 6.875vw, 132px), linear-gradient(180deg, #ffffff 1px, transparent 1px) 0 clamp(57px, 5.2083333333vw, 100px)/clamp(76px, 6.875vw, 132px) clamp(76px, 6.875vw, 132px);
  opacity: 0.084;
}

.p-scrap__faq__inner {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: clamp(802px, 72.9166666667vw, 1400px);
  margin: 0 auto;
}

.p-scrap__faq__list {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 0.8854166667vw, 17px);
  width: clamp(578px, 52.5vw, 1008px);
  margin: clamp(43px, 3.90625vw, 75px) calc(clamp(7px, 0.6770833333vw, 13px) * -1) 0 0;
}

.p-scrap__faq__q {
  display: flex;
  align-items: center;
  gap: clamp(9px, 0.8333333333vw, 16px);
  padding: clamp(6px, 0.5729166667vw, 11px) clamp(19px, 1.71875vw, 33px) clamp(6px, 0.5208333333vw, 10px) clamp(10px, 0.8854166667vw, 17px);
  border-radius: clamp(3px, 0.2604166667vw, 5px);
  background-color: #edfdf9;
  cursor: pointer;
  list-style: none;
}

.p-scrap__faq__q::-webkit-details-marker {
  display: none;
}

.p-scrap__faq__q .badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(29px, 2.6041666667vw, 50px);
  height: clamp(29px, 2.6041666667vw, 50px);
  border-radius: 50%;
  background-color: #39ba98;
  color: #ffffff;
  font-family: "Play", sans-serif;
  font-size: clamp(17px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1;
}

.p-scrap__faq__q h3 {
  color: #0b503e;
  font-size: clamp(13px, 1.1979166667vw, 23px);
}

.p-scrap__faq__q .icon {
  position: relative;
  flex-shrink: 0;
  width: clamp(19px, 1.7708333333vw, 34px);
  height: clamp(19px, 1.7708333333vw, 34px);
  margin-left: auto;
}

.p-scrap__faq__q .icon::before,
.p-scrap__faq__q .icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: clamp(2px, 0.15625vw, 3px);
  margin-top: calc(clamp(1px, 0.078125vw, 1.5px) * -1);
  background-color: #0b503e;
}

.p-scrap__faq__q .icon::after {
  transform: rotate(90deg);
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.p-scrap__faq__item[open]:not(.is-closing) .p-scrap__faq__q .icon::after {
  transform: rotate(0deg);
}

.p-scrap__faq__a p {
  padding: clamp(12px, 1.09375vw, 21px) 0 clamp(9px, 0.78125vw, 15px);
  color: #ffffff;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  line-height: 1.8;
  opacity: 0;
  transform: translateY(calc(clamp(6px, 0.5208333333vw, 10px) * -1));
  transition: opacity 0.35s cubic-bezier(0.22, 1, 0.36, 1), transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.p-scrap__faq__item[open]:not(.is-closing) .p-scrap__faq__a p {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 750px) {
  .p-scrap__faq {
    padding: clamp(90px, 24vw, 180px) 0 clamp(120px, 32vw, 240px);
  }
  .p-scrap__faq::before {
    top: clamp(40px, 10.6666666667vw, 80px);
    bottom: clamp(60px, 16vw, 120px);
    background: linear-gradient(90deg, #ffffff 1px, transparent 1px) clamp(44px, 11.7333333333vw, 88px) 0/clamp(66px, 17.6vw, 132px) clamp(66px, 17.6vw, 132px), linear-gradient(180deg, #ffffff 1px, transparent 1px) 0 clamp(50px, 13.3333333333vw, 100px)/clamp(66px, 17.6vw, 132px) clamp(66px, 17.6vw, 132px);
  }
  .p-scrap__faq__inner {
    display: block;
    width: auto;
    margin: 0 clamp(20px, 5.3333333333vw, 40px);
  }
  .p-scrap__faq__list {
    gap: clamp(10px, 2.6666666667vw, 20px);
    width: auto;
    margin: clamp(25px, 6.6666666667vw, 50px) 0 0;
  }
  .p-scrap__faq__q {
    gap: clamp(10px, 2.6666666667vw, 20px);
    padding: clamp(10px, 2.6666666667vw, 20px) clamp(12px, 3.2vw, 24px) clamp(10px, 2.6666666667vw, 20px) clamp(10px, 2.6666666667vw, 20px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-scrap__faq__q .badge {
    width: clamp(32px, 8.5333333333vw, 64px);
    height: clamp(32px, 8.5333333333vw, 64px);
    font-size: clamp(19px, 5.0666666667vw, 38px);
  }
  .p-scrap__faq__q h3 {
    font-size: clamp(15px, 4vw, 30px);
    line-height: 1.5;
  }
  .p-scrap__faq__q .icon {
    width: clamp(18px, 4.8vw, 36px);
    height: clamp(18px, 4.8vw, 36px);
  }
  .p-scrap__faq__q .icon::before,
  .p-scrap__faq__q .icon::after {
    height: clamp(2px, 0.5333333333vw, 4px);
    margin-top: calc(clamp(1px, 0.2666666667vw, 2px) * -1);
  }
  .p-scrap__faq__a p {
    padding: clamp(12px, 3.2vw, 24px) 0 clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    transform: translateY(calc(clamp(6px, 1.6vw, 12px) * -1));
  }
}
.p-index-fv {
  position: relative;
  width: 100%;
  height: 100vh;
  box-sizing: border-box;
}

.p-index-fv__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ecf5ff;
}

.p-index-fv__bg picture {
  height: 100%;
}

.p-index-fv__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
}
@media (min-width: 750.11px) {
  .p-index-fv__bg img {
    object-position: left top;
  }
}

.p-index-fv__bg::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: clamp(135px, 12.2916666667vw, 236px);
  background: linear-gradient(180deg, rgba(236, 245, 255, 0) 0%, #ecf5ff 100%);
}

.p-index-fv__visual {
  position: absolute;
  top: clamp(14px, 1.3020833333vw, 25px);
  left: clamp(14px, 1.3020833333vw, 25px);
  right: clamp(14px, 1.3020833333vw, 25px);
  bottom: clamp(78px, 7.0833333333vw, 136px);
  -webkit-mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch.svg"), url("../img/index/hero_mask_step.svg"), linear-gradient(#000, #000);
  mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch.svg"), url("../img/index/hero_mask_step.svg"), linear-gradient(#000, #000);
  -webkit-mask-position: 0 0, 0 0, 0 100%, left 0 bottom -1px;
  mask-position: 0 0, 0 0, 0 100%, left 0 bottom -1px;
  -webkit-mask-size: 100% 100%, clamp(247px, 20.5208333333vw, 394px) auto, clamp(677px, 61.5625vw, 1182px) auto, 100% 2px;
  mask-size: 100% 100%, clamp(247px, 20.5208333333vw, 394px) auto, clamp(677px, 61.5625vw, 1182px) auto, 100% 2px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-composite: source-out, source-over, source-over;
  mask-composite: subtract, add, add;
}

.p-index-fv__photo {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 101.6042780749%;
  height: 100%;
  border-radius: 0 clamp(6px, 0.5729166667vw, 11px) clamp(6px, 0.5729166667vw, 11px) 0;
  object-fit: cover;
  object-position: center 70%;
}

.p-index-fv__catch {
  position: absolute;
  left: clamp(44px, 3.9583333333vw, 76px);
  bottom: clamp(89px, 8.0729166667vw, 155px);
  margin: 0;
  color: #3b3b3b;
  z-index: 2;
}

.p-index-fv__catch__line1 {
  display: block;
  font-size: clamp(35px, 3.1770833333vw, 61px);
  font-weight: 700;
  line-height: 126%;
}

.p-index-fv__catch__line2 {
  display: flex;
  align-items: flex-end;
  gap: 0;
  margin-top: clamp(8px, 0.7291666667vw, 14px);
}

.p-index-fv__catch__mark {
  position: relative;
  display: block;
  width: clamp(146px, 13.28125vw, 255px);
  height: clamp(37px, 3.3854166667vw, 65px);
  margin-left: clamp(3px, 0.2604166667vw, 5px);
  flex-shrink: 0;
}

.p-index-fv__catch__mark img {
  display: block;
  width: 100%;
  height: 100%;
}

.p-index-fv__catch__mark img.p-index-fv__catch__mark__en {
  display: none;
}

html[lang=en] .p-index-fv__catch__mark {
  width: clamp(213px, 19.4791666667vw, 374px);
}

html[lang=en] .p-index-fv__catch__mark img.p-index-fv__catch__mark__ja {
  display: none;
}

html[lang=en] .p-index-fv__catch__mark img.p-index-fv__catch__mark__en {
  display: block;
}

html[lang=en] .p-index-fv__catch__mark::after {
  -webkit-mask-image: url("../img/index/hero_title_mark-en.png");
  mask-image: url("../img/index/hero_title_mark-en.png");
}

.p-index-fv__catch__mark::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(100deg, rgba(96, 169, 225, 0) 44%, #60a9e1 50%, rgba(96, 169, 225, 0) 56%) 0 0/300% 100% no-repeat;
  -webkit-mask: url("../img/index/hero_title_mark.svg") 0 0/100% 100% no-repeat;
  mask: url("../img/index/hero_title_mark.svg") 0 0/100% 100% no-repeat;
  animation: p-index-fv-shine 1.6s ease-in-out 1.9s backwards;
  animation-play-state: var(--fv-opening);
}

.p-index-fv__catch__tail {
  display: block;
  margin-left: clamp(10px, 0.8854166667vw, 17px);
  margin-bottom: clamp(5px, 0.4166666667vw, 8px);
  font-size: clamp(30px, 2.7604166667vw, 53px);
  font-weight: 700;
  line-height: 111%;
}

.p-index-fv__actions {
  position: absolute;
  left: clamp(359px, 32.6041666667vw, 626px);
  bottom: clamp(88px, 7.96875vw, 153px);
  display: flex;
  align-items: center;
  gap: clamp(4px, 0.3645833333vw, 7px);
  z-index: 2;
}

.p-index-fv__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: clamp(149px, 13.5416666667vw, 260px);
  height: clamp(42px, 3.8541666667vw, 74px);
  padding: 0 clamp(17px, 1.5104166667vw, 29px) 0 clamp(19px, 1.71875vw, 33px);
  box-sizing: border-box;
  border-radius: clamp(22px, 1.9791666667vw, 38px);
  color: #ffffff;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
  transition: background-color 0.3s ease-out;
}

.p-index-fv__btn.--primary {
  background-color: #085cac;
}

.p-index-fv__btn.--dark {
  background-color: #292929;
}

.p-index-fv__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
  height: clamp(9px, 0.8333333333vw, 16px);
}

@media (min-width: 750.11px) {
  .p-index-fv__btn:hover {
    opacity: 1;
  }
  .p-index-fv__btn.--primary:hover {
    background-color: #292929;
  }
  .p-index-fv__btn.--dark:hover {
    background-color: #085cac;
  }
}
.p-index-fv__recruit {
  position: absolute;
  right: clamp(19px, 1.7708333333vw, 34px);
  bottom: clamp(85px, 7.7083333333vw, 148px);
  width: clamp(282px, 25.625vw, 492px);
  z-index: 3;
  transition: bottom 0.6s var(--easing);
}

.p-index-fv__recruit.is-closed {
  bottom: calc(clamp(94px, 8.5416666667vw, 164px) * -1);
}

.p-index-fv__recruit__link {
  display: block;
  width: 100%;
  line-height: 0;
  text-decoration: none;
}

.p-index-fv__recruit__link img {
  display: block;
  width: 100%;
  height: auto;
}

.p-index-fv__recruit__close {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  align-items: center;
  justify-content: center;
  width: clamp(21px, 1.875vw, 36px);
  height: clamp(21px, 1.875vw, 36px);
  padding: 0;
  border: 0;
  border-radius: 50%;
  background-color: #292929;
  color: #ffffff;
  font-size: clamp(14px, 1.25vw, 24px);
  cursor: pointer;
  transform: translate(40%, -40%);
}

.p-index-fv__recruit__close i {
  transition: opacity 0.6s var(--easing);
}

@media (min-width: 750.11px) {
  .p-index-fv__recruit__close:hover i {
    opacity: 0.7;
  }
  .p-index-fv__scrap:hover {
    opacity: 1;
  }
  .p-index-fv__scrap:hover .p-index-fv__scrap__bg,
  .p-index-fv__scrap:hover .p-index-fv__scrap__badge,
  .p-index-fv__scrap:hover .p-index-fv__scrap__label {
    opacity: 0.7;
  }
}
.p-index-fv__news {
  position: absolute;
  left: clamp(9px, 0.8333333333vw, 16px);
  right: clamp(9px, 0.8333333333vw, 16px);
  bottom: clamp(28px, 2.5vw, 48px);
  height: clamp(45px, 4.0625vw, 78px);
  box-sizing: border-box;
  border-radius: clamp(6px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  z-index: 2;
}

.p-index-fv__news__inner {
  display: flex;
  align-items: center;
  height: 100%;
  padding-left: clamp(18px, 1.6666666667vw, 32px);
  padding-right: clamp(18px, 1.6666666667vw, 32px);
  box-sizing: border-box;
}

.p-index-fv__news__date {
  margin: 0;
  color: #085cac;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.p-index-fv__news__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 0 clamp(8px, 0.7291666667vw, 14px);
  width: clamp(54px, 4.8958333333vw, 94px);
  height: clamp(22px, 1.9791666667vw, 38px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(15px, 1.40625vw, 27px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.p-index-fv__news__link {
  display: inline-flex;
  align-items: center;
  gap: clamp(13px, 1.1458333333vw, 22px);
  margin-left: clamp(10px, 0.9375vw, 18px);
  color: #085cac;
  text-decoration: none;
  min-width: 0;
}

.p-index-fv__news__text {
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.p-index-fv__news__arrow {
  flex-shrink: 0;
  width: clamp(11px, 1.0416666667vw, 20px);
  height: clamp(11px, 1.0416666667vw, 20px);
}

.p-index-fv__scrap {
  position: fixed;
  top: 35.7142857143%;
  right: 0;
  display: block;
  width: clamp(68px, 6.1458333333vw, 118px);
  height: clamp(183px, 16.6666666667vw, 320px);
  box-sizing: border-box;
  border-radius: clamp(10px, 0.8854166667vw, 17px) 0 0 clamp(10px, 0.8854166667vw, 17px);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
  text-decoration: none;
  z-index: calc(var(--z-sticky) - 1);
  overflow: hidden;
  background: linear-gradient(180deg, #39ba98 0%, #1d5d4c 100%);
}

.p-index-fv__scrap__bg {
  position: absolute;
  top: clamp(5px, 0.4166666667vw, 8px);
  bottom: clamp(5px, 0.4166666667vw, 8px);
  left: clamp(5px, 0.4166666667vw, 8px);
  right: 0;
  border-radius: clamp(5px, 0.4166666667vw, 8px) 0 0 clamp(5px, 0.4166666667vw, 8px);
  overflow: hidden;
  transition: opacity 0.6s var(--easing);
}

.p-index-fv__scrap__bg picture {
  display: block;
  height: 100%;
}

.p-index-fv__scrap__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.5;
}

.p-index-fv__scrap__badge {
  position: absolute;
  top: clamp(19px, 1.7708333333vw, 34px);
  left: clamp(17px, 1.5625vw, 30px);
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(40px, 3.6458333333vw, 70px);
  height: clamp(40px, 3.6458333333vw, 70px);
  border-radius: 50%;
  background: linear-gradient(180deg, #ffad71 0%, #ff6c00 100%);
  color: #ffffff;
  font-size: clamp(10px, 0.8854166667vw, 17px);
  font-weight: 800;
  line-height: 1.06;
  text-align: center;
  z-index: 2;
  transition: opacity 0.6s var(--easing);
}

.p-index-fv__scrap__label {
  position: absolute;
  top: clamp(41px, 3.75vw, 72px);
  left: clamp(24px, 2.1875vw, 42px);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: clamp(26px, 2.34375vw, 45px);
  height: clamp(117px, 10.6770833333vw, 205px);
  padding-top: clamp(23px, 2.1354166667vw, 41px);
  box-sizing: border-box;
  border: 1px solid #038b41;
  border-radius: clamp(13px, 1.1979166667vw, 23px);
  background-color: #ffffff;
  color: #004822;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 800;
  line-height: 1.05;
  text-align: center;
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: 0.05em;
  z-index: 1;
  transition: opacity 0.6s var(--easing);
}

html[lang=en] .p-index-fv__scrap__label {
  text-orientation: mixed;
  letter-spacing: 0;
  white-space: nowrap;
}

@media (max-width: 750px) {
  main:has(.p-index-fv) {
    z-index: auto;
  }
  .p-index-fv {
    display: flex;
    flex-direction: column;
    height: auto;
    padding-top: clamp(74px, 19.7333333333vw, 148px);
    background-color: #ecf5ff;
  }
  .p-index-fv__bg {
    height: 100svh;
  }
  .p-index-fv__bg img {
    opacity: 0.53;
  }
  .p-index-fv__bg::after {
    height: clamp(140px, 37.3333333333vw, 280px);
  }
  .p-index-fv__visual {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    height: calc(100svh - clamp(151px, 40.2666666667vw, 302px));
    margin: 0 clamp(11px, 2.9333333333vw, 22px) 0 clamp(12px, 3.2vw, 24px);
    -webkit-mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch-sp.svg"), linear-gradient(#000, #000);
    mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch-sp.svg"), linear-gradient(#000, #000);
    -webkit-mask-position: 0 0, 0 100%, left 0 bottom -1px;
    mask-position: 0 0, 0 100%, left 0 bottom -1px;
    -webkit-mask-size: 100% 100%, clamp(288px, 76.8vw, 576px) clamp(92px, 24.5333333333vw, 184px), 100% 2px;
    mask-size: 100% 100%, clamp(288px, 76.8vw, 576px) clamp(92px, 24.5333333333vw, 184px), 100% 2px;
    -webkit-mask-composite: source-out, source-over;
    mask-composite: subtract, add;
  }
  .p-index-fv__photo {
    width: 100%;
    border-radius: clamp(2px, 0.5333333333vw, 4px);
    object-position: 37% bottom;
    transform: scale(1.0135);
    transform-origin: 37% bottom;
  }
  .p-index-fv__catch {
    top: calc(100svh - clamp(152px, 40.5333333333vw, 304px));
    left: clamp(27px, 7.2vw, 54px);
    bottom: auto;
  }
  .p-index-fv__catch__line1 {
    font-size: clamp(31px, 8.2666666667vw, 62px);
  }
  .p-index-fv__catch__line2 {
    margin-top: clamp(6px, 1.6vw, 12px);
  }
  .p-index-fv__catch__mark {
    width: clamp(131px, 34.9333333333vw, 262px);
    height: clamp(33.5px, 8.9333333333vw, 67px);
    margin-left: clamp(1px, 0.2666666667vw, 2px);
  }
  html[lang=en] .p-index-fv__catch__mark {
    width: clamp(193px, 51.4666666667vw, 386px);
  }
  .p-index-fv__catch__tail {
    margin-left: clamp(8px, 2.1333333333vw, 16px);
    margin-bottom: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(26px, 6.9333333333vw, 52px);
  }
  html[lang=en] .p-index-fv__visual {
    -webkit-mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch-sp-en.svg"), linear-gradient(#000, #000);
    mask-image: linear-gradient(#000, #000), url("../img/index/hero_mask_notch-sp-en.svg"), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 100%, clamp(288px, 76.8vw, 576px) clamp(120px, 30.6666666667vw, 230px), 100% 2px;
    mask-size: 100% 100%, clamp(288px, 76.8vw, 576px) clamp(120px, 30.6666666667vw, 230px), 100% 2px;
  }
  html[lang=en] .p-index-fv__catch {
    top: calc(100svh - clamp(180px, 48vw, 360px));
  }
  html[lang=en] .p-index-fv__catch__line1,
  html[lang=en] .p-index-fv__catch__line1 * {
    font-size: clamp(24px, 6.4vw, 48px) !important;
  }
  .p-index-fv__actions {
    display: none;
  }
  .p-index-fv__news {
    order: 1;
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    height: clamp(72px, 19.2vw, 144px);
    margin: clamp(25px, 6.6666666667vw, 50px) clamp(11px, 2.9333333333vw, 22px) 0;
    border-radius: clamp(5px, 1.3333333333vw, 10px);
    overflow: hidden;
  }
  .p-index-fv__news__inner {
    flex-wrap: wrap;
    align-items: center;
    align-content: flex-start;
    row-gap: clamp(6px, 1.6vw, 12px);
    padding: clamp(11px, 2.9333333333vw, 22px) clamp(23px, 6.1333333333vw, 46px) 0 clamp(16px, 4.2666666667vw, 32px);
  }
  .p-index-fv__news__date {
    margin-left: clamp(3px, 0.8vw, 6px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-index-fv__news__label {
    width: clamp(72px, 19.2vw, 144px);
    height: clamp(27px, 7.2vw, 54px);
    margin-left: clamp(9px, 2.4vw, 18px);
    border-radius: clamp(27px, 7.2vw, 54px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-fv__news__link {
    justify-content: space-between;
    gap: clamp(4px, 1.0666666667vw, 8px);
    width: 100%;
    margin-left: 0;
  }
  .p-index-fv__news__text {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-fv__news__arrow {
    width: clamp(14px, 3.7333333333vw, 28px);
    height: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-index-fv__recruit {
    order: 2;
    position: relative;
    right: auto;
    bottom: auto;
    width: auto;
    margin: clamp(23px, 6.1333333333vw, 46px) clamp(11px, 2.9333333333vw, 22px) 0;
    z-index: 2;
  }
  .p-index-fv__recruit.is-closed {
    bottom: auto;
  }
  .p-index-fv__recruit__close {
    display: none;
  }
  .p-index-fv__scrap {
    order: 3;
    position: relative;
    top: auto;
    right: auto;
    width: auto;
    height: clamp(123px, 32.8vw, 246px);
    margin: clamp(11px, 2.9333333333vw, 22px) clamp(11px, 2.9333333333vw, 22px) 0;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    box-shadow: none;
  }
  .p-index-fv__scrap__bg {
    top: clamp(7px, 1.8666666667vw, 14px);
    bottom: clamp(9px, 2.4vw, 18px);
    left: clamp(8px, 2.1333333333vw, 16px);
    right: clamp(7px, 1.8666666667vw, 14px);
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-index-fv__scrap__badge {
    top: clamp(26px, 6.9333333333vw, 52px);
    left: clamp(40px, 10.6666666667vw, 80px);
    width: clamp(70px, 18.6666666667vw, 140px);
    height: clamp(70px, 18.6666666667vw, 140px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-index-fv__scrap__label {
    top: clamp(39px, 10.4vw, 78px);
    left: clamp(68px, 18.1333333333vw, 136px);
    width: clamp(246px, 65.6vw, 492px);
    height: clamp(45px, 12vw, 90px);
    padding: 0 0 0 clamp(61px, 16.2666666667vw, 122px);
    border-color: #008b41;
    border-radius: clamp(23px, 6.1333333333vw, 46px);
    font-size: clamp(20px, 5.3333333333vw, 40px);
    writing-mode: horizontal-tb;
    letter-spacing: 0;
  }
}
.home {
  --fv-opening: paused;
}

.home.is-loaded {
  --fv-opening: running;
}

.home .l-header__logo,
.home .l-header__nav,
.home .l-header__actions,
.home .l-header__en,
.home .l-header__hamburger,
.p-index-fv__bg,
.p-index-fv__photo,
.p-index-fv__catch__line1,
.p-index-fv__catch__line2,
.p-index-fv__actions,
.p-index-fv__news,
.p-index-fv__scrap,
.p-index-fv__recruit {
  animation: p-index-fv-up 0.8s var(--easing) backwards;
  animation-play-state: var(--fv-opening);
}

.home .l-header__logo {
  animation-name: p-index-fv-fade;
}

.p-index-fv__bg {
  animation-name: p-index-fv-fade;
  animation-duration: 1.2s;
  animation-delay: 0.1s;
}

.p-index-fv__photo {
  animation-name: p-index-fv-zoom;
  animation-duration: 1.4s;
  animation-delay: 0.3s;
}

.p-index-fv__catch__line1 {
  animation-delay: 0.8s;
}

.p-index-fv__catch__line2 {
  animation-delay: 0.95s;
}

.p-index-fv__actions {
  animation-delay: 1.15s;
}

.home .c-sp-fixed {
  animation: p-index-fv-up 0.8s var(--easing) 1.15s backwards;
  animation-play-state: var(--fv-opening);
}

.home .l-header__nav,
.home .l-header__actions,
.home .l-header__en,
.home .l-header__hamburger {
  animation-name: p-index-fv-fade;
  animation-delay: 1.3s;
}

.p-index-fv__news {
  animation-delay: 1.3s;
}

.p-index-fv__scrap {
  animation-name: p-index-fv-slide;
  animation-delay: 1.45s;
}
@media (max-width: 750px) {
  .p-index-fv__scrap {
    animation-name: p-index-fv-up;
  }
}

.p-index-fv__recruit {
  animation-delay: 1.55s;
}

@keyframes p-index-fv-fade {
  from {
    opacity: 0;
  }
}
@keyframes p-index-fv-up {
  from {
    opacity: 0;
    translate: 0 clamp(14px, 1.25vw, 24px);
  }
}
@keyframes p-index-fv-zoom {
  from {
    opacity: 0;
    scale: 1.06;
  }
}
@keyframes p-index-fv-slide {
  from {
    opacity: 0;
    translate: 100% 0;
  }
}
@keyframes p-index-fv-shine {
  from {
    background-position: 100% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home .l-header__logo,
  .home .l-header__nav,
  .home .l-header__actions,
  .home .l-header__en,
  .home .l-header__hamburger,
  .p-index-fv__bg,
  .p-index-fv__photo,
  .p-index-fv__catch__line1,
  .p-index-fv__catch__line2,
  .p-index-fv__actions,
  .home .c-sp-fixed,
  .p-index-fv__news,
  .p-index-fv__scrap,
  .p-index-fv__recruit,
  .p-index-fv__catch__mark::after {
    animation: none;
  }
}
.p-index-commitment {
  position: relative;
  width: 100%;
  padding-top: clamp(53px, 4.84375vw, 93px);
  padding-bottom: clamp(52px, 4.6875vw, 90px);
  box-sizing: border-box;
}

.p-index-commitment::before {
  content: "";
  position: absolute;
  top: calc(clamp(6px, 0.5208333333vw, 10px) * -1);
  left: 0;
  width: 100%;
  height: clamp(73px, 6.6666666667vw, 128px);
  background: linear-gradient(180deg, #ecf5ff 0%, rgba(236, 245, 255, 0) 100%);
  pointer-events: none;
}

.p-index-commitment__inner {
  position: relative;
  width: clamp(879px, 79.9479166667vw, 1535px);
  margin-left: clamp(81px, 7.3958333333vw, 142px);
  box-sizing: border-box;
}
@media (min-width: 1921px) {
  .p-index-commitment__inner {
    margin-left: auto;
    margin-right: auto;
  }
}

.p-index-commitment__head {
  position: relative;
  z-index: 2;
}

.p-index-commitment__head .ja {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  margin: 0 0 0 clamp(68px, 6.1979166667vw, 119px);
  color: #292929;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-commitment__head .ja::before {
  content: "";
  display: block;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-index-commitment__head .en {
  display: block;
  margin: clamp(12px, 1.09375vw, 21px) 0 0 clamp(58px, 5.2604166667vw, 101px);
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(109px, 9.8958333333vw, 190px);
  font-weight: 500;
  font-style: italic;
  line-height: 0.84;
  white-space: nowrap;
}

.p-index-commitment__body {
  display: flex;
  align-items: flex-start;
  margin-top: calc(clamp(18px, 1.6666666667vw, 32px) * -1);
  margin-bottom: calc(clamp(92px, 8.3333333333vw, 160px) * -1);
}

.p-index-commitment__visual {
  position: relative;
  width: clamp(608px, 55.3125vw, 1062px);
  height: clamp(608px, 55.3125vw, 1062px);
  flex-shrink: 0;
}

.p-index-commitment__glow {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(608px, 55.3125vw, 1062px);
  height: clamp(608px, 55.3125vw, 1062px);
  background: radial-gradient(closest-side, #459df0 0%, rgba(39, 147, 233, 0) 100%);
  pointer-events: none;
}

.p-index-commitment__lines {
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(608px, 55.3125vw, 1062px);
  height: clamp(608px, 55.3125vw, 1062px);
  pointer-events: none;
  z-index: 1;
  animation: p-index-commitment-wheel 60s linear infinite;
  will-change: transform;
}

.p-index-commitment__bubbles {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  z-index: 2;
  animation: p-index-commitment-wheel 60s linear infinite;
  will-change: transform;
}

.p-index-commitment__bubble {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(164px, 14.9479166667vw, 287px);
  height: clamp(165px, 15vw, 288px);
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #ecf5ff;
  box-shadow: 0 3px 13px rgba(8, 92, 172, 0.263);
  text-align: center;
  animation: p-index-commitment-wheel 60s linear infinite reverse;
  will-change: transform;
}

@keyframes p-index-commitment-wheel {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-index-commitment__lines,
  .p-index-commitment__bubbles,
  .p-index-commitment__bubble {
    animation: none;
  }
}
.p-index-commitment__bubble.--top {
  top: clamp(57px, 5.2083333333vw, 100px);
  left: clamp(223px, 20.3125vw, 390px);
}

.p-index-commitment__bubble.--tr {
  top: clamp(158px, 14.3229166667vw, 275px);
  left: clamp(385px, 35vw, 672px);
  width: clamp(164px, 14.8958333333vw, 286px);
  height: clamp(165px, 15vw, 288px);
}

.p-index-commitment__bubble.--tl {
  top: clamp(158px, 14.3229166667vw, 275px);
  left: clamp(67px, 6.09375vw, 117px);
  width: clamp(164px, 14.8958333333vw, 286px);
  height: clamp(165px, 15vw, 288px);
}

.p-index-commitment__bubble.--bl {
  top: clamp(346px, 31.4583333333vw, 604px);
  left: clamp(117px, 10.6770833333vw, 205px);
  width: clamp(164px, 14.8958333333vw, 286px);
  height: clamp(165px, 15vw, 288px);
}

.p-index-commitment__bubble.--br {
  top: clamp(346px, 31.4583333333vw, 604px);
  left: clamp(339px, 30.8333333333vw, 592px);
  width: clamp(164px, 14.8958333333vw, 286px);
  height: clamp(165px, 15vw, 288px);
}

.p-index-commitment__bubble__quote {
  position: absolute;
  top: calc(clamp(1px, 0.1041666667vw, 2px) * -1);
  left: clamp(33px, 3.0208333333vw, 58px);
  transform: translateX(-50%);
  color: #2793e9;
  font-size: clamp(59px, 5.3645833333vw, 103px);
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}

.p-index-commitment__bubble.--tr .p-index-commitment__bubble__quote,
.p-index-commitment__bubble.--tl .p-index-commitment__bubble__quote {
  top: calc(clamp(2px, 0.2083333333vw, 4px) * -1);
}

.p-index-commitment__bubble.--br .p-index-commitment__bubble__quote {
  left: clamp(36px, 3.28125vw, 63px);
}

.p-index-commitment__bubble__text {
  position: relative;
  z-index: 1;
  padding: 0 clamp(14px, 1.25vw, 24px);
  box-sizing: border-box;
}

.p-index-commitment__bubble__text p {
  margin: 0;
  font-weight: 700;
  text-align: center;
}

.p-index-commitment__bubble__text p:first-child {
  color: #292929;
  font-size: clamp(12px, 1.09375vw, 21px);
  line-height: clamp(16px, 1.4583333333vw, 28px);
}

.p-index-commitment__bubble__text p:last-child {
  margin-top: clamp(5px, 0.4166666667vw, 8px);
  color: #085cac;
  font-size: clamp(16px, 1.4583333333vw, 28px);
  line-height: clamp(25px, 2.2395833333vw, 43px);
}

.p-index-commitment__bubble.--top .p-index-commitment__bubble__text p:last-child {
  margin-top: clamp(9px, 0.8333333333vw, 16px);
}

.p-index-commitment__center {
  position: absolute;
  top: clamp(245px, 22.2916666667vw, 428px);
  left: clamp(245px, 22.2916666667vw, 428px);
  width: clamp(118px, 10.7291666667vw, 206px);
  height: clamp(118px, 10.7291666667vw, 206px);
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 3px 13px rgba(8, 92, 172, 0.263);
  z-index: 3;
}

.p-index-commitment__center img {
  display: block;
  width: clamp(118px, 10.7291666667vw, 206px);
  height: clamp(118px, 10.7291666667vw, 206px);
}

.p-index-commitment__copy {
  width: clamp(272px, 24.6875vw, 474px);
  margin-top: clamp(80px, 7.2916666667vw, 140px);
  margin-left: -1px;
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-index-commitment__copy h3 {
  margin: 0;
  color: #292929;
  font-size: clamp(25px, 2.2395833333vw, 43px);
  font-weight: 700;
  line-height: clamp(37px, 3.3333333333vw, 64px);
}

.p-index-commitment__copy > p {
  margin: clamp(12px, 1.09375vw, 21px) 0 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1.8;
}

.p-index-commitment__note {
  margin-top: clamp(35px, 3.1770833333vw, 61px);
  margin-left: clamp(3px, 0.2604166667vw, 5px);
}

.p-index-commitment__note p {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: fit-content;
  height: clamp(32px, 2.8645833333vw, 55px);
  margin: clamp(5px, 0.46875vw, 9px) 0 0;
  padding: 0 clamp(6px, 0.5729166667vw, 11px);
  border-radius: clamp(2px, 0.2083333333vw, 4px);
  color: #292929;
  font-size: clamp(17px, 1.5104166667vw, 29px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  background-color: #ffffff;
}

.p-index-commitment__note p:first-child {
  margin-top: 0;
}

.p-index-commitment__note p.--accent {
  width: fit-content;
  height: clamp(32px, 2.8645833333vw, 55px);
  padding: 0 clamp(6px, 0.5729166667vw, 11px);
  text-indent: calc(clamp(3px, 0.2604166667vw, 5px) * -1);
  color: #ffffff;
  background-color: #085cac;
}

.p-index-commitment__note p:nth-child(2) {
  width: clamp(108px, 9.84375vw, 189px);
  height: clamp(32px, 2.8645833333vw, 55px);
}

.p-index-commitment__note p:nth-child(3) {
  width: clamp(265px, 24.0625vw, 462px);
  height: clamp(31px, 2.8125vw, 54px);
  margin-top: clamp(6px, 0.5729166667vw, 11px);
}

html[lang=en] .p-index-commitment__note p,
html[lang=en] .p-index-commitment__note p.--accent,
html[lang=en] .p-index-commitment__note p:nth-child(2),
html[lang=en] .p-index-commitment__note p:nth-child(3) {
  display: block;
  width: fit-content;
  max-width: 100%;
  height: auto;
  min-height: clamp(32px, 2.8645833333vw, 55px);
  padding: clamp(6px, 0.5208333333vw, 10px) clamp(6px, 0.5729166667vw, 11px);
  line-height: 1.2;
  white-space: normal;
  text-indent: 0;
}

.p-index-commitment__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 0.9375vw, 18px);
  width: clamp(148px, 13.4895833333vw, 259px);
  height: clamp(46px, 4.21875vw, 81px);
  margin-top: clamp(32px, 2.8645833333vw, 55px);
  padding-left: clamp(10px, 0.8854166667vw, 17px);
  box-sizing: border-box;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
  transition: background-color 0.3s ease-out;
}

.p-index-commitment__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
  height: clamp(9px, 0.8333333333vw, 16px);
}

@media (min-width: 750.11px) {
  .p-index-commitment__btn:hover {
    background-color: #292929;
    opacity: 1;
  }
}
@media (max-width: 750px) {
  .p-index-commitment {
    padding: clamp(79px, 21.0666666667vw, 158px) 0 clamp(80px, 21.3333333333vw, 160px);
    overflow-x: clip;
  }
  .p-index-commitment::before {
    display: none;
  }
  .p-index-commitment__inner {
    width: auto;
    margin-left: 0;
  }
  .p-index-commitment__body {
    flex-direction: column;
    align-items: center;
    margin-top: clamp(22px, 5.8666666667vw, 44px);
    margin-bottom: 0;
  }
  .p-index-commitment__copy {
    display: contents;
  }
  .p-index-commitment__copy h3 {
    order: 1;
    font-size: clamp(20px, 5.3333333333vw, 40px);
    line-height: clamp(30px, 8vw, 60px);
    text-align: center;
  }
  .p-index-commitment__copy > p {
    order: 2;
    margin-top: clamp(11px, 2.9333333333vw, 22px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(23px, 6.1333333333vw, 46px);
    text-align: center;
  }
  .p-index-commitment__note {
    order: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: clamp(20px, 5.3333333333vw, 40px) 0 0;
  }
  .p-index-commitment__note p,
  .p-index-commitment__note p.--accent,
  .p-index-commitment__note p:nth-child(2) {
    width: fit-content;
    height: clamp(37px, 9.8666666667vw, 74px);
    margin-top: clamp(6px, 1.6vw, 12px);
    padding: 0 clamp(6px, 1.6vw, 12px);
    border-radius: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(19px, 5.0666666667vw, 38px);
    text-indent: 0;
  }
  .p-index-commitment__note p:first-child {
    margin-top: 0;
  }
  .p-index-commitment__note p:nth-child(3) {
    width: fit-content;
    height: clamp(36px, 9.6vw, 72px);
    margin-top: clamp(6px, 1.6vw, 12px);
  }
  html[lang=en] .p-index-commitment__note {
    align-self: stretch;
    box-sizing: border-box;
    padding-right: clamp(20px, 5.3333333333vw, 40px);
    padding-left: clamp(20px, 5.3333333333vw, 40px);
  }
  html[lang=en] .p-index-commitment__note p,
  html[lang=en] .p-index-commitment__note p.--accent,
  html[lang=en] .p-index-commitment__note p:nth-child(2),
  html[lang=en] .p-index-commitment__note p:nth-child(3) {
    min-height: clamp(37px, 9.8666666667vw, 74px);
    padding: clamp(7px, 1.8666666667vw, 14px) clamp(6px, 1.6vw, 12px);
  }
  .p-index-commitment__visual {
    order: 4;
    width: clamp(411.3px, 109.68vw, 822.6px);
    height: clamp(411.3px, 109.68vw, 822.6px);
    margin-top: clamp(23px, 6.1333333333vw, 46px);
  }
  .p-index-commitment__glow,
  .p-index-commitment__lines {
    width: clamp(411.3px, 109.68vw, 822.6px);
    height: clamp(411.3px, 109.68vw, 822.6px);
  }
  .p-index-commitment__lines line {
    stroke-width: 5.2;
    stroke-dasharray: 0 10.3;
  }
  .p-index-commitment__bubble,
  .p-index-commitment__bubble.--tr,
  .p-index-commitment__bubble.--tl,
  .p-index-commitment__bubble.--bl,
  .p-index-commitment__bubble.--br {
    width: clamp(119.5px, 31.8666666667vw, 239px);
    height: clamp(120px, 32vw, 240px);
  }
  .p-index-commitment__bubble {
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(13px, 3.4666666667vw, 26px) rgba(8, 92, 172, 0.263);
  }
  .p-index-commitment__bubble.--top {
    top: clamp(33px, 8.8vw, 66px);
    left: clamp(146.9px, 39.1733333333vw, 293.8px);
  }
  .p-index-commitment__bubble.--tr {
    top: clamp(104.7px, 27.92vw, 209.4px);
    left: clamp(256.6px, 68.4266666667vw, 513.2px);
  }
  .p-index-commitment__bubble.--tl {
    top: clamp(104.7px, 27.92vw, 209.4px);
    left: clamp(38.4px, 10.24vw, 76.8px);
  }
  .p-index-commitment__bubble.--bl {
    top: clamp(231px, 61.6vw, 462px);
    left: clamp(69.2px, 18.4533333333vw, 138.4px);
  }
  .p-index-commitment__bubble.--br {
    top: clamp(231px, 61.6vw, 462px);
    left: clamp(222.7px, 59.3866666667vw, 445.4px);
  }
  .p-index-commitment__bubble__quote,
  .p-index-commitment__bubble.--tr .p-index-commitment__bubble__quote,
  .p-index-commitment__bubble.--tl .p-index-commitment__bubble__quote,
  .p-index-commitment__bubble.--br .p-index-commitment__bubble__quote {
    top: calc(clamp(2px, 0.5333333333vw, 4px) * -1);
    left: clamp(23px, 6.1333333333vw, 46px);
    font-size: clamp(40px, 10.6666666667vw, 80px);
  }
  .p-index-commitment__bubble__text {
    padding: 0 clamp(6px, 1.6vw, 12px);
  }
  .p-index-commitment__bubble__text p:first-child {
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: clamp(16px, 4.2666666667vw, 32px);
  }
  .p-index-commitment__bubble__text p:last-child,
  .p-index-commitment__bubble.--top .p-index-commitment__bubble__text p:last-child {
    margin-top: clamp(4px, 1.0666666667vw, 8px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-index-commitment__center {
    top: clamp(165.8px, 44.2133333333vw, 331.6px);
    left: clamp(165.8px, 44.2133333333vw, 331.6px);
    width: clamp(79.8px, 21.28vw, 159.6px);
    height: clamp(79.8px, 21.28vw, 159.6px);
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(13px, 3.4666666667vw, 26px) rgba(8, 92, 172, 0.263);
  }
  .p-index-commitment__center img {
    width: clamp(79.8px, 21.28vw, 159.6px);
    height: clamp(79.8px, 21.28vw, 159.6px);
  }
  .p-index-commitment__btn {
    order: 5;
    margin-top: clamp(6px, 1.6vw, 12px);
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
  }
}
.p-index-strengths {
  position: relative;
  width: calc(100% - max(29px, 2.6041666667vw));
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  color: #ffffff;
}

.p-index-strengths__inner {
  --strengths-step: 100vh;
  --strengths-lead: 0.5;
  position: relative;
  margin-left: max(61px, 5.5208333333vw);
  box-sizing: border-box;
}

.p-index-strengths__inner::after {
  content: "";
  display: block;
  height: calc(var(--strengths-step) * (var(--strengths-lead) + 2));
}

.p-index-strengths__pin {
  position: sticky;
  top: max(86px, 7.8125vw);
  padding-top: max(166px, 15.1041666667vw);
  padding-bottom: max(102px, 9.2708333333vw);
  box-sizing: border-box;
  isolation: isolate;
}

.p-index-strengths__pin::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: calc(max(61px, 5.5208333333vw) * -1);
  z-index: -1;
  pointer-events: none;
  background-color: #00498e;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(to right, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
  background-size: max(76px, 6.875vw) max(76px, 6.875vw);
  background-position: max(37px, 3.3333333333vw) max(57px, 5.2083333333vw);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 3270'%3E%3Cpath fill='%23000' d='M1082.714 103.463L1082.714 11.34C1082.713 5.078 1087.788 0.001 1094.05 0H1858.664C1864.926 0 1870.003 5.075 1870.003 11.337V3258.664C1870.002 3264.925 1864.926 3270 1858.665 3270H11.342C5.079 3270 0.001 3264.924 0 3258.661V126.14C0.002 119.878 5.077 114.801 11.339 114.8H1071.375C1077.637 114.8 1082.714 109.723 1082.714 103.461Z'/%3E%3C/svg%3E"), linear-gradient(#000, #000);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1870 3270'%3E%3Cpath fill='%23000' d='M1082.714 103.463L1082.714 11.34C1082.713 5.078 1087.788 0.001 1094.05 0H1858.664C1864.926 0 1870.003 5.075 1870.003 11.337V3258.664C1870.002 3264.925 1864.926 3270 1858.665 3270H11.342C5.079 3270 0.001 3264.924 0 3258.661V126.14C0.002 119.878 5.077 114.801 11.339 114.8H1071.375C1077.637 114.8 1082.714 109.723 1082.714 103.461Z'/%3E%3C/svg%3E"), linear-gradient(#000, #000);
  -webkit-mask-size: 100% auto, 100% 90%;
  mask-size: 100% auto, 100% 90%;
  -webkit-mask-position: top left, bottom left;
  mask-position: top left, bottom left;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-composite: source-over, source-over;
  mask-composite: add, add;
}

.p-index-strengths__head {
  display: flex;
  align-items: flex-start;
  padding-left: max(111px, 10.1041666667vw);
}

.p-index-strengths__head__ttl {
  width: max(422px, 38.3333333333vw);
  flex-shrink: 0;
}

.p-index-strengths__head .ja {
  display: flex;
  align-items: center;
  gap: max(5px, 0.4166666667vw);
  margin: 0;
  color: #ffffff;
  font-size: max(10px, 0.9375vw);
  font-weight: 700;
  line-height: max(22px, 2.03125vw);
}

.p-index-strengths__head .ja::before {
  content: "";
  display: block;
  width: max(6px, 0.5208333333vw);
  height: max(6px, 0.5208333333vw);
  border-radius: 50%;
  background-color: #ffffff;
  flex-shrink: 0;
}

.p-index-strengths__head .en {
  display: block;
  margin: max(7px, 0.625vw) 0 0;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: max(62px, 5.6770833333vw);
  font-weight: 500;
  font-style: italic;
  line-height: max(53px, 4.7916666667vw);
  white-space: nowrap;
}

.p-index-strengths__head__copy {
  flex: 1;
  min-width: 0;
  margin-top: max(2px, 0.2083333333vw);
  padding-right: max(29px, 2.6041666667vw);
  box-sizing: border-box;
}

.p-index-strengths__head__copy h3 {
  margin: 0;
  color: #ffffff;
  font-size: max(23px, 2.1354166667vw);
  font-weight: 700;
  line-height: max(32px, 2.9166666667vw);
}

.p-index-strengths__head__copy p {
  margin: max(12px, 1.09375vw) 0 0;
  color: #ffffff;
  font-size: max(10px, 0.9375vw);
  line-height: max(21px, 1.9270833333vw);
}

.p-index-strengths__body {
  display: flex;
  align-items: center;
  gap: max(90px, 8.1770833333vw);
  margin-top: max(53px, 4.7916666667vw);
}

.p-index-strengths__list {
  display: grid;
  flex: 1;
}

.p-index-strengths__item {
  grid-area: 1/1;
  display: flex;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0s 0.4s, visibility 0s 0.4s;
}

.p-index-strengths__item.is-current {
  z-index: 1;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s ease;
}

@media (min-width: 750.11px) {
  .p-index-strengths__item.is-current .p-index-strengths__copy > * {
    animation: p-index-strengths-in 0.8s var(--easing) 0.1s both;
  }
}

@media (min-width: 750.11px) {
  .p-index-strengths__item.is-current .p-index-strengths__copy > :nth-child(2) {
    animation-delay: 0.2s;
  }
}

@media (min-width: 750.11px) {
  .p-index-strengths__item.is-current .p-index-strengths__copy > :nth-child(3) {
    animation-delay: 0.3s;
  }
}

@keyframes p-index-strengths-in {
  from {
    opacity: 0;
    transform: translateY(max(14px, 1.25vw));
  }
}
.p-index-strengths__nav {
  position: relative;
  width: max(124px, 11.25vw);
  height: max(387px, 35.15625vw);
  margin: 0;
  padding: 0;
  list-style: none;
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-index-strengths__nav::before {
  content: "";
  position: absolute;
  top: calc(max(9px, 0.8333333333vw) * -1);
  left: calc(max(61px, 5.5208333333vw) * -1);
  width: max(134px, 12.1875vw);
  height: max(394px, 35.8333333333vw);
  background: radial-gradient(ellipse 147% 50% at -47% 50%, rgba(236, 245, 255, 0.35) 99.8%, rgba(236, 245, 255, 0) 100%);
  pointer-events: none;
}

.p-index-strengths__nav li {
  position: absolute;
  width: max(89px, 8.125vw);
  height: max(89px, 8.125vw);
  box-sizing: border-box;
  border-radius: 50%;
  background: linear-gradient(213.48deg, #5099de 32%, #0069cc 55%, #0e6cc4 86%);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
  color: #ecf5ff;
  text-align: center;
  transition-property: top, left, width, height, color;
  transition-duration: 0.8s;
  transition-timing-function: var(--easing);
}

.p-index-strengths__nav li::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: linear-gradient(35.72deg, #aad2ff 19%, #ecf5ff 81%);
  opacity: 0;
  transition: opacity 0.8s var(--easing);
}

.p-index-strengths__nav li.is-active {
  width: max(124px, 11.25vw);
  height: max(124px, 11.25vw);
  color: #085cac;
}

.p-index-strengths__nav li.is-active::before {
  opacity: 1;
}

.p-index-strengths__nav.--network li:nth-child(1) {
  top: max(37px, 3.3333333333vw);
  left: 0;
}

.p-index-strengths__nav.--network li:nth-child(2) {
  top: max(174px, 15.8333333333vw);
  left: max(29px, 2.6041666667vw);
}

.p-index-strengths__nav.--network li:nth-child(3) {
  top: max(269px, 24.4791666667vw);
  left: calc(max(16px, 1.4583333333vw) * -1);
}

.p-index-strengths__nav.--speed li:nth-child(1) {
  top: max(29px, 2.6041666667vw);
  left: max(8px, 0.7291666667vw);
}

.p-index-strengths__nav.--speed li:nth-child(2) {
  top: max(126px, 11.4583333333vw);
  left: max(24px, 2.1875vw);
}

.p-index-strengths__nav.--speed li:nth-child(3) {
  top: max(258px, 23.4375vw);
  left: max(8px, 0.7291666667vw);
}

.p-index-strengths__nav.--people li:nth-child(1) {
  top: max(29px, 2.6041666667vw);
  left: max(8px, 0.7291666667vw);
}

.p-index-strengths__nav.--people li:nth-child(2) {
  top: max(123px, 11.1979166667vw);
  left: max(42px, 3.8020833333vw);
}

.p-index-strengths__nav.--people li:nth-child(3) {
  top: max(223px, 20.3125vw);
  left: 0;
}

.p-index-strengths__nav__icon {
  position: relative;
  display: block;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition-property: width, height, margin;
  transition-duration: 0.8s;
  transition-timing-function: var(--easing);
}

.p-index-strengths__nav__icon.--network {
  width: max(43px, 3.90625vw);
  height: max(40px, 3.6458333333vw);
  margin: max(19px, 1.71875vw) 0 0 max(25px, 2.2916666667vw);
  -webkit-mask-image: url("../img/strengths/tab_icon_network.svg");
  mask-image: url("../img/strengths/tab_icon_network.svg");
}

.p-index-strengths__nav__icon.--speed {
  width: max(45px, 4.0625vw);
  height: max(38px, 3.4375vw);
  margin: max(20px, 1.8229166667vw) 0 0 max(18px, 1.6666666667vw);
  -webkit-mask-image: url("../img/strengths/tab_icon_speed.svg");
  mask-image: url("../img/strengths/tab_icon_speed.svg");
}

.p-index-strengths__nav__icon.--people {
  width: max(38px, 3.4375vw);
  height: max(37px, 3.3854166667vw);
  margin: max(22px, 2.03125vw) 0 0 max(30px, 2.7083333333vw);
  -webkit-mask-image: url("../img/strengths/tab_icon_people.svg");
  mask-image: url("../img/strengths/tab_icon_people.svg");
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__icon.--network {
  width: max(61px, 5.5208333333vw);
  height: max(56px, 5.1041666667vw);
  margin: max(24px, 2.1875vw) 0 0 max(34px, 3.0729166667vw);
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__icon.--speed {
  width: max(62px, 5.6770833333vw);
  height: max(54px, 4.9479166667vw);
  margin: max(25px, 2.2395833333vw) 0 0 max(26px, 2.34375vw);
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__icon.--people {
  width: max(56px, 5.0520833333vw);
  height: max(55px, 5vw);
  margin: max(28px, 2.5vw) 0 0 max(41px, 3.6979166667vw);
}

.p-index-strengths__nav__label {
  position: relative;
  display: block;
  margin-top: max(6px, 0.5208333333vw);
  color: #ffffff;
  font-size: max(9px, 0.78125vw);
  font-weight: 700;
  line-height: max(10px, 0.9375vw);
  white-space: nowrap;
  transition-property: margin, color, font-size, line-height;
  transition-duration: 0.8s;
  transition-timing-function: var(--easing);
}

.p-index-strengths__nav__icon.--speed + .p-index-strengths__nav__label {
  margin-top: max(7px, 0.625vw);
}

.p-index-strengths__nav__icon.--people + .p-index-strengths__nav__label {
  margin-top: max(6px, 0.5729166667vw);
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__label {
  margin-top: max(9px, 0.78125vw);
  color: #085cac;
  font-size: max(11px, 1.0416666667vw);
  line-height: max(14px, 1.25vw);
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__icon.--speed + .p-index-strengths__nav__label {
  margin-top: max(10px, 0.8854166667vw);
}

.p-index-strengths__nav li.is-active .p-index-strengths__nav__icon.--people + .p-index-strengths__nav__label {
  margin-top: max(6px, 0.5729166667vw);
}

.p-index-strengths__card {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  height: max(387px, 35.15625vw);
  padding-left: max(72px, 6.5104166667vw);
  box-sizing: border-box;
  border-radius: max(6px, 0.5208333333vw) 0 0 max(6px, 0.5208333333vw);
  background-color: #cce4ff;
}

.p-index-strengths__copy {
  position: relative;
  flex-shrink: 0;
  box-sizing: border-box;
}

.p-index-strengths__item.--network .p-index-strengths__copy {
  align-self: flex-start;
  width: max(378px, 34.3229166667vw);
  margin-top: max(45px, 4.0625vw);
  z-index: var(--z-float);
}

.p-index-strengths__item.--speed .p-index-strengths__copy {
  width: max(270px, 24.5833333333vw);
}

.p-index-strengths__item.--people .p-index-strengths__copy {
  width: max(241px, 21.875vw);
}

.p-index-strengths__label {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  height: max(17px, 1.5104166667vw);
  margin: 0;
  padding: 0 max(6px, 0.5208333333vw) max(1px, 0.1041666667vw);
  box-sizing: border-box;
  background-color: #085cac;
  color: #ffffff;
  font-size: max(10px, 0.9375vw);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

html[lang=en] .p-index-strengths__label {
  display: block;
  width: fit-content;
  max-width: 100%;
  height: auto;
  min-height: max(17px, 1.5104166667vw);
  padding: max(2px, 0.2083333333vw) max(6px, 0.5208333333vw);
  line-height: 1.2;
  white-space: normal;
}

.p-index-strengths__copy h3 {
  margin: max(24px, 2.1875vw) 0 0;
  color: #085cac;
  font-size: max(20px, 1.8229166667vw);
  font-weight: 700;
  line-height: max(22px, 2.03125vw);
  white-space: nowrap;
}

.p-index-strengths__item.--network .p-index-strengths__copy h3 {
  margin-top: max(21px, 1.875vw);
}

.p-index-strengths__copy > p:last-child {
  margin: max(14px, 1.3020833333vw) 0 0;
  color: #292929;
  font-size: max(9px, 0.8333333333vw);
  line-height: max(15px, 1.40625vw);
}

.p-index-strengths__visual {
  position: relative;
  flex: none;
  box-sizing: border-box;
}

.p-index-strengths__visual.--map {
  position: absolute;
  top: 0;
  left: max(174px, 15.8072916667vw);
  width: max(538px, 48.9322916667vw);
}
@media (min-width: 750.11px) {
  .p-index-strengths__visual.--map {
    height: 100%;
  }
}

@media (min-width: 750.11px) {
  .p-index-strengths__visual.--map picture {
    display: block;
    height: 100%;
  }
}

.p-index-strengths__visual.--map img {
  display: block;
  width: 100%;
  height: auto;
}
@media (min-width: 750.11px) {
  .p-index-strengths__visual.--map img {
    height: 100%;
    object-fit: contain;
    object-position: right center;
  }
}

.p-index-strengths__visual.--cycle {
  align-self: flex-start;
  width: max(338px, 30.7291666667vw);
  height: max(299px, 27.1875vw);
  margin-top: max(46px, 4.1666666667vw);
}

.p-index-strengths__cycle {
  transform: scale(calc(max(338px, 30.7291666667vw) / 590px));
}

.p-index-strengths__cycle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(215.64deg, #ecf5ff 10%, #cbe4ff 55%, #b7d7fa 91%);
  -webkit-mask-image: url("../img/strengths/feature_cycle_path.png");
  mask-image: url("../img/strengths/feature_cycle_path.png");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  mix-blend-mode: multiply;
}

.p-index-strengths__visual.--people {
  width: max(369px, 33.5416666667vw);
}

.p-index-strengths__people-issue {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(164px, 14.9479166667vw);
  height: max(34px, 3.125vw);
  margin: 0 auto;
  box-sizing: border-box;
  border-radius: max(17px, 1.5625vw);
  background-color: #085cac;
  color: #ffffff;
  font-size: max(14px, 1.25vw);
  font-weight: 700;
  line-height: 1;
}

.p-index-strengths__people-issue::after {
  content: "";
  position: absolute;
  top: max(40px, 3.6458333333vw);
  left: 50%;
  width: max(35px, 3.1770833333vw);
  height: max(17px, 1.5104166667vw);
  background-color: #67bcff;
  clip-path: polygon(0 0, 50% 42.8%, 100% 0, 50% 100%);
  transform: translateX(-50%);
}

.p-index-strengths__people-knowhow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(369px, 33.5416666667vw);
  height: max(34px, 3.125vw);
  margin: max(30px, 2.7083333333vw) 0 0;
  box-sizing: border-box;
  border-radius: max(6px, 0.5208333333vw);
  background-color: #2793e9;
  color: #ffffff;
  font-size: max(11px, 1.0416666667vw);
  font-weight: 700;
  line-height: 1;
}

.p-index-strengths__people-opts {
  display: flex;
  justify-content: space-between;
  margin: max(16px, 1.4583333333vw) 0 0;
  padding: 0;
  list-style: none;
}

.p-index-strengths__people-opts li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(115px, 10.46875vw);
  height: max(34px, 3.125vw);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: max(17px, 1.5625vw);
  background-color: #ffffff;
  color: #085cac;
  font-size: max(10px, 0.9375vw);
  font-weight: 700;
  line-height: 1;
}

.p-index-strengths__people-opts li::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  width: 3px;
  height: max(16px, 1.4583333333vw);
  background-image: radial-gradient(circle, #085cac 1.5px, transparent 1.5px);
  background-size: 3px 5px;
  transform: translateX(-50%);
}

.p-index-strengths__people-opts li::after {
  content: "";
  position: absolute;
  top: max(40px, 3.6458333333vw);
  left: 50%;
  width: max(19px, 1.71875vw);
  height: max(11px, 1.0416666667vw);
  background-color: #67bcff;
  clip-path: polygon(0 0, 50% 42.8%, 100% 0, 50% 100%);
  transform: translateX(-50%);
}

.p-index-strengths__people-result {
  position: relative;
  width: max(369px, 33.5416666667vw);
  height: max(67px, 6.09375vw);
  margin-top: max(27px, 2.5vw);
  box-sizing: border-box;
  border-radius: max(6px, 0.5208333333vw);
}

.p-index-strengths__people-result img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: max(6px, 0.5208333333vw);
}

.p-index-strengths__people-result::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: max(6px, 0.5208333333vw);
  background: linear-gradient(259.61deg, #00245f -4%, #007df4 45%, #00245f 103%);
  opacity: 0.85;
  pointer-events: none;
}

.p-index-strengths__people-result p {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  color: #ffffff;
  font-size: max(15px, 1.3541666667vw);
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.p-index-strengths__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: max(9px, 0.8333333333vw);
  width: max(148px, 13.4895833333vw);
  height: max(46px, 4.21875vw);
  margin: max(84px, 7.65625vw) auto 0;
  padding-left: max(9px, 0.78125vw);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: max(23px, 2.1354166667vw);
  background-color: #ffffff;
  color: #085cac;
  font-size: max(11px, 0.9895833333vw);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-index-strengths__btn img {
  width: max(9px, 0.8333333333vw);
  height: max(9px, 0.8333333333vw);
  transition: filter 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .p-index-strengths__btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-index-strengths__btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-index-strengths__tabs {
  display: none;
}

@media (max-width: 750px) {
  .p-index-strengths {
    width: auto;
    margin: 0 clamp(11px, 2.9333333333vw, 22px);
    padding: 0;
  }
  .p-index-strengths__pin::before {
    inset: 0;
    left: 0;
    border-radius: clamp(2px, 0.5333333333vw, 4px);
    background-size: clamp(132px, 35.2vw, 264px) clamp(132px, 35.2vw, 264px);
    background-position: clamp(16.8px, 4.48vw, 33.6px) clamp(19px, 5.0666666667vw, 38px);
    -webkit-mask-image: none;
    mask-image: none;
  }
  .p-index-strengths__inner {
    margin-left: 0;
  }
  .p-index-strengths__inner::after {
    display: none;
  }
  .p-index-strengths__pin {
    position: static;
    padding-top: clamp(90px, 24vw, 180px);
    padding-bottom: clamp(80px, 21.3333333333vw, 160px);
    isolation: auto;
  }
  .p-index-strengths__head {
    display: block;
    padding: 0 clamp(12px, 3.2vw, 24px);
    text-align: center;
  }
  .p-index-strengths__head__ttl {
    width: auto;
  }
  .p-index-strengths__head__copy {
    flex: none;
    min-width: 0;
    margin-top: clamp(29px, 7.7333333333vw, 58px);
    padding-right: 0;
  }
  .p-index-strengths__head__copy h3 {
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-index-strengths__head__copy p {
    margin: clamp(11px, 2.9333333333vw, 22px) clamp(11px, 2.9333333333vw, 22px) 0;
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-strengths__tabs {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: clamp(329px, 87.7333333333vw, 658px);
    height: clamp(135px, 36vw, 270px);
    margin: clamp(42px, 11.2vw, 84px) auto 0;
    padding: 0;
    list-style: none;
  }
  .p-index-strengths__tabs::before {
    content: "";
    position: absolute;
    top: clamp(40px, 10.6666666667vw, 80px);
    left: clamp(34px, 9.0666666667vw, 68px);
    width: clamp(262px, 69.8666666667vw, 524px);
    height: clamp(246px, 65.6vw, 492px);
    box-sizing: border-box;
    border: clamp(18px, 4.8vw, 36px) solid rgba(236, 245, 255, 0.35);
    border-radius: 50%;
    clip-path: inset(0 0 clamp(156px, 41.6vw, 312px) 0);
    pointer-events: none;
  }
  .p-index-strengths__tabs li {
    position: relative;
    width: clamp(104.3px, 27.8133333333vw, 208.6px);
    height: clamp(104.3px, 27.8133333333vw, 208.6px);
    margin-top: clamp(31px, 8.2666666667vw, 62px);
    border-radius: 50%;
    background: linear-gradient(213.48deg, #5099de 0%, #0069cc 43.1%, #0e6cc4 100%);
    box-shadow: 0 clamp(3px, 0.8vw, 6px) clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
    color: #ecf5ff;
    text-align: center;
  }
  .p-index-strengths__tabs li:nth-child(2) {
    margin-top: 0;
  }
  .p-index-strengths__tabs .p-index-strengths__nav__icon.--network {
    width: clamp(40.4px, 10.7733333333vw, 80.8px);
    height: clamp(37.3px, 9.9466666667vw, 74.6px);
    margin: clamp(17.7px, 4.72vw, 35.4px) 0 0 clamp(32px, 8.5333333333vw, 64px);
  }
  .p-index-strengths__tabs .p-index-strengths__nav__icon.--speed {
    width: clamp(48.1px, 12.8266666667vw, 96.2px);
    height: clamp(40.5px, 10.8vw, 81px);
    margin: clamp(19.4px, 5.1733333333vw, 38.8px) 0 0 clamp(23.6px, 6.2933333333vw, 47.2px);
  }
  .p-index-strengths__tabs .p-index-strengths__nav__icon.--people {
    width: clamp(44.5px, 11.8666666667vw, 89px);
    height: clamp(44px, 11.7333333333vw, 88px);
    margin: clamp(20.3px, 5.4133333333vw, 40.6px) 0 0 clamp(34.7px, 9.2533333333vw, 69.4px);
  }
  .p-index-strengths__tabs__label {
    display: block;
    margin-top: clamp(5px, 1.3333333333vw, 10px);
    color: #ffffff;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    font-weight: 700;
    line-height: clamp(15px, 4vw, 30px);
  }
  .p-index-strengths__nav__icon.--speed + .p-index-strengths__tabs__label {
    margin-top: clamp(9.5px, 2.5333333333vw, 19px);
  }
  .p-index-strengths__body {
    display: block;
    margin-top: clamp(47px, 12.5333333333vw, 94px);
  }
  .p-index-strengths__list {
    display: block;
  }
  .p-index-strengths__item {
    display: block;
    margin: clamp(34px, 9.0666666667vw, 68px) calc(clamp(2px, 0.5333333333vw, 4px) * -1) 0 clamp(12px, 3.2vw, 24px);
    opacity: 1;
    visibility: visible;
  }
  .p-index-strengths__item:first-child {
    margin-top: 0;
  }
  .p-index-strengths__nav {
    display: none;
  }
  .p-index-strengths__card {
    display: block;
    height: auto;
    padding: clamp(39.5px, 10.5333333333vw, 79px) clamp(15px, 4vw, 30px) 0 clamp(27px, 7.2vw, 54px);
    border-radius: clamp(10px, 2.6666666667vw, 20px) 0 0 clamp(10px, 2.6666666667vw, 20px);
  }
  .p-index-strengths__item.--network .p-index-strengths__card {
    height: clamp(457px, 121.8666666667vw, 914px);
  }
  .p-index-strengths__item.--speed .p-index-strengths__card {
    padding-top: clamp(42.5px, 11.3333333333vw, 85px);
    padding-bottom: clamp(49px, 13.0666666667vw, 98px);
  }
  .p-index-strengths__item.--people .p-index-strengths__card {
    padding-top: clamp(44.5px, 11.8666666667vw, 89px);
    padding-bottom: clamp(46px, 12.2666666667vw, 92px);
  }
  .p-index-strengths__copy,
  .p-index-strengths__item.--network .p-index-strengths__copy,
  .p-index-strengths__item.--speed .p-index-strengths__copy,
  .p-index-strengths__item.--people .p-index-strengths__copy {
    width: auto;
    margin-top: 0;
    z-index: 1;
  }
  .p-index-strengths__label {
    position: relative;
    display: flex;
    height: clamp(25px, 6.6666666667vw, 50px);
    margin-left: clamp(30px, 8vw, 60px);
    padding: 0 clamp(9px, 2.4vw, 18px) 0 clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  html[lang=en] .p-index-strengths__label {
    min-height: clamp(25px, 6.6666666667vw, 50px);
    padding: clamp(4px, 1.0666666667vw, 8px) clamp(9px, 2.4vw, 18px) clamp(4px, 1.0666666667vw, 8px) clamp(20px, 5.3333333333vw, 40px);
  }
  html[lang=en] .p-index-strengths__label::before,
  html[lang=en] .p-index-strengths__item.--network .p-index-strengths__label::after,
  html[lang=en] .p-index-strengths__item.--speed .p-index-strengths__label::after,
  html[lang=en] .p-index-strengths__item.--people .p-index-strengths__label::after {
    top: 50%;
    transform: translateY(-50%);
  }
  .p-index-strengths__label::before {
    content: "";
    position: absolute;
    top: calc(clamp(11.3px, 3.0133333333vw, 22.6px) * -1);
    left: calc(clamp(33.8px, 9.0133333333vw, 67.6px) * -1);
    width: clamp(47px, 12.5333333333vw, 94px);
    height: clamp(47px, 12.5333333333vw, 94px);
    border-radius: 50%;
    background-color: #2793e9;
  }
  .p-index-strengths__label::after {
    content: "";
    position: absolute;
    background-color: #ecf5ff;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
  }
  .p-index-strengths__item.--network .p-index-strengths__label::after {
    top: calc(clamp(1.8px, 0.48vw, 3.6px) * -1);
    left: calc(clamp(25px, 6.6666666667vw, 50px) * -1);
    width: clamp(30.3px, 8.08vw, 60.6px);
    height: clamp(28px, 7.4666666667vw, 56px);
    -webkit-mask-image: url("../img/strengths/tab_icon_network.svg");
    mask-image: url("../img/strengths/tab_icon_network.svg");
  }
  .p-index-strengths__item.--speed .p-index-strengths__label::after {
    top: calc(clamp(1.8px, 0.48vw, 3.6px) * -1);
    left: calc(clamp(30px, 8vw, 60px) * -1);
    width: clamp(33.3px, 8.88vw, 66.6px);
    height: clamp(28px, 7.4666666667vw, 56px);
    -webkit-mask-image: url("../img/strengths/tab_icon_speed.svg");
    mask-image: url("../img/strengths/tab_icon_speed.svg");
  }
  .p-index-strengths__item.--people .p-index-strengths__label::after {
    top: calc(clamp(2.6px, 0.6933333333vw, 5.2px) * -1);
    left: calc(clamp(22.1px, 5.8933333333vw, 44.2px) * -1);
    width: clamp(29.9px, 7.9733333333vw, 59.8px);
    height: clamp(29.5px, 7.8666666667vw, 59px);
    -webkit-mask-image: url("../img/strengths/tab_icon_people.svg");
    mask-image: url("../img/strengths/tab_icon_people.svg");
  }
  .p-index-strengths__copy h3,
  .p-index-strengths__item.--network .p-index-strengths__copy h3 {
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
    white-space: normal;
  }
  .p-index-strengths__copy > p:last-child {
    margin-top: clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-strengths__visual.--map {
    top: clamp(182.4px, 48.64vw, 364.8px);
    left: clamp(9px, 2.4vw, 18px);
    width: clamp(323px, 86.1333333333vw, 646px);
  }
  html[lang=en] .p-index-strengths__item.--network .p-index-strengths__card {
    height: auto;
    padding-bottom: clamp(32px, 8.4vw, 63px);
  }
  html[lang=en] .p-index-strengths__visual.--map {
    position: static;
    width: clamp(323px, 86.1333333333vw, 646px);
    margin-top: clamp(20px, 5.3333333333vw, 40px);
    margin-left: calc(clamp(9px, 2.4vw, 18px) - clamp(27px, 7.2vw, 54px));
  }
  .p-index-strengths__visual.--cycle {
    width: clamp(303px, 80.8vw, 606px);
    height: clamp(268px, 71.4666666667vw, 536px);
    margin: clamp(4px, 1.0666666667vw, 8px) 0 0 calc(clamp(3px, 0.8vw, 6px) * -1);
  }
  .p-index-strengths__cycle {
    transform: scale(calc(clamp(303px, 80.8vw, 606px) / 590px));
  }
  .p-index-strengths__visual.--people {
    width: clamp(313px, 83.4666666667vw, 626px);
    margin: clamp(9px, 2.4vw, 18px) 0 0 calc(clamp(11px, 2.9333333333vw, 22px) * -1);
  }
  .p-index-strengths__people-issue {
    width: clamp(153px, 40.8vw, 306px);
    height: clamp(46px, 12.2666666667vw, 92px);
    border-radius: clamp(23px, 6.1333333333vw, 46px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-index-strengths__people-issue {
    height: auto;
    min-height: clamp(46px, 12.2666666667vw, 92px);
    padding: clamp(8px, 2.1333333333vw, 16px) clamp(12px, 3.2vw, 24px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
    line-height: 1.2;
    text-align: center;
  }
  html[lang=en] .p-index-strengths__people-issue::after {
    top: calc(100% + clamp(6px, 1.6vw, 12px));
  }
  .p-index-strengths__people-issue::after {
    top: clamp(51.8px, 13.8133333333vw, 103.6px);
    width: clamp(39.4px, 10.5066666667vw, 78.8px);
    height: clamp(20.8px, 5.5466666667vw, 41.6px);
  }
  .p-index-strengths__people-knowhow {
    width: clamp(305px, 81.3333333333vw, 610px);
    height: clamp(46px, 12.2666666667vw, 92px);
    margin: clamp(34.4px, 9.1733333333vw, 68.8px) auto 0;
    border-radius: clamp(5px, 1.3333333333vw, 10px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-index-strengths__people-knowhow {
    padding: 0 clamp(12px, 3.2vw, 24px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-strengths__people-opts {
    margin-top: clamp(16.6px, 4.4266666667vw, 33.2px);
  }
  .p-index-strengths__people-opts li {
    width: clamp(103px, 27.4666666667vw, 206px);
    height: clamp(40px, 10.6666666667vw, 80px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
    font-size: clamp(15px, 4vw, 30px);
  }
  html[lang=en] .p-index-strengths__people-opts li {
    height: clamp(52px, 13.8666666667vw, 104px);
    padding: 0 clamp(8px, 2.1333333333vw, 16px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: 1.2;
    text-align: center;
  }
  html[lang=en] .p-index-strengths__people-opts li::after {
    top: calc(100% + clamp(8px, 2.1333333333vw, 16px));
  }
  .p-index-strengths__people-opts li::before {
    width: clamp(3px, 0.8vw, 6px);
    height: clamp(16.6px, 4.4266666667vw, 33.2px);
    background-image: radial-gradient(circle, #085cac clamp(1.5px, 0.4vw, 3px), transparent clamp(1.5px, 0.4vw, 3px));
    background-size: clamp(3px, 0.8vw, 6px) clamp(5px, 1.3333333333vw, 10px);
  }
  .p-index-strengths__people-opts li::after {
    top: clamp(49.5px, 13.2vw, 99px);
    width: clamp(24.9px, 6.64vw, 49.8px);
    height: clamp(15.5px, 4.1333333333vw, 31px);
  }
  .p-index-strengths__people-result {
    width: clamp(305px, 81.3333333333vw, 610px);
    height: clamp(85.2px, 22.72vw, 170.4px);
    margin: clamp(34.4px, 9.1733333333vw, 68.8px) auto 0;
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-index-strengths__people-result img,
  .p-index-strengths__people-result::after {
    border-radius: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-index-strengths__people-result p {
    flex-direction: column;
    font-size: clamp(18px, 4.8vw, 36px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  html[lang=en] .p-index-strengths__people-result p {
    padding: 0 clamp(16px, 4.2666666667vw, 32px);
    font-size: clamp(16px, 4.2666666667vw, 32px);
    line-height: 1.3;
    text-align: center;
  }
  .p-index-strengths__btn {
    margin-top: clamp(62px, 16.5333333333vw, 124px);
  }
}
.p-index-materials {
  position: relative;
  width: 100%;
  padding-top: clamp(89px, 8.0729166667vw, 155px);
  padding-bottom: clamp(109px, 9.8958333333vw, 190px);
  box-sizing: border-box;
}

.p-index-materials__inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: nowrap;
  width: clamp(858px, 78.0208333333vw, 1498px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.p-index-materials__head {
  width: clamp(260px, 23.9583333333vw, 460px);
  flex-shrink: 0;
  min-width: 0;
}

.p-index-materials__head .ja {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  margin: 0;
  color: #292929;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-materials__head .ja::before {
  content: "";
  display: block;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-index-materials__head .en {
  display: block;
  margin: clamp(6px, 0.5729166667vw, 11px) 0 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(62px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 0.84;
  white-space: nowrap;
}

.p-index-materials__head > p {
  margin: clamp(20px, 1.8229166667vw, 35px) 0 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-index-materials__head > p span {
  display: block;
  margin-top: clamp(14px, 1.25vw, 24px);
  font-size: clamp(8px, 0.7291666667vw, 14px);
}

.p-index-materials__list {
  display: flex;
  align-items: flex-start;
  gap: clamp(17px, 1.5625vw, 30px);
  margin: clamp(17px, 1.5104166667vw, 29px) 0 0;
  padding: 0;
  list-style: none;
  position: relative;
  z-index: 1;
}

.p-index-materials__card {
  position: relative;
  display: block;
  width: clamp(181px, 16.4583333333vw, 316px);
  height: clamp(186.2px, 16.9270833333vw, 325px);
  color: #ffffff;
  text-decoration: none;
}

.p-index-materials__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #085cac;
  opacity: 0.16;
  transition: transform 0.3s ease-out;
}

.p-index-materials__card__photo {
  position: absolute;
  top: clamp(5px, 0.4583333333vw, 8.8px);
  left: clamp(5px, 0.4583333333vw, 8.8px);
  width: clamp(171px, 15.5520833333vw, 298.6px);
  height: clamp(171px, 15.5520833333vw, 298.6px);
  border-radius: 50%;
  background: linear-gradient(213.5deg, #085cac 32%, #042e56 86%);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.161);
}

.p-index-materials__card__photo img {
  display: block;
  width: clamp(151.2px, 13.75vw, 264px);
  height: clamp(151.2px, 13.75vw, 264px);
  margin: clamp(8.9px, 0.8125vw, 15.6px) 0 0 clamp(9.9px, 0.9010416667vw, 17.3px);
  border-radius: 50%;
}

.p-index-materials__card__ttl {
  position: absolute;
  top: clamp(129.4px, 11.7708333333vw, 226px);
  left: 0;
  width: 100%;
  font-size: clamp(15.5px, 1.40625vw, 27px);
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.p-index-materials__card__ttl:has(br) {
  transform: translateY(-25%);
}

html[lang=en] .p-index-materials__card__ttl,
html[lang=en] .p-index-materials__card__ttl:has(br) {
  top: auto;
  bottom: clamp(41.3px, 3.75vw, 72px);
  transform: none;
}

.p-index-materials__card__btn {
  position: absolute;
  top: clamp(158.5px, 14.4114583333vw, 276.7px);
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  gap: clamp(3.4px, 0.3125vw, 6px);
  width: fit-content;
  height: clamp(27.5px, 2.5vw, 48px);
  margin: 0 auto;
  padding: 0 clamp(9.2px, 0.8333333333vw, 16px) 0 clamp(10.9px, 0.9895833333vw, 19px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(13.7px, 1.25vw, 24px);
  background-color: #ecf5ff;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(12px, 1.09375vw, 21px);
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-index-materials__card__btn::after {
  content: "";
  flex-shrink: 0;
  width: clamp(12px, 0.9895833333vw, 19px);
  height: clamp(12px, 0.9895833333vw, 19px);
  background-color: currentColor;
  -webkit-mask: url("../img/common/icon_search.png") center/contain no-repeat;
  mask: url("../img/common/icon_search.png") center/contain no-repeat;
}

@media (min-width: 750.11px) {
  .p-index-materials__card:hover {
    opacity: 1;
  }
  .p-index-materials__card:hover::before {
    transform: scale(1.0632471064);
  }
  .p-index-materials__card:hover .p-index-materials__card__btn {
    background-color: #085cac;
    color: #ffffff;
  }
}
@media (max-width: 750px) {
  .p-index-materials {
    padding: clamp(90px, 24vw, 180px) 0 clamp(80px, 21.3333333333vw, 160px);
  }
  .p-index-materials__inner {
    display: block;
    width: auto;
    padding: 0 clamp(37px, 9.8666666667vw, 74px);
  }
  .p-index-materials__head {
    width: auto;
  }
  .p-index-materials__head > p {
    margin-top: clamp(14px, 3.7333333333vw, 28px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-materials__head > p span {
    margin-top: clamp(10px, 2.6666666667vw, 20px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-materials__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(8.5px, 2.2666666667vw, 17px);
    margin-top: clamp(29px, 7.7333333333vw, 58px);
  }
  .p-index-materials__card {
    width: clamp(250px, 66.6666666667vw, 500px);
    height: clamp(257.1px, 68.56vw, 514.2px);
  }
  .p-index-materials__card__photo {
    top: clamp(7px, 1.8533333333vw, 13.9px);
    left: clamp(7px, 1.8533333333vw, 13.9px);
    width: clamp(236.2px, 63vw, 472.5px);
    height: clamp(236.2px, 63vw, 472.5px);
  }
  .p-index-materials__card__photo img {
    width: clamp(208.9px, 55.6933333333vw, 417.7px);
    height: clamp(208.9px, 55.6933333333vw, 417.7px);
    margin: clamp(12.3px, 3.2933333333vw, 24.7px) 0 0 clamp(13.7px, 3.6533333333vw, 27.4px);
  }
  .p-index-materials__card__ttl {
    top: clamp(178.8px, 47.68vw, 357.6px);
    font-size: clamp(21.4px, 5.6933333333vw, 42.7px);
  }
  html[lang=en] .p-index-materials__card__ttl,
  html[lang=en] .p-index-materials__card__ttl:has(br) {
    top: auto;
    bottom: clamp(56.9px, 15.1866666667vw, 113.9px);
  }
  .p-index-materials__card__btn {
    top: clamp(218.9px, 58.3733333333vw, 437.8px);
    gap: clamp(4.7px, 1.2666666667vw, 9.5px);
    height: clamp(38px, 10.12vw, 75.9px);
    padding: 0 clamp(12.7px, 3.3733333333vw, 25.3px) 0 clamp(15px, 4.0133333333vw, 30.1px);
    border-radius: clamp(19px, 5.0666666667vw, 38px);
    font-size: clamp(16.6px, 4.4266666667vw, 33.2px);
  }
  .p-index-materials__card__btn::after {
    width: clamp(16px, 4vw, 30px);
    height: clamp(16px, 4vw, 30px);
  }
}
.p-index-about {
  position: relative;
  width: 100%;
  padding: max(115px, 10.46875vw) 0 max(107px, 9.6875vw);
  box-sizing: border-box;
  background-color: #ffffff;
  border-radius: max(23px, 2.0833333333vw);
}

.p-index-about__inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: max(41px, 3.6979166667vw);
  margin-left: max(149px, 13.5416666667vw);
  margin-right: -100px;
  box-sizing: border-box;
}

.p-index-about__content {
  width: max(360px, 32.7604166667vw);
  flex-shrink: 0;
  min-width: 0;
}

.p-index-about__head .ja {
  display: flex;
  align-items: center;
  gap: max(5px, 0.4166666667vw);
  margin: 0;
  color: #292929;
  font-size: max(13px, 1.1458333333vw);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-about__head .ja::before {
  content: "";
  display: block;
  width: max(6px, 0.5208333333vw);
  height: max(6px, 0.5208333333vw);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-index-about__head .en {
  display: block;
  margin: max(6px, 0.5729166667vw) 0 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: max(62px, 5.6770833333vw);
  font-weight: 500;
  font-style: italic;
  line-height: 0.84;
  white-space: nowrap;
}

.p-index-about__head > p {
  margin: max(25px, 2.2395833333vw) 0 0;
  color: #292929;
  font-size: max(10px, 0.9375vw);
  line-height: 1.7;
}

.p-index-about__links {
  margin: max(42px, 3.8541666667vw) 0 0;
  padding: 0;
  list-style: none;
  width: max(334px, 30.3645833333vw);
}

.p-index-about__links li + li {
  margin-top: max(7px, 0.625vw);
}

.p-index-about__links a {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  gap: max(13px, 1.1458333333vw);
  width: 100%;
  height: max(54px, 4.9479166667vw);
  padding: 0 max(17px, 1.5625vw) 0 max(23px, 2.1354166667vw);
  box-sizing: border-box;
  border-radius: max(6px, 0.5208333333vw);
  background: linear-gradient(90deg, #006fde 0%, #2793e9 61%);
  color: #ffffff;
  text-decoration: none;
}

.p-index-about__links a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: var(--z-bg);
  border-radius: inherit;
  background-color: #085cac;
  opacity: 0;
  transition: opacity 0.3s ease-out;
}

.p-index-about__links li:nth-child(even) a {
  background: linear-gradient(90deg, #006fde 0%, #2793e9 52%);
}

@media (min-width: 750.11px) {
  .p-index-about__links a:hover {
    opacity: 1;
  }
  .p-index-about__links a:hover::before {
    opacity: 1;
  }
}
.p-index-about__links .body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
  min-width: 0;
  box-sizing: border-box;
}

.p-index-about__links .ttl {
  font-size: max(13px, 1.1458333333vw);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-about__links .desc {
  margin-top: max(1px, 0.1041666667vw);
  font-size: max(9px, 0.78125vw);
  line-height: 1.4;
}

.p-index-about__links img {
  width: max(9px, 0.8333333333vw);
  height: max(9px, 0.8333333333vw);
  flex-shrink: 0;
}

html[lang=en] .p-index-about__links a {
  height: auto;
  min-height: max(54px, 4.9479166667vw);
  padding-top: max(6px, 0.5208333333vw);
  padding-bottom: max(6px, 0.5208333333vw);
}

.p-index-about__visual {
  position: relative;
  align-self: stretch;
  flex: 1;
  min-width: 0;
  margin-top: max(35px, 3.1770833333vw);
}

.p-index-about__photo.--main {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 72% top;
  border-radius: max(11px, 1.0416666667vw);
}

.p-index-about__photo.--sub {
  position: absolute;
  right: 0;
  bottom: calc(max(44px, 4.0104166667vw) * -1);
  display: block;
  width: max(235px, 21.3541666667vw);
  height: max(112px, 10.15625vw);
  object-fit: cover;
  border-radius: max(11px, 1.0416666667vw);
}

@media (max-width: 750px) {
  .p-index-about {
    padding: clamp(42px, 11.2vw, 84px) 0 clamp(80px, 21.3333333333vw, 160px);
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-index-about__inner {
    flex-direction: column;
    gap: 0;
    margin: 0;
  }
  .p-index-about__visual {
    order: -1;
    align-self: auto;
    flex: none;
    margin-top: 0;
  }
  .p-index-about__photo.--main {
    position: relative;
    width: calc(100% - clamp(23px, 6.1333333333vw, 46px));
    height: clamp(246px, 65.6vw, 492px);
    margin: clamp(37.4px, 9.9733333333vw, 74.8px) 0 0 clamp(23px, 6.1333333333vw, 46px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
    object-position: center;
  }
  .p-index-about__photo.--sub {
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    width: clamp(180.2px, 48.0533333333vw, 360.4px);
    height: clamp(85.7px, 22.8533333333vw, 171.4px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-index-about__content {
    width: auto;
    margin-top: clamp(39.5px, 10.5333333333vw, 79px);
    padding: 0 clamp(35px, 9.3333333333vw, 70px);
  }
  .p-index-about__head > p {
    margin: clamp(14px, 3.7333333333vw, 28px) clamp(2px, 0.5333333333vw, 4px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-about__links {
    width: auto;
    margin-top: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-about__links li + li {
    margin-top: clamp(7px, 1.8666666667vw, 14px);
  }
  .p-index-about__links a {
    gap: 0;
    height: clamp(90px, 24vw, 180px);
    padding: 0 clamp(17px, 4.5333333333vw, 34px) 0 clamp(15px, 4vw, 30px);
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-index-about__links .body {
    padding: clamp(3.5px, 0.9333333333vw, 7px) 0 clamp(1.5px, 0.4vw, 3px);
  }
  .p-index-about__links .ttl {
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-index-about__links .desc {
    margin-top: clamp(3.7px, 0.9866666667vw, 7.4px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-about__links img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
  }
  html[lang=en] .p-index-about__links a {
    gap: clamp(12px, 3.2vw, 24px);
    min-height: clamp(90px, 24vw, 180px);
    padding-top: clamp(6px, 1.6vw, 12px);
    padding-bottom: clamp(6px, 1.6vw, 12px);
  }
}
.p-index-slogan {
  width: 100%;
  padding-top: clamp(73px, 6.6666666667vw, 128px);
  padding-bottom: clamp(61px, 5.5729166667vw, 107px);
  box-sizing: border-box;
}

.p-index-slogan__inner {
  padding-left: clamp(83px, 7.5vw, 144px);
}

.p-index-slogan__line {
  display: flex;
  align-items: flex-start;
  margin: 0;
  font-family: "Roboto", sans-serif;
  font-style: italic;
  font-size: clamp(120px, 10.9375vw, 210px);
  line-height: 1;
  white-space: nowrap;
}

.p-index-slogan__line + .p-index-slogan__line {
  margin-top: clamp(8px, 0.7291666667vw, 14px);
}

.p-index-slogan__line span {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: clamp(544px, 49.4578125vw, 949.59px);
  height: clamp(120px, 10.9375vw, 210px);
  background: url("../img/index/slogan_your-issue.svg") no-repeat 0 0/100% 100%;
  color: transparent;
}

.p-index-slogan__line + .p-index-slogan__line span {
  width: clamp(712px, 64.703125vw, 1242.3px);
  background-image: url("../img/index/slogan_our-innovation.svg");
}

.p-index-slogan__line span::after {
  content: attr(data-text);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: linear-gradient(100deg, rgba(96, 169, 225, 0) 44%, #60a9e1 50%, rgba(96, 169, 225, 0) 56%);
  background-repeat: no-repeat;
  background-size: 300% 100%;
  background-position: 0 0;
  mask: url("../img/index/slogan_your-issue.svg") no-repeat 0 0/100% 100%;
  color: transparent;
  white-space: nowrap;
  pointer-events: none;
  animation: p-index-fv-shine 2.4s ease-in-out 0.3s backwards;
  animation-play-state: paused;
}

.p-index-slogan__line + .p-index-slogan__line span::after {
  mask-image: url("../img/index/slogan_our-innovation.svg");
}

.p-index-slogan__inner.is-active .p-index-slogan__line span::after {
  animation-play-state: running;
}

@media (prefers-reduced-motion: reduce) {
  .p-index-slogan__line span::after {
    animation: none;
  }
}
.p-index-slogan__photo {
  display: block;
  flex-shrink: 0;
  object-fit: cover;
  margin-top: clamp(10px, 0.9375vw, 18px);
  border-radius: clamp(6px, 0.5208333333vw, 10px);
}

.p-index-slogan__photo.--01 {
  width: clamp(368px, 33.5109375vw, 643.41px);
  height: clamp(96px, 8.7291666667vw, 167.6px);
  margin-left: clamp(13px, 1.1979166667vw, 23px);
  object-position: 66% 50%;
}

.p-index-slogan__photo.--02 {
  width: clamp(188px, 17.0958333333vw, 328.24px);
  height: clamp(87px, 7.9354166667vw, 152.36px);
  margin-left: clamp(9px, 0.8333333333vw, 16px);
  margin-right: clamp(17px, 1.534375vw, 29.46px);
  object-position: 50% 72%;
}

@media (max-width: 750px) {
  .p-index-slogan {
    padding-top: clamp(25px, 6.6666666667vw, 50px);
    padding-bottom: clamp(21px, 5.6vw, 42px);
  }
  .p-index-slogan__inner {
    padding-left: clamp(28px, 7.4666666667vw, 56px);
  }
  .p-index-slogan__line {
    font-size: clamp(41px, 10.9333333333vw, 82px);
  }
  .p-index-slogan__line + .p-index-slogan__line {
    margin-top: clamp(3px, 0.6666666667vw, 5px);
  }
  .p-index-slogan__line span {
    width: clamp(185px, 49.4666666667vw, 371px);
    height: clamp(41px, 10.9333333333vw, 82px);
  }
  .p-index-slogan__line + .p-index-slogan__line span {
    width: clamp(243px, 64.6666666667vw, 485px);
  }
  .p-index-slogan__photo {
    margin-top: clamp(4px, 0.9333333333vw, 7px);
    border-radius: clamp(2px, 0.5333333333vw, 4px);
  }
  .p-index-slogan__photo.--01 {
    width: clamp(126px, 33.4666666667vw, 251px);
    height: clamp(33px, 8.8vw, 66px);
    margin-left: clamp(5px, 1.2vw, 9px);
  }
  .p-index-slogan__photo.--02 {
    width: clamp(64px, 17.0666666667vw, 128px);
    height: clamp(30px, 7.8666666667vw, 59px);
    margin-left: clamp(3px, 0.8vw, 6px);
    margin-right: clamp(6px, 1.4666666667vw, 11px);
  }
}
.p-index-news {
  position: relative;
  width: 100%;
  padding: 0 clamp(18px, 1.3020833333vw, 25px);
  box-sizing: border-box;
}

.p-index-news__panel {
  position: relative;
  width: 100%;
  height: clamp(375px, 27.1354166667vw, 521px);
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  box-sizing: border-box;
  overflow: hidden;
}

.p-index-news__bg {
  position: absolute;
  inset: 0;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
}

.p-index-news__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
}

.p-index-news__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: clamp(14px, 1.0416666667vw, 20px);
  background-color: rgba(0, 25, 49, 0.7);
}

.p-index-news__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  gap: clamp(98px, 7.0833333333vw, 136px);
  width: 75%;
  margin: 0 auto;
  padding-top: clamp(81px, 5.8854166667vw, 113px);
  box-sizing: border-box;
}

.p-index-news__head {
  width: clamp(186px, 13.4895833333vw, 259px);
  flex-shrink: 0;
}

.p-index-news__head .ja {
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.4166666667vw, 8px);
  margin: 0;
  color: #ffffff;
  font-size: clamp(16px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-news__head .ja::before {
  content: "";
  display: block;
  width: clamp(7px, 0.5208333333vw, 10px);
  height: clamp(7px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #ffffff;
  flex-shrink: 0;
}

.p-index-news__head .en {
  display: block;
  margin: clamp(8px, 0.5729166667vw, 11px) 0 0;
  color: #ffffff;
  font-family: "Roboto", sans-serif;
  font-size: clamp(78px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 0.84;
  white-space: nowrap;
}

.p-index-news__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 0.8333333333vw, 16px);
  width: clamp(186px, 13.4895833333vw, 259px);
  height: clamp(58px, 4.21875vw, 81px);
  margin-top: clamp(56px, 4.0625vw, 78px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(29px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(14px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-index-news__btn img {
  width: clamp(12px, 0.8333333333vw, 16px);
  height: clamp(12px, 0.8333333333vw, 16px);
  transition: filter 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .p-index-news__btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-index-news__btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-index-news__list {
  flex: 1;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-index-news__list li + li {
  margin-top: clamp(8px, 0.5729166667vw, 11px);
}

.p-index-news__list a {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: clamp(65px, 4.7395833333vw, 91px);
  padding: 0 clamp(29px, 2.0833333333vw, 40px) 0 clamp(30px, 2.1875vw, 42px);
  box-sizing: border-box;
  border-radius: clamp(7px, 0.5208333333vw, 10px);
  background-color: #ffffff;
  color: #292929;
  text-decoration: none;
}

.p-index-news__list .date {
  flex-shrink: 0;
  width: clamp(75px, 5.4166666667vw, 104px);
  font-size: clamp(13px, 0.9375vw, 18px);
  line-height: 1;
}

.p-index-news__list .cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-width: clamp(68px, 4.8958333333vw, 94px);
  height: clamp(27px, 1.9791666667vw, 38px);
  margin-right: clamp(12px, 0.8333333333vw, 16px);
  padding: 0 clamp(10px, 0.7291666667vw, 14px);
  box-sizing: border-box;
  border-radius: clamp(19px, 1.40625vw, 27px);
  background-color: #085cac;
  color: #ffffff;
  font-size: clamp(12px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1;
}

.p-index-news__list .ttl {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  font-size: clamp(12px, 0.8854166667vw, 17px);
  line-height: 1.4;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: color 0.25s;
}

.p-index-news__list img {
  width: clamp(14px, 1.0416666667vw, 20px);
  height: clamp(14px, 1.0416666667vw, 20px);
  margin-left: clamp(12px, 0.8333333333vw, 16px);
  flex-shrink: 0;
}

.p-index-news__list a::after {
  content: "";
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: inherit;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.35s cubic-bezier(0.87, 0, 0.13, 1);
}

@media (min-width: 750.11px) {
  .p-index-news__list a:hover {
    opacity: 1;
  }
  .p-index-news__list a:hover::after {
    clip-path: inset(0);
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  }
  .p-index-news__list a:hover .ttl {
    color: #085cac;
  }
}
@media (max-width: 750px) {
  .p-index-news {
    padding: 0 clamp(11px, 2.9333333333vw, 22px);
  }
  .p-index-news__panel {
    height: auto;
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-index-news__bg,
  .p-index-news__bg img,
  .p-index-news__bg::after {
    border-radius: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-index-news__inner {
    flex-direction: column;
    align-items: center;
    gap: 0;
    width: auto;
    padding: clamp(66px, 17.6vw, 132px) clamp(12px, 3.2vw, 24px) clamp(72px, 19.2vw, 144px);
  }
  .p-index-news__head {
    display: contents;
  }
  .p-index-news__head .ja {
    order: 1;
  }
  .p-index-news__head .en,
  .p-index-news__head .ja + .en {
    order: 2;
    margin-top: clamp(5px, 1.3333333333vw, 10px);
  }
  .p-index-news__list {
    order: 3;
    align-self: stretch;
    margin-top: clamp(27px, 7.2vw, 54px);
  }
  .p-index-news__btn {
    order: 4;
    margin-top: clamp(45px, 12vw, 90px);
  }
  .p-index-news__list li + li {
    margin-top: clamp(8px, 2.1333333333vw, 16px);
  }
  .p-index-news__list a {
    flex-wrap: wrap;
    align-content: flex-start;
    row-gap: clamp(6.3px, 1.68vw, 12.6px);
    height: clamp(87px, 23.2vw, 174px);
    padding: clamp(15.5px, 4.1333333333vw, 31px) clamp(19px, 5.0666666667vw, 38px) 0;
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-index-news__list .date {
    width: clamp(79px, 21.0666666667vw, 158px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-index-news__list .cat {
    min-width: clamp(78px, 20.8vw, 156px);
    height: clamp(28px, 7.4666666667vw, 56px);
    margin-right: 0;
    padding: 0 clamp(11px, 2.9333333333vw, 22px);
    border-radius: clamp(14px, 3.7333333333vw, 28px);
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-index-news__list .ttl {
    flex: 0 0 calc(100% - clamp(16px, 4.2666666667vw, 32px));
    padding-left: clamp(2px, 0.5333333333vw, 4px);
    box-sizing: border-box;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(20px, 5.3333333333vw, 40px);
  }
  .p-index-news__list img {
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
    margin-left: 0;
  }
}
.p-index-blog {
  position: relative;
  width: 100%;
  padding-top: clamp(96px, 8.75vw, 168px);
  padding-bottom: clamp(77px, 6.9791666667vw, 134px);
  box-sizing: border-box;
}

.p-index-blog__inner {
  padding-left: clamp(149px, 13.5416666667vw, 260px);
  box-sizing: border-box;
}

.p-index-blog__head {
  display: flex;
  align-items: flex-start;
  width: clamp(833px, 75.7291666667vw, 1454px);
}

.p-index-blog__title {
  flex-shrink: 0;
  width: clamp(141px, 12.8125vw, 246px);
  margin-left: clamp(6px, 0.5729166667vw, 11px);
}

.p-index-blog__title .ja {
  display: flex;
  align-items: center;
  gap: clamp(5px, 0.4166666667vw, 8px);
  margin: 0;
  color: #292929;
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-weight: 700;
  line-height: 1.2;
}

.p-index-blog__title .ja::before {
  content: "";
  display: block;
  width: clamp(6px, 0.5208333333vw, 10px);
  height: clamp(6px, 0.5208333333vw, 10px);
  border-radius: 50%;
  background-color: #085cac;
  flex-shrink: 0;
}

.p-index-blog__title .en {
  display: block;
  margin: clamp(6px, 0.5729166667vw, 11px) 0 0;
  color: #085cac;
  font-family: "Roboto", sans-serif;
  font-size: clamp(62px, 5.6770833333vw, 109px);
  font-weight: 500;
  font-style: italic;
  line-height: 0.84;
  white-space: nowrap;
}

.p-index-blog__head > p {
  flex: 1;
  min-width: 0;
  margin: clamp(35px, 3.1770833333vw, 61px) 0 0;
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  line-height: 1.7;
}

.p-index-blog__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(9px, 0.8333333333vw, 16px);
  flex-shrink: 0;
  width: clamp(148px, 13.4895833333vw, 259px);
  height: clamp(46px, 4.21875vw, 81px);
  margin: clamp(38px, 3.4375vw, 66px) 0 0 clamp(30px, 2.7083333333vw, 52px);
  box-sizing: border-box;
  border: 1px solid #085cac;
  border-radius: clamp(23px, 2.1354166667vw, 41px);
  background-color: #ffffff;
  color: #085cac;
  font-size: clamp(11px, 0.9895833333vw, 19px);
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

.p-index-blog__btn img {
  width: clamp(9px, 0.8333333333vw, 16px);
  height: clamp(9px, 0.8333333333vw, 16px);
  transition: filter 0.3s ease-out;
}

@media (min-width: 750.11px) {
  .p-index-blog__btn:hover {
    background-color: #085cac;
    color: #ffffff;
    opacity: 1;
  }
  .p-index-blog__btn:hover img {
    filter: brightness(0) invert(1);
  }
}
.p-index-blog__list {
  margin: clamp(36px, 3.28125vw, 63px) 0 0;
  padding: 0;
  list-style: none;
}

.p-index-blog__list .slick-list {
  margin: 0;
}

.p-index-blog__list .slick-track {
  display: flex;
  margin-left: 0;
}

.p-index-blog__list .slick-slide {
  box-sizing: content-box;
  width: clamp(286px, 26.0416666667vw, 500px);
  padding-right: clamp(21px, 1.875vw, 36px);
  height: auto;
}

.p-index-blog__list .slick-slide > div {
  height: 100%;
}

.p-index-blog__card {
  display: block;
  color: inherit;
  text-decoration: none;
}

.p-index-blog__card img {
  width: 100%;
  height: auto;
  aspect-ratio: 500/316;
  object-fit: cover;
  border-radius: clamp(11px, 1.0416666667vw, 20px);
  vertical-align: top;
}

.p-index-blog__card .meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(6px, 0.5208333333vw, 10px);
  margin-top: clamp(11px, 0.9895833333vw, 19px);
}

.p-index-blog__card .date {
  color: #292929;
  font-size: clamp(10px, 0.9375vw, 18px);
  font-weight: 700;
  line-height: 1;
}

.p-index-blog__card .cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(4px, 0.3645833333vw, 7px) clamp(8px, 0.7291666667vw, 14px);
  border: 1px solid #085cac;
  border-radius: clamp(15px, 1.40625vw, 27px);
  background-color: #ecf5ff;
  color: #085cac;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  font-weight: 700;
  line-height: 1.4;
}

.p-index-blog__card .ttl {
  display: block;
  margin-top: clamp(6px, 0.5729166667vw, 11px);
  color: #292929;
  font-size: clamp(11px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.5;
}

.p-index-blog__card .excerpt {
  display: block;
  margin-top: clamp(6px, 0.5729166667vw, 11px);
  color: #292929;
  font-size: clamp(9px, 0.8333333333vw, 16px);
  line-height: 1.7;
}

.p-index-blog__bar {
  display: none;
}

@media (max-width: 750px) {
  .p-index-blog {
    padding: clamp(77px, 20.5333333333vw, 154px) 0 clamp(80px, 21.3333333333vw, 160px);
  }
  .p-index-blog__inner {
    display: flex;
    flex-direction: column;
    padding-left: 0;
  }
  .p-index-blog__head {
    display: contents;
  }
  .p-index-blog__title {
    order: 1;
    width: auto;
    margin-left: 0;
  }
  .p-index-blog__head > p {
    order: 2;
    margin: clamp(14px, 3.7333333333vw, 28px) clamp(35px, 9.3333333333vw, 70px) 0;
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(25px, 6.6666666667vw, 50px);
  }
  .p-index-blog__list {
    order: 3;
    margin: clamp(30px, 8vw, 60px) 0 0 clamp(23px, 6.1333333333vw, 46px);
  }
  .p-index-blog__bar {
    order: 4;
    position: relative;
    display: block;
    height: clamp(4px, 1.0666666667vw, 8px);
    margin: clamp(41px, 10.9333333333vw, 82px) clamp(23px, 6.1333333333vw, 46px) 0;
    background-color: #ffffff;
    box-shadow: 0 0 clamp(3px, 0.8vw, 6px) rgba(0, 0, 0, 0.161);
  }
  .p-index-blog__bar span {
    position: absolute;
    top: 0;
    left: 0;
    width: 28%;
    height: 100%;
    background-color: #085cac;
    transition: left 0.4s ease, width 0.4s ease;
  }
  .p-index-blog__btn {
    order: 5;
    align-self: center;
    margin: clamp(54px, 14.4vw, 108px) 0 0;
  }
  .p-index-blog__list .slick-slide {
    width: clamp(234px, 62.4vw, 468px);
    padding-right: clamp(26px, 6.9333333333vw, 52px);
  }
  .p-index-blog__card img {
    border-radius: clamp(10px, 2.6666666667vw, 20px);
  }
  .p-index-blog__card .meta {
    gap: clamp(8px, 2.1333333333vw, 16px);
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-blog__card .date {
    font-size: clamp(14px, 3.7333333333vw, 28px);
  }
  .p-index-blog__card .cat {
    height: clamp(25px, 6.6666666667vw, 50px);
    padding: 0 clamp(12px, 3.2vw, 24px);
    box-sizing: border-box;
    border-radius: clamp(13px, 3.4666666667vw, 26px);
    font-size: clamp(12px, 3.2vw, 24px);
    line-height: 1;
  }
  .p-index-blog__card .ttl {
    margin-top: clamp(9px, 2.4vw, 18px);
    font-size: clamp(15px, 4vw, 30px);
  }
  .p-index-blog__card .excerpt {
    margin-top: clamp(2px, 0.5333333333vw, 4px);
    font-size: clamp(13px, 3.4666666667vw, 26px);
    line-height: clamp(23px, 6.1333333333vw, 46px);
  }
}
@media (max-width: 750px) {
  .p-index-commitment__head .ja,
  .p-index-strengths__head .ja,
  .p-index-materials__head .ja,
  .p-index-about__head .ja,
  .p-index-news__head .ja,
  .p-index-blog__title .ja {
    justify-content: center;
    gap: clamp(6px, 1.6vw, 12px);
    margin: 0;
    font-size: clamp(15px, 4vw, 30px);
    line-height: clamp(18px, 4.8vw, 36px);
  }
  .p-index-commitment__head .ja::before,
  .p-index-strengths__head .ja::before,
  .p-index-materials__head .ja::before,
  .p-index-about__head .ja::before,
  .p-index-news__head .ja::before,
  .p-index-blog__title .ja::before {
    width: clamp(6px, 1.6vw, 12px);
    height: clamp(6px, 1.6vw, 12px);
  }
  .p-index-commitment__head .en,
  .p-index-strengths__head .en,
  .p-index-materials__head .en,
  .p-index-about__head .en,
  .p-index-news__head .en,
  .p-index-blog__title .en {
    margin: clamp(15px, 4vw, 30px) 0 0;
    font-size: clamp(50px, 13.3333333333vw, 100px);
    line-height: clamp(49px, 13.0666666667vw, 98px);
    text-align: center;
  }
  .p-index-strengths__head .ja + .en {
    margin-top: clamp(13px, 3.4666666667vw, 26px);
  }
  .p-index-commitment__btn,
  .p-index-strengths__btn,
  .p-index-news__btn,
  .p-index-blog__btn {
    position: relative;
    gap: 0;
    width: clamp(228px, 60.8vw, 456px);
    height: clamp(71px, 18.9333333333vw, 142px);
    padding: 0 clamp(11px, 2.9333333333vw, 22px) 0 0;
    border-radius: clamp(36px, 9.6vw, 72px);
    font-size: clamp(17px, 4.5333333333vw, 34px);
  }
  .p-index-commitment__btn img,
  .p-index-strengths__btn img,
  .p-index-news__btn img,
  .p-index-blog__btn img {
    position: absolute;
    top: 50%;
    right: clamp(34px, 9.0666666667vw, 68px);
    width: clamp(16px, 4.2666666667vw, 32px);
    height: clamp(16px, 4.2666666667vw, 32px);
    transform: translateY(-50%);
  }
}
