/*

声優科
voice-artists

*/
@import url("slick/slick.css");
@import url("slick/slick-theme.css");

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

.voice-artists{
}
.title-area{
    height: 860px;
    background-image: url(../images/media-video-university/2025/mainvisual.jpg);
    background-size: cover;
    background-position: center;
    position: relative;
}
.title-area .text-area{
    position: absolute;
    left:calc(50% - 600px);
    bottom:90px;
}
.title-area p.copy{
    color: #fff;
    font-size: 26px;
    font-weight: 700;
    margin: 0;
    line-height: 1.8;
}
.title-area p.copy span{
    background-color: #42ab6d;
    padding: 0.2rem 1rem ;
}
.title-area h2.page-title{
    color: #fff;
    font-size: 86px;
    margin: 1rem 0;
    line-height: 1.2;
    text-shadow: 2px 2px 3px rgba(0, 0, 0, .3);
}
.wrap-occupation{
    background: linear-gradient(130deg,rgba(66, 171, 109, 1) 0%, rgba(160, 201, 164, 1) 100%);
    background-size: 100%;
}
.occupation-area{
    max-width: 1200px;
    min-width: 1000px;
    width: 100%;
    margin: -62px auto 50px auto;
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
    position: relative;
    box-shadow: 0px 5px 15px #00000026;
}
.occupation-area .title{
    text-align: center;
    font-size: 18px;
    font-weight: 700;
}
.occupation-area .box-ocp{
    display: inline-block;
    vertical-align: middle;
    width: 25%;
}
.occupation-area .box-ocp .image{
    width: 60%;
    margin: auto;
}
.occupation-area .box-ocp .ocp{
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    position: relative;
    margin-bottom: 40px;
}
.occupation-area .box-ocp .ocp::after{
    content: "";
    width: 30px;
    height: 1px;
    border: solid 2px #42ab6d;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: -20px;
}
.occupation-area .box-ocp .text{
    font-size: 12px;
    margin: 1rem 2rem;
}
.cooperatingcompany{
    max-width: 1200px;
    min-width: 1000px;
    width: 100%;
    margin: 50px auto;
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
    position: relative;
    box-shadow: 0px 5px 15px #00000026;
}
.cooperatingcompany .title{
    text-align: center;
    font-size: 18px;
    font-weight: 700;
}
.cooperatingcompany .flex{
    justify-content: center;
    flex-wrap: wrap;
}
.cooperatingcompany .logo{
    width:240px;
    padding: 2rem;
}
.page-navi{
    max-width:1200px;
    margin: auto;
}
.page-navi ul{
    width:100%;
    display: flex;
    list-style: none;
    padding: 0;
}
.page-navi ul li{
    width:25%;
    display: block;
}
.page-navi ul li a{
    display: block;
    text-align: center;
    color: #fff;
    padding: 1rem;
    border: solid 1px #fff;
    margin-bottom: -1px;
    margin-right: -1px;
    font-size: 28px;
    position: relative;
    text-decoration: none;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
.page-navi ul li a:hover{
    background-color: #42ab6d;
}
.page-navi ul li a span{
    display: block;
    font-size: 22px;
}
.page-navi ul li a::after{
    content: "▼";
    font-size: 20px;
    position: absolute;
    margin: auto;
    top:40%;
    right:1rem;
}

.wrap{
    max-width: 1200px;
    min-width: 1000px;
    width:auto;
    margin: auto;
}
#step1{
    padding: 60px 0;
}
.cnt-subtitle{
    font-size: 20px;
    color: #42ab6d;
    margin: 0;
    font-weight: 700;
    letter-spacing: .2rem;
    margin-bottom: 1rem;
}
.cnt-title{
    font-size: 44px;
    color: #000;
    margin: 0 0 0 0;
    line-height: 1.2;
}
.flex{
    display: flex;
    justify-content: space-between;
}
#step1 .flex {
    align-items: start;
}
.flex .point-area{
    width:32%;
    background: transparent linear-gradient(90deg, #ebf5ec 0%, #f6fff0 40%) 0% 0% no-repeat;
    padding: 25px 25px 50px 25px;
}
#step1 .flex .point-area:nth-child(1){
    margin-top: 100px;
}
#step1 .flex .point-area:nth-child(2){
    margin-top: 50px;
}
#step1 .flex .point-area:nth-child(3){}
#step1 .flex .point-area .point-subtitle{
    font-size: 17px;
    color: #42ab6d;
    margin: -60px 0 0 0;
    font-family: 'Roboto', sans-serif;
    font-weight:700;
    letter-spacing: .2rem;
}
#step1 .flex .point-area .point-subtitle span{
    font-size: 65px;
    padding: 0 1rem;
}
#step1 .flex .point-area .point-title{
    font-size: 24px;
    font-weight: 700;
    color: #42ab6d;
    margin: 0 0 1rem 0;
}
#step1 .flex .point-area .text{
    font-size: 13px;
    margin: 1rem 0;
    line-height: 2;
}
#step1 .flex .point-area .bnr-area{
    background-color: #fff;
    padding: 1rem;
    margin: 1rem 0;
}
.curriculum{
    margin-bottom: 6rem;
}
.ctg-title{
    font-size:32px;
    color:#42ab6d;
    text-align: center;
    position: relative;
    margin-bottom: 60px;
}
.ctg-title:after{
    content: "";
    width: 40px;
    height: 1px;
    border: solid 2px #42ab6d;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: -20px;
}
.curriculum .flex + .flex {
    margin-top: 50px;
}
.curriculum .box{
    width: 47%;
}
.curriculum .box .title{
    font-size: 24px;
    color: #42ab6d;
    border-bottom: solid 1px #42ab6d;
    margin: 1rem 0;
    font-weight: 700;
}
.timetable{
    margin-bottom: 6rem;
}
.timetable-img{
    width:700px;
    margin: auto;
}

