
html,
body,
pre{
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴシック","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Verdana,Arial,Helvetica, "ＭＳ Ｐゴシック", "MS PGothic","Osaka－等幅", sans-serif !important;
    font-feature-settings: "palt" 1,"kern" 0;
    letter-spacing: 0.1em;
}
input, button, select, textarea {
    outline: none;
}

button,
img,
li
{
    cursor: pointer;
    /*cursor: hand;*/
    /*cursor: -webkit-grab;*/
}
.spDisplay{
    display: none;
}
#homeBg {
    background: url("../img/home/bg.png");
    background-size: cover;
}

#homeBg img {
    height: 100%;
    float: left;
    margin-left: 10px;
}
.imgBtn:hover {
    opacity: 0.7;
}
.imgBtn.selected {
    opacity: 0.7;
}
.logo {
    margin-top: 0;
    margin-bottom: 0;
}
/* ---- alert ---- */
.modal-content {
    border-radius: 24px;
    margin-top: 50%;
    padding: 10px;
    background: rgba(255,255,255,0.9);
    border: solid 4px rgba(51,54,54,1.0);
}
@media screen and (min-width:415px) and (max-width:812px){
    .modal-content{
        margin-top: 20%;
    }
}

.bootstrap-dialog.type-primary .modal-header {
    display: none;
    background-color: #333636;
    width: 50%;
    border-radius: 50px;
    margin: -20px auto 0;
    padding: 5px;
    text-align: center;

}
.modal-body {
    padding: 30px 10px;
    text-align: center;
}
.modal-footer {
    padding: 5px;
    text-align: center;
    border: none;
}
.modal-footer .btn {
    padding: 5px 20px;
    border-color: #ccc;
}
.btn-primary{
    color: #fff;
    background-color: #424bff;
}

.common-closeImg {
    position: absolute;
    height: 25px;
    right: 0;
    top: 0;
    margin-right: 15px;
    margin-top: 8px;
}
.menu-close {
    position: absolute;
    height: 25px;
    right: 0;
    top: 0;
    margin-right: 15px;
    margin-top: 12px;
}

.imgContent {
    position: relative;
    text-align: center;
    height: 180px;
    border-radius: 20px;
}

.journal_list_top_word{
	color:#FFFF00; font-weight:bolder;
}
.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    scroll-snap-type: block;
}
/* .termsIframeBg ol:not(.dot){
	counter-reset: countTerm;
	list-style-type: none;
}
.termsIframeBg ol:not(.dot) li::before {
	position: absolute;
	left: 21px;
	counter-increment: countTerm;
	content: counters(countTerm,".") ".";
} */
@media screen and (min-width: 768px) {
    #homeBg {
        /* height: 488px; */
    }
    .row1 {
        height: 100px;
        margin-left: 84px;
        margin-top: 58px
    }
    .row2 {
        margin-top: 38px;
        margin-left: 12px;
        height: 100px
    }
    .row3 {
        margin-top: 39px;
        margin-left: 145px;
        height: 100px
    }
    .row2_2 {
        margin-left: 20px!important;
    }
    .row2_4 {
        margin-left: 20px!important;
    }
    .row3_3 {
        margin-left: 25px!important;
    }

    .imgContent {
        height: 180px;
    }

    /*20191022 bug fixed: 作品一览页面，作品名过长时「ジャンル一覧」「作品一覧」按钮显示错位*/
    .topBar{
        position: relative;
        height: auto !important;
    }

    .leftPart{
        max-width: 72%;
    }

    .rightPart{
        position: absolute;
        bottom: 8px;
        right: 16px;
    }
}

@media screen and (min-width: 992px) {
    .leftPart{
        max-width: 80%;
    }

    #homeBg {
        /* height: 630px; */
    }
    .row1 {
        height: 125px;
        margin-left: 140px;
        margin-top: 78px
    }
    .row2 {
        margin-top: 52px;
        margin-left: 28px;
        height: 125px
    }
    .row3 {
        margin-top: 56px;
        margin-left: 205px;
        height: 125px
    }
    .row2_2 {
        margin-left: 30px!important;
    }
    .row2_4 {
        margin-left: 30px!important;
    }
    .row3_3 {
        margin-left: 35px!important;
    }

    .imgContent {
        height: 200px;
    }
}
@media screen and (min-width: 1200px) {
    #homeBg {
        /* height: 763px; */
    }
    .row1 {
        height: 161px;
        margin-left: 145px;
        margin-top: 85px
    }
    .row2 {
        margin-top: 56px;
        margin-left: 28px;
        height: 161px
    }
    .row3 {
        margin-top: 56px;
        margin-left: 233px;
        height: 161px
    }
    .row2_2 {
        margin-left: 30px!important;
    }
    .row2_4 {
        margin-left: 23px!important;
    }
    .row3_3 {
        margin-left: 35px!important;
    }
    .imgContent {
        height: 220px;
    }
}
button.g-btn-sidebar {
    padding: 0;
}
.titleSpan {
    position: absolute;
    top: 5px;
    font-size: 16px;
    color: #fff;
    margin-left: 20px;
}
.g-btn-sidebar {
    width: 40px;
    height: 40px;
    border-width: 1px;
    border-color: #ffffff;
    border-radius: 5px;
    background-color: #424bff;
    margin-top: 35px;
    margin-right: 20px;
    float: right;
}
.g-btn-sidebar i {
    display: block;
    color: #FFFFFF;
    font-size: 2em;
}
.alertBackground {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1002 !important;
    background-color: transparent;
}
.alertContainer {
    position: relative;
    width: 450px;
    text-align: center;
    margin: 30px auto;
}
.alertContent {
    margin-top: 50%;
    position: relative;
    border: 2px solid #424bff;
    background-color: #fff;
    border-radius: 10px;
    overflow: hidden;
}

#closeDiv .alertContent {
    border: none;
    margin-top: 0;
    width: 100%;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
}
#closeDiv .image {
    display: flex;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 8px;
    background-color: #EEE;
    align-items: center;
    margin-left: auto;
    margin: 15px 15px 0 auto;
    cursor: pointer;
    border: none;
}
.blackBackground {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
    background-color: #000;
    opacity: 0.5;
}
#termsDiv {
    max-width: 800px;
    width: calc(100% - 30px);
    height: calc(100vh - 30px);
    max-height: 610px;
    padding: 40px 80px;
}
.alertHeaderTop {
    line-height: 1.3;
    font-size: 28px;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}
.termsIframeBg {
    position: relative;
    height: calc(100% - 130px);
    overflow: auto;
    -webkit-overflow-scrolling:touch;
    border-bottom: 1px solid #D5D5D5;
}
.termsIframeBg #contentDiv .topTitle {
    background: none;
    text-align: center;
    margin-bottom: 20px;
    font-size: 16px;
    color: #333;
}
#contentDiv {
    color: #333;
}
.footRight {
    text-align: right;
    padding-right: 10px;
}
.footRight > * {
	padding-right: 0;
}
#contentDiv ol,
#contentDiv ul,
#contentDiv dt,
#contentDiv dd,
#contentDiv h2,
#contentDiv h3 {
    color: #333;
}
#contentDiv h2 {
    font-size: 18px;
}
#contentDiv li,
#contentDiv p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 10px;
}
#contentDiv .dot {
    margin-top: 10px;
}
#topContent .topOL dt { 
    margin-top: 10px;
    margin-bottom: 10px;
    line-height: 1.6;
}
#topContent .topOL dd {
    line-height: 1.6;
}
#infoDiv {
    width: 450px;
    /*height: 305px;*/
}
#magazineInfoDiv {
    width: 450px;
    /*max-height: 305px;*/
    /*overflow-y: auto;*/
    color: #000;
}

#infoDetailDiv {
   display: flex;
   max-width: 1170px;
   width: calc(100% - 30px);
   height: 500px;
   background-color: #FFF;
   padding: 15px;
}
.infoDetailImgBg {
    width: 40%;
}

.infoDetailImgBg img {
    max-width: 100%;
    max-height: 100%;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
.contentDetail {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 60%;
    padding-left: 20px;
}
.detailContent {
	padding: 10px;
	width: 100%;
	text-align: left;
	line-height: 2;
	font-size: 18px;
	max-height: 236px;
    overflow-y: auto;
}

.popupMain {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 15px;
    left: 15px;
    margin: auto;
    border-radius: 10px;
    background-color: white;
    text-align: center;
    overflow: hidden;
}

.alertHeader {
    display: flex;
    width: 100%;
    flex-direction: column;
}
.alertHeader .closeIcon {
    text-align: right;
    margin-bottom: 30px;
    padding: 0;
}
.commonClose {
    width: 54px;
}
.borderedClose {
    background-color: #424bff;
    border-radius: 50%;
    border: 2px solid #424bff;
}
#infoDiv ul {
    list-style: none;
    padding: 0;
    width: 100%;
}
#infoDiv li {
    height: 44px;
    line-height: 44px;
    margin: 30px 50px;
    color: #fff;
    font-size: 16px;
    border-radius: 10px;
    overflow: hidden;
}
.infoTitle {
    font-size: 30px;
    color: #333;
    line-height: 1.3;
    text-align: left;
    font-weight: bold;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
#termsIF {
    position: relative;
    top: 0;
    padding: 5px 5px;
    height: 97%;
    width: 100%;
    margin: 0;
    border: none;
    overflow-y: scroll;
    z-index: 80;
    background-color: #ffffff;
}
.termsBtn {
    padding: 14px 84px;
    margin: 30px 0 0 0;
    background-color: #5228B2;
    color: #fff;
    font-size: 18px;
    border: none;
    border-radius: 5px;
    -webkit-appearance: none;
}
.readBtnBox {
    text-align: left;
    width: 100%;
}
.readBtn {
    padding: 15px 50px;
    background-color: #5228B2;
    color: #fff;
    font-size: 18px;
    border: none;
    border-radius: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
    -webkit-appearance: none;
}
.qrCodeDiv {
    float: right;
    margin-top: 10px;

}
.qrCodeDiv img {
    cursor: default;
    margin: 0;
    display: inline-block;
    vertical-align: text-bottom;
}
.navBlock {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-right: 15px;
    padding-bottom: 25px;
}
.customNav.notScroll {
	flex-wrap: wrap;
	margin: 0 -3px;
}
.customNav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0;
    width: 100%;
    font-size: 13px;
    font-weight: bold;
    color: #333;
}
.customNav li {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background-color: #F0F2F4;
    display: inline-flex;
    margin: 3px 3px 3px 3px;
    border-radius: 4px;
    padding: 6px 10px;
}
.customNav li.selected{
    background-color: #FBF1DC;
    color: #452886;
}
.customNav.noActive li.selected {
    background-color: #F0F2F4;
    color: #333;
}
.customNav .iconNew {
    border-radius: 4px;
    background-color: #CF452C;
    color: #FFF;
    font-size: 10px;
    line-height: 1;
    display: flex;
    align-items: center;
    font-family: sans-serif;
    width: 40px;
    justify-content: center;
    height: 21px;
    font-weight: bold;
}

.boxInterview {
    display: flex;
    align-items: center;
    background-color: #FFF;
    margin-bottom: 30px;
}
.boxInterview .title {
    width: 30%;
    font-weight: bold;
    font-size: 30px;
}
.boxInterview .info {
    width: 70%;
    font-size: 15px;
    line-height: 2;
    padding-left: 20px;
}
.topBar {
    background-color: #5228B2;
    color: #FFF;
}
.topBar .inner {
    display: flex;
    justify-content: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 15px;
}
.topBar .title {
    display: inline-block;
    line-height: 45px;
    font-size: 18px;
    color: #fff;
}
.btn-wrapper {
    display: inline-block;
    float: right;
    padding: 10px 5px;
    height: 45px;
}
.btn-wrapper img {
    height: 25px;
}
.leftPart , .rightPart, .rightPart2 {
    display: inline-block;
}
.rightPart {
    float: right;
}
.rightPart2 {
    float: right;
}
.rankImg {
    margin-right: 7px;
    cursor: default;
}
.roundBtn {
    -webkit-appearance: none;
    border: 1px #fff solid;
    padding: 2px 5px;
    color: #fff;
    background-color: #424bff;
    border-radius: 5px;
}
.orangeBtn {
    -webkit-appearance: none;
    border: none;
    padding: 15px 75px;
    color: #fff;
    background-color: #5b39a9;
    border-radius: 8px;
    margin: 0 20px 50px 20px;
    font-size: 18px;
    transition: 0.3s all;
}
.btn-primary:hover,
.orangeBtn:hover,
.readBtn:hover,
.termsBtn:hover,
.roundBtn:hover {
    background-color: #7154b3;
}
.bookCell {
    margin-bottom: 40px;
}
.bookCell .cellContent {
    cursor: pointer;
}
.bookCell img {
    position: relative;
    max-height: 100%;
    display: block;
    margin: 0 auto;
    box-shadow: 0px 7px 15px -9px rgba(0, 0, 0, 0.5);
    border-radius: 5px;
}

