/* 基本のスタイル */
body {
  margin: 0;
  padding: 0;
}
 /* -------- FAQ アイテム -------- */
  .faq-item + .faq-item{margin-top:12px;}        /* アイテム間隔 */
.faq-item{
  width: 90%;
  margin: auto;
  font-size: small;
}
  /* — 質問バー（クリック可能） — */
  .faq-bar{
    display:flex;align-items:center;gap:8px;
    width:100%;max-width:720px;
    padding:6px 12px;
    background:#9b9b9b;color:#fff;
    border:none;
    cursor:pointer;user-select:none;
  }
  .faq-bar .q{font-weight:700;font-size:1.2rem;}
  .faq-bar .question{flex:1;line-height:1.4;}
  .faq-bar .toggle{font-size:1.35rem;font-weight:700;line-height:1;}
  .faq-bar:focus-visible{outline:2px solid #333;} /* アクセシビリティ */

  /* — 回答部 — */
  .answer{
    max-width:720px;
    padding:10px 14px 14px 40px; /* “Q” と縦位置を合わせる余白 */
    background:#eee;color:#333;
    border-radius:0 0 2px 2px;
    line-height:1.6;font-size:.9rem;
    display:none;               /* 初期状態は非表示 */
  }

  /* アイテムが開いたときの見た目 */
  .faq-item.open .answer{display:block;}
  .faq-item.open .faq-bar .toggle::before{content:"－";}
  .faq-item:not(.open) .faq-bar .toggle::before{content:"＋";}


.image-container {
  position: relative;
  display: block;
  width: 100%;
}

/* スマホ画面 */
.mb50 {
  border: 5px solid #D0643D;
  border-radius: 20px;
  margin-top: 10px;
}

/* ヘッダー全体のスタイル */
.header {
  display: flex;
  justify-content: space-between;
  align-items: center; 
  background-color: #ff6600;
  padding: 25px 20px; 
  position: sticky; 
  top: 0; 
  z-index: 1000;
}

/* 左側のテキスト部分 */
.header-left p {
  margin: 0; /* マージンを0に設定 */
  font-size: 25px; /* フォントサイズ */
  color: white; 
  font-weight: bold;/* テキストカラーを白に設定 */
}

/* 右側のリンク部分 */
.header-right {
  margin-right: 5%;
  display: flex; /* 横並びにする */
  gap: 50px; /* リンク間のスペース */
}

.header-right a {
  color: white; /* テキストカラーを白に設定 */
  text-decoration: none; /* 下線を削除 */
  font-size: 18px; /* フォントサイズ */
  font-weight: bold; /* 太字 */
}

.header-right a:hover {
  text-decoration: underline;
}

/* フッターの基本スタイル */
.footer {
  position: relative;
  width: 100%; /* 幅を100%に設定 */
  background-color: #464646; /* フッターの背景色 */
  padding: 20px 0; /* 上下のパディング */
  text-align: center; /* 文字を中央揃え */
  font-size: 14px; /* フォントサイズ */
}

/* フッター内のテキスト */
.footer p {
  margin: 0; /* マージンを0に設定 */
  font-size: 80%; /* 小さいフォントサイズ */
  color: #ffffff; 
}

/* パソコンサイズ（769px 以上） */
@media screen and (min-width: 769px) {
  .pc {
    display: block !important;
  }

  .sp {
    display: none !important;
  }

  .main {
    max-width: 80%; /* 画面幅の80%に設定 */
    margin: 0 auto; /* 中央に配置 */
    padding: 0;
  }
  

  /* .mb50の調整 */
  .mb50 {
    padding: 4vw; /* パディングも画面幅に合わせる */
  }

  /* ヘッダー画像 */
  .header-text {
    display: block; /* パソコンサイズ以上では文字のヘッダーを表示 */
}

  /* 画像のサイズ調整 */
.moji img
{
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 3%;
}
.hyou{
  position: relative;
}
.hyou .hyou-img
{
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 3%;
}
.hyou .botan1{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 27.5%;
}
.hyou .botan2{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 48%;
}
.hyou .botan3{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 69.5%;
}
.hyou-img  {
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 5%;
}
.faq-img  {
  width: 50% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 5%;
}
.jikan-img  {
  width: 70% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}

.hoshi-img  {
  width: 70% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}
.bunshou-img  {
  width: 70% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}


.botan-img  {
  width: 50% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
  margin-bottom: 2%;
}

.ranking-img{
  width: 100%; /* 画像の幅を親要素に合わせて100% */
  height: auto; /* 高さは自動調整 */
  display: block;
  margin-left: auto;
  margin-right: auto;
}
}

/* 中型デバイス（最大幅 1024px 以下） */
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  /* 中型デバイス向け調整 */
  .mb50 {
    padding: 10%;
  }
}

/* スマホサイズ（最大幅 768px 以下） */
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  .mb50 {
    padding: 5%;
  }
  .header {
    display: none; /* ヘッダーを非表示 */
  }
  .main {
    max-width: 100%; /* 画面幅の80%に設定 */
    margin: 0 auto; /* 中央に配置 */
    padding: 0;
  }
  
   /* 画像のサイズ調整 */
.moji img
{
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 3%;
}
.hyou{
  position: relative;
}
.hyou .hyou-img
{
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 3%;
}
.hyou .botan1{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 27.5%;
}
.hyou .botan2{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 48%;
}
.hyou .botan3{
  position: absolute;
  top: 91.5%;
  width: 15%;
  left: 69.5%;
}
.hyou-img  {
  width: 80% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;

}
.faq-img  {
  width: 50% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;

}
.jikan-img  {
  width: 100% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}
.hoshi-img  {
  width: 90% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}

.bunshou-img  {
  width: 100% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
}


.botan-img  {
  width: 70% !important; /* 画像の幅を80%に設定（強制） */
  height: auto !important; /* 高さは自動調整 */
  display: block !important; /* 中央揃え */
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 5%;
  margin-bottom: 2%;
}

.ranking-img{
  width: 100%; /* 画像の幅を親要素に合わせて100% */
  height: auto; /* 高さは自動調整 */
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 5%;
  max-width: 700px;
}
}
