.Demonstration {
  color: #fff;
}
.Demonstration-inner {
  max-width: 77.5rem /* 1240px (基準16px) */;
  margin: 0 auto;
  padding: 0 1.25rem /* 20px (基準16px) */;
}
.Demonstration-title h1 > span {
  text-align: center;
  display: block;
  color: #fff;
  font-weight: 400;
  font-family: 'Montserrat', sans-serif;
  line-height: 1;
}
.Demonstration-title h1 > span:nth-child(1) {
  font-size: clamp(
    1.75rem /* 28px (基準16px) */,
    -0.536rem + 4.762vw /* 768px-1440px間で1.750rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
  vertical-align: top;
  line-height: 0.8;
}
.Demonstration-title h1 > span:nth-child(2) {
  font-size: clamp(
    3.75rem /* 60px (基準16px) */,
    0.893rem + 5.952vw /* 768px-1440px間で3.750rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
  margin-top: 1.875rem /* 30px (基準16px) */;
  line-height: 0.8;
}
.s .Demonstration-title h1 > span:nth-child(2) {
  margin-top: 1rem /* 16px (基準16px) */ /* 20px (基準16px) */;
}
.Demonstration-title h1 > span:nth-child(3) {
  font-weight: 600;
  font-size: clamp(
    1.125rem /* 18px (基準16px) */,
    0.624rem + 1.043vw /* 768px-1440px間で1.125rem-1.563remの線形補間 */,
    1.563rem /* 25px (基準16px) */
  );
  margin-top: 1.5rem /* 24px (基準16px) */;
}
.Demonstration-title h1 > span:nth-child(3) {
  margin-top: 1.25rem /* 20px (基準16px) */;
}

.Demonstration-description {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(
    1.75rem /* 28px (基準16px) */,
    0.893rem + 1.786vw /* 768px-1440px間で1.750rem-2.500remの線形補間 */,
    2.5rem /* 40px (基準16px) */
  );
  margin-top: clamp(
    4.188rem /* 67px (基準16px) */,
    -1.026rem + 10.862vw /* 768px-1440px間で4.188rem-8.750remの線形補間 */,
    8.75rem /* 140px (基準16px) */
  );
}
.s .Demonstration-description {
  flex-direction: column-reverse;
}
.Demonstration-description > p {
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.446rem + 0.893vw /* 768px-1440px間で0.875rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
  line-height: 2.4;
}
.s .Demonstration-description > p {
  line-height: 1.71428571;
}

.Demonstration-images {
  flex: 0 0 auto;
  max-width: clamp(
    20.938rem /* 335px (基準16px) */,
    9.153rem + 24.552vw /* 768px-1440px間で20.938rem-31.250remの線形補間 */,
    31.25rem /* 500px (基準16px) */
  );
}
.s .Demonstration-images {
  max-width: initial;
}
.Demonstration-images > ul {
  position: relative;
  margin-inline: auto;
}
.Demonstration-images > ul > li {
  position: absolute;
  top: 0;
  left: 0;
  margin-inline: clamp(
    0.688rem /* 11px (基準16px) */,
    0.331rem + 0.743vw /* 768px-1440px間で0.688rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
}
.Demonstration-images > ul > li._current {
  position: relative;
  top: initial;
  left: initial;
}

.Demonstration-images > ul > li::before {
  position: absolute;
  display: block;
  content: '';
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #e3ebf7, #f8fdfe);
  border-radius: 20px;
  transform: translate(-60%, -50%) rotate(3deg);
  transform-origin: center;
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
  opacity: 0;
}
.Demonstration-images > ul > li._current::before {
  transform: translate(-50%, -50%) rotate(8deg);
  opacity: 1;
}

.Demonstration-images > ul > li > img {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  opacity: 0;
  transform: translate(10%, 0);
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
  width: 100%;
  height: auto;
  aspect-ratio: 1.579;
}
.Demonstration-images > ul > li._current > img {
  opacity: 1;
  transform: translate(0, 0);
}

.Demonstration-controls {
  display: flex;
  gap: clamp(
    0.625rem /* 10px (基準16px) */,
    -0.089rem + 1.488vw /* 768px-1440px間で0.625rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
  justify-content: flex-end;
  padding-right: max(calc(((100% - 1200px) / 2) + 12.5rem), 1.25rem /* 20px (基準16px) */);
}

