@import url(//fonts.googleapis.com/earlyaccess/nanumgothiccoding.css);

.nanumgothiccoding * {
 font-family: 'Nanum Gothic Coding', monospace;
}

@font-face {
    font-family: 'NEXON Lv2 Gothic';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_20-04@2.1/NEXON Lv2 Gothic.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.impt_info {
    padding: 80px 60px 120px;
    box-sizing: border-box;
    overflow: hidden;
}

    /* 북 이미지 돌리기 */
    .book_img_box {
        height: 60vw;
        max-height: 560px;
        perspective: 1800px; 
        float: left;
       
    }
    .book_img { 
        /* ie 에선 안됨 */
        transform-style: preserve-3d; 
        width: auto;
        height: 100%;
        position: relative;
        transition: all 0.3s, box-shadow 0s, width 0s;  
        box-shadow: 15px 10px 15px 0 rgba(0,0,0,0.5);
    }
    .book_img img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%; 
        backface-visibility: hidden;
    }
    .book_img img.front {
        position: relative;
        z-index: 9
        /* transform: rotateY(0deg) translate3d(-1px,0px,21px); */
    }
    .book_img img.back {
        /* transform: rotateY(180deg) translate3d(0px,0px,21px); */
    }
    .book_img img.side {
        transform: rotateY(-90deg);
        background: #fff;
        z-index: 99;
    }
    .book_img_box:hover .book_img {
        transform: rotateY(30deg);
        cursor: url(../img/icon/cursor_move.png), pointer;
    }

    .book_img_show_back {
        transform: rotateY(180deg) !important;
        box-shadow: 15px 10px 15px 0 rgba(0,0,0,0.5);
    }
    
    /* 북 이미지 돌리기 끝 */

.book_impt_txt {
    float: right;
    width: 54%;
    height: 500px;
    padding: 10px 0 0;
    box-sizing: border-box;
}

.row_desc {
    font-size: 18px;
    margin-bottom: 10px;
}

.book_title {
    box-sizing: border-box;
    font-family: '양진체';
    font-size: 40px;
    margin-bottom: 10px;
}

.book_title > span {
    width: 100%;
    display: inline-block;
}

.writer, .publ_com, .price, .sale_price, .sp_charge {
    font-size: 15px;
    line-height: 2.5;
}  

.writer {
    margin-top: 20px;
}

.book_table {
    width: 100%;
    padding: 10px 0;
    box-sizing: border-box;
}

.book_table tr{
    width: 100%;
}

.book_table tr th {
    text-align: left;
    font-weight: 500;
    width: 15%;
}

.sale_price_num, .total_price_num {
    font-size: 20px;
    font-weight: 800;
}

.qty_box, .total_price_out {
    float: left;
    margin-right: 20px;
}

.total_price_out {
    line-height: 1.5;
}

#qty_input {
    width: 30px;
    height: 30px;
    border: 0;
    border: 1px solid #ccc;
    float: left;
    box-sizing: border-box;
    border-right: 0;
    text-align: right;
    padding-right: 5px;
    outline: none;
}

.qty_btn {
    width: 20px;
    height: 30px;
    font-size: 0;
    position: relative;
    float: left;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.qty_btn img {
    width: 100%;
    height: 48%;
    position: absolute;
    cursor: pointer;
}
.qty_btn img:hover{
    opacity: 0.6;
}

#qty_up {
    left:0;
    top:0;
}

#qty_down {
    left:0;
    bottom:0;
}

.book_btn {
    margin-top: 30px;
    width: 100%;
    overflow: hidden;
}
.book_btn button {
    height: 60px;
    box-sizing: border-box;
    border: 0;
    color: #fff;
    cursor: pointer;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 800;
}


.sm_btn {
    width: calc((50% - (5px * 2)) / 2 - 0.1px);
    margin-right: 5px;
    float: left;
}

.buy_btn {
    width: 50%;
    background: #af5d89;
    margin-bottom: 5px;
}

.sm_btn:last-child {
    margin-right: 0;
}

.basket_btn {
    background: #7a609c;
}
.present_btn {
    background: #576792;
}




/* 디테일 인포 시작 */
.detail_info {
    font-family: 'NEXON Lv2 Gothic';
    /* font-weight: 600; */
    border-top: 1px solid #ddd;
    width: 100%;
    overflow: hidden;
    padding: 80px 60px;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: 0.5px;
    word-spacing: 0.5px;
    color: #333;
}

.detail_info_big {
    display: block;
}
.detail_info_sm {
    display: none;
}

.detail_info_inner {
    width: 100%;
    max-width: 1100px
}


