/*------------------------------------*\
            ic_portal.css
\*------------------------------------*/
/*
    * Gerenral.......................
    * index-main-grid................
    * Banner.........................
    * breadcrumbs....................
    * left-side-container............
    * Content Item UI................
    * Media Query....................RWD Setting
        * General....................
*/





/*------------------------------------
            $Gerenral
------------------------------------*/

[role=button] {
    cursor: auto;
}

/*------------------------------------
            $Banner
------------------------------------*/
.banner-enddate-wrap {
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 3px 2.4%;
    background-color: rgba(0, 0, 0, 0.7);
}

.banner-enddate-wrap .banner-enddate {
    color: #fff;
    font-family: roboto;
    font-weight: 500;
    font-size: calc(0.625vw + 8px);
}

.banner-enddate .icon {
    margin-right: 5px;
    width: calc(0.625vw + 12px);
    height: calc(0.625vw + 12px);
    fill: #fff;
}

.banner-enddate-wrap .banner-enddate .date {
    margin-left: 5px;
    color: orange;
}


/*------------------------------------
            $index-main-grid
------------------------------------*/
.index-main-grid {
    display: grid;
    grid-template-columns: 18.2% 1fr ;
    grid-template-areas: 
        "breadcrumbs breadcrumbs"
        "filter filter"
        "left-side main";
    column-gap: calc(1.875vw + 12px);
}

.breadcrumbs-Area {
    grid-area: breadcrumbs;
}

.content-filter {
    grid-area: filter;
}

.left-side-container {
    grid-area: left-side;
}

.rl-product-container {
    grid-area: main;
}


/*------------------------------------
            $breadcrumbs
------------------------------------*/
.breadcrumbs-Area{
    padding-top: calc(1.5625vw + 10px); /*15px-40px*/
    padding-bottom: 20px;
}
    .breadcrumbs-Area a,
    .breadcrumbs-Area a:focus,
    .breadcrumbs-Area a:active,
    .breadcrumbs-Area a:active:focus{
        color: #555555;
        font-size: calc(0.25vw + 13.2px);
    }
    .breadcrumbs-Area a:hover{
        color: #FFA204;
        text-decoration: underline;
    }

    .breadcrumbs-Area .fa-angle-double-right,
    .breadcrumbs-Item{
        margin-right: 10px;
    }

    .breadcrumbs-nolink{
        color: #555555;
        font-size: calc(0.25vw + 13.2px);
    }



/*------------------------------------
        $left-side-container
------------------------------------*/
.left-side-container .section {
    margin-bottom: 20px;
}

.left-side-container .section .section-title {
    font-weight: 400;
    background-color: #ff9f00; 
    color: #fff;
    font-size: calc(0.25vw + 13.2px);
    text-align: center;
    outline: none;
    padding: 8px 0px;
    font-weight: 500;
}

.special-promotion-radio-buttons {
    margin-top: 20px;
}

.special-promotion-radio-buttons .special-promotion-radio-button-container {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}

.special-promotion-radio-buttons label {
    color: #555555;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 0;
    cursor: pointer;
}

.special-promotion-radio-buttons input {
    position: absolute;
    opacity: 0;
    height: 0;
    width: 0;
    outline: none;
}

.special-promotion-radio-buttons .radio-mark {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 26px;
    min-height: 26px;
    margin-right: 10px;
    border: 2px solid #d1d1d1;
    border-radius: 50%;
    background-color: #ffffff;
}

.special-promotion-radio-buttons input:checked ~ .radio-mark:after {
    content: '';
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #ffa500;
}

.special-promotion-radio-buttons .popup-tnc-link {
    color:#ff9f00;
    font-size: 14px;
    text-decoration: underline;
}

.special-promotion-radio-buttons .radio-tooltip-container {
    display: none;
}

