// Typography
html {
    position: relative;
    min-height: 100%;
}

body {
    line-height: 1.42857143;
    &:lang(ja) {
        font-family: 'Noto Sans JP', Helvetica, Arial, sans-serif;
        font-size: 18px;
        font-weight: 200;
        word-wrap: normal;
        line-break: strict;
    }
}

h1,
.h1 {
    &:lang(ja) {
        font-size: 32px;
        line-height: 44px;
        font-style: normal;
        font-weight: bold;
    }
}

h2 {
    &:lang(ja) {
        font-style: normal;
        font-weight: 300;
        font-size: 28px;
        line-height: 36px;
    }
}

h5 {
    &:lang(ja) {
        font-size: 14px;
    }
}

p {
    &:lang(ja) {
        font-style: normal;
        font-weight: 300;
        font-size: 15px !important;
        line-height: 24px !important;
    }
}

small,
.small {
    font-weight: 200;
    font-size: 16px !important;
    line-height: 20px !important;
    letter-spacing: 0px;

    @media (max-width: 768) {
        font-weight: 200;
        font-size: 14px !important;
        line-height: 18px !important;
        letter-spacing: 0px;
    }

    &:lang(ja) {
        font-size: 14px;

        @media (max-width: 768) {
            font-size: 12px;
        }
    }
}

.smaller {
    font-weight: 200;
    font-size: 14px !important;
    line-height: 18px !important;
    letter-spacing: 0px;
}

.font-light,
.font-regular {
    font-weight: 200 !important;
}
.font-semibold,
.font-bold {
    font-weight: 600 !important;
}

.fw-semibold {
    font-weight: 600;
}

p + blockquote {
    margin-top: 1rem;
}

// commonly used font-size and line-height combinations
.font-14-19 {
  @include font-size-line-height(14px, 19px);
}

.font-24-28 {
  @include font-size-line-height(24px, 28px);
}
