/* 全体のリセットやベース設定などは省略 */

/* カルーセル全体のコンテナ */
.carousel-container {
	width: 100vw;
	padding: 20px;
  position: relative;
	left: -40px;
	overflow: hidden;
}

/* スライドをまとめるラッパ */
.carousel {
	margin-inline: 8vw;
  display: flex;       /* 横並びにする */
	gap: 20px;
  cursor: grab;        /* ドラッグできそうなカーソル */
  user-select: none;   /* テキストが選択されないようにする */
}

/* 個々のスライド要素 */
.slide {
	width: 300px;
  flex-shrink: 0;
}

.adjustment-slide {
	width: 40px;
	flex-shrink: 0;
}

/* プログレスバーのラッパ */
.progress-bar-wrapper {
  width: 90%;       /* カルーセルと同じ幅に */
  height: 6px;
  background-color: #eee;
  margin: 40px auto;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
}

/* 実際に進捗を示すバー */
.progress-bar {
  width: 0%;            /* 初期状態では0% */
  height: 100%;
  background-color: #295daa;
  transition: width 0.2s;
}

.top-solution .solution-card-body {
	padding: 30px 24px 40px 24px;
}

.top-solution .solution-cat1-category {
	top: -19px;
	font-size: 0.9375rem;
}

.top-solution .solution-card-title {
	margin-bottom: 10px;
	font-size: clamp(0.9375rem, 0.8617rem + 0.3236vw, 1.25rem);
}

.top-solution .solution-card .card-btn {
	width: 40px;
	height: 40px;
	right: 24px;
	bottom: 24px;
}

.top-solution-categories {
	margin-block: 24px;
}