@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
}
html, h1, h2, h3, h4, h5, h6 {
    font-size: 62.5%;
    line-height: 1.3;
}
body {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    font-family: var(--base-sans-serif);
    word-break: break-all;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section, main {
    display: block;
}
ul, ol {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none;
}
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}
input, select {
    vertical-align: middle;
}
selector {
    box-sizing: border-box;
}
img, svg {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}
img {
    font-style: italic;
    background-repeat: no-repeat;
    background-size: cover;
    shape-margin: 0.75rem;
}
*, *::before, *::after {
    box-sizing: border-box;
}
*:focus-visible {
    outline: 2px solid magenta;
    outline-offset: 2px;
}
