.bd-placeholder-img {
    font-size: 1.125rem;
    text-anchor: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

#logo {
    display: block;
    height: 3rem;
}

#logo img {
    height: 100%;
}

.nav-item {
    height: 3rem;
    line-height: 3rem;
}

main {
    background-color: black;
}

main section {
    background-image: url(/images/visual02.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

main section>div {
    height: 100%;
}

.overlayInfo {
    text-shadow: 2px 2px 10px black, -2px -2px 10px black;
    color: white;
    text-align: left;
    font-size: 1.5rem;
}

.overlayInfo a {
    color: white;
    text-decoration: none;
}

.overlayInfo strong {
    font-size: 4rem;
    color: red;
}

.viewall {
    margin-top: 20px;
    text-align: center;
}

.viewall a {
    font-size: 2em;
    color: #bb0000;
}
.viewall a:hover {
    border-bottom:3px solid #bb0000;
}

h2 {
    font-size: 4em;
    color: #bb0000;
}

.webfont,.webfont > a{
    font-family: genkaimincho, sans-serif;
    font-weight: 800;
    font-style: normal;
    text-decoration: none;
}

header ul {
    font-size: 1em;
}

header ul a.nav-link {
    padding: 0px;
}

.section {
    padding: 80px 0px;
    background: url(/images/bg.png);
    background-size: cover;
    background-repeat: no-repeat;
}

#about{
    font-size: 0.85rem;
}
#news .row {
    border-bottom: 1px solid;
    border-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, #bb0000 30%, #bb0000 70%, rgba(0, 0, 0, 0) 100%) 1;
    color: white;
}

#news .row:first-child {
    border-top: 1px solid;
    border-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, #bb0000 30%, #bb0000 70%, rgba(0, 0, 0, 0) 100%) 1;
}

#news .row p span {
    padding: 4px;
}
#news .row p span a {
    color:white;
    text-decoration: none;
}
#news .row p span a:hover {
    color:white;
    text-decoration: none;
    border-bottom: 1px solid white;
}
#news .row p.date {
    text-align: right;
}
#news .row p.tag {
    text-align: center;
}

#news .row p.tag span {
    background-color: #bb0000;
    display: inline-block;
    font-size: 0.8rem;
    width:4rem;
    text-align: center;
}

#news .newsTitle{
    font-size: 1.5rem;
    color: red;
    font-weight: normal !important;
}
#news .newsBody{
    line-height: 2rem;
}
#news .newsBody a{
    font-weight: bold;
    color: orange;
    font-size: 1.2rem;
}
#biography .row > div{
    padding-top:4rem;
    padding-bottom:4rem;
}
.card-body {
    min-height: 8rem;
}
@media (max-width: 992px) {
    #news .row p.date {
        text-align: left;
    }
    #news .row p.tag {
        text-align: right;
    }
}

@media (min-width: 768px) {
    .bd-placeholder-img-lg {
        font-size: 3.5rem;
    }
}

@media (max-width: 768px) {
    .container,
    .container-sm {
        max-width: 100vw !important;
    }
}
@media (max-width: 576px) {
    h2{
        font-size: 2.5rem;
    }
}