.Demonstration-controls._card {
  margin-top: 2.625rem /* 42px (基準16px) */;
}
.s .Demonstration-controls._card {
  margin-top: 10.448%; /* 35px (基準335px) */
}

.Demonstration-controls._swiper {
  margin-top: 2.5rem /* 40px (基準16px) */;
}
.s .Demonstration-controls._swiper {
  margin-top: 1.25rem /* 20px (基準16px) */;
}

.Demonstration-arrow {
  width: clamp(
    6.25rem /* 100px (基準16px) */,
    3.679rem + 5.357vw /* 768px-1440px間で6.250rem-8.500remの線形補間 */,
    8.5rem /* 136px (基準16px) */
  );
  height: clamp(
    1.75rem /* 28px (基準16px) */,
    1.179rem + 1.19vw /* 768px-1440px間で1.750rem-2.250remの線形補間 */,
    2.25rem /* 36px (基準16px) */
  );
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  background-color: rgb(0, 60, 143, 0.5);
}
.Demonstration-arrow:hover {
  cursor: pointer;
  transition: filter 0.2s ease;
  filter: contrast(0.8);
}
.Demonstration-arrow:active {
  filter: contrast(1.2);
}
.Demonstration-arrow:disabled {
  filter: grayscale(1);
}
.Demonstration-arrow > img {
  width: clamp(
    0.875rem /* 14px (基準16px) */,
    0.732rem + 0.298vw /* 768px-1440px間で0.875rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
  height: clamp(
    0.875rem /* 14px (基準16px) */,
    0.732rem + 0.298vw /* 768px-1440px間で0.875rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
  user-select: none;
}
.Demonstration-arrow._prev > img {
  transform: rotate(180deg);
}

.Demonstration-anchorList {
  margin-top: clamp(
    2.5rem /* 40px (基準16px) */,
    -1.786rem + 8.929vw /* 768px-1440px間で2.500rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1.188rem /* 19px (基準16px) */;
  width: 100%;
  padding-top: clamp(
    1.75rem /* 28px (基準16px) */,
    0.179rem + 3.274vw /* 768px-1440px間で1.750rem-3.125remの線形補間 */,
    3.125rem /* 50px (基準16px) */
  );
}
.s .Demonstration-anchorList {
  column-gap: 0.625rem /* 10px (基準16px) */;
}

.Demonstration-anchorList > li {
  display: block;
  width: 100%;
}

.Demonstration-content {
  padding-top: clamp(
    5.625rem /* 90px (基準16px) */,
    4.911rem + 1.488vw /* 768px-1440px間で5.625rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
}

.Demonstration h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: clamp(
    2rem /* 32px (基準16px) */,
    0rem + 4.167vw /* 768px-1440px間で2.000rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
}

.Demonstration-content ul {
  margin-top: clamp(
    2rem /* 32px (基準16px) */,
    0.714rem + 2.679vw /* 768px-1440px間で2.000rem-3.125remの線形補間 */,
    3.125rem /* 50px (基準16px) */
  );
  display: grid;
  align-items: stretch;
  justify-content: center;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(
    0.625rem /* 10px (基準16px) */,
    -0.661rem + 2.679vw /* 768px-1440px間で0.625rem-1.750remの線形補間 */,
    1.75rem /* 28px (基準16px) */
  );
}
.s .Demonstration-content ul {
  grid-template-columns: repeat(2, 1fr);
}

.Demonstration-content ul > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 20px;
  padding-block: 2.5rem /* 40px (基準16px) */;
  padding-inline: clamp(
    0.625rem /* 10px (基準16px) */,
    -0.089rem + 1.488vw /* 768px-1440px間で0.625rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
}
.s .Demonstration-content ul > li {
  padding-block: 1.25rem /* 20px (基準16px) */;
}

.Demonstration-content ul > li > span {
  color: #003c8f;
  text-align: center;
}
.Demonstration-content ul > li > span:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: clamp(
    1rem /* 16px (基準16px) */,
    0.429rem + 1.19vw /* 768px-1440px間で1.000rem-1.500remの線形補間 */,
    1.5rem /* 24px (基準16px) */
  );
  line-height: 1.33333333;
  /* 2行分保持 */
  min-height: calc(1.33333333 * 2em);
}
.s .Demonstration-content ul > li > span:first-child {
  line-height: 1.375;
  /* 2行分保持 */
  min-height: calc(1.375 * 2em);
}

