*, *::before, *::after {
  box-sizing: border-box;
}
:root {
  --bg: #f4f0ea;
  --bg-tone: hsl(36, 31%, 89%);
  /* white */
  --bg: #fff;
  --bg-tone: #f7f7f7;
  --bg-tone: #ebebeb;
  --color-text: #333;
  --color-link: #053bbc;
  --color-gray: #bbb;
  --color-th-gray: #37474f;
  --color-ivory: #d9d6ca;
  --color-theme-green: #006400;
  --width-gate: 22px;
  --height-bottom-nav: 80px;
  --height-header: 35px;
}

html {
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  background: var(--bg);
  color: var(--color-text);
  font-family: serif;
  font-size: 100%;
}
body {
  padding: 0;
  margin:  0;
}
header, nav, section {
  padding: 0 0.5rem;
}
main {
  margin: 10px 0 0;
  min-height: 100vh;
}
h1, h2, h3 {
  display: flex;
  flex-wrap: wrap;
  gap: 0 .5rem;
  align-items: center;
  font-family: hiragino kaku gothic pron, sans-serif;
}
h1 {
  font-size: 1.2rem;
  margin: 0;
}
#race-title {
  font-size: 1rem;
}
h2 {
  font-size: 1.1rem;
}
.indiv {
  padding: 0 .5rem;
  margin: 1rem 0 0;
}

a {
  color: var(--color-link);
}
.u {
  color: var(--color-link);
  text-decoration: underline;
}
.noDeco {
  color: inherit;
  text-decoration: none;
}
li a {
  display: block;
  padding-block: .5rem;
  border: 0;
  text-decoration: underline;
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.g-filter {
  background: var(--bg-tone);
  border: 1px solid var(--color-gray);
  border-radius: 2px;
  padding: .3rem .6rem;
  color: #333;
  font-family: sans-serif;
}
.race-list-g {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
}
.race-list-g-v {
  list-style-type: none;
  padding: 0;
}
.g-item {
  border-bottom: 1px solid var(--color-gray);
  width: 50%;
}
.g-item-v {
  border-bottom: 1px solid var(--color-gray);
}
.g-link {
  display: flex;
  align-items: start;
  padding-block: .5rem;
  border: 0;
  text-decoration: none;
  width: 100%;
}
.thisWeekDate {
  color: #000;
  margin: .15rem .1rem;
}
time {
  white-space: nowrap;
}

img {
  display: block;
  border: none;
  box-sizing: border-box;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  vertical-align: bottom;
}

.ad {
  margin-block: 2rem;
  min-height: 370px;
}

/* header */
#global-header {
  border-bottom: inset 1px #ccc;
  background: var(--color-theme-green);
  color: #fff;
  padding: .3rem .5rem;
  width: 100%;
}
#site-title {
  font-style: normal;
  font-weight: bold;
  font-size: 1rem;
  font-family: serif;
}
#header-link {
  display: block;
  padding: .3rem .5rem;
  width: 100%;
  text-decoration: none;
  color: inherit;
}
#sticky-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: var(--bg);
  border-bottom: solid 1px var(--color-gray);
}

/* global-nav */
#menu {
  margin-block-start: 5rem;
  padding: 1rem .5rem;
  border-top: 1px solid var(--color-gray);
  height: 100vh;
}
#menu-title {
  font-size: 1rem;
  margin: 0;
}
#menu-list {
  padding-inline-start: 2rem;
}
.menu-item {
  font-family: sans-serif;
  font-weight: bold;
  border-bottom: 1px solid var(--color-gray);
}
.menu-link {
  display: block;
  padding-block: .5rem;
  border: 0;
  text-decoration: underline;
}
#to-menu {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  padding: .3rem;
  /* opacity: .8; */
  font-family: sans-serif;
  font-weight: bold;
}
#nav-top {
  margin: 10px 0 0;
}
.breadcrumbs-container {
  display: flex;
  flex-wrap: wrap;
  background: var(--bg-tone);
  border-bottom: solid 1px #d6d6d6;
  margin: 0;
}
.breadcrumbs {
  display: flex;
  list-style-type: none;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.breadcrumbs-2nd::before {
  content: ">";
  color: #666;
  margin: 0 3px 0 8px;
}
.breadcrumb {
  display: inline-block;
  white-space: normal;
  padding-block: 0;
}
.link-option::before {
  content: "|";
  color: #666;
  margin: 0 10px;
}

.related {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px .5rem; 
}
#anchor-box {
  position: fixed;
  right: 0;
  bottom: 0;
  padding: .3rem 0;
  border: solid 1px var(--color-gray);
  background: var(--color-ivory);
  z-index: 9;
}
/* ページ下部 ページ内リンク */
#anchor {
  position: fixed;
  bottom: 0;
  left: 0;
  background: var(--color-ivory);
  border-top: solid 1px var(--color-gray);
  width: 100%;
  padding: .3rem 0;
  z-index: 9;
}
.a-btn {
  padding: .3rem .5rem;
  /* border: solid 2px var(--color-gray); */
  background: inherit;
  font-family: sans-serif;
  font-weight: bold;
}
.pickup {
  font-family: sans-serif;
}
.pickup::after {
  content: '＊';
  text-decoration: none;
  display: inline-block;
  color: red;
  margin: 0 0 0 .5rem;
}

