@charset "UTF-8";
@media screen and (min-width: 768px), print {

main{width: 100% !important;}

#maincon{ margin: -53px 0 0 0;}
#maincon .inner{background-image:url(../images/flow/main-photo.jpg);background-position:center top 0px;background-repeat:no-repeat;background-color:#E1E1E1;padding: 234px 0 47px 0;}
#maincon .inner .maincon-txt{width: 1000px;margin: 0 auto;padding: 33px 0 30px 0;background-color:#fff;position: relative;}
#maincon .inner .maincon-txt .enttl{text-align: right;position: absolute;top: -68px;right: -10px;}
#maincon .inner .maincon-txt .txt{text-align: center;font-size: 16px;line-height: 2.1;letter-spacing: 2.5px;font-weight: bold;}
#maincon .inner .maincon-txt .photo{position: absolute;top: -10px;left: -22px;}


#con01{}
#con01 .inner{width: 1000px;margin: 0 auto;padding: 62px 0px 0px 0px;background-image:url(../images/flow/flow-line.svg);background-position: left 404px top 0px;background-repeat:repeat-y;}
#con01 .inner .flow-frame{width: 1000px;margin: 0 0 0 35px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;}
#con01 .inner .flow-frame .photo{width: 320px;padding: 30px 0px 0 0;margin: 0 0 0 20px;}
#con01 .inner .flow-txtframe{width: 610px;padding: 0px 0 40px 74px;}
#con01 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 52px 2px;padding: 32px 0 0 0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-wrap: wrap;flex-wrap: wrap;display:-webkit-box;display:-ms-flexbox;display:flex;}
#con01 .inner .flow-txtframe .flow-ttlframe .num{font-size: 22px;line-height: 1;letter-spacing: 1px;color: #4A5BB3;position: relative;margin: 0 20px 0 0;}
#con01 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 44px;height: 1px;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -25px;}
#con01 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 20px;line-height: 1;letter-spacing: 1px;color: #303030;font-weight: bold;}
#con01 .inner .flow-txtframe .photo{}
#con01 .inner .flow-txtinner{padding: 0 0 0 5px;}
#con01 .inner .flow-txtinner .txt{font-size: 16px;line-height: 2.2;letter-spacing: 2px;}


#flowstep01{
    background-image:url(../images/flow/flow-arrow.svg);
    background-position: left 369px bottom 0px;
    background-repeat:no-repeat;}

.step-contactframe{margin: 10px 0 0 0;width: 500px;
    display:-webkit-box;display:-ms-flexbox;display:flex;
    -ms-flex-wrap: wrap;flex-wrap: wrap;
    -webkit-box-orient:horizontal;-webkit-box-direction:normal;}

