@charset "utf-8";
/*--京home.css--*/
/* ##########PC########## */
.contents{
    padding-bottom: 0;
    overflow-x: hidden;
}

/*mainvisual*/
.mainvisual{
    position: relative;
    padding: 3rem 0 1.5rem 3rem;
    margin-bottom: 5rem;
}

    .mainvisual::before{
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        display: block;
        background: var(--base_color2);
        width: 50%;
        height: 100%;
        border-radius: 0 0 2rem 0;
    }


    .mainvisual > .box_inner{
        position: relative;
        z-index: 1;
     }

        .mv_slider{
            position: relative;
        }

            .mv_slider .slick-dotted.slick-slider{
                margin-bottom: 0;
            }

            .mv_slider .slide_obj{
                width: 52.5rem;
                margin-right: 4.5rem;
                position: relative;
                padding-bottom: 0.5rem;
            }

                .mv_slider .slide_obj a,
                .mv_slider .slide_obj .no_link{
                    display: block;
                    border-radius: 1rem;
                    overflow: hidden;
                    box-shadow: 4px 4px 0 0 rgba(0,0,0,0.1);
                }

                .mv_slider .slide_obj img{
                    max-width: 100%;
                    height: auto;
                    position: relative;
                    z-index: 0;
                    transition: .3s all ease;
                }

                .mv_slider .slide_obj a:hover img{
                    filter: brightness(1.1);
                }

            .mv_slider .slick-dots{
                bottom: -3.5rem;
                left: 1rem;
                width: auto;
            }

        .mv_news{
            position: relative;
            z-index: 1;
            display: flex;
            justify-content: flex-end;
            margin-left: 22.5rem;
            margin-top: -1.5rem;
        }

            .mv_news dl{
                display: flex;
                flex-direction: column;
                align-items: flex-end;
                width: 100%;
            }

                .mv_news dl dt{
                    display: flex;
                    flex-direction: column;
                    align-items: flex-end;
                    background: #0399B4;
                    color: #fff;
                    font-family: var(--font_family2);
                    font-size: 1.5rem;
                    font-weight: 600;
                    padding: 0.3em 0.5em;
                }

                .mv_news dl dd{
                    box-sizing: border-box;
                    background: #fff;
                    color: var(--base_color1);
                    border: 2px solid var(--base_color1);
                    border-right: none;
                    padding: 1em 1em 0.8em;
                    border-radius: 0.75rem 0 0 0.75rem;
                    font-size: 1.5em;
                    font-weight: 700;
                    width: 100%;
                    line-height: 1.2;
                }

                    .mv_news dl dd a{
                        color: var(--base_color1);
                        text-decoration: none;
                    }

                    .mv_news dl dd a:hover{
                        text-decoration: underline;
                    }