/* yearly nav */
.pflex-link,
#yearly {
  display: flex;
  flex-wrap: wrap;
  font-family: sans-serif;
  font-size: 1.1rem;
  gap: .8rem;
}
.yearly-link {
  width: 20%;
  flex-grow: 1;
}

.sunday {
  color: #ee0000;
}
.saturday {
  color: blue;
}

.virtual-space {
  position: relative;
  z-index: 9;
  background: var(--bg);
  padding: 0 0 10px; /* 実際に取りたい幅 */
  margin: 0 0 -11px; /* 重ねて打ち消すために1px足す */
}
.virtual-space-tiny {
  position: relative;
  z-index: 9;
  background: var(--bg);
  padding: 0 0 10px;
  margin: 0 0 -1px;
}
/* 常に縦スクロール */
#container-h,
#container-s,
#container-n,
#container-c {
  position: relative;
  background: inherit;
  border-bottom: solid 1px var(--color-gray);
  border-right: solid 1px var(--color-gray);
  height: 550px;
  margin: 11px 0;
  overflow-y: auto;
  overflow-x: auto;
  overscroll-behavior: none;
  width: 100%;
  z-index: 1;
  box-shadow: 1px 1px 5px #ddd;
}
#container-c {
  margin: 1px 0 0;
}

/* 画面幅が狭いときだけ縦スクロール */
.scroll {
  position: relative;
  overflow-y: auto;
  overflow-x: auto;
  margin: 0 0 60px;
  /* height: 650px; */
  height: 600px;
  z-index: 1;
  /* box-shadow: 1px 0 5px; */
  border-bottom: solid 1px var(--color-gray);
  overscroll-behavior: none;
}
/* 画面幅が狭いときだけ横スクロール */
.scroll-x {
  overflow-x: auto;
  margin: .6rem 0;
}

/* race page */
#title-box {
  display: flex;
  align-items: end;
  gap: 5px;
}
.info, .condition {
  overflow-x: auto;
  white-space: nowrap;
  font-size: .9rem;
  line-height: 1;
}
.youtube {
  display: inline-block;
  font-size: .8rem;
  color: var(--color-text);
  text-decoration: none;
  line-height: 1.4;
}
.youtube::before {
  content: '▶';
  display: inline-block;
  color: white;
  background: #ee0000;
  font-size: .5rem;
  padding: 2px 10px;
  border-radius: 3px;
  vertical-align: middle;
  line-height: 1.4;
  text-align: center;
  margin: 0 3px 4px 0;
  width: 30px;
}