.label {
    display: block;
    white-space: normal;
    width: 100%;
    color: #000;
    word-break: break-all;
    text-align: left;
    line-height: 1.3;
    font-weight: normal;
    margin-top: 10px;
    font-size: 13px;
}

.bookName {
    display: block;
    min-height: 30px;
    white-space: normal;
    width: 100%;
    font-size: 14px;
    text-align: left;
    color: #3F1E8B;
    word-break: break-all;
    line-height: 15px;
    overflow: hidden;
    margin-top: 20px;
    font-weight: 700;
}
.label:empty {
    display: block;
}
/*阅读完了*/
#closeDiv {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 600px;
    height: 90vh;
}

#closeDiv ul {
    display: block;
    list-style: none;
    padding: 0;
}

#closeDiv li {
    height: 54px;
    line-height: 44px;
    margin: 15px auto;
    color: #fff;
    font-size: 18px;
    border-radius: 8px;
    max-width: 240px;
    width: 100%;
    overflow: hidden;
    background-color: #5228B2;
}

#closeDiv li.bgDark {
    background-color: #333;
}

#closeDiv li a {
    display: flex;
    color: #FFF;
    align-items: center;
    justify-content: center;
    height: 100%;
    background-color: transparent;
    cursor: pointer;
}

#closeDiv li a:hover {
    background-color: transparent !important;
    opacity: 0.7;
}

.messageLabel {
    color: #000;
    height: 50px;
    line-height: 50px;
    font-size: 18px;
    font-weight: bold;
    padding: 0 40px;
    overflow-y: auto;
}
.messageLabel span {
    color: red;
}
.slide-menu {
    position: fixed;
    right: 0;
    top: 0;
    width: 250px;
    height: 100%;
    padding-top: 20px;
    transform: translateX(300px);
    -webkit-transform: translateX(300px);
    -moz-transform: translateX(300px);
    -ms-transform: translateX(300px);
    -o-transform: translateX(300px);

    background: url(../img/home/header.png) repeat border-box;

}
.slide-menu ul {
    list-style: none;
    width: 100%;
}
.slide-menu li {
    margin: 20px;
    color: #fff;
    font-size: 18px;
    border-bottom: 1px solid #fff;
}
.slide-menu.show {
    transform: translateX(2px);
    -webkit-transform: translateX(2px);
    -moz-transform: translateX(2px);
    -ms-transform: translateX(2px);
    -o-transform: translateX(2px);
}

.slide-menu,
.slide-menu-main {
    transition: all 0.5s;
    background-color: #FFF;
    overflow: hidden;
}

.slide-menu-main.menu-on{
    transform: translateX(-250px);
    -webkit-transform: translateX(-250px);
    -moz-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    -o-transform: translateX(-250px);
}
.customInput {
    width:100%;
    height:40px;
    padding:0 5%;
    border:2px solid #424bff;
    border-radius:5px;
    box-shadow:inset 1px 1px 7px rgba(0, 0, 0, 0.2);
    /*background-color:rgba(0, 0, 0, 0);*/
    color:#535353;
    font-size:15px;
    font-weight:bold;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    background: url('../img/downline_db.png')  no-repeat scroll right center transparent;
    background-size: 20px;
    background-origin: content-box;
}
.topText {
    position: absolute;
    padding: 0 10px;
    font-weight: bold;
    margin-top: 10px;
    font-size: 16px;
}
.img_header,.img_bottom1,.img_bottom2,.img_bottom3,.img_bottom4{
    width: 176px;
    /* height: 60px; */
}
.img_header2{ 
	text-align:center;
	margin:0 auto;
}
.img_header2_top{
	width:210px;
	height:63px;
}
.scrollBox {
    overflow-x: auto;
}
.topBar {
    display: table;
    width: 100%;
}
.topBar .inner > * {
	display: flex;
	align-items: center;
    white-space: nowrap;
    font-size: 16px;
    margin: 0 15px;
}
.topBar .inner > * span {
	display: inline-block;
	margin-top: 5px;
}

#boxListType .customNav li {
	padding-left: 5px;
	padding-right: 5px;
	text-align: center;
	justify-content: center;
	align-items: center;
	width: calc((100% / 2) - 6px);
}
.customNav.notScroll li:first-child {
	margin-left: 3px;
}
.customNav.notScroll li {
	white-space: normal;
}
@media screen and (max-width: 991px){
    .g-btn-sidebar{margin-top: 22px;}
    .img_header2_top {
        width: 154px;
        height: 53px;
    }
    .img_header,.img_bottom1,.img_bottom2,.img_bottom3,.img_bottom4 {
        width: 110px;
        /* height: 37px; */
    }
    .infoTitle {
        font-size: 18px;
    }
    .detailContent {
        font-size: 12px;
    }
    .alertHeader .closeIcon { 
        margin-bottom: 20px;
    }
    .commonClose {
        width: 44px;
    }
    .readBtn {
        font-size: 15px;
        padding: 10px 30px;
    }
    #termsDiv {
        padding: 20px 20px 20px 0;
    }
    .alertHeaderTop {
        margin-bottom: 10px;
    }
    .termsIframeBg .topTitle {
        margin-bottom: 10px;
    }
}
@media screen and (max-width: 768px){
    .alertHeaderTop {
        font-size: 20px;
    }
    .termsIframeBg #contentDiv .topTitle {
        font-size: 13px;
    }
    .termsBtn {
        padding: 10px 54px;
    }
    #topContent .topOL {
        padding-right: 0;
		padding-left: 40px;
	}
	.termsIframeBg ol:not(.dot) li::before {
		left: 2px;
	}
    #contentDiv h2 {
        font-size: 14px;
        padding-left: 20px;
    }
    #contentDiv ol:not(.dot), 
    #contentDiv ul:not(.dot) {
        padding-left: 40px;
    }
    #contentDiv dl {
        padding: 0;
	}
	#contentDiv .dot {
		padding-left: 20px;
	}
    .bookName {
        text-align:center;
        margin-top: 10px;
        font-size: 12px;
    }
    .img_header2 {
        text-align:left;
    }
    .journal_list_top_word{
        display:block;
    }
    #homeBg {
        background: url("../img/home/IOS/BG@3x.png");
        background-size: cover;
        padding-bottom: 20px;
    }
    #homeBg img {
        margin: 0;
    }
    .topText {
        margin-top: 2vw;
        font-size: 13px;
    }
    .g-btn-sidebar {
        margin-top: 25px;
    }
    .alertContent {
        margin-top: 40%;
    }
    #termsDiv {
        width: auto;
        height: 80%;
    }
    .termsIframeBg {
        height: calc(100% - 110px);
    }
    #infoDiv {
        width: auto;
        margin: auto 10px;
    }
    #infoDiv li {
        margin: 30px 10px;
        font-size: 14px;
    }
    #magazineInfoDiv {
        /*width: 300px;*/
        width: auto;
        margin: auto 10px;
    }
    .alertBackground {
        height: 100%;
        width: 100%;
    }
    #infoDetailDiv {
        display: block;
        width: calc(100% - 30px);
        height: auto;
        top: 15px;
        bottom: 15px;
        overflow: auto;
        padding: 0;
    }
    .infoDetailImgBg {
        height: auto;
        width: 100%;
        max-width: 400px;
        margin: 60px auto 15px auto;
    }
    .infoDetailImgBg img {
        top: 0;
        transform: translateY(0);
    }
    .alertHeader {
        order: 2;
    }
    .alertHeader .closeIcon {
        position: absolute;
        top: 0;
        right: 0;
    }
    .contentDetail {
        width: 100%;
        padding-left: 0;
    }
    .infoTitle {
        padding-left: 0;
        padding-right: 0;
        white-space: inherit;
    }
    .detailContent {
        order: 3;
        padding-left: 0;
		padding-right: 0;
		max-height: auto;
		overflow-y: unset;
    }
    .readBtnBox {
        padding: 0;
        margin: 0 0 20px 0;
        order: 1;
        text-align: center;
    }
    #closeDiv {
        width: 300px;
    }
    .bookCell {
        padding: 0 5px;
        margin-bottom: 20px;
    }
    .btn-wrapper {
        float: none;
    }
    .rightPart {
        float: none;
        margin: 5px 0;
    }
    .popupMain li {
        margin: 10px 0;
        line-height: 2;
    }
    #contentDiv li, #contentDiv p {
        font-size: 13px;
        line-height: 1.6;
	}
	#contentDiv p {
		padding-left: 20px;
	}
    .messageLabel {
        font-size: 16px;
        padding: 0 30px 0 5px;
        text-align: center;
    }
    .orangeBtn {
        padding: 14px 50px 14px 50px;
        border-radius: 5px;
        margin: 30px 0 40px 0;
        font-size: 15px;
    }
    .imgContent {
        box-shadow: none;
        padding-bottom: 5px;
    }
    .bookCell img {
        width: auto;
        box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.5);
    }

    .label {
        margin-top: 5px;
        font-size: 12px;
        padding: .2em .2em .3em;
    }
}

@media screen and (max-width: 500px){
    .img_header3_top{
        width: 68%;
    }
}
@media screen and (max-width: 320px){
.img_header2 { text-align:left; padding-left:2px;
}

.titleSpan{ font-size:14px;}
    .imgContent {
        height: 140px;
    }
}
.m_row1,
.m_row2,
.m_row3,
.m_row4
{
    height: 30vw;
    padding-left: 10px;
}
.m_row1 {
    margin-top: 8vw;
}
.m_row2 {
    margin-top: 2vw;
}
.m_row3 {
    margin-top: 2vw;
}
.m_row4 {
    margin-top: 2vw;
}

.no-padding {
    padding: 0;
}
/*.pronunciationAdd {*/
    /*border-right: solid 1px #fff;*/
/*}*/

.customNav li:hover,
.customNav.noActive li.selected:hover {
    color: #452886;
    cursor:pointer;
    background-color: #FBF1DC;
}
#frameBg {
    position: relative;
    width: 100%;
    height: 80%;
    background-color: #FFF;
}
#frameBg iframe {
    width: 100%;
    height: 100%;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    border-top: 1px solid #D5D5D5;
	padding: 20px;
}
.custom-fullScreen {
    width: 100%;
    height: 100%;
}
.loader {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.1);
}
.spinner {
    min-width: 24px;
    min-height: 24px;
}
.spinner.cusSpinner {
    position: relative;
    height: 60px;
}
.spinner:not(:required):before {
    content: '';
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-top: 2px solid #333;
    border-right: 2px solid transparent;
    animation: page-loader .6s linear infinite;
    -webkit-animation: page-loader .6s linear infinite;
}
.spinner::before {
    content: "Loading…";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    margin-left: -20px;
}

@keyframes page-loader {
    to {transform: rotate(360deg);}
}

@-webkit-keyframes page-loader {
    to {-webkit-transform: rotate(360deg);}
}
.btn-primary:active,
.btn-primary:active:hover,
.btn-primary:focus
{
    background-color: #1720cc;
}
#infoDiv li a
{
    display: block;
    color: #fff;
    background-color: #424bff;
}
#closeDiv li a:hover,
#closeDiv li a:focus,
#closeDiv li a:active,
#infoDiv li a:hover,
#infoDiv li a:focus,
#infoDiv li a:active
{
    text-decoration: none;
    background-color:#1720cc;
    color: #fff;
    outline: none;

}
.linkTopic .image {
    height: 100%;
}
@media screen and (max-width: 768px){

    .img_header2 .img_header3_top{
        width: 180px;
    }
}
@media screen and (max-width: 500px){
    .img_header2 .img_header3_top {
        width: 120px;
    }
}
@media screen and (max-width: 320px){
        .img_header2 .img_header3_top {
        width: 100px;
    }
}

