/* Asia/Tokyo, 2025-10-28 16:45(UTC+09:00) /css/hokenryou.css */
.hokenryou .meta-right {
  margin: 0;
  text-align: right;
}
.hokenryou .sp-break {
  display: none;
}
.hokenryou #plans .meta-right {
  display: none;
}
/* Lead text spacing/line-height unified in common.css */
.hokenryou .pricing-title {
  font-size: var(--st-fz, 2.4rem);
  margin: 0;
}
.hokenryou .pricing-title .hl-red {
  color: #ff0004;
}
.hokenryou .pricing-table-wrap {
  position: relative;
  margin: 0 0 2rem;
  width: 100%;
}
.hokenryou .pricing-table-wrap--mobile {
  display: none;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.hokenryou .pricing-table {
  border-collapse: collapse;
  border-spacing: 0;
  min-width: 720px;
  background: #fff;
  border: 0.1px solid #707070;
  width: 100%;
  font-size: clamp(1.9rem, 1.6rem + 0.6vw, 2.3rem);
}
.hokenryou .pricing-table-wrap--desktop .pricing-table {
  min-width: 0;
  table-layout: fixed;
  font-size: clamp(1.5rem, calc(0.72rem + 1.4vw), 2.3rem);
}
.hokenryou .pricing-table th,
.hokenryou .pricing-table td {
  padding: clamp(1.1rem, 1rem + 0.25vw, 1.5rem)
    clamp(0.8rem, 0.6rem + 0.25vw, 1.2rem);
  text-align: center;
  vertical-align: middle;
  border: 0.1px solid #707070;
  white-space: nowrap;
  height: 8rem;
}
.hokenryou .pricing-table .head-col {
  background: #d6edff;
  text-align: center;
  width: 240px;
  border: 0.1px solid #707070;
}
.hokenryou .pricing-table-wrap--desktop .pricing-table .head-col {
  width: clamp(160px, 30vw, 240px);
}
.hokenryou .pricing-table .row-amounts th:not(.head-col) {
  font-weight: 400;
}
.hokenryou .pricing-table tr:last-child .head-col {
  border-bottom: none;
}
.hokenryou .pricing-table .row-amounts th:not(.head-col) {
  background: #dcffe2;
}
.hokenryou .pricing-table .row-deductible td {
  color: #ff0004;
}
.hokenryou .pricing-table .row-fee td {
  background: #fdffcf;
  font-weight: 700;
}
.hokenryou .pricing-table .sub {
  display: block;
  font-size: 0.88em;
  margin-top: 0.2rem;
}
.hokenryou .notes {
  margin: 1.6rem 0 0;
}
.hokenryou .notes dl {
  display: grid;
  grid-template-columns: 3em 1fr;
  column-gap: 0.4em;
  row-gap: 0.4rem;
  margin: 0;
  padding: 0;
}
.hokenryou .notes dt {
  color: #a50000;
  grid-column: 1;
}
.hokenryou .notes dd {
  margin: 0;
  grid-column: 2;
}
@media (max-width: 600px) {
  .hokenryou .meta-right {
    margin: 0.5rem 0 0 0;
    font-size: var(--fs-15);
  }
  .hokenryou .pricing-table {
    min-width: 640px;
  }
  .hokenryou .sp-break {
    display: block;
  }
  .hokenryou .pricing-table th,
  .hokenryou .pricing-table td {
    padding: 0.9rem 0.6rem;
    height: 6.8rem;
  }
  .hokenryou .pricing-table .sub {
    font-size: 0.9em;
  }
}
.hokenryou .pricing-table--mobile {
  min-width: 100%;
  font-size: clamp(1.2rem, calc(0.5rem + 2.2vw), 1.9rem);
}
.hokenryou .pricing-table--mobile .sub {
  font-size: 0.82em;
  color: #666;
  margin-top: 0.2rem;
}
.hokenryou .pricing-table--mobile .fee-cell {
  background: #fdffcf;
  font-weight: 700;
}
.hokenryou .pricing-table--mobile .deductible-cell {
  color: #ff0004;
}

/* === 横スクロール UI（scroll.js 連携の最低限の見た目） === */
.table-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.table-scroll-bottom {
  height: 12px;
}
#global-scrollbar.table-scroll {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1500;
  background: #f2f6ff;
  border-top: 1px solid #cfe0ff;
}
.global-scroll-phantom {
  height: 1px;
}
.global-scroll-ind,
.local-scroll-ind {
  position: absolute;
  top: 0;
  height: 100%;
  background: #ff3b30;
  border-radius: 4px;
  opacity: 0.5;
  pointer-events: none;
}
.local-scroll-ind {
  top: 0;
}

/* === Swipeヒント（初期は常に非表示、必要時のみ表示）=== */
.table-scroll-wrapper .swipe-hint {
  display: none;
  position: absolute;
  right: 0.6rem;
  bottom: 0.6rem;
  z-index: 1400;
}
.table-scroll-wrapper .swipe-hint__img {
  width: 86px;
  height: auto;
}
.table-scroll-wrapper[data-swipe-hint="on"] .swipe-hint {
  display: block;
}
.table-scroll-wrapper .swipe-hint[aria-hidden="true"] {
  display: none;
}
