@charset "utf-8";

/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.3.6,
* Autoprefixer: v10.3.1
* Browsers: last 4 version
*/

.u-section {
    max-width: calc(1200/1600*100%);
    width: calc(650/750*100%);
    margin: 0 auto;
    text-align: left
}

@media screen and (min-width:1720px) {
    .u-section {
        max-width: 1274px;
    }
}

@media screen and (max-width:1620px) {
    .u-section {
        max-width: 960px
    }
}

.u-section.is-min {
    max-width: calc(1060/1600*100%)
}

@media screen and (min-width:1720px) {
    .u-section.is-min {
        max-width: 1125px
    }
}

@media screen and (max-width:1620px) {
    .u-section.is-min {
        max-width: 1060px
    }
}

.u-section.is-mid {
    max-width: calc(1100/1600*100%)
}

@media screen and (min-width:1720px) {
    .u-section.is-mid {
        max-width: 1167px
    }
}

@media screen and (max-width:1620px) {
    .u-section.is-mid {
        max-width: 1100px
    }
}

.u-picture {
    display: block;
    min-height: 1rem
}

.u-picture img {
    width: 100%
}

img[src$=".svg"] {
    max-width: 100%
}

.u-wideimg {
    width: 100%
}

img {
    max-width: 100%;
    height: auto;
}

.u-bg {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover
}

.u-blockbtm {
    padding-bottom: 156px;
}

@media screen and (max-width:768px) {
    .u-blockbtm {
        padding-bottom: calc(156px*.8)
    }
}

@media screen and (max-width:415px) {
    .u-blockbtm {
        padding-bottom: calc(156px*.6)
    }
}

.c-btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.c-btn:before {
    content: attr(data-txt);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: #426cae;
    color: #fff;
    -webkit-transform: scale(1, 0);
    -ms-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: bottom left;
    -ms-transform-origin: bottom left;
    transform-origin: bottom left
}

.c-btn__txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    color: #fff;
    background-color: #132239
}

@media screen and (min-width:768px) {
    .is-pc .c-btn:before {
        -webkit-transition: opacity .3s, -webkit-transform .3s;
        transition: opacity .3s, -webkit-transform .3s;
        -o-transition: opacity .3s, transform .3s;
        transition: opacity .3s, transform .3s;
        transition: opacity .3s, transform .3s, -webkit-transform .3s
    }
    .is-pc .c-btn:hover:before {
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        transform: scale(1, 1)
    }
    .is-pc .c-btn:hover .c-btn__txt {
        -webkit-transform: scale(.9);
        -ms-transform: scale(.9);
        transform: scale(.9)
    }
    .is-pc .c-btn__txt {
        -webkit-transition: opacity .5s, -webkit-transform .5s;
        transition: opacity .5s, -webkit-transform .5s;
        -o-transition: opacity .5s, transform .5s;
        transition: opacity .5s, transform .5s;
        transition: opacity .5s, transform .5s, -webkit-transform .5s
    }
}

.p-factory-body {
    position: relative;
    /*
    margin-top: 135px;
    */
}


/*
@media screen and (max-width:768px) {
    .p-factory-body {
        margin-top: calc(90*.8/750*100vw)
    }
}

@media screen and (max-width:640px) {
    .p-factory-body {
        margin-top: calc(90*.9/750*100vw)
    }
}

@media screen and (max-width:415px) {
    .p-factory-body {
        margin-top: calc(90/750*100vw)
    }
}
*/

.p-factory-body:before {
    content: "";
    display: block;
    width: 11px;
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(50% - 6px);
    background: url(../img/common/bg-line.png) top left repeat-y;
    background-size: 11px 23px;
    z-index: 0
}

@media screen and (max-width:768px) {
    .p-factory-body:before {
        top: calc(200/750*100vw)
    }
}

.p-factory__intro {
    overflow: hidden;
    position: relative;
    z-index: 1
}

.p-factory__introBody {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: 636px;
    z-index: 1
}

