@charset "UTF-8";
/********************************************************************************

page-case.css　導入事例css

********************************************************************************/

/*######################################################################
 一覧
######################################################################*/
/*============================================================
 メインビジュアル
*============================================================*/
#page-case-list #mainvisual {
}

/*============================================================
 セクション共通
*============================================================*/
#page-case-list .section .sec-title {
    padding: 0 0 10px 20px;
    border-bottom: solid 1px var(--common-color-black);
    position: relative;
    margin-bottom: 40px;
    line-height: 44px;
    /* text-box-trim: trim-start;
    text-box-edge: cap alphabetic; */
}
#page-case-list .section .sec-title::before {
    content: "";
    display: block;
    width: 4px;
    height: 40px;
    background-color: var(--common-color-black);
    position: absolute;
    bottom: 10px;
    left: 0;
}

/*============================================================
 セクション
*============================================================*/
#page-case-list #sec-post-list {
}


/*######################################################################
 詳細
######################################################################*/
/*============================================================
 セクション共通
*============================================================*/
#page-case .section {
    margin-bottom: 0;
}
#page-case #section-layout .before-border::before {
    content: "";
    display: block;
    padding-top: 100px;
    border-top: solid 1px #ccc;
    width: min(var(--common-inner-base-width), calc(100% - 40px));
    position: relative;
    left: 50vw;
    transform: translateX(-50%);
}


/*============================================================
 セクション 概要
*============================================================*/
#page-case #sec-summary {
}
/* #page-case #sec-summary::after {
    content: "";
    display: block;
    padding-top: 100px;
    border-bottom: solid 1px #ccc;
    width: min(var(--common-inner-base-width), calc(100% - 40px));
    position: relative;
    left: 50vw;
    transform: translateX(-50%);
} */
#page-case #sec-summary .post-title {
    font-weight: 500;
    font-size: clamp(var(--rem20px), 3.39vw, var(--rem42px));
    line-height: 140%;
    color: var(--common-color-accent);
    margin-bottom: 20px;
}
#page-case #sec-summary .post-title-sub {
    font-weight: 500;
    font-size: clamp(var(--rem16px), 1.94vw, var(--rem24px));
    line-height: 180%;
    margin-bottom: 30px;
}
#page-case #sec-summary .problem {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 40px;
}
#page-case #sec-summary .problem::before {
    content: "課題";
    display: block;
    width: 64px;
    height: 64px;
    border: solid 1px var(--common-color-black);
    align-content: center;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
}
#page-case #sec-summary .problem p {
    flex: 1;
}
#page-case #sec-summary .main-image {
    margin-bottom: 40px;
}

#page-case #sec-summary .block-info {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 60px;
    padding: 40px;
    background-color: var(--common-color-white);
}
#page-case #sec-summary .block-info .client {
    width: 100%;
    max-width: 512px;
}
#page-case #sec-summary .block-info .client .name {
    padding-left: 20px;
    border-left: solid 4px var(--common-color-black);
    font-weight: 500;
    font-size: clamp(var(--rem20px), 2.42vw, var(--rem30px));
    line-height: 140%;
    margin-bottom: 24px;
}
#page-case #sec-summary .block-info .client .lead {
    
}
#page-case #sec-summary .block-info .data {
    flex: 1;
}
#page-case #sec-summary .block-info .data .tbl {
    width: 100%;
}
#page-case #sec-summary .block-info .data .tbl tr {
    border-top: solid 1px var(--common-color-border);
    border-bottom: solid 1px var(--common-color-border);
}
#page-case #sec-summary .block-info .data .tbl :is(th, td) {
    padding: 10px 0;
    font-size: 14px;
    line-height: 180%;
    text-align: left;
}
#page-case #sec-summary .block-info .data .tbl th {
    width: 120px;
}
#page-case #sec-summary .block-info .data .tbl td a {
    color: #347ABE;
}
#page-case #sec-summary .block-info .data .tbl .wrap-url {
    overflow-wrap: anywhere;
    word-break: normal;
    line-break: strict;
}

/*============================================================
 セクション 本文
*============================================================*/
#page-case #sec-post .cb-case-slider::before {
    font-size: clamp(100px, 16.13vw, 200px);
}
#page-case #sec-post .cb-case-video::before {
    font-size: clamp(100px, 16.13vw, 200px);
}