.timetable .icon-touch{
    display: none;
}
#step2{
    background-color: #F1F1F1;
    padding: 70px 0;
}
#step2 .cnt-subtitle{
    text-align: center;
}
#step2 .cnt-title{
    text-align: center;
    margin-bottom: 5rem;
}
#step2 .flex{
    justify-content: center;
}
#step2 .teacher-area,
#step3 .graduate-area{
    width:200px;
    margin: 30px;
}
#step2 .teacher-area img.shadow,
#step3 .graduate-area img.shadow{
    box-shadow: 10px 10px 0px #42ab6d;
}
#step2 .teacher-area .department,
#step3 .graduate-area .department{
    font-size: 15px;
    margin: 2rem 0 0 0;
    color: #42ab6d;
}
#step2 .teacher-area .window .department,
#step3 .graduate-area .window .department{
    padding-bottom: 1rem;
    border-bottom: solid 1px #42ab6d;
}
#step2 .teacher-area .name,
#step3 .graduate-area .name{
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 1rem 0;
}
#step2 .teacher-area .name span,
#step3 .graduate-area .name span{
    font-size: 16px;
}
#step2 .teacher-area .company_logo,
#step3 .graduate-area .company_logo{
    background-color: #fff;
    width: 100%;
    text-align: center;
    padding: 1rem 2rem;
}
#step2 .teacher-area .company_logo img,
#step3 .graduate-area .company_logo img{
    height: auto;
}


.open,
[class^="open"]{
	cursor:pointer;
    position: relative;
}
.open::after,
[class^="open"]::after {
    content: "";
    width:55px;
    height: 54px;
    background-image: url(../images/voice-artists/icon_plus_pink.png);
    background-size: cover;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    position: absolute;
    right:-27px;
    bottom:-27px;
}
.blue [class^="open"]::after {
    background-image: url(../images/reason-entertainment/icon_plus_blue.png);
}
.green [class^="open"]::after {
    background-image: url(../images/reason-entertainment/icon_plus_green.png);
}
.yellow [class^="open"]::after {
    background-image: url(../images/reason-entertainment/icon_plus_yellow.png);
}
.open:hover::after,
[class^="open"]:hover::after{
    width:61px;
    height: 60px;
    right:-30px;
    bottom: -30px;
}
#pop-up,
[id^="pop-up"] {
	display: none;
}
.overlay,
[class^="overlay"] {
	display: none;
    animation: w-fadein 0.5s ease;
}
@keyframes w-fadein {
    0% { opacity: 0 }
  100% { opacity: 1 }
 }
#pop-up:checked + .overlay,
[id^="pop-up"]:checked + [class^="overlay"] {
	display: block;
	z-index: 9999;
	background-color: #00000090;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
}
.window {
	width: 90vw;
    height: auto;
	max-width: 1000px;
	min-height: 450px;
    max-height: 90vh;
	background-color: #ffffff;
	border-radius: 10px;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    padding: 25px;
    color: #000!important;
}
.window .profile{
    position: absolute;
    top:-30px;
    left:0;
    background: #fff;
	border-radius: 10px 10px 0 0;
    padding: .5rem 1rem;
    margin: 0;
    color: #EA609E;
    font-size: 18px;
    letter-spacing: .2rem;
    font-family: 'Roboto', sans-serif;
}
.window .w-pic-area {
    width: 50%;
}
.window .w-text-area {
    width: 50%;
    padding: 20px 40px;
}
.window .w-name{
	font-size: 28px;
    font-weight: 700;
    margin: 0;
}
.window .w-name span{
	font-size: 18px;
}
.window .w-job,
.window .w-department{
	font-size: 16px;
    margin: 0;
    color: #EA609E;
    padding-bottom: 1rem;
}
.window .w-text {
    margin: 0;
	font-size: 14px;
    border-top: solid 1px #EA609E;
    padding-top: 1rem;
}
.window .close {
	cursor:pointer;
	position: absolute;
    top:-30px;
	right: 0;
    background: #fff;
    padding: .5rem 1rem;
    color: #EA609E;
    font-size: 18px;
	border-radius: 10px 10px 0 0;
}



