* {margin: 0; padding: 0;}


html, body {
    background: #000000;
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    color:  #ffffff;
    height:  100%;
}
a { 
    text-decoration: none !important; 
    color:  rgba(255,255,255, 0.4);
}
a:visited { color:  rgba(255,255,255, 0.4) !important }
a:active,
a:hover   { color:  rgba(255,255,255, 0.8) !important }

.text .quote,
p {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}

/*.shoji { display:none }*/

.languages,
.community { opacity: 0 }
#page {
    opacity: 0;
    height:  100%;
}
.content { 
    position:  absolute;
    height:  100%;
    margin-left: 50%;
}
.content-wrap { 
    height:  100%;
    margin-left: -400px;
    width:  800px;
    padding:  20px 0 100px;
}

h1 {
    margin:  30px;
    text-align: center;
    font-size: 32px;
    font-weight: normal;
    font-style: italic;
}
h2 {
    margin:  70px 30px 30px;
    text-align: center;
    font-size: 32px;
    font-weight: normal;
    font-style: italic;
}
h2 span {
    display: inline-block;
    background: #000000;
    padding:  0 20px;
}
h2 .hr {
    height:  1px;
    margin:  0 40px -20px;
    background: rgba(255,255,255, 0.25);
}
h2 img { 
    height: 80px;
    margin-top: -20px;
}
h3 {
    margin:  0px 0px 20px;
    text-align: center;
    font-size: 24px;
    font-weight: normal;
    font-style: italic;
    text-indent: 0;
}

