/* ********** 応援する共通 ****************************** */

/* ----- コンバージョンボタン ---------- */
.support .read-more a { font-size:1.3em; padding: 1em; width: 70%; border: 3px solid #003f88; }
@media all and (max-width: 768px) {
.support .read-more a { font-size:1.1em; padding: .5em; width: 100%; }
}
.payment-failed p,.thanks-support p { text-align:center; }
@media all and (max-width: 768px) {
	.payment-failed p,.thanks-support p { text-align:left; }
}

/* ********** 応援するトップ ****************************** */





/* ********** 党員・サポーター募集 ****************************** */

.merit { line-height: 1.8em; border: 2px solid #aaa; padding-right: 1em; }

/* ----- 比較表 ---------- */
/* 外側の枠：スマホでのスクロールを制御 */
.table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; /* iOSのスクロールを滑らかに */
  margin-bottom: 20px;
}
/* テーブル本体 */
.joinus-table {
  width: 100%;             /* PCでは100%広がる */
  min-width: 700px;        /* スマホで文字が潰れないための最低幅 */
  border-collapse: collapse;
  border: 1px solid #aaa;
}
/* 共通のセル設定 */
.joinus-table th,.joinus-table td { border: 1px solid #aaa; padding: 12px 15px; text-align: left; }
/* 1行目（ヘッダー）の設定 */
.joinus-table thead th { background-color: #f2f2f2; font-size: 1.2em; font-weight: 700; text-align: center; }
/* 1列目（項目名）の設定 */
.joinus-table tbody th { background-color: #fafafa; font-weight: 600; width: 300px; /* 項目名の列幅を固定 */ }
/* リストの余白調整 */
.joinus-table ul { margin: 0; padding-left: 1.2em;  text-align:justify; }

.memberscard { width: 25%; margin-top: 10px; }

@media all and (max-width: 768px) {
	.joinus-table tbody th { width: 200px }
	.joinus-table ul { margin: 0; padding-left: 0; }
}

/* ----- 注意書きリスト ----- */
.kome-list { list-style: none; counter-reset: item; padding-left: 0;  text-align:justify; }
.kome-list li { position: relative; padding-left: 2.5em; }
.kome-list li::before {
  counter-increment: item;          /* カウンタを1ずつ増やす */
  content: "※" counter(item) " ";  /* 表示内容を「※ + 数字」に設定 */
  position: absolute;
  left: 0;                          /* 左端に固定 */
  color: #d9534f;
}
.kome-list-simple { list-style: none; padding-left: 0;  text-align:justify; }
.kome-list-simple li {
  position: relative;
  padding-left: 1.5em;  /* 「※」記号分の余白を確保 */
}
.kome-list-simple li::before {
  content: "※";         /* ここに「※」を固定で入れる */
  position: absolute;
  left: 0;
  color: #d9534f;
}

/* ------ 吹き出し ----- */

.speech-bubble-responsive {
position: relative;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 40px;
  padding: 0 20px 0 20px;
  border: 1px solid #aaa;
  border-radius: 0;
  background: transparent;
}
/* 別解：回転させた正方形で「しっぽ」を作る（透過対応） */
.speech-bubble-responsive::after {
  content: "";
  position: absolute;
  bottom: -12px; /* (高さ / 2 + 枠線) くらいの調整 */
  left: 50%;
  width: 20px;
  height: 20px;
  transform: translateX(-50%) rotate(45deg);
  border-right: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  background: #fff; /* 背景が単色ならこれが最もズレません */
}

/* ********** 寄付 ****************************** */

.donate-caution { padding: 10px 30px 30px 30px; border: 1px solid #000 !important; }
.box-atenntion-title { 
display: block;
  text-align: center!important;
  font-weight: 700!important;
  font-size: 1.4em!important;
  color: #cb171d;
  margin-top: .5em;
  margin-bottom: 1em;
}
.box-atenntion-title-h4 { 
display: block;
  text-align: center!important;
  font-weight: 600!important;
  font-size: 1.3em!important;
}
.kome-list-simple li ol li {
  padding-left:0;
}
.kome-list-simple li ol li::before {
content: none;
}