﻿@charset "utf-8";
/* CSS Document 
  by Duc Nguyen (ドク)
*/ .sg_main h2 {
    background: url(../common_img/br_content.png) no-repeat center;
    padding: 8% 2%;
    background-size: 100%;
}

.content_page {
    padding: 2%;
    background: #fff;
}

.h3_tt {
    background: url(../common_img/icon.png) no-repeat,url(../common_img/line.png) no-repeat;
    background-position: 0 3px, bottom left;
    padding-left: 20px;
    font-size: 16px;
    padding: 0 0 5px 20px;
    margin: 15px 0 10px 0;
}

.box_cons {
    padding-bottom: 15px;
    border-bottom: 1px dotted #a6a6a6;
    margin-bottom: 25px;
}

.sb_address h5 {
    font-size: 15px;
    color: #ff6501;
    background: #f3f0df;
    padding: 2%;
    text-align: center;
}

.sb_address {
    background: #2f3f95;
    color: #fff;
}

.pd3p {
    padding: 3%;
}

.box_bnt {
    margin-top: 15px;
    background: #f2f3f7;
    border: 1px solid #c2c3cc;
    padding: 3%;
}

.side_bar .box_bnt a img {
    float: right;
    width: 49%;
    margin-top: 3%;
}

.side_bar .box_bnt a:nth-child(2n+1) img {
    float: left;
}

.side_bar .box_sv {
    background: #faf7ed;
    padding: 3%;
    margin-top: 15px;
    border: 1px solid #c2c3cc;
    margin-bottom: 15px;
}

.side_bar {
    padding: 0 2%;
    padding-top: 20px;
    background: #fff;
    padding-bottom: 30px;
}

.dv_contact {
    position: relative;
    margin-top: 15px;
}

    .dv_contact a.tel {
        position: absolute;
        top: 50%;
        left: 5%;
        width: 58%;
        height: 20%;
        text-indent:-9999px;
    }

    .dv_contact p.mail {
        position: absolute;
        top: 72%;
        left: 5%;
        width: 58%;
        height: 20%;
        text-indent:-9999px;
    }

.tb_form {
    margin-top: 20px;
    width: 100%;
}

    .tb_form th, .tb_form td {
        padding: 10px;
        width: 100%;
        display: block;
        text-align: left;
        border: 1px solid #e4e4e5;
        margin-top: -1px;
    }

    .tb_form th {
        background: #f2f3f7;
    }

    .tb_form td {
    }

    .tb_form .hissu::after {
        content: '必須';
        border-radius: 5px;
        padding: 1px 8px;
        font-weight: normal;
        color: #fff;
        background: #b06af8;
        margin-left: 10px;
    }

    .tb_form .ninni::after {
        content: '任意';
        border-radius: 5px;
        padding: 1px 8px;
        font-weight: normal;
        color: #fff;
        background: #132863;
        margin-left: 10px;
    }

    .tb_form input[type=text], .tb_form input[type=email] {
        width: 100%;
        height: 30px;
        text-indent: 5px;
    }

    .tb_form li {
        float: left;
        width: 50%;
        padding: 5px;
    }

    .tb_form #state, .tb_form #state02 {
        width: 100%;
        height: 30px;
    }

    .tb_form #comment {
        width: 100%;
        height: 100px;
    }

    .tb_form select {
        height: 30px;
    }

.nt_privacy {
    padding: 3%;
    background: #faf9f2;
    margin-top: 15px;
}

.tb_a {
    margin-top: 10px;
    border-bottom: 1px dotted #001842;
}

    .tb_a th {
        font-weight: normal;
        width: 20px;
        text-align: left;
    }

    .tb_a th, .tb_a td {
        padding-bottom: 10px;
    }

.tb_num {
    margin-top: 10px;
}

    .tb_num th {
        font-weight: normal;
        width: 25px;
        text-align: left;
    }

    .tb_num th, .tb_num td {
        padding: 5px;
        border-bottom: 1px dashed #929292;
    }

.flow__item {
    background: #faf8ee;
    border: 1px solid #cfcfcf;
    padding: 2%;
    margin-top: 20px;
}

    .flow__item figure img {
    }

    .flow__item h4 {
        font-size: 15px;
        color: #2f3f95;
        margin-bottom: 10px;
        padding-bottom: 1px;
        border-bottom: 1px solid #2f3f95;
        margin-left: -2%;
        padding-left: 2%;
    }

    .flow__item figure {
        padding-left: 10px;
        width: 35%;
        float: right;
        background: #faf8ee;
    }

.pro_link {
    margin-top: 15px;
}

    .pro_link li {
        float: left;
        width: 50%;
        margin-bottom: 10px;
        text-align: center;
    }

        .pro_link li:before {
            content: '▼';
            color: #6d299e;
            margin-right: 5px;
        }

        .pro_link li a {
            color: #6d299e;
        }

