@charset "UTF-8";
@media screen and (min-width: 768px),print {
#concept h1.main-title{ width: 100%; max-width: 1920px; margin: 0 auto; min-height: 350px; background: url(../images/concept/h1.png) no-repeat top center; color: #fff; padding: 120px 0 50px; text-align: left }

#main-bx {margin: 110px auto 0;}
#main-bx .bx{width: 100%; margin: 0 auto; background: url(../images/concept/main-bg1.png) no-repeat bottom center; padding-bottom: 200px;}
#main-bx .bx .inner{width: 1200px; margin: 0 auto; text-align: center; position: relative; left: -5px}
#main-bx .bx .inner .logo{text-align: center;margin-bottom: 14px;position: relative;left: -5px;}
#main-bx .bx .inner .ttl{font-size: 32px; letter-spacing: 3px; font-weight: 500; margin-bottom: 20px}
#main-bx .bx .inner .ttl .span1{font-size: 42px; font-weight: bold; letter-spacing: 4px;}
#main-bx .bx .inner .ttl .span2{font-size: 42px; letter-spacing: 5px;}
#main-bx .bx .inner .img{text-align: center; margin-bottom: -355px; position: relative; left: -65px}
.main-bx-bg{width: 100%;max-width: 1920px;min-height: 520px;margin: 0 auto -194px;background: url(../images/concept/main-bg-txt.svg) no-repeat top 53px right 120px,url(../images/concept/main-bg2.png) no-repeat top center;}

#con1 {width: 100%;margin: 0 auto 86px;}
#con1 .bx{width: 1200px; margin: 0 auto; position: relative;background: #fff; }
#con1 .bx .inner{width: 698px;margin-left: 502px;padding: 0px 30px 30px 29px;}
#con1 .bx .inner .num{margin-left: -50px;margin-bottom: 28px;}
#con1 .bx .inner .ttl{color: #1a1a1a;font-size: 24px;font-weight: 700;letter-spacing: 2.4px;line-height: 42px;margin-bottom: 31px;}
#con1 .bx .inner .ttl .span1{font-size: 42px; letter-spacing: 4px; margin-right: -15px}
#con1 .bx .inner .ttl .span2{font-size: 24px; letter-spacing: 2px}
#con1 .bx .inner .ttl .span3{font-size: 42px; letter-spacing: 4.5px}
#con1 .bx .inner .img{position: absolute;left: -202px;top: 0;}
#con1 .bx .inner .ttl1{font-size: 18px; font-weight: bold; margin-bottom: 25px; letter-spacing: 2px;}





#con1 .bx .inner .txt-01{
width: 610px;
color: #1a1a1a;
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
line-height: 30px;
}

#con1 .ss,#con2 .ss,#con3 .ss{
color: #1a1a1a;
font-size: 42px;
font-weight: 700;
letter-spacing: 4.2px;
line-height: 42px;
}

#con1 .bx .inner .ttl,  #con3 .bx .inner .ttl{
    line-height: 2.5 !important;
}

#con2 {width: 100%;margin: 0 auto 50px;background: url(../images/concept/con2-bg.png) no-repeat top center;padding-top: 80px;}
#con2 .bx{width: 1200px; margin: 0 auto; position: relative;background: #fff; left: -10px;}
#con2 .bx .inner{width: 690px; padding: 0px 0px 30px 80px;}
#con2 .bx .inner .num{margin-bottom: 27px;margin-left: -50px;}
#con2 .bx .inner .ttl{
    color: #1a1a1a;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 2.4px;
    line-height: 64px;
    margin-bottom: 21px;
}
#con2 .bx .inner .ttl .span1{font-size: 24px; letter-spacing: 3px;}
#con2 .bx .inner .ttl .span2{font-size: 42px; letter-spacing: 4px;}
#con2 .bx .inner .ttl .span3{font-size: 42px; letter-spacing: 4.5px;}
#con2 .bx .inner .img{position: absolute;left: 693px;top: 0;}
#con2 .bx .inner .ttl1{font-size: 18px; font-weight: bold; margin-bottom: 20px; letter-spacing: 2px;}
#con2 .bx .inner .txt-01{
width: 563px;
color: #1a1a1a;
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
line-height: 30px;
}
#con2 .bx .inner .p-mb{
    margin-bottom: 30px;
}



