@charset "UTF-8";

/* ==================================================
    .wrapper
================================================== */
    .wrapper {
        background: none;
    }
        #cont_wrapper.u_page {
            padding-top: 120px;
        }
    #head_box {
        width: 100%;
        background: rgba(255,255,255,1);
    }
    .btm_ma {
        width: 40%;
        margin: 30px auto 0;
    }
    #footer {
        width: 100%;
        background: rgba(255,255,255,0);
        border-top: none;
        border-bottom: none;
        padding-bottom: 80px;
    }
    .service_btn_box {
        background: #fff;
        padding: 15px;
        border: 1px solid #333;
        margin-bottom: 20px;
    }
        .service_btn_box .active {
            background: #333;
            color: #fff;
        }

        .service_btn_box .data_box .btn01 {
            background: #333;
            color: #fff;
            display: inline-block;
            padding: 7px 80px 7px;
        }

    @media only screen and (min-width: 1025px) {
        #main_cont {
            width: 75%;
            order: 2;
            margin-right: 0%;
        }
    }

    @media print, screen and (max-width: 639px) {
        .wrapper {
            overflow-x: visible;
        }
        #main_cont {
            width: 100%;
        }
        .btm_ma {
            width: 60%;
        }
        #footer {
            padding-bottom: 0;
        }
    }



/* ==================================================
    #aside_l
================================================== */
    #aside_l.mode_control {
        display: block!important;
    }
    #aside_l.mode_control > dl {
        background: #fff;
        border: 1px solid #ddd;
    }
        #aside_l.mode_control dt {
            background: #ececec;
            font-weight: bold;
            text-align: center;
            padding: 5px;
            border-bottom: 1px solid #ddd;
        }
        #aside_l.mode_control dd li a {
            width: 100%;
            box-sizing: border-box;
            display: block;
            text-decoration: none!important;
            font-size: 1.4rem;
            transition: all 0.3s ease;
            padding: 10px 5px;
            border-bottom: 1px solid #ddd;
            border-left: 0px solid transparent;
        }
            #aside_l.mode_control dd li:last-child a {
                border-bottom: none;
            }
            #aside_l.mode_control dd li a.active,
            #aside_l.mode_control dd li a:hover {
                background: #d0d1ff;
                border-left: 3px solid #5372b2;
            }

    @media only screen and (min-width: 1025px) {
        #aside_l.mode_control {
            width: 22%;
            margin-right: 3%;
        }
    }

    @media print, screen and (max-width: 639px) {
        #aside_l.mode_control {
            margin-top: 40px;
        }
    }

