body {
    background-image: repeating-linear-gradient(45deg, #fafafa, #fafafa 10px, #FFF 10px, #FFF 20px);
}

i {
    margin-right: 5px;
    vertical-align: middle;
}

a {
    display: block;
    color: #E50026;
    cursor: pointer;
}

a:hover {
    opacity: .6;
}

ul {
    list-style: none;
    padding-left: 0;
}

img {
    display: block;
    margin: 0 auto;
}


/*** HEADER ***/

header {
    background: #fff;
    border-bottom: solid 2px #E50026;
}

.header-ribbon {
    background: #333;
    color: #fff;
    font-size: .75em;
    padding: 2px;
}

.nav-brand {
    margin: 0 -15px;
    padding: 5px 0;
}

.nav-brand a img {
    width: 250px;
    margin: 0 0 0 1rem;
}


/*** CONTENT ***/

h1 {
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    padding: 7px 15px 7px 40px;
    background-image: url(images/star.png);
    background-size: 2.3rem;
    background-repeat: no-repeat;
    margin-bottom: 0;
}

h2 {
    font-size: .9em;
    font-weight: bold;
    color: #E50026;
}

h3 {
    font-size: 1.1rem;
    font-weight: bold;
    color: #E50026;
    border-bottom: solid 1px #D2AE44;
    padding: 5px 0;
    margin: 2rem 0 1rem 0;
}

.h1-wrapper {
    background-image: repeating-linear-gradient(45deg, #D2AE44, #D2AE44 10px, #CFAA41 10px, #CFAA41 20px);
    padding: 5px;
    max-width: 700px;
    margin: 0 auto;
}

.post-item-wrapper {
    /* width: 100%; */
}

.post-item {
    background: #fff;
    padding: 0;
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 30%);
    width: 30%;
    margin: 2px;
}

.post-item-thumb {
    margin: 0;
}

.post-item-thumb img {
    width: 100%;
    height: 150px;
    margin: 0;
    object-fit: cover;
}

.post-item-cat {
    display: inline-block;
    font-size: 0.8rem;
    background: #aaa;
    color: #fff;
    padding: 1px 5px;
    margin: 0;
}

.post-item-title {
    margin: 4px;
}

.post-item-title h2 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.post-item-date {
    color: #666;
    margin: .2rem;
    font-size: .8rem;
    text-align: right;
    margin-right: 10px;
}

.post-item-content {
    max-width: 600px;
    margin: 1rem auto;
}

.post-item-btn {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}

.post-item-btn a {
    display: block;
    margin: 0 auto;
    padding: 10px 5px;
    text-align: center;
    transition: .2s;
    color: #fff;
    background: #BE001C;
    background-image: url(images/chevron-right.svg);
    background-repeat: no-repeat;
    background-position: 15% 50%;
    background-size: .6rem;
    font-size: .9em;
    font-weight: bold;
    text-decoration: none;
}

.pagination {
    margin-bottom: 3rem;
}

.pagination .page-item .page-link {
    border: none;
    width: 2.4rem;
    height: 2.4rem;
    line-height: 1.75rem;
    font-size: 1rem;
    text-align: center;
    padding: 6px;
    margin: 0 1px;
    background: none;
    color: #000;
}

.pagination .page-item.current .page-link {
    background: #CCAF56;
    color: #fff;
    border-radius: 50%;
}

.pagination .page-item.disabled {
    opacity: .3;
}


/** detail **/

.post-detail-content {
    max-width: 680px;
    margin: 0 auto;
}

.post-detail-img img {
    width: 100%;
    max-width: 500px;
    margin: 1rem auto;
}

.post-detail-cat {
    display: inline-block;
    font-size: .75em;
    background: #aaa;
    color: #fff;
    padding: 3px 6px;
}

.post-detail-text {
    font-size: .9em;
    padding: 5px 1rem;
    max-width: 680px;
    margin: 0 auto;
}


/*** Side ***/

#side {
    background-image: repeating-linear-gradient(45deg, #D2AE44, #D2AE44 10px, #CFAA41 10px, #CFAA41 20px);
    margin: 0 auto;
    padding: 1rem;
}

.side-section {
    max-width: 600px;
    margin: 0 auto;
}

.side-section h1 {
    padding-bottom: 12px;
}

form {
    margin-bottom: 2rem;
}

.form-control {
    max-width: 250px;
    font-size: 12px;
    height: 36px;
    border-radius: 0;
}

.btn-outline {
    height: 36px;
    width: 74px;
    font-size: .9rem;
    background: #E50026;
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 30%);
    border-radius: 0;
    color: #fff;
    padding: 5px 15px;
    text-decoration: none;
}

