body {
    margin: 0;
}
#site_bg {
    z-index: -100;
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    object-position: 0% 50%;
    /*width: 100vw;
    min-height: 100vh;*/
    /*image-rendering: crisp-edges;*/
    position: fixed;
    left: 0;
    top: 0;
}
#logo {
    height: calc(80px * 3);
    image-rendering: crisp-edges;
    transform: translateX(-50%);
    margin-left: 50%;
    filter: drop-shadow(0px 0px 4px #000000);
    margin-top: 12px;
    margin-bottom: -32px;
    transition-duration: 0.2s;
}
#logo:hover {
    filter: drop-shadow(0px 0px 8px #000000) saturate(1.2);
}

@keyframes fadein {
    0%   {opacity: 0; margin-top: 20px;}
    100% {opacity: 1; margin-top: 0;}
}

#site {
    opacity: 0;
    animation: 0.4s 0.1s fadein forwards;
    //margin-bottom: 32px;
}

.contents {
    padding: 24px;
    background: rgba(0, 0, 0, 0.7);
    width: 66%;
    margin: auto;
}

.contents + .contents {
    margin-top: 32px;
}

.item {
    display: block;
    vertical-align: middle;
    border: solid black 2px;
    background: black;
    font-family: "Doto", sans-serif;
    font-size: 0;
    transition-duration: 0.2s;
    margin: 4px 0;
}
.item:hover {
    transform: rotate(1deg);
}
.item img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 32px;
}
.item_info {
    vertical-align: middle;
    display: inline-block;
    color: white;
    width: calc(100% - 200px - 24px*2);
}
.item_title {
    font-size: 36px;
    font-weight: 600;
}
.item_desc {
    font-size: 24px;
    font-weight: 400;
    vertical-align: middle;
    display: inline-block;
    color: #888;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
}
.under_construction {
    text-align: center;
}
.under_construction img {
    vertical-align: middle;
    display: inline-block;
    margin: 32px 32px;
}

.section_title {
    font-family: "Doto", sans-serif;
    color: white;
    font-size: 64px;
    font-weight: 600;
    margin-bottom: 16px;
    /*margin-left: 6vw;*/
    display:inline-block;
    transform: translateX(-50%);
    margin-left: 50%;
    filter: drop-shadow(0px 0px 3px #000) drop-shadow(0px 0px 3px #000);
}
