.address-list{
  width: 100%;
  border: none;
}
.address-list th{
  border-top: none;
  border-color: var(--color-gray-medium);
  border-bottom-width: 2px;
  text-align: left;
}
.address-list td{
  border-top: none;
  border-color: var(--color-gray-medium);
  padding: 0;
}
.address-list tr:not(:last-child) th,
.address-list tr:not(:last-child) td{
  padding-bottom: 0.25em;
}
.address-list th:not(:last-child),
.address-list td:not(:last-child){
  padding-right: 1em;
}

col.name{
  width: 30%;
}
col.tel{
  width: 9em;
}

@media(width < 50rem){ /* 変則的に逆向き */
  .address-list{
    line-height: 1.4;
  }
  .address-list colgroup{
    display: none;
  }
  .address-list tr{
    border-bottom: solid thin var(--color-gray-medium);
  }
  .address-list tr:has(th){
    display: none;
  }
  .address-list td{
    display: block;
    width: 100%;
    margin: 0.5rem 0;
  }
  .address-list td:nth-child(1){
    border: none;
    margin-top: 0.75rem;
  }
  .address-list td:nth-child(2),
  .address-list td:nth-child(3){
    border-width: 0 0 0 3px;
    padding-left: 0.75rem;
  }
  .address-list td:nth-child(2){
    margin: 0;
  }
  .address-list td:nth-child(3){
    margin: 0 0 0.75rem;
  }
}