@charset "UTF-8";

/* CSS INFORMATION -====================================================
File name : special.css
Description : スペシャル企画
===================================================================== */

.wrapper {
    background-color: transparent;
}

.main {
    position: relative;
    background-image: url(../images/common/bg_pattern_t2-sp.png), url(../images/common/bg_pattern_b2-sp.png) !important;
}

.main::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(../images/common/bg_pattern5.png);
    background-repeat: repeat;
    background-position: center center;
    background-size: auto auto;
    z-index: -2;
    opacity: 0.5;
}

.main::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: #000000;
    mix-blend-mode: overlay;
    z-index: -1;
}

.special {
    position: relative;
    width: 100%;
    padding: 8rem 0;
}

.special_list {
    position: relative;
    width: calc(670 / 680 * 100%);
    margin: 0 auto;
}

.special_list.accordion .accordion_btn {
    cursor: pointer;
}

.special_list.accordion .accordion_btn::before {
    content: '';
    position: absolute;
    right: -1rem;
    top: -1rem;
    display: block;
    width: 5.0rem;
    aspect-ratio: 1 / 1;
    background-image: url(../images/special/icon_accordion.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    transform: scale(1, 1);
    z-index: 1;
}

.special_list.accordion .accordion_btn.is-active::before {
    transform: scale(1, -1);
}

.special_list.accordion .accordion_content {
    display: none;
}

.special_list li {
    position: relative;
    width: 100%;
    margin-bottom: 10rem;
    padding: 6rem 4rem;
    background: url(../images/special/bg_content.jpg) repeat-y top center/100% auto;
}

.special_list_ttl {
    width: 100%;
    text-align: center;
}

.special_list_ttl span {
    display: inline-block;
    margin-bottom: 0.5em;
    font-size: 3rem;
    line-height: 1.3;
    color: #8d7700;
}

/* .special_list_ttl em {
    position: relative;
    display: block;
    padding: 3rem;
    color: #ffffff;
    width: 100%;
    font-family: "Noto Serif JP", serif;
    font-style: normal;
     font-size: 4.6rem; 
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0;
    background-color: #271200;
} */

.special_list_ttl {
    position: relative;
    display: block;
    padding: 3rem;
    color: #ffffff;
    width: 100%;
    /* font-family: "Noto Serif JP", serif; */
    font-family: "Roboto", sans-serif;
    /* font-size: 4.6rem; */
    font-size: 3.9rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0;
    background-color: #271200;
}

.special_list_ttl em {
    font-style: normal;
}

.special_list_ttl.r02 em {
    color: #ffe639;
    background: linear-gradient(to top, #ffe639 20%, #fff 50%, #ffe639 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.special_list_ttl em::before,
.special_list_ttl em::after {
    content: '';
    position: absolute;
    top: 0.4rem;
    left: 0;
    width: 100%;
    border-top: 0.2rem solid #94672d;
}

.special_list_ttl em::after {
    top: auto;
    bottom: 0.4rem;
}

.special_list_ttl em * {
    color: #ffe639;
    background: linear-gradient(to top, #ffe639 20%, #fff 50%, #ffe639 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.special_list_ttl em ruby {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
}

.special_list_ttl em ruby rt {
    margin-top: -0.2em;
}

.special_list_ttl em small {
    display: block;
    /* font-size: 3.6rem; */
    font-size: 2.6rem;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: -6rem;
}



.special_list_content {
    position: relative;
    width: 100%;
}

/* .special_list_content> :first-child {
    margin-top: 0 !important;
} */

.special_list_subttl {
    position: relative;
    width: 100%;
    margin-top: 5rem;
    padding-bottom: 1.5rem;
    text-align: center;
}

.special_list_subttl::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 0.4rem;
    background: linear-gradient(90deg, #ab0c0c 0%, #d36a2d 50%, #a90a28 100%);
}

.special_list_subttl span {
    display: inline-block;
    color: transparent;
    font-size: 3.4rem;
    font-weight: 600;
    line-height: 1.4;
    background: linear-gradient(90deg, #f32146 0%, #d75314 50%, #f32146 100%);
    background-clip: text;
    -webkit-background-clip: text;
}

.special_list_img {
    position: relative;
    width: calc(630 / 590 * 100%);
    margin: 5rem calc(-20 / 590 * 100%) 0 calc(-20 / 590 * 100%);
}

.special_list_text {
    position: relative;
    margin-top: 5rem;
    padding: 0;
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.6;
    text-align: center;
}

.special_list_text .pink {
    color: #ef193a;
}

.special_list_text .gold {
    color: #dd8c24f0;
    /* text-shadow: 1px 1px #4b4112; */
}


.special_list_text .large_gold {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 0 10rem;
    width: 100%;
    color: #fff;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
    /* background: linear-gradient(90deg, #000 0%, #000 50%, #000 100%); */
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.45) 100%);
    text-shadow: 0px 1px 9px #ff8400;
    /* text-shadow: 2px 2px 2px #d68300, -2px 2px 2px #d68300, 1px -1px 1px #d68300, -2px -2px 2px #d68300, 2px 2px 2px #d68300, -2px 2px 2px #d68300, 2px -2px 2px #ffffff, -2px -2px 2px #ffffff; */
}

.special_list_text .large_gold2 {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 0 1.5rem;
    color: #ffffff;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
    background: linear-gradient(90deg, #925900 0%, #dba000 50%, #925900 100%);
}

.special_list_text .large_pink {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 0 1.5rem;
    color: #ef193a;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
    border: 2px solid #ef193a;
    border-radius: 1em;
    background: transparent;
}

.special_list_collab {
    position: relative;
    width: 100%;
    margin-top: 5rem;
    text-align: center;
}

.special_list_collab .team {
    position: relative;
    display: inline-block;
    color: #ba7b17;
    font-family: 'Noto Serif JP', serif;
    font-size: 3.0rem;
    font-weight: 600;
    line-height: 1.6;
}

.special_list_collab .team::before {
    content: '|||';
    position: absolute;
    left: -1.3em;
    top: -0.05em;
    display: block;
    transform: scale(0.6, 0.8) skewX(-30deg);
}

.special_list_collab .team::after {
    content: '|||';
    position: absolute;
    right: -1.3em;
    top: -0.05em;
    display: block;
    transform: scale(0.6, 0.8) skewX(-30deg);
}

.special_list_collab .name {
    position: relative;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
}

.special_list_collab .music {
    position: relative;
    color: #ae00ff;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.6;
}

.special_list_collab .special_list_img {
    margin-top: 2.5rem;
}

.artist_name {
    font-size: 1.1em;
    padding: 0 0.3em;
    color: #000000 !important;
    background: linear-gradient(90deg, #925900 0%, #dba000 50%, #925900 100%);
}

@media screen and (min-width: 768px) {
    .main {
        background-image: url(../images/common/bg_pattern_t2-pc.png), url(../images/common/bg_pattern_b2-pc.png) !important;
    }

    .special_list {
        width: 100%;
    }

    .special_list.accordion .accordion_btn {
        pointer-events: none !important;
    }

    .special_list.accordion .accordion_btn::before {
        content: none !important;
    }

    .special_list.accordion .accordion_content {
        display: block !important;
    }

    .special_list li {
        margin-bottom: 8rem;
        padding: 5rem 2rem;
    }

    .special_list_subttl {
        margin-top: 4rem;
        padding-bottom: 1.2rem;
    }

    .special_list_img {
        width: 100%;
        margin: 4rem 0 0 0;
    }

    .special_list_text {
        margin-top: 4rem;
        padding: 0 4rem;
        font-size: 2.0rem;
    }


    .special_list_text .large_gold {
        margin-bottom: 0.8rem;

    }

    .special_list_text .large_gold2 {
        margin-bottom: 0.8rem;
        font-size: 2.6rem;
    }

    .special_list_text .large_pink {
        margin-bottom: 0.8rem;
        font-size: 2.6rem;
    }

    .special_list_collab {
        margin-top: 4rem;
    }

    .special_list_collab .team {
        font-size: 2.4rem;
    }

    .special_list_collab .name {
        font-size: 2.6rem;
    }

    .special_list_collab .music {
        font-size: 2.6rem;
    }

    .special_list_collab .special_list_img {
        margin-top: 2rem;
    }
}

.outline_text {
    text-shadow: 2px 2px 2px #ffffff, -2px 2px 2px #ffffff, 1px -1px 1px #ffffff, -2px -2px 2px #ffffff, 2px 2px 2px #ffffff, -2px 2px 2px #ffffff, 2px -2px 2px #ffffff, -2px -2px 2px #ffffff;
}

.Song_title {
    font-size: 0.7em;
    /* color: #94672d; */
}

.song_box {
    display: flex;
}

.song_artist {
    display: block;
    width: 32%;
    text-align: left;
}

.song_title_detail {
    display: block;
    width: 68%;
    line-height: 2;
}

/* .text_gold {
    color: #ffe639;
    background: linear-gradient(to top, #ffe639 30%, #fff 50%, #ffe639 70%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
} */