/* ==================================================
    .contents
================================================== */

    /*.topics
    --------------------------------------------*/
    .topics {
        background: #fff;
    }
    .topics > dt {
        background: #ddb148;
        color: #fff;
        font-size: 2.0rem;
        font-weight: bold;
        padding: 5px 10px;
        border: 1px solid #ddd;
        border-bottom: none;
    }
    .topics > dd {
        height: 360px;
        overflow-y: scroll;
        padding: 10px;
        border: 1px solid #ddd;
    }
    .topics > dd li {
        border-bottom: 1px dashed #ddd;
        overflow: hidden;
        padding: 10px 0;
        position: relative;
    }
    .model_prod_detail::after,
    .topics > dd li::after {
        color: #fff;
        font-size: 1.2rem;
        font-weight: bold;
        position: absolute;
        right: 0;
        top: 16px;
        padding: 2px 8px;
        border-radius: 5px;
    }
    .model_prod_detail.new_task::after,
    .topics > dd li.new_task::after {
        content: "未対応";
        background: #c75e40;
    }
    .model_prod_detail.apo_conf::after,
    .topics > dd li.apo_conf::after {
        content: "アポ確認中";
        background: inherit;
        color: #c75e40;
        border: 2px solid #c75e40;
    }
    .model_prod_detail.visit::after,
    .topics > dd li.visit::after,
    .model_prod_detail.ongoing::after,
    .topics > dd li.ongoing::after {
        content: "訪問日確定";
        background: #5372b2;
    }
    .model_prod_detail.ongoing::after,
    .topics > dd li.ongoing::after {
        content: "施工中";
    }
    .model_prod_detail.fix::after,
    .topics > dd li.fix::after {
        width: 20px;
        height: 20px;
        content: "完";
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        color: #ddb148;
        padding: 0;
        border: 2px solid #ddb148;
        border-radius: 50%;
    }
    .model_prod_detail.cancel::after,
    .topics > dd li.cancel::after {
        content: "キャンセル";
        color: #cacaca;
        border: 2px solid #cacaca;
    }
    .model_prod_detail.inve_new_task::after,
    .topics > dd li.inve_new_task::after {
        content: "未";
        color: #c75e40;
    }
    .model_prod_detail.inve_fix::after,
    .topics > dd li.inve_fix::after {
        content: "完";
        color: #ddb148;
    }
    .topics > dd li:last-child {
        border-bottom:  none;
    }
    .topics > dd li a {
        text-decoration: none!important;
    }
    .model_prod_detail time,
    .topics > dd time {
        color: #afafaf;
        display: block;
        font-size: 1.2rem;
    }
    .model_prod_detail time {
        margin-bottom: 20px;
    }

    @media print, screen and (max-width: 639px) {
        .model_prod_detail.ongoing::after,
        .topics > dd li.ongoing::after,
        .model_prod_detail.visit::after,
        .topics > dd li.visit::after,
        .model_prod_detail.cancel::after,
        .topics > dd li.cancel::after,
        .model_prod_detail.new_task::after,
        .topics > dd li.new_task::after {
            height: 20px;
            right: 0;
            top: 20px;
        }
        .model_prod_detail.fix::after,
        .topics > dd li.fix::after {
            width: 20px;
            height: 20px;
            right: 0;
            top: 20px;
        }
    }

    /*.topics.mode02
    --------------------------------------------*/
        .topics.mode02 > dd {
            height: auto;
            overflow-y: inherit;
            border: 1px solid #ddd;
        }

    /*.menu
    --------------------------------------------*/
    .my_menu {
        background: #fff;
    }
    .my_menu dt {
        background: #5174af;
        color: #fff;
        font-size: 2.0rem;
        font-weight: bold;
        padding: 5px 10px;
        border: 1px solid #ddd;
        border-bottom: none;
    }
    .my_menu dd {
        padding: 10px;
        border: 1px solid #ddd;
    }
    .my_menu_li a {
        background: #fff;
        box-shadow: 3px 3px 0 rgba(0,0,0,0.06);
        display: block;
        text-decoration: none!important;
        overflow: hidden;
        position: relative;
        padding: 20px 10px;
        border: 1px solid #cdcdcd;
        border-top: 1px solid #5c8e98;
        border-bottom: 1px solid #5c8e98;
    }
    .my_menu_li a .tit {
        font-size: 1.7rem;
        font-weight: bold;
    }

    /*.cont_box
    --------------------------------------------*/
        .cont_box {
            background: #fff;
            padding: 30px 20px;
            border: 1px solid #ddd;
        }

    /*.model_prod_detail
    --------------------------------------------*/
        .model_prod_detail {
            position: relative;
            padding-top: 20px;
        }

    /*.service_info_li
    --------------------------------------------*/
        .service_info_li .menu_li li {
            padding: 20px 10px;
        }
        .service_info_li .list_price dd,
        .service_info_li .after_price dd,
        .service_info_li .after_price dd .estimates {
            font-size: 1.5rem;
        }
        .service_info_li .menu_li li .menu_name {
            font-size: 1.5rem;
            margin-bottom: 10px;
        }

    /*.update_btn
    --------------------------------------------*/
        .update_btn {
            display: block;
            font-size: 1.4rem;
            padding: 5px 60px;
            margin: 20px auto 0;
        }
            .update_btn:hover {
                cursor: pointer;
            }

    /*.select_label
    --------------------------------------------*/
        .select_label {
            width: 100%;
            background: #f1f1f1;
            display: block;
            font-size: 1.3rem;
            font-weight: bold;
            padding: 5px 0;
            border: 1px solid #ddd;
        }

    /*.form_style
    --------------------------------------------*/
        .form_style {
            padding: 30px;
        }
        .form_style > div {
        }
            .form_style > div input[type="submit"]{
                width: 40%;
                padding: 6px;
                margin-top: 10px;
            }

    /*.table_style
    --------------------------------------------*/
        .table_style dt.any,
        .table_style dt.req {
            position: relative;
        }
            .table_style dt.req::before {
                background: #ddb148;
                color: #fff;
                content: "必須";
                font-size: 1.0rem;
                position: absolute;
                top: 22px;
                right: 15px;
                padding: 1px 5px;
            }
            .table_style dt.any::before {
                background: #bfbfbf;
                color: #fff;
                content: "任意";
                font-size: 1.0rem;
                position: absolute;
                top: 22px;
                right: 15px;
                padding: 1px 5px;
            }

    /*.prod_type_a / .prod_type_b
    --------------------------------------------*/
        .prod_type_a,
        .prod_type_b {
            position: relative;
        }
            .prod_type_a::before {
                background: #ddb148;
                color: #fff;
                content: "A案件";
                font-size: 1.0rem;
                position: absolute;
                top: 0;
                right: 0;
                padding: 1px 8px;
            }
            .prod_type_b::before {
                background: #5372b2;
                color: #fff;
                content: "B案件";
                font-size: 1.0rem;
                position: absolute;
                top: 0;
                right: 0;
                padding: 1px 8px;
            }

