:root {
    --seiko_blue: #193C72;
    --seiko_gray01: #CDCDCD;
    --seiko_gray02: #6B6B6B;
    --seiko_gray03: #CCCCD9;
}

/** h1 */
.important-news-contents h1 {
    font-size: 24px;
    font-weight: bold;
    line-height: 32px;
    margin-top: 64px;
}

@media (max-width: 767px) {
    .important-news-contents h1 {
        font-size: 20px;
        line-height: 28px;
    }
}

/** h2 */
.important-news-contents h2 {
    font-size: 20px;
    font-weight: bold;
    line-height: 28px;
    margin-top: 56px;
}

@media (max-width: 767px) {
    .important-news-contents h2 {
        font-size: 18px;
        line-height: 28px;
    }
}

/** h3 */
.important-news-contents h3 {
    font-size: 18px;
    font-weight: bold;
    line-height: 28px;
    margin-top: 48px;
}

@media (max-width: 767px) {
    .important-news-contents h3 {
        font-size: 16px;
        line-height: 24px;
    }
}

/** h4 */
.important-news-contents h4 {
    font-size: 16px;
    line-height: 24px;
    font-weight: bold;
    margin-top: 32px;
}

@media (max-width: 767px) {
    .important-news-contents h4 {
        font-size: 14px;
        line-height: 20px;
    }
}

/** h5 */
.important-news-contents h5 {
    display: inline-block;
    margin-top: 16px;
    padding: 4px 16px;
    font-size: 12px;
    color: white;
    background-color: var(--seiko_blue);
}

/** p */
.important-news-contents p {
    margin-top: 24px;
    font-size: 16px;
    line-height: 24px;
}

@media (max-width: 767px) {
    .important-news-contents p {
        margin-top: 20px;
        font-size: 14px;
        line-height: 20px;
    }
}

/** strong */
.important-news-contents strong {
    font-weight: bold;
}

/** em */
.important-news-contents em {
    font-style: italic;
    transform: skew(-10deg);
}

/** hr */
.important-news-contents hr {
    margin-top: 24px;
    border-color: var(--seiko_gray01);
}

/** ul */
.important-news-contents ul {
    list-style: disc;
    margin-top: 24px;
    padding: 24px;
    gap: 4px;
    display: flex;
    flex-direction: column;
}

.important-news-contents ul li::marker {
    font-size: 0.6em;
}

.important-news-contents ul li {
    padding-left: 4px;
    text-indent: -4px;
}

@media (max-width: 767px) {
    .important-news-contents ul {
        margin-top: 20px;
        padding: 20px;
    }
    .important-news-content ul li {
        font-size: 14px;
        line-height: 20px;
    }
}

/** ol */
.important-news-contents ol {
    list-style: decimal;
    margin-top: 24px;
    padding: 24px;
    gap: 4px;
    display: flex;
    flex-direction: column;
}

.important-news-contents ol li::marker {
    font-size: 16px;
}

.important-news-contents ol li {
    padding-left: 4px;
    text-indent: -4px;
}

@media (max-width: 767px) {
    .important-news-contents ol {
        margin-top: 20px;
        padding: 20px;
    }
    .important-news-contents ol li {
        font-size: 14px;
        line-height: 20px;
    }
}

/** a */
.important-news-contents a {
    margin-top: 24px;
    font-size: 16px;
    line-height: 24px;
    color: var(--seiko_blue);
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

@media (max-width: 767px) {
    .important-news-contents a {
        margin-top: 20px;
        font-size: 14px;
        line-height: 20px;
    }
}

.important-news-contents a[target="_blank"]::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-image: url("/img/external-link-icon.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
    margin-left: 4px;
}

.important-news-contents a[data-embed-type="file"] {
    font-weight: bold;
}

.important-news-contents a[data-embed-type="file"]::after {
    background-image: url("/img/folder-icon.svg") !important;
}

/** 注釈 */
.note-marker {
    font-size: 14px;
    line-height: 20px;
    color: var(--seiko_gray02);
}
p:has(.note-marker) {
    margin-top: 8px;
}