.procedure__table {
    font-size: 14px;
    width: 100%;
    overflow: auto;
    color: #333;
    margin: 20px 0;
    padding-bottom: 10px;
}

.guide__box-line li span:first-child {
    width: 100px;
}

.guide__box-line li span {
    float: left;
}

.procedure__table table {
    width: 800px;
}

.procedure__table thead th {
    padding: 3px 10px;
    font-weight: bold;
    background-color: #e8effc;
    color: #2f3f95;
    border: 1px solid #ced5e2;
    vertical-align: middle;
}

.procedure__table tbody th {
    padding: 3px 10px;
    vertical-align: middle;
    background-color: #F1F1F1;
    font-weight: normal;
    color: #2f3f95;
    border: 1px solid #ced5e2;
    white-space: nowrap;
}

.procedure__table tbody td {
    padding: 3px 7px;
    border: 1px solid #ced5e2;
    vertical-align: middle;
    text-align: center;
}

.procedure__table tbody .col02, .procedure__table tbody .col04 {
    white-space: nowrap;
}

.procedure__table tbody .col03 {
    background-color: #F1F1F1;
    white-space: nowrap;
}

.procedure__table tbody .col11, .procedure__table tbody .col10 {
    text-align: left;
}

.procedure__table p {
    color: #ff6501;
    font-size: 12px;
    margin-top: 30px;
    margin-bottom: 30px;
}

.pcam {
    color: #ff6501;
    font-size: 12px;
    margin-top: 15px;
}

.procedure__download-file {
    padding: 15px;
    background-color: #fcf8ee;
    text-align: left;
    margin-bottom: 20px;
}

    .procedure__download-file a {
        display: block;
        padding: 10px 0 10px 64px;
        background: url(../procedure/images/icon_pdf1.png) no-repeat left center;
        background-size: 37px;
        font-size: 12px;
        color: #102280;
    }

.guide__box {
    background-color: #faf8ee;
    border: 1px solid #cfcfcf;
    padding: 3%;
}

.guide__box-title {
    background-color: #2f3f95;
    color: #fff;
    padding: 10px;
    margin-bottom: 15px;
}

.guide__box-w {
    background-color: #fff;
    border: 1px solid #cfcfcf;
    margin-top: 20px;
}

    .guide__box-w h5 {
        border-bottom: 2px solid #2f3f95;
        padding: 5px 19px;
        color: #2f3f95;
        font-weight: normal;
        font-size: 16px;
    }

        .guide__box-w h5 span {
            font-size: 12px;
        }

.guide__box__inner {
    padding: 10px;
}

.guide__box-line li {
    padding-top: 15px;
    padding-bottom: 5px;
    overflow: hidden;
}

    .guide__box-line li + li {
        border-top: 2px dotted #001842;
    }

.guide__box-list {
    margin-top: 10px;
}

    .guide__box-list li {
        display: block;
        float: left;
        width: 50%;
        padding: 2%;
    }

        .guide__box-list li p {
            margin-top: 7px;
            font-size: 12px;
        }

        .guide__box-list li figure img {
            width: 100%;
        }

.guide__box-org {
    color: #ff6501;
    font-size: 12px;
    margin-top: 15px;
}

.faq__q-box {
    background-color: #fff;
    padding: 5px;
    border: 1px solid #e2e2e2;
}

.faq__q-box__inner {
    background-color: #f2f3f7;
    border: 1px solid #f8f8fb;
    padding: 3%;
}

    .faq__q-box__inner th span {
        color: #2f3f95;
    }

    .faq__q-box__inner th {
        width: 60px;
        text-align: left;
    }

    .faq__q-box__inner th, .faq__q-box__inner td {
        padding: 10px 0;
        border-bottom: 1px dotted #a3a3a3;
    }

    .faq__q-box__inner tr:last-child th, .faq__q-box__inner tr:last-child td {
        border-bottom: none;
    }

.faq__a-item {
    border-bottom: 2px dotted #a6a6a6;
    padding-bottom: 15px;
    margin-top: 15px;
}

.faq__a dl {
    padding: 10px;
    background: url(../faq/images/bg.gif) repeat left center;
}

    .faq__a dl dt {
        background: url(../faq/images/q.png) no-repeat left top,url(../faq/images/cong.png) no-repeat right top;
        padding: 5px 35px 5px 35px;
        margin-bottom: 10px;
        font-size: 15px;
    }

        .faq__a dl dt.opened {
            background: url(../faq/images/q.png) no-repeat left top,url(../faq/images/tru.png) no-repeat right top;
        }

    .faq__a dl dd {
        padding: 10px 0 10px 50px;
        background: #fff url(../faq/images/a.png) no-repeat 18px 18px;
        display: none;
    }

