.page-title {
    margin-top: 80px; /* ヘッダーの高さ分を調整 */
    text-align: center;
}

.page-title h1 {
    font-size: 36px;
    font-weight: bold;
    color: #00205F;
    margin-bottom: 4px;
}

hr{
    width: 100%;
    border: 1px solid #00205F;
    margin: 0 auto;
}

body {
    font-family: "Open Sans", sans-serif;
    line-height: 1.25;
  }
  
  table {
    border-collapse: collapse;
    margin: 30px auto;
    padding: 0;
    width: 800px;
    table-layout: fixed;
  }
  
  table tr {
    background-color: #fff;
    border: 1px solid #bbb;
    padding: .35em;
  }
  table th,
  table td {
    padding: 0.5em 1px 0.5em 1em;
    border-right: 1px solid #bbb;
  }
  table th,
  table td {
    font-size: .85em;
  }
  table thead tr{
    background-color: #eee;
  }
  .txt{
     text-align: left;
     font-size: .85em;
  }
  .price{
     text-align: right;
  }

  @media screen and (max-width: 800px) {
    table {
      border: 0;
      width:100%
    }
    table th{
      background-color: #eee;
      display: block;
      border-right: none;
    }
    table thead {
      border: none;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px;
    }
    
    table tr {
      display: block;
      margin-bottom: .625em;
    }
    
    table td {
      border-bottom: 1px solid #bbb;
      display: block;
      font-size: .8em;
      text-align: right;
      position: relative;
      padding: .625em .625em .625em 4em;
      border-right: none;
    }
    
    table td::before {
      content: attr(data-label);
      font-weight: bold;
      position: absolute;
      left: 10px;
    }
    
    table td:last-child {
      border-bottom: 0;
    }
  }
body {
    line-height: 1.7;
}