table {
  margin: 1rem 0;
  border-collapse: collapse;
  font-size: .9rem;
}
th {
  font-family: sans-serif;
  font-size: .8rem;
  text-align: left;
}
th, td {
  padding: .2rem;
  white-space: nowrap;
}
table caption {
  font-weight: bold;
  font-size: 0.9rem;
  font-family: sans-serif;
  background: var(--color-th-gray);
  color: #ffffff;
}
.total,
.common,
.results {
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
  table-layout: fixed;
}
.total th,
.common th,
.results th {
  text-align: center;
  background: var(--color-th-gray);
  border-right: solid .5px #ddd;
  border-bottom: solid 1px #ddd;
  color: #fff;
  font-family: sans-serif;
  padding: 4px 3px 3px;
}
.total {
  max-width: 100%;
}
.results th {
  font-size: .8rem;
}
th.latest {
  background: var(--color-ivory);
  color: var(--color-text);
}
th.option {
  background: #cfb9b9;
  color: var(--color-text);
}
.total td,
.common td,
.results td {
  padding: 0 .2rem;
  border-right: solid 1px #ddd;
  border-bottom: solid 1px #b3b3b3;
}
.total td {
  font-family: sans-serif;
  padding: .3rem;
  white-space: normal;
}
.total tr {
  background: inherit;
}
.total tr:nth-child(even) {
  background: #f9f9f9;
}
.td-name {
  font-family: sans-serif;
  font-weight: bold;
}
.border-top {
  border-top: 1px solid #dfdfdf;
}
.tiny-fin {
  text-align: center;
  font-size: .5rem;
}
.date-tiny {
  font-size: 10px;
  height: 25px;
  width: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
}
.sticky-horse-name {
  color: inherit;
  width: 3em;
  font-size: .5rem;
  overflow: hidden;
}
.td-latest-fin {
  text-align: center;
}
.date-bold {
  font-family: sans-serif;
  font-weight: bold;
}
.horse-name {
  font-family: sans-serif;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 9.1em;
}
.horse-s,
.sire-s {
  overflow: hidden;
  text-overflow: ellipsis;
  width: 9.1em;
}
.horse-s {
  font-family: sans-serif;
}
.jchg,
.change {
  color: brown;
  font-size: .8rem;
}
.margin-time,
.margin {
  font-family: sans-serif;
}
.margin {
  font-weight: bold;
}
/* 横の追従がない */
.common thead {
  position: sticky;
  top: 0;
  z-index: 1;
}
/* 横の追従がある */
.thFixed {
  position: sticky;
  top: 0;
  left: 0;
}
.FixedX {
  position: sticky;
  left: 0;
  z-index: 2;
  background: var(--bg);
}
.thGate {
  position: sticky;
  left: 0;
  z-index: 3;
}
td.sticky-gate,
td.sticky-gate1,
td.sticky-gate2,
td.sticky-gate3,
td.sticky-gate4,
td.sticky-gate5,
td.sticky-gate6,
td.sticky-gate7,
td.sticky-gate8 {
  position: sticky;
  left: 0;
  padding: 0 .1rem;
}
.hnumv,
.hnum,
.waku1,
.waku2,
.waku3,
.waku4,
.waku5,
.waku6,
.waku7,
.waku8 {
  display: inline-block;
  background: var(--bg); 
  width: var(--width-gate);
  text-align: center;
  padding: 0 .1rem;
  font-size: .8rem;
  font-weight: bold;
  font-family: sans-serif;
}
.sticky-gate,
.sticky-gate1,
.sticky-gate2,
.sticky-gate3,
.sticky-gate4,
.sticky-gate5,
.sticky-gate6,
.sticky-gate7,
.sticky-gate8,
.gate,
.gate1,
.gate2,
.gate3,
.gate4,
.gate5,
.gate6,
.gate7,
.gate8 {
  background: var(--bg);
  font-size: .8rem;
  font-weight: bold;
  font-family: sans-serif;
  padding: 0 .1rem;
  text-align: center;
  width: var(--width-gate);
}
.sticky-gate1 {
  background: #fff; 
}
.waku1,
.gate1 {
  background: #fff; 
  border: solid 1px var(--color-gray);
}
.waku2,
.sticky-gate2,
.gate2 {
  background: #000; 
  color: #fff;
}
.waku3,
.sticky-gate3,
.gate3 {
  background: #ee0000; 
  color: #fff;
}
.waku4,
.sticky-gate4,
.gate4 {
  background: blue; 
  color: #fff;
}
.waku5,
.sticky-gate5,
.gate5 {
  background: yellow; 
}
.waku6,
.sticky-gate6,
.gate6 {
  background: green; 
  color: #fff;
}
.waku7,
.sticky-gate7,
.gate7 {
  background: #ffbc41; 
}
.waku8,
.sticky-gate8,
.gate8 {
  background: pink; 
}
.G1, .G2, .G3, .G, .OP, .L, .JG1, .JG2, .JG3, .Jpn1, .Jpn2, .Jpn3 {
  display: inline-block;
  padding: 0 0.15rem;
  text-align: center;
  margin: 0.3rem 0.1rem;
  font-size: .8rem;
  font-weight: bold;
  font-family: sans-serif;
}
.G1, .JG1, .Jpn1 {
  background: #ee0000;
  color: white;
} 
.G2, .JG2, .Jpn2 {
  background: blue;
  color: white;
}
.G3, .JG3, .Jpn3 {
  background: green;
  color: white;
}
.JG1, .JG2, .JG3, .Jpn1, .Jpn2, .Jpn3 {
  font-size: .6rem;
  margin: 0.45rem 0.1rem;
}
.G, .OP, .L {
  border: 1px solid var(--color-gray);
  background: #fff;
}
.cls {
  display: flex;
  justify-content: center;
}
.rank1 {
  background: #ffefef;
}
.rank2 {
  background: #f7faff;
}
.rank3 {
  background: #f3fcf5;
}
._rank1, 
._rank2, 
._rank3 {
  font-weight: bold;
}
._rank1 {
  color: #de0000;
}
._rank2 {
  color: blue;
}
._rank3 {
  color: #017501;
}