.Demonstration-content ul > li > img {
  margin-top: 1.75rem /* 28px (基準16px) */;
  width: auto;
  height: 7.5rem /* 120px (基準16px) */;
}
.s .Demonstration-content ul > li > img {
  margin-top: 1rem /* 16px (基準16px) */;
  width: auto;
  height: 3.5rem /* 56px (基準16px) */;
}

.Demonstration-content ul > li > span:last-child {
  margin-top: 1.75rem /* 28px (基準16px) */;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.732rem + 0.298vw /* 768px-1440px間で0.875rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
  line-height: 1.625;
  font-weight: 500;
  /* 2行分保持 */
  min-height: calc(1.625 * 2em);
}
.s .Demonstration-content ul > li > span:last-child {
  margin-top: 1rem /* 16px (基準16px) */;
  line-height: 1.71428571;
  /* 2行分保持 */
  min-height: calc(1.71428571 * 2em);
}

.Demonstration-wave {
  display: block;
  width: 100%;
  height: auto;
}
.Demonstration-wave._01 {
  margin-top: clamp(
    5.625rem /* 90px (基準16px) */,
    2.054rem + 7.44vw /* 768px-1440px間で5.625rem-8.750remの線形補間 */,
    8.75rem /* 140px (基準16px) */
  );
  transform: translateY(1px);
}
.Demonstration-wave._02 {
  transform: translateY(-1px);
}

.Demonstration-wave._03 {
  margin-top: clamp(
    5rem /* 80px (基準16px) */,
    2.143rem + 5.952vw /* 768px-1440px間で5.000rem-7.500remの線形補間 */,
    7.5rem /* 120px (基準16px) */
  );
}

.Demonstration-procedureSupport {
  background: linear-gradient(180deg, #e3ebf7 4.08%, #f8fdfe 76.05%);
}
.Demonstration-procedureSupport h2 {
  display: block;
  color: #003c8f;
  text-align: center;
  padding-block: 5rem /* 80px (基準16px) */;
  line-height: 1.2;
}
.s .Demonstration-procedureSupport h2 {
  padding-block: 2.5rem /* 40px (基準16px) */;
  line-height: 1.3125;
}
.Demonstration-procedureSupport h2 > br {
  display: none;
}
.s .Demonstration-procedureSupport h2 > br {
  display: inline;
}

.Demonstration-figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: 0.75rem /* 12px (基準16px) */;
  column-gap: min(8.889vw /* 128px (基準1440px) */, 8rem /* 128px (基準16px) */);
}
.s .Demonstration-figure {
  padding-block: 0;
  margin-top: 34.666%;
}