/* ==================================================
    .investment
================================================== */
    .investment #h_logo img {
        height: 60px;
    }
    .investment #head_box {
        background: rgba(0, 0, 0, 0.1);
        border-bottom: 1px solid #333;
    }
    .investment .topics > dd {
        height: 700px;
    }
    .investment .topics.mode02 > dd {
        height: auto;
    }

/* ==================================================
    .qa_li
================================================== */
    .qa_li li {
        padding-bottom: 30px;
        border-bottom: 1px dashed #dedede;
        margin-bottom: 30px;
    }
        .qa_li li:last-child {
            border-bottom: none;
        }
    .qa_li .txt_q {
        font-weight: bold;
        position: relative;
        padding-left: 30px;
        margin-bottom: 20px;
    }
        .qa_li .txt_q::before {
            content: "Q｜";
            color: #008dff;
            font-weight: bold;
            position: absolute;
            left: 0;
        }
    .qa_li .txt_a {
        position: relative;
        padding-left: 30px;
    }
        .qa_li .txt_a::before {
            content: "A｜";
            color: #fe5e44;;
            font-weight: bold;
            position: absolute;
            left: 0;
        }

/* ==================================================
    .questionnaire_li
================================================== */
    .questionnaire_li {
        border-top: 1px dashed #dedede;
    }
    .questionnaire_li li {
        padding: 20px 0;
        border-bottom: 1px dashed #dedede;
    }
    .questionnaire_li li .left {
        width: 100px;
        float: left;
    }
    .questionnaire_li li .right {
        width: calc(100% - 100px);
        float: left;
    }

