#header_wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background-color: #FFF;
    z-index: 530;
}
#header {
    position:relative;
    float: left;
    width:100%;
    height:70px;
    border-bottom: solid 1px #ccc;
}
#header_logo {
    position: relative;
    float: left;
    height: 70px;
    width: 315px;
    background-position: 10px;
    background-image: url('/pc/images/programming-fun_subtitle.png');
    background-repeat: no-repeat;
    background-size: 300px;
    z-index: 531;
    cursor: pointer;
}
#header_right {
    position: relative;
    float: right;
    margin-top: 20px;
    width: 238px;
    height:50px;
}

#account_info_area {
    position: relative;
    display: block;
    float:left;
    width:80px;
    height:42px;
    margin-top:0px;
    overflow: visible;
}

#menu_area {
    position: fixed;
    top: 70px;
    left:0;
    width: 100%;
    height: 30px;
    background-color: #000;
}
#menu_btn_wrapper {
    position:relative;
    height:30px;
    width:100%;
    margin:0px auto;
}
#main_wrapper {
    position: relative;
    width:100%;
    margin-top: 70px;
}
.title_area {
    position: relative;
    clear:both;
    overflow: visible;
    left:10%;
    width:80%;
    background-color: transparent;
}
.title_area_top {
    position: relative;
    clear:both;
    width:100%;
    height:28px;
    margin:0 auto;
    text-align: center;
    vertical-align: baseline;
    font-size: 1.3em;
    margin-top: 20px;
    background-color:#00356c;
    color:white;
    font-weight: bold;
}
#skill_area {
    position: relative;
    clear:both;
    overflow: visible;
    left:10%;
    width:80%;
    background-color: transparent;
}
#technical_summary {
    position: relative;
    clear: both;
    float: left;
    border-right: solid 1px #999;
    border-left: solid 1px #999;
    border-bottom:  solid 1px #999;
    width: calc(100% - 12px);
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 0.8em;
}
.skill_L {
    position: relative;
    clear: both;
    float: left;
    border-right: solid 1px #999;
    border-left: solid 1px #999;
    border-bottom:  solid 1px #999;
    width: calc(35% - 12px);
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 0.8em;
    height:35px;
}
#inquiry_area {
    position: relative;
    clear: both;
    left:10%;
    border-right: solid 1px #999;
    border-left: solid 1px #999;
    border-bottom:  solid 1px #999;
    width: calc(80% - 52px);
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 0.8em;
}
.skill_R {
    position: relative;
    float: left;
    border-right: solid 1px #999;
    border-bottom:  solid 1px #999;
    width: calc(65% - 11px);
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 0.8em;
    height:35px;
}
#main_book_area {
    position: relative;
    clear:both;
    overflow: visible;
    left:10%;
    width:80%;
    height:calc(45vh + 25px);
    background-color: rgb(249, 250, 194);
}
#main_book_area_left {
    position: relative;
    clear:both;
    float:left;
    width:35%;
    height:42vh;
    margin-top: 2.5%;
    margin-bottom: 20px;
    background-color:transparent;
}
#main_book_area_right {
    position: relative;
    float:right;
    width:65%;
    min-height:45vh;
    margin-top: 5px;
    padding-top: 20px;
    margin-bottom: 20px;
    background-color:transparent;
}
#book_title {
    position: relative;
    min-height: 40px;
    padding: 0 15px;
    font-weight: bold;
    font-size:1.2em;
}
#book_desc {
    position: relative;
    padding: 0 15px;
    margin-top:20px;
    height: calc(40vh - 60px);
    overflow-y: scroll;
}
#buy_area {
    position: relative;
    padding: 0 0px;
    margin-top: 0px;
    left: 0%;
    width:80%;
    left:10%;
    background-color: rgb(249, 250, 194);
}
#buy {
    position: relative;
    padding-bottom: 20px;
    margin: auto;
    width: 127px;
    left: 0%;
}
#item_title_wrapper {
    position: relative;
    clear:both;
    overflow: visible;
    margin-top:40px;
    left:0%;
    width:100%;
    border-bottom: solid 1px #DDD;
    background-color: transparent;
    
}
#item_title {
    position: relative;
    clear:both;
    width:100%;
    height:28px;
    margin:0 auto;
    text-align: center;
    vertical-align: baseline;
    font-size: 1.3em;
    margin-top: 20px;
    background-color:#00356c;
    color:white;
    font-weight: bold;
}
#footer_wrapper{
    position: relative;
    width: 100%;
    background-color: #00356c;
    color: #FFF;
}
#footer_area {
    position: relative;
    width: 80%;
    left: 10%;
    margin-top: 20px;
    padding-bottom: 30px;
    background-color: #00356c;
    color: #FFF;
}
#footer_area a {
    text-decoration: underline;
    color: #FFF;
}
#footer_area a :hover{
    text-decoration: underline;
    color: rgb(68, 55, 255);
}
#footer_left {
    position: relative;
    margin-top:25px;
    width: 33%;
    clear: both;
    float: left;
    font-size: 0.8em;
}
#footer_center {
    position: relative;
    margin-top:25px;
    width: 33%;
    float: left;
    font-size: 0.8em;
}
#footer_right {
    position: relative;
    margin-top:25px;
    width: 33%;
    float: left;
    font-size: 0.8em;
}
#footer_bottom_warpper {
    width: 100%;
    height:25px;
    background-color:#000;
    color:#FFF;
}
#footer_bottom {
    position: relative;
    margin: auto;
    float:right;
    font-size: 0.7em;
    float: right; 
    padding-right:10px;
    padding-top:5px;
    padding-bottom:5px;
}
#footer_bottom a {
    text-decoration: none;
    color: #FFF;
}
#footer_bottom a :hover {
    text-decoration: none;
    color: rgb(68, 55, 255);
}
.pointer {
    cursor:pointer;
}
.link {
    display: block;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index: 1;
    background-color: transparent;
}
.link a {
    color:#00356c;
}
.link a:hover {
    cursor: pointer;
    color:tomato;
}
#shipping_logo_area {
    position: relative;
    float:right;
    width:100px;
    height:55px;
    margin-top:0px;
    background-image: url('/pc/images/shipping_free_icon.png');
    background-repeat: no-repeat;
    background-position: left;
    background-size: 100px 46px;
    transition: width 3s;
}
#shipping_logo_area:hover {
    width: 500px;
}



