@charset "utf-8";

/* =========================
    estate-supportページ専用CSS
========================================= */

/* ---
    共通
-------------------------------------------------------- */

.pc_only{
    display: block;
    @media (max-width:1023px){
        display: none;
    }
}
.sp_only{
    display: none;
    @media (max-width:1023px){
        display: block;
    }
}

.gold{ color: #b89a5b; }

.bold{ font-weight: 700; }

.center{ text-align: center; }

.gochic{
    font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP",sans-serif;
}

.font16{ font-size: 1.6rem; }

/* 画像配置 */
.center_img{
    display: block;
    margin: 30px auto;
}

/* 見出し */
h2.sec_title{
    &.white{
        color: #fff;
        @media (max-width:1023px){
            font-size: 3.4rem;
        }
    }
}

h3.sec_title{
    color: #121212;
    font-size: 4.0rem;
    padding: 40px 0;
    margin-bottom: 20px;
    position: relative;
    @media (max-width:1023px){
        font-size: 2.4rem;
        line-height: 1.4;
    }
    &::before{
        position: absolute;
        content: "";
        bottom: 20px;
        height: 2px;
        background-color: #333333;
        width: 80px;
        display: inline-block;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }
}

h4{
    color: #b89a5b;
    font-weight: 700;
    font-size: 2.0rem;
}

/* リスト 共通 */
.list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 40px auto;
    /* 1カラム */
    &.list1{
        li{
            width: 100%;
        }
    }
    /* 2カラム */
    &.list2{
        justify-content: space-between;
        column-gap: 0;
        li{
            width: calc(100% / 2);
        }
    }
    /* 3カラム */
    &.list3{
        justify-content: space-between;
        column-gap: 20px;
        @media (max-width:1023px){
            column-gap: 0;
            row-gap: 20px;
        }
        li{
            width: calc(100% / 3 - 20px);
            @media (max-width:1023px){
                width: 100%;
            }
        }
    }
}

/* 左右分割ボックス（共通） */
.flex_two_box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 30px;
    @media (max-width:1023px){
        column-gap: 0;
        row-gap: 30px;
    }
    > div{
        width: calc(100% / 2 - 30px);
        @media (max-width:1023px){
            width: 100%;
        }
    }
}

/* 装飾ボックス（共通） */
.decorate_box{
    border: 5px solid #74bbe1;
    background-color: #fff;
    color: #74bbe1;
    border-radius: 10px;
    ul{
        padding: 1.5em;
        @media (max-width:1023px){
            padding: 1em;
        }
    }
}