#con2 .bx .inner .btn{text-align: center;position: relative;left: -55px;margin-top: 45px;}

#con3 {width: 100%;margin: 0 auto 170px;background: url(../images/concept/con3-bg.png) no-repeat top center;padding-top: 80px;}
#con3 .bx{width: 1200px; margin: 0 auto; position: relative;background: #fff; }
#con3 .bx .inner{width: 690px;margin-left: 584px;padding: 0px 30px 30px 30px;}
#con3 .bx .inner .num{margin-left: -50px;margin-bottom: 28px;}
#con3 .bx .inner .ttl{color: #1a1a1a;font-size: 24px;font-weight: 700;letter-spacing: 2.4px;line-height: 42px;margin-bottom: 29px;}
#con3 .bx .inner .ttl .span1{font-size: 42px; letter-spacing: 4.5px; line-height: 1.2}
#con3 .bx .inner .ttl .span2{font-size: 24px; letter-spacing: 2.5px;}
#con3 .bx .inner .img{position: absolute; left: -210px; top: 0}
#con3 .bx .inner .ttl1{font-size: 18px; font-weight: bold; margin-bottom: 25px; letter-spacing: 2px;}

#con3 .bx .inner .txt-01{
width: 526px;
color: #1a1a1a;
font-size: 16px;
font-weight: 400;
letter-spacing: 1.6px;
line-height: 30px;
}

#con3 .bx .inner .btn{text-align: center;position: relative;left: -84px;top: 47px;}

#con4 {width: 100%;margin: 0 auto;background: url(../images/concept/con4-bg.png) no-repeat top center;padding: 120px 0 260px;margin-top: 177px;}
#con4 .bx{width: 1100px; margin: 0 auto; text-align: center; color: #fff; position: relative; left: -10px}
#con4 .bx .logo{margin-bottom: -5px;}
#con4 .bx .ttl{margin-bottom: 40px;}
#con4 .bx .txt{font-size: 20px; letter-spacing: 2px; line-height: 2.5; color: #EFEFEF}



}



