#SportsContent #MainContent h2 a img {
    max-width: 85% !important;
    display: flex;
    margin: auto !important;
}

#MainContent .SNS {
    display: flex;
    align-items: center;
}

.TokyoCheer_MainSlide {
    & img {
        height: 600px !important;
        object-fit: cover;
    }
}

.tc-images {
    display: flex;

    & img {
        /* width: 125px !important; */
    }
}

.tokyocheer-fv {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    position: relative;

    @media screen and (max-width: 767px) {
        gap: 0.5rem;
    }
}

.tokyocheer-fv-top {}

.tokyocheer-fv-bottom {
    position: relative;

    &::before {
        content: "";
        position: absolute;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        mix-blend-mode: multiply;
        background-color: #000;
        opacity: 0.3;
    }
}

.tokyocheer-date {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 27px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
    align-items: center;

    @media screen and (max-width: 767px) {
        /* top: 25%;
        left: 25%;
        transform: translate(-25%, -25%); */
        font-size: 12px;
        width: 65%;
    }
}

.common-list {
    /* padding: 0.5em; */
    margin: 0 0 10px;
}

.map-blue {
    background-color: #d9dcef;
}

.map-green {
    background-color: #e1edc7;
}

.map-orange {
    background-color: #fde4cd;
}

.map-yellow {
    background-color: #fffdd4;
}

.map-purple {
    background-color: #e6dbe9;
}

.map-red {
    background-color: #fbd9da;
}

.mapArea {
    margin-bottom: 30px;
}

.mapArea h3 {
    text-align: center;
    font-size: 105%;
    line-height: 1.4;
    color: #ffffff;
    background: #333333;
    border-left: none !important;
    margin: 0;
    padding: 15px 0;
}

.mapArea .streetArea {
    font-size: 105%;
    margin: 0;
    padding: 0;
}

.mapArea .streetArea div {
    display: block;
    color: #000000 !important;
    text-decoration: none !important;
    margin: 0 0 10px;
    padding: 10px;
}

.mapArea .streetArea div.st01 {
    background: #d9dcef;
}

.mapArea .streetArea div.st02 {
    background: #e1edc7;
}

.mapArea .streetArea div.st03 {
    background: #fde4cd;
}

.mapArea .streetArea div.st04 {
    background: #fffdd4;
}

.mapArea .streetArea div.st05 {
    background: #d3ead8;
}

.mapArea .streetArea div.st06 {
    background: #e6dbe9;
}

.mapArea .streetArea div.st07 {
    background: #fbd9da;
}

.mapArea .streetArea li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mapArea {
    margin-bottom: 50px;
}

.mapArea .mapBox {
    margin-bottom: 10px;
}

.mapArea .streetArea {
    margin: 0 auto 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.mapArea .streetArea div {
    width: 30.4%;
    margin: 0 1% 0 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease !important;
}

.mapArea .streetArea div.mb {
    margin-bottom: 1%;
}

.mapArea .streetArea div:nth-of-type(3) {
    margin-right: 0;
}

.mapArea .streetArea div.mainArea {
    width: 64%;
}

.mapArea .streetArea div:hover {
    /* opacity: 0.6 !important; */
}

/* NEWS */

/* top お知らせ一覧共通 */
#TokyoCheer2025_all .newsArea .newsBox {
    border: 4px solid #f3f3f3;
    border-radius: 3px;
    margin: 0 0 20px !important;
    padding: 20px !important;
    overflow-y: auto !important;
    height: fit-content !important;
    max-height: 200px !important;
}

/* top お知らせ一覧共通 */

body #TokyoCheer2025_all .contBtnArea a.gray-bg .item01 .icoBox {
    mix-blend-mode: multiply;
}

@media only screen and (min-width: 801px) {
    body #TokyoCheer2025_all .contBtnArea a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body #TokyoCheer2025_all .contBtnArea {
        -ms-grid-columns: 1fr 1fr 1fr !important;
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    body #TokyoCheer2025_all .contBtnArea-top {
        -ms-grid-columns: 1fr 1fr 1fr 1fr !important;
        grid-template-columns: 1fr 1fr 1fr 1fr !important;
    }
}

#SportsContent p {
    margin: 0;
}

.gray-bg {
    background-color: lightgray !important;
    pointer-events: none;
}

/* .gray-bg .item01:hover {
  background: inherit;
  color: inherit;
  transform: none;
  opacity: 1;
  cursor: default;
} */

.txtBlock {
    text-align: left !important;
}

.txtBlock span {
    display: inline-block;
}