#step3{
  background-color: #fff;
  background-image:
    radial-gradient(#42ab6d 5%, transparent 5%),
    radial-gradient(#42ab6d 5%, transparent 5%);
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px;
  padding: 70px 0;
}
#step3 .cnt-subtitle{
    text-align: center;
}
#step3 .cnt-title{
    text-align: center;
    margin-bottom: 5rem;
}

#step3 .wrap{
    max-width: 1080px;
}
#step3 .flex{
    max-width: 840px;
    margin: auto;
}
#step3 .flex .cnt-l,
#step3 .flex .cnt-r{
    max-width: 450px;
}
#step3 .flex .cnt-l .wraper{
    position: relative;  
    max-width: 450px;
    width: 100%;
}
#step3 .flex .cnt-l img{
    width: 90%;
    margin: auto;
}
#step3 .flex .cnt-l .profile-area{
    background: linear-gradient(90deg, rgba(232,99,158,0.8) 0%,rgba(232,19,52,0.8) 100%);
    color:#fff;
    text-align: right;
    padding: 20px;
    position: absolute;
    bottom:0;
    right:0;
}
#step3 .flex .cnt-l .profile-area .department{
    opacity: 1;
    font-size:16px;
    margin: 0;
}
#step3 .flex .cnt-l .profile-area .name{
    font-size:29px;
    margin: 0;
    font-weight: 700;
}
#step3 .flex .cnt-l .profile-area .name span{
    font-size:16px;
    font-weight: 400;
}
#step3 .flex .cnt-l .profile-area .school{
    font-size:16px;
    margin: 0;
}
#step3 .flex .cnt-l .copy{
    color: #42ab6d;
    font-size:20px;
    line-height: 2;
    text-align: center;
    font-weight: 700;
    background: linear-gradient(90deg, #42ab6d 0%, #E81334 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#step3 .flex .cnt-r{
    padding: 40px 60px;
}
#step3 .schedule-area{
    border:solid 2px #42ab6d;
    background-color: #fff;
    border-radius: 20px 20px 0 0;
    box-shadow: 5px 5px 0 #00000026;
    width: 330px;
}
#step3 .schedule-area .obi{
    background-color: #42ab6d;
    border-radius: 19px 19px 0 0;
    color: #fff;
    text-align: center;
    font-size: 24px;
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    padding: 1rem;
    margin: 0;
    letter-spacing: .2rem;
}
#step3 .schedule-area dl{
    padding: 2rem 2rem 0 2rem;
    margin: 0;
    position: relative;
}
#step3 .schedule-area dl::before{
    content: "";
    display: block;
    width: 1px;
    height: 530px;
    background-color: #42ab6d;
    position: absolute;
    top:30px;
    left:53px;
}
#step3 .schedule-area dt{
    position: relative;
    background-color: #42ab6d;
    color: #fff;
    font-size: 16px;
    font-family: 'Roboto', sans-serif;
    display: block;
    width: 60px;
    text-align: center;
    float: left;
}
#step3 .schedule-area dd{
    margin: 0 0 2rem 80px;
    font-size: 12px;
}
#step3 .schedule-area dd span{
    font-size: 18px;
    font-weight: 700;
    color: #42ab6d;
    display: block;
}

#step3 .banner-area{
    text-align: center;
    margin: auto;
    width:5rem 400px;
}


#step3 .graduate .sub-title{
    font-size: 24px;
    color:#42ab6d;
    text-align: center;
}
#step3 .graduate .flex{
    width: 100%;
    max-width: none;
}
#step3 .graduate .box-area{
    width:200px;
    margin: 30px;
}
#step3 .graduate .box-area img.shadow{
    box-shadow: 10px 10px 0px #EA609E;
}
#step3 .graduate .box-area.blue img.shadow{
    box-shadow: 10px 10px 0px #1EB8E2;
}
#step3 .graduate .box-area.green img.shadow{
    box-shadow: 10px 10px 0px #1BB1A0;
}
#step3 .graduate .box-area.yellow img.shadow{
    box-shadow: 10px 10px 0px #F5A227;
}
#step3 .graduate .box-area .job{
    font-size: 15px;
    margin: 2rem 0 0 0;
    color: #EA609E;
}
#step3 .graduate .box-area.blue .job{color: #1EB8E2;}
#step3 .graduate .box-area.green .job{color: #1BB1A0;}
#step3 .graduate .box-area.yellow .job{color: #F5A227;}
#step3 .graduate .box-area .name{
    font-size: 24px;
    font-weight: 700;
    margin: 0;
    color:#000;
}
#step3 .graduate .box-area .name span{
    font-size: 16px;
}

#step3 .interview{
    width:100%;
    margin: 0 auto 6rem auto;
}
#step3 .interview .htext{
    text-align: center;
    font-size: 20px;
    color: #42ab6d;
}
#step3 .interview .flex{
    justify-content: center;
}
#step3 .interview .flex .box{
    width:40%;
    margin: 0 5%;
}
#step3 .interview .movie-area{
    margin: 20px 0;
    width: 100%;
    aspect-ratio: 16 / 9;
}
#step3 .interview .movie-area iframe {
    width: 100%;
    height: 100%;
}

