body{
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    line-height: 1.8;
    display:block;
    margin:0 auto;
    width: 100%;
    letter-spacing: 0;
    position:relative;
    overflow-x:hidden;
}

.din{
    font-family: "din-2014", sans-serif;
    font-weight: 700;
    font-style: normal;
}

h1{
    margin: 0;
    line-height: 1;
}

h1 img{
    width: 100%;
    /*height: 80vh;*/
    object-fit: cover;
    margin: 0;
}

.message-area{
    background-image: url('../img/message-bg.png');
    background-size: contain;
    background-repeat: repeat;
    box-sizing: border-box;
    padding:45px 0 35px;
}

.charm-area{
    background-image: url('../img/note-type2.png');
    background-size: contain;
    background-repeat: repeat;
    box-sizing: border-box;
    padding:calc(18vw + 30px) 0 40px;  
    margin-top: -26vw;
}


.interview-area{
    background-image: url('../img/message-bg.png');
    background-size: contain;
    background-repeat: repeat;
    box-sizing: border-box;
    padding:40px 0;
}


.wrap{
    padding:0 12px;
    box-sizing: border-box;
    width: 100%;
    position:relative;
}

footer .wrap{
    padding:0 24px;
}

.ma-1{
    text-align: center;
    margin: 0;
    font-size: 12px;
    color:#D14473;
    line-height: 3.2;
    font-weight: bold;
    position:relative;
    z-index: 2;
}

.ma-2{
    text-align: center;
    margin-top: 20px;
    margin-bottom: 0;
    font-size: 32px;
    color:#D14473;
    line-height: 2;
    font-weight: bold;
    position:relative;
    left: 10px;  
}

.m-1{
    position:absolute;
    left: 3px;
    top: 40%;
    width: 95px; 
    z-index: 1;  
}

.m-2{
    position:absolute;
    right: 0;
    top: 48%;
    width: 80px; 
    z-index: 1;    
}

.genre-area{
    background: #F7DDE6;
    padding:50px 0 20px;
    margin-bottom: 25vw;
    position: relative;
}

.genre-area:after{
    content: '';
    position:absolute;
    bottom: -19.8vw;
    left: 0;
    z-index: 99;
    border-top: 20vw solid #F7DDE6;
    border-right: 49vw solid transparent;
    border-left: 49vw solid transparent;
}

.genre-area h2{
    text-align: center;
    margin: 0;
    font-size: 25px;
    color:black;
    line-height: 2;
    letter-spacing: 0.04em;
}

.genre-area h2 span{
    color:white;
    background: #D14473;
    display:inline-block;
    padding:0 5px;
    margin-right: 3px;
}

.genre-flex{
    display:flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    margin-top: 30px;
}

.genre-flex div{
    width: 30%;
    margin-bottom:20px;
}

.genre-flex div img{
    width: 100%;
}

.g-en{
    position:relative;
    bottom: 10px;
}

.g-text{
    font-size: 11px;
    text-align: center;
    margin: 0;
    line-height: 1.2;
    font-weight: bold;
}

.ch-title1{
    text-align: center;
    font-size: 25px;
    margin: 0;

}

