@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body{
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #1e1e1e;
    line-height: 1.4;
}

#topbar{
    box-shadow: 0 2px 15px 3px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 2px 15px 3px rgba(0,0,0,0.1);
    -moz-box-shadow: 0 2px 15px 3px rgba(0,0,0,0.1);
    background: #fff;
}

.header_panel{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 15px;
    padding-bottom: 15px;
}
    .header_panel .right_part{
        display: flex;
        flex-direction: row;
        align-items: flex-end;
    }
        .header_panel .right_part .button_part{
            display: flex;
            flex-direction: column;
        }
        .header_panel .right_part .button_part .btn_gesi{
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            font-size: 14px;
            width: 250px;
            height: 30px;
            border-radius: 15px;
            border: solid 1px #0d72ec;
            margin-bottom: 10px;
        }
        .header_panel .right_part .button_part .btn_gesi::after{
            content: '';
            width: 5px;
            height: 10px;
            position: absolute;
            background: url('../img/blue-arrow-right.png');
            right: 14px;
            top: 9px;
        }
        .header_panel .right_part .button_part .btn_consult{
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            font-size: 14px;
            width: 250px;
            height: 50px;
            background-color: #0d72ec;
            color: #fff;
            font-size: 14px;
            font-weight: bold;
            border-radius: 25px;
        }
        .header_panel .right_part .top_menu{
            display: flex;
            flex-direction: row;
            align-items: center;
            margin-right: 15px;
        }
        .header_panel .right_part .top_menu li{
            list-style: none;
            border-right: solid 1px #1e1e1e;
            padding: 0 7px;
        }
        .header_panel .right_part .top_menu li:last-child{
            border-right: none;
        }
        .header_panel .right_part .top_menu li a{
            font-size: 15px;
        }

    .header-fix #topbar .header_panel{
        padding-top: 5PX;
        padding-bottom: 5PX;
    }
    .header-fix #topbar .header_panel .right_part .button_part .btn_gesi{
        width: 200px;
        font-size: 12px;
        margin-bottom: 5px;
    }
    .header-fix #topbar .header_panel .right_part .button_part .btn_consult{
        font-size: 12px;
        width: 200px;
        height: 40px;
    }
    .header-fix #topbar .header_panel .right_part{
        margin-bottom: 0;
    }
    .header-fix #topbar .header_panel .right_part .top_menu{
        margin-bottom: 10px;
    }
    .header-fix .header_panel .right_part .top_menu li a{
        font-size: 14px;
    }

#sect01{
    padding-top: 100px;    
}        
    .part01{
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        margin-bottom: 15px;
    }
    .part01 .top_banner{
        width: 50%;
        padding-right: 25px;
    }
    .part01 .top_banner .text01{
        font-size: 60px;
        font-weight: bold;
        margin-bottom: 30px;
        white-space:nowrap;
    }
    .part01 .top_banner .text02{
        font-size: 22px;
        line-height: 1.8;
        letter-spacing: 0.1em;
    }
    .part01 .top_banner .text02 .emphasis{
        font-weight: bold;
        text-decoration: underline;
        text-decoration-color: #fae60d;
        text-decoration-thickness: 5px;
        text-underline-offset: 6px;
    }
    .part01 .search_category_list{
        width: 50%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        padding-left: 30px;
    }
    .part01 .search_category_list .item{
        width: calc((100% - 18px) / 2);
        height: 158px;
        padding: 9px;
        margin-bottom: 18px;
        background-color: #fafafa;
        border-radius: 15px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border: solid 1px #f5f5f5;
        box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
        -webkit-box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
        -moz-box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
    }
    .part01 .search_category_list .item:nth-child(2n+1){
        margin-right: 18px;
    }
    .part01 .search_category_list .item .thumb{
        margin-bottom: 9px;
    }
    .part01 .search_category_list .item .title{
        font-size: 17px;
        margin-bottom: 6px;
    }
    .part01 .search_category_list .item:hover{
        opacity: 1;
        background-color: #898787;
    }

    .search_from_keyword{
        display: flex;
        flex-direction: row;


        border: solid 1px #f5f5f5;
        box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
        -webkit-box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
        -moz-box-shadow: 0 3px 15px 3px rgba(0,0,0,0.05);
        padding: 30px 50px;
        background-color: #fafafa;
    }

    .search_from_keyword .left{
        width: 50%;
        height: auto;
        border-right: solid 1px #c8c8c8;
        padding-right: 29px;
    }
        .search_from_keyword .title{
            font-size: 22px;
            line-height: 1;
            padding-bottom: 15px;
            display: flex;
            flex-direction: row;
            align-items: center;
        }
        .search_from_keyword .title .icon{
            margin-right: 5px;
        }

        .search_from_keyword .search-box{
            width: 100%;
            display: flex;
            flex-direction: row;
            border: solid 1px #969696;
            border-radius: 5px;
            margin-top: 15px;
        }
        .search_from_keyword .search-box input[type=text]{
            width: calc(100% - 38px);
            height: 38px;
            border: none;
            border-radius: 5px;
            padding: 9px;
        }
        .search_from_keyword .search-box input[type=text]:active,
        .search_from_keyword .search-box input[type=text]:focus{
            outline: unset;
        }
        .search_from_keyword .search-box .icon{
            width: 38px;
            height: 38px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
    .search_from_keyword .right{
        width: 50%;
        height: auto;
        padding-left: 29px;
    }
    .search_from_keyword .main_keyword_list{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .search_from_keyword .main_keyword_list .item{
        font-size: 14px;
        line-height: 1;
        padding: 5px 12px;
        border: solid 1px #0d72ec;
        border-radius: 4px;
        margin-right: 17px;
        margin-top: 15px;
    }

    .btn_free_consulting{
        width: 700px;
        max-width: 100%;
        height: 100px;
        border-radius: 50px;
        background-color: #0d72ec;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 28px;
        position: relative;
        margin: 50px auto 60px auto;
        z-index: 1;
    }
    .btn_free_consulting::after{
        content: '';
        position: absolute;
        width: 10px;
        height: 21px;
        right: 50px;
        top: 39px;
        background: url('../img/white-arrow-right.png');
    }
    .btn_free_consulting:hover{
        opacity: 1;
        transform: translateY(-5px);
        transition: transform 250ms cubic-bezier(.3, .7, .4, 1.5);
    }

    .out_site_logo_list{
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-bottom: 10px;
    }
        .out_site_logo_list .item{
            width: 80px;
            height: 80px;
            width: 6.6vw;
            height: 6.6vw;
            display: flex;
            align-items: center;
            justify-content: center;
            border: solid 1px #c8c8c8;
            margin-right: 10px;
            border-radius: 5px;
        }
        .out_site_logo_list .item:last-child{
            margin-right: 0;
        }
        .out_site_logo_list .item img{
            width: 100%;
            height: auto;
        }
    .banner_slider{
        width: 100%;
        background-color: #323232;
        padding-top: 20px;
        padding-bottom: 40px;
    }
        .banner_slider .swiper-slide img{
            width: 100%;
        }
        .banner_slider .swiper-pagination-bullet{
            background: #fff;
            opacity: 1;
        }
        .banner_slider .swiper-pagination-bullet-active{
            background: #0d72ec;
        }
        .swiper-pagination-bullet {
            width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,16px));
            height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,16px));
        }

