@charset "UTF-8";

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

.page_wrap {
    font-size: 16px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 800;
    font-style: normal;
    font-feature-settings: "palt" 1;
    letter-spacing: .02em;
    overflow: hidden;
    color: #693600;
    text-align: center;
}

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

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

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

.page_wrap section:not(:last-of-type) {
    margin-bottom: 15%;
}

.page_wrap::after {
    content: "";
    display: block;
    background: url(/sp/manzai2026/images/border.jpg) no-repeat center center / 100%;
    aspect-ratio: 1920 / 35;
}

.inner_wrap {
    background: url(/sp/manzai2026/images/bg_left.png) repeat-y top left / 30%,
                 url(/sp/manzai2026/images/bg_right.png) repeat-y top right / 30%;
    padding: 15% 5% 15% 5%;
}

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

    .page_wrap section:not(:last-of-type) {
        margin-bottom: clamp(80px, 7vw, 110px);
    }

    .inner_wrap {
        background: url(/sp/manzai2026/images/bg_left.png) repeat-y top 5% left / 22%,
                    url(/sp/manzai2026/images/bg_right.png) repeat-y top right / 22%;
        padding: clamp(80px, 7vw, 110px) 5% clamp(80px, 7vw, 110px) 5%;
    }

    .content_wrap {
        max-width: 1300px;
        margin: 0 auto;
    }

}

/* =========================================
    　　　　　　　　背景
============================================*/

.page_wrap::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: url("/sp/manzai2026/images/bg_base.jpg") center / 100% repeat;
    z-index:-1;
}

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

.mv {
    background: url("/sp/manzai2026/images/mv_bg.jpg") center / 22% repeat;
}

.mv::before,
.mv::after {
    content: "";
    display: block;
    background: url(/sp/manzai2026/images/border.jpg) no-repeat center center / 100%;
    aspect-ratio: 1920 / 35;
}

.mv_wrap {
    position: relative;
    padding: 7% 0;
    display: flex;
    flex-direction: column;
    gap: 57vw;
}

.mv_main {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 2;
}

.mv h1 {
    display: flex;
    justify-content: center;
    width: 95%; 
    margin: 0 auto;
}

.mv h2 {
    width: 75%; 
    margin: 0 auto;
}

/* ---swiper--- */
.swiper {
    pointer-events: none;
}

.swiper-wrapper {
	transition-timing-function: linear !important;
}

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

    .mv {
        background: url("/sp/manzai2026/images/mv_bg.jpg") center / 8% repeat;
    }

    .mv_wrap {
        padding: 4% 0;
        gap: 17vw;
    }

    .mv_main {
        display: flex;
        align-items: center;
        width: 95%;
        transform: translate(-50%, -55%);
    }

    .mv h1 {
        width: 60%; 
        margin: 0 auto;
    }
    
    .mv h2 {
        width: 40%; 
        margin: 3% auto 0 auto;
    }

}

/* =========================================
    　　　　　　TVer
============================================*/

.stream {
    width: 90%;
    margin: 0 auto 7% auto;
}

.stream img {
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.2));
}

@media screen and (min-width: 768px) {
    
    .stream a {
        transition-duration: .2s;
    }

    .stream a:hover {
        opacity: .7;
    }

}

/* =========================================
    　　　　　　番宣動画
============================================*/

#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;
}

/* Equipmedia用 */
.jstream-eqPlayer,
.eq-h5_player {
	width: 100% !important;
	height: 100% !important;
}
/* Equipmedia用 */

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

    .movie {
        max-width: 900px;
        margin: 0 auto;
    }

}

/* =========================================
    　　　　　　イントロ
============================================*/

.intro dl {
    margin-top: 7%;
}

.intro dl dt {
    width: 70%;
    margin: 0 auto .5% auto;
}

.intro dl dd {
    width: 80%;
    margin: 0 auto;
    filter: drop-shadow(3px 3px 1px rgba(0, 0, 0, 0.3));
}

.intro dl dd a {
    display: inline-block;
    animation: pulse 1.5s infinite;
}

@keyframes pulse {
    0%,100% {
      transform: scale(1);
    }
    50% {
      transform: scale(1.05);
    }
}

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

    .intro dl {
        margin-top: 4%;
    }

    .intro dl dt {
        width: 55%;
    }

    .intro dl dd {
        width: 70%;
        max-width: 550px;
        filter: drop-shadow(4px 4px 1px rgba(0, 0, 0, 0.3));
    }

    .intro dl dd a {
        transition-duration: .1s;
    }

    .intro dl dd a:hover {
        opacity: .7;
        transition-duration: .1s;
    }

}


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

.cast h3 {
    width: 60%;
    margin: 0 auto 3% auto;
}

.cast ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 2%;
    row-gap: 2vw;
}

.cast ul li {
    width: 49%;
}

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

    .cast h3 {
        width: 45%;
        margin: 0 auto 3% auto;
    }    

    .cast ul {
        column-gap: 3%;
    }

    .cast ul li {
        width: 31%;
    }

}

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

#page-top {
    position: fixed;
    bottom: 3%;
    right: 1.5%;
    width: 18%;
    max-width: 130px;
    aspect-ratio: 1 / 1;
    background: url(/sp/manzai2026/images/topbtn.png) no-repeat center / 100%;
    z-index: 100;
}

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

.slide-in {
    opacity: 0;
    transform: translateY(40px) scale(0.9);
    transition:
      opacity 0.8s ease,
      transform 0.8s cubic-bezier(.18,1.35,.4,1);
}
  
.slide-in.is-active {
    opacity: 1;
    transform: translateY(0) scale(1);
}


