.hsr-table {
  --hsr-table-unit: var(--u, 1px);
  --text-unit: var(--hsr-table-unit);
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  width: min(100%, var(--hsr-table-width));
  max-width: 100%;
  min-width: 0;
  margin-inline: auto;
  margin-bottom: var(--hsr-table-flow-extra, 0px);
  font-synthesis: none;
}

.hsr-table__layer {
  position: absolute;
  inset: 0;
  box-sizing: border-box;
  pointer-events: none;
}

.hsr-table__layer--shadow {
  z-index: 0;
}

.hsr-table__layer--body {
  z-index: 1;
}

.hsr-table__layer--topbar {
  z-index: 2;
}

.hsr-table__content {
  position: relative;
  z-index: var(--hsr-table-content-z, 20);
  min-width: 0;
  min-height: var(--hsr-table-min-height);
  box-sizing: border-box;
  padding: var(--hsr-table-padding-top) var(--hsr-table-padding-right) var(--hsr-table-padding-bottom) var(--hsr-table-padding-left);
}

.hsr-table__grid {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  border: 0;
  margin: 0;
  color: inherit;
}

.hsr-table__row {
  position: relative;
  height: var(--hsr-table-measured-row-height, var(--hsr-table-row-min-height));
}

.hsr-table__label,
.hsr-table__label-empty,
.hsr-table__value {
  position: relative;
  min-width: 0;
  border: 0;
  box-sizing: border-box;
  vertical-align: middle;
  padding: var(--hsr-table-cell-padding-y) var(--hsr-table-cell-padding-x);
}

.hsr-table__label,
.hsr-table__label-empty {
  padding-right: calc(var(--hsr-table-cell-padding-x) + var(--hsr-table-column-gap));
}

.hsr-table__value {
  position: static;
}

.hsr-table--type3 .hsr-table__value--place {
  padding-right: calc(var(--hsr-table-cell-padding-x) + var(--hsr-table-column-gap));
}

.hsr-table__row--divided > th,
.hsr-table__row--divided > td {
  padding-top: calc(var(--hsr-table-cell-padding-y) + var(--hsr-table-row-gap));
}

.hsr-table__pill {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: max-content;
  min-width: min(100%, var(--hsr-table-pill-width));
  max-width: 100%;
  min-height: var(--hsr-table-pill-min-height);
  margin-inline: auto;
  padding: var(--hsr-table-pill-padding-y) var(--hsr-table-pill-padding-x);
  box-sizing: border-box;
  text-align: center;
}

.hsr-table__pill-art {
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 9999px;
  background: #cfeefc;
  pointer-events: none;
}

.hsr-table__pill-art > * {
  position: absolute;
  inset: 0;
}

.hsr-table__pill > .hsr-table__text {
  white-space: nowrap;
  translate: var(--hsr-table-label-dx, 0px) var(--hsr-table-label-dy, 0px);
}

.hsr-table__pill-art--mobile,
.hsr-table__mobile-stripe {
  display: none;
}

.hsr-table__art--skinned {
  background: transparent;
}

.hsr-table__value-inner {
  min-width: 0;
  text-align: var(--hsr-table-value-align);
}

.hsr-table--value-fit .hsr-table__value-inner {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
}

.hsr-table__text {
  display: block;
  min-width: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: normal;
}

.hsr-table__text--mobile {
  display: none;
}

.hsr-table__text--rich {
  font-size: 0;
  line-height: 0;
}

.hsr-table__text--spacing-normalized,
.hsr-table__text--spacing-normalized * {
  text-spacing-trim: space-all;
}

.hsr-table__punctuation {
  font-feature-settings: "halt" 1;
}

.hsr-table__note-body {
  display: block;
}

.hsr-table__note {
  font-synthesis: none;
}

.hsr-table__note--mixed {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  text-align: left;
}

.hsr-table__layout-space {
  display: none;
}

.hsr-table__divider {
  position: absolute;
  height: var(--hsr-table-divider-height);
  top: calc(var(--hsr-table-row-gap) / 2);
  left: var(--hsr-table-divider-inset);
  right: var(--hsr-table-divider-inset);
  background: #183152;
  pointer-events: none;
}

.hsr-table__divider > * {
  position: absolute;
  inset: 0;
}

.hsr-table__divider--skinned {
  background: transparent;
}

.hsr .hsr-divider-texture--periodic > * {
  display: none;
}

@supports (width: round(down, 10px, 3px)) {
  .hsr .hsr-divider-texture.hsr-divider-texture--periodic {
    background-image: none;
  }

  .hsr .hsr-divider-texture--periodic > * {
    display: block;
  }
}

.hsr-table--body-divider .hsr-table__divider {
  left: max(var(--hsr-table-divider-inset), var(--hsr-table-body-start, calc(var(--hsr-table-label-width) + 2 * var(--hsr-table-cell-padding-x) + var(--hsr-table-column-gap))));
}

