@charset "UTF-8";
@media screen and (min-width: 768px),print {
main {width: 100%!important; max-width: 1920px!important; margin: 0 auto; letter-spacing: 1px; line-height: 1.8;}
.seo_bread_list { margin-bottom: 175px;}

#con1 {}
#con1 .bx{width: 100%; max-width: 1920px; margin: 0 auto 270px; }
#con1 .bx .ttl1{font-size: 34px; font-weight: 500; letter-spacing: 5px; line-height: 1.8; text-align: center; margin-bottom: 16px;}
#con1 .bx .txt1{font-size: 16px; letter-spacing: 1.7px; line-height: 1.6; text-align: center; margin-bottom: 110px;}

#con1 .bx .con1-bigimg {width: 100%; margin: 0 auto -115px;}
#con1 .bx .loop {width: 100%;height: 554px; /*画像の高さ等*/background: url(../images/concept/con1-bigimg.png) repeat-x;background-position: center;animation: bgloop 60s linear infinite; /*秒数等はお好きな数値に、infiniteは残す*/}
@keyframes bgloop {from { background-position: 0 0; }to { background-position: -2080px 0; /*-1000px部分は画像の横幅と同じ数値*/ }}


#con1 .bx .inner{width: 916px; margin: 0 auto; background: #fff; padding: 100px 50px 32px; position: relative; left: -10px; box-shadow: 20px 15px 20px 5px rgba(10,10,10,0.1), -12px -18px 0px -50px rgba(10,10,10,0.02), 10px 10px 20px -10px rgba(213,213,202,0.8);}
#con1 .bx .inner::before{content: ""; width: 916px; height: 561px; margin: 0 auto; background: url(../images/concept/con1-bx-icon.png) no-repeat top center; position: absolute; right: -19px; top: 21px;}
#con1 .bx .inner .ttl2{text-align: center; margin-bottom: 35px; padding-left: 25px;}
#con1 .bx .inner .ttl3{font-size: 25px; font-weight: 500; letter-spacing: 3.8px; line-height: 1.8; text-align: center; margin-bottom: 25px; padding-left: 25px;}
#con1 .bx .inner .txt2{font-size: 16px; letter-spacing: 1.5px; line-height: 1.85; text-align: center; margin-bottom: 37px; padding-left: 20px;}


#con2 {}
#con2 .bx{width: 100%; max-width: 1920px; margin: 0 auto 250px; }

#con2 .bx .bx1{width: 1280px; margin: 0 auto 200px; position: relative;}
#con2 .bx .bx1 .img1{position: absolute; left: 0; top: -96px;}
#con2 .bx .bx1 .inner1{width: 832px; margin-left: auto; margin-right: 40px; background: #fff; padding: 68px 0 70px 170px; position: relative;}
#con2 .bx .bx1 .inner1 .ttl1{font-size: 30px; font-weight: bold; letter-spacing: 4px; line-height: 1.8; margin-bottom: 63px; position: relative;}
#con2 .bx .bx1 .inner1 .ttl1::before{content: ""; width: 82px; height: 38px; margin: 0 auto; background: url(../images/concept/con2-ttl1.svg) no-repeat top center; position: absolute; left: -85px; top: 10px;}
#con2 .bx .bx1 .inner1 .ttl2{font-size: 30px; font-weight: bold; letter-spacing: 4px; line-height: 1.8; position: relative;}
#con2 .bx .bx1 .inner1 .ttl2::before{content: ""; width: 82px; height: 38px; margin: 0 auto; background: url(../images/concept/con2-ttl2.svg) no-repeat top center; position: absolute; left: -90px; top: 10px;}

#con2 .bx .bx2-bg{width: 100%; max-width: 1920px; margin: 0 auto; padding: 108px 0 5px; background: linear-gradient(90deg,#F7F7F2 0%, #F7F7F2 81.5%, #fff 81.5%, #fff 100%)}
#con2 .bx .bx2-all-bx{width: 100%; max-width: 1470px; margin: 0 auto; position: relative;}
#con2 .bx .bx2-all-bx .img2{position: absolute; right: 5px; top: -20px;}

#con2 .bx .bx2{width: 1280px; margin: 0 auto 75px; position: relative;}
#con2 .bx .bx2 .inner1{width: 590px; margin-right: auto; margin-left: 252px; margin-bottom: 45px; position: relative;}
#con2 .bx .bx2 .inner1 .ttl1{font-size: 42px; font-weight: 500; letter-spacing: 4px; line-height: 1.8; position: absolute; left: -155px; top: -11px;}
#con2 .bx .bx2 .inner1 .ttl1::before{content: ""; width: 77px; height: 1px; background: #262626; position: absolute; left: 60px; top: 35px;}
#con2 .bx .bx2 .inner1 .ttl2{font-size: 25px; font-weight: bold; letter-spacing: 3.8px; line-height: 1.8; margin-bottom: 14px; }
#con2 .bx .bx2 .inner1 .txt1{font-size: 16px; letter-spacing: 1.6px; line-height: 2; }

#con2 .bx .bx2 .inner2{width: 590px; margin-right: auto; margin-left: 252px; margin-bottom: 45px; position: relative;}
#con2 .bx .bx2 .inner2 .ttl1{font-size: 42px; font-weight: 500; letter-spacing: 6px; line-height: 1.8; position: absolute; left: -155px; top: -11px;}
#con2 .bx .bx2 .inner2 .ttl1::before{content: ""; width: 34px; height: 1px; background: #262626; position: absolute; left: 102px; top: 34px;}
#con2 .bx .bx2 .inner2 .ttl2{font-size: 25px; font-weight: bold; letter-spacing: 3.8px; line-height: 1.8; margin-bottom: 14px; }
#con2 .bx .bx2 .inner2 .txt1{font-size: 16px; letter-spacing: 1.6px; line-height: 2; }

#con2 .bx .bx2 .inner3{width: 580px; margin-right: auto; margin-left: 252px; position: relative;}
#con2 .bx .bx2 .inner3 .ttl1{font-size: 42px; font-weight: 500; letter-spacing: 6px; line-height: 1.8; position: absolute; left: -155px; top: -11px;}
#con2 .bx .bx2 .inner3 .ttl1::before{content: ""; width: 34px; height: 1px; background: #262626; position: absolute; left: 102px; top: 34px;}
#con2 .bx .bx2 .inner3 .ttl2{font-size: 25px; font-weight: bold; letter-spacing: 3.8px; line-height: 1.8; margin-bottom: 12px; }
#con2 .bx .bx2 .inner3 .txt1{font-size: 16px; letter-spacing: 1.6px; line-height: 2; }



#con3 {}
#con3 .bx{width: 100%; max-width: 1920px; margin: 0 auto 247px; }
#con3 .bx .bx1{width: 1280px; margin: 0 auto 200px; position: relative;}
#con3 .bx .bx1 .img1{position: absolute; left: 0; top: -130px;}
#con3 .bx .bx1 .inner1{width: 530px; margin-left: auto; margin-right: 107px;}
#con3 .bx .bx1 .inner1 .ttl1{font-size: 25px; font-weight: 500; letter-spacing: 3.8px; line-height: 2; margin-bottom: 35px;}
#con3 .bx .bx1 .inner1 .ttl1 span{font-size: 42px; font-weight: 500; color: #FF7500; letter-spacing: 14.8px; line-height: 2; position: relative; left: 4px; top: 6px;}
#con3 .bx .bx1 .inner1 .txt1{font-size: 16px; letter-spacing: 1.6px; line-height: 2; }


#con4 {}
#con4 .bx{width: 100%; max-width: 1920px; margin: 0 auto 182px; }
#con4 .bx .img1{width: 100%; margin: 0 auto -80px; }
#con4 .bx .img1 img{width: 100%; margin: 0 auto; }
#con4 .bx .bx1{width: 1280px; margin: 0 auto; position: relative;}
#con4 .bx .bx1 .inner{width: 916px; margin: 0 auto 115px; background: #fff; padding: 50px 50px 50px 74px; position: relative; left: -10px; box-shadow: 20px 15px 20px 5px rgba(10,10,10,0.1), -12px -18px 0px -50px rgba(10,10,10,0.02), 10px 10px 20px -10px rgba(213,213,202,0.8);}
#con4 .bx .bx1 .inner .ttl1{font-size: 25px; font-weight: 500; letter-spacing: 3.8px; line-height: 1.7; text-align: center;}
#con4 .bx .bx1 .inner .ttl1::after{content: ""; width: 1px; height: 60px; margin: 0 auto; background: #262626; position: absolute; left: 17px; right: 0; bottom: -33px;}
#con4 .bx .bx1 .inner1{width: 550px; margin-left: auto; margin-right: 90px; position: relative;}
#con4 .bx .bx1 .inner1 .img2{position: absolute; left: -640px; top: 9px;}
#con4 .bx .bx1 .inner1 .txt1{font-size: 16px; letter-spacing: 1.55px; line-height: 2; margin-bottom: 32px;}


}