.faq__a-item:last-child {
    border-bottom: none;
}

.faq__comment {
    border: 1px solid #cfcfcf;
    padding: 10px 0 10px 10px;
    margin-top: 20px;
}

    .faq__comment figure {
        margin-right: 10px;
        width: 30%;
    }

    .faq__comment .msg {
        overflow: hidden;
    }

        .faq__comment .msg h4 {
            background: url(../faq/images/c.png) no-repeat left top;
            color: #2f3f95;
            margin-bottom: 10px;
            border-bottom: 2px solid #2f3f95;
            padding-bottom: 7px;
            padding-left: 35px;
        }

    .faq__comment p {
        padding-right: 10px;
    }

.reason__box {
    background-color: #eff4fc;
    padding: 25px 0;
    margin-top: 20px;
}

.reason__box-left {
    margin-bottom: 20px;
}

    .reason__box-left figure {
        margin-right: 10px;
        margin-left: 10px;
        width: 30%;
    }

    .reason__box-left h4 {
        background: url(../reason/images/hoa.png) no-repeat left 5px;
        padding-left: 30px;
        padding-bottom: 5px;
        border-bottom: 2px solid #2f3f95;
        position: relative;
        margin-bottom: 15px;
        font-size: 18px;
        color: #2f3f95;
    }

.reason__box .msg {
    overflow: hidden;
}

.reason__box-left .msg-inner {
    padding-right: 15px;
}

    .reason__box-left .msg-inner img {
        width: 50%;
    }

.reason__box-right h4 {
    background: url(../reason/images/hoa.png) no-repeat 20px 5px;
    padding-left: 48px;
    padding-bottom: 5px;
    border-bottom: 2px solid #2f3f95;
    position: relative;
    margin-bottom: 15px;
    font-size: 18px;
    color: #2f3f95;
}

.reason__box-right figure {
    margin-right: 10px;
    margin-left: 10px;
    width: 30%;
}

.reason__box-right .msg-inner {
    padding-left: 15px;
}

    .reason__box-right .msg-inner img {
        width: 50%;
    }

.tb_gd {
    width: 100%;
    margin-top: 10px;
}

    .tb_gd th, .tb_gd td {
        border-bottom: 1px dotted #7e7e80;
    }

    .tb_gd th {
        text-align: left;
        width: 120px;
        font-weight: normal;
        padding: 10px;
    }

.link50 {
    margin-top: 15px;
}

    .link50 div {
        float: left;
        width: 50%;
        text-align: center;
    }

    .link50 ul {
        display: inline-block;
    }

        .link50 ul li {
            text-align: left;
            margin-bottom: 10px;
        }

            .link50 ul li:before {
                content: '▼';
                color: #6d299e;
                margin-right: 5px;
            }

            .link50 ul li a {
                color: #6d299e;
            }

.dv_reason {
    background-color: #eff4fc;
    padding: 25px 2%;
    margin-top: 20px;
}

    .dv_reason .box {
        margin-bottom: 20px;
    }

        .dv_reason .box:last-child {
            margin-bottom: 0;
        }

    .dv_reason h4 {
        float: right;
        background: url(../reason/images/hoa.png) no-repeat left 5px;
        padding-left: 30px;
        padding-bottom: 5px;
        border-bottom: 1px solid #2f3f95;
        position: relative;
        margin-bottom: 15px;
        font-size: 18px;
        color: #2f3f95;
        width: calc(80% - 10px);
        font-weight: normal;
    }

    .dv_reason .box:nth-child(2n+1) h4 {
        float: left;
    }

.box_gift {
    background: url(../gift/images/br.png) no-repeat top right #fee8ea;
    background-size: 100%;
    padding: 4% 2%;
    margin: 25px 0;
}

.gift_nt {
    border: 3px solid #f1f2f4;
    padding: 2%;
}

.h3_gift {
    border-bottom: 1px solid #2f3f95;
    padding-bottom: 5px;
    margin-bottom: 10px;
    background: url(../gift/images/icon.png) no-repeat top left;
    padding-left: 20px;
    background-position: 0 3px;
    color: #2f3f95;
}

.gift_nt li {
    width: 49%;
}

    .gift_nt li h4 {
        padding: 10px;
        color: #fff;
        font-size: 15px;
        text-align: center;
        margin-top: 15px;
    }

    .gift_nt li:first-child h4 {
        background: #2f3f95;
    }

    .gift_nt li:last-child h4 {
        background: #6d299e;
    }

    .gift_nt li div {
        padding: 2%;
    }

    .gift_nt li:first-child div {
        background: #f5f9ff;
    }


    .gift_nt li:last-child div {
        background: #f9f0ff;
    }