/* ==================================================
    .account_data
================================================== */
    .account_box {
        background: #fff;
        display: flex;
        border-top: 1px solid #ddd;
        border-left: 1px solid #ddd;
    }
        .account_box dl {
            box-sizing: border-box;
            font-size: 1.4rem;
            border-right: 1px solid #ddd;
        }
        .account_box dt {
            background: rgba(0,0,0,0.07);
            display: none;
            padding: 5px 10px;
        }
        .account_box dd {
            padding: 5px 10px;
        }
            .account_box dl:first-child {
                width: 45%;
            }
            .account_box dl:nth-child(2) {
                width: 16%;
            }
            .account_box dl:nth-child(3) {
                width: 20%;
            }
            .account_box dl:nth-child(4) {
                width: 20%;
            }
        .account_li > li:first-child .account_box dt {
            display: block;
        }
        .account_li > li:last-child .account_box dl {
            border-bottom: 1px solid #ddd;
        }

    @media print, screen and (max-width: 639px) {
        .account_box {
            display: block;
        }
            .account_box dt {
                display: block;
            }
            .account_box > dl {
                width: 100%!important;
                border-bottom: 1px solid #ddd;
            }
            .account_box > dl:first-child dt {
                background: rgba(0,0,0,0.3);
                color: #fff;
            }
        .account_li > li {
            margin-top: 20px;
        }
    }

/* ==================================================
    .fee_data_box
================================================== */
.fee_data_box {
    background: rgba(0, 0, 0, 0.1);
    border: 1px solid #333;
    margin-bottom: 20px;
}
.fee_data_box > dl > dt {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 20px;
    position: relative;
}
    .fee_data_box > dl > dt::after {
        content: "▼";
        font-size: 1.2rem;
        position: absolute;
        right: 20px;
        top: 22px;
    }
    .fee_data_box > dl > dt:hover {
        cursor: pointer;
    }
.fee_data_box > dl > dd {
    display: none;
    padding: 0 20px 20px;
}
.fee_data_box > dl > dd > ul > li {
    margin-top: 10px;
}
    .fee_data_box > dl > dd > ul > li:first-child {
        margin-top: 0;
    }

/* ==================================================
    .account_fee_box
================================================== */
    .account_fee_box {
        background: rgba(0, 0, 0, 0.1);
        padding: 20px;
        border: 1px solid #333;
        margin-top: 40px;
    }
        .account_fee_box > ul > li {
            margin-top: 20px;
        }
            .account_fee_box > ul > li:first-child {
                margin-top: 0;
            }
            .account_fee_box > ul > li > .price > span {
                padding-right: 30px;
            }
        .manage_par_p select {
            margin-top: 20px;
            margin-left: auto;
        }

    @media print, screen and (max-width: 639px) {
        .account_fee_box > ul > li > .price > span {
            display: block;
        }
    }

/* ==================================================
    .liquidation
================================================== */
.liquidation::after {
    content: "　未清算";
    font-size: 1.0rem;
}

/* ==================================================
    .help
================================================== */
.help_layout {
    margin-top: 50px;
}
.help_layout::after {
    content: "";
    display: block;
    clear: both;
}
.help_layout > h3 {
    font-size: 2.2rem;
    position: relative;
    padding-left: 8px;
    border-left: 6px solid #333;
    margin-bottom: 20px;
}
.help_layout > h3::before {
    content: "";
    width: 4px;
    height: 12px;
    background-color: #5174af;
    display: block;
    position: absolute;
    top: 1px;
    left: -5px;
}
.help_layout > p {
    font-size: 1.4rem;
}
.help_layout > p .p_new_task {
    font-weight: bold;
    color: #c75e40;
}
.help_layout > p .p_ongoing {
    font-weight: bold;
    color: #5372b2;
}
.help_layout > p .p_fix {
    font-weight: bold;
    color: #ddb148;
}
.help_layout > p .p_cancel {
    font-weight: bold;
    color: #cacaca;
}
.help_layout > .img_box {
    width: 70%;
    padding-top: 46%;
    margin-bottom: 20px;
}
.help_tit {
    color: #ddd;
    font-size: 2.8rem;
    margin-top: 50px;
}

/* ==================================================
    .index
================================================== */
.index {
    border-bottom: 1px solid #ddd;
}
    .index > dl > dt {
        margin-bottom: 15px;
    }

/* ==================================================
    .voice
================================================== */
.voice_li li::after {
    content: "";
    display: block;
    clear: both;
}












