.ibc-row-contact {
    margin: 0 20px;
}
.ibc-row-contact .contact-header {
    width: 100%;
}
.ibc-row-contact .contact-header h1 {
    text-align: center;
    padding: 24px 20px;
    margin: 0;
}
.ibc-row-contact .contact-header .contact-header-row {
    padding: 0 20px;
    margin: 0 0 16px;
}
.ibc-row-contact .contact-header .contact-header-row .contact-header-logo {
    width: 50px;
    height: auto;
}
.ibc-row-contact .contact-header .contact-header-row .contact-header-separator {
    width: 12px;
    height: auto;
    margin: 0 8px;
}
.ibc-row-contact .contact-header .contact-header-row .contact-header-description {
    text-transform: uppercase;
    text-align: left;
    margin: 0;
    font-size: 0.72em;
}
.ibc-row-contact .contact-header .contact-header-row .contact-header-description span {
    font-size: 1em;
    font-weight: bold;
    color: #00359c;
}
.ibc-row-contact .col-1 {
    background-image: url('../img/contact/map.jpg');
    background-position: center;
    -webkit-background-size: 200% 200%;
       -moz-background-size: 200%;
         -o-background-size: 200%;
            background-size: 200%;
    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            box-sizing: content-box;
    width: 100%;
    height: 200px;
    height: 61vw;
    position: relative;
}
.ibc-row-contact .col-1 .map-link {
    font-size: 0.7em;
    color: #00359c;
    font-weight: bold;
    position: absolute;
    top: 16px;
    right: 20px;
    padding: 8px 16px;
    display: block;
}
.ibc-row-contact .col-1 .map-link img {
    width: 24px;
    height: auto;
}
.ibc-row-contact .col-1 .map-link::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    border: 3px solid #d82926;
    border-bottom: 0;
    border-left: 0;
}
.ibc-row-contact .col-1 .pin {
    width: auto;
    height: 24px;
    position: absolute;
    left: 50%;
    top: 50%;
    top: -webkit-calc(50% - 12px);
    top: -moz-calc(50% - 12px);
    top: calc(50% - 12px);
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
.ibc-row-contact .col-2 {
    font-size: 0.9em;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 16px 24px;
    margin: 0 0 24px;
    background-color: #4656af;
    color: #fff;
}
.ibc-row-contact .col-2 li {
    padding: 0 0 0 32px;
    margin: 24px 0 0;
    position: relative;
}
.ibc-row-contact .col-2 li:first-child {
    margin: 0;
}
.ibc-row-contact .col-2 li .icon {
    position: absolute;
    width: 24px;
    height: 24px;
    left: 0;
    top: 0;
    font-size: 0;
    text-align: center;
}
.ibc-row-contact .col-2 li .icon::before {
    margin: 0;
}
.ibc-row-contact .col-2 li .icon img {
    width: auto;
    height: auto;
}

/*phablet*/
@media (min-width: 36em) {

}

/*tablet*/
@media (min-width: 48em) {
    .ibc-row-contact {
        width: 668px;
        margin: 60px auto 48px;
    }
    .ibc-row-contact .contact-header {
        width: 100%;
    }
    .ibc-row-contact .contact-header h1 {
        text-align: center;
        padding: 0 0 16px;
    }
    .ibc-row-contact .contact-header .contact-header-row {
        padding: 0 48px;
        margin: 0 0 16px;
    }
    .ibc-row-contact .contact-header .contact-header-row .contact-header-logo{
        width: 80px;
        height: auto;
    }
    .ibc-row-contact .contact-header .contact-header-row .contact-header-separator{
        width: 20px;
        height: auto;
        margin: 0 16px 0 24px;
    }
    .ibc-row-contact .contact-header .contact-header-row .contact-header-description{
        text-transform: uppercase;
        text-align: left;
        margin: 0;
        font-size: 1em;
    }
    .ibc-row-contact .col-1 {
        background-image: url('../img/contact/map.jpg');
        background-position: center;
        -webkit-background-size: cover;
           -moz-background-size: cover;
             -o-background-size: cover;
                background-size: cover;
        -webkit-box-sizing: content-box;
           -moz-box-sizing: content-box;
                box-sizing: content-box;
        width: 100%;
        height: 468px;
        height: 61vw;
        position: relative;
    }
    .ibc-row-contact .col-1 .map-link {
        color: #00359c;
        font-size: 1em;
        font-weight: bold;
        position: absolute;
        top: 32px;
        right: 50px;
        padding: 16px 24px;
        display: block;
    }
    .ibc-row-contact .col-1 .map-link::before {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        width: 50%;
        height: 100%;
        border: 3px solid #d82926;
        border-bottom: 0;
        border-left: 0;
    }
    .ibc-row-contact .col-1 .pin {
        width: auto;
        height: 36px;
        position: absolute;
        left: 50%;
        top: 50%;
        top: -webkit-calc(50% - 18px);
        top: -moz-calc(50% - 18px);
        top: calc(50% - 18px);
        -webkit-transform: translate(-50%, -50%);
           -moz-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
             -o-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
    .ibc-row-contact .col-2 {
        font-size: 1em;
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        padding: 24px 112px;
        background-color: #4656af;
        color: #fff;
    }
    .ibc-row-contact .col-2 li {
        padding: 0 0 0 32px;
        margin: 24px 0 0;
        position: relative;
    }
    .ibc-row-contact .col-2 li:first-child {
        margin: 0;
    }
    .ibc-row-contact .col-2 li .icon {
        position: absolute;
        width: 24px;
        height: 24px;
        left: 0;
        top: 0;
        font-size: 0;
        text-align: center;
    }
    .ibc-row-contact .col-2 li .icon::before {
        margin: 0;
    }
    .ibc-row-contact .col-2 li .icon img {
        width: auto;
        height: auto;
    }
}

/*small-pc*/
@media (min-width: 64em) {
    .ibc-row-contact {
        width: 924px;
        position: relative;
    }
    .ibc-row-contact .contact-header {
        width: auto;
        position: absolute;
        left: 478px;
        top: 48px;
        padding: 0 24px;
    }
    .ibc-row-contact .contact-header .contact-header-row {
        padding: 0;
    }
    .ibc-row-contact .contact-header h1 {
        text-align: left;
    }
    .ibc-row-contact .col-1 {
        width: 446px;
        height: 350px;
        height: 30.5vw;
        padding-right: 16px;
        margin-right:  16px;
        z-index: 1;
    }
    .ibc-row-contact .col-2 {
        -webkit-box-sizing: content-box;
           -moz-box-sizing: content-box;
                box-sizing: content-box;
        width: 446px;
        padding: 32px 0 24px 80px;
        padding-left: 80px;
        margin-left: -80px;
        margin-top: 240px;
    }
    .ibc-row-contact .col-2 ul {
        padding: 0 128px 0 24px;
    }
    .ibc-row-contact .col-2 li {
        margin: 32px 0 0;
    }
}

/*medium-pc*/
@media (min-width: 90em) {
    .ibc-row-contact .col-1 {
        height: 440px;
        height: 30.5vw;
    }
}

/*large-pc*/
@media (min-width: 102em) {
    .ibc-row-contact .col-1 {
        height: 500px;
        height: 30.5vw;
    }
    .ibc-row-contact .col-1 .pin {
        height: 48px;
        top: -webkit-calc(50% - 24px);
        top: -moz-calc(50% - 24px);
        top: calc(50% - 24px);
    }
    .ibc-row-contact .contact-header .contact-header-row .contact-header-description {
        font-size: 1.17em;
    }
    .ibc-row-contact .col-2 {
        font-size: 1.17em;
    }
}