/* 2017-6-6 wjy add 解决bug： 横屏的时候弹出框显示不全*/
@media screen and (max-width: 768px) and  (orientation : landscape) {
    .alertContent {
        margin-top: 0;
    }
    .alertContainer {
        margin: 0 auto;
    }
    #termsDiv {
        height: 300px;
    }
    .termsIframeBg {
        height: 65%;
    }
	    #closeDiv li {
        height: 35px;
        line-height: 35px;
    }
}
.noNewBadge{
    height: 0;
    width: 100%;
    opacity:0;
}
.newBadge {
	background:#CF452C;
	color:#FFF;
	font-size:14px;
	font-weight:bolder;
	border-radius: 3px;
	text-align:center;
	margin:0 auto 10px auto;
    height:100%;
    display:block;
    width:100%;
    opacity:0;
}
.newBadge.show {
    opacity:1;
    display: flex !important;
    justify-content: center;
    align-items: center;
}
.listStory .rankingIcon {
    display: none;
    margin-bottom: 5px;
    position: absolute;
    top: -43px;
    width: 100%;
    text-align: center;
}
.listStory .rankingIcon img {
    box-shadow: none;
    width: auto;
    height: auto;
    object-fit: inherit;
}
.showRankingIcon {
    padding-top: 50px;
}
.listStory.showRankingIcon .rankingIcon {
    display: block;
}



/* 定义keyframe动画，命名为blink */

@keyframes blink{
  0%{opacity: 1;}
  50%{opacity: 1;}
  50.01%{opacity: 0;} /* 注意这里定义50.01%立刻透明度为０，可以设置闪烁效果 */
  100%{opacity: 0;} 
}

/* 添加兼容性前缀 */

@-webkit-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-moz-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-ms-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

@-o-keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 1; }
    50.01% { opacity: 0; }
    100% { opacity: 0; }
}

/* 定义blink类*/
.blink{
    animation: blink .75s linear infinite;  
    /* 其它浏览器兼容性前缀 */
    -webkit-animation: blink .75s linear infinite;
    -moz-animation: blink .75s linear infinite;
    -ms-animation: blink .75s linear infinite;
    -o-animation: blink .75s linear infinite;
}
.suggestBlock {
    overflow:hidden;
    background: #FFF url(../img/bg_suggest.svg) repeat-x 0 0/ auto 360px;
    display: flex;
    justify-content: center;
    flex-direction:column;
    align-items: center;
    padding: 20px 0 50px 0;
}
.suggestTitle {
    font-size: 30px;
    font-weight: bold;
    color: #FBD02F;
    text-align: center;
    margin-bottom: 20px;
}
.suggestList {
	display: flex;
    width: 100%;
    height: 100%;
    max-width: 1170px;
}
.suggestList.center {
	justify-content: center;
}
.suggestList li {
    /* min-width: 360px; */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: calc((100%/3) - 30px);
    margin: 0 15px 15px 15px;
    padding: 15px 15px 18px;
    background-color: #FFF;
    box-shadow:0px 4px 20px -5px rgba(0,0,0,0.20);
    z-index: 999;
}
.suggestList li:hover {
    cursor: pointer;
}
.suggestList .image {
    margin-bottom: 15px;
    height: 100%;
    /* min-height: 274px; */
    padding: 0;
}
.suggestList .image img {
    width: 100%;
}
.suggestList .detailBox {
    display: flex;
    justify-content: flex-start;
}
.suggestList .withHover {
    display:block;
    display:-webkit-box;
    width: calc(100% - 85px);
    padding-right: 20px;
    font-size: 18px;
    color: #333;
    text-decoration: none;
    font-weight: bold;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-overflow:ellipsis;
    height:2.6em;
    line-height:1.3;
}
.suggestList .detailsBtn {
	width: 95px;
	height: 50px;
}
.suggestList .detailsBtn img {
    width: 100%;
}
.toggleBtn {
    flex-direction: column;
    display: none;
    align-items: center;
    justify-content: end;
    height: 180px;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    border-bottom: 8px solid #401F8C;
}
.styleFooter{
    height: 171px;
}
.toggleBtn .bannersBlock {
    display: block;
}
.toggleBtn.visible {
    display: flex;
}
.toggleBtn .txt:hover {
    background-color: #5D2DCC;
}
.toggleBtn .txt {
    background: #401F8C;
    position: relative;
    height: 38px;
    width: 140px;
    margin-bottom: 0;
    padding: 10px 4px 2px 37px;
}
.toggleBtn .txt::after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 18px;
    right: 40px;
    border-width: 0 2px 2px 0;
    border-color: #FFF;
    border-style: solid;
    transform: rotate(-135deg);
}
.bottomImg {
    padding: 10px 0 0 0;
}
.bottomImg .box {
    max-width: 1022px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    text-align: center;
}
.bannerFooter {
    margin: 0px -4px;
}
.bannerFooter .item {
    width: calc(20% - 8px);
    padding: 0;
    margin: 0 4px 6px 4px;
    margin: 0 0px 6px 0px\0;
    display: inline-block;
    box-shadow: 0px 5px 8px -5px rgba(0,0,0,0.30);
    transition: 0.3s opacity;
}
.bannerFooter .item:hover {
    opacity:0.7;
}
.bannerFooter .item img {
    display: block;
    width: 100%;
}
.hasFixedFooter .mainSection {
    padding-bottom: 200px;
}
/* footer */

/*  / footer*/
#footer {
    background: #F8F8F8;  /* fallback for old browsers */
}
#footer.fixed {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 998;
    transform: translateY(calc(100% - 171px));
    transition: transform .3s;
}

#footer.animShow {
    transform: translateY(0);
}
.animShow .toggleBtn .txt::after {
    transform: rotate(45deg) translateY(-4px);
}
#footer .footerInner {
    max-width: 1150px;
    margin: 0 auto;
    padding: 0 15px 0;
}
#footer .flist {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row wrap;
    margin: 0 -15px;
    padding: 0;
}
#footer .flist li {
    padding: 0 15px;
    font-size: 14px;
    list-style-type: none;
    color: #333;
    transition: 0.3s opacity;
}
#footer .flist li:hover {
    opacity: 0.7;
    cursor: pointer;
}
#footer .flist li img {
    width: 60px;
    height: auto;
    margin-top: 0;
}
#footer .powered {
    text-align: center;
    font-size: 12px;
    padding-bottom: 5px;
}
#footer .imgFooter {
    display: none;
}
/* footer banner */
.bottomBanner {
    margin: 30px 0 50px;
    text-align: center;
}
.bottomBanner .boxImg {
    display: flex;
    justify-content: center;
}
.bottomBanner .boxImg .imgBanner {
    margin-left: 30px;
}
.bottomBanner .boxImg .imgBanner .text_note {
    font-size: 12px;
    color: #000;
    text-align: right;
    padding: 0;
    margin: 0;
}
/* / footer banner */
#direction-slide {
    align-items: center;
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 50%;
    display: none;
    font-size: 0;
    height: 130px;
    justify-content: center;
    pointer-events: none;
    opacity: 0;
    z-index: 9999;
    position: fixed;
    transition: left 0.5s, right 0.5s;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 130px;
}
#direction-slide img {
	transition: width 0.5s;
	width: 50%;
}
.keyvWrap{
    width: 100%;
}
@media screen and (max-width: 1199px) {
    .hasFixedFooter .bannerFooter {
        display: flex;
        flex-direction: column;
        height: 220px;
        flex-wrap: wrap;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }
    .bannerFooter .item {
        margin-bottom: 10px;
    }
    #footer.fixed .imgFooter,
    #footer.fixed .footerInner {
        display: none;
    }
    #footer.fixed .bottomImg {
        margin-bottom: 0;
    }
}
@media screen and (max-width: 768px) {
    .pcDisplay{
        display: none !important;
    }
    .hasFixedFooter .bannerFooter {
        height: 160px;
    }
    #footer.fixed {
        transform: translateY(calc(100% - 44px));
    }
    #footer.animShow {
        transform: translateY(calc(100% - 185px));
    }
    
}
@media screen and (max-width: 767px){
    .spDisplay{
        display: block;
    }
    .hasFixedFooter .mainSection {
        padding-bottom: 50px;
    }
    .hasFixedFooter .bannerFooter {
        height: 130px;
    }
    .hasFixedFooter .bannerFooter .item {
        margin-right: 0;
        margin-bottom: 4px;
    }
}
@media screen and (max-width: 1024px) {
    .col-md-4{
    padding-left: 9px;
    padding-right: 12px;
    }
    #direction-slide {
		display: inline-flex;
	}
	#direction-slide.init {
        opacity: 1;
        left: 50% !important;
        top: 50% !important;
	}

	#direction-slide.moveLeft img {
		animation: moveLeft 1s infinite;
    }
    @keyframes moveLeft {
		from {
			opacity: 0;
			margin-left: -25%;
		}
		to {
			opacity: 1;
			margin-left: 25%;
		}
	}

	#direction-slide.moveRight img {
		animation: moveRight 1s infinite;
	}
	
	@keyframes moveRight {
		from {
			opacity: 0;
			margin-left: 25%;
		}
		to {
			opacity: 1;
			margin-left: -25%;
		}
	}
}
@media screen and (max-width: 920px){
    .suggestList {
        overflow: auto;
        padding-right: 20px;
        -webkit-overflow-scrolling: touch;
	} 
	.suggestList li {
		position: relative;
		min-width: 360px;
	}
    .suggestList .withHover {
        width: calc(100% - 75px);
        font-size: 14px;
    }
    .suggestList .detailsBtn {
		width: 75px;
		height: 40px;
	}
	.suggestList li:last-child:after {
		content: "";
		display: block;
		position: absolute;
		right: -1.5rem;
		width: 1.5rem;
		height: 1px;
	}
}
@media screen and (max-width: 768px){
    .suggestBlock {
        align-items: flex-start;
        background-size: auto 300px;
        padding-bottom: 30px;
    }
    .suggestTitle {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .slide-menu {
        background-color: #F8F8F8;
    }
    #footer .footerInner {
        padding: 0 15px;
        background-color: #FFF;
    }
    #footer .imgFooter {
        display: block;
        width: 100%;
        padding: 0;
    }
    #footer .imgFooter img {
        width: 100%;
    }
    #footer .flist {
        flex-direction: row;
        justify-content: flex-start;
        align-items: flex-start;
        margin: 0;
        padding-top: 30px;
        padding-bottom: 15px;
    }
    #footer .flist li {
        width: 50%;
        margin-bottom: 20px;
        padding: 0 10px 0 12%;
        font-size: 12px;
    }
    #footer .flist li img {
        width: 33px;
    }
    #footer .powered {
        background-color: #FFF;
        text-align: center;
        padding: 0 0 25px 0;
        font-size: 10px;
    }
   
    .toggleBtn .txt:hover{
        background-color: #401F8C;
    }
    .toggleBtn{
        height: 44px;
        background-color: #401F8C;
    }
    .bottomImg {
        margin-bottom: 25px;
        padding: 15px 0 3px;
        background-color:#FFF;
        background-image: linear-gradient(#F8F8F8, #FFF);
    }
}

@media screen and (max-width: 420px){
    #footer .flist li {
        padding: 0 10px 0 8%;
    }
}

@media screen and (max-width: 374px){
    #footer .flist li {
        padding: 0;
    }
}

/* orther Style */
.logoBox {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 30px 15px;
    margin-bottom: 0;
    background-color: #Fff;
}
.logoBox .toggleBlock .txtToggle {
     display: inline-block;
     font-size: 14px;
     font-weight: bold;
     color: #333333;;
     vertical-align: super;
     margin: 0;
 }
 .logoBox .toggleBlock .switch {
     position: relative;
     display: inline-block;
     width: 80px;
     height: 42px;
 }
 .logoBox .toggleBlock .switch input {
     opacity: 0;
   width: 0;
   height: 0;
 }
 .logoBox .toggleBlock .slider {
     position: absolute;
     cursor: pointer;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background-color: #E2DEED;
     transition: .4s;
 }
 .logoBox .toggleBlock .slider::before {
     position: absolute;
   content: "OFF";
   font-size: 12px;
   text-align: center;
   color: white;
   font-weight: bold;
   height: 36px;
   width: 36px;
   left: 4px;
   bottom: 3px;
   background-color: #3F2487;
   transition: .4s;
   line-height: 36px;
 }
 
 .logoBox .toggleBlock input:checked + .slider {
    
     background-color: #FAD4E0;
 }
 .logoBox .toggleBlock input:focus + .slider {
     box-shadow: 0 0 1px #2196F3;
 }
 .logoBox .toggleBlock input:checked + .slider::before {
     content: "ON";
     background-color: #E01352;
     transform: translateX(36px);
 }
.logoBox .slider.round {
     border-radius: 34px;
   }
   
.logoBox .slider.round:before {
     border-radius: 50%;
 }