#books {
    position: relative;
    float:left;
    width:70px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#items {
    position: relative;
    float:left;
    width:70px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#about {
    position: relative;
    float:left;
    width:150px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#regist {
    position: relative;
    float:left;
    width:70px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#faq {
    position: relative;
    float:left;
    width:100px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#update {
    position: relative;
    float:left;
    width:140px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#company {
    position: relative;
    float:left;
    width:120px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#blog {
    position: relative;
    float:left;
    width:70px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#inquiry {
    position: relative;
    float:left;
    width:70px;
    height:20px;
    margin-top:5px;
    margin-left:1%;
    font-size:0.8em;
    text-align: center;
    color: #FFF;
    z-index: 1;
}
#detail_wrapper {
    position:relative;
    float: left;
    width: 100%;
}
#detail_pic_area {
    position:relative;
    clear: both;
    float: left;
    width: 50%;
    height:50vh;
    
}
#main_picture {
    position: relative;
    width: 100%;
    height: 70%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.thumbnail {
    position:relative;
    float:left;
    width:60px;
    height:60px;
    background-size:contain;
    background-repeat: no-repeat;
    background-position: center;
    border: solid 1px #999;
}
#thumbnail_explain {
    position: relative;
    clear: both;
    font-size: 1em;
    margin-left: 5px;
    margin-top: 5px;
}
#detail_desc_area {
    position:relative;
    float: left;
    width: 35%;
    min-height:50vh;
    background-color: transparent;
}
#detail_title {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 10px);
    min-height: 100px;
    color: #555;
    background-color: white;
    font-size:1.5em;
    border-bottom: solid 1px #ccc;
}
#detail_price {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 10px);
    min-height: 50px;
    color: #F00;
    background-color: white;
    font-size:1.5em;
    border-bottom: solid 1px #ccc;
}
#detail_desc {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 10px);
    min-height: 100px;
    color: #333;
    background-color: white;
    font-size:0.9em;
    /* border-bottom: solid 1px #ccc;*/
}
#detail_cart_ctrl_area {
    position:relative;
    float: left;
    width: calc(100% - 50% - 35%);
    min-height:50vh;
    background-color: transparent;
}
#detail_cart_btn_area {
    position:relative;
    float: left;
    margin: 10px 5px 10px 5px;
    border-radius: 10px;
    border: solid 1px #ccc;
    width: calc(100% - 10px);
    min-height: 300px;
}
#cart_ctrl_price {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 10px);
    min-height: 30px;
    color: #F00;
    background-color: white;
    font-size:1.5em;
}
#cart_ctrl_shipping_fee {
    position:relative;
    float: left;
    margin-top: 0px;
    margin-left: 5px;
    width: calc(100% - 10px);
    color: #333;
    font-size:0.8em;
    font-weight: bold;
    margin-bottom: 10px;
}
#cart_ctrl_area_qty {
    position:relative;
    float: left;
    margin-top: 0px;
    margin-left: 5px;
    width: calc(100% - 5px);
    min-height: 20px;
}
#cart_ctrl_area_in_btn {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 10px);
    min-height: 50px;
    background-position: center;
    background-image: url('/pc/images/cart_in_off.png');
    background-repeat: no-repeat;
    background-size:contain;
}
#cart_ctrl_area_stock {
    position:relative;
    float: left;
    margin-top: 10px;
    margin-left: 5px;
    width: calc(100% - 5px);
    min-height: 20px;
}
.uline_10 {
    position:relative;
    clear: both;
    width:100%;
    height:10px;
    border-bottom: solid 1px #DDD;
}
.uline_20 {
    position:relative;
    clear: both;
    width:100%;
    height:20px;
    border-bottom: solid 1px #DDD;
}
.uline_30 {
    position:relative;
    clear: both;
    width:100%;
    height:30px;
    border-bottom: solid 1px #DDD;
}
.uline_40 {
    position:relative;
    clear:both;
    width:100%;
    height:40px;
    border-bottom: solid 1px #DDD;
}
.window_mask {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background-color: transparent;
    z-index: -1;
}
.black_mask {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background-color: transparent;
    z-index: -1;
}
#cartInPopup {
    position: fixed;
    width: 380px;
    height: 175px;
    top: 45px;
    left: calc(100% - 440px);
    opacity: 0;
    background-image: url('/pc/images/cartInPopup.png');
    z-index: 550;
}

