body {top:0!important;}

pre {
    white-space: normal;
}

.p-page_table__inner {
    width: 720px;
    max-width: 100%;
}

.p-page_table__inner .c-table {width: 100%;}

@media screen and (min-width: 768px) {
    .c-table tbody tr th {
        width: 160px;
    }
}

.sub-menu {
    display: none;
}

@media only screen and (min-width: 1024px) {
    .has-hover:hover .sub-menu {
        display: block;   
    }
    .has-hover:hover .has-sub span {
        transform: rotate(180deg);   
    }
    body.active:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        top: 90px;
        z-index: 1;
        background-color: rgba(0,0,0,0.5);
    }
    header {
        position: relative;
        z-index: 2;
    }
    .has-sub {
        display: flex;
        justify-content: center;
        height: 90px;
        align-items: center;
        gap: 7px;   
    }
    .sub-menu {
        background: #F0F0F0;
        position: absolute;
        left: 0;
        right: 0;
        top: 90px;
        padding: 40px 0;
    }
    .sub-menu-inner {
        margin: 0 auto;
        max-width: 1060px;
        display: flex;
        justify-content: center;
    }
    .sub-menu ul {
        width: calc(100% / 4);
    }
    .sub-menu ul li+li {
        margin-top: 12px;
    }
    .sub-menu ul li a, .sub-menu ul li span, .sub-menu ul li {
        font-size: 13px;
        font-weight: normal;
    }
}

@media only screen and (max-width: 1023px) {
    .has-hover .has-sub span {
        display: none;
    }
    .has-sub {
        position: relative;
    }
    .has-sub:before {
        content: "";
        width: 1px;
        height: 12px;
        top: 50%;
        transform: translateY(-50%);
        right: 10px;
        background-color: #333;
        position: absolute;
    }
    .has-sub:after {
        content: "";
        width: 12px;
        height: 1px;
        top: 50%;
        transform: translateY(-50%);
        right: 5px;
        background-color: #333;
        position: absolute;
    }
    .has-sub.active:before {
        display: none;   
    }
    .sub-menu.active {
        display: block;   
    }
    .sub-menu ul {
        margin-left: 20px;
    }
    .sub-menu ul li {
        padding: 5px 0;
    }
    .sub-menu ul li a {
        padding: 0;
        font-size: 13px;
        font-weight: normal;
    }
    .sub-menu ul li {
        font-size: 13px;
        font-weight: normal;
    }
    .overflow-auto {
        overflow: auto;   
    }
}

.sub-menu-sp {
    display: none;   
}
.sub-menu-sp.active, .sub-menu-sp.active .sub-menu {
    display: block;
}

.l-container {
    position: relative;
    z-index: 1;
}

.p-product_content__breadcrumbs--pc, .c-product_info__category, .p-product_content__breadcrumbs--sp {
    display: none;
}