@charset "utf-8";


/**/
html {
    scroll-behavior: smooth;
}

body{
    font-family: 'Yu Gothic', 'YuGothic', '游ゴシック', 'Hiragino Kaku Gothic Pro', 'Meiryo', sans-serif;
    background-color: #fff;
}



/**/
.container{
    max-width:1180px;
    margin:0 auto;
    align-items: center;
    @media screen and (max-width: 1240px){
        max-width: 960px;
    }
    @media screen and (max-width: 1024px){
        max-width: 780px;
    }
    @media screen and (max-width: 768px){
        max-width: 84%;
    }
}
.ttl{
    font-family: 'manrope' ,sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0.04em;
    text-align: left;
    color: #617FA9;
    margin-bottom: 20px;
    @media screen and (max-width: 768px){
        font-size: 20px;
        line-height: 16px;
    }
    @media screen and (max-width: 480px){
        font-size: 16px;
    }
}
.heading{
    font-size: 32px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #0d2f62;
    margin-bottom: 52px;
    @media screen and (max-width: 1240px){
        margin-bottom: 32px;
    }
    @media screen and (max-width: 768px){
        font-size: 20px;
        font-weight: 700;
        line-height: 20px;
        margin-bottom: 40px;
    }
}
.title{
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    letter-spacing: 0.04em;
    color: #ffffff;
    background-color: #0d2f62;
    padding: 0 44px;
    display: flex;
    align-items: center;
    height: 50px;
    margin-bottom: 40px;
    @media screen and (max-width: 768px){
        font-size: 16px;
        font-weight: 500;
        line-height: 32px;
        margin-bottom: 36px;
        padding: 14px 0px;
        height: auto;
        word-break: keep-all;
        .ttl_text{
            width: 84%;
            margin: 0 auto 0 auto;
            align-items: center;
            text-align: left;
        }
    }
}
.note{
    font-size: 14px;
    font-weight: 500;
    line-height: 14px;
    color: #000;
    margin-top: 12px;
}
table{
    text-align: center;
    border-collapse: collapse;
    font-size: 14px;
    font-weight: 500;
    line-height: 21px;
    letter-spacing: 0.04em;
    @media screen and (max-width: 768px){
        line-height: 14px;
        letter-spacing: 0.04em;
    }
    th{
        background-color: #E9EFF3;
        font-weight: 500;
    }
    tr:first-child th:nth-child(n+2){
        font-weight: 700;
        @media screen and (max-width: 768px){
            font-weight: 500;
        }
    }
}



/**/
header{
    .container{
        max-width: 100%;
        padding: 113px 26px 0;
        @media screen and (max-width: 768px){
            padding: 113px 0 0 0;
        }
        .header{
            padding-top: 35px;
            margin-left: 30px;
            width: 251px;
            position: absolute;
            top: 0;
            @media screen and (max-width: 768px){
                padding-top: 28px;
                width: 242px;
                margin-left: 48px;
            }
            @media screen and (max-width: 480px){
                margin-left: 18px;
            }
            .forhome{
                width: 251px;
                @media screen and (max-width: 768px){
                    width: 242px;
                }
                .logo{
                    width: auto;
                    height: 41px;
                    @media screen and (max-width: 768px){
                        width: 242px;
                        height: auto;
                    }
                }
            }
        }
        .header.fixed{
            position: fixed;
            padding: 0;
        }
        .mainvisual{
            max-width: 100%;
            background-color: #E9EFF3;
            height: 200px;
            align-items: center;
            justify-content: center;
            display: flex;
            .toc{
                font-family: 'Montserrat' , sans-serif;
                font-size: 48px;
                font-weight: 600;
                line-height: 48px;
                letter-spacing: 0.04em;
                text-align: center;
                color: #0D2F62;
                transform: scaleX(0.86);
                margin-bottom: 18px;
                @media screen and (max-width: 768px){
                    font-size: 32px;
                    line-height: 32px;
                }
            }
            .description{
                font-size: 16px;
                font-weight: 700;
                line-height: 16px;
                text-align: center;
                color: #0D2F62;
                @media screen and (max-width: 768px){
                    font-size: 13px;
                    line-height: 13px;
                }
            }
        }
    }
}



