@charset "UTF-8";

/* スマホ時（768px以下） */
@media (max-width: 768px) {
  /* ページ全体を横幅いっぱいに */
  html, body, #container, #wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden; /* 横スクロール防止 */
  }

  /* 画像やコンテナの不要な余白・固定幅を解除 */
  .ph_container, .photo_col, .photo_col img,
  img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto;
    margin: 0 !important;         /* ← 左右マージンリセット */
    padding: 0 !important;
    box-sizing: border-box;       /* ← 親要素を超えない */
    display: block;
  }

  /* テキストやテーブルも親幅にフィットさせる */
  .sub_p, p, table, div, section {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box;
  }
}