@media screen and (max-width:1400px) {
    .p-factory__introBody {
        height: calc(636/1400*100vw)
    }
}

@media screen and (max-width:768px) {
    .p-factory__introBody {
        display: block;
        height: auto
    }
}

.p-factory__introBodyTitle {
    width: 142px;
    margin: 0 0 calc(42/1200*100%) calc(770/1200*100%)
}

@media screen and (max-width:1620px) {
    .p-factory__introBodyTitle {
        width: calc(142/1530*100%);
    }
}


/*
@media screen and (max-width:1620px) {
    .p-factory__introBodyTitle {
        width: calc(142/980*100%)
    }
}
*/

@media screen and (max-width:768px) {
    .p-factory__introBodyTitle {
        margin: 0;
        width: calc(255/450*100%);
        padding-top: 2rem;
    }
}

.p-factory__introBodyImg {
    position: absolute;
    top: 0;
    left: calc((100vw - 100%)/2*-1);
    width: calc((100vw - 100%)/2 + (728/1200*100%));
    height: 100%;
    z-index: 0
}

@media screen and (max-width:768px) {
    .p-factory__introBodyImg {
        position: static;
        width: 100%;
        height: calc(493/750*100vw);
        margin-top: calc(50/650*100%)
    }
}

.p-factory__introBodyImg .body {
    height: 100%
}

.p-factory__introBodyEn {
    position: absolute;
    top: 116px;
    right: -55px;
    width: 882px;
    z-index: 1
}

@media screen and (max-width:1620px) {
    .p-factory__introBodyEn {
        right: calc(-55/3500*100%);
        width: calc(882/1800*100%);
    }
}


/*
@media screen and (max-width:1620px) {
    .p-factory__introBodyEn {
        right: calc(-55/1200*100%);
        width: calc(882/1200*100%)
    }
}
*/

@media screen and (max-width:1400px) {
    .p-factory__introBodyEn {
        top: calc(116/1400*100vw)
    }
}

@media screen and (max-width:768px) {
    .p-factory__introBodyEn {
        display: none
    }
}

.p-factory__introBodyTxt {
    -ms-flex-item-align: end;
    align-self: flex-end;
    font-size: 16px;
    width: calc(1100/1200*100%);
    margin: calc(160em/16) auto 0;
    padding-top: 50px;
    color: #dcdddd;
    font-family: 'Zen Old Mincho', serif;
}

@media screen and (max-width:768px) {
    .p-factory__introBodyTxt {
        width: 100%;
        margin-top: calc(30em/16)
    }
}

@media screen and (max-width:415px) {
    .p-factory__introBodyTxt {
        font-size: calc(16px*.9)
    }
}

.p-factory__introBodyTxt p:not(:first-of-type) {
    margin-top: calc(30em/16)
}

.p-factory__online {
    font-size: 16px;
    margin-top: calc(105em/16);
    text-align: left
}

@media screen and (max-width:1080px) {
    .p-factory__online {
        font-size: calc(16px*.9)
    }
}

@media screen and (max-width:768px) {
    .p-factory__online {
        font-size: 16px
    }
}

@media screen and (max-width:415px) {
    .p-factory__online {
        font-size: calc(16px*.9)
    }
}

.p-factory__onlineMain {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative
}

@media screen and (max-width:768px) {
    .p-factory__onlineMain {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        width: 100%
    }
}