.buy_btn:hover { background: #974772; }
.basket_btn:hover { background: #654d85; }
.present_btn:hover { background: #49567c; }


.dt_section {
    width: 100%;
    overflow: hidden;
    margin-bottom: 80px;
}
.dt_section:last-child {
    margin-bottom: 0;
}

.left_title {
    width: 20%;
    float: left;
    font-size: 22px;
    font-weight: 800;
}

.right_text {
    width: 80%;
    float: right;

    padding-bottom: 80px;
    box-sizing: border-box;
    border-bottom: 1px solid #ddd;
}
.right_text img {
    width: 100%;
}


.more_text_box {
    overflow: hidden;
}

.top_intro_emthy {
    height: 220px;
    width: 100%;
}
.content_emthy {
    height: 510px;
}
.bot_info_emthy {
    height: 460px;
}

.more_emthy_box {
    display: none;
}

.first_sentence {
    display: inline-block;
    margin-top: 0;
    padding-bottom: 5px;
    box-sizing: border-box;
    font-size: 22px;
    border-spacing: 0;
    text-align: left;
    line-height: 2;
}

.first_sentence th{
    min-width: 80px;
    display: inline-block;
    color: #fff;
    background: #000;
    vertical-align: top;
    margin-right: 15px;
    text-align: center;
    border-radius: 7px 0 7px 0;
}

.first_sentence span {
    padding-bottom: 5px;
    border-bottom: 1px dashed #bbb;
    box-sizing: border-box;
    
}

.sent_page {
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    color: #a758a5;
    font-weight: 900;
    font-style: italic;
    margin-right: 7px;
}

.sent_box:last-child {
    margin-bottom: 0;
}

.book_info_img .right_text {
    text-align: center;
}
.book_info_txt .right_text {
    text-align: left;
}

.txt_more {
    margin-top: 40px;
    cursor: pointer;
    color: #666;
    font-size: 13px;
    position: relative;
}

.txt_more:hover {
    font-weight: 900;
    color: #333;
}

.txt_more_height {
    height: auto
}


@media screen and (max-width:1200px) {
    .book_img_box {
        height: 50vw;
    }

    .book_impt_txt {
        float: right;
        width: 50%;
        height: auto;
    }


    .writer, .publ_com, .price, .sale_price, .sp_charge {
        font-size: 16px;
    }  

    .book_table tr th {
        width: 25%;
    }
}

@media screen and (max-width:1100px) {
    .book_title {
        font-size: 38px;
    }
}


@media screen and (max-width:1050px) {
    .book_title {
        font-size: 3.5vw;
    }

    .book_img_box {
        height: 50vw;
    }

    .book_impt_txt {
        width: 43vw;
    }
}

@media screen and (max-width:970px) {
    .book_img_box {
        height: 49vw;
    }

    .book_impt_txt {
        width: 42vw;
    }
}


@media screen and (max-width:870px) {
    .book_img_box {
        height: 47vw;
    }

    .book_impt_txt {
        float: right;
        width: 41vw;
    }

    .total_price_out {
        margin-right: 0;
    }
    .row_desc {
        font-size: 16px;
    }
    .book_btn button {
        font-size: 1.8vw;
    }
}

@media screen and (max-width:820px) {
    .impt_info {
        padding: 80px 60px 120px;
        box-sizing: border-box;
        overflow: hidden;
    }

    .book_img_box {
        height: 46vw;
    }

    .book_impt_txt {
        width: 40vw;
    }

    .book_table tr th {
        width: 30%;
    }

    .book_btn button {
        font-size: 20px;
    }
    
    .sm_btn {
        width: calc((100% - (6px)) / 2 - 0.1px);
        margin-right: 6px;
        float: left;
    }

    .buy_btn {
        width: 100%;
        background: #af5d89;
        margin-bottom: 6px;
    }

    .book_title {
        font-size: 3.2vw;
    }

}



@media screen and (max-width:760px) {
    .book_img_box {
        height: 46vw;
        margin-right: 30px;
    }
}


@media screen and (max-width:650px) {
    .impt_info {
        text-align: center;
    }

    /* 북 이미지 돌리기 */
    .book_img_box {
        width: auto;
        height: 100vw;
        float: none;
        display: inline-block;
        margin-right: 0;
    }

    .book_impt_txt {
        float: none;
        width: 100%;
        height: auto;
        padding: 80px 0 0;
        box-sizing: border-box;
    }

    .book_title {
        font-size: 40px;
        margin-bottom: 0;
        padding: 30px 0 ;
        box-sizing: border-box;
    }
    .row_desc {
        font-size: 18px;
    }
    .writer, .publ_com, .price, .sale_price, .sp_charge, .qty {
        font-size: 18px;
    }  

    .book_table {
        width: auto;
        padding: 0;
        margin: 0 auto;
        text-align: left;
    }

    .book_table tr th {
        width: 40%;
    }

    .sm_btn {
        width: calc((50% - (5px * 2)) / 2 - 0.1px);
        margin-right: 5px;
        float: left;
    }

    .buy_btn {
        width: 50%;
        background: #af5d89;
        margin-bottom: 5px;
    }

    .detail_info_big {
        display: none;
    }
    .detail_info_sm {
        display: block;
    }

    .dt_section:last-child {
        margin-bottom: 0;
    }
    
    .left_title {
        width: auto;
        float: none;
        display: inline-block;
        box-sizing: border-box;
        margin-bottom: 20px;
    }

    .left_title > div {
        display: inline-block;
    }

    .left_title > div:nth-child(1) {
        margin-right: 1.2vw;
    }

    .right_text {
        width: 100%;
        float: none;
    }

    .sent_box {
        margin-bottom: 30px;
    }
}

@media screen and (max-width:600px) {
    .book_table tr th {
        width: 35%;
    }
}

@media screen and (max-width:580px) {
    .book_sentence .right_text {
        text-align: center;
    }
    .first_sentence {
        font-size: 22px;
        box-sizing: border-box;
        border-spacing: 0;
        text-align: center;
        display: inline-block;
    }
    
    .first_sentence tr {
        width: 100%;
        overflow: hidden;
    }
    .first_sentence th {
        min-width: auto;
        display: inline-block;
        color: #fff;
        background: #fff;
        border-right: 2px solid #000;
        color: #000;
        padding-right: 7px;
        box-sizing: border-box;
        margin:0 0 10px;
        text-align: center;
        line-height: 1.2;
        border-radius: 0;
        animation: sentence 1s infinite;
    }

    @keyframes sentence {
        0% {border-right: 2px solid #000; padding-right: 5px;}
        100% {border-right: 0; padding-right: 7px; }
    }

    .first_sentence td {
        width: 100%;
        display: block;
    }

    .first_sentence span {
        width: 100%;
    }

    .sent_box {
        text-align: left;
    }
}

@media screen and (max-width:550px) {
    .book_table tr th {
        width:26%;
    }
    
    .book_btn button {
        font-size: 18px;
    }
}

@media screen and (max-width:500px) {
    .detail_info {
        padding: 80px 40px;
    }
    .impt_info {
        padding: 80px 40px 80px;
    }

    .book_table tr th {
        width: 25%;
    }

    .qty_box, .total_price_out {
        float: left;
        margin-right: 10px;
    }

    .content_emthy {
        height: 485px;
    }
}



@media screen and (max-width:460px) {
    .book_title {
        font-size: 9vw;
        margin-bottom: 0;
    }

    .writer, .publ_com, .price, .sale_price, .sp_charge, .qty {
        font-size: 3.7vw;
    }  

    .book_table tr th {
        width: 22%;
    }

    .sale_price_num, .total_price_num {
        font-size: 5.5vw;
    }

    .sm_btn {
        width: calc((100% - (6px)) / 2 - 0.1px);
        margin-right: 6px;
        float: left;
    }

    .buy_btn {
        width: 100%;
        background: #af5d89;
        margin-bottom: 6px;
    }


    /* 디테일 인포 */
    .detail_info {
        font-size: 15px;
    }
    
    .dt_section {
        width: 100%;
        overflow: hidden;
        margin-bottom: 60px;
    }
    .dt_section:last-child {
        margin-bottom: 0;
    }
    
    .left_title {
        font-size: 22px;
    }
    
    .right_text {
        padding-bottom: 60px;
    }
    
    
    .more_text_box {
        overflow: hidden;
    }
    
    .top_intro_emthy {
        height: 220px;
        width: 100%;
    }
    
    .content_emthy {
        height: 470px;
    }

    .bot_info_emthy {
        height: 450px;
    }
    
    .more_emthy_box {
        display: none;
    }
    
    .first_sentence {
        font-size: 18px;
        text-align: center;
    }
    
    .sent_page {
        font-family: Verdana, Geneva, Tahoma, sans-serif;
        color: #a758a5;
        font-weight: 900;
        font-style: italic;
        margin-right: 7px;
    }
    
    .sent_box:last-child {
        margin-bottom: 0;
    }
    
    .book_info_img .right_text {
        text-align: center;
    }
    .book_info_txt .right_text {
        text-align: left;
    }
}


@media screen and (max-width:430px) {
    .impt_info {
        padding: 80px 30px 80px;
    }

    .detail_info {
        padding: 60px 30px;
    }

    .row_desc {
        font-size: 16px;
        margin-bottom: 0;
    }

    .book_title {
        font-size: 9vw;
    }

    .book_table tr th {
        width: 22%;
    }
    .qty_box {
        margin-right: 10px;
    }
}

@media screen and (max-width:390px) {
    .row_desc {
        font-size: 4vw;
    }

    .book_title {
        font-size: 8.1vw;
    }

    .book_table tr th {
        width: 20%;
    }
    .qty_box {
        margin-right: 10px;
    }

    .txt_more {
        margin-top: 30px;
        font-size: 12px;
    }
}

@media screen and (max-width:350px) {
    .book_title {
        font-size: 8.5vw;
        margin-bottom: 0;
    }

    .writer, .publ_com, .price, .sale_price, .sp_charge, .qty {
        font-size: 4.1vw;
    }  

    .book_table tr th {
        width: 28%;
    }

    .sale_price_num, .total_price_num {
        font-size: 7vw;
    }
}