.mainSection {
    border-top: 1px solid #D5D5D5;
    background: #fff url(../img/bg_main_section.png) no-repeat 0 0/ 100%;
}
.mainGroup.noBg {
    background: none;
}
.mainGroup .cusContainer {
    width: 100%;
    max-width: 1515px;
 }
.listStory {
    display: flex;
    flex-wrap: wrap;
    margin-left: -5px;
    margin-right: -5px;
    overflow: hidden;
}
#videoads {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 998;
    padding: 20px;
    transition: transform .3s ease-in-out;
}
#videoads.videoads-Detail {
    z-index: 999;
}
#videoads .videoads-link {
    display: block;
    height: 100%;
}
#videoads .videoFrame {
    margin: 0px auto;
    visibility: visible;
    position: relative;
    width: 400px;
    height: 225px;
    overflow: hidden;
    display: inline-block;
    vertical-align: top;
}
#videoads .videoFrame video {
    width: 100%;
    height: auto;
    object-fit: contain;
    margin: 0px auto;
    visibility: visible;
}
#videoads .videoFrame-controls {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    height: 24px;
    width: 100%;
    padding: 0px 3px;
}
#videoads  .videoads-volume-button img,
#videoads  .videoads-close-button img {
    cursor: pointer;
    width: 24px;
    height: 24px;
    opacity: 0.7;
}
#videoads .videoFrame .videoads-volume-button,
#videoads .videoFrame .videoads-close-button {
    padding: 5px;
}
#videoads .videoFrame .videoads-icon img {
    margin: 0px auto;
    visibility: visible;
    cursor: pointer;
    position: absolute;
    z-index: 80;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .listDetail .col-xs-4,
    .listStory .col-xs-4 {
        width: 32.9%;
    }
    #videoads .videoFrame {
        width: 200px;
        height: 112px;
    }
    #videoads,
    #videoads.videoads-Detail {
        padding: 0;
    }
    #videoads .videoFrame-controls {
        margin-bottom: 5px;
    }
    #videoads.videoads-List {
        bottom: 0;
    }
}
@media screen and (min-width: 768px) {
    .listDetail .col-sm-3,
    .listStory .col-sm-3 {
        width: 24.9%;
    }
    #videoads {
        padding: 10px;
    }
}
@media screen and (min-width: 992px) {
    .listDetail .col-md-2,
    .listStory .col-md-2{
        width: 16.6%;
    }
}
@media screen and (min-width: 1200px) {
    .listDetail .col-lg-2 {
        width: 19.6%;
    }
    .listStory .col-lg-2 {
        width: 16.6%;
    }
    .mainSection.mainGroup.container {
        width: 1275px;
    }
}
@media screen and (min-width: 1499px) {
    .listDetail .col-lg-2 {
        width: 16.6%;
    }
}
@media screen and (max-width: 1400px) and (min-width: 1500px) {
    .listDetail .col-lg-2 {
        width: 16.6%;
    }
}
.mainSection  .blockBanners {
    display: flex;
    padding-top: 55px;
}
.mainSection  .blockBanners .box {
    text-align: right;
}
.mainSection  .blockBanners .box span {
    display: inline-block;
    margin-bottom: 20px;
}
.mainSection  .blockBanners .box .text_note {
    font-size: 12px;
    color: #000;
    text-align:right;
    padding: 0;
    margin: 0;
    margin-bottom: 30px;
}
.listDetail {
    margin-left: -5px;
    margin-right: -5px;
    padding-top: 25px;
}
.listStory.spaceTop {
    margin-top: 20px;
}
.listStory .bookCell {
    position: relative;
}
.listStory .bookCell .cellContent {
    position: relative;
    z-index: 1;
}
.listStory .bookCell.setBg:before {
    position: absolute;
    top: -20px;
    left: 0;
    z-index: 0;
    width: 100vw;
    height: 100%;
    margin-left: calc((100vw - 1150px) / -2);
    background-image: linear-gradient( to bottom, #f6f6f6, #FFF) ;
    content: '';
}
/* btnBlockPop */
.btnBlockPop {
    text-align: center;
    padding: 25px 10px 15px;
    z-index: 995 !important ;
}
.scrollToFixed.scroll-to-fixed-fixed {
    border-bottom: 1px solid #D5D5D5;
    padding-top: 10px;
    width: 100% !important;
}
.btnPop {
    /* width: 100px; */
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 6px;
    padding: 12px 12px 11px 12px;
    border-radius: 30px;
    background-color: #fff;
    font-size: 16px;
    line-height: 1.3;
    color: #999;
    box-shadow: 0 3px 8px rgba(0,0,0,0.1);
    transition: 0.3s;
}
.btnPop.active {
    color:#3F1E8B;
    font-weight: bold;

}
.btnPop:hover {
    cursor:pointer;
    background-color: #3F1E8B;
    color: #FFF;
}
.btnLoadMore {
    cursor:pointer;
    background-color: #3F1E8B;
    color: #FFF;
    padding: 12px 24px 11px 24px;
    font-weight: bold;
    transition: opacity .3s;
}
.btnLoadMore:hover {
    opacity: .8;
}
.searchText {
    text-align: center;
}
.searchText.custom01 {
    border-bottom: 1px solid #D5D5D5;
    margin-bottom: 30px;
    padding-bottom: 10px;
}
.searchText.custom01 span {
    opacity: 1;
}
#articlePage .searchText.custom01.scroll-to-fixed-fixed {
    margin-top: 0;
    background-color: #FFF;
    padding-top: 5px;
    padding-bottom: 5px;
}
.cusContainer{
    width: 1265px;
}
.mt10 {
    margin-top: 10px !important;
}
.hide {
    display: block !important;
    opacity: 0 !important;
    pointer-events: none;
}
#journalPage, 
#journalPage2 {
    background-color: #FFF;
}
.searchText span,
.searchText span {
    display: inline-block;
    position: relative;
    padding: 10px 15px 10px 15px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    cursor: pointer;
}
.searchText span em,
.searchText span img {
    transition: 0.3s opacity;
}
.searchText span em {
    font-style: normal;
}
.searchText span.active em {
    color: #401F8C;
}
.searchText span em,
.searchText span img,
.searchText span::before,
.searchText .text02::after {
    opacity: 0.4; 
}
.searchText span.active em,
.searchText span.active img,
.searchText .text02::before,
.searchText span.active::before,
.searchText .text02.active::after {
    opacity: 1; 
}

.searchText span {
    position: relative;
}

.searchText span img {
    position: relative;
    display: inline-block;
    width: 18px;
    top: -1px;
    margin-right:10px;
}

.searchText span::before{
    position: absolute;
    left: 0;
    width: 1px;
    height: calc(100% - 20px);
    background-color: #333;
    content: '';
}

.searchText .text02::after{
    position: absolute;
    right: 0;
    width: 1px;
    height: calc(100% - 20px);
    background-color: #333;
    content: '';
}

.specialBlock {
    padding-right: 68px;
    padding-left: 68px;
    justify-content: center;
    display: flex;
    background-color: #FFF;
    padding-bottom: 50px;
    padding-top: 60px;
}

.specialTitle {
    display: flex;
    flex-direction: column;
    margin-left: 12px;
    padding-left: 0;
}

.specialTitle .ttl {
    margin-bottom: 10px;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3;
}

.specialList {
    flex-wrap: wrap;
    display: inline-flex;
    max-width: 1500px;
}

.specialList li {
    list-style-type: none;
    width: calc((100% / 2) - 24px);
    margin: 12px 12px;
    box-shadow: 0px 5px 8px -5px rgba(0,0,0,0.30);
}

.specialList li img {
    display: block;
    width: 100%;
    border-radius: 12px;
    
}
.specialBanner {
    display: flex;
    flex-direction: column;
    margin-left: 80px;
    margin-right: 12px;
    align-items: center;
}
.specialBanner .banners_img {
    margin-bottom: 20px;
}
.specialBanner .text_note {
    font-size: 12px;
    color: #000;
    text-align:right;
    padding: 0;
    margin: 0;
}
.categoryBlock {
    padding-top: 30px;
    background: #FFFFFF;  /* fallback for old browsers */
    background: -webkit-linear-gradient(to bottom, #F8F8F8, #FFFFFF);  /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to bottom, #F8F8F8, #FFFFFF); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */

}
.categoryTitle {
    margin-left: 80px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    margin-right: 80px;
}
.categoryTitle a {
    cursor: pointer;
    color: #3F1E8B;
    font-weight: 500;
    transition: color 0.3s;
}
.categoryTitle a:hover {
    text-decoration: unset;
    color: #333;
}
.categoryTitle a img {
    margin-top: -3px;
    margin-right: 5px;
}
.categoryTitle .ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}
.sliderCategoryBox {
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding-bottom: 20px;
}
.sliderCategory {
    width: 90%;
}
.sliderCategory .bannerTxt {
    height: 80px;
    max-width: 180px;
    margin: auto;
}
.sliderCategory .bookMagazine {
    max-width: 180px;
    margin: 20px auto 0;
    min-height: 50px;
}
.sliderCategory p.txtDescription {
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}
.sliderCategory p.image {
    max-width: 200px;
    margin: 0 auto 10px auto;
    display: flex;
    justify-content: center;
}
.sliderCategory p.image img {
    border-radius: 5px;
    cursor: pointer;
    height: 220px;
    box-shadow: 0px 7px 15px -9px rgb(0 0 0 / 50%);
}
.sliderCategory .rankingIcon {
    max-width: 180px;
    margin: 0 auto 10px auto;
    display: flex;
    justify-content: center;
}
.sliderCategory .newBadge {
    max-width: 156px;
}
.boxDiscription {
    background-color: #FFF;
}

/* sliderTopicBlock */
.sliderTopicBlock {
    background-color: #FFF;
    margin-bottom: 60px;
}

.titleTopicBlock {
    font-size: 30px;
	line-height: 1.3;
    font-weight: bold;
    padding: 0 80px;
}

.sliderTopic {
    width: 90%;
}

.sliderTopic .swiper-slide {
	width: 250px;
}

.sliderTopicWrap {
    position: relative;
    width: 90%;
    margin: 0 auto;
}

.sliderTopicWrap .swiper-button-prev,
.sliderTopicWrap .swiper-button-next {
    z-index: 997;
    background-color: #fff;
    top: 50% !important;
}
@media screen and (max-width: 1190px) {
    .sliderTopicBlock {
        padding-top: 100px;
    }

    .titleTopicBlock {
        padding: 0 68px;
    }
}
@media screen and (max-width:1024px) {
    .sliderTopicBlock {
		margin-left: 0;
		padding-left: 0;
		padding-bottom: 20px;
		background-image: linear-gradient(#F8F8F8, #FFF);
		margin-bottom: 0;
    }
    .titleTopicBlock {
        padding: 0 80px;
    }
}
@media screen and (max-width: 768px) {
    .sliderTopicBlock {
        padding: 100px 0 20px;
    }
    .sliderTopicWrap .swiper-button-prev {
        left: -65px;
    }
    .sliderTopicWrap .swiper-button-next {
        right: -65px;
    }
}
@media screen and (max-width: 767px) {
    .sliderTopicWrap .swiper-button-prev {
        left: -40px;
    }
    .sliderTopicWrap .swiper-button-next {
        right: -40px;
    }
}

@media screen and (max-width: 767px){
    .logoBox {
        padding: 15px 0 20px;
    }
     .logoBox img {
        height: auto;
        display: block;
        max-width: 180px;
    }
    .searchText span img {
        width: 12px;
        margin-right:5px;
    }
    .searchText span::before {
        height: calc(100% - 10px);
    }
    .searchText .text02::after {
        height: calc(100% - 10px);
    }
    .mainGroup {
        background: none;
    }
    .btnBlockPop {
        padding: 15px 15px 20px 15px;
    }
    .listDetail {
        padding-top: 15px;
    }
    .blockPop {
        margin-bottom: 0;
    }
    .btnPop {
        /* width: 75px; */
        padding: 10px 12px 9px 12px;
        font-size: 12px;
        box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    }
    .cellContent {
        margin-bottom: 5px;
    }
    .specialBlock {
        background-image: linear-gradient(#F8F8F8, #FFF);
    }
    .newBadge {
        margin-bottom: 5px;
        max-width: 120px;
        width: 100%;
    }
    .boxInterview {
        flex-direction: column;
        align-items: flex-start;
    }
    .boxInterview .title {
        width: 100%;
        font-size: 18px;
        margin-bottom: 15px;
    }
    .boxInterview .info {
        width: 100%;
        font-size: 12px;
        line-height: 1.8;
        padding-left: 0;
    }
    .searchText.custom01 {
        margin-top: 0px;
    }
    .boxDiscription {
        margin-top: -5px;
    }
    .topBar .inner > * {
        font-size: 14px;
        margin: 0 10px;
    }
    .topBar .inner > *:first-child {
        margin-left: 0;
    }
    #closeDiv .image {
        width: 44px;
        height: 44px;
    }
    #closeDiv li {
        height: 44px;
    }
    #closeDiv li a {
        font-size: 15px;
    }
    .sliderTopic {
        padding-right: 0;
    }
    .sliderTopic .swiper-slide {
        position: relative;
        width: 100%;
    }
    .sliderTopic .swiper-slide:last-child:after {
        content: "";
        display: block;
        position: absolute;
        right: -1.5rem;
        width: 1.5rem;
        height: 1px;
    }
    .navBlock {
        padding-bottom: 0;
        padding-right: 0;
        margin-right: -15px;
        margin-left: -15px;
    }
    .customNav.noActive li.selected {
        background-color: #F0F2F4;
    }
	.customNav li#all {
		background-color: #E4DCFB;
		color: #452886;
	}
    .linkListAll{
        /* display: none; */
    }
}