.finishTxt {
    font-size: 16px !important;
    font-weight: 300 !important;
    /* font-family: "Hiragino Mincho ProN", "MS Mincho", serif; */
    /* background-color: #e6d9bd; */
    border: none !important;
    margin: 0 auto 30px !important;
}

.finishTxt-title {
    /* font-weight: bold; */
    /* text-decoration: underline; */
}

/* ------------------------------------------- */
/* FOR 20251114.html */
/* ------------------------------------------- */

#SportsContent .border_img {
    border: none !important;
}

.nolist.form {
    display: flex;
    gap: 10px;

    @media only screen and (max-width: 801px) {
        flex-direction: column;
        gap: 0;
    }
}

.nolist.form a,
.common-btn {
    display: inline-block;
    background-color: #1a753f;
    color: #fff;
    padding: 10px;
    text-decoration: none;
    border-radius: 5px;

    @media (hover: hover) and (pointer: fine) {
        &:hover {
            text-decoration: none !important;
            color: #fff !important;
            opacity: 0.8;
        }
    }

    &.disabled {
        background-color: #516057;
        pointer-events: none;
    }
}

.note {
    padding: 0 20px !important;
    padding-top: 5px !important;
    display: flex;

    @media only screen and (max-width: 801px) {
        flex-direction: column;
    }
}

.note-left {
    width: 55%;
    display: flex;
    align-items: center;

    @media only screen and (max-width: 801px) {
        width: 100%;
        padding-bottom: 1rem;
    }
}

.note-right {
    width: 45%;
    display: flex;

    @media only screen and (max-width: 801px) {
        width: 100%;
        gap: 10px;
    }
}

.note-right-img-left {
    width: 48%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;

    @media only screen and (max-width: 801px) {}
}

.note-right-img-right {
    display: flex;
    align-items: center;
    margin-left: 10px;
}

.messageimgBox {
    width: 100%;
    display: flex;
    gap: 20px;
    margin-bottom: 20px !important;

    & img {
        width: 50%;
    }

    @media only screen and (max-width: 801px) {
        gap: 1rem;
        margin-bottom: 1rem !important;

        & img {
            width: 47%;
        }
    }
}

/* MAIN */

.tkc-state {
    margin-top: 20px !important;
    margin-bottom: 10px !important;
}

/* ------------------------------------------- */
/* FOR street_event/2026.html */
/* ------------------------------------------- */
.copyright {
    text-align: right;
    font-size: 85%;
}

/* ------------------------------------------- */
/* FOR street_event/2025.html */
/* ------------------------------------------- */
#SportsContent #MainContent .archive img {
    width: 100%;
}

#SportsContent #MainContent .performersImgBox {}

#TokyoCheer2025-street_event #TokyoCheer2025_all .venueArea .venueBoxAll .performersArea ul.performersBox li .performersImgBox {
    /* width: 100%;
  max-width: 350px; */
    min-width: 250px;

    @media only screen and (max-width: 801px) {
        width: 60%;
        margin: 10px auto 0 !important;
    }
}

/* ------------------------------------------- */
/* FOR 20251114.html */
/* ------------------------------------------- */

/* .tokyocheer2026_towel_nyuko_ol {
    padding-bottom: 1rem;
} */

#SportsContent .border_img {
    border: none !important;
}

.ul-img {
    display: flex;
    flex-direction: column;
    padding-bottom: 1rem;
}

.btnAreaPT,
.btnAreaPT-mv {
    margin-top: 2rem !important;
}

.btnAreaPT-mv {
    margin-bottom: 0 !important;
}

/* @media only screen and (min-width: 801px) {
    #TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 {

        margin-bottom: 2rem !important;
    }
} */

/* volunteer/index.html */
#TokyoCheer2025-volunteer {
    & #SportsContent table td {
        text-align: center;
    }

    & #TokyoCheer2025_all .addArea {
        width: 80%;
        margin: 40px auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;

        @media screen and (min-width: 801px) {
            flex-direction: row;
        }
    }

    & #TokyoCheer2025_all .addArea .mapBox {
        width: 80%;
        border: 1px solid #ccc;
        margin: 0 auto 20px;

        @media screen and (min-width: 801px) {
            width: 35%;
            margin: 0;
        }
    }

    & #TokyoCheer2025_all .addArea .mapBox02 {
        width: 100%;
    }

    & #TokyoCheer2025_all .addArea .mapTxtBox {
        @media screen and (min-width: 801px) {
            width: 60%;
        }
    }

    & #TokyoCheer2025_all .addArea .mapTxtBox h4 {
        font-size: 105%;
        background: #f3f3f3;
        border-bottom: none !important;
        margin-bottom: 10px;
        padding: 5px 0 2px 10px;
    }

    & #TokyoCheer2025_all .addArea .mapTxtBox .txtBlock {
        font-size: 105%;
    }

    & #TokyoCheer2025_all .addArea .mapTxtBox ul li {
        margin-bottom: 0;
    }

    & #TokyoCheer2025_all .addArea .slideCap {
        text-align: right;
    }
}