.search_books_lookup_wrapper{
    width: 1090px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

    .search_books_box{
        width: 30rem;
    }

        .search_books_box > .box_header{
            display: flex;
            align-items: center;
            gap: 1em;
            margin-bottom: 1rem;
        }

            .search_books_box > .box_header h2{
                font-weight: 700;
                font-size: 1.25rem;
            }

            .search_books_box > .box_header p{}

        .search_books_box > .box_inner{

        }

            .search_books_box > .box_inner .input_submit_box{
                display: flex;
                margin-bottom: 1.5rem;
                border: 1px solid var(--base_color1);
                border-radius: 0.25rem;
            }

                .search_books_box > .box_inner .input_box{
                    flex: 1;
                    padding: 0.25rem;
                }

                    .search_books_box > .box_inner .input_box input[type="text"]{
                        box-sizing: border-box;
                        width: 100%;
                        height: 100%;
                        border: none;
                        font-size: 0.92em;
                        padding: 0 0.5em;
                    }

                .search_books_box > .box_inner .submit_box{}

                    .search_books_box > .box_inner .submit_box button{
                        width: 6rem;
                        height: 3rem;
                        background: var(--base_color1);
                        color: #fff;
                        border: none;
                        border-radius: 0 0.25rem 0.25rem 0;
                        font-size: 1em;
                    }

                        .search_books_box > .box_inner .submit_box button::before{
                            content: "";
                            display: inline-block;
                            background-image: url(../shared/icon_search.png);
                            background-size: contain;
                            background-repeat: no-repeat;
                            width: 1rem;
                            aspect-ratio: 1 / 1;
                            margin-right: 0.25rem;
                        }

            .search_books_box > .box_inner .search_tags ul{
                display: flex;
                flex-wrap: wrap;
                line-height: 1.4;
                gap: 0.5em 0;
            }

                .search_books_box > .box_inner .search_tags ul li{}

                    .search_books_box > .box_inner .search_tags ul li a{
                        display: inline-block;
                        color: var(--base_color3);
                        text-decoration: none;
                        padding: 0 1em;
                    }

                    .search_books_box > .box_inner .search_tags ul li a:hover{
                        text-decoration: underline;
                    }

                    .search_books_box > .box_inner .search_tags ul li a::before{
                        content: "#";
                    }

    .lookup_box{
        width: 32rem;
    }

        .lookup_box > .box_header{
            margin-bottom: 1.5rem;
        }

            .lookup_box > .box_header h2{
                font-family: var(--font_family2);
                font-size: 2.75rem;
                font-weight: 700;
                display: flex;
                justify-content: center;
            }

        .lookup_box > .box_inner{
            border: 2px solid var(--base_color1);
            border-radius: 1rem;
            overflow: hidden;
        }

            .lookup_box > .box_inner a{
                padding: 1rem;
                display: block;
                line-height: 1.5;
                text-decoration: none;
                color: var(--base_color1);
            }

            .lookup_box > .box_inner a.no_link{
                pointer-events: none;
            }

                .lookup_box > .box_inner a dl{}

                    .lookup_box > .box_inner a dl dt{
                        font-weight: 700;
                        font-size: 1.25em;
                        margin-bottom: 0.5em;
                    }

                        .lookup_box > .box_inner a dl dt .lbl_attract{
                            display: inline-block;
                            background: var(--base_color4);
                            color: #fff;
                            font-size: 0.7em;
                            line-height: 1;
                            font-weight: normal;
                            padding: 0.3em 0.7em;
                            border-radius: 0.25rem;
                            font-weight: 500;
                            margin-right: 0.5em;
                            transform: translateY(-0.1em);
                        }

                    .lookup_box > .box_inner a dl dd{
                        display: flex;
                        align-items: flex-start;
                    }

                    .lookup_box > .box_inner a dl dd .fig{
                        width: 11.5rem;
                        aspect-ratio: 1 / 1;
                        overflow: hidden;
                        border-radius: 0.5rem;
                    }

                        .lookup_box > .box_inner a dl dd .fig img{
                            max-width: 100%;
                            height: auto;
                        }

                    .lookup_box > .box_inner a dl dd .text{
                        flex: 1;
                        padding-left: 1.5rem;
                    }

                        .lookup_box > .box_inner a dl dd .text .cp{
                            color: var(--base_color5);
                            font-weight: 700;
                            font-size: 1.1em;
                            margin-bottom: 0.5em;
                        }

/*common*/
.common_hdg{
    display: flex;
    align-items: center;
    gap: 1rem;
}
    .common_hdg::before{
        font-size: 2.75rem;
        font-family: var(--font_family2);
        font-weight: 700;
    }

    .common_hdg .lbl_ja{
        background: var(--base_color1);
        color: #fff;
        font-size: 2rem;
        font-weight: 700;
        padding: 0.1em 0.2em 0;
    }

.buy_books_box{
    width: 1080px;
    margin: 0 auto 5rem;
    position: relative;
}

    .buy_books_box > .box_header{
        position: relative;
        z-index: 2;
    }

        .buy_books_box > .box_header h2{
            width: 23.5rem;
            overflow: hidden;
        }
        

            .buy_books_box > .box_header h2 img{
                max-width: 100%;
                height: auto;
            }

    .buy_books_box > .box_inner{
        position: relative;
        z-index: 1;
    }

    .pickup_books_box{
        position: relative;
        margin-bottom: 3rem;
    }

        .pickup_books_box::before{
            content: "";
            display: block;
            background: #f5f5f5;
            width: calc(1080px + (100vw - 1080px) / 2 + 5rem);
            height: calc(100% + 5rem);
            position: absolute;
            z-index: 0;
            bottom: 0;
            right: -5rem;
            border-radius: 0 3.5rem 3.5rem 0;
        }

        .pickup_books_box > .box_header{
            display: flex;
            justify-content: flex-end;
            margin-bottom: 2.75rem;
            position: relative;
            z-index: 1;
        }

        .pickup_books_box > .box_header h3::before{
            content: "PICK UP";
        }

        .pickup_books_box > .box_inner{
            position: relative;
            z-index: 1;
            padding-bottom: 3.5rem;
        }

    .books_list{}

        .books_list > ul{
            display: flex;
            flex-wrap: wrap;
            /*gap: 5.5rem;*/
            gap: 2rem 3rem;
            margin-bottom: 5rem;
        }

            .books_list > ul > li{
                /*width: calc((100% - 5.5rem) / 2);*/
                width: calc((100% - 3rem) / 2);
            }

                .books_list > ul > li a{
                    box-sizing: border-box;
                    color: var(--base_color1);
                    text-decoration: none;
                    display: flex;
                    align-items: flex-start;
                    /*flex-wrap: wrap;*/
                    width: 100%;
                    aspect-ratio: 496 / 310;
                    padding: 1.5rem 1.5rem 0.5rem 1.5rem;
                    position: relative;
                }

                    .books_list > ul > li a::before{
                        content: "";
                        display: block;
                        width: 100%;
                        height: calc(100% - 1.75rem);
                        position: absolute;
                        top: 0;
                        left: 0;
                        z-index: 0;
                        background: var(--base_color6);
                    }

                    .books_list > ul > li a .text{
                        box-sizing: border-box;
                        flex: 1;
                        line-height: 1.4;
                        display: flex;
                        flex-direction: column;
                        justify-content: space-between;
                        position: relative;
                        z-index: 1;
                        padding-right: 1.25rem;
                        padding-bottom: 2.25rem;
                        height: 100%;
                    }

                        .books_list > ul > li a .text .title_desc{
                            font-weight: 600;
                        }

                            .books_list > ul > li a .text .title_desc dl dt{
                                font-size: 1.5em;
                                margin-bottom: 0.5em;
                            }

                            .books_list > ul > li a .text .title_desc dl dd{
                                font-weight: 600;
                                font-size: 0.9375em;
                            }

                        .books_list > ul > li a .text .price_tags{

                        }

                            .books_list > ul > li a .text .price_tags .price{}

                                .books_list > ul > li a .text .price_tags .price dl{
                                    display: flex;
                                    align-items: center;
                                }

                                    .books_list > ul > li a .text .price_tags .price dl dt{
                                        margin-right: 0.5em;
                                    }

                                    .books_list > ul > li a .text .price_tags .price dl dd{
                                        display: flex;
                                        align-items: center;
                                    }

                                        .books_list > ul > li a .text .price_tags .price dl dd .lbl_price{
                                            font-size: 1.4em;
                                        }

                                        .books_list > ul > li a .text .price_tags .price dl dd .lbl_yen{
                                            margin-left: 0.5em;
                                        }

                            .books_list > ul > li a .text .price_tags .tags{
                                border-top: 1px solid rgba(0,0,0,0.2);
                                margin-top: 0.5em;
                                padding-top: 0.5em;
                            }

                                .books_list > ul > li a .text .price_tags .tags ul{
                                    display: flex;
                                    gap: 0.2em;
                                    flex-wrap: wrap;
                                    font-size: 0.9em;
                                    line-height: 1.2;
                                }

                                    .books_list > ul > li a .text .price_tags .tags ul li{
                                        background: #fff;
                                        padding: 0 0.3em;
                                        height: 1.375rem;
                                        display: flex;
                                        justify-content: center;
                                        align-items: center;
                                    }

                                    .books_list > ul > li a .text .price_tags .tags ul li.tag_new{
                                        background: #D50004;
                                        color: #fff;
                                        font-family: var(--font_family2);
                                        font-weight: 500;
                                    }

                                    .books_list > ul > li a .text .price_tags .tags ul li.tag_reserve{
                                        color: #fff;
                                        background: var(--base_color2);

                                    }

                                    .books_list > ul > li a .text .price_tags .tags ul li.tag_outstock{
                                        background: #fff;
                                        color: #D50004;
                                        border: 1px solid #D50004;
                                    }

                    .books_list > ul > li a .fig,
                    .books_list > ul > li a .fig img{
                        width: 12.5rem;
                        /*aspect-ratio: 200 / 288;*/
                        transition: .3s all ease;
                    }

                    .books_list > ul > li a:hover .fig img{
                        transform: scale(1.03);
                    }

                    .books_list > ul > li a .fig{
                        box-shadow: 5px 5px 5px 0 rgba(0,0,0,0.1);
                        position: relative;
                        z-index: 1;
                    }

                    .books_list > ul > li a .fig img{
                        object-fit: cover;
                    }

        .books_list .more{
            display: flex;
            justify-content: center;
        }

            .books_list .more a{
                box-sizing: border-box;
                border: 1px solid var(--base_color1);
                color: var(--base_color1);
                background: #fff;
                padding: 0.3em 2.5em 0;
                font-size: 1.125em;
                display: flex;
                align-items: center;
                height: 3rem;
                border-radius: 100vh;
                text-decoration: none;
                position: relative;
                z-index: 1;
                overflow: hidden;
                transition: .3s all ease;
            }

                .books_list .more a::before{
                    content: "";
                    display: block;
                    width: 100%;
                    height: 100%;
                    background: var(--base_color1);
                    position: absolute;
                    top: 0;
                    left: 0;
                    z-index: -1;
                    transition: .3s all ease;
                    opacity: 0;
                    transform: skewX(-10deg) scaleX(0);
                    transform-origin: left center;
                }
            
            .books_list .more a:hover{
                color: #fff;
            }

            .books_list .more a:hover::before{
                opacity: 1;
                transform: skewX(-10deg) scaleX(1.1);
            }

    .fishing_books_box{}

        .fishing_books_box > .box_header{
            display: flex;
            justify-content: center;
            margin-bottom: 2.75rem;
        }

        .fishing_books_box > .box_header h3::before{
            content: "FISHING";
        }

        .fishing_books_box .books_list > ul > li a{
            padding-bottom: 1.5rem;
            flex-wrap: wrap;
        }

        .fishing_books_box .books_list > ul > li a::before {
            height: 100%;
            background: var(--base_color7);
        }

        .fishing_books_box .books_list > ul > li a .text{
            order: 2;
            padding: 1em 0 1rem 1.25rem;
        }

            .fishing_books_box .books_list > ul > li a .text .title_desc dl dd{
                font-weight: normal;
                font-size: 1.1em;
            }

            .books_list > ul > li a .text .price_tags .price{
                display: flex;
                align-items: center;
                line-height: 1;
            }

                .books_list > ul > li a .text .price_tags .price .lbl_book_type{
                    background: var(--base_color1);
                    color: #fff;
                    font-size: 0.9em;
                    line-height: 1;
                    padding: 0.5em 1em 0.3em;
                    margin-right: 1em;
                    border-radius: 0.25rem;
                }

        .fishing_books_box .books_list > ul > li a{
            align-items: flex-start;
        }

        .fishing_books_box .books_list > ul > li a .fig{
            order: 1;
            width: 11.5rem;
        }

            .fishing_books_box .books_list > ul > li a .fig img{
                width: 11.5rem;
            }

        .fishing_books_box .books_list > ul > li a .cp{
            position: relative;
            z-index: 1;
            order: 3;
            width: 100%;
            font-size: 1.2em;
            text-align: center;
            margin-top: 1em;
            line-height: 1.2;
        }

.make_books_box{
    width: 1080px;
    margin: 0 auto 7.5rem;
    position: relative;
    padding-bottom: 5rem;
}

    .make_books_box::before{
        content: "";
        display: block;
        background: #f5f5f5;
        width: calc(1080px + (100vw - 1080px) / 2 + 5rem);
        height: calc(100% - 14rem);
        position: absolute;
        z-index: 0;
        bottom: 0;
        left: -5rem;
        border-radius: 3.5rem 0 0 3.5rem;
    }

    .make_books_box > .box_header{
        display: flex;
        align-items: center;
        margin-bottom: 3rem;
        position: relative;
        z-index: 1;
    }

        .make_books_box > .box_header h2{
            width: 23.5rem;
            overflow: hidden;
        }

            .make_books_box > .box_header h2 img{
                max-width: 100%;
                height: auto;
            }

        .make_books_box > .box_header p{
            font-size: 1.5em;
            font-weight: 700;
            line-height: 1.9;
            margin-left: 3em;
        }

    .make_books_box > .box_inner{
        padding-left: 3.75rem;
        position: relative;
        z-index: 1;
    }

        .make_books_box > .box_inner > ul{
            display: flex;
            flex-direction: column;
            gap: 5rem;
        }

            .make_books_box > .box_inner > ul > li{}

            .make_books_box > .box_inner > ul > li > a{
                display: block;
                color: var(--base_color1);
                text-decoration: none;
            }

            .make_book_type{
                display: flex;
                align-items: flex-start;
                position: relative;
            }

                .make_book_type .lbl_en{
                    position: absolute;
                    font-family: var(--font_family2);
                    font-size: 2.75em;
                    font-weight: 700;
                    top: 0;
                }

                .make_book_type .text{
                    flex: 1;
                    line-height: 1.7;
                    padding-right: 3em;
                }

                    .lbl_target_h3{
                        margin-bottom: 3rem;
                        display: flex;
                        flex-direction: column;
                        align-items: flex-start;
                    }

                        .lbl_target_h3 .lbl_target{
                            box-sizing: border-box;
                            font-weight: 600;
                            font-size: 1.5em;
                            height: 3.5rem;
                            border-radius: 100vh;
                            border-bottom-left-radius: 0;
                            background: #ccc;
                            color: #fff;
                            padding: 0.1em 1.8em 0;
                            display: flex;
                            align-items: center;
                            position: relative;
                            margin-bottom: 3rem;
                        }

                        .lbl_target_h3 .lbl_target::before{
                            content: "";
                            background: #ccc;
                            width: 0.75rem;
                            height: 1.5rem;
                            clip-path: polygon(100% 50%, 0 0, 0 100%);
                            position: absolute;
                            bottom: -0.75rem;
                            left: 0;
                        }

                        .lbl_target_h3 h3{
                            font-weight: 700;
                            font-size: 3em;
                            position: relative;
                            padding-right: 3.75rem;
                            line-height: 1;
                        }

                            .lbl_target_h3 h3::after{
                                content: "";
                                display: inline-block;
                                width: 2.5rem;
                                aspect-ratio: 1 / 1;
                                background-color: var(--base_color1);
                                background-image: url(../shared/icon_w_arr.png);
                                background-size: 3rem auto;
                                background-repeat: no-repeat;
                                background-position: center center;
                                border-radius: 50%;
                                position: absolute;
                                top: 0;
                                right: 0;
                                transition: .3s all ease;
                            }

                    .make_book_type .text p.cp{
                        font-weight: 700;
                        font-size: 1.5em;
                        line-height: 1.5;
                        margin-bottom: 0.9em;
                    }

                    .make_book_type .text p.exp{
                        font-size: 0.96em;
                    }

                        .make_book_type .text p.exp .fig_sp{
                            display: none;
                        }

                .make_book_type .fig{
                    margin-top: 4.375rem;
                    width: 35.5rem;
                    border-radius: 1rem;
                    overflow: hidden;
                    transition: .3s all ease;
                }

                    .make_book_type .fig img{
                        max-width: 100%;
                        height: auto;
                        transition: .3s all ease;
                    }

                    .make_books_box > .box_inner > ul > li > a:hover .make_book_type .fig img{
                        filter: brightness(1.1);
                        transform: scale(1.03);
                    }

            /*カスタム出版*/
            .make_book_type.type_custom .lbl_en{
                right: 0;
                color: var(--base_color2);
            }

            .make_book_type.type_custom .lbl_target_h3 .lbl_target,
            .make_book_type.type_custom .lbl_target_h3 .lbl_target::before{
                background: var(--base_color2);
            }

            .make_book_type.type_custom .text p.cp{
                color: var(--base_color2);
            }

            .make_books_box > .box_inner > ul > li > a:hover .make_book_type.type_custom .lbl_target_h3 h3::after{
                background-color: var(--base_color2);
            }

            .make_books_box > .box_inner > ul > li > a:hover .make_book_type.type_custom .fig{
                box-shadow: 0.25rem 0.25rem 0 0 var(--base_color2);
            }


            .bn_little_press{
                display: flex;
                justify-content: center;
                margin-top: 3rem;
            }

                .bn_little_press a{
                    width: 40rem;
                    border-radius: 0.5rem;
                    overflow: hidden;
                    transition: .3s all ease;
                }

                .bn_little_press a img{
                    max-width: 100%;
                    height: auto;
                    transition: .3s all ease;
                }

                .bn_little_press a:hover{
                    box-shadow: 0 0 10px 1px rgba(0,0,0,0.1);
                }

                    .bn_little_press a:hover img{
                        filter: brightness(1.1);
                    }

            /*自費出版*/
            .make_book_type.type_publishing{
                flex-direction: row-reverse;
            }

            .make_book_type.type_publishing .lbl_en{
                left: 0;
                color: var(--base_color8);
            }

            .make_book_type.type_publishing .lbl_target_h3 .lbl_target,
            .make_book_type.type_publishing .lbl_target_h3 .lbl_target::before{
                background: var(--base_color8);
            }

            .make_book_type.type_publishing .text{
                padding-right: 0;
                padding-left: 3em;
            }

            .make_book_type.type_publishing .text p.cp{
                color: var(--base_color8);
            }

            .make_books_box > .box_inner > ul > li > a:hover .make_book_type.type_publishing .lbl_target_h3 h3::after{
                background-color: var(--base_color8);
            }

            .make_books_box > .box_inner > ul > li > a:hover .make_book_type.type_publishing .fig{
                box-shadow: 0.25rem 0.25rem 0 0 var(--base_color8);
            }


    /*news_box*/
    .news_box{
        display: flex;
        justify-content: center;
        width: 1080px;
        margin: 0 auto 5rem;
    }

        .news_box > .box_header{
            width: 15rem;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: space-between;
        }

            .news_box > .box_header h2{
                flex-direction: column;
                align-items: center;
            }

            .news_box > .box_header h2::before{
                content: "NEWS";
            }

            .news_box .more{
                display: flex;
                align-items: center;
                margin-top: 2rem;
            }

                .news_box .more a{
                    box-sizing: border-box;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    height: 3rem;
                    border-radius: 100vh;
                    border: 1px solid var(--base_color1);
                    background: var(--base_color9);
                    color: var(--base_color1);
                    padding: 0 2.25em;
                    font-size: 1.125em;
                    text-decoration: none;
                    padding-top: 0.1em;
                }


        .news_box > .box_inner{
            flex: 1;
        }

            .entry_list_box{

            }


            .entry_list_box ul{}

                .entry_list_box ul li{
                    line-height: 1.4;
                }

                    .entry_list_box ul li a{
                        display: flex;
                        color: var(--base_color1);
                        text-decoration: none;
                        padding: 1em 1em;
                        transition: .3s all ease;
                    }

                    .entry_list_box ul li a:hover{
                        background: rgba(253,200,25,0.15);
                    }

                        .entry_list_box ul li a .entry_date_category{
                            display: flex;
                        }

                            .entry_list_box ul li a .entry_date{
                                width: 7.5em;
                                padding-top: 0.1em;
                            }

                            .entry_list_box ul li a .entry_category{
                            }

                                .entry_list_box ul li a .entry_category .lbl_cat{
                                    width: 6em;
                                    height: 1.375rem;
                                    font-size: 0.875em;
                                    border-radius: 100vh;
                                    font-weight: 600;
                                    display: flex;
                                    justify-content: center;
                                    align-items: center;
                                    line-height: 1;
                                    padding-top: 0.1em;
                                    background: #ccc;
                                }

                                .entry_list_box ul li a .entry_category .lbl_cat.cat_teikishi{
                                    background: var(--base_color10);
                                }

                                .entry_list_box ul li a .entry_category .lbl_cat.cat_shinkan{
                                    background: var(--base_color11);
                                }

                                .entry_list_box ul li a .entry_category .lbl_cat.cat_news{
                                    background: var(--base_color12);
                                }

                        .entry_list_box ul li a .entry_title{
                            flex: 1;
                            padding-left: 1.5em;
                            padding-top: 0.1em;
                        }

        .news_box > .box_footer{
            display: none;
        }


.aboutus_box{
    background: #fafafa;
    padding: 5rem 0;
}

    .aboutus_box > .box_header{
        margin-bottom: 3rem;
    }

        .aboutus_box > .box_header .common_hdg{
            flex-direction: column;
            align-items: center;
        }

            .aboutus_box > .box_header .common_hdg::before{
                content: "ABOUT US";
            }
        
    .aboutus_box > .box_inner{
        margin-bottom: 2.5rem;
    }

        .aboutus_box > .box_inner p{
            line-height: 2;
            text-align: center;
        }

        .aboutus_box > .box_inner .more{
            display: flex;
            justify-content: center;
            margin-top: 2rem;
        }

        .aboutus_box > .box_inner .more a{
            box-sizing: border-box;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 3rem;
            border-radius: 100vh;
            border: 1px solid var(--base_color1);
            background: #fff;
            color: var(--base_color1);
            padding: 0 2.25em;
            font-size: 1.125em;
            text-decoration: none;
            padding-top: 0.1em;
            overflow: hidden;
            position: relative;
            z-index: 1;
            transition: .3s all ease;
        }

        .aboutus_box > .box_inner .more a::before{
            content: "";
            display: block;
            width: 100%;
            height: 100%;
            background: var(--base_color1);
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1;
            transition: .3s all ease;
            opacity: 0;
            transform: skewX(-10deg) scaleX(0);
            transform-origin: left center;
        }

        .aboutus_box > .box_inner .more a:hover{
            color: #fff;
        }

        .aboutus_box .more a:hover::before{
            opacity: 1;
            transform: skewX(-10deg) scaleX(1.1);
        }

    .aboutus_box > .box_footer{
        display: flex;
        justify-content: center;
    }

.sns_box{
    padding: 5rem 0 5rem;
}

    .sns_box > .box_header{
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 2rem;
    }

    .sns_box > .box_header .common_hdg{
        margin-bottom: 2rem;
    }

    .sns_box > .box_header .common_hdg::before{
        content: "SNS";
    }

    .sns_box > .box_inner ul{
        display: flex;
        justify-content: center;
        gap: 2.5rem;
    }

        .sns_box > .box_inner ul li{}

        .sns_box > .box_inner ul li a{
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 1.75rem;
            width: 19.375rem;
            aspect-ratio: 310 / 96;
            background: #000;
            color: #fff;
            text-decoration: none;
            border-radius: 0.5rem;
        }

        .sns_box > .box_inner ul li a .fig{
            width: 3rem;
            transition: .3s all ease;
        }

        .sns_box > .box_inner ul li a:hover .fig{
            transform: scale(1.08);
        }

            .sns_box > .box_inner ul li a .fig img{
                max-width: 100%;
                height: auto;
            }

        .sns_box > .box_inner ul li a .lbls{
            display: flex;
            flex-direction: column;
        }

            .sns_box > .box_inner ul li a .lbl_account{
                font-size: 0.75em;
                margin-bottom: 0.8em;
            }

            .sns_box > .box_inner ul li a .lbl_service_name{
                font-size: 1.25em;
                font-weight: 500;
            }





@media screen and (min-width:1px) and (max-width:1400px) {

}

@media screen and (min-width:1px) and (max-width:1280px) {

}


@media screen and (min-width:1px) and (max-width:1200px) {

}

/*ipad*/
@media screen and (min-width:1px) and (max-width:1024px){
    .mv_slider .slide_obj{
        width: 75vw;
    }

    .mv_news{
        margin-left: 14rem;
    }

    .search_books_lookup_wrapper{
        width: 92vw;
    }

        .search_books_box{
            width: auto;
            flex: 1;
            margin-right: 2rem;
        }

        .lookup_box{
            width: 30rem;
        }

    .buy_books_box{
        width: 86vw;
    }

        .pickup_books_box::before{
            width: 97vw;
            right: -3vw;
        }

    .books_list > ul{
        gap: 3rem;
    }

        .books_list > ul > li {
            width: calc((100% - 3rem) / 2);
        }

        .books_list > ul > li a .fig, .books_list > ul > li a .fig img{
            width: 10rem;
        }

    .fishing_books_box .books_list > ul > li a .text{
        padding-bottom: 0;
    }

    .fishing_books_box .books_list > ul > li a .text .price_tags .price{
        flex-direction: column;
        align-items: flex-start;
        margin-top: 1em;
    }

        .fishing_books_box .books_list > ul > li a .text .price_tags .price dl{
            width: 100%;
            margin-top: 0.3em;
        }

    .fishing_books_box .books_list > ul > li a .fig,
    .fishing_books_box .books_list > ul > li a .fig img{
        width: 9rem;
    }

    .fishing_books_box .books_list > ul > li a .cp{
        text-align: left;
        font-size: 1.05em;
    }

    .make_books_box{
        width: 86vw;
    }

        .make_books_box::before{
            width: 97vw;
            left: -4vw;
        }

        .make_books_box > .box_inner{
            padding-left: 0;
        }

        .make_book_type .fig{
            width: 40vw;
        }

    .news_box{
        width: 90vw;
    }

    .sns_box > .box_inner ul{
        gap: 1.5rem;
    }

        .sns_box > .box_inner ul li a{
            width: 28vw;
        }



}

/* ##########SP横向き########## */
@media screen and (min-width:1px) and (max-width:768px) {


}

/* ##########SP########## */
@media screen and (min-width:1px) and (max-width:479px) {
    .mainvisual{
        padding: 3vw 0 3vw 3vw;
        margin-bottom: 2.5rem;
    }

        .mv_slider .slide_obj{
            width: 94vw;
        }

        .mv_slider .slick-dots{
            bottom: -1.75rem;
            left: 0;
        }

        .mv_news{
            margin-left: 0;
            margin-top: 1.25rem;
        }

            .mv_news dl dt{
                font-size: 1rem;
            }

            .mv_news dl dd{
                font-size: 1.05em;
                padding: 0.6em;
            }

    .search_books_lookup_wrapper{
        flex-direction: column;
        margin-bottom: 2.5rem;
    }

        .search_books_box{
            width: 100%;
            margin-right: 0;
            margin-bottom: 2rem;
        }

            .search_books_box > .box_inner .search_tags ul{
                gap: 0.3em 0.5em;
            }

            .search_books_box > .box_inner .search_tags ul li a{
                padding: 0;
            }

        .lookup_box{
            width: 100%;
        }

            .lookup_box > .box_header{
                margin-bottom: 0.5rem;
            }

            .lookup_box > .box_header h2{
                font-size: 2rem;
            }

            .lookup_box > .box_inner a dl dd .fig{
                width: 40%;
            }

    .common_hdg::before{
        font-size: 1.8rem;
    }

    .common_hdg .lbl_ja{
        font-size: 1.6rem;
    }

    .buy_books_box{
        margin-bottom: 2.5rem;
    }

    .buy_books_box > .box_header{
        display: flex;
        justify-content: center;
        margin-bottom: 1rem;
    }

    .buy_books_box > .box_header h2{
        width: 50vw;
    }

    .pickup_books_box > .box_header{
        justify-content: center;
        margin-bottom: 1.25rem;
    }

    .pickup_books_box > .box_inner{
        padding-bottom: 2rem;
    }

    .books_list > ul{
        flex-direction: column;
        gap: 1.5rem;
        margin-bottom: 1.5rem;
    }

        .books_list > ul > li{
            width: 100%;
        }

        .books_list > ul > li a{
            padding: 1rem;
            aspect-ratio: initial;
            /*align-items: stretch;*/
        }

        .books_list > ul > li a::before{
            height: 100%;
        }

        .books_list > ul > li a .text{
            padding-bottom: 0;
            height: auto;
        }

        .books_list > ul > li a .text .title_desc dl dt{
            font-size: 1.2em;
        }

        .books_list > ul > li a .text .price_tags .tags{
            margin-top: 0.5em;
            padding-top: 0.4em;
        }

        .books_list > ul > li a .fig,
        .books_list > ul > li a .fig img{
            width: 30vw;
        }

    .fishing_books_box > .box_header{
        margin-bottom: 1rem;
    }

    .make_books_box{
        margin-bottom: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .make_books_box::before{
        height: calc(100% - 5rem);
    }

    .make_books_box > .box_header{
        flex-direction: column;
        align-items: center;
        margin-bottom: 1.5rem;
    }

        .make_books_box > .box_header h2{
            width: 50vw;
            margin-bottom: 1rem;
        }

        .make_books_box > .box_header p{
            font-size: 1.05em;
            margin-left: 0;
            line-height: 1.4;
            text-align: center;
        }

    .make_books_box > .box_inner > ul{
        gap: 2.75rem;
    }

    .make_book_type{
        flex-direction: column;
    }

        .make_book_type .lbl_en{
            font-size: 1.5em;
            top: 0.3em;
        }

        .make_book_type .text{
            padding-right: 0;
        }

        .lbl_target_h3{
            margin-bottom: 1rem;
        }

        .lbl_target_h3 .lbl_target{
            height: 2.25rem;
            font-size: 1.1em;
            padding-left: 1.4em;
            padding-right: 1.4em;
            margin-bottom: 1.5rem;
        }

        .lbl_target_h3 h3{
            font-size: 2em;
            padding-right: 2.75rem;
        }

            .lbl_target_h3 h3::after{
                width: 2rem;
                background-size: 2rem auto;
            }

        .make_book_type .text p.cp{
            font-size: 1.3em;
            margin-bottom: 0.5em;
        }

            .make_book_type .text p.exp .fig_sp{
                display: inline-block;
                float: right;
                width: 45%;
                border-radius: 0.5rem;
                overflow: hidden;
                margin: 0 0 0 1em;
            }

                .make_book_type .text p.exp .fig_sp img{
                    max-width: 100%;
                    height: auto;
                }

        .make_book_type .fig{
            display: none;
        }

    .bn_little_press{
        margin-top: 1.5rem;
    }

    .make_book_type.type_publishing{
        flex-direction: column;
    }

        .make_book_type.type_publishing .lbl_en{
            left: auto;
            right: 0;
        }

        .make_book_type.type_publishing .text{
            padding-left: 0;
        }

    .news_box{
        flex-direction: column;
        margin-bottom: 2.5rem;
    }

        .news_box > .box_header{
            width: 100%;
            flex-direction: row;
            justify-content: center;
            margin-bottom: 1rem;
        }

            .news_box > .box_header h2{
                flex-direction: row;
            }

                .news_box > .box_header .more{
                    display: none;
                }

        .entry_list_box ul li a{
            flex-direction: column;
            padding: 0.5em;
        }

            .entry_list_box ul li a .entry_date{
                width: auto;
                margin-right: 1em;
            }

            .entry_list_box ul li a .entry_category .lbl_cat{
                font-size: 0.7em;
                height: 1.1rem;
            }

            .entry_list_box ul li a .entry_title{
                padding-left: 0;
            }

        .news_box > .box_footer {
            display: flex;
            justify-content: center;
        }

            .news_box > .box_footer .more{
                margin-top: 1rem;
            }

    .aboutus_box{
        padding: 2.5rem 0;
    }

        .aboutus_box > .box_header{
            margin-bottom: 1.5rem;
        }

        .aboutus_box > .box_header .common_hdg{
            gap: 0.5rem;
        }

        .aboutus_box > .box_inner .more{
            margin-top: 1.5rem;
        }

    .sns_box{
        padding: 2.5rem 5vw;
    }

    .sns_box > .box_header .common_hdg{
        margin-bottom: 1.5rem;
    }

        .sns_box > .box_header p{
            font-size: 0.9em;
            line-height: 1.4;
        }

    .sns_box > .box_inner ul{
        gap: 0.5rem;
    }

    .sns_box > .box_inner ul li{
        width: calc((100% - 1rem) / 3);
    }

        .sns_box > .box_inner ul li a{
            width: 100%;
            /*height: 3rem;*/
            aspect-ratio: initial;
            flex-direction: column;
            align-items: center;
            gap: 0.5rem;
            padding: 0.5rem 0;
        }

        .sns_box > .box_inner ul li a .fig{
            width: 1.5rem;
        }

        .sns_box > .box_inner ul li a .lbls{
            align-items: center;
        }

        .sns_box > .box_inner ul li a .lbl_account{
            margin-bottom: 0.4em;
        }

        .sns_box > .box_inner ul li a .lbl_service_name{
            font-size: 1em;
        }

    
}


/* ##########印刷用########## */
@media print{


}