@charset "UTF-8";

body,html{
    background: #F5F4F0;
    font-family: source-han-sans-japanese, sans-serif;
}

div{
    isolation: isolate;
}

.en{
    font-family: roboto, sans-serif;
}

.bold{
    font-weight: bold !important;
}

html.wf-active,
html.loading-delay {
    visibility: visible;
}

::placeholder {
    color: #c7c6c1;
}

input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}

/* ==========================================================
!COMMONS
========================================================== */

/* commons part
------------------------------------ */

.flexs{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.flexs2{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.b10{
    width: 10%;
}

.b20{
    width: 20%;
}

.b30{
    width: 30%;
}

.b40{
    width: 40%;
}

.b50{
    width: 50%;
}

.b60{
    width: 60%;
}

.b70{
    width: 70%;
}

.b80{
    width: 80%;
}

.b90{
    width: 90%;
}

.b100{
    width: 100%;
}

.col1{
    color: #fff !important;
}

.iB{
    display: inline-block;
}


/* ==========================================================
!CONTENST
========================================================== */


/* about us */
.mbf-photo1{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo1.jpg) no-repeat;
    background-size: cover;
    background-position: -7vw center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Service */
.mbf-photo2{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo2.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Recruit */
.mbf-photo3{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo3.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Company */
.mbf-photo4{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo4.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* News */
.mbf-photo5{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo5.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Contact */
.mbf-photo6{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
    background: url(../img/mbf-photo6.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    opacity: 0;
    transition: .7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.mbf-i-opa{
    opacity: 1 !important;
}

.mbf-in2{
    width: 70%;
    position: relative;
    padding-top: 13vh;
}


.mbf-in-flex{
    width: 80%;
    margin: auto;
    padding-bottom: 7vw;
}

.mbf-in-fitem{
    width: 48%;
}

.mbf-in-fitem ul li{
    display: inline-block;
    margin-bottom: 25px;
    position: relative;
    margin-right: 5vw;
}


.mbf-in-fitem ul li::before{
    width: 0%;
    height: 1px;
    background: #000;
    position: absolute;
    left: 0;
    top: 70px;
    content: "";
    transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.mbf-in-fitem ul li b{
    display: inline-block;
    transform: translate(0px,-20px);
    transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    font-size: 51px;
}

.mbf-list-on ul li b{
    transform: translate(0px,0px) !important;
    opacity: 1 !important;
}

.mbf-in-p1{
    overflow: hidden;
    position: relative;
    font-size: 13px;
    display: block;
    padding-top: 10px;
    font-weight: 600 !important;
}

.mbf-in-p1 span{
    display: inline-block;
    position: relative;
    transform: translate(0px,20px);
    transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    font-weight: 500;
}

.mbf-list-on .mbf-in-p1 span{
    transform: translate(0px,0px) !important;
    opacity: 1 !important;
}

.policy-link{
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0px;
    text-decoration: underline;
}

.policy-link small{
    margin-right: 20px;
}

.mbf-left{
    padding-bottom: 4vw;
}


.mbf-in-line{
    width: 80%;
    height: 1px;
    background: #000;
    position: relative;
    margin: auto;
}

.mbf-in-line .policy-link{
    display: none;
}



.mbf-in-copy{
    font-size: 11px;
    letter-spacing: 0px;
    top: 20px;
    position: relative;
}



.td1{
    transition-delay: 50ms !important;
}

.td2{
    transition-delay: 100ms !important;
}

.td3{
    transition-delay: 150ms !important;
}

.td4{
    transition-delay: 200ms !important;
}

.td5{
    transition-delay: 250ms !important;
}

.td6{
    transition-delay: 300ms !important;
}

.td7{
    transition-delay: 350ms !important;
}

.td8{
    transition-delay: 400ms !important;
}

.td9{
    transition-delay: 450ms !important;
}

.td10{
    transition-delay: 500ms !important;
}

.td11{
    transition-delay: 500ms !important;
}

.td12{
    transition-delay: 500ms !important;
}

.td13{
    transition-delay: 500ms !important;
}

.td14{
    transition-delay: 500ms !important;
}

.td15{
    transition-delay: 500ms !important;
}

.td16{
    transition-delay: 500ms !important;
}

.td17{
    transition-delay: 500ms !important;
}

.td18{
    transition-delay: 500ms !important;
}

.td19{
    transition-delay: 500ms !important;
}

.td20{
    transition-delay: 500ms !important;
}


.trs{
    transition: 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transform: translate(0px, 10px);
}



.mbf-in-fitem ul li:hover::before{
    width: 100%;
}


/* INDEX CONTENTS part
------------------------------------ */

/* inx c1 */

.inx-c1{
    width: 100%;
    overflow: hidden;
}

.inx-c1-img{
    width: 100%;
    height: 620px;
    background: url(../img/inx-c1-img.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}


.inx-c1-img-in{
    width: 75%;
    margin: auto;
    padding-top: 10vh
}

.inx-c1-img-in h2{
    font-size: 36px;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 160%;
    overflow: hidden;
}

.item .is-visible{
    overflow: hidden;
}

.item__inner{
    display: inline-block;
    transform: translate(0,80px);
    transition: all 1.7s cubic-bezier(0.165, 0.84, 0.44, 1);
}



.inx-c1-p1{
    width: 60%;
    color: #fff;
    font-size: 14px;
    line-height: 220%;
    overflow: hidden;
    padding-top: 35px;
    padding-bottom: 50px;
}

.inx-c1-p1 span{
    position: relative;
    display: inline-block;
    transform: translate(0px,50px);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.sp_inx-c1-p1{
    display: none;
}


/* 画像下 */

.inx-c1-big{
    text-align: center;
    font-weight: bold;
    font-size: 22vw;
    transform: scale(1.1);
    line-height: 0.7;
    color: #141414;
    overflow: hidden;
}

.inx-c1-big span{
    overflow: hidden;
    position: relative;
    display: block;
}

.inx-c1-big span b{
    display: inline-block;
    transform: translate(0,100px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    padding-bottom: 30px;
}

.inxc2-item1 h2{
    font-size: 40px;
    font-weight: bold;
    line-height: 1;
    padding-bottom: 15px;
}

.inxc2-item1 h2 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.inxc2-item1 .sub{
    font-size: 20px;
    padding-bottom: 70px;
}

.inxc2-item1 .sub span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}
a[href^="tel:"] {  
    pointer-events: none;
  }
@media (max-width:800px) {
a[href^="tel:"] {
    pointer-events: all;
  }
.inxc2-item1 h2{
    font-size: 30px!important;
    font-weight: bold;
    line-height: 1;
    padding-bottom: 15px;
}

.inxc2-item1 h2 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}
}

/* inx c2 */

.inx-c2-in{
    width: 75%;
    margin: auto;
    padding-top: 110px;
    padding-bottom: 350px;
}

.inxc2-item1{
    width: 30%;
    position: relative;
}

.inxc2-item2{
    width: 70%;
    position: relative;
}

.btn-wrap{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}


/* 右側 */

.inxc2-item2 h3{
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
}

.inxc2-item2 h3 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transition-delay: 420ms;
}

.inxc2-i-p1{
    width: 80%;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 230%;
    padding-bottom: 40px;
}

.inxc2-i-p1 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transition-delay: 620ms;
}


/* 採用一括かんりくん用　バナー */

.inxc2-in-ban{
    width: 100%;
    background: #279CFF;
    border-radius: 10px;
    padding: 35px;
    transform: translate(0px,20px);
    transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transition-delay: 750ms;
    box-shadow: 4px 4px 8px -6px rgba(0,0,0,0.6);
    overflow: hidden;
    position: relative;
}

.inxc2-in-ban::before{
    width: 100%;
    height: 100%;
    border-radius: 10px;
    position: absolute;
    left: 0;
    top: 0;
    background: #25d0ff;
    z-index: 1;
    content: "";
    opacity: 0;
    transition: all 2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.inxc2-in-ban:hover::before{
    opacity: 1;
}


.inxc2-in-ban img{
    position: relative;
    z-index: 10;
}

.inxc2-inb-p1{
    text-align: center;
    font-weight: 600;
    padding-bottom: 25px;
    letter-spacing: 0.1em;
    color: #fff;
}


.inxc2-inb-img{
    width: 330px;
    margin: auto;
    padding-bottom: 35px;
}

.inxc4-pnone{
    pointer-events: none;
}


/* リクルート */


.inx-c3{
    width: 100%;
    background: #fff;
    padding-bottom: 70px;
    position: relative;
}

.inxc3-box{
    width: 65%;
    height: 550px;
    position: absolute;
    right: 0;
    top: -200px;
    overflow: hidden;
}


.inx-c3-in{
    padding-bottom: 50px;
    padding-top: 0px;
    position: relative;
    margin-top: -100px;
}

.inxc3-box ul{
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch
}

.inxc3-box ul li{
    width: 400px;
    height: 445px;
    position: relative;
    display: inline-block;
    margin-left: -6px;
    overflow: hidden;
}

.inxc3-b-in{
    width: 400px;
    height: 445px;
    position: relative;
    transform: translate(0px,20px);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.inxc3-box-li{
    width: 100%;
    height: 90%;
    position: relative;
}

.inxc3-box-p1{
    font-size: 12px;
    position: absolute;
    left: 7px;
    bottom: 22px;
    line-height: 0;
    opacity: 0.3;
}

.inxc3-box-p1 span{
    position: relative;
}

.inxc3-box-p1 span::before{
    position: absolute;
    width: 100px;
    height: 1px;
    left: 5px;
    top: 9px;
    background: #000;
    content: "";
}





.inxc3-center-btn{
    width: 200px;
    height: 50px;
    position: absolute;
    left: 46.5%;
    top: 140px;
    margin: auto;
    background: red;
    z-index: 99;
    /* or */
    display: none;
}


/* しれっと追加項目 */



.inxc3-flexs .inxc3-box{
    width: 75%;
    position: relative;
    top: 0;
    right: 0;
    overflow: hidden;
}


.inxc3-flexs{
    width: 87%;
    margin-left: auto;
    position: relative;
    top: -200px;
}

.inxc3-item1{
    width: 20%;
    position: relative;
}



/* NEWS */


.inx-c4{
    width: 100%;
    padding-top: 110px;
    padding-bottom: 150px;
    position: relative;
}

.inx-c4-in{
    padding-bottom: 0px;
}

.inx-news-btn{
    margin-top: 100px;
}


.inxc4-box{
    width: 65%;
    height: 500px;
    position: absolute;
    right: 0;
    top: 200px;
    overflow: hidden;
    z-index: 100;
}

.inxc4-box ul{
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch
}

.inxc4-box ul li{
    width: 335px;
    position: relative;
    display: inline-block;
    margin-right: 10px;
    transform: translate(0px,20px);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    vertical-align: top;
}

.inxc4-b-in{
    position: relative;
    transform: translate(0px,20px);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.inxc4-b-img{
    width: 100%;
    height: 175px;
    background: red;
    position: relative;
}

.inxc4-b-p1{
    padding-top: 20px;
    padding-bottom: 15px;
    font-weight: 500;
    font-size: 13px;
}

.inxc4-b-p2{
    font-size: 14px;
    font-weight: 500;
    line-height: 2;
    white-space: break-spaces;
    letter-spacing: 0.15em;
}

.inxc4-b-p2 a{
}

.inxc4-b-p2 a:hover{
    text-decoration: underline;
}

.inxc4-box .inxc4-b-p2{
    padding-bottom: 30px;
}

.inxc4-b-p1 small{
    background: #000;
    border-radius: 100px;
    margin-left: 15px;
    color: #fff;
    padding: 2px 15px;
    position: relative;
    top: -1px;
}


/* COMMON CONTACT AREA */

.common-contact{
    position: relative;
    padding-bottom: 170px;
    z-index: 10;
    padding-top: 100px;
}

.common-contact .inxc2-item1{
    display: none;
}

.common-contact h3{
    text-align: center;
    font-weight: bold;
    font-size: 5vw;
    line-height: 1;
    display: block;
    overflow: hidden;
}

.common-contact h3 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.cc-txt1{
    display: block;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 2;
    font-weight: 500;
    padding-bottom: 25px;
    overflow: hidden;
}

.cc-txt1 span{
    display: inline-block;
    transform: translate(0px,20px);
    transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
}

.fvscroll-txt{
    width: 10px;
    height: 10px;
    position: absolute;
    left: -10vw;
    bottom: 93px;
    font-size: 12px;
    white-space: nowrap;
    word-break: keep-all;
}

.fvscroll-txt span{
    position: relative;
    display: block;
    transform: rotate(90deg);
    left: -1px;
}

.fv-scroll{
    width: 1px;
    height: 19vh;
    position: absolute;
    left: -10vw;
    bottom: -140px;
    background: #fff;
    z-index: 10;
    overflow: hidden;
    mix-blend-mode: difference;
}

.fv-scroll::before{
    width: 1px;
    height:  100%;
    background: #383838;
    left: 0;
    top: 0;
    position: absolute;
    content: "";
    opacity: 1;
    transform: translate(0px,0%);
    animation: scroll 2.5s infinite cubic-bezier(0.165, 0.84, 0.44, 1) 1s both;
}

main.fv .fvscroll-txt {
    left: 3vw;
    bottom: 173px;
}

main.fv .fv-scroll {
    left: 3vw;
    bottom: -50px;
}

@keyframes scroll {
    0% {
        height: 0%;
        opacity: 0;
        transform: translate(0px,0px);
    }
    1% {
        height: 0%;
        opacity: 1;
        transform: translate(0px,0px);
    }
    30% {
        height: 100%;
        opacity: 1;
        transform: translate(0px,0px);
    }
    31% {
        height: 100%;
        opacity: 1;
        transform: translate(0px,0%);
    }

    60% {
        height: 100%;
        opacity: 1;
        transform: translate(0px,100%);
    }
    61% {
        height: 100%;
        opacity: 0;
        transform: translate(0px,100%);
    }
    100% {
        height: 0%;
        opacity: 0;
        transform: translate(0px,0px);
    }
}


/* 本文 */

.psc1-f2 h2{
    font-weight: bold;
    font-size: 18px;
    padding-bottom: 50px;
    line-height: 2;
}

.psc1-f2 h3{
    font-size: 14px;
    font-weight: bold;
    line-height: 2;
}

.psc1-f2 h4{
    font-size: 14px;
    padding-bottom: 50px;
    line-height: 2;
}

.psc1-f2 p{
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 2
}

.psc1-f2 p a{
    text-decoration: underline;
    color: #141414;
}




/* ==========================================================
!NEWS INNER PAGE
========================================================== */



.nin-c1{
    width: 75%;
    max-width: 1400px;
    margin: auto;
    padding-bottom: 0px;
    margin-bottom: 80px;
}

.back-btn{
    text-align: center;
    border-top: 1px solid #000;
    padding-top: 40px;
}

.back-btn p{
    font-weight: bold;
    position: relative;
}

.back-btn p span{
    width: 150px;
    height: 150px;
    position: relative;
    padding: 5px 15px;
    display: block;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    margin: auto;
    padding-top: 65px
}

.back-btn p span b{
    position: relative;
    z-index: 10;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.back-btn p span::before{
    width: 0px;
    height: 0px;
    background: #000;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 0;
    border-radius: 3px;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    border-radius: 1000px;
}

.back-btn p span:hover b{
    color: #fff;
}

.back-btn p span:hover::before{
    width: 100%;
    height: 100%;
}

.ninc1-flex{
    padding-bottom: 80px;
}

.ninc1-f1{
    width: 30%;
}

.ninc1-f2{
    width: 65%;
}



.ninc1-f1-img{
    width: 100%;
    height: 159px;
    background: url(../img/ninc1-f1-img.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    position: relative;
}


.ninc1-f2-data{
    font-size: 13px;
    font-weight: bold;
    padding-bottom: 15px;
    line-height: 1;
}

.ninc1-f2-cate{
    line-height: 1;
    margin-bottom: 30px;
}

.ninc1-f2-cate p span{
    background: #000;
    padding: 5px 30px;
    color: #fff;
    font-size: 13px;
    border-radius: 5px;
}

.ninc1-f2 h1{
    font-size: 30px;
    letter-spacing: 0.15em;
    line-height: 1.8;
    padding-bottom: 40px;
    font-weight: bold;
}

.ninc1-contents h2{
    font-size: 20px;
    font-weight: bold;
    border-bottom: 2px solid #000;
    padding-bottom: 10px;
    margin-bottom: 20px;
    line-height: 1.8;
}

.ninc1-contents h3{
    background: #fff;
    padding: 15px 20px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
    line-height: 1.8;
}

.ninc1-contents h4{
    padding: 15px 20px;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
    line-height: 1.8;
}

.ninc1-contents h4::before{
    width: 4px;
    height: 70%;
    border-radius: 2px;
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
}

.ninc1-contents h5{
    padding: 15px 0px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
    line-height: 1.8;
}


.ninc1-contents p{
    line-height: 2.4;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
    font-size: 15px;
}

.ninc1-contents a{
    color: #279cff;
    text-decoration: underline;
}


/* ==========================================================
!Recruit page
========================================================== */

.rec-c1{
    width: 100%;
    background: url(../img/rec-c1.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    transform: translate(0px,-20px);
    opacity: 0;
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.recc1-main{
    width: 100%;
    max-width: 1400px;
    margin: auto;
}

.recc1-main h1{
    font-size: 70px;
    font-weight: bold;
}

.recc1-main h1{
    padding-top: 35vw;
    padding-bottom: 100px;
    padding-left: 40%;
    color: #fff;
}

.recc1-main h1 span{
    display: inline-block;
}

.recc1-main h1 span b{
    display: inline-block;
    transition: 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transform: translate(-10px, 0px);
}

.rec-stiky{
    width: 100%;
    margin: auto;
    position: relative;
}

.recs-main{
    width: 100%;
    position: relative;
    margin-top: -393px;
    background: #fff;
}


.recs-m-c1{
    width: 100%;
    padding-bottom: 150px;
    background: #fff;
}

.recs-m-c2{
    width: 100%;
    position: relative;
    background: #F5F4F0;
    padding-bottom: 150px;
}

.recs-m-c2::before{
    width: 100%;
    height: 220px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    content: "";
}

.recs-m-c3{
    width: 100%;
    position: relative;
    background: #F5F4F0;
    padding-bottom: 250px;
}

.recs-m-c4{
    width: 100%;
    position: relative;
    background: #F5F4F0;
    padding-bottom: 250px;
}

.recs-m-c5{
    width: 100%;
    position: relative;
    background: #F5F4F0;
    padding-bottom: 250px;
}


.recs-mc-in{
    width: 90%;
    position: relative;
    margin: auto;
    padding-left: 10%;
}



.recs-mc1-i-p1{
    width: 90%;
    padding-top: 75px;
}


.recs-mc1-i-p1 h4{
    font-size: 25px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 2.4;
    opacity: 0;
}

#rec-1{
    padding-top: 150px;
}

#rec-2{
    padding-top: 150px;
    padding-bottom: 300px;
}

#rec-3{
    padding-top: 150px;
}

#rec-5{
    padding-top: 150px;
}


/* ギャラリー */


.recs-m-c2 .inxc3-box{
    top: 0px;
    z-index: 10;
}



#rec-2 .inxc3-box{
    width: 75%;
}


/* ストーリーズ */

.recs-mc2-en{
    font-size: 20vw;
    font-weight: bold;
    position: absolute;
    left: 0;
    top: -17vw;
    color: #EBEAE6;
    pointer-events: none;
}

.recs-mc2-i-p1{
    width: 90%;
    padding-top: 90px;
}

.recs-mc2-i-p1 h4{
    font-size: 26px;
    font-weight: bold;
}

.want-icon {
    width: 112px;
    position: relative;
    margin-top: 15px;
    margin-bottom: 30px;
}

.recs-mc2-i-tx1{
    font-size: 14px;
    line-height: 2.2;
    letter-spacing: 0.1em;
    padding-bottom: 70px;
}

.recs-mc2-i-tx1 span{
    display: block;
}

.story-slide{
    width: 110%;
    margin-top: 80px;
    overflow: hidden;
    position: relative;
    z-index: 10;
}



.story-slide ul{
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    padding-right: 50px;
}

.story-slide ul li{
    width: 335px;
    min-height: 410px;
    position: relative;
    display: inline-block;
    margin-right: 10px;
    transform: translate(0px,20px);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    vertical-align: top;
    background: #fff;
}

#recruit .story-slide ul li{
    background: none;
}

.story-slide .inxc4-b-img{
    margin-bottom: 20px;
    border-radius: 10px;
    transition: all .8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.story-slide ul li:hover .inxc4-b-img{
    box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.2);
}

.sT-btn{
    width: 200px;
    margin-top: 20px;
    margin-left: auto;
    right: -5px;
    display: block !important;
    position: relative;
}

.story-slide .btn_bcolor::before{
    border: none;
}

.story-slide .btn__inner::after{
    opacity: 0;
}

.story-slide .btn__barr::before{
    background: url(../img/arr-black.svg) no-repeat;
    background-position: center center;
}


.sT-btn:hover .btn__inner p{
    color: #000 !important;
}

/* 会社紹介資料 */

#rec-4{
    width: 100%;
    position: relative;
    padding-bottom: 50px;
}

#rec-4 .com-st-win{
    margin-top: 0px;
}


/* 募集職種 */

.recs-mc3-en{
    font-size: 30vw;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    color: #EBEAE6;
    text-align: center;
    white-space: pre;
    word-break: keep-all;
}


.recs-mc3-i-p1{
    padding-top: 90px;
}

.recs-mc3-i-p1 h4{
    font-size: 26px;
    font-weight: bold;
    padding-bottom: 30px;
}

.recs-mc3-i-tx1{
    width: 90%;
    font-size: 14px;
    line-height: 2.2;
    letter-spacing: 0.1em;
    padding-bottom: 70px;
}

.recs-mc3-i-tx1 span{
    display: block;
}

.want-btns{
    width: 80%;
    max-width: 776px;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}


.wantb-f{
    width: 48%;
    margin-bottom: 30px;
    background: #F5F4F0;
    border-radius: 20px;
    padding: 40px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    z-index: 10;
    border: 5px solid #000;
}

.wantb-f:not(:last-child){
    background: #000;
}

.wantb-f:not(:last-child) .wb-in-b-p1{
    color: #fff;
}

.wantb-f:not(:last-child) .wb-in-btn{
    color: #fff;
}

.wantb-f::before{
    width: 0px;
    height: 0px;
    position: absolute;
    left: 90px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    background: rgb(40,94,235);
    background: linear-gradient(90deg, rgba(40,94,235,1) 0%, rgba(36,208,255,1) 100%);
    content: "";
    border-radius: 1000px;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}


.wantb-f:hover::before{
    width: 150px;
    height: 150px;
    transform: scale(3);
}

.wantb-f:hover .wb-in-btn::after{
    right: -10px;
}

.wantb-f:hover .wb-in-b-p1{
    color: #fff;
}

.wantb-f:hover .wb-in-btn{
    color: #fff;
}

.wb-in-b-p1 small{
    font-size: 13px;
    position: relative;
    top: -5px;
    padding-left: 3px;
}


.wb-in-btn{
    height: 20px;
    position: absolute;
    right: 30px;
    top: 0;
    bottom: 0;
    margin: auto;
    font-size: 13px;
    padding-right: 30px;
    line-height: 1.6;
    z-index: 10
}

.wb-in-btn::after{
    width: 13px;
    height: 13px;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "〉";
    line-height: 1;
    text-align: center;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}


.wb-in-b-p1{
    font-weight: bold;
    font-size: 26px;
    position: relative;
    z-index: 10;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}





/* stiky line */



.recs-stiky{
    width: 16%;
    min-width: 265px;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
    padding-left: 5%;
    padding-top: 150px;
}

.recs-stiky ul li{
    width: 90%;
    position: relative;
    margin-bottom: 18px;
    padding-bottom: 3px;
    display: block;
    transform: translate(0,10px);
    display: inline-block;
    opacity: 0;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.recs-stiky ul li p{
    font-size: 14px;
    letter-spacing: 0.1em;
    font-weight: bold;
    color: #999;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.stiky-active p{
    color: #141414 !important;
}

.recs-stiky ul li p::before{
    width: 20px;
    height: 20px;
    position: absolute;
    right: 0;
    top: -9px;
    margin: auto;
    background: url(../img/recs-s-arr.svg) no-repeat;
    background-size: 100%;
    background-position: center center;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translate(0,10px);
    opacity: 0.2 !important;
}

.recs-stiky ul li.is-active::before{
    transform: translate(0,0);
    opacity: 1;
}

.stiky__link-on p{
    color: #000 !important;
}

.recs-stiky ul li.stiky__link-on p::before{
    opacity: 1 !important;
}


/* ==========================================================
!About us page
========================================================== */


.abos-main{
    width: 100%;
    position: relative;
    margin-top: -333px;
    background: #F5F4F0;
}


#abo-1{
    padding-top: 150px;
}

#abo-2{
    padding-top: 150px;
}

#abo-3{
    padding-top: 150px;
}

#abo-4{
    padding-top: 150px;
}

.abo-c1{
    width: 100%;
    background: url(../img/abo-c1.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    transform: translate(0px,-20px);
    opacity: 0;
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.aboc1-main{
    width: 100%;
    max-width: 1400px;
    height: 55vh;
    margin: auto;
}


.abos-m-c1{
    width: 100%;
    background: #FFF;
}


.abos-m-c2{
    width: 100%;
    position: relative;
    background: #FFF;
    padding-top: 150px;
    padding-bottom: 150px;
}

.abos-mc1-i-p1{
    padding-top: 75px;
}

.mask-landscape{
    margin-bottom: 80px;
}

.mask-landscape{
    background: url("../img/mask-landscape.jpg") center center;
    background-size: cover;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    display: table;
}

.mask-landscape h1{
    font-weight: bold;
    font-size: 80px;
    letter-spacing: 0.1em;
    line-height: 1.5;
}

.mask-landscape h1 span b{
    display: inline-block;
    opacity: 0;
    transform: translate(-10px,0);
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.abos-mc1-i-p1 h2{
    width: 80%;
    font-size: 18px;
    line-height: 2.4;
    font-weight: 500;
    letter-spacing: 0.1em;
}



.abos-mc-in{
    width: 114%;
    background: #fff;
    border-radius: 20px 0px 0px 20px;
    margin-left: -7%;
    padding: 8% 8%;
}


.abos-mc2-i-p1 h4{
    font-size: 50px;
    font-weight: bold;
    padding-top: 110px;
    letter-spacing: 0.1em;
    line-height: 1.4;
    padding-bottom: 80px;
}

.abos-mc2-i-p1 h4 span{
    display: inline-block;
}

.abos-mc2-i-tx1{
    width: 90%;
    font-size: 14px;
    line-height: 2.2;
    letter-spacing: 0.1em;
    padding-bottom: 80px;
}

.abos-mc2-i-tx1 span{
    display: inline-block;
}


.abos-mc2-i-img{
    width: 90%;
    margin-bottom: 40px;
}


/* ==========================================================
!Company page
========================================================== */

#com-1{
    padding-top: 150px;
    padding-bottom: 250px;
}


.com-c1{
    width: 100%;
	padding-bottom:300px;
    background: url(../img/top.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    transform: translate(0px,-20px);
    opacity: 0;
    transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}


.com-mc1-i-txt{
    width: 80%;
    padding-top: 75px;
}


.com-p1{
        font-size:clamp(14px, 1.8vw, 18px)!important ;
}


.com-p2{
    padding-top: 40px;
    display: none;
}


.com-m1-img1{
    padding-bottom: 35px;
}




/* メンバー紹介 */


.com-m-c1{
    width: 100%;
    padding-bottom: 400px;
    background: #fff;
}

/* ストーリー */

.com-en-1{
    font-size: 20vw;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: -100px;;
    margin: auto;
    color: #EBEAE6;
    text-align: center;
}



.com-st-win{
    width: 80%;
    margin-top: 100px;
}


.com-stW-in{
    width: 100%;
    height: 500px;
    background: #EBEAE6;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 30px;
}


.com-m-c4{
    width: 100%;
    position: relative;
    background: #F5F4F0;
    padding-bottom: 50px;
}

.com-mc4-in{
    width: 90%;
    position: relative;
    margin: auto;
    padding-left: 20%;
}

.com-mc4-htop{
    padding-top: 140px;
}

.com-mc4-in h4{
    font-size: 50px;
    font-weight: bold;
    padding-bottom: 5px;
}

.com-mc4-in h4 span{
    display: inline-block;
}

.com-mc4-in h5{
    font-size: 70px;
    font-weight: bold;
    padding-bottom: 70px;
}

.com-mc4-in h5 span{
    display: inline-block;
}

.com-mc4-in h6{
    width: 80%;
    font-size: 14px;
    line-height: 2.2;
    letter-spacing: 0.1em;
    padding-bottom: 80px;
    display: inline-block;
}


/* サービス導線 */

.our-contents{
    width: 100%;
    height: 600px;
    background: url(../img/our-contents.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    margin: 100px auto 200px auto;
    position: relative;
}


.ouc-in{
    width: 90%;
    max-width: 1400px;
    margin: auto;
    position: relative;
    padding: 5% 15%;
    padding-top: 130px;
}

.ouc-in h4{
    font-size: 26px;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.8;
    padding-bottom: 30px;
}

.ouc-in h4 span{
    display: inline-block;
}

.ouc-in h5{
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 2;
    color: #fff;
    padding-bottom: 60px;
}

.ouc-in h5 span{
    display: inline-block;
}


.ouc-en{
    width: 100%;
    text-align: center;
    font-size: 14vw;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -5vw;
    line-height: 1;
    color: #141414;
    pointer-events: none;
}

.ouc-en p{
    display: inline-block;
}


/* メンバー紹介 */


#com-2{
    background: #fff;
    padding-top: 150px;
    padding-bottom: 150px;
    position: relative;
}


.com-mc2-flex{
    width: 90%;
    position: relative;
    margin-top: 80px;
}


.com-mc2-fi{
    width: 30%;
    position: relative;
    margin-bottom: 35px;
}


.com-mc2-img{
    width: 100%;
    height: 19vw;
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
    border-radius: 10px;
    z-index: 10;
}

@media screen and (min-width:768px) {
.com-mc2-img:hover::after{
    opacity: 1;
}
}/* 768px以上の場合 */

.mc2img-1::before{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    z-index: 8;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.mc2img-1::after{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/mc2img-1-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    content: "";
    z-index: 10;
    opacity: 0;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.m2i1::before{
    background: url(../img/mc2img-1-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i1::after{
    background: url(../img/mc2img-1-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i2::before{
    background: url(../img/mc2img-2-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i2::after{
    background: url(../img/mc2img-2-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i3::before{
    background: url(../img/mc2img-3-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i3::after{
    background: url(../img/mc2img-3-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i4::before{
    background: url(../img/mc2img-4-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i4::after{
    background: url(../img/mc2img-4-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i5::before{
    background: url(../img/mc2img-5-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i5::after{
    background: url(../img/mc2img-5-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i6::before{
    background: url(../img/mc2img-6-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.m2i6::after{
    background: url(../img/mc2img-6-on.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}

.mirr-on::after{
    opacity: 1 !important;
}


/* Profile */

.com-mc2-p1{
    padding-bottom: 5px;
    font-size: 20px;
}

.com-mc2-p1 small{
    font-size: 12px;
    padding-left: 5%;
    vertical-align: middle;
    position: relative;
    top: -3px;
}

.com-mc2-p2{
    font-size: 12px;
    padding-bottom: 20px;
}

.com-mc2-fi2{
    width: 20%;
}

.com-mc2-fi3{
    width: 80%;
    text-align: left;
}

.com-mc-flex2{
    font-size: 12px;
    letter-spacing: 0.1em;
    padding-bottom: 5px;
}



/* 会社概要 */

#com-3{
    padding-top: 150px;
    padding-bottom: 150px;
}

.com-mc2-en{
    font-size: 8vw;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: -5vw;
    margin: auto;
    color: #EBEAE6;
    text-align: left;
    mix-blend-mode: multiply;
    opacity: 0.5;
}

.com-m3-wrap{
    padding-top: 110px;
    justify-content: flex-start;
}

.com-m3-li1{
    width: 25%;
    position: relative;
    border-bottom: 3px solid #000;
    padding: 20px 0px;
    font-weight: bold;
    letter-spacing: 3px;
	 font-size:clamp(14px, 3.4vw, 18px);
}
.com-m3-li1 p{
    font-weight: bold;
	 font-size:clamp(14px, 1.4vw, 18px);
}
.com-m3-li2 p, .com-m3-li4 p{
	 font-size:clamp(14px, 1.4vw, 18px);
}
@media (max-width:800px) {
.com-m3-li1{
    letter-spacing: 1px;
	font-size:12px;
}
.com-m3-li1 p{
	font-size:12px;
}
}

.com-m3-li2,.com-m3-li4{
    width: 75%;
    position: relative;
    border-bottom: 1px solid #000;
    padding: 20px 0px;
    padding-left: 3%;
	 font-size:14px;
}   
	 .com-m3-li2 table{
	 font-size:14px;
	 float:left;
    }
	

@media (max-width:800px) {
.com-m3-li4{
    width: 100%;
    position: relative;
    border-bottom: 1px solid #000;
    padding: 20px 0px;
    padding-left: 3%;
	 font-size:12px;
} 

  .display_sp{
  display:none;
  }
.com-m3-li2 table{
	 font-size:14px;
	 float:none;
    }
.com-m3-li2 p{
	 font-size:12px!important;
	 padding:0 0 10px 0;
	 margin:0;
    }
}	
	 .com-m3-li2 td{
	 padding:10px 10px 10px 0;
	 font-size:clamp(14px, 1.4vw, 18px);
    }
    .com-m3-li4 dl{
	width:100%;
	display:block;
	clear:all;
    }
    
    .com-m3-li4 dt{
	clear:left;
	float:left;
	width:50%;
	font-weight:bold;
	padding:10px 0 10px 0;
	 font-size:clamp(12px, 1.4vw, 16px);
    }
    
    .com-m3-li4 dd{
	float:left;
	width:50%;
	padding:10px 0 10px 0;
	 font-size:clamp(12px, 1.4vw, 16px);
    }

@media (max-width:800px) {
    .com-m3-li4 dt{
	float:none!important;
	width:100%!important;
	padding:0px 0 0px 0!important;
	font-size:12px!important;
    }
    
    .com-m3-li4 dd{
	float:none!important;
	width:100%!important;
	padding:0px 0 20px 20px!important;
	font-size:12px!important;
    }
}
.com-m3-list{
    width: 90%;
    position:  relative;
    margin-bottom: 15px;
}

.google-map{
    width: 150px;
    position: absolute;
    right: 0;
    bottom: 17px;
    margin: auto;
}

.google-map a{
    display: block;
    text-align: center;
    background: #FFF;
    color: #B28247;
    padding: 10px;
    border-radius: 100px;
	border-color:#B28247;
	border:1px solid;
    overflow: hidden;
    font-weight: bold;
}


.com-ms-li-in{
    width: 300px;
    justify-content: flex-start;
    margin-bottom: 10px;
     font-size: clamp(14px, 1.4vw, 18px);
}

.com-ms-liin-i{
    width: 45%;
    text-align: left;
     font-size: clamp(14px, 1.4vw, 18px);
}

.com-ms-liin-i i{
    width: 3px;
    display: inline-block;
     font-size: clamp(14px, 1.4vw, 18px);
}

.opa p{
    opacity: 0;
}

.opa::before{
    font-size: 14px;
    content: "役員";
    position: absolute;
    left: 0;
    bottom: 25px;
}



/* クライアント 一覧 */

#com-4{
    padding-top: 150px;
    padding-bottom: 150px;
    
}

.client-list{
    width: 90%;
    justify-content: space-between;
}

.cl-item{
    width: 30%;
    text-align: left;
    position: relative;
}

.cl-item li{
    font-size: 14px;
    padding-bottom: 35px;
    font-weight: 500;
    line-height: 1.8;
}

.last-li{
    position: absolute;
    left: 0;
    bottom: 0;
}



/* クライアント 一覧 */

#com-5{
    padding-top: 150px;
    padding-bottom: 0px;
    background: #fff;
}


/* History */

#com-5{
    margin-bottom: 0px;
}

.com-m5-wrap{
    width: 90%;
    position: relative;
    margin-top: 110px;
}

.com-m5-wrap ul {
    padding-left: 20%;
    position: relative;
}

.com-m5-wrap ul li.comc5-in-list{
    position: relative;
    border-left: 1px solid #000;
    padding-bottom: 30px;
}

.his-year{
    line-height: 1;
}

.com-m5-wrap ul li.comc5-in-list b{
    display: block;
    font-size: 14px;
}

.his-year{
    font-size: 45px;
    font-weight: bold;
    position: absolute;
    left: -135px;
    top: -15px;
}

.his-title{
     font-size: clamp(14px, 1.4vw, 18px);
    padding-left: 40px;
}


.his-title::before{
    width: 10px;
    height: 10px;
    position: absolute;
    left: -5.5px;
    top: 6px;
    content: "";
    background: #956134;
    border-radius: 100px;
}

.his-img{
    width: 92%;
    margin: 30px auto;
    border-radius: 10px;
    overflow: hidden;
}

.com-m5-wrap ul li.comc5-in-list:first-child::before{
    width: 1px;
    height: 50px;
    position: absolute;
    left: -1px;
    top: -30px;
    background: #000;
    content: "";
}

.com-m5-wrap ul li ol{
    padding-top: 50px;
    padding-bottom: 50px;
}

.com-m5-wrap ul li ol li{
    position: relative;
    margin-bottom: 50px;
    font-size: 14px;
}

.his-month{
    width: 130px;
    position: absolute;
    left: -160px;
    font-weight: bold;
    text-align: right;
    font-size: 20px;
}

.his-month span{
    position: relative;
    top: -2px;
}


@media (max-width:800px) {
/* History */

#com-5{
    margin-bottom: 0px;
}

.com-m5-wrap{
    width: 90%;
    position: relative;
    margin-top: 110px;
}

.com-m5-wrap ul {
    padding-left: 10%;
    position: relative;
}

.com-m5-wrap ul li.comc5-in-list{
    position: relative;
    border-left: 1px solid #000;
    padding-bottom: 20px;
}

.his-year{
    line-height: 1;
}

.com-m5-wrap ul li.comc5-in-list b{
    display: block;
    font-size: 14px;
}

.his-year{
    font-size: 24px;
    font-weight: bold;
    position: absolute;
    left: -135px;
    top: -15px;
}

.his-title{
    font-size: 14px;
    padding-left: 40px;
}


.his-title::before{
    width: 10px;
    height: 10px;
    position: absolute;
    left: -5.5px;
    top: 6px;
    content: "";
    background: #956134;
    border-radius: 100px;
}

.his-img{
    width: 92%;
    margin: 10px auto;
    border-radius: 10px;
    overflow: hidden;
}

.com-m5-wrap ul li.comc5-in-list:first-child::before{
    width: 1px;
    height: 50px;
    position: absolute;
    left: -1px;
    top: -30px;
    background: #000;
    content: "";
}

.com-m5-wrap ul li ol{
    padding-top: 50px;
    padding-bottom: 10px;
}

.com-m5-wrap ul li ol li{
    position: relative;
    margin-bottom: 10px;
    font-size: 14px;
}

.his-month{
    width: 130px;
    position: absolute;
    left: -160px;
    font-weight: bold;
    text-align: right;
    font-size: 16px;
}

.his-month span{
    position: relative;
    top: -2px;
}

.google-map{
    width: 150px;
    position: absolute;
    right: 0;
    bottom: 17px;
    margin: auto;
}

.google-map a{
    display: block;
    text-align: center;
    background: #FFF;
    color: #B28247;
    padding: 0px;
    border-radius: 100px;
	border-color:#B28247;
	border:1px solid;
    overflow: hidden;
    font-weight: bold;
	font-size:12px;
}

}






/* ==========================================================
!Commons item
========================================================== */

/* second title */

.common-title{
    width: 75%;
    max-width: 1400px;
    margin: auto;
    padding-top: 20vh;
    position: relative;
}

.ct-f1 .inxc2-item1{
    width: 100%;
}

.ct-f1 .inxc2-item1 h2{
    font-size: 60px;
	color:#1592C0;
}



/* second page inner comoons txt */


.sec-in-txt{
    width: 100%;
    display: block;
    position: relative;
}

.sec-in-txt h4{
    font-size: 36px;
	font-weight:bold;
	line-height:1.2;
	margin-left:-60px;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transform: translate(20px,0);
    display: block;
}

.meinbox{
    display:flex;
	justify-content:space-between;
	border-top:1px solid #CCCCCC;
	width: 100%;
    height:auto;
    padding:10px;
	margin:0 auto 0 auto;
    box-sizing: border-box;
}

.leftbox{
margin:0px 0 0px 0;
width:231px;
box-sizing: border-box;
}
.leftbox ul{
	position:sticky;
	top:0;
	padding:20px 0 20px 0;
    box-sizing: border-box;
}

.rightbox{
padding:20px 0px 80px;
width:100%;
box-sizing: border-box;
background-color:#FFFFFF;
}
.field_flex{
    display:flex;
	justify-content:space-between;
}
.field_left{
	width:50%;
    box-sizing: border-box;}
.field_left h3{
	font-size:28px;
	font-weight:bold;
	}
.field_right{
	width:50%;
    box-sizing: border-box;}

@media (max-width:800px) {

.ct-f1 .inxc2-item1 h2{
    font-size: 36px;
	color:#1592C0;
}

.sec-in-txt h4{
    font-size: 30px;
	line-height:1.2;
	margin-left:-00px;
}

}


.sec-in-txt h3{
    font-size: 26px;
	font-weight:bold;
	line-height:1.2;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0;
    transform: translate(20px,0);
    display: block;
}

.sec-in-txt h3::before{
    width: 0px;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #956134;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    display: block;
}

.sec-in-txt h3.is-active::before{
    width: 400px;
}


/* btn css */

.btn-wrap{
    display: inline-block;
}

/* COMMON CNTACT BTN */

.cc-btn{
    width: 177px;
    margin: auto;
    display: block;
    transition-delay: 350ms;
}

.btn__inner{
    border-radius: 100px;
    display: inline-block;
    padding: 10px 60px 10px 25px;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.btn__inner::before{
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    content: #fff;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 100px;
    opacity: 0.5;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    z-index: 10;
}

.btn__inner::after{
    width: 0%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #000;
    border-radius: 100px;
    content: "";
    z-index: 1;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}


.btn__inner p{
    position: relative;
    z-index: 10;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0px;
}

.btn__arr{
    width: 17px;
    height: 17px;
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
    overflow: hidden;
    z-index: 10;
}

.btn__arr::before{
    width: 17px;
    height: 17px;
    position: absolute;
    left: -17px;
    top: 0;
    background: url(../img/arr-white.svg) no-repeat;
    background-position: center center;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn__arr::after{
    width: 17px;
    height: 17px;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/arr-white.svg) no-repeat;
    background-position: center center;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn__barr::before{
    width: 17px;
    height: 17px;
    position: absolute;
    left: -17px;
    top: 0;
    background: url(../img/arr-white.svg) no-repeat;
    background-position: center center;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn__barr::after{
    width: 17px;
    height: 17px;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/arr-black.svg) no-repeat;
    background-position: center center;
    content: "";
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn__barr_dl::before{
    background: url(../img/arr-dl-white.svg) no-repeat;
    background-position: center center;
}

.btn__barr_dl::after{
    background: url(../img/arr-dl-black.svg) no-repeat;
    background-position: center center;
}

.btn__inner p{
    overflow: hidden;
    position: relative;
    display: block;
}

.btn__inner p span{
    transform: translate(0px,0px);
    position: relative;
    display: block;
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.btn_bcolor::before{
    border: 1px solid #000;
}

.btn_fcolor{
    color: #000;
}


.dl-btn{
    width: 155px;
    margin: auto;
    display: block;
}


.nl-btn .btn_bcolor::before{
    border: none;
}

.nl-btn .btn__inner::after{
    opacity: 0;
}

.nl-btn .btn__barr::before{
    background: url(../img/arr-black.svg) no-repeat;
    background-position: center center;
}

.nl-btn .btn__inner p{
    color: #000;
}

.nl-btn:hover .btn__inner p{
    color: #000 !important;
}

/* hover */

.btn-wrap:hover .btn__inner::before{
    opacity: 1;
}

.btn-wrap:hover .btn__inner::after{
    width: 100%;
}

.btn-wrap:hover .btn__arr::before{
    left: 0px;
}

.btn-wrap:hover .btn__arr::after{
    left: 17px;
}

.btn-wrap:hover .btn__inner p span{
    animation: fade .8s ease-out forwards;
}

.btn-wrap:hover .btn_fcolor{
    color: #fff;
}


#stalker{
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 9999999999999999999999999999999999999999999999999999;
    pointer-events: none;/*ストーカーがマウスカーソルとリンクとの間に挟まってクリックできなくするのを回避*/
    transition: all .5s cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: scale(1);
    pointer-events: none;
}
#stalker .stalker__pointer{
    width: 30px;
    height: 30px;
    transition: all 0.4s ease;/*ホバーの時の変化の指定*/
    border-radius: 100%;
    background: none;
    border: 1px solid #c6c6c6;
    position: absolute;
    top: -15px;
    left: -15px;
}
#stalker.mouse-active .stalker__pointer{
    top: -30px;
    left: -30px;
    width: 60px;
    height: 60px;
    border: 1px solid #fff;
}

#stalker.mouse-active{
    mix-blend-mode: difference;
}

#drag{
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 9999999999999999999999999999999999999999999999999999;
    pointer-events: none;/*ストーカーがマウスカーソルとリンクとの間に挟まってクリックできなくするのを回避*/
    transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: scale(1);
    opacity: 1;
    mix-blend-mode: multiply;
    opacity: 0;
    pointer-events: none;
}
#drag .drag__pointer{
    width: 70px;
    height: 70px;
    border-radius: 100%;
    position: absolute;
    top: -35px;
    left: -35px;
    background: #fff;
    transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.drag__pointer::before{
    color: #fff;
    content: "drag";
    text-align: center;
    font-family: roboto, sans-serif;
    font-size: 12px;
    margin-top: 0;
    display: block;
    line-height: 5.5;
    mix-blend-mode: difference;
}

#drag.mouse-active .drag__pointer{
    top: -40px;
    left: -40px;
    width: 80px;
    height: 80px;
    mix-blend-mode: difference;
}

#drag.mouse-active{
    mix-blend-mode: difference;
    opacity: 1 !important;
}

#drag.mouse-active .drag__pointer::before{
    line-height: 6.3;
}


/* animate */

.is-active .item__inner{
    transform: translate(0px,0px) !important;
}

.is-active{
    transform: translate(0px,0px) !important;
    opacity: 1 !important;
}


.delay1{
    transition-delay: 200ms;
}

.delay2{
    transition-delay: 400ms;
}


.pc_btn{
    display: block;
}

.sp_btn{
    display: none;
}

.sp-our-txt{
    display: none;
}

/* ==========================================================
!SP media queries css
========================================================== */

@media screen and (max-width:768px) {
    
    #drag{
        display: none;
        opacity: 0 !important;
    }
    
    #stalker{
        display: none;
        opacity: 0 !important;
    }
    
    /* commons part
    ------------------------------------ */

    .flexs{
    }
	.flexs2{
    display:block;
    justify-content: space-between;
    flex-wrap: wrap;
	}
    .b10{
        width: 100%;
    }

    .b20{
        width: 100%;
    }

    .b30{
        width: 100%;
    }

    .b40{
        width: 100%;
    }

    .b50{
        width: 100%;
    }

    .b60{
        width: 100%;
    }

    .b70{
        width: 100%;
    }

    .b80{
        width: 100%;
    }

    .b90{
        width: 100%;
    }

    .b100{
        width: 100%;
    }
    
    
    
 
    
    /* ==========================================================
    !INDEX ITEM
    ========================================================== */
    
    /* index fv area
    ------------------------------------ */
    
    
    main.fv{
        z-index: 10;
        /*background: #ededeb;*/
    }
    
    @-moz-document url-prefix() {
        main.fv{
            background: #f4f4f4;
        }
    }
    
    .over-vis{
        width: 100%;
        height: 100%;
        position: relative;
        overflow: hidden;
    }
    
    .fv-img {
        width: 120vw;
        height: 600px;
        left: 9%;
        top: 2vw;
    }
    
    .fv__txt h2 span{
        padding: 0;
    }
    
    .fv__txt {
        width: 85%;
        left: 0% !important;
        right: 0;
        top: 20%;
        margin: auto;
    }
    
    .fv__txt h2 {
        font-size: 13vw;
        letter-spacing: 0.05em;
        padding-bottom: 16px;
    }
    
    .fvtxt-sub{
        font-size: 16px;
        padding-left: 0;
        padding-top: 30vw;
    }
    
    .inx-news {
        width: 90%;
        right: 0;
        bottom: 0;
    }
    
    .inx-n-img {
        left: 25px;
    }
    
    .inx-news-in {
        width: 100%;
    }
    
    .inx-news p {
        width: 100%;
        padding-left: 160px;
        padding-right: 30px;
        padding-top: 34px;
    }
    
    .inx-sp-news{
        width: 100%;
        height: 149px;
        position: absolute;
        bottom: -80px;
        overflow: hidden;
        z-index: 9;
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    .inx-c1-img {
        height: 480px;
    }

    .inx-c1-img-in h2 {
        font-size: 27px;
    }
    
    .inx-c1-img-in {
        width: 85%;
        padding-top: 38vh;
    }
    
    .inx-c1-img-in .inx-c1-p1{
        display: none;
    }
    
    .inx-c1-p1{
        width: 90%;
        color: #000;
        margin: auto;
    }
    
    .inx-c1-img-in .btn-wrap{
        display: none;
    }
    
    .sp-about-btn{
        display: block;
        margin-left: 10%;
    }
    
    .abos-m-c1{
        padding-bottom: 40px;
    }
    
    
    /* TOP SERVICE */
    
    .inx-c2{
        overflow: hidden;
    }
    
    .inx-c2-in{
        width: 90%;
    }
    
    .inxc2-item1{
        width: 100%;
    }
    
    .inxc2-item2{
        width: 100%;
        padding-left: 5%;
        margin-top: 20px;
    }
    
    .inxc2-i-p1{
        width: 105%;
        font-size: 15px;
    }
    
    .sp_inx2-serimg{
        width: 110%;
        /*padding-bottom: 5%;*/
        position: relative;
    }
    
    .inxc2-in-ban{
        display: none;
    }
    
    .sp_inx-c1-p1{
        display: block;
        padding-top: 15px;
        font-size: 15px;
        position: relative;
        left: 5%;
    }
    
    
    
    
    /* inx company */
    
    
    
    .inxc3-box {
        width: 100%;
        height: auto;
    }
    
    .inxc3-flexs .inxc3-box{
        width: 100% !important;
    }
    
    .inxc3-box ul li {
        width: 340px;
        height: 340px;
    }
    
    .inxc3-b-in {
        width: 340px;
        height: 340px;
    }
    
    .inxc3-box .btn-wrap{
        margin-top: 25px;
    }
    
    .inxc3-item1{
        position: relative;
        left: -5%;
    }
    
    
    /* inx recruit */
    
    
    .inx-c3-in{
        padding-top: 0px;
        margin-top: -100px;
        padding-bottom: 10px;
    }
    
    
    .sp-inxc3-img{
        width: 100%;
        position: relative;
        background: url(../img/sp-inxc3-img.jpg) no-repeat;
        background-size: cover;
        background-position: center center;
        transform: scale(1.175);
        margin-left: -2.8%;
        
        padding: 7%;
        padding-top: 150px;
        margin-bottom: 60px;
    }
    
    .sp-inxc3-img h3{
        font-size: 22px;
        margin-bottom: 0px;
        color: #fff;
        line-height: 1.8;
    }
    
    .inxc3-box-p1{
        bottom: 15px;
    }
    
    /* inx NEWS */
    
    
    .inx-c4{
        padding-top: 0;
        padding-bottom: 20px;
    }
    
    .inxc4-box{
        width: 90%;
        height: auto;
        position: relative;
        margin-left: auto;
        top: 0;
    }
    
    
    .inx-c4 .inx-news-btn{
        width: 80%;
        padding-top: 50px;
        margin-top: 0px;
        margin: auto;
    }
    
    .inxc4-b-p2{
        font-size: 15px;
    }
    
    
    
    
    
    
    
    
    
    /* commons contact area */
    
    .common-contact {
        padding-bottom: 110px;
    }
    
    .common-contact .inxc2-item1{
        width: 90%;
        margin: auto;
        display: block;
    }
    
    .common-contact .inxc2-item1 .sub{
        padding-bottom: 50px;
    }
    
    .common-contact h3{
        width: 100%;
        padding-top: 76vw;
        position: absolute;
        text-align: center;
        font-size: 20vw;
    }
    
    .cc-txt1{
        width: 80%;
        margin: auto;
        text-align: left;
        font-size: 14.5px;
        padding-bottom: 40px;
    }
    
    
    .cc-btn{
        width: 80%;
        margin: auto;
    }
    
    
    .cc-txt1 span{
        font-size: 15px;
    }
    
    
    
    
    /* commons btn */
    
    .pc_btn{
        display: none;
    }
    
    .sp_btn{
        display: block;
    }
    
    
    /* footer */
    
    .pageTop{
        top: 30px;
        right: 15px;
    }
    
    .fl-in{
        margin: auto;
    }
    
    .fl-list{
        width: 80%;
        position: relative;
    }
    
    .fl-list ul{
        display: block;
        padding-bottom: 50px;
    }
    
    .fl-list ul li {
        margin-bottom: 10px;
        padding-left: 0px;
        margin-left: 0;
    }
    
    .fl-list ul li span{
        font-size: 30px;
        text-align: left;
        font-weight: bold;
    }
    
    .fl-policy{
        padding-left: 0;
    }
    
    .fl-policy a{
        color: #fff;
        margin-right: 15px;
    }
    
    .fl-line{
        position: relative;
        left: 0;
    }
    
    .fl-line::before{
        left: 0;
    }
    
    /* menu inner */
    
    .mbf-in-line .policy-link{
        display: block;
    }
    
    
    
    
    
    
    /* about page */
    
    #abo-1{
        padding-top: 80px;
    }
    
    .aboc1-main{
        height: 100px;
    }
    
    .abo-c1{
        background: url(../img/abo-c1.jpg) no-repeat;
        background-size: cover;
        background-position: left center;
    }
    
    .abos-main{
        margin-top: 0px;
        overflow: hidden;
    }
    
    .recs-stiky ul li::before{
        opacity: 1 !important;
    }
    
    .recs-stiky ul li p{
        color: #000;
        font-size: 16px;
    }
    
    .recs-mc-in{
        width: 80%;
        padding-left: 0px;
        padding-bottom: 0px;
    }
    
    .mask-landscape h1{
        font-size: 40px;
    }
    
    .abos-mc1-i-p1{
        padding-top: 40px;
    }
    
    .abos-mc1-i-p1 h2{
        width: 105%;
        font-size: 15px;
        font-weight: 600;
        text-align: justify;
        line-height: 2.2;
    }
    
    .mask-landscape{
        margin-bottom: 50px;
    }
    
    #service .recs-mc-in{
        width: 85%;
    }
    
    #ser-3 .ser-btn3{
        top: 0px;
    }
    
    /* mission */
    
    
    #abo-2{
        padding-top: 60px;
        overflow: hidden;
    }
    
    
    .abos-mc2-i-p1 h4{
        font-size: 24px;
        line-height: 1.7;
        padding-top: 40px;
        padding-bottom: 40px;
        letter-spacing: 0px;
    }
    
    .abos-mc-in{
        padding-top: 60px;
        padding-bottom: 20px;
        width: 115%;
        margin-left: -2%;
    }
    
    .abos-mc2-i-tx1{
        width: 100%;
        text-align: justify;
        font-size: 15px;
        padding-bottom: 40px;
    }
    
    .abos-mc2-i-img{
        width: 108%;
    }
    
    .abos-m-c2{
        padding-bottom: 0px;
    }
    
    /* VALUE */
    
    .com-mc4-in{
        width: 85%;
        padding-left: 0px;
    }
    
    .com-mc4-in h4{
        font-size: 35px;
        padding-top: 0px;
    }
    
    .com-mc4-htop{
        padding-top: 60px !important;
    }

    
    .com-mc4-in h5{
        font-size: 49px;
        padding-bottom: 40px;
    }
    
    .com-mc4-in h6{
        width: 100%;
        padding-bottom: 0px;
    }
    
    #abo-4{
        padding-top: 80px;
        padding-bottom: 0px;
    }
    
    /*  our service btn */
    
    .our-contents{
        height: 180px;
        margin-bottom: 350px;
        margin-top: 0px;
    }
    
    
    .ouc-in{
        padding: 0;
        padding-top: 240px;
        padding-bottom: 80px;
    }
    
    .ouc-in h4{
        display: none;
    }
    
    .ouc-in h5{
        color: #000;
        padding-bottom: 35px;
    }
    
    .our-contents .btn-wrap{
        mix-blend-mode: difference;
    }
    
    .sp-our-txt{
        width: 85%;
        margin: auto;
        font-size: 26px;
        color: #000;
        font-weight: bold;
        letter-spacing: 0.1em;
        line-height: 1.8;
        padding-bottom: 30px;
        padding-top: 140px;
        display: block;
    }
    
    .sp-our-txt span{
        display: inline-block;
    }
    
    
    /* service page */
    
    #ser-1{
        padding-top: 80px;
    }
    
    #ser-2{
        padding-top: 80px;
        padding-bottom: 60px;
    }
    
    .serc1-main{
        height: 300px;
    }
    
    .ser-m1-in{
        width: 100%;
    }
    
    .ser-m2-in{
        width: 100%;
    }
    
    .ser-m1-in h2{
        font-size: 30px;
        margin-bottom: 30px;
        letter-spacing: 0px;
    }
    
    .ser-m1-img1{
        width: 114%;
    }
    
    .ser-m1-pin h3{
        font-size: 22px;
    }
    
    .ser-m1-pin p{
        font-size: 14px;
    }
    
    .ser-en-1{
        top: -35px;
        font-size: 25vw;
    }
    
    .ser-m2-img1{
        width: 100%;
    }
    
    .ser-m2-list li{
        font-size: 15px;
    }
    
    .ser-m2-p1{
        text-align: justify;
        padding-bottom: 30px;
    }
    
    .ser-btn1{
        width: 100%;
        position: relative;
        left: 0;
    }
    
    .ser-btn1 .btn__inner{
        width: 100%;
    }
    
    .ser-btn1 .btn__inner p{
        text-align: center;
        position: relative;
        left: 20px;
    }
    
    .ser-btn2{
        width: 100%;
        position: relative;
        left: 0;
        margin-top: 10px;
        margin-bottom: 80px;
    }
    
    .ser-btn2 .btn__inner{
        width: 100%;
    }

    .ser-btn2 .btn__inner p{
        text-align: center;
        position: relative;
        left: 20px;
    }
    
    
    #ser-3{
        padding-top: 80px;
        margin-top: 0px;
        padding-bottom: 0px;
    }
    
    .ser-m2-img1{
        text-align: center;
    }
    
    
    .ser-btn3{
        width: 100%;
        position: relative;
        left: 0;
    }

    .ser-btn3 .btn__inner{
        width: 100%;
    }

    .ser-btn3 .btn__inner p{
        text-align: center;
        position: relative;
        left: 20px;
    }
    
    #ser-4{
        padding-top: 80px;
    }

    .uV-item{
        background: #fff;
    }
    
    .client-slider{
        padding-bottom: 0px;
    }
    
    .uV-in{
        padding-bottom: 50px;
        margin-top: 60px;
    }
    
    .uV-title{
        padding-bottom: 25px;
    }
    
    .wrap{
        height: 90px;
    }
    
    .story-slide{
        margin-top: 20px;
    }
    
    .story-slide ul{
        padding-right: 0px;
        padding-bottom: 30px;
    }
    
    .story-slide ul li{
        /*background: none !important;*/
    }
    
    
    .ser-m2-list{
        padding-bottom: 30px;
    }
    
    .ser-m2-img3{
        margin-bottom: 30px;
    }
    
    
    
    /* RECRUIT page */
    
    #rec-1{
        padding-top: 80px;
        padding-bottom: 90px;
    }
    
    .recs-main{
        margin-top: 0px;
    }
    
    .recc1-main h1{
        width: 80%;
        margin: auto;
        padding-left: 0px;
        font-size: 29px;
        padding-top: 45vw;
        padding-bottom: 30px;
    }
    
    .rec-sp-fff{
        background: #fff;
    }
    
    .recs-mc1-i-p1{
        width: 100%;
        padding-top: 60px;
    }
    
    .recs-mc1-i-p1 h4{
        width: 105%;
        font-size: 18px;
        text-align: justify;
        line-height: 2;
    }
    
    #rec-2 .inxc3-box{
        width: 90%;
    }
    
    .recs-mc2-en {
        font-size: 26vw;
        top: -28vw;
    }
    
    #rec-3 {
        padding-top: 80px;
        padding-bottom: 10px;
    }
    
    #rec-4{
        padding-top: 80px;
    }
    
    .recs-mc2-i-p1 {
        padding-top: 60px;
    }
    
    .recs-mc2-i-p1{
        width: 100%;
        padding-bottom: 50px;
    }
    
    .com-st-win{
        width: 100%;
    }
    
    .com-stW-in{
        height: 250px;
    }
    
    
    .recs-mc3-i-p1 {
        padding-top: 60px;
    }
    
    .recs-mc3-i-tx1 {
        width: 100%;
        font-size: 15px;
    }
    
    .want-btns{
        width: 100%;
    }
    
    .wantb-f{
        width: 100%;
        margin-bottom: 15px;
        padding: 40px 20px;
    }
    
    .wb-in-b-p1{
        font-size: 20px;
    }
    
    .wb-in-btn{
        right: 10px;
    }
    
    .wb-in-b-p1 small {
        font-size: 11px;
        top: -3px;
    }
    
    #rec-5{
        padding-bottom: 0px;
    }
    
    
    
    /* company page */
    
    #com-1{
        padding-top: 80px;
        padding-bottom: 80px;
    }
    
    .com-mc1-i-txt{
        width: 100%;
    }
    
    .com-open-btn p.com-ob-inp{
        font-size: 12px;
    }
    
    .com-open-btn p.com-ob-inp span{
        text-align: center;
        position: relative;
        z-index: 3;
        padding: 0;
    }
    
    .com-open-btn p.com-ob-inp::before{
        z-index: 1;
    }
    
    .com-open-btn p.com-ob-inp::after{
        width: 70%;
        height: 100%;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        margin: auto;
        background: #f5f4f0;
        content: "";
        z-index: 2;
    }
    
    .com-p1,.com-p2{
        font-size:clamp(14px, 1.8vw, 18px)!important ;
    }
    
    .com-close-btn::before {
        width: 47px;
        height: 47px;
        top: -43px;
    }
    
    .com-mc2-img{
        height: 300px;
    }
    
    /* member */
    
    .com-mc2-flex{
        width: 100%;
    }
    
    .com-mc2-fi{
        width: 100%;
    }
    
    #com-2{
        padding-top: 80px;
        padding-bottom: 80px;
    }
    
    #com-3{
        padding-top: 80px;
        padding-bottom: 40px;
    }
    
    #com-4{
        padding-top: 80px;
    }
    
    #com-5{
        padding-top: 80px;
    }
    
    /* 会社概要 */
    
    .com-m3-list{
        width: 105%;
    }
    
    .google-map{
        position: relative;
        right: auto;
        bottom: 0;
        left: 0;
        margin: 0;
        margin-top: 20px;
    }
    
    .com-m3-li2,.com-m3-li4{
        line-height: 2;
		font-size:14px;
    }
    
    .com-m3-li4 dt{
	clear:left;
	float:left;
	width:50%;
    }
    
    .com-m3-li4 dd{
	float:left;
	width:50%;
    }
    
    .com-ms-liin-i:first-child{
        width: 35%;
        font-size: 10px;
    }
    
    #com-5 .recs-mc-in{
        width: 85%;
    }
    
    .com-ms-li-in{
        margin-bottom: 0px;
    }
    
    .com-m5-wrap{
        width: 85%;
        margin-left: auto;
    }
    
    .his-year{
        font-size: 37px;
        left: -100px;
        letter-spacing: 0px;
        top: -10px;
    }
    
    .his-month{
        left: -145px;
        letter-spacing: 0px;
    }
    
    .his-title{
        padding-left: 15px;
    }
    
    .his-img{
        width: 90%;
        margin: 0;
        margin-top: 15px;
        margin-left: auto;
    }
    
    /* クライアント実績 */
    
    .client-list{
        width: 100%;
    }
    
    .com-m3-wrap{
        padding-top: 60px;
    }
    
    .cl-item{
        width: 100%;
    }
    
    .cl-item li{
        padding-bottom: 9px;
    }
    
    .last-li{
        bottom: -50px;
    }
    
 
@media (max-width:800px) {
    /* 会社概要 */
    .com-p1{
		font-size:12px;
}
    .his-year{
        font-size: 24px;
        left: -85px;
        letter-spacing: 0px;
        top: 0px;
    }
    
    .his-month{
        left: -145px;
        letter-spacing: 0px;
    }
    
    .his-title{
        padding-left: 15px;
    }
    
    .his-img{
        width: 90%;
        margin: 0;
        margin-top: 15px;
        margin-left: auto;
    }
    
    /* クライアント実績 */
    
    .client-list{
        width: 100%;
    }
    
    .com-m3-wrap{
        padding-top: 60px;
    }
    
    .cl-item{
        width: 100%;
    }
    
    .cl-item li{
        padding-bottom: 9px;
    }
    
    .last-li{
        bottom: -50px;
    }

}   
   
    
    
    
    /* commons item */
    
    .inxc2-item1 .sub{
        padding-bottom: 20px;
    }
    
    .recs-stiky{
        position: relative;
        left: 10%;
        padding-top: 60px;
        padding-left: 0px;
    }
    
    .common-title{
        width: 80%;
        padding-bottom: 80px;
    }
    
    .sec-in-txt h3{
        font-size: 24px;
        font-weight: bold;
    }
    
    
    .recs-stiky ul li{
        width: 210px;
        padding-bottom: 0px;
        display: table;
    }
    
    .recs-stiky ul li p::before{
        opacity: 1 !important;
    }
    
    #about .recs-stiky ul li{
        width: 130px;
    }
    
    
    /* キャンセル処理 */
    
    .fl-list ul li:hover span{
        animation: none;
    }
    
    .mbf-photo1,
    .mbf-photo2,
    .mbf-photo3,
    .mbf-photo4,
    .mbf-photo5,
    .mbf-photo6{
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }
    
    
    .inxc2-item2 h3 span{
        transform: translate(0px,0px);
        transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        opacity: 1;
    }
    
    .inxc2-i-p1 span{
        transform: translate(0px,0px);
        transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        opacity: 1;
    }
    
    .inx-c3-in .inxc2-item2{
        display: inline-block;
        transform: translate(0px,20px);
        transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
        opacity: 0;
    }
    
    /* loading */
    
    .load-img{
        width: 85vw;
        top: -75vw;
    }
    
    .progress{
        top: auto;
        bottom: 30vw;
    }
    
    /* fv add */
    
    .fvscroll-txt {
        left: 1vw;
        bottom: 56px;
        font-size: 10px;
    }
    
    .fv-scroll {
        height: 9vh;
        left: 1vw;
        bottom: -36px;
    }
    
    main.fv .fvscroll-txt {
        left: 5vw;
        bottom: 76px;
    }
    
    main.fv .fv-scroll {
        height: 16.5vh;
        left: 5vw;
        bottom: -70px;
    }


    .td1{
        transition-delay: 50ms !important;
    }

    .td2{
        transition-delay: 50ms !important;
    }

    .td3{
        transition-delay: 50ms !important;
    }

    .td4{
        transition-delay: 50ms !important;
    }

    .td5{
        transition-delay: 50ms !important;
    }

    .td6{
        transition-delay: 50ms !important;
    }

    .td7{
        transition-delay: 50ms !important;
    }

    .td8{
        transition-delay: 50ms !important;
    }

    .td9{
        transition-delay: 50ms !important;
    }

    .td10{
        transition-delay: 50ms !important;
    }

    .td11{
        transition-delay: 50ms !important;
    }

    .td12{
        transition-delay: 50ms !important;
    }

    .td13{
        transition-delay: 50ms !important;
    }

    .td14{
        transition-delay: 50ms !important;
    }

    .td15{
        transition-delay: 50ms !important;
    }

    .td16{
        transition-delay: 50ms !important;
    }

    .td17{
        transition-delay: 50ms !important;
    }

    .td18{
        transition-delay: 50ms !important;
    }

    .td19{
        transition-delay: 50ms !important;
    }

    .td20{
        transition-delay: 50ms !important;
    }

    
    
}/* end */