.step-contactframe .mailframe{width: 180px;text-align: center;border:1px solid #707070;}
.step-contactframe .mailframe a{display: block;padding: 7px 0 5px 0;}
.step-contactframe .telframe{margin: 7px 0 0 20px;}

#flowstep02{
    padding: 23px 0 13px 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 369px bottom 0px,left 369px top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep03{
    padding: 23px 0 14px 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 369px bottom 0px,left 369px top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep04{
    padding: 23px 0 12px 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 369px bottom 0px,left 369px top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep05{
    padding: 23px 0 59px 0;
    background-image:url(../images/flow/flow-tail.svg);
    background-position:left 369px top 0px;
    background-repeat:no-repeat;}

.tyuukan{text-align: center;font-weight: bold;background-color:#303030;color: #fff;padding: 35px 0 33px 0;}
.tyuukan .txt{font-size: 24px;line-height: 1.6;letter-spacing: 4px;}

#con02{}
#con02 .inner{width: 1000px;margin: 0 auto;padding: 29px 0px 0px 0px;background-image:url(../images/flow/flow-line.svg);background-position: left 404px top 0px;background-repeat:repeat-y;}
#con02 .inner .flow-frame{width: 1000px;margin: 0 0 0 35px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;}
#con02 .inner .flow-frame .photo{width: 320px;padding: 30px 0px 0 0;margin: 0 0 0 20px;}
#con02 .inner .flow-txtframe{width: 610px;padding: 0px 0 40px 74px;}
#con02 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 52px 2px;padding: 32px 0 0 0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-wrap: wrap;flex-wrap: wrap;display:-webkit-box;display:-ms-flexbox;display:flex;}
#con02 .inner .flow-txtframe .flow-ttlframe .num{font-size: 22px;line-height: 1;letter-spacing: 1px;color: #4A5BB3;position: relative;margin: 0 20px 0 0;}
#con02 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 44px;height: 1px;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -25px;}
#con02 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 20px;line-height: 1;letter-spacing: 1px;color: #303030;font-weight: bold;}
#con02 .inner .flow-txtframe .photo{}
#con02 .inner .flow-txtinner{padding: 0 0 0 5px;}
#con02 .inner .flow-txtinner .txt{font-size: 16px;line-height: 2.2;letter-spacing: 2px;}

#flowstep06{
    padding: 0px 0 13px 0;
    background-image:url(../images/flow/flow-arrow.svg);
    background-position: left 369px bottom 0px;
    background-repeat:no-repeat;}

#flowstep07{
    padding: 23px 0 54px 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 369px bottom 0px,left 369px top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep08{
    padding: 23px 0 60px 0;
    background-image:url(../images/flow/flow-tail.svg);
    background-position:left 369px top 0px;
    background-repeat:no-repeat;}

#con03{margin: 0 0 120px 0;background-color:#E1E1E1;}
#con03 .inner{width: 1000px;margin: 0 auto 0px;padding: 3px 0px 7px 0px;}
#con03 .inner .flow-frame{width: 1000px;margin: 0 0 0 0px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;}
#con03 .inner .flow-frame .photo{width: 404px;padding: 30px 0px 0 0;margin: 0 0 0 0px;}
#con03 .inner .flow-txtframe{width: 520px;padding: 0px 0 40px 40px;}
#con03 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 50px 10px;padding: 51px 0 0 0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-wrap: wrap;flex-wrap: wrap;display:-webkit-box;display:-ms-flexbox;display:flex;}
#con03 .inner .flow-txtframe .flow-ttlframe .num{font-size: 22px;line-height: 1;letter-spacing: 1px;color: #4A5BB3;position: relative;margin: 0 20px 0 0;}
#con03 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 44px;height: 1px;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -25px;}
#con03 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 20px;line-height: 1.4;letter-spacing: 3px;color: #303030;font-weight: bold;}
#con03 .inner .flow-txtframe .photo{}
#con03 .inner .flow-txtinner{padding: 0 0 0 11px;}
#con03 .inner .flow-txtinner .txt{font-size: 16px;line-height: 2.2;letter-spacing: 2px;}

.end-bunner{width: 1000px;margin: 0 auto 110px;}
.end-bunner .end-bunner-list{
    justify-content: center;
    -ms-flex-wrap: wrap;flex-wrap: wrap;
    display:-webkit-box;display:-ms-flexbox;display:flex;
    -webkit-box-orient:horizontal;-webkit-box-direction:normal;}
.end-bunner .end-bunner-list li{width: 340px;margin: 0 20px 0 20px;}
.end-bunner .end-bunner-list li a{}

}






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

#maincon{ margin: -5vw 0 0 0;}
#maincon .inner{background-image:url(../images/flow/main-photo-sp.jpg);background-position:center top 0px;background-repeat:no-repeat;background-color:#E1E1E1;background-size:contain;padding: 40vw 0 8vw 0;}
#maincon .inner .maincon-txt{width: 90%;margin: 0 auto;padding: 5vw 6vw 5vw 6vw;background-color:#fff;position: relative;}
#maincon .inner .maincon-txt .enttl{text-align: right;position: absolute;top: -8vw;right: -1vw;width: 34vw;}
#maincon .inner .maincon-txt .txt{text-align: left;font-size:3.382vw;line-height: 2.1;letter-spacing: 0.25vw;font-weight: bold;}
#maincon .inner .maincon-txt .photo{position: absolute;bottom: -8vw;right: 3vw;width: 36vw;}

#con01{margin: 0 0 0 0vw;}
#con01 .inner{width: 100%;margin: 0 auto;padding: 5vw 9vw 5vw 0vw;background-image:url(../images/flow/flow-line.svg);background-position: left 3vw top 0px;background-repeat:repeat-y;}
#con01 .inner .flow-frame{width: 100%;margin: 0 0 0 3vw;padding: 0 0 0 8vw;}
#con01 .inner .flow-frame .photo{width: 100%;padding: 0vw 0px 0 0;margin: 0 0 3vw 0;}
#con01 .inner .flow-txtframe{width: 100%;padding: 3vw 0 6vw 0;}
#con01 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 4vw 0;padding: 3vw 0 0 0;}
#con01 .inner .flow-txtframe .flow-ttlframe .num{font-size:5.314vw;line-height: 1;letter-spacing: 0.25vw;color: #4A5BB3;position: relative;margin: 0 2vw 7vw 0;}
#con01 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 10vw;height: 0.4vw;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -3vw;}
#con01 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 5vw;line-height: 1.4;letter-spacing: 0.5vw;color: #303030;font-weight: bold;}
#con01 .inner .flow-txtframe .photo{}
#con01 .inner .flow-txtinner{padding: 0 0 0 0vw;}
#con01 .inner .flow-txtinner .txt{font-size:3.623vw;line-height: 1.8;letter-spacing: 0.25vw;}

#flowstep01{
    background-image:url(../images/flow/flow-arrow.svg);
    background-position: left 0vw bottom 0px;
    background-repeat:no-repeat;}

.step-contactframe{margin: 10px 0 0 0;width: 100%;
-webkit-box-orient:horizontal;-webkit-box-direction:normal;
-ms-flex-wrap: wrap;flex-wrap: wrap;
display:-webkit-box;display:-ms-flexbox;display:flex;}
.step-contactframe .mailframe{width: 42%;text-align: center;border:0.25vw solid #707070;}
.step-contactframe .mailframe a{display: block;padding: 0.5vw 0 0.3vw 0;}
.step-contactframe .telframe{margin: 0.5vw 0 0 3vw;width: 53%;}
.step-contactframe .telframe img{width: 100%;}

#flowstep02{
    padding: 0 0 0 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 0vw bottom 0px,left 0vw top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep03{
    padding: 0 0 0 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 0vw bottom 0px,left 0vw top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep04{
    padding: 0 0 0 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 0vw bottom 0px,left 0vw top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep05{
    padding: 23px 0 59px 0;
    background-image:url(../images/flow/flow-tail.svg);
    background-position:left 0vw top 0px;
    background-repeat:no-repeat;}

.tyuukan{text-align: center;font-weight: bold;background-color:#303030;color: #fff;padding: 5vw 0 5vw 0;}
.tyuukan .txt{font-size:5.314vw;line-height: 1.6;letter-spacing: 1vw;}


#con02{margin: 0 0 0 0vw;}
#con02 .inner{width: 100%;margin: 0 auto;padding: 5vw 9vw 5vw 0vw;background-image:url(../images/flow/flow-line.svg);background-position: left 3vw top 0px;background-repeat:repeat-y;}
#con02 .inner .flow-frame{width: 100%;margin: 0 0 0 3vw;padding: 0 0 0 8vw;}
#con02 .inner .flow-frame .photo{width: 100%;padding: 0vw 0px 0 0;margin: 0 0 3vw 0;}
#con02 .inner .flow-txtframe{width: 100%;padding: 3vw 0 6vw 0;}
#con02 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 4vw 0;padding: 3vw 0 0 0;}
#con02 .inner .flow-txtframe .flow-ttlframe .num{font-size:5.314vw;line-height: 1;letter-spacing: 0.25vw;color: #4A5BB3;position: relative;margin: 0 2vw 7vw 0;}
#con02 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 10vw;height: 0.4vw;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -3vw;}
#con02 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 5vw;line-height: 1.4;letter-spacing: 0.5vw;color: #303030;font-weight: bold;}
#con02 .inner .flow-txtframe .photo{}
#con02 .inner .flow-txtinner{padding: 0 0 0 0vw;}
#con02 .inner .flow-txtinner .txt{font-size:3.623vw;line-height: 1.8;letter-spacing: 0.25vw;}

#flowstep06{
    background-image:url(../images/flow/flow-arrow.svg);
    background-position: left 0vw bottom 0px;
    background-repeat:no-repeat;}

#flowstep07{
    padding: 0 0 0 0;
    background-image:url(../images/flow/flow-arrow.svg),url(../images/flow/flow-tail.svg);
    background-position: left 0vw bottom 0px,left 0vw top 0px;
    background-repeat:no-repeat,no-repeat;}

#flowstep08{
    padding: 23px 0 59px 0;
    background-image:url(../images/flow/flow-tail.svg);
    background-position:left 0vw top 0px;
    background-repeat:no-repeat;}


#con03{margin: 0 0 12vw 0vw;background-color:#E1E1E1;}
#con03 .inner{width: 100%;margin: 0 auto;padding: 2vw 0vw 5vw 0vw;}
#con03 .inner .flow-frame{width: 86%;margin: 0 auto 0 auto;padding: 0 0 0 0vw;}
#con03 .inner .flow-frame .photo{width: 100%;padding: 0vw 0px 0 0;margin: 0 0 4vw 0;}
#con03 .inner .flow-txtframe{width: 100%;padding: 3vw 0 4vw 0;}
#con03 .inner .flow-txtframe .flow-ttlframe{margin: 0 0 4vw 0;padding: 3vw 0 0 0;}
#con03 .inner .flow-txtframe .flow-ttlframe .num{font-size:5.314vw;line-height: 1;letter-spacing: 0.25vw;color: #4A5BB3;position: relative;margin: 0 2vw 7vw 0;}
#con03 .inner .flow-txtframe .flow-ttlframe .num::after{content: "";width: 10vw;height: 0.4vw;margin: 0 auto;background: #000;position: absolute;left: 0;bottom: -3vw;}
#con03 .inner .flow-txtframe .flow-ttlframe .ttl{font-size: 5vw;line-height: 1.4;letter-spacing: 0.5vw;color: #303030;font-weight: bold;}
#con03 .inner .flow-txtframe .photo{}
#con03 .inner .flow-txtinner{padding: 0 0 0 0vw;}
#con03 .inner .flow-txtinner .txt{font-size:3.623vw;line-height: 1.8;letter-spacing: 0.25vw;}


.end-bunner{width: 100%;margin: 0 auto 15vw;}
.end-bunner .end-bunner-list{}
.end-bunner .end-bunner-list li{width: 74%;margin: 0 auto 4vw auto;}
.end-bunner .end-bunner-list li a{}

}