.ch-title1 span{
    color:#D14473;
    letter-spacing: -0.04em;
    background:linear-gradient(transparent 80%, #FFE400 0%);
}

.charm-area h2.din{
    text-align: center;
    font-size: 45px;
    color:#515151;
    letter-spacing: 0.06em;
    margin:40px 0 0;
    line-height:1.6;
}

.charm-area h2.din span{
    color:#D14473;
    margin:0 1px;
}

.charm-sub{
    text-align: center;
    color:#D14473;
    font-size: 17px;
    font-weight: bold;
    margin: 0;
    line-height: 1.4;
}

.charm-num{
    color:white;
    width: 100%;
    box-sizing:border-box;
    padding:0 10px;
    position:relative;
    background-size: cover;
    background-position: right;
    background-image: url('../img/charm-bg.png');
}


.charm-num h3{
    margin:25px 0 0;
    font-size: 33px;
    line-height: 1.65;
}

.charm-num h3 span{
    font-size: 40px;
    line-height: 1.4;
    position:relative;
    top: 2px;
}

.chn-2{
    font-size: 23px;
    font-weight: bold;
    margin:20px 0;
    letter-spacing: -0.02em;
}

.chn-2.mb-0{
    margin-bottom: 0;
}

.chn-2 span.border{
    background:linear-gradient(transparent 85%, #FFE400 0%);
}

.chn-2 span.din{
    font-size: 40px;
    line-height: 1;
}

.chn-3{
    font-size: 13px;
    margin: 0;
}

.chn-3.mt-type2{
    margin:3px 0 20px;
}

.navi-img{
    width: 100%;
    margin:0 0 10px;
}

.chn-4{
    background: #515151;
    color:#FFE400;
    width: 310px;
    max-width: 100%;
    text-align: center;
    border-radius: 5px;
    font-size: 13px;
    padding:3px 0;
    font-weight: bold;
}

.chn-3.bold{
    font-weight: bold;
}

.chn-5{
    background: #A72126;
    color:white;
    text-align: center;
    font-size: 16px;
    padding:3px 0;
    font-weight: bold;
    margin:20px 0 30px;
    position:relative;
}

.chn-5 span{
    color:#FFE400;
}

.chn-5 span.din{
    font-size: 23px;
    font-weight: bold;
    line-height: 1.5;
}

.chn-5:after{
    content: '';
    position:absolute;
    bottom: -13px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);  
    border-top: 14px solid #A72126;
    border-right:8px solid transparent;
    border-left: 8px solid transparent;      
}

.logo-flex{
    margin-top: 30px;
    display:flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}

.lf-left{
    width: 35%;
}

.lf-left img{
    width: 100%;
}

.lf-right{
    width: 58%;
}

.lf-right p{
    margin: 0;
    font-size: 12px;
    line-height: 1.9;
}

.chn-6{
    font-size: 11px;
    color:#221815;
    margin:10px 0 0;
}

.chn-7{
    font-size: 15px;
    color:#D14473;
    font-weight: bold;
    margin: 0;
}

.map{
    position:relative;
    width: 100%;
}

.map-rel{
    position: relative;
}

.map-rel p{
    position:absolute;
    left: 0;
    top: 0;
    font-size: 15px;
    display:flex;
    align-items: center;
    margin: 0;
}

.map-rel p img{
    width: 8px;
    margin:0 5px;
}

.map-rel p .din{
    font-size: 46px;
    color:#D14473;
    line-height: 1.2;
    font-weight: bold;
}

.map-rel p .din .size2{
    font-size: 36px;
}

.chn-flex{
    display:flex;
    flex-wrap: wrap;
    width: 100%;
    box-sizing:border-box;
    padding:0 10px;
}

.chn-left{
    width: 29px;
    margin-bottom:25px;
}

.chn-right{
    box-sizing:border-box;
    width: calc(100% - 29px);
    padding-left:15px;
    margin-bottom:25px;
}

.mb-20{
    margin-bottom: 20px;
}

.chn-left img{
    width: 100%;
}

.chnr-1{
    margin: 0;
    font-size: 16px;
    font-weight: bold;
    color:#A72126;
}

.chnr-2{
    margin:2px 0 0;
    font-size: 13px;
}

.chn-border{
    border:2px solid black;
    box-sizing:border-box;
    padding:5px;
    width: 100%;
    display:flex;
    align-items: center;
    margin-top: 15px;
} 

.chn-border img{
    width: 76px;
    margin-right: 10px;
}

.chn-border p{
    font-size: 12px;
    line-height: 1.7;
    margin: 0;
}

.chn-bottom{
    text-align: center;
    font-size: 16px;
    margin:0;
    letter-spacing: -0.04em;
}

.banner-area{
    margin-top: 60px;
}

.banner-area a{
    display:block;
    margin:3px 0;
}

.banner-area a img{
    width: 100%;
}

.course-area{
    background: white;
    padding:5px 0 0;
}

.course-area h2.din{
    text-align: center;
    font-size: 45px;
    color:#515151;
    letter-spacing: 0.06em;
    margin:40px 0 0;
    line-height:1.6;
}

.course-area h2.din span{
    color:#D14473;
    margin:0 1px;
}

.sub2{
    text-align: center;
    font-size: 10px;
    color:#515151;
    font-weight: bold;
    margin:10px 0;
}

.dot-img{
    width: 50%;
    line-height: 1;
    display:block;
    margin:0 auto;
}

.course-flex{
    display:flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 2px;
}

.course-flex div{
    width: 48%;
}

.course-flex div a{
    font-size: 11px;
    text-align: center;
    box-sizing:border-box;
    display:block;
    width: 100%;
    text-decoration:none;
    font-weight: bold;
    line-height: 1.1;
}

.course-flex div a span{
    font-size: 19px;
    display:block;
    opacity: 0.5;
    
}

.course-flex div.cf-left a{
    border:5px solid #41B25D;
    padding:13px 0;
    color:#41B25D;
}

.course-flex div.cf-right a{
    border:5px solid #D14473;
    padding:13px 0;
    color:#D14473;
}

.creative-area{
    width: 100%;
    background:#41B25D;
    box-sizing: border-box;
    position:relative;
    padding:50px 0 15px;
    margin-top:40px;
}




.course-flex div.cf-left{
    position: relative;
}

.arrow1{
    width: 12px;
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); 
    z-index: 10;    
}

.arrow2{
    width: 12px;
    position: absolute;
    bottom: -37px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 10;     
}

.arrow3{
    width: 12px;
    position: absolute;
    bottom: -54px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 10;    
}

.rel{
    position:relative;
}

.course-box{
    background: white;
    box-sizing:border-box;
    padding:20px 12px 50px;
}

.rel .c-main{
    width: 100%;
}

.en1{
    position:absolute;
    left: 0;
    top: 0;
    width: 41vw;
}

.course-point{
    display:flex;
    align-items: center;
    width: 100%;
    margin-top: 40px;
}

.cp-left{
    text-align: center;
}

.cp-left p{
    margin: 0;
    text-align: center;
    font-size: 35px;
    font-weight: bold;
    line-height: 1;
}

.cp-left p span{
    font-size: 12px;
    color:#41B25D;
    display: block;
    letter-spacing: 0.04em;
}

