@charset "UTF-8";

html,
body {
  margin: 0;
  padding: 0;
  border: 0;
}

.wrap {
    overflow: hidden;
    text-align: center;
}

.wrap * {
    margin: 0;
    padding: 0;
}

.wrap ul,
.wrap ol {
    list-style: none;
}

.wrap img {
    max-width: 100%;
}

.wrap picture {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* .sp {
    display: block;
}

.pc {
    display: none;
} */

/* .inner_wrap {
    padding: 0 5%;
} */



/* =========================================
    　　　　　　メインビジュアル
============================================*/

.mainimg {
    position: relative;
}

/* -----番宣動画----- */

.movie_wrap {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 5%;
    width: 90%;
    max-width: 600px;
    box-shadow: 0px 0px 9px 5px rgba(255, 255, 255, 0.59);
}

#movie {
    position: relative;
    width: 100%;
    padding-top: calc(9 / 16 * 100%);
    margin: 0 auto;
    overflow: hidden;
}

.tvo-video {
    position: absolute;
    width: 100%; 
    height: 100%;
    top: 0;
    right: 0;
}

/* =========================================
    　　　　　　放送日時
============================================*/

.data h2 picture {
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.25));
}



/* =========================================
    　　　　　　　　番組概要
============================================*/

.intro {
    padding: clamp(40px, 11vw, 80px) 0;
    background: url(/sp/manzai2025/images/intro_bg_mic.png) no-repeat 5% bottom / clamp(60px, 24vw, 300px);
}

.intro::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: url("/sp/manzai2025/images/intro_bg_sp.png") center/cover no-repeat;
    z-index:-1;
}

.intro div {
    background-color: rgba(255,255,255,0.6);
    padding: 5%;
    box-sizing: border-box;
    width: 90%;
    margin: 0 auto;
}


/* =========================================
　　　　　　　仕切り線
============================================*/

.sec_border {
    display: flex;
    justify-content: center;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.25));
}


/* =========================================
　　　　　　　出演者
============================================*/

.cast {
    background: url(/sp/manzai2025/images/cast_bg_sp.jpg) repeat-y center center;
    padding: clamp(40px, 11vw, 80px) 7.5% clamp(50px, 14vw, 90px) 7.5%;
}

.cast p,
.cast ul li:not(:last-of-type) {
    margin-bottom: 8%;
}

.cast p img,
.cast ul li img {
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.25));
}


/* =========================================
　　　　　　　コンテンツ
============================================*/

.contents {
    position: relative;
    filter: drop-shadow(-2px -2px 3px rgba(0, 0, 0, 0.25));
}

.contents_catch {
    position: absolute;
    content: "";
    display: block;
    background: url(/sp/manzai2025/images/contetnts_parts.png) no-repeat center center / 100%;
    aspect-ratio: 442 / 314;
    top: -13%;
    left: 3%;
    width: 40%;
    max-width: 250px;
}

/* =========================================
    　　　　　　　tver
============================================*/

/* .tver {
    margin: 13% auto 15% auto;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.25));
} */

/* =========================================
    　　　　　　トップボタン
============================================*/

#page-top {
    position: fixed;
    bottom: 3%;
    right: 3%;
    width: 15%;
    aspect-ratio: 140 / 139;
    background: url(/sp/manzai2025/images/top_btn.png) no-repeat center / 100%;
    z-index: 100;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.25));
}

/* =========================================
    　　　　　　　アニメーション
============================================*/

/* -----ズームイン----- */

.zoom {
    opacity: 0;
    transform: translate(0,0);
    transition: all .5s;
    transition-delay: .1s;
  &.zoomout{
    opacity: 0;
    transform: scale(0.8);
  }
  &.zoomin{
    opacity: 1;
    transform: scale(1);
  }
}

/* -----ズームイン(今年も暴れてます)----- */

.zoom2 {
    opacity: 0;
    transform: translate(0,0);
    transition: all .5s;
    transition-delay: .2s;
  &.zoomout2{
    opacity: 0;
    transform: scale(0.8);
  }
  &.zoomin{
    opacity: 1;
    transform: scale(1);
  }
}

/* -----スライドイン----- */

.slidein {
	opacity: 0;
	transform: translateY(100px);
	transition: 0.6s;
}


@media screen and (min-width: 768px) {

    .wrap {
        max-width: 1920px;
        margin: 0 auto;
    }

    /* =========================================
    　　　　　　メインビジュアル
    ============================================*/

    .mainimg::before {
        position: absolute;
        content: "";
        display: block;
        background: url(/sp/manzai2025/images/main_catch.png) no-repeat center center / 100%;
        aspect-ratio: 149 / 407;
        width: 7%;
        right: clamp(50px, 20vw, 290px);
        bottom: clamp(12px, 26vw, 430px);
    }

    /* -----番宣動画----- */
    .movie_wrap {
        left: auto;
        transform: none;
        bottom: 5%;
        right: 3%;
        width: 40%;
        min-width: 300px;
    }


    /* =========================================
    　　　　　　番組概要
    ============================================*/

    .intro {
        padding: clamp(80px, 8vw, 100px) 0;
        background: url(/sp/manzai2025/images/intro_bg_mic.png) 
        no-repeat left clamp(50px, 17vw, 350px) bottom -120px / clamp(210px, 19vw, 250px);
    }

    .intro::before {
        background: url("/sp/manzai2025/images/intro_bg_pc.png") center/cover no-repeat;
    }

    .intro div {
        padding: clamp(80px, 7vw, 100px) 7%;
        max-width: 1000px;
    }

    /* =========================================
    　　　　　　　出演者
    ============================================*/

    .cast {
        background: url(/sp/manzai2025/images/cast_bg_pc.jpg) repeat-y center center;
        padding: clamp(80px, 8vw, 100px) 5%;
    }

    .cast div {
        max-width: 1200px;
        margin: 0 auto;
    }

    .cast p {
        width: 48%;
        margin: 0 auto 8% auto;
    }

    .cast ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .cast ul li {
        width: 48%;
    }

    /* =========================================
　　　　　　　コンテンツ
    ============================================*/

    .contents_catch {
        left: 4%;
        width: 24%;
        max-width: 380px;
    }


    /* =========================================
        　　　　　　　tver
    ============================================*/

    /* .tver {
        margin: clamp(50px, 7vw, 110px) auto clamp(40px, 8vw, 120px) auto;
        transition-duration: .1s;
    }

    .tver a:hover {
        opacity: .7;
    } */

    /* =========================================
    　　　　　　トップボタン
    ============================================*/

    #page-top {
        max-width: 120px;
        transition-duration: .1s;
    }

    #page-top:hover {
        opacity: .7;
    }

    /* =========================================
    　　　　　　　　スライドイン
    ============================================*/

    .slideIn {
        opacity: 0;
        transform: translateY(100px);
        transition: .6s;
    }
    

}