.sect_title{
    font-size: 30px;
    font-weight: bold;
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}
    .sect_title .icon{
        margin-right: 18px;
    }

.sect_sub_title{
    font-size: 24px;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
    .sect_sub_title .icon{
        margin-right: 15px;
    }


#sect02{
    padding-top: 80px;
    padding-bottom: 80px;
    background: #edf2f7;
}
    .subpart_list{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
        margin-bottom: 40px;
    }

        .subpart_list .subpart_item{
            margin-right: 18px;
        }
        .subpart_list .subpart_item:last-child{
            margin-right: 0;
        }

        .subpart_list .subpart_item .subpart_title{
            font-size: 18px;
            display: flex;
            align-items: center;
            margin-bottom: 20px;
        }
        .subpart_list .subpart_item .subpart_title::before{
            content: '●';
            font-size: 20px;
            color: #0d72ec;
            margin-right: 7px;
        }


        .search_item_list{
            width: 100%;
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
        }
            .search_item_list .search_item{
                width: 100%;
                height: 50px;
                border-radius: 5px;
                background-color: #fff;
                font-size: 14px;
                display: flex;
                align-items: center;
                justify-content: flex-start;
                margin-bottom: 10px;
                padding: 0 10px;
                white-space: nowrap;
            }
            .search_item_list .search_item.nodata{
                visibility: hidden;
            }

    /* one-column */
    .subpart_list .subpart_item.one-column{
        width: calc((100% - 18px) / 4);
    }
    .subpart_list .subpart_item.one-column .column{
        width: 100%;
    }

    /* two-column */
    .subpart_list .subpart_item.two-column{
        width: calc((100% - 18px) / 2);
    }
    .subpart_list .subpart_item.two-column .column{
        width: calc((100% - 10px) / 2);
        margin-right: 10px;
    }
    .subpart_list .subpart_item.two-column .column:nth-child(2n){
        margin-right: 0;
    }


    /* four-column */
    .subpart_list .subpart_item.four-column{
        width: 100%;
    }
    .subpart_list .subpart_item.four-column .column{
        width: calc((100% - 30px) / 4);
        margin-right: 10px;
    }
    .subpart_list .subpart_item.four-column .column:nth-child(4n){
        margin-right: 0;
    }

    /* three-column */
    .subpart_list .subpart_item.three-column{
        width: calc((100% - 18px) / 4 * 3);
    }
    .subpart_list .subpart_item.three-column .column{
        width: calc((100% - 20px) / 3);
        margin-right: 10px;
    }
    .subpart_list .subpart_item.three-column .column:nth-child(3n){
        margin-right: 0;
    }

    /* single-column */
    .subpart_list .subpart_item.single-column{
        width: calc((100% - 30px) / 4);
        margin-right: 10px;
    }
    .subpart_list .subpart_item.single-column:last-child{
        margin-right: 0;
    }
    .subpart_list .subpart_item.single-column .search_item{
        width: 100%;
    }

    #search_from_category{
        padding-bottom: 20px;
        border-bottom: solid 1px #969696;
    }

