@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 4rem; max-width: 640px; min-height: 100vh; margin: 0 auto; }

.footer { background: #efefef; width: 100%; color: #333; }

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

.footer .text { line-height: 1; font-size: 1.2rem; }

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

.main { background: #fff; width: 100%; min-height: calc(100vh - 4rem); padding: 2rem; }

@media (max-width: 639px) { .main { padding: 2rem 1rem; } }

.main .inner { display: flex; flex-direction: column; justify-content: space-between; width: 100%; min-height: 100%; }

.main .block { display: flex; flex-direction: column; width: 100%; padding: 2rem 1rem; }

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

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

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

.main .block .body .readmorebutton { color: #008cb6; }

.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 solid #efefef; }

.main .title { padding: 1rem 0 2rem; letter-spacing: 0.05em; line-height: 1; font-size: 25px; font-weight: normal; text-align: center; color: #4a4a4a; }
.main .title a { color: #4a4a4a; text-decoration: none;}
.main .title span { display: block; padding: 10px 0 0; text-align: center; font-size: 15px; color: #ccc;}

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

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

.main .text { line-height: 1.929em; font-size: 1.4rem; }

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

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

.main .pager { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; padding: 1rem 0 3rem; line-height: 1.929em; font-size: 1.4rem; }

.main .pager > a { display: flex; justify-content: center; align-items: center; background: #80c6db; min-width: 1.929em; padding: 0 0.5em; text-decoration: none; color: #fff; }

.main .pager > a.pagenumhere { background: transparent; font-weight: 700; color: #333; pointer-events: none; }

.main .pager > a:hover { background: #008cb6; }

.main .pager > a + a { margin-left: 1rem; }

.main .pager + .foot { margin-top: auto; padding-top: 0; }

@media (max-width: 639px) { 
    .main .title { font-size: 20px;}
    .main .title span { font-size: 12px;}

 }