.sub_top_banner { padding:0 0 3.125rem; }

.titlebox { margin-bottom:2.5rem; }
.titlebox.bg01 { background:url("../img/subpage/character/titlebox_bg01.png") no-repeat center top; }
.titlebox.bg02 { background:url("../img/subpage/picturebook/titlebox_bg02.png") no-repeat center top; }
.titlebox.bg03 { background:url("../img/subpage/gallery/titlebox_bg03.png") no-repeat center top; }
.titlebox h2 { height:4.1875rem; line-height:4.1875rem; margin-bottom:5px; letter-spacing:-0.1rem; }
.titlebox strong { font-weight:700; }

/**************************************************
* sect-character
**************************************************/
.sect-character { background:url("../img/subpage/about_bg.png") no-repeat center 97px; }
.sect-character .cont-wrap { margin:0 5px; }
.sect-character .main_block::before { content:""; display:block; position:absolute; left:0; right:0; top:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/character/character_box_top.png") no-repeat center; }
.sect-character .main_block::after { content:""; display:block; position:absolute; left:0; right:0; bottom:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/character/character_box_bottom.png") no-repeat center; }
.sect-character .main_block { position:relative; padding:15px 0; background:url("../img/subpage/character/character_box_bg.png") repeat-y 0 0/ contain; text-align:center; }
.sect-character .main_block__inner { width:calc(100% - 40px); margin:0 auto; padding:0 20px; background-color:#fff; }
.sect-character .tit { padding:3.75rem 0 1.875rem; }

/**************************************************
* sect-author
**************************************************/
.sect-author .cont-wrap { margin:0 5px; }
.sect-author .main_block:first-of-type { margin-bottom:60px; }
.sect-author .main_block::before { content:""; display:block; position:absolute; left:0; right:0; top:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/picturebook/picturebook_box_top.png") no-repeat center; }
.sect-author .main_block::after { content:""; display:block; position:absolute; left:0; right:0; bottom:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/picturebook/picturebook_box_bottom.png") no-repeat center; }
.sect-author .main_block { position:relative; padding:15px 0; background:url("../img/subpage/picturebook/picturebook_box_bg.png") repeat-y 0 0/ contain; text-align:center; }
.sect-author .main_block__inner { width:calc(100% - 2.5rem); margin:0 auto; padding:1.25rem 3.125rem 1.5625rem; background-color:#fff; }
.sect-author .main_block .text { margin-top:1rem; text-align:left; font-size:1.125rem; line-height:1.8; }

.sect-author .subtitlebox { margin-bottom:2.5rem; }
.sect-author .writer { display:flex; align-items:center; justify-content:center; margin-bottom:3.75rem; }
.sect-author .writer dt { flex-basis:290px; text-align:left; }
.sect-author .writer dt .name { font-size:1.5rem; margin:0 0 5px; font-weight:600; }
.sect-author .writer dt .desc { font-size:1.25rem; line-height:1.85; font-weight:400; }
.sect-author .writer dd { flex-basis:220px; }

@media (max-width:749px) {
    .sect-author .main_block__inner { padding:1.25rem 2.5rem 1.5625rem; }
}
@media (max-width:639px) {
    .sect-author .writer { flex-direction:column-reverse; }
    .sect-author .writer dt { flex-basis:auto; margin-top:12px; }
    .sect-author .writer dt .desc { line-height:1.6; }
}

/**************************************************
* sect-picturebook
**************************************************/
.sect-picturebook .container { position:relative; max-width:740px; background:url("../img/subpage/picturebook/picturebook_box_bg.png") repeat-y 0 0/ contain; text-align:center; }
.sect-picturebook .container::before { content:""; display:block; position:absolute; left:0; right:0; top:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/picturebook/picturebook_box_top.png") no-repeat center; }
.sect-picturebook .container::after { content:""; display:block; position:absolute; left:0; right:0; bottom:-7px; width:100%; height:10px; margin:0 auto; background:url("../img/subpage/picturebook/picturebook_box_bottom.png") no-repeat center; }

.sect-picturebook .titlebox { margin-bottom:1.875rem; }
.sect-picturebook .titlebox h5 { margin-bottom:1.5rem; }
.sect-picturebook .titlebox p { font-size:1.125rem; }
.sect-picturebook .titlebox { background:url("../img/subpage/line.png") no-repeat center bottom; padding:1.25rem 0 2.5rem; position:relative; z-index:2; }
.sect-picturebook ul { margin:0 20px; }
.sect-picturebook li { margin-bottom:1.875rem; display:flex; align-items:center; padding:1.25rem 1.5625rem; background-color:#fff; }
.sect-picturebook li:last-child { margin-bottom:0; }
.sect-picturebook .gall_img { position:relative; height:9.375rem; max-height:9.375rem; cursor:pointer; }
.sect-picturebook .gall_img:hover .icon-zoom { display:block; }
.sect-picturebook .gall_img .icon-zoom { display:none; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); }
.sect-picturebook li .textbox { margin-left:1.25rem; text-align:left; }
.sect-picturebook li .textbox .tit { margin-bottom:8px; font-size:1.25rem; }
.sect-picturebook li .textbox .btn { min-width:inherit; margin-top:1.25rem; margin-right:4px; }
.sect-picturebook li .textbox .btn i { margin-top:-3px; }

.modal[id^=picturebook] { width:100%; max-width:550px; padding:5px 15px; background-color:#fff; }
.modal[id^=picturebook] .modal-header { position:relative; height:35px; line-height:30px; margin-bottom:12px; text-align:left; color:#000; }
.modal[id^=picturebook] .modal-close { right:1%; top:0%; width:1.5rem; height:1.5rem; }

.modal[id^=picturebook] .swiper-navigation > div::after { font-size:2.25rem; }
.modal[id^=picturebook] .swiper-navigation .swiper-button-prev { left:1%; color:#231f20; }
.modal[id^=picturebook] .swiper-navigation .swiper-button-next { right:1%; color:#231f20; }

.modal[id^=picturebook] .swiper-pagination { position:static; margin-top:7px; }
.modal[id^=picturebook] .swiper-pagination .swiper-pagination-bullet { margin:0 4px; opacity:1; background-color:#fee06e; }
.modal[id^=picturebook] .swiper-pagination .swiper-pagination-bullet-active { background-color:#5b3619; }

@media (max-width:749px) {
    .sect-picturebook .container { max-width:calc(100% - 3.32rem); }
    .sect-picturebook .cont-wrap { margin:0 -24px; }
}
@media (max-width:479px) {
    .sect-picturebook li { flex-direction:column; }
    .sect-picturebook .gall_img { margin-bottom:12px; }
}

/**************************************************
* sect-product
**************************************************/
.sect-product { background:url("../img/subpage/product_bg.png") no-repeat center 97px; }
.sect-product .cate-list ul { display:flex; flex-wrap:wrap; justify-content:space-around;margin-bottom:-1.25rem; }
.sect-product .cate-list li { width:calc(50% - 1.25rem); margin-bottom:1.25rem; }

.bo_sch_wrap { display:flex; justify-content:space-between; align-items:flex-start; padding:20px 0 0 0; width:100%; max-width:410px; margin:0 auto; }
.bo_sch_wrap .bo_sch { }
.bo_sch_wrap .sch_bar .sch_input { max-width:200px; padding:3px 12px; border:1px solid #a2a2a2; }
.bo_sch_wrap .sch_bar .sch_btn { padding:4px 12px; background-color:#f9d591; color:#6b3b3e; }
.bo_sch_wrap #sst { padding:2px 12px; font-weight:500; color:#555; border:1px solid #a2a2a2; }

.product-list-slide .swiper-slide {  }
.product-list-slide .swiper-slide img { vertical-align:top; }
.product-list-slide .swiper-pagination .swiper-pagination-bullet { margin:0 4px; opacity:1; background-color:#fee06e; }
.product-list-slide .swiper-pagination .swiper-pagination-bullet-active { background-color:#5b3619; }

.product-list { margin-bottom:-1.25rem; }
.product-list li { margin-bottom:1.25rem; }
.product-list .textbox { margin-top:0.75rem; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"; }
.product-list .textbox .txt01 { font-weight:600; }
.product-list .link-wrap { margin-top:0.75rem; }
.product-list .link-wrap a { display:inline-block; width:3rem; height:3rem; margin:0 5px 0 0; border:1px solid #e4e4e4; border-radius:10px; overflow:hidden; }
.product-list .link-wrap a img { width:100%; height:100%; }
/**************************************************
* best review
**************************************************/
.sect-best-review .titlebox h2 { font-size:2.5rem; }
.sect-best-review .cont-wrap { position:relative; }
.sect-best-review .d-flbox .imgbox { border-radius:1.2rem 0 0 1.2rem; overflow:hidden; }
.sect-best-review .d-flbox { width:45%; }
.sect-best-review .d-frbox { width:55%; margin-left:5%; }
.sect-best-review .d-frbox .subtitlebox { text-align:left; margin-bottom:16px; }
.sect-best-review .d-frbox .subtitlebox h5 { font-size:1.25rem; font-weight:600; }
.sect-best-review .d-frbox li a { display:flex; align-items:center; margin-top:12px; }
.sect-best-review .d-frbox .imgbox { width:5rem; padding:5px; border:1px solid #f0f0f0; }
.sect-best-review .d-frbox p { margin-left:8px; font-size:0.875rem; }

.best-review-slide-button .swiper-button-prev { left:-5%; color:#5b3619; }
.best-review-slide-button .swiper-button-next { right:-5%; color:#5b3619; }

.best-review-slide-pagination { width:100%; margin-top:16px; }
.best-review-slide-pagination .swiper-pagination-bullet { margin:0 4px; opacity:1; background-color:#fee06e; }
.best-review-slide-pagination .swiper-pagination-bullet-active { background-color:#5b3619; }

@media (max-width:749px) {
    .sect-best-review .d-frbox { margin-left:3%; }
    
    .best-review-slide-button .swiper-button-prev { left:1%; }
    .best-review-slide-button .swiper-button-next { right:1%; }
}
@media (max-width:639px) {
    .sect-best-review .d-flex { position:relative; flex-direction:column; border-radius:1.2rem; overflow:hidden; }
    .sect-best-review .d-flbox .imgbox { border-radius:0; }
    .sect-best-review .d-flbox { width:100%; }
    .sect-best-review .d-frbox { position:absolute; left:0; bottom:0; width:100%; margin-left:0; padding:1rem; background-color:rgba(255,255,255,0.4); }
    .sect-best-review .d-frbox .subtitlebox { margin-bottom:4px; }
    .sect-best-review .d-frbox ul { display:flex; flex-wrap:wrap; }
    .sect-best-review .d-frbox li { width:50%; margin-top:8px; }
    .sect-best-review .d-frbox .imgbox { width:60px; border:0 none; padding:0; }
    .sect-best-review .d-frbox p { width:calc(100% - 60px); font-size:0.9375rem; }
}
@media (max-width:479px) {
    .sect-best-review .d-frbox .imgbox { width:45px; }
    .sect-best-review .d-frbox p { width:calc(100% - 45px); }
}
/**************************************************
* sect-product-list
**************************************************/
.sect-product-list { background:url("../img/subpage/about_bg.png") no-repeat center 97px; }
#bo_cate { position:relative; text-align:center; }
#bo_cate select { width:100%; max-width:410px; padding:16px; background:#e1f0ee; cursor:pointer; font-size:1.25rem; color:#5a3716; font-weight:800; border:1px solid #ddd; -webkit-appearance:none; -moz-appearance:none; appearance:none; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"; background:#e1f0ee url('../img/subpage/icon-plus.png') no-repeat calc(100% - 20px) 50%; }
#bo_cate select.toggled { background:#e1f0ee url('../img/subpage/icon-minus.png') no-repeat calc(100% - 20px) 50%; }

#bo_cate option { padding:12px 16px; background-color:#f1f1f1; border-radius:0; box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2); color:#000; font-size:1rem; font-weight:400; }


.product-list { display:flex; flex-wrap:wrap; justify-content:space-between; padding:3.125rem 0 0 0; margin-bottom:-1.875rem; }
.product-list li { width:calc(50% - 1.25rem); margin-bottom:1.875rem; }




/**************************************************
* sect-gallery
**************************************************/
.gallery-slide { margin-bottom:3.75rem; }
.gallery-slide .swiper-slide { width:auto; }
.gallery-slide .textbox { margin:15px 0 0; }
.gallery-slide .textbox .tit { margin-bottom:5px; font-weight:600; font-size:1.5rem; }

.gallery-slide .swiper-scrollbar { position:relative; bottom:0; margin-top:12px; height:4px; }
.gallery-slide .swiper-scrollbar .swiper-scrollbar-drag { background-color:#fee06e; }