#popup_area {
    position: fixed;
    width: 200px;
    height: 150px;
    top: calc(50% - 75px);
    left: calc((100% - 300px) / 2);
    background-color: rgb(255, 250, 184);
    border: solid 1px #555;
    border-radius: 5px;
    display: none;
    z-index: 12;
    transition: all 1s;
}
#popup_title_area {
    position: relative;
    width: calc(100% - 10px);
    height: 25px;
    border-radius: 5px;
    border: solid 1px #999;
    margin-top: 5px;
    margin-left: 5px;
    background-color: orange;
}
#popup_title {
    position: relative;
    width: 100%;
    margin: auto;
    text-align: center;
    font-size:1.1em;
}
#popup_body {
    position: relative;
    width: calc(100% - 40px);
    height: calc(100% - 120px);
    margin: 20px 20px;
    text-align: left;
    font-size: 0.8em;
    /* background-color: yellowgreen; */
}
#popup_btn {
    position: relative;
    width: 100px;
    height: 25px;
    margin: 0 auto;
    margin-top: 10px;
    background: linear-gradient(#FFCF6B, #f9aa37);
    border-radius: 5px;
    text-align: center;
    padding-top: 5px;
}
#cart {
    position: fixed;
    left: 5%;
    top: calc(5% + 70px);
    width: 90%;
    /* min-height: calc(300px); */
    height: calc(90% - 70px);
    background-color: #FFF;
    border: solid 1px #777;
    display: none;
    z-index: 101;
}
#cart_header {
    position: relative;
    width: 100%;
    height:25px;
    background-color: yellowgreen;
    z-index: 11;
}
#cart_close_X {
    position: relative;
    float: right;
    width: 25px;
    height: 25px;
    text-align: center;
    /* background-image: url('/pc/images/closeIconWhite.png'); */
    background-position: center;
    background-repeat: no-repeat;
    background-size: 25px 25px;
    background-color: transparent;
}
#cart_header_left {
    position: relative;
    float: left;
    margin: auto;
    width: calc(100% - 25px);
    height: 25px;
    text-align: center;
    font-weight: bold;
    font-size: 1.1em;
    color: #FFF;
    background-color: transparent;
}
#cart_body {
    position: relative;
    width: calc(100% - 20px);
    max-height: calc(90% + 25px);
    padding: 5px 10px 5px 10px;
    overflow-y: auto;
}
#cart_left_wrapper {
    position: relative;
    float: left;
    width: calc(100% - 190px - 25px);
    padding: 0 0px;
    background-color: transparent;
}
#cart_right_wrapper {
    position: fixed;
    left: calc(95% - 190px - 40px);
    top: calc(70px + 5% + 35px);
    width: 190px;
    min-height:70px;
    padding: 10px 10px;
    font-size: 1em;
    border:solid 1px #777;
    border-radius: 5px;
    /* background-color:rosybrown; */
}
#cart_right_content {
    position: relative;
    height: 1000px;
    width: 100%;
}
#cart_subtotal {
    font-weight: bold;
}
#gotoRegister {
    position: relative;
    width: calc(100% - 20px);
    height: 35px;
    margin-top:20px;
    margin-left: 10px;
    padding-top: 10px;
    background: linear-gradient(#FFCF6B, #f9aa37);
    border-radius: 5px;
    text-align: center;
    font-weight: bold;
}
#gotoRegister:hover {
    background: linear-gradient(#f9aa37, #FFCF6B);
    cursor: pointer;
}
#closeCart {
    position: relative;
    width: calc(100% - 20px);
    height: 35px;
    margin-top:7px;
    margin-left: 10px;
    padding-top: 10px;
    background: linear-gradient(#FFCF6B, #f9aa37);
    border-radius: 5px;
    text-align: center;
    font-weight: bold;
}
#closeCart:hover {
    background: linear-gradient(#f9aa37, #FFCF6B);
    cursor: pointer;
}
.cart_picture {
    position: relative;
    float: left;
    width: 20%;
    height: 150px;
    border-bottom: solid 1px #777;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.cart_desc_wrapper {
    position: relative;
    float: left;
    width: 60%;
    height: 150px;
    border-bottom: solid 1px #777;
    background-color: transparent;
}
.cart_desc {
    position: relative;
    float: left;
    width: 100%;
    height: 120px;
    background-color: transparent;
}
.cart_desc_bottom_wrapper {
    position: relative;
    float: left;
    width: 100%;
    height: 30px;
    background-color: transparent;
}
.cart_unit_price {
    position: relative;
    float: left;
    width: 50%;
    height: 30px;
    background-color: transparent;
    overflow: hidden;
}
.cart_qty {
    position: relative;
    float: right;
    width: calc(50% - 40px);
    height: 30px;
    background-color: transparent;
}
.cart_item_del {
    position: relative;
    float: right;
    width: 40px;
    padding-top:3px;
    background: linear-gradient(#FFCF6B, #f9aa37);
    font-size: 0.8em;
    text-align: center;
    border-radius: 5px;
}
.cart_item_del:hover {
    background: linear-gradient(#f9aa37, #FFCF6B);
    cursor: pointer;
}
.cart_price {
    position: relative;
    float: left;
    width: calc(20% - 25px);
    height: 150px;
    padding-right: 10px;
    background-color:transparent;
    border-bottom: solid 1px #777;
    text-align: right;
}
.sub_window {
    position: fixed;
    background-color: rgb(255, 250, 184);
    border: solid 1px #555;
    border-radius: 5px;
    display: none;
    z-index: 12;
}
#speech_bubble {
    position: fixed;
}
#speech_bubble_header {
    position: relative;
    width:100%;
    height:20px
}
#speech_bubble_body {
    position: relative;
    clear: both;
    width: 100%;
    padding: 5px 5px;
    background-color: rgb(255, 250, 184);
    border: solid 1px rgb(255, 250, 184);
    border-radius: 5px;
}
#account_menu {
    position: fixed;
}
#account_menu_header {
    position: relative;
    width:100%;
    height:20px
}
#account_menu_body {
    position: relative;
    clear: both;
    width: 100%;
    padding: 5px 5px;
    background-color: rgb(255, 250, 184);
    border: solid 1px rgb(255, 250, 184);
    border-radius: 5px;
}
.account_ctrl {
    position:relative;
    clear:both;
    float:left;
    margin-left:10px;
    width:calc(100% - 20px);
    height:20px;
    margin-top: 1px;
    font-size: 0.8em;
    text-decoration: none;
    background-color: transparent;
}
.account_ctrl a {
    text-decoration: none;
    color:#333;
}
.account_ctrl a:hover {
    text-decoration: none;
    color:coral;
}
.std_button {
    position: relative;
    float: left;
    width: 100px;
    padding-top:3px;
    background: linear-gradient(#FFCF6B, #f9aa37);
    font-size: 0.8em;
    text-align: center;
    border-radius: 5px;
}
.std_button:hover {
    background: linear-gradient(#f9aa37, #FFCF6B);
    cursor: pointer;
}
.disabled_button {
    position: relative;
    float: left;
    width: 100px;
    padding-top:3px;
    background-color: #CCC;
    font-size: 0.8em;
    text-align: center;
    border-radius: 5px;
}
.border_only {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 27px;
    border: solid 1px #999;
    background-color: #FFCF6B;
}