@charset 'utf-8';

table{
  border-collapse:collapse;
  border:none;
  border-spacing:0;
  width: 100%;
}

th,td{
  vertical-align: middle;
  /* vertical-align:top; */
  /* border:solid 1px #000; */
  font-weight:normal;
  text-align:left;
}

caption{
  text-align:left;
}

/* .tbody {
  height: 100vh;
} */

.d7-sec01 h1 {
  font-size: 32px;
  font-weight: bold;
}

.d7-sec01 h2 {
  font-size: 24px;
  border-bottom: solid 2px #00e3de;
  margin-bottom: 3%;
  line-height: 1.3;
  font-weight: 600;
}

.d7-sec01 {
  max-width: 1200px;
  margin: auto;
  padding-top: 150px;
  color: #18191c;
}
.store-display-guide {
  padding-bottom: 30px;
}

.store-display-guide p {
  line-height: 2.5;
  margin-top: 2%;
}

.store-display-guide p:last-child {
  padding-top: 30px;
  text-align: end;
}

.display-stores-area {
  margin-bottom: 12%;
}

.display-stores-area li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.display-stores-area li p {
  padding-left: 2%;
}

.display-stores-area li a {
  color: #18191c;;
}

.display-stores-area li a:hover {
  color: rgb(0, 227, 222);
}

.display-stores-area li a::after {
  content: "＞";
  padding-left: 2px;
  font-size: 1.4rem;
}

@media screen and (max-width: 656px) {
  .wrap {
    padding: 0 4%;
  }

  .d7-sec01 h2 {
    margin-bottom: 5%;
  }

  .d7-sec01 {
    padding-top: 100px;
  }

  .store-display-guide p {
    line-height: 2;
    padding-top: 10px;
  }

  .display-stores-area li {
    margin-bottom: 15px;
  }
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  margin: auto;
  /* display: flex; */
  align-items: center;
  justify-content: center;
}

table tr th {
  font-size: 14px;
  padding: 20px 35px;
  box-sizing: border-box;
}

.th_tittle th {
    padding: 20px 35px;
    box-sizing: border-box;
}

.th_tittle th,
.th_tittle td {
  font-weight: 600;
}

thead .th_tittle {
    display: inline-flex;
    align-items: center;
}

thead .th_tittle th,
.item_table th {
    text-align: center;
    height: 60px;
    word-break: auto-phrase;
    border-collapse: collapse;
}

.prefecture {
  width: 150px;
}

.store_name {
  width: 24rem;
}

.retail_store {
    width: 30rem;
}

.th_item {
    padding: 20px 35px;
    box-sizing: border-box;
}


.item_col_light_gray {
  background: #F2F2F2;
}

.item_col_gray {
  background: #E2E2E2;
}

.title_col_light_gray {
background: #F2F4F8;
}

.title_col_gray {
  background: #E4E8F0;
}


.wrap.wide {
    max-width: initial;
    padding-bottom: 120px;
}

.sticky {
  position: sticky;
  top: 0;
  left: 0;
}

.th_body {
  box-sizing: border-box;
  position: sticky;
  left: 0;        /* ← 縦方向固定（都道府県列用） */

}

.th_body td {
      /* padding: 20px 35px; */
      box-sizing: border-box;
}

.store_info {
  width: 200px;
}

th,
td {
  vertical-align: middle;
  text-align: center;
}

.tv_100u7n,
.tv_100u8r,
.tv_116u9r,
.tv_116u9r_2 {
  width: 120px;
}

.item_table {
  word-break: auto-phrase;
  border-collapse: collapse;
}

.item_table th,
.item_table td {
  padding: 10px 0;
  font-size: 14px;
  font-weight: 400;
}

.store_info a {
  padding-left: 5%;
}

.retail_store_border_prefecture {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
}

.retail_store_border {
    border-bottom: 1px solid #707070;
}

@media screen and (max-width: 1350px) and (min-width: 656px) {
    .wrap.wide {
        max-width: 100%;
        width: 100%;
        margin: 0 auto;
    }
}

.store_info a:hover {
    color: #00e3de;
    transition : all 0.3s ease 0s;
}

.table-wrapper {
  overflow-y: auto;
  max-height: 80vh;
}

@media screen and (max-width: 656px) {
  .table-wrapper {
      word-break: break-all;
      width: 1200px;
    }

    .sub_header ul {
      flex-wrap: nowrap;
  }

  .sub_header nav {
    overflow-x: scroll;
    scrollbar-width: none;
}

.sub_header ul li a {
  font-size: 14px;
  white-space: nowrap;
}

}

tbody th,
tbody td {
  font-weight: 400;
}

.th_tittle {
  position: relative;
  z-index: 1;
}

.item_col_gray2 {
  background-color: #F2F2F2;
}