@charset "UTF-8";
.w-container{
    width: min(92%, 1166px);
    margin: auto;
    position: relative;
}

.wrap_decoration{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.shelf_wrapper{
    display: flex;
    align-items: center;
    gap: 10px;
}

.h1_decoration{
    color: #2ca9e1;
    display: inline-block;
}

.i_style{
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #aaaaaa;
    text-decoration: none;
    font-size: 1.2em;
}

.update_font{
    font-size: 0.8em;
    font-weight: bold;
}

.bt_reset{
    padding: 0;
    border: none;
    outline: none;
    font: inherit;
    color: inherit;
    background: none
}

.bt_style{
    font-size: 0.9em;
    color: #fffacd;
    font-weight: bold;
    background-color: #00b7ee;
    border-bottom: 5px solid #0090bb;
    padding: 5px 5px;
    width: 130px;
    cursor: pointer;
}

.bt_style:hover {
    font-size: 1em;
    margin-top: 3px;
    color: #fafad2;
    border-bottom: 2px solid #ccc100;
    font-weight: bold;
}

/** メッセージ **/
.offline_message{
    color: #b0c4de;
    font-weight: bold;
}

.message_wrraper{
    width: 80%;
    margin: 0 auto;
    text-align: center;
}

.message_left{
    display: inline-block;
    text-align: left;
    color: #808080;
}

/** タブ **/
.off_tab {
    display: flex;
    flex-direction: row;
    text-align: center;
    background-color: #fff !important;
    margin: 10px 0 0 0 !important;
    list-style: none;
    flex-wrap: wrap;
    padding: 0;
}

.off_tab__item {
    flex: 1;
    max-width: 14%;
}

.off_tab__link {
    display: block;
    text-decoration: none;
    color: #fffacd;
    text-shadow:
        0.35px 0.35px 0px #696969, -0.35px -0.35px 0px #696969,
        -0.35px 0.35px 0px #696969,  0.35px -0.35px 0px #696969,
        0.35px 0px 0px #696969, -0.35px  0px 0px #696969,
        0px 0.35px 0px #696969,  0px -0.35px 0px #696969;
    cursor: pointer;
    border: 2px solid transparent;
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    padding: 0px 20px 0px;
}

.off_link_all{
    background-color: #fffaf0;
    color: #0090bb;
    text-shadow: none;
    border: solid 2px #0090bb;
}

/*.off_tab__link:hover,
.off_tab__link:focus{
    color: #fffacd;
    font-size: 1.1em;
    font-weight: bold;
}*/

.off_link_all:hover,
.off_link_all:focus{
    color: #0090bb;
}

.off_tab__link.on {
    background-color: #00b7ee33;
}

.off_tab-body__item {
    margin: 30px 15px;
    display: none;
    text-align: center;
}

.off_tab-body__item.on {
    display: block;
}

.off_size{
    max-width: 100%;
    display: inline-block;
}

.text-overflow {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

/** 角丸ボタン **/
.roundedBtn{
    display: inline-block;
    width: 85px;
    max-width: 100%;
    padding: 3px 0px;
    background-color:#6b8e23;
    border: 2px solid transparent;
    border-bottom-color: #808000; /*#007c45;*/
    border-radius: 5px;
    color: #fff8dc;
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    transition: .25s;
    cursor: pointer;
}

.roundedBtn:link,
.roundedBtn:visited,
.roundedBtn:active{
    background-color:#6b8e23;
    border: 2px solid transparent;
    border-bottom-color: #808000;
    color: #fff8dc;
}

/*.roundedBtn:focus,
.roundedBtn:hover{
    background-color: #fff8dc;
    border-color: currentColor;
    color: #007c45;
}*/

.roundedBtn.blue{
    font-size: 0.8em;
    background-color:#229dd9;
    border-bottom-color: #17438d;
}

.roundedBtn.blue:focus,
.roundedBtn.blue:hover{
    background-color: #fff;
    border-color: currentColor;
    color: #17438d;
}

.roundedBtn.del{
    width: 65px;
    padding: 2px 2px;
    background-color: #e4007f; /*rgba(207, 0, 96, 0.6);*/
    border-bottom-color: #c9171e;
    color:  #fff8dc;
    font-size: 0.7rem;
}

.roundedBtn.del:focus,
.roundedBtn.del:hover{
    background-color: #fff8dc;
    border-color: currentColor;
    color: #ce005f;
}

/** 上へのボタン **/
.gotop{
    display: none;
    width: 60px;
    height: 60px;
    box-sizing: border-box;
    background: #FFF;
    border: 1px solid #999;
    border-radius: 50%;
    padding-top: 30px;
    text-align: center;
    letter-spacing: -1px;
    font-size: 85%;
    text-decoration: none;
    color: #333;
    opacity: 0.5;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10000;
}
.gotop::before{
    content: "";
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    width: 25%;
    height: 25%;
    top: 40%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transform: rotate(-45deg);
}
.gotop:hover{
    opacity: 1;
}

/*セレクトボックス*/
select {
    -webkit-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    padding: 10px 30px 8px 10px;
    border-radius: 4px;
    border: 2px solid #00b7ee;
    color: #2a83a2;
    letter-spacing: 0.1em;
    font-weight: bold;
    background-color: #fffaf0;
    cursor: pointer;
}

select:focus {
    outline: none;
}

select.sharebox{
    border: 2px solid #808080;
    color: #778899;
}

.selectWrap {
    position: relative;
    display: block;
}

.selectWrap::after {
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-right: 2px solid #0090bb;
    border-bottom: 2px solid #0090bb;
    transform: rotate(45deg);
    pointer-events: none;
}

.selectWrap.share::after {
    border-right: 2px solid #808080;
    border-bottom: 2px solid #808080;
}

/** 共有Boxのセレクト **/
.share_wrapper{
    display: flex;
    gap: 15px;
    align-items: center;
    margin-left: 20px;
    border: 2px solid #b0c4de;
    padding: 10px 10px;
    border-radius: 10px;
}

.share_title{
    color: #9a9a9a;
    font-weight: bold;
}

/** 図書一覧 **/
/* ラッパーモジュールに対する指定 */
.bl_cardUnit{
    display: flex;
    flex-wrap: wrap;
    gap: 17px;
    margin: 10px auto 20px;
    width:min(98%, 1200px);
}

.bl_cardUnit>*{
    min-width: 0;
}

.bl_cardUnit .bl_cardWrapper{
    width: 49%;
}

.bl_cardWrapper{
    display:flex;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    justify-content: center;
    align-items:center;
    gap: 10px;
    background-color: #fffaf066;
}

.bl_cardWrapper:hover{
    background-color: #d6e9ca4d;
}

.bl_cardWrapper > *:last-child{
    margin-bottom: 0;
}

.bl_card_imgWrapper{
    width: 10%;
    /*    margin: 10%;*/
    flex-shrink: 0;
    margin-left: 20px;
}

.bl_card_imgWrapper > img{
    display: block;
    max-width:100px;
    height: auto;
    margin: 0 auto;
}

.bl_card{
    display:flex;
    flex-direction: column;
    /*    align-items: center;*/
    margin: 0 0 0 20px;
    width: 90%;
}

.bl_card_body{
    display:flex;
    flex-direction:column;
    padding-bottom: 5px;
    flex-grow: 1;
    width: 90%;
}

.bl_card_ttl{
    font-size: 1rem;
    font-weight: bold;
}

.bl_card_txt{
    font-size: 0.9rem;
    color: #000;
}

.bl_card_button{
    margin-bottom: 10px;
    width: 90%;
}

.bl_position{
    vertical-align: middle;
    display:inline-block;
}

.bl_float_right{
    float: right;
}

.bl_float_left{
    float: left;
}

.left_position{
    text-align: left;
}

/* ###### 960px以下 ######*/
@media screen and (max-width: 960px){
    .bl_cardUnit{
        display: flex;
        flex-direction: column;
        gap: 15px;
        margin: 10px auto 0;
    }

    .bl_cardUnit>* {
        max-width: 100%;
    }

    .bl_cardUnit .bl_cardWrapper{
        width: 100%;
    }

    /* ラッパーモジュールに対する指定 */
    .roundedBtn{
        font-size: 1.0rem;
        width: 85px;
    }

    .off_tab__link{
        font-size: 0.8em;
    }

}

/* ###### 769px以下 ######*/
@media screen and (max-width: 769px){
    .bl_card_ttl{
        font-size: 0.9rem;
        font-weight: bold;
        line-height: 1.5;
    }

    .bl_card_txt{
        font-size: 0.8rem;
    }

    .bl_card_comment{
        font-size:0.8rem;
    }

    .roundedBtn.del{
        width: 65px;
        max-width: 100%;
        font-size: 0.6rem;
    }

    .off_tab__link{
        font-size: 0.7em;
    }

    .share_wrapper{
        flex-direction: column;
        margin-left: 0;
    }

}

@media (hover: hover) and (pointer: fine){

    .roundedBtn:focus{
        background-color:#6b8e23;
        border: 2px solid transparent;
        border-bottom-color: #808000;
        color: #fff8dc;
    }

    .roundedBtn:hover{
        background-color: #fff8dc;
        border-color: currentColor;
        color: #808000;
    }

    .roundedBtn:active{
        background-color:#6b8e23;
        border: 2px solid transparent;
        border-bottom-color: #808000;
        color: #fff8dc;
    }

    .roundedBtn.blue:focus{
        background-color:#229dd9;
        border-bottom-color: #17438d;
        color: #fff;
    }

    .roundedBtn.blue:hover{
        background-color: #fff;
        border-color: currentColor;
        color: #17438d;
    }

    .roundedBtn.del:focus{
        background-color: #e4007f;
        border-bottom-color: #c9171e;
        color: #fff8dc;
    }

    .roundedBtn.del:hover{
        background-color: #fff8dc;
        border-color: currentColor;
        color: #c9171e;
    }

    /*    .roundedBtn.del_dev:focus{
            background-color: #fff;
            border-color: currentColor;
            color: #ce005f;
        }

        .roundedBtn.del_dev:hover{
            background-color:#ce749c;
            border-bottom-color: #ce005f;
            border-color: #ce749c;
            color: #fff;
        }*/

}