#step3 .interview .name-area{
    color: #fff;
    border-radius: 5px;
    padding: 1rem 2rem;
    font-size: 15px;
}
#step3 .interview .name-area.pink{
    background-color: #EA609E;
}
#step3 .interview .name-area.green{
    background-color: #1BB1A0;
}
#step3 .interview .name-area p{
    margin: 0;
}
#step3 .interview .name-area .name{
    font-size: 22px;
    font-weight: 700;
}
#step3 .interview .company-area{
    margin: 1rem 0;
}
#step3 .appearance{
    width: calc(100%);
}
#step3 .appearance .flex{
    max-width: 100%;
    justify-content: center;
    flex-wrap: wrap;
}
#step3 .appearance .box{
    width: 40%;
    position: relative;
    background-color: #FDEFF5;
    padding: 2rem;
    margin: 2rem;
}
#step3 .appearance .box .obi{
    background-color: #42ab6d;
    color: #fff;
    font-size:21px;
    padding: .5rem 2rem;
    display: inline-block;
    top: -2rem;
    left: -2rem;
    position: absolute;
    margin: 0;
}
#step3 .appearance ul{
    list-style: none;
    padding: 2rem 0 0 0;
}
#step3 .appearance ul li:first-letter{
    color: #42ab6d;
}



#step4{
    background-color: #FAE3E6;
    padding: 70px 0 70px 0;
    background-image: url(../images/voice-event-staff/step4_title_bg.jpg);
    background-position: center top;
    background-repeat:no-repeat;
    background-size: auto 600px;
}
#step4 .hd{
    height: 600px;
}
#step4 .cnt-subtitle{
    text-align: center;
    color: #D62940;
    position: relative;
    margin-bottom: 60px;
}
#step4 .cnt-subtitle:after {
    content: "";
    width: 40px;
    height: 1px;
    border: solid 2px #D62940;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: -20px;
}
#step4 .cnt-title{
    writing-mode: vertical-rl;
    vertical-align: middle;
    margin: auto;
    font-size: 46px;
}
#step4 .cnt-title span{
    background-color: #fff;
    padding: 2rem .5rem;
    line-height: 3;
    box-shadow: 7px 7px 0 #D629404D;
}
#step4 .flex{
    justify-content: center;   
}
#step4 .cnt-box{
    width:32%;
    margin: 20px;
}
#step4 .cnt-box .obi2{
    position: relative;
    z-index: 1;
    text-align: center;
    margin: 0 auto -2rem auto;
    padding: 1rem;
    width: 240px;
    font-size:24px;
    color:#fff;
    font-weight: 700;
}
#step4 .cnt-box .obi2::before{
    transform: skewX(-30deg);
    content: "";
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    z-index: -1;
    background:transparent linear-gradient(259deg, #FF8900 0%, #D62940 100%);
    box-shadow: 7px 7px 0 #D629404D;
}
#step4 .cnt-box .text1{
    color: #D62940;
    font-size: 22px;
    font-weight: 700;
    margin: 1rem 0;
}
#step4 .cnt-box .text2{
    margin: 1rem 0;
    font-size: 14px;
    text-align: justify;
}





/* ---scrollAnimation------------------------- */
.u-fade-type-up{
    transform: translateY(50px);
    opacity: 0;
}
.u-fade-type-up.is-active{
    transition: .8s;
    transform: translateY(0);
    opacity: 1;
}
.u-fade-type-up.d2.is-active{
    transition-delay: .4s;
}
.u-fade-type-up3.d3.is-active{
    transition-delay: .8s;
}






.pc{display: block;}
.sp{display: none;}


