@charset "utf-8";
/* CSS Document */

#suisenlabo .yellow {color: #fff025;}
#suisenlabo .wblue {color: #7dccf3;}
#suisenlabo .dblue {color: #091f3c;}

/*---------------------------------------------------------
MainVisual-TOP
---------------------------------------------------------*/
#suisenlabo .johnansol-page .page-title {
padding: 60px 0;
background-image: url(../images/suisenlabo/slbc_mv_bg01.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
position: relative;
}
#suisenlabo .slbc_title_top {
width: 1000px;
margin: 0 auto;
padding-right: 20%;
display: block;
}
#suisenlabo .slbc_title_top p {
font-size: 2rem;
letter-spacing: 2px;
align-items: center;
display: flex;
justify-content: center;
}
#suisenlabo .slbc_title_top p::before,
#suisenlabo .slbc_title_top p::after {
background-color: #3c4357;
content: "";
height: 1px;
width: 60px;
}
#suisenlabo .slbc_title_top p::before {
margin-right: 15px;
}
#suisenlabo .slbc_title_top p::after {
margin-left: 15px;
}
#suisenlabo .johnansol-page .page-title .slbc_title {
padding-right: 20%;
}
#suisenlabo .page-title h1:before {
display: none;
}
#suisenlabo .page-title .slbc_title_txt01 {
font-size: 3.8rem;
background: linear-gradient(transparent 70%, #f3e734 70%);
}
#suisenlabo .page-title .slbc_title_txt02 {
font-size: 3.8rem;
}
/*#suisenlabo .page-title .slbc_title_txt03 {
font-size: 5.4rem;
}*/
#suisenlabo .page-title .slbc_title_img04 {
width: 300px;
padding: 20px 0;
vertical-align: middle;
display: inline;
pointer-events: none;
}
#suisenlabo .page-title .slbc_title02 {
width: 1000px;
margin-left: auto;
margin-right: auto;
padding-right: 20%;
text-align: center;
}
#suisenlabo .mv_logo {
width: 210px;
position: absolute;
left: 2%;
top: 25px;
pointer-events: none;
}
/* PC */ @media only screen and (min-width: 2000px){
    #suisenlabo .page-title .slbc_title02 {
    padding-right: 10%;
    }
    #suisenlabo .slbc_title_top {
    padding-right: 10%;
    }
    #suisenlabo .johnansol-page .page-title .slbc_title {
    padding-right: 10%;
    }
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .johnansol-page .page-title {
    padding: 1.5em 0 2em;
    background-image: url(../images/suisenlabo/slbc_mv_bg02.jpg);
    }
    #suisenlabo .page-kuz {
    padding: 0;
    }
    #suisenlabo .page-kuz .breadcrumbs span {
    font-size: 1rem;
    }
    #suisenlabo .page-kuz .fa-caret-right:before {
    font-size: 1.1rem;
    }
    #suisenlabo .slbc_title_top {
    width: 95%;
    padding-right: 25%;
    }
    #suisenlabo .slbc_title_top p {
    font-size: 3.9vw;
    letter-spacing: 1px;
    }
    #suisenlabo .slbc_title_top p::before,
    #suisenlabo .slbc_title_top p::after {
    width: 12%;
    }
    #suisenlabo .slbc_title_top p::before {
    margin-right: 8px;
    }
    #suisenlabo .slbc_title_top p::after {
    margin-left: 8px;
    }
    #suisenlabo .johnansol-page .page-title .slbc_title {
    line-height: 1.5;
    font-size: 5vw;
    padding-right: 25%;
    }
    #suisenlabo .page-title .slbc_title_txt01 {
    font-size: 7vw;
    background: linear-gradient(transparent 70%, #f3e734 70%);
    }
    #suisenlabo .page-title .slbc_title_txt02 {
    font-size: 5vw;
    }
    /*#suisenlabo .page-title .slbc_title_txt03 {
    font-size: 6.5vw;
    }*/
    #suisenlabo .page-title .slbc_title_img04 {
    width: 32%;
    padding: 10px 0;
    }
    #suisenlabo .page-title .slbc_title02 {
    width: 100%;
    font-size: 4.5vw;
    padding-right: 30%;
    text-align: left;
    line-height: 1.5;
    padding-left: 4%;
    }
    #suisenlabo .mv_logo {
    width: 45%;
    margin: 1.5em 0 0 4%;
    position: relative;
    top: unset;
    left: unset;
    }
}


