.maprouctJ {
    position: relative;
}

.maprouctJ:before {
    content: "";
    position: absolute;
    width: 69%;
    height: calc(100% + 135px);
    background: white;
    right: 0px;
    top: -135px;
    moz-transform-origin: bottom;
    -moz-transform: skewX(20deg);
    -webkit-transform-origin: bottom;
    -webkit-transform: skewX(-20deg);
    -o-transform-origin: bottom;
    -o-transform: skewX(-20deg);
    -ms-transform-origin: bottom;
    -ms-transform: skewX(-20deg);
    transform-origin: bottom;
    transform: skewX(-20deg);
    z-index: -2;
}

.maprouctJ:after {
    content: "";
    position: absolute;
    width: 27%;
    height: calc(100% + 120px);
    background: #dcdcdc;
    left: -36%;
    top: -134px;
    moz-transform-origin: bottom;
    -moz-transform: skewX(20deg);
    -webkit-transform-origin: bottom;
    -webkit-transform: skewX(-20deg);
    -o-transform-origin: bottom;
    -o-transform: skewX(-20deg);
    -ms-transform-origin: bottom;
    -ms-transform: skewX(-20deg);
    transform-origin: bottom;
    transform: skewX(-20deg);
    z-index: 0;
}

#poouint.maprouctJ:after {
    top: -160px;
    left: -34%;
}

.maprouctJ .titleJ {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 2vw;
    z-index: 2;
}

.maprouctJ .titleJ .Jmbox01 {
    display: flex;
}

.maprouctJ .titleJ .Jmbox01 .comcolor {
    width: 320px;
    height: 70px;
    background: #707d57;
}

.maprouctJ .titleJ .Jmbox02 {
    display: flex;
    flex-direction: column;
    margin: 0 80px;
}

.maprouctJ .titleJ .Jmbox03 {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    margin-right: 14%;
}

.maprouctJ .titleJ .Jmbox03:before {
    content: "";
    width: 12%;
    height: 2px;
    background-color: #eeeeee;
    position: absolute;
    right: 0;
    top: 51%;
}

