/* --------------------------
   共通設定
--------------------------- */
.kaiho-page {
    width: 100%;              /* デフォルトはフル幅 */
    max-width: 1200px;        /* 最大幅を設定 */
    margin: 0 auto;           /* 中央寄せ */
    padding: 1rem;            /* 内側余白 */
    box-sizing: border-box;   /* パディング込みで幅を計算 */
    overflow-x: hidden;       /* 横スクロール防止 */
}


.kaiho-page p,
.kaiho-page div
 {
  margin: revert;
}



/* 画像・テーブルをレスポンシブに */
.kaiho-page img,
.kaiho-page table {
    max-width: 100%;    /* 親要素幅を超えない */
    height: auto;       /* 高さは自動 */
}





.kaiho-page table {
    display: block;
    width: 100%;
    overflow-x: auto;
/*    margin: 1.5rem 0; */
}

.kaiho-page img,
.kaiho-page svg {
  display: inline;      /* block → inline に戻す */
  vertical-align: baseline; /* middle の無効化 */
  max-width: none;      /* max-width:100% を無効化 */
  height: auto;         /* 必要なら調整 */
}


.kaiho-page th, .kaiho-page td {
  border: none;
/*  padding: 0.6rem 1rem; */
  text-align: left;
}


/* リンク */
a {
  color: #0055cc;
  text-decoration: none;
  transition: 0.2s ease;
}

a:hover {
  color: #003f99;
  text-decoration: underline;
}

.kaiho-page a:link,
.kaiho-page a:visited {
    color: #0055cc;
}


/* --------------------------
   スマホ向け（767px以下）
--------------------------- */
@media screen and (max-width: 767px) {
    .kaiho-page {
        width: 100%;       /* フル幅表示 */
        padding: 0.5rem;  /* 余白を少し減らす */
    }
}

/* --------------------------
   タブレット向け（768px～1023px）
--------------------------- */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .kaiho-page {
        width: 90%;       /* 画面幅の90% */
        padding: 0.75rem;
    }
}

/* --------------------------
   PC向け（1024px以上）
--------------------------- */
@media screen and (min-width: 1024px) {
    .kaiho-page {
        width: 80%;       /* 画面幅の8割 */
        max-width: 1200px;
        padding: 1rem;
    }
}