.unusual,
.fin {
  font-family: sans-serif;
  font-weight: bold;
}
.interval {
  width: 2em;
  padding: 0 .5rem;
}
.rota {
  text-align: center;
  width: 3em;
}
._center,
.fin,
.fav,
.place,
.weather,
.race-num,
.hnum,
.sex,
.age,
.track,
.distance,
.rote,
.going {
  text-align: center;
}

._right,
.count,
.sexage,
.odds,
.margin-time,
.interval,
.pos {
  text-align: end;
}
.cns {
  text-align: end;
}
.cn {
  display: inline-block;
  width: 15px;
  text-align: center;
}
.tozai {
  font-size: 0.7rem;
}
.prev,
.latest {
  background: var(--bg-tone);
}
.last3F {
  margin: 0;
}
.last3Frank {
  padding: 0 .2rem;
  font-size: .9rem;
  background: #efebda;
  margin: 0 0 0 1px;
}
.opt {
  border-left: solid 1px var(--color-gray);
}

/* lap */
.lap-table th {
  font-weight: normal;
  font-family: sans-serif;
  text-align: center;
  background: var(--bg-tone);
}
.lap-table th,
.lap-table td {
  border-right: solid 1px var(--color-gray);
  border-bottom: solid 1px var(--color-gray);
}
.lap-times {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.lap-distance {
  font-weight: normal;
  font-size: .7rem;
  text-align: center;
  color: #666;
}
.lap-time {
  text-align: center;
}
/* positions table */
.positions {
  white-space: pre-wrap;
  pointer-events: none;
  text-decoration-line: none;
  color: var(--color-text);
  min-width: 200px;
}

.f1 {
  color: red;
  font-family: sans-serif;
  font-weight: bold;
}

/* pay */
.pay-table th,
.pay-table td {
  border-right: solid 1px var(--color-gray);
  border-bottom: solid 1px var(--color-gray);
  font-size: .9rem;
}
.pay-table th {
  font-family: sans-serif;
  background: var(--bg-tone);
  text-align: center;
}

.num {
  display: inline-block;
  width: 1.2em;
  text-align: end;
}
.sep {
  margin-inline: 8px 3px;
}
.pay-pay,
.pay-fav {
  text-align: end;
}

/* profile */
.profile-box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 10px 0;
}
.horse-name-en {
  font-family: serif;
}
.profile, .ped {
  max-width: 100%;
  border-spacing: 0;
  margin: 0;
}
table.profile th,
table.profile td {
  border: solid 1px var(--color-gray);
  font-size: .9rem;
  white-space: normal;
}
table.profile th {
  background: var(--bg-tone);
}
.ped td {
  box-sizing: border-box;
  position: relative;
  width: 125px;
  border: solid 1px var(--color-gray);
  white-space: normal;
  font-family: serif;
  line-height: 1.2;  
}
td.f {
  background: #eaf4fc;
}
td.m {
  background: #fff5f5;
}
._sl,
.sl {
  font-weight: normal;
  font-family: hiragino kaku gothic pron, sans-serif;
  font-size: 10px;
  color: var(--color-text);
}
._sl {
  font-size: .8rem;
}
._sl::before,
.sl::before {
  content: '■';
  color: var(--color-gray);
}
.fno {
  font-size: 11px;
  margin: 5px 2px;
  position: absolute;
  bottom: 0;
}
.namef, .namem {
  display: flex;
  align-items: center;
  font-size: 13px;
}
.namef {
  font-weight: bold;
}
.namem {
  font-style: italic;
  font-family: serif;
}

