@charset 'UTF-8';

@media screen and (max-width:768px) {
    .spOnly {
        display: flex !important;
    }

    .pcOnly {
        display: none !important;
    }
    body.body-index
    {
        width: 100%;
        height: 100%;
        min-width: 100%;
    }
    body.body-index .main_content {
        width: 100%;
        margin: auto;
        background-color: white;
    }
    body.body-index .title_point {
        font-style: normal;
        font-weight: 700;
        font-size: 6.933vw;
        line-height: 1.5em;
        text-align: center;

        color: #3E479B;
        padding-top: 8%;
    }

    body.body-index .top-menu {
        display: none !important;
    }

    body.body-index .top-header {
        display: none;
    }
    body.body-index .top-header-sp {
        background-repeat: no-repeat;
        background-position: center top;
        background-size: cover;
        display: flex;
        height: auto;
        width: 100%;
    }

    body.body-index .header .h-logo {
        margin: 88px 0px 0px 0px;
        width: 220px;
    }

    body.body-index .ref_contact {
        height: auto;
    }

    body.body-index .ref_contact .bt_contact {
        height: 80px;
        width: 75%;
        font-size: 4.800vw;
        line-height: 1.5em;
    }

    .bg_top {
        background-image: url("../images/sp/coding-man.png");
    }


    .cover {
        background-color: rgba(20, 69, 118, 0.6);
        background-size: cover;
        text-align: center;
        height: 100%;
        width: 100%;
    }

    .cover .title {
        font-weight: 200;
        color: white;
        font-size: 4vw;
        line-height: 1.5em;
        padding-top: 8%;
        height: auto;
    }

    .cover .hightlight_1 {
        font-weight: 700;
        color: #FCFC0D;
        font-size: 6.933vw;
        line-height: 1.5em;
    }

    .cover .padding20 {
        padding-top: 2.67%
    }

    .cover .hightlight_2
    {
        font-weight: 700;
        color: #FCFC0D;
        font-size: 8.533vw;
        line-height: 1;
    }

    .cover .title2 {
        font-weight: 200;
        color: white;
        font-size: 6.933vw;
        padding-top: 8%;
        padding-bottom: 0;
        line-height: 1.8em;
    }


    body.body-index .offshore_vn {
        margin: auto;
        width: 100%;
        height: auto;
        padding-bottom: 10px;
    }

    body.body-index .offshore_vn .title_point {
        padding-top: 8%;
    }

    body.body-index .offshore_vn .area_content {
        width: 100%;
        height: auto;
        margin-top: 3.125%;
    }

    body.body-index .offshore_vn .text_content {
        font-weight: normal;
        font-size: 4vw;
        line-height: 1.5em;
        text-align: center;

        color: #3D3D3D;
    }

    body.body-index .arrow-down {
        background-image: none;
        background-repeat: no-repeat;
        background-size: cover;
        width: 24%;
        height: 15.86%;
        justify-content: center;
        align-items: center;
        display: flex;
        position: relative;

    }

    body.body-index .arrow-down .bg_arrow {
        height: auto;
        width: 100%;
        position: relative;
    }

    body.body-index .arrow-down .arrow {
        height: auto;
        width: 90%;
        margin-top: -25%;
        position: absolute;
    }

    body.body-index .gcode_committed {
        margin: auto;
        width: 100%;
    }

    body.body-index .gcode_committed .skill_content {
        display: block;
        padding-top: 0px;
        width: 100%;
    }

    body.body-index .gcode_committed .skill_content .size_image{
        width: 56.25%;
        height: auto;
    }

    body.body-index .gcode_committed .skill_content .skill_item1 {
        width: 100%;
        padding: 0px 7.3%;
        margin:0;
        height: auto;
    }

    body.body-index .gcode_committed .skill_content .skill_item2 {
        width: 100%;
        padding: 0px 7.3%;
        margin:0;
        height: auto;
        padding-top: 9.375%;
    }

    body.body-index .gcode_committed .skill_content .skill_item3 {
        width: 100%;
        padding: 0px 7.3%;
        margin:0;
        height: auto;
        padding-top: 9.375%;
        padding-bottom: 9.375%;
    }

    body.body-index .gcode_coremember {
        width: 100%;
        margin: auto;
        padding: 0px 7.3%;
    }


    body.body-index .gcode_coremember .main_member {
        border-top: 1px solid #010F7E;
        /*padding: 6.25% 0px;*/
        display: block !important;
    }

    body.body-index .gcode_service {
        margin: auto;
        width: 100%;
        padding: 10px 20px;
    }

    body.body-index .gcode_service .item_service .title_service {
        width: 100%;
    }

    .gcode_offshore {
        width: 100%;
        height: auto;
    }

    .gcode_offshore .introduce {
        padding-top: 8%;
        padding-left: 7.3%;
        padding-right: 7.3%;
        width: 100%;
        height: auto;
        font-weight: 400;
        font-size: 4vw;
        line-height: 1.5em;
        color: #3D3D3D;
        text-align: left;
        margin: auto;
    }

    .gcode_offshore .ourvalue_container {
        width: 100%;
        margin: auto;
        padding: 10% 0px 0px 0px;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail {
        padding-left: 7.3%;
        padding-right: 7.3%;
        display: grid;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail .arrow_up_down {
        width: 35%;
        float: left;
        padding-right: 6.25%;
        margin: auto;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail .description_value {
        width: 65%;
        padding-left: 10px;
        float: right;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail .value_image {
        float: left;
        width: 75%;
        padding-top: 6.25%;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail .value_title {
        font-style: normal;
        font-weight: normal;
        font-size: 4.8vw;
        line-height: 1.5em;
        color: #FF8C3E;
        text-align: left;
    }

    .gcode_offshore .ourvalue_container .ourvalue_detail .value_content{
        font-style: normal;
        font-weight: normal;
        font-size: 4vw;
        line-height: 1.5em;
        color: #3D3D3D;
        text-align: left;
    }


    .gcode_download {
        background-image: url("../images/sp/meeting.png");
        background-repeat: no-repeat;
        background-position: center top;
        background-size: cover;
        height: auto;
        margin: auto;
        width: 100%;
    }

    .gcode_download .cover {
        background: rgba(53, 53, 53, 0.55);
        border: 1px solid #000000;
        box-sizing: border-box;
        box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
        text-align: center;
        height: 100%;
        width: 100%;
    }

    .gcode_download .container {
        width: 100%;
        margin: auto;
    }

    .gcode_download .container .content {
        width: 100%;
        margin: auto;
        padding-top: 15%;
    }

    .gcode_download .container .content .guide_download {
        width: 100%;
        font-style: normal;
        font-weight: 400;
        font-size: 4vw;
        line-height: 1.5em;
        text-align: center;
        color: #FFFFFF;
        text-shadow: 0px 4px 4px rgb(0 0 0 / 25%);
    }


    .gcode_choie {
        width: 100%;
        margin: auto;
        padding-left: 7.3%;
        padding-right: 7.3%;
    }

    .gcode_choie .reason_1 {
        width: 100%;
        height: auto;
        padding-top: 0px;
    }

    .gcode_choie .reason_2 {
        width: 100%;
        height: auto;
        margin-top: 6.25%;
        display: block;
    }

    .gcode_choie .reason_3 {
        width: 100%;
        height: auto;
        margin-top: 6.25%;
        display: block;
    }

    .gcode_choie .image_container_left{
        width: 100%;
        height: auto;
        float: left;
        z-index: 1;
        position: relative;
    }

    .gcode_choie .image_container_right{
        width: 100%;
        height: auto;
        float: right;
        z-index: 1;
        position: relative;
    }

    .gcode_choie .description_right {
        width: 100%;
        height: auto;
        float: right;
        display: flex;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .gcode_choie .area_content{
        margin: auto;
        width: 100%;
        padding: 9.375% 6.25% 6.25% 6.25%;
        border-radius: 30px;
    }

    .gcode_choie .description_right .area_content {
        margin: auto;
        width: 100%;
        padding: 9.375% 6.25% 6.25% 6.25%;
        border-radius: 0px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
        margin-bottom: 6.25%;
    }

    .gcode_choie .description_left .area_content {
        margin: auto;
        width: 100%;
        height: auto;
        padding: 9.375% 6.25% 6.25% 6.25%;
        border-radius: 0px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
        margin-bottom: 6.25%;
    }


    .gcode_choie .description_left {
        width: 100%;
        height: auto;
        float: left;
        display: flex;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }

    .gcode_choie .description_title {
        color: #3E479B;
        font-size: 4.267vw;
        font-weight: 700;
        line-height: 1.5em;
        margin-left: 0;
    }

    .gcode_choie .description_content {
        font-size: 3.200vw;
        line-height: 1.5em;
    }

    body.body-index .gcode_qa {
        width: 100%;
        padding: 0px 7.3% 8% 7.3%;
    }

    body.body-index .gcode_qa .content_qa {
        padding-top: 4.6875%;
    }

    body.body-index .gcode_qa .area_qa {
        border-radius: 10px;
        filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.2));
        background-color: white;
        width: auto;
        height: auto;
        margin-right: 0 !important;
        margin-left: 0 !important;
        padding-top: 4.6875%;
        margin-top: 9.375%;
    }

    body.body-index .gcode_qa .title_qa {
        font-size: 4.800vw;
        line-height: 1.5em;
        padding: 0px 6.25%;
    }

    body.body-index .gcode_qa .response_qa {
        color: #3D3D3D;
        padding: 15px 6.25% 30px 6.25%;
        font-weight: 400;
        font-size: 4vw;
        line-height: 1.5em;
    }

    body.body-index .gcode_qa .circle1 {
        height: 16vw;
        width: 16vw;
        background-color: rgba(62, 71, 155, 0.15);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto;
        margin-top: 0px;
    }

    body.body-index .gcode_qa .circle2 {
        height: 16vw;
        width: 16vw;
        background-color: #FFEEE2;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto;
        margin-top: 0px;
    }

    body.body-index .gcode_qa .circle3 {
        height: 16vw;
        width: 16vw;
        background-color: rgba(255, 203, 64, 0.15);
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto;
        margin-top: 0px;
    }

    body.body-index .gcode_qa .circle1 .number1 {
        font-style: normal;
        font-weight: 700;
        font-size: 6.933vw;
        line-height: 1.5em;
        color: #3E479B;
    }

    body.body-index .gcode_qa .circle2 .number2 {
        font-style: normal;
        font-weight: 700;
        font-size: 6.933vw;
        line-height: 1.5em;
        color: #FF8C3E;
    }

    body.body-index .gcode_qa .circle3 .number3 {
        font-style: normal;
        font-weight: 700;
        font-size: 6.933vw;
        line-height: 1.5em;
        color: #FFCB40;
    }

    .gcode_cooperate {
        margin: auto;
        width: 100%;
        margin-top: -4.6875%;
    }

    .gcode_cooperate .title {
        text-align: center;
        font-weight: 700;
        font-size: 5.600vw;
        line-height: 1.5em;
        color: #3D3D3D;
        padding-top: 7.03%;
    }

    body.body-index .gcode_coremember .title {
        text-align: center;
        font-weight: 700;
        font-size: 5.600vw;
        line-height: 1.5em;
        color: #3D3D3D;
        padding-top: 7.03%;
    }

    body.body-index .gcode_coremember .number_phone {
        font-style: normal;
        font-weight: 700;
        font-size: 9.600vw;
        line-height: 1.5em;
        text-align: center;
        color: #FF8C3E;
        padding-top: 20px;
    }

    .gcode_cooperate .number_phone {
        font-style: normal;
        font-weight: 700;
        font-size: 9.600vw;
        line-height: 1.5em;
        text-align: center;
        color: #FF8C3E;
        padding-top: 20px;
    }
    .gcode_cooperate .icon_email {
        margin-right: 2%;
        width: 10%;
    }

    body.body-index .gcode_coremember .duration_time {
        font-style: normal;
        font-weight: 400;
        font-size: 4.267vw;
        line-height: 1.5em;
        text-align: center;
        color: #3D3D3D;
        padding-top: 10px;
        padding-bottom: 7.03%;
    }

    .gcode_cooperate .duration_time {
        font-style: normal;
        font-weight: 400;
        font-size: 4.267vw;
        line-height: 1.5em;
        text-align: center;
        color: #3D3D3D;
        padding-top: 10px;
        padding-bottom: 7.03%;
    }

    footer {
        margin-left: 0px;
        margin-right: 0px;
    }
    .area_social {
        display:flex;
        width: 100%;
        padding-top: 10px;
        justify-content: center;
    }
    footer .footer-image
    {
        width: 186px;
        height: auto;
        margin: 0;
    }
    footer .footer
    {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 100%;
        padding: 0;
    }
    footer .footer .f-info
    {
        float: none;
        margin: auto;
        padding-top: 9.375%;
        padding-left: 31%;
        width: 100%;
    }

    footer .copy
    {
        font-size: 3.200vw;
        line-height: 1.5em;

        margin-top: 35px;
        padding-bottom: 30px;
    }
    footer .copy br
    {
        display: inline;
    }

    footer .footer .leftfooter {
        width:100%;
        margin-left: 0;
        display: block;
        padding-right: 7.3%;
        padding-left: 7.3%;
    }

    footer .footer .leftfooter .logo{
        width: auto;
        height: auto;
        float: none;
        justify-content: center;
        align-items: center;
        display: flex;
        padding-top: 9.375%;
    }

    footer .footer .leftfooter .logo a {
        width: 56.25%;
    }

    footer .footer .rightfooter {
        width:100%;
        justify-content: center;
        align-items: center;
        display: flex;
        padding: 8% 7.3%;
    }

    footer .footer .rightfooter .footermap {
        width:100% !important;
        height: 85.333vw !important;
        justify-content: center;
        align-items: center;
        display: flex;
        margin-right: 0px;
    }

    body.body-index .padding_header{
        padding-top: 10.4vw;
        padding-bottom: 16%;
    }

    footer .footer .f-info li span {
        font-size: 4.267vw;
        line-height: 1.5em;
        width: 31.34%;
        margin-left: -20px;
    }

    footer .footer .f-info li
    {
        line-height: 1.5em;
        font-size: 4.267vw;
        margin-top: 13px;

        letter-spacing: .08em;
    }
}

@media screen and (max-width: 640px) {

    body.body-index .gcode_service .item_service {
        display: block;
    }

    body.body-index .gcode_service .number_service {
        background-image: url("../images/sp/img-flag@2x.png");
        background-size: 60px 30px;
        width: 60px;
        height: 30px;
        justify-content: center;
        align-items: center;
        display: flex;
        color: white;
        font-size: 22px;
        font-weight: bold;
    }
    body.body-index .gcode_service .content_service {
        padding: 20px 20px;

    }

    body.body-index .gcode_service .content_service .detail_service {
        padding: 20px 20px;

    }


    body.body-index .gcode_service .item_service .title_service {
        width: 100%;
        display: block;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        font-size: 20px;
        padding-bottom: 20px;
        padding-top: 20px;
        border-bottom: 1px solid #010F7E;
        margin-left: 0px !important;
        text-align: center;
    }

    body.body-index .gcode_service .item_service .title_service_text {
        padding-bottom: 20px;
        text-align: center;
        display: block;
        font-size: 20px;
        font-weight: bold;
        border-bottom: 1px solid #010F7E;
    }

}

@media screen and (max-width:480px) {

    body.body-index .header {
        width: 60%;
    }

    .gcode_cooperate .icon_email {
        margin-right: 2%;
        width: 13%;
    }
}

@media screen and (max-width:480px) {
    body.body-index .ref_contact .bt_contact{
        width: auto;
        height: 60px;
    }

    body.body-index .header {
        width: 60%;
    }

    footer .footer .rightfooter .footermap {
        height: 300px !important;
    }
}

@media screen and (max-width:375px) {
    .cover .padding20 {
        padding-top: 0px
    }

    body.body-index .ref_contact .bt_contact{
        width: auto;
        height: 50px;
    }
}

@media screen and (max-width:320px) {
    .cover .padding20 {
        padding-top: 0px
    }

    body.body-index .ref_contact .bt_contact{
        width: auto;
        height: 40px;
    }
}