.special-promotion-radio-buttons .radio-tooltip-triangle::after {
    content: "";
    position: absolute;
    top: 50%;
    margin-left: 3px;
    border-top: 6px solid transparent;
    border-right: 10px solid #4d4d4d;
    border-bottom: 6px solid transparent;
    transform: translateY(-50%);
}

.special-promotion-radio-buttons .radio-tooltip {
    position: absolute;
    top: 50%;
    margin-left: 10px;
    padding: 5px 10px;
    background-color: #4d4d4d;
    color: #fff;
    font-size: 14px;
    transform: translateY(-50%);
    z-index: 1;
    white-space: nowrap;
}

.special-promotion-radio-buttons .radio-tooltip a,
.special-promotion-radio-buttons .radio-tooltip a:hover
.special-promotion-radio-buttons .radio-tooltip a:active
.special-promotion-radio-buttons .radio-tooltip a:focus:active {
    color: #ff9f00;
    text-decoration: underline;
}

.bestSeller-Area .ranking {
    list-style: none;
    padding-left: 0;
    padding-top: 20px;
}

.bestSeller-Area .ranking .circle {
    width: 28px;
    height: 28px;
    background-color: #ff9f00;
    border-radius: 50%;
    display: inline-block
}

.bestSeller-Area .ranking .circle .number {
    height: 28px;
    line-height: 28px;
    display: block;
    color: #FFF;
    text-align: center;
    font-size: 16px;
    font-weight: 600
}

.bestSeller-Area .ranking li {
    margin-bottom: 10px;
    word-wrap: break-word;
    line-height: 1.2;
}

.bestSeller-Area .ranking li:last-of-type {
    margin-bottom: 0;
}

.bestSeller-Area .ranking a,
.bestSeller-Area .ranking a:active,
.bestSeller-Area .ranking a:focus,
.bestSeller-Area .ranking a:active:focus {
    font-size: calc(0.125vw + 13.6px); /*16(1920px) , 14(320px)*/
    font-weight: 300;
    color: #555555;
    outline: none;
}

.bestSeller-Area .ranking a:hover{
    color: #FFA204;
    text-decoration: underline;
}

.divide-line {
    border-bottom: 2px solid rgb(219, 219, 219);
}

.moreInfo-container a {
    display: block;
    width: fit-content;
    margin: auto;
}

.moreInfo-container img{
    margin-bottom: calc(0.43365134431916735vw + 21.673894189071987px); /*30(1920px) , 25(767px)*/
}


