@charset "utf-8";
/* CSS Document */
*{box-sizing:content-box;}

.table_box {
  overflow: auto;
  width: 1200px;
  height: 500px;
  -webkit-overflow-scrolling: touch;
  position: relative;
  max-width:100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

th, td {
  vertical-align: middle;
  padding: 10px 5px;
  /*border: 1px solid #000;*/
  color: #000;
  font-size: 11px;
  text-align: center;
  white-space: nowrap;

}

td{
border-right: 1px solid #000;
border-bottom: 1px solid #000;
}


/* 1行目 & 2行目の固定 */
th.sticky {
  position: sticky;
  top: 0;
  background: #f7f7f7;
  color: #000;
  z-index: 10;
  border: none;
}

th.sticky::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
  background: #f7f7f7;
  z-index: -1;
}


tr:nth-child(0) th.sticky {
  top: 0;
  /*z-index: 9;*/
}

tr:nth-child(2) th.sticky {
  top: 35px;
  /*z-index: 9;*/
}

/* 左端の固定 */
td.sticky.left,
th.sticky.left {
  position: sticky;
  left: 0;
  background: #f7f7f7;
  z-index: 9;

}

/* 角 (左上) のセルの固定 */
th.sticky.corner {
  z-index: 11;
}

tr.bg-gray td {
  background: #f7f7f7;
}

.shop{text-align:center; font-size:2rem; padding:50px 0; margin:0 auto;}
.shop span{display:block; font-size:70%;}
.shop .txt{font-size:1rem; text-align:right;}
.shop .txt_l{font-size:0.9rem; text-align:left; margin-top:10px;}
.shop h1{padding-bottom:30px;}

@media screen and (max-width: 768px) {
.shop h1{font-size:clamp(1.4rem,5.76vw,2rem);}
}
