/* フォント */
@font-face {
    font-family: 'WebFont';
    font-weight: normal;
    src: url(../Fonts/WebFont.ttf) format('truetype');
}
/* 全体 */
* {
    margin: 0;
    padding: 0;
    color: rgba(62, 64, 58, 1);
    box-sizing: border-box;
    scroll-behavior: smooth;
    text-decoration: none;
    font-family: 'WebFont', sans-serif;
}
html, body {
    scroll-snap-type: y mandatory;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    background: rgba(134, 140, 125, 1);
}
body {
    flex: 1;
    overflow-y: auto;
}
/* 本文 */
svg {
    scroll-snap-align: end;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
foreignObject img {
    margin: 0 auto;
    width: 100%;
    height: auto;
    image-rendering: pixelated;
    display:block;
}
foreignObject div {
    width: 100%;
    height: 100%;
    image-rendering: pixelated;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom;
}
foreignObject p {
    margin: 9px 0;
    font-size: 9px;
}
foreignObject p.title {
    margin: 20px 0;
    font-size: 15px;
}
foreignObject p.list::before {
    content: ">";
    margin-right: 6px;
}
foreignObject p.dark {
    padding: 7px 10px;
    width: 100%;
    color: rgba(134, 140, 125, 1);
    background: rgba(62, 64, 58, 1);
}
foreignObject span.dark {
    display: inline-block;
    margin: 0 3px;
    padding: 0 3px;
    color: rgba(134, 140, 125, 1);
    background: rgba(62, 64, 58, 1);
}
foreignObject span.frame {
    display: inline-block;
    margin: 0 2px;
    width: 18px;
    height: 9px;
    border: solid 1px;
}
/*フッター*/
footer {
    scroll-snap-align: end;
    text-align: center;
    width: 100%;
    margin-top: 100px;
}
footer .menu {
    display: inline-block;
    font-size: 11px;
    padding-right: 5px;
    border-right: solid 1px;
}
footer .menu:hover {
    text-decoration: underline;
}
footer .menu:first-child {
    padding-left: 5px;
    border-left: solid 1px;
}
.copyright {
    font-size: 20px;
    padding: 10px 0 32px 0;
}
