@charset "utf-8";
:root {
    --main-color-start: #5B86E5;
    --main-color-end: #36D1DC;
    --main-gradient: linear-gradient(to right, var(--main-color-start), var(--main-color-end));
    --accent-color-start: #F7C326;
    --accent-color-end: #F55F28;
    --accent-gradient: linear-gradient(to right, var(--accent-color-start), var(--accent-color-end));
  }
body{
    background-color: #F2F2EE;
}
section{
    margin-bottom: 96px;
}
img{
    width: 100%;
}
.pc{
    display: none;
}

/* 追従ボタン */
.Btn__fixed{
    position: fixed;
    z-index: 9999;
    bottom: 0;
    right: 0;
    left: 0;
    transition: opacity 0.5s ease;
}
.Btn__fixed--inner{
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--accent-gradient);
    padding: 24px 0;
    border-radius: 40px;
    width: 90%;
    margin: 0 auto 5px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.13);
}
.Btn__fixed--Text{
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    padding-right: 5vw;
}
.Btn__fixed--Arrow{
    margin-top: 4px;
    width: 16px;
}
.Btn__fixed--Footinner img{
    width: 16px;
    margin-left: 1rem;
}

.Btn__fixed.hide {
    opacity: 0;
    pointer-events: none;
  }

/* メインビジュアル */
#main{
    margin-bottom: 32px;
}
/* #main{
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
.main-video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: -1;
    width: 100%;
    height: 89vh;
    padding-bottom: 130px;
  }
  .main__text{
    position: absolute;
    bottom: 5%;
    left: 0;
    right: 0;
    width: 185px;
  } */
.main__btn{
    padding-bottom: 15px;
    width: 87%;
    max-width: 342px;
    margin: 0 auto;
}

/* プロモーション動画 */
.movie__text{
    margin-bottom: 8px;
}
/* 登壇者 */
.speaker{
    margin-top: 50px;
}
.speaker__title{
    width: 44%;
    margin: 0 auto;
}
.speaker__contents{
    margin-bottom: 24px;
}

/* ボタン */
.btn{
    width: 90%;
    margin: 0 auto;
}

/* 主催者 */
.organizer__title{
    width: 56%;
    margin: 0 auto;
}

/* ゲスト */
.guest__title{
    width: 32%;
    margin: 0 auto;
}

/* コンセプト */
.concept__title{
    width: 48%;
    margin: 0 auto 20px;
}

/* VOICE */
.voice__title{
    width: 31%;
    margin: 0 auto 27px;
}
.voice__contents{
    width: 90%;
    margin: 0 auto;
}

/* スポンサー */
.sponsor__title{
    width: 46%;
    margin: 0 auto 27px;
}
.sponsor__contents{
    width: 90%;
    margin: 0 auto;
}

/* タイムテーブル */
.bg{
    background: var(--main-gradient);
    padding: 48px 0;
}
.table__title{
    width: 54%;
    margin: 0 auto 32px;
}
.table__contents{
    width: 90%;
    margin: 0 auto;
}

/* チケット */
.ticket__title{
    width: 35%;
    margin: 0 auto 27px;
}
.ticket__contents--top{
    margin-bottom: 24px;
}
.ticket__contents--bottom{
    margin-top: 56px;
    margin-bottom: 20px;
}

/* アクセス */
.access__title{
    width: 38%;
    margin: 0 auto 27px;
}
.access__contents{
    width: 80%;
    margin: 0 auto;
}
.access__contents--top{
    margin-bottom: 16px;
    height: 200px;
}

/* 大交流会 */
.party__title{
    width: 66%;
    margin: 0 auto 24px;
}
.party__contents{
    width: 86%;
    margin: 0 auto 24px;
    box-sizing: border-box;
}
.party__contents--top{
    margin-bottom: 24px;
}
.party__contents--bottom{
    margin-bottom: 16px;
}
.party__contents--bottom-map{
    height: 200px;
}

/* よくある質問 */
.faq{
    margin-bottom: 40px;
}
.faq__title{
    width: 23%;
    margin: 0 auto 27px;
}
.faq__contents{
    margin-bottom: 32px;
}

/* フッター */
.Footer__contents{
    background: var(--main-gradient);
    padding: 24px 10% 8px;
}
.Footer__logo{
    width: 88%;
    margin: 0 auto;
}
.Footer__inner{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 12px;
    margin-top: 16px;
}
.Footer__inner li{
    margin-bottom: 4px;
    width: 50%;
}
.Footer__inner li a{
    font-size: 12px;
    color: #fff;
}
.FooterCopy_text{
    font-size: 12px;
    color: #fff;
    text-align: center;
}