/* ------------------------------------------- */
/* FOR FINISH/INDEX.HTML */
/* ------------------------------------------- */

body#TokyoCheer2025-finish_area h2 {
    @media screen and (max-width: 767px) {
        font-size: 150%;
    }
}

body#TokyoCheer2025-finish_area .finisharea01 li p {
    @media screen and (max-width: 767px) {
        font-size: 110% !important;
    }
}

#TokyoCheer2025-finish_area #TokyoCheer2025_all .finishBtnArea li.beforecheck {
    box-sizing: border-box;
}

.pc-off {
    display: none;

    @media screen and (max-width: 767px) {
        display: block;
    }
}

.sp-off {
    display: block;

    @media screen and (max-width: 767px) {
        display: none;
    }
}

/* ------------------------------------------- */
/* FOR MAIN VENUE/INDEX.HTML */
/* ------------------------------------------- */

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 .pageNavi li span {
    display: flex;
    align-items: center;

    @media screen and (max-width: 767px) {
        flex-direction: column;
    }
}

@media only screen and (min-width: 801px) {
    #TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 .imgBox-grid-content {
        justify-content: flex-start !important;
        gap: 20px;
    }

    #TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 .maincontBoxAll li.imgBox-grid {
        width: 23% !important;
    }
}

/* ------------------------------------------- */
/* FOR VOLUNTEER/INDEX.HTML */
/* ------------------------------------------- */

.vol-banner-img,
.finish-banner-img {
    position: relative;
    margin-bottom: 10px;
    padding-bottom: 0;

    &::before {
        content: "";
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        mix-blend-mode: multiply;
        background-color: #000;
        opacity: 0.5;
        z-index: 1;
    }

    & p {
        position: absolute;
        top: 50%;
        left: 47%;
        transform: translate(-40%, -30%);
        color: white;
        font-size: 27px;
        line-height: 1.2;
        font-weight: bold;
        text-align: center;
        z-index: 2;
    }

    @media screen and (max-width: 767px) {
        & p {
            font-size: 12px;
            width: 65%;
        }
    }
}

/* 20260116追記 */

#TokyoCheer2025-street_event #TokyoCheer2025_all .venueArea .venueBoxAll .performersArea ul.performersBox li .performersImgBox {
    height: 187px;

    & .imgBox {
        height: 100%;
        aspect-ratio: 250/187;

        & img {
            max-height: 100%;
            width: 100%;
            object-fit: contain;
        }
    }
}

#TokyoCheer2025-street_event #TokyoCheer2025_all .mapArea .streetArea a {
    &:hover {
        opacity: 0.6;
        cursor: pointer;
    }

    @media only screen and (min-width: 801px) {
        width: 30% !important;
    }
}

#TokyoCheer2025-street_event #TokyoCheer2025_all .mapArea .streetArea a.mainArea {
    @media only screen and (min-width: 801px) {
        width: 64% !important;
    }
}


#TokyoCheer2025-finish_area #TokyoCheer2025_all .finisharea01 li.mt .imgBox {
    max-width: 700px;
    width: 100%;
    margin: 20px auto 0;
}

.red-font {
    color: red;
    font-weight: 700;
}

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 .guestList {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;

    & li {
        margin: 0;
        list-style: none;
        width: calc(1/3*100% - 20px);

        @media screen and (max-width: 800px) {
            width: 100%;
        }

        & h3 {
            margin-bottom: 12px;
            padding-block: 13px;
            font-size: 120%;
            text-align: center;
            background-color: #007CAD;
            color: #fff !important;
        }

        & .guestTitleSub {
            margin-bottom: 4px;
            text-align: center;
            font-weight: 700;
            font-size: 110%;
        }

        & .guestDesc {
            margin-bottom: 20px;
            text-align: center;
            color: #E60012;
            font-weight: 700;

            &.small {
                margin-bottom: 5px;
                line-height: 1.4;
            }
        }

        & .guestProf {
            margin-bottom: 20px;

            &.mb {
                margin-bottom: 47px;
            }
        }

        & .guestHead {
            margin-bottom: 8px;
            text-align: center;
            font-weight: 700;
            font-size: 110%;
            background-color: #E0ECF5;
            padding: 6px 20px 7px 20px;
        }

        & .guestStage {
            color: #E60012;
            font-weight: 700;
        }
    }
}

