@charset "UTF-8";

/*----------------------------------------------------
	☆PC
----------------------------------------------------*/

/*--- mainTitle --*/
#mainTitle .title .en::before{
    content: "EDUCATION";
}
#mainTitle .title::before{
    background: url("../images/education/icon_mainTitle.png") center center / contain no-repeat;
}

#mainTitle .deco01{
    width: 370px;
    left: 50px;
    bottom: -50px;
}
#mainTitle .deco02{
    width: 260px;
    right: 120px;
    bottom: -50px;
}

/*--- training --*/

#contents .training .graph{
    margin-bottom: 60px;
}
#contents .training .graph .image{
    position: relative;
}
#contents .training .graph .image .deco01{
    width: 100%;
    left: 0;
    top: 0;
}
#contents .training .graph .image .deco02{
    width: 100%;
    width: 19.7%;
    left: 10%;
    top: 0;
}
#contents .training .graph .image .loadmap{
    position: relative;
    z-index: 1;
}

#contents .training .trainingList{
    position: relative;
}
#contents .training .trainingList ul{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    position: relative;
    z-index: 1;
}
#contents .training .trainingList li{
    width: 100%;
}
#contents .training .trainingList li.half{
    width: calc(50% - 17px);
}
#contents .training .trainingList .frameBox.frameBoxPattern02.green{
    background: #66dd9f;
}
#contents .training .trainingList .frameBox.frameBoxPattern02.green .inner{
    background: url("../images/common/bg_check.png") left top / 72px repeat #d9f6e7;
}

#contents .training .trainingList .frameBox.frameBoxPattern02 .inner{
    padding: 30px 100px;
    height: 100%;
}
#contents .training .trainingList .frameBox.frameBoxPattern02.half .inner{
    padding-left: 50px;
    padding-right: 50px;
}

#contents .training .trainingList .title,
#contents .supportList li .title{
    text-align: center;
    font-weight: bold;
    font-size: 24px;
    color: #00893e;
    margin-bottom: 15px;
    line-height: 1.5;
}

#contents .training .trainingList .deco01{
    width: 100%;
    margin-top: 50px;
    position: relative;
    z-index: 1;
}
#contents .training .trainingList::before,
#contents .training .trainingList::after{
    width: 16px;
    height: 90%;
    content: "";
    display: block;
    background: url("../images/common/pipe_parts_tate.png") center top / contain repeat-y;
    position: absolute;
    z-index: -1;
    top: 5%;
}
#contents .training .trainingList::before{
    left: 25%;    
}
#contents .training .trainingList::after{
    right: 25%;    
}

#contents .training .trainingList .deco02{
    width: 240px;
    bottom: -50px;
    right: -100px;
    z-index: 2;
}

/*--- supportList --*/

#contents .support{
    position: relative;
}

#contents .supportList{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 60px 35px;
}
#contents .supportList li.frameBox{
    width: calc(50% - 20px);
    position: relative;
    background: #ffa2b5;
}
#contents .supportList li .inner{
    padding-top: 70px;
    height: 100%;
    background: url("../images/common/bg_check.png") left top / 72px repeat #ffe8ec;
}
#contents .supportList li .icon{
    width: 100px;
    background: #ffa2b5;
    border: 2px solid #000;
    padding: 3px;
    border-radius: 100px;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%,-50%);
}
#contents .supportList li .icon img{
    background: #fff;
    border: 2px solid #000;
    border-radius: 100px;
    display: block;
}
#contents .supportList li .title{
    color: #ea3b65;
}
#contents .support .deco01{
    width: 226px;
    left: -120px;
    top: 90px;
    z-index: -1;
}


/*----------------------------------------------------
	☆ANIMATION
----------------------------------------------------*/



/*----------------------------------------------------
	☆901以上　PCのみ & HOVER
----------------------------------------------------*/

@media screen and (min-width:901px) {
}


/*----------------------------------------------------
	☆UNDER 1200
----------------------------------------------------*/

@media screen and (max-width:1200px) {
    
    #mainTitle .deco01{
        width: 31%;
    }
    #mainTitle .deco02{
        width: 21.4%;
    }
    
}

/*----------------------------------------------------
	☆UNDER 900
----------------------------------------------------*/

@media screen and (max-width:900px) {    
    
    #mainTitle .deco01 {
        width: 31%;
        left: -5%;
        bottom: -23px;
    }
    #mainTitle .deco02 {
        right: 4%;
        bottom: -20px;
    }
    
    /*--- training ---*/
    #contents .training .trainingList .frameBox.frameBoxPattern02 .inner,
    #contents .training .trainingList .frameBox.frameBoxPattern02.half .inner {
        padding: 30px 40px;
    }
    
    #contents .training .trainingList .deco02 {
        width: 32%;
        max-width: 200px;
        right: -28px;
    }
    #contents .training .trainingList .title,
    #contents .supportList li .title {
        font-size: 20px;
    }
    
    /*--- support ---*/
    #contents .support .deco01 {
        width: 30%;
        max-width: 180px;
        left: -20px;
        top: 38px
    }
    
    #contents .supportList {
        gap: 60px 20px;
    }
    #contents .supportList li.frameBox {
        width: calc(50% - 10px);
    }
    
}


/*----------------------------------------------------
	☆UNDER 600
----------------------------------------------------*/

@media screen and (max-width:600px) {
    
     #mainTitle .deco01 {
        width: 40%;
        left: -7%;
        bottom: auto;
        top: 4%;
    }
    #mainTitle .deco02 {
        right: -3%;
        bottom: -35px;
        width: 29%;
    }
    
    /*--- training ---*/
    #contents .training .trainingList .frameBox.frameBoxPattern02 .inner,
    #contents .training .trainingList .frameBox.frameBoxPattern02.half .inner {
        padding: 30px 30px;
    }
    #contents .training .trainingList li.half{
        width: 100%;
    }
    #contents .training .trainingList::before, #contents .training .trainingList::after{
        top: 10%;
    }
    
    /*--- support ---*/
    #contents .supportList{
        padding-top: 20px;
    }
    #contents .supportList li.frameBox{
        width: 100%;
    }
    #contents .support .deco01 {
        left: -34px;
        top: 73px;
    }
    #contents .supportList li .inner{
        padding: 50px 30px 30px; 
    }
    #contents .supportList li .icon{
        width: 80px;
    }
    
}