.hsr-table--type1 .hsr-table__row {
  height: auto;
}

.hsr-table--type1 .hsr-table__content {
  display: flex;
  align-items: center;
}

.hsr-table--type1 .hsr-table__value {
  padding: 0;
}

.hsr-table--type1 .hsr-table__row + .hsr-table__row > .hsr-table__value {
  padding-top: var(--hsr-table-row-gap);
}

.hsr-table--type1 .hsr-table__value-inner {
  text-align: center;
}

.hsr-table--facilities {
  --hsr-facility-gradient: linear-gradient(100deg, #f7de7f 0%, #c4e7bd 48%, #84d9f2 100%);
}

.hsr-table__row--facilities > .hsr-table__label {
  vertical-align: top;
}

.hsr-table__facility-content {
  container: hsr-facility / inline-size;
  min-width: 0;
  font-size: var(--hsr-facility-font-size);
  line-height: 1.6;
  text-align: left;
  color: #1f3a4a;
}

.hsr-table__facility-legend {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .25em .6em;
  margin: 0 0 1em;
  font-size: .75em;
  color: #4f6b7a;
}

.hsr-table__facility-legend > :first-child {
  border-radius: .25em;
  background: var(--hsr-facility-gradient);
  padding-inline: .5em;
  font-weight: 700;
}

.hsr-table__facility-group + .hsr-table__facility-group {
  margin-top: 1.35em;
}

.hsr-table__facility-character {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .25em .75em;
  box-sizing: border-box;
  width: fit-content;
  min-width: min(100%, 12em);
  max-width: 100%;
  padding: .4em 1.3em .4em .75em;
  border-left: .25em solid #4fb9d8;
  border-radius: .25em 999px 999px .25em;
  background: var(--hsr-facility-gradient);
}

.hsr-table__facility-character > .hsr-table__text {
  flex: 1 1 auto;
  max-width: 100%;
}

.hsr-table__facility-count {
  flex: none;
  padding: .1em .65em;
  border-radius: 999px;
  background: rgb(255 255 255 / 75%);
  color: #22647c;
  font-size: .75em;
  font-weight: 700;
  white-space: nowrap;
}

.hsr-table__facility-list {
  list-style: none;
  margin: 0 0 0 .85em;
  padding: 0;
}

.hsr-table__facility-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  align-items: start;
  gap: .25em 1.5em;
  margin: 0;
  padding: .7em 0 .7em 1.5em;
}

.hsr-table__facility-item + .hsr-table__facility-item {
  border-top: 1px solid #d0e7f0;
}

.hsr-table__facility-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: .125em;
  background: #5bbfdc;
}

.hsr-table__facility-item + .hsr-table__facility-item::before {
  top: -1px;
}

.hsr-table__facility-item:last-child::before {
  bottom: auto;
  height: 1.42em;
}

.hsr-table__facility-item + .hsr-table__facility-item:last-child::before {
  height: calc(1.42em + 1px);
}

.hsr-table__facility-item::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
  left: -.3125em;
  top: 1.05em;
  width: .75em;
  height: .75em;
  border-radius: 50%;
  border: .18em solid #5bbfdc;
  background: #fff;
}

.hsr-table__facility-name,
.hsr-table__facility-location {
  min-width: 0;
}

.hsr-table__facility-place {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .5em;
  align-items: start;
  min-width: 0;
}

.hsr-table__facility-tag {
  margin-top: .15em;
  border: 1px solid #86c8de;
  border-radius: .25em;
  padding: 0 .5em;
  background: #fff;
  color: #22708b;
  white-space: nowrap;
  font-size: .75em;
  line-height: 1.5;
  font-weight: 700;
}