#search_from_issue{
    padding-top: 85px;
}    
    .search_issue_list{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
        .search_issue_list .item{
            width: calc((100% - 20px) / 2);        
            border-bottom-left-radius: 5px;
            border-bottom-right-radius: 5px;
            background-color: #fff;
            margin-bottom: 20px;
        }
        .search_issue_list .item:nth-child(2n+1){
            margin-right: 20px;
        }
        .search_issue_list .item .title{
            width: 100%;
            height: 60px;
            border-top-left-radius: 5px;
            border-top-right-radius: 5px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 20px;
            font-weight: bold;
            background-color: #062f81;
            color: #fff;
        }
        .search_issue_list .item .content{
            padding-top: 30px;
            padding-bottom: 30px;
            display: flex;
            align-items: flex-start;
        }
        .search_issue_list .item .content .thumb{
            display: flex;
            align-items: center;
            justify-content: center;
            width: 230px;
            height: auto;
        }
        .search_issue_list .item .content .detail{
            overflow: hidden;
        }
        .search_issue_list .item .content .detail li{
            list-style: none;
            margin-bottom: 8px;
            font-size: 14px;
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            align-items: center;
        }
        .search_issue_list .item .content .detail li:last-child{
            margin-bottom: 0;
        }
        .search_issue_list .item .content .detail li::before{
            content: '・';
            margin-right: 1px;
            color: #0d72ec;
        }
        
#sect03{
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #fff;
}
    .contact_panel{
        border-radius: 25px;
        background-color: #edf2f7;
        padding: 55px 50px;
        position: relative;
    }
        .contact_panel .title{
            font-size: 30px;
            font-weight: bold;
            line-height: 1.7;
            margin-bottom: 50px;
        }
            .contact_panel .title .emphasis{
                font-weight: bold;
                text-decoration: underline;
                text-decoration-color: #fae60d;
                text-decoration-thickness: 5px;
                text-underline-offset: 6px;
            }
        .contact_panel .bg-icon{
            position: absolute;
            right: 55px;
            bottom: -19px;
        }
        
#sect04 {
    padding-top: 90px;
    background: #edf2f7;
}
    .favor_find{
       border-bottom: solid 1px #969696;  
    }
        .favor_find .title {
            display: flex;
            align-items: center;
            margin-bottom: 30px;
            font-size: 30px;
            font-weight: bold;            
        }
            .favor_find .title .icon {
                margin-right: 8px;
            }
        .favor_find .favor_items{
            display: flex;            
        }
            .favor_find .favor_items .item {
                margin-right: 20px;
                width: calc((100% - 40px)/3);
                position: relative;                
            }
            .favor_find .favor_items .item:last-child{
                margin-right: 0;
            }
                .favor_items .item .ribbon{
                    position: absolute;
                    left: 18px;
                    top: -9px;
                }
                .favor_items .item .panel .top{
                    height: 230px;
                    background-color: #d9d5d5;
                    border-top-left-radius: 12px;
                    border-top-right-radius: 12px;
                    background-color: #d1d2d3;
                }
                .favor_items .item .panel .bottom{
                    background-color: #f8f9fa;
                    padding: 30px 32px;
                    border-bottom-left-radius: 12px;
                    border-bottom-right-radius: 12px;
                }
                .favor_items .item .panel .bottom .text{
                    font-size: 18px;
                    line-height: 1.7;
                    letter-spacing: normal;
                    color: #062f81;
                    margin-bottom: 7px;
                }
                .favor_items .item .panel .bottom .pub_date {
                    font-weight: bold;
                    text-align: right;
                    font-size: 17px;
                }
    .btn_favor_list{
        width: 620px;
        max-width: 100%;
        height: 80px;
        border-radius: 50px;
        background-color: #0d72ec;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 28px;
        position: relative;
        margin: 50px auto 98px auto;
    }
    .btn_favor_list::after{
        content: '';
        position: absolute;
        width: 10px;
        height: 21px;
        right: 38px;
        top: 28px;
        background: url('../img/white-arrow-right.png');
    }
    .btn_favor_list:hover{
        opacity: 1;
        transform: translateY(-5px);
        transition: transform 250ms cubic-bezier(.3, .7, .4, 1.5);
    }
    .rel_topic{
        padding-top: 90px;
    }
    .rel_topic .title{
        font-size: 30px;
        font-weight: bold;
        display: flex;
        align-items: center;
        margin-bottom: 36px;
    }
        .rel_topic .title .icon{
            margin-right: 17px;
        }
    .rel_topic .topic_item{
        margin-bottom: 15px;
    }

    .rel_topic .sub_title {
        font-size: 20px;
        margin-bottom: 25px;
        font-weight: bold;
        display: block;
    }
    .rel_topic .topic_list{
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 15px;
    }
        .rel_topic .topic_list:last-child{
            margin-bottom: 0;
        }
        .rel_topic .topic_list .item{
            width: calc( (100% - 40px) / 3 );
            margin-right: 20px;
            margin-bottom: 20px;
            display: flex;
            justify-content: flex-start;                    
        }
        .rel_topic .topic_list .item:nth-child(3n){
            margin-right: 0px;
        }
            .rel_topic .topic_list .item .left{
                width: 100px;
                height: 100px;
                display: flex;
                align-items: center;
                justify-content: center;
                border-top-left-radius: 7px;
                border-bottom-left-radius: 7px;
                overflow: hidden;
            }                
            .rel_topic .topic_list .item .left img{
                width: 100%;
                height: auto;
            }
            .rel_topic .topic_list .item .right {
                width: calc(100% - 100px);
                height: 100px;
                padding: 15px 15px  10px 15px;
                background-color: #fff;
                border-top-right-radius: 7px;
                border-bottom-right-radius: 7px;
            }    
            .rel_topic .topic_list .item .right .text{                
                overflow: hidden;
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 2; /* Number of lines to show */                
                text-overflow: ellipsis;
                margin-bottom: 10px;
                font-size: 15px;
                font-weight: 500;
            }
            .rel_topic .topic_list .item .right .pub_date{
                text-align: right;
                font-size: 14px;
            }

