@charset "UTF-8";

.faq{
    padding: 60px 0;
}

/*---------------*/
.faq-nav{
    margin-bottom: 50px;
}
    .faq-nav ul{
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        margin-left: -25px;
        font-size: 1.8rem;
    }
        .faq-nav ul li{
            width: calc(25% - 25px);
            margin-left: 25px;
        }
            .faq-nav ul li >*{
                border:1px solid #DFDFDF;
                background: #fff;
                color: #020E37;
                text-align: center;
                margin-bottom: 20px;
                border-radius: 30px;
                text-decoration: none;
                display: flex;
                justify-content: center;
                align-items: center;
                line-height: 1.3;
                height: 3em;
                padding:8px 15px 10px;
            }
            .faq-nav ul li.active >*{
                background: #0F1E53;
                border:1px solid #020E37;
                color: #fff;
            }
            .faq-nav ul li >*:hover{
                background: #0F1E53;
                border:1px solid #020E37;
                color: #fff;
            }
    .faq-nav.sub ul{
        margin-left: -10px;
    }
        .faq-nav.sub ul li{
            width: calc(20% - 10px);
            margin-left: 10px;
        }
            .faq-nav.sub ul li >*{
                margin-bottom: 15px;
            }


/*---------------*/
.faq-head{
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    margin-bottom: 50px;
}
    .faq-head .title{
        font-family: fot-udkakugo-large-pr6n, sans-serif;
        font-size: 4.0rem;
        color: #020E37;
        margin-right: 30px;
    }

    .faq-head .count {
        color: #202020;
        display: flex;
        align-items: flex-end;
        justify-content: flex-start;
    }
        .faq-head .count .all{
            padding-left: 30px;
            font-family: fot-udkakugo-large-pr6n, sans-serif;
            font-size: 1.8rem;
        }
            .faq-head .count .all span{
                display: inline-block;
                padding: 0 5px;
                color: #586CB1;
                font-size: 2.1rem;
            }
            .faq-head .count .all::after{
                padding: 0 5px;
                content: '／';
                color: #A6AEC9;
                font-family: a-otf-ud-shin-go-pr6n, sans-serif;
                font-size: 2.1rem;
            }
            .faq-head .count .p-count{
                font-family: a-otf-ud-shin-go-pr6n, sans-serif;
                font-size: 1.5rem;
            }
                .faq-head .count .p-count span{
                    color: #586CB1;
                    font-family: fot-udkakugo-large-pr6n, sans-serif;
                }


/*---------------*/
.faq-list{
    margin-bottom: 60px;
}
.faq-list .faq-block{
    background: #F7F7F7;
    border:1px solid #F7F7F7;
    margin-bottom: 30px;
    padding: 30px;
    font-size: 1.6rem;
}
    .faq-list .faq-block .faq-q{
        padding-left: 45px;
        position: relative;
        font-size: 2.0rem;
        color: #0F1E53;
        font-weight: bold;
        margin-bottom: 20px;
    }
        .faq-list .faq-block .faq-q::before{
            content: "Q.";
            color: #586CB1;
            font-weight: bold;
            font-family: fot-udkakugo-large-pr6n, sans-serif;
            font-size: 2.8rem;
            line-height: 1;
            position: absolute;
            top: 0;
            left: 0;
        }
    .faq-list .faq-block .faq-body{
        background: #fff;
        border:1px solid #fff;
        padding:30px 30px 25px;
    }
    .faq-list .faq-block .faq-a{
        padding-left: 45px;
        position: relative;
        font-size: 1.6rem;
        line-height: 1.8;
        margin-bottom: 25px;
    }
        .faq-list .faq-block .faq-a::before{
            content: "A.";
            color: #DA5E3F;
            font-weight: bold;
            font-family: fot-udkakugo-large-pr6n, sans-serif;
            font-size: 2.8rem;
            line-height: 1;
            position: absolute;
            top: 0;
            left: 0;
        }
    .faq-list .faq-block .faq-body .link{
        font-size: 1.4rem;
        margin-bottom: 25px;
    }
        .faq-list .faq-block .faq-body .link a{
            color: #586CB1;
            position: relative;
            padding-left: 30px;
            display: inline-block;
        }
        .faq-list .faq-block .faq-body .link .ico{
            position: absolute;
            top: 0;
            left: 0;
        }
            .faq-list .faq-block .faq-body .link .ico svg{
                margin-top: -2px;
                vertical-align: middle;
            }

    .faq-list .faq-block .faq-body .data{
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        overflow: hidden;
    }
        .faq-list .faq-block .faq-body .data .cat{
            background: #EFEFEF;
            border:1px solid #EFEFEF;
            padding: 10px;
            display: flex;
            justify-content: flex-start;
            align-items: center;
            font-size: 1.5rem;
        }
            .faq-list .faq-block .faq-body .data .cat li{
                background: #fff;
                border:1px solid #fff;
                margin-left: 15px;
                padding:0 8px;
                border-radius: 2px;
                color: #586CB1;
                position: relative;
            }
            .faq-list .faq-block .faq-body .data .cat li:first-child{
                margin-left: 0;
            }
            .faq-list .faq-block .faq-body .data .cat li::after{
                content: "";
                width: 15px;
                height: 1px;
                background: #202020;
                position: absolute;
                top: 50%;
                right: 0;
                transform: translateX(100%);
            }
            .faq-list .faq-block .faq-body .data .cat li:last-child{
                background: #586CB1;
                color: #fff;
            }
            .faq-list .faq-block .faq-body .data .cat li:last-child::after{
                display: none;
            }
        .faq-list .faq-block .faq-body .data .date{
            display: flex;
            justify-content: flex-start;
            align-items: stretch;
            font-size: 1.5rem;
        }
            .faq-list .faq-block .faq-body .data .date div{
                background: #020E37;
                color: #fff;
                padding:0 10px;
                display: flex;
                justify-content: center;
                align-items: center;
            }
            .faq-list .faq-block .faq-body .data .date dl{
                background: #586CB1;
                color: #fff;
                padding:1px;
                display: flex;
                justify-content: flex-start;
                align-items: stretch;
            }
                .faq-list .faq-block .faq-body .data .date dl dt{
                    padding: 0 10px;
                }
                .faq-list .faq-block .faq-body .data .date dl dd{
                    padding:0 10px;
                    background: #fff;
                    color: #202020;
                }



