@container hsr-facility (max-width: 20em) {
  .hsr-table__facility-item {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (min-width: 769px) {

  .hsr-table__text--spacing-normalized,
  .hsr-table__text--spacing-normalized * {
    text-spacing-trim: normal;
  }

  .hsr-table__value--intrinsic-tight > .hsr-table__value-inner > .hsr-table__text {
    margin-right: -.125px;
  }
}

@media (max-width: 768px) {
  .hsr-table__text--desktop {
    display: none;
  }

  .hsr-table__text--mobile {
    display: block;
  }

  .hsr-table {
    --hsr-table-unit: calc(var(--body-size, 14px) / 25.4);
    width: min(100%, var(--hsr-table-preferred-width, var(--hsr-table-width)));
  }

  .hsr-table__content {
    min-height: 0;
    padding-right: min(6%, var(--hsr-table-padding-right));
    padding-left: min(6%, var(--hsr-table-padding-left));
  }

  .hsr-table__grid,
  .hsr-table__grid > tbody {
    display: block;
    width: 100%;
  }

  .hsr-table__grid > colgroup {
    display: none;
  }

  .hsr-table__row {
    display: flex;
    flex-direction: column;
    gap: var(--hsr-table-stack-gap);
    height: auto;
    padding-block: var(--hsr-table-cell-padding-y);
  }

  .hsr-table__row--divided {
    margin-top: var(--hsr-table-row-gap);
  }

  .hsr-table__row > .hsr-table__label,
  .hsr-table__row > .hsr-table__value {
    display: block;
    width: 100%;
    padding: 0 var(--hsr-table-cell-padding-x);
  }

  .hsr-table__label-empty {
    display: none;
  }

  .hsr-table__label {
    order: 0;
  }

  .hsr-table__value--record {
    order: 1;
  }

  .hsr-table__value--place,
  .hsr-table__value--body {
    order: 2;
  }

  .hsr-table__value-inner,
  .hsr-table--value-fit .hsr-table__value-inner {
    width: 100%;
    max-width: 100%;
    text-align: left;
  }

  .hsr-table__divider {
    top: calc(-1 * var(--hsr-table-cell-padding-y) - var(--hsr-table-row-gap) / 2);
  }

  .hsr-table--body-divider .hsr-table__divider {
    left: var(--hsr-table-divider-inset);
  }

  .hsr-table__row--array-continuation .hsr-table__divider {
    display: none;
  }

  .hsr-table--mobile-bars .hsr-table__pill {
    width: 100%;
    max-width: 100%;
    min-height: 0;
    padding: .35em .5em;
  }

  .hsr-table--mobile-bars .hsr-table__pill > .hsr-table__text {
    white-space: pre-wrap;
    translate: var(--hsr-table-label-mobile-dx, 0px) var(--hsr-table-label-mobile-dy, 0px);
  }

  .hsr-table--mobile-bars .hsr-table__pill-art {
    border-radius: 0;
  }

  .hsr-table--mobile-bars .hsr-table__pill-art--desktop {
    display: none;
  }

  .hsr-table--mobile-bars .hsr-table__pill-art--mobile {
    display: block;
  }

  .hsr-table--mobile-bars .hsr-table__value--record .hsr-table__value-inner {
    position: relative;
    padding: .35em .5em .35em .85em;
    box-sizing: border-box;
    background: #b3daf1;
  }

  .hsr-table--mobile-bars .hsr-table__mobile-stripe {
    display: block;
    position: absolute;
    inset: 0 auto 0 0;
    width: .25em;
    background: #cfeefc;
    pointer-events: none;
  }

  .hsr-table--mobile-bars .hsr-table__mobile-stripe.hsr-table__art--skinned {
    background: transparent;
  }

  .hsr-table__mobile-stripe > * {
    position: absolute;
    inset: 0;
  }

  .hsr-table--mobile-bars .hsr-table__pill,
  .hsr-table--mobile-bars .hsr-table__pill *,
  .hsr-table--mobile-bars .hsr-table__value--record .hsr-table__value-inner,
  .hsr-table--mobile-bars .hsr-table__value--record .hsr-table__value-inner * {
    color: var(--hsr-table-profile-color, #183152) !important;
    -webkit-text-fill-color: var(--hsr-table-profile-color, #183152) !important;
    font-weight: var(--hsr-table-profile-weight, 700) !important;
  }

  .hsr-table--type1 .hsr-table__row {
    padding: 0;
  }

  .hsr-table--type1 .hsr-table__row + .hsr-table__row > .hsr-table__value {
    padding-top: var(--hsr-table-row-gap);
  }

  .hsr-table__row--facilities > .hsr-table__label .hsr-table__pill {
    text-align: left;
  }

  .hsr-table__facility-item {
    grid-template-columns: minmax(0, 1fr);
    padding-left: 1.25em;
  }

  .hsr-table__facility-character {
    width: 100%;
    min-width: 0;
    border-radius: .25em 1em 1em .25em;
    padding: .4em .8em .4em .6em;
  }

  .hsr-table__facility-list {
    margin-left: .65em;
  }
}

.hsr-table--facility-columns .hsr-table__facility-section-label {
  font-size: var(--hsr-facility-font-size);
  margin-bottom: .8em;
}

.hsr-table--facility-columns .hsr-table__facility-section-label > .hsr-table__pill {
  width: 6.76em;
  min-width: 0;
  margin-inline: 0;
}

.hsr-table--facility-columns .hsr-table__facility-content {
  container-type: normal;
  line-height: 1.328;
}

.hsr-table--facility-columns .hsr-table__facility-columns {
  display: grid;
  grid-template-columns: 7.8em minmax(0, 1fr);
  gap: .8em;
  margin-bottom: .7em;
}

.hsr-table--facility-columns .hsr-table__facility-columns-sub {
  display: grid;
  grid-template-columns: calc(1.2em + min(16.4em, (100% - 1.2em) * .55)) minmax(0, 1fr);
  gap: 1em;
  margin-left: .2em;
  min-width: 0;
}

.hsr-table--facility-columns .hsr-table__facility-columns b {
  display: block;
  box-sizing: border-box;
  min-width: 0;
  padding: .2em .6em;
  border-radius: .3em;
  background: var(--hsr-facility-gradient);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  overflow-wrap: anywhere;
}

.hsr-table--facility-columns .hsr-table__facility-columns b span {
  font-size: .85em;
}

.hsr-table--facility-columns .hsr-table__facility-group {
  display: grid;
  grid-template-columns: 7.8em minmax(0, 1fr);
  gap: .8em;
  align-items: center;
}

.hsr-table--facility-columns .hsr-table__facility-group + .hsr-table__facility-group {
  margin-top: .6em;
  padding-top: .6em;
  border-top: .065617em dashed #a9d3e2;
}

.hsr-table--facility-columns .hsr-table__facility-character {
  min-width: 0;
  width: auto;
  gap: .2em .7em;
  padding: .35em .7em .35em .6em;
  border-left-width: .33em;
  border-radius: .25em .9em .9em .25em;
  font-weight: 700;
}

#theme-02 .hsr-table--facility-columns .hsr-table__facility-character .hsr-table__text,
#theme-02 .hsr-table--facility-columns .hsr-table__facility-character .hsr-table__text * {
  font-weight: bold !important;
}

.hsr-table--facility-columns .hsr-table__facility-count {
  padding: 0 .6em;
  font-size: .78em;
}

.hsr-table--facility-columns .hsr-table__facility-list {
  min-width: 0;
  margin-left: .2em;
}

.hsr-table--facility-columns .hsr-table__facility-item {
  box-sizing: border-box;
  grid-template-columns: min(16.4em, 55%) minmax(0, 1fr);
  gap: 1em;
  align-items: center;
  padding: .45em 0 .45em 1.2em;
}

.hsr-table--facility-columns .hsr-table__facility-item + .hsr-table__facility-item {
  border-top-width: .065617em;
}

.hsr-table--facility-columns .hsr-table__facility-item::before {
  top: 0;
  bottom: 0;
  height: auto;
  width: .131234em;
}

.hsr-table--facility-columns .hsr-table__facility-item + .hsr-table__facility-item::before {
  top: -.065617em;
}

.hsr-table--facility-columns .hsr-table__facility-item:first-child::before {
  top: 50%;
}

.hsr-table--facility-columns .hsr-table__facility-item:last-child::before {
  bottom: 50%;
  height: auto;
}

.hsr-table--facility-columns .hsr-table__facility-item:only-child::before {
  display: none;
}

.hsr-table--facility-columns .hsr-table__facility-item::after {
  left: calc(.065617em - .375em);
  top: calc(50% - .375em);
  border-width: .2em;
}

.hsr-table--facility-columns .hsr-table__facility-name {
  font-weight: 700;
}

.hsr-table--facility-columns .hsr-table__facility-place {
  display: block;
  margin: 0;
}

.hsr-table--facility-columns .hsr-table__facility-location {
  font-weight: 400;
}

.hsr-table--facility-columns .hsr-table__facility-tag {
  display: none;
}

@media (max-width: 768px) {
  .hsr-table--facility-columns .hsr-table__facility-columns {
    display: none;
  }

  .hsr-table--facility-columns .hsr-table__facility-section-label > .hsr-table__pill,
  .hsr-table--facility-columns .hsr-table__label > .hsr-table__pill {
    width: 100%;
    min-width: 0;
    min-height: 0;
    padding: .25em .8em;
    text-align: left;
  }

  .hsr-table--facility-columns .hsr-table__pill > .hsr-table__text {
    white-space: pre-wrap;
  }

  .hsr-table--facility-columns .hsr-table__pill-art--desktop {
    display: none;
  }

  .hsr-table--facility-columns .hsr-table__pill-art--mobile {
    display: block;
    border-radius: .3em;
    background: var(--hsr-facility-gradient);
  }

  .hsr-table--facility-columns .hsr-table__pill-art--mobile > * {
    display: none;
  }

  .hsr-table--facility-columns .hsr-table__facility-group {
    grid-template-columns: minmax(0, 1fr);
    gap: .7em;
  }

  .hsr-table--facility-columns .hsr-table__facility-character {
    width: 100%;
  }

  .hsr-table--facility-columns .hsr-table__facility-item {
    grid-template-columns: minmax(0, 1fr);
    gap: .15em;
  }

  .hsr-table--facility-columns .hsr-table__facility-place {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .4em;
  }

  .hsr-table--facility-columns .hsr-table__facility-tag {
    display: block;
    margin-top: .2em;
  }
}
