/*  WEBFONTS OPTIMIZE   */
*,
*:after,
*:before {
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

html {
  font-size: 10px;
}



body {
  font: 300 14px/1.4;

  --font-default: #{$font-default};
  --font-heading: #{$font-heading};
  &.lang--ja {
    --font-default: #{$font-default-ja};
    --font-heading: #{$font-heading-ja};
  }
  font-family: $font-default;
  font-family: var(--font-default);
  font-size: 1.6rem;

  &.js-no-scroll {
    overflow: hidden;
  }
}

h1,
.heading1 {
  font-family: var(--font-heading);;
  font-size: 4.8rem;
  line-height: 1.1;
  color: $primary-color;
  font-weight: 600;

  @include sm {
    font-size: 3.2rem;
    line-height: 3.6rem;
  }
}

h2,
.heading2 {
  font-family: var(--font-heading);;
  font-size: 4.2rem;
  line-height: 1.2;
  color: $primary-color;
  font-weight: 600;

  @include sm {
    font-size: 2.6rem;
  }
}

h3,
.heading3 {
  font-family: var(--font-heading);;
  font-size: 3.4rem;
  line-height: 1.2;
  color: $primary-color;
  font-weight: 600;

  @include sm {
    font-size: 2.6rem;
  }
}

h4,
.heading4 {
  font-family: var(--font-heading);;
  font-size: 2.8rem;
  line-height: 1.2;
  font-weight: 600;
  color: $primary-color;

  @include sm {
    font-size: 2.1rem;
  }
}

h5,
.heading5 {
  font-family: var(--font-heading);;
  font-size: 2.3rem;
  line-height: 1.3;
  font-weight: 600;
  color: $primary-color;

  @include sm {
    font-size: 1.8rem;
    line-height: 2.2rem;
  }
}

h6,
.heading6 {
  font-family: var(--font-heading);;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 600;
  color: $primary-color;

  @include sm {
    font-size: 1.8rem;
    line-height: 1.2;
  }
}
