@charset "UTF-8";


/* ------------------------------
	.environment
------------------------------ */
.environment {
    background: #D7F0FF;
}
.environment .treatment .wrap{
    padding-bottom: 20px !important;
}
.environment .p_space{
    padding-top: 90px !important;
}
.environment .sp{
    display: none !important;
}
.environment .head_ttl_box{
    max-height: 470px !important;
    padding-bottom: 0;
    background: #a3e6ff;
}

.environment .head_ttl_box .slick-slide img {
    margin: 0 auto;
    /* max-width: inherit; */
    width: 100%;
    max-width: 1440px;
    /* object-fit: cover; */
    /* object-position: center; */
}
.environment .en_ttl{
    color: #011972;
    font-size: 7.3rem;
    font-family: 'brandon-grotesque', sans-serif;
    margin: 0;
    font-style: italic;
    letter-spacing: 0.03em;
    text-align: center;
    margin-bottom: 24px;
}
.environment .jp_ttl{
    font-size: 2.0rem;
    margin-bottom: 60px;
}

h3.ttl {
   line-height: 1.62;
   font-weight: bold;
   font-size: 2.7rem;
   -webkit-font-smoothing: antialiased;
   margin-bottom: 20px;
}
.work-environment{
    margin-bottom: 80px;
}
.environment_read{
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 130px;
}

.environment_detail .txt{
   font-size: 2rem;
   line-height: 1.59 !important;
}
.environment_read figure{
    margin: -70px 0 0 0;
}

.environment .txt{
    line-height: 1.8;
}

.environment .slick-dots li button{
    width: 12px !important;
    height: 12px !important;
    border-radius: 50%;
    border: 1px solid rgba(16, 16, 16, 0.3);
}
.slick-dots li.slick-active button{
    border: 1px solid rgba(255, 255, 255, 0.3);
}
.environment .slick-dots li + li {
    margin-left: 20px;
}

.office-introduction{
    margin-bottom: 50px;
}
.environment_box-detail{
    display: flex;
    justify-content: space-between;
    margin-bottom: 55px;
    border: 1px solid rgba(16, 16, 16, 0.3);
    border-radius: 40px;
    background: #fff;
    align-items: center;
}
.environment_box-detail:last-of-type{
    margin-bottom: 0;
}
.environment_box-detail h4 {
   color: #0164C8 !important;
   font-size: 3rem !important;
   font-weight: 500 !important;
   text-align: left !important;
}
.environment_box-detail h4 span {
   color: #00146E;
   display: block;
   font-size: 1.98rem;
   margin: 8px 0 30px 0;
   font-style: normal;
   font-weight: bold;
}
.environment_box-detail > div:first-of-type{
    width: 59.67%;
}
.environment_box-detail > div:last-of-type{
    width: 40.33%;
}
.environment_box-detail:nth-of-type(even) > div:first-of-type{
    width: 40.33%;
}
.environment_box-detail:nth-of-type(even) > div:last-of-type{
    width: 59.67%;
}

.environment_box-detail .slick-slider .slick-list{
    max-height: 448px;
}
.environment_box-detail .box_txt{
    padding: 0 62px 0 55px;
}

