/*著者情報*/
.author_icon_name{text-align: center;}
.author_icon{width:100px;}
#author_nickname {color:#333; margin: 20px 0 15px;}
#followdiv{text-align: center;font-size: 14px;margin-bottom:15px;}
.followyou{display: inline-block;margin-left:10px;}
.followyou img{width:12px;cursor:pointer;}
.follow_color .followornot{color:#3aabd2;cursor:pointer;}
.follow_gray .followornot{color:#2b2e38;cursor:pointer;}
.follower_num{margin-right: 5px;}
#author_intro{display:flex;-ms-flex-pack: distribute;justify-content: center;}
#author_selfintro {font-size: 14px;margin:30px 0;text-align: center;}
#author_snses .flex {align-items:center;-webkit-box-align: center; -ms-flex-align: center;}

/*この著者の他のブック*/
#otherbook_title{margin: 40px 0 20px;text-align: center;font-size: 20px;}
#otherbooks{display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;justify-content: center;-ms-flex-pack: distribute; padding: 10px;max-width:800px;margin:0 auto 10px;border-radius: 5px;}
#otherbooks img.thumb {max-width:110px;max-height:110px;border:1px solid #ccc;box-shadow: 2px 2px #ddd;}
#otherbooks div.eachbook img.heart {width:14px;margin-right:2px;}
#morelink {text-align:center;}
.eachbook {width:150px;text-align:center;margin-top:20px;margin-bottom: 10px;}
.eachbook .book_title {max-width: 150px;overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -o-text-overflow: ellipsis;font-size:12px; margin-bottom: 0;margin-top: 5px;text-align:center;}
@media screen and (max-width:480px){
    #author_intro{-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;
    }
    #otherbooks{width:100%;}
    .eachbook {width:130px;}
    .eachbook .book_title {max-width: 130px;}
    
}

.author-book-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 15px;
}
.author-book-card {
    width: calc(50% - 10px);
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 15px;
    box-sizing: border-box;
}
.author-book-card-inner {
    display: flex;
    gap: 15px;
    align-items: stretch;
}
.author-book-image-link {
    display: block;
    width: 120px;
    flex: 0 0 120px;
}
.author-book-image {
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid #ddd;
}
.author-book-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}
.author-book-title {
    margin: 0 0 10px;
    font-size: 18px;
    line-height: 1.5;
    word-break: break-word;
}
.author-book-title a {
    color: #333;
    text-decoration: none;
}
.author-book-title a:hover {
    text-decoration: underline;
}
.author-book-message {
    margin-bottom: 10px;
    line-height: 1.8;
    color: #555;
    word-break: break-word;
}
.author-book-link {
    margin-top: auto;
    text-align: right;
}
.author-book-link a {
    word-break: break-all;
}
.author-books-pagination {
    margin-top: 20px;
}
@media (max-width: 767px) {
    .author-book-card {
        width: 100%;
    }
    .author-book-card-inner {
        display: block;
    }
    .author-book-image-link {
        display: block;
        width: 120px;
        margin: 0 auto 12px;
    }
    .author-book-title {
        font-size: 16px;
    }
}

.author-share-box {
    margin: 14px 0 14px;
    text-align: center;
}

.author-share-label {
    margin-bottom: 14px;
    font-size: 14px;
    font-weight: 700;
    color: #666;
}

.author-share-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.author-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    height: 27px;
    padding: 0 18px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

.author-share-btn:hover {
    text-decoration: none;
    transform: translateY(-1px);
    opacity: 0.92;
}

.share-x {
    background: #111;
    color: #fff;
}

.share-facebook {
    background: #1877f2;
    color: #fff;
}

.share-line {
    background: #06c755;
    color: #fff;
}

.share-copy {
    background: #f3f4f6;
    color: #333;
    border-color: #e2e5e9;
}

.author-share-message {
    margin-top: 10px;
    font-size: 13px;
    color: #2f7d32;
}

@media (max-width: 767px) {
    .author-share-btn {
        min-width: calc(50% - 5px);
        height: 42px;
        font-size: 14px;
        padding: 0 12px;
    }
}
.shop-product-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
}

.shop-product-tab {
    display: inline-block;
    padding: 6px 12px;
    border: 1px solid #ddd;
    border-radius: 999px;
    background: #fff;
    font-size: 14px;
    line-height: 1.4;
    color: #333;
}

.shop-product-tab.is-active {
    border-color: #2a7bd6;
    color: #2a7bd6;
    font-weight: bold;
}

.shop-product-tab.is-disabled {
    color: #999;
    background: #f7f7f7;
}

.shop-product-meta {
    margin-bottom: 8px;
}

.shop-product-type {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    background: #eef5ff;
    color: #2a7bd6;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.4;
}
.share-copy-message {
    margin-top: 15px;
}