@charset "UTF-8";
h1, h2, h3, p { margin: 0; padding: 0; }

/* html { background: #fafafa; font-size: 10px; font-weight: 400; font-family: sans-serif; } */

/* @media (max-width: 639px) { html { font-size: 2.667vw; } } */

/* body { margin: 0; color: #333; } */

/* a { color: #008cb6; } */

/* a:hover { text-decoration: none; } */

* { box-sizing: border-box; }

*::before, *::after { box-sizing: border-box; }

.wrapper { /* display: grid; grid-template-columns: 1fr; grid-template-rows: 1fr 5rem; */ min-height: auto; margin: 0 auto; }


/* .footer .inner { display: flex; justify-content: center; align-items: center; height: 100%; padding: 0; } */

@media (max-width: 524px) { .footer .inner { padding: 1.5rem 3rem; } }

.footer .text { line-height: 2; text-align: center; letter-spacing: 2px; }

/* .footer .text a { color: #b60000; } */

.main { /* background: #fff; */ width: 100%; min-height: auto; /* padding: 2rem; */ }

.main .inner {
 /* display: flex; */
 flex-direction: column;
 justify-content: space-between;
 width: 100%;
 min-height: 100%;
 border-radius: 20px;
 border: var(--edge);
}

.main .block { display: flex; flex-direction: column; width: 100%; /* padding: 3rem 2rem; */ background: var(--white); }

.main .block {
 padding: 3rem 2rem; 
}

.main .block:first-of-type {
    border-radius: 20px 20px 0 0;
}

.main .block:last-of-type {
    border-radius: 0 0 20px 20px;
}
.main .block:only-of-type {
    border-radius: 20px;
}

.main .block .categories { font-size: 1.2rem; }

.main .block .categories > a::before { content: "#"; }

.main .block .categories > a + a { margin-left: 1em; }

.main .block .head .date { padding-bottom: 2.25rem; font-size: 1.2rem; text-align: right; }

/* .main .block .body .readmorebutton { color: #b60000; } */

.main .block .body .readmoreopen::before { content: "▼"; }

.main .block .body .readmoreclose { display: block; }

.main .block .body .readmoreclose::before { content: "▲"; }

.main .block .body + .foot .categories { padding-top: 2rem; }

.main .block .body + .foot .date { padding-top: 1rem; }

.main .block .foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; }

.main .block .foot .categorylink { display: inline-block; margin-right: 1em; }

.main .block .foot .categorylink::before { content: "#"; }

.main .block .foot .date { font-size: 1.2rem; text-align: right; }

.main .block + .block { border-top: 1px dashed var(--secondary); }

.main .title { padding: 1rem 0 2rem; letter-spacing: 0.05em; line-height: 1; font-size: 2.8rem; text-align: center; color: #4a4a4a; }

.main .title + .block { padding-top: 1rem; }

.main .title + .text { padding-top: 1rem; }


.main .text + .block { padding-top: 2rem; }

.main .note { line-height: 1.667em; font-size: 1.2rem; }

