html {
  font-size: 62.5%;
  overflow-x: hidden;
  --color_text: #222222;
  --base_font_gothic: "Noto Sans JP", sans-serif;
  --base_font_serif: "Noto Serif JP", serif;
}

body {
  font-family: var(--base_font_gothic);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
  margin: 0 auto;
  max-width: 1920px;
}
@media (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

figure {
  margin: 0;
  line-height: 0;
}
figure figcaption {
  line-height: normal;
}
figure img {
  width: 100%;
}

p {
  margin: 0;
  line-height: 1.4;
  color: var(--color_text);
}
p span.en {
  letter-spacing: normal;
}

h1, h2, h3 {
  margin: 0;
  font-family: var(--base_font_serif);
}

.bold {
  font-weight: 900;
}

.serif {
  font-family: var(--base_font_serif);
}

.text-center {
  text-align: center;
}

@media (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

@media (min-width: 768px) {
  .sp-only {
    display: none;
  }
}

table {
  width: 100%;
}
table tbody tr {
  position: relative;
}
table tbody tr:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: var(--color_text);
  bottom: 0;
  left: 0;
}
table tbody th, table tbody td {
  padding: 20px 0.5em 6px 0;
  text-align: left;
  vertical-align: top;
}
table tbody th {
  width: 20%;
  white-space: nowrap;
}
table tbody td.txt-large {
  font-size: 4rem;
  font-family: var(--base_font_serif);
}
@media (max-width: 1020px) {
  table tbody td.txt-large {
    font-size: 3rem;
  }
}
@media (max-width: 767px) {
  table tbody td.txt-large {
    font-size: 2rem;
  }
}

a.tel-link {
  color: var(--color_text);
  text-decoration: none;
}
@media (min-width: 768px) {
  a.tel-link {
    pointer-events: none;
  }
}/*# sourceMappingURL=common.css.map */