.Demonstration-circle {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.Demonstration-circle._left {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  width: min(37.222vw /* 536px (基準1440px) */, 33.5rem /* 536px (基準16px) */);
  height: auto;
  aspect-ratio: 1.27;
  background-image: url('../../demonstration-field/image/demonstration-figure-left.svg');
}
.s .Demonstration-circle._left {
  position: absolute;
  top: 50%;
  left: 50%;
  align-items: flex-start;
  justify-content: flex-start;
  width: 53.6% /* 201px (基準375px) */;
  height: auto;
  aspect-ratio: 0.948;
  transform: translate(calc(-100% + 10%) /* 10px (基準201px） */, -100%);
  background-image: url('../../demonstration-field/image/demonstration-figure-left-sp.svg');
}
.Demonstration-circle._left > .Demonstration-circleInner {
  width: 77.985% /* 418px (基準536px) */;
  height: auto;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.s .Demonstration-circle._left > .Demonstration-circleInner {
  width: 78.607% /* 158px (基準201px) */;
}
.Demonstration-circle._left span {
  display: block;
  font-weight: 700;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    -0.125rem + 2.083vw /* 768px-1440px間で0.875rem-1.750remの線形補間 */,
    1.75rem /* 28px (基準16px) */
  );
}
.Demonstration-circle._left img {
  margin-top: 7.463% /* 40px (基準536px) */;
  display: block;
  width: clamp(
    3.5rem /* 56px (基準16px) */,
    -2.214rem + 11.905vw /* 768px-1440px間で3.500rem-8.500remの線形補間 */,
    8.5rem /* 136px (基準16px) */
  );
  height: auto;
}
.s .Demonstration-circle._left img {
  margin-top: 7.595%; /* 12px (基準158px) */
}

.Demonstration-circle._center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;

  width: clamp(
    14.625rem /* 234px (基準16px) */,
    -0.447rem + 31.4vw /* 768px-1440px間で14.625rem-27.813remの線形補間 */,
    27.813rem /* 445px (基準16px) */
  );
  height: auto;
  aspect-ratio: 1;
  background-image: url('../../demonstration-field/image/demonstration-figure-center.svg');
  border-radius: 50%;
  box-shadow: 0 8px 25px 0 rgba(0, 0, 0, 0.04);
}
.s .Demonstration-circle._center {
  position: relative;
  top: initial;
  left: initial;
  transform: none;
  width: 62.4%;
  height: auto;
  background-image: url('../../demonstration-field/image/demonstration-figure-center-sp.svg');
}
.Demonstration-circle._center > .Demonstration-circleInner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.Demonstration-circle._center span {
  color: #003c8f; /* フォールバック */
  background: linear-gradient(273deg, #003c8f -9.87%, #095eed 102.64%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.Demonstration-circle._center span:nth-child(1) {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    -0.054rem + 1.936vw /* 768px-1440px間で0.875rem-1.688remの線形補間 */,
    1.688rem /* 27px (基準16px) */
  );
}
.Demonstration-circle._center span:nth-child(2) {
  font-weight: 700;
  font-size: clamp(
    1.25rem /* 20px (基準16px) */,
    -0.321rem + 3.274vw /* 768px-1440px間で1.250rem-2.625remの線形補間 */,
    2.625rem /* 42px (基準16px) */
  );
}
.Demonstration-circle._center ul,
.Demonstration-circle._right ul {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  column-gap: 2.247% /* 10px (基準445px) */;
}
.Demonstration-circle._center ul {
  margin-top: 6.292% /* 28px (基準445px) */;
}
.s .Demonstration-circle._center ul {
  margin-top: 8.547% /* 20px (基準234px) */;
}
.Demonstration-circle._right ul {
  margin-top: 4.478% /* 24px (基準536px) */;
}
.s .Demonstration-circle._right ul {
  margin-top: 4.444% /* 8px (基準180px) */;
}

.Demonstration-circle._center ul > li,
.Demonstration-circle._right ul > li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(
    5rem /* 80px (基準16px) */,
    2.857rem + 4.464vw /* 768px-1440px間で5.000rem-6.875remの線形補間 */,
    6.875rem /* 110px (基準16px) */
  );
  height: clamp(
    5rem /* 80px (基準16px) */,
    2.857rem + 4.464vw /* 768px-1440px間で5.000rem-6.875remの線形補間 */,
    6.875rem /* 110px (基準16px) */
  );
  text-align: center;
  color: #003c8f;
  font-weight: 500;
  border-radius: 20px;
  background: rgba(226, 231, 235, 0.4);
  box-shadow: 4px 4px 9px 0 rgba(116, 145, 167, 0.21);
}
.s .Demonstration-circle._center ul > li,
.s .Demonstration-circle._right ul > li {
  border-radius: 10px;
}

.Demonstration-circle._center ul > li {
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.732rem + 0.298vw /* 768px-1440px間で0.875rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
}
.Demonstration-circle._right ul > li {
  color: #fff;
  border: 1px solid rgb(255, 255, 255, 0.5);
  font-size: clamp(
    0.75rem /* 12px (基準16px) */,
    0.464rem + 0.595vw /* 768px-1440px間で0.750rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
}
.s .Demonstration-circle._right ul > li {
  width: 37.778% /* 68px (基準180px) */;
  height: auto;
  aspect-ratio: 1.447;
  line-height: 1.167;
}

.Demonstration-circle._right {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  width: min(37.222vw /* 536px (基準1440px) */, 33.5rem /* 536px (基準16px) */);
  height: auto;
  aspect-ratio: 1.27;
  position: relative;
  background-image: url('../../demonstration-field/image/demonstration-figure-right.svg');
}
.s .Demonstration-circle._right {
  position: absolute;
  top: 50%;
  left: 50%;
  align-items: flex-end;
  justify-content: flex-start;
  width: 66.667% /* 250px (基準375px) */;
  aspect-ratio: 0.859;
  transform: translate(-26.4% /* 66px (基準250px) */, calc(-100% + 7.9%)) /* 23px (基準291px) */;
  background-image: url('../../demonstration-field/image/demonstration-figure-right-sp.svg');
}

