
article{
    padding: 4rem 0;
}
article section{
    width: clamp(48rem, 90%, 68.75rem);
    margin: 0 auto;
}
@media (max-width: 767px){
    article section{
        width: 90%;
    }
}
article h2{
    margin: 0 auto 3rem;
    width: 24rem;
}
article h3{
    font-size: 1.5rem;
    text-align: center;
    font-weight: normal;
    border-bottom: 2px solid;
    border-image:var(--main-gradation) 1;
    padding-bottom: .5rem;
    margin-bottom: 1rem;
}
article h4{
    font-size: 1.3rem;
    text-align: center;
    margin: 2rem auto;
    padding: 1rem 0;
    background: var(--main-gradation-opacity);
}

.school_life ul{
    margin: 2rem auto 3rem;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 3rem;
}
.school_life li{
    padding: 1rem;
    border: 1px solid rgba(234,234,234,1);
}
.school_life figcaption{
    display: flex;
    align-items: center;
    gap: .5rem;
    justify-content: center;
    padding-top: .5rem;
}
.school_life figcaption::before{
    content: "";
    width: 1rem;
    height: 1rem;
    background: linear-gradient(45deg, rgba(255,182,193,1) 0%, rgba(255,182,193,1) 50%, rgba(173,216,230,1) 50%, rgba(173,216,230,1) 100%);
}
@media (max-width: 767px){
    .school_life ul{
        grid-template-columns: repeat(2,1fr);
        gap: 2rem;
    }
}

article dt{
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: 1.1rem;
}
article dt::before{
    content: "";
    width: 1rem;
    height: 1rem;
    background: linear-gradient(45deg, rgba(255,182,193,1) 0%, rgba(255,182,193,1) 50%, rgba(173,216,230,1) 50%, rgba(173,216,230,1) 100%);
}
article dd{
    margin: .5rem auto 2rem;
    padding-left: 1.6rem;
}

.unit{
    margin-bottom: 5rem;
}
.unit h4{
    font-size: 1.3rem;
    margin: 2rem auto 1rem;
    padding: .5rem 2rem;
    background: var(--main-gradation-opacity);
}
.unit ol{
    margin-left: 2rem;
}
.unit li{
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: 1.1rem;
}
.unit li::before{
    content: "";
    width: 1rem;
    height: 1rem;
    background: linear-gradient(45deg, rgba(255,182,193,1) 0%, rgba(255,182,193,1) 50%, rgba(173,216,230,1) 50%, rgba(173,216,230,1) 100%);
}


.flow ol{
    display: flex;
    gap: 3rem;
    margin-top: 2rem;
}
.flow li{
    width: min-content;
    border: 2px solid rgba(255,182,193,1);
    padding: 1rem;
    border-radius: 2rem;
    position: relative;
}
.flow li::after{
    content: "▶︎";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -2.25rem;
    color: rgba(255,182,193,1);
}
.flow li:last-of-type::after{
    display: none;
}