.maprouctJ .titleJ .Jmbox03 p {
    font-size: 90px;
    color: #d5d5d5;
    opacity: 0.4;
    font-weight: 700;
    line-height: 100%;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.maprouctJ .titleJ h2 {
    font-size: max(3.3*(1vw + 1vh) / 2, 31px);
    color: #3d4a24;
}

.maprouctJ .titleJ span {
    font-size: 22px;
    color: #8cb048;
    font-weight: 700;
    line-height: 100%;
}

.maprouctJ .maohtobox {
    margin-top: 60px;
    padding-bottom: 100px;
}

.maprouctJ .maohtobox .bomitem {
    margin: 25px 12px;
    background: #ffffff;
    padding: 10px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgb(33 32 36 / 10%);
}

.maprouctJ .slider1 p {
    font-size: 28px;
    line-height: 180%;
    font-weight: 700;
}

.maprouctJ .fmbox {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 5vw 0 2vw;
}

.maprouctJ .fmbox .poright {
    display: flex;
    flex-direction: column;
    width: 27.3%;
}

.maprouctJ .btnBox {
    margin-top: -25px;
}

.maprouctJ .fmbox .pocenter {
    display: flex;
    flex-direction: column;
    width: 41.3%;
    margin-left: -5%;
}

.maprouctJ .fmbox .pocenter .slick-slide {
    opacity: 0;
}

.maprouctJ .fmbox .pocenter .slick-active {
    opacity: 1;
    -moz-transform: scale(1.07);
    -webkit-transform: scale(1.07);
    -o-transform: scale(1.07);
    -ms-transform: scale(1.07);
    transform: scale(1.07);
}

.slider1 .malist.slick-slide {
    opacity: 0 !important;
}

.slider1 .malist.slick-active {
    opacity: 1 !important;
}

.maprouctJ .fmbox .pocenter .slick-active:before {
    position: absolute;
    content: "";
    width: 184px;
    height: 367px;
    background: #f7f7f7;
    z-index: -1;
    left: 30%;
    top: 11px;
    box-shadow: 0 0 4px 1px #c7c7c76e;
    box-sizing: border-box;
    outline: 1px solid hsl(15.92deg 88.29% 56.47% / 69%);
    outline-offset: -24px;
}

.maprouctJ .fmbox .poleft {
    display: flex;
    flex-direction: column;
    width: 28.3%;
    height: 518px;
    overflow: hidden;
}

.maprouctJ .fmbox .poleft .poiconlist {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: #d2d2d2 1px solid;
    border-top: #d2d2d2 1px solid;
    margin: 4px 0 10px;
}

.maprouctJ .fmbox .poleft .poiconlist.slick-current svg {
    fill: #f2622e;
}

.maprouctJ .fmbox .poleft .poiconlist.slick-current a {
    color: #f2622e;
}

.maprouctJ .fmbox .poleft .poiconlist a {
    font-size: 19px;
}

.maprouctJ .fmbox .poleft .slick-track {
    height: 425px !important;
    overflow-y: scroll;
    overflow-x: hidden;
    margin-top: 15px;
}

.maprouctJ .fmbox .poleft .slick-track::-webkit-scrollbar {
    width: 5px;
}

.maprouctJ .fmbox .poleft .slick-track::-webkit-scrollbar-track {
    background: #ffebe4;
}

.maprouctJ .fmbox .poleft .slick-track::-webkit-scrollbar-thumb {
    background: #f2622e;
}


.maprouctJ .fmbox .poleft svg {
    width: 80px;
    height: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.maprouctJ .poinfo {
    position: relative;
    display: flex;
    padding: 4vw 1vw 4vw 0vw;
    margin-top: 80px;
    justify-content: center;
}

.maprouctJ .poinfo p {
    color: white;
    width: 282px;
    max-width: 100%;
    font-size: 16px;
}

.maprouctJ .poinfo:before {
    position: absolute;
    content: "";
    width: 174%;
    height: 100%;
    background: #f2622e;
    z-index: -1;
    -moz-transform-origin: bottom;
    -moz-transform: skewX(-20deg);
    -webkit-transform-origin: bottom;
    -webkit-transform: skewX(-20deg);
    -o-transform-origin: bottom;
    -o-transform: skewX(-20deg);
    -ms-transform-origin: bottom;
    -ms-transform: skewX(-20deg);
    transform-origin: bottom;
    transform: skewX(-20deg);
    left: -36%;
    top: 0;
}

@media screen and (max-width: 1470px) {

    #poouint.maprouctJ:before {
        height: calc(100% + 100px);
    }

    .maprouctJ .maohtobox .bomitem {
        margin: 15px 9px;
    }

    .maprouctJ .titleJ .Jmbox02 {
        margin: 0 25px;
    }

    .maprouctJ .titleJ .Jmbox01 .comcolor {
        width: 220px;
    }

    .maprouctJ:after {
        left: -41%;
        top: -100px;
    }

    #poouint.maprouctJ:after {
        top: -100px;
        left: -37%;
    }

    .maprouctJ:before {
        top: -101px;
        width: 69.8%;
    }

    .maprouctJ .poinfo {
        margin-top: 40px;
        display: flex;
    }

    .maprouctJ .poinfo:before {
        width: 150%;
        left: -28%;
    }

    .maprouctJ .fmbox .poleft .poiconlist {
        padding: 9px 0;
    }

    .maprouctJ .fmbox .poleft {
        height: 453px;
    }

    .maprouctJ .titleJ .Jmbox03 p {
        font-size: 60px;
    }

    .maprouctJ .titleJ h2 {}

    .maprouctJ .titleJ span {
        font-size: 18px;
    }

    .maprouctJ .fmbox .poright {
        width: 24.3%;
    }

    .maprouctJ .fmbox .pocenter {
        width: 43.3%;
        margin-left: 0;
    }
}