@media screen and (max-width: 767px) {
main {letter-spacing: 0.2vw; line-height: 1.8;}
.seo_bread_list { margin-bottom: 8.5vw;}

#con1 {}
#con1 .bx{width: 100%; margin: 0 auto 15vw; }
#con1 .bx .ttl1{font-size: 5.6vw; font-weight: 500; letter-spacing: 0.8vw; line-height: 1.8; text-align: center; margin-bottom: 3vw;}
#con1 .bx .txt1{font-size: 3.6vw; letter-spacing: 0.6vw; line-height: 2.2; text-align: center; margin-bottom: 15vw;}

#con1 .bx .con1-bigimg {width: 100%; margin: 0 auto -10vw;}
#con1 .bx .loop {width: 100%;height: 60vw; /*画像の高さ等*/background: url(../images/concept/sp-con1-bigimg.png) repeat-x;background-position: center;animation: bgloop 30s linear infinite; /*秒数等はお好きな数値に、infiniteは残す*/ background-size: 208%;}
@keyframes bgloop {from { background-position: 0 0; }to { background-position: -200vw 0; /*-1000px部分は画像の横幅と同じ数値*/ }}


#con1 .bx .inner{width: 92%; margin: 0 auto; background: #fff; padding: 15vw 7vw 1vw 6vw; position: relative; box-shadow: 20px 15px 20px 5px rgba(10,10,10,0.1), -12px -18px 0px -50px rgba(10,10,10,0.02), 10px 10px 20px -10px rgba(213,213,202,0.8);}
#con1 .bx .inner::before{content: ""; width: 100%; height: 150vw; margin: 0 auto; background: url(../images/concept/sp-con1-bx-icon.png) no-repeat top center; position: absolute; right: -2vw; top: 2vw; background-size: 100%;}
#con1 .bx .inner .ttl2{text-align: center; margin-bottom: 3vw; padding-left: 3vw;}
#con1 .bx .inner .ttl2 img{width: 56%;}
#con1 .bx .inner .ttl3{font-size: 5vw; font-weight: 500; letter-spacing: 1vw; line-height: 1.45; text-align: center; margin-bottom: 5vw; padding-left: 3vw;}
#con1 .bx .inner .txt2{font-size: 4vw; letter-spacing: 0.2vw; line-height: 1.9; margin-bottom: 8vw; padding-left: 3vw;}
#con1 .bx .inner .txt2:nth-of-type(2){margin-bottom: 0;}


#con2 {}
#con2 .bx{width: 100%; margin: 0 auto 12vw }

#con2 .bx .bx1{width: 100%; margin: 0 auto 12vw; position: relative;}
#con2 .bx .bx1 .img1{width: 84%; margin: 0 auto 2vw;}
#con2 .bx .bx1 .inner1{width: 100%; margin: 0 auto; background: #fff; padding: 8vw 0 3vw 21vw; position: relative;}
#con2 .bx .bx1 .inner1 .ttl1{font-size: 4.5vw; font-weight: bold; letter-spacing: 0.5vw; line-height: 1.8; margin-bottom: 7vw; position: relative;}
#con2 .bx .bx1 .inner1 .ttl1::before{content: ""; width: 20vw; height: 10vw; margin: 0 auto; background: url(../images/concept/con2-ttl1.svg) no-repeat top center; position: absolute; left: -16vw; top: 1vw; background-size: 13vw;}
#con2 .bx .bx1 .inner1 .ttl2{font-size: 4.5vw; font-weight: bold; letter-spacing: 0.5vw; line-height: 1.7; position: relative;}
#con2 .bx .bx1 .inner1 .ttl2::before{content: ""; width: 20vw; height: 10vw; margin: 0 auto; background: url(../images/concept/con2-ttl2.svg) no-repeat top center; position: absolute; left: -16vw; top: 1vw; background-size: 12vw;}
#con2 .bx .bx1 .inner1 .ttl2 span{position: relative; left: 9vw;}

#con2 .bx .bx2-bg{width: 100%; margin: 0 auto; padding: 10vw 0 10vw; background: #F7F7F2}
#con2 .bx .bx2-all-bx{width: 84%; margin: 0 auto; position: relative;}
#con2 .bx .bx2-all-bx .img2{margin: 0 auto 6vw;}

#con2 .bx .bx2{width: 100%; margin: 0 auto 5vw; position: relative;}
#con2 .bx .bx2 .inner1{width: 100%; margin: 0 auto; margin-bottom: 15vw; position: relative;}
#con2 .bx .bx2 .inner1 .ttl1{font-size: 10vw; font-weight: 500; letter-spacing: 1vw; line-height: 1.45; text-align: center; position: relative; margin-bottom: 5vw;}
#con2 .bx .bx2 .inner1 .ttl1::before{content: ""; width: 12%; height: 1px; margin: 0 auto; background: #262626; position: absolute; left: 0; right: 0; bottom: -3vw;}
#con2 .bx .bx2 .inner1 .ttl2{font-size: 5.1vw; font-weight: bold; letter-spacing: 1vw; line-height: 2; margin-bottom: 1vw; text-align: center;}
#con2 .bx .bx2 .inner1 .txt1{font-size: 3.6vw; letter-spacing: 0.7vw; line-height: 2.1;}

#con2 .bx .bx2 .inner2{width: 100%; margin: 0 auto; margin-bottom: 15vw; position: relative;}
#con2 .bx .bx2 .inner2 .ttl1{font-size: 10.3vw; font-weight: 500; letter-spacing: 1vw; line-height: 1.45; text-align: center; position: relative; margin-bottom: 5vw;}
#con2 .bx .bx2 .inner2 .ttl1::before{content: ""; width: 12%; height: 1px; margin: 0 auto; background: #262626; position: absolute; left: 0; right: 0; bottom: -3vw;}
#con2 .bx .bx2 .inner2 .ttl2{font-size: 5.1vw; font-weight: bold; letter-spacing: 1vw; line-height: 2; margin-bottom: 1vw; text-align: center;}
#con2 .bx .bx2 .inner2 .txt1{font-size: 3.6vw; letter-spacing: 0.7vw; line-height: 2.1;}

#con2 .bx .bx2 .inner3{width: 100%; margin: 0 auto; position: relative;}
#con2 .bx .bx2 .inner3 .ttl1{font-size: 10.3vw; font-weight: 500; letter-spacing: 1vw; line-height: 1.45; text-align: center; position: relative; margin-bottom: 5vw;}
#con2 .bx .bx2 .inner3 .ttl1::before{content: ""; width: 12%; height: 1px; margin: 0 auto; background: #262626; position: absolute; left: 0; right: 0; bottom: -3vw;}
#con2 .bx .bx2 .inner3 .ttl2{font-size: 5.1vw; font-weight: bold; letter-spacing: 1vw; line-height: 2; margin-bottom: 1vw; text-align: center;}
#con2 .bx .bx2 .inner3 .txt1{font-size: 3.6vw; letter-spacing: 0.7vw; line-height: 2.1;}



#con3 {}
#con3 .bx{width: 100%; margin: 0 auto 15vw; }
#con3 .bx .bx1{width: 84%; margin: 0 auto; position: relative;}
#con3 .bx .bx1 .img1{margin: 0 auto 5vw;}
#con3 .bx .bx1 .inner1{width: 100%; margin: 0 auto; }
#con3 .bx .bx1 .inner1 .ttl1{font-size: 6.2vw; font-weight: 500; letter-spacing: 0.7vw; line-height: 1.9; margin-bottom: 5vw;}
#con3 .bx .bx1 .inner1 .ttl1 span{font-size: 10vw; font-weight: 500; color: #FF7500; letter-spacing: 5vw; line-height: 1.7; position: relative; left: 2vw; top: 1vw;}
#con3 .bx .bx1 .inner1 .txt1{font-size: 3.6vw; letter-spacing: 0.68vw; line-height: 2.1;}


#con4 {}
#con4 .bx{width: 100%; margin: 0 auto 15vw; }
#con4 .bx .img1{width: 100%; margin: 0 auto -6vw; }
#con4 .bx .img1 img{width: 100%; margin: 0 auto; }
#con4 .bx .bx1{width: 100%; margin: 0 auto; position: relative;}
#con4 .bx .bx1 .inner{width: 92%; margin: 0 auto 15vw; background: #fff; padding: 8vw 0 9vw 0; position: relative; box-shadow: 20px 15px 20px 5px rgba(10,10,10,0.1), -12px -18px 0px -50px rgba(10,10,10,0.02), 10px 10px 20px -10px rgba(213,213,202,0.8);}
#con4 .bx .bx1 .inner .ttl1{font-size: 5vw; font-weight: 500; letter-spacing: 0.2vw; line-height: 1.5; text-align: center;}
#con4 .bx .bx1 .inner .ttl1::after{content: ""; width: 1px; height: 30%; margin: 0 auto; background: #262626; position: absolute; left: 0; right: 0; bottom: -7vw;}
#con4 .bx .bx1 .inner1{width: 100%; margin: 0 auto; position: relative;}
#con4 .bx .bx1 .inner1 .img2{width: 84%; margin: 0 auto 7.5vw;}
#con4 .bx .bx1 .inner1 .txt1{font-size: 4vw; letter-spacing: 0.25vw; line-height: 1.95; margin-bottom: 7vw; padding: 0 8vw;}

}



@media screen and (min-width: 787px) and (max-width: 1500px) {
#con2 .bx .bx2 .inner1{width: 520px; margin-right: auto; margin-left: 230px; margin-bottom: 45px; position: relative;}
#con2 .bx .bx2 .inner2{width: 520px; margin-right: auto; margin-left: 230px; margin-bottom: 45px; position: relative;}
#con2 .bx .bx2 .inner3{width: 520px; margin-right: auto; margin-left: 230px; position: relative;}

#con2 .bx .bx2 .inner1 .ttl2{font-size: 26px; font-weight: bold; letter-spacing: 1px; line-height: 1.8; margin-bottom: 14px; }
#con2 .bx .bx2 .inner2 .ttl2{font-size: 26px; font-weight: bold; letter-spacing: 1px; line-height: 1.8; margin-bottom: 14px; }
#con2 .bx .bx2 .inner3 .ttl2{font-size: 26px; font-weight: bold; letter-spacing: 1px; line-height: 1.8; margin-bottom: 14px; }

}