#sect05{
    padding-top: 90px;
    background: #fafafa;
}
    .seminar_panel .title {
        display: flex;
        align-items: center;
        margin-bottom: 30px;
        font-size: 30px;
        font-weight: bold;            
    }
        .seminar_panel .title .icon {
            margin-right: 8px;
        }
    .seminar_panel .title_note{
        margin-bottom: 50px;
    }
    .seminar_panel .seminar_list{
        display: flex;            
    }
        .seminar_panel .seminar_list .item {
            margin-right: 20px;
            width: calc((100% - 40px)/3);
            display: flex;
            flex-direction: column; 
            box-shadow: 0 3px 15px 3px rgba(0, 0, 0, 0.05);
            -webkit-box-shadow: 0 3px 15px 3px rgba(0, 0, 0, 0.05);
            -moz-box-shadow: 0 3px 15px 3px rgba(0, 0, 0, 0.05);               
        }
            .seminar_panel .seminar_list .item .top_img{
                height: 230px;
                background-color: #c8c8c8;
                border-top-left-radius: 10px;
                border-top-right-radius: 10px;
            }
            .seminar_panel .seminar_list .item .date_time{
                height: 78px;
                background-color: #062f81;
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
            }
                .seminar_panel .seminar_list .item .date_time .round{
                    width: 100px;
                    text-align: center;
                    background-color: #fff;
                    border-radius: 10px;
                    color: #062f81;
                    margin-bottom: 10px;
                }
                .seminar_panel .seminar_list .item .date_time .disp{
                    color: #fff;
                }
            .seminar_panel .seminar_list .item .bottom_txts{
                height: 250px;
                background-color: #fff;
                border-bottom-left-radius: 10px;
                border-bottom-right-radius: 10px;
                padding: 20px 30px;
            }
            .seminar_panel .seminar_list .item .bottom_txts .big_text{
                border-bottom: 1px solid #000;
                padding-bottom: 10px;
                color: #7c92bc;
                overflow: hidden;
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 2; /* Number of lines to show */                
                text-overflow: ellipsis;
                margin-bottom: 10px;
                font-size: 15px;
                font-weight: 500;
                line-height: 1.7;

            }
            .seminar_panel .seminar_list .item .bottom_txts .small_text{
                overflow: hidden;
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 5; /* Number of lines to show */                
                text-overflow: ellipsis;
                line-height: 1.5;
            }

            .btn_seminar_list{
                width: 620px;
                max-width: 100%;
                height: 80px;
                border-radius: 50px;
                background-color: #0d72ec;
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 28px;
                position: relative;
                margin: 50px auto 98px auto;
            }
            .btn_seminar_list::after{
                content: '';
                position: absolute;
                width: 10px;
                height: 21px;
                right: 38px;
                top: 28px;
                background: url('../img/white-arrow-right.png');
            }
            .btn_seminar_list:hover{
                opacity: 1;
                transform: translateY(-5px);
                transition: transform 250ms cubic-bezier(.3, .7, .4, 1.5);
            }
    .service_panel{
        margin-top: 130px;
    }
        .service_panel .title {
            display: flex;
            align-items: center;
            margin-bottom: 30px;
            font-size: 30px;
            font-weight: bold;            
        }
            .service_panel .title .icon {
                margin-right: 8px;
            }
        .service_panel .title_note{
            margin-bottom: 50px;
        }        
        .service_panel .service_list{
            display: flex; 
            flex-wrap: wrap;       
        }
        .service_panel .service_list .item {
            height: 275px;
            margin-right: 20px;
            margin-bottom: 20px;
            width: calc((100% - 20px)/2);
            display: flex;              
        }
        .service_panel .service_list .item:nth-child(even) {
            margin-right: 0px;              
        }
            .service_panel .service_list .item .left{
                width: 220px;
                padding: 25px 20px;
                background-color: #062f81;
                border-top-left-radius: 7px;
                border-bottom-left-radius: 7px;
            }
                .service_panel .service_list .item .left .img{
                    width: 180px;
                    height: 150px;
                    background-color: #c8c8c8;
                }
                .service_panel .service_list .item .left .ltd{
                    margin-top: 7px;
                    color: #fff;
                }
                .service_panel .service_list .item .left  .round_btn{
                    width: fit-content;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    background-color: #fff;
                    border-radius: 10px;
                    margin-top: 10px;  
                    color: #062f81;
                    padding: 2px 8px;   
                    font-size: 14px;                   
                }
                .service_panel .service_list .item .left  .show{
                    margin-left: 10px;
                    margin-top: 5px;
                    color: #fff;                        
                }
            .service_panel .service_list .item .right{
                width: calc( 100% - 220px );
                padding: 25px 20px;
                background-color: #e7e9ed;
                border-color: #0d72ec;
                border-top-right-radius: 7px;
                border-bottom-right-radius: 7px;
                border: 2px solid #0d72ec;
                border-left: none;
            }
                .service_panel .service_list .item .right .big_text{
                    margin-bottom: 10px;
                    font-size: 18px;
                    font-weight: bold;
                    color: #062f81;
                    letter-spacing: 5px;
                    overflow: hidden;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 3; /* Number of lines to show */                
                    text-overflow: ellipsis;
                    font-size: 15px;
                    font-weight: 500;
                    line-height: 1.7;

                }
                .service_panel .service_list .item .right .small_text{
                    overflow: hidden;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 5; /* Number of lines to show */                
                    text-overflow: ellipsis;
                    line-height: 1.5;
                }
            .service_panel .btn_seminar_list{
                margin-top: 40px
            }

    .faq_panel{
        margin-top: 130px;
        padding-bottom: 150px;
    }
        .faq_panel .title {
            display: flex;
            align-items: center;
            margin-bottom: 30px;
            font-size: 30px;
            font-weight: bold;            
        }
            .faq_panel .title .icon {
                margin-right: 8px;
            }
        .faq_panel .title_note{
            margin-bottom: 50px;
        }        
        .faq_panel .faq_list{
            display: flex; 
            flex-direction: column;
            padding: 50px;
            background-color: #fff;
            border-radius: 10px;            
        }
        .faq_panel .faq_list .item {
            padding-bottom: 23px;
            display: flex;
            flex-direction: column;  
        }
        .faq_panel .faq_list .item::after {
            margin-top: 23px;
            content: '';
            width: 100%;
            height: 6px;
            background: url('../img/dotted_pattern.png') repeat-x;
        }

        .faq_panel .faq_list .item:last-child {
            margin-bottom: 0px;
            padding-bottom: 0px;
            border-bottom: none;         
        }
            .faq_panel .faq_list .item .question,
            .faq_panel .faq_list .item .answer{
                display: flex;
                /* justify-content: center; */
                align-items: center;
            }
            .faq_panel .faq_list .item .question{
                margin-bottom: 10px;
            }
            .faq_panel .faq_list .item .answer{
                display: flex;
                justify-content: flex-start;
                align-items: flex-start;
                margin-top: 10px;
            }
                .faq_panel .faq_list .item .question .icon,
                .faq_panel .faq_list .item .answer .icon{
                    width: 40px;
                    min-width: 40px;
                    height: 40px;
                    margin-right: 20px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-weight: bold;
                    border-radius: 7px;
                }
                .faq_panel .faq_list .item .question .icon{
                    padding: 5px;
                    background-color: #062f81;
                    color: #fff;
                }
                .faq_panel .faq_list .item .answer .icon{
                    padding: 5px;
                    background-color: #dee3eb;
                    color: #000;
                }
                .faq_panel .faq_list .item .question .text{
                    font-size: 20px;
                    font-weight: bold;

                }
                .faq_panel .faq_list .item .answer .text{                    
                    font-size: 18px;
                    overflow: hidden;
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 5; /* Number of lines to show */                
                    text-overflow: ellipsis;
                    line-height: 1.5;

                }