._labelf, ._labelm {
  color: #555;
  font-size: 10px;
  font-weight: bold;
  height: 15px;
}
/* table filter */
.nav-in {
  margin: 10px 0 0;
  padding:.5rem;
  font-family: sans-serif;
  font-weight: bold;
  display: inline-block;
}
#total {
  margin: 10px 0 0;
}
#total th,
#total td {
  font-family: sans-serif;
  font-size: .7rem;
  border: solid 1px var(--color-gray);
  min-width: 50px;
}
#total th {
  font-weight: normal;
  text-align: center;
  background: var(--bg-tone);
}
#total td {
  font-size: 1rem;
  text-align: center;
}
#pay-rate {
  font-family: sans-serif;
  margin: 10px 0 0;
}
.rate {
  width: 5em;
  display: inline-block;
  text-align: end;
}
.filter {
  font-family: serif;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
  width: 1030px;
}
.filter thead {
  position: sticky;
  top: 0;
  z-index: 1;
}
.filter th {
  background: var(--color-th-gray);
  /* border-top: 1px solid var(--color-th-gray); */
  border-right: 1px solid var(--bg-tone);
  border-bottom: 1px solid var(--bg-tone);
  color: white;
  height: 27px;
  text-align: center;
}
.filter td {
  border-right: 1px solid var(--color-gray);
  border-bottom: 1px solid #a3a3a3;
  height: 52px;
  padding: 0 .2rem;
}
/* table.filter td */
.loading {
  border: 0;
}
th.thRanks,
td.tdRanks {
  width: 46px;
}
th.thRace,
td.tdRace {
  width: 180px;
}
th.thRaceS,
td.tdRaceS {
  width: 180px;
}
th.thFin,
td.tdFin {
  padding: 0;
  width: 65px;
  text-align: center;
}
th.thHorse,
td.tdHorse {
  width: 160px;
}
th.thName,
td.tdName,
th.thHorseS,
td.tdHorseS {
  width: 138px;
}
th.thTime,
td.tdTime {
  width: 130px;
}
th.thJT,
td.tdJT {
  width: 88px;
}
th.thOB,
td.tdOB {
  width: 152px;
}
th.thPed,
td.tdPed {
  width: 192px;
}
td.tdRanks {
  text-align: end;
  font-family: sans-serif;
}
td.tdStart,
td.tdEnd {
  border: 0;
}
td.tdEnd {
  vertical-align: top;
  font-family: sans-serif;
  font-weight: bold;
  background: #f7f7f7;
  color: brown;
}

