body {
  font-family: 'Noto Sans JP', sans-serif;
  margin: 0;
  padding: 0;
  color: #333;
}



/* メインコンテンツスタート */


.section1, .section3 {
  position: relative;
  text-align: center;
  color: white;
  background-size: cover;
  background-position: center;
  /* width: 100%; */
  max-width:1920px;
  max-height: 387.817px;
  height:clamp(86.9px, 0.058px + 20.196vw, 387.817px);
  box-sizing: border-box;
  /* margin-top:48px; */
  /* padding: 5% 0; 統一されたパディング */

}



.section1 {
  background: url('/assets/images/haisou/top1.jpg') no-repeat center center/cover;
  margin-top:0;

}
  

.section3 {
  background: url("/assets/images/haisou/top2.jpg") no-repeat center center/cover;
  /* margin-top: clamp(20.2px, 0.056px + 4.685vw, 90px); */
}

.section1-overlay, .section3-overlay {
  font-size: 1rem;
  letter-spacing: 0.1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: clamp(4.5px, 0.027px + 1.04vw, 20px);
  border-radius: clamp(2.2px, -0.051px + 0.523vw, 10px);
}

.section1 h1, .section3 h1 {
  margin: 0;
  font-size: clamp(19.2px, 1.654px + 4.081vw, 80px);
  white-space: nowrap;
  line-height: clamp(21.2px, 1.458px + 4.591vw, 89.61px);
  font-weight: 600;
}

.section2, .section4 {
  padding: 0 clamp(33.6px, 0.008px + 7.812vw, 150px) 0 clamp(31.6px, 0.028px + 7.342vw, 141px);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap; /* 画面が狭いときに要素を折り返す */
}

.section2{
  margin-top: clamp(10.8px, 0.064px + 2.497vw, 48px);
  margin-bottom: clamp(50px, 21.141px + 6.711vw, 150px);
}

.section4{
  margin-top:clamp(12.5px, -0.054px + 2.919vw, 56px);
  margin-bottom: clamp(43.2px, -0.031px + 10.054vw, 193px);
}




.section2-content, .section4-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap; /* 横並びを維持 */
  padding: 0px;
}


.section4-content {
  margin-top:clamp(5.6px, 0.001px + 1.302vw, 25px);
}

.section2-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.section2-content .text-content {
  flex-basis: 60%; /* 左側の幅を60%に設定 */
  /* padding-right: 20px; 画像との間にスペースを設定 */
}


.section2-content .image-content {
  flex-basis: 40%; /* 右側の幅を40%に設定 */
  /* padding-left: 20px; テキストとの間にスペースを設定 */
}

/* .section2-text {
  flex-basis: 70%; 左側のコンテンツの幅を60%に設定
} */

.section2-image {
  flex-basis: 40%; /* 右側のコンテンツの幅を40%に設定 */
}

.section4-text {
  flex-basis: 60%; /* 右側のコンテンツの幅を60%に設定 */
}

.section4-image {
  flex-basis: 40%; /* 左側のコンテンツの幅を40%に設定 */
  overflow: hidden;
}

/* 画像のスタイル */

.section2-image img {
  width: 100%;
  height: auto; /* 画像のアスペクト比を維持 */
  max-width:100%;
}


.section4-image img {
  max-width: clamp(158.6px, 0.048px + 36.872vw, 708px);
  max-height: clamp(116.2px, -0.044px + 27.034vw, 519px);
  width: 110%;
  height: 80%; /* 画像の高さを80%に設定 */
  object-fit: cover; /* 画像がコンテナを埋めるように調整 */
}


.section4-text {
  order: 2;
  flex-basis: 60%; /* 右側のコンテンツの幅を60%に設定 */
  padding: clamp(4.5px, 0.027px + 1.04vw, 20px) 0px clamp(4.5px, 0.027px + 1.04vw, 20px) clamp(22.4px, 0.005px + 5.208vw, 100px);
}


.section4-text p {
  margin:0;
  font-size: clamp(10px, 5.383px + 1.074vw, 26px);
  line-height:clamp(18px, 10.064px + 1.846vw, 45.5px);
}

.kaigo {
  /* font-size: 2.8rem; */
  /* line-height: 2; */
  color:gold;
  font-size: clamp(16px, 5.322px + 2.483vw, 53px);
  line-height: clamp(18px, -0.181px + 4.228vw, 81px);
}

.kaigo2 {
  /* font-size: 2.8rem; */
  /* line-height: 2; */
  color:yellowgreen;
  font-size: clamp(16px, 5.322px + 2.483vw, 53px);
  line-height: clamp(18px, -0.181px + 4.228vw, 81px);
}

.kaigo3 {
  /* font-size: 2.8rem; */
  /* line-height: 2; */
  color:black;
  font-size: clamp(16px, 5.322px + 2.483vw, 32px);
  line-height: clamp(18px, -0.181px + 4.228vw, 81px);
}




.kaigomoji {
  line-height: 1.8;
  margin:0;
}


.text-content {
  flex: 1; /* テキストコンテンツの幅を調整 */
  flex-basis: 70%;
  margin-right: 20px; /* テキストと画像の間にスペースを追加 */
}

.text-content p{
  /* font-size:1.5rem; */
  font-size:clamp(10px, 5.383px + 1.074vw, 26px);
  line-height: clamp(18px, 10.208px + 1.812vw, 45px);
  /* padding-left:5px; */

  
}

.kaigomoji-after{
  /* font-size:1.5rem; */
  font-size:clamp(16px, 13.114px + 0.671vw, 26px);
  line-height: clamp(18px, 10.208px + 1.812vw, 45px);
  /* padding-left:5px; */
}


.image-content {
  flex: 1; /* 画像コンテンツの幅を調整 */
  display: flex;
  flex-basis: 30%;
  justify-content: flex-end; /* 画像を右に寄せる */
}

.image-content img {
  max-width: clamp(169.6px, 0.062px + 39.427vw, 757.068px); /* 画像の最大幅を設定 */
  height:clamp(123.7px, 0.060px + 28.753vw, 552.127px);
  max-height: 552.127px; /* アスペクト比を維持 */
  margin-left:clamp(10.1px, 0.028px + 2.342vw, 45px);
  object-fit: contain;
  /* padding-right:20px; */

  
  /* min-width: 100%; */
}



#haisou::before {
  content: '';
  display: block;
  height: 75px; /* ヘッダーの高さに合わせる */
  margin-top: -75px; /* マージンを相殺して元の位置に戻す */
}

.section3-overlay {
  position: absolute;
  top: 50%; /* 背景中央 */
  left: 50%; /* 横方向の中央 */
  transform: translate(-50%, -50%); /* 正確に中央揃え */
  text-align: center;
}






/* メインコンテンツ終わり */