/*============================================================
 セクション ユーザーの声
*============================================================*/
#page-case #sec-user-voice {
}
/* #page-case #sec-user-voice::before {
    content: "";
    display: block;
    padding-top: 100px;
    border-top: solid 1px #ccc;
    width: min(var(--common-inner-base-width), calc(100% - 40px));
    position: relative;
    left: 50vw;
    transform: translateX(-50%);
} */
#page-case #sec-user-voice .voice-list {
    padding: 60px 40px;
    background-color: var(--common-color-white);
    display: flex;
    flex-direction: column;
    gap: 40px;
}
#page-case #sec-user-voice .voice-list .label {
    font-weight: 500;
    font-size: 20px;
    line-height: 180%;
    margin-bottom: 20px;
}
#page-case #sec-user-voice .voice-list .lead a {
    color: #347ABE;
}

/*============================================================
 セクション 資料請求はこちら
*============================================================*/
#page-case #sec-docuiment-dl {
    height: 352px;
    background-image: url(../images/case/document-dl-bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    align-content: center;
    position: relative;
}
#page-case #sec-docuiment-dl::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(10, 45, 78, 0.8);
}
#page-case #sec-docuiment-dl .layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 40px;
    position: relative;
    z-index: 10;
}
#page-case #sec-docuiment-dl .layout .info {
    text-align: center;
    color: var(--common-color-white);
}
#page-case #sec-docuiment-dl .layout .info .title {
    font-weight: 500;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 16px;
}
#page-case #sec-docuiment-dl .layout .info .title-sub {
    font-weight: 500;
    font-size: 18px;
    line-height: 180%;
}
#page-case #sec-docuiment-dl .layout .action {
    width: 100%;
}
#page-case #sec-docuiment-dl .layout .action .parts-btn {
    --min-width: unset;
    --max-width: 400px;
    --width: 100%;
}

/*============================================================
 セクション 導線
*============================================================*/
#page-case #sec-conductor {
}
#page-case #sec-conductor .layout {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 40px;
}
#page-case #sec-conductor .layout .parts-btn {
    --min-width: unset;
    --max-width: 400px;
    --width: 100%;
    margin: 0;
}


/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 Tablet
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/
@media screen and (max-width: 1239px) {
    /*######################################################################
     一覧
    ######################################################################*/
    /*============================================================
     メインビジュアル
    *============================================================*/
    #page-case-list #mainvisual {
    }
    @media screen and (max-width: 999px) {
        #page-case-list .sidebar-category .term-list, .sidebar-category .term-list .list.list-term {
            flex-direction: row;
            flex-wrap: wrap;
        }
    }
    

    /*######################################################################
     詳細
    ######################################################################*/
    /*============================================================
     セクション 概要
    *============================================================*/
    #page-case #sec-summary .block-info {
        flex-direction: column;
    }
    #page-case #sec-summary .block-info .client {
        max-width: unset;
    }
    #page-case #sec-summary .block-info .data .tbl th {
        width: 142px;
    }

}



/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 SP
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/
@media screen and (max-width: 767px) {
    /*######################################################################
     一覧
    ######################################################################*/
    /*============================================================
     メインビジュアル
    *============================================================*/
    #page-case-list #mainvisual {
    }


    /*######################################################################
     詳細
    ######################################################################*/
    /*============================================================
     セクション共通
    *============================================================*/
    #page-case #section-layout .before-border::before {
        padding-top: 40px;
    }

    /*============================================================
     セクション 概要
    *============================================================*/
    #page-case #sec-summary .problem {
        flex-direction: column;
    }
    #page-case #sec-summary .problem::before {
        width: 100%;
        height: 30px;
        padding: 0 10px;
        text-align: left;
    }
    #page-case #sec-summary .problem p {
        font-size: 14px;
    }
    #page-case #sec-summary .main-image {
        margin-bottom: 20px;
    }
    #page-case #sec-summary .block-info {
        padding: 20px;
    }
    #page-case #sec-summary .block-info .client .lead {
        font-size: 14px;
    }

    /*============================================================
     セクション ユーザーの声
    *============================================================*/
    #page-case #sec-user-voice .voice-list {
        padding: 20px;
        gap: 20px;
    }
    #page-case #sec-user-voice .voice-list .label {
        font-size: 18px;
        margin-bottom: 16px;
    }
        
}