footer{
    background-color: #1e1e1e;
    color: #fff;
}
    .footer_panel{
        padding-top: 45px;
        display: flex;
        
    }
    .footer_panel .left_part{
        width: 25%;
    }
    .footer_panel .right_part{
        width: 70%;
    }
    .footer_panel .right_part .links_list{
        display: flex;             
    }    
        .footer_panel .right_part .links_list .col{
            margin-right: 30px;            
        }
        .footer_panel .right_part .links_list .col li{
            list-style: none;
        }
        .footer_panel .right_part .links_list .col a{
            color: #fff;
            line-height: 2;           
        }
    footer .copyright{
        text-align: center;
        padding-top: 90px;
        padding-bottom: 30px;         
    }

/* sponcer autoscroll */
.chamfered-box {
    display: flex;
    justify-content: center;
    align-items: stretch;
    margin: 0;
    padding: 1px 1px 1px 0;
}
#sponsors {
    padding: 0;
    position: relative;
}
.cb-content {
    overflow: hidden;
    width: 100%;
    padding: 1.5rem 1rem;
    background: #fff;
}
.autoscroller {
    max-width: 100vw;
    list-style: none;
    user-select: none;
    cursor: grab;
    display: flex;
    align-items: center;
    overflow-x: scroll;
    margin: 0 auto;
    padding: 1rem 0.5rem;
    white-space: nowrap;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
#sponsors ul {
    padding: 0.25rem 0.5rem;
}
#sponsors li {
    user-select: none;
}
#sponsors li img {
    pointer-events: none;
    user-select: none;
    margin: 0 1rem;
    max-width: unset;
}