/*---------------------------------------------------------
slbc01 TOP-Read
---------------------------------------------------------*/
#suisenlabo .slbc01 {
padding: 60px 0;
background-image: url(../images/suisenlabo/slbc_read_bg.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
#suisenlabo .slbc01 p {
width: 705px;
margin-left: auto;
margin-right: auto;
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc01 {
    padding: 2em 0;
    }
    #suisenlabo .slbc01 p {
    width: 90%;
    }
}


/*---------------------------------------------------------
slbc02 -slbc02_worry-
---------------------------------------------------------*/
#suisenlabo .slbc02_worry {
padding: 3em 0;
background-color: #f5f5f5;
}
/*#suisenlabo .slbc02 .slbc02_title_txt01 {
padding: 2px 2em;
font-size: 2rem;
color: #fff;
background-color: #3c4357;
border-radius: 50px;
display: inline-block;
}
#suisenlabo .slbc02 .slbc02_title_txt02 {
margin-top: 1em;
padding: 5px 3em;
font-size: 2rem;
border-top: 1px solid #3c4357;
border-bottom: 1px solid #3c4357;
display: inline-block;
}*/
#suisenlabo .slbc02 .slbc02_title {
text-align: center;
font-size: 3.6rem;
}
#suisenlabo .slbc02 .slbc02_title .slbc02_title_txt02 {
font-size: 4.5rem;
}
#suisenlabo .slbc02 .slbc02_title .sst_img {
width: 120px;
margin-right: 10px;
vertical-align: bottom;
display: inline-block;
pointer-events: none;
}
#suisenlabo .slbc02_worrylist {
padding: 60px 0 0 50px;
position: relative;
}
#suisenlabo .slbc02_worrylist li {
width: 250px;
padding: 0 30px 45px 30px;
font-weight: bold;
background:url(../images/suisenlabo/worry_fuki01.png) left bottom / 100% auto no-repeat;
}
#suisenlabo .slbc02_worrylist li:nth-child(2) {
padding: 0 30px 70px 30px;
position: absolute;
left: 345px;
top: 40px;
background-image:url(../images/suisenlabo/worry_fuki02.png);
}
#suisenlabo .slbc02_worrylist li:nth-child(3) {
padding: 0 30px 50px 40px;
position: absolute;
right: 125px;
bottom: -10px;
background-image:url(../images/suisenlabo/worry_fuki03.png);
}
#suisenlabo .slbc02_worrylist li:nth-child(4) {
padding: 0 30px 50px 40px;
position: absolute;
left: 0;
bottom: -185px;
}
#suisenlabo .slbc02_worrylist li:nth-child(5) {
padding: 0 35px 50px 40px;
position: absolute;
right: 0;
bottom: -180px;
background-image:url(../images/suisenlabo/worry_fuki03.png);
}
#suisenlabo .slbc02_worry_img01 {
width: 400px;
margin: 0 auto;
pointer-events: none;
}
/* sp */
@media only screen and (max-width: 767px){
    #suisenlabo .slbc02_worry {
    padding: 3em 0 2em;
    }
    #suisenlabo .slbc02 .slbc02_title {
    font-size: 6.5vw;
    }
    #suisenlabo .slbc02 .slbc02_title .slbc02_title_txt02 {
    font-size: 8.5vw;
    }
    #suisenlabo .slbc02 .slbc02_title .sst_img {
    width: 25%;
    margin-right: 2%;
    }
    #suisenlabo .slbc02_worrylist {
    padding: 2em 0 0 0;
    position: relative;
    }
    #suisenlabo .slbc02_worrylist li {
    width: 48%;
    line-height: 1.6;
    padding: 0 5% 2em;
    margin-bottom: 1.5em;
    font-size: 1.4rem;
    background:url(../images/suisenlabo/worry_fuki01.png) left bottom / 100% auto no-repeat;
    }
    #suisenlabo .slbc02_worrylist li:nth-child(2) {
    padding: 0 4% 2.5em 7%;
    position: relative;
    left: inherit;
    top: inherit;
    right: inherit;
    bottom: inherit;
    background-image:url(../images/suisenlabo/worry_fuki03.png);
    }
    #suisenlabo .slbc02_worrylist li:nth-child(3) {
    padding: 0 5% 2em;
    position: relative;
    right: inherit;
    bottom: inherit;
    background-image:url(../images/suisenlabo/worry_fuki01.png);
    }
    #suisenlabo .slbc02_worrylist li:nth-child(4) {
    padding: 0 4% 2.5em 7%;
    position: relative;
    left: inherit;
    bottom: inherit;
    background-image:url(../images/suisenlabo/worry_fuki03.png);
    }
    #suisenlabo .slbc02_worrylist li:nth-child(5) {
    margin-left: 24%;
    margin-bottom: .5em;
    padding: 0 5% 4em;
    position: relative;
    right: inherit;
    bottom: inherit;
    background-image:url(../images/suisenlabo/worry_fuki02.png);
    }
    #suisenlabo .slbc02_worry_img01 {
    width: 85%;
    }
}