@media screen and (max-width: 767px) {
    .searchText {
        margin-top: -5px;
        display: flex;
		text-align: center;
		padding-left: 15px;
		padding-right: 15px;
    }
    .searchText span {
        margin: 0 auto;
        padding: 5px 10px 5px 10px;
        text-align: center;
        font-size: 12px;
        width: 50%;
    }
}

.linkTopic {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-top: 30px;
	transition: opacity 0.3s;
	text-decoration: none;
}

.linkTopic img {
    width: 100%;
}

.linkTopic:hover {
    opacity: 0.7;
}

.linkTopic .ttl {
	position: relative;
	font-weight: bold;
	font-size: 15px;
	line-height: 2.5;
    color: #333;
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}

.linkTopic .ttl.iconNew {
	padding-left: 42px;
}

.linkTopic .ttl.iconNew::before {
	position: absolute;
	left: 0;
	top: 7px;
	border-radius: 4px;
	background-color: #CF452C;
	color: #FFF;
	font-size: 10px;
	line-height: 1;
	display: flex;
	align-items: center;
	font-family: sans-serif;
	width: 40px;
	justify-content: center;
	height: 21px;
	font-weight: bold;
	content: 'NEW';
}

.linkTopic .subTitle {
	display:block;
	display:-webkit-box;
	max-width:100%;
	max-height:2.8em;
	font-size: 13px;
	line-height: 1.4;
	color: #999;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	text-overflow:ellipsis;
}

@media screen and (max-width:768px) {
    
	.linkTopic {
		margin-top: 20px;
	}
	.titleTopicBlock {
		font-size: 18px;
		line-height: 1.3;
		padding: 0;
		margin: 0 0 0 15px;
    }
    .specialTitle .ttl {
        font-size: 18px;
        margin-bottom: 5px;
    }
    .categoryTitle a {
        font-size: 13px;
    }
    .specialTitle .sub {
        font-size: 12px;
    }
    .categoryTitle {
        margin: 0px 15px 20px 15px;
    }
    .categoryTitle .ttl {
        width: 65%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 18px;
        margin-bottom: 5px;
    }
}
/* header */
.header .inner{
    padding: 0 20px;
    max-width: 1450px;
    width: 100%;
    margin: 0 auto;
    height: 60px;
    display: flex;
    justify-content: end;
}
.header .inner .toggleBlock{
   margin-top: 2px;
    display: inline-block;
   height: 42px;
}
.header .inner .toggleBlock .txtToggle{
    padding-right: 0;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    color: #333333;
    vertical-align: super;
}
.header .inner .toggleBlock .switch{
    position: relative;
    display: inline-block;
    width: 80px;
    height: 42px;
    margin-left: 5px;
}
.header .inner .toggleBlock .switch input{
    opacity: 0;
  width: 0;
  height: 0;
}
.header .inner .toggleBlock .slider{
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #E2DEED;
    transition: .4s;
}
.header .inner .toggleBlock .slider::before{
    position: absolute;
  content: "OFF";
  font-size: 12px;
  text-align: center;
  color: white;
  font-weight: bold;
  height: 36px;
  width: 36px;
  left: 4px;
  bottom: 3px;
  background-color: #3F2487;
  transition: .4s;
  line-height: 36px;
}

.header .inner .toggleBlock input:checked + .slider{
   
    background-color: #FAD4E0;
}
.header .inner .toggleBlock input:focus + .slider{
    box-shadow: 0 0 1px #2196F3;
}
.header .inner .toggleBlock input:checked + .slider::before{
    content: "ON";
    background-color: #E01352;
    transform: translateX(36px);
}
.slider.round {
    border-radius: 34px;
}
.slider.round:before {
    border-radius: 50%;
}

/* / header*/
/* bannersBlock*/
.bannersBlock {
    display: flex;
    justify-content: center;
}
.bannersBlock .text_note {
    font-size: 12px;
    color: #000;
    text-align:right;
    padding: 0;
    margin: 0;
    font-weight: normal;
}
.spDisplay{
    display: none;
}
/* / bannersBlock */
/* keyv */
#keyv {
	width: 100%;
	height: 420px;
	background: url(../img/home/bg_keyv.jpg) no-repeat 50% 50%/ cover;
	margin-bottom: 150px;
}

.innerKeyv {
    display: flex;
    max-width: 1450px;
    width: 100%;
    height: 100%;
    padding: 18px 20px 0;
    margin-left: auto;
    margin-right: auto;
    /* justify-content: space-between; */
    align-items: flex-start;
}

.leftKeyv {
	max-width: 760px;
	width: 52%;
	display: flex;
}

.logoBlock {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	max-width: 327px;
    width: 50%;
    margin-bottom: 12px;
    margin-right: 36px;
}

.genreBlock {
	display: flex;
	/* max-width: 425px;
    width: 50%;
    padding-right: 30px; */
	align-items: flex-start;
	flex-direction: column;
	margin-top: 30px;
}

.genreBlock .customNav {
    justify-content: flex-start;
}
.genreBlock .searchText {
    position: relative;
    margin: -15px 0 10px 0;
    width: 100%;
    display: flex;
    padding: 0;
}

.genreBlock .searchText span {
    position: relative;
    padding: 5px 10px 5px 10px;
    font-size: 18px;
    transition: 0.3s opacity;
    cursor: pointer;
}

.scrollToFixed {
    background-color: #FFF;
}
.scrollToFixed.scroll-to-fixed-fixed .searchText {
    margin-top: 0;
}
.genreBlock .searchText span em,
.genreBlock .searchText span img {
    opacity: 0.4;
}
.genreBlock .searchText span:hover em,
.genreBlock .searchText span:hover img,
.genreBlock .searchText span.active em,
.genreBlock .searchText span.active img {
    opacity: 1;
}

.genreBlock .searchText .text01 {
    padding: 5px 16px 5px 0;
}

.genreBlock .searchText .text01::before, 
.genreBlock .searchText .text02::after {
    display:none;
}

.genreBlock .searchText .text02::before {
    position: absolute;
    height: calc(100% - 5px);
    width: 1px;
    background-color: #333;
    left: 0;
    content:'';
    top: 2px;
}

.topPowered img {
	display: block;
	width: 100%;
}

.sliderKeyvBox {
	position: relative;
	width: 100%;
    max-width: 872px;
}

.sliderKeyvBox .swiper-slide img {
    width: 100%;
}

.sliderKeyv {
	position: absolute; 
	max-width: 872px;
	/* width: 100%; */
	top: 20px;
	overflow: hidden;
    left: 80px;
}
.innerKeyv .swiper-button-next, .innerKeyv .swiper-button-prev {
    top: calc(50% + 164px);
}
.sliderKeyv .swiper-slide {
	border-radius: 16px;
	overflow: hidden;
}

.sliderKeyv .link img {
	display: block;
	width: 100%;
	border-radius: 16px;
}

.sliderKeyv .swiper-pagination-bullet-active {
    width: 12px;
    height: 12px;
    position: relative;
    top: 1px;
    background: #007aff;
}

.sliderKeyvBox .swiper-container-horizontal>.swiper-pagination-bullets, 
.sliderKeyvBox .swiper-pagination-custom, 
.sliderKeyvBox .swiper-pagination-fraction {
	bottom: 15px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.sliderKeyvBox .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0px 8px;
}
.sliderKeyvBox .swiper-button-next{
    right: -110px;
}
.sliderKeyvBox .swiper-button-prev {
    left: 50px;
}
.bgWhite {
    background-color: #FFF;
}

#slider .slide-img {
    cursor: pointer;
}

#slider .slide-img img {
    pointer-events: none;
}

#introScreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 30px;
    z-index: 1004;
    background-color: #FFF;
}

#introScreen .bgInner {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;    
    background-color: #F0F2F4;
    height: 100%;
    padding: 30px;
}

#qr {
    display: none;
}

#qr .qrCode {
    position: relative;
}

#qr .qrClose {
    position: absolute;
    right: 15px;
    top: 10px;
    cursor: pointer;
}

#qr .qrClose img {
    width: 15px;
    height: 15px;
}

#boxListType {
    padding: 15px;
}

.boxHeadListType {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.boxHeadListType .searchText {
    width: 100%;
    max-width: 320px;
}

.boxHeadListType .searchText span {
    text-align: left;
}

.boxHeadListType .searchText .text01 {
    padding-left: 0;

}
.searchText .text01:hover,
.searchText .text02:hover {
    color: #401F8C;
}
.searchText .text02::after,
.searchText .text01::before {
    content: none;
}
.searchText span:hover em,
.searchText span:hover img {
    opacity: 1;
}
.boxHeadListType .closeIcon,
.boxHeadListType .searchText {
    padding: 0;
    margin-bottom: 0;
}
.linkListAll {
    background-color: #3F1E8B;
    padding: 11px 16px;
    font-size: 0;
    margin-top: 15px;
    margin-bottom: 0;
    border-radius: 999px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width:1200px) {
    #qr {
        display: block;
        position: fixed;
        left: 0;
        bottom: 0;
        z-index: 9999;
		padding: 20px;
    }
    .shieldMenu #qr {
        display: none !important;
    }
    #qr img {
        box-shadow:0px 4px 20px -5px rgba(0,0,0,0.20);
        border-radius: 12px;
        cursor: inherit;
    }
}
@media screen and (max-width:1400px) {
	#keyv {
        padding: 35px 0;
        height: 450px;
        margin-bottom: 110px;
	}

	.leftKeyv {
	    width: 70%;
	    max-width: 100%;
	    padding-right: 60px;
	}

	.sliderKeyv {
        width: 100%;
	    /* top: 50%;
	    transform: translateY(-50%); */
	}

	.logoBlock {
        width: 100%;
        max-width: 300px;
    }

	.logoBlock img {
        /* width: 80%; */
        width: 100%;
        display: block;
        margin: 0 auto;
	}

	.genreBlock {
        /* max-width: 420px; */
		width: 100%;
		margin-top: 15px;
	}

	.genreBlock .searchText::after {
        width: 25%;
    }

    .genreBlock .searchText::before {
        width: 25%;
    }

    .sliderKeyvBox {
        /* max-width: 486px; */
        width: 80%;
    }

    .swiper-button-next {
        /* right: -20px; */
    }
    .swiper-button-prev {
        /* left: -20px; */
    }
}

@media screen and (max-width:1199px) {
    .innerKeyv {
        /* flex-wrap: wrap;
        max-width: 980px; */
    }
    .genreBlock {
        padding-top: 6px;
        /* width: 100%;  */
        max-width: none;
        order: 3;
    }
    .sliderKeyvBox {
        /* width: 60%; */
        /* max-width: 580px; */
    }
    .sliderKeyv {
        left: 40px;
        position: relative;
    }
    .logoBlock {
        margin-right: 18px;
        width: 100%;
        max-width: 325px;
    }
    #keyv {
        /* height: auto; */
        margin-bottom: 70px;
        padding: 35px 0 20px;
    }
    .specialList {
        flex-direction: column;
        padding: 0 15px;
    }
    .specialList li {
        width: 100%;
        max-width: 500px;
        margin: 0 auto 20px auto;
    }
    .specialTitle {
        align-items: flex-start;
    }
    .bannerFooter .item {
        width: calc((100%/3) - 8px);
        margin: 0 4px 4px 4px;
    }
    .listStory .bookCell.setBg:before {
        margin-left: calc((100vw - 950px) / -2);
    }
}