.Demonstration-circle._right > .Demonstration-circleInner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 77.985% /* 418px (基準536px) */;
  height: auto;
  aspect-ratio: 1;
  padding-top: 2.612%; /* 14px (基準536px) */
}
.s .Demonstration-circle._right > .Demonstration-circleInner {
  width: 72% /* 180px (基準250px) */;
  padding-top: 0;
  margin-top: 10% /* 18px (基準180px) */;
  margin-right: 4.52%;
}
.Demonstration-circle._right span {
  font-weight: bold;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    -0.125rem + 2.083vw /* 768px-1440px間で0.875rem-1.750remの線形補間 */,
    1.75rem /* 28px (基準16px) */
  );
}
.Demonstration-circle._right span > span {
  font-weight: bold;
  font-size: clamp(
    0.625rem /* 10px (基準16px) */,
    0.196rem + 0.893vw /* 768px-1440px間で0.625rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
}

.Demonstration-procedureSupport > div > img {
  display: block;
  margin-top: 2.5rem; /* 40px (基準16px) */
  margin-inline: auto;
  width: clamp(
    2.625rem /* 42px (基準16px) */,
    -2.161rem + 9.971vw /* 768px-1440px間で2.625rem-6.813remの線形補間 */,
    6.813rem /* 109px (基準16px) */
  );
  height: auto;
}
.s .Demonstration-procedureSupport > div > img {
  margin-top: 1.063rem /* 17px (基準16px) */;
}
.Demonstration-procedureSupport > div > span {
  display: block;
  margin-top: 2rem /* 32px (基準16px) */;
  color: #003c8f; /* フォールバック */
  background: linear-gradient(273deg, #003c8f -9.87%, #095eed 102.64%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  font-weight: 700;
  font-size: clamp(
    1.5rem /* 24px (基準16px) */,
    0.214rem + 2.679vw /* 768px-1440px間で1.500rem-2.625remの線形補間 */,
    2.625rem /* 42px (基準16px) */
  );
}
.s .Demonstration-procedureSupport > div > span {
  margin-top: 1.75rem /* 28px (基準16px) */;
}

.Demonstration-recommend {
  margin-top: clamp(
    5.625rem /* 90px (基準16px) */,
    4.911rem + 1.488vw /* 768px-1440px間で5.625rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
}

.Demonstration-recommend h2 {
  line-height: 1;
}

.Demonstration-swiper._01 {
  width: min(75rem /* 1200px (基準16px) */, 83.333vw /* 1200px (基準1440px) */);
  margin: 0 auto;
  margin-top: 2.5rem /* 40px (基準16px) */;
  padding-top: 3.188rem /* 51px (基準16px) */;
}
.Demonstration-swiper._02 {
  margin-top: 2.5rem /* 40px (基準16px) */;
}
.s .Demonstration-swiper._02 {
  margin-top: 3.125rem /* 50px (基準16px) */;
}

.Demonstration-recommendList > li {
  position: relative;
  flex: 0 0 18.75rem /* 300px (基準16px) */;
  height: auto;
  padding-top: 3.75rem /* 60px (基準16px) */;
  padding-inline: 1.25rem /* 20px (基準16px) */;
  padding-bottom: 1.25rem /* 20px (基準16px) */;
  background-color: #fff;
  border-radius: 20px;
}
.s .Demonstration-recommendList > li {
  padding-block: 2.5rem /* 40px (基準16px) */;
}

.Demonstration-recommendIcon {
  position: absolute;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 7.5rem /* 120px (基準16px) */;
  height: 7.5rem /* 120px (基準16px) */;
  border-radius: 50%;
  top: 0;
  left: 50%;
  transform: translate(-50%, -42.5%);
  background: #fff;
  clip-path: inset(0 0 50% 0); /* 下半分をクリップ */
  padding-top: 0.938rem /* 15px (基準16px) */;
}
.s .Demonstration-recommendIcon {
  padding-top: 1.25rem /* 20px (基準16px) */;
}
.Demonstration-recommendIcon > img {
  display: block;
  width: 2.5rem /* 40px (基準16px) */;
  height: 2.5rem /* 40px (基準16px) */;
}

.Demonstration-recommendTitle {
  color: #0047c5;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1.25rem /* 20px (基準16px) */;
  line-height: 1.4;
}
.Demonstration-recommendList ul {
  margin-top: 1.25rem /* 20px (基準16px) */;
}
.Demonstration-recommendList ul li {
  color: #003c8f;
  line-height: 1.75;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.732rem + 0.298vw /* 768px-1440px間で0.875rem-1.000remの線形補間 */,
    1rem /* 16px (基準16px) */
  );
  background-color: #e5ebf4;
  border-radius: 8px;
  padding-inline: 1.25rem /* 20px (基準16px) */;
  padding-block: 0.313rem /* 5px (基準16px) */;
}
.s .Demonstration-recommendList ul li {
  padding-block: 0.625rem; /* 10px (基準16px) */
}
.Demonstration-recommendList ul li + li {
  margin-top: 0.5rem /* 8px (基準16px) */;
}

.Demonstration-recommendNote {
  margin-top: 0.5rem /* 8px (基準16px) */;
  display: block;
  color: #003c8f;
  font-size: 0.75rem /* 12px (基準16px) */;
  text-align: right;
  line-height: 2.333;
}

.Demonstration-achievements {
  margin-top: clamp(
    5.625rem /* 90px (基準16px) */,
    4.911rem + 1.488vw /* 768px-1440px間で5.625rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
}

.s .Demonstration-achievements .Demonstration-inner:nth-child(2) {
  padding-inline: 0;
}

.Demonstration-achievements .swiper-slide {
  width: clamp(
    15.188rem /* 243px (基準16px) */,
    7.759rem + 15.476vw /* 768px-1440px間で15.188rem-21.688remの線形補間 */,
    21.688rem /* 347px (基準16px) */
  );
  width: auto;
}
.Demonstration-achievements .swiper-slide > a {
  display: block;
  width: 100%;
}
.Demonstration-achievements .swiper-slide > a > div {
  box-shadow: none;
}

.Demonstration-btn {
  display: block;
  margin-inline: auto;
  width: clamp(
    17.938rem /* 287px (基準16px) */,
    12.724rem + 10.862vw /* 768px-1440px間で17.938rem-22.500remの線形補間 */,
    22.5rem /* 360px (基準16px) */
  );
  margin-top: 2.5rem /* 40px (基準16px) */;
}

.Demonstration-application {
  margin-top: 2.75rem /* 44px (基準16px) */;
  padding-top: clamp(
    5.625rem /* 90px (基準16px) */,
    4.911rem + 1.488vw /* 768px-1440px間で5.625rem-6.250remの線形補間 */,
    6.25rem /* 100px (基準16px) */
  );
}
.Demonstration-application ul {
  margin-top: 2.5rem /* 40px (基準16px) */;
  padding-block: 2.5rem /* 40px (基準16px) */;
  padding-inline: clamp(
    0.625rem /* 10px (基準16px) */,
    -7.232rem + 16.369vw /* 768px-1440px間で0.625rem-7.500remの線形補間 */,
    7.5rem /* 120px (基準16px) */
  );
  background-color: rgb(255, 255, 255, 0.17);
  border: 1px solid rgb(255, 255, 255, 0.5);
  border-radius: 20px;
  display: flex;
  align-items: stretch;
  justify-content: center;
  column-gap: clamp(
    0.5rem /* 8px (基準16px) */,
    -10.357rem + 22.619vw /* 768px-1440px間で0.500rem-10.000remの線形補間 */,
    10rem /* 160px (基準16px) */
  );
}
.s .Demonstration-application ul {
  margin-top: 1.25rem /* 20px (基準16px) */;
  padding-block: 1.25rem /* 20px (基準16px) */;
}

.Demonstration-application ul > li {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: stretch;
  flex-direction: column;
  row-gap: 0.5rem /* 8px (基準16px) */;
  width: clamp(
    4.531rem /* 72.5px (基準16px) */,
    1.138rem + 7.069vw /* 768px-1440px間で4.531rem-7.500remの線形補間 */,
    7.5rem /* 120px (基準16px) */
  );
}

.Demonstration-applicationNumber {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(
    2.5rem /* 40px (基準16px) */,
    1.071rem + 2.976vw /* 768px-1440px間で2.500rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
  height: clamp(
    2.5rem /* 40px (基準16px) */,
    1.071rem + 2.976vw /* 768px-1440px間で2.500rem-3.750remの線形補間 */,
    3.75rem /* 60px (基準16px) */
  );
  border-radius: 50%;
  background-color: #fff;
  color: #0047c5;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: clamp(
    1rem /* 16px (基準16px) */,
    0.143rem + 1.786vw /* 768px-1440px間で1.000rem-1.750remの線形補間 */,
    1.75rem /* 28px (基準16px) */
  );
}
.Demonstration-application ul > li:not(:last-child) .Demonstration-applicationNumber:before,
.Demonstration-application ul > li:not(:last-child) .Demonstration-applicationNumber:after {
  position: absolute;
  content: '';
  display: block;
  --application-arrow-width: clamp(
    1.75rem /* 28px (基準16px) */,
    -3.964rem + 11.905vw /* 768px-1440px間で1.750rem-6.750remの線形補間 */,
    6.75rem /* 108px (基準16px) */
  );

  --application-arrow-margin: clamp(
    0.438rem /* 7px (基準16px) */,
    -2.919rem + 6.993vw /* 768px-1440px間で0.438rem-3.375remの線形補間 */,
    3.375rem /* 54px (基準16px) */
  );
}
.Demonstration-applicationNumber:before {
  top: 50%;
  right: 0;
  height: 1px;
  width: var(--application-arrow-width);
  border: 1px dashed #fff;
  transform: translate(calc(100% + var(--application-arrow-margin)), -50%);
}
.Demonstration-applicationNumber:after {
  top: 50%;
  right: clamp(
    2.75rem /* 44px (基準16px) */,
    -5.679rem + 17.56vw /* 768px-1440px間で2.750rem-10.125remの線形補間 */,
    10.125rem /* 162px (基準16px) */
  );
  right: calc((var(--application-arrow-width) + var(--application-arrow-margin)) * -1);
  width: 8px;
  height: 8px;
  border-top: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  transform-origin: center;
}

