@charset "utf-8";
/* =====================
article__header
===================== */
.article__header{
    margin-top: 40px;
    position: relative;
    background-color:#8ACD98;
    color: var(--primary-white);
    padding: 40px;
}
/* stamp 帯　ここから */
.article__header::before,
.article__header::after{
    content: "";
    width: 100%;
    height: 30px;/* 直径 */
    background-image: radial-gradient(circle, #FFFDF6 10px, transparent 10px);
    background-size: 32px 30px;/* 左：距離　右：直径 */
    display: block;
    position: absolute;
}
.article__header::before{
    top: -15px;/* 半径 */
    left: 0;
}
.article__header::after{
    bottom: -15px;/* 半径 */
    left: 0;
}
/* stamp 帯　ここまで */
.article__header__container{
    max-width: 1200px;
    margin: 0 auto;
    padding:40px
}
.sub-title{
    font-size: 1.6rem;
}
.title{
    font-size: 3.0rem;
    font-weight: 700;
}
.title__discription{
    width:590px;
    display: block;
    margin: 0 auto;
    margin-top: 20px;
    position: relative;
}
.title__discription::after{
    position: absolute;
    bottom:-80px;
    right:-250px;
    display: block;
    content: "";
    width: 228px;
    height: 200px;
    background-image: url(../image/top_forschool.png);
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    object-fit: contain;
}
@media screen and (max-width: 960px) {
    .article__header__container{
        max-width: 1200px;
        margin: 0 auto;
        padding:40px
    }
    .sub-title{
        font-size: 1.4rem;
    }
    .title{
        font-size: 2.0rem;
        font-weight: 700;
    }
    .title__discription{
        width:400px;
        display: block;
        margin: 0 auto;
        margin-top: 20px;
    }
    .title__discription::after{
        width:171px;
        height:150px;  
        right:-180px
        }

}
@media screen and (max-width: 767px) {
    .article__header__container{
        max-width: 350px;
        display: block;
        margin: 0 auto;
        padding: 20px;
    }
    .article__header{
        padding: 20px;
    }
    /* 帯SP */
    .article__header::before,
    .article__header::after{
        content: "";
        width: 100%;
        height: 26px;/* 直径 */
        background-image: radial-gradient(circle, #FFFDF6 10px, transparent 10px);
        background-size: 32px 26px;/* 左：距離　右：直径 */
        display: block;
        position: absolute;
    }
    .article__header::before{
        top: -13px;/* 半径 */
    }
    .article__header::after{
        bottom: -13px;/* 半径 */
    }
    /* 帯SP */  
    .title__discription{
        margin-top: 150px;
        max-width: 300px;
    }
    .title__discription::after{
        display: none;
    }
    .title{
        position: relative;
    }
    .title::after{
    position: absolute;
    top:50px;
    left:150px;
    display: block;
    content: "";
    width: 171px;
    height: 150px;
    background-image: url(../image/top_forschool.png);
    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
    object-fit: contain;
}
}
.topic{
    color: #8ACD98;
    border-bottom: dashed 3px #8ACD98;
}

/* =====================
main
===================== */
.section--forschool{
    max-width: 85.7%;
    margin: 0 auto;
}

.school_ex_container{
    border: solid 3px #8ACD98;
    border-radius: 20px;
    max-width:930px;
    margin: 0 auto;
    margin-top: 40px;
    display: flex;
    padding: 20px;
    position: relative
}
.school_ex_container .school_ex_number {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 30px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFFDF6;;
    color: #8ACD98;
    font-weight: 700;
}
.school_ex_txt{
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 20px;
    flex-basis: 35%;
}
.school_ex_txt_list{
    display: flex;
}
.school_ex_txt_list dt{
    font-weight: 400;
    width:70px;
    /* line-height: 2.0em; */
}
.school_ex_txt_list dd::before{
    content: ":";
    padding-right: 20px;
}
.school_ex_imgContainer{
    display: flex;
    align-items: center;
    flex-basis: 65%;
}

.school_ex_imgBox {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #8ACD98;
    background: #FFF;
    max-width:472px;
    margin: 10px;
}
.school_ex_imgBox .school_ex_category {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    font-size: 1.6rem;

}
.school_ex_content{
    padding: 10px;
    width:211px;
    text-align: center;
}
.school_ex_plusImg img{
    width:30px;
    height:30px;
}
@media screen and (max-width: 960px) {
    .section--forschool{
        max-width: 700px;
    }
    .school_ex_container{
        flex-direction: column;
        max-width: 700px;
    }
    .school_ex_txt{
        width:323px;
        margin: 0 auto;
        margin-top: 20px;
    }
    .school_ex_imgContainer{
        margin: 0 auto;
        margin-top: 40px;
    }
}
@media screen and (max-width: 767px) {
    .section--forschool{
        max-width: 350px;
    }
    .school_ex_container{
        max-width: 350px;        
    }
    .school_ex_imgContainer{
        flex-direction: column;
        margin-top: 10px;
    }
    .school_ex_imgBox{
        margin-top: 30px;
    }
    .school_ex_txt{
        margin-top: 0;
    }
}
.quote.butterfly{
    width:200px;
    margin: 40px 0 0 auto;

}
.quote{
    margin-top: 40px;
}
.flow{
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}
.flow_title{
    text-align: center;
}
.flow_title_number{
    background: #8ACD98;
    width:64px;
    height:64px;
    border-radius: 50%;
    text-align: center;
    font-family: "Holtwood One SC", serif;
    font-size: 3.0rem;
    color: #FFF;
    padding: 10px;
    display: inline-block;
}
.flow_title_name{
    font-weight: 700;
    font-size: 2.0rem;
    display: inline-block;
    margin-left: 20px;
}
.flow_txt{
    max-width: 320px;
    margin-top: 20px;
}
@media screen and (max-width: 960px) {
    .flow{
        flex-direction: column;
        align-items: center
    }
    .flow_container{
        margin-top: 40px;
    }

}
@media screen and (max-width: 767px) {
    .flow_title_number{
        width:54px;
        height:54px;
        font-size: 2.0rem;
    }
    .flow_title_name{
        font-size: 1.6rem;
    }
}
.btn--forschool{
    display:block;
    width:250px;
    height:56px;
    color: var(--primary-white);
    background-color: #8ACD98;
    text-align: left;
    font-weight: 700;
    line-height: 1;
    box-sizing: border-box;
    padding:20px 14px;
    position: relative;
    transition: all 0.2s linear 0s;
    margin: 0 auto;
    margin-top: 80px;
}
.btn--forschool::after{
    content:'';
    display: inline-block;
    width:16px;
    height:16px;
    background-image: url(../image/arrow.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right:16px;
    top:50%;
    transform: translateY(-50%);
}
.btn--forschool:hover{
	transform:rotateZ(5deg)
}
.contact_txt{
    font-size: 1.4rem;
    text-align: center;
}
/* quote  右端*/
.quote{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width:300px;
    margin: 0 0 0 auto;
    margin-top: 10px;
}
.quote_left{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width:350px;
    margin: 0 auto 0 200px;
    margin-top: 40px;
}
.quote__symbol{
    width: 100px;
    margin-top: 10px;
    margin-right: 0px;
    transform: rotate(-10deg);
}
.quote__symbol_left{
    width: 100px;
    margin-top: 10px;
    margin-right: 0px;
    transform: rotate(10deg);
}

.quoteImg.butterfly{
    width:100px;
    transform: rotate(30deg);
    margin-top: -10px;   
}
.quoteImg.dragonfly{
    width:100px;
    transform: rotateX(45deg);
    margin-top: -10px;
    margin-left: -7px; 
}
.topic-flow{
    margin-top: 0px;
}
.quote__txt_left{
    margin-left: 20px;
}
@media screen and (max-width: 960px) {
    .quote_left{
        margin: 40px auto 0 0;
    }
}

.count2{
    animation-iteration-count:3;/*この数字を必要回数分に変更*/
}