/*
* カタログ
* --------------------------------------------------
*/
.catalog-title {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    align-items: center;
    background: #900000;
    font-size: 17px;
    line-height: 1;
    letter-spacing: 0px;
    text-align: center;
    color: #ffffff;
    padding: 30px;
}

.v3-form-catalog {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    padding: 0px;
    gap: 15px;
    margin: 0px;
}

.v3-form-catalog input[type="checkbox"] {
    position: absolute;
    height: 0px !important;
    width: 0px !important;
    opacity: 0;
}

.v3-form-catalog label {
    display: flex;
    flex-wrap: wrap;
    width: calc((100% - 30px) / 3);
    height: auto;
    position: relative;
    background: #ffffff;
    padding: 15px;
    gap: 15px;
    flex-direction: column;
    background: #fafafa;
    border: 1px solid #dddddd;
    cursor: pointer;
    margin: 0px;
}

.v3-form-catalog .img {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
}

.v3-form-catalog .img img {
    width: 100%;
    height: auto;
    margin: 0px !important;
}

.v3-form-catalog p {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    font-size: 1cqi;
    line-height: 1.5;
    letter-spacing: 0px;
    height: auto;
    word-break: break-word;
    flex-grow: 1;
    white-space: normal;
}

.v3-form-catalog .button {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    font-size: 1.2cqi;
    margin-bottom: 0px;
    line-height: 1;
    letter-spacing: 0px;
    padding: 2cqi;
    background: #333333;
    color: #ffffff;
    cursor: pointer;
    justify-content: center;
    align-items: center;
}

/* 状態によるボタンの切り替えだけ残す */
.v3-form-catalog input[type="checkbox"]:checked+label .button {
    font-size: 0;
    background: #c50014;
}

.v3-form-catalog input[type="checkbox"]:checked+label .button::before {
    content: '選択中';
    font-size: 1.2cqi;
}

@media (max-width: 767px) {
    .v3-form-catalog label {
        width: calc((100% - 15px) / 2);
    }

    .v3-form-catalog h4 {
        font-size: 3cqi;
    }

    .v3-form-catalog .button {
        height: auto;
        font-size: 3cqi;
        line-height: 1;
        padding: 4cqi;
    }

    .v3-form-catalog input[type="checkbox"]:checked+label .button::before {
        font-size: 3cqi;
    }
}