body {
    background: #FAFAFC
}

.about1 {
    position: relative;
    height: calc(100vh + 3000px)
}

.about1 .fix {
    width: 100%;
    height: 100vh;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    overflow: hidden
}

.about1 .fix .first {
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center
}

.about1 .fix .first .wrap {
    position: relative;
    top: -55px
}

.about1 .fix .first .wrap .title {
    font-size: 30px;
    color: #111111;
    line-height: 44px;
    text-align: center;
    margin: 0 0 50px
}

.about1 .fix .first .wrap .text {
    width: 972px;
    font-weight: 400;
    font-size: 18px;
    color: #111111;
    line-height: 40px;
    margin: auto;
    text-align: center
}

html[lang="ja"] .about1 .fix .first .wrap .text{
    width: 1000px;
}

.about1 .fix .first .wrap .fig {
    margin: 332px 0 0 0;
    display: flex;
    justify-content: center
}

.about1 .fix .first .wrap .fig .item {
    text-align: center
}

.about1 .fix .first .wrap .fig .item:not(:last-child) {
    margin: 0 180px 0 0
}

.about1 .fix .first .wrap .fig .item span {
    font-family: 'Archivo', sans-serif;
    font-weight: 400;
    font-size: 50px;
    color: #264083;
    margin: 0 0 10px;
    display: block
}

.about1 .fix .first .wrap .fig .item p {
    font-weight: 400;
    font-size: 18px;
    color: #666666
}

.about1 .fix .last {
    position: absolute;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    overflow: hidden;
    background: #FAFAFC;
    display: flex;
    align-items: center;
    justify-content: center;
    --w: 293px;
    --h: 53px;
    --d: calc(50vw - var(--w));
    --c: calc(50vh - var(--h));
    --b: calc(50vw - var(--w));
    --a: calc(50vh - var(--h));
    clip-path: inset(var(--a) var(--b) var(--c) var(--d))
}

.about1 .fix .last .map {
    width: 100%;
    height: 100%;
    position: relative
}

.about1 .fix .last .map .mask_close {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99;
    transform: scale(10)
}

.about1 .fix .last .map .mask_close .joke {
    width: 100%;
    height: 100%;
    display: none
}

.about1 .fix .last .map .mask_close .joke img {
    width: 100%;
    height: 100%
}

.about1 .fix .last .map .position {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.about1 .fix .last .map .position .point {
    position: absolute;
    display: none;
    align-items: center
}

.about1 .fix .last .map .position .point.on {
    display: flex
}

.about1 .fix .last .map .position .point .circle {
    width: 15px;
    height: 15px;
    background: #D2292E;
    border-radius: 50%;
    margin: 0 18px 0 0
}

.about1 .fix .last .map .position .point .text {
    padding: 9px 13px;
    background: #FFFFFF;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    font-size: 16px;
    color: #111111;
    position: relative;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.05)
}

.about1 .fix .last .map .position .point .text:after {
    content: '';
    position: absolute;
    left: -6px;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-right: 6px solid #fff
}

.about1 .fix .last .map .position .point1 {
    top: 49.6875vh;
    left: 18.8541666667vw
}

.about1 .fix .last .map .position .point2 {
    top: 39.1666666667vh;
    left: 32.34375vw
}

.about1 .fix .last .map .position .point3 {
    top: 20.5208333333vh;
    left: 41.6666666667vw
}

.about1 .fix .last .map .position .point4 {
    top: 30.1041666667vh;
    left: 58.3333333333vw
}

.about1 .fix .last .map .position .point5 {
    top: 48.9583333333vh;
    left: 76.1458333333vw
}

.about1 .fix .last .map .position .point6 {
    top: 67.1875vh;
    left: 50.2083333333vw
}

.about1 .fix .last .map .img {
    width: 100%;
    height: 100%
}

@media screen and (max-width: 1919px) {
    .about1 .fix .first .wrap{
        top: -2.8645833333vw;
    }
    .about1 .fix .first .wrap .title{
        font-size: 1.5625vw;
        line-height: 2.2916666667vw;
        margin: 0px 0px 2.6041666667vw;
    }
    .about1 .fix .first .wrap .text{
        width: 50.625vw;
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
    }

    html[lang="ja"] .about1 .fix .first .wrap .text{
        width: 52.083vw;
    }
    .about1 .fix .first .wrap .fig{
        margin: 17.2916666667vw 0px 0px;
    }
    .about1 .fix .first .wrap .fig .item:not(:last-child){
        margin: 0px 9.375vw 0px 0px;
    }
    .about1 .fix .first .wrap .fig .item span{
        font-size: 2.6041666667vw;
        margin: 0px 0px 0.5208333333vw;
    }
    .about1 .fix .first .wrap .fig .item p{
        font-size: 0.9375vw;
    }
    .about1 .fix .last{
        --w: 15.2604166667vw;
        --h: 2.7604166667vw;
    }
    .about1 .fix .last .map .position .point .circle{
        width: 0.78125vw;
        height: 0.78125vw;
        margin: 0px 0.9375vw 0px 0px;
    }
    .about1 .fix .last .map .position .point .text{
        padding: 0.46875vw 0.6770833333vw;
        border-radius: 0.2604166667vw;
        font-size: 0.8333333333vw;
        box-shadow: rgba(0, 0, 0, 0.05) 0px 0.2083333333vw 0.4166666667vw;
    }
    .about1 .fix .last .map .position .point .text::after{
        left: -0.3125vw;
        border-top: 0.2083333333vw solid transparent;
        border-bottom: 0.2083333333vw solid transparent;
        border-right: 0.3125vw solid rgb(255, 255, 255);
    }
}

@media screen and (max-width: 1024px) {
    .about1 .fix .first .wrap .title br{
        display: none;
    }
    .about1{
        height: auto;
        padding: 60px 0;
    }
    .about1 .fix{
        height: auto;
    }
    .about1 .fix .first{
        height: auto;
    }
    .about1 .fix .first .wrap .title{
        font-size: 19px;
        line-height: 30px;
        margin: 0 0 20px;
    }
    .about1 .fix .first .wrap {
        top: 0;
        width: 90%;
    }
    .about1 .fix .first .wrap .text{
        width: 100%;
        font-size: 13px;
        line-height: 28px;
    }
    html[lang="ja"] .about1 .fix .first .wrap .text{
        width: 100%;
    }
    .about1 .fix .first .wrap .fig{
        margin: 30px 0 0 0;
        gap: 15px;
    }
    .about1 .fix .first .wrap .fig .item span{
        font-size: 24px;
        margin: 0 0 10px;
    }
    .about1 .fix .first .wrap .fig .item p{
        font-size: 9px;
    }
    .about1 .fix .first .wrap .fig .item:not(:last-child) {
        margin: 0;
    }
    .about1 .fix .first .wrap .sj_img{
        display: block!important;
        width: 100%;
        margin: 25px auto 0;
    }
    .about1 .fix .first .wrap .sj_img img{
        width: 100%;
    }
    .about1 .fix .last{
        display: none;
    }
}
