@charset "utf-8";

body {
  background-color: rgb(255, 249, 234);
 
}

.main-heading {
  display: flex;
  justify-content: center;
}
h1 {
  color: rgb(78, 0, 0);
  font-size: 40px; /* mainタイトルの文字の大きさ */
  text-align: center; /* 文字を中央に寄せる */
  border-bottom: solid rgb(78, 0, 0);
  display: inline-block;
  margin: 20px;
}

h2 {
  color: rgb(78, 0, 0);
  font-size: 20px; /* mainタイトルの文字の大きさ */
  text-align: center; /* 文字を中央に寄せる */
  margin: 1px;
}
.sub-text p {
   color: white;
  font-size: 15px; /* 文字サイズ */
  text-align: center; /* 文字を中央に寄せる */
  line-height: 1.8; /* 行間を少し広げる*/
  max-width: 800px; /* 横に広がりすぎないよう幅を制限 */
  margin: 20px; /* 中央に配置し、下の県名との隙間を作る */
 background-color:rgb(124, 108, 108);
 border-radius: 80px;
 padding: 20px 20px;
}

.sub-text {
  color: rgb(78, 0, 0);
  display: flex;
  justify-content: center;
}
.sp-only {
  display: none;
}

img {
  max-width: 100%;
  height: auto;
}
#mapofjapan {
  position: relative;
}

.map-wrapper {
  display: flex;
  justify-content: center; /* 左右中央 */
  align-items: center; /* 上下中央（必要なら） */
  min-height: 100vh; /* 画面いっぱいの高さを持たせる */
}
.map-container {
   display: flex;
  justify-content: center; /* 左右中央 */
  align-items: center; /* 上下中央（必要なら） */
  position: relative;
  width: 1000px; /* ★重要：地域画像が収まる全体の幅を指定 */
  height: 1000px; /* ★重要：地域画像が収まる全体の高さを指定 */
  /* background: rgba(0,0,0,0.1);調整中は色をつけると位置がわかりやすい */
}
.search_img {
  position: absolute;
  right: 600px;
  top: 300px;
}
.search_img img {
  max-width: 200px;
  z-index: -10;
}

.hokkaidou_top {
  position: absolute;
  right: 30px;
  top: 20px;
  width: 350px;
}

.tohoku_top {
  position: absolute;
  right: 170px;
  top: 260px;
  width: 310px;
}
.chubu_top {
  position: absolute;
  right: 348px;
  top: 459px;
  width: 241px;
}

.kanto_top {
  position: absolute;
  right: 297px;
  top: 542px;
  width: 140px;
}
.kinki_top {
  position: absolute;
  right: 502px;
  top: 627px;
  width: 131px;
}
.shikoku_top {
  position: absolute;
  right: 600px;
  top: 690px;
  width: 131px;
}
.chugoku_top {
  position: absolute;
  right: 619px;
  top: 579px;
  width: 162px;
}
.kyusyu_top {
  position: absolute;
  right: 720px;
  top: 680px;
  width: 200px;
}
.okinawa_top {
  position: absolute;
  left: 700px;
  top: 800px;
  width: 150px;
}
.japanof6 {
  z-index: 100;
}

.btn-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 20px;
  gap: 20px;
  max-width: 1000px;
  margin: auto;
}
.btn-wrapper img:hover {
  background: rgba(240, 240, 240, 0.5);
  opacity: 0.5;
}
.btn-wrapper img {
  max-width: 300px;
}

.switch_image {
  transition: opacity 0.5s;
}

/* 2枚目の画像は最初透明 */
.switch_image img:last-of-type {
  opacity: 0;
}
/* hoverすると2枚目の画像が透明じゃなくなる */
.switch_image:hover img {
  opacity: 1;
}

/* 以下、スマホ版 */
@media screen and (max-width: 640px) {

 
 body { margin: 20px 10px; }

 h1 {
  font-size: 25px;
 }
.sub-text p {
    font-size: 12px;}

    .sp-only {
    display: inline;
  }


 .btn-box{
  max-width: 350px;
 }
.btn-wrapper img{
width: 150px;
}
 
  
  

  
  /* 親の箱を可変にする */
  .map-container {
    width: 100%;
    height: 400px; /* スマホでの地図エリアの高さ */
    margin: 0 auto;
  }

  
.search_img {
  position: absolute;
  right: 230px;
  top: 150px;
}
.search_img img {
  max-width: 100px;
  z-index: -10;
}

.hokkaidou_top {
  position: absolute;
  right: 3px;
  top: 20px;
  width: 140px;
}

.tohoku_top {
  position: absolute;
  right: 70px;
  top: 120px;
  width:105px;
}
.chubu_top {
  position: absolute;
  right: 130px;
  top: 190px;
  width: 80px;
}

.kanto_top {
  position: absolute;
 right: 112px;
  top: 218px;
  width: 50px;
}
.kinki_top {
  position: absolute;
 right: 179px;
  top: 245px;
  width: 55px;
}

.chugoku_top {
  position: absolute;
  right: 228px;
  top: 220px;
  width: 80px;
}
.shikoku_top {
  position: absolute;
right: 228px;
  top: 275px;
  width: 66px;
}

.kyusyu_top {
  position: absolute;
 right: 278px;
  top: 270px;
  width: 100px;
}
.okinawa_top {
  position: absolute;
 left: 230px;  /* 九州(right: 278px)のさらに左へ */
  top: 300px;    /* 九州(top: 270px)より下へ */
  width: 60px;
 
  z-index: 100;
}

  

.btn-wrapper {
min-width: auto;
}


}
