/*======================================================================
 * servicearea
======================================================================*/
/*------------------------------------------------------------
 * servicearea
------------------------------------------------------------*/
/*------------------------------------------------------------
 * prefecture
------------------------------------------------------------*/
/*------------------------------------------------------------
 * city
------------------------------------------------------------*/
/*------------------------------------------------------------
 * area
------------------------------------------------------------*/
.feature-container .feature-table {
  max-width: 716px;
  width: 100%;
  margin: clamp(32px, calc(2rem + ((1vw - 3.75px) * 0.9249)), 40px) auto clamp(60px, calc(3.75rem + ((1vw - 3.75px) * 2.3121)), 80px);
  border-collapse: collapse;
  border-spacing: 0;
}
.feature-container .feature-table tr th, .feature-container .feature-table tr td {
  width: calc(100% / 3);
  padding: 19px 10px;
  border: 1px solid #D0DFF0;
  font-size: 14px;
  font-weight: 400;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.06em;
}
.feature-container .feature-table tr th {
  background-color: #ECF3FB;
}
.feature-container .feature-table tr td .icon-circle {
  display: block;
  margin: 0 0 6px;
  font-size: 0;
  text-align: center;
}
.feature-container .feature-table tr td .icon-circle:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid #7F7F7F;
  border-radius: 50%;
}
.feature-container .feature-table tr td .icon-triangle {
  display: block;
  margin: 0 auto 7px;
  fill: none;
}
.feature-container .feature-table tr td .icon-triangle path {
  stroke: #7F7F7F;
}
.feature-container .feature-table tr td.color-primary {
  border-right: 2px solid;
  border-left: 2px solid;
  color: var(--wp--preset--color--primary);
  font-weight: 700;
}
.feature-container .feature-table tr td.color-primary .icon-circle:before {
  border-color: var(--wp--preset--color--primary);
}
.feature-container .feature-table tr td.color-primary .icon-triangle:before {
  fill: var(--wp--preset--color--primary);
}
.feature-container .feature-table tr:first-child th, .feature-container .feature-table tr:first-child td {
  border: none;
}
.feature-container .feature-table tr:first-child th {
  background-color: #ECEEF1;
}
.feature-container .feature-table tr:first-child th.color-primary {
  border-right: 2px solid var(--wp--preset--color--primary);
  border-left: 2px solid var(--wp--preset--color--primary);
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--base);
  font-weight: 700;
}
.feature-container .feature-table tr:last-child td.color-primary {
  border-bottom: 2px solid var(--wp--preset--color--primary);
}
.feature-container .feature-table tr > *:first-child {
  width: 22%;
}
@media screen and (max-width: 768px) {
  .feature-container .feature-table tr th, .feature-container .feature-table tr td {
    padding: 12px 5px;
    font-size: 12px;
  }
  .feature-container .feature-table tr th {
    letter-spacing: 0.15em;
  }
  .feature-container .feature-table tr:first-child th, .feature-container .feature-table tr:first-child td {
    padding: 10px 5px;
  }
}

.shop-list-container .shop-list {
  max-width: 716px;
  width: 100%;
  margin: 0 auto;
}
.shop-list-container .shop-list .map {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
}
.shop-list-container .shop-list .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .shop-list-container .shop-list .map {
    aspect-ratio: 1/1;
  }
}
.shop-list-container .shop-list .shop-count {
  margin-top: clamp(22px, calc(1.375rem + ((1vw - 3.75px) * 0.9249)), 30px);
  text-align: center;
  letter-spacing: 0.06em;
}
.shop-list-container .shop-list .shop-count p {
  margin: 0;
}
.shop-list-container .shop-list .shop-count .num {
  color: var(--wp--preset--color--primary);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.08em;
}
.shop-list-container .shop-list .shop-count .num span {
  font-size: 1.5em;
}
.shop-list-container .shop-list .shop-count .date {
  color: #333333;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
}
.shop-list-container .shop-list .shops-info {
  margin-top: 20px;
}
.shop-list-container .shop-list .shops-info .shop {
  padding: 14px 0;
  border-bottom: 1px solid #ECEEF1;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
.shop-list-container .shop-list .shops-info .shop p {
  margin: 0;
}
.shop-list-container .shop-list .shops-info .shop .shop-name {
  margin-bottom: 5px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}
.shop-list-container .shop-list .shops-info .note {
  color: #333333;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.08em;
  margin: 14px 0 0;
  text-align: right;
}
.shop-list-container .shop-list .shops-info .note p {
  margin: 0 0 2px;
}
.shop-list-container .shop-list .shops-info .note p:last-child {
  margin-bottom: 0;
}
.usage-stats-container .usage-stats-text {
  font-size: clamp(16px, calc(1rem + ((1vw - 3.75px) * 0.2312)), 18px);
  font-weight: 400;
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
.usage-stats-container .usage-stats-text p {
  margin: 0;
}
.usage-stats-container .usage-stats-text .main {
  margin: 7px 0;
  color: var(--wp--preset--color--primary);
  font-weight: 700;
  line-height: 1.7;
}
.usage-stats-container .usage-stats-text .main span {
  font-size: clamp(22px, calc(1.375rem + ((1vw - 3.75px) * 0.2312)), 24px);
  line-height: 1.5;
}

.manga-container .manga {
  margin-bottom: clamp(32px, calc(2rem + ((1vw - 3.75px) * 0.9249)), 40px);
}

.started-reason-container .started-reason {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.started-reason-container .started-reason .item {
  width: calc(20% - 16px);
  padding: 25px 32px;
  border-top-right-radius: 20px;
  border-bottom-left-radius: 20px;
  background-color: var(--wp--preset--color--base);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .started-reason-container .started-reason {
    flex-direction: column;
    gap: 12px;
  }
  .started-reason-container .started-reason .item {
    width: 100%;
  }
}