.p-factory__onlineMain:before {
    content: "";
    display: block;
    position: absolute;
    width: calc(970/1600*100%);
    height: 100%;
    top: -38%;
    left: 0;
    background: rgb(40, 26, 20);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(40, 26, 20, 1)), color-stop(84%, rgba(9, 6, 6, 0.3939776594231442)), to(rgba(255, 255, 255, 0)));
    background: -o-linear-gradient(bottom, rgba(40, 26, 20, 1) 0%, rgba(9, 6, 6, 0.3939776594231442) 84%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(0deg, rgba(40, 26, 20, 1) 0%, rgba(9, 6, 6, 0.3939776594231442) 84%, rgba(255, 255, 255, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#281a14", endColorstr="#ffffff", GradientType=1);
    margin-top: calc(98/1600*100%)
}

@media screen and (max-width:768px) {
    .p-factory__onlineMain:before {
        margin-top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }
}

.p-factory__onlineMainImg,
.p-factory__onlineMainBody {
    position: relative
}

.p-factory__onlineMainImg {
    -ms-flex-preferred-size: calc(488/1150*100%);
    flex-basis: calc(488/1150*100%);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    z-index: 1;
    top: -10rem;
}


/*
.p-factory__onlineMainImg {
    flex-basis: calc(658/1600*100%);
    flex-shrink: 0;
    z-index: 1
}
*/

@media screen and (max-width:1380px) {
    .p-factory__onlineMainImg {
        -ms-flex-preferred-size: calc(700/1600*100%);
        flex-basis: calc(700/1600*100%);
        top: 0;
    }
}

@media screen and (max-width:1080px) {
    .p-factory__onlineMainImg {
        -ms-flex-preferred-size: calc(840/1600*100%);
        flex-basis: calc(840/1600*100%)
    }
}

@media screen and (max-width:768px) {
    .p-factory__onlineMainImg {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        margin-left: 0
    }
}


/*
.p-factory__onlineMainImg .body {
    padding-top: calc(560/658*100%)
}

@media screen and (max-width:768px) {
    .p-factory__onlineMainImg .body {
        padding-top: calc(585/750*100%)
    }
}
*/

.p-factory__onlineMainBody {
    padding: calc(53/1600*100%) 0 0 calc(109/700*100%);
    -ms-flex-preferred-size: calc(660/1600*100%);
    flex-basis: calc(660/1600*100%);
    z-index: 2
}


/*
.p-factory__onlineMainBody {
    padding: calc(53/1600*100%) 0 0 calc(109/700*100%);
    -ms-flex-preferred-size: calc(760/1600*100%);
    flex-basis: calc(760/1600*100%);
    z-index: 2
}
*/

@media screen and (max-width:768px) {
    .p-factory__onlineMainBody {
        padding: 50px calc(50/750*100%) calc(70em/16)
    }
}

.p-factory__onlineMainBody .title {
    margin-bottom: calc(33em/16)
}

@media screen and (max-width:768px) {
    .p-factory__onlineMainBody .title {
        margin-left: 0;
        margin-top: calc(-60/650*100%)
    }
}

.p-factory__onlineMainBody .title img {
    width: calc(597/651*100%)
}

@media screen and (max-width:768px) {
    .p-factory__onlineMainBody .title img {
        width: calc(585/650*100%)
    }
}

@media screen and (max-width:415px) {
    .p-factory__onlineMainBody .title img {
        width: 90%
    }
}

.p-factory__onlineMainBody .subtitle {
    font-size: calc(24em/16);
    letter-spacing: .02em;
    margin-bottom: calc(10em/24);
    color: #eae5e3;
    font-family: 'Shippori Mincho B1', serif;
}

@media screen and (max-width:415px) {
    .p-factory__onlineMainBody .subtitle {
        font-size: calc(22em/16)
    }
}

.p-factory__onlineMainBody .txt {
    line-height: 1.9;
    max-width: calc(500/511*100%);
    color: #f3f3f2;
    font-family: 'Zen Old Mincho', serif;
}

.p-factory__onlineMainBody .btn {
    margin-top: calc(33em/16)
}

.p-factory__onlineMainBody .btn .c-btn {
    width: calc(312em/15);
    height: calc(67em/15);
    font-size: calc(15em/16)
}

.p-factory__body {
    position: relative;
    font-size: 16px;
    overflow: hidden;
    z-index: 1;
    /*
    padding-top: calc(446/1600*100%);
    */
    padding-top: calc(150/2080*100%);
}

@media screen and (max-width:1180px) {
    .p-factory__body {
        font-size: calc(16px*.9)
    }
}

@media screen and (max-width:768px) {
    .p-factory__body {
        font-size: 16px;
        overflow: inherit;
        padding-top: calc(156px*.8)
    }
}

@media screen and (max-width:415px) {
    .p-factory__body {
        font-size: calc(16px*.9);
        padding-top: calc(156px*.6)
    }
}

.p-factory__bodyBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    position: relative;
    z-index: 1
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock {
        display: block
    }
}

.p-factory__bodyBlock:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
}

