body {
    padding-top: 100px;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-size: 1.5rem;
}

header {
    width: 100%;
    height: 150px;
    background: #ffffffb9;
    padding: 0 25px;
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    font-family: 'Arial Rounded MT Bold', monospace;
    z-index: 10;
}

header a {
    color: #1C2A55;
    text-decoration: none;
}

header a:visited {
    color: #1C2A55;
}

header img {
    height: 95px;
    margin-top: 5px;
    margin-left: 55px;
}

h2 {
    font-size: 1.6rem;
    font-weight: normal;
    margin-top: 0;
    margin-left: 10px;
    line-height: 0;
}

/* .under {
    background: linear-gradient(transparent 70%, #977AD4 70%);
} */

.top {
    padding: 0 15%;
    padding-top: 50px;
    display: flex;
}

.top img {
    width: 55px;
    height: 55px;
    margin: 25px 25px 0 15px;
}

h4 {
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 35px;
    margin-bottom: 20px;
}

hr {
    border: none;
    border-top: 1px solid rgb(120, 120, 120);
    width: 70%;
}

.main {
    padding: 0 15%;
}

.main a {
    color: inherit;
    text-decoration: none;
}

.main a:visited {
    color: inherit;
}

h5 {
    font-size: 1.5rem;
    font-weight: bold;
    color:rgba(179, 179, 179, 0.508);
    margin-top: 0;
    margin-bottom: 0;
}

.under2 {
    border-bottom: dotted 3px #977AD4;
}

.card-group {
    margin: 30px 15%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.card-group > :nth-child(2n){
    margin-left: 40px;
}
.card-group > :nth-child(n+3){
    margin-top: 40px;
}

.card a {
    color: black;
    text-decoration: none;
}

.card a:visited {
    color: black;
}

.card {
    width: calc((100% - 40px * 1) / 2);
    /* margin: 0 15%; */
    box-shadow: 0px 1px 1px rgba(0,0,0,.14),
                0px 2px 1px rgba(0,0,0,.12),
                0px 1px 3px rgba(0,0,0,.20);
    border-radius: 4px;
}

.card:hover {
    box-shadow: 0px 8px 10px rgba(0,0,0,.14),
                  0px 3px 14px rgba(0,0,0,.12),
                  0px 5px 5px rgba(0,0,0,.20);
}

.card__img-wrapper {
    position: relative;
    padding-top: 56.25%; 
    overflow: hidden;
    margin: 0;
}

.card__img {
    position: absolute;
    top: 60%;
    left: 0%;
    width: 100%;
    transform: translateY(-50%);
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.card__body {
    padding: 16px;
}

.card__body > *:last-child {
    margin-bottom: 0;
}

.card__title {
    margin-bottom: 5px;
    font-size: 1.4rem;
    font-weight: bold;
    border-bottom: solid 8px;
    border-image: linear-gradient(to right, #8F00A5, #fff);
    border-image-slice: 1;
}

.card__title2 {
    color: #777;
    font-size: 1.3rem;
}

.card__date {
    text-align: end;
    color: #777;
    font-size: 1.3rem;
}

footer {
    width: 100%;
    height: 75px;
}

/***追従するトップへ戻るボタン***/
#page-top {
    position: fixed;
    right: 50px;
    bottom: 50px;
    height: 50px;
    text-decoration: none;
    font-weight: normal;
    transform: rotate(90deg);
    font-size: 70%;
    line-height: 1.5rem;
    color: #737373;
    padding: 0 0 0 35px;
    border-top: solid 1px;
}
#page-top::before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0px;
    width: 15px;
    border-top: solid 1px;
    transform: rotate(35deg);
    transform-origin: left top;
}
/***トップへ戻るボタンここまで***/

@media screen and (max-width: 1000px) {
    body {
        padding-top: 150px;
        /* font-family: 'Zen Maru Gothic', sans-serif; */
        font-size: 2rem;    
    }

    header {
        /* width: 100%; */
        height: 175px;
        /* background: #ffffffb9;
        padding: 0 25px;
        box-sizing: border-box;
        position: fixed;
        top: 0;
        left: 0;
        font-family: 'Courier Prime', monospace; */
    }
    
    /* header a {
        color: black;
        text-decoration: none;
    }
    
    header a:visited {
        color: black;
    } */

    h2 {
        font-weight: normal;
    }

    /* .under {
        background: linear-gradient(transparent 70%, #977AD4 70%);
    } */

    .top {
        padding: 0 25px;
        /* display: flex; */
    }
    
    .top img {
        width: 80px;
        height: 80px;
        margin: 50px 10px 0 0;
    }
    
    h4 {
        font-size: 2.5rem;
        font-weight: normal;
        line-height: 75px;
        /* margin-bottom: 0px; */
    }

    hr {
        /* border: none;
        border-top: 1px solid rgb(120, 120, 120); */
        width: 95%;
    }
    
    .main {
        padding: 0 25px;
    }
    
    /* .main a {
        color: inherit;
        text-decoration: none;
    }
    
    .main a:visited {
        color: inherit;
    } */
    
    h5 {
        font-size: 2rem;
        font-weight: normal;
        /* color:rgba(179, 179, 179, 0.508); */
        margin-top: 25px;
        /* margin-bottom: 0; */
    }
    
    /* .under2 {
        border-bottom: dotted 3px #8F00A5;
    } */

    .card-group {
        margin: 0 75px;
        /* display: flex;
        flex-direction: column;
        justify-content:flex-start; */
    }
    
    .card-group > :nth-child(2n){
        margin-left: 20px;
        margin-top: 40px;
    }

    /* .card a {
        color: black;
        text-decoration: none;
    }

    .card a:visited {
        color: black;
    } */

    .card {
        width: 90%;
        height: 700px;
        margin-left: 20px;
        /* box-shadow: 0px 1px 1px rgba(0,0,0,.14),
                    0px 2px 1px rgba(0,0,0,.12),
                    0px 1px 3px rgba(0,0,0,.20);
        border-radius: 4px; */
    }

    /* .card:hover {
        box-shadow: 0px 8px 10px rgba(0,0,0,.14),
                    0px 3px 14px rgba(0,0,0,.12),
                    0px 5px 5px rgba(0,0,0,.20);
    }

    .card__img-wrapper {
        position: relative;
        padding-top: 56.25%; 
        overflow: hidden; 
    }

    .card__img {
        position: absolute;
        top: 35%;
        left: -30%;
        width: 150%;
        transform: translateY(-50%);
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
    }

    .card__body {
        padding: 16px;
    }

    .card__body > *:last-child {
        margin-bottom: 0;
    } */

    .card__title {
        margin-bottom: 5px;
        font-size: 2rem;
        font-weight: normal;
        border-bottom: solid 8px;
        border-image: linear-gradient(to right, #8F00A5, #fff);
        border-image-slice: 1;
    }

    .card__title2 {
        color: #777;
        font-size: 1.9rem;
    }

    .card__date {
        text-align: end;
        color: #777;
        font-size: 1.9rem;
    }

    /* footer {
        width: 100%;
        height: 75px;
    } */
}