/* @media screen and (max-width:1024px) {
    #keyv {
        background: none;
        margin-bottom: 10px;
    }
    .logoBlock {
        display: none;
    }
    .innerKeyv {
	    flex-direction: column-reverse;
	}
	.leftKeyv {
	    width: 100%;
	    max-width: 100%;
	    padding: 0;
	}
    .sliderKeyvBox {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
    }
    .sliderKeyvBox .link {
        padding-right: 0;
        padding-left: 0;
    }
	.sliderKeyv {
	   position: static;
	   top: auto;
	   transform: none;
	   max-width: 100%;
	   border-radius: 0;
	}
	.sliderKeyv .link img {
	    border-radius: 0;
	}
	.genreBlock {
	    width: 100%;
	}
	.genreBlock .searchText {
	    padding: 0 15px;
	}
	.genreBlock .customNav {
        overflow-x: auto;
        width: 100%;
        padding-left: 15px;
    }
} */
@media screen and (max-width: 992px) {
    .listStory .bookCell.setBg:before {
        margin-left: calc((100vw - 730px) / -2);
    }
    .pcDisplay {
        display: none !important;
    }
}
@media screen and (max-width:767px) {
    .genreBlock .searchText {
        text-align: left;
		margin-bottom: 5px;
		padding: 0 15px;
    }
	.genreBlock .searchText .text01 {
		padding: 5px 0;
	}
    .genreBlock .searchText span {
        font-size: 12px;
        padding-left: 10px;
    }
    #introScreen,
    #introScreen .bgInner {
        padding: 15px;
    }
    #introScreen .bgInner img {
        max-width: 160px;
    }
    #introScreen img {
        width: 100%;
    }
    #keyv {
        height: auto;
        background: none;
        margin-bottom: 0;
        padding: 0;
    }
    .logoBlock {
        display: none;
    }
    .innerKeyv {
        display: block;
        padding: 0;
        flex-direction: column-reverse;
	}
	.leftKeyv {
        width: 100%;
        max-width: 100%;
        padding: 0;
	}
	.sliderKeyv .swiper-slide {
		border-radius: 0;
	}
    .sliderKeyvBox {
        padding: 10px 10px 0 10px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
    }
    .sliderKeyvBox .link {
        padding-right: 0;
        padding-left: 0;
    }
	.sliderKeyv {
        position: static;
        top: auto;
        transform: none;
        max-width: 100%;
        border-radius: 0;
	}
	.sliderKeyv .link img {
        border-radius: 0;
	}
	.genreBlock {
        width: 100%;
        order: 0;
        padding: 25px 0 0;
	}
	.genreBlock .customNav {
        overflow-x: auto;
        width: 100%;
		-webkit-overflow-scrolling: touch;
	}
    .customNav {
        flex-wrap: nowrap;
        justify-content: flex-start;
        font-size: 12px;
        width: auto;
		padding-bottom: 10px;
    }
    .customNav li {
		position: relative;
        padding: 10px 15px;
        white-space: nowrap;
	}
	.customNav li:first-child {
		margin-left: 15px;
	}
	.customNav li:last-child:after {
		content: "";
		display: block;
		position: absolute;
		right: -1.5rem;
		width: 1.5rem;
		height: 1px;
	}
    .genreBlock .searchText .text01::before, 
    .genreBlock .searchText .text02::after {
        display: block;
    }
    .genreBlock .searchText .text01::before {
        position: absolute;
        height: calc(100% - 5px);
        width: 1px;
        background-color: #333;
        left: 0;
        content: '';
        top: 2px;
    }
    .genreBlock .searchText .text02::after {
        position: absolute;
        height: calc(100% - 5px);
        width: 1px;
        background-color: #333;
        right: 0;
        content: '';
        top: 2px;
    }
    .genreBlock {
		background-color: #FFF;
		margin-top: 0;
        padding-bottom : 15px;
    }
    .sliderTopicBlock {
        padding-top: 21px;
		border-top: 1px solid #D5D5D5;
    }
    .bannerFooter .item {
        width: calc(50% - 4px);
        margin-right: 0;
    }
    .suggestList li {
        min-width: 270px;
        margin: 0 10px 10px;
        box-shadow: 0 3px 10px rgba(0,0,0,0.16);
    }
    .suggestList li:first-child {
        margin-left: 15px;
    }
    .specialBlock {
        border-top: 1px solid #D5D5D5;
    }
    .linkTopic .ttl {
        font-size: 13px;
    }
    .linkTopic .subTitle {
        font-size: 11px;
    }
    .linkTopic .ttl.iconNew {
        padding-left: 35px;
    }
    .linkTopic .ttl.iconNew::before {
        font-size: 9px;
		padding: 2px;
		width: 32px;
		height: 17px;
    }
    .listStory .bookCell.setBg:before {
        content: none;
    }
}
@media screen and (max-width: 425px){
    .bookCell img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .sliderCategory .newBadge {
        max-width: 140px;
    }
    .imgContent {
        height: 165px;
    }
    .specialList {
        width: 100%;
    }
    .specialTitle {
        margin-left: 15px;
    }
    .categoryBlock p.image img {
        max-width: unset;
        height: 190px;
    }
}
@media screen and (max-width: 320px) {
    .boxHeadListType .commonClose {
        width: 33px;
    }
    .categoryBlock p.image img {
        height: 220px;
    }
}
.categoryBlock .swiper-button-prev,.swiper-button-next {
    top: 40%;
}

.swiper-button-prev,
.swiper-button-next {
    width: 60px;
    height: 60px;
    background-size: 60px;
    transition: 0.3s all;
    z-index: 1000;
    appearance: none;
    outline: none;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(0,0,0,0.2);
}
.swiper-button-prev:after,
.swiper-button-next:after {
    content: none;
}
.swiper-button-prev {
    left: -30px;
    background-image: url("../img/icon_arrow_prev.svg");
}
.swiper-button-next {
    right: -30px;
    background-image: url("../img/icon_arrow_next.svg");
}
.categoryBlock .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 10px;
}
.categoryBlock .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
}
.categoryBlock .swiper-pagination-bullet-active {
    width: 8px;
    height: 8px;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    margin: 0 10px;
}
.categoryBlock .swiper-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
}
.sliderKeyvBox .swiper-pagination {
    /* left: 0;
    bottom: 10px; */
    width: 100%;
    position: unset;
    padding-top: 10px;
}
.categoryBlock .swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 0;
}
.swiper-button-next-new,.swiper-button-prev-new {
    top: calc(35%) !important;
}
@media screen and (min-width: 1024px) {
    .swiper-button-prev:hover {
        background-image: url("../img/icon_arrow_prev_active.svg");
    }
    .swiper-button-next:hover {
        background-image: url("../img/icon_arrow_next_active.svg");
    }
}
@media screen and (max-width:1190px) {
    .innerKeyv .swiper-button-next, 
    .innerKeyv .swiper-button-prev {
        top: calc(50% + 10px);
    }
    .innerKeyv .swiper-button-next{
        right: -55px;
    }
    .innerKeyv .swiper-button-prev {
        left: 20px;
    }
}
@media screen and (max-width: 1475px) {
    .swiper-button-prev,
    .swiper-button-next {
        width: 40px;
        height: 40px;
        background-size: 40px;
    }
    .swiper-button-next {
        right: -20px;
    }
    .swiper-button-prev {
        left: -20px;
    }
}
@media screen and (max-width: 1024px){
    #keyv{
        margin-bottom: 0;
    }
    .keyvWrap {
        width: 70%;
    }
}
@media screen and (max-width: 767px) {
    .swiper-button-next, .swiper-button-prev {
        width: 50px !important;
        height: 50px !important;
    }
    .categoryBlock .swiper-button-next {
        right: -40px !important;
    }
    .categoryBlock .swiper-button-prev {
        left: -40px !important;
    }
    .swiper-button-next::before {
        top: 27% !important;
        transform: scale(.7);
    }
    .swiper-button-prev::before {
        top: 27% !important;
        transform: scale(.7);
    }
    .keyvWrap {
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
    }
    .linkListAll{
        margin: 0 auto;
    }
    .spDisplay {
        display: block;
    }
}
@media screen and (max-width: 375px) {
    .sliderKeyvBox .swiper-button-prev,
    .sliderKeyvBox .swiper-button-next {
        width: 30px;
        height: 30px;
        background-size: 30px;
    }  
}
@media screen and (max-width: 768px) {
    .bannersBlock {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 15px 0;
        margin-bottom: 30px;
    }
    .bannersBlock .banners_img img {
        width: 100%;
    }
    .innerKeyv .swiper-button-prev {
        display: none;
    }
    .innerKeyv .swiper-button-next {
        display: none;
    }
    .categoryBlock .swiper-button-next {
        right: -65px;
        z-index: 1;
    }
    .categoryBlock .swiper-button-prev {
        left: -65px;
        z-index: 1;
    }
    .specialList {
        margin: 0;
        width: 100%;
    }
    .specialList li {
        width: 100%;
        max-width: 768px;
    }
    .specialTitle {
        margin-left: 15px;
    }
    .specialBlock {
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 15px;
        padding-top: 40px;
    }
    .categoryBlock {
        padding-top: 25px;
    }
    .swiper-button-next,.swiper-button-prev {
        width: 60px;
        height: 60px;
        background-image: unset;
    }
    .swiper-button-next::before {
        position: absolute;
        content: url(../img/icon_arrow_next_sp.svg);
        left: 20%;
        top: 30%;
    }
    .swiper-button-prev::before {
        position: absolute;
        content: url(../img/icon_arrow_prev_sp.svg);
        right: 20%;
        top: 30%;
    }
    .sliderCategoryBox {
        padding-bottom: 25px;
    }
    .header .inner {
        padding: 0;
        align-items: center;
        justify-content: end;
        height: 45px;
    }
    .header .inner .logo_sp{
        margin-left: 8px;
    }
    .header .inner .logo_sp img{
        height: 33px;
    }
    .header .inner .toggleBlock {
        max-width: 160px;
        display: inline-block;
        height: 42px;
        width: 100%;
        align-items: center;
        display: flex;
        justify-content: space-evenly;
    }
    .header .inner .toggleBlock .txtToggle {
        
        font-size: 12px;
        margin: 0;
       
    }
    .header .inner .toggleBlock input:checked + .slider::before {
        transform: translateX(28px);
    }
    .header .inner .toggleBlock .slider::before {
        letter-spacing: initial;
        font-size: 9px;
        height: 28px;
        width: 28px;
        line-height: 30px;
    }
    .header .inner .toggleBlock .switch {
        width: 65px;
        height: 34px;
    }
    .logoBox .toggleBlock .txtToggle {
        font-size: 11px;
        margin: 0;
        padding: 0;
       
    }
    .logoBox .toggleBlock input:checked + .slider::before {
        transform: translateX(28px);
    }
    .logoBox .toggleBlock .slider::before {
        letter-spacing: initial;
        font-size: 9px;
        height: 24px;
        width: 24px;
        line-height: 1;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .logoBox .toggleBlock .switch {
        width: 60px;
        height: 30px;
    }
    .logoBox {
        padding: 15px 10px 20px;
        align-items: center;
    }
     .logoBox img {
        height: auto;
        display: block;
        max-width: 145px;
    }
    .listBanners{
        margin: 20px 0 10px;
    }
    .sliderKeyv{
        left: 20px;
    }
}

.container.hasFixedcustomNav {
    display: none;
    position: absolute;
    width: 100%;
    left: 0;
    z-index: 100001;
    background: #Fff;
}
.container.hasFixedcustomNav .navBlock {
    margin: 0 auto;
    max-width: 1170px;
}
.flexwrap {
    display: flex;
    flex-wrap: wrap;
}
.alphabetNav {
    display: flex;
    justify-content: center;
}
.alphabetNav > ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}
.alphabetNav > ul > li {
    background-color: #F0F2F4;
    color: #333;
    cursor: pointer;
    border-radius: 4px;
    display: inline-block;
    font-weight: 700;
    margin: 3px 3px 3px 3px;
    padding: 6px 10px;
    transition: background-color 0.25s, color 0.25s;
}
.alphabetNav > ul > li > span{
    position: relative;
    z-index: 2000;
}
.alphabetNav > ul > li > .alphabetWrap {
    left: auto;
    top: auto;
    list-style: none;
    padding-top: 14px;
    position: absolute;
    transform: scaleY(0);
    transform-origin: center top 0;
    opacity: 0;
    transition: opacity 0.3s;
    width: max-content;
    z-index: 2001;
}

