.category-wrapper {
    padding: 0;
}

.kv {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 450px;
}
.kv-inner {
    margin: 0 auto;
    width: 92%;
    max-width: 1200px;
}
.kv-text {
    padding: 85px 0;
}
.kv-text h1 {
    color: #fff;
    font-size: 40px;
    margin: 0 0 35px;
}
.kv-text p {
    color: #fff;
    font-size: 18px;
    line-height: 1.8em;
}
.liquid-btn {
    margin: 85px 0 0;
}
.liquid-btn a {
    border-bottom: 1px solid #fff;
    color: #fff;
    display: inline-block;
    font-size: 16px;
    padding: 10px 0 20px;
}
@media screen and (max-width: 968px) {
    .kv-text {
        padding: 65px 0;
    }
    .kv-text h1 {
        font-size: 35px;
        margin: 0 0 25px;
    }
    .kv-text p {
        font-size: 16px;
    }
}
@media screen and (max-width: 768px) {
    .kv-text h1 {
        font-size: 30px;
        margin: 0 0 20px;
    }
    .kv-text p {
        font-size: 14px;
    }
    .liquid-btn {
        margin: 65px 0 0;
    }
    .liquid-btn a {
        font-size: 14px;
    }
}

/* main */
.main {
    background: url(../images/p-bg1.png) no-repeat, url(../images/p-bg2.png) no-repeat, url(../images/p-bg.jpg) no-repeat;
    background-position: left top 35%, right bottom, center top;
    background-size: 384px 269px, 761px 257px, cover;
    padding: 85px 0 50px;
    width: 100%;
}
.main-inner {
    margin: 0 auto;
    width: 92%;
    max-width: 815px;
}
.main.all .main-inner {
    width: 100%;
    max-width: none;
}
.item-card__ttl {
    font-size: 18px;
}
.lineup-inner,
.categorylinks-inner,
.categoryitems-inner {
    margin: 0 auto;
    width: 92%;
    max-width: 1200px;
}
.cate-head {
    margin: 0 0 35px;
}
.cate-head h2 {
    color: #353433;
    font-size: 34px;
}
.cate-head p {
    color: #b78939;
    font-size: 22px;
    margin: 0 0 10px;
}
.lineup-body,
.categorylinks-body,
.categoryitems-body {
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
}

.categorylinks {
    background: #fff;
    margin: 65px 0;
    padding: 65px 0;
}
.categorylinks-body ul {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}
.categorylinks-body ul li {
    border: 1px solid #b78939;
    width: 30%;
}
.categorylinks-body ul li a {
    color: #201c1b;
    font-size: 20px;
    display: block;
    padding: 12px 10px;
    text-align: center;
    width: 100%;
}

.categoryitems:not(:last-child) {
    margin: 0 0 35px;
}
.categoryitems-body {
    border-bottom: 1px solid #d3d3d3;
    padding: 0 0 35px;
}
.categoryitems-head {
    margin: 0 0 45px;
}
.categoryitems-head h2 {
    color: #353433;
    font-size: 27px;
}
.categoryitems-head p {
    color: #666666;
    font-size: 18px;
    margin: 15px 0 0;
}

.lineup-head {
    border-bottom: 1px solid #acacac;
    margin: 0 0 65px;
    padding: 0 0 20px;
}
.lineup-card {
    border-bottom: 1px solid #acacac;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    padding: 0 0 45px;
}
.lineup-card:not(:last-child) {
    margin: 0 0 45px;
}
.lineup-text {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 55%;
}
.lineup-image {
    width: 40%;
}

.lineup-text h3 {
    color: #353433;
    font-size: 27px;
    line-height: 1.8em;
}
.lineup-text ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.lineup-text ul li {
    border-bottom: 2px solid #b78939;
    width: calc(50% - 20px);
    max-width: max-content;
}
.lineup-text ul li.full {
    width: 100%;
}
.lineup-text ul li a {
    color: #201c1b;
    display: block;
    font-size: 22px;
    padding: 10px 65px 10px 5px;
    position: relative;
}
.lineup-text ul li a::after {
    background: url(../images/icon-arrow-circle.png) no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 23px;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 23px;
}

@media screen and (max-width: 968px) {
    .cate-head h2 {
        font-size: 27px;
    }
    .cate-head p {
        font-size: 18px;
    }
    .categorylinks {
        margin: 65px 0;
        padding: 65px 0;
    }
    .categorylinks-body ul li {
        width: 31%;
    }
    .categorylinks-body ul li a {
        font-size: 16px;
        padding: 12px 5px;
    }
    
    .categoryitems:not(:last-child) {
        margin: 0 0 30px;
    }
    .categoryitems-body {
        padding: 0 0 30px;
    }
    .categoryitems-head {
        margin: 0 0 35px;
    }
    .categoryitems-head h2 {
        font-size: 21px;
    }
    .categoryitems-head p {
        font-size: 16px;
    }
    
    .lineup-head {
        margin: 0 0 45px;
        padding: 0 0 15px;
    }
    .lineup-card {
        padding: 0 0 35px;
    }
    .lineup-card:not(:last-child) {
        margin: 0 0 35px;
    }
    
    .lineup-text h3 {
        font-size: 21px;
    }
    .lineup-text ul {
        gap: 15px;
    }
    .lineup-text ul li {
        width: calc(50% - 15px);
    }
    .lineup-text ul li a {
        font-size: 18px;
        padding: 10px 55px 10px 5px;
    }
    .lineup-text ul li a::after {
        height: 20px;
        width: 20px;
    }
}
@media screen and (max-width: 768px) {
    .cate-head h2 {
        font-size: 21px;
    }
    .cate-head p {
        font-size: 16px;
    }
    .categorylinks {
        margin: 45px 0;
        padding: 45px 0;
    }
    .categorylinks-body ul {
        flex-wrap: wrap;
        row-gap: 10px;
    }
    .categorylinks-body ul li {
        width: 100%;
    }
    .categorylinks-body ul li a {
        font-size: 14px;
        padding: 10px 2px;
    }
    
    .categoryitems:not(:last-child) {
        margin: 0 0 25px;
    }
    .categoryitems-body {
        padding: 0 0 25px;
    }
    .categoryitems-head {
        margin: 0 0 30px;
    }
    .categoryitems-head h2 {
        font-size: 18px;
    }
    .categoryitems-head p {
        font-size: 14px;
    }
    
    .lineup-head {
        margin: 0 0 35px;
    }
    .lineup-card {
        padding: 0 0 25px;
    }
    .lineup-card:not(:last-child) {
        margin: 0 0 25px;
    }
    .lineup-text {
        display: block;
        margin: 0 0 20px;
        width: 100%;
    }
    .lineup-image {
        width: 100%;
    }
    .lineup-text h3 {
        font-size: 18px;
    }
    .lineup-text ul {
        margin: 20px 0 0;
        gap: 10px;
    }
    .lineup-text ul li {
        width: calc(50% - 10px);
    }
    .lineup-text ul li a {
        font-size: 14px;
        padding: 8px 45px 8px 5px;
    }
    .lineup-text ul li a::after {
        height: 15px;
        width: 15px;
    }
}