.text {
    margin:  50px 150px;
    font-size: 18px;
    line-height:  28px;
    color:  rgba(255,255,255, 0.5);
    text-align: justify;
    text-indent: 40px;
    /*font-style: italic;*/
}
.en .text {
    text-indent: 0;
}
.en .text p + p {
    text-indent: 40px;
}
.read {
    text-indent: 0;
    font-size: 20px;
    text-align: center;
    margin: 50px auto -75px;
    padding: 10px;
    background: #444;
    width: 300px;
    height: 30px;
    border-radius: 30px;
    color: #aaa;
    position: relative;
    z-index: 1000;
}
.read.no-hang {
    margin-top: 10px;
    margin-bottom: 10px;
}
.read.minus-hang {
    margin-top: -25px;
    margin-bottom: 0px;
}
.read a { 
    text-decoration: none!important; 
    color:  rgba(255,255,255, 1);
}
.read a:visited { color:  rgba(255,255,255, 1)!important }
.read a:active,
.read a:hover   { color:  rgba(255,255,255, 0.8) !important }
a:hover .read  { background: #999 ; color: #000 !important }

.book-text {
    background: #fff;
    color: #444;
    padding: 0;
    margin: -20px 0px 0;
    padding: 70px 100px;
}
.text img.book-cover {
    display: block;
    width: 150px;
    float: none;
    margin: 0 auto 20px;
    border-radius: 5px;
    margin-top: -40px;
}
.text img.book-banner {
    display: block;
    width: 500px;
    float: none;
    margin: 0 auto 20px;
    border-radius: 5px;
    margin-top: -40px;
}
.book-text img.book-banner {
    width: 300px;
    margin-top: 20px;
} 
.book-text h3 { 
    padding-left: 70px;
    padding-right: 70px;
    text-align: center;
    font-style: italic;
    font-weight: normal;
}


.name-en, .name-ru {
    display: block;
    margin:  20px auto 0;
    width:  50px;
}
.name-anno-ruini {
    display: block;
    margin:  50px auto 0;
    width:  250px;
}
.name-anno-ruini-small {
    display: block;
    margin:  20px auto 50px;
    width:  250px;
    width: 100px;
}
.name-ru {
    margin:  30px auto 0;
    width:  80px;
}
.languages {
    float:  right;
    z-index: 10000;
}
.languages-wrap {
    position: absolute;  
    z-index: 10000;
    left:  180px;
    padding:  0px;
    color:  rgba(255,255,255, 0.4);
    font-size:  16px;

}
.languages a, 
.languages span {
    float:  right;
    margin: 0 10px;
    font-style: italic;
    color:  rgba(255,255,255, 0.4);
    text-decoration: none!important;
}
.languages a:visited { color:  rgba(255,255,255, 0.4) }
.languages a:active,
.languages a:hover   { color:  rgba(255,255,255, 0.8) !important }
.languages span.current { color:  rgba(255,255,255, 1) }

.footer a {
    color:  rgba(255,255,255, 0.4);    
}
.footer a:visited { color:  rgba(255,255,255, 0.4) }
.footer a:active,
.footer a:hover   { color:  rgba(255,255,255, 0.8) !important }

.z {
    clear:  both;
    height:  1px;
    margin-bottom:  -1px;
}

.footer {
    padding: 100px 0 50px;
    text-align: center;
    color:  rgba(255,255,255, 0.5);
    font-style: italic;
}

.social {
    text-align: center;
    margin-top: 40px;
}
.social img {
    height: 40px;
}
.social img:hover {
    opacity: 0.8;
} 
.community {
    margin-top: -40px;
    z-index: 1000000;
    position: relative;
    padding:  0px 20px;
}
.community-one {
    float: left;
    width: 380px;
}
.community-one img {
    display:  block;
    margin:  0 auto;
    width: 180px;
}
.community-one .sub {
    margin:  5px 100px;
    font-size: 16px;
    font-style: italic;
    text-align: center;
    color:  rgba(255,255,255, 0.5);
}
.community a:hover .sub, 
.community a:active .sub {
    color:  rgba(255,255,255, 1) !important;
} 

.books {
    margin:  0 0 100px;
    padding:  0 82px;
}
.book {
    float: left;
    width: 212px;
    text-align: center;
}
.book img {
    display: block;
    margin:  0 auto;
    width:  120px;
    border-radius: 3px;
}
.book-title {
    margin-top: 0px;
    font-size: 20px;
}
.book-title.disabled { color: rgba(255,255,255, 0.5); }
.book-sub,
.book-author,
.book-state {
    margin:  20px 40px;
    font-size: 16px;
    font-style: italic;
    color:  rgba(255,255,255, 0.5);
}

.book-author {
    margin-top:  0
}

.books-ru .book-sub {
    margin:  20px;
}
.shifter-wrap {
    pointer-events: none;
    position: fixed;
    width:  100%;
    height:  100%;
    z-index: 10000;
}
.shifter { 
    position:  absolute;
    width:  100%;
    height: 100%;
}
.shifter.left {
    left:  0;
    width:  50%;
}
.shoji {
    position:  absolute;
    top:  0; bottom: 0;
    background-image:  url(shoji.jpg);
    background-size: contain;
}
.shoji.left {
    left:  0;
    width:  100%;
    background-position: top right;
    border-right: 2px solid rgba(0,0,0, 1);
    box-shadow: -6px 0px 10px 7px rgba(0,0,0,1);
}
.shoji.right {
    right: 0;
    width: 50%;
    background-position: top left;
    border-left: 2px solid rgba(0,0,0, 1);
    box-shadow: 6px 0px 10px 7px rgba(0,0,0,1);
}
.shoji.first {}
.shoji.left.second {
    margin-left:  -30%;
}
.shoji.left.third {
    margin-left:  -60%;
}
.shoji.right.second {
    margin-right:  -15%;
}
.shoji.right.third {
    margin-right:  -30%;
}

.shop img { display: block; width: 100px; }
.shop {
    width: 280px; float: right;
}
.shop a { 
    opacity: 0.75;
    display: block; 
    float: right;
    background: #ffffff;  
    margin: 0px 15px 25px; 
    border-radius: 5px; 
    padding: 2px 5px;
    cursor: pointer;
    -webkit-transition: opacity 0.15s ease-in-out;
    -moz-transition:    opacity 0.15s ease-in-out;
    transition:         opacity 0.15s ease-in-out;
}
.shop a:hover {
    opacity: 1;
}
.shop a.disabled {
    opacity: 0.2;
}
.shop-cover img.book-cover { 
    float: left; 
    margin: 0 0 0 15px; 
    width: 180px 
}
.shop-cover { 
    margin-top: 0px;
}
.shop-cover .title { 
    text-indent: 0;
    color: #fff;
    margin: 0 0 10px;
    text-align:center;
}
.shop-cover .description {
    margin: 20px 0;
}
.video {
    margin: 0 auto;
    width: 560px;
    
}
.video iframe {
    aspect-ratio: 16/9;
    width: 560px;
}

.book-announce {
    margin: 0 auto;
    width: 600px;
    clear: both;
}
.book-announce-book {
    display: block;
    width: 200px;
    float: left;
    margin-right: 50px;
}
.book-announce-focus {
    display: block;
    width: 300px;
    margin: -30px auto;
}
.book-announce-text {
    width: 350px;
    float: right; 
}
.book-announce-text li,
.book-announce-text .inner-text {
    font-size: 18px;
    line-height:  28px;
    color:  rgba(255,255,255, 0.5);
    text-align: justify;
    text-indent: 0;
}
.book-announce-text h2 {
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 0;
    text-align: left !important;
}
.book-announce-text .inner-author {
    color:  rgba(255,255,255, 0.5);
    margin-top: -10px;
    text-align: left;
}
.book-announce-promo ul,
.book-announce-text ul {
    margin-top: 20px;
    list-style: none;
}
.book-announce-promo ul li::before,
.book-announce-text ul li::before {
    content: "— ";
}
.book-announce-promo ul li,
.book-announce-text ul li {
    margin-bottom: 10px;
    margin-left: 50px;
    text-indent: -20px;
    text-align: left;
}
.book-announce-promo a,
.book-announce-text a { 
    color:  rgba(255,255,255,1);
}
.ru .book-announce-text p,
.en .book-announce-text p + p {
    text-indent: 40px;
}
.book-announce-promo a.s,
.book-announce-text a.s { 
    opacity: 0.75;
    display: block; 
    float: left;
    width: 100px;
    background: #ffffff;  
    margin: 10px 15px 0px 0; 
    border-radius: 5px; 
    padding: 2px 5px;
    cursor: pointer;
    -webkit-transition: opacity 0.15s ease-in-out;
    -moz-transition:    opacity 0.15s ease-in-out;
    transition:         opacity 0.15s ease-in-out;
}
.book-announce-promo a.s:hover,
.book-announce-text a.s:hover {
    opacity: 1;
}
.book-announce-text a img {
    width: 100px;
    display: block;
}

.author-more,
.author {
    margin: 0px 0 -20px;
    text-align: center;
    font-size: 18px;
    color:  rgba(255,255,255, 0.5);
}
.author-more {
    margin: 0px 0;
}
.text.shop-cover {
    margin-left: 50px;
    margin-right: 50px;
}
.quote {
    font-style: italic;
    width: 400px;
    margin: 10px auto 30px;
    text-indent: -18px;
}
.quote span {
    color: #fff;
    font-size: 32px;
}
.quote-author {
    text-align: left;
    padding-left: 100px;
}
.shop-announce { text-align: center; text-indent:0; margin-top: -20px }
.en .shop-announce { margin-left: auto; width: 100px; margin-right: auto }
.shop-announce a.s { 
    opacity: 0.75;
    display: block; 
    float: left;
    width: 100px;
    background: #ffffff;  
    margin: 10px 15px 0px 0; 
    border-radius: 5px; 
    padding: 2px 5px;
    cursor: pointer;
    -webkit-transition: opacity 0.15s ease-in-out;
    -moz-transition:    opacity 0.15s ease-in-out;
    transition:         opacity 0.15s ease-in-out;
}
.shop-announce a.s img {
    display: block;
    width: 100px;
}
.sample-start {
    color: #000;
    background: #ffffff;
    border-radius: 3px;
    padding: 20px 30px;
    margin: 20px 0;
    font-weight: 500;    
}
.button { 
    text-align: center;
    opacity: 0.75;
    display: block; 
    width: 200px;
    background: #000;  
    margin: 20px auto 0;
    border-radius: 5px; 
    padding: 10px 15px;
    cursor: pointer;
    color: #fff;
    font-size: 18px;
    font-style: italic;
    text-indent: 0;
    -webkit-transition: opacity 0.15s ease-in-out;
    -moz-transition:    opacity 0.15s ease-in-out;
    transition:         opacity 0.15s ease-in-out;
}  
.audio-box {
    width:650px; 
    margin: 0 auto; 
    text-align:center; 
    color: rgba(0,0,0,0.5)    
}
audio { width:600px }
.chapter-button { 
    opacity: 0.75;
    display: block; 
    background: #e5e5e5;
    color: #000000;
    margin: 10px auto 25px; 
    border-radius: 5px; 
    padding: 5px 0px;
    cursor: pointer;
    -webkit-transition: opacity 0.15s ease-in-out;
    -moz-transition:    opacity 0.15s ease-in-out;
    transition:         opacity 0.15s ease-in-out;
}
.chapter-button:hover {
    opacity: 1;
}
.audio-chapters {
    width: 500px;
    margin: 0 auto;
    border: 1px solid #e5e5e5;
    border-radius: 25px;
    padding: 40px 20px 40px 20px;
    display: none;
    margin-top: 10px;
}     
.audio-chapter {
    font-size: 20px; color: #000000;
    clear: both;
    text-align: left;
}
.audio-chapter audio {
    margin-top: -15px;
    margin-bottom: 40px;
    width: 400px;
    float: right;
}

.book-link-list .book-announce-focus {
    width: 100px;
}
.book-link-list .author {
    margin-bottom: -50px;
}




@media (max-width: 600px) {
    html, body {
        font-weight: 500;
    }
    .languages,
    .shoji { display: none }
    .content {
        margin-left: 0;
    }
    .content-wrap { 
        height:  100%;
        margin-left: 0;
        width:  100%;
        padding:  20px 0 100px;
    }
    .text {
        text-indent: 20px;
    }
    .en .text p + p {
        text-indent: 20px;
    }
    .text {
        margin-left: 20px;
        margin-right: 20px;
    }
    .book {
        float: none;
        text-align: center;
    }
    .book img {
        display: inline;
    }
    .community {
        margin-top: 20px;
    }
    .community-one {
        float: none;
        width: 100%;
        margin: 30px 0;
    }
    .community-one .sub {
        margin:  5px 10px;
    }
    .text img.book-banner {
        width: 100%;
    }
    .book-text {
        padding: 0px 30px;
        margin: 0;
    }
    .video {
        margin: 0;
        width: 100%;
    }
    .video iframe {
        width: 100%;
        aspect-ratio: 16/9;
    }
    .shop-cover img.book-cover { 
        margin: 0 auto 0;
        width: 180px;
        float: none;
    }
    .shop-cover .shop {
        float: none;
        width: 100%;
        text-align: center;
    }
    .shop a {
        display: inline-block;
        float: none;
        margin-bottom: 10px;
    }
    .shop-cover { 
        margin-top: 0px;
    }
    .shop-cover .title { 
        margin-top: 20px;
    }
    .book-announce {
        width: 100%;
    }
    .book-announce-book {
        float:none;
        width: 120px;
        margin: 0 auto;
    }
    .book-announce-focus {
        display: block;
        width: 150px;
        margin: -30px auto 0;
    }
    .description p {
        font-size: 16px;
        line-height: 26px;
    }
    .author-more {
        margin: 0 20px;
    }
    .quote-author { padding-left: 50px }
    .quote { 
        width: 200px;
        font-size: 16px;
        line-height: 26px;
    }
    .sample-start { padding: 10px 10px; margin: 20px -20px }
    .sample-start img { width: 100px !important }
    .sample-start h3 {
        font-size: 20px;
    }
    .book-announce-text {
        float: none;
        width: 250px;
        margin: 0 auto;
        text-align: center !important;
        font-size: 16px;
        line-height: 26px;
    }
    .book-announce-text li {
        text-align: left !important;
    }
    .book-announce-text .inner-author,
    .book-announce-text .inner-text,
    .book-announce-text h2 {
        text-align: center !important;
        margin-right: 0;
    }
    .audio-box { width: 350px }
    audio { width:250px }
    .audio-chapters {
        width: 300px;
    }
    .audio-chapter {
        font-size: 16px;
    }
    .audio-chapter audio {
        width: 200px;
    }
}