/* ---
    相続・不動産ワンストップサポートページ（estate-support）
-------------------------------------------------------- */
#estate-support{

    /* 共通 */
    .column{
        padding: 0;
        .inner{
            padding: 60px 0;
            @media (max-width:1023px){
                padding: 30px 0;
                max-width: calc(100% - 40px);
                margin: 0 auto;
            }
        }
    }

    /* section */
    /* 葬儀のその後まで、寄り添い続ける */
    .column_first{
        background-image: url(../img/common/column_first_bg.jpg);
        background-size: cover;
        background-position: center top;
        background-repeat: no-repeat;
        @media (max-width:1023px){
            background-image: url(../img/common/column_first_bg_sp.jpg);
        }
        .inner{
            text-align: center;
            color: #000;
            padding: 60px 0;
            @media (max-width:1023px){
                padding: 30px 0;
            }
            .fm_bg{
                display: inline-block;
                padding: 60px;
                background: rgba(255,255,255,0.8);
                border-radius: 30px;
                @media (max-width:1023px){
                    padding: 30px;
                }
            }
            .first_message{
                display: inline-block;
                padding-bottom: 20px;
                margin-bottom: 20px;
                border-bottom: 1px solid #b89a5b;
                .sub_text{
                    font-size: 2.8rem;
                    font-weight: 700;
                    @media (max-width:1023px){
                        font-size: 2.0rem;
                        line-height: 1.4;
                    }
                }
                + p{
                    margin-bottom: 20px;
                    font-size: 2.2rem;
                    @media (max-width:1023px){
                        font-size: 1.6rem;
                        letter-spacing: 0;
                        line-height: 1.4;
                    }
                    + p{
                        @media (max-width:1023px){
                            line-height: 1.4;
                        }
                    }
                }
            }
        }
    }

    /* section */
    /* なぜ、葬儀社が相続・不動産まで支援するのか */
    .column_why{
        background-color: #fdf9f6;
        .inner{
            > p{
                margin-bottom: 30px;
                &:last-child{
                    margin-bottom: 0;
                }
            }
            .flex_two_box{
                .rightBox{
                    > p{
                        margin-bottom: 20px;
                    }
                    .end_text{
                        font-size: 2.0rem;
                        font-weight: 700;
                        font-style: italic;
                        span{
                            color: #b89a5b;
                        }
                    }
                }
            }

            .decorate_box{
                margin: 30px auto;
                ul{
                    li{
                        font-weight: 700;
                        font-size: 2.0rem;
                        text-align: center;
                        @media (max-width:1023px){
                            font-size: 1.6rem;
                            line-height: 1.4;
                            margin-bottom: 10px;
                        }
                        &:last-child{
                            @media (max-width:1023px){
                                margin-bottom: 0;
                            }
                        }
                    }
                }
            }
        }
    }

    /* section */
    /* 売るためではなく、守るための不動産サポート */
    .column_protect{

        .inner{
            /* リストの装飾 */
            .list_protect{
                justify-content: center;
                gap: 20px;
                @media (max-width:1023px){
                    justify-content: space-around;
                    gap: 10px;
                    margin: 20px auto;
                }
                li{
                    width: calc(100% / 3 - 20px);
                    max-width: 260px;
                    aspect-ratio: 1 / 1;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-size: 3.0rem;
                    font-weight: 700;
                    color: #fff;
                    background-color: #fd9583;
                    border-radius: 100%;
                    border: 10px solid #f48471;
                    box-sizing: border-box;
                    line-height: 1.4;
                    padding: 0 0.75em;
                    text-align: center;
                    @media (max-width:1023px){
                        width: calc(100% / 2 - 10px);
                        margin: 0 auto;
                        font-size: 1.6rem;
                        border: 5px solid #f48471;
                    }
                }
            }
        }
    }

    /* section */
    /* 相続発生後に必要となる主な手続き */
    .column_process{
        background-image: url(../img/common/bg1.png);
        .inner{
            /* リストの装飾 */
            .list_process{
                align-items: unset;
                margin: 80px auto 40px auto;
                @media (max-width:1023px){
                    margin: 40px auto 20px auto;
                }
                > li{
                    background-color: #fff;
                    border-radius: 10px;
                    padding: 3em 2em 2em 2em;
                    box-shadow: 0 0 6px #cfcfcf;
                    position: relative;
                    @media (max-width:1023px){
                        padding: 2em 1em 1em 1em;
                        margin-bottom: 40px;
                    }
                    .icon{
                        position: absolute;
                        left: 50%;
                        top: -40px;
                        width: 80px;
                        height: 80px;
                        transform: translateX(-50%);
                        img{
                            display: block;
                            width: 100%;
                        }
                    }
                    h4{
                        padding-bottom: 10px;
                        margin-bottom: 10px;
                        border-bottom: 1px solid #e9ebee;
                    }
                    > .in_list{
                        li{
                            width: 100%;
                            text-align: left;
                            &::before{
                                content: "・";
                            }
                        }
                    }
                }
            }
        }
    }

    /* section */
    /* 相続財産の中でも、不動産は特に慎重な判断が必要です */
    .column_careful{
        background-color: #fdf9f6;
        .inner{
            .careful_detail_box{
                max-width: 82.5%;
                margin: 0 auto;
                background-color: #f4e36e;
                border-radius: 10px;
                @media (max-width:1023px){
                    max-width: 100%;
                }
                .cdb_inbox{
                    padding: 40px;
                    color: #000;
                    @media (max-width:1023px){
                        padding: 20px;
                    }
                    .list_careful{
                        margin: 0 auto 30px auto;
                        padding-bottom: 30px;
                        border-bottom: 1px solid #404d61;
                        @media (max-width:1023px){
                            padding-bottom: 15px;
                            margin: 0 auto 15px auto;
                            flex-direction: column;
                        }
                        li{
                            font-size: 2.0rem;
                            font-weight: 700;
                            @media (max-width:1023px){
                                width: 100%;
                            }
                            &::before{
                                content: "●";
                                padding-right: 5px;
                            }
                        }
                    }
                    h4{
                        display: inline-block;
                        background-color: #fff;
                        text-align: center;
                        padding: 0.1em 1em;
                    }
                }
            }
        }
    }

    /* section */
    /* 窓口はひとつ。だから、迷わない */
    .column_confused{
        .inner{
            .flex_two_box{
                align-items: center;
                .leftBox{
                    p{
                        margin-bottom: 30px;
                        font-size: 1.8rem;
                        &:last-child{
                            margin-bottom: 0;
                        }
                        span{
                            font-weight: 700;
                            text-decoration: underline;
                        }
                    }
                }
                .rightBox{
                    background-color: #bdd5a7;
                    border-radius: 10px;
                    .rightBox_inbox{
                        padding: 30px;
                        @media (max-width:1023px){
                            padding: 15px;
                        }
                        .title{
                            color: #fff;
                            background-color: #604C3F;
                            font-weight: bold;
                            font-size: 2.4rem;
                            text-align: center;
                            display: inline-block;
                            padding: 0.1em 2em;
                            margin: 0 auto;
                            border-radius: 50vw;
                        }
                        .list{
                            margin: 20px auto 0 auto;
                            li{
                                font-size: 2.4rem;
                                font-weight: 700;
                                color: #000;
                                @media (max-width:1023px){
                                    font-size: 1.6rem;
                                }
                                &::before{
                                    content: "◆";
                                    color: #000;
                                    padding-right: 5px;
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /* section */
    /* ご相談・打ち合わせについて */
    .column_consul{
        background-image: url(../img/common/bg1.png);
        .inner{
            .flex_two_box{
                align-items: center;
                .leftBox{
                    .leftBox_inbox{
                        h4{
                            color: #000;
                            margin-bottom: 20px;
                            text-align: center;
                            @media (max-width:1023px){
                                font-size: 1.8rem;
                            }
                            span{
                                background-color: #f48471;
                                color: #fff;
                                text-align: center;
                                padding: 0.5em 2em;
                                border-radius: 50vw;
                                margin-right: 10px;
                                @media (max-width:1023px){
                                    display: block;
                                }
                            }
                        }
                        .meet_place{
                            background-color: #fff;
                            padding: 15px;
                            border: 1px solid #cfcfcf;
                            span{
                                display: block;
                                font-weight: 700;
                                color: #000;
                                font-size: 1.8rem;
                                @media (max-width:1023px){
                                    font-size: 1.6rem;
                                }
                            }
                        }
                    }
                }
                .rightBox{
                    .rightBox_inbox{
                        .decorate_box{
                            ul{
                                li{
                                    font-size: 2.0rem;
                                    @media (max-width:1023px){
                                        font-size: 1.6rem;
                                        line-height: 1.4;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /* section */
    /* よくあるご相談内容 */
    .column_q_and_a{
        background-color: #fdf9f6;
        .inner{
            .list_q_and_a{
                .q_and_a_box{
                    background-color: #fff;
                    margin-bottom: 30px;
                    padding: 15px;
                    border: 1px solid #efefef;
                    dt{
                        display: flex;
                        margin-bottom: 15px;
                        padding-bottom: 10px;
                        border-bottom: 1px dashed #cfcfcf;
                        font-size: 2.4rem;
                        line-height: 1.4;
                        font-weight: 700;
                        @media (max-width:1023px){
                            font-size: 1.8rem;
                        }
                        &::before{
                            content: "Ｑ";
                            font-weight: 700;
                            color: darkcyan;
                            margin-right: 10px;
                        }
                    }
                    dd{
                        display: flex;
                        line-height: 1.4;
                        font-size: 1.8rem;
                        @media (max-width:1023px){
                            font-size: 1.6rem;
                        }
                        &::before{
                            content: "Ａ";
                            font-weight: 700;
                            color: #BA3E63;
                            margin-right: 10px;
                            font-size: 2.4rem;
                            @media (max-width:1023px){
                                font-size: 1.8rem;
                            }
                        }
                    }
                }
            } 
        }
    }

    /* section */
    /* まずは、お話しをお聞かせください */
    .column_please_contact{
        background-color: #1e293b;
        .inner{
            color: #fff;
            h3.sec_title{
                font-size: 3.6rem;
                color: #fff;
                &::before{
                    background-color: #fff;
                }
            }
            .list_please_contact{
                max-width: 640px;
                column-gap: 30px;
                margin: 60px auto 0 auto;
                @media (max-width:1023px){
                    flex-direction: column;
                    row-gap: 20px;
                    margin: 30px auto 60px auto;
                }
                li{
                    width: calc(100% / 2 - 30px);
                    @media (max-width:1023px){
                        width: 100%;
                    }
                    &.tel{
                        a{
                            font-size: 3.0rem;
                            background-color: #BA3E63;
                            line-height: 1;
                        }
                    }
                    &.contact{
                        a{
                            background-color: #446A34;
                            &:hover{
                                color: #446A34;
                                background-color: #fff;
                                border:2px solid #446A34;
                                transition: 0.3s;
                                opacity: 1;
                            }
                        }
                    }
                    a{
                        font-size: 2.0rem;
                        font-weight: 700;
                        display: block;
                        width: 100%;
                        padding: 20px 0;
                        color: #fff;
                        text-align: center;
                        border-radius: 50vw;
                        border: 2px solid #fff;
                    }
                }
            }
        }
    }

    /* section */
    /* 無料相談フォーム */
    .column_contactform{
        background-image: url(../img/common/bg1.png);
        .inner{
            padding: 60px 0 100px 0;
            @media (max-width:1023px){
                padding: 30px 0 50px 0;
            }
            /* フォーム部分 */
            .contact_form{
                max-width: 1020px;
                margin: 60px auto 0 auto;
                padding: 60px;
                background-color: #fff;
                border-radius: 15px;
                box-shadow: 0 0 6px #cfcfcf;
                @media (max-width:1023px){
                    max-width: 100%;
                    margin: 30px auto 0 auto;
                    padding: 20px;
                }
                .form{
                    dl{
                        display: flex;
                        flex-wrap: wrap;
                        align-items: center;
                        padding-bottom: 15px;
                        margin-bottom: 15px;
                        border-bottom: 1px solid #efefef;
                        column-gap: 20px;
                        @media (max-width:1023px){
                            flex-direction: column;
                        }
                        dt{
                            width: 30%;
                            display: flex;
                            justify-content: space-between;
                            font-weight: 700;
                            @media (max-width:1023px){
                                width: 100%;
                                margin-bottom: 10px;
                            }
                            span{
                                display: flex;
                                align-items: center;
                                font-size: 1.4rem;
                                background-color: #cc0000;
                                color: #fff;
                                padding: 0.1em 1em;
                                border-radius: 6px;
                            }
                        }
                        dd{
                            flex: 1;
                            @media (max-width:1023px){
                                flex: auto;
                                width: 100%;
                            }
                        }
                    }

                    input[type="text"],
                    input[type="tel"],
                    input[type="email"],
                    textarea{
                        width: 100%;
                        box-sizing: border-box;
                        padding: 10px;
                        font-size: 16px;
                        border: 1px solid #cfcfcf;
                        border-radius: 10px;
                    }

                    /* ラジオボタン */
                    .wpcf7-list-item{
                        display: block;
                    }

                    /* 送信ボタン */
                    input.submit-btn{
                        width: 100%;
                        transition: 0.5s;
                        border-radius: 5px;
                        box-shadow: 0px 4px 0px 0px #aa2e53;
                        border: 1px solid #ba3f63;
                        background: #ba3f63;
                        font-size: 26px;
                        font-weight: 700;
                        margin-top: 30px;
                        line-height: 60px;
                        color: #fff;
                        &:hover{
                            color: #ba3f63;
                            background-color: #fff;
                            cursor: pointer;
                        }
                    }
                }
            }
        }
    }

}