@media screen and (max-width: 700px) {
    
    .sp{display: block;}
    .pc{display: none;}


    .title-area{
        height: 80vh;
        background-image: url(../images/media-video-university/2025/mainvisual.jpg);
        background-position: top center;
        position: relative;
    }
    .title-area .text-area{
        position: absolute;
        left:2rem;
        bottom:60px;
    }
    .title-area p.copy{
        font-size: 16px;
        line-height: 2;
    }
    .title-area p.copy span{
        padding: 0.2rem 1rem ;
    }
    .title-area h2.page-title{
        color: #fff;
        font-size: 50px;
        margin: 1rem 0;
        line-height: 1.2;
        text-shadow: 2px 2px 3px rgba(0, 0, 0, .3);
    }
    .wrap-occupation{
        background-size: 100% 100%;
    
    }
    .occupation-area{
        max-width: auto;
        min-width: auto;
        width: 90%;
        margin: -50px auto 50px auto;
        padding: 20px;
    }
    .occupation-area .title{
        font-size: 18px;
    }
    .occupation-area .box-ocp{
    }
    .occupation-area .box-ocp .image{
        width: 60%;
    }
    .occupation-area .box-ocp .ocp{
        font-size: 14px;
    }
    .occupation-area .box-ocp .ocp::after{
    }
    .occupation-area .box-ocp .text{
        font-size: 12px;
    }
    .cooperatingcompany{
        max-width: auto;
        min-width: auto;
        width: 80%;
        margin: 0px auto 50px auto;
        padding: 20px;
    }
    .cooperatingcompany .title{
        font-size: 18px;
    }
    .cooperatingcompany .flex{
        justify-content: center;
    }
    .cooperatingcompany .logo{
        width:50%;
        padding: 0 1rem;
    }
    .page-navi{
        max-width:auto;
        width:100%;
    }
    .page-navi ul{
        width:100%;
        flex-wrap: wrap;
    }
    .page-navi ul li{
        width:calc(50% - 0.5px);
    }
    .page-navi ul li a{
        font-size: 18px;
    }
    .page-navi ul li a:hover{
        
    }
    .page-navi ul li a span{
        font-size: 14px;
    }
    .page-navi ul li a::after{
        content: "▼";
        font-size: 18px;
        position: absolute;
        margin: auto;
        top:40%;
        right:1rem;
    }
    
    .wrap{
        max-width: auto;
        min-width: auto;
        width:100%;
    }
    #step1{
        padding: 60px 0 0 0;
    }
    .cnt-subtitle{
        font-size: 18px;
        text-align: center;
    }
    .cnt-title{
        font-size: 28px;
        text-align: center;
    }
    .flex{
        flex-wrap: wrap;
    }
    #step1 .flex {
        align-items: start;
        margin: 4rem auto;
    }
    .flex .point-area{
        width:calc(100% - 2rem);
        padding: 25px 25px 25px 25px;
        margin-bottom: 50px;
        margin-left: 2rem;
    }
    #step1 .flex .point-area:nth-child(1){
        margin-top: 0;
    }
    #step1 .flex .point-area:nth-child(2){
        margin-top: 0;
    }
    #step1 .flex .point-area:nth-child(3){}
    #step1 .flex .point-area .point-subtitle{
        font-size: 16px;
    }
    #step1 .flex .point-area .point-subtitle span{
        font-size: 60px;
        padding: 0 1rem;
    }
    #step1 .flex .point-area .point-title{
        font-size: 22px;
    }
    #step1 .flex .point-area .text{
        font-size: 12px;
    }
    #step1 .flex .point-area .bnr-area{
        background-color: #fff;
    }
    .curriculum{
        margin-bottom: 6rem;
        padding: 0 2rem;
    }
    .ctg-title{
        font-size:30px;
    }
    .ctg-title:after{
    }
    .curriculum .box{
        width: 100%;
        margin-bottom: 50px;
    }
    .curriculum .box .title{
        font-size: 24px;
        margin: 1rem 0;
        font-weight: 700;
    }
    .timetable{
        margin-bottom: 6rem;
        position: relative;
    }
    .timetable-img{
        width:100%;
        margin: auto;
        padding: 0 0 0 2rem;
        overflow-x: scroll;
        position: relative;
    }
    .timetable .icon-touch{
        display: block;
        position: absolute;
        margin: auto;
        top:0;bottom:0;left:0;right:0;
        width:70px;
        height:70px;
    }
    .timetable-img:hover + .icon-touch,
    .timetable-img:active + .icon-touch{
        display: none;
      }
    .timetable-img img{
        width: 150%;
        max-width: none;
    }
    
    #step2{
        padding: 70px 0;
    }
    #step2 .cnt-subtitle{
        text-align: center;
    }
    #step2 .cnt-title{
        text-align: center;
        margin-bottom: 2rem;
    }
    #step2 .flex{
        justify-content: space-between;
        padding: 0;
    }
    #step2 .teacher-area,
    #step3 .graduate .box-area{
        width:40%;
        margin: 30px  auto;
    }
    #step2 .teacher-area img.shadow{
    }
    #step2 .teacher-area .department,
    #step3 .graduate .box-area .job{
        font-size: 12px;
        margin: 2rem 0 0 0;
    }
    #step2 .teacher-area .name,
    #step3 .graduate .box-area .name{
        font-size: 18px;
        font-weight: 700;
        margin: .4rem 0 1rem 0;
    }
    #step2 .teacher-area .name span,
    #step3 .graduate .box-area .name span{
        font-size: 12px;
    }
    
    #step2 .teacher-area .company_logo,
    #step3 .graduate-area .company_logo{
        background-color: #fff;
        width: 100%;
        height: 74px;
        text-align: center;
        padding: 0 0 0 0;
        display:flex;
        align-items: center;
        justify-content: center;
    }
    #step2 .teacher-area .company_logo img,
    #step3 .graduate-area .company_logo img{
        width: auto;
        height: 100%;
    }
    
    
    
    
    .open,
    [class^="open"]{
        cursor:pointer;
    }
    .open::after,
    [class^="open"]::after {
        content: "";
        width:40px;
        height: 40px;
        right:-20px;
        bottom:-20px;
    }
    .open:hover::after,
    [class^="open"]:hover::after{
        width: 50px;
        height: 50px;
        right:-25px;
        bottom: -25px;
    }
    #pop-up,
    [id^="pop-up"]  {
        display: none;
    }
    .overlay,
    [class^="overlay"] {
    }
    #pop-up:checked + .overlay,
    [id^="pop-up"]:checked + [class^="overlay"]  {
        background-color: #00000090;
    }
    .window {
        width: 90vw;
        max-width: none;
        height: auto;
        max-height: 90vh;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 2rem;
    }
    .window .flex{
        padding: 0 !important;
    }
    .window .profile{
        position: absolute;
        top:-30px;
        left:0;
        background: #fff;
        border-radius: 10px 10px 0 0;
        padding: .5rem 1rem;
        margin: 0;
        font-size: 16px;
        letter-spacing: .2rem;
        font-family: 'Roboto', sans-serif;
    }
    .window .w-pic-area {
        width: 100%;
        max-height: 200px;
        text-align: center;
    }
    .window .w-pic-area img{
        width: auto;
        max-height: 100%;
    }
    .window .w-text-area {
        width: 100%;
        padding: 20px 0 0 0;
    }
    .window .w-name{
        font-size: 24px;
        font-weight: 700;
        margin: 0;
    }
    .window .w-name span{
        font-size: 16px;
    }
    .window .w-department{
        font-size: 14px;
    }
    .window .w-text {
        margin: 0;
        font-size: 12px;
    }
    .window .close {
        font-size: 18px;
    }
    
    
    
    #step3{
      background-color: #fff;
      padding: 70px 0;
    }
    #step3 .cnt-subtitle{
        text-align: center;
    }
    #step3 .cnt-title{
        text-align: center;
        margin-bottom: 5rem;
    }
    #step3 .wrap{
        max-width: none;
        width:100%;
        padding:0 2rem;
    }
    #step3 .img-area{
        width:90%;
        margin: 0 auto 4rem auto;
    }#step3 .wrap{
        max-width: auto;
    }
    #step3 .flex{
        max-width: auto;
        margin: auto;
    }
    #step3 .flex .cnt-l,
    #step3 .flex .cnt-r{
        max-width: 100%;
    }
    #step3 .flex .cnt-l .wraper{
        max-width: auto;
        width: 100%;
    }
    #step3 .flex .cnt-l img{
        width: 100%;
        margin: auto;
    }
    #step3 .flex .cnt-l .profile-area{
        padding: 20px 30px;
        bottom: 0;
        right: -2rem;
    }
    #step3 .flex .cnt-l .profile-area .department{
        opacity: 1;
        font-size:16px;
        margin: 0;
    }
    #step3 .flex .cnt-l .profile-area .name{
        font-size:29px;
        margin: 0;
        font-weight: 700;
    }
    #step3 .flex .cnt-l .profile-area .name span{
        font-size:16px;
        font-weight: 400;
    }
    #step3 .flex .cnt-l .profile-area .school{
        font-size:16px;
        margin: 0;
    }
    #step3 .flex .cnt-l .copy{
        color: #F5561B;
        font-size:18px;
    }
    #step3 .flex .cnt-r{
        padding: 0;
    }
    #step3 .schedule-area{
        width: 100%;
        margin-bottom: 50px;
    }
    #step3 .schedule-area .obi{
        background-color: #42ab6d;
        font-size: 24px;
    }
    #step3 .schedule-area dl{
        padding: 2rem 2rem 0 2rem;
        margin: 0 0 0 0;
        position: relative;
    }
    #step3 .schedule-area dl::before{
        content: "";
        display: block;
        width: 1px;
        height: 92%;
        background-color: #42ab6d;
        position: absolute;
        top:30px;
        left:53px;
    }
    #step3 .schedule-area dt{
        position: relative;
        background-color: #42ab6d;
        color: #fff;
        font-size: 16px;
        font-family: 'Roboto', sans-serif;
        display: block;
        width: 60px;
        text-align: center;
        float: left;
    }
    #step3 .schedule-area dd{
        margin: 0 0 2rem 80px;
        font-size: 12px;
    }
    #step3 .schedule-area dd span{
        font-size: 18px;
        font-weight: 700;
        color: #42ab6d;
        display: block;
    }
    #step3 .graduate .sub-title{
        font-size: 22px;
    }
    #step3 .graduate .text{
        font-size: 11px;
    }
    #step3 .graduate-area{
        margin: auto;
    }
    #step3 .interview .flex{}
    #step3 .interview .flex .box{
        width: 100%;
    }
    #step3 .interview .htext{
        text-align: center;
        font-size: 18px;
    }
    #step3 .interview .movie-area{
        margin: 20px 0;
    }
    #step3 .interview .name-area{
        color: #fff;
        border-radius: 5px;
        padding: 10px;
        font-size: 15px;
    }
    #step3 .interview .name-area.pink{
        background-color: #EA609E;
    }
    #step3 .interview .name-area.green{
        background-color: #1BB1A0;
    }
    #step3 .interview .name-area p{
        margin: 0;
    }
    #step3 .interview .name-area .name{
        font-size: 22px;
        font-weight: 700;
    }
    #step3 .interview .company-area{
        margin: 1rem 0;
    }
    #step3 .appearance{
        width: calc(100%);
    }
    #step3 .appearance .box{
        width: 100%;
        padding: 2rem 2rem 4rem 2rem;
        margin: 0 0 0 2rem;
    }
    #step3 .appearance .box:last-child{
        padding: 2rem 2rem 1rem 2rem;
    }
    #step3 .appearance .box .obi{
        color: #fff;
        font-size:21px;
        padding: .5rem 2rem;
        display: inline-block;
        top: -2rem;
        left: -2rem;
        position: absolute;
        margin: 0;
    }
    #step3 .appearance ul{
        list-style: none;
        padding: 2rem 0 0 0;
    }
    #step3 .appearance ul li:first-letter{
    }

    
    #step4{
        background-color: #FAE3E6;
        padding: 70px 0 20px 0;
        background-image: url(../images/voice-event-staff/step4_title_bg_sp.jpg);
        background-size: 100% 500px;
    }
    #step4 .hd{
        height: 500px;
    }
    #step4 .cnt-subtitle{
        text-align: center;
    }
    #step4 .cnt-subtitle:after {
        content: "";
    }
    #step4 .cnt-title{
        font-size: 28px;
    }
    #step4 .cnt-title span{
        background-color: #fff;
    }
    #step4 .flex{
        justify-content: space-between;   
    }
    #step4 .cnt-box{
        width:100%;
        margin: 0;
        margin-bottom: 50px;
    }
    #step4 .cnt-box .obi2{
        width: 240px;
        font-size:24px;
    }
    #step4 .cnt-box .obi2::before{
    }
    #step4 .cnt-box .text1{
        font-size: 18px;
        padding: 0 2rem;
    }
    #step4 .cnt-box .text2{
        margin: 1rem 0;
        font-size: 12px;
        padding: 0 2rem;
    }
    
    














}