.alphabetNav > ul > li > .alphabetWrap::before {
    content:"";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 10px solid #fff;
    top: 4px;
    left: 76px;
}

.alphabetNav > ul > li > .alphabetWrap > ul {
    display: flex;
    padding: 8px;
    gap: 6px;
    background-color: #fff;
    border-radius: 11px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .25);
}
.alphabetNav > ul > li > .alphabetWrap > ul li {
    background-color: #F0F2F4;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .25);
    color: #333;
    cursor: pointer;
    border-radius: 4px;
    display: inline-block;
    font-weight: 700;
    padding: 6px 10px;
    transition: background-color 0.25s, color 0.25s;
    text-align: center;
    min-width: 48px;
    width: 100%;
}
.alphabetNav > ul > li > .alphabetWrap.column > ul {
    flex-direction: column;
}
.alphabetNav > ul > li > .alphabetWrap.column::before {
    top: 6px;
    left: 24px;
}
.alphabetNav > ul > li > .alphabetWrap > ul li.selected {
    background-color: #FBF1DC;
    color: #452886;
}
.alphabetNav > ul > li.selected {
    background-color: #FBF1DC;
    color: #452886;
}
@media screen and (min-width: 768px) {
    .alphabetNav > ul > li:hover {
        background-color: #FBF1DC;
        color: #452886;
    }
    .alphabetNav > ul > li:hover .alphabetWrap {
        transform: scaleY(1) translateY(6px) translateX(-70px);
        opacity: 1;
    }
    .alphabetNav > ul > li:hover > .alphabetWrap.column {
        transform: scaleY(1) translateY(6px) translateX(-18px);
    }
    .alphabetNav > ul > li > .alphabetWrap > ul li:hover {
        background-color: #FBF1DC;
        color: #452886;
    }
}
.switchBlock{
    align-items: center;
    display: inline-flex;
    height: 42px;
 }
