@charset "UTF-8";

/* CSS Document */

body {
    color: #642a2e;
    /* RGB */
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.6em;
    line-height: 2.4rem;
    text-align: center;
    background-color: #f58e7d;
}


/* ======================= main ======================= */

#bloglist-title {
    width: 100%;
    height: 0;
    background: url(../images/blog/blog_list_top.jpg) no-repeat center / cover;
    margin-bottom: 100px;
    padding-bottom: 34.722%;
}

#bloglist-title .page-title {
    text-align: center;
}

.page-title {
    padding-top: 18%;
    color: #642a2e;
    text-shadow: 1px 1px 4px #fffff7;
    text-transform: uppercase;
}

.section-bloglist {
    background-color: #fffff7;
    margin: 8em auto;
    padding: 60px 8em;
    width: 70%;
    height: auto;
    box-shadow: -6px -6px 30px rgb(207 172 184 / 20%), 6px 6px 30px rgb(207 172 184 / 20%);
    border-radius: 20px;
}

.section-bloglist ol li {
    border-bottom: solid 1px #642a2e;
    padding: 1em 0;
}

.section-bloglist ol li:last-of-type {
    border-bottom: unset;
}

.btn {
    margin: 40px auto;
}


/* ------------------------ button ------------------------*/

a.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 222px;
    height: 40px;
    padding: 1em 2em;
    position: relative;
    background: #e94357;
    border: 1px solid #e94357;
    border-radius: 30px;
    box-sizing: border-box;
    padding: 0 45px 0 25px;
    color: #fff;
    font-family: akagi-pro, sans-serif;
    font-weight: 300;
    font-style: normal;
    letter-spacing: 0.1em;
    line-height: 1.3;
    text-align: left;
    text-decoration: none;
    transition-duration: 0.3s;
}

a.btn:before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 25px;
    margin-top: -6px;
}

a.btn:hover {
    background: #fff;
    color: #9f4160;
}

a.btn:hover:before {
    border-top: 2px solid #9f4160;
    border-right: 2px solid #9f4160;
}

@media screen and (max-width: 900px) {
    #bloglist-title .page-title {
        text-align: center;
    }
    .page-title {
        padding-top: 26%;
        font-size: 7.2em;
    }
    .section-bloglist {
        padding: 40px;
        width: 90%;
    }
    .btn {
        margin: 20px auto 0px auto;
    }
}

@media screen and (max-width: 700px) {
    #bloglist-title {
        height: 50vh;
    }
    .page-title {
        font-size: 5em;
    }
}

@media screen and (max-width: 520px) {
    .page-title {
        padding-top: 30%;
        font-size: 3.8em;
    }
}

@media screen and (max-width:420px) {
    #bloglist-title {
        height: 40vh;
    }
    .page-title {
        padding-top: 34%;
        font-size: 2.8em;
    }
}