@media screen and (max-width: 767px) {

    #con1 .ss,#con2 .ss,#con3 .ss{
            color: #1a1a1a;
            font-size: 5.314vw;
            font-weight: 700;
            letter-spacing: 0.425vw;
            line-height: 10.145vw;
    }
    #con2 .bx .inner .p-mb{
                margin-bottom: 5.797vw;
    }
    
    
    #concept h1.main-title{ width: 100vw; background: url(../images/concept/sp-h1.png) no-repeat top center; color: #fff; padding: 20vw 0 10vw; text-align: center; margin-bottom: 3vw; background-size: 100%}
    
    #main-bx {margin: 5vw auto 0; }
    #main-bx .bx{width: 100vw; margin: 0 auto; background: url(../images/concept/main-bg1.png) no-repeat bottom center; padding-bottom: 50vw;}
    #main-bx .bx .inner{width: 95vw; margin: 0 auto; text-align: center; position: relative; }
    #main-bx .bx .inner .logo{width: 10vw; margin: 0 auto 5vw; }
    #main-bx .bx .inner .ttl{font-size: 4.6vw; letter-spacing: 0.2vw; font-weight: 500; margin-bottom: 3vw; line-height: 1.8}
    #main-bx .bx .inner .ttl .span1{font-size: 5.6vw; font-weight: bold; letter-spacing: 0.3vw;}
    #main-bx .bx .inner .ttl .span2{font-size: 5.6vw; letter-spacing: 0.3vw;}
    #main-bx .bx .inner .img{text-align: center; margin-bottom: -100vw; position: relative;}
    .main-bx-bg{width: 100vw; margin: 0 auto -35vw; padding: 45vw 0 35vw; background: url(../images/concept/main-bg-txt.svg) no-repeat top 27vw right,url(../images/concept/main-bg2.png) no-repeat top right -45vw; background-size: 75%,160%}
    
    #con1 {width: 100vw; margin: 0 auto 5vw;}
    #con1 .bx{width: 90vw; margin: 0 auto; position: relative;background: #fff; }
    #con1 .bx .inner{width: 90vw; margin: 0 auto; padding: 5vw}
    #con1 .bx .inner .num{width: 12vw; margin-bottom: 3vw}
    #con1 .bx .inner .ttl{font-size: 4vw;font-weight: bold;letter-spacing: 0.2vw;margin-bottom: 3vw;line-height: 1.6;
    }
    
    #con1 .bx .inner .ttl .span1{font-size: 5.6vw; letter-spacing: 0.2vw; margin-right: -1vw}
    #con1 .bx .inner .ttl .span2{font-size: 4vw; letter-spacing: 0.2vw}
    #con1 .bx .inner .ttl .span3{font-size: 5.6vw; letter-spacing: 0.2vw}
    #con1 .bx .inner .img{margin-bottom: 5vw}
    #con1 .bx .inner .ttl1{font-size: 4.2vw; font-weight: bold; margin-bottom: 3vw; letter-spacing: 0.2vw;}
    #con1 .bx .inner .txt{font-size: 3.4vw; letter-spacing: 0.2vw; line-height: 1.8;}
    
    #con2 {width: 100vw; margin: 0 auto 5vw; background: url(../images/concept/con2-bg.png) no-repeat top right -50vw; padding-top: 10vw;}
    #con2 .bx{width: 90vw; margin: 0 auto; position: relative;background: #fff;}
    #con2 .bx .inner{width: 90vw; margin: 0 auto; padding: 5vw}
    #con2 .bx .inner .num{width: 12vw; margin-bottom: 1vw}
    #con2 .bx .inner .ttl{font-size: 4vw; font-weight: bold; letter-spacing: 0.2vw; margin-bottom: 3vw; line-height: 1.8}
    #con2 .bx .inner .ttl .span1{font-size: 4vw; letter-spacing: 0.2vw;}
    #con2 .bx .inner .ttl .span2{font-size: 5.2vw; letter-spacing: 0.2vw;}
    #con2 .bx .inner .ttl .span3{font-size: 5.2vw; letter-spacing: 0.2vw;}
    #con2 .bx .inner .img{margin-bottom: 5vw}
    #con2 .bx .inner .ttl1{font-size: 4.2vw; font-weight: bold; margin-bottom: 3vw; letter-spacing: 0.2vw;}
    #con2 .bx .inner .txt{font-size: 3.4vw; letter-spacing: 0.2vw; line-height: 1.8;; margin-bottom: 3vw}
    #con2 .bx .inner .btn{width: 85vw;position: relative;left: -3vw;margin-top: 5vw;}
    
    #con3 {width: 100vw; margin: 0 auto 5vw; background: url(../images/concept/con3-bg.png) no-repeat top left -50vw; padding-top: 10vw;}
    #con3 .bx{width: 90vw; margin: 0 auto; position: relative;background: #fff; }
    #con3 .bx .inner{width: 90vw; margin: 0 auto; padding: 5vw}
    #con3 .bx .inner .num{width: 12vw; margin-bottom: 2vw}
    #con3 .bx .inner .ttl{font-size: 4vw; font-weight: bold; letter-spacing: 0.2vw; margin-bottom: 3vw; line-height: 1.7}
    #con3 .bx .inner .ttl .span1{font-size: 5.6vw; letter-spacing: 0.2vw;  line-height: 1.8}
    #con3 .bx .inner .ttl .span2{font-size: 4vw; letter-spacing: 0.2vw; line-height: 1.4}
    #con3 .bx .inner .img{margin-bottom: 5vw}
    #con3 .bx .inner .ttl1{font-size: 4.2vw; font-weight: bold; margin-bottom: 3vw; letter-spacing: 0.2vw;}
    #con3 .bx .inner .txt{font-size: 3.4vw; letter-spacing: 0.2vw; line-height: 1.8;; margin-bottom: 3vw}
    #con3 .bx .inner .btn{width: 85vw;position: relative;left: -3vw;margin-top: 5vw;}
    
    #con4 {width: 100vw; margin: 0 auto; background: url(../images/concept/con4-bg.png) no-repeat top center; padding: 15vw 0 30vw; background-size: 300%}
    #con4 .bx{width: 90vw; margin: 0 auto; text-align: center; color: #fff; position: relative;}
    #con4 .bx .logo{width: 13vw; margin: 0 auto 3vw;}
    #con4 .bx .ttl{width: 85vw; margin: 0 auto 5vw;}
    #con4 .bx .txt{font-size: 3.4vw; letter-spacing: 0.2vw; line-height: 2.2; color: #EFEFEF}
    
    }