@media screen and (max-width: 1280px) {
    .maprouctJ:after {
        top: -90px;
    }

    .maprouctJ:before {
        top: -90px;
    }
}

@media screen and (max-width: 1140px) {
    .maprouctJ .titleJ .Jmbox01 .comcolor {
        display: none;
    }

    .maprouctJ .titleJ .Jmbox03 p {
        font-size: 41px;
    }

    .maprouctJ .titleJ .Jmbox02 {
        margin: 0 50px;
    }

    .maprouctJ:after {
        left: -46%;
    }

    .maprouctJ .poinfo {
        margin-top: 20px;
    }

    .maprouctJ .fmbox .pocenter .slick-active:before {
        height: 337px;
    }
}

@media screen and (max-width: 1024px) {
    #poouint.maprouctJ:before {
        height: calc(100% + 90px);
    }
}

@media screen and (max-width: 800px) {
    .maprouctJ .fmbox {
        display: flex;
        flex-wrap: wrap;
    }

    .maprouctJ .fmbox .poright {
        width: 100%;
        order: 2;
    }

    .maprouctJ .fmbox .pocenter {
        width: 400px;
        order: 1;
        max-width: 90%;
        margin: 0 auto;
    }

    .maprouctJ .fmbox .poleft {
        order: 3;
        width: 400px;
        margin: 45px auto;
        max-width: 90%;
    }

    .maprouctJ .fmbox .pocenter .slick-active:before {
        height: 300px;
    }

    .maprouctJ:after {
        display: none;
    }

    .maprouctJ .titleJ .Jmbox03 p {
        font-size: 74px;
    }
}

@media screen and (max-width: 800px) {
    .maprouctJ .titleJ .Jmbox03 p {
        display: none;
    }

    .maprouctJ .titleJ h2 {}

    .maprouctJ .titleJ span {
        font-size: 14px;
    }

    .maprouctJ .fmbox .pocenter .slick-active:before {
        display: none;
    }
}

@media screen and (max-width: 768px) {
    .maprouctJ:before {
        top: -54px;
        width: 72.8%;
    }

    #poouint.maprouctJ:before {
        height: calc(100% + 59px);
        width: 80%;
        top: -60px;
    }

    .maprouctJ .maohtobox {
        margin-top: 30px;
        padding-bottom: 50px;
    }
}

@media screen and (max-width: 640px) {
    .maprouctJ:before {
        width: 138%;
    }

    .maprouctJ .poinfo {
        padding: 41px 0;
    }
}

@media screen and (max-width: 550px) {
    .maprouctJ .btnBox {
        margin-top: -10px;
        margin-left: 13%;
    }

    .maprouctJ .poinfo:before {
        left: -20px;
        background: unset;
    }

    .maprouctJ .poinfo p {
        color: #353535;
    }

    .maprouctJ .poinfo {
        padding: 40px 0;
        margin-top: 3px;
    }

    .maprouctJ .fmbox .poleft svg {
        width: 46px;
        height: 46px;
    }

    .maprouctJ .fmbox .poleft .poiconlist {
        padding: 10px 0;
        margin: 4px 0 4px;
    }

    .maprouctJ .fmbox .poleft .poiconlist a {
        font-size: 19px;
        margin-left: 10px;
    }

    .maprouctJ .fmbox .poleft .slick-track {
        height: 368px !important;
    }

    .maprouctJ .slider1 p {
        font-size: 20px;
    }

    .slider1.slick-slider {
        margin-bottom: 0;
        margin-left: 11%;
    }

    .maprouctJ:before {
        top: 0;
        right: 16%;
        width: 145%;
        display: none;
    }

    .maprouctJ .littetitle {
        margin-left: 12%;
    }

    .maprouctJ .titleJ .Jmbox02 {
        margin: 0 0px 0px 20px;
    }

    .maprouctJ .fmbox .poleft {
        height: 360px;
        margin: 25px auto;
    }
}

@media screen and (max-width: 480px) {
    .maprouctJ:before {
        top: -90px;
        right: -15%;
        width: 180%;
    }
}