@charset 'UTF-8';

a {
    color: var(--fc-blue)!important;

}

.sp_wrapper {
    margin: 0 0 100px;
}

.sp_wrapper_tx {
    margin: 0 0 100px;
    padding: 0 5%;
}
.sp_wrapper_tx .tx_com {
    max-width: 100%;
}
.sp_wrapper_tx .tx_com .txt_tit{
    font-size: 3.4rem;
    font-weight: bold;
    margin: 0 0 30px;
    @media screen and (max-width: 498px) {
        font-size: 2.8rem;
    }
}
.sp_wrapper_tx .tx_com .img_flex{
    @media screen and (max-width: 498px) {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    }
}
.sp_wrapper_tx .tx_com .img_flex .txtbox{
    @media screen and (max-width: 498px) {
        width: 100%;
    }
}
.sp_wrapper_tx .tx_com .img_flex .imgbox{
    float: right;
    width: 300px;
    margin: 0 0 0 20px;
    @media screen and (max-width: 498px) {
        float: none;
        width: 100%;
        margin: 0 auto;
        max-width: 300px;
    }

}
.mb20 {
    margin: 0 0 20px;
}
.mb20 {
    margin: 0 0 20px;
}
.mb100 {
    margin: 0 0 100px;
}
.mb250_sp100 {
    margin: 0 0 250px;
    @media screen and (max-width: 1050px) {
        margin: 0 0 100px;
    }
}
.ate_icon {
    position: relative;
    padding: 0 0 0 1.5em;
    &:after {
        position: absolute;
        content: "※";
        top: 0;
        left: 0;
    }
}

.tit6 > h3 {
    background-color: var(--bk-blue);
    color: var(--fc-white);
}
.sp_wrapper_title {
    margin: 50px 0;
    position: relative;
}
.cpplus_cont{
    padding: 0 5%;
}
.cpplus_cont > h4{
    font-size: 2.2rem;
    display: inline-block;
    padding: 0 5px;
    background: linear-gradient(to bottom, #fff 60%, var(--bk-ksyellow) 60%);
    font-weight: bold;
    margin: 0 0 30px;
}
.cpplus_cont .cont_img {
    display: flex;
    flex-wrap: wrap;
    gap: 30px 20px;
    margin: 60px 0 0;
    @media screen and (max-width: 768px) {
        gap: 30px 10px;
    }
}
.cpplus_cont .cont_img > img{
    width: calc((100% - 40px) / 3);
    @media screen and (max-width: 768px) {
        width: calc((100% - 20px) / 3);
    }
}
.pc_itembox {
    padding: 30px 20px 20px;
    position: relative;
    @media screen and (max-width: 1050px) {
        padding: 70px 20px 20px;
    }
}
.pc_itembox > h3 {
    position: absolute;
    padding: 0 20px 0 230px;
    background-color: var(--bk-white);
    top: -18px;
    left: 36px;
    &:before {
        position: absolute;
        content: "";
        background: url(/excludes/KEC/img/special/pc_select/ks_logo.png) no-repeat;
        background-size: 210px;
        width: 210px;
        height: 35px;
        top: -3px;
        left: 0;
        @media screen and (max-width: 1050px) {
            top: 9px;
        }
    }
    @media screen and (max-width: 1050px) {
        padding: 50px 20px 0 0;
    }
}
.pc_itembox > h3.top_line {
    top: 10px;
    @media screen and (max-width: 1050px) {
        top: -15px;
    }
}