@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&display=swap";

html {
    color: #000;
    background: #fff
}

*,
*:before,
*:after {
    box-sizing: border-box
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset,
img {
    border: 0
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var,
optgroup {
    font-style: inherit;
    font-weight: inherit
}

del,
ins {
    text-decoration: none
}

ul li {
    list-style: none
}

caption,
th {
    text-align: left
}

q:before,
q:after {
    content: ""
}

abbr,
acronym {
    border: 0;
    font-variant: normal
}

sup,
sub {
    vertical-align: baseline
}

legend {
    color: #000
}

input,
button,
textarea,
select,
optgroup,
option {
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit
}

input,
button,
textarea,
select {
    font-size: 100%
}

button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    appearance: none
}

body:not(.device-type-desktop):not(.device-type-mobile) .container {
    img {
        max-width: 100%
    }
}

@media screen and (max-width: 1079px) {
    body:not(.device-type-desktop):not(.device-type-mobile) {
        br.pc {
            display: none
        }

        .superbanner-mobile .rectangle-mobile {
            display: grid;
            place-content: center
        }

        .container {
            display: flex;
            flex-flow: column;
            font-size: calc(14vw / var(--_mbw));
            line-height: calc(26vw / var(--_mbw))
        }

        .hero__container {
            order: -1
        }

        .header__container {
            min-height: calc(70vw / var(--_mbw2))
        }

        .navigation.nav__main {
            min-height: calc(133vw / var(--_mbw))
        }

        .navigation.nav__sub {
            min-height: calc(94vw / var(--_mbw))
        }

        .navigation__container {
            order: 0
        }

        .information__container {
            display: flex;
            flex-direction: column;
            padding: 0 calc(10vw / var(--_mbw));

            .parts__emergency {
                .emergency__container {
                    margin-top: calc(20vw / var(--_mbw))
                }
            }

            .banner__vod__items,
            .banner__items {
                >.banner__item {
                    margin-top: calc(20vw / var(--_mbw))
                }
            }

            .parts__ticker {
                .news__ticker {
                    margin-top: calc(20vw / var(--_mbw))
                }
            }
        }

        .navigation__container {
            display: grid;
            grid-auto-flow: row;
            grid-template-columns: 100%
        }

        .contents__container {
            padding-bottom: calc(30vw / var(--_mbw))
        }

        .main__container {
            font-size: calc(14vw / var(--_mbw));
            line-height: calc(26vw / var(--_mbw));

            img {
                max-width: 100%
            }
        }

        .story__container {
            margin: 0 calc(10vw / var(--_mbw));

            .event_button {
                margin-top: calc(30vw / var(--_mbw))
            }
        }

        .youtube__container,
        .sns__container {
            margin: 0 calc(10vw / var(--_mbw))
        }

        .aside__container {
            display: none
        }

        .common__parts__container {
            grid-area: common;
            display: grid;
            grid-auto-flow: row;

            .appendix__title {
                margin-top: calc(30vw / var(--_mbw))
            }
        }

        #common-tver-ranking-mobile {
            margin-top: calc(16vw / var(--_mbw))
        }

        #common-footer a {
            font-size: 12px
        }

        .hero__image {
            background-image: var(--_mainImageMobile);
            aspect-ratio: var(--_aspectRatioMobile);
            width: 100%;
            height: auto;
            background-size: contain
        }

        .hero__logo {
            --_logo-width: calc(215vw / var(--_mbw2));
            --_date-width: calc(109vw / var(--_mbw2));
            --_gap: calc(100% - var(--_logo-width) - var(--_date-width));
            display: grid;
            grid-template-columns: var(--_logo-width) var(--_date-width);
            gap: var(--_gap);
            align-items: center;
            padding: calc(13.5vw / var(--_mbw2)) calc(16vw / var(--_mbw2));
            background: #ccc;

            img {
                width: 100%;
                height: auto
            }
        }

        .vod__container {
            background-color: var(--_key_grad);
            min-height: calc(169vw / var(--_mbw2))
        }

        .enhanced__vod__list {
            display: grid;
            justify-content: center;
            align-items: center;
            grid-template-columns: repeat(3, 1fr);
            padding: calc(15vw / var(--_mbw2)) calc(10vw / var(--_mbw2));
            gap: calc(5vw / var(--_mbw2));
            background-color: var(--_primary_color);

            .container & {
                grid-template-columns: repeat(3, 1fr);
                padding: calc(15vw / var(--_mbw2)) calc(10vw / var(--_mbw2));
                gap: 0 calc(5vw / var(--_mbw2))
            }

            .floating & {
                grid-template-columns: repeat(2, 1fr);
                padding: calc(16vw / var(--_mbw)) calc(8vw / var(--_mbw));
                background-color: var(--_floating-bg-color)
            }
        }

        .enhanced__vod__list:has(>:only-child) {
            grid-template-columns: auto
        }

        .enhanced__vod__item {
            --_tver-icon: calc(59vw / var(--_mbw));
            --_telasa-icon: calc(82vw / var(--_mbw));
            width: calc(120vw / var(--_mbw2));

            .enhanced__vod__item__image__icon {
                padding: calc(4vw / var(--_mbw2)) 0;
                height: calc(24vw / var(--_mbw2))
            }

            &.item-tver {
                .enhanced__vod__item__text {
                    >p {
                        font-size: calc(8vw / var(--_mbw2))
                    }

                    .sub-read {
                        font-size: calc(7vw / var(--_mbw2))
                    }
                }

                .enhanced__vod__item__icon {
                    width: calc(37vw / var(--_mbw2))
                }
            }

            &.item-telasa {
                .enhanced__vod__item__icon {
                    width: calc(48vw / var(--_mbw2))
                }
            }

            &.item-ttfc {
                .enhanced__vod__item__icon {
                    width: calc(45vw / var(--_mbw2))
                }
            }
        }

        .enhanced__vod__item__text {
            padding: calc(4vw / var(--_mbw2)) calc(8vw / var(--_mbw2));
            display: grid;
            place-content: center;
            vertical-align: middle;
            height: calc(48vw / var(--_mbw2));
            text-align: center;

            >p {
                font-family: "M PLUS 1p";
                font-size: calc(9vw / var(--_mbw2));
                line-height: 1.5;
                letter-spacing: .1em;
                font-weight: 700
            }

            .strong {
                font-size: calc(15vw / var(--_mbw2));
                line-height: .8
            }

            .sub-read {
                font-size: calc(7vw / var(--_mbw2));
                transform-origin: left bottom
            }

            .highlight {
                letter-spacing: .1em
            }
        }

        .navigation.nav__main {
            padding: 0;
            --_column-count: 3;

            .navigation__list__container {
                display: flex;
                flex-wrap: wrap
            }

            .navigation__item {
                text-align: center;
                padding: 20px 0;
                text-decoration: none;
                position: relative;
                border: 1px solid #cccccc;
                border-right: none;
                flex: 1;

                &:last-child {
                    border-right: 1px solid #cccccc
                }
            }

            .navigation__item__title {
                font-size: 18px;
                font-weight: 700;

                &:before {
                    transform: translate(-50%, -9px);
                    font-size: 14px;
                    color: var(--_badge-color);
                    background-color: var(--_badge-bg);
                    line-height: 22px;
                    padding: 0;
                    border-radius: 4px;
                    width: 80px;
                    height: 20px;
                    font-weight: 400
                }
            }

            .navigation__item__subtitle {
                font-size: .75rem
            }
        }

        .navigation.nav__sub {
            .navigation__list__container {
                margin: calc(10vw / var(--_mbw)) calc(7vw / var(--_mbw)) 0
            }

            .navigation__item {
                min-height: calc(32vw / var(--_mbw));
                border: var(--_nav-border);
                border-radius: calc(50vw / var(--_mbw));
                margin: calc(5vw / var(--_mbw));
                padding: calc(2vw / var(--_mbw)) calc(15vw / var(--_mbw))
            }

            .navigation__item__title {
                font-size: calc(10vw / var(--_mbw));
                gap: calc(5vw / var(--_mbw))
            }
        }

        .button__primary {
            --_size: calc(50vw / var(--_mbw2));
            font-size: calc(16vw / var(--_mbw2));
            padding: calc(12vw / var(--_mbw2)) calc(40vw / var(--_mbw2));
            width: 100%;
            border-radius: calc(100vw / var(--_mbw));
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: var(--_size);
            font-weight: 700;
            color: var(--_btn-color);
            background: var(--_btn-bg);
            text-decoration: none;
            position: relative;
            line-height: 1.5;

            >svg {
                fill: currentColor;
                position: absolute;
                top: 50%;
                right: calc(var(--_size) / 2);
                transform: translate(50%, -50%)
            }

            &.no__icon {
                >svg {
                    display: none
                }
            }

            &.opac {
                display: flex
            }
        }

        .ticker__title {
            background: var(--_content-bg)
        }

        .news__ticker {
            .ticker__viewport {
                position: relative;
                z-index: 1;
                padding-top: calc(40vw / var(--_mbw));
                margin-top: calc(-40vw / var(--_mbw));
                overflow: hidden
            }

            .ticker__title {
                padding: calc(17.5vw / var(--_mbw)) 0 calc(7.5vw / var(--_mbw));
                font-size: calc(14vw / var(--_mbw));
                line-height: 1
            }

            .ticker__button {
                height: calc(100% - calc(40vw / var(--_mbw)))
            }

            .ticker__button--prev {
                top: calc(40vw / var(--_mbw));
                left: 0
            }

            .ticker__button--next {
                top: calc(40vw / var(--_mbw));
                right: 0
            }

            .ticker__slide {
                padding: calc(11vw / var(--_mbw)) calc(40vw / var(--_mbw));
                width: 100%;
                justify-content: center;
                text-align: center;
                font-size: calc(13vw / var(--_mbw));
                line-height: calc(19vw / var(--_mbw));
                text-align: left;

                >a {
                    color: #000
                }
            }
        }

        .card__vod {
            display: grid;
            background: var(--_content-bg);
            padding: calc(19vw / var(--_mbw)) calc(17vw / var(--_mbw));
            margin: 0 auto;
            width: calc(346vw / var(--_mbw))
        }

        .card__vod__image {
            position: relative;

            .video__thumb {
                width: 100%
            }

            .play__icon {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%)
            }
        }

        .card__vod__container {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-start;
            text-align: center;
            font-weight: 700;
            letter-spacing: .1em;
            width: fit-content;
            font-size: calc(16vw / var(--_mbw));
            line-height: 2.0625;
            width: 100%;
            align-items: center;

            strong {
                font-weight: 700;
                font-size: calc(24vw / var(--_mbw));
                line-height: 1.4166666667
            }
        }

        .card__vod__logo__telasa {
            width: calc(120vw / var(--_mbw))
        }

        .card__vod__logo__tver {
            width: calc(80vw / var(--_mbw))
        }

        .card__vod__image__and__text {
            font-weight: 700;
            width: 100%;
            margin-top: calc(20vw / var(--_mbw));
            margin-bottom: calc(10vw / var(--_mbw));
            display: flex;
            justify-content: center;
            font-size: calc(16vw / var(--_mbw));

            >span {
                padding-top: calc(20vw / var(--_mbw));
                padding-left: calc(12vw / var(--_mbw));
                display: block;
                line-height: 1
            }

            &.tver {
                >span {
                    padding-top: calc(29vw / var(--_mbw))
                }
            }

            span {
                display: block;
                line-height: 1;
                padding-top: 23px;
                padding-left: 12px
            }
        }

        .card__vod__caption {
            background-color: #e0e0e0;
            color: #666;
            line-height: 1;
            font-weight: 400;
            text-align: center;
            padding: calc(8vw / var(--_mbw)) calc(11vw / var(--_mbw));
            font-size: calc(14vw / var(--_mbw));
            margin: calc(8vw / var(--_mbw)) auto 0;
            min-width: calc(154vw / var(--_mbw))
        }

        .typ__h2 {
            font-family: var(--_font-science);
            text-align: center;
            font-weight: 400;
            color: #191e28;

            &.typ__h2--color2 {
                color: #fff
            }

            padding-bottom: calc(2vw / var(--_mbw2));
            margin-bottom: calc(16vw / var(--_mbw2));
            font-size: calc(38vw / var(--_mbw2));
            letter-spacing: 0;
            line-height: 1;

            &.typ__h2-single {
                padding-bottom: calc(12vw / var(--_mbw2))
            }

            >span {
                margin-top: calc(8vw / var(--_mbw2));
                display: block;
                font-size: calc(12vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1.4
            }
        }

        .bg__container {
            position: relative;

            >* {
                position: relative;
                z-index: 5
            }

            &:before {
                content: "";
                position: absolute;
                top: 0;
                background: #191e28;
                z-index: 1;
                left: 50%;
                transform: translate(-50%);
                width: 100dvw;
                height: 100%
            }
        }

        .bg__container--type2 {
            position: relative;

            >* {
                position: relative;
                z-index: 5
            }

            &:before {
                content: "";
                position: absolute;
                top: 0;
                background: #e72221;
                z-index: 1;
                left: 50%;
                transform: translate(-50%);
                width: 100dvw;
                height: 100%
            }
        }

        .ondemand-list {
            display: flex;
            flex-wrap: wrap;
            gap: calc(8vw / var(--_mbw2));

            .ondemand-list__item {
                width: 100%
            }
        }

        .ondemand {
            width: 100%;
            display: flex;

            a {
                padding: calc(8vw / var(--_mbw2));
                display: flex;
                align-items: center;
                gap: calc(16vw / var(--_mbw2));
                width: 100%;
                border-radius: calc(8vw / var(--_mbw2));
                background: #191e28;
                text-decoration: none
            }

            .thumb {
                width: calc(64vw / var(--_mbw2));
                border-radius: calc(4vw / var(--_mbw2));
                aspect-ratio: 16 / 11;
                flex-shrink: 0;

                img {
                    width: 100%
                }
            }

            .txt {
                color: #fff;
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1.4
            }
        }

        .link__container {
            .banner__items {
                gap: calc(11vw / var(--_mbw2));

                .banner__item {
                    width: 100%
                }
            }
        }

        .sns__container {
            padding-top: 0;

            .sns-list {
                display: flex;
                justify-content: center;
                gap: calc(24vw / var(--_mbw2))
            }

            .sns {
                line-height: .8;

                a {
                    display: inline-block;
                    width: 100%;
                    text-decoration: none
                }

                .icon {
                    width: calc(60vw / var(--_mbw2));

                    img {
                        width: 100%
                    }
                }

                .txt {
                    margin-top: calc(8vw / var(--_mbw2));
                    color: #191e28;
                    text-align: center;
                    font-family: "M PLUS 1p";
                    font-size: calc(10vw / var(--_mbw2));
                    font-style: normal;
                    font-weight: 400;
                    line-height: .8
                }
            }

            .caption {
                margin-top: calc(80vw / var(--_mbw2));
                color: #191e28;
                text-align: center;
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-style: normal;
                font-weight: 700;
                line-height: 1.4
            }
        }

        .caption__container {
            .caption {
                color: #191e28;
                text-align: center;
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-style: normal;
                font-weight: 700;
                line-height: 1.4
            }
        }

        .section__container {

            +.sns__share__container,
            +.rebroadcast__container {
                margin-top: 0;

                .appendix__title {
                    margin-top: 0
                }
            }
        }

        .news__container {
            --_item-color: #333333;
            --_title-color: #ffffff;
            --_date-color: #8B8F95;
            --_tag-color: #E72221;
            --_tag-bg: #dddddd;
            padding: var(--_container-space);

            .news__button {
                margin-top: calc(24vw / var(--_mbw2))
            }
        }

        .news__item {
            font-kerning: normal;
            text-wrap: pretty;
            overflow-wrap: anywhere;
            word-break: normal;
            background-color: #191e28
        }

        .news__item__tag {
            color: var(--_tag-color);
            display: grid;
            align-items: center;
            line-height: 1;
            margin-block: var(--_leading-trim)
        }

        .news__items__default {
            display: grid;
            gap: calc(16vw / var(--_mbw2));

            .news__item {
                color: var(--_item-color);
                text-decoration: none;
                font-weight: 700;
                border-radius: calc(8vw / var(--_mbw2))
            }

            .news__item__image-box {
                width: 100%;
                margin: auto;
                height: calc(208vw / var(--_mbw2));
                position: relative;
                flex-shrink: 0;
                overflow: hidden
            }

            .news__item__image {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                height: 101%;
                width: auto
            }

            .news__item__txt-box {
                padding: calc(16vw / var(--_mbw2));
                flex: 1;
                display: flex;
                flex-direction: column
            }

            .news__item__tag {
                color: var(--_tag-color);
                width: fit-content;
                display: flex;
                align-items: center;
                gap: 0 calc(8vw / var(--_mbw2));

                >span {
                    font-family: "M PLUS 1p";
                    font-size: calc(12vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1
                }
            }

            .news__item__icon {
                display: inline-block;
                width: calc(10vw / var(--_mbw2));
                height: calc(10vw / var(--_mbw2));
                border: calc(1.6vw / var(--_mbw2)) solid #E72221;
                border-radius: 50%
            }

            .news__item__title {
                color: var(--_title-color);
                font-family: "M PLUS 1p";
                font-size: calc(14vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1.45;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden
            }

            .news__item__date {
                color: var(--_date-color);
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1;
                display: flex
            }

            .news__item__txt-info {
                padding: calc(4vw / var(--_mbw2)) 0;
                margin-top: calc(8vw / var(--_mbw2));
                display: flex;
                align-items: flex-end;
                flex: 1;
                gap: 0 calc(24vw / var(--_mbw2))
            }
        }

        .news__items__split__screen {
            display: grid;
            gap: calc(16vw / var(--_mbw2));
            --_image-width: calc(144vw / var(--_mbw2));
            --_image-height: calc(100vw / var(--_mbw2));

            .news__item {
                color: var(--_item-color);
                display: flex;
                text-decoration: none;
                font-weight: 700;
                border-radius: 8px;
                overflow: hidden
            }

            .news__item__image-box {
                width: var(--_image-width);
                height: var(--_image-height);
                position: relative;
                flex-shrink: 0;
                overflow: hidden
            }

            .news__item__image {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                height: 101%;
                width: auto
            }

            .news__item__txt-box {
                flex: 1;
                padding: calc(16vw / var(--_mbw2));
                display: flex;
                flex-direction: column;
                position: relative
            }

            .news__item__tag {
                color: var(--_tag-color);
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1;
                width: fit-content;
                display: flex;
                align-items: center;
                gap: 0 calc(8vw / var(--_mbw2))
            }

            .news__item__icon {
                display: inline-block;
                width: calc(10vw / var(--_mbw2));
                height: calc(10vw / var(--_mbw2));
                border: calc(1.6vw / var(--_mbw2)) solid #E72221;
                border-radius: 50%
            }

            .news__item__title {
                color: var(--_title-color);
                font-family: "M PLUS 1p";
                font-size: calc(14vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1.45;
                overflow: hidden;
                display: -webkit-box;
                text-overflow: ellipsis;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 2;
                line-clamp: 2
            }

            .news__item__date {
                color: var(--_date-color);
                font-family: "M PLUS 1p";
                font-size: calc(12vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1
            }

            .news__item__txt-info {
                padding: calc(3vw / var(--_mbw2)) 0;
                margin-top: calc(8vw / var(--_mbw2));
                display: flex;
                flex: 1;
                align-items: end;
                gap: 0 calc(16vw / var(--_mbw2))
            }
        }

        .news__items__list {
            display: grid;
            padding: calc(10vw / var(--_mbw)) calc(20vw / var(--_mbw)) calc(20vw / var(--_mbw));
            background: #191e28;

            .news__item {
                color: var(--_item-color);
                display: grid;
                grid-auto-flow: row;
                font-weight: 700;
                padding: calc(15vw / var(--_mbw)) 0;
                border-bottom: 1px solid #cccccc
            }

            .news__item__tag {
                color: var(--_tag-color);
                font-size: calc(12vw / var(--_mbw));
                line-height: 1;
                font-weight: 700;
                background: var(--_tag-bg);
                border-radius: calc(50vw / var(--_mbw));
                width: fit-content;
                padding: calc(5.5vw / var(--_mbw)) calc(13vw / var(--_mbw));
                margin-bottom: calc(10vw / var(--_mbw))
            }

            .news__item__title {
                color: var(--_title-color);
                font-weight: 400;
                font-size: calc(14vw / var(--_mbw));
                line-height: calc(26vw / var(--_mbw));
                display: block
            }

            .news__item__date {
                color: var(--_date-color);
                font-size: calc(14vw / var(--_mbw));
                margin-bottom: calc(5vw / var(--_mbw));
                font-weight: 700
            }
        }

        .news__container {
            display: grid;
            grid-auto-flow: row;
            --_button-space: calc(30vw / var(--_mbw));
            --_margin: calc(24vw / var(--_mbw2));

            .button__primary {
                margin-top: var(--_margin)
            }
        }

        .get__more__items {
            opacity: 1;
            filter: alpha(opacity=100);
            display: block;
            transition: .3s ease-in-out;
            display: flex;
            justify-content: center;
            align-items: center;
            height: var(--_size);
            font-weight: 700;
            color: var(--_btn-color);
            background: var(--_btn-bg);
            text-decoration: none;
            border-radius: 100vh;
            position: relative;

            &:hover {
                animation: backToOpac1 .7s linear 0s
            }

            --_size: calc(48vw / var(--_mbw));
            font-size: calc(14vw / var(--_mbw));
            width: 100%;

            >svg {
                fill: currentColor;
                position: absolute;
                top: 50%;
                right: calc(var(--_size) / 2);
                transform: translate(50%, -50%)
            }
        }

        .news__item__container {
            display: grid;
            grid-auto-flow: row;
            gap: var(--_gap);

            img {
                max-width: 100%
            }

            h1 {
                font-weight: 700;
                display: grid;
                grid-auto-flow: row;

                &:before {
                    content: attr(data-date);
                    font-family: var(--_body-font);
                    color: #fff;
                    background-color: var(--_body-bg);
                    display: block;
                    width: fit-content
                }
            }

            .attention-ttl {
                text-align: center
            }

            .attention-text {
                border: 1px solid rgba(0, 0, 0, .1)
            }
        }

        .story__items__container {
            --_gap: calc(24vw / var(--_mbw));

            h1 {
                line-break: normal;
                text-align: left;
                font-size: calc(28vw / var(--_mbw));
                gap: calc(10vw / var(--_mbw));

                &:before {
                    font-size: calc(16vw / var(--_mbw));
                    padding: calc(5vw / var(--_mbw)) calc(20vw / var(--_mbw))
                }
            }

            .h3-ttl-a {
                font-size: calc(16vw / var(--_mbw))
            }

            .h3-ttl-b {
                padding: calc(16vw / var(--_mbw2));
                margin-top: calc(16vw / var(--_mbw2));
                margin-bottom: calc(16vw / var(--_mbw2));
                border-radius: calc(4vw / var(--_mbw2));
                background: #e8f3f5;
                color: #191e28;
                font-family: "M PLUS 1p";
                font-size: calc(16vw / var(--_mbw));
                font-weight: 800;
                line-height: 1.5
            }

            .attention-text {
                font-size: calc(12vw / var(--_mbw));
                line-height: calc(18vw / var(--_mbw));
                padding: calc(20vw / var(--_mbw))
            }
        }

        .news .news__items__default {
            .news__item {
                &:not(:first-child) {
                    color: var(--_item-color);
                    display: flex;
                    text-decoration: none;
                    font-weight: 700;

                    .news__item__image-box {
                        width: calc(144vw / var(--_mbw2));
                        height: calc(100vw / var(--_mbw2));
                        object-fit: cover;
                        object-position: center
                    }

                    .news__item__txt-box {
                        padding: calc(16vw / var(--_mbw2));
                        flex: 1;
                        display: flex;
                        flex-direction: column;
                        max-height: calc(100vw / var(--_mbw2))
                    }

                    .news__item__tag {
                        color: var(--_tag-color);
                        width: fit-content;
                        display: flex;
                        align-items: center;
                        gap: 0 calc(8vw / var(--_mbw2));

                        >span {
                            font-family: "M PLUS 1p";
                            font-size: calc(12vw / var(--_mbw2));
                            font-weight: 700;
                            line-height: 1
                        }
                    }

                    .news__item__icon {
                        display: inline-block;
                        width: calc(10vw / var(--_mbw2));
                        height: calc(10vw / var(--_mbw2));
                        border: calc(1.6vw / var(--_mbw2)) solid #E72221;
                        border-radius: 50%
                    }

                    .news__item__title {
                        color: var(--_title-color);
                        font-family: "M PLUS 1p";
                        font-size: calc(14vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1.45;
                        display: -webkit-box;
                        -webkit-line-clamp: 2;
                        -webkit-box-orient: vertical;
                        overflow: hidden
                    }

                    .news__item__date {
                        color: var(--_date-color);
                        font-family: "M PLUS 1p";
                        font-size: calc(12vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1;
                        display: flex
                    }

                    .news__item__txt-info {
                        margin-top: calc(8vw / var(--_mbw2));
                        display: flex;
                        align-items: flex-end;
                        flex: 1;
                        gap: 0 calc(16vw / var(--_mbw2))
                    }
                }
            }
        }

        .news__items__container {
            padding: 0 0 calc(80vw / var(--_mbw2));

            .h1-ttl-box {
                padding: calc(16vw / var(--_mbw2)) 0;
                margin-bottom: calc(16vw / var(--_mbw2));
                font-weight: 700;
                position: relative;

                >* {
                    position: relative;
                    z-index: 5
                }

                &:before {
                    content: "";
                    position: absolute;
                    top: 0;
                    background: #191e28;
                    z-index: 1;
                    left: 50%;
                    transform: translate(-50%);
                    width: 100dvw;
                    height: 100%
                }

                .info {
                    padding: calc(4vw / var(--_mbw2)) 0;
                    margin-bottom: calc(8vw / var(--_mbw2));
                    display: flex;
                    align-items: flex-end;
                    gap: 0 calc(16vw / var(--_mbw2))
                }

                .tag {
                    color: var(--_tag-color);
                    width: fit-content;
                    display: flex;
                    align-items: center;
                    gap: 0 calc(8vw / var(--_mbw2));
                    flex-shrink: 0;

                    >span {
                        font-family: "M PLUS 1p";
                        font-size: calc(12vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1
                    }
                }

                .icon {
                    display: inline-block;
                    width: calc(10vw / var(--_mbw2));
                    height: calc(10vw / var(--_mbw2));
                    border: calc(1.6vw / var(--_mbw2)) solid var(--_tag-color);
                    border-radius: 50%
                }

                .date {
                    color: var(--_date-color);
                    font-family: "M PLUS 1p";
                    font-size: calc(12vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1
                }

                h1 {
                    color: #fff;
                    font-family: "M PLUS 1p";
                    font-size: calc(20vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1.4
                }
            }

            .img-box {
                img {
                    width: 100%;
                    height: auto
                }
            }

            .img-box1 {
                margin-bottom: calc(20vw / var(--_mbw));
                text-align: center
            }

            .img-box2 {
                margin-bottom: calc(20vw / var(--_mbw));
                display: flex;
                align-items: center;
                justify-content: center;
                gap: calc(8vw / var(--_mbw));

                >li {
                    width: calc((100% - calc(8vw / var(--_mbw))) / 2)
                }

                img {
                    max-width: 100%;
                    height: auto
                }
            }

            .h3-ttl-a {
                margin-top: calc(16vw / var(--_mbw2));
                margin-bottom: calc(16vw / var(--_mbw2));
                color: var(--Key, #E72221);
                font-family: "M PLUS 1p";
                font-size: calc(18vw / var(--_mbw2));
                font-style: normal;
                font-weight: 700;
                line-height: 1.45
            }

            .h3-ttl-b {
                padding: calc(10.4vw / var(--_mbw2)) calc(15.6vw / var(--_mbw2));
                margin-top: calc(16vw / var(--_mbw2));
                margin-bottom: calc(16vw / var(--_mbw2));
                background: #f5f5f5;
                color: #191e28;
                font-family: "M PLUS 1p";
                font-size: calc(16vw / var(--_mbw2));
                font-weight: 700;
                line-height: 1.5
            }

            .read-box {
                color: #191e28;
                font-family: "M PLUS 1p";
                font-size: calc(14vw / var(--_mbw));
                font-style: normal;
                font-weight: 400;
                line-height: 1.8
            }

            .youtube-box {
                position: relative;
                height: 0;
                padding-bottom: 56.25%;

                iframe {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    left: 0
                }
            }

            .img-box,
            .read-box,
            .btn-box,
            .youtube-wrap {
                margin-top: calc(16vw / var(--_mbw2))
            }

            .h3-ttl-a {
                +.h3-ttl-b {
                    margin-top: calc(16vw / var(--_mbw2))
                }

                +.read-box {
                    margin-top: calc(16vw / var(--_mbw2))
                }
            }

            .h1-ttl-box+.h3-ttl-a {
                margin-top: calc(16vw / var(--_mbw2))
            }

            .attention-ttl {
                margin-top: calc(16vw / var(--_mbw2));
                margin-bottom: calc(16vw / var(--_mbw2));
                font-family: "M PLUS 1p";
                font-size: calc(18vw / var(--_mbw2));
                line-height: 1.5;
                text-align: center
            }

            .attention-text {
                font-size: calc(12vw / var(--_mbw));
                line-height: calc(18vw / var(--_mbw));
                margin-top: calc(20vw / var(--_mbw));
                border: 1px solid rgba(0, 0, 0, .1);
                padding: calc(20vw / var(--_mbw))
            }

            .news-line {
                height: 1px;
                background: #00000026;
                margin-top: calc(24vw / var(--_mbw2));
                margin-bottom: calc(24vw / var(--_mbw2))
            }
        }

        .section__container {
            padding: calc(40vw / var(--_mbw2)) calc(16vw / var(--_mbw2))
        }

        .program__container {
            position: relative;

            .program-list-wrapper {
                padding: 0
            }

            .program-list {
                display: flex;
                flex-wrap: wrap;
                gap: calc(24vw / var(--_mbw2)) calc(16vw / var(--_mbw2));

                >li {
                    width: calc((100% - calc(16vw / var(--_mbw2))) / 2);

                    >a {
                        display: block;
                        width: 100%;
                        text-decoration: none
                    }

                    .thumb {
                        width: 100%;
                        overflow: hidden;
                        margin-bottom: calc(8vw / var(--_mbw2));
                        border-radius: calc(8vw / var(--_mbw2))
                    }

                    .title {
                        color: #fff;
                        font-family: var(--_font-mplus1);
                        transform: rotate(.05deg);
                        font-size: calc(16vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1.5
                    }

                    .date {
                        color: #8b8f95;
                        margin-top: calc(8vw / var(--_mbw2));
                        font-family: var(--_font-mplus1);
                        transform: rotate(.05deg);
                        font-size: calc(12vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1.4
                    }
                }
            }

            .program-button {
                display: none
            }
        }

        &.top {
            .top__story__container {
                text-align: center;
                background-color: #fff;

                .card__story__youtube {
                    position: relative;
                    height: 0;
                    padding-bottom: 56.25%;

                    >iframe {
                        width: 100%;
                        aspect-ratio: 16 / 9
                    }

                    >img {
                        width: 100%
                    }
                }
            }

            .card__story__date {
                font-size: calc(14vw / var(--_mbw));
                font-weight: 700;
                padding-bottom: calc(5vw / var(--_mbw))
            }

            .card__story__title {
                font-weight: 700;
                font-size: calc(21vw / var(--_mbw));
                text-align: center
            }

            .card__story__summary {
                text-align: justify;
                font-size: calc(14vw / var(--_mbw));
                line-height: calc(26vw / var(--_mbw))
            }

            .ondemand__container {
                &.is-none {
                    +.link__container {
                        padding-top: 0
                    }
                }
            }

            .news-list {
                display: flex;
                flex-direction: column;
                gap: calc(16vw / var(--_mbw2));

                .list {
                    width: 100%;
                    display: flex;

                    >a {
                        display: flex;
                        text-decoration: none;
                        width: 100%
                    }

                    .thumb {
                        width: calc(144vw / var(--_mbw2));
                        flex-shrink: 0;
                        border-radius: calc(8vw / var(--_mbw2)) 0 0 calc(8vw / var(--_mbw2));
                        background-color: #191e28;
                        overflow: hidden;

                        >img {
                            width: 100%
                        }
                    }

                    .txt-box {
                        padding: calc(18vw / var(--_mbw2));
                        display: flex;
                        flex-direction: column;
                        gap: calc(8vw / var(--_mbw2));
                        border-radius: 0 calc(8vw / var(--_mbw2)) calc(8vw / var(--_mbw2)) 0;
                        background-color: #191e28;
                        overflow: hidden;

                        .txt {
                            color: #fff;
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: calc(14vw / var(--_mbw2));
                            font-weight: 700;
                            line-height: 1.45;
                            display: -webkit-box;
                            -webkit-box-orient: vertical;
                            -webkit-line-clamp: 2;
                            overflow: hidden
                        }

                        .info {
                            display: flex;
                            align-items: center
                        }

                        .tag {
                            color: var(--Key, #E72221);
                            text-align: center;
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: calc(12vw / var(--_mbw2));
                            font-weight: 700;
                            line-height: 1.4;
                            display: inline-flex;
                            align-items: center;
                            gap: 0 calc(8vw / var(--_mbw2))
                        }

                        .date {
                            margin-left: calc(16vw / var(--_mbw2));
                            color: var(--main-second-base-color, #8B8F95);
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: calc(12vw / var(--_mbw2));
                            font-weight: 700;
                            line-height: 1.4
                        }

                        .icon {
                            display: inline-block;
                            width: calc(10vw / var(--_mbw2));
                            height: calc(10vw / var(--_mbw2));
                            border: calc(1.6vw / var(--_mbw2)) solid #E72221;
                            border-radius: 50%;
                            box-sizing: border-box
                        }
                    }
                }
            }

            .about__container {
                padding-bottom: 0;

                .about__ttl {
                    padding: 0 calc(8vw / var(--_mbw2)) 0 calc(25vw / var(--_mbw2));
                    margin-left: calc(-25vw / var(--_mbw2));
                    transform: translateY(calc(-16vw / var(--_mbw2)));
                    background-color: #fff;
                    color: #191e28;
                    font-family: Science Gothic;
                    font-size: calc(28vw / var(--_mbw2));
                    font-weight: 400;
                    line-height: 1;
                    display: flex;
                    align-items: flex-end
                }

                .about__ttl-sm {
                    display: inline-block;
                    margin-left: calc(4vw / var(--_mbw2));
                    color: #191e28;
                    font-family: "M PLUS 1p";
                    transform: rotate(.05deg);
                    font-size: calc(18vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1.3
                }

                .about__txt {
                    margin-top: calc(-7vw / var(--_mbw2));

                    p {
                        color: #191e28;
                        font-family: "M PLUS 1p";
                        transform: rotate(.05deg);
                        font-size: calc(14vw / var(--_mbw2));
                        font-weight: 700;
                        line-height: 1.45
                    }
                }

                .u-color-red {
                    color: #e72221
                }

                .about__box {
                    padding: 0 calc(20vw / var(--_mbw2)) calc(20vw / var(--_mbw2));
                    margin-top: calc(16vw / var(--_mbw2));
                    border: calc(4vw / var(--_mbw2)) solid #E72221
                }
            }

            .sns__container {
                padding-top: 0
            }
        }
    }
}

@media screen and (min-width: 1080px) {
    body:not(.device-type-desktop):not(.device-type-mobile) {

        br.sp,
        .superbanner-mobile .rectangle-mobile {
            display: none
        }

        .rectangle-desktop {
            margin-bottom: 50px
        }

        .container {
            margin: 0 auto;
            font-size: 16px;
            line-height: 32px;
            min-width: 1080px
        }

        .hero__container {
            grid-area: hero;
            background-color: #191e28;

            .hero__image {
                margin: 0 auto;
                width: var(--_container-width);
                height: var(--_mainPcHeight);

                &:after {
                    left: 50%;
                    transform: translate(-50%);
                    background-size: contain
                }
            }

            .hero__image__full {
                overflow: hidden
            }
        }

        .header__container {
            grid-area: head;
            background: url(/RED/common-img/main_bg.jpg) repeat-y center top;
            min-height: 145px
        }

        .navigation.nav__main {
            min-height: 86px
        }

        .navigation.nav__sub {
            min-height: 44px
        }

        .contents__container {
            padding-bottom: 40px;
            margin: 0 auto
        }

        .vod__container {
            grid-area: vod
        }

        .navigation__container {
            grid-area: nav;
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 20px 0;

            .nav__main,
            .nav__sub {
                .navigation__list__container {
                    margin: 0 auto;
                    width: var(--_container-width)
                }
            }

            .nav__main {
                background-color: #e7e7e7
            }
        }

        .information__container {
            display: flex;
            flex-direction: column;
            margin: 0 auto;
            width: var(--_container-width);

            .parts__emergency {
                .emergency__container {
                    margin-top: 30px
                }
            }

            .banner__vod__items {
                >.banner__item {
                    margin-top: 30px
                }
            }

            .banner__items {
                >.banner__item {
                    margin-top: 30px
                }

                >.banner__item:nth-child(n+4) {
                    margin-top: 0
                }
            }

            .parts__ticker {
                .news__ticker {
                    margin-top: 30px
                }
            }
        }

        .main__container-wrapper {
            display: flex;
            margin: 0 auto;
            width: var(--_container-width);
            gap: 0 20px
        }

        .main__container {
            grid-area: main;
            font-family: "M PLUS 1p";
            font-size: 16px;
            line-height: 32px;
            color: #191e28;
            width: 760px
        }

        .aside__container {
            grid-area: aside;
            display: flex;
            flex-direction: column;
            margin-top: 80px;
            width: 300px;
            position: relative;
            z-index: 3
        }

        .common__parts__container {
            grid-area: common;
            display: grid;
            grid-auto-flow: row;
            gap: 40px;

            #common-tver-ranking-mobile {
                display: none
            }

            .appendix__title {
                margin-bottom: 25px
            }
        }

        #common-onair {
            font-size: 1.4px;
            line-height: 20px;

            >*:first-child {
                margin-bottom: 0 !important
            }
        }

        #common-present {
            >*:first-child {
                margin-top: 0 !important;
                margin-bottom: 0 !important
            }
        }

        .related-programs__subtitle--1kmo4 {
            line-height: 20px
        }

        .hero__image {
            height: var(--_mainPcHeight);

            &:after {
                content: "";
                width: var(--_mainPcWidth);
                height: var(--_mainPcHeight);
                position: absolute;
                top: 0;
                left: 0;
                z-index: 0;
                background-image: var(--_mainImageDesktop);
                background-repeat: no-repeat;
                background-position: left top
            }
        }

        .hero__logo {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin: 0 auto;
            padding: 20px 0;
            width: 1080px;

            .hero__logo__image {
                width: 283px;
                height: auto
            }

            .hero__logo__date {
                width: 273px
            }

            img {
                width: 100%;
                height: auto
            }
        }

        .vod__container {
            background-color: #dadada
        }

        .vod__center__items>.enhanced__vod__list {
            grid-template-columns: var(--_center-layout-columns)
        }

        .vod__aside__items>.enhanced__vod__list {
            grid-template-columns: var(--_aside-layout-columns)
        }

        .enhanced__vod__list:has(>:only-child) {
            grid-template-columns: auto
        }

        .enhanced__vod__list {
            display: grid;
            justify-content: center;
            align-items: center;
            gap: 0 2rem;
            padding: 20px 0
        }

        .enhanced__vod__item {
            display: grid;
            grid-template-columns: 213px 107px;

            &.item-tver {
                .enhanced__vod__item__icon {
                    width: 96px
                }
            }

            &.item-telasa {
                .enhanced__vod__item__icon {
                    width: 90px
                }
            }
        }

        .enhanced__vod__item__text {
            display: flex;
            grid-column: span 2 / span 2;
            flex-flow: column;
            justify-content: center;
            align-items: center;
            padding: 12px 0 11px;
            font-weight: 700;
            line-height: 1;
            min-height: 60px;

            >p {
                font-size: 14px;
                line-height: 1.3571428571;
                letter-spacing: .1em;
                font-weight: 700
            }

            .strong {
                font-size: 20px;
                line-height: .7727272727
            }

            .sub-read {
                font-size: 12px;
                line-height: 1.1666666667;
                margin-top: 3px;
                letter-spacing: .1em
            }
        }

        .navigation.nav__main {
            --_column-count: 6;

            .navigation__item {
                text-align: center;
                padding: 20px 0;
                text-decoration: none;
                position: relative;
                border: 1px solid #cccccc;
                border-right: none;

                &:last-child {
                    border-right: 1px solid #cccccc
                }
            }

            .navigation__item__title {
                font-size: 18px;
                font-weight: 700;

                &:before {
                    transform: translate(-50%, -9px);
                    font-size: 14px;
                    color: var(--_badge-color);
                    background-color: var(--_badge-bg);
                    line-height: 22px;
                    padding: 0;
                    border-radius: 4px;
                    width: 80px;
                    height: 20px;
                    font-weight: 400
                }
            }

            .navigation__item__subtitle {
                font-size: .75rem
            }
        }

        .navigation.nav__sub {
            .navigation__item {
                padding: 5px 20px;
                border: var(--_nav-border);
                border-radius: 80px;
                margin-right: 10px
            }

            .navigation__item__title {
                font-size: 14px
            }
        }

        .button__primary {
            --_size: 50px;
            font-family: "M PLUS 1p";
            font-size: 16px;
            font-weight: 700;
            line-height: 1.5;
            padding: 12px 45px;
            min-width: 380px;
            border-radius: 100px;

            &.button__full {
                min-width: 100%
            }

            >svg {
                fill: currentColor;
                position: absolute;
                top: 50%;
                right: calc(var(--_size) / 2);
                transform: translate(50%, -50%)
            }

            &.center__pos {
                width: fit-content;
                margin-right: auto;
                margin-left: auto
            }

            &.no__icon {
                >svg {
                    display: none
                }
            }

            &.opac {
                display: flex
            }
        }

        .next-story {
            .button__primary {
                min-width: 290px;
                min-height: 46px;
                font-size: 15px
            }
        }

        .ticker__title {
            background: var(--_content-bg)
        }

        .news__ticker {
            --_button-size: 32px;
            display: flex;
            flex-wrap: nowrap;
            background-color: #fff;

            .ticker__viewport {
                width: 840px;
                padding-top: 40px;
                margin-top: -40px;
                overflow: hidden
            }

            .ticker__title {
                width: 130px;
                flex-shrink: 0;
                padding: 12px 0;
                background: #ddd;
                font-weight: 700
            }

            .ticker__button--prev {
                top: 50%;
                right: calc(var(--_button-size) + 16px);
                transform: translateY(-50%);
                z-index: 0
            }

            .ticker__button--next {
                top: 50%;
                right: 16px;
                transform: translateY(-50%);
                z-index: 0
            }

            .ticker__slide {
                padding: 20px 85px 20px 25px;
                align-items: center;
                font-size: 15px;
                line-height: 20px;

                >a {
                    color: #000
                }
            }
        }

        .card__vod {
            display: grid;
            background: var(--_content-bg);
            grid-template-columns: 320px auto;
            padding: 2.5rem;
            gap: 0 44px
        }

        .card__vod__image {
            position: relative;

            .video__thumb {
                width: 100%
            }

            .play__icon {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%)
            }
        }

        .card__vod__container {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: flex-start;
            text-align: center;
            font-weight: 700;
            letter-spacing: .1em;
            width: fit-content;
            font-size: 16px;

            strong {
                font-weight: 700;
                font-size: 24px;
                line-height: 1.4166666667
            }
        }

        .card__vod__logo__telasa {
            width: 121px
        }

        .card__vod__logo__tver {
            width: 80px
        }

        .card__vod__image__and__text {
            font-weight: 700;
            display: flex;
            justify-content: center;
            width: 100%;
            margin-left: 8px;
            margin-bottom: 12px;
            font-size: 1rem;

            span {
                padding-top: 30px
            }

            span {
                display: block;
                line-height: 1;
                padding-top: 23px;
                padding-left: 12px
            }
        }

        .card__vod__caption {
            background-color: #e0e0e0;
            color: #666;
            line-height: 1;
            font-weight: 400;
            text-align: center;
            padding: 7px 6px;
            margin: 8px auto 0;
            font-size: 1rem;
            min-width: 180px
        }

        .typ__h2 {
            font-family: var(--_font-science);
            text-align: center;
            font-weight: 400;
            color: #191e28;

            &.typ__h2--color2 {
                color: #fff
            }

            padding: 0 15px;
            margin-bottom: 24px;
            font-size: 64px;
            letter-spacing: 0;
            line-height: 1;

            &.typ__h2-single {
                padding: 10px 0
            }

            >span {
                font-size: 14px;
                display: block;
                margin-top: 8px;
                font-weight: 700;
                line-height: 1.4
            }
        }

        .bg__container {
            position: relative;

            >* {
                position: relative;
                z-index: 5
            }

            &:before {
                content: "";
                position: absolute;
                top: 0;
                background: #191e28;
                z-index: 1;
                left: calc(50% + 160px);
                transform: translate(-50%);
                width: 100dvw;
                min-width: 1080px;
                height: 100%
            }
        }

        .bg__container--type2 {
            position: relative;

            >* {
                position: relative;
                z-index: 5
            }

            &:before {
                content: "";
                position: absolute;
                top: 0;
                background: #e72221;
                z-index: 1;
                left: calc(50% + 160px);
                transform: translate(-50%);
                width: 100dvw;
                min-width: 1080px;
                height: 100%
            }
        }

        .ondemand-list {
            display: flex;
            flex-wrap: wrap;
            gap: 16px;

            .ondemand-list__item {
                width: calc((100% - 16px)/2);
                display: flex
            }
        }

        .ondemand {
            width: 100%;
            display: flex;

            a {
                padding: 8px 16px 8px 8px;
                display: flex;
                align-items: center;
                gap: 16px;
                width: 100%;
                border-radius: 8px;
                background: #191e28;
                text-decoration: none
            }

            .thumb {
                width: 80px;
                border-radius: 4px;
                aspect-ratio: 16 / 11;
                flex-shrink: 0;

                img {
                    width: 100%
                }
            }

            .txt {
                color: #fff;
                font-family: "M PLUS 1p";
                font-size: 14px;
                font-weight: 700;
                line-height: 1.4
            }
        }

        .link__container {
            .banner__items {
                gap: 11px;

                .banner__item {
                    width: calc((100% - 11px)/2)
                }
            }
        }

        .sns__container {
            padding-top: 0;

            .sns-list {
                display: flex;
                justify-content: center;
                gap: 32px
            }

            .sns {
                a {
                    display: inline-block;
                    width: 100%;
                    text-decoration: none
                }

                .icon {
                    width: 60px;
                    aspect-ratio: 1 / 1;

                    img {
                        width: 100%
                    }
                }

                .txt {
                    margin-top: 8px;
                    color: #191e28;
                    text-align: center;
                    font-family: "M PLUS 1p";
                    font-size: 12.8px;
                    font-style: normal;
                    font-weight: 400;
                    line-height: .8
                }
            }
        }

        .caption__container {
            padding-top: 0;

            .caption {
                color: #191e28;
                text-align: center;
                font-family: "M PLUS 1p";
                font-size: 14px;
                font-style: normal;
                font-weight: 800;
                line-height: 1.5
            }
        }

        .section__container {

            +.sns__share__container,
            +.rebroadcast__container {
                margin-top: 0;

                .appendix__title {
                    margin-top: 0
                }
            }
        }

        .second {
            .typ__h2 {
                padding: 10px 0
            }

            .hover__hoverCyanText--raNVw {
                color: #000 !important
            }

            .present__linkIcon--tXoMG {
                fill: #000 !important
            }
        }

        .news__container {
            --_item-color: #333333;
            --_title-color: #ffffff;
            --_date-color: #8B8F95;
            --_tag-color: #E72221;
            --_tag-bg: #dddddd;
            padding: var(--_container-space);

            .news__button {
                margin-top: 40px
            }
        }

        .news__item {
            font-kerning: normal;
            text-wrap: pretty;
            overflow-wrap: anywhere;
            word-break: normal;
            background-color: #191e28
        }

        .news__item__tag {
            color: var(--_tag-color);
            display: grid;
            align-items: center;
            line-height: 1;
            margin-block: var(--_leading-trim)
        }

        .news__items__default {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 24px 20px;

            .news__item {
                color: var(--_item-color);
                text-decoration: none;
                font-weight: 700;
                display: flex;
                flex-direction: column;
                overflow: hidden;
                border-radius: 8px;

                &:first-child {
                    .news__item__image-box {
                        .news & {
                            height: 428px
                        }
                    }

                    .news__item__txt-box {
                        padding: 24px
                    }

                    .news__item__title {
                        font-family: "M PLUS 1p";
                        font-size: 18px;
                        font-weight: 700;
                        line-height: 1.45
                    }
                }
            }

            .news__item__image-box {
                width: 100%;
                height: 208px;
                margin: auto;
                position: relative;
                flex-shrink: 0;
                overflow: hidden
            }

            .news__item__image {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                height: 101%;
                width: auto
            }

            .news__item__txt-box {
                padding: 16px 24px 24px;
                flex: 1;
                display: flex;
                flex-direction: column
            }

            .news__item__tag {
                color: var(--_tag-color);
                font-family: "M PLUS 1p";
                font-size: 14px;
                font-weight: 700;
                width: fit-content;
                display: flex;
                align-items: center;
                gap: 0 8px
            }

            .news__item__icon {
                display: inline-block;
                width: 12px;
                height: 12px;
                border: 2px solid #E72221;
                border-radius: 50%
            }

            .news__item__title {
                color: var(--_title-color);
                font-family: "M PLUS 1p";
                font-size: 16px;
                font-weight: 700;
                line-height: 1.5;
                overflow: hidden;
                display: -webkit-box;
                text-overflow: ellipsis;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 3;
                line-clamp: 3
            }

            .news__item__date {
                color: var(--_date-color);
                font-family: "M PLUS 1p";
                font-size: 14px;
                font-weight: 700;
                line-height: 1;
                display: flex
            }

            .news__item__txt-info {
                padding: 3px 0;
                margin-top: 16px;
                display: flex;
                align-items: flex-end;
                flex: 1;
                gap: 0 24px
            }
        }

        .news__items__split__screen {
            display: grid;
            gap: 24px;
            --_image-width: 277px;

            .news__item {
                color: var(--_item-color);
                display: flex;
                text-decoration: none;
                font-weight: 700;
                max-height: 156px;
                overflow: hidden;
                border-radius: 8px
            }

            .news__item__image-box {
                height: 100%;
                width: var(--_image-width);
                height: 156px;
                flex-shrink: 0;
                position: relative;
                overflow: hidden
            }

            .news__item__image {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                height: 101%;
                width: auto
            }

            .news__item__txt-box {
                flex: 1;
                padding: 24px;
                display: flex;
                flex-direction: column
            }

            .news__item__tag {
                color: var(--_tag-color);
                font-family: "M PLUS 1p";
                font-size: 14px;
                line-height: 1.4;
                line-height: 1;
                font-weight: 700;
                width: fit-content;
                display: flex;
                align-items: center;
                gap: 0 8px
            }

            .news__item__icon {
                display: inline-block;
                width: 12px;
                height: 12px;
                border: 2px solid #E72221;
                border-radius: 50%
            }

            .news__item__title {
                color: var(--_title-color);
                font-family: "M PLUS 1p";
                font-size: 16px;
                font-weight: 700;
                line-height: 1.5;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden
            }

            .news__item__date {
                color: var(--_date-color);
                font-family: "M PLUS 1p";
                font-size: 14px;
                font-weight: 700;
                line-height: 1
            }

            .news__item__txt-info {
                padding: 3px 0;
                margin-top: 16px;
                display: flex;
                gap: 0 24px;
                flex: 1;
                align-items: end
            }
        }

        .news__items__list {
            display: grid;
            padding: 20px 40px 40px;
            background: var(--_content-bg);

            .news__item {
                color: var(--_item-color);
                display: grid;
                grid-auto-flow: row;
                color: #333;
                font-weight: 700;
                padding: 23px 0 20px;
                border-bottom: 1px solid #cccccc
            }

            .news__item__tag {
                color: var(--_tag-color);
                font-size: 13px;
                line-height: 1;
                background: var(--_tag-bg);
                border-radius: 80px;
                width: fit-content;
                padding: 8.5px 20px;
                margin-bottom: 10px;
                font-weight: 700
            }

            .news__item__title {
                color: var(--_title-color);
                font-size: 16px;
                line-height: 32px;
                font-weight: 400;
                display: block
            }

            .news__item__date {
                margin-bottom: 2px;
                color: var(--_date-color);
                font-size: 15px
            }
        }

        .news__container {
            display: grid;
            grid-auto-flow: row;
            --_button-space: 2.5rem;
            --_margin: 40px;

            .button__primary {
                margin-top: var(--_margin)
            }
        }

        .news {

            .news__items__default>a: first-child,
            .news__items__default>div:first-child {
                grid-column: 1 / 3
            }

            .news__items__brn {
                margin-top: 30px
            }
        }

        .news .button__primary,
        .news .get__more__items {
            width: fit-content;
            margin-right: auto;
            margin-left: auto
        }

        .get__more__items {
            opacity: 1;
            filter: alpha(opacity=100);
            display: block;
            transition: .3s ease-in-out;
            display: flex;
            justify-content: center;
            align-items: center;
            height: var(--_size);
            font-weight: 700;
            color: var(--_btn-color);
            background: var(--_btn-bg);
            text-decoration: none;
            border-radius: 100vh;
            position: relative;

            &:hover {
                animation: backToOpac1 .7s linear 0s
            }

            >svg {
                fill: currentColor;
                position: absolute;
                top: 50%;
                right: calc(var(--_size) / 2);
                transform: translate(50%, -50%)
            }

            &.center__pos {
                width: fit-content;
                margin-right: auto;
                margin-left: auto
            }

            --_size: 56px;
            font-size: 1rem;
            min-width: 380px;

            &.button__full {
                min-width: 100%
            }
        }

        .news__item__container {
            display: grid;
            grid-auto-flow: row;
            gap: var(--_gap);

            img {
                max-width: 100%
            }

            h1 {
                font-weight: 700;
                display: grid;
                grid-auto-flow: row;

                &:before {
                    content: attr(data-date);
                    font-family: var(--_body-font);
                    color: #fff;
                    background-color: var(--_body-bg);
                    display: block;
                    width: fit-content
                }
            }

            .attention-ttl {
                text-align: center
            }

            .attention-text {
                border: 1px solid rgba(0, 0, 0, .1)
            }
        }

        .story__items__container {
            --_gap: 2rem;

            h1 {
                font-size: 1.875rem;
                gap: .625rem;

                &:before {
                    font-size: 1rem;
                    padding: 3px 1.5rem
                }
            }

            .h3-ttl-a {
                margin-top: 30px;
                margin-bottom: 30px;
                color: var(--Key, #E72221);
                font-family: "M PLUS 1p";
                font-size: 18px;
                font-weight: 700;
                line-height: 1.45
            }

            .h3-ttl-b {
                padding: 12px 20px;
                margin-top: 30px;
                margin-bottom: 30px;
                background: #f5f5f5;
                color: #191e28;
                font-family: "M PLUS 1p";
                font-size: 18px;
                font-weight: 700;
                line-height: 1.45
            }

            .attention-text {
                font-size: .8125rem;
                line-height: 1.375rem;
                padding: 1.25rem
            }

            .attention-ttl {
                font-family: "M PLUS 1p";
                color: #191e28;
                font-size: 30px;
                line-height: 1.5
            }
        }

        .news__items__container {
            padding: 0 40px 80px;

            .h1-ttl-box {
                padding: 24px 0;
                margin-bottom: 30px;
                font-weight: 700;
                position: relative;

                >* {
                    position: relative;
                    z-index: 5
                }

                &:before {
                    content: "";
                    position: absolute;
                    top: 0;
                    background: #191e28;
                    z-index: 1;
                    left: calc(50% + 160px);
                    transform: translate(-50%);
                    width: 100dvw;
                    min-width: 1080px;
                    height: 100%
                }

                .info {
                    padding: 3px 0;
                    margin-bottom: 16px;
                    display: flex;
                    align-items: flex-end;
                    gap: 0 24px
                }

                .tag {
                    color: var(--_tag-color);
                    width: fit-content;
                    display: flex;
                    align-items: center;
                    gap: 0 8px;
                    flex-shrink: 0;

                    >span {
                        font-family: "M PLUS 1p";
                        font-size: 14px;
                        font-weight: 700;
                        line-height: 1
                    }
                }

                .icon {
                    display: inline-block;
                    width: 10px;
                    height: 10px;
                    border: 2px solid var(--_tag-color);
                    border-radius: 50%
                }

                .date {
                    color: var(--_date-color);
                    font-family: "M PLUS 1p";
                    font-size: 14px;
                    font-weight: 700;
                    line-height: 1
                }

                h1 {
                    color: #fff;
                    font-family: "M PLUS 1p";
                    font-size: 24px;
                    font-weight: 700;
                    line-height: 1.4
                }
            }

            .img-box {
                img {
                    width: 100%;
                    height: auto
                }
            }

            .img-box1 {
                text-align: center;

                img {
                    max-width: 680px;
                    height: auto
                }
            }

            .img-box2 {
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 8px;

                >li {
                    width: calc((100% - 8px)/2)
                }

                img {
                    max-width: 100%;
                    height: auto
                }
            }

            .h3-ttl-a {
                margin-top: 30px;
                margin-bottom: 30px;
                color: var(--Key, #E72221);
                font-family: "M PLUS 1p";
                font-size: 18px;
                font-weight: 700;
                line-height: 1.45
            }

            .h3-ttl-b {
                padding: 12px 20px;
                margin-top: 30px;
                margin-bottom: 30px;
                background: #f5f5f5;
                color: #191e28;
                font-family: "M PLUS 1p";
                font-size: 18px;
                font-weight: 700;
                line-height: 1.45
            }

            .youtube-box {
                position: relative;
                height: 0;
                padding-bottom: 56.25%;

                iframe {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    left: 0
                }
            }

            .btn-box {
                text-align: center;
                text-decoration: none;

                a {
                    position: relative;
                    font-weight: 700;
                    line-height: 30px;
                    text-align: center;
                    padding: 13px 50px;
                    display: block;
                    background: #e72221;
                    color: #fff;
                    text-decoration: none;
                    border-radius: 100px;
                    margin: 0 auto;
                    min-width: 380px;
                    display: inline-block
                }
            }

            .img-box,
            .img-box2,
            .read-box,
            .btn-box,
            .youtube-wrap {
                margin-top: 30px
            }

            .attention-ttl {
                margin-top: 30px;
                margin-bottom: 30px;
                text-align: center
            }

            .attention-text {
                font-size: 13px;
                line-height: 22px;
                margin-top: 30px;
                border: 1px solid rgba(0, 0, 0, .1);
                padding: 20px
            }

            .attention-ttl {
                font-family: "M PLUS 1p";
                color: #191e28;
                font-size: 30px;
                line-height: 1.5;
                font-weight: 700
            }

            .h3-ttl-a {
                +.h3-ttl-b {
                    margin-top: 30px
                }

                +.read-box {
                    margin-top: 15px
                }
            }

            .h1-ttl-box+.h3-ttl-a {
                margin-top: 30px
            }

            .news-line {
                height: 1px;
                background: #e0e0e0;
                margin-top: 30px;
                margin-bottom: 30px
            }
        }

        .section__container {
            padding: 80px 0
        }

        .program__container {
            position: relative;

            .program-list-wrapper {
                padding: 0
            }

            .program-list {
                display: flex;
                flex-wrap: wrap;
                gap: 40px 24px;

                >li {
                    width: calc((100% - 48px) / 3);

                    >a {
                        display: block;
                        width: 100%;
                        text-decoration: none
                    }

                    .thumb {
                        width: 100%;
                        overflow: hidden;
                        margin-bottom: 16px;
                        border-radius: 8px;

                        img {
                            width: 100%
                        }
                    }

                    .title {
                        color: #fff;
                        font-family: var(--_font-mplus1);
                        transform: rotate(.05deg);
                        font-size: 18px;
                        font-weight: 700;
                        line-height: 1.45
                    }

                    .date {
                        color: #8b8f95;
                        margin-top: 8px;
                        font-family: var(--_font-mplus1);
                        transform: rotate(.05deg);
                        font-size: 14px;
                        font-weight: 700;
                        line-height: 1.4
                    }
                }
            }

            .program-button {
                display: none
            }
        }

        &.top {
            .hero__container {
                padding: 80px 0
            }

            .top__story__container {
                text-align: center;
                background-color: #fff;

                .card__story__youtube {
                    position: relative;
                    height: 0;
                    padding-bottom: 56.25%;

                    >iframe {
                        width: 100%;
                        aspect-ratio: 16 / 9
                    }

                    >img {
                        width: 100%
                    }
                }
            }

            .card__story__date {
                font-size: 16px;
                font-weight: 700;
                padding-bottom: 10px
            }

            .card__story__title {
                font-weight: 700;
                font-size: 24px
            }

            .card__story__summary {
                text-align: justify;
                font-size: 16px
            }

            .ondemand__container {
                &.is-none {
                    +.link__container {
                        padding-top: 0
                    }
                }
            }

            .news-list {
                display: flex;
                flex-direction: column;
                gap: 24px;

                .list {
                    width: 100%;
                    display: flex;

                    >a {
                        display: flex;
                        text-decoration: none;
                        width: 100%
                    }

                    .thumb {
                        width: 277px;
                        flex-shrink: 0;
                        border-radius: 8px 0 0 8px;
                        background-color: #191e28;
                        overflow: hidden;

                        >img {
                            width: 100%
                        }
                    }

                    .txt-box {
                        padding: 24px;
                        display: flex;
                        flex-direction: column;
                        gap: 18px;
                        border-radius: 0 8px 8px 0;
                        background-color: #191e28;
                        overflow: hidden;

                        .txt {
                            color: #fff;
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: 16px;
                            font-weight: 700;
                            line-height: 1.5
                        }

                        .info {
                            display: flex;
                            align-items: center
                        }

                        .tag {
                            color: var(--Key, #E72221);
                            text-align: center;
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: 14px;
                            font-weight: 700;
                            line-height: 1.4;
                            display: inline-flex;
                            align-items: center;
                            gap: 0 8px
                        }

                        .date {
                            margin-left: 24px;
                            color: var(--main-second-base-color, #8B8F95);
                            font-family: "M PLUS 1p";
                            transform: rotate(.05deg);
                            font-size: 14px;
                            font-weight: 700;
                            line-height: 1.4
                        }

                        .icon {
                            display: inline-block;
                            width: 12px;
                            height: 12px;
                            border: 2px solid #E72221;
                            border-radius: 50%;
                            box-sizing: border-box
                        }
                    }
                }
            }

            .about__container {
                padding-bottom: 0;

                .about__ttl {
                    padding: 4px 16px 4px 37px;
                    margin-left: -41px;
                    transform: translateY(-34px);
                    background-color: #fff;
                    color: #191e28;
                    font-family: Science Gothic;
                    font-size: 56px;
                    font-weight: 400;
                    line-height: 1;
                    display: inline-block
                }

                .about__ttl-sm {
                    display: inline-block;
                    margin-left: 8px;
                    color: #191e28;
                    font-family: "M PLUS 1p";
                    transform: rotate(.05deg);
                    font-size: 32px;
                    font-weight: 700;
                    line-height: 1.4
                }

                .about__txt {
                    margin-top: -10px;

                    p {
                        color: #191e28;
                        font-family: "M PLUS 1p";
                        transform: rotate(.05deg);
                        font-size: 16px;
                        font-weight: 700;
                        line-height: 1.5
                    }
                }

                .u-color-red {
                    color: #e72221
                }

                .about__box {
                    padding: 0 36px 36px;
                    margin-top: 30px;
                    border: 4px solid #E72221
                }
            }

            .sns__container {
                .device-type-mobile & {
                    padding-top: 0
                }

                .device-type-desktop & {
                    padding-top: 0
                }
            }
        }
    }
}

:root {
    --_key-color: #E72221;
    --_red-color: #f0027f;
    --_primary_color: #E72221;
    --_secondary_color: #F0027F;
    --_key_grad: linear-gradient(90deg, #E72221 0%, #B92221 50%, #E72221 100%);
    --_body-color: #000;
    --_body-bg: #eeeeee;
    --_link-color: #00a0c6;
    --_content-bg: #fff;
    --_btn-color: #fff;
    --_btn-bg: #E72221;
    --_accent-color: #011c40;
    --_accent-bg: #ffe33e;
    --_appendix-title-color: #fff;
    --_appendix-title-bg: #393e40;
    --_common-title-color: #fff;
    --_card-shadow: 3px 3px 10px 0px rgba(0 0 0 / .4);
    --_container-width: 1080px;
    --_main-width: 760px;
    --_aside-width: 300px;
    --_aside-left-margin: calc(var(--_container-width) - var(--_main-width) - var(--_aside-width));
    --_container-gap: 30px;
    --_leading-trim: calc((1em - 1lh)/2);
    --_transition-hover: color .45s cubic-bezier(.23, 1, .32, 1) 0ms, opacity .45s cubic-bezier(.23, 1, .32, 1) 0ms, background-color .45s cubic-bezier(.23, 1, .32, 1) 0ms, fill .45s cubic-bezier(.23, 1, .32, 1) 0ms;
    --_mobile-base-width: 375;
    --_mobile-base-width2: 390;
    --_mbw: calc(var(--_mobile-base-width) / 100);
    --_mbw2: calc(var(--_mobile-base-width2) / 100);
    --_floating-navbar-height: calc(58vw / var(--_mbw));
    --_body-font: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
    --_latin-font: "Helvetica Neue", serif;
    --_font: "Noto Sans JP", serif;
    --_font-science: "Science Gothic", sans-serif;
    --_font-mplus1: "M PLUS 1p", sans-serif;
    --_font-bizud: "BIZ UDGothic", sans-serif
}

.font {
    font-family: var(--_font)
}

body {
    font-family: var(--_body-font);
    color: var(--_body-color)
}

.main__container {
    >section {
        display: grid;
        grid-auto-flow: row;
        gap: var(--_section-gap)
    }
}

.section__items__container {
    .device-type-mobile & {
        padding: calc(20vw / var(--_mbw)) calc(20vw / var(--_mbw))
    }

    .device-type-desktop & {
        padding: 40px
    }
}

.empty__container {
    display: none !important
}

iframe.youtube__playlist {
    display: contents
}

.section__container {

    .device-type-desktop & {
        /* padding:80px 0; */
    }
}

.typ__h2 {
    font-family: var(--_font-science);
    text-align: center;
    font-weight: 400;
    color: #191e28;

    &.typ__h2--color2 {
        color: #fff
    }

    .device-type-mobile & {
        padding-bottom: calc(2vw / var(--_mbw2));
        margin-bottom: calc(16vw / var(--_mbw2));
        font-size: calc(38vw / var(--_mbw2));
        letter-spacing: 0;
        line-height: 1;

        &.typ__h2-single {
            padding-bottom: calc(12vw / var(--_mbw2))
        }

        >span {
            margin-top: calc(8vw / var(--_mbw2));
            display: block;
            font-size: calc(12vw / var(--_mbw2));
            font-weight: 700;
            line-height: 1.4
        }
    }

    .device-type-desktop & {
        padding: 0 15px;
        margin-bottom: 24px;
        font-size: 64px;
        letter-spacing: 0;
        line-height: 1;

        &.typ__h2-single {
            padding: 10px 0
        }

        >span {
            font-size: 14px;
            display: block;
            margin-top: 8px;
            font-weight: 700;
            line-height: 1.4
        }
    }
}

.appendix__title {
    color: var(--_appendix-title-color);
    color: #fff;

    .device-type-desktop & {
        font-size: 18px;
        background-color: var(--_appendix-title-bg);
        padding: 8px 24px
    }

    .device-type-mobile & {
        font-size: calc(14vw / var(--_mbw));
        border-image-source: linear-gradient(var(--_appendix-title-bg) 0 0);
        border-image-slice: fill 0;
        border-image-outset: 0 100lvi;
        padding: calc(8vw / var(--_mbw)) calc(15vw / var(--_mbw))
    }
}

.protect {
    pointer-events: none;
    -webkit-touch-callout: none;
    user-select: none;

    @media print {
        visibility: hidden
    }
}

@media print {
    .hero__image__protect {
        background-image: none !important;
        border-image-source: none !important;

        &:after {
            content: "" !important
        }
    }
}

img {
    vertical-align: bottom
}

a:hover {
    text-decoration: none
}

a.external-link {
    position: relative;

    &:hover:before {
        content: "";
        width: 80px;
        height: 32px;
        display: block;
        background: url(/common/des/01/images/external.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: -32px;
        left: 0;
        z-index: 1000;

        .device-type-mobile & {
            width: calc(80vw / var(--_mbw));
            height: calc(32vw / var(--_mbw));
            top: calc(-32vw / var(--_mbw));
            left: 0
        }
    }

    &.active:before {
        content: "";
        width: 80px;
        height: 32px;
        display: block;
        background: url(/common/des/01/images/external.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: -32px;
        left: 0;
        z-index: 1000;

        .device-type-mobile & {
            width: calc(80vw / var(--_mbw));
            height: calc(32vw / var(--_mbw));
            top: calc(-32vw / var(--_mbw));
            left: 0
        }
    }
}

.opac {
    opacity: 1;
    filter: alpha(opacity=100);
    display: block;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.opac:hover {
    -webkit-animation: backToOpac1 .7s linear 0s;
    animation: backToOpac1 .7s linear 0s
}

@-webkit-keyframes backToOpac1 {
    0% {
        opacity: .4
    }

    to {
        opacity: 1
    }
}

@keyframes backToOpac1 {
    0% {
        opacity: .4
    }

    to {
        opacity: 1
    }
}

.now__loading {
    color: #00000080;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    min-height: 4rem;

    .spinner {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        gap: .5rem
    }

    .spinner>div {
        --_size: .75rem;
        width: var(--_size);
        height: var(--_size);
        background-color: currentColor;
        border-radius: 100%;
        display: inline-block;
        -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
        animation: sk-bouncedelay 1.4s infinite ease-in-out both
    }

    .spinner .bounce1 {
        -webkit-animation-delay: -.32s;
        animation-delay: -.32s
    }

    .spinner .bounce2 {
        -webkit-animation-delay: -.16s;
        animation-delay: -.16s
    }
}

.device-type-mobile {

    .superbanner-desktop,
    .rectangle-desktop {
        display: none !important
    }
}

.device-type-desktop {

    .superbanner-mobile,
    .rectangle-mobile {
        display: none !important
    }

    #common-footer {
        min-width: 1080px;
        margin: 0 auto
    }
}

.rectangle-desktop {
    width: 300px;
    height: 250px
}

.rectangle-mobile {
    margin: 0 auto var(--_floating-navbar-height) auto
}

.protect-box {
    user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -webkit-touch-callout: none
}

.recommend-movie-ph,
img.protect,
.api-bnr .protect-box img {
    pointer-events: none
}

img.protect.active {
    opacity: 1
}

#Map {
    z-index: 3;
    position: relative
}

.device-type-mobile {
    .pc {
        display: none !important
    }
}

.device-type-desktop {
    .sp {
        display: none !important
    }
}

.u-pink {
    color: #f0027f !important
}

.u-red {
    color: red !important
}

.u-orange {
    color: #f90 !important
}

.u-blue {
    color: #00f !important
}

.u-navy {
    color: navy !important
}

.u-green {
    color: green !important
}

.u-silver {
    color: silver !important
}

.u-gray {
    color: gray !important
}

.u-white {
    color: #fff !important
}

.u-black {
    color: #000 !important
}

.u-mark {
    background: #fffc00;
    padding: 5px;
    margin: 0 5px
}

.u-font-size-s {
    font-size: 80% !important;
    line-height: 80% !important
}

.u-font-size-m {
    font-size: 100% !important;
    line-height: 100% !important
}

.u-font-size-l {
    font-size: 150% !important;
    line-height: 160% !important
}

.u-font-size-ll {
    font-size: 200% !important;
    line-height: 180% !important
}

.u-f11 {
    font-size: 11px !important
}

.u-f12 {
    font-size: 12px !important
}

.u-f13 {
    font-size: 13px !important
}

.u-f14 {
    font-size: 14px !important
}

.u-f15 {
    font-size: 15px !important
}

.u-f16 {
    font-size: 16px !important
}

.u-f17 {
    font-size: 17px !important
}

.u-f18 {
    font-size: 18px !important
}

.u-f19 {
    font-size: 19px !important
}

.u-f20 {
    font-size: 20px !important
}

.u-f21 {
    font-size: 21px !important
}

.u-f22 {
    font-size: 22px !important
}

.u-f23 {
    font-size: 23px !important
}

.u-f24 {
    font-size: 24px !important
}

.u-f25 {
    font-size: 25px !important
}

.u-f26 {
    font-size: 26px !important
}

.u-f27 {
    font-size: 27px !important
}

.u-f28 {
    font-size: 28px !important
}

.u-f29 {
    font-size: 29px !important
}

.u-f30 {
    font-size: 30px !important
}

.u-f31 {
    font-size: 31px !important
}

.u-f32 {
    font-size: 32px !important
}

.u-f33 {
    font-size: 33px !important
}

.u-f34 {
    font-size: 34px !important
}

.u-f35 {
    font-size: 35px !important
}

.u-f36 {
    font-size: 36px !important
}

.u-f37 {
    font-size: 37px !important
}

.u-f38 {
    font-size: 38px !important
}

.u-f39 {
    font-size: 39px !important
}

.u-f40 {
    font-size: 40px !important
}

.u-tl {
    text-align: left !important
}

.u-tc {
    text-align: center !important
}

.u-tr {
    text-align: right !important
}

.u-db {
    display: block !important
}

.u-di {
    display: inline-block !important
}

.u-fl {
    float: left !important
}

.u-fr {
    float: right !important
}

.u-b {
    font-weight: 700 !important
}

.u-cp {
    cursor: pointer !important
}

.u-vt {
    vertical-align: top !important
}

.u-vm {
    vertical-align: middle !important
}

.u-vba {
    vertical-align: baseline !important
}

.u-vbo {
    vertical-align: bottom !important
}

.device-type-desktop {
    .u-mtn {
        margin-top: 0 !important
    }

    .u-mts {
        margin-top: 10px !important
    }

    .u-mtm {
        margin-top: 20px !important
    }

    .u-mtl {
        margin-top: 30px !important
    }

    .u-mtx {
        margin-top: 40px !important
    }

    .u-mtxl {
        margin-top: 50px !important
    }

    .u-mbn {
        margin-bottom: 0 !important
    }

    .u-mbs {
        margin-bottom: 10px !important
    }

    .u-mbm {
        margin-bottom: 20px !important
    }

    .u-mbl {
        margin-bottom: 30px !important
    }

    .u-mbx {
        margin-bottom: 40px !important
    }

    .u-mbxl {
        margin-bottom: 50px !important
    }

    .u-mln {
        margin-left: 0 !important
    }

    .u-mls {
        margin-left: 10px !important
    }

    .u-mlm {
        margin-left: 20px !important
    }

    .u-mll {
        margin-left: 30px !important
    }

    .u-mlx {
        margin-left: 40px !important
    }

    .u-mlxl {
        margin-left: 50px !important
    }

    .u-mrn {
        margin-right: 0 !important
    }

    .u-mrs {
        margin-right: 10px !important
    }

    .u-mrm {
        margin-right: 20px !important
    }

    .u-mrl {
        margin-right: 30px !important
    }

    .u-mrx {
        margin-right: 40px !important
    }

    .u-mrxl {
        margin-right: 50px !important
    }

    .u-mra {
        margin-right: auto !important
    }

    .u-mla {
        margin-left: auto !important
    }

    .u-mca {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .u-ptn {
        padding-top: 0 !important
    }

    .u-pts {
        padding-top: 10px !important
    }

    .u-ptm {
        padding-top: 20px !important
    }

    .u-ptl {
        padding-top: 30px !important
    }

    .u-ptx {
        padding-top: 40px !important
    }

    .u-ptxl {
        padding-top: 50px !important
    }

    .u-pbn {
        padding-bottom: 0 !important
    }

    .u-pbs {
        padding-bottom: 10px !important
    }

    .u-pbm {
        padding-bottom: 20px !important
    }

    .u-pbl {
        padding-bottom: 30px !important
    }

    .u-pbx {
        padding-bottom: 40px !important
    }

    .u-pbxl {
        padding-bottom: 50px !important
    }

    .u-pln {
        padding-left: 0 !important
    }

    .u-pls {
        padding-left: 10px !important
    }

    .u-plm {
        padding-left: 20px !important
    }

    .u-pll {
        padding-left: 30px !important
    }

    .u-plx {
        padding-left: 40px !important
    }

    .u-plxl {
        padding-left: 50px !important
    }

    .u-prn {
        padding-right: 0 !important
    }

    .u-prs {
        padding-right: 10px !important
    }

    .u-prm {
        padding-right: 20px !important
    }

    .u-prl {
        padding-right: 30px !important
    }

    .u-prx {
        padding-right: 40px !important
    }

    .u-prxl {
        padding-right: 50px !important
    }
}

.device-type-mobile {
    .u-mtn {
        margin-top: 0 !important
    }

    .u-mts {
        margin-top: 10px !important
    }

    .u-mtm {
        margin-top: 15px !important
    }

    .u-mtl {
        margin-top: 20px !important
    }

    .u-mtx {
        margin-top: 30px !important
    }

    .u-mtxl {
        margin-top: 35px !important
    }

    .u-mbn {
        margin-bottom: 0 !important
    }

    .u-mbs {
        margin-bottom: 10px !important
    }

    .u-mbm {
        margin-bottom: 15px !important
    }

    .u-mbl {
        margin-bottom: 20px !important
    }

    .u-mbx {
        margin-bottom: 30px !important
    }

    .u-mbxl {
        margin-bottom: 35px !important
    }

    .u-mln {
        margin-left: 0 !important
    }

    .u-mls {
        margin-left: 10px !important
    }

    .u-mlm {
        margin-left: 15px !important
    }

    .u-mll {
        margin-left: 20px !important
    }

    .u-mlx {
        margin-left: 30px !important
    }

    .u-mlxl {
        margin-left: 35px !important
    }

    .u-mrn {
        margin-right: 0 !important
    }

    .u-mrs {
        margin-right: 10px !important
    }

    .u-mrm {
        margin-right: 15px !important
    }

    .u-mrl {
        margin-right: 20px !important
    }

    .u-mrx {
        margin-right: 30px !important
    }

    .u-mrxl {
        margin-right: 35px !important
    }

    .u-mra {
        margin-right: auto !important
    }

    .u-mla {
        margin-left: auto !important
    }

    .u-mca {
        margin-left: auto !important;
        margin-right: auto !important
    }

    .u-ptn {
        padding-top: 0 !important
    }

    .u-pts {
        padding-top: 10px !important
    }

    .u-ptm {
        padding-top: 15px !important
    }

    .u-ptl {
        padding-top: 20px !important
    }

    .u-ptx {
        padding-top: 30px !important
    }

    .u-ptxl {
        padding-top: 35px !important
    }

    .u-pbn {
        padding-bottom: 0 !important
    }

    .u-pbs {
        padding-bottom: 10px !important
    }

    .u-pbm {
        padding-bottom: 15px !important
    }

    .u-pbl {
        padding-bottom: 20px !important
    }

    .u-pbx {
        padding-bottom: 30px !important
    }

    .u-pbxl {
        padding-bottom: 35px !important
    }

    .u-pln {
        padding-left: 0 !important
    }

    .u-pls {
        padding-left: 10px !important
    }

    .u-plm {
        padding-left: 15px !important
    }

    .u-pll {
        padding-left: 20px !important
    }

    .u-plx {
        padding-left: 30px !important
    }

    .u-plxl {
        padding-left: 35px !important
    }

    .u-prn {
        padding-right: 0 !important
    }

    .u-prs {
        padding-right: 10px !important
    }

    .u-prm {
        padding-right: 15px !important
    }

    .u-prl {
        padding-right: 20px !important
    }

    .u-prx {
        padding-right: 30px !important
    }

    .u-prxl {
        padding-right: 35px !important
    }
}

#superbanner-mobile,
#rectangle-mobile {
    display: grid;
    place-content: center
}


.device-type-desktop {
    .rectangle-desktop {
        margin-bottom: 50px
    }

    .container {
        margin: 0 auto;
        font-size: 16px;
        line-height: 32px;
        min-width: 1080px;
        overflow: hidden
    }

    .hero__container {
        grid-area: hero;
        background-color: #191e28;

        .hero__image {
            margin: 0 auto;
            width: var(--_container-width)
        }

        .hero__image__full {
            overflow: hidden
        }
    }

    .header__container {
        grid-area: head;
        background: url(/RED/common-img/main_bg.jpg) repeat-y center top;
        min-height: 145px
    }

    .navigation.nav__main {
        min-height: 86px
    }

    .contents__container {
        padding-bottom: 40px;
        margin: 0 auto
    }

    .vod__container {
        grid-area: vod
    }

    .navigation__container {
        grid-area: nav;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 20px 0;

        .nav__main,
        .nav__sub {
            .navigation__list__container {
                margin: 0 auto;
                width: var(--_container-width)
            }
        }

        .nav__main {
            background-color: #e7e7e7
        }
    }

    .information__container {
        display: flex;
        flex-direction: column;
        margin: 0 auto;
        width: var(--_container-width);

        .parts__emergency {
            .emergency__container {
                margin-top: 30px
            }
        }

        .banner__vod__items {
            >.banner__item {
                margin-top: 30px
            }
        }

        .banner__items {
            >.banner__item {
                margin-top: 30px
            }

            >.banner__item:nth-child(n+4) {
                margin-top: 0
            }
        }

        .parts__ticker {
            .news__ticker {
                margin-top: 30px
            }
        }
    }

    .main__container-wrapper {
        display: flex;
        margin: 0 auto;
        width: var(--_container-width);
        gap: 0 20px
    }

    .main__container {
        grid-area: main;
        font-family: "M PLUS 1p";
        font-size: 16px;
        line-height: 32px;
        color: #191e28;
        width: 760px
    }

    .aside__container {
        grid-area: aside;
        display: flex;
        flex-direction: column;
        margin-top: 80px;
        width: 300px;
        position: relative;
        z-index: 3
    }

    .common__parts__container {
        grid-area: common;
        display: grid;
        grid-auto-flow: row;
        gap: 40px;

        #common-tver-ranking-mobile {
            display: none
        }

        .appendix__title {
            margin-bottom: 25px
        }
    }

    #common-onair {
        font-size: 1.4px;
        line-height: 20px;

        >*:first-child {
            margin-bottom: 0 !important
        }
    }

    #common-present {
        >*:first-child {
            margin-top: 0 !important;
            margin-bottom: 0 !important
        }
    }

    .related-programs__subtitle--1kmo4 {
        line-height: 20px
    }
}

.device-type-mobile {
    .superbanner-mobile .rectangle-mobile {
        display: grid;
        place-content: center
    }

    .container {
        display: flex;
        flex-flow: column;
        font-size: calc(14vw / var(--_mbw));
        line-height: calc(26vw / var(--_mbw))
    }

    .hero__container {
        order: -1
    }

    .header__container {
        min-height: calc(70vw / var(--_mbw2))
    }

    .navigation.nav__main {
        min-height: calc(80vw / var(--_mbw))
    }

    .navigation__container {
        order: 0
    }

    .information__container {
        display: flex;
        flex-direction: column;
        padding: 0 calc(10vw / var(--_mbw));

        .parts__emergency {
            .emergency__container {
                margin-top: calc(20vw / var(--_mbw))
            }
        }

        .banner__vod__items,
        .banner__items {
            >.banner__item {
                margin-top: calc(20vw / var(--_mbw))
            }
        }

        .parts__ticker {
            .news__ticker {
                margin-top: calc(20vw / var(--_mbw))
            }
        }
    }

    .navigation__container {
        display: grid;
        grid-auto-flow: row;
        grid-template-columns: 100%
    }

    .contents__container {
        padding-bottom: calc(30vw / var(--_mbw))
    }

    .main__container {
        font-size: calc(14vw / var(--_mbw));
        line-height: calc(26vw / var(--_mbw));

        img {
            max-width: 100%
        }
    }

    .story__container {
        margin: 0 calc(10vw / var(--_mbw));

        .event_button {
            margin-top: calc(30vw / var(--_mbw))
        }
    }

    .youtube__container,
    .sns__container {
        margin: 0 calc(10vw / var(--_mbw))
    }

    .aside__container {
        display: none
    }

    .common__parts__container {
        grid-area: common;
        display: grid;
        grid-auto-flow: row;

        .appendix__title {
            margin-top: calc(30vw / var(--_mbw))
        }
    }

    #common-tver-ranking-mobile {
        margin-top: calc(16vw / var(--_mbw))
    }

    #common-footer a {
        font-size: 12px
    }
}

.bg__container {
    position: relative;

    >* {
        position: relative;
        z-index: 5
    }

    .device-type-mobile & {
        &:before {
            content: "";
            position: absolute;
            top: 0;
            background: #191e28;
            z-index: 1;
            left: 50%;
            transform: translate(-50%);
            width: 100dvw;
            height: 100%
        }
    }

    .device-type-desktop & {
        &:before {
            content: "";
            position: absolute;
            top: 0;
            background: #191e28;
            z-index: 1;
            left: calc(50% + 160px);
            transform: translate(-50%);
            width: 100dvw;
            min-width: 1080px;
            height: 100%
        }
    }
}

.bg__container--type2 {
    position: relative;

    >* {
        position: relative;
        z-index: 5
    }

    .device-type-mobile & {
        &:before {
            content: "";
            position: absolute;
            top: 0;
            background: #e72221;
            z-index: 1;
            left: 50%;
            transform: translate(-50%);
            width: 100dvw;
            height: 100%
        }
    }

    .device-type-desktop & {
        &:before {
            content: "";
            position: absolute;
            top: 0;
            background: #e72221;
            z-index: 1;
            left: calc(50% + 160px);
            transform: translate(-50%);
            width: 100dvw;
            min-width: 1080px;
            height: 100%
        }
    }
}

.ondemand__container {
    &.is-none {
        display: none
    }
}

.ondemand-list {
    display: flex;
    flex-wrap: wrap;

    .device-type-mobile & {
        gap: calc(8vw / var(--_mbw2));

        .ondemand-list__item {
            width: 100%
        }
    }

    .device-type-desktop & {
        gap: 16px;

        .ondemand-list__item {
            width: calc((100% - 16px)/2);
            display: flex
        }
    }
}

.ondemand {
    width: 100%;
    display: flex;

    .device-type-mobile & {
        a {
            padding: calc(8vw / var(--_mbw2));
            display: flex;
            align-items: center;
            gap: calc(16vw / var(--_mbw2));
            width: 100%;
            border-radius: calc(8vw / var(--_mbw2));
            background: #191e28;
            text-decoration: none
        }

        .thumb {
            width: calc(64vw / var(--_mbw2));
            border-radius: calc(4vw / var(--_mbw2));
            aspect-ratio: 16 / 11;
            flex-shrink: 0;
            overflow: hidden;

            img {
                width: 100%
            }
        }

        .txt {
            color: #fff;
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: calc(12vw / var(--_mbw2));
            font-weight: 700;
            line-height: 1.4
        }
    }

    .device-type-desktop & {
        a {
            padding: 8px 16px 8px 8px;
            display: flex;
            align-items: center;
            gap: 16px;
            width: 100%;
            border-radius: 8px;
            background: #191e28;
            text-decoration: none
        }

        .thumb {
            width: 80px;
            border-radius: 4px;
            aspect-ratio: 16 / 11;
            flex-shrink: 0;
            overflow: hidden;

            img {
                width: 100%
            }
        }

        .txt {
            color: #fff;
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: 14px;
            font-weight: 700;
            line-height: 1.4
        }
    }
}

.program__container {
    position: relative;

    .device-type-mobile & {
        .program-list-wrapper {
            padding: 0
        }

        .program-list {
            display: flex;
            flex-wrap: wrap;
            gap: calc(24vw / var(--_mbw2)) calc(16vw / var(--_mbw2));

            >li {
                width: calc((100% - calc(16vw / var(--_mbw2))) / 2);

                >a {
                    display: block;
                    width: 100%;
                    text-decoration: none
                }

                .thumb {
                    width: 100%;
                    overflow: hidden;
                    margin-bottom: calc(8vw / var(--_mbw2));
                    border-radius: calc(8vw / var(--_mbw2))
                }

                .title {
                    color: #fff;
                    font-family: var(--_font-mplus1);
                    transform: rotate(.05deg);
                    font-size: calc(16vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1.5
                }

                .date {
                    color: #8b8f95;
                    margin-top: calc(8vw / var(--_mbw2));
                    font-family: var(--_font-mplus1);
                    transform: rotate(.05deg);
                    font-size: calc(12vw / var(--_mbw2));
                    font-weight: 700;
                    line-height: 1.4
                }
            }
        }

        .program-button {
            display: none
        }
    }

    .device-type-desktop & {
        .program-list-wrapper {
            padding: 0
        }

        .program-list {
            display: flex;
            flex-wrap: wrap;
            gap: 40px 24px;

            >li {
                width: calc((100% - 48px) / 3);

                >a {
                    display: block;
                    width: 100%;
                    text-decoration: none
                }

                .thumb {
                    width: 100%;
                    overflow: hidden;
                    margin-bottom: 16px;
                    border-radius: 8px;

                    img {
                        width: 100%
                    }
                }

                .title {
                    color: #fff;
                    font-family: var(--_font-mplus1);
                    transform: rotate(.05deg);
                    font-size: 18px;
                    font-weight: 700;
                    line-height: 1.45
                }

                .date {
                    color: #8b8f95;
                    margin-top: 8px;
                    font-family: var(--_font-mplus1);
                    transform: rotate(.05deg);
                    font-size: 14px;
                    font-weight: 700;
                    line-height: 1.4
                }
            }
        }

        .program-button {
            display: none
        }
    }
}

.link__container {
    .device-type-mobile & {
        .banner__items {
            gap: calc(11vw / var(--_mbw2));

            .banner__item {
                width: 100%
            }
        }
    }

    .device-type-desktop & {
        .banner__items {
            gap: 11px;
            justify-content: flex-start;

            .banner__item {
                width: calc((100% - 11px)/2)
            }
        }
    }
}

.sns__container {
    .device-type-mobile & {
        .sns-list {
            display: flex;
            justify-content: center;
            gap: calc(24vw / var(--_mbw2))
        }

        .sns {
            line-height: .8;

            a {
                display: inline-block;
                width: 100%;
                text-decoration: none
            }

            .icon {
                width: calc(60vw / var(--_mbw2));

                img {
                    width: 100%
                }
            }

            .txt {
                margin-top: calc(8vw / var(--_mbw2));
                color: #191e28;
                text-align: center;
                font-family: "M PLUS 1p";
                transform: rotate(.05deg);
                font-size: calc(10vw / var(--_mbw2));
                font-style: normal;
                font-weight: 400;
                line-height: .8
            }
        }

        .caption {
            margin-top: calc(80vw / var(--_mbw2));
            color: #191e28;
            text-align: center;
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: calc(12vw / var(--_mbw2));
            font-style: normal;
            font-weight: 700;
            line-height: 1.4
        }
    }

    .device-type-desktop & {
        padding-top: 0;

        .sns-list {
            display: flex;
            justify-content: center;
            gap: 32px
        }

        .sns {
            a {
                display: inline-block;
                width: 100%;
                text-decoration: none
            }

            .icon {
                width: 60px;
                aspect-ratio: 1 / 1;

                img {
                    width: 100%
                }
            }

            .txt {
                margin-top: 8px;
                color: #191e28;
                text-align: center;
                font-family: "M PLUS 1p";
                transform: rotate(.05deg);
                font-size: 12.8px;
                font-style: normal;
                font-weight: 400;
                line-height: .8
            }
        }
    }
}

.caption__container {
    .device-type-mobile & {
        .caption {
            color: #191e28;
            text-align: center;
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: calc(12vw / var(--_mbw2));
            font-style: normal;
            font-weight: 700;
            line-height: 1.4
        }
    }

    .device-type-desktop & {
        padding-top: 0;

        .caption {
            color: #191e28;
            text-align: center;
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: 14px;
            font-style: normal;
            font-weight: 800;
            line-height: 150%
        }
    }
}

.section__container {

    +.sns__share__container,
    +.rebroadcast__container {
        margin-top: 0;

        .appendix__title {
            margin-top: 0 !important
        }
    }
}

.second {
    &.device-type-desktop {
        .typ__h2 {
            padding: 10px 0
        }

        .hover__hoverCyanText--raNVw {
            color: #000 !important
        }

        .present__linkIcon--tXoMG {
            fill: #000 !important
        }
    }
}

.vod__container {
    background: var(--_key_grad)
}

.vod__center__items {
    --_bg-color: rgba(0 0 0 / .1)
}

.enhanced__vod__list {
    --_floating-bg-color: rgba(0, 0, 0, .5);
    --_tver-bg: linear-gradient(99.68deg, #00D9EE 0%, #0073BF 88.11%);
    --_telasa-bg: #EA5504;
    --_ttfc-bg: #000;
    --_highlight-color: #FFF066;
    --_aside-layout-columns: 347px;
    --_center-layout-columns: 347px 347px 347px;
    --_center-layout2-columns: 347px 347px;

    .device-type-mobile & {
        --_label-size: calc(12vw / var(--_mbw))
    }

    .device-type-desktop & {
        --_label-size: 1rem
    }
}

.enhanced__vod__item {
    text-decoration: none;

    &.item-ttfc {
        .enhanced__vod__item__text {
            background: var(--_ttfc-bg)
        }
    }

    &.item-tver {
        .enhanced__vod__item__text {
            background: var(--_tver-bg)
        }
    }

    &.item-telasa {
        .enhanced__vod__item__text {
            background: var(--_telasa-bg)
        }
    }
}

.enhanced__vod__item__image__container {
    position: relative
}

.enhanced__vod__item__label {
    position: absolute;
    bottom: 0;
    left: 0;
    font-family: var(--_body-font);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .1em;
    font-size: var(--_label-size);
    background: var(--_tver-bg);
    color: #fff;
    padding: 6px 10px
}

.enhanced__vod__item__image {
    width: 100%
}

.enhanced__vod__item__image__icon {
    background: var(--_content-bg);
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.enhanced__vod__item__icon {
    width: 100%;
    height: auto
}

.enhanced__vod__item__text {
    color: #fff;
    font-family: var(--_font);

    .highlight {
        color: var(--_highlight-color)
    }
}

.device-type-mobile {
    .enhanced__vod__list {
        display: grid;
        justify-content: center;
        align-items: center;
        grid-template-columns: repeat(3, 1fr);
        padding: calc(15vw / var(--_mbw2)) calc(10vw / var(--_mbw2));
        gap: calc(5vw / var(--_mbw2));
        background-color: var(--_primary_color);

        .container & {
            grid-template-columns: repeat(3, 1fr);
            padding: calc(15vw / var(--_mbw2)) calc(10vw / var(--_mbw2));
            gap: 0 calc(5vw / var(--_mbw2))
        }

        .floating & {
            grid-template-columns: repeat(2, 1fr);
            padding: calc(16vw / var(--_mbw)) calc(8vw / var(--_mbw));
            background-color: var(--_floating-bg-color)
        }
    }

    .enhanced__vod__list:has(>:nth-child(2)):not(:has(>:nth-child(3))) {
        grid-template-columns: calc(120vw / var(--_mbw2)) calc(120vw / var(--_mbw2))
    }

    .enhanced__vod__list:has(>:only-child) {
        grid-template-columns: auto
    }

    .enhanced__vod__item {
        --_tver-icon: calc(59vw / var(--_mbw));
        --_telasa-icon: calc(82vw / var(--_mbw));
        width: calc(120vw / var(--_mbw2));

        .enhanced__vod__item__image__icon {
            padding: calc(4vw / var(--_mbw2)) 0;
            height: calc(24vw / var(--_mbw2))
        }

        &.item-tver {
            .enhanced__vod__item__text {
                >p {
                    font-size: calc(8vw / var(--_mbw2))
                }

                .sub-read {
                    font-size: calc(7vw / var(--_mbw2))
                }
            }

            .enhanced__vod__item__icon {
                width: calc(37vw / var(--_mbw2))
            }
        }

        &.item-telasa {
            .enhanced__vod__item__icon {
                width: calc(48vw / var(--_mbw2))
            }
        }

        &.item-ttfc {
            .enhanced__vod__item__icon {
                width: calc(45vw / var(--_mbw2))
            }
        }
    }

    .enhanced__vod__item__text {
        padding: calc(4vw / var(--_mbw2)) calc(8vw / var(--_mbw2));
        display: grid;
        place-content: center;
        vertical-align: middle;
        height: calc(48vw / var(--_mbw2));
        text-align: center;

        >p {
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: calc(9vw / var(--_mbw2));
            line-height: 1.5;
            letter-spacing: .1em;
            font-weight: 700
        }

        .strong {
            font-size: calc(15vw / var(--_mbw2));
            line-height: .8
        }

        .sub-read {
            font-size: calc(7vw / var(--_mbw2));
            transform-origin: left bottom
        }

        .highlight {
            letter-spacing: .1em
        }
    }
}

.device-type-desktop {
    br.sp {
        display: none
    }

    .vod__center__items>.enhanced__vod__list {
        grid-template-columns: var(--_center-layout-columns)
    }

    .enhanced__vod__list:has(>:nth-child(2)):not(:has(>:nth-child(3))) {
        grid-template-columns: var(--_center-layout2-columns)
    }

    .enhanced__vod__list:has(>:only-child) {
        grid-template-columns: auto
    }

    .vod__aside__items>.enhanced__vod__list {
        grid-template-columns: var(--_aside-layout-columns)
    }

    .enhanced__vod__list {
        display: grid;
        justify-content: center;
        align-items: center;
        gap: 0 19.5px;
        padding: 20px 0
    }

    .enhanced__vod__item {
        display: grid;
        grid-template-columns: 240px 107px;

        &.item-tver {
            .enhanced__vod__item__icon {
                width: 96px
            }
        }

        &.item-telasa {
            .enhanced__vod__item__icon {
                width: 90px
            }
        }

        &.item-ttfc {
            .enhanced__vod__item__icon {
                width: 80px
            }
        }
    }

    .enhanced__vod__item__text {
        display: flex;
        grid-column: span 2 / span 2;
        flex-flow: column;
        justify-content: center;
        align-items: center;
        padding: 10px 0;
        font-weight: 700;
        line-height: 1;
        min-height: 60px;

        >p {
            font-family: "M PLUS 1p";
            transform: rotate(.05deg);
            font-size: 14px;
            font-weight: 700;
            line-height: 1.14286;
            letter-spacing: .1em
        }

        .strong {
            font-size: 20px;
            line-height: .7727272727
        }

        .sub-read {
            font-size: 12px;
            line-height: 1.1666666667;
            margin-top: 8px;
            letter-spacing: .1em
        }
    }
}

.parts__emergency:empty {
    display: none
}

.device-type-mobile .parts__emergency {
    dl {
        flex-wrap: wrap
    }

    dt {
        flex: 1 1 auto;
        padding: calc(7vw / var(--_mbw)) calc(15vw / var(--_mbw));
        gap: 0 calc(5vw / var(--_mbw));
        width: auto
    }

    dd {
        padding: calc(13vw / var(--_mbw)) calc(15vw / var(--_mbw))
    }
}

.parts__emergency {
    dl {
        display: flex;
        font-weight: 700;
        border: 3px solid #f0027f
    }

    dt {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 140px;
        gap: .5rem;
        background: #f0027f;
        color: #fff;
        padding: 10px;
        white-space: nowrap;

        >svg {
            fill: currentColor
        }
    }

    dd {
        flex: 1 1 auto;
        color: #f0027f;
        background: var(--_content-bg);
        padding: 16px 20px;

        a {
            color: currentColor
        }

        a: not(.button__primary),
        a:visited:not(.button__primary) {
            color: currentColor
        }
    }
}

.news__ticker {
    --_button-size: 32px
}

.ticker__title {
    background: var(--_content-bg)
}

.device-type-desktop .news__ticker {
    display: flex;
    flex-wrap: nowrap;
    background-color: #fff;

    .ticker__viewport {
        width: 840px;
        padding-top: 40px;
        margin-top: -40px;
        overflow: hidden
    }

    .ticker__title {
        width: 130px;
        flex-shrink: 0;
        padding: 12px 0;
        background: #ddd;
        font-weight: 700
    }

    .ticker__button--prev {
        top: 50%;
        right: calc(var(--_button-size) + 16px);
        transform: translateY(-50%);
        z-index: 0
    }

    .ticker__button--next {
        top: 50%;
        right: 16px;
        transform: translateY(-50%);
        z-index: 0
    }

    .ticker__slide {
        padding: 20px 85px 20px 25px;
        align-items: center;
        font-size: 15px;
        line-height: 20px;

        >a {
            color: #000
        }
    }
}

.device-type-mobile .news__ticker {
    .ticker__viewport {
        position: relative;
        z-index: 1;
        padding-top: calc(40vw / var(--_mbw));
        margin-top: calc(-40vw / var(--_mbw));
        overflow: hidden
    }

    .ticker__title {
        padding: calc(17.5vw / var(--_mbw)) 0 calc(7.5vw / var(--_mbw));
        font-size: calc(14vw / var(--_mbw));
        line-height: 1
    }

    .ticker__button {
        height: calc(100% - calc(40vw / var(--_mbw)))
    }

    .ticker__button--prev {
        top: calc(40vw / var(--_mbw));
        left: 0
    }

    .ticker__button--next {
        top: calc(40vw / var(--_mbw));
        right: 0
    }

    .ticker__slide {
        padding: calc(11vw / var(--_mbw)) calc(40vw / var(--_mbw));
        width: 100%;
        justify-content: center;
        text-align: center;
        font-size: calc(13vw / var(--_mbw));
        line-height: calc(19vw / var(--_mbw));
        text-align: left;

        >a {
            color: #000
        }
    }
}

.ticker__title {
    white-space: nowrap;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    font-size: 1rem
}

.ticker,
.ticker__viewport .ticker__container {
    height: 100%
}

.ticker {
    position: relative;
    width: 100%
}

.ticker__container {
    display: flex;
    background: var(--_content-bg)
}

.ticker__slide {
    flex: 0 0 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    background: var(--_content-bg)
}

.ticker__button {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    background: var(--_content-bg);
    z-index: 2;
    position: absolute;

    &:hover {
        >svg {
            opacity: .5
        }
    }
}

.device-type-mobile .banner__vod__items {
    --_gap: calc(10vw / var(--_mbw))
}

.device-type-desktop .banner__vod__items {
    --_gap: 30px
}

.banner__vod__items {
    display: flex;
    justify-content: center;
    gap: var(--_gap);

    img {
        width: 100%
    }
}

.banner__vod__items:empty {
    display: none
}

.banner__wrapper {
    .device-type-mobile & {
        padding: 0 20px;
        max-width: 440px;
        margin: 0 auto;

        .banner__item {
            &:first-child {
                margin-top: calc(30vw / var(--_mbw))
            }

            +.banner__item {
                margin-top: calc(10vw / var(--_mbw))
            }
        }
    }
}

.information__container {
    .banner__items {
        .device-type-desktop & {
            gap: 10px
        }
    }
}

.banner__items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;

    >a {
        width: fit-content
    }

    img {
        width: 100%
    }
}

.banner__items.banner__b {
    .device-type-desktop & {
        >a {
            width: calc((100% - 20px) / 3)
        }
    }
}

.banner__items.banner__column {
    justify-content: center;
    align-items: center;

    .device-type-mobile & {
        padding: 0 calc(20vw / var(--_mbw))
    }

    .banner__item {
        .device-type-mobile & {
            margin-top: calc(30vw / var(--_mbw))
        }

        .device-type-desktop & {
            margin-top: 40px
        }
    }
}

.banner__items.banner__row {
    flex-direction: column;
    justify-content: start;

    .device-type-mobile & {
        justify-content: center
    }
}

.rebroadcast__container:has(.banner__items:empty):not(:has(.banner__items:not(:empty))) {
    display: none
}

.rebroadcast__container {
    display: grid;
    grid-auto-columns: auto;

    .device-type-mobile & {
        margin-top: calc(30vw / var(--_mbw));

        .appendix__title {
            margin-bottom: calc(15vw / var(--_mbw))
        }

        .banner__items:empty {
            +.banner__items {
                .banner__item:first-child {
                    margin-top: 0
                }
            }
        }
    }

    .device-type-desktop & {
        margin-top: 40px;

        .appendix__title {
            margin-bottom: 25px
        }

        .banner__items-wrapper {
            display: flex;
            flex-direction: column;
            gap: 30px
        }

        .banner__items {
            display: flex;
            flex-wrap: wrap;
            flex-direction: row;

            &:empty {
                display: none
            }

            &:not(:empty) {
                +.banner__items {
                    margin-top: 30px
                }
            }

            .banner__item {
                width: calc((100% - 10px)/2);

                &.pc-large {
                    width: 100%
                }
            }
        }
    }

    .banner__items {
        display: grid;

        .device-type-mobile & {
            gap: calc(10vw / var(--_mbw));
            grid-auto-columns: auto;
            margin: 0 calc(20vw / var(--_mbw));

            +.banner__items {
                .banner__item {
                    &:first-child {
                        margin-top: calc(30vw / var(--_mbw))
                    }
                }
            }
        }

        .device-type-desktop & {
            gap: .625rem;
            grid-template-columns: auto auto
        }
    }
}

.button__primary {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: var(--_size);
    font-weight: 700;
    color: var(--_btn-color);
    background: var(--_btn-bg);
    text-decoration: none;
    position: relative;
    text-align: center;
    font-family: "M PLUS 1p";
    transform: rotate(.05deg);

    &.button__more {
        background: #e72221
    }

    .device-type-mobile & {
        --_size: calc(50vw / var(--_mbw2));
        font-size: calc(16vw / var(--_mbw2));
        padding: calc(12vw / var(--_mbw2)) calc(40vw / var(--_mbw2));
        width: 100%;
        border-radius: calc(100vw / var(--_mbw2));
        line-height: 1.5
    }

    .device-type-desktop & {
        --_size: 50px;
        font-family: "M PLUS 1p";
        transform: rotate(.05deg);
        font-size: 16px;
        font-weight: 700;
        line-height: 1.5;
        padding: 12px 45px;
        min-width: 380px;
        border-radius: 100px;

        &.button__full {
            min-width: 100%
        }
    }

    >svg {
        fill: currentColor;
        position: absolute;
        top: 50%;
        right: calc(var(--_size) / 2);
        transform: translate(50%, -50%)
    }

    .device-type-desktop &.center__pos {
        width: fit-content;
        margin-right: auto;
        margin-left: auto
    }

    &.no__icon {
        >svg {
            display: none
        }
    }

    &.opac {
        display: flex
    }
}

.button__full-width {
    width: 100% !important
}

.event_button {
    width: 100%;
    display: flex !important;
    justify-content: center;
    align-items: center;
    min-height: 3.375rem;
    padding: 1rem 2rem;
    font-size: 1rem;
    gap: .75rem;
    outline: none;
    font-weight: 700;
    color: var(--_btn-color);
    background: var(--_btn-bg);
    text-decoration: none;
    border: none;
    border-radius: 100px;

    .device-type-mobile & {
        min-height: calc(54vw / var(--_mbw));
        padding: calc(10vw / var(--_mbw)) calc(20vw / var(--_mbw));
        font-size: calc(17vw / var(--_mbw));
        gap: calc(15vw / var(--_mbw));
        border-radius: calc(100vw / var(--_mbw))
    }

    >svg {
        flex-shrink: 0;
        height: 1.5rem;
        width: 1.5rem;
        fill: currentColor
    }
}