#vision {
    width: 100%;
}
#vision .container{
    padding: 225px 0;
}
#vision .con{
    width: 79.166%;
    margin: 0 auto;
}
#vision .con .tit{
    text-align: center;
}
#vision .con .tit .tt{
    font-weight: 600;
    font-size: 55px;
    letter-spacing: -0.03em;
    color: #303443;
    margin-bottom: 19px;
}
#vision .con .tit .ss{
    font-weight: 500;
    font-size: 40px;
    letter-spacing: -0.03em;
    color: #666666;
}
#vision .arrow{
    width: 48px;
    margin: 70px auto;
}
#vision .arrow svg{
    width: 100%;
}
#vision .con.mis{
    margin:0;
    width: 1200px;
    height: 330px;
    background: url(../../img/mission_bg.png) no-repeat center center/cover;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}
#vision .con.mis .tit{
    margin-left: 180px;
    margin-bottom: -60px;
    text-align: left;
}
#vision .con.mis .tit .tt{
    color: #fff;
}
#vision .con.core .tit .tt,
#vision .con.goal .tit .tt{
    position: relative;
}
#vision .con.core .tit .tt::before,
#vision .con.goal .tit .tt::before{
    content: '';
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 82px;
    height: 2px;
    background-color: #303443;
}
#vision .con.goal .four,
#vision .con.core .thr{
    margin-top: 100px;
}
#vision .con.goal .four .content{
    width: 78.125%;
    padding: 80px 0;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    margin: 0 auto;
}
#vision .con.goal .four .box{
    text-align: center;
}
#vision .con.goal .four .box .tt{
    font-weight: 600;
    font-size: 25px;
    letter-spacing: -0.03em;
    margin-bottom: 39px;
    color: #303443;
}
#vision .con.goal .four .box .ss{
    font-weight: 400;
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 1.5;
    color: #666;
}
#vision .con.goal .four .box:not(:last-child){
    border-right:1px solid #D6DCE0;    
}
#vision .con.core .thr{
    /* display: grid;
    grid-template-columns: repeat(3,1fr 5%); */
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#vision .con.core .cont{
    width: 400px;
    height: 400px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 0 auto;
    position: relative;
}
#vision .con.core .cont .txt{
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
#vision .con.core .cont .txt .st{
    font-weight: 600;
    font-size: 30px;
    letter-spacing: -0.03em;
    color: #fff;
}
#vision .con.core .sys{
    background-image: url(../../img/core_1.png);
}
#vision .con.core .mot{
    background-image: url(../../img/core_2.png);
}
#vision .con.core .sci{
    background-image: url(../../img/core_3.png);
}
/* #vision .con.core .sys::before{
    content: '';
    position: absolute;
    top:50%;
    transform:translateY(-50%);
    right:-97px;
    width:91px;
    height:14px;
    background: url(../../img/dash_line.png) no-repeat center center/cover;
}
#vision .con.core .mot::before{
    content: '';
    position: absolute;
    top:50%;
    transform:translateY(-50%);
    right:-97px;
    width:91px;
    height:14px;
    background: url(../../img/dash_line.png) no-repeat center center/cover;
} */
#vision .con.core .thr .dash{
    display:block;
    background: url(../../img/dash_line.png) no-repeat center center/cover;
    width:91px;
    height:14px;
}
@media screen and (max-width:1860px) {
    #vision .con.core .cont{
        width: 350px;
        height: 350px;
    }
    #vision .con.core .cont .txt .st {
        font-size: 26px;
    }
}
@media screen and (max-width:1585px) {
    #vision .con.goal .four .content {
        width: 100%;
    }
    #vision .con.core .cont .txt .st {
        font-size: 24px;
    }
    #vision .con.core .cont {
        width: 300px;
        height: 300px;
    }
}
@media screen and (max-width:1440px) {
    #vision .con.core .thr .dash{
        width:81px;
        height: 12px;
    }
    #vision .con.core .cont .txt .st {
        font-size: 22px;
    }
    #vision .con .tit .tt{
        font-size: 45px;
    }
    #vision .con .tit .ss{
        font-size: 32px;
    }
    #vision .con.goal .four, 
    #vision .con.core .thr {
        margin-top: 60px;
    }
}
@media screen and (max-width:1340px) {
    #vision .container {
        padding: 180px 0;
    }
    #vision .con.core .cont {
        width: 260px;
        height: 260px;
    }
    #vision .con.goal .four .box .tt{
        font-size: 22px;
        margin-bottom: 29px;
    }
    #vision .con.goal .four .box .ss{
        font-size: 18px;
    }
}
@media screen and (max-width:1240px) {
    #vision .con.mis{
        width: 910px;
    }
}
@media screen and (max-width:1190px) {
    #vision .con.core .cont {
        width: 230px;
        height: 230px;
    }
    #vision .arrow{
        margin:60px auto 40px;
    }
}
@media screen and (max-width:1024px){
    #vision .con{
        width: 90%;
    }
    #vision .con.core .thr .dash {
        width: 61px;
        height: 9px;
    }
}
@media screen and (max-width:905px) {
    #vision .con{
        width: 95%;
    }
    #vision .con .tit .tt {
        font-size: 36px;
    }
    #vision .con .tit .ss{
        font-size: 26px;
    }
    #vision .con.mis {
        width: 750px;
        height: 270px;
    }
    #vision .con.mis .tit{
        margin-bottom: -44px;
    }
    #vision .con.core .thr .dash{
        display: none;
    }
}
@media screen and (max-width:768px) {
    #vision .container {
        padding: 120px 0;
    }
    #vision .con.mis {
        width: 580px;
        height: 190px;
    }
    #vision .con.goal .four .box .ss {
        font-size: 16px;
    }
    #vision .con.goal .four, #vision .con.core .thr {
        margin-top: 90px;
    }
    #vision .con.goal .four .content{
        padding: 20px 0;
        grid-template-columns: repeat(2,1fr);
        row-gap: 40px;
    }
    #vision .con.goal .four .box:not(:last-child){
        border: none;
    }
    #vision .con.goal .four .box:first-child,
    #vision .con.goal .four .box:nth-child(3){
        border-right: 1px solid #D6DCE0;
    }
    #vision .arrow{
        width: 38px;
    }
    #vision .con.core .cont .txt .st {
        font-size: 20px;
    }
    #vision .con.core .cont {
        width: 200px;
        height: 200px;
    }
    #vision .con.mis .tit {
        margin-left: 100px;
    }
}
@media screen and (max-width:630px) {
    #vision .con.goal .four, #vision .con.core .thr {
        margin-top: 70px;
    }
    #vision .con.core .cont {
        width: 170px;
        height: 170px;
    }
    #vision .con.core .cont .txt .st {
        font-size: 18px;
    }
}
@media screen and (max-width:565px) {
    #vision .con .tit .tt {
        font-size: 30px;
    }
    #vision .con .tit .ss {
        font-size: 20px;
    }
    #vision .con.mis {
        width: 450px;
        height: 130px;
    }
    #vision .con.core .thr{
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 425px) {
    #vision .con.mis .tit {
        margin-left: 10%;
    }
    #vision .con.mis {
        width: 85%;
        height: 96px;
    }
    #vision .con.core .tit .tt::before, 
    #vision .con.goal .tit .tt::before{
        bottom: -15px;
    }
}
@media screen and (max-width: 375px) {
    #vision .con .tit .tt {
        font-size: 24px;
        margin-bottom: 6px;
    }
    #vision .con .tit .ss {
        font-size: 16px;
    }
    #vision .con.mis .tit {
        margin-bottom: -25px;
    }
    #vision .con.goal .four .box .tt{
        margin-bottom: 12px;
        font-size: 16px;
    }
    #vision .con.goal .four .box .ss {
        font-size: 13px;
    }
    #vision .con.core .cont .txt .st {
        font-size: 16px;
    }
    #vision .arrow {
        margin: 40px auto 30px;
    }
}
@media screen and (max-width:336px) {
    #vision .con.core .thr{
        gap: 10px;
    }
}