.noWrap {
    white-space: nowrap;
}

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 {
    & .imgHead.imgHead {
        font-size: 90% !important;
        padding-inline: 4px !important;
        height: 4em;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    & .imgBox {
        display: flex;
        column-gap: 10%;

        & img {
            aspect-ratio: 1;
            object-fit: cover;
        }

        & .imgWrap {
            display: flex;
            justify-content: center;
            margin: 0 auto 20px;
            width: 70%;
            column-gap: 5%;

            @media screen and (max-width: 800px) {
                width: 100%;
            }

            & img {
                aspect-ratio: 297/474;
                object-fit: contain;
                max-width: 50%;
            }
        }
    }

    & .imgBox.column {
        flex-direction: column;

        & .flyerImg {
            width: 100%;

            & img {
                object-fit: contain;
                aspect-ratio: auto;
            }
        }
    }

    & .imgCap {
        text-align: center;
    }
}

body #TokyoCheer2025_all .moreBtn {
    & p {
        text-align: center;
        margin-bottom: 5px;
    }
}

/* 20260128追記 */

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 ul.programBox {
    & li {
        border: 4px solid #0000001a;
    }
}

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 h3.programTitle {
    position: relative;

    @media only screen and (max-width: 800px) {
        text-align: left !important;
    }

    & .free {
        position: absolute;
        top: 50%;
        right: 7%;
        translate: 0 -50%;
        background-color: #007CAD;
        color: #fff;
        padding: .4em 1em;
        border-radius: 2em;
        font-size: 80%;
        font-weight: 700;
        letter-spacing: .05em;
        margin-left: 2em;

        @media only screen and (min-width: 801px) {
            right: 18%;
        }
    }
}


#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 ul.programBox li .programImgBox .imgBox {
    &.w240 {
        @media only screen and (min-width: 801px) {
            width: 240px;
        }
    }
}

#TokyoCheer2025-main_area #SportsContent .programTxtBox {
    @media only screen and (min-width: 801px) {
        margin-right: 4%;
    }
}

#TokyoCheer2025-main_area #TokyoCheer2025_all .mainArea01 ul.programBox li .programImgBox {
    @media only screen and (min-width: 801px) {
        margin-left: auto !important;
    }
}

/* 20260205追記 */
#SportsContent a.pdf.disabled {
    pointer-events: none;
    color: #808080;
    text-decoration: none;
}

/* 20260210追記 */
#TokyoCheer2025-street_event #TokyoCheer2025_all .outlineArea .messageimgBoxList {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 40px;

    & li {
        margin: 0;
        list-style: none;
        width: calc((100% - (15px * 2)) / 3);

        @media screen and (max-width: 800px) {
            width: calc((100% - (15px * 1)) / 2);
        }

        & img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
    }
}

#TokyoCheer2025-street_event #TokyoCheer2025_all .venueArea .venueBoxAll .performersArea ul.performersBox li {
    &.alignTop {
        align-items: flex-start;
    }
}

/* 20260305追記 */
#TokyoCheer2025-gallery #TokyoCheer2025_all .yearLink {
    @media screen and (max-width: 800px) {
        flex-wrap: wrap;
        gap: 10px;
        justify-content: left !important;
    }
    & li {
        & a {

            padding: 15px 34px 11px !important;
        }
    }
}

#TokyoCheer2025-gallery #TokyoCheer2025_all .galleryBox .galleryList li .imgBox {
    aspect-ratio: 260/195;

    & img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* 0311追記 */
#TokyoCheer2025-street_event #TokyoCheer2025_all {
    & .yearLink{
        font-size: 105%;
        margin: 0 auto 30px;
        display: flex;
        justify-content: center;
        
        & li{
            text-align: center;
            list-style: none;
            margin: 0 5px;
            padding: 0;
            
            & a{
                display: block;
                color: #FFF;
                font-weight: bold;
                line-height: 1.3;
                text-decoration: none;
                border: 1px solid #007CAD;
                background: #007CAD;
                border-radius: 5px;
                padding: 15px 20px 10px;
                transition: all 0.5s ease;
                
                &:hover{
                    opacity: 1;
                    color: #007CAD;
                    background: #FFF;
                    border: 1px solid #CCC;
                }
            }
        }
    }
}