@media screen and (max-width: 767px) {

      .tab-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0 4px;
    text-align: center;
    margin: auto;
    font-family:  "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    }

    .tab-2 label {
    flex: 1 1;
    order: -1;
    position: relative;
    opacity: .4;
    height: 54px;
    border: 1px solid #1b1b1b;
    color: #1b1b1b;
    font-size: .9em;
    text-align: center;
    margin: 10px 0;
    cursor: pointer;
    }

    .tab-2 label:has(:checked) + .step-box {
    display: block;
    }

    .black-label {
    width: 100%;
    background-color: #1b1b1b;
    font-size: 1.2em;
    color: #fff;
    padding: .2em 2em;
    margin: 30px auto;
    }

    .step {
    margin: 0 0 80px 0;
    }





}

@media screen and (min-width: 768px) {
    .tab-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0 10px;
    max-width: 1000px;
    text-align: center;
    margin: auto;
    font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    }

    .tab-2 label {
    flex: 1 1;
    order: -1;
    position: relative;
    opacity: .4;
    min-width: 70px;
    height: 54px;
    border: 1px solid #1b1b1b;
    color: #1b1b1b;
    font-size: 1.3em;
    margin: 0 0 40px;
    text-align: center;
    cursor: pointer;
    }
    .tab-2 label:has(:checked) + .step-box {
    display: flex;
    }

    .black-label {
    max-width: 140px;
    background-color: #1b1b1b;
    font-size: 1.2em;
    color: #fff;
    padding: .6em 2em;
    margin: 30px auto;
    }

    .step {
    flex: 1 1;
    }


}

.tab-2 label:hover {
    opacity: .8;
}

.tab-2 input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none; /* クリック不可 */
 }

.tab-2 label:has(:checked) {
    opacity: 1;
}

.step-box {
    display: none;
    overflow: hidden;
    gap: 20px; 
    justify-content: space-between; 
    max-width: 1000px;
    margin: auto;
}