.Demonstration-applicationText {
  text-align: center;
  font-weight: bold;
  font-size: clamp(
    0.875rem /* 14px (基準16px) */,
    0.446rem + 0.893vw /* 768px-1440px間で0.875rem-1.250remの線形補間 */,
    1.25rem /* 20px (基準16px) */
  );
  inset: 0;
  margin-top: auto;
  margin-bottom: auto;
  white-space: nowrap;
}
.s .Demonstration-applicationText {
  white-space: wrap;
}
.Demonstration-applicationText > br {
  display: none;
}
.s .Demonstration-applicationText > br {
  display: inline;
}

.Demonstration-application ul > li > img {
  display: block;
  width: auto;
  height: clamp(
    1.75rem /* 28px (基準16px) */,
    0.321rem + 2.976vw /* 768px-1440px間で1.750rem-3.000remの線形補間 */,
    3rem /* 48px (基準16px) */
  );
}

.Demonstration-contactus {
  position: relative;
  margin-top: 15rem /* 240px (基準16px) */;
  padding-bottom: 6.25rem /* 100px (基準16px) */;
  background-color: rgba(255, 255, 255, 0.22);
}

.s .Demonstration-contactus {
  margin-top: 7.5rem /* 120px (基準16px) */;
  padding-bottom: 5rem /* 80px (基準16px) */;
}

.Demonstration-contactus ._deco {
  position: absolute;
  top: -9rem /* 144px (基準16px) */;
  width: 100%;
  height: 9rem /* 144px (基準16px) */;
}

.s .Demonstration-contactus ._deco {
  height: 4.375rem /* 70px (基準16px) */;
  top: -4.375rem /* 70px (基準16px) */;
}

.Demonstration-contact p {
  font-size: clamp(
    1.5rem /* 24px (基準16px) */,
    0.357rem + 2.381vw /* 768px-1440px間で1.500rem-2.500remの線形補間 */,
    2.5rem /* 40px (基準16px) */
  );
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  letter-spacing: -0.04em;
}
.s .Demonstration-contact p {
  margin-top: 1.875rem /* 30px (基準16px) */;
}