.flex-tight,
.flex-center,
.flex-start,
.flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* gap: 3px; */
}
.flex-start {
  justify-content: start;
}
.flex-center {
  justify-content: center;
}
.flex-tight {
  justify-content: start;
  gap: 2px;
}
.race-name-liquid,
.race-name-s,
.race-name {
  display: inline-block;
  font-family: sans-serif;
  vertical-align: middle;
  font-weight: bold;
  margin: .1rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.race-name {
  width: 9em;
}
.race-name-s {
  width: 6em;
}
.race-name-liquid {
  width: auto;
  white-space: normal;
}
.race-name-link {
  display: inline-block;
  font-family: sans-serif;
  text-decoration: underline;
  vertical-align: middle;
  margin: .15rem .1rem;
}
.hnum {
  border: 1px solid var(--color-gray);
  text-align: center;
  width: 2em;
  margin: 0 0 0 .1rem;
}
.hnum-v {
  margin: 0;
}
.hnumv {
  border: 1px solid var(--color-gray);
  text-align: center;
  font-size: 11px;
  margin: 0 .2rem 0 0;
}
.weight, .horse-weight {
  margin-inline-start: .1rem;
}
.owner,
.breeder {
  width: 10em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.sire-name-s {
}

/* filter gfilter */
#gfilter-box {
  margin: 10px 0 0;
  padding: 0 0.5rem;
}

.filter-heading {
  font-size: 1rem;
  margin: 0;
}
.gfilter-heading {
  margin: 0 50% 0 0;
  font-size: 1rem;
}
#input-filters {
  display: flex;

}
.input-filter {
  display: block;
  width: 100%;
  font-size: 16px;
  margin: .3rem .1rem;
  line-height: 1.5;
}
.select-items-top,
.select-items {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 5px 0 0;
  gap: 5px;
}
.gselect-items {
  display: flex;
  flex-wrap: wrap;
  margin: 15px 0 0;
  gap: 5px;
}
.select-items-top {
  justify-content: space-between;
}
.gselect,
select {
  color: var(--color-text);
  flex-grow: 1;
  font-size: 15px;
  padding: 0;
  width: 15%;
  border-radius: 0;
  cursor: pointer;
  height: 32px;
}
select {
  font-size: 13px;
}

.gselect {
  width: 18%;
  flex-grow: 1;
}
.select-first {
  width: 38%;
  flex-grow: 2;
}

.custom-select {
  position: relative;
}
.select-input {
  width: 10em;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.select-options {
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 0;
  width: 100%;
  margin-top: 4px;
  padding: 0;
  list-style: none;
  border: 1px solid #ccc;
  border-top: none;
  border-radius: 0 0 4px 4px;
  background-color: #fff;
  box-shadow: 0 2px 4px;
  height: 50vh;
  overflow-y: scroll;
}

.select-options li {
  padding: 8px;
  cursor: pointer;
}

.select-options li:hover {
  background-color: #f0f0f0;
}

#isearch,
#search-input {
  font-size: 16px;
  font-family: sans-serif;
}
.search-results {
  font-family: sans-serif;
  margin: 20px 0 0;
}
.search-results-ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.result-h {
  margin: 30px 0 10px;
}
.a {
  display: block;
}

/**/
.table_ranking {
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0;
  table-layout: fixed;
}
.table_ranking th {
  text-align: center;
  background: var(--color-th-gray);
  border: solid 1px #ddd;
  color: #fff;
  font-family: sans-serif;
  padding: 3px;
}
.table_ranking th {
  font-size: .8rem;
}
.table_ranking td {
  padding: 0 .2rem;
  border: solid 1px #ddd;
}
td.match {
  background: #ffefef;
}
/* .match::before { */
/*   content: "＊"; */
/*   color: red; */
/* } */
.rankPayNum,
.rankNum {
  text-align: center;
  font-family: sans-serif;
}
.rankNum {
  background: var(--bg-tone);
}

.hide {
  display: none;
}

/* single top */
.btn-box {
  padding: 0 .5rem;
  margin: 10px 0;
}

.isActive {
  border: solid 2px orange;
}

th._th {
  position: relative;
  padding-bottom: 1rem;
  cursor: pointer;
}

.sort-asc::after {
  display: block;
  position: absolute;
  text-align: center;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);;
  content: '▼'
}

.sort-desc::after {
  display: block;
  position: absolute;
  text-align: center;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);;
  content: '▲'
}

@media screen and (min-width: 414px) {
  .yearly-link {
    flex-grow: 0;
    width: fit-content;
  }
  .info, .condition {
    overflow-x: auto;
    white-space: nowrap;
  }
  #container-h,
  #container-s,
  #container-c {
    height: 600px;
  }
}

@media screen and (min-width: 1024px) {
  .scroll {
    height: auto;
    box-shadow: 0 0 0;
    border: 0;
  }
  #container-h,
  #container-s,
  #container-c {
    height: 700px;
    width: fit-content;
  }
  #gfilter-box {
    width: 70%;
  }
  .gfilter-heading {
    width: 100%;
  }
  .gselect {
    width: 12%;
  }
  #filter-box {
    width: 58%;
  }
  .g-item {
    width: 33%;
  }
}

@media screen and (min-width: 1200px) {
  .g-item {
    width: 25%;
  }
}