.autoscroll-container > .button {
    opacity: 0.5;
    overflow: hidden;
    user-select: none;
    position: absolute;
    bottom: 0.5rem;
    right: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    color: transparent;
    text-align: center;
    border-radius: 2.5rem;
    background-image: url(../img/pause-black.svg);
    background-repeat: no-repeat;
    background-position: center center;
    transition: all ease-in-out 0.3s;
    border: solid 1px #323232;
}
.autoscroll-container > .button.paused {
    background-image: url(../img/play-black.svg);
}
.autoscroll-container > .button:hover {
    opacity: 1;
    background-color: #edf2f7;
}
 
.secNotFound{
    text-align: center;
    padding: 100px 0;
}
.secNotFound h1{
    margin-bottom: 30px;
}

.secNotFound a{
    display: block;
    margin-top: 30px;
    text-decoration: underline;
}

.two_colums{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    padding-top: 40px;
    padding-bottom: 120px;
}
.main_panel{
    width: 860px;
    max-width: 100%;
}

.side_panel{
    width: 400px;
    max-width: 100%;
    padding-left: 19px;
    border-left: solid 1px #C7C7C7;
}
@media screen and (max-width: 1300px) {
    .main_panel{
        width: 64%;
    }
    .side_panel{
        width: 36%;
    }
}
@media screen and (max-width: 768px) {
    .two_colums{
        flex-direction: column;
    }
    .main_panel{
        width: 100%;
    }
    .side_panel{
        width: 100%;
    }
}

.product_detail_layount01{
    border: solid 1px #C7C7C7;
    padding: 20px 20px 16px 50px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}

.product_detail_layount01 .thumb{
    max-width: 120px;
    /* width: 120px;
    height: 120px; */
}

.product_detail_layount01 .content{
    margin-left: 40px;
    width: calc(100% - 160px);
}

.product_detail_layount02{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
}

.product_detail_layount01 .title{
    font-size: 16px;
    line-height: 1.45;
    margin-bottom: 10px;
}

.product_detail_layount01 .title h2{
    font-size: 20px;
    color: #0D72EC;
    line-height: 1.45;
    font-weight: 600;
}

.product_detail_layount01 .category{
    background-color: #3C3C3C;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    padding: 5px 20px;
    margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
    .product_detail_layount01{
        padding: 20px;
        flex-direction: column;
    }
    .product_detail_layount01 .content{
        margin-left: 0;
        margin-top: 20px;
        width: 100%;
    }
}