/**/
.company{
    margin-top: 120px;
    padding: 0 24px;
    @media screen and (max-width: 1240px){
        padding: 0px 40px 0;
    }
    @media screen and (max-width: 1024px){
        padding: 0px 12px 0;
    }
    @media screen and (max-width: 768px){
        margin-top: 40px;
        padding: 0 ;
    }
    .container{
        .description{
            font-size: 14px;
            font-weight: 500;
            line-height: 28px;
            color: #333333;
            @media screen and (max-width: 768px){
                margin-bottom: 40px;
                font-size: 16px;
                line-height: 32px;
            }
        }
        .contents{
            margin-top: 66px;
            @media screen and (max-width: 768px){
                margin-top: 0;
                margin-bottom: 40px;
            }
            .box{
                width: 383px;
                height: 383px;
                border-radius: 50%;
                border: 1px solid #0D2F62;
                @media screen and (max-width: 1240px){
                    width: 320px;
                    height: 320px;
                }
                @media screen and (max-width: 1024px){
                    width: 383px;
                    height: 383px;
                    margin: 0 auto;
                }
                @media screen and (max-width: 768px){
                    aspect-ratio: 1;
                    height: auto;
                }
                @media screen and (max-width: 480px){
                    width: 100%;
                    width: 320px;
                    height: 320px;
                }
                .number{
                    position: absolute;
                    margin-left: 24px;
                    width: 67px;
                    height: 67px;
                    border-radius: 50%;
                    font-family: 'manrope' ,sans-serif;
                    font-size: 20px;
                    font-weight: 800;
                    line-height: 20px;
                    letter-spacing: 0.04em;
                    color: #ffffff;
                    display: flex;
                    text-align: center;
                    align-items: center;
                    justify-content: center;
                    background-image: radial-gradient(circle, #0D2F62 25px, #e9eff3 25px);
                }
                .text_home{
                    width: 252px;
                    margin: 44px auto 0;
                    @media screen and (max-width: 1240px){
                        margin: 16px auto 0;
                    }
                    @media screen and (max-width: 1024px){
                        margin: 44px auto 0;
                    }
                    @media screen and (max-width: 480px){
                        margin: 32px auto 0;
                        width: 200px;
                    }
                    .frame{
                        width: 90px;
                        height: 88px;
                        margin: 0 auto 24px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        @media screen and (max-width: 1240px){
                            width: 60px;
                            aspect-ratio: 90 / 88;
                            height: auto;
                            margin: 0 auto 12px;
                        }
                        @media screen and (max-width: 1024px){
                            width: 90px;
                            margin: 0 auto 24px;
                        }
                        @media screen and (max-width: 480px){
                            width: 60px;
                            margin: 0 auto 12px;
                        }
                    }
                    .division{
                        font-size: 20px;
                        font-weight: 700;
                        line-height: 24px;
                        text-align: center;
                        color: #0D2F62;
                        margin-bottom: 14px;
                        @media screen and (max-width: 1240px){
                            margin-bottom: 10px;
                        }
                        @media screen and (max-width: 1024px){
                            margin-bottom: 14px;
                        }
                        @media screen and (max-width: 480px){
                            margin-bottom: 10px;
                            font-size: 18px;
                            line-height: 21.6px;
                        }
                    }
                    .description{
                        font-size: 14px;
                        font-weight: 500;
                        line-height: 28px;
                        color: #333333;
                        @media screen and (max-width: 480px){
                            line-height: 22.4px;
                            display: flex;
                            justify-content: center;
                            align-items: center; /* 縦横中央揃え */
                        }
                    }
                }
            }
            @media screen and (max-width: 1024px) and (min-width: 768px){
                .box:nth-child(1){
                    margin: 0 auto 0 0;
                }
                .box:nth-child(2){
                    margin: -60px 0 -60px auto;
                }
                .box:nth-child(3){
                    margin: 0 auto 0 0;
                }
            }
            @media screen and (max-width: 768px){
                .box:nth-child(2){
                    margin: 40px auto;
                }
            }
        }
    }
    .container:nth-child(2){
        max-width: 1230px;
        @media screen and (max-width: 1240px){
            max-width: 1000px;
        }
        @media screen and (max-width: 1024px){
            max-width: 792px;
        }
        @media screen and (max-width: 768px){
            max-width: 89.6%;
        }
        .contents{
            display: flex;
            justify-content: space-between;
            @media screen and (max-width: 1024px){
                display: block;
            }
        }
    }
    .list{
        @media screen and (max-width: 768px){
            max-width: 100%;
        }
        .contents{
            .settlement{
                margin-top: 48px;
            }
            .text_home{
                width: 100%;
                color: #333333;
                @media screen and (max-width: 768px){
                    max-width: 84%;
                    margin: 0 auto;
                    align-items: center;
                }
                .a{
                    word-break: keep-all;
                    @media screen and (max-width: 768px){
                        display: none;
                    }
                    th{
                        height: 50px;
                        width: 102px;
                        border: 1px solid #333333;
                    }
                    td{
                        width: 108px;
                        height: 50px;
                        border: 1px solid #333333;
                    }
                }
                .b{
                    word-break: keep-all;
                    @media screen and (max-width: 768px){
                        display: none;
                    }
                    th{
                        height: 50px;
                        width: 102px;
                        border: 1px solid #333333;
                    }
                    td{
                        height: 50px;
                        width: 178px;
                        border: 1px solid #333333;
                    }
                    .center{
                        width: 204px;
                    }
                    .right{
                        width: 316px;
                    }
                }
                .responsive{
                    display: none;
                    @media screen and (max-width: 768px){
                        display: table;
                        width: 100%;
                        th{
                            height: 36px;
                            border: 1px solid #333333;
                        }
                        td{
                            height: 40px;
                            border: 1px solid #333333;
                            width: 50%;
                        }
                        th:first-child{
                            width: 64px;
                            min-width: 64px;
                            max-width: 64px;
                        }
                        .fee{
                            padding-top: 24px;
                            vertical-align: top;
                            text-align: center;
                            width: 64px;
                        }
                        .fee span{
                            display: inline-block;
                            -webkit-writing-mode: vertical-lr;
                            -ms-writing-mode: tb-lr;
                            writing-mode: vertical-rl;
                            vertical-align: middle;
                            white-space: nowrap;
                            text-align: start;
                        }
                    }
                }
                .res_sec{
                    @media screen and (max-width: 768px){
                        td{
                            height: 78px;
                        }
                        tr:nth-child(6) td{
                            height: 148px;
                        }
                        .fee{
                            padding-top: 16px;
                        }
                    }
                }
            }
        }
    }
}



/**/
.individual{
    margin-top: 92px;
    @media screen and (max-width: 1240px){
        padding: 0px 40px 0;
    }
    @media screen and (max-width: 1024px){
        padding: 0px 12px 0;
    }
    @media screen and (max-width: 768px){
        margin-top: 128px;
        padding: 0;
    }
    .container{
        .description{
            font-size: 14px;
            font-weight: 500;
            line-height: 28px;
            color: #333333;
            @media screen and (max-width: 768px){
                margin-bottom: 40px;
                font-size: 16px;
                line-height: 32px;
            }
        }
        .contents{
            margin-top: 66px;
            @media screen and (max-width: 768px){
                margin-top: 0;
                margin-bottom: 40px;
            }
            .box{
                width: 383px;
                height: 383px;
                border-radius: 50%;
                border: 1px solid #0D2F62;
                @media screen and (max-width: 1240px){
                    width: 320px;
                    height: 320px;
                }
                @media screen and (max-width: 1024px){
                    width: 383px;
                    height: 383px;
                    margin: 0 auto;
                }
                @media screen and (max-width: 768px){
                    aspect-ratio: 1;
                    height: auto;
                }
                @media screen and (max-width: 480px){
                    width: 100%;
                    width: 320px;
                    height: 320px;
                }
                .number{
                    position: absolute;
                    margin-left: 24px;
                    width: 67px;
                    height: 67px;
                    border-radius: 50%;
                    font-family: 'manrope' ,sans-serif;
                    font-size: 20px;
                    font-weight: 800;
                    line-height: 20px;
                    letter-spacing: 0.04em;
                    color: #ffffff;
                    display: flex;
                    text-align: center;
                    align-items: center;
                    justify-content: center;
                    background-image: radial-gradient(circle, #0D2F62 25px, #e9eff3 25px);
                }
                .text_home{
                    width: 252px;
                    margin: 44px auto 0;
                    @media screen and (max-width: 1240px){
                        margin: 16px auto 0;
                    }
                    @media screen and (max-width: 1024px){
                        margin: 44px auto 0;
                    }
                    @media screen and (max-width: 480px){
                        margin: 32px auto 0;
                        width: 200px;
                    }
                    .frame{
                        width: 90px;
                        height: 88px;
                        margin: 0 auto 24px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        @media screen and (max-width: 1240px){
                            width: 60px;
                            aspect-ratio: 90 / 88;
                            height: auto;
                            margin: 0 auto 12px;
                        }
                        @media screen and (max-width: 1024px){
                            width: 90px;
                            margin: 0 auto 24px;
                        }
                        @media screen and (max-width: 480px){
                            width: auto;
                            height: 59px;
                            margin: 0 auto 12px;
                            .match{
                                height: 59px;
                            }
                        }
                    }
                    .division{
                        font-size: 20px;
                        font-weight: 700;
                        line-height: 24px;
                        text-align: center;
                        color: #0D2F62;
                        margin-bottom: 14px;
                        @media screen and (max-width: 1240px){
                            margin-bottom: 10px;
                        }
                        @media screen and (max-width: 1024px){
                            margin-bottom: 14px;
                        }
                        @media screen and (max-width: 480px){
                            margin-bottom: 10px;
                            font-size: 18px;
                            line-height: 21.6px;
                        }
                    }
                    .description{
                        font-size: 14px;
                        font-weight: 500;
                        line-height: 28px;
                        color: #333333;
                        @media screen and (max-width: 480px){
                            line-height: 22.4px;
                        }
                    }
                }
            }
            @media screen and (max-width: 1024px) and (min-width: 768px){
                .box:nth-child(1){
                    margin: 0 auto 0 0;
                }
                .box:nth-child(2){
                    margin: -60px 0 -60px auto;
                }
                .box:nth-child(3){
                    margin: 0 auto 0 0;
                }
            }
            @media screen and (max-width: 768px){
                .box:nth-child(2){
                    margin: 40px auto;
                }
            }
        }
    }
    .container:nth-child(2){
        max-width: 1230px;
        @media screen and (max-width: 1240px){
            max-width: 1000px;
        }
        @media screen and (max-width: 1024px){
            max-width: 792px;
        }
        @media screen and (max-width: 768px){
            max-width: 89.6%;
        }
        .contents{
            display: flex;
            justify-content: space-between;
            @media screen and (max-width: 1024px){
                display: block;
            }
        }
    }
}



/**/
.inheritance{
    margin-top: 78px;
    .container{
        @media screen and (max-width: 768px){
            max-width: 100%;
        }
        .text_home{
            color: #333333;
            @media screen and (max-width: 768px){
                max-width: 84%;
                margin: 0 auto;
                align-items: center;
            }
            .c{
                @media screen and (max-width: 768px){
                    display: none;
                }
                th{
                    height: 50px;
                    width: 103px;
                    border: 1px solid #333333;
                }
                td{
                    height: 50px;
                    border: 1px solid #333333;
                }
                .second{
                    width: 210px;
                }
                .third{
                    width: 308px;
                }
                .forth{
                    width: 209px;
                }
                .fifth{
                    width: 352px;
                }
            }
            .responsive{
                display: none;
                @media screen and (max-width: 768px){
                    display: block;
                    width: 100%;
                    th{
                        height: 36px;
                        border: 1px solid #333333;
                    }
                    td{
                        height: 78px;
                        border: 1px solid #333333;
                        width: 50%;
                    }
                    th:first-child{
                        width: 64px;
                        min-width: 64px;
                        max-width: 64px;
                    }
                    .fee{
                        padding-top: 24px;
                        vertical-align: top;
                        text-align: center;
                        width: 64px;
                    }
                    .vertical{
                        display: inline-block;
                        -webkit-writing-mode: vertical-lr;
                        -ms-writing-mode: tb-lr;
                        writing-mode: vertical-rl;
                        vertical-align: middle;
                        white-space: nowrap;
                        text-align: end;
                    }
                    .match{
                        margin-bottom: 6px;
                    }
                    .left{
                        text-align: left;
                        padding: 0 12px;
                    }
                }
            }
            .footnote{
                font-size: 14px;
                font-weight: 500;
                line-height: 25.2px;
                letter-spacing: 0.04em;
                color: #333333;
                margin-top: 14px;
                @media screen and (max-width: 768px){
                    font-size: 16px;
                    line-height: 28.8px;
                    .description{
                        margin-bottom: 24px;
                    }
                }
            }
        }
    }
}



/**/
.etc{
    margin-top: 52px;
    .container{
        @media screen and (max-width: 768px){
            max-width: 100%;
        }
        .text_home{
            @media screen and (max-width: 768px){
                max-width: 84%;
                margin:0 auto;
                align-items: center;
            }
            .text{
                color: #333333;
                @media screen and (max-width: 768px){
                    font-size: 16px;
                    font-weight: 500;
                    line-height: 32px;
                    letter-spacing: 0.04em;
                    color: #333333;
                }
            }
        }
    }
}



/**/
.consultation{
    margin-top: 52px;
    border-bottom: 1px solid #E9EFF3;
    padding-bottom: 78px;
    @media screen and (max-width: 768px){
        border: none;
        padding-bottom: 0;
    }
    .container{
        @media screen and (max-width: 768px){
            max-width: 100%;
        }
        .text_home{
            @media screen and (max-width: 768px){
                max-width: 84%;
                margin:0 auto;
                align-items: center;
            }
            .text{
                color: #333333;
                @media screen and (max-width: 768px){
                    font-size: 16px;
                    font-weight: 500;
                    line-height: 32px;
                    letter-spacing: 0.04em;
                    color: #333333;
                }
            }
        }
    }
}



/**/
footer{
    margin: 52px 0 0;
    padding: 0 24px 16px;
    @media screen and (max-width: 768px){
        padding: 0 0 24px;
        margin-top: 80px;
    }
    .container{
        .footer{
            width: 251px;
            .forhome{
                width: 251px;
                .logo{
                    width: auto;
                    height: 41px;
                    margin-bottom: 40px;
                    @media screen and (max-width: 768px){
                        margin-bottom: 24px;
                        height: auto;
                        width: 242px;
                    }
                }
            }
        }
        .nav_footer{
            padding-bottom: 36px;
            border-bottom: 1px solid #E1EAEF;
            @media screen and (max-width: 768px){
                display: none;
            }
            .gnavi{
                display: flex;
                gap: 28px;
                .nav_text{
                    text-decoration: none;
                    span{
                        font-size: 14px;
                        font-weight: 700;
                        line-height: 21px;
                        text-align: left;
                        color: #0d2f62;
                    }
                }
            }
        }
        .block{
            display: flex;
            justify-content: flex-end;
            @media screen and (max-width: 768px){
                border-bottom: 1px solid #E1EAEF;
                padding-bottom: 8px;
                margin-bottom: 24px;
                justify-content: flex-start;
            }
            .policy{
                font-size: 12px;
                font-weight: 500;
                line-height: 18px;
                color: #000;
                text-decoration: none;
                display: inline-block;
                margin: 10px 0 24px;
                @media screen and (max-width: 768px){
                    font-size: 13px;
                    line-height: 13px;
                    margin: 0 0 0;
                    color: #999;
                }
            }
        }
        .copyright{
            font-family: Noto Sans JP ,sans-serif;
            font-size: 12px;
            font-weight: 400;
            line-height: 17.38px;
            color: #333333;
            text-align: center;
            @media screen and (max-width: 768px){
                font-size: 13px;
                line-height: 13px;
            }
        }
    }
}