/*slick スライダー*/
.slick-arrow:before{
    content:""!important;
    width: 100%!important;
    height: 100%!important;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 1;
}
.slick-prev, .slick-next{
    width: 50px;
    height: 50px;
    top: 30%;
}
.slick-prev {
    left: -40px;
}
.slick-next{
    right: -40px;
}
.slick-next:before{
    background: url(../images/voice-artists/slider_arrow_r.png)!important;
    background-size: contain!important;
}

.slick-prev:before{
    background: url(../images/voice-artists/slider_arrow_l.png)!important;
    background-size: contain!important;
}

.slick-dots li.slick-active button::before{
    color: #42ab6d;
    opacity: 1;
}



#add1{
    background-image: url(../images/voice-artists/bg_gradientcolor2.png);
    background-size: cover;
    padding: 50px 0;
}
#add1 .title{
    font-size:21px;
    color: #42ab6d;
    text-align: center;
}
#add1 h4{
    text-align: center;
}
#add1 h4 .box-blue{
    background-color: #3B74B7;
    color: #fff;
    font-size: 44px;
    font-weight: 700;
    padding: .5rem 1rem;
}
#add1 .logo{
    text-align: center;
    width: 840px;
    margin: 3rem auto 4rem auto;
}
#add1 .flex{
    justify-content: center;
}
#add1 .box-white{
    background-color: #fff;
    padding: .5rem 1rem;
    border-radius: 10px;
    text-align: center;
    width: 400px;
    margin: 2rem;
}
#add1 .box-white .ttl{
    color: #3B74B7;
    font-size: 24px;
    font-weight: 700;
}
#add1 .box-white .ttl .fukidashi1{
    position: relative;
}
#add1 .box-white .ttl .fukidashi1::before{
    content: "";
    width:28px;
    height: 36px;
    background-image: url(../images/voice-artists/fukidashi_l.png);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left:-3rem;
    top:0;
}
#add1 .box-white .ttl .fukidashi1::after{
    content: "";
    width:28px;
    height: 36px;
    background-image: url(../images/voice-artists/fukidashi_r.png);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    right:-3rem;
    top:0;
}
#add1 .box-white .text1{
    font-size: 32px;
    font-weight: 700;
    color: #000;
    margin-bottom: 1rem;
}
#add1 .left-cnt{
    width: 320px;
}
#add1 .right-cnt{
    width: 520px;
}
#add1 .text2{
    font-size: 18px;
    font-weight: 700;
    margin: 0 auto 2rem auto;
    text-align: justify;
}
#add1 .text2 span.red{
    color: #FF0000;
    font-size: 120%;
}
#add1 .image{
    margin: 0;
    padding: 0 0 0 2rem;
}
#add1 .image img{
    border-radius: 20px;
}