.score_review_panel{
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.rate_star{
    width: 120px;
    height: 20px;
}
.star_0{
    background: url(../img/star0.png);
}
.star_1{
    background: url(../img/star1.png);
}
.star_2{
    background: url(../img/star2.png);
}
.star_3{
    background: url(../img/star3.png);
}
.star_4{
    background: url(../img/star4.png);
}
.star_5{
    background: url(../img/star5.png);
}

.score_review_panel .score{
    font-size: 16px;
    margin-left: 22px;
}

.score_review_panel .review{
    display: block;
    margin-left: 20px;
    font-size: 16px;
    text-decoration: underline;
    color: #0769B5;
}

.product_detail_layount01 .content .date{
    margin-top: 10px;
    font-size: 14px;
    color: #C7C7C7;
}
@media screen and (max-width: 768px) {
    .product_detail_layount01 .content .date{
        font-size: 12px;
    }
}
.product_detail_layount01 .buttons{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    margin-top: 25px;
}

.product_detail_link01{
    width: fit-content;
    min-width: 250px;
    height: 50px;
    border-radius: 30px;
    padding: 0 15px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    background-color: #23C469;
    margin-right: 14px;
    margin-bottom: 10px;
}
.product_detail_link01 .icon{
    width: 16px;
    margin-right: 9px;
}

.product_detail_link02{
    width: fit-content;
    min-width: 250px;
    height: 50px;
    border-radius: 30px;
    padding: 0 15px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    background-color: #0D72EC;
    margin-bottom: 10px;
}
@media screen and (max-width: 1280px) {
    .product_detail_link01{
        min-width: 230px;
        height: 40px;
        font-size: 14px;
    }
    .product_detail_link02{
        min-width: 230px;
        height: 40px;
        font-size: 14px;
    }
}

.product_top_adv{
    display: block;
    max-width: 100%;
    margin-top: 20px;
}

.product_detail_navi{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 60px;
    background-color: #3C3C3C;
    margin-top: 20px;
    flex-wrap: wrap;
    padding: 10px 0;
    height: auto;
}

.product_detail_navi li{
    list-style: none;
    padding: 0 30px;
    border-right: solid 1px #fff;
}

.product_detail_navi li:first-child{
    padding-left: 0;
}

.product_detail_navi li:last-child{
    padding-right: 0;
    border-right: none;
}

.product_detail_navi li a{
    color: #fff;
    font-size: 20px;
    font-weight: 500;
}
@media screen and (max-width: 1200px) {
    .product_detail_navi li a{
        font-size: 17px;
    }
}
@media screen and (max-width: 768px) {
    .product_detail_navi{
        flex-wrap: wrap;
        padding: 10px 0;
        height: auto;
    }
    .product_detail_navi li{
        margin: 5px 0;
        padding: 0 15px;
    }
    .product_detail_navi li:first-child{
        padding-left: 15px;
    }
    .product_detail_navi li:last-child{
        padding-right: 15px;
    }
    .product_detail_navi li a{
        font-size: 16px;
        padding: 10px 0;
    }
}
.product_detail_layount03{
    margin-top: 29px;
    border-bottom: solid 1px #C7C7C7;
}

.product_detail_layount03 .title{
    min-height: 50px;
    background-color: #0D72EC;
    padding: 5px 15px 5px 30px;
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: 500;
    color: #fff;
}
@media screen and (max-width: 768px) {
    .product_detail_layount03 .title{
        font-size: 18px;
        padding: 10px 15px;
    }
}
.product_detail_layount03 .content{
    border-left: solid 1px #C7C7C7;
    border-right: solid 1px #C7C7C7;
    padding: 20px 30px 30px 30px;
    font-size: 16px;
    line-height: 1.45;
}

.product_detail_layount04{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-top: 10px;
}

.product_detail_layount04 .thumb{
    width: 100px;
    height: auto;
}

.product_detail_layount04 .detail{
    padding-left: 30px;
}

.product_detail_layount04 .detail h2{
    font-size: 16px;
    font-weight: 500;
    color: #000;
    margin-bottom: 10px;
}

.product_detail_layount04 .detail p{
    font-size: 14px;
    color: #8A8A8A;
    margin-bottom: 10px;
}
.conpany_infomation{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 35px;
    margin-top: 20px;
    margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
    .conpany_infomation{
        grid-template-columns: repeat(1, 1fr);
    }
}
.conpany_infomation .item{
    padding: 10px 0;
    border-bottom: solid 1px #C7C7C7;
    display: flex;
    align-items: center;
}
.conpany_infomation .item .label{
    width: 106px;
    font-size: 14px;
    color: #8A8A8A;
}
.conpany_infomation .item .val{
    font-size: 14px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
}

.side-adv1{
    display: block;
    width: 100%;
    margin-bottom: 30px;
}

.side-adv2{
    display: block;
    width: 100%;
    margin-bottom: 30px;
}

.side_product_list .title{
    height: 50px;
    background-color: #3C3C3C;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 600;
    color: #fff;
}
@media screen and (max-width: 768px) {
    .side_product_list .title{
        font-size: 18px;
    }
}
.side_product_list ul{
    padding: 10px 0;
}

.side_product_list ul li{
    background-color: #fff;
    list-style: none;
    padding: 30px 15px 30px 45px;
}
@media screen and (max-width: 768px) {
    .side_product_list ul li{
        padding: 30px 15px;
    }
}
.side_product_list ul li:hover{
    background-color: #F3F3F3;
}

.side_product_list .product_item{
    display: flex;
    flex-direction: row;
    align-items: center;
}

.side_product_list .product_item .thumb{
    width: 100px;
    height: auto;
}

.side_product_list .product_item .detail{
    padding-left: 20px;
}
.side_product_list .product_item .detail h3{
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 10px;
}

.floating_banner{
    position: fixed;
    right: 20px;
    bottom: 50px;
    width: 600px;
    height: auto;
    padding: 15px;
    background-color: #fff;
    -webkit-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.2);
    box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.2);
}

.floating_banner_layount01{
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
}

.floating_banner_layount01 .close_btn{
    position: absolute;
    top: 0;
    right: 0;
}

.floating_banner_layount01 .close_btn img{
    width: 15px;
}

.floating_banner_layount01 .content{
    font-size: 24px;
    font-weight: 900;
    color: #3C3C3C;
    line-height: 1.45;
    padding-left: 20px;
}

.floating_banner_layount01 .content .link{
    padding: 10px 23px;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 20px;
    font-weight: 900;
    color: #fff;
    background: #3C3C3C;
    margin-top: 20px;
}

