@charset "utf-8";

/* ##############################################################################

    Page-IBSNetwork Style

############################################################################## */

/* network */
.page-network section:first-child{
    padding-top: 120px;
}
.page-network section:last-child{
    padding-top: 300px;
    padding-bottom: 120px;
    margin-top: -50px;
}
.page-network .section-under-clippath{
    padding-bottom: 120px;
}
/* ページナビ・バナー */
.page-network .contact-links{
    margin-bottom: 100px;
    margin-top: 0;
    padding-top: 100px;
    display: flex;
    justify-content: center;
}
.page-network .btn-contact-link span{
    width: 100%;
    padding-right: 0;

    padding-right: 20px;    
}

/* add */
.page-network .btn-contact-link{
    width: fit-content;
    max-width: none;
    border:none;
    padding: 0 30px;
}
.page-network .btn-contact-link span:after{
    background: none;
    border-right: 1px solid;
    border-bottom: 1px solid;
    rotate: 45deg;
    width: 10px;
    height: 10px;
    top: 7px;
}
.page-network .btn-contact-link span::before{
    content: "";
    display: block;
    height: 1px;
    width: 0;
    position: absolute;
    background-color: #000;
    transition: .3s;
    bottom: 0;
  }

.page-network .btn-contact-link:hover span::before {
    width: 100%;
}
/* add END */
.page-network .jump-point{
    padding-top: 200px;
    margin-top: -70px;
}
/* 拠点情報 */
.page-network .base-network{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.page-network .base-network-box{
    max-width: 1000px;
    width: 100%;
    padding: 110px 30px 60px;
    position: relative;
    margin: -60px 0;
}
.page-network .base-network-box:first-child{
    padding: 120px 30px 60px;
}
.page-network .base-network-box h4{
    font-size: 24px;
    border-bottom: solid 1px var(--main-color-blue);
    padding-bottom: 5px;
    margin-bottom: 15px;
}
.page-network .base-info{
    display: flex;
    justify-content: space-between;
}
.page-network .base-txt{
    width: 100%;
    max-width: 560px;
    min-width: 350px;
}
.page-network .base-txt p:not(:last-child){
    margin-bottom: 1rem;
}
.page-network .base-txt a{
    text-decoration: underline;
}

.page-network .base-map{
    width: 100%;
    max-width: 350px;
    height: 100%;
    max-height: 250px;
}
.page-network .txt-box{
    display: flex;
}
.page-network .txt-box-left{
    width: 120px;
}
.page-network .base-txt-overseas{
    width: 100%;
    max-width: 560px;
    min-width: 350px;
}
.page-network .base-txt table.world-data tr:nth-child(2) th,
.page-network .base-txt table.world-data tr:nth-child(2) td{
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.page-network .base-txt table.world-data tr:nth-child(2) th{
    width: 87px;
} 

.page-network .base-network-box .tag-overseas{
    color: #fff;
    font-weight: bold;
    width: 120px;
    line-height: 2rem;
    text-align: center;
    position: absolute;
}
.page-network .base-network-box .tag-overseas-cp{
    background: var(--main-color-blue);
    border: solid 2px var(--main-color-blue);
    top: 110px;
    right: 30px;
}
/* .page-network .base-network-box:first-child .tag-overseas-cp{
    top: 0;
} */
.page-network .base-network-box .tag-overseas-agency{
    background: #fff;
    border: solid 2px var(--main-color-blue);
    color: var(--main-color-blue);
    top: 110px;
    right: 30px;
}
.page-network .base-network-box img{
    width: 250px;
}
.page-network .base-network-box .tag-overseas-en{
    width: 250px;
}
/* 日本拠点地図 */
.page-network .map-japan{
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    margin-top: -120px;
}
.cls-1-ja, .cls-2-ja {
    fill: #1b5389;
    font-weight: 700;
  }
  .cls-3-ja, .cls-4, .cls-5-ja, .cls-6-ja {
    stroke-miterlimit: 10;
  }
  .cls-3-ja, .cls-7-ja, .cls-5-ja, .cls-8, .cls-9 {
    fill: none;
  }
  .cls-3-ja, .cls-5-ja, .cls-6-ja {
    stroke: #195386;
    stroke-width: 2px;
  }
  .cls-10-ja {
    font-size: 14px;
  }
  .cls-11-ja {
    fill: #bad9b4;
  }
  .cls-12-ja {
    fill: #ede236;
  }
  .cls-12-ja, .cls-4, .cls-5-ja {
    isolation: isolate;
  }
  .cls-12-ja, .cls-5-ja {
    font-family: KozGoPr6N-Regular-90ms-RKSJ-H, 'Kozuka Gothic Pr6N';
    font-size: 30.6px;
  }
  .cls-4 {
    fill: #195386;
    opacity: .3;
    stroke: #efeeee;
    stroke-width: .5px;
  }
  .cls-13-ja {
    fill:  #fff;
  }
  .cls-6-ja {
    fill: #fff;
  }
  .cls-8 {
    clip-path: url(#clippath);
  }
  .cls-14-ja {
    fill: #185388;
  }
  .cls-15-ja {
    font-size: 20px;
  }
  .cls-2-ja {
    font-size: 16px;
  }
.page-network .map-japan .cls-13-ja{
    stroke: var(--main-color-blue);
    stroke-width: 2px;
    width: 145px;
    height: 28px;
}
.page-network .map-japan image{
    width: 100%;
}
.page-network .map-japan image.image-en-ja{
    width: 98%;
    transform: translate(8px, -26px);
}
.page-network .map-japan image.icon-ibs-osaka,
.page-network .map-japan image.icon-ibs-osaka-en,
.page-network .map-japan image.icon-ibs-osaka-kr{
    width: 110px;
    height: 50px;
}
.page-network .map-japan image.icon-ibs-osaka{
    transform: translate(370px, 330px);
}
.page-network .map-japan image.icon-ibs-osaka-en{
    transform: translate(219px, 354px);
}
.page-network .map-japan .osaka rect{
    width: 315px;
    height: 84px;
    transform: translate(350px, 320px);
}
.page-network .map-japan text.osaka-text{
    transform: translate(490px, 360px);
}
.page-network .map-japan .osaka .star{
    transform: translate(489px, 527px);
}
.page-network .map-japan .osaka line{
    transform: translate(-123px, 82px);
}
.page-network .map-japan .okayama line, .page-network .map-japan .okayama ellipse{
    transform: translate(-143px, 77px);
}
.page-network .map-japan .okayama rect{
    transform: translate(-102px, 47px);
}
.page-network .map-japan .okayama text{
    transform: translate(379px, 568px);
}
.page-network .map-japan .chubu line{
    transform: translate(-96px, 97px);
}
.page-network .map-japan .chubu ellipse{
    transform: translate(574px, 528px);
}
.page-network .map-japan .chubu rect{
    transform: translate(535px, 584px);
}
.page-network .map-japan .chubu text{
    transform: translate(573px, 603px);
}
.page-network .map-japan .tokyo line{
    transform: translate(-55px, 101px);
}
.page-network .map-japan .tokyo ellipse{
    transform: translate(680px, 535px);
}
.page-network .map-japan .tokyo rect{
    transform: translate(768px, 487px);
}
.page-network .map-japan .tokyo text{
    transform: translate(806px, 507px);
}
/* 韓国用 */
.page-network .map-japan .osaka rect.rect-osaka-kr{
    width: 335px;
}
.page-network .map-japan .okayama rect.rect-okayama-kr{
    width: 187px;
    transform: translate(-120px, 47px);
}
.page-network .map-japan .okayama text.rect-okayama-kr{
    transform: translate(363px, 569px);
}
/* 海外拠点 */
.page-network .map-world{
    margin: 0 auto;
    margin-bottom: 100px;
}
.page-network .map-world rect.cls-1, .page-network .map-world rect.cls-8,
.page-network .map-world rect.cls-1-en-wr, .page-network .map-world rect.cls-7-en-wr{
    width: 169px;
    height: 32px;
}
.page-network .map-world rect.cls-8-en-wr{
    width: 220px;
    height: 32px;
}
.page-network .map-world rect.cls-1, .page-network .map-world rect.cls-8,
.page-network .map-world rect.cls-1-en-wr, .page-network .map-world rect.cls-8,
.page-network .map-world rect .cls-7-en-wr{
    stroke: var(--main-color-blue);
    stroke-width: 2px;
}
.page-network .map-world tspan{
    font-size: 16px;
}
.page-network .map-world rect.rect-russia{
    transform: translate(-7px, 0);
}
.page-network .map-world text.txt-russia{
    transform: translate(365px, 411px);
}
.page-network .map-world text.txt-russia-en-wr{
    transform: translate(359px, 411px);
}
.page-network .map-world rect.rect-korea{
    transform: translate(-15px, 0);
}
.page-network .map-world text.txt-korea{
    transform: translate(720px, 439px);
}
.page-network .map-world text.txt-korea-en-wr{
    transform: translate(682px, 441px);
}
.page-network .map-world rect.rect-zhenjiang{
    transform: translate(-50px, 0);
}
.page-network .map-world text.txt-zhenjiang{
    transform: translate(559px, 396px);
}
.page-network .map-world text.txt-zhenjiang-en-wr{
    transform: translate(579px, 396px);
}
.page-network .map-world rect.rect-shanghai{
    transform: translate(-6px, 0);
}
.page-network .map-world text.txt-shanghai{
    transform: translate(691px, 484px);
}
.page-network .map-world text.txt-shanghai-en-wr{
    transform: translate(685px, 484px);
}
.page-network .map-world rect.rect-hongkong{
    transform: translate(0, 8px);
}
.page-network .map-world text.txt-hongkong{
    transform: translate(737px, 570px);
}
.page-network .map-world text.txt-hongkong-en-wr{
    transform: translate(724px, 570px);
}
.page-network .map-world rect.rect-cangiuoc{
    transform: translate(0, -5px);
}
.page-network .map-world text.txt-cangiuoc{
    transform: translate(702px, 665px);
}
.page-network .map-world text.txt-cangiuoc-en-wr{
    transform: translate(699px, 665px);
}
.page-network .map-world text.txt-cangiuoc-kr-wr{
    transform: translate(713px, 665px);
}
.page-network .map-world text.border-cangiuoc{
    transform: translate(836px, 667px);
}
.page-network .map-world text.border-cangiuoc tspan{
    font-size: 24px;
}
.page-network .map-world rect.rect-binhduong{
    transform: translate(110px, 50px);
}
.page-network .map-world text.txt-binhduong{
    transform: translate(911px, 665px);
}
.page-network .map-world text.txt-binhduong-en-wr{
    transform: translate(907px, 665px);
}
.page-network .map-world text.txt-binhduong-kr-wr{
    transform: translate(921px, 665px);
}
.page-network .map-world rect.rect-taiwan{
    transform: translate(15px, 5px);
}
.page-network .map-world text.txt-taiwan{
    transform: translate(764px, 529px);
}
.page-network .map-world text.txt-taiwan-en-wr{
    transform: translate(750px, 529px);
}
.page-network .map-world rect.rect-thailand{
    transform: translate(-74px, 0);
}
.page-network .map-world text.txt-thailand{
    transform: translate(639px, 712px);
}
.page-network .map-world text.txt-thailand-en-wr{
    transform: translate(615px, 713px);
}
.page-network .map-world rect.rect-philippines{
    transform: translate(-24px, 4px);
}
.page-network .map-world text.txt-philippines{
    transform: translate(695px, 620px);
}
.page-network .map-world text.txt-philippines-en-wr{
    transform: translate(685px, 620px);
}
.page-network .map-world text.txt-philippines-kr-wr{
    transform: translate(712px, 620px);
}
.page-network .map-world rect.rect-indonesia{
    transform: translate(-40px, 0);
}
.page-network .map-world text.txt-indonesia{
    transform: translate(431px, 643px);
}
.page-network .map-world text.txt-indonesia-en-wr{
    transform: translate(437px, 643px);
}
.page-network .map-world text.txt-indonesia-kr-wr{
    transform: translate(442px, 643px);
}
.page-network .map-world rect.rect-india{
    transform: translate(-34px, 0);
}
.page-network .map-world text.txt-india{
    transform: translate(368px, 551px);
}
.page-network .map-world text.txt-india-en-wr{
    transform: translate(368px, 553px);
}
.page-network .map-world text.txt-india-kr-wr{
    transform: translate(378px, 552px);
}
.page-network .map-world text.txt-usa{
    transform: translate(1052px, 512px);
}
.page-network .map-world text.txt-usa-en-wr{
    transform: translate(1066px, 513px);
}
.page-network .map-world text.txt-usa-kr-wr{
    transform: translate(1069px, 513px);
}
.page-network .point-overseas-cp{
    background: var(--main-color-blue);
    color: #fff;
}

/* network SP */
@media screen and (max-width: 767px) {
    .page-network .jump-point{
        padding-top: 70px;
    }
    .page-network .section-over-clippath{
        margin-top: -140px;
    }
    .page-network .contact-links{
        max-width: 500px;
        margin: 0 auto 100px;
        padding: 100px 10px 0;
        display: block;
    }
    /* add */
    .page-network .btn-contact-link{
        display: block;
        width: 100%;
        padding: 8px;
        border-bottom: solid 1px var(--line-color-gray);
        font-size: 16px;
    }
    .page-network .btn-contact-link span::before{
        display: none;
    }
    .page-network .btn-contact-link span:after{
        right: 0;
    }
    .page-network .map-japan{
        max-width: none;
        margin-top: -20px;
        margin-bottom: 50px;
        position: relative;
        z-index: 2;
    }
    .page-network .base-network{
        width: 90%;
        padding-top: 70px;
    }
    .page-network .base-network-box{
        width: 100%;
    }
    .page-network .base-info{
        display: block;
        max-width: 375px;
        width: 100%;
    }

    .page-network .base-network-box h4{
        font-size: 22px;
    }
    .page-network .base-txt{
        margin-bottom: 1rem;
        min-width: auto;
    }
    .page-network .base-txt p{
        display: block;
        max-width: 315px;
    }
    .page-network .base-txt-overseas{
        min-width: auto;
    }
    .page-network .map-world{
        margin-bottom: 70px;
        padding: 0 10px;
    }
    .page-network .base-network-overseas .base-network-box h4{
        margin-bottom: 10px;
    }
    .page-network .base-network-box .tag-overseas{
        position: static;
        display: block;
        margin-bottom: 15px;
    }
    .base-flag {
        width: 200px;
    }
    /* 日本拠点 */
    .page-network section:first-child{
        padding-bottom: 120px;
    }
    .page-network .base-network-box:first-child{
        padding: 70px 30px 60px;
    }
    .page-network section:last-child{
        padding-top: 120px;
    }
    .page-network .map-japan .cls-13-ja{
        width: 200px;
        height: 50px;
    }
    .page-network .map-japan .cls-2-ja{
        font-size: 24px;
    }
    .page-network .map-japan image{
        width: 150%;
        transform: translate(-450px, -30px);
    }
    .page-network .map-japan image.image-en-wr{
        width: 150%;
        transform: translate(-380px, -30px);
    }
    .page-network .map-japan image.icon-ibs-osaka{
        width: 300px;
        height: 80px;
        transform: translate(152px, 348px);
    }
    .page-network .map-japan .osaka rect{
        width: 500px;
        height: 120px;
        transform: translate(185px, 335px);
    }
    .page-network .map-japan text.osaka-text{
        transform: translate(403px, 395px);
    }
    .page-network .map-japan .osaka .cls-15-ja{
        font-size: 36px;
    }
    .page-network .map-japan .osaka tspan.cls-10-ja{
        font-size: 24px;
    }
    .page-network .map-japan .osaka .star{
        transform: translate(393px, 605px);
        font-size: 70px;
    }
    .page-network .map-japan .osaka line{
        transform: translate(-43px, 213px);
    }
    .page-network .map-japan .okayama line, .page-network .map-japan .okayama ellipse{
        transform: translate(-241px, 144px);
    }
    .page-network .map-japan .okayama rect{
        transform: translate(-221px, 130px);
    }
    .page-network .map-japan .okayama text{
        transform: translate(259px, 664px);
    }
    .page-network .map-japan .chubu line{
        transform: translate(-151px, 174px);
    }
    .page-network .map-japan .chubu ellipse{
        transform: translate(516px, 600px);
    }
    .page-network .map-japan .chubu rect{
        transform: translate(536px, 660px);
    }
    .page-network .map-japan .chubu text{
        transform: translate(585px, 694px);
    }
    .page-network .map-japan .tokyo line{
        transform: translate(-60px, 180px);
    }
    .page-network .map-japan .tokyo ellipse{
        transform: translate(666px, 615px);
    }
    .page-network .map-japan .tokyo rect{
        transform: translate(760px, 557px);
    }
    .page-network .map-japan .tokyo text{
        transform: translate(808px, 591px);
    }
    /* 韓国用 */
    .page-network .map-japan .osaka rect.rect-osaka-kr{
        width: 530px;
    }
    .page-network .map-japan .okayama rect.rect-okayama-kr{
        width: 267px;
        transform: translate(-255px, 132px);
    }
    .page-network .map-japan .okayama text.rect-okayama-kr{
        transform: translate(232px, 669px);
    }
    /* 世界拠点 */
    .cls-1-wr{
        stroke: var(--main-color-blue);
        stroke-width: 2px;
    }
    .cls-1-wr, .cls-9-wr{
        width: 140px;
        height: 40px;
    }
    .rect-shanghai, .rect-zhenjiang, .rect-hongkong{
        width: 215px;
    }
    .cls-1-wr, .cls-2-wr, .cls-3-wr, .cls-4-wr {
        fill: #fff;
    }
    .cls-2-wr, .cls-5-wr {
        font-size: 16.31px;
    }
    .cls-2-wr, .cls-5-wr, .cls-6-wr, .cls-7-wr {
        isolation: isolate;
    }
    .cls-2-wr, .cls-5-wr, .cls-7-wr {
        font-weight: 700;
    }
    .cls-3-wr, .cls-4-wr, .cls-8-wr {
        stroke: #19568c;
    }
    .cls-3-wr, .cls-8-wr {
        stroke-miterlimit: 10;
        stroke-width: 3.05px;
    }
    .cls-9-wr, .cls-5-wr, .cls-7-wr {
        fill: #195690;
    }
    .cls-4-wr {
        stroke-miterlimit: 10;
        stroke-width: 3.05px;
    }
    .cls-6-wr, .cls-8-wr {
        fill: none;
    }
    .cls-7-wr {
        font-size: 17.04px;
    }
    .cls-10-wr {
        fill: #19568c;
    }
    .page-network .map-world tspan.cls-11-wr{
        font-size: 28px;
    }
    .page-network .map-world rect.rect-zhenjiang-ja, 
    .page-network .map-world rect.rect-shanghai-ja,
    .page-network .map-world rect.rect-hongkong-ja{
        width: 140px;
    }
    .page-network .map-world rect.rect-russia{
        transform: translate(-10px, 0);
    }
    .page-network .map-world text.txt-russia{
        transform: translate(121px, 891px);
    }
    .page-network .map-world text.txt-russia-en-wr{
        transform: translate(119px, 890px);
    }
    .page-network .map-world text.txt-russia-kr-wr{
        transform: translate(122px, 890px);
    }
    .page-network .map-world rect.rect-korea{
        transform: translate(0, -5px);
    }
    .page-network .map-world text.txt-korea{
        transform: translate(380px, 150px);
    }
    .page-network .map-world text.txt-korea-en-wr{
        transform: translate(340px, 150px);
    }
    .page-network .map-world rect.rect-zhenjiang{
        transform: translate(-37px, 9px);
    }
    .page-network .map-world text.txt-zhenjiang{
        transform: translate(193px, 99px);
    }
    .page-network .map-world text.txt-zhenjiang-en-wr{
        transform: translate(193px, 99px);
    }
    .page-network .map-world text.txt-zhenjiang-kr-wr{
        transform: translate(226px, 91px);
    }
    .page-network .map-world rect.rect-shanghai{
        transform: translate(2px, 6px);
    }
    .page-network .map-world text.txt-shanghai{
        transform: translate(352px, 226px);
    }
    .page-network .map-world text.txt-shanghai-en-wr{
        transform: translate(355px, 226px);
    }
    .page-network .map-world text.txt-shanghai-kr-wr{
        transform: translate(347px, 221px);
    }
    .page-network .map-world rect.rect-hongkong{
        transform: translate(-28px, 0px);
    }
    .page-network .map-world text.txt-hongkong{
        transform: translate(363px, 338px);
    }
    .page-network .map-world text.txt-hongkong-en-wr{
        transform: translate(364px, 338px);
    }
    .page-network .map-world text.txt-hongkong-kr-wr{
        transform: translate(391px, 339px);
    }
    .page-network .map-world rect.rect-cangiuoc{
        transform: translate(-25px, -32px);
    }
    .page-network .map-world text.txt-cangiuoc{
        transform: translate(319px, 495px);
    }
    .page-network .map-world text.txt-cangiuoc-en-wr{
        transform: translate(313px, 495px);
    }
    .page-network .map-world text.txt-cangiuoc-kr-wr{
        transform: translate(327px, 495px);
    }
    .page-network .map-world text.border-cangiuoc{
        transform: translate(430px, 500px);
    }
    .page-network .map-world text.border-cangiuoc tspan{
        font-size: 24px;
    }
    .page-network .map-world rect.rect-binhduong{
        transform: translate(50px, -32px);
    }
    .page-network .map-world text.txt-binhduong{
        transform: translate(487px, 496px);
    }
    .page-network .map-world text.txt-binhduong-en-wr{
        transform: translate(483px, 495px);
    }
    .page-network .map-world text.txt-binhduong-kr-wr{
        transform: translate(496px, 496px);
    }
    .page-network .map-world rect.rect-taiwan{
        transform: translate(3px, 2px);
    }
    .page-network .map-world text.txt-taiwan{
        transform: translate(392px, 287px);
    }
    .page-network .map-world text.txt-taiwan-en-wr{
        transform: translate(380px, 287px);
    }
    .page-network .map-world rect.rect-thailand{
        transform: translate(-7px, -8px);
    }
    .page-network .map-world text.txt-thailand{
        transform: translate(336px, 576px);
    }
    .page-network .map-world text.txt-thailand-en-wr{
        transform: translate(312px, 576px);
    }
    .page-network .map-world rect.rect-philippines{
        transform: translate(-62px, -16px);
    }
    .page-network .map-world text.txt-philippines{
        transform: translate(311px, 417px);
    }
    .page-network .map-world text.txt-philippines-en-wr{
        transform: translate(301px, 416px);
    }
    .page-network .map-world text.txt-philippines-kr-wr{
        transform: translate(327px, 417px);
    }
    .page-network .map-world rect.rect-indonesia{
        transform: translate(-15px, -20px);
    }
    .page-network .map-world text.txt-indonesia{
        transform: translate(197px, 640px);
    }
    .page-network .map-world text.txt-indonesia-en-wr{
        transform: translate(202px, 640px);
    }
    .page-network .map-world text.txt-indonesia-kr-wr{
        transform: translate(205px, 640px);
    }
    .page-network .map-world rect.rect-india{
        transform: translate(0px,-45px);
    }
    .page-network .map-world text.txt-india{
        transform: translate(62px, 475px);
    }
    .page-network .map-world text.txt-india-en-wr{
        transform: translate(62px, 475px);
    }
    .page-network .map-world text.txt-india-kr-wr{
        transform: translate(73px, 475px);
    }
    .page-network .map-world text.txt-usa{
        transform: translate(455px, 806px);
    }
    .page-network .map-world text.txt-usa-en-wr{
        transform: translate(469px, 806px);
    }
    .page-network .map-world text.txt-usa-kr-wr{
        transform: translate(470px, 807px);
    }
}