/*---------------------------------------------------------
slbc02 -workhour-
---------------------------------------------------------*/
#suisenlabo .workhour {
padding: 3em 0 0;
background-color: #e9e9f5;
/*background: linear-gradient(0deg, rgb(234, 236, 246), rgb(245, 245, 245));*/
}
#suisenlabo .workhour .wh_title_logo {
margin-right: 6px;
padding: 2px 0.2em 3px;
background-color: #004c9c;
border-radius: 10px;
display: inline-block;
}
#suisenlabo ul.whlist {
justify-content: center;
}
#suisenlabo ul.whlist li {
width: 31%;
padding: 15px 20px;
margin-right: 2%;
margin-bottom: 15px;
background: #fff;
border-radius: 15px;
}
#suisenlabo ul.whlist li img {
pointer-events: none;
}
#suisenlabo ul.whlist .whlist_title {
margin-bottom: 5px;
color: #005bac;
text-align: center;
}
/* PC */ @media only screen and (min-width: 768px){
    #suisenlabo ul.whlist li:nth-child(2) .whlist_img {
    width: 95%;
    }
    #suisenlabo ul.whlist li:nth-child(3n) {
    margin-right: 0;
    }
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .workhour h3 {
    font-size: 5.2vw;
    }
    #suisenlabo .workhour h3 span {
    font-size: 5.8vw;
    }
    #suisenlabo ul.whlist li {
    width: 48%;
    padding: 10px 5%;
    margin-right: 2%;
    margin-bottom: 15px;
    background: #fff;
    border-radius: 15px;
    }
    #suisenlabo ul.whlist li:nth-child(2n) {
    margin-right: 0;
    }
    #suisenlabo ul.whlist li .whlist_img img {
    image-rendering: auto;
    }
}


