/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 15 2026 | 09:08:35 */
/* 導入事例 */
.intro-cases {
  --case-blue: #06469c;
  --case-text: #333333;
  --case-bg: #f3faff;
  --case-yellow: #ffc400;

  width: 100%;
  background: var(--case-bg);
  color: var(--case-text);
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN",
    "Yu Gothic", Meiryo, sans-serif;
}

.intro-cases,
.intro-cases * {
  box-sizing: border-box;
}

.intro-cases .intro-cases__inner {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
	    margin-bottom: 60px;
}

.intro-cases .intro-cases__title {
  margin: 0 0 36px;
  color: var(--case-blue);
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-align: center;
}

.intro-cases .intro-cases__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}

/* カード */
.intro-cases .intro-case {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  background: #ffffff;
  border-radius: 20px;
}

.intro-cases .intro-case__heading {
  margin: 0;
  padding: 13px 10px;
  background: var(--case-blue);
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
	font-family: "Noto Sans JP", sans-serif;
}

.intro-cases .intro-case__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  padding: 20px 22px 27px;
}

/* BEFORE / AFTER */
.intro-cases .intro-case__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 94px;
  padding: 4px 11px 4px;
  border-radius: 100px;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.1;
}

.intro-cases .intro-case__label--before {
  background: #333333;
}

.intro-cases .intro-case__label--after {
  margin-top: 16px;
  background: var(--case-blue);
}

/* 課題 */
.intro-cases .intro-case__problem {
  align-self: stretch;
  min-height: 3em;
  margin: 11px 0 14px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

/* 写真 */
.intro-cases .intro-case__photo {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 620 / 304;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}

/* 改善内容 */
.intro-cases .intro-case__solution {
  align-self: stretch;
  min-height: 3em;
  margin: 13px 0 0;
  color: var(--case-blue);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
	font-family: "Noto Sans JP", sans-serif;
}

/* 成果 */
.intro-cases .intro-case__result-title {
  margin: 7px 0 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
	font-family: "Noto Sans JP", sans-serif;
}

.intro-cases .intro-case__result {
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin: 3px 0 15px;
  color: var(--case-blue);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}

.intro-cases .intro-case__approx {
  margin-right: 3px;
  font-size: 32px;
}

.intro-cases .intro-case__number {
 font-family: "Noto Sans JP", sans-serif;
  font-size: 63px;
  font-weight: 500;
  letter-spacing: -0.04em;
}

.intro-cases .intro-case__percent {
  margin-left: 3px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 38px;
}

.intro-cases .intro-case__reduction {
  font-size: 28px;
}

/* 黄色の効果ラベル */
.intro-cases .intro-case__benefit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: calc(100% - 20px);
  min-height: 54px;
  margin: auto 0 0;
  padding: 9px 12px;
  border: 2px solid var(--case-yellow);
  border-radius: 100px;
  background: #fff8d5;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}

.intro-cases .intro-case__benefit img {
  display: block;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  margin: 0;
  object-fit: contain;
}

/* タブレット・スマホ */
@media (max-width: 1023px) {
  .intro-cases .intro-cases__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    max-width: 480px;
    margin-inline: auto;
  }

  .intro-cases .intro-case__problem,
  .intro-cases .intro-case__solution {
    min-height: 0;
  }
}

@media (max-width: 599px) {
  .intro-cases {
  }

  .intro-cases .intro-cases__title {
    margin-bottom: 24px;
    font-size: 28px;
  }

  .intro-cases .intro-case {
    border-radius: 18px;
  }

  .intro-cases .intro-case__heading {
    padding: 12px 10px;
    font-size: 18px;
  }

  .intro-cases .intro-case__body {
    padding: 20px 20px 24px;
  }

  .intro-cases .intro-case__problem {
    font-size: 16px;
  }

  .intro-cases .intro-case__solution {
    font-size: 20px;
  }

  .intro-cases .intro-case__result-title {
    font-size: 19px;
  }

  .intro-cases .intro-case__number {
    font-size: clamp(64px, 20vw, 80px);
  }

  .intro-cases .intro-case__approx,
  .intro-cases .intro-case__reduction {
    font-size: 28px;
  }

  .intro-cases .intro-case__percent {
    font-size: 38px;
  }

  .intro-cases .intro-case__benefit {
    width: 100%;
    gap: 10px;
    padding-inline: 10px;
    font-size: 18px;
  }
	/* 写真 */
.intro-cases .intro-case__photo {
  width: 80%;
}
}