.cp-right{
    padding-left: 10px;
}

.cp-right h3{
    margin: 0;
    line-height: 1.5;
    font-size: 16px;
}

.img-flex{
    display:flex;
    justify-content: space-between;
    margin:30px 0 60px;
}

.img-left{
    width: 45.5%;
    background-image: url('../img/point-bg.png');
    background-size:cover;
}

.img-right{
    width: 45.5%;
    background-image: url('../img/point-bg.png');
    background-size:cover;    
}

.space1 .point-img{
    position:relative;
    top: 7px;
    left: 7px;
    width: 100%;
}

.space2 .point-img{
    position:relative;
    top: -7px;
    left: -7px;
    width: 100%;
}

.space3 .point-img{
    position:relative;
    top: -7px;
    left: 7px;
    width: 100%;
}

.space4 .point-img{
    position:relative;
    top: 7px;
    left: -7px;
    width: 100%;
}

.last-flex{
    margin-bottom: 0!important;
}

.creative-area:after{
    content: '';
    position: absolute;
    bottom: -81px;
    right: 0;
    border-top: 82px solid #41B25D;
    border-left: 0 solid transparent;
    border-right: 100vw solid transparent;
}

.beauty-area{
    width: 100%;
    background:#D14473;
    box-sizing: border-box;
    position:relative;
    padding:15px 0 50px;
    margin-top: 80px;
}

.beauty-area:after{
    content: '';
    position: absolute;
    top: -81px;
    right: 0;
    border-top: 82px solid #D14473;
    border-right: 100vw solid transparent;
    border-left: 0 solid transparent;
    transform: rotate(180deg);
}

#beauty .img-right{
    background-image: url('../img/point-bg2.png');
}

#beauty .img-left{
    background-image: url('../img/point-bg2.png');
}

#beauty .cp-left p span{
    color:#D14473;
}

.interview-area .banner-area{
    margin-top: 0;
}

.schedule-flex{
    display:flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 28px;
    align-items: center;
}


.schedule-left{
    width: 23%;
    box-sizing:border-box;
    text-align: center;
    position:relative;
    margin-bottom: 35px;
}

.schedule-left:before{
    content: '';
    position:absolute;
    left: 50%;
    top: -62px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);    
    width:3px;
    height: 64px;
/*    transition: 0.4s;
    transition-delay: 0.1s;*/
    background-image: url('../img/dot2.png');
}

.schedule-left.is-show9:before{
    height: 64px;
}

.dot-none:before{
    display:none!important;
}

.schedule-left.dot-height:before{
    content: '';
    height: 40px;
    top: -40px;
}

.schedule-left.dot-height.is-show9:before{
    height: 40px;
}

.schedule-right .start{
    position:absolute;
    left: 0;
    bottom: -37px;
    display:flex;
    align-items: center;
    width: 180px;
    padding:1px 0;
    font-size: 15px;
    font-weight: bold;
    color:white;
    background: #515151;
    text-align: center;
    justify-content: center;
}

.start img{
    width: 9px;
    display:block;
    margin-right: 8px;
}


.schedule-right{
    width: 77%;
    box-sizing:border-box;
    padding-left: 12px;
    margin-bottom: 35px;
    position:relative;

}

.sr-bottom{
    margin-bottom: 50px;
}

.schedule-left .year{
    font-size: 14px;
    font-weight: bold;
    margin: 0;
}

.schedule-left .circle{
    width: 70px;
    height: 70px;
    display:block;
    background: white;
    border-radius: 50%;
    box-sizing:border-box;
    border:3px solid black;
    margin:0 auto;
    position:relative;
    z-index: 10;
}

.circle-text1{
    font-size: 19px;
    line-height: 1;
    margin:17px 0 4px;
    font-weight: bold;
    letter-spacing: -0.02em;
}

.circle-text2{
    line-height: 1;
    font-size: 10px;
    margin: 0;
}

