@font-face {
 font-family: 'PT Serif';
 font-style: normal;
 font-weight: normal;
 src: local('PT Serif'), local('PTSerif-Regular'), url('/fonts/pt-serif-v11-latin-regular.woff2') format('woff2');
}
@font-face {
 font-family: 'PT Serif';
 font-style: italic;
 font-weight: normal;
 src: local('PT Serif Italic'), local('PTSerif-Italic'), url('/fonts/pt-serif-v11-latin-italic.woff2') format('woff2');
}
@font-face {
 font-family: 'PT Serif';
 font-style: normal;
 font-weight: bold;
 src: local('PT Serif Bold'), local('PTSerif-Bold'), url('/fonts/pt-serif-v11-latin-700.woff2') format('woff2');
}
@font-face {
 font-family: 'PT Serif';
 font-style: italic;
 font-weight: bold;
 src: local('PT Serif Bold Italic'), local('PTSerif-BoldItalic'), url('/fonts/pt-serif-v11-latin-700italic.woff2') format('woff2');
}
@font-face {
 font-family: 'Bozart';
 font-style: normal;
 font-weight: normal;
 src: local('Bozart'), url('/fonts/BOZART.ttf') format('truetype');
}
body {
 max-width: 1000px;
 font-family: "PT Serif", 'Times New Roman', Times, serif;
 margin-left: auto;
 margin-right: auto;
 margin-top: 75px;
 background-image: url("../img/Background.png");
 background-repeat: repeat;
 background-color: #b1b1b1;
}
.head {
 max-width: 750px;
 margin-left: auto;
 margin-right: auto;
 display: flex;
 justify-content: space-evenly;
 margin-bottom: 10px;
 background-color: #a5a5a5;
 padding-top: 5px;
 padding-bottom: 10px;
 border-radius: 15px;
 border: #555555 solid 4px;
}
.head a {
 padding: 5px;
 display: flex;
 flex-direction: column;
 text-align: center;
 position: relative;
}
.head a img {
 position: relative;
 width: 64px;
}
.head a .not-ready {
 text-decoration: line-through;
 color: #7e7e7e;
}
.head a:hover {
 bottom: 2px;
}
img {
 max-width: 100%;
}
.main {
 max-width: 750px;
 margin-left: auto;
 margin-right: auto;
 border: #555555 solid 4px;
 background-color: #c2c2c2;
 padding-bottom: 20px;
 font-size: large;
}
.main *,
.main .align-default {
 margin: 20px;
 padding-bottom: 0px;
 margin-bottom: 0px;
 max-width: 100%;
}
.main h1 {
 font-size: 40px;
}
.main h2 {
 font-size: 52px;
 background-color: #7e7e7e;
 margin: 0px;
 margin-top: 20px;
 padding: 20px;
 font-family: 'Bozart', 'Times New Roman', Times, serif;
 letter-spacing: 2px;
 text-align: center;
}
.main h2 a {
 color: #222222;
}
.main h3 {
 font-size: 30px;
 margin-bottom: 10px;
}
.main i,
.main b,
.main a,
.main span {
 margin: 0;
}
.main i {
 display: block;
 color: #555555;
 margin: auto;
 width: 80%;
 font-size: medium;
 margin-top: 15px;
}
.main p {
 color: #222222;
}
.main p img {
 margin: auto;
 width: 80%;
 display: block;
 margin-bottom: 10px;
}
.main ul {
 color: #222222;
 list-style-position: inside;
}
.main ul * {
 margin: 0;
}
.main ul li {
 margin-bottom: 8px;
}
.main ol {
 color: #222222;
 list-style-position: inside;
}
.main ol * {
 margin: 0;
}
.main ol li {
 margin-bottom: 12px;
}
.main details * {
 margin: 0;
 padding-left: 40px;
 margin-top: 20px;
}
.main details * * {
 padding-left: 0;
 margin-top: 0;
}
.main details summary {
 font-weight: bold;
 margin: 0px;
 padding: 0px;
 cursor: pointer;
}
.main details p {
 color: #222222;
}
.main details ul,
.main details ol {
 padding-left: 20px;
}
.main details.toggle {
 cursor: pointer;
}
.main details.toggle summary {
 list-style: none;
}
.main details.toggle summary .toggleable {
 display: none;
}
.main details.toggle summary .not-toggleable {
 display: block;
}
.main details[open].toggle summary .toggleable {
 display: block;
}
.main details[open].toggle summary .not-toggleable {
 display: none;
}
.main form {
 margin: 0px;
 margin-bottom: 20px;
}
.main form input,
.main form textarea {
 display: block;
 margin-top: 0;
 margin-bottom: 5px;
 width: calc(60%);
}
.main form img {
 margin-top: 5px;
}
.main img,
.main video {
 display: block;
 margin: auto;
 max-width: 600px;
}
.main div * {
 margin: 0px;
 max-width: 100%;
 color: #222222;
}
.main div img {
 display: block;
 margin: auto;
}
.main div table {
 width: 100%;
}
.main div iframe {
 margin: 0;
 padding: 0;
 width: 90%;
 height: 90%;
 color: #222222;
}
.main div.row {
 display: flex;
 flex-direction: row;
}
.main div.row * {
 margin: auto 10px;
}
.main div.guest {
 border: #000000 solid 2px;
 padding: 0px;
 margin-top: 0px;
 margin-bottom: 10px;
}
.main div.guest * {
 padding: 10px;
}
.main div.guest b,
.main div.guest i {
 padding: 0;
}
.main div.guest p.name {
 font-weight: bold;
 background-color: #7e7e7e;
 color: #000000;
}
.main div.guest p.name i.date {
 font-weight: normal;
}
.main div.guest p.comment {
 border-top: #a5a5a5 solid px;
 background-color: #a5a5a5;
 padding-top: 5px;
 padding-bottom: 8px;
 padding-left: 15px;
 font-style: italic;
 color: #222222;
 font-size: 0.9em;
}
.main div.button_list img {
 display: inherit;
}
.main div.log {
 border: #555555 solid 2px;
 margin-top: 0px;
 margin-bottom: 0px;
 padding: 0px;
 overflow-y: scroll;
 overflow-x: hidden;
 max-height: 200px;
 background-color: #222222;
}
.main div.log p {
 margin: 10px;
 margin-right: 0px;
 margin-bottom: 5px;
 font-style: italic;
 font-weight: bold;
 font-size: small;
 font-family: 'Courier New', Courier, monospace;
 color: #c2c2c2;
}
.main div.icon_list {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-evenly;
}
.main div.icon_list img {
 margin: 0;
 transition: transform .2s;
 transform: scale(1.0);
}
.main div.icon_list img:hover {
 transform: scale(1.2);
}
.main div.gallery {
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
 justify-content: space-around;
 gap: 10px;
}
.main div.gallery a {
 display: block;
 width: fit-content;
 width: 30%;
 border: 2px solid #555555;
}
.main div.gallery a img {
 margin: 0;
}
.main div.gallery a:hover {
 opacity: 50%;
}
.main blockquote p {
 font-style: italic;
 color: #7e7e7e;
}
.main table,
.main > div table {
 border: #000000 solid 2px;
 padding: 0;
 margin-bottom: 0;
 border-collapse: collapse;
}
.main table tbody tr,
.main > div table tbody tr {
 border-bottom: #000000 solid 2px;
}
.main table tbody tr th,
.main > div table tbody tr th {
 border-right: #000000 solid 2px;
 padding: 10px;
 background-color: #a5a5a5;
}
.main table tbody tr td,
.main > div table tbody tr td {
 padding: 10px;
 color: #222222;
}
.bing {
 border-left: #555555 solid 2px;
 border-bottom: #555555 solid 2px;
 background-color: #a5a5a5;
}
.bing .row {
 display: flex;
 height: 5em;
}
.bing .row span {
 width: 25%;
 text-align: center;
 padding: auto;
 margin: 0;
 border-top: #555555 solid 2px;
 border-right: #555555 solid 2px;
 color: #222222;
}
.bing .row span.done {
 text-decoration: line-through;
 color: #555555;
 background-color: #7e7e7e;
}
.center {
 text-align: center;
}
.foot {
 text-align: center;
 margin-top: 30px;
 margin-bottom: 30px;
}
@media only screen and (max-width:600px) {
 body {
  margin-top: 0;
  background-image: none;
  background-color: #c2c2c2;
 }
 .head {
  flex-wrap: wrap;
  border-radius: 0;
 }
 .main {
  min-width: 100%;
  border: none;
 }
 .main ul,
 .main ol {
  list-style-position: initial;
  margin-left: 0.5em;
 }
 .foot {
  margin-top: 20px;
 }
}