@charset "utf-8";
/* CSS Document */
/* === mobile quick fix === */
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 1.7;
  word-break: break-word;
}

/* 画像・埋め込みの横はみ出し防止 */
img, video, iframe {
  max-width: 100%;
  height: auto;
}

/* リンクやボタンを押しやすく */
a, button, input, select, textarea {
  touch-action: manipulation;
}
a {
  text-decoration-thickness: .08em;
  text-underline-offset: .2em;
}

/* よくある固定幅(例: 800px/1000px等)をスマホで解除 */
@media (max-width: 768px) {
  /* 固定幅を持ちがちな要素を強制的に縮める */
  table, tr, td, div, section, header, footer, main {
    max-width: 100% !important;
  }

  /* もし body や wrapper が固定幅なら解除 */
  body, .container, #container, .wrapper, #wrapper, #main, .main {
    width: auto !important;
    max-width: 100% !important;
  }

  /* テーブルレイアウトの横スクロール対策（保険） */
  table {
    width: 100% !important;
  }

  /* 余白を少し増やして読みやすく */
  body {
    padding: 12px;
  }

  /* 文字が小さすぎる箇所を救う（見出し以外） */
  p, td, li, span, a {
    font-size: 16px !important;
  }
}