/*---------------------------------------------------------
slbc02 -slbc02_solu-
---------------------------------------------------------*/
#suisenlabo .slbc02_solu {
padding: 1em 0 3em;
background-color: #eaecf6;
}
#suisenlabo .worries_arrow {
width: 200px;
margin: 0 auto 30px;
pointer-events: none;
}
#suisenlabo .slbc02_solu .slbc02_solu_title {
text-align: center;
font-size: 3.6rem;
}
#suisenlabo .slbc02_solu .slbc02_solu_title .sst01 {
font-size: 4.5rem;
}
#suisenlabo .slbc02_solu .slbc02_solu_title .sst_img {
width: 120px;
margin-right: 10px;
vertical-align: bottom;
display: inline-block;
pointer-events: none;
}
#suisenlabo .slbc02_solu .wh_title_logo {
margin-right: 6px;
padding: 0 0.6em;
background-color: #004c9c;
border-radius: 10px;
display: inline-block;
}
#suisenlabo .slbc02_solu .slbc02_solulist li {
width: 230px;
}
#suisenlabo .slbc02_solu .slbc02_solulist li .slbc02_sol_point {
width: 200px;
margin: 0 auto;
pointer-events: none;
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc02_solu {
    padding: 0 0 3em;
    }
    #suisenlabo .worries_arrow {
    width: 40%;
    }
    #suisenlabo .slbc02_solu .slbc02_solu_title {
    font-size: 6.5vw;
    }
    #suisenlabo .slbc02_solu .slbc02_solu_title .sst01 {
    font-size: 9vw;
    }
    #suisenlabo .slbc02_solu .slbc02_solu_title .sst_img {
    width: 25%;
    margin-right: 2%;
    }
    #suisenlabo .slbc02_solu .slbc02_solulist li {
    width: 48%;
    margin-right: 2%;
    margin-bottom: 1.5em;
    }
    #suisenlabo .slbc02_solu .slbc02_solulist li:nth-child(even) {
    width: 48%;
    margin-right: 0;
    margin-left: 2%;
    }
    #suisenlabo .slbc02_solu .slbc02_solulist li .slbc02_sol_point {
    width: 77%;
    margin: 0 auto;
    }
}


/*---------------------------------------------------------
slbc03
---------------------------------------------------------*/
#suisenlabo .slbc03 {
padding: 5em 0 3em;
background:url(../images/suisenlabo/slbc03_bg.jpg) top center/ cover no-repeat;
}
#suisenlabo .slbc03_wrap {
background-color: rgb(255, 255, 255, 0.85);
border-radius: 20px;
}
#suisenlabo .slbc03_txt01 {
padding: 4px 1em 3px;
background-color: #004c9c;
border-radius: 15px;
display: inline-block;
}
#suisenlabo .slbc03_title {
font-size: 3.6rem;
line-height: 1.2;
}
#suisenlabo .slbc03_title span {
font-size: 5.4rem;
}
#suisenlabo .slbc03_corelist {
padding: 5px 0 30px;
}
#suisenlabo .slbc03_corelist li {
width: 900px;
margin: 30px auto;
}
#suisenlabo .slbc03_corelist li .slbc03_title2 {
width: 100%;
line-height: 1.5;
padding: 50px 0 60px 230px;
font-size: 3rem;
background:url(../images/suisenlabo/slbc03_core01.png) bottom center/ 100% auto no-repeat;
}
#suisenlabo .slbc03_corelist li:nth-child(2) .slbc03_title2 {
background:url(../images/suisenlabo/slbc03_core02.png) bottom center/ 100% auto no-repeat;
}
#suisenlabo .slbc03_corelist li:nth-child(3) .slbc03_title2 {
background:url(../images/suisenlabo/slbc03_core03.png) bottom center/ 100% auto no-repeat;
}
#suisenlabo .slbc03_corelist li .slbc03_title2 .blue_label {
padding: 0 1.5em;
font-size: 2rem;
font-weight: bold;
color: #fff;
background-color: #004c9c;
display: inline-block;
}
#suisenlabo .slbc03_corelist li .slbc03_corebox {
margin-top: 20px;
padding-left: 90px;
position: relative;
}
#suisenlabo .slbc03_corelist li .slbc03_coretxt {
width: 450px;
position: absolute;
right: 30px;
top: 40px;
}
#suisenlabo .slbc03_corelist li .slbc03_coreimg {
width: 300px;
pointer-events: none;
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc03 {
    padding: 3em 0;
    background:url(../images/suisenlabo/slbc03_bg.jpg) top center/ cover no-repeat;
    }
    #suisenlabo .slbc03_title {
    font-size: 8vw;
    line-height: 1.2;
    }
    #suisenlabo .slbc03_title span {
    font-size: 14vw;
    margin-bottom: 10px;
    display: inline-block;
    }
    #suisenlabo .slbc03_corelist li .slbc03_title2 .blue_label {
    margin-bottom: .5em;
    padding: 0 1em;
    font-size: 1.6rem;
    }
    #suisenlabo .slbc03_corelist li .slbc03_title2 {
    width: 93%;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.4;
    padding: 5px 0 30px 27%;
    font-size: 5.8vw;
    background:url(../images/suisenlabo/slbc03_core01_sp.png) bottom center/ 100% auto no-repeat;
    }
    #suisenlabo .slbc03_corelist li:nth-child(2) .slbc03_title2 {
    background:url(../images/suisenlabo/slbc03_core02_sp.png) bottom center/ 100% auto no-repeat;
    }
    #suisenlabo .slbc03_corelist li:nth-child(3) .slbc03_title2 {
    background:url(../images/suisenlabo/slbc03_core03_sp.png) bottom center/ 100% auto no-repeat;
    }
    #suisenlabo .slbc03_corelist li {
    width: 100%;
    margin: 30px auto;
    }
    #suisenlabo .slbc03_corelist li .slbc03_corebox {
    padding-left: 0;
    }
    #suisenlabo .slbc03_corelist li .slbc03_coretxt {
    width: 90%;
    margin: 1em auto 0;
    position: inherit;
    right: unset;
    top: unset;
    }
    #suisenlabo .slbc03_corelist li .slbc03_coreimg {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    }
}