.switchBlockTxt {
    color: #333333;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    padding: 0;
    vertical-align: super;
}
.switchBlockTxt::before {
    display: none;
}
.switchBlockBtn {
    background-color: #E2DEED;
    border-radius: 100vw;
    cursor: pointer;
    display: inline-block;
    height: 42px;
    margin-bottom: 0;
    margin-left: 5px;
    overflow: hidden;
    position: relative;
    width: 80px;
}
.switchBlockBtn::before,
.switchBlockBtn::after {
    align-items: center;
    border-radius: 100%;
    bottom: 3px;
    content: "ON";
    color: #000;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    height: 36px;
    justify-content: center;
    line-height: 36px;
    position: absolute;
    transition: background-color .25s, color .25s;
    text-align: center;
    width: 36px;
}
.switchBlockBtn::after {
    background-color: transparent;
    color: transparent;
    content: "ON";
    right: 3px;
}
.switchBlockBtn::before {
    background-color: #3F2487;
    color: #fff;
    content: "OFF";
    left: 3px;
}
.switchBlockInput {
    font-size: 0;
    height: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 0;
}
.switchBlockInput:checked + .switchBlockBtn {
    background-color: #FAD4E0;
}
.switchBlockInput:checked + .switchBlockBtn::before {
    background-color: transparent;
    color: transparent;
}
.switchBlockInput:checked + .switchBlockBtn::after {
    background-color: #E01352;
    color: #fff;
}
.header .inner {
    align-items: center;
    display: flex;
    height: 100px;
    justify-content: space-around;
}
.header .logo {
    display: inline-block;
    font-size: 0;
}
.header .logo img {
    height: 65px;
}
.headerWrap {
    align-items: center;
    background-color: #f1eff7;
    border-radius: 15px;
    display: flex;
    height: 72px;
    margin-left: 61px;
    padding: 15px;
}
.headerWrap .toggleBlock {
    align-items: center;
    display: inline-flex !important;
    height: auto !important;
    margin-top: 0 !important;
}
.headerWrap .toggleBlock .switch,
.headerWrap .toggleBlock .txtToggle {
    margin-bottom: 0 !important;
}
.header .inner .toggleBlock .txtToggle {
    font-size: 13px;
    font-weight: 700;
}
.headerSearch {
    align-items: center;
    display: inline-flex;
    margin-left: 15px;
}
.headerSearchInput {
    cursor: pointer;
    display: inline-block;
    position: relative;
}
.headerSearchInput input {
    background-color: #fff;
    border: 2px solid #4e2da7;
    border-radius: 100vw;
    color: #333;
    cursor: text;
    font-size: 14px;
    height: 40px;
    letter-spacing: 1px;
    padding: 10px 30px 10px 43px;
    position: relative;
    transition: background-color .25s;
    width: 260px;
    z-index: 1;
}
.headerSearchInput ::placeholder {
    color: #A6A2B2;
    opacity: 1;
}
.headerSearchInput ::-webkit-input-placeholder,
.headerSearchInput :-moz-placeholder,
.headerSearchInput ::-moz-placeholder,
.headerSearchInput :-ms-input-placeholder,
.headerSearchInput ::-ms-input-placeholder {
    color: #A6A2B2;
}
.headerSearchInput img {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translate(0, -50%);
    opacity: 0;
    transition: opacity .25s, visibility .25s;
    visibility: hidden;
    z-index: 2;
}
.headerSearchInput::before {
    background: url("../img/icon_search1.svg") no-repeat center center/100%;
    content: "";
    display: inline-block;
    height: 22px;
    left: 15px;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    width: 22px;
    z-index: 2;
}
.headerSearchBtn {
    align-items: center;
    background-color: #4E2DA7;
    border-width: 0;
    color: #fff;
    display: inline-flex;
    cursor: pointer;
    border-radius: 100vw;
    font-size: 14px;
    height: 42px;
    justify-content: center;
    margin-left: 5px;
    transition: background-color .25s;
    width: 80px;
}
.headerSearchBtn:hover {
    background-color: #5C34C9;
}
.headerBr {
    display: none;
}
.bookWrap[data-avatar="1"] {
    padding: 30px 180px 33px;
    width: 100%;
}
.bookWrap[data-avatar="1"] .bookItem .image,
.bookWrap[data-avatar="1"] .rankingIcon,
.bookWrap[data-avatar="1"] .swiper-button-prev,
.bookWrap[data-avatar="1"] .swiper-button-next {
    display: none;
}
.bookWrap[data-avatar="1"] .sliderCategoryBox,
.bookWrap[data-avatar="1"] .sliderCategory {
    width: 100%;
}
.bookWrap[data-avatar="1"] .categoryTitle {
    margin: 0 0 28px;
}
.bookWrap[data-avatar="1"] .bookRow {
    display: block;
}
.bookWrap[data-avatar="1"] .bookRow2 {
    column-count: 2;
    display: block;
    row-gap: 10px;
}
.bookWrap[data-avatar="1"] .bookRow2 .bookItem {
    height: auto;
    margin-bottom: 10px;
}
.bookWrap[data-avatar="1"] .bookItem {
    align-items: flex-start;
    background-color: #F1EFF7;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 20px 115px 20px 25px;
    position: relative;
    transition: background-color .25s;
}
.bookWrap[data-avatar="1"] .bookItem .bookName {
    color: #401F8C;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    max-width: 100%;
    min-height: inherit;
    margin-bottom: 9px;
    margin-top: 0;
    text-align: left;
    width: 100%;
}
.bookWrap[data-avatar="1"] .bookItem .bannerTxt {
    color: #000;
    height: inherit;
    font-size: 14px;
    margin: 0;
    max-width: 100%;
    width: 100%;
}
.bookWrap[data-avatar="1"] .listStory .bookName,
.bookWrap[data-avatar="1"] .listStory .label {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.bookWrap[data-avatar="1"] .bookItem .txtDescription {
    margin-bottom: 0;
    padding: 0;
    -webkit-line-clamp: 1;
}
.bookWrap[data-avatar="1"] .bookItem .newBadge {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 0;
    height: 18px;
    justify-content: center;
    margin: 0;
    position: absolute;
    right: 76px;
    top: 21px;
    width: 36px !important;
}
.bookWrap[data-avatar="1"].container {
    padding-top: 6px;
}
.bookWrap[data-avatar="1"] .listStory {
    display: block;
    margin: 0 auto;
    max-width: 600px;
}
.bookWrap[data-avatar="1"] .bookCell {
    margin-bottom: 10px;
    padding: 0;
    width: 100%;
}
.bookWrap[data-avatar="1"] .label {
    margin-top: 0;
    padding: 0;
}
.bookWrap[data-avatar="1"] .noNewBadge,
.bookWrap[data-avatar="1"] .bookCell::before,
.bookWrap[data-avatar="1"] .listStory .bookItem::before {
    display: none;
}
.bookWrap[data-avatar="1"] .listStory .bookItem[data-rank] {
    padding-left: 25px;
}
.bookWrap[data-avatar="1"] .listDetail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 20px;
    row-gap: 20px;
    padding-top: 0;
    margin: 0;
}
.bookWrap[data-avatar="1"] .listDetail::before {
    display: none;
}
.mainDetail .bookWrap[data-avatar="1"] {
    padding: 64px 0 30px;
}
.mainDetail .bookWrap[data-avatar="1"]  .label {
    color: #401F8C;
    display: -webkit-box;
    font-size: 18px;
    font-weight: 700;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.mainDetail .bookWrap[data-avatar="1"] .bookItem {
    padding: 35px 115px 31px 30px;
}
.mainDetail .bookWrap[data-avatar="1"] .bookItem .newBadge {
    top: 35px;
}
.mainList .bookWrap[data-avatar="1"]{
    padding-top: 30px;
}
.bookWrap[data-avatar="1"] .listDetail::after {
    content: "";
    width: calc((100% - 40px) / 3);
}
.bookWrap[data-avatar="1"] .listDetail .bookCell {
    margin-bottom: 0;
    width: calc((100% - 40px) / 3);
}
.bookWrap[data-avatar="1"] .bookCell .bookItem {
    margin-bottom: 0;
}
.bookWrap[data-avatar="1"] .bookItem .imgContent {
    height: auto;
}
.bookWrap[data-avatar="1"] .showRankingIcon {
    padding-top: 0;
}
.bookWrap[data-avatar="1"] .showRankingIcon .bookItem[data-rank],
.bookWrap[data-avatar="1"] .bookItem[data-rank] {
    padding-left: 81px;
}
.bookWrap[data-avatar="1"] .showRankingIcon .bookItem[data-rank]::before {
    display: inline-block;
}
.bookWrap[data-avatar="1"] .bookItem::after {
    background: #fff url(../img/icon_arrow.svg) no-repeat center center/11px;
    border-radius: 50%;
    content: "";
    height: 30px;
    position: absolute;
    transform: translate(0, -50%);
    right: 25px;
    top: 50%;
    width: 30px;
}
.bookItem[data-rank]::before {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 39px;
    content: "";
    display: block;
    height: 37px;
    margin-bottom: 10px;
    width: 100%;
}
.bookItem[data-rank="0"]::before {
    background-image: url(../img/icon_0n.svg);
}
.bookItem[data-rank="1"]::before {
    background-image: url(../img/icon_1n.svg);
}
.bookItem[data-rank="2"]::before {
    background-image: url(../img/icon_2n.svg);
}
.bookItem[data-rank="3"]::before {
    background-image: url(../img/icon_3n.svg);
}
.bookItem[data-rank="4"]::before {
    background-image: url(../img/icon_4n.svg);
}
.bookItem[data-rank="5"]::before {
    background-image: url(../img/icon_5n.svg);
}
.bookItem[data-rank="6"]::before {
    background-image: url(../img/icon_6n.svg);
}
.bookItem[data-rank="7"]::before {
    background-image: url(../img/icon_7n.svg);
}
.bookItem[data-rank="8"]::before {
    background-image: url(../img/icon_8n.svg);
}
.bookItem[data-rank="9"]::before {
    background-image: url(../img/icon_9n.svg);
}
.bookWrap[data-avatar="1"] .bookItem[data-rank]::before {
    background-position: 0 0;
    background-size: 100%;
    height: 35px;
    left: 25px;
    margin: 0;
    position: absolute;
    transform: translate(0, -50%);
    top: 50%;
    width: 36px;
}
.bookWrap[data-avatar="1"] .bookItem:hover {
    background-color: #E4DCFB;
    cursor: pointer;
}
.mainDetail {
    background-color: #fff !important;
    background-image: none !important;
}
.sliderCategoryBox .swiper-wrapper {
    align-items: flex-start !important;
}
@media screen and (min-width: 768px) {
    .headerSearchInput:hover input {
        background-color: #FBF1DD;
    }
    .headerSearchInput:hover img {
        opacity: 1;
        visibility: visible;
    }
}
@media screen and (max-width: 1400px) {
    .bookWrap[data-avatar="1"] {
        padding: 30px 68px;
    }
    .bookWrap[data-avatar="1"] .bookRow2 {
        column-gap: 10px;
    }
    .bookWrap[data-avatar="1"] .bookItem {
        padding: 15px 115px 15px 15px;
    }
}
@media screen and (max-width: 1200px) {
    .header .logo img {
        height: 50px;
    }
    .headerWrap {
        height: auto;
        margin-left: 40px;
        padding: 10px 15px;
    }
    .headerSearch {
        margin-left: 10px;
    }
    .headerSearchInput input {
        width: 240px;
    }
    .headerBr {
        display: block;
    }
    .switchBlock {
        line-height: 1.2;
        text-align: center;
    }
    .header .inner .toggleBlock {
        text-align: center;
        line-height: 1.2;
    }
    .header .inner .toggleBlock .switch {
        margin-left: 5px;
    }
    .bookWrap[data-avatar="1"] {
        padding: 20px 15px;
    }
    .bookWrap[data-avatar="1"] .bookItem .bookName {
        font-size: 17px;
    }
    .bookWrap[data-avatar="1"] .bookItem .bannerTxt {
        font-size: 14px;
    }
    .bookWrap[data-avatar="1"] .bookItem::after {
        right: 15px;
    }
    .bookWrap[data-avatar="1"] .bookItem .newBadge {
        right: 50px;
        top: 16px;
    }
    .bookWrap[data-avatar="1"] .listStory .bookItem[data-rank],
    .bookWrap[data-avatar="1"] .bookItem {
        padding: 15px 85px 15px 15px;
    }
    .bookWrap[data-avatar="1"] .showRankingIcon .bookItem[data-rank],
    .bookWrap[data-avatar="1"] .bookItem[data-rank] {
        padding-left: 60px;
    }
    .bookWrap[data-avatar="1"] .bookItem[data-rank]::before {
        left: 15px;
    }
    .bookWrap[data-avatar="1"] .listDetail {
        column-gap: 20px;
        row-gap: 10px;
    }
    .bookWrap[data-avatar="1"] .listDetail::after {
        display: none;
    }
    .bookWrap[data-avatar="1"] .listDetail .bookCell {
        margin-bottom: 0;
        width: calc(50% - 10px);
    }
}
@media screen and (max-width: 992px) {
    .header .inner {
        height: 92px;
        justify-content: space-between;
        padding-left: 15px;
        padding-right: 15px;
    }
    .headerWrap {
        background-color: transparent;
        flex-wrap: wrap;
        height: 100%;
        margin-left: 0;
        padding: 0;
        justify-content: flex-end;
    }
    .header .inner .toggleBlock {
        height: auto !important;
        line-height: 1;
        width: auto !important;
    }
    .header .inner .toggleBlock .txtToggle,
    .switchBlockTxt {
        font-size: 12px;
    }
    .header .inner .toggleBlock .switch,
    .switchBlockBtn {
        height: 34px;
        width: 65px;
    }
    .switchBlockBtn::before,
    .switchBlockBtn::after {
        height: 28px;
        font-size: 9px;
        width: 28px;
    }
    .header .inner .toggleBlock .slider::before {
        align-items: center;
        font-size: 9px;
        display: inline-flex;
        height: 28px;
        justify-content: center;
        left: 3px;
        width: 28px;
    }
    .headerSearch {
        line-height: 1;
    }
    .bookWrap[data-avatar="1"] .bookRow2 {
        column-gap: 5px;
    }
    .bookWrap[data-avatar="1"] .bookItem .bookName {
        font-size: 15px;
    }
    .bookWrap[data-avatar="1"] .bookItem .bannerTxt {
        font-size: 13px;
    }
}
@media screen and (max-width: 767px) {
    .header .inner {
        align-items: flex-start;
        position: relative;
    }
    .header .logo {
        line-height: 1;
        margin-top: 10px;
    }
    .header .logo img {
        height: auto;
        width: 145px;
    }
    .headerSearch {
        background-color: #F1EFF7;
        bottom: 0;
        height: 46px;
        left: 0;
        position: absolute;
        width: 100%;
        margin-left: 0;
    }
    .headerSearchInput {
        height: 100%;
        width: 100%;
    }
    .headerSearchInput::before {
        display: none;
    }
    .headerSearchInput input {
        background-color: #F0F2F4;
        border-radius: 0;
        border-width: 0;
        height: 100%;
        padding: 10px 150px 10px 15px;
        width: 100%;
        border-bottom: 2px solid #C0C1C3;
    }
    .headerSearchInput img {
        right: 64px;
    }
    .headerSearchBtn {
        background: #fff url("../img/icon_search1.svg") no-repeat center center/15px;
        border-radius: 50%;
        font-size: 0;
        height: 29px;
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translate(0, -50%);
        width: 29px;
        z-index: 2;
    }
    .headerWrap {
        flex-wrap: inherit;
        height: auto;
        padding-top: 9px;
    }
    .headerSearchInput:hover input,
    .headerSearchInput input:focus {
        background-color: #F0F2F4;
        border-bottom: 2px solid #3F2487;
    }
    .headerSearchInput input:focus + img {
        opacity: 1;
        visibility: visible;
    }
    .header .inner .toggleBlock .txtToggle,
    .switchBlockTxt {
        font-size: 11px;
        padding-left: 0;
    }
    .switchBlock {
        height: 30px;
    }
    .switchBlockBtn {
        height: 30px;
        margin-left: 2px;
        width: 60px;
    }
    .switchBlockBtn::before,
    .switchBlockBtn::after {
        height: 24px;
        font-size: 9px;
        width: 24px;
    }
    .header .inner .toggleBlock {
        margin-left: 5px;
    }
    .header .inner .toggleBlock .switch {
        margin-left: 2px;
    }
    .header .inner .toggleBlock .switch {
        height: 30px;
        width: 60px;
    }
    .header .inner .toggleBlock .slider::before {
        align-items: center;
        display: inline-flex;
        height: 24px;
        justify-content: center;
        line-height: 1;
        width: 24px;
    }
    .alphabetNav {
        width: 100%;
        padding-bottom: 10px;
        overflow-x: auto;
        position: static;
        z-index: unset;
        display: flex;
        justify-content: flex-start;
    }
    .alphabetNav > ul {
        flex-wrap: unset;
    }
    .alphabetNav > ul > li {
        position: static;
        white-space: nowrap;
        padding: 10px 25px;
        margin: 3px 3px 3px 3px;
        border-radius: 4px;
    }

    .alphabetNav > ul > li > span {
       z-index: 105;
       position: relative;
    }

    .alphabetNav > ul > li:first-child {
        margin-left: 15px;
    }
    .alphabetNav > ul > li:last-child {
        margin-right: 15px;
    }
    .alphabetNav > ul > li .alphabetWrap {
        left: auto;
        top: auto;
    }

    .alphabetNav > ul > li.active .alphabetWrap {
        transform: scaleY(1) translateX(-30px) translateY(15px);
        opacity: 1;
    }

    .alphabetNav > ul > li > .alphabetWrap::before {
        top: 4px;
        left: 38px;
    }

    .alphabetNav > ul > li .alphabetWrap ul {
        flex-direction: column;
    }
    .alphabetNav > ul > li .alphabetWrap ul li{
        min-width: 77px;
    }
    .alphabetNav > ul > li.active {
        background-color: #FBF1DC;
        color: #452886;
    }
    .alphabetNav > ul > li > .alphabetWrap > ul > li.active {
        background-color: #FBF1DC;
        color: #452886;
    }
    .logoBox {
        justify-content: space-between;
        align-items: flex-start;
        height: 136px;
    }
    .logoBox .headerWrap {
        padding-top: 0;
    }
    .logoBox .headerWrap .toggleBlock {
        margin-left: 5px;
    }
    .alphabetNav.notScroll > .alphabetWrap {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 15px;
    }
    .alphabetNav.notScroll > .alphabetWrap > ul {
        display: flex;
        justify-content: space-between;
        gap: 10px;
    }
    .alphabetNav.notScroll > .alphabetWrap > ul li {
        background-color: #F0F2F4;
        color: #333;
        cursor: pointer;
        border-radius: 6px;
        font-size: 12px;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 36px;
        font-weight: 700;
        padding: 6px 10px;
        transition: background-color 0.25s, color 0.25s;
        text-align: center;
        min-width: 48px;
        width: calc((100% - 40px) / 5);
    }
    .alphabetNav.notScroll > .alphabetWrap > ul li.selected {
        background-color: #FBF1DC;
        color: #452886;
    }
    .bookWrap[data-avatar="1"] {
        padding: 20px 13px;
    }
    .bookWrap[data-avatar="1"] .bookRow2 {
        column-count: 1;
    }
    .bookWrap[data-avatar="1"] .bookRow2 .bookItem {
        border-radius: 10px;
        padding: 9px 85px 10px 15px;
        width: 100%;
    }
    .bookWrap[data-avatar="1"] .categoryTitle {
        margin-bottom: 15px;
    }
    .bookWrap[data-avatar="1"] .bookItem::after {
        background-size: 8px;
        height: 24px;
        right: 10px;
        width: 24px;
    }
    .bookWrap[data-avatar="1"] .bookItem .newBadge {
        right: 44px;
        top: 10px;
    }
    .bookWrap[data-avatar="1"] .showRankingIcon .bookItem[data-rank],
    .bookWrap[data-avatar="1"] .bookItem[data-rank] {
        padding-left: 55px;
    }
    .bookWrap[data-avatar="1"] .bookItem[data-rank]:not(:nth-child(-n+5)) {
        display: none;
    }
    .bookWrap[data-avatar="1"] .bookItem[data-rank]::before {
        height: 32px;
        left: 12px;
        width: 32px;
    }
    .mainDetail .bookWrap[data-avatar="1"] .listDetail {
        display: block;
    }
    .mainDetail .bookWrap[data-avatar="1"] .listDetail .bookCell {
        margin-bottom: 0;
        width: 100%;
    }
    .mainDetail {
        border-top-width: 0;
    }
    .mainDetail .bookWrap[data-avatar="1"] {
        padding-top: 0;
    }
    .mainDetail .bookWrap[data-avatar="1"] .bookItem {
        margin-bottom: 10px;
        padding: 22px 85px 22px 15px;
    }
    .mainDetail .bookWrap[data-avatar="1"] .bookItem .newBadge {
        top: 23px;
    }
    #articlePage .cusContainer {
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 374px) {
    .logoBox picture {
        margin-top: 2px;
    }
    .header .logo {
        margin-top: 12px;
    }
    .logoBox img,
    .header .logo img {
        height: auto;
        width: 130px;
    }
    .header .inner .toggleBlock .txtToggle,
    .switchBlockTxt {
        font-size: 10px;
        padding-left: 0;
    }
}
@media screen and (max-width: 350px) {
    .logoBox picture {
        margin-top: 3px;
    }
    .header .logo {
        margin-top: 14px;
    }
    .logoBox img,
    .header .logo img {
        width: 100px;
    }
    .header .inner .toggleBlock .txtToggle,
    .switchBlockTxt {
        font-size: 9px;
    }
}

.logoWrap {
    display: flex;
    flex-direction: column;
    gap: 16px;
} 

.logoWrap img {
    cursor: unset;
}

.btn-round {
    border: none;
    outline: none;
    width: 100%;
    max-width: 96px;
    background-color: #F1EFF7;
    border-radius: 16px;
    font-size: 14px;
    font-weight: bold;
    color: #4F2AA5;
    padding: 6px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

@media screen and (max-width: 767px) {
    .logoWrap {
        gap: 8px;
    }
    .logoBox .headerWrap {
        align-self: flex-end;
        padding-bottom: 36px;
    }
}

.adultBanner {
    background-color: #F8F8F8;
    padding: 10px;
}
.adultBanner .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 0 auto;
}

.adultBanner img {
    cursor: pointer;
    width: calc(20% - 8px);
}

@media screen and (max-width: 767px) {
    .adultBanner .inner {
        gap: 8px 4px;
    }
    .adultBanner img {
        width: calc(50% - 4px);
    }
    .g-top {
        margin-bottom: 10px;
    }
}