.cat-list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.cat-list li {
    display: block;
    width: 50%;
    margin: 0;
    padding: 2px;
}

.cat-list li a {
    display: block;
    padding: 0px 5px;
    background: #fff;
    font-size: .85em;
    font-weight: bold;
    text-align: center;
    line-height: 2;
    color: #E50026;
    text-decoration: none;
}

.link_list {
    position: relative;
}

.link_list_item {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 1rem;
    font-weight: bold;
    color: #fff;
    background-size: cover;
    background-position: 50% 50%;
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 30%);
    text-decoration: none;
}

.link_list_item:hover {
    color: #fff;
    transition: .2s;
}

.link_list_item_sub {
    display: block;
    font-size: .85em;
    color: palegoldenrod;
}

.link_bg_1 {
    background-image: url(images/link_bg/1.jpg);
}

.link_bg_2 {
    background-image: url(images/link_bg/2.jpg);
}

.link_bg_3 {
    background-image: url(images/link_bg/3.jpg);
}

.link_bg_4 {
    background-image: url(images/link_bg/4.jpg);
}

.link_bg_5 {
    background-image: url(images/link_bg/5.jpg);
}

.link_bg_6 {
    background-image: url(images/link_bg/6.jpg);
}

.link_bg_7 {
    background-image: url(images/link_bg/7.jpg);
}

.link_bg_8 {
    background-image: url(images/link_bg/8.jpg);
}

.link_bg_9 {
    background-image: url(images/link_bg/9.jpg);
}

.link_bg_10 {
    background-image: url(images/link_bg/10.jpg);
}

.side-nav li a {
    color: #666;
    padding: 10px;
    font-size: .9rem;
    font-weight: bold;
    /* border: solid 1px #666; */
    background: rgb(255 255 255 /70%);
    box-shadow: 0 1px 3px 0 rgb(0 0 0 / 30%);
    margin: 5px 0;
}


/*** FOOTER ***/

footer {
    margin: 0;
    padding: 1rem;
    text-align: center;
    font-size: .7em;
    color: #fff;
    background: #000;
}

footer p {
    margin: 0;
}

.footer-nav {
    display: flex;
    justify-content: center;
}

.footer-nav li a {
    display: block;
    color: #fff;
    font-size: 1.2em;
    margin: .5rem;
    text-decoration: none;
}


/*** BANNER ***/

.banners {
    width: 100%;
    text-align: center;
}

.banners img {
    /* width: auto; */
}

.banner-long {
    display: block;
    margin: 10px auto;
}

.banner-640 {
    display: block;
    margin: 40px auto;
}

.banner-468 {
    display: block;
    margin: 40px auto;
}

.banner-300 {
    display: none;
}

.banner-180 {
    display: block;
    margin: 10px auto;
}

@media (max-width: 992px) {
    .banner-180 {
        display: inline;
    }
    .banner-long {
        display: none;
    }
}

@media (max-width: 768px) {
    .banner-468 {
        display: block;
        margin: 10px auto;
    }
    .banner-300 {
        display: none;
    }
}

@media (max-width: 576px) {
    .banner-468 {
        display: none;
    }
    .banner-300 {
        display: block;
        margin: 10px auto;
    }
}

@media (max-width: 360px) {
    .banner-180 {
        display: block;
        margin: 10px auto;
    }
}


/*** Media Querie ***/

@media (max-width: 576px) {
    h2 {
        font-size: .8em;
    }
    .post-item-cat,
    .post-item-date {
        font-size: .7em;
    }
    .post-item-btn {
        font-size: .8em;
    }
}
