/* 料金表（装飾つき） */
  .opt-table {
    width: 100%;
    border-collapse: separate;         /* 角丸を効かせるため separate */
    border-spacing: 0;
    font-size: 15px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden;                  /* 角丸を可視化 */
  }
  .opt-table thead th {
    background: #0f4c81;               /* 見出し色（紺系） */
    color: #fff;
    font-weight: 700;
    text-align: left;
    padding: 14px 16px;
  }
  .opt-table td {
    padding: 16px;
    border-top: 1px solid #eef2f7;
    vertical-align: middle;            /* 縦中央揃え */
  }
  .opt-table tbody tr:nth-child(even){
    background: #fafcff;               /* うっすらゼブラ */
  }
  /* 左右カラム幅のバランス */
  .opt-table .col-name { width: 40%; }
  .opt-table .col-detail { width: 60%; }

  /* 注記スタイル */
  .note {
    display: block;
    margin-top: 4px;
    color: #475569;                    /* 文字色を少し柔らかく */
    font-size: 0.95em;
  }

  /* セクション見出しの帯（任意） */
  .opt-head {
    margin: 18px 0 10px;
    padding: 8px 12px;
    background: #e8f0ff;
    color: #0f4c81;
    font-weight: 700;
    border-radius: 6px;
  }

  /* スマホ調整 */
  @media (max-width: 640px){
    .opt-table { font-size: 14px; }
    .opt-table td { padding: 14px; }
    .opt-table .col-name, .opt-table .col-detail { width: auto; }
  }