/*---------------------------------------------------------
slbc04
---------------------------------------------------------*/
#suisenlabo .slbc04 {
padding: 2em 0 3em;
background-color: #e9e9f5;
}
#suisenlabo .slbc04_box {
padding: 3em 50px;
border-radius: 15px;
background-color: #fff;
}
#suisenlabo .slbc04 .sst_img {
width: 120px;
margin-right: 10px;
vertical-align: bottom;
display: inline-block;
pointer-events: none;
}
#suisenlabo .slbc04 .slbc04_logo img {
width: 200px;
display: inline-block;
pointer-events: none;
}
#suisenlabo .slbc04 .sl4tt01 {
font-size: 4.5rem;
color: #c7161e;
}
#suisenlabo .slbc04 .sl4tt02 {
color: #c7161e;
}
#suisenlabo .glist_title span {
padding: 2px 1em;
background-color: #c7161e;
border-radius: 100px;
display: inline-block;
}
#suisenlabo .glist_sctitle {
width: 100%;
margin: 20px auto 15px;
padding: 2px 0 0 35px;
font-size: 1.8rem;
font-weight: bold;
color: #004da0;
border-top: 1px solid #004da0;
background:url(../images/suisenlabo/glist_sctitle_bg.png) top left/ 20px auto no-repeat;
}
#suisenlabo ul.gsclist {
margin-left: 1%;
justify-content: unset;
}
#suisenlabo .gsclist li {
width: 23%;
margin-right: 2%;
margin-bottom: .5em;
font-size: 1.3rem;
display: block;
}
#suisenlabo .gsclist li:nth-child(4n) {
margin-right: 0;
}
#suisenlabo .gsclist li p {
display: inline;
}
#suisenlabo .scname {
margin-right: 5px;
padding: 2px .8em;
font-size: 1.3rem;
font-weight: bold;
text-align: center;
color: #fff;
background-color: #004da0;
border-radius: 50px;
display: block;
} 
#suisenlabo .supervisor {
padding: 30px 50px 40px;
border-radius: 15px;
background-color: #002024;
}
#suisenlabo .sv_wrap {
padding-left: 250px;
position: relative;
}
#suisenlabo .sv_wrap .sv_img {
width: 190px;
position: absolute;
left: 0;
top: 0;
pointer-events: none;
}
#suisenlabo .case_box .cace_wrap {
padding: 30px 50px 40px 300px;
background-color: #fff;
border-radius: 15px;
position: relative;
}
#suisenlabo .case_box .aoba_img {
width: 200px;
position: absolute;
left: 50px;
top: 35px;
pointer-events: none;
}

