#music_op,
#music_ed {
    position: relative;
    padding-top: 10%;
    margin-bottom: 6%;
}

.music_btn {
    display: flex;
    gap: min(10vw, 2em);
    justify-content: center;
    margin-bottom: 5%;
}

.music_btn a {
    display: block;
    width: min(40vw, 10em);
    padding: min(2vw, 0.5em);
    text-align: center;
    border-radius: 500px;
    box-sizing: border-box;
    border: 1px solid #fe56b6;
    color: #fe56b6;
    background: #fff;
    font-size: min(3vw, 1em);
    text-decoration: none;
    margin: 0;
}

.btn_off {
    border: 1px solid #666 !important;
    color: #666 !important;
    opacity: 0.5;
    pointer-events: none;
}

.set_music {
    position: relative;
}

.music_ribbon {
    background: url(../img/ribbon.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    font-size: min(5vw, 2em);
    color: #fff;
    font-weight: 800;
    padding: min(3vw, 0.5em) 0 min(4vw, 0.6em);
    line-height: 1;
    transform: rotate(-10deg);
    display: block;
    text-align: center;
    width: min(40vw, 8em);
    position: absolute;
    top: 0;
    left: -1em;
}

.music_ttl {
    font-weight: 800;
    font-size: min(6vw, 1.2em);
    padding-bottom: 0.5em;
    margin-bottom: 1em;
    border-bottom: 4px dotted var(--pink2);
    word-break: keep-all;
}

.set_music small {
    display: block;
    font-weight: 600;
    margin-top: -0.5em !important;
}

.music_detail {
    margin-top: 1em;
}

.music_cover {
    margin: auto;
    width: min(75vw, 40em);
}

.music_cover img {
    width: 100%;
}

.music_text {
    font-weight: 400;
    text-align: center;
}

.music_text {
/*
    display: flex;
    gap: 3%;
    justify-content: space-between;
*/
    margin-top: 3%;
    text-align: left;
}

.music_comment{
    margin-bottom: 2em;
}

.music_profile dt,
.music_comment dt {
    border-bottom: 4px dotted var(--pink2);
    color: var(--pink1);
    font-size: 1.2em;
    font-weight: 800;
    margin-bottom: 0.5em;
    padding-bottom: 0.2em;
}

.music_profile dd,
.music_comment dd {
    font-size: min(3vw, 1em);
}

.music_profile dd a {
    display: inline-block;
    color: #fff;
    background:var(--pink1);
    font-weight: 800;
    padding:0.5em 1em;
    border-radius: 8px;
    transition: 0.2s;
}

.music_profile dd a:hover{
    opacity: 0.75;
}

/* OP未着時 */
#music_op .music_detail {
    text-align: center;
    font-weight: 400;
}



@media screen and (max-width:800px) {

    .music_btn {
        margin-bottom: 8vw;
    }

    .set_music {
        padding-top: 5%;
    }

    .music_comment {
        margin-top: 1em;
    }

    .music_text {
        display: block;
        padding: 1em;
    }

}