.schedule-right h3{
    margin: 0;
    font-size: 22px;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

.schedule-right p{
    font-size: 12px;
    margin: 0;
    letter-spacing: -0.02em;
}

.schedule-right p span{
    font-size: 14px;
    font-weight: bold;
    color:#D14473;
    background: linear-gradient(transparent 70%, #FFE400 0%);
}

.pattern2 .circle-text1{
    margin-top: 22px;
}

.pattern3 .circle-text1{
    margin-top: 0;
}

.pattern3 .circle-text2{
    margin-top: 16px;
    margin-bottom: 3px;
}

.opencampus-area{
    background: #F7DDE6;
    box-sizing: border-box;
    padding:50px 0;
}


.op1{
    font-weight: bold;
    text-align: center;
    font-size: 21px;
    letter-spacing: -0.02em;
    margin:15px 0 22px;
}

.op1 span{
    background: #D14473;
    color:white;
    padding: 3px 8px;
    margin:0 3px;
}

.op2{
    background: white;
    text-align: center;
    position:relative;
    font-size: 16px;
    width: 280px;
    padding:10px 0;
    display:block;
    margin:0 auto;
    color:#D14473;
    font-weight: bold;
    border-radius: 25px;
}

.op2:after{
    content: '';
    position: absolute;
    bottom: -13px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    border-top: 14px solid white;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;    
}

.point-flex{
    display:flex;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 30px;
    box-sizing:border-box;
    padding:0 12px;
}

.point-left{
    width: 37px;
    margin-bottom: 18px;
}

.point-right{
    width: calc(100% - 37px);
    box-sizing:border-box;
    padding-left: 13px;
    margin-bottom: 18px;
}

.point-left img{
    width: 100%;
}

.point-right p{
    font-size: 12px;
    margin: 0;
    font-weight: bold;
}

.point-right p span{
    position:relative;
    margin:1px 0;
    display: inline-block;
}

.point-right p span:before{
    content: '';
    position:absolute;
    left: 0;
    bottom: 1px;
    width: 100%;
    height: 2px;
    background-image: url('../img/dot3.png');
    background-repeat: repeat;
}

.open-img{
    width: 100%;
    line-height: 1;
    box-sizing:border-box;
     padding:0 13px;
}

.point-bottom0{
    margin-bottom: 0!important;

}

.op-banner{
    display:block;
    margin:10px auto 0;
    width: 300px;
    max-width: 100%;
}

.slider-area2{
    margin:35px 0;
    display:flex;
    justify-content: space-between;
    align-items: start;
}

.kousha1{
    width: 53.325%;
}

.kousha2{
    width: 40.5%;
}

.op-text-flex{
    display:flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    margin:20px 0;
    font-weight: bold;
}

.op-text-flex .border-bottom{
    position:relative;
}

.op-text-flex .border-bottom:before{
    content: '';
    position:absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 2px;
    background-image: url('../img/dot4.png');
    background-repeat: repeat;
}

.op-text-flex .border-bottom .pink{
    background: #D14473;
    color:white;
    font-size: 18px;
    padding:2px 6px;   
}

.op-text-flex .border-bottom .pink span{
    font-size: 14px;
}

.op-text-flex .border-bottom .pink.p1{
    margin-right: 8px;
}

.op-text-flex .border-bottom .pink.p2{
    margin-left: 8px;
}

.op2-bottom{
    margin-bottom: 30px;
}

.qa-area{
    background-image: url('../img/note-type2.png');
    background-size: contain;
    background-repeat: repeat;
    box-sizing: border-box;
    padding:10px 0 50px;
}

.qa-content{
    width: 100%;
    box-sizing:border-box;
    border-radius: 20px;
    padding:35px 12px 25px;
    border:4px solid #D14473;
    position:relative;
    margin-top: 70px;
    background: white;
}

.yamaguchi{
    position:absolute;
    left: 50%;
    top: -18px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);    
    width: 185px;
}

.qa-text1{
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin: 0;
    line-height: 1.5;
}

.qa-text1 span{
    font-size: 24px;
    color:#D14473;
}

.qa-text2{
    font-size: 11px;
    margin:20px 0 2px;
}

.table-img{
    width: 100%;
}

.arrow5{
    width: 20px;
    display:block;
    margin:15px auto 0;
}

.qa-text3{
    font-size: 14px;
    margin:20px 0 2px;
    font-weight: bold;
}

.qa-text4{
    font-size: 17px;
    margin:25px 0  0;
    font-weight: bold;
    text-align: center;
    line-height: 1.1;
}

.qa-text5{
    font-size: 14px;
    margin: 0;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
}

.qa-text4 span{
    font-size: 40px;
    line-height: 1;
    color:#D14473;
    display:inline-block;
    background-position: bottom;
    background: linear-gradient(transparent 80%, #FFE400 0%);
}

.qa-text5 span{
    font-size: 21px;
    color:#D14473;
}

.footer-logo{
    display:block;
    width: 100%;
}

footer{
    padding:40px 0 20px;
}

.footer-info{
    text-align: center;
    font-size: 10px;
    margin:18px 0;
}

.school-link{
    width: 160px;
    box-sizing: border-box;
    display:block;
    margin:0 auto;
    text-align: center;
    color:#D14473;
    border:2px solid #D14473;
    background:#F7DDE6;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    padding:2px 0;
    box-shadow: 3px 3px 3px #CCC;
}

.icon-flex{
    display:flex;
    align-items: center;
    justify-content: center;
    margin: 25px 0 20px;
}

.icon-flex a{
    margin:0 10px;
    display:block;
}

.icon1 img{
    width: 19px;
}

.icon2 img{
    width: 16px;
}

.icon3 img{
    width: 16px;
}

.icon4 img{
    width: 18px;
}

.copy{
    font-size: 10px;
    text-align: center;
}

.slider-1 img{
    width:100%;
    position:relative;
    bottom: 5px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: 3px 3px 3px #ccc;
}

.slider-1{
    padding: 0;
    width: calc(100% + 24px);
    left: -12px;
    margin:35px 0 40px;  
}

.slider-1 li{
    box-sizing:border-box;
    padding:0 3px;
}

.koushi1{
    margin: 0;
    color:white;
    text-align: center;
    background: #D14473;
    font-size: 10px;
    position:relative;
    z-index: 2;
    letter-spacing: -0.04em;
}

.slider-1 .slick-list{
    padding-right: 15%;
}

.koushi2{
    margin:6px 0 0;
    color: #D14473;
    font-size: 10px;
    letter-spacing: -0.04em;
    line-height: 1.3;
}

.koushi3{
    font-size: 12px;
    color:#515151;
    margin:3px 0 0;   
}

.slider-2{
    padding: 0;
}

.slider-2 .slick-list{
    box-sizing:border-box;
    padding-right: 22%;
}

.slider-2 .sl2-main{
    width: 100%;
    padding-top: 18px;
}

.slider2-pink{
    background: #D14473;
    border-radius: 15px;
    position:relative;
    width: 100%;
    box-sizing:border-box;
    padding:0 18px!important;
    box-sizing:border-box;
    color:white;
    box-shadow: 5px 5px 5px #ccc;
}

.slider-2 li{
    box-sizing:border-box;
    padding-right: 10px;
}

.sotsugosei1{
    font-size: 12px;
    margin:10px 0 3px;
    font-weight: bold;
}

.sotsugosei2{
    font-size: 11px;
    margin: 0;
    padding-bottom: 18px;
}

.sotsugosei3{
    font-size: 11px;
    font-weight: bold;
    color:#D65681;
    margin:15px 0 3px;
    padding:0 15px;
}

.sotsugosei4{
    font-size: 10px;
    color:#D65681;
    margin:0; 
    padding:0 15px;
}

.slider-2{
   height: auto;
   margin:25px 0 50px;
   width: calc(100% + 12px);
}

.slick-slide{
    height: auto!important;
}

.slider-2 .slick-slide{
    opacity: 0.5;
    transition: 0.4s;
}

.slider-2 .slick-current.slick-slide{
    opacity: 1;
}

.slick-prev{
    display:none!important;
}

.next-arrow{
    position:absolute;
    right: 19%;
    top: 28%;
    width: 32px;
    transition: 0.4s;
}

.slick-disabled{
    opacity: 0;
}

.slider-4 img{
    width: 100%;
    box-sizing:border-box;
    padding:0 5px;
}

.slider-4{
    width: calc(100% + 24px);
    left: -12px;
}

.title1{
    position:absolute;
    left: 18px;
    top: 18px;
    width: 82px;
}

.title2{
     position:absolute;
    left: 18px;
    top: 18px;
    width: 151px;   
}

.title3{
     position:absolute;
    left: 18px;
    top: 18px;
    width:63px;   
}

.title4{
     position:absolute;
    left: 18px;
    top: 18px;
    width: 151px;   
}

.qa-title{
    font-size: 13px;
    margin:30px 0 10px;
    color:#D14473;
}

.qa-list dl{
    margin: 0;
    position:relative;
}

.qa-list dl:before{
    content: '';
    position:absolute;
    right: 10px;
    top: 25px;
    width: 18px;
    height: 2px;
    background:#D14473;
    z-index: 2;
}

.qa-list dl:after{
    content: '';
    position:absolute;
    right: 10px;
    top: 25px;
    width: 18px;
    height: 2px;
    background:#D14473;
    transform: rotate(90deg);
    transition: 0.4s;
    z-index: 2;
}

.qa-list dl.open:after{
    transform: rotate(0);
}

.qa-list dt{
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding:13px 35px;
    font-size: 12px;
    background: white;
    border-top:2px solid #D14473;
}

.qa-list .last{
    border-bottom:2px solid #D14473;
}

.qa-list dt:before{
    content: 'Q';
    position:absolute;
    left: 10px;
    top: 5px;
    font-size: 21px;
    font-weight: bold;
    color:#D14473;
    font-family: "din-2014", sans-serif;
    font-weight: 700;
    font-style: normal;    
}

.qa-list dd{
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding:13px 35px;
    font-size: 12px;
    margin:0;
    background: #F7DDE6;
}

.qa-list dd p{
    margin:0;
}

.qa-list dd p a{
    color: black;
    transition: 0.4s;
    text-underline-offset: 3px;
}

.qa-list dd p a:hover{
    opacity:0.7;
}

.qa-list dd:before{
    content: 'A';
    position:absolute;
    left: 10px;
    top: 5px;
    font-size: 21px;
    font-weight: bold;
    color:#D14473;
    font-family: "din-2014", sans-serif;
    font-weight: 700;
    font-style: normal;    
}

.inview{
  opacity: 0;
  transform: translate(0, 5%);
  transition: 0.7s;
  transition-delay: 0.1s;
}

.inview.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.inview2{
  transform: scale(0.6);
  opacity: 0;
  transition: 0.65s;
  transition-delay: 0.1s;
}

.inview2.is-show2 {
  transform: scale(1.0);
  opacity: 1;
}

.inview3{
  transform: scale(0.6);
  opacity: 0;
  transition: 0.65s;
  transition-delay: 0.2s;
}

.inview3.is-show3{
  transform: scale(1.0);
  opacity: 1;
}

.inview4{
  transform: scale(0.6);
  opacity: 0;
  transition: 0.65s;
  transition-delay: 0.3s;
}

.inview4.is-show4{
  transform: scale(1.0);
  opacity: 1;
}

.inview5{
  opacity: 0;
  transform: translate(0, 5%);
  transition: 0.7s;
  transition-delay: 0.3s;
}

.inview5.is-show5{
  transform: translate(0, 0);
  opacity: 1;
}

.inview6{
  opacity: 0;
  transition: 0.5s;
  transition-delay: 0.1s;
}

.inview6.is-show6{
  opacity: 1;
}

.inview7{
  opacity: 0;
  transition: 0.5s;
  transition-delay: 0.25s;
}

.inview7.is-show7{
  opacity: 1;
}

.inview8{
  opacity: 0;
  transition: 0.5s;
  transition-delay: 0.4s;
}

.inview8.is-show8{
  opacity: 1;
}

@media screen and (min-width: 481px) {
    /* 481px以上に適用されるCSS（タブレット用） */

    .ma-1{
        font-size: 16px;
    }

    .m-1{
        top: 45%;
        width: 120px;
    }

    .m-2{
        width: 100px;
    }

    .ma-2{
        font-size: 38px;
    }

    .genre-area h2{
        font-size: 30px;
    }

    .g-text{
        font-size: 14px;
    }

    .charm-area h2.din , .course-area h2.din{
        font-size: 55px;
    }

    .charm-sub{
        font-size: 21px;
    }

    .charm-num h3 span{
        font-size: 50px;
    }

    .charm-num h3{
        font-size: 38px;
    }

    .chn-2{
        font-size: 28px;
    }

    .chn-2 span.border{
        background: linear-gradient(transparent 75%, #FFE400 0%);
    }

    .chn-3{
        font-size: 15px;
    }

    .chn-3.mt-type2{
        margin:5px 0 30px;
    }

    .chn-4{
        width: 440px;
        font-size: 16px;
    }

    .koushi1{
        font-size: 14px;
    }

    .koushi2{
        font-size: 14px;
    }

    .koushi3{
        font-size: 17px;
    }

    .map-rel p{
        font-size: 17px;
    }

    .map-rel p img{
        width: 12px;
        margin:0 6px;
    }

    .map-rel p .din{
        font-size: 54px;
    }

    .map-rel p .din .size2{
        font-size: 44px;
    }

    .chn-5{
        font-size: 20px;
    }

    .chn-5 span.din{
        font-size: 28px;
    }

    .chn-left{
        width: 38px;
    }

    .chn-right{
        width: calc(100% - 38px);   
    }

    .chnr-1{
        font-size: 20px;
    }

    .chnr-2{
        font-size: 16px;
    }

    .chn-border img{
        width: 100px;
    }

    .chn-border p{
        font-size: 14px;
    }

    .chn-6{
        font-size: 14px;
    }

    .chn-bottom{
        font-size: 20px;
    }

    .sub2{
        font-size: 14px;
    }

    .course-flex div a span{
        font-size: 24px;
    }

    .course-flex div a{
        font-size: 14px;
    }

    .cp-left p span{
        font-size:14px;
    }

    .cp-left p{
        font-size: 42px;
    }

    .cp-right h3{
        font-size: 20px;
    }

    .course-box{
        padding: 35px 20px 55px;
    }

    .title1{
        width: 110px;
    }

    .sotsugosei1{
        font-size: 16px;
    }

    .sotsugosei2{
        font-size: 14px;
    }

    .sotsugosei3{
        font-size: 16px;
    }

    .sotsugosei4{
        font-size: 14px;
    }

    .title2{
        width: 200px;
    }

    .title3{
        width: 85px;
    }

    .title4{
        width: 200px;
    }

    .schedule-left .year{
        font-size: 21px;
    }

    .circle-text1{
        font-size: 22px;
        margin:22px 0 5px;
    }

    .circle-text2{
        font-size: 14px;
    }

    .schedule-right p{
        font-size: 15px;
    }

    .schedule-right h3{
        font-size: 28px;
    }

    .schedule-left .circle{
        width: 90px;
        height: 90px;
    }

    .schedule-left{
        width: 90px;
    }

    .schedule-right{
        width: calc(100% - 90px);
        padding-left: 20px;
    }

    .pattern2 .circle-text1{
        margin-top: 33px;
    }

    .pattern3 .circle-text2{
        margin-top: 23px;
        margin-bottom: 5px;
    }

    .op1{
        font-size: 26px;
    }

    .op2{
        font-size: 20px;
        width: 330px;
        border-radius: 35px;
    }

    .point-left{
        width: 54px;
    }

    .point-right{
        width: calc(100% - 54px);
        padding-left: 25px;
    }

    .point-right p{
        font-size: 15px;
    }

    .op-banner{
        width: 420px;
        margin:30px auto 0;
    }

    .op-text-flex{
        font-size: 18px;
    }

    .op-text-flex .border-bottom .pink{
        font-size: 23px;
    }

    .op-text-flex .border-bottom .pink span{
        font-size: 16px;
    }

    .qa-title{
        font-size: 18px;
        margin:45px 0 10px;
    }

    .qa-list dt{
        font-size: 16px;
        padding:18px 40px;
    }

    .qa-list dd{
        font-size: 16px;
        padding:18px 40px;
    }

    .qa-list dt:before{
        font-size: 25px;
        top: 8px;
    }

    .qa-list dd:before{
        font-size: 25px;
        top: 8px;
    }

    .qa-list dl:after{
        top: 33px;
        width: 22px;
    }

    .qa-list dl:before{
        top: 33px;
        width: 22px;
    }

    .yamaguchi{
        width: 280px;
        top: -26px;
    }

    .qa-text1{
        margin-top: 20px;
        font-size: 18px;
    }

    .qa-text1 span{
        font-size: 28px;
    }

    .qa-text2{
        font-size: 14px;
        margin-top: 25px;
    }

    .arrow5{
        width: 30px;
        margin-top: 25px;
    }

    .qa-text3{
        font-size: 17px;
        margin-top: 25px;
    }

    .qa-text4{
        font-size: 20px;
        margin-top: 35px;
    }

    .qa-text4 span{
        font-size: 50px;
    }

    .qa-text5{
        font-size:18px;
        margin-top: 3px;
    }

    .qa-text5 span{
        font-size: 25px;
    }

    .footer-logo{
        width: 317px;
        display:block;
        margin:0 auto;
    }

    .footer-info{
        font-size: 15px;
    }

    .school-link{
        width: 280px;
        font-size: 20px;
    }

    .icon1 img{
        width: 38px;
    }

    .icon2 img{
        width: 32px;
    }

    .icon3 img{
        width: 32px;
    }

    .icon4 img{
        width: 36px;
    }

    .copy{
        font-size: 14px;
        margin:25px 0 0;
    }


}

.pc{
    display:none;
}

.prev-arrow{
    display:none!important;
}

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

    .wrap{
        max-width: 900px;
        padding:0 20px;
        display:block;
        margin:0 auto;
        box-sizing:border-box;
    }

    .m-1{
        width: 190px;
    }

    .m-2{
        width: 161px;
    }

    .ma-1{
        font-size: 20px;
        line-height: 2.6;
    }

    .ma-2{
        margin-top: 35px;
        font-size: 45px;
    }

    .genre-area h2{
        font-size: 36px;
    }

    .g-text{
        font-size:17px;
    }

    .genre-flex div{
        margin-bottom: 35px;
    }

    .charm-area h2.din, .course-area h2.din{
        font-size: 60px;
    }

    .charm-sub{
        font-size: 28px;
    }

    .chn-2{
        font-size: 34px;
    }

    .chn-3{
        font-size: 18px;
    }

    .chn-4{
        padding:6px 0;
        width: 480px;
        font-size: 18px;
    }

    .koushi1{
        font-size: 16px;
    }

    .koushi2{
        font-size: 16px;
    }

    .koushi3{
        font-size: 18px;
    }

    .map-rel p{
        font-size: 20px;
    }

    .map-rel p img{
        width: 16px;
        margin:0 8px;
    }

    .map-rel p .din{
        position:relative;
        bottom: 3px;
    }

    .chn-5{
        font-size: 26px;
    }

    .chn-5 span.din{
        font-size: 34px;
    }

    .chn-left{
        width: 58px;
        margin-bottom: 40px;
    }

    .chn-right{
        width: calc(100% - 58px);
        padding-left: 25px;
        margin-bottom: 40px;
    }

    .chnr-1{
        font-size: 28px;
    }

    .chnr-2{
        font-size: 18px;
    }


    .chn-border img{
        width: 152px;
    }

    .chn-border p{
        font-size: 17px;
        padding-left: 20px;
    }

    .chn-border{
        padding:10px;
    }

    .chn-6{
       font-size: 17px;
       margin-top: 13px;
    }

    .chn-bottom{
        font-size: 30px;
    }

    .sub2{
        font-size: 18px;
    }

    .course-flex div a span{
        font-size: 28px;
    }

    .course-flex div a{
        font-size: 18px;
    }

    .course-box{
        padding:40px 40px 60px;
    }

    .cp-left p span{
        font-size: 16px;
    }

    .cp-left p{
        font-size: 50px;
    }

    .cp-right h3{
        font-size: 26px;
    }

    .title2{
        width: 302px;
        left: 25px;
        top: 25px;
    }

    .title1{
        left: 25px;
        top: 25px;
        width: 164px;
    }

    .slider2-pink{
        padding:0 25px!important;
    }

    .sotsugosei1{
        margin-top: 10px;
        font-size: 20px;
    }

    .slider-2 .sl2-main{
        padding-top: 25px;
    }

    .sotsugosei2{
        font-size: 17px;
        padding-bottom: 25px;
    }

    .sotsugosei3{
        padding:0 25px;
        font-size: 20px;

    }

    .sotsugosei4{
        padding:0 25px;
        font-size: 17px;
    }

    .schedule-right{
        padding-left: 45px;
        margin-bottom: 40px;
    }

    .schedule-left{
        margin-bottom: 40px;
    }

    .schedule-right h3{
        font-size: 34px;
    }

    .schedule-right p{
        font-size: 18px;
    }

    .schedule-right p span{
        font-size: 18px;
    }

    .schedule-right .start{
        width: 240px;
        font-size: 17px;
        left: 45px;
        bottom: -48px;
    }

    .sr-bottom{
        margin-bottom: 65px;
    }

    .schedule-left:before{
        height: 100px;
        top: -95px;
    }

    .schedule-left.dot-height:before{
        height: 55px;
        top: -55px;   
    }

    .op1{
        font-size: 34px;
    }

    .op2{
        font-size: 26px;
        width: 400px;
    }

    .point-left{
        width: 74px;
    }

    .point-right{
        width: calc(100% - 74px);
    }

    .point-right p{
        font-size: 22px;
    }

    .op-banner{
        width: 566px;
    }

    .slider-4 .slick-list{
        padding:0 150px!important;
    }

    .op-text-flex{
        font-size: 23px;
        margin:30px 0;
    }

    .op-text-flex .border-bottom .pink{
        font-size: 28px;
    }

    .op-text-flex .border-bottom .pink span{
        font-size: 21px;
    }

    .qa-title{
        font-size: 24px;
    }

    .qa-list dt{
        font-size:19px;
        padding:18px 44px;
    }

    .qa-list dd{
        font-size: 19px;
        padding:18px 44px;
    }

    .qa-list dt:before{
        font-size: 30px;
    }

    .qa-list dd:before{
        font-size: 30px;
    }

    .qa-content{
        padding:35px 60px 30px;
    }

    .qa-text1{
        font-size: 22px;
    }

    .qa-text1 span{
        font-size: 32px;
    }

    .qa-text2{
        font-size: 16px;
        margin-top: 35px;
    }

    .arrow5{
        width: 40px;
        margin-top: 35px;
    }

    .qa-text3{
        font-size:20px;
        margin-top: 35px;
    }

    .qa-text4{
        font-size: 24px;
    }

    .qa-text5{
        font-size: 22px;
    }

    .qa-text5 span{
        font-size: 32px;
    }

    .footer-info{
        margin:25px 0;
        font-size: 18px;
    }

    .school-link{
        width: 330px;
        font-size: 24px;
        border:4px solid #D14473;
    }

    .icon-flex{
        margin:35px 0;
    }

    .icon-flex a{
        margin:0 18px;
    }

    .copy{
        font-size: 16px;
    }

    .message-area{
        padding:80px 0;
        background-size: inherit;
    }

    .charm-area{
        background-size: inherit;
    }

    .course-area{
        padding-top: 40px;
    }

    .en1{
        width: 363px;
    }

    .space1 .point-img{
        top: 14px;
        left: 14px;
    }

    .space2 .point-img{
        top: -14px;
        left: -14px;
    }

    .space3 .point-img{
        top: -14px;
        left: -14px;        
    }

    .space4 .point-img{
        top: 14px;
        left: -14px;
    }

    .course-point{
        margin-top: 50px;
    }

    .interview-area{
        padding:80px 0;
        background-size: inherit;
    }

    .next-arrow{
        cursor: pointer;
    }

    .slider-2{
        margin-top: 35px;
        margin-bottom: 80px;
    }

    .opencampus-area{
        padding-bottom: 80px;
    }

    .qa-area{
        padding:40px 0 80px;
        background-size: inherit;
    }

    footer{
        padding: 60px 0 25px;
    }

    .banner-area a{
        transition: 0.4s;
    }

    .banner-area a:hover , .course-flex div a:hover{
        opacity: 0.6;
    }

    .course-flex div a{
        padding:20px 0!important;
        transition: 0.4s;
    }

    .open-img{
        width: 576px;
        display:block;
        margin:0 auto;
    }

    .qa-list dl{
        cursor: pointer;
    }

    .qa-list dl:before{
        top: 35px;
    }

    .qa-list dl:after{
        top: 35px;
    }

    .pc{
        display:block;
    }

    .sp{
        display:none;
    }

    .genre-area:after{
        border-top: 180px solid #F7DDE6;
        bottom: -178px;
        border-right: 49vw solid transparent;
    border-left: 49vw solid transparent;        
    }

    .charm-area{
        padding:180px 0 80px;
    }

    .slider-1 .slick-list{
        padding-right: 0;
    }

    .slider-1 img{
        height: 230px;
        object-fit: cover;
        bottom: 8px;
    }

    .slider-1 li{
        padding:0 6px;
    }

    .slider-2 .slick-list{
        padding-right: 0!important;
    }

    .slider-2 .slick-slide{
        opacity:1;
    }

    .next-arrow{
        right: -7%;
        width: 46px;
    }

    .slider-2 li{
        padding:0 10px;
    }

    .prev-arrow{
        display:block!important;
        position: absolute;
        left: -7%;
        cursor: pointer;
        top: 28%;
        width: 46px;
        transition: 0.4s;
    }

    .chn-5{
        margin-bottom: 55px;
    }

    .beauty-area:after{
        border-top: 130px solid #D14473;
        top: -129px;
    }

    .creative-area:after{
        bottom: -129px;
        border-top: 130px solid #41B25D;
    }

    .beauty-area{
        margin-top: 128px;
    }

    .creative-area{
        padding:60px 0 25px;
    }

    .beauty-area{
        padding:25px 0 60px;
    }

    .school-link , .icon-flex a{
        transition: 0.4s;
    }

    .school-link:hover , .icon-flex a:hover{
        opacity: 0.6;
    }

    .slider-area2{
        margin: 40px 0 50px;
    }

}





