/* 大学リスト */
.scaco .scaco_toggle_wrap {
width: 100%;
padding: 0 2em 1em;
}
.scaco .toggle_contents {
background: #fff;
border-bottom: 1px solid #e6e6e6;
}
.scaco .toggle_contents:last-child {
border-bottom: none;
}
.scaco .toggle_title {
padding: 1em 1em 1em 3em;
font-size: 2.2rem;
line-height: 1.4;
color: #005bac;
position: relative;
cursor: pointer;
}
.scaco .toggle_btn {
position: absolute;
top: 50%;
left: 20px;
transform: translateY(-50%);
background: #c6d3e9;
display: block;
width: 24px;
height: 24px;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
border-radius: 50%;
}
.scaco .toggle_btn:before, .scaco .toggle_btn:after {
display: block;
content: '';
background-color: #004da0;
position: absolute;
width: 10px;
height: 2px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.scaco .toggle_btn:before {
width: 2px;
height: 10px;
}
.scaco .toggle_title.selected .toggle_btn:before {
content: normal;
}
.scaco .toggle_contents dd {
padding: 0 1em 2em;
display: none;
}

/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc04 h2 {
    font-size: 8vw;
    } 
    #suisenlabo .slbc04 .sst_img {
    width: 25%;
    margin-right: 2%;
    }
    #suisenlabo .slbc04_box {
    padding: 20px 5%;
    }
    #suisenlabo .gsclist li {
    width: 49%;
    margin-right: 2%;
    margin-left: 0;
    margin-bottom: 1em;
    }
    #suisenlabo .gsclist li:nth-child(2n) {
    margin-right: 0;
    }
    #suisenlabo .scname {
    line-height: 1.3;
    } 
    #suisenlabo .supervisor {
    padding: 2em 5%;
    }
    #suisenlabo .sv_wrap {
    padding-left: 0;
    position: relative;
    }
    #suisenlabo .sv_wrap .sv_img {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    left: unset;
    top: unset;
    }
    #suisenlabo .case_box .cace_wrap {
    padding: 2em 5% 3em;
    background-color: #fff;
    }
    #suisenlabo .case_box .aoba_img {
    width: 65%;
    margin: 0 auto 1em;
    position: relative;
    left: unset;
    top: unset;
    }
    /* 大学リスト */
    .scaco .scaco_toggle_wrap {
    padding: 0 0 1em;
    }
    .scaco .toggle_title {
    padding: .5em 1em .5em 3em;
    font-size: 2rem;
    }
    .scaco .toggle_contents dd {
    padding: 0 0 2em;
    }
}


/*---------------------------------------------------------
slbc05
---------------------------------------------------------*/
#suisenlabo .slbc05 {
padding: 3em 0;
background:url(../images/suisenlabo/slbc05_bg.jpg) center / cover no-repeat;
}
#suisenlabo .slbc05_img01 {
width: 450px;
margin-left: auto;
margin-right: auto;
display: block;
pointer-events: none;
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc05 {
    padding: 3em 0 0;
    background:url(../images/suisenlabo/slbc05_bg_sp.jpg) center / cover no-repeat;
    }
    #suisenlabo .slbc05_img01 {
    width: 100%;
    }
}


/*---------------------------------------------------------
slbc06
---------------------------------------------------------*/
#suisenlabo .bg_black {
padding: 3em 0;
background:url(../images/suisenlabo/slbc06_bg.jpg) center / cover no-repeat;
background-color: #2c353d;
}
#suisenlabo .slbc06 {
padding: 4em 0 0;
}
#suisenlabo .faq .faq_toggle_wrap{
background-color: rgba(255,255,255,.88);
}
#suisenlabo .faq .toggle_contents {
background: transparent;
}
/* sp */@media only screen and (max-width: 767px){
    #suisenlabo .slbc06 {
    padding: 2em 0 0;
    }
    #suisenlabo .bg_black {
    background:url(../images/suisenlabo/slbc06_bg_sp.jpg) center / cover no-repeat;
    }
}