html {
  font-size: 62.5%;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  scroll-behavior: smooth;
}

@media (min-width: 768px) {
  html {
    font-size: 0.6944444444vw;
  }
}
@media (max-width: 767px) {
  html {
    font-size: 2.5641025641vw;
  }
}
body {
  color: var(--color-text-default);
  font-family: var(--font-main);
  line-height: var(--base-line-height);
  letter-spacing: 0.1em;
}

@media (max-width: 767px) {
  .u-hidden-md-down {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .u-hidden-md-up {
    display: none !important;
  }
}
@media (hover: hover) {
  a {
    -webkit-transition: opacity var(--transition-default);
    transition: opacity var(--transition-default);
  }
  a:hover {
    opacity: 0.6;
  }
}

/* ================================================================== container size */
.l-contents-teaser {
  margin-inline: auto;
}

@media (min-width: 768px) {
  .l-contents-teaser {
    width: var(--teaser-container-width);
    padding-inline: 1rem;
  }
}
@media (max-width: 767px) {
  .l-contents-teaser {
    width: 100%;
  }
}