.floating_banner_layount01 .content .link .icon{
    width: 9px;
    margin-left: 19px;
}
@media screen and (max-width: 768px) {
    .floating_banner{
        width: 80%;
    }
    .floating_banner_layount01{
        flex-direction: column;
    }
    .floating_banner_layount01 .content{
        padding-left: 0;
        padding-top: 20px;
    }
    .floating_banner_layount01 .content{
        font-size: 16px;
    }
    .floating_banner_layount01 .content .link{
        padding: 5px 10px;
        font-size: 14px;
    }
}
.side_product_list .link{
    display: block;
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #3C3C3C;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
}

.cateogry_detail_layount01{
    padding-top: 15px;
}

.cateogry_detail_layount01 > .title{
    font-size: 32px;
    font-weight: 600;
    color: #3C3C3C;
    border-bottom: solid 3px #D9D9D9;
    position: relative;
    padding-bottom: 10px;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount01 > .title{
        font-size: 24px;
        text-align: left;
    }
}
.cateogry_detail_layount01 > .title::after{
    position: absolute;
    content: '';
    left: 0;
    bottom: -3px;
    width: 525px;
    max-width: 100%;
    height: 3px;
    background: #0D72EC;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount01 > .title::after{
        width: 70%;
    }
}
.cateogry_detail_layount01 .content{
    padding:20px 0;
    font-size: 16px;
    font-weight: 400;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount01 .content{
        font-size: 14px;
    }
}
.cateogry_detail_layount02{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
}

.cateogry_detail_layount02 h3{
    margin-bottom: 6px;
    position: relative;
    font-size: 20px;
    font-weight: 600;
    color: #FF3838;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.cateogry_detail_layount02 h3::before{
    content: '＼';
    margin-right: 15px;
}
.cateogry_detail_layount02 h3::after{
    content: '／';
    margin-left: 15px;
}

.cateogry_detail_layount02 .link{
    display: flex;
    padding: 25px 34px;
    background-color: #FF3838;
    color: #fff;
    border-radius: 50px;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
}

.cateogry_detail_layount02 .link .icon{
    width: 34px;
    height: 34px;
    border-radius: 17px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 14px;
}

.cateogry_detail_layount02 .link .icon img{
    display: block;
    width: 15px;
    height: auto;
    margin-left: 1px;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount02 h3{
        font-size: 14px;
    }
    .cateogry_detail_layount02 .link{
        padding: 10px 20px;
        font-size: 18px;
    }
}
.category_product_list{
    margin-top: 20px;
}

.category_product_list ul li{
    list-style: none;
    padding: 15px 15px 30px 15px;
    border: solid 1px #C7C7C7;
    margin-bottom: 20px;
}

.category_product_list ul li:last-child{
    margin-bottom: 0;
}

.cateogry_detail_layount03{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount03{
        flex-wrap: wrap;
    }
}

.cateogry_detail_layount03 .number{
    width: 50px;
    min-width: 50px;
    height: 50px;
    min-height: 50px;
    background: rgb(161,140,104);
    background: linear-gradient(180deg, rgba(161,140,104,1) 0%, rgba(241,211,159,1) 48%, rgba(246,215,162,1) 52%, rgba(236,206,155,1) 57%, rgba(161,140,104,1) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    font-weight: 900;
    text-shadow: 0 2px 2px rgba(0,0,0,0.2);
}
.cateogry_detail_layount03 .thumb{
    width: 100px;
    height: auto;
    margin-left: 30px;
}

.cateogry_detail_layount03 .detail{
    padding-left: 24px;
}

.cateogry_detail_layount03 .detail .title{
    font-size: 20px;
    font-weight: 600;
    color: #0D72EC;
    text-align: left;
}

.cateogry_detail_layount03 .detail .company{
    font-size: 14px;
    color: #8A8A8A;
    text-align: left;
}

.cateogry_detail_layount03 .detail .score_review_panel{
    margin-top: 10px;
}

.cateogry_detail_layount03 .detail .desc{
    font-size: 16px;
    padding-top: 15px;
    width: 60%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media screen and (max-width: 1300px) {
    .cateogry_detail_layount03 .detail .desc{
        width: 100%;
        white-space: unset;
        overflow:unset;
        text-overflow:unset;
    }
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount03 .detail .desc{
        font-size: 14px;
    }
}
.cateogry_detail_layount03 .detail .janre{
    padding: 5px 17px;
    background: #F5F5F5;
    font-size: 14px;
    display: block;
    width: fit-content;
    margin-top: 10px;
}
@media screen and (max-width: 768px) {
    .cateogry_detail_layount03 .detail .janre{
        font-size: 12px;
    }
}

.pagination{
    margin-top: 50px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.pagination .page-numbers{
    display: block;
    padding: 6px 13px;
    margin: 0 5px;
    border: solid 1px #0D72EC;
    color: #0D72EC;
}

.pagination .page-numbers.current{
    border: solid 1px #0769B5;
    background: #0769B5;
    color: #fff;
}

.single-content{
    width: 100%;
    line-height: 2;
}

.single-content h1, 
.single-content h2{
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

.single-content h3{
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}