.dv_fift {
    padding: 2%;
    background: url(../gift/images/br2.png) repeat-y;
    background-size: 100%;
    margin-top: 20px;
    color: #fff;
}

.dv_xam {
    padding: 2%;
}

.dv_xam {
    background: #f4f3ff;
    margin-top: 20px;
}

.dv_gift2 {
    background: url(../gift/images/br3.png) no-repeat left top #f1edf8;
    background-size: 100%;
    padding: 4%;
    padding-top: 0;
    margin-top: 20px;
}

    .dv_gift2 p {
        padding-top: 4%;
    }

.news_box time {
    display: inline-block;
    background: #1e5ca7;
    padding: 3px 10px;
    margin: 2px 20px 0px 0px;
    color: #fff;
    float: left;
}

.news_box .headline {
    border-bottom: 1px dashed #1e5ca7;
    padding: 5px 2px;
    margin-bottom: 15px;
}


    .news_box .headline h3 {
        overflow: hidden;
        font-size: 22px;
        line-height: 1.5;
    }

.news_box {
    margin-bottom: 20px;
    padding: 4% 2%;
    background: #fafafa;
}

.news_img {
    float: left;
    margin-right: 10px;
    width: 40%;
}

.news_pager .pager_btn.next_btn {
    float: right;
}

.news_pager .pager_btn {
    display: inline-block;
    background: #6492c9;
    border-radius: 6px;
}

    .news_pager .pager_btn.next_btn a {
        padding: 3px 5px 2px 12px;
    }

    .news_pager .pager_btn a {
        display: inline-block;
        color: #fff;
    }

    .news_pager .pager_btn.next_btn a::after {
        display: inline-block;
        content: '';
        border: 4px solid transparent;
        border-left: 4px solid #fff;
        margin-left: 5px;
        vertical-align: 1px;
    }

    .news_pager .pager_btn.prev_btn a::before {
        display: inline-block;
        content: '';
        border: 4px solid transparent;
        border-right: 4px solid #fff;
        margin-right: 5px;
        vertical-align: 1px;
    }

    .news_pager .pager_btn.prev_btn a {
        padding: 3px 12px 2px 5px;
    }

    .news_pager .pager_btn.back_list {
        background: #1e5ca7;
        margin-top: 15px;
    }

        .news_pager .pager_btn.back_list a {
            padding: 3px 12px 2px 5px;
        }

            .news_pager .pager_btn.back_list a::before {
                display: inline-block;
                content: '';
                border: 4px solid transparent;
                border-right: 4px solid #fff;
                margin-right: 5px;
                vertical-align: 1px;
            }

.news_pager {
    position: relative;
    margin-top: 35px;
    text-align: center;
}

    .news_pager .pager_btn.prev_btn {
        float: left;
    }

    .news_pager .pager_btn.next_btn {
        float: right;
    }

.tb_sm {
    width: 100%;
}

    .tb_sm th, .tb_sm td {
        border: 1px solid #e4e4e5;
        vertical-align: middle;
        text-align: left;
        display: block;
        width: 100%;
        margin-top: -1px;
    }

    .tb_sm th {
        background-color: #f2f3f7;
        padding: 3px 10px;
    }

    .tb_sm td {
        padding: 10px;
    }

.aprint a {
    margin-top: 10px;
    padding-left: 30px;
    background: url(../guide/images/icon1.png) no-repeat center left;
    color: #2f3f95;
    display: block;
}

.amap a {
    margin-top: 10px;
    padding-left: 30px;
    background: url(../guide/images/icon2.png) no-repeat center left;
    color: #2f3f95;
    display: block;
}

.train {
    background: url(../guide/images/icon3.png) no-repeat left top;
    padding-left: 30px;
}

    .train h5 {
        color: #ff6600;
        border-bottom: 1px dotted #7a7a7a;
        padding-bottom: 5px;
        margin-bottom: 15px;
    }

.train2 {
    background: url(../guide/images/icon4.png) no-repeat left top;
    padding-left: 30px;
}

    .train2 h5 {
        color: #ff6600;
        border-bottom: 1px dotted #7a7a7a;
        padding-bottom: 5px;
        margin-bottom: 15px;
    }

.ulgude {
    width: 105%;
}

    .ulgude ul {
        margin-bottom: 15px;
    }

    .ulgude li {
        float: left;
        width: 33.3333%;
        padding-right: 5%;
        background: url(../guide/images/arr.png) no-repeat top left;
        background-size: 100%;
    }

        .ulgude li:last-child {
            background: none;
        }

        .ulgude li p {
            margin-top: 10px;
        }

































@media only screen and (max-width: 390px) {
    .tb_form li {
        width: 100%;
    }
}
