/* screen - sp-1 */

/* --- スムーズスクロールを有効にする --- */
html {
  scroll-behavior: smooth;
}

.sp-1 {
  background-color: var(--white);
  min-height: 3653.93vw;
  min-width: 100.0vw;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.sp-1 .x223 {
  height: 182.03vw;
  left: -0.12vw;
  position: absolute;
  top: 358.94vw;
  width: 100%;
}

.sp-1 .x117 {
  height: 110.96vw;
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: calc(100% - 0.23vw);
}

.sp-1 .x78 {
  background-color: var(--anakiwa);
  height: calc(100% - 26.05vw);
  left: 0.12vw;
  position: absolute;
  top: 5.82vw;
  width: 100%;
}

.sp-1 .x122 {
  bottom: 0;
  height: 58.97vw;
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.sp-1 .x132 {
  background-image: url(../img/file-----131-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 69.9vw;
  left: calc(49.76% - 28.96vw);
  position: absolute;
  top: 387.21vw;
  width: 58.16vw;
}

.sp-1 .x81 {
  background-color: #99e1ff;
  height: 26.17vw;
  left: -0.12vw;
  position: absolute;
  top: 0;
  width: calc(100% - 0.23vw);
}

.sp-1 .x134 {
  background-image: url(../img/file-----133-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 141.21vw;
  left: 0.12vw;
  position: absolute;
  top: 0;
  width: calc(100% - 0.35vw);
}

.sp-1 .x119 {
  height: 22.1vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.12vw;
  width: 64.44vw;
}

.sp-1 .x120 {
  height: 110.96vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  top: 120.38vw;
  width: calc(100% - 0.23vw);
}

.sp-1 .x121 {
  height: 58.97vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  top: 116.9vw;
  width: 100%;
}

.sp-1 .x135 {
  display: flex;
  flex-direction: column;
  height: 10.0vw;
  justify-content: space-between;
  position: absolute;
  right: 2.91vw;
  top: 123.18vw;
  width: 23.26vw;
}

.sp-1 .x123 {
  height: 2.85vw;
  margin-left: 0;
  margin-top: 0;
  object-fit: cover;
  width: 11.85vw;
}

.sp-1 .x124 {
  align-self: flex-end;
  height: 4.26vw;
  margin-bottom: 0;
  margin-right: 0;
  object-fit: cover;
  width: 11.41vw;
}

.sp-1 .x136 {
  background-color: var(--white);
  border-radius: 5.58vw;
  box-shadow: 0.0vw 0.0vw 1.05vw #0000004d;
  height: 11.17vw;
  position: absolute;
  right: 2.56vw;
  top: 3.26vw;
  width: 11.17vw;
}

.sp-1 .menu {
  bottom: calc(35.49% - 1.05vw);
  color: #4d4d4d;
  font-family: var(--font-family-bahnschrift);
  font-size: 2.61vw;
  height: 2.91vw;
  letter-spacing: 0;
  line-height: 4.56vw;
  position: absolute;
  right: calc(46.85% - 3.02vw);
  white-space: nowrap;
  width: 6.51vw;
}

.sp-1 .x9 {
  height: 0.35vw;
  left: calc(50.00% - 1.86vw);
  object-fit: cover;
  position: absolute;
  top: calc(28.75% - 0.12vw);
  width: 3.72vw;
}

.sp-1 .x10 {
  height: 0.35vw;
  left: calc(50.00% - 1.86vw);
  object-fit: cover;
  position: absolute;
  top: calc(38.11% - 0.12vw);
  width: 3.72vw;
}

.sp-1 .x11 {
  height: 0.35vw;
  left: calc(50.00% - 1.86vw);
  object-fit: cover;
  position: absolute;
  top: calc(47.08% - 0.12vw);
  width: 3.72vw;
}

.sp-1 .x137 {
  height: 13.38vw;
  position: absolute;
  right: calc(49.76% - 3.61vw);
  top: 96.08vw;
  width: 7.33vw;
}

.sp-1 .x125 {
  bottom: -1.63vw;
  height: 12.79vw;
  left: -0.7vw;
  object-fit: cover;
  position: absolute;
  width: 8.49vw;
}

.sp-1 .scroll {
  color: var(--white);
  font-family: var(--font-family-bahnschrift);
  font-size: 2.33vw;
  height: 2.56vw;
  left: 0;
  letter-spacing: 0.23vw;
  line-height: 4.07vw;
  position: absolute;
  top: -0.93vw;
  white-space: nowrap;
  width: calc(100% + 0.23vw);
}

.sp-1 .x8  {
  background-color: #707070;
  border-radius: 0.45vw;
  bottom: calc(21.21% - -2vw);
  height: 0.93vw;
  left: calc(45.73% - 0.47vw);
  position: absolute;
  width: 0.93vw;
  animation: scroll-animation 2s ease-in-out infinite; /* この行を追加 */
}

.sp-1 .text-73 {
  color: var(--white);
  font-family: var(--font-family-midmima1std-bold-83pv-rksj-h);
  font-size: 4vw;
  font-weight: 700;
  hheight: auto; /* ← 修正点1: 高さを自動に */
  left: 11.75vw;
  letter-spacing: 0.68vw;
  line-height: 7.89vw;
  position: absolute;
  text-align: center;
  top: 84.68vw;
  white-space: normal; /* ← 修正点2: 折り返しを許可 */
  width: calc(100% - 22.8vw);
}

.sp-1 .x138 {
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: calc(47.96% - 7.21vw);
  top: 351.97vw;
  width: 15.0vw;
}

.sp-1 .x127 {
  height: 1.78vw;
  margin-left: 0;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x126 {
  align-self: flex-end;
  height: 2.89vw;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .text-74 {
  color: var(--white);
  font-family: var(--font-family-midmima1std-bold-83pv-rksj-h);
  font-size: 5.13vw;
  font-weight: 700;
  height: 5.35vw;
  letter-spacing: 1.03vw;
  line-height: 8.97vw;
  position: absolute;
  right: calc(48.55% - 23.5vw);
  text-align: center;
  top: 473.17vw;
  white-space: nowrap;
  width: 48.39vw;
}

.sp-1 .x8-1 {
  height: 7.44vw;
  left: 5.23vw;
  position: absolute;
  top: 4.42vw;
  width: 41.41vw;
}

.sp-1 .x83 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gray);
  border-radius: 3.74vw;
  height: calc(100% + 0.12vw);
  left: 0;
  position: absolute;
  top: 0;
  width: calc(100% + 0.12vw);
}

.sp-1 .language {
  color: #7c7c7c;
  font-family: var(--font-family-bahnschrift);
  font-size: 4.3vw;
  height: 4.54vw;
  letter-spacing: 0.43vw;
  line-height: 7.53vw;
  position: absolute;
  right: calc(41.77% - 10.35vw);
  text-align: center;
  top: calc(7.98% - 0.35vw);
  white-space: nowrap;
  width: 24.89vw;
}

.sp-1 .x139 {
  display: flex;
  height: calc(100% - 1.28vw);
  left: 2.33vw;
  position: absolute;
  top: 0.47vw;
  width: 6.16vw;
}

.sp-1 .x128 {
  flex: 1;
  margin-bottom: 0.62vw;
  margin-left: 0.62vw;
  margin-right: 0.62vw;
  margin-top: 0.62vw;
  object-fit: cover;
  width: 4.97vw;
}

.sp-1 .text-75{
  color: #666666;
  font-family: var(--font-family-midmima1std-bold-83pv-rksj-h);
  font-size: 4.0vw; /* フォントサイズを調整しました */
  font-weight: 700;
  height: 50.36vw;
  left: 11.4vw;
  letter-spacing: 0.4vw;
  line-height: 8.2vw; /* フォントサイズに合わせて行間を調整しました */
  position: absolute;
  text-align: center;
  top: 300.32vw;
  width: calc(100% - 23.84vw);
}

.sp-1 .text-76 {
  height: 26.17vw;
  left: 12.68vw;
  letter-spacing: 0.4vw;
  line-height: 9.8vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  top: 488.75vw;
  width: calc(100% - 23.84vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .discover-deep-japan {
  color: var(--anakiwa);
  font-family: var(--font-family-zapfino);
  font-size: 6.4vw;
  height: 33.03vw;
  left: 7.21vw;
  letter-spacing: 0;
  line-height: 11.17vw;
  position: absolute;
  top: 213vw;
  transform: rotate(-5.70deg);
  white-space: nowrap;
  width: 55.83vw;
}

.sp-1 .x226 {
  height: 59.44vw;
  left: -0.23vw;
  position: absolute;
  top: 570.87vw;
  width: 100%;
}

.sp-1 .x129 {
  height: calc(100% - 3.49vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 3.49vw;
  width: calc(100% - 0.23vw);
}

.sp-1 .x130 {
  height: calc(100% - 0.47vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x141 {
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: 9.89vw;
  top: 547.84vw;
  width: 15.0vw;
}

.sp-1 .x132-1 {
  height: 1.78vw;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x131 {
  align-self: flex-end;
  height: 2.89vw;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .text-77 {
  height: auto; /* 高さを自動に */
  letter-spacing: 0;
  line-height: 1.2; /* 行間を調整 */
  position: absolute;
  text-align: center;
  top: 558vw; /* 位置を微調整 */
  white-space: nowrap;
  font-size: 8.5vw; /* フォントサイズを調整 */
  width: 100%; /* 中央寄せのため幅を100%に */
  left: 0; /* 中央寄せのため左位置を0に */
}

.sp-1 .number  {
  height: 23.03vw;
  letter-spacing: 0;
  line-height: 11.86vw;
  opacity: 0.65;
  position: absolute;
  top: 546.21vw;
  transform: rotate(-5.70deg) translateX(-50%); /* 中央寄せを適用 */
  white-space: nowrap;
  font-size: 10vw; /* フォントサイズを調整 */
  left: 50%; /* 中央寄せのため左位置を50%に */
}

.sp-1 .text-78 {
  height: 26.17vw;
  left: 14.31vw;
  letter-spacing: 0.4vw;
  line-height: 7.5vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  top: 587.62vw;
  width: calc(100% - 23.84vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .x133 {
  height: 55.95vw;
  left: -0.23vw;
  object-fit: cover;
  position: absolute;
  top: calc(38.83% - 21.75vw);
  width: calc(100% - 0.23vw);
}

.sp-1 .x134-1 {
  height: 58.97vw;
  left: -0.23vw;
  object-fit: cover;
  position: absolute;
  top: calc(38.77% - 22.91vw);
  width: 100%;
}

.sp-1 .x135-1 {
  height: 2.91vw;
  object-fit: cover;
  position: absolute;
  right: 9.89vw;
  top: calc(37.63% - 1.05vw);
  width: 7.68vw;
}

.sp-1 .x136-1 {
  height: 1.74vw;
  object-fit: cover;
  position: absolute;
  right: calc(18.23% - 1.51vw);
  top: calc(37.53% - 0.7vw);
  width: 8.03vw;
}

.sp-1 .text-79 {
  height: auto;
  letter-spacing: 0;
  line-height: 1.2;
  position: absolute;
  text-align: center;
  top: calc(37.77% - 1.5vw); /* 位置を微調整 */
  white-space: nowrap;
  font-size: 8.5vw;
  width: 100%;
  left: 0;
}

.sp-1 .number-1 {
  top: calc(37.71% - 8.72vw);
  /* right と width を削除 */
  font-size: 10vw;
  left: 45%;
  transform: translateX(-50%);
}

.sp-1 .text-80 {
  height: 26.17vw;
  left: 7.91vw;
  letter-spacing: 0.4vw;
  line-height: 7.5vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  top: calc(38.88% - 10.24vw);
  width: calc(100% - 10.93vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .text-81 {
  height: 22.45vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: 697.77vw;
  width: calc(100% - 23.84vw);
}

.sp-1 .x143 {
  background-image: url(../img/file-----142-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.98vw;
  position: absolute;
  top: 635.77vw;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-82 {
  height: 4.89vw;
  left: calc(48.60% - 11.17vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: 687.53vw;
  white-space: nowrap;
  width: 23.03vw;
}

.sp-1 .x145 {
  background-image: url(../img/file-----144@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.98vw;
  position: absolute;
  top: calc(22.85% - 11.05vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-83 {
  height: 4.89vw;
  left: calc(48.40% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(24.00% - 1.16vw);
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .text_label {
  height: 36.06vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(26.82% - 9.65vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x147 {
  background-image: url(../img/file-----146-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.98vw;
  position: absolute;
  top: calc(25.19% - 12.21vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .sup {
  height: 4.89vw;
  left: calc(48.80% - 4.77vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(26.32% - 1.28vw);
  white-space: nowrap;
  width: 9.77vw;
}

.sp-1 .text-84 {
  height: 36.06vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(21.69% - 7.79vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x151 {
  background-image: url(../img/file-----150@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.98vw;
  position: absolute;
  top: calc(20.04% - 9.65vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-85 {
  height: 4.89vw;
  left: calc(48.28% - 18.03vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(21.22% - 1.05vw);
  white-space: nowrap;
  width: 37.22vw;
}

.sp-1 .x159 {
  height: 10.47vw;
  left: 11.98vw;
  position: absolute;
  top: 146.44vw;
  width: calc(100% - 25.36vw);
}

.sp-1 .x158 {
  background-color: var(--white);
  border-radius: 5.21vw;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x9-1 {
  background-color: #ed1c24;
  border-radius: 2.72vw;
  height: calc(100% - 5.0vw);
  position: absolute;
  right: 3.37vw;
  top: 2.44vw;
  width: 5.47vw;
}

.sp-1 .text-86 {
  color: var(--white);
  font-family: var(--font-family-heiseimarugostd-w4-83pv-rksj-h);
  font-size: 4.08vw;
  height: 5.0vw;
  letter-spacing: 0.41vw;
  line-height: 7.15vw;
  position: absolute;
  right: 3.84vw;
  top: calc(30.05% - 1.51vw);
  white-space: nowrap;
  width: 4.3vw;
}

.sp-1 .text-87 {
  height: 4.19vw;
  letter-spacing: 0.2vw; /* 文字間隔を狭くしました */
  line-height: 6.94vw;
  position: absolute;
  text-align: center;
  top: calc(28.69% - 1.16vw);
  white-space: nowrap;
  width: 100%; /* 幅を親要素いっぱいに広げ、中央揃えを確実にします */
  left: 0; /* 左からの位置をリセット */
  font-size: 4.2vw; /* フォントサイズを小さく調整しました */
}

.sp-1 .x160 {
  display: flex;
  height: 10.12vw;
  justify-content: space-between;
  position: absolute;
  right: calc(47.87% - 11.28vw);
  top: 24.54vw;
  width: 23.5vw;
}

.sp-1 .x137-1 {
  height: 2.87vw;
  margin-left: 0;
  margin-top: 0;
  object-fit: cover;
  width: 11.95vw;
}

.sp-1 .x138-1 {
  align-self: flex-end;
  height: 4.3vw;
  margin-bottom: 0;
  margin-right: 0;
  object-fit: cover;
  width: 11.5vw;
}

.sp-1 .x168 {
  height: 43.85vw;
  left: 13.84vw;
  position: absolute;
  top: 165.17vw;
  width: calc(100% - 17.91vw);
}

.sp-1 .x166 {
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 45.71vw;
}

.sp-1 .x165 {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x144 {
  height: 100%;
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.12vw;
  width: calc(100% - 0.12vw);
}

.sp-1 .x145-1 {
  bottom: calc(39.25% - 0.12vw);
  height: 0.23vw;
  left: calc(27.53% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.23vw;
}

.sp-1 .x146 {
  bottom: calc(35.09% - 0.23vw);
  height: 0.81vw;
  left: calc(39.24% - 0.35vw);
  object-fit: cover;
  position: absolute;
  width: 0.93vw;
}

.sp-1 .x147-1 {
  bottom: calc(45.94% - 0.23vw);
  height: 0.58vw;
  left: calc(27.13% - 0.23vw);
  object-fit: cover;
  position: absolute;
  width: 0.7vw;
}

.sp-1 .x148 {
  bottom: 3.84vw;
  height: 0.7vw;
  left: 3.49vw;
  object-fit: cover;
  position: absolute;
  width: 0.7vw;
}

.sp-1 .x149 {
  bottom: 3.26vw;
  height: 0.7vw;
  left: 0;
  object-fit: cover;
  position: absolute;
  width: 0.58vw;
}

.sp-1 .x150 {
  bottom: calc(39.70% - 0.23vw);
  height: 0.7vw;
  left: calc(41.21% - 0.23vw);
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x151-1 {
  bottom: 4.19vw;
  height: 0.58vw;
  left: 0.23vw;
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x152 {
  bottom: 1.86vw;
  height: 0.47vw;
  left: 0.35vw;
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x153 {
  bottom: calc(19.90% - 0.12vw);
  height: 0.35vw;
  left: calc(22.95% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x154 {
  bottom: 7.91vw;
  height: 0.35vw;
  left: calc(35.76% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x155 {
  bottom: calc(46.70% - 0.12vw);
  height: 0.35vw;
  left: calc(31.62% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x156 {
  height: calc(100% - 0.23vw);
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0.12vw;
  width: 30.47vw;
}

.sp-1 .x157 {
  bottom: 2.56vw;
  height: 15.47vw;
  left: 0.35vw;
  object-fit: cover;
  position: absolute;
  width: 16.4vw;
}

.sp-1 .x158-1 {
  bottom: calc(43.51% - 1.51vw);
  height: 3.61vw;
  left: calc(32.53% - 0.81vw);
  object-fit: cover;
  position: absolute;
  width: 2.56vw;
}

.sp-1 .x159-1 {
  bottom: calc(20.01% - 0.47vw);
  height: 2.09vw;
  left: calc(26.34% - 0.7vw);
  object-fit: cover;
  position: absolute;
  width: 2.56vw;
}

.sp-1 .x160-1 {
  bottom: calc(45.99% - 1.05vw);
  height: 2.33vw;
  left: calc(37.46% - 0.7vw);
  object-fit: cover;
  position: absolute;
  width: 1.98vw;
}

.sp-1 .x161 {
  bottom: calc(42.77% - 1.05vw);
  height: 2.56vw;
  left: calc(36.96% - 0.35vw);
  object-fit: cover;
  position: absolute;
  width: 1.05vw;
}

.sp-1 .x162 {
  bottom: calc(22.77% - 0.23vw);
  height: 1.16vw;
  left: calc(25.60% - 0.35vw);
  object-fit: cover;
  position: absolute;
  width: 1.4vw;
}

.sp-1 .x163 {
  bottom: calc(26.56% - 0.35vw);
  height: 1.4vw;
  left: calc(18.23% - 0.23vw);
  object-fit: cover;
  position: absolute;
  width: 1.16vw;
}

.sp-1 .x164 {
  bottom: calc(25.47% - 0.35vw);
  height: 1.28vw;
  left: calc(33.38% - 0.35vw);
  object-fit: cover;
  position: absolute;
  width: 0.93vw;
}

.sp-1 .x165-1 {
  bottom: calc(24.52% - 0.47vw);
  height: 2.09vw;
  left: calc(27.32% - 0.23vw);
  object-fit: cover;
  position: absolute;
  width: 0.93vw;
}

.sp-1 .x166-1 {
  bottom: 6.75vw;
  height: 0.58vw;
  left: 5.7vw;
  object-fit: cover;
  position: absolute;
  width: 0.58vw;
}

.sp-1 .x167 {
  bottom: calc(37.79% - 0.23vw);
  height: 0.7vw;
  left: calc(43.02% - 0.58vw);
  object-fit: cover;
  position: absolute;
  width: 1.51vw;
}

.sp-1 .x168-1 {
  height: 0.47vw;
  left: calc(45.40% - 0.35vw);
  object-fit: cover;
  position: absolute;
  top: calc(39.37% - 0.23vw);
  width: 0.7vw;
}

.sp-1 .x169 {
  bottom: calc(24.44% - 0.12vw);
  height: 0.58vw;
  left: calc(28.14% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x170 {
  bottom: calc(24.91% - 0.12vw);
  height: 0.58vw;
  left: calc(19.66% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x171 {
  bottom: calc(41.27% - 0.12vw);
  height: 0.23vw;
  left: 4.89vw;
  object-fit: cover;
  position: absolute;
  width: 0.58vw;
}

.sp-1 .x172 {
  bottom: calc(25.20% - 0.12vw);
  height: 0.47vw;
  left: calc(26.32% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x173 {
  bottom: calc(20.88% - 0.12vw);
  height: 0.58vw;
  left: calc(24.59% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x174 {
  bottom: calc(34.78% - 0.23vw);
  height: 0.47vw;
  left: 2.33vw;
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x175 {
  bottom: calc(27.98% - 0.12vw);
  height: 0.47vw;
  left: calc(19.97% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x176 {
  bottom: calc(26.64% - 0.12vw);
  height: 0.35vw;
  left: 26.85%;
  object-fit: cover;
  position: absolute;
  width: 0.12vw;
}

.sp-1 .x177 {
  bottom: 4.07vw;
  height: 0.23vw;
  left: calc(29.39% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x178 {
  bottom: calc(26.72% - 0.12vw);
  height: 0.35vw;
  left: calc(32.12% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.23vw;
}

.sp-1 .x179 {
  bottom: 2.68vw;
  height: 0.35vw;
  left: 3.02vw;
  object-fit: cover;
  position: absolute;
  width: 0.23vw;
}

.sp-1 .x102 {
  background-color: var(--white);
  bottom: 38.80%;
  height: 0.12vw;
  left: calc(30.59% - 0.12vw);
  position: absolute;
  width: 0.23vw;
}

.sp-1 .x180 {
  bottom: 38.46%;
  height: 0.12vw;
  left: 30.47%;
  object-fit: cover;
  position: absolute;
  width: 0.12vw;
}

.sp-1 .x181 {
  bottom: 24.37%;
  height: 0.12vw;
  left: 26.95%;
  object-fit: cover;
  position: absolute;
  width: 0.12vw;
}

.sp-1 .x182 {
  bottom: calc(35.38% - 0.12vw);
  height: 0.23vw;
  left: calc(39.08% - 0.23vw);
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x183 {
  bottom: calc(45.98% - 0.12vw);
  height: 0.35vw;
  left: calc(27.26% - 0.12vw);
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x184 {
  bottom: 4.07vw;
  height: 0.35vw;
  left: 3.72vw;
  object-fit: cover;
  position: absolute;
  width: 0.47vw;
}

.sp-1 .x185 {
  bottom: 3.37vw;
  height: 0.35vw;
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  width: 0.35vw;
}

.sp-1 .x186 {
  bottom: calc(44.83% - 0.12vw);
  height: 0.23vw;
  object-fit: cover;
  position: absolute;
  right: calc(49.89% - 0.12vw);
  width: 0.23vw;
}

.sp-1 .x187 {
  bottom: calc(44.39% - 0.12vw);
  height: 0.12vw;
  object-fit: cover;
  position: absolute;
  right: 49.54%;
  width: 0.12vw;
}

.sp-1 .x188 {
  bottom: 31.72%;
  height: 0.12vw;
  left: 45.06%;
  object-fit: cover;
  position: absolute;
  width: 0.12vw;
}

.sp-1 .x189 {
  bottom: 44.47%;
  height: 0.12vw;
  left: 48.39%;
  object-fit: cover;
  position: absolute;
  width: 0.12vw;
}

.sp-1 .x190 {
  bottom: 7.56vw;
  height: 0.7vw;
  left: 3.14vw;
  object-fit: cover;
  position: absolute;
  width: 0.23vw;
}

.sp-1 .x191 {
  bottom: 0.81vw;
  height: 4.89vw;
  left: calc(35.28% - 2.79vw);
  object-fit: cover;
  position: absolute;
  width: 7.91vw;
}

.sp-1 .place {
  bottom: calc(36.64% - 6.16vw);
  color: var(--white);
  font-family: var(--font-family-zapfino);
  font-size: 4.89vw;
  height: 16.75vw;
  left: 0.7vw;
  letter-spacing: 0;
  line-height: 8.49vw;
  position: absolute;
  transform: rotate(-5.70deg);
  white-space: nowrap;
  width: 33.27vw;
}

.sp-1 .kumamoto {
  color: var(--white);
  font-family: var(--font-family-zapfino);
  font-size: 3.61vw;
  height: 12.45vw;
  left: 10.58vw;
  letter-spacing: 0;
  line-height: 6.28vw;
  position: absolute;
  top: 8.37vw;
  transform: rotate(-5.70deg);
  white-space: nowrap;
  width: 24.08vw;
}

.sp-1 .x167-1 {
  bottom: 3.72vw;
  height: 23.03vw;
  left: calc(49.25% - 9.77vw);
  position: absolute;
  width: 19.89vw;
}

.sp-1 .x12 {
  height: calc(100% + 0.12vw);
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: calc(100% - 5.12vw);
}

.sp-1 .x13 {
  bottom: -0.12vw;
  height: 0.12vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  width: 5.23vw;
}

.sp-1 .x170-1 {
  background-image: url(../img/file-----169-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 23.15vw;
  position: absolute;
  right: 6.63vw;
  top: 231.35vw;
  width: 34.31vw;
}

.sp-1 .x172-1 {
  background-image: url(../img/file-----171-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 20.01vw;
  left: 4.77vw;
  position: absolute;
  top: 269.38vw;
  width: 29.66vw;
}

.sp-1 .x174-1 {
  background-image: url(../img/file-----173@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 32.8vw;
  position: absolute;
  right: 11.63vw;
  top: 251.7vw;
  width: 55.25vw;
}

.sp-1 .x176-1 {
  height: 26.75vw;
  position: absolute;
  right: calc(48.86% - 24.31vw);
  top: 441.06vw;
  width: 49.78vw;
}

.sp-1 .place-1 {
  color: var(--white);
  font-family: var(--font-family-alfresco);
  font-size: 13.14vw;
  height: calc(100% - 3.61vw);
  left: 0.81vw;
  letter-spacing: 0;
  line-height: 22.91vw;
  top: 1.86vw;
  transform: rotate(4.66deg);
  width: calc(100% - 1.51vw);
}

.sp-1 .x175-1 {
  bottom: 1.98vw;
  height: 11.05vw;
  position: absolute;
  right: calc(49.12% - 9.42vw);
  width: 19.19vw;
}

.sp-1 .x192 {
  height: 100%;
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: calc(100% - 6.28vw);
}

.sp-1 .x193 {
  bottom: calc(35.05% - 2.21vw);
  height: 6.28vw;
  left: calc(46.74% - 1.74vw);
  object-fit: cover;
  position: absolute;
  width: 3.72vw;
}

.sp-1 .x194 {
  bottom: calc(28.46% - 1.05vw);
  height: 3.84vw;
  object-fit: cover;
  position: absolute;
  right: 1.98vw;
  width: 7.44vw;
}

.sp-1 .x195 {
  bottom: calc(41.29% - 1.51vw);
  height: 3.72vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  width: 2.44vw;
}

.sp-1 .x196 {
  bottom: 0;
  height: 8.37vw;
  object-fit: cover;
  position: absolute;
  right: calc(48.44% - 14.31vw);
  width: 29.43vw;
}

.sp-1 .place-2 {
  color: var(--white);
  font-family: var(--font-family-menobanner-regular);
  font-size: 11.27vw;
  height: 13.73vw;
  letter-spacing: 2.25vw;
  line-height: 19.72vw;
  right: calc(49.24% - 24.66vw);
  text-align: center;
  top: 367.09vw;
  width: 50.13vw;
}

.sp-1 .x78-1 {
  bottom: 177.84vw;
  height: 55.95vw;
  left: 0;
  object-fit: cover;
  position: absolute;
  width: calc(100% - 0.23vw);
}

.sp-1 .x79 {
  bottom: 178.31vw;
  height: 58.97vw;
  left: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.sp-1 .x50 {
  bottom: 257.87vw;
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: 9.65vw;
  width: 15.0vw;
}

.sp-1 .x81-1 {
  height: 1.78vw;
  margin-top: 0;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x80 {
  align-self: flex-end;
  height: 2.89vw;
  margin-bottom: 0;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .report {
  bottom: 248.1vw;
  height: 10.12vw;
  letter-spacing: 0.5vw; /* 文字間を縮小 */
  line-height: 14.55vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 8.5vw; /* フォントサイズを縮小 */
  width: 100%; /* 中央寄せ */
  left: 0; /* 中央寄せ */
}

.sp-1 .text-88 {
  bottom: 242.75vw;
  height: 4.19vw;
  letter-spacing: 0;
  line-height: 6.94vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 4.5vw; /* フォントサイズを縮小 */
  width: 100%; /* 中央寄せ */
  left: 0; /* 中央寄せ */
}

.sp-1 .place-3 {
  bottom: 162.37vw;
  height: 10.12vw;
  letter-spacing: 0.5vw; /* 文字間を縮小 */
  line-height: 14.55vw;
  text-align: center;
  font-size: 8.5vw; /* フォントサイズを縮小 */
  width: 100%; /* 中央寄せ */
  left: 0; /* 中央寄せ */
  position: absolute;
  white-space: nowrap;
}

.sp-1 .text-89   {
  bottom: 157.02vw;
  height: 4.19vw;
  letter-spacing: 0;
  line-height: 6.94vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 4.5vw; /* フォントサイズを縮小 */
  width: 100%; /* 中央寄せ */
  left: 0; /* 中央寄せ */
}

.sp-1 .x60 {
  background-color: var(--mystic);
  border-radius: 2.6vw;
  bottom: 110.96vw;
  height: 16.17vw;
  position: absolute;
  right: calc(49.58% - 28.03vw);
  width: 56.53vw;
}

.sp-1 .text-9 {
  height: 4.89vw;
  left: calc(49.74% - 11.63vw);
  letter-spacing: 0;
  line-height: 8.26vw;
  position: absolute;
  text-align: center;
  top: calc(35.57% - 1.74vw);
  white-space: nowrap;
  width: 23.5vw;
}

.sp-1 .x61 {
  background-color: var(--mystic);
  border-radius: 2.6vw;
  bottom: 72.93vw;
  height: 16.17vw;
  left: calc(49.77% - 28.15vw);
  position: absolute;
  width: 56.53vw;
}

.sp-1 .x62 {
  background-color: var(--mystic);
  border-radius: 2.6vw;
  bottom: 91.89vw;
  height: 16.17vw;
  position: absolute;
  right: calc(49.58% - 28.03vw);
  width: 56.53vw;
}

.sp-1 .x63 {
  background-color: var(--mystic);
  border-radius: 2.6vw;
  bottom: 53.97vw;
  height: 16.17vw;
  left: calc(49.77% - 28.15vw);
  position: absolute;
  width: 56.53vw;
}

.sp-1 .x66 {
  bottom: 0.23vw;
  display: flex;
  height: 53.16vw;
  left: 0;
  position: absolute;
  width: calc(100% - 0.23vw);
}

.sp-1 .x65 {
  display: flex;
  flex: 1;
  overflow: hidden;
  width: 99.8vw;
}

.sp-1 .x64 {
  flex: 1;
  margin-bottom: -15.1vw;
  margin-left: 0;
  margin-right: -0.2vw;
  margin-top: 8.82vw;
  position: relative;
  width: 100.0vw;
}

.sp-1 .x83-1 {
  height: calc(100% - 3.49vw);
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 3.49vw;
  width: calc(100% - 0.23vw);
}

.sp-1 .x84 {
  height: calc(100% - 0.47vw);
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x44 {
  background-color: #8dc1ff;
  bottom: 0.23vw;
  height: 4.65vw;
  left: 0;
  position: absolute;
  width: 100%;
}

.sp-1 .text-94 {
  bottom: 7.44vw;
  height: 23.38vw;
  left: 16.98vw;
  letter-spacing: 0.26vw;
  line-height: 6.51vw;
  overflow: hidden;
  position: absolute;
  text-align: center;
  width: calc(100% - 32.22vw);
}

.sp-1 .span0 {
  letter-spacing: 0.37vw;
}

.sp-1 .span1 {
  color: var(--white);
  font-family: var(--font-family-midmima1std-bold-83pv-rksj-h);
  font-size: 2.56vw;
  font-weight: 700;
}

.sp-1 .x67 {
  background-color: #31b5ff;
  border-radius: 2.6vw;
  bottom: 134.69vw;
  height: 13.38vw;
  position: absolute;
  right: calc(49.20% - 27.92vw);
  width: 56.76vw;
}

.sp-1 .x46 {
  height: calc(100% - 0.81vw);
  left: calc(45.22% - 11.98vw);
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: 26.52vw;
}

.sp-1 .x85 {
  bottom: calc(47.99% - 26.87vw);
  height: 55.95vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: calc(100% - 0.23vw);
}

.sp-1 .x86 {
  bottom: calc(48.05% - 28.38vw);
  height: 58.97vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.sp-1 .x68 {
  bottom: calc(49.43% - 2.91vw);
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: 9.77vw;
  width: 15.0vw;
}

.sp-1 .x88 {
  height: 1.78vw;
  margin-left: 0;
  margin-top: 0;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x87 {
  align-self: flex-end;
  height: 2.89vw;
  margin-bottom: 0;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .text-95 {
  bottom: calc(49.24% - 10vw); /* 位置を微調整 */
  height: auto;
  letter-spacing: 0;
  line-height: 1.2;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 8.5vw;
  width: 100%;
  left: 0;
}

.sp-1 .number-2 {
  bottom: calc(49.24% - 13.00vw);
  /* right と width を削除 */
  font-size: 10vw;
  left: 45%;
  transform: translateX(-50%);
}

.sp-1 .text-96 {
  bottom: calc(48.05% - 12.56vw);
  height: 26.17vw;
  left: 12.45vw;
  letter-spacing: 0.4vw;
  line-height: 7.5vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  width: calc(100% - 20.01vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .text-97 {
  bottom: calc(44.74% - 12.68vw);
  height: 28.38vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  overflow: hidden;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x70 {
  background-image: url(../img/file-----69-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(46.15% - 22.33vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-98 {
  bottom: calc(45.38% - 2.21vw);
  height: 4.89vw;
  left: calc(48.72% - 11.4vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 23.5vw;
}

.sp-1 .text_label-1 {
  bottom: calc(38.19% - 16.4vw);
  height: 42.8vw;
}

.sp-1 .x72 {
  background-image: url(../img/file-----71@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(39.82% - 19.31vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-99 {
  bottom: calc(39.12% - 1.86vw);
  height: 4.89vw;
  left: calc(48.55% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .text-100 {
  bottom: calc(41.51% - 15.0vw);
  height: 36.06vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x74 {
  background-image: url(../img/file-----73@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(43.02% - 20.82vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-101 {
  bottom: calc(42.29% - 2.09vw);
  height: 4.89vw;
  left: calc(48.00% - 24.54vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 51.18vw;
}

.sp-1 .x78-2 {
  bottom: calc(44.16% - 4.65vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x75 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x53 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .text-1 {
  height: 4.19vw;
  left: calc(48.05% - 13.38vw);
  letter-spacing: 0;
  line-height: 6.94vw;
  position: absolute;
  text-align: center;
  top: calc(28.69% - 1.16vw);
  white-space: nowrap;
  width: 27.92vw;
}

.sp-1 .x77 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x76 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x89 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0.12vw;
  width: 1.51vw;
}

.sp-1 .x90 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x82 {
  bottom: calc(40.97% - 4.3vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x79-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x54 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x81-2 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x80-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x91 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x92 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x93 {
  bottom: calc(28.37% - 15.82vw);
  height: 55.95vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: calc(100% - 0.23vw);
}

.sp-1 .x94 {
  bottom: calc(28.40% - 16.75vw);
  height: 58.97vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.sp-1 .x83-2 {
  bottom: calc(30.08% - 1.74vw);
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: 9.77vw;
  width: 15.0vw;
}

.sp-1 .x96 {
  height: 1.78vw;
  margin-left: 0;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x95 {
  align-self: flex-end;
  height: 2.89vw;
  margin-bottom: 0;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .text-104{
  bottom: calc(29.88% - 3vw); /* 位置を微調整 */
  height: auto;
  letter-spacing: 0;
  line-height: 1.2;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 8.5vw;
  width: 100%;
  left: 0;
}

.sp-1 .number-3 {
  bottom: calc(29.79% - 2.86vw);
  /* right と width を削除 */
  font-size: 10vw;
  left: 45%;
  transform: translateX(-50%);
}

.sp-1 .text-105 {
  bottom: calc(28.59% - 7.44vw);
  height: 26.17vw;
  left: 12.45vw;
  letter-spacing: 0.4vw;
  line-height: 7.5vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  width: calc(100% - 20.01vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .text-106 {
  bottom: calc(24.89% - 11.52vw);
  height: 46.29vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x85-1 {
  background-image: url(../img/file-----84-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(26.57% - 12.91vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-107 {
  bottom: calc(26.02% - 1.28vw);
  height: 4.89vw;
  left: calc(48.72% - 11.4vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 23.5vw;
}

.sp-1 .text-108 {
  bottom: calc(21.29% - 10.82vw);
  height: 50.71vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  overflow: hidden;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x87-1 {
  background-image: url(../img/file-----86-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(23.06% - 11.17vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-109 {
  bottom: calc(22.56% - 1.05vw);
  height: 4.89vw;
  left: calc(48.72% - 11.4vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 23.5vw;
}

.sp-1 .x91-1 {
  bottom: calc(24.38% - 2.56vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x59 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x90-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x89-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x97 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x98 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x95-1 {
  bottom: calc(20.75% - 2.21vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x92-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x60-1 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x94-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x93-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x99 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x100 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x101 {
  bottom: 645.19vw;
  height: 55.95vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: calc(100% - 0.23vw);
}

.sp-1 .x102-1 {
  bottom: 645.66vw;
  height: 58.97vw;
  left: -0.12vw;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.sp-1 .x96-1 {
  bottom: 721.73vw;
  display: flex;
  flex-direction: column;
  height: 5.93vw;
  justify-content: space-between;
  position: absolute;
  right: 9.77vw;
  width: 15.0vw;
}

.sp-1 .x104 {
  height: 1.78vw;
  margin-left: 0;
  object-fit: cover;
  width: 8.06vw;
}

.sp-1 .x103 {
  align-self: flex-end;
  height: 2.89vw;
  margin-right: 0;
  object-fit: cover;
  width: 7.73vw;
}

.sp-1 .text-112 {
  bottom: 710.52vw; 
  height: auto;
  letter-spacing: 0;
  line-height: 1.2;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  font-size: 8.5vw;
  width: 100%;
  left: 0;
}

.sp-1 .number-4 {
  bottom: calc(19.45% - 0vw);
  /* right と width を削除 */
  font-size: 10vw;
  left: 50%;
  transform: translateX(-50%);
}

.sp-1 .text-113 {
  bottom: 661.59vw;
  height: 26.17vw;
  left: 12.45vw;
  letter-spacing: 0.4vw;
  line-height: 7.5vw; /* 行間を調整しました */
  position: absolute;
  text-align: center;
  width: calc(100% - 20.01vw);
  font-size: 4.0vw; /* フォントサイズを調整しました */
}

.sp-1 .text_label-2 {
  bottom: 537.6vw;
  height: 31.29vw;
}

.sp-1 .x98-1 {
  background-image: url(../img/file-----97@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 582.38vw;
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-114 {
  bottom: 574.24vw;
  height: 4.89vw;
  left: calc(48.55% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .x5km {
  bottom: 300.09vw;
  height: 34.78vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  overflow: hidden;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x100-1 {
  background-image: url(../img/file-----99@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 348.36vw;
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-115 {
  bottom: 340.22vw;
  height: 4.89vw;
  left: calc(48.17% - 22.45vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 46.53vw;
}

.sp-1 .x104-1 {
  bottom: 526.55vw;
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x101-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x65-1 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x103-1 {
  bottom: calc(50.00% - 1.63vw);
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  width: 3.26vw;
}

.sp-1 .x102-2 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x105 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x106 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .text_label-3 {
  bottom: 419.08vw;
  height: 34.78vw;
}

.sp-1 .x106-1 {
  background-image: url(../img/file-----105@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 467.35vw;
  display: flex;
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .x68-1 {
  border: 0.12vw solid;
  border-color: #c9caca;
  border-radius: 3.71vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 76.68vw;
}

.sp-1 .text-117 {
  bottom: 459.09vw;
  height: 4.89vw;
  left: calc(48.55% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .x110 {
  bottom: 407.56vw;
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x107 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x69 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x109 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x108 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x107-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x108-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x114 {
  bottom: 288.81vw;
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x111 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x70-1 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x113 {
  bottom: calc(50.00% - 1.63vw);
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  width: 3.26vw;
}

.sp-1 .x112 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x109-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x110-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x118 {
  bottom: calc(37.57% - 3.95vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x115 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x71 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x117-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x116 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x111-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0.12vw;
  width: 1.51vw;
}

.sp-1 .x112-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .b {
  bottom: calc(34.97% - 9.89vw);
  height: 28.38vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  overflow: hidden;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x120-1 {
  background-image: url(../img/file-----119@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(36.32% - 17.56vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-121 {
  bottom: calc(35.66% - 1.74vw);
  height: 4.89vw;
  left: calc(48.55% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .text-122 {
  bottom: calc(31.64% - 12.56vw);
  height: 39.66vw;
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  overflow: hidden;
  position: absolute;
  width: calc(100% - 23.84vw);
}

.sp-1 .x122-1 {
  background-image: url(../img/file-----121@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: calc(33.19% - 16.05vw);
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  width: calc(100% - 23.5vw);
}

.sp-1 .text-123 {
  bottom: calc(32.57% - 1.63vw);
  height: 4.89vw;
  left: calc(48.55% - 15.82vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .x126-1 {
  bottom: calc(34.43% - 3.61vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x123-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x76-1 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x125-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x124-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x113-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x114-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x130-1 {
  bottom: calc(31.03% - 3.26vw);
  height: 10.47vw;
  left: calc(50.00% - 29.54vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x127-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x77-1 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x129-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x128-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x115-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x116-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .text-126 {
  height: 28.38vw;
  left: 11.63vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(42.16% - 11.98vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x236 {
  background-image: url(../img/file-----152@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.17vw;
  position: absolute;
  top: calc(40.67% - 19.66vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-127 {
  height: 4.89vw;
  left: calc(47.89% - 6.75vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(41.61% - 1.98vw);
  white-space: nowrap;
  width: 14.19vw;
}

.sp-1 .text-128 {
  height: 56.88vw;
  left: 12.1vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(49.00% - 27.92vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x234 {
  background-image: url(../img/file-----154@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.63vw;
  position: absolute;
  top: calc(47.17% - 22.8vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-129 {
  height: 4.89vw;
  left: calc(47.91% - 15.59vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(48.03% - 2.33vw);
  white-space: nowrap;
  width: 32.57vw;
}

.sp-1 .text-130 {
  height: 36.06vw;
  left: 12.56vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(45.40% - 16.4vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x237 {
  background-image: url(../img/file-----156@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 12.1vw;
  position: absolute;
  top: calc(43.84% - 21.29vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .x238 {
  height: 10.47vw;
  left: calc(47.96% - 28.26vw);
  position: absolute;
  top: calc(42.81% - 4.42vw);
  width: 58.97vw;
}

.sp-1 .x191-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x114-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x193-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x192-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x203 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x204 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x235 {
  bottom: calc(49.95% - 5.23vw);
  height: 10.47vw;
  left: calc(48.96% - 28.85vw);
  position: absolute;
  width: 58.97vw;
}

.sp-1 .x199 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x116-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x201 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x200 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x207 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x208 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .text-133 {
  height: 4.89vw;
  left: calc(48.34% - 20.24vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(44.74% - 2.21vw);
  white-space: nowrap;
  width: 41.87vw;
}

.sp-1 .x239 {
  height: 10.47vw;
  position: absolute;
  right: calc(49.96% - 29.54vw);
  top: calc(46.04% - 4.77vw);
  width: 58.97vw;
}

.sp-1 .x115-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x197 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x196-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x205 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x206 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .text-135 {
  height: 19.42vw;
  left: 12.1vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(32.15% - 6.28vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x242 {
  background-image: url(../img/file-----148-1x-png@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.63vw;
  position: absolute;
  top: calc(30.69% - 14.89vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-136 {
  height: 4.89vw;
  left: calc(48.45% - 4.65vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(31.74% - 1.51vw);
  white-space: nowrap;
  width: 9.54vw;
}

.sp-1 .text-137 {
  height: 8.61vw;
  left: 11.05vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  text-align: center !important;
  top: calc(29.42% - 2.56vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .himetatsu {
  height: 5.35vw;
  left: calc(45.17% - 22.33vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(29.15% - 1.51vw);
  white-space: nowrap;
  width: 49.55vw;
}

.sp-1 .x241 {
  height: 10.47vw;
  left: calc(46.44% - 27.45vw);
  position: absolute;
  top: calc(29.71% - 3.14vw);
  width: 58.97vw;
}

.sp-1 .x177-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x109-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x179-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x178-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x197-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x198 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x244 {
  height: 10.47vw;
  left: calc(48.96% - 28.85vw);
  position: absolute;
  top: calc(32.68% - 3.37vw);
  width: 58.97vw;
}

.sp-1 .x181-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x110-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x183-1 {
  bottom: calc(50.00% - 1.63vw);
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  width: 3.26vw;
}

.sp-1 .x182-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x199-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x200-1 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .text-140 {
  height: 56.99vw;
  left: 12.1vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(35.63% - 20.35vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x243 {
  background-image: url(../img/file-----185@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 11.63vw;
  position: absolute;
  top: calc(33.85% - 16.4vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .text-141 {
  height: 4.89vw;
  left: calc(48.05% - 13.38vw);
  letter-spacing: 0;
  line-height: 8.11vw;
  position: absolute;
  text-align: center;
  top: calc(34.86% - 1.74vw);
  white-space: nowrap;
  width: 27.92vw;
}

.sp-1 .x245 {
  height: 10.47vw;
  left: calc(48.96% - 28.85vw);
  position: absolute;
  top: calc(36.84% - 3.84vw);
  width: 58.97vw;
}

.sp-1 .x187-1 {
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.sp-1 .x113-2 {
  background-color: var(--white);
  border: 0.12vw solid;
  border-color: var(--gondola);
  border-radius: 5.21vw;
  flex: 1;
  margin-bottom: -0.06vw;
  margin-left: -0.06vw;
  margin-right: -0.06vw;
  margin-top: -0.06vw;
  width: 59.15vw;
}

.sp-1 .x189-1 {
  display: flex;
  height: 3.26vw;
  position: absolute;
  right: 5.0vw;
  top: calc(50.00% - 1.63vw);
  width: 3.26vw;
}

.sp-1 .x188-1 {
  flex: 1;
  position: relative;
  width: 3.27vw;
}

.sp-1 .x201-1 {
  height: 1.51vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: 0;
  width: 1.51vw;
}

.sp-1 .x202 {
  height: calc(100% - 0.35vw);
  left: 0.12vw;
  object-fit: cover;
  position: absolute;
  top: 0.35vw;
  width: calc(100% - 0.35vw);
}

.sp-1 .x240 {
  background-image: url(../img/file-----146@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 48.39vw;
  left: 10.58vw;
  position: absolute;
  top: calc(28.06% - 13.61vw);
  width: calc(100% - 23.5vw);
}

.sp-1 .x144-1 {
  background-color: var(--white);
  border-radius: 3.26vw;
  bottom: 197.15vw;
  height: 26.87vw;
  position: absolute;
  right: 13.61vw;
  width: 70.49vw;
}

.sp-1 .kevinzhoutw {
  bottom: 213.09vw;
  height: 6.05vw;
  letter-spacing: 0;
  line-height: 4.89vw;
  position: absolute;
  right: calc(47.71% - 15.94vw);
  width: 33.5vw;
}

.sp-1 .span1-1 {
  color: var(--gray);
  font-family: var(--font-family-dejima-mincho);
  font-size: 2.79vw;
}

.sp-1 .kevin  {
  bottom: 215.53vw;
  height: 4.65vw;
  letter-spacing: 0;
  line-height: 6.94vw;
  position: absolute;
  right: 17vw; /* 右からの位置を固定値に微調整 */
  text-align: right; /* 右揃えに変更 */
  white-space: nowrap;
  width: auto; /* 幅を自動調整に変更 */
  font-size: 4.8vw; /* フォントサイズを縮小 */
}

.sp-1 .x52 {
  background-image: url(../img/file-----51@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 212.97vw;
  height: 7.33vw;
  left: calc(27.30% - 1.98vw);
  position: absolute;
  width: 7.21vw;
}

.sp-1 .text-143 {
  bottom: 199.25vw;
  color: var(--gray);
  font-family: var(--font-family-midmima1std-bold-83pv-rksj-h);
  font-size: 2.33vw;
  font-weight: 700;
  height: 14.31vw;
  letter-spacing: 0;
  line-height: 4.07vw;
  position: absolute;
  right: calc(43.51% - 23.96vw);
  width: 55.13vw;
}

.sp-1 .text-144 {
  height: 22.45vw;
  left: 11.63vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  top: calc(24.35% - 5.47vw);
  width: calc(100% - 23.84vw);
}

.sp-1 .x278 {
  background-image: url(../img/file-----277@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  height: 6.98vw;
  position: absolute;
  right: calc(49.82% - 30.94vw);
  top: 38.38vw;
  width: 62.23vw;
}

.sp-1 .x285 {
  display: flex;
  height: 36.29vw;
  left: 11.52vw;
  position: absolute;
  top: 42.69vw;
  width: calc(100% - 22.8vw);
}

.sp-1 .x284 {
  display: flex;
  flex: 1;
  width: 77.2vw;
}

.sp-1 .x283 {
  display: flex;
  flex: 1;
  width: 77.2vw;
}

.sp-1 .x282 {
  flex: 1;
  overflow: hidden;
  position: relative;
  width: 77.2vw;
}

.sp-1 .x250 {
  height: 17.56vw;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 4.77vw;
  width: 28.61vw;
}

.sp-1 .x251 {
  height: 10.47vw;
  left: calc(38.44% - 2.44vw);
  object-fit: cover;
  position: absolute;
  top: calc(27.31% - 2.91vw);
  width: 6.28vw;
}

.sp-1 .x252 {
  height: 6.4vw;
  left: calc(46.07% - 4.54vw);
  object-fit: cover;
  position: absolute;
  top: calc(36.93% - 2.33vw);
  width: 9.89vw;
}

.sp-1 .x253 {
  height: 6.63vw;
  object-fit: cover;
  position: absolute;
  right: calc(41.59% - 3.95vw);
  top: calc(32.36% - 2.09vw);
  width: 9.42vw;
}

.sp-1 .x254 {
  height: 6.51vw;
  object-fit: cover;
  position: absolute;
  right: calc(26.04% - 3.26vw);
  top: calc(28.11% - 1.86vw);
  width: 12.56vw;
}

.sp-1 .x255 {
  height: 6.63vw;
  object-fit: cover;
  position: absolute;
  right: 8.72vw;
  top: calc(24.04% - 1.63vw);
  width: 9.42vw;
}

.sp-1 .x256 {
  height: 14.42vw;
  object-fit: cover;
  position: absolute;
  right: 1.28vw;
  top: 0.12vw;
  width: 8.49vw;
}

.sp-1 .x257 {
  height: 6.63vw;
  object-fit: cover;
  position: absolute;
  right: 0.12vw;
  top: calc(19.39% - 1.28vw);
  width: 7.21vw;
}

.sp-1 .x258 {
  bottom: 3.37vw;
  height: 18.49vw;
  left: calc(43.92% - 9.54vw);
  object-fit: cover;
  position: absolute;
  width: 21.75vw;
}

.sp-1 .x259 {
  bottom: calc(23.98% - 2.56vw);
  height: 10.47vw;
  object-fit: cover;
  position: absolute;
  right: calc(48.50% - 3.02vw);
  width: 6.28vw;
}

.sp-1 .x260 {
  bottom: calc(22.80% - 1.51vw);
  height: 6.51vw;
  object-fit: cover;
  position: absolute;
  right: calc(36.89% - 4.65vw);
  width: 12.56vw;
}

.sp-1 .x261 {
  bottom: calc(28.14% - 1.74vw);
  height: 6.16vw;
  object-fit: cover;
  position: absolute;
  right: calc(28.06% - 1.16vw);
  width: 4.19vw;
}

.sp-1 .x281 {
  background-image: url(../img/file-----279@1x.png);
  background-position: 50% 50%;
  background-size: cover;
  bottom: 0;
  height: 14.07vw;
  opacity: 0.26;
  position: absolute;
  right: calc(42.77% - 21.17vw);
  width: 49.55vw;
}

.sp-1 .number-5 {
  height: 23.03vw;
  letter-spacing: 0;
  line-height: 11.86vw;
  opacity: 0.65;
  position: absolute;
  transform: rotate(-5.70deg);
  white-space: nowrap;
}

.sp-1 .text_label-4 {
  left: 12.45vw;
  letter-spacing: 0;
  line-height: 5.29vw;
  position: absolute;
  width: calc(100% - 23.84vw);
}

/* --- 【全コンテンツ共通】見出しのスタイル調整 --- */
.sp-1 .text-82,  .sp-1 .text-83, .sp-1 .sup, .sp-1 .text-85, .sp-1 .text-136, .sp-1 .himetatsu, .sp-1 .text-141, /* 自然・アクティブ */
.sp-1 .text-127, .sp-1 .text-133, .sp-1 .text-129, /* 伝統・文化 */
.sp-1 .text-98, .sp-1 .text-101, .sp-1 .text-99, .sp-1 .text-121, .sp-1 .text-123, /* グルメ */
.sp-1 .text-107, .sp-1 .text-109, /* 温泉 */
.sp-1 .text-114, .sp-1 .text-117, .sp-1 .text-115  /* その他スポット */
{
  font-size: 5.0vw;
  font-weight: 700;
  width: 100%;
  left: 0;
  right: auto;
  text-align: center;
  height: auto;
  line-height: 1.4;
}

/* --- 【全コンテンツ共通】説明文のスタイル調整 --- */
.sp-1 .text-81, .sp-1 .text-144, .sp-1 .text_label, .sp-1 .text-84, .sp-1 .text-135, .sp-1 .text-137, .sp-1 .text-140, /* 自然・アクティブ */
.sp-1 .text-126, .sp-1 .text-130, .sp-1 .text-128, /* 伝統・文化 */
.sp-1 .text-97, .sp-1 .text-100, .sp-1 .text_label-1, .sp-1 .b, .sp-1 .text-122, /* グルメ */
.sp-1 .text-106, .sp-1 .text-108, /* 温泉 */
.sp-1 .text_label-2, .sp-1 .text_label-3, .sp-1 .x5km /* その他スポット */
{
  font-size: 3.0vw;
  font-weight: 400;
  line-height: 5.3vw;
  text-align: left;
  width: calc(100% - 16vw);
  left: 8vw;
}

/* --- 特定の見出しと写真の間に余白を追加 --- */
.sp-1 .text-98,  /* 美貴もなか */
.sp-1 .text-101, /* 寒川水源／そうめん */
.sp-1 .text-99,  /* 貝汁味処／南里 */
.sp-1 .text-121, /* 水俣ちゃんぽん */
.sp-1 .text-123, /* みなまた和紅茶 */
.sp-1 .text-107, /* 湯の児温泉 */
.sp-1 .text-109, /* 湯の鶴温泉 */
.sp-1 .text-114, /* エコパーク水俣 */
.sp-1 .text-117, /* 道の駅みなまた */
.sp-1 .text-115  /* 湯の児チェリーライン */
{
  transform: translateY(3vw);
}

/* --- 「詳しくはこちら」ボタンのテキストを一括修正 --- */
.sp-1 .text-1 {
  /* --- フォントスタイルの調整 --- */
  font-size: 4.2vw;    /* フォントサイズを縮小 */
  letter-spacing: 0.2vw; /* 文字間を微調整 */

  /* --- 中央配置のための調整 --- */
  width: 100%;
  left: 0;
  right: auto;
  text-align: center;

  /* --- 既存のスタイルの維持 --- */
  height: 4.19vw;
  line-height: 6.94vw;
  position: absolute;
  top: calc(28.69% - 1.16vw);
  white-space: nowrap;
}

/* --- ボタンリンクの下線を消す --- */
.button-link {
  text-decoration: none;
}

/* --- ボタンのホバーアニメーション --- */
.sp-1 .x159 {
  transition: transform 0.3s ease, opacity 0.3s ease; /* アニメーションを滑らかに */
}

.sp-1 .x159:hover {
  transform: scale(1.05); /* 1.05倍に拡大 */
  opacity: 0.8;           /* 少し半透明に */
  cursor: pointer;        /* カーソルを指の形に */
}

/* --- 「関連リンク」ボタンのコンテナをFlexboxで中央揃えに --- */
.sp-1 .x60,
.sp-1 .x61,
.sp-1 .x62,
.sp-1 .x63 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1vw 3vw; /* 内側の余白を調整 */
}

/* --- 「関連リンク」ボタン内のテキストスタイルを調整 --- */
.sp-1 .text-9 {
  /* --- レイアウト関連 --- */
  position: static; /* 位置指定を解除し、親要素のFlexboxに従う */
  width: 100%;
  height: auto;

  /* --- テキスト関連 --- */
  font-size: 3.0vw; /* フォントサイズを縮小 */
  font-weight: 600; /* 少し太字に */
  color: #3D5A74; /* 文字色を調整 */
  line-height: 1.4; /* 行間を調整 */
  white-space: normal; /* テキストの折り返しを許可 */
  text-align: center;
}

/* --- 言語選択プルダウンメニューのスタイル --- */

/* 全体を囲むコンテナ */
.language-dropdown {
  position: absolute;
  top: 4.42vw;
  left: 5.23vw;
  z-index: 100;
}

/* 表示を切り替えるための裏方のチェックボックス（非表示にする） */
.language-toggle-checkbox {
  display: none;
}

/* ボタンのスタイル（labelタグを使用） */
.language-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 41.41vw;
  height: 7.44vw;
  background-color: #ffffff;
  border: 0.12vw solid #c0c0c0;
  border-radius: 3.74vw;
  font-family: 'Bahnschrift', sans-serif;
  font-size: 4.3vw;
  color: #7c7c7c;
  cursor: pointer;
  padding: 0 3vw;
  box-sizing: border-box;
}

.globe-icon {
  width: 4.97vw;
  height: 4.97vw;
  margin-right: 2vw;
}

.arrow-down {
  width: 1.5vw;
  height: 1.5vw;
  border-top: 0.5vw solid #7c7c7c;
  border-right: 0.5vw solid #7c7c7c;
  transform: rotate(135deg);
  margin-left: auto;
  transition: transform 0.3s ease;
}

/* ドロップダウンメニュー本体 */
.language-menu {
  list-style: none;
  margin: 0.5vw 0 0 0;
  padding: 0;
  background-color: #ffffff;
  border: 0.12vw solid #c0c0c0;
  border-radius: 3vw;
  width: 100%;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}

/* メニューの各項目 */
.language-menu li a {
  display: block;
  padding: 3vw 4vw;
  color: #555;
  text-decoration: none;
  font-size: 4.0vw;
  border-top: 1px solid #eee;
  transition: background-color 0.2s ease;
}

.language-menu li:first-child a {
  border-top: none;
}

.language-menu li a:hover {
  background-color: #f5f5f5;
}

/* ▼▼▼ 開閉ロジックの変更点 ▼▼▼ */
/* チェックボックスがONになったら、隣接するメニューを表示 */
.language-toggle-checkbox:checked ~ .language-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* チェックボックスがONになったら、ボタン（label）内の矢印を上向きに */
.language-toggle-checkbox:checked + .language-btn .arrow-down {
  transform: rotate(-45deg);
}

/* --- オーバーレイメニューのスタイル --- */

/* 開閉を制御するチェックボックス（非表示） */
.menu-toggle-checkbox {
  display: none;
}

/* メニューボタン */
.menu-btn {
  cursor: pointer;
  z-index: 1001; /* メニューより手前に表示 */
}

/* メニュー本体 */
.overlay-menu {
  position: fixed;
  top: 0;
  right: -80%; /* 初期状態では画面の右外に隠す */
  width: 80%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.95);
  box-shadow: -4px 0 15px rgba(0,0,0,0.1);
  z-index: 1000;
  transition: right 0.4s ease-in-out;
  padding-top: 20vw;
  box-sizing: border-box;
}

/* メニュー内のリスト */
.overlay-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* メニュー内のリンク */
.overlay-menu ul li a {
  display: block;
  padding: 4vw 8vw;
  color: #333;
  text-decoration: none;
  font-size: 4.5vw;
  border-bottom: 1px solid #eee;
  transition: background-color 0.2s;
  font-weight: bold; /* この行を追加 */
}

.overlay-menu ul li a:hover {
  background-color: #f0f0f0;
}

/* 背景を暗くする幕 */
.overlay-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999;
  
  /* 初期状態では非表示 */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s, visibility 0.4s;
}

/* ▼▼▼ メニューが開いた時のスタイル ▼▼▼ */
/* チェックボックスがONになったらメニューをスライドイン */
.menu-toggle-checkbox:checked ~ .overlay-menu {
  right: 0;
}

/* チェックボックスがONになったら背景の幕を表示 */
.menu-toggle-checkbox:checked ~ .overlay-backdrop {
  opacity: 1;
  visibility: visible;
}

/* --- スマホ用Instagramカードのホバーアニメーション --- */

/* カード本体(.x144-1)にアニメーションの準備 */
.sp-1 .x144-1 {
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

/* リンク(a.insta-card-link-sp)にマウスが乗ったら、中のカード(.x144-1)を動かす */
.sp-1 .insta-card-link-sp:hover .x144-1 {
  transform: translateY(-5px) scale(1.02); /* 少し上に移動し、わずかに拡大 */
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12); /* 影を少し濃くして浮遊感を演出 */
  cursor: pointer;
}

/* --- スマホ用 FUN! JAPAN ロゴバナーのスタイル --- */
.logo-banner-sp {
  position: absolute;
  bottom: 180vw; /* 縦の位置 */
  left: 50%;
  transform: translateX(-50%);
  width: 65vw; /* スマホ画面に合わせた横幅 */
  z-index: 10;
  transition: transform 0.3s ease; /* ホバーアニメーションの準備 */
}

/* マウスが乗った時に少し拡大するアニメーション */
.logo-banner-sp:hover {
  transform: translateX(-50%) scale(1.03);
  cursor: pointer;
}

/* バナー画像のスタイル */
.logo-banner-sp .logo-banner-image-sp {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 3vw; /* 画像の角を少し丸める */
  box-shadow: 0 1.5vw 4vw rgba(0, 0, 0, 0.15); /* 影をつけて立体感を出す */
}

/* --- スクロールアイコンのアニメーション定義 --- */
@keyframes scroll-animation {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  50% {
    transform: translateY(3vw); /* 下に3vw移動 */
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 0; /* 上に戻りながら消える */
  }
}

/* --- スマホ用メニューボタンを画面に固定（修正版） --- */
.sp-1 .x136.menu-btn {
  position: fixed !important; /* !important を付けて強制的に固定 */
  top: 3.26vw;
  right: 2.56vw;
  z-index: 1001; /* 他の要素の上に表示されるように指定 */
}

/* --- Google翻訳（英語）用のスタイル調整 --- */

/* 翻訳時にGoogleが挿入するfontタグのスタイルをリセット */
font {
  all: unset !important;
}

/* 【英語用】メインキャッチコピーの調整 */
html[lang="en"] .text-73 {
  font-size: 3.8vw; /* 文字サイズを少し小さく */
  line-height: 1.4; /* 行間を調整 */
  top: 81vw;
  width: calc(100% - 15vw);
}

/* 【英語用】「水俣の魅力を知る」ボタンの調整 */
html[lang="en"] .text-87 {
  font-size: 3.2vw; /* 文字サイズを小さく */
  letter-spacing: 0; /* 文字間を詰める */
}

/* 【英語用】各コンテンツ説明文の調整 */
html[lang="en"] .text-81,
html[lang="en"] .text-144,
html[lang="en"] .text_label,
html[lang="en"] .text-84,
html[lang="en"] .text-135,
html[lang="en"] .text-137,
html[lang="en"] .text-140 {
  font-size: 3.6vw; /* 英語は長くなる傾向があるため、少しだけ文字を小さく */
  line-height: 5.8vw;
}

/* 【英語用】「透き通る海...」のテキスト調整 */
html[lang="en"] .text-75 {
  font-size: 4.8vw; /* 文字サイズを調整 */
  line-height: 1.6; /* 行間を調整 */
}

/* 【英語用】「自然も、文化も...」のテキスト調整 */
html[lang="en"] .text-76 {
  font-size: 5.0vw; /* 文字サイズを調整 */
  line-height: 1.6;
}

.sp-1 .report-section-text-sp {
  position: absolute;
  bottom: 200vw;      /* 縦位置を調整してください */
  left: 50%;
  transform: translateX(-50%);
  width: 85%;        /* 横幅 */
  text-align: center;
  font-size: 3.5vw;   /* 文字サイズ */
  line-height: 7.5vw; /* 行間 */
  font-weight: 600;
  color: white;       /* 文字色 */
  z-index: 5;
}

/* --- スマホ版 レポートセクションのバナーリスト --- */
.sp-1 .report-banners-grid {
  position: absolute;
  bottom: 75vw; /* 全体の縦位置 (必要に応じて調整) */
  left: 50%;
  transform: translateX(-50%);
  width: 75%; /* テキストブロックと幅を合わせる */
  display: flex; /* Flexbox を使用 */
  flex-direction: column; /* 縦方向に並べる */
  align-items: center; /* 中央揃え */
  gap: 3vw; /* バナー間の隙間 */
  z-index: 10;
}

/* --- 個別のバナーコンテナ --- */
.sp-1 .logo-banner-container {
  width: 100%; /* 親要素の幅いっぱいに広げる */
  transition: transform 0.3s ease; /* ホバーアニメーションの準備 */
}

/* ホバー効果 */
.sp-1 .logo-banner-container:hover {
  transform: scale(1.03);
  cursor: pointer;
}

/* バナー画像 (クラス名を統一) */
.sp-1 .logo-banner-image {
  display: block; /* 余計な隙間を防ぐ */
  width: 100%;
  height: auto;
  border-radius: 3vw; /* 角を丸める */
  box-shadow: 0 1.5vw 4vw rgba(0, 0, 0, 0.15); /* 影をつける */
}

/* --- スマホ版 REPORTセクション全体を上に移動 --- */

/* 背景の波 上部 (元 .x78-1) */
.sp-1 .x78-1 {
  bottom: 197.84vw; /* 元 177.84vw + 10vw */
}

/* 背景の波 下部 (元 .x79) */
.sp-1 .x79 {
  bottom: 198.31vw; /* 元 178.31vw + 10vw */
}

/* 「REPORT」タイトル */
.sp-1 .report {
  bottom: 268.1vw; /* 元 248.1vw + 10vw */
}

/* 「体験レポートを見る」サブタイトル */
.sp-1 .text-88 {
  bottom: 262.75vw; /* 元 242.75vw + 10vw */
}

/* 説明文 */
.sp-1 .report-section-text-sp {
  bottom: 218vw; /* 元 215vw + 10vw */
}

/* --- スマホ版 RESERVEセクション全体を下に移動 --- */

/* 「RESERVE」タイトル */
.sp-1 .place-3 {
  bottom: 60vw; /* 元 162.37vw - 30vw */
}

/* 「予約・リンク集」サブタイトル */
.sp-1 .text-89 {
  bottom: 55vw; /* 元 157.02vw - 30vw */
}

/* 「Minamata Activity」ボタン */
.sp-1 .x67 {
  bottom: 35vw; /* 元 134.69vw - 30vw */
}

/* 関連リンクボタン (4つ) */
.sp-1 .x60 {
  bottom: 20vw; /* 元 110.96vw - 30vw */
}
.sp-1 .x62 {
  bottom: 10vw; /* 元 91.89vw - 30vw */
}
.sp-1 .x61 {
  bottom: 42.93vw; /* 元 72.93vw - 30vw */
}
.sp-1 .x63 {
  bottom: 23.97vw; /* 元 53.97vw - 30vw */
}

/* --- スマホ版 RESERVEセクション 関連リンクボタンのグリッドレイアウト --- */
.sp-1 .reserve-links-grid {
  position: absolute;
  bottom: 15vw; /* グリッド全体の縦位置 (必要に応じて調整) */
  left: 50%;
  transform: translateX(-50%);
  width: 90%; /* グリッド全体の横幅 */
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2列にする */
  gap: 3vw; /* ボタン間の隙間 */
  z-index: 10; /* 波の手前に表示させる */
}

/* 個別ボタンの位置指定を解除し、スタイルを微調整 */
.sp-1 .x60,
.sp-1 .x61,
.sp-1 .x62,
.sp-1 .x63 {
  position: static; /* 絶対位置指定を解除 */
  width: auto; /* グリッドに幅を任せる */
  height: 18vw; /* 高さを少し調整 */
  margin: 0; /* 不要なマージンをリセット */
  /* display: flexなどは維持 */
}

/* ボタン内テキストの調整（すでに設定があれば上書き） */
.sp-1 .x60 .text-9,
.sp-1 .x61 .text-9,
.sp-1 .x62 .text-9,
.sp-1 .x63 .text-9 {
    font-size: 3vw; /* 文字サイズ調整 */
    line-height: 1.4;
    padding: 1vw; /* 内側の余白 */
    box-sizing: border-box;
}