#add1 .link-btn{
    text-align: center;
}
#add1 .link-btn a {
    width: 280px;
    display: block;
    background-color: #fff;
    padding: 1.5rem 1rem;
    color: #42ab6d;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    margin: auto;
    border-radius: 10px;
    position: relative;
}
#add1 .link-btn a::before {
    content: "";
    border: solid 1px #42ab6d;
    border-radius: 10px;
    width: 100%;
    height: 100%;
    position: absolute;
    top:3px;
    left: 3px;
}
#add1 .link-btn a::after{
    content:"";
    position: absolute;
    top:0;bottom:0;
    right:2rem;
    margin: auto;
    width:10px;
    height: 10px;
    border-right: 1px solid #42ab6d;
    border-top: 1px solid #42ab6d;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
@media screen and (max-width: 700px) {
    #add1 .wrap{
        padding: 0 5%;
    }
    #add1 .title{
        font-size:18px;
    }
    #add1 h4 .box-blue{
        font-size: 28px;
    }
    #add1 .logo{
        text-align: center;
        width: 80%;
        margin: 1rem auto 2rem auto;
    }
    #add1 .box-white{
        background-color: #fff;
        padding: 1rem 1rem;
        border-radius: 10px;
        text-align: center;
        margin: 1rem;
    }
    #add1 .box-white .ttl{
        color: #3B74B7;
        font-size: 16px;
        font-weight: 700;
        margin: 1rem 0;
    }
    #add1 .box-white .ttl .fukidashi1{
        position: relative;
    }
    #add1 .box-white .ttl .fukidashi1::before{
        width:12px;
        height: 20px;
    }
    #add1 .box-white .ttl .fukidashi1::after{
        width:12px;
        height: 20px;
    }
    #add1 .box-white .text1{
        font-size: 21px;
        font-weight: 700;
        color: #000;
        margin: 1rem 0;
    }
    #add1 .text2{
        font-size: 14px;
        width: 100%;
    }
    #add1 .text2 span.red{
    }
    #add1 .left-cnt {
        width: 100%;
        padding-top: 2rem;
    }
    #add1 .right-cnt {
        width: 100%;
    }
    #add1 .image{
        width: 100%;
        margin: 2rem auto;
        padding: 0;
    }
    #add1 .image img{
        border-radius: 20px;
    }

}