.p-factory__bodyBlock:nth-of-type(5) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
}

.p-factory__bodyBlock:not(:first-of-type) {
    margin-top: calc(120em/16)
}

.p-factory__bodyBlockImg {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: calc(658/1200*100%);
    margin-right: calc(30em/16);
    height: calc(460em/16);
    position: relative
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlockImg {
        width: calc(650/1200*100%);
        height: calc(460em*.9/16);
        margin-right: 0
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlockImg {
        width: calc(100% - (44em/16));
        height: calc(490/750*100vw);
        margin-right: 0
    }
    .p-factory__bodyBlock:nth-of-type(1) .p-factory__bodyBlockImg {
        width: calc(100% - (44em/16))
    }
}

.p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockImg {
    margin: 0 0 0 calc(35em/16)
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockImg {
        margin-left: 0
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockImg {
        margin-left: calc(44em/16)
    }
}

.p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockImg {
    margin: 0 0 0 calc(35em/16)
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockImg {
        margin-left: 0
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockImg {
        margin-left: calc(44em/16)
    }
}

.p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
    width: calc(658/1200*100%);
    margin-right: calc(30em/16);
    height: calc(460em/16);
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
        width: calc(650/1200*100%);
        height: calc(460em*.9/16);
        margin-right: 0
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
        width: calc(100% - (44em/16));
        height: calc(490/750*100vw);
        margin-right: 0
    }
}


/*
.p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
    width: calc((100vw - 100%)/2 + (658/1200*100%) + (30em/16));
    margin-right: calc((100vw - 100%)/2*-1);
    height: calc(650em/16)
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
        width: calc((100vw - 100%)/2 + (620/1200*100%));
        height: calc(650em*.9/16)
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg {
        width: calc(100% - (44em/16));
        height: calc(490/750*100vw);
        margin-right: calc(44em/16)
    }
}
*/

.p-factory__bodyBlockImg .img {
    height: 100%
}

.p-factory__bodyBlockImg .txt {
    position: absolute;
    top: calc(-30em/16);
    left: calc(-44em/16);
    width: calc(35em/16)
}

.p-factory__bodyBlock:nth-of-type(1) .p-factory__bodyBlockImg .txt {
    width: calc(37em/16);
    left: auto;
    right: calc(-48em/16)
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockImg .txt {
        left: auto;
        right: calc(-44em/16)
    }
}

.p-factory__bodyBlockSubimg {
    position: absolute;
    bottom: 0;
    margin-bottom: calc(-36/1200*100%);
    left: calc(220/1200*100%);
    width: calc(420/1200*100%);
    border: 3px solid #ebebeb;
    padding-top: calc(273/1200*100%)
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlockSubimg {
        display: none
    }
}

.p-factory__bodyBlockSubimg .body {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.p-factory__bodyBlockTxt {
    width: calc(432/1200*100%);
    margin: 0 0 calc(146/1200*100%) calc(35/1200*100%);
}


/*
.p-factory__bodyBlockTxt {
    width: calc(432/1200*100%);
    margin: 0 0 calc(56/1200*100%) calc(35/1200*100%)
}
*/

@media screen and (max-width:1080px) {
    .p-factory__bodyBlockTxt {
        width: calc(500/1200*100%);
        margin-left: 0
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlockTxt {
        width: auto;
        margin: calc(30em/16) 0 0
    }
}

.p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockTxt {
    width: calc(465/1200*100%);
    margin-left: 0
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockTxt {
        width: calc(500/1200*100%)
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(even) .p-factory__bodyBlockTxt {
        width: auto
    }
}

.p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockTxt {
    width: calc(465/1200*100%);
    margin-left: 0
}

@media screen and (max-width:1080px) {
    .p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockTxt {
        width: calc(500/1200*100%)
    }
}

@media screen and (max-width:768px) {
    .p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockTxt {
        width: auto
    }
}

.p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockTxt {
    margin-bottom: calc(298/1200*100%)
}

@media screen and (max-width:415px) {
    .p-factory__bodyBlockTxt .title {
        font-size: .8em
    }
}

.p-factory__bodyBlock:nth-of-type(1) .p-factory__bodyBlockTxt .title {
    width: calc(227em/16)
}

.p-factory__bodyBlock:nth-of-type(2) .p-factory__bodyBlockTxt .title {
    width: calc(227em/16)
}

.p-factory__bodyBlock:nth-of-type(3) .p-factory__bodyBlockTxt .title {
    width: calc(227em/16)
}

.p-factory__bodyBlock:nth-of-type(4) .p-factory__bodyBlockTxt .title {
    width: calc(227em/16)
}

.p-factory__bodyBlock:nth-of-type(5) .p-factory__bodyBlockTxt .title {
    width: calc(227em/16)
}

.p-factory__bodyBlockTxt .txt {
    margin: calc(42em/16) 0 0 calc(11em/16);
    border-left: 1px solid #eaedf7;
    padding-left: calc(20em/16);
    color: #FFF;
    font-family: 'Zen Old Mincho', serif;
    font-size: 1.5rem;
}

.p-factory__bodyBlockTxt .txt p:not(:first-of-type) {
    margin-top: calc(30em/16)
}

.p-factory__bodyBlockLt {
    position: absolute;
    top: -85px;
    left: calc(50/3000*100%);
    width: 276px;
}


/*
.p-factory__bodyBlockLt {
    position: absolute;
    top: -170px;
    left: calc(-100/1200*100%);
    width: 576px
}
*/

@media screen and (max-width:1560px) {
    .p-factory__bodyBlockLt {
        top: calc(-120px*.9);
        left: calc(-80/1200*100%);
        width: calc(576px*.7);
    }
}


/*
@media screen and (max-width:1560px) {
    .p-factory__bodyBlockLt {
        top: calc(-170px*.9);
        left: calc(-80/1200*100%);
        width: calc(576px*.9)
    }
}
*/

@media screen and (max-width:1500px) {
    .p-factory__bodyBlockLt {
        top: calc(-70px*.8);
        left: calc(15/1200*100%);
        width: calc(276px*.8);
    }
}


/*
@media screen and (max-width:1500px) {
    .p-factory__bodyBlockLt {
        top: calc(-170px*.8);
        left: calc(-40/1200*100%);
        width: calc(576px*.8)
    }
}
*/

@media screen and (max-width:1280px) {
    .p-factory__bodyBlockLt {
        top: calc(-50px*.7);
        left: 15px;
        width: calc(325px*.7);
    }
}


/*
@media screen and (max-width:1280px) {
    .p-factory__bodyBlockLt {
        top: calc(-170px*.7);
        left: 0;
        width: calc(576px*.7)
    }
}
*/

@media screen and (max-width:1024px) {
    .p-factory__bodyBlockLt {
        top: calc(-50px*.6);
        width: calc(315px*.6);
    }
}


/*
@media screen and (max-width:1024px) {
    .p-factory__bodyBlockLt {
        top: calc(-170px*.6);
        width: calc(576px*.6)
    }
}
*/

@media screen and (max-width:768px) {
    .p-factory__bodyBlockLt {
        display: none
    }
    .p-factory__bodyBlockTxt .txt {
        font-size: 1.85rem;
    }
}

.p-factory__contact {
    max-width: calc(953/1600*100%);
    position: relative;
    z-index: 1
}

@media screen and (min-width:1720px) {
    .p-factory__contact {
        max-width: 1012px
    }
}

@media screen and (max-width:1620px) {
    .p-factory__contact {
        max-width: 953px
    }
}

.p-factory__contactBody {
    border: 2px solid #132239;
    font-size: 16px
}

@media screen and (max-width:415px) {
    .p-factory__contactBody {
        font-size: calc(16px*.9)
    }
}

.p-factory__contactBody {
    background-color: #fff;
    padding: calc(10em/16)
}

.p-factory__contactBody-inner {
    border: 1px solid rgba(20, 32, 58, .29);
    padding: calc(55em/16) calc(30em/16);
    text-align: center;
    color: #000;
}

@media screen and (max-width:415px) {
    .p-factory__contactBody-inner {
        padding-left: calc(15em/16);
        padding-right: calc(15em/16)
    }
}

.p-factory__contactBodyTitle {
    font-size: calc(39em/16);
    letter-spacing: .04em;
    text-indent: .04em;
    line-height: 1.4;
    margin-bottom: calc(20em/39)
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyTitle {
        font-size: calc(35em/16)
    }
}

@media screen and (max-width:415px) {
    .p-factory__contactBodyTitle {
        font-size: calc(29em/16);
        margin-bottom: calc(32em/39)
    }
}

.p-factory__contactBodyTitle .br {
    display: none
}

@media screen and (max-width:768px) {
    .p-factory__contactBodyTitle .br {
        display: block
    }
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyTxt {
        text-align: left
    }
}

.p-factory__contactBodyTxt:not(:first-of-type) {
    margin-top: calc(30em/16)
}

.p-factory__contactBodyCta {
    margin: calc(22em/16) auto 0;
    max-width: 768px;
    border: 1px solid #a7bbda;
    background-color: #eef3fb;
    padding: calc(40em/16) calc(20em/16) calc(20em/16)
}

@media screen and (max-width:415px) {
    .p-factory__contactBodyCta {
        padding-left: calc(15em/16);
        padding-right: calc(15em/16)
    }
}

.p-factory__contactBodyCta .outline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: calc(35em/16)
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .outline {
        display: block
    }
}

.p-factory__contactBodyCta .outline__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: left;
    line-height: 1.6
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .outline__block {
        display: block
    }
}

.p-factory__contactBodyCta .outline__block:not(:first-of-type) {
    margin-top: calc(10em/16)
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .outline__block:not(:first-of-type) {
        margin-top: calc(15em/16)
    }
}

.p-factory__contactBodyCta .outline__blockTitle {
    -ms-flex-preferred-size: calc(120em/16);
    flex-basis: calc(120em/16);
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: 700
}

.p-factory__contactBodyCta .outline__blockBody {
    min-width: calc(380em/16)
}

@media screen and (max-width:768px) {
    .p-factory__contactBodyCta .outline__blockBody {
        min-width: auto
    }
}

.p-factory__contactBodyCta .contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media screen and (max-width:1024px) {
    .p-factory__contactBodyCta .contact {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.p-factory__contactBodyCta .contact__tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-right: calc(38em/16)
}

@media screen and (max-width:1024px) {
    .p-factory__contactBodyCta .contact__tel {
        margin: 0 0 calc(25em/16)
    }
}

.p-factory__contactBodyCta .contact__telNum {
    font-size: calc(43em/16);
    line-height: 1;
    color: #132239;
    letter-spacing: .03em;
    text-indent: .03em
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .contact__telNum {
        font-size: calc(40em/16)
    }
}

@media screen and (max-width:415px) {
    .p-factory__contactBodyCta .contact__telNum {
        font-size: calc(30em/16)
    }
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .contact__btn {
        width: 100%
    }
}

.p-factory__contactBodyCta .contact__btnTarget {
    width: calc(325em/17);
    height: calc(70em/17);
    font-size: calc(17em/16)
}

@media screen and (max-width:640px) {
    .p-factory__contactBodyCta .contact__btnTarget {
        width: 100%
    }
}

.p-factory__contactBodyCta .person {
    margin-top: calc(18em/16)
}