@media screen and (min-width: 767px) {
    section{
        margin-bottom: 124px;
    }
    .btn{
        max-width: 484px;
    }
    .pc{
        display: block;
    }
    .sp{
        display: none;
    }

    /* メインビジュアル */
    .main h1{
        height: 100vh;
        width: 100%;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
    }
    .main__btn{
        position: absolute;
        bottom: 13%;
        right: 0;
        width: 160px;
        height: 160px;
        padding: 0;
    }

    /* 追従ボタン */
.Btn__fixed{
    position: fixed;
    z-index: 9999;
    bottom: 2%;
    right: 5%;
    left: auto;
    transition: opacity 0.5s ease;
}
.Btn__fixed--pc{
    width: 200px;
}

    /* プロモーション動画 */
    .movie__text{
        width: 90%;
        max-width: 786px;
        margin: 0 auto;
    }
    .movie__contents{
        max-width: 1000px;
        margin: 0 auto;
    }

    /* 登壇者 */
    .speaker{
        background-image: url(/assets/images/lp_tdc/speaker_contents_bg_pc.webp);
        background-size: cover;
        background-position: center top;
        background-repeat: no-repeat;
        width: 100vw;
        overflow: hidden;
    }
    .speaker__title{
        width: 253px;
        margin: 0 auto 32px;
    }
    .speaker__contents{
        max-width: 1014px;
        margin: 0 auto 40px;
    }

    /* 主催者 */
    .organizer__title{
        max-width: 329px;
        margin-bottom: 15px;
    }
    .organizer__contents{
        max-width: 1012px;
        margin: 0 auto;
    }

    /* ゲスト */
    .guest__title{
        max-width: 186px;
        margin-bottom: 15px;
    }
    .guest__contents{
        max-width: 1240px;
        margin: 0 auto;
        width: 90%;
    }
    
    /* コンセプト */
    .concept__title{
        width: 278px;
    }
    .concept__contents{
        max-width: 1020px;
        margin: 0 auto 22px;
    }

    /* VOICE */
    .voice__title{
        width: 178px;
    }
    .voice__contents{
        max-width: 1352px;
    }

    /* スポンサー */
    .sponsor__title{
        width: 270px;
    }
    .sponsor__contents{
        max-width: 1000px;
    }

    /* タイムテーブル */
    .bg{
        padding: 100px 0;
    }
    .table__title{
        width: 316px;
        margin: 0 auto 48px;
    }
    .table__contents{
        max-width: 1000px;
    }

    /* チケット */
    .ticket__title{
        width: 207px;
    }
    .ticket__contents--top{
        max-width: 1000px;
        margin: 0 auto 32px;
    }
    .ticket__contents{
        max-width: 1000px;
        margin: 72px auto 20px;
    }
    .ticket__contents--bottom{
        max-width: 1000px;
        margin: 56px auto 20px;
    }

    /* アクセス */
    .access__title{
        width: 223px;
        margin: 0 auto 32px;
    }
    .access__contents{
        display: flex;
        justify-content: space-between;
        align-items: center;
        max-width: 1000px;
    }
    .access__contents--top{
        width: 45%;
        max-width: 450px;
        height: 400px;
    }
    .access__contents--bottom{
        width: 52%;
        max-width: 520px;
    }

    /* 大交流会 */
    .party__title{
        width: 383px;
        margin: 0 auto 32px;
    }
    .party__contents{
        max-width: 800px;
        padding: 0;
    }
    .party__contents--top{
        margin-bottom: 40px;
    }

    .party__contents--bot{
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
    }
    .party__contents--bottom{
        width: 52%;
        max-width: 416px;
    }
    .party__contents--bottom-map{
        width: 45%;
        max-width: 360px;
    }

    /* よくある質問 */
    .faq__title{
        width: 132px;
    }
    .faq__contents{
        max-width: 800px;
        margin: 0 auto 32px;
    }

    /* フッター */
    .Footer__logo{
        max-width: 512px;
    }
    .Footer__inner{
        flex-wrap: nowrap;
        justify-content: center;
    }
    .Footer__inner li{
        width: auto;
        padding: 0 20px;
    }

}