.other-page-button a {
    background-color: #42ab6d;
}

.page-vtuber .title-area .text-area .new {
    position: absolute;
    top: -140px;
    left: 0;
    display: block;
    width: 120px;
  }
  @media screen and (max-width: 700px) {
    .page-vtuber .title-area .text-area .new {
      top: -10px;
      left: 0;
      right: auto;
      width: 25%;
      max-width: 80px;
      transform: translateY(-100%);
    }
  }
  .page-vtuber .title-area .text-area .new img {
    width: 100%;
  }

.page-vtuber .occupation-area .title {
    font-size: 22px;
    color: #42ab6d;
}
.page-vtuber .occupation-area p {
    font-size: 16px;
    line-height: 1.75;
}


table.vtuber-work tr th {
    width: 200px;
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    border: 1px solid #dadada;
    background-color: #42ab6d;
}
table.vtuber-work tr td {
    font-size: 17px;
    border: 1px solid #dadada;
}
@media screen and (max-width: 700px) {
    table.vtuber-work tr th {
        display: block;
        width: 100%;
        font-size: 16px;
        font-weight: 700;
        color: #fff;
        text-align: center;
        border: 1px solid #dadada;
        background-color: #42ab6d;
    }
    table.vtuber-work tr td {
        display: block;

        font-size: 16px;
        border: 1px solid #dadada;
    }
}


.occupation-area .title.media-video-university-feature-title {
  font-size: 24px;
  color: #42ab6d;
}
.occupation-area .title.media-video-university-feature-sub-title {
    width: 100%;
    padding: 5px;
    font-size: 20px;
    color: #fff;
    background-color: #42ab6d;
}

@media screen and (max-width: 700px) {
  .occupation-area .title.media-video-university-feature-title {
    font-size: 20px;
  }
    .occupation-area .title.media-video-university-feature-sub-title {
    font-size: 18px;
  }
}

.study-flow {
    width: 100%;
    padding: 20px;
    background-color: #ebf5ec;
}
.study-flow picture,
.study-flow img {
    width: 100%;
    height: auto;
}
.study-flow-point {
    margin-top: 30px;
    gap: 20px;
    align-items: stretch !important;
}
.study-flow-point .box {
    margin: 0 !important;
    padding: 15px;
    background-color: #fff;
    border: 1px solid #dadada;
}
.study-flow-point .box b {
    display: block;
    font-size: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #dadada;
}
.study-flow-point .box b small {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 60px;
    height: 60px;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 1;
    color: #fff;
    background-color: #42ab6d;
    border-radius: 999px;
}
.study-flow-point .box b small span {
    display: block;
    margin-top: 3px;
    font-size: 20px;
}
.study-flow-point .box b {
    
}