/*------------------------------------
            $Filter
------------------------------------*/
.filter-panel, .fliter-wrap,
.filter-panel .show-wrap,
.filter-panel .sort-by-wrap,
.filter-panel .show-wrap .display-wrap{
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
}
.filter-panel .fliter-wrap,
.filter-panel .sort-by-wrap,
.filter-panel .show-wrap{
    margin-top: 10px;
    margin-bottom: 10px;
}
.filter-panel{
    margin-bottom: calc(0.9375vw + 12px); /*30px-15px*/
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.filter-panel .plus,
.filter-panel .minus{
    color: #FFA204;
    font-size: 1.125rem;
    font-weight: 400;
    width: 10px;
    height: 22px;
}

.filter-panel p.filter-title{
    color: #555555;
    font-weight: 500;
    margin-right: 20px;
}
.filter-panel .select{
    border: 1px solid #dbdbdb;
    background-color: #fff;
    color: #555555;
    cursor: pointer;
    display: inline-block;
    font-size: calc(15.6px + 0.125vw);;
    font-weight: 300;
    height: 40px;
    line-height: 40px;
    padding: 0 15px 0 20px;
    text-decoration: none;
    border-radius: 0px;
}
/*removing dropdown arrow for IE*/
select::-ms-expand { display: none; }

.filter-panel label{
    color: #555555;
    font-weight: 300; 
    font-size: calc(0.08680555555555555vw + 14.333333333333334px); /*15px-16px, 767-1920*/
    margin-bottom: 0;
}
.filter-panel .dropdown-backdrop { 
    display: none; 
}

    /*--- filter-wrap ---*/
    /*.fliter-wrap{ flex: 1; }*/
    .fliter-wrap .dropdown{ margin-right: 15px; }
    .filter-panel .dropdown:last-of-type{ margin-right: 0px; }
    .fliter-wrap, .sort-by-wrap, .display-wrap{ margin-right: calc(1.7346053772766694vw + 6.695576756287944px); } /*40px-20px, 1920-767*/
    .fliter-wrap .dropdown-menu{ 
        border-radius: 0;
        box-shadow: none;
        max-height: 350px;
        /*overflow-y: auto;*/
        padding: 27px 0 19px 0;
    }
    .fliter-wrap .dropdown-menu p.title{
        color: #000;
        font-weight: 500;
        text-transform: uppercase;
    }
    .fliter-wrap .open > .dropdown-menu{
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-top: 20px;
    }
    .fliter-wrap .minus,
    .fliter-wrap .open .plus{ display: none; }
    .fliter-wrap .open .minus{ display: inline-block; }
    
    .sort-by-wrap select{ min-width: 165px; }

    /*--- show-wrap ---*/
    .sortby-wrapper{
        display: none;
    }
    .show-wrap{
        flex: 2;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        /*min-width: 745px;*/
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
    }
        /*--- show-wrap ---*/
        /*.show-wrap{ flex: 2; }*/
        .sort-by-wrap select,
        .show-wrap select{
            -webkit-appearance: none;
            -moz-appearance: none;
            -ms-appearance: none;
            -o-appearance: none;
            appearance: none;
        }

        .show-wrap .display-wrap select{ min-width: 90px; }

        .sort-by-wrap span,
        .show-wrap span{
            height: 50%;
            pointer-events: none;
            position: absolute;
            right: 15px;
            top: 0;
            bottom: 0;
            margin: auto;
        }
        .reset-filter{
            color: #FFA105;
            font-weight: 500;
            font-size: calc(15.6px + 0.125vw);
            text-decoration: underline !important;
        }
        .reset-filter:hover,
        .reset-filter:focus{ color: #999; text-decoration: none !important; }

        .display-mobile, .display-mobile a{
            color: #555555;
            font-weight: 500;
            font-size: calc(15.6px + 0.125vw);
            text-decoration: none;
        }
        .display-mobile a{ margin: 0 5px; }
        .display-mobile a:hover,
        .display-mobile a:focus{ color: #FFA105;  text-decoration: none; }
        .display-mobile a.active{ color: #FFA105; }


    /*--- pagination-wrap ---*/
    .pagination-wrap{
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: calc(0.9375vw + 22px); /*40-25*/
        -webkit-align-items: center;
                -ms-flex-align: center;
                    align-items: center;
        -webkit-justify-content: space-between;
	            -ms-flex-pack: justify;
	                justify-content: space-between;
    }
    .pagination {
        display: inline-block;
        margin: 0;
    }
    .pagination a {
        color: #555;
        float: left;
        font-size: calc(0.125vw + 13.6px); /*16px-14px*/
        padding: 0.5px 6.5px;
        margin: 0 5px;
        border: none;
    }
    .pagination a,
    .pagination a:hover,
    .pagination a:focus,
    .pagination a:active,
    .pagination a:focus:active{
        text-decoration: none;
    }
    .pagination a:first-child,
    .pagination a:last-child{ border: 1px solid #ddd; }
        .pagination a:first-child:hover,
        .pagination a:last-child:hover{ border: 1px solid #FFA105; color: #ffa105}
        .pagination a.disabled,
        .pagination a.disabled:hover
        { border: 1px solid #dbdbdb; color: #dbdbdb; cursor: default;}
        .pagination a.blah,
        .pagination a.blah:hover
        { cursor: default; outline: none;}
    .pagination a.active{
        background-color: #ff9f00;
        color: white;
    }
    .pagination a:hover:not(.active):not(:first-child):not(:last-child):not(.blah) {
        background-color: #ffa105;
        color: #fff;
    }



    /*--- treeMenu ---*/
    .tree-menu-container {
        display:flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        overflow-y: auto;
        width: 100%;
    }
    .tree-menu-container.others{ min-width: 735px; }
    .tree-menu-container.others.none-license{ min-width: 500px; }

    .tree-menu-container > div {
        min-width: 210px;
        margin-right: 35px;
        padding-left: 25px;
        /*padding-bottom: 5px;*/
    }
    
    .tree-menu-container > div > ul{
        margin-top:0;
        margin-bottom:10px;
        padding-left:0;
    }
    .tree-menu-container > div > ul input[type="radio"]{
        margin-right: 10px;
    }

    .tree-menu-container .expand-collapse {
        display: inline-block;
        font-size:18px;
        float: right;
        color:#ffa105;
        padding-right:5px;
        cursor: pointer;
        font-weight: 500;
        font-size: 20px;
        line-height: 1.2;
    }

    .tree-menu-container .menuitem.level0 {
        display: inline-block;
        font-weight:400;
        font-size:18px;
        color:#555555;
        font-family: 'Roboto';
    }

    .dropdown.artist .dropdown-menu {
        width: 50vw;
    }

    .dropdown.attribute .dropdown-menu {
        width: 29vw;
    }

    #category-menu-container .menuitem.level0 label{
        color: #373737;
        font-weight: 500; 
    }

    #others-menu-container .menuitem.level0 label{
        color: #373737;
        font-size: calc(0.1736111111111111vw + 14.666666666666666px); /*16px-20px, 767-1920*/
        font-weight: 500; 
        text-transform: uppercase;
    }
    #category-menu-container .expand-collapse { padding-right: 35px; }
    #others-menu-container .menuitem.level0 label > span.num{ display: none; }

    .tree-menu-container .menuitem.level0 label{ 
        overflow : hidden;
        text-overflow : ellipsis;
        white-space : nowrap;
        max-width: 180px; 
        margin-bottom: 5px;
    }

    .tree-menu-container .menuitem.level1 {
        display: none;
        list-style: none;
        font-weight: 300;
        font-size: 16px;
        color:#555555;
        font-family: 'Roboto';
    }

    .tree-menu-container .menuitem.level1 li {
        padding-top:5px;
    }


    [type="checkbox"]:not(:checked),
    [type="checkbox"]:checked {
      position: absolute;
      left: -9999px;
    }

    [type="checkbox"]:not(:checked) + label,
    [type="checkbox"]:checked + label {
      position: relative;
      padding-left: 30px;
      cursor: pointer;
    }

    [type="checkbox"]:not(:checked) + label:before,
    [type="checkbox"]:checked + label:before {
      content: '';
      position: absolute;
      left: 0; top: 0;
      width: 16px;
      height: 16px;
      border: 1px solid #666666;
      background: #fff;
      border-radius: 0px;
      margin-top: 3px;
    }

    [type="checkbox"]:not(:checked) + label:after,
    [type="checkbox"]:checked + label:after {
      content: 'V';
      position: absolute;
      top: 4px;
      left: 3px;
      font-size: 16px;
      line-height: 1;
      color: #FFA204;
      transition: all .1s;
    }

    [type="checkbox"]:indeterminate + label:after {
      content: '\2014';
      position: absolute;
      top: 0;
      left: 2px;
      font-size: 18px;
      line-height: 1;
      color: #FFA204;
      transition: all .1s;
    }

    /* checked mark aspect changes */
    [type="checkbox"]:not(:checked) + label:after {
      opacity: 0;
      transform: scale(0);
    }
    [type="checkbox"]:checked + label:after,
    [type="checkbox"]:indeterminate + label:after {
      opacity: 1;
      transform: scale(1);
    }

    /* disabled checkbox */
    [type="checkbox"]:disabled:not(:checked) + label:before,
    [type="checkbox"]:disabled:checked + label:before {
      box-shadow: none;
      border-color: #bbb;
      background-color: #ddd;
    }

    [type="checkbox"]:disabled:checked + label:after {
      color: #555;
    }

    [type="checkbox"]:disabled + label {
      color: #aaa;
    }
/*------------------------------------
            $Media Query
------------------------------------*/
@media screen and (min-width: 1921px) {
    .banner-enddate .icon {
        height: 24px;
        width: 24px;
    }
    
    .banner-enddate-wrap .banner-enddate {
        font-size: 20px;
    }

    .breadcrumbs-Area {
        padding-top: 40px;
    }

    .breadcrumbs-Area a,
    .breadcrumbs-Area a:focus,
    .breadcrumbs-Area a:active,
    .breadcrumbs-Area a:active:focus{ 
        font-size: 18px;
    }

    .fliter-wrap, .sort-by-wrap, .display-wrap {
        margin-right: 40px;
    }

    .filter-panel {
        margin-bottom: 30px;
    }

    .filter-panel .select {
        font-size: 18px;
    }

    .reset-filter {
        font-size: 18px;
    }

    .left-side-container .section .section-title {
        font-size: 18px;
    }

    .pagination-wrap {
        margin-bottom: 40px;
    }
}

@media screen and ( min-width: 768px ) {
    .special-promotion-radio-buttons .special-promotion-radio-button-container:hover .radio-tooltip-container {
        display: block;
    }
}

@media screen and ( max-width: 767px ) {
    .index-main-grid {
        grid-template-columns: 1fr;
        grid-template-areas: 
            "left-side"
            "breadcrumbs"
            "filter"
            "main";
    }
    
    .left-side-container {
        margin-top: calc(0.43365134431916735vw + 21.673894189071987px); /*30(1920px) , 25(767px)*/
        border-bottom: 1px solid #dbdbdb;
    }

    .rl-product-container {
        min-height: 500px;
    }        

    .left-side-container .section {
        padding: 7px 0px;
        margin-bottom: 0px;
    }

    .left-side-container .section .section-title {
        position: relative;
        line-height: 24px;
        cursor: pointer;
    }

    .left-side-container .section .section-title:after {
        content: '-';
        position: absolute;
        right: 0px;
        top: 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-right: 15px;
        height: 100%;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
    }

    .left-side-container .section .section-title.collapsed:after {
        content: '+';
    }

    .special-promotion-radio-buttons .radio-tooltip-triangle::after {
        display: none;
    }

    .special-promotion-radio-buttons .radio-tooltip-container {
        width: 100%;
    }

    .special-promotion-radio-buttons .radio-tooltip {
        position: unset;
        margin-top: 3px;
        margin-left: 36px;
        width: fit-content;
        white-space: unset;
        transform: unset;
    }

    .moreInfo-container {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 10px;
        margin-top: 3vw;
    }
    
    .pagination-wrap{
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
    }
    .pagination{
        display: -webkit-flex; 
        display: -ms-flexbox; 
        display: flex;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 100%; 
    }
    .pagination.top{ 
        border-top: 2px solid #dbdbdb;
        margin-top: 20px;
        padding-top: 30px; 
    }

    /*------------------------------------
                $Filter
    ------------------------------------*/
    /*--- treeMenu ---*/
    .filter-panel .fliter-wrap,
    .sortby-wrapper
    {
        width: 100%;
        /*display: block;*/
        margin-top: 20px;
        margin-bottom: 0;
    }

    .fliter-wrap .dropdown{
        width: 100%;
        margin-right: 0;
        display: block;
    }
    .filter-panel .select{
        width: 100%;
        border-top: none;
        background-color: #f3f3f3;
        padding: 8.5px 20px 8.5px 30px;
        line-height: normal;
        height: auto;
        font-weight: 400;
    }
        .filter-panel .category{
            border-top: 1px solid #dbdbdb
        }
    .fliter-wrap .dropdown-menu{
        width: 100% !important;
        position: relative;
        margin: 0;
        max-height: none;
        padding: 0;
        border-top: none;
    }
    .fliter-wrap .open > .dropdown-menu{ margin-top: 0; }
    .tree-menu-container{
        width: 100%;
        padding: 0;
    }
        .tree-menu-container > div{
            width: 100%;
            border-top: 1px solid #dbdbdb;
            padding: 0;
            margin-right: 0;
        }
        .tree-menu-container > div:first-of-type{
            border-top:none;
        }
        .tree-menu-container .expand-collapse{
            float: right;
            font-weight: 900;
            padding: 8px 20px 8px 0px;
            vertical-align: top;
        }
        .tree-menu-container .menuitem.level1{
            max-height: 140px;
            overflow-y: auto;
            border-top: 1px solid #dbdbdb;
            width: 100%;
            font-size: 15px;
            margin-bottom: 0;
            padding: 16px 20px 16px 60px;
        }
            .tree-menu-container .menuitem.level1 li{
                padding-bottom: 16px;
                padding-top: 0;
            }
            .tree-menu-container .menuitem.level1 li:last-of-type{
                padding-bottom: 0;
            }
    .filter-panel .plus,
    .filter-panel .minus{
        float: right;
    }
    .fliter-wrap, 
    .sort-by-wrap{
        margin-right: 0;
    }
    .tree-menu-container .menuitem.level0{
        padding: 7.5px 10px 7.5px 30px;
        max-width: calc(100% - 40px);
    }
    .tree-menu-container .menuitem.level0 label{
        max-width: none;
        margin: 0;
        font-weight: 500;
    }
    [type="checkbox"]:not(:checked) + label, [type="checkbox"]:checked + label{
        padding-left: 30px;
        margin: 0;
    }
    .filter-panel p.filter-title{
        display: none;
    }
    .sortby-wrapper,
    .fliter-wrap{
        display: none;
    }
        .sortby-wrapper .sortby:first-of-type{
            border-top: 1px solid #dbdbdb;
        }
        .sortby-wrapper .sortby.selected{
            border-top: 1px solid #ffa105;
        }
        .sortby-wrapper .sortby.selected .select{
            background-color: #ffa105;
            color: #fff;
        }
        .show-area{ display: block } 
    .mobileFilterSwitch-wrapper{
        width: 100%;
        display: block;
    }
        .mobileFilterSwitch-wrapper .btn-switch{
            width: calc((100% - 3vw - 0.01px) / 2);
            float: left;
            padding: 7px 20px;
            border: 1px solid #dbdbdb;
            font-size: calc(0.25vw + 15.2px);
            text-align: center;
            font-weight: 300;
            cursor: pointer;
            outline: none;
        }
        .mobileFilterSwitch-wrapper .btn-switch + .btn-switch{
            margin-left: 3vw;
        }
        .mobileFilterSwitch-wrapper .btn-switch.selected{
            border: 1px solid #ffa105;
            background-color: #ffa105;
            color: #fff;
        }
            .btn-switch.selected .icon-switch{
                color: #fff;
            }
        
        .btn-switch .icon-switch{
            float: right;
            font-weight: 900;
            color: #ffa105;
            font-size: 20px;
            line-height: 1.2;
        }
        .btn-switch .title-text{
            line-height: 24px;
            font-weight: 400;
        }

}


@media screen and ( max-width: 1200px ){
    .tree-menu-container.others{ min-width: 42vw; }
}
@media screen and ( max-width: 480px ){
    .left-side-container{
        border-bottom: none;
    }
    .moreInfo-container{
       display: none;
    }
    
    .mobileFilterSwitch-wrapper .btn-switch + .btn-switch {
        margin-left: 15px;
    }
    .mobileFilterSwitch-wrapper .btn-switch {
        width: calc((100% - 15px - 0.01px) / 2);
    }
}