.environment_box-detail .box_txt .txt {
   font-size: 1.95rem;
   line-height: 1.65;
   letter-spacing: 0.05em;
}
.environment .environment_box-detail .slick-slide img{
    border-radius: 39px 0 0 39px;
}
.environment .environment_box-detail:nth-of-type(even) .slick-slide img{
    border-radius: 0 39px 39px 0;
}
.environment .environment_box .slick04 .slide_box{
    position: relative;
}
.environment .environment_box .slick04 .slide_box .slide_txt{
    position: absolute;
    top: 40px;
    left: 47px;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 10px;
    padding: 5px 20px;
    text-align: center;
    color: #fff;
    letter-spacing: 0.1em;
    line-height: 1.7;
}
.office-locations{
    background: #A0E6FF;
    padding: 80px 0 10px 0;
}
.office-locations .jp_ttl{
    margin-bottom: 20px;
}
.office-locations_map{
    position: relative;
    width: 1305px;
    margin: 0 auto;
    background: url(..//img/andstyle/environment/bg_office-locations.png);
    background-repeat: no-repeat;
    height: 973px;
    background-position: -66px 7px;
}
.office-locations_map .list li{
    position: absolute;
    width: 180px;
    height: 144px;
    background: #fff;
    border-radius: 16px;
    color: #00146E;
    font-weight: bold;
    text-align: center;
    padding:13px 10px 0 10px;
    font-size: 1.8rem;
    box-shadow: 0px 0px 14px 0px rgba(0, 20, 110, 0.2);
}

.office-locations_map .list li::before{
    content: '';
    position: absolute;
    left: 0;
    width: 62px;
    height: 1px;
    border-top: 2px solid #00146E;
}
.office-locations_map .list li::after{
    content: '';
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #00146E;
}
.office-locations_map .list li a,.office-locations_map .list li span{
    color: #00146E;
}

.office-locations_map .list li .small{
    font-size: 1.5rem;
}
.office-locations_map .list li img{
    margin-top: 12px;
    border-radius: 10px;
}
.office-locations_map .list li.list01{right: 53px;top: 87px;}
.office-locations_map .list li.list02{right: 246px;top: 240px;}
.office-locations_map .list li.list03{right: 53px;top: 350px;}
.office-locations_map .list li.list04{right: 53px;top: 650px;}
.office-locations_map .list li.list05{right: 248px;top: 650px;}
.office-locations_map .list li.list06{right: 506px;top: 628px;}
.office-locations_map .list li.list07{right: 627px;top: 205px;}
.office-locations_map .list li.list08{left: 323px;top: 700px;}
.office-locations_map .list li.list09{left: 132px;top: 230px;}
.office-locations_map .list li.list10{left: 53px;top: 570px;}

.office-locations_map .list li.list01::before{
    width: 247px;
    height: 26px;
    left: -247px;
    top: 74px;
    border-left: 2px solid #00146E;
}
.office-locations_map .list li.list02::before{
    width: 130px;
    height: 139px;
    left: -38px;
    top: 145px;
    border-right: 2px solid #00146E;
    border-top: none;
    border-bottom: 2px solid #00146E;
}
.office-locations_map .list li.list03::before{
    width: 354px;
    height: 43px;
    left: -261px;
    top: 144px;
    border-right: 2px solid #00146E;
    border-top: none;
    border-bottom: 2px solid #00146E;
}
.office-locations_map .list li.list04::before{
    width: 355px;
    height: 114px;
    left: -262px;
    top: -115px;
    border-right: 2px solid #00146E;
    border-bottom: none;
    border-top: 2px solid #00146E;
}
.office-locations_map .list li.list05::before{
    height: 114px;
    left: 29px;
    top: -115px;
    border-right: 2px solid #00146E;
    border-bottom: none;
    border-top: 2px solid #00146E;
}
.office-locations_map .list li.list06::before{
    width: 46px;
    height: 55px;
    left: 45px;
    top: -55px;
    border-right: 2px solid #00146E;
}
.office-locations_map .list li.list07::before{
    height: 205px;
    left: 32px;
    top: 144px;
    border-right: 2px solid #00146E;
    border-top: none;
}
.office-locations_map .list li.list08::before{
    width: 165px;
    height: 125px;
    left: 91px;
    top: -125px;
    border-left: 2px solid #00146E;
}
.office-locations_map .list li.list09::before{
    width: 109px;
    height: 38px;
    left: 88px;
    top: 144px;
    border-left: 2px solid #00146E;
    border-top: none;
    border-bottom: 2px solid #00146E;
}
.office-locations_map .list li.list10::before{
    width: 196px;
    height: 29px;
    left: 90px;
    top: -29px;
    border-left: 2px solid #00146E;
}


.office-locations_map .list li.list01::after{
    left: -251px;
    top: 96px;
}
.office-locations_map .list li.list02::after{
    left: -42px;
    top: 277px;
}
.office-locations_map .list li.list03::after{
    left: -267px;
    top: 180px;
}
.office-locations_map .list li.list04::after{
    display: none;
}
.office-locations_map .list li.list05::after{
    display: none;
}
.office-locations_map .list li.list06::after{
    left: 42px;
    top: -60px;
}
.office-locations_map .list li.list07::after{
    left: 87px;
    top: 346px;
}
.office-locations_map .list li.list08::after{
    left: 256px;
    top: -130px;
}
.office-locations_map .list li.list09::after{
    left: 192px;
    top: 175px;
}
.office-locations_map .list li.list10::after{
    left: 283px;
    top: -34px;
}
.office-locations_map-sp{
    display: none;
}
@media screen and (min-width: 1440px) {
    .environment .head_ttl_box .slick-slide img {
        width: 100%;
        height: 470px;
        object-fit: cover;
        object-position: center;
    }
    .environment .environment_box-detail.comingsoon .slick-slide img{
        height: 448px;
    }
}
@media screen and (max-width: 768px){
    .environment .head_ttl_box .slick-slide img{
        max-width: none;
    }
    .environment .sp{
        display: inline-block !important;
    }
    .environment .pc{
        display: none !important;
    }
    .environment .p_space{
        padding-top: 7.5vw !important;
    }
    .environment .en_ttl{
        font-size: 3.2rem;
        margin-bottom: 2vw;
    }
    .environment .jp_ttl{
        margin-bottom: 1.8rem;
    }
    .environment_read{
        flex-wrap: wrap;
        margin-top: 0;
    }
    .environment_read .environment_detail{
        order: 2;
    }
    .environment_read .environment_img{
        order: 1;
        margin-bottom: 4.5vw;
        width: 100%;
    }
    .environment_read .environment_detail .ttl{
        text-align: center;
        font-size: 2.1rem;
        margin-bottom: 2.5vw;
    }
    .environment_detail .txt{
        font-size: 1.65rem;
        line-height: 1.6 !important;
    }
    .environment_read figure{
        margin: 0;
    }
    .environment_read figure img{
        width: 73%;
        margin: 0 auto;
        display: block;
    }
    .work-environment{
        margin-bottom: 8vw;
    }
    .environment .head_ttl_box{
        max-height: inherit !important;
    }
    .environment_box-detail{
        flex-wrap: wrap;
        border-radius: 20px;
        margin-bottom: 5vw;
    }
    .environment .environment_box-detail .en_ttl{
        font-size: 2.45rem !important;
    }
    .environment .environment_box-detail .slick-slide img,
    .environment .environment_box-detail:nth-of-type(even) .slick-slide img{
        border-radius: 19px 19px 0 0;
    }
    .environment .environment_box .slick04 .slide_box .slide_txt{
        top: 3vw;
        left: 3.5vw;
        padding: 1.5vw 4vw;
        line-height: 1.4;
        font-size: 1.2rem;
    }
    .environment .slick-dots li + li{
        margin-left: 16px;
    }
    .environment_box-detail .box_txt .txt{
        font-size: 1.6rem;
        line-height: 1.75;
    }
    .environment_box-detail h4 span{
        font-size: 1.75rem;
        margin: 1vw 0 1.5vw 0;
    }
    .environment_box-detail > div:first-of-type,
    .environment_box-detail:nth-of-type(even) > div:last-of-type{
        order: 1;
        width: 100%;
        margin-bottom: 4.5vw;
        padding: 0;
    }
    .environment_box-detail > div:last-of-type,
    .environment_box-detail:nth-of-type(even) > div:first-of-type{
        order: 2;
        width: 100%;
        padding: 0 6vw;
        margin-bottom: 4.5vw;
    }
    .environment .slick-slide img{
        max-width: 100%;
    }
    .environment .slick-dots li button{
        width: 8px !important;
        height: 8px !important;
        border: 0.5px solid rgba(16, 16, 16, 0.3);
    }
    .slick-dots li.slick-active button{
        border: 0.5px solid rgba(255, 255, 255, 0.3);
    }
    .office-introduction{
        margin-bottom: 0;
    }
    .office-locations{
        padding: 7vw 0 2vw 0;
    }
    .office-locations .jp_ttl{
        margin-bottom: 1vw;
    }
    .office-locations_map{
        background: url(..//img/andstyle/environment/bg_office-locations_sp.png);
        background-repeat: no-repeat;
        width: 100%;
        height: 380px;
        background-position:bottom calc(50% - -7px) right calc(50% - 11px);
        background-size: contain;
    }
    .office-locations_map .list li{
        width: 100px;
        height: auto;
        font-size: 1rem;
        line-height: 1.5;
        padding: 4px 9px;
        letter-spacing: 0.05rem;
        color: #141414;
        box-shadow: 0px 0px 10px 0px rgba(0, 20, 110, 0.2);
    }
    .office-locations_map .list li img{
        display: none;
    }
    .office-locations_map .list li .small{
        font-size: 1.1rem;
    }
    .office-locations_map .list li.list01 {
        right: calc(50% - 180px);
        top: calc(50% - 90px);
    }
    .office-locations_map .list li.list02 {
        right: calc(50% - 180px);
        top: calc(50% - -4px);
    }
    .office-locations_map .list li.list03 {
        right: calc(50% - 65px);
        top: calc(50% - 100px);
    }
    .office-locations_map .list li.list04 {
        right: calc(50% - 180px);
        top: calc(50% - -94px);
    }
    .office-locations_map .list li.list05 {
        right: calc(50% - 65px);
        top: calc(50% - 70px);
    }
    .office-locations_map .list li.list06 {
        right: calc(50% - 110px);
        top: calc(50% - -125px);
    }
    .office-locations_map .list li.list07 {
        right: calc(50% - -5px);
        top: calc(50%);
    }
    .office-locations_map .list li.list08 {
        right: 0;
        top: calc(50% - -107px);
        left: calc(50% - 87px);
    }
    .office-locations_map .list li.list09 {
        right: 0;
        top: calc(50% - 39px);
        left: calc(50% - 185px);
    }
    .office-locations_map .list li.list10 {
        right: 0;
        top: calc(50% - -142px);
        left: calc(50% - 187px);
    }
    .office-locations_map .list li::before{
        border-top: 1.5px solid #00146E !important;
    }
    .office-locations_map .list li.list01::before{
        width: 30px;
        height: 20px;
        left: calc(50% - 22px);
        top: calc(50% - 32px);
        border-left: none;
        border-right: 1.5px solid #00146E;
    }
    .office-locations_map .list li.list02::before{
        width: 30px;
        height: 47px;
        left: calc(50% - 34px);
        top: calc(50%);
        border-right: 1.5px solid #00146E;
        border-top: none !important;
        border-bottom: none;
        transform: rotate(34deg);
    }
    .office-locations_map .list li.list03::before{
        display: none;
    }
    .office-locations_map .list li.list04::before{
        width: 30px;
        height: 18px;
        left: calc(50% - 32px);
        top: calc(50% - 35px);
        border-right: 1.5px solid #00146E;
        border-top: none !important;
        border-bottom: none;
        transform: rotate(156deg);
    }
    .office-locations_map .list li.list05::before{
        height: 120px;
        width: 72px;
        left: calc(50% - -1px);
        top: calc(50% - -11px);
        border-left: 1.5px solid #00146E ! important;
        border-bottom: 1.5px solid #00146E ! important;
        border-top: none !important;
        border-right: none;
    }
    .office-locations_map .list li.list06::before{
        width: 39px;
        height: 32px;
        left: calc(50% - 39px);
        top: calc(50% - 44px);
        border-right: 1.5px solid #00146E;
    }
    .office-locations_map .list li.list07::before{
        height: 63px;
        left: calc(50% - -1px);
        top: calc(50% - -11px);
        border-right: none;
        border-left: 1.5px solid #00146E !important;
        border-top: none !important;
        border-bottom: 1.5px solid #00146E !important;
        width: 32px;
    }
    .office-locations_map .list li.list08::before{
        width: 10px;
        height: 13px;
        left: calc(50% - -16px);
        top: calc(50% - 25px);
        border-left: 1.5px solid #00146E;
        border-top: none !important;
    }
    .office-locations_map .list li.list09::before{
        width: 10px;
        height: 20px;
        left: calc(50% - 22px);
        top: calc(50% - -12px);
        border-left: 1.5px solid #00146E;
        border-top: none !important;
        border-bottom: none ! IMPORTANT;
    }
    .office-locations_map .list li.list10::before{
        width: 10px;
        height: 60px;
        left: calc(50% - 17px);
        top: calc(50% - 72px);
        border-left: 1.5px solid #00146E;
        border-top: none !important;
    }

    .office-locations_map .list li::after{
        width: 6px;
        height: 6px;
    }
    .office-locations_map .list li.list01::after{
        left: calc(50% - 25px);
        top: calc(50% - 34px);
    }
    .office-locations_map .list li.list02::after{
        left: calc(50% - 22px);
        top: calc(50% - -48px);
    }
    .office-locations_map .list li.list03::after{
        left: calc(50% - -72px);
        top: calc(50% - -157px);
    }
    .office-locations_map .list li.list04::after{
        display: block;
        left: calc(50% - 37px);
        top: calc(50% - 31px);
    }
    .office-locations_map .list li.list06::after{
        left: calc(50% - 40px);
        top: calc(50% - 47px);
    }
    .office-locations_map .list li.list07::after{
        left: calc(50% - -33px);
        top: calc(50% - -71px);
    }
    .office-locations_map .list li.list08::after{
        left: calc(50% - -13px);
        top: calc(50% - 28px);
    }
    .office-locations_map .list li.list09::after{
        left: calc(50% - 24px);
        top: calc(50% - -32px);
    }
    .office-locations_map .list li.list10::after{
        left: calc(50% - 19px);
        top: calc(50% - 78px);
    }
    .office-locations_map-sp{
        display: block;
    }
    .office-locations_map-sp .list{
        display: flex;
        flex-wrap: wrap; 
    }
    .office-locations_map-sp .list li{
        width: 49%;
        margin-bottom: 4.5%;
        background: #fff;
        border-radius: 16px;
        color: #00146E;
        font-weight: bold;
        text-align: center;
        padding: 4% 3% 3%;
        font-size:1.4rem;
    }
    .office-locations_map-sp .list li:nth-child(odd){
        margin-right: 2%;
    }
    .office-locations_map-sp .list li img{
        margin-top: 9%;
        border-radius: 9.44px;
    }

}