@charset "utf-8";

/*
jp
font-family: 'Noto Sans JP', sans-serif;
en
font-family: "Oswald", sans-serif;
*/


html {
    scroll-behavior: smooth;
    scroll-padding-top: 81px;
    overflow-y: scroll;
    background-color: #07083A;
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
    background-attachment: fixed;
}
body {
    font-family: 'Noto Sans JP', sans-serif;
    caret-color: transparent;
    color: #fff;
    letter-spacing: 0.25px;
    min-width: auto;
    margin: 0 auto;
    font-feature-settings: "palt";
    background-repeat: no-repeat;
    background-position: center top 750px;
    background-size: 100% 2607px;
    overflow: hidden;
}
.inner {max-width: 1000px;width: 100%;margin: 0 auto;box-sizing: border-box;}
.inner_s {max-width: 1080px;width: 100%;margin: 0 auto;box-sizing: border-box;}

.marker {background: linear-gradient(transparent 60%, rgba(249, 240, 78, 0.8) 60%);}

.fmctr {
    caret-color: #1e1e1e;
    border-radius: 0.3em
}
a {
    color:#fff;
}
.forSP {
    display: none;
}

/* **************************************************************** */
/* ヘッダー
*/
header.flex {
    padding: 40px 43px;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 2em;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
    transition-duration: .3s;
    box-sizing: border-box;
}
header.flex.scroll {
    background: #000;
    padding: 1em 43px;
}
header.flex.scroll nav ul li a .en {
    margin-bottom:0;
}


header .logo {
    position: fixed;
    top: 40px;
    left: 2.77vw;
    z-index: 100;
    transition-duration: .3s;
}
header .logo img {
    width: 146px;
    transition-duration: .3s;
}
header.flex.scroll .logo {
    top: 0.5em;
    left: 2em;
    text-align: left;
}
header.flex.scroll .logo img {
    width: 3.5em;
}

header nav {
    
}
header nav ul.flex {
    gap: 2.2em;
}
header nav ul li {
    
}
header nav ul li + li {
    
}
header nav ul li a {
    text-decoration: none;
    display: block;
}

header nav ul li a .en {
    display: block;
    font-size: 18px;
    font-weight: 700;
    line-height: 1em;
    letter-spacing: 0;
    margin-bottom: 0.15em;
    transition-duration: .3s;
}
header nav ul li a .jp {
    display: inline-block;
    font-size: clamp(10px,1vw,14px);
    font-weight: 400;
    line-height: 1em;
    position: relative;
}

header nav ul li a .jp:before {
    content: "";
    width: 100%;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%) scale(0, 1);
    transform-origin: center;
    -webkit-transition: transform .2s;
    -o-transition: transform .2s;
    transition: transform .2s;
}
header nav ul li a:hover .jp:before {
    transform: translateX(-50%) scale(1, 1);
}



/* **************************************************************** */
/* フッター
*/
footer {
    background: transparent;
    padding: 40px 0;
    position: relative;
}
footer::before {
    content: "";
    display: inline-block;
    background: linear-gradient(30deg, #AE0108 -25.1%, #07083A 54.52%);
    width: 500px;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.footer_content {
    margin-bottom: 1em;
}
.footer_content .inner {
    align-items: center;
    justify-content: center;
    gap: 2em;
    padding-top: 3.1em;
}

.footer_content .logo {
    width: 148px;
    height: auto;
    margin: 0 auto;
}
.footer_content nav {

}
.footer_content nav ul.flex {
    gap: 3.1em;
}
.footer_content nav ul li {
    
}
.footer_content nav ul li + li {
    
}
.footer_content nav ul li a {
    text-decoration: none;
    display: block;
}

.footer_content nav ul li a .en {
    display: block;
    font-size: 18px;
    line-height: 1em;
    font-weight: bold;
    margin-bottom: 0.5em;
}
.footer_content nav ul li a .jp {
    display: inline-block;
    font-size: 12px;
    line-height: 1em;
    position: relative;
}

.footer_content nav ul li a .jp:before {
    content: "";
    width: 100%;
    height: 2px;
    background: #fff;
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%) scale(0, 1);
    transform-origin: center;
    -webkit-transition: transform .2s;
    -o-transition: transform .2s;
    transition: transform .2s;
}
.footer_content nav ul li a:hover .jp:before {
    transform: translateX(-50%) scale(1, 1);
}
footer .copy {
    display: block;
    color: #fff;
    font-size: 12px;
    line-height: 1;
    padding: 0;
    margin-top: 30px;
}

/* **************************************************************** */
/* 個別CSS
*/
main {

}
.mv.flex {
    position: relative;
    padding-bottom: 103px;
    padding-top: 108px;
}
.mv.flex::before {
    content: "";
    display: inline-block;
    background: linear-gradient(270deg, #AE0108 0%, #07083A 100%);
    width: 500px;
    height: 108px;
    position: absolute;
    top: 0;
    right: 0;
}
.mv_catch {
    width: 100%;
}
.mv_img {
    width: 93.75%;
    height: 600px;
    clip-path: polygon(0 0, 100% 0, 100% 65%, 61.9% 65%, 54.7% 100%, 30% 100%, 0 100%, 0 0);
    margin-left: auto;
    z-index: -1;
    opacity: 0;
    transition: all 2s ease;
    position: relative;
    z-index: 1;
}
.mv_img.active {
    opacity: 1;
}
.mv_img::before {
    content: "";
    display: inline-block;
    background: #647DA3;
    mix-blend-mode: multiply;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: 0.3;
}
.mv_img::after {
    content: "";
    display: inline-block;
    background: linear-gradient(360deg, #000000 0%, #FFFFFF 100%);
    mix-blend-mode: multiply;
    width: 100%;
    height: 250px;
    position: absolute;
    bottom: 0;
    right: 0;
}
.mv_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mv_ttl {
    width: 59.4%;
    height: auto;
    position: absolute;
    top: 626px;
    left: 5.55vw;
    z-index: 1;
}
.mv_txt {
    font-size: clamp(15px,2.7vw,39px);
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: left;
    padding-left: 40px;
    margin-top: 0.5em;
}
.mv_date {
    display: flex;
    justify-content: center;
    /* background: #07083A; */
    width: 35.7vw;
    position: absolute;
    top: 538px;
    right: 0;
}
.mv_date::before {
    content: "";
    display: inline-block;
    background: url(../images/mv_date_bg.webp) no-repeat center / cover;
    mix-blend-mode: overlay;
    width: 57.8vw;
    height: 150%;
    position: absolute;
    top: 70px;
    right: 0;
    transform: translateY(-50%);
}
.mv_date img {
    display: block;
    width: 30.4vw;
    z-index: 1;
}
.mv_copy {
    font-size: clamp(12px,1.1vw,16px);
    font-weight: 400;
    position: absolute;
    bottom: 48px;
    left: 40px;
}

.mv_bloc {
    flex: 1 0 0%;
    position: relative;
}
.mv_circle {
    width: 14.270833333vw;
    max-width: 274px;
    position: absolute;
    top: 0;
    left: -2em;
}
.mv_schedule {
    position: absolute;
    bottom: 0;
    left: 0;
}
.mv_schedule h2 {
    font-family: "Oswald", sans-serif;
    margin-bottom: 0.5em;
    align-items: center;
    justify-content: flex-start;
    gap: 0.5em;
}

.mv_schedule h2 .year {
    font-size: 42px;
    line-height: 1em;
    width: 100%;
    text-align: left;
}

.mv_schedule h2 .date {
    align-items: center;
    justify-content: center;
}

.mv_schedule h2 .date .y {
    display: inline-block;
    font-size: clamp(3vw,60px,60px);
    line-height: 1.2em;
    font-weight: 900;
}
.mv_schedule h2 .date .m {
    display: inline-block;
    font-size: clamp(4vw,90px,90px);
    line-height: 1.1em;
    font-weight: 900;
}

.mv_schedule h2 .date .d_box {
    align-items: baseline;
    justify-content: space-between;
}
.mv_schedule h2 .date .d_box .d {
    display: block;
    font-size: 75px;
    font-size: clamp(24px,4vw,75px);
    line-height: 1em;
}
.mv_schedule h2 .date .d_box .w {
    display: block;
    font-size: 36px;
    font-size: clamp(16px,2vw,36px);
    line-height: 1em;
    writing-mode: tb;
    text-orientation: sideways;
}

.mv_schedule h2 .date .sepa {
    display: block;
    font-size: 60px;
    line-height: 1em;
    font-weight: normal;
    margin-right: 0.05em;
}

.mv_schedule h2 .time {
    align-items: flex-end;
    justify-content: center;
    gap: 0.5em;
}
.mv_schedule h2 .time .t {
    display: inline-block;
    font-size: clamp(24px,4vw,75px);
    line-height: 1em;
    font-weight: 900;
}
.mv_schedule h2 .time .txt {
    display: inline-block;
    font-size: clamp(16px,3.5vw,42px);
    line-height: 1.2em;
    font-weight: 900;
}

.mv_schedule p {
    font-size: clamp(2vw,28px,28px);
    line-height: 1.2em;
    font-weight: 900;
}

.mv_btn_bloc {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    position: fixed;
    bottom: 32px;
    right: 0;
    z-index: 100;
    transition-duration: .3s;
}
.discount_txt {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.11;
    letter-spacing: 2px;
    color: #F8B627;
    display: flex;
    align-items: center;
    gap: 12px;
}
.discount_txt::before {
    content: "";
    display: inline-block;
    background: #F8B627;
    width: 2px;
    height: 26px;
    transform: rotate(-30deg);
}
.discount_txt::after {
    content: "";
    display: inline-block;
    background: #F8B627;
    width: 2px;
    height: 26px;
    transform: rotate(30deg);
}
.sticky_bloc {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}
.mv_btn_bloc a,
.sticky_bloc a {
    display: inline-block;
    width: 310px;
    height: 75px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: url(../images/arrow_right_circle.svg) no-repeat center right 40px / 34px auto,
                #B60000;
    font-size: 20px;
    line-height: 1em;
    font-weight: 700;
    letter-spacing: 0.25px;
    text-decoration: none;
    border: solid 1px #fff;
    padding-right: 34px;
    transition: .2s;
    position: relative;
}
.mv_btn_bloc a::after,
.sticky_bloc a::after {
    content: "";
    background: linear-gradient(to right, #16166E, #AE0108);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -1;
    transition: .2s;
}
.mv_btn_bloc a:hover,
.sticky_bloc a:hover {
    background: url(../images/arrow_right_circle.svg) no-repeat center right 40px / 34px auto;
}
.mv_btn_bloc a:hover::after,
.sticky_bloc a:hover::after {
    opacity: 1;
}
.shiny-btn1 {
    position: relative;
    overflow: hidden;
}
.shiny-btn1::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: shiny-btn1 4s ease-in-out infinite;
}
@-webkit-keyframes shiny-btn1 {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.countdown {
    position: relative;
    padding-top: 6.2em;
}
.countdown:after {
    content: "";
    /* background: #000016; */
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
}
.countdown_bloc h2 {
    font-size: clamp(16px, 3vw, 36px);
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.25px;
    margin-bottom: 40px;
    position: relative;
}
.countdown_bloc h2::before {
    content: "";
    display: inline-block;
    background: #A00808;
    width: 120px;
    height: 3px;
    position: absolute;
    bottom: -12px;
    right: 50%;
}
.countdown_bloc h2::after {
    content: "";
    display: inline-block;
    background: #033CAF;
    width: 120px;
    height: 3px;
    position: absolute;
    bottom: -12px;
    left: 50%;
}

.tick-group {
    margin: 0 .05em;
    text-align: center;
}

.tick-flip-panel-back-text, .tick-flip-panel-front-text {
    background: #fff;
    color: #000;
}

.tick-flip-panel-text-wrapper {
    font-family: "Oswald", sans-serif;
    font-weight: 900;
}
.tick-flip-panel-back-text .tick-flip-panel-text-wrapper {
    font-family: "Oswald", sans-serif;
    font-weight: 900;
}
.tick-label {
    font-family: "Oswald", sans-serif;
    color: #fff !important;
    font-size: 24px;
    line-height: 1em;
    margin-top: 0.5em;
    display: block !important;
}
.tick .tick-credits {
    display: none;
}

.sticky_wrap {
    background: #000016;
}

.ttl_bloc {
    text-align: left;
    position: relative;
    z-index: 1;
}
.ttl_bloc h2 {
    font-family: "Oswald", sans-serif;
    color: #fff;
    font-size: clamp(48px,6.94vw,100px);
    line-height: 1;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 20px;
}
.ttl_bloc h2::after {
    content: attr(data-ja);
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    text-transform: none;
    display: block;
    font-size: clamp(14px,1.11vw,16px);
    line-height: 1;
    color: #fff;
    display: inline-flex;
    align-items: center;
    background: #B60000;
    height: 30px;
    padding: 0 12px;
}
.ttl_bloc p {
    font-size: clamp(24px,5vw,48px);
    line-height: 1.2em;
    font-weight: 900;
    margin-top: 0.5em;
}

.sc {
    display:block;
    transition: .5s all;
    transform: scale(1.2);
}
span.sc-in {
    transform: scale(1);
}

.concept_sec {
    text-align: left;
    background: url(../images/concept_bg.webp) no-repeat top 144px right / 930px auto,
                #07083A;
    height: calc(100vh + 80px);
    padding-bottom: 80px;
    position: relative;
}
.concept_sec::before {
    content: "";
    display: inline-block;
    background: linear-gradient(to top, rgba(7, 8, 58, 0) 34.99%, #07083A 48.16%, #07083A 62.94%);
    width: 930px;
    height: 360px;
    position: absolute;
    top: 0;
    right: 0;
}
.concept_sec::after {
    content: "";
    display: inline-block;
    background: linear-gradient(to left, rgba(7, 8, 58, 0) 34.99%, #07083A 48.16%, #07083A 62.94%);
    width: 360px;
    height: 930px;
    position: absolute;
    top: 144px;
    right: 614px;
}
.concept_inner {
    padding-left: calc((100% - 1154px) / 2);
    position: relative;
}
.concept_inner::before {
    content: "";
    display: inline-block;
    background: linear-gradient(180deg, #07083A 40.93%, rgba(7, 8, 58, 0) 107.14%);
    width: 100vw;
    height: 260px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}
.concept_wrap {
    display: inline-block;
    height: 100vh;
    overflow: hidden;
    position: relative;
    z-index: 1;
}
.concept_wrap .ttl_bloc {
    padding-top: 300px;
}
.concept_bloc {
    text-align: left;
    margin-top: 48px;
    position: relative;
    z-index: 1;
}
.concept_bloc h3 {
    font-size: clamp(16px,1.94vw,28px);
    line-height: 1.8;
    font-weight: 700;
    padding-left: 18px;
    margin-top: 60px;
    position: relative;
}
.concept_bloc h3::before {
    content: "";
    display: inline-block;
    background: #B60000;
    width: 2px;
    height: 70%;
    position: absolute;
    top: 52%;
    left: 0;
    transform: translateY(-50%);
}
.concept_bloc h3 small {
    font-size: clamp(16px,1.94vw,28px);
}
.concept_bloc p {
    font-size: clamp(16px,1.94vw,28px);
    font-weight: 700;
    line-height: 1.8;
    margin-top: 60px;
}
.concept_bloc a {
    text-decoration: underline;
    color: #FF989A;
}
.concept_speaker_list {
    margin-top: 20px;
}
.concept_speaker_list li {
    font-size: clamp(12px,1.11vw,16px);
    font-weight: 700;
    line-height: 1.8;
    padding-left: 1.5em;
    position: relative;
}
.concept_speaker_list li::before {
    content: "";
    display: inline-block;
    background: #fff;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    position: absolute;
    top: 1em;
    left: 0.7em;
}
.concept_speaker_list li span {
    font-size: clamp(14px,1.39vw,20px);
}
.concept_desc_list {
    margin-top: 20px;
}
.concept_desc_list li {
    font-size: clamp(14px,1.53vw,22px);
    font-weight: 700;
    line-height: 1.5;
    padding-left: 36px;
    position: relative;
}
.concept_desc_list li::before {
    content: "";
    display: inline-block;
    background: url(../images/checkbox.webp) no-repeat center / 100% auto;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.concept_desc_list li + li {
    margin-top: 26px;
}
img.concept_img {
    display: block;
    width: 506px;
    height: auto;
    margin-top: 3.3em;
    margin-left: auto;
    margin-right: auto;
}
p.concept_catch {
    font-size: clamp(20px,2.5vw,36px);
    line-height: 1.5;
    margin-top: 0.6em;
    margin-bottom: 1.7em;
}
.concept_conds {
    background: #111111;
    padding-top: 132px;
    padding-bottom: 100px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 0;
}
.concept_conds_box {
    border: 1px solid rgba(255, 255, 255, 0.3);
    width: 1000px;
    padding: 58px 148px 50px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
p.concept_conds_ttl {
    font-weight: 600;
    font-size: clamp(24px,2.2vw,32px);    	
    line-height: 1.88;
    text-align: center;
    background: #111111;
    padding: 0 20px;
    margin-bottom: 15px;
    position: absolute;
    top: -32px;
    left: 50%;
    transform: translateX(-50%);
}
p.concept_conds_txt {
    font-size: clamp(18px,1.4vw,20px);
    font-weight: 600;
    line-height: 3;
    margin-top: 0;
}
.concept_conds_list {
    margin-top: 15px;
}
.concept_conds_list li {
    font-size: clamp(16px,1.2vw,18px);
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    padding-left: 1.5em;
    position: relative;
}
.concept_conds_list li::before {
    content: "";
    display: inline-block;
    background: #fff;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    top: 0.9em;
    left: 0.6em;
    transform: translateY(-50%);
}
.concept_conds_btn_bloc {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    margin-top: 54px;
}
.concept_conds_btn_bloc a {
    display: inline-block;
    width: 328px;
    height: 70px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: url(../images/arrow_right_circle.svg) no-repeat center right 20px / 34px auto,
                #B60000;
    border: 1px solid #fff;
    font-size: 20px;
    line-height: 1em;
    font-weight: 700;
    letter-spacing: 0.25px;
    text-decoration: none;
    transition: .2s;
    position: relative;
}
.concept_conds_btn_bloc a::before {
    content: "";
    background: linear-gradient(to right, #16166E, #AE0108);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: .2s;
    z-index: -1;
}
.concept_conds_btn_bloc a:hover {
    background: url(../images/arrow_right_circle.svg) no-repeat center right 20px / 34px auto;
}
.concept_conds_btn_bloc a:hover::before {
    opacity: 1;
}

.latest_sec {
    padding-top: 5.6em;
    overflow: hidden;
}
.latest_bloc {
    margin-bottom: 4em;
}
.latest_bloc h3 {

}
img.latest_img {
    width: 600px;
    height: auto;
    margin-top: 48px;
}
.latest_photo {
    width: min(1200px, 100%);
    height: 685px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
}
.latest_photo picture {
    height: auto;
    position: absolute;
}
.latest_photo picture:nth-child(1) {
    width: 440px;
    top: 0;
    left: 0;
}
.latest_photo picture:nth-child(2) {
    width: 209px;
    top: 205px;
    left: 50%;
    transform: translateX(-50%);
}
.latest_photo picture:nth-child(3) {
    width: 375px;
    top: 128px;
    right: 0;
}
.latest_photo picture:nth-child(4) {
    width: 164px;
    bottom: 78px;
    left: 210px;
}
.latest_photo picture:nth-child(5) {
    width: 194px;
    bottom: 0;
    right: 247px;
}

.whats_sec {
    background: url(../images/bg_whats_pc.webp) no-repeat center bottom / cover;
    padding-top: 80px;
    padding-bottom: 100px;
    position: relative;
    z-index: 1;
}
.whats_sec .ttl_bloc h2 {
    align-items: center;
    text-align: center;
}
.whats_video {
    aspect-ratio: 16 / 9;
    width: 100%;
    max-width: 1000px;
    margin: 60px auto 0;
    position: relative;
}
.whats_video video {
    width: 100%;
    max-width: 1000px;
    height: auto;
}
.whats_video::before {
    content: "";
    display: inline-block;
    background: url(../images/bg_light.webp) no-repeat center / 100% auto;
    mix-blend-mode: screen;
    width: 1080px;
    height: 377px;
    position: absolute;
    top: -190px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.whats_bloc h3 {
    font-size: clamp(30px,8vw,60px);
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 1em;
}
.whats_bloc p {
    font-size: 18px;
    font-size: clamp(16px,3.5vw,18px);
    line-height: 2.5em;
    font-weight: 900;
}
.whats_catch {
    font-size: clamp(20px,2.7vw,40px);
    font-weight: 900;
    line-height: 1.5;
    margin-top: 60px;
}

.speaker_sec {
    padding-top: 164px;
    padding-bottom: 80px;
    position: relative;
}

.panelists_sec {
    padding-bottom: 0;
}

.speaker_sec:not(.panelists_sec):not(.startup_sec):before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, #AE0108 0%, #16166E 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.speaker_sec:has(.speaker_more_bloc.active)::before {
    height: calc(100% + 160px);
}
.speaker_sec .inner {
    width: 1260px;
    max-width: 1260px;
}
.speaker_sec .ttl_bloc h2 {
    align-items: center;
    text-align: center;
}
.speaker_bloc {
    margin-top: 60px;
    position: relative;
}
.speaker_list {
    align-items: stretch;
    justify-content: flex-start;
    gap: 48px 30px;
    position: relative;
    z-index: 3;
}
.speaker_cell {
    width: calc((100% - 120px) / 5);
    /* background: #fff; */
    /* color: #000; */
    cursor: pointer;
    /* border: solid 3px transparent; */
}
.speaker_cell figure {
    overflow: hidden;
}
.speaker_cell .figure_box img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    overflow: hidden;
}
.speaker_cell:hover figure img {
    transform:scale(1.1);
    transition:.5s all;
}
.speaker_cell .box .name_box {
    /* background: #000; */
    /* padding: 0.5em; */
    align-items: center;
    justify-content: space-between;
    /* height: 46px; */
    margin-bottom: 0.5em;
}
.speaker_cell.special_speaker .box .name_box {
    margin-top: 1.5em;
    position: relative;
}
.speaker_cell.special_speaker .box .name_box::before {
    content: "";
    display: inline-block;
    background: #fff;
    width: 27px;
    height: 1px;
    position: absolute;
    top: -0.6em;
    left: 0;
}
.speaker_cell .box .name_box .name {
    font-size: clamp(12px,1.1vw,16px);
    font-weight: 700;
    line-height: 1;
    text-align: left;
    width: 100%;
    margin-top: 20px;
}
.speaker_cell.special_speaker .box .name_box .name {
    margin-top: 0;
}
.speaker_cell .box .name_box .name em {
    font-size: clamp(16px,1.7vw,24px);
    font-weight: 700;
    line-height: 1.5;
}
.speaker_cell.special_speaker .box .name_box .name em {
    font-size: clamp(14px,1.4vw,20px);
}
.speaker_cell .box .name_box .en {
    font-family: "Oswald", sans-serif;
    font-size: clamp(16px,1.1vw,16px);
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: 1px;
    color: rgba(255, 255, 255, 0.6);
    text-align: right;
}
.speaker_cell .box .meta_box {
    text-align: left;
    margin-top: 30px;
    position: relative;
}
.speaker_cell.special_speaker .box .meta_box {
    margin-top: 1.1em;
}
.special_speaker_txt {
    font-size: clamp(11px,0.9vw,13px);
    font-weight: normal;
    line-height: 1;
    display: inline-block;
    margin-bottom: 4px;
}
.speaker_cell:not(.special_speaker) .box .meta_box::before {
    content: "";
    display: inline-block;
    background: rgba(255, 255, 255, 0.3);
    width: 100px;
    height: 1px;
    position: absolute;
    top: -14px;
    left: 0;
}
.speaker_cell .box .meta_box .co {
    font-size: clamp(11px,1vw,14px);
    line-height: 1.29;
    font-weight: 700;
    letter-spacing: 0;
    white-space: nowrap;
}
.speaker_cell .box .meta_box .sub1 {
    margin-top: 8px;
}
.speaker_cell.special_speaker .box .meta_box .sub1 {
    font-size: clamp(11px,1vw,14px);
    font-weight: 700;
    margin-top: 2px;
}
.speaker_cell .box .meta_box .sub1,
.speaker_cell .box .meta_box .sub2,
.speaker_cell .box .meta_box .sub3 {
    font-size: clamp(10px,0.9vw,13px);
    line-height: 1.15;
    letter-spacing: 0;
    font-weight: 400;
    white-space: nowrap;
}
.speaker_cell .box .meta_box > * + * {
    margin-top: 0.3em;
}
.speaker_cell.special_speaker .box .meta_box > * + * {
    margin-top: 0.5em;
}

.more {
    margin-top: 3em;
}
.btn_more {
    font-family: "Oswald", sans-serif;
    font-size: clamp(12px,1.9vw,28px);
    font-weight: 700;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 225px;
    height: 60px;
    border: 1px solid #fff;
    border-radius: 4px;
    cursor: pointer;
}

.speaker_more_bloc {
    /*margin-top: calc(1em + 6px);*/
    margin-top: 3.4em;
    display: none;
    position: relative;
}

.speaker_sec h3 {
    margin-bottom: 2em;
}
.speaker_sec h3 .en {
    display: block;
    color: #b51d22;
    font-size: 36px;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 0.5em;
}
.speaker_sec h3 .jp {
    display: block;
    font-size:24px;
    line-height: 1em;
    font-weight: 900;
}

.session_sec {
    background-color: #000016;
    background-image: url(../images/bg_session_01.webp), url(../images/bg_session_02.webp);
    background-repeat: no-repeat;
    background-position: right top, left bottom;
    padding-top: 5.6em;
}
.session_bloc {
    align-items: stretch;
    justify-content: flex-start;
    gap: 1.5em;
}
.session_item {
    width: calc(100% / 3 - 1em);
    background: #fff;
    color: #000;
    position: relative;
}
.session_item:after {
    content: "";
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    position: absolute;
    top: -2px;
    left: -2px;
    background-image: linear-gradient(280deg, #ff9100, #f0a 25%, #9d00ce 50%, #5a00fc 75%, #00b7ec);
}
.session_item_inner {
    overflow: hidden;
    position: relative;
    z-index: 2;
    background: #fff;
}

.session_meta {
    background: #000;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: 0.5em 1em;
    margin-bottom: 1em;
}
.session_meta .class {
    color: #fff;
    font-family: "Oswald", sans-serif;
    font-size: 42px;
    line-height: 1em;
    font-weight: 900;
}
.session_meta .time {
    font-family: "Oswald", sans-serif;
    color: #fff;
    /* width: 100%; */
    font-size: 24px;
    line-height: 1em;
    font-weight: 900;
    text-align: left;
}

.session_title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    /* height: 170px; */
    padding: 0 1em;
    margin-bottom: 1em;
}
.session_title h3 {
    background: linear-gradient(to right, #1a68f7 0%, #8a3586 50%, #f50417 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: left;
    font-size: 30px;
    line-height: 1.4em;
    font-weight: 900;
}
.session_title h3 span {
    display: block;
    text-align: left;
}
.session_title h3 span + span {
    margin-top: 0.5em;
}
.session_title h3 span em {
    display: inline-block;
    background: rgb(25,104,247);
    background: linear-gradient(90deg, rgba(25,104,247,1) 0%, rgba(100,61,137,1) 50%, rgba(174,18,28,1) 100%);
    color: #fff;
    font-size: 21px;
    line-height: 1em;
    padding: 0.5em;
}


.session_desc {
    padding: 0 1em;
    margin-bottom: 1em;
    min-height: 14em;
}
.session_desc p {
    font-size: 16px;
    text-align: left;
}



.session_panelist {
    align-items: flex-start;
    justify-content: center;
}
.panelist {
    width: calc(100% / 3);
}
.panelist figure {
    
}
.panelist .panelist_meta {
    color: #fff;
    position: relative;
    padding: 0.5em;
    align-items: center;
    justify-content: center;

}
.panelist .panelist_meta .box {

}
.panelist .panelist_meta:after {
    content: "";
    width: 400%;
    height: 300%;
    position: absolute;
    top: 0;
    left: -200%;
    right: 0;
    margin: 0 auto;
    background: #000;
}







.panelist .panelist_meta .co {
    font-size: 10px;
    line-height: 1.4em;
    font-weight: bold;
    margin-bottom: 0.5em;
    position: relative;
    z-index: 2;
}
.panelist .panelist_meta .name {
    font-size: 12px;
    line-height: 1.4em;
    font-weight: bold;
    position: relative;
    z-index: 2;
}
.panelist .panelist_meta .name em {
    display: inline-block;
    font-size: 16px;
    line-height: 1em;
}

.timetable_sec {
    padding-top: 5.6em;
}
.timetable_select_bloc {
    margin-top: 3.3em;
    margin-bottom: 3.3em;
}
.timetable_select_bloc ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2em;
    width: 100%;
    max-width: 490px;
    margin-left: auto;
    margin-right: auto;
}
.timetable_select_bloc ul li .timetable_select {
    font-family: "Oswald", sans-serif;
    font-size: clamp(18px,1.9vw,28px);
    line-height: 1em;
    font-weight: 700;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 1px #fff;
    border-radius: 2em;
    width: 100%;
    /* height: 66px; */
    padding: 0.65em;
    cursor: pointer;
}
.timetable_select_bloc ul li .timetable_select em {
    display: inline-block;
    font-size: 36px;
    line-height: 1em;
    margin-right: 0.2em;
}

.timetable_select_bloc ul li .timetable_select.active {
    background: linear-gradient(to right, #B60000, #612090, #14166F);
}
.timetable_select_bloc ul li .timetable_select:hover {
    box-shadow: 3px 3px 0px #fff, -3px -3px 0px #fff, 3px -3px 0px #fff, -3px 3px 0px #fff;
}

.timetable_place {
    margin-bottom: 0.7em;
}
.timetable_place ul {
    align-items: flex-start;
    justify-content: flex-end;
    margin-left: calc(220px + 1em);
}
.timetable_place ul li {
    border-left: solid 1px #Fff;
    padding: 0.5em 1em 1em;
    /* width: calc(100% / 3 - 1em); */
    flex: 1 0 0%;
}
.timetable_place ul li:last-child {
    border-right: solid 1px #Fff;
}
.timetable_place ul li + li {
    
}
.timetable_place ul li span {
    display: inline-block;
    font-size: 24px;
    line-height: 1em;
    font-weight: 700;
}
.timetable_place ul li span em {
    display: inline-block;
    font-size: 48px;
    line-height: 1em;
    font-weight: 900;
    vertical-align: sub;
    margin-left: 0.2em;
}


.timetable_bloc {

}

.timetable_row {
    align-items: stretch;
    justify-content: space-between;
    gap: 1em;
    min-height: 150px;
}
.timetable_row + .timetable_row {
    margin-top: 1em;
}
.timetable_catch {
    font-size: clamp(16px,2.5vw,36px);
    font-weight: 700;
    line-height: 1.5;
    margin-top: 1.7em;
}

.row_head {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 220px;
    padding: 1em;
    text-align: left;
}
.row_head .en {
    display: block;
    font-size: 18px;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 1em;
}
.row_head .time {
    display: block;
    font-size: clamp(18px,1.9vw,28px);
    line-height: 1em;
    font-weight: 700;
}
.row_head .etc {
    display: block;
    font-size: 16px;
    line-height: 1em;
    font-weight: 900;
    margin-top: 1em;
}



.rh1 {background: #B60000;}
.rh2 {background: #B71069;}
.rh3 {background: #5D2085;}
.rh4 {background: #00738D;}
.rh5 {background: #118CDE;}
.rh6 {background: #004FD8;}
.rh7 {background: #3315A0;}
.rh8 {background: #15176D;}

#T1 .rh2 {background: #B60000;}
#T1 .rh3 {background: #B71069;}
#T1 .rh4 {background: #5D2085;}
#T1 .rh5 {background: #00738D;}
#T1 .rh6 {background: #118CDE;}
#T1 .rh7 {background: #004FD8;}
#T1 .rh8 {background: #3315A0;}


.row_body {
    flex: 1 0 0%;
    align-items: stretch;
    justify-content: space-between;
    gap: 0.5em;
}

.row_box {
    width: calc(100% / 2 - 0.5em);
    background: #fff;
    color: #000;
    padding: 0.1em 0 0 0;
    cursor: pointer;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.row_box:has(.cs) {
    justify-content: flex-start;
    padding-left: 20px;
}
.row_box:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    z-index: -1;
}
.row_box .meta {
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5em;
    position: relative;
    z-index: 2;
}
.row_box .num {
    color: #818181;
    font-size: clamp(18px,1.7vw,22px);
    line-height: 1;
    font-weight: 700;
    position: absolute;
    top: 14px;
    left: 16px;
}
.row_box .meta ul {
    display: none;
    gap: 0.5em;
}
.row_box .meta ul li {
    background: #d3ba64;
    color: #000;
    font-size: 12px;
    line-height: 1em;
    font-weight: bold;
    padding: 0.5em 1em;
    border-radius: 2em;
}
.row_box .meta ul li + li {
    
}

.row_box .cell {
    position: relative;
    z-index: 2;
}
.row_box .cell p {
    font-size: clamp(16px,1.4vw,20px);
    line-height: 1.35;
    font-weight: 900;
    text-align: center;
}
.row_box .cell span {
    font-size: clamp(12px,1.1vw,16px);
    display: inline-block;
    margin-top: 5px;
}

.row_box i {
    width: 19px;
    height: 19px;
    background: url(../images/icon_plus.webp) no-repeat center / 19px auto;
    background-size: contain;
    position: absolute;
    bottom: 15px;
    right: 15px;
    z-index: 2;
}

.rb1 .row_box {border-left:solid 16px #B60000;}
.rb2 .row_box {border-left:solid 16px #B71069;}
.rb3 .row_box {border-left:solid 16px #5D2085;}
.rb4 .row_box {border-left:solid 16px #00738D;}
.rb5 .row_box {border-left:solid 16px #118CDE;}
.rb6 .row_box {border-left:solid 16px #004FD8;}
.rb7 .row_box {border-left:solid 16px #3315A0;}
.rb8 .row_box {border-left:solid 16px #15176D;}

#T1 .rb2 .row_box {border-left: solid 16px #B60000;}
#T1 .rb3 .row_box {border-left: solid 16px #B71069;}
#T1 .rb4 .row_box {border-left: solid 16px #5D2085;}
#T1 .rb5 .row_box {border-left: solid 16px #00738D;}
#T1 .rb6 .row_box {border-left: solid 16px #118CDE;}
#T1 .rb7 .row_box {border-left: solid 16px #004FD8;}
#T1 .rb8 .row_box {border-left: solid 16px #15176D;}

.rb1 .row_box:hover {background: #F0D3D4;}
.rb2 .row_box:hover {background: #E5D4D9;}
.rb3 .row_box:hover {background: #DFD9E5;}
.rb4 .row_box:hover {background: #c8dee2;}
.rb5 .row_box:hover {background: #cde5f6;}
.rb6 .row_box:hover {background: #d1dae9;}
.rb7 .row_box:hover {background: #d4d0df;}
.rb8 .row_box:hover {background: #dadae9;}

#T1 .rb2 .row_box:hover {background: #F0D3D4;}
#T1 .rb3 .row_box:hover {background: #E5D4D9;}
#T1 .rb4 .row_box:hover {background: #DFD9E5;}
#T1 .rb5 .row_box:hover {background: #c8dee2;}
#T1 .rb6 .row_box:hover {background: #cde5f6;}
#T1 .rb7 .row_box:hover {background: #d1dae9;}
#T1 .rb8 .row_box:hover {background: #d4d0df;}

.row_box:hover .meta .num {
    color:#000;
}

.rb1 .row_box.empty_box {background: #B60000;}
.rb2 .row_box.empty_box {background: #B71069;}
.rb3 .row_box.empty_box {background: #5D2085;}
.rb4 .row_box.empty_box {background: #00738D;}
.rb5 .row_box.empty_box {background: #118CDE;}
.rb6 .row_box.empty_box {background: #004FD8;}
.rb7 .row_box.empty_box {background: #3315A0;}
.rb8 .row_box.empty_box {background: #15176D;}

#T1 .rb2 .row_box.empty_box {background: #B60000;}
#T1 .rb3 .row_box.empty_box {background: #B71069;}
#T1 .rb4 .row_box.empty_box {background: #5D2085;}
#T1 .rb5 .row_box.empty_box {background: #00738D;}
#T1 .rb6 .row_box.empty_box {background: #118CDE;}
#T1 .rb7 .row_box.empty_box {background: #3315A0;}
#T1 .rb8 .row_box.empty_box {background: #15176D;}

.rb1 .row_box.empty_box:hover {background: #B60000;}
.rb2 .row_box.empty_box:hover {background: #B71069;}
.rb3 .row_box.empty_box:hover {background: #5D2085;}
.rb4 .row_box.empty_box:hover {background: #00738D;}
.rb5 .row_box.empty_box:hover {background: #118CDE;}
.rb6 .row_box.empty_box:hover {background: #004FD8;}
.rb7 .row_box.empty_box:hover {background: #3315A0;}
.rb8 .row_box.empty_box:hover {background: #15176D;}

#T1 .rb2 .row_box.empty_box:hover {background: #B60000;}
#T1 .rb3 .row_box.empty_box:hover {background: #B71069;}
#T1 .rb4 .row_box.empty_box:hover {background: #5D2085;}
#T1 .rb5 .row_box.empty_box:hover {background: #00738D;}
#T1 .rb6 .row_box.empty_box:hover {background: #118CDE;}
#T1 .rb7 .row_box.empty_box:hover {background: #004FD8;}
#T1 .rb8 .row_box.empty_box:hover {background: #3315A0;}

#T2 {
    display:none;
}
#T3 {
    display:none;
}

.outline_sec {
    padding-top: 5.6em;
    padding-bottom: 7.8em;
}
.outline_sec .ttl_bloc h2 {
    
}
.outline_sec .ttl_bloc h2 .en {
    display: block;
    color: #b51d22;
    font-size: 36px;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 0.5em;
}
.outline_sec .ttl_bloc h2 .jp {
    display: block;
    font-size: 24px;
    line-height: 1em;
    font-weight: 900;
}

.outline_bloc {
    text-align: center;
    margin-top: 3.3em;

}
.outline_bloc dl {
    border-top: solid 1px #fff;
    font-size: 21px;
    line-height: 1.6em;
}
.outline_bloc dl + dl {
    
}
.outline_bloc dl:last-child {
    border-bottom: solid 1px #fff;
}
.outline_bloc dl dt {
    font-size: clamp(13px,1.4vw,20px);
    font-weight: 700;
    line-height: 1.8;
    padding: 1.5em 0 1.5em 5px;
    min-width: 7em;
    text-align: left;
}
.outline_bloc dl dd {
    font-size: clamp(13px,1.4vw,20px);
    font-weight: 400;
    line-height: 1.8;
    flex: 1 0 0%;
    text-align: left;
    padding: 1.5em 0 1.5em 5px;
    width: 100%;
}
.outline_bloc dl dd em {
    font-weight: 900;
}
.outline_bloc dl dd strong {
    color: #ff0000;
}
.outline_bloc dl dd .under {
    text-decoration: underline;
}
.outline_bloc dl dd a:hover {
    text-decoration: none;
}
.outline_data {
    display: block;
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.benefits_sec {
    padding-top: 5.6em;
    position: relative;
}
.benefits_sec::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 1400px;
    background: url(../images/bg_benefits.webp) no-repeat center top / 100% 1400px;
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
}
.benefits_bloc {
    align-items: stretch;
    justify-content: space-between;
    gap: 1.1em;
    margin-top: 3.3em;
}
.benefits_item {
    background: #fff;
    color: #000;
    position: relative;
    width: calc(100% / 2 - 1.1em);
    padding: 1.8em 1.3em 2.2em;
    border-radius: 20px;
    position: relative;
}
/* .benefits_item:after {
    content: "";
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    position: absolute;
    top: -2px;
    left: -2px;
    background-image: linear-gradient(280deg, #ff9100, #f0a 25%, #9d00ce 50%, #5a00fc 75%, #00b7ec);
    z-index: -1;
    border-radius: 1em;
} */
.benefits_ttl {
    display: flex;
    align-items: flex-end;
    height: 170px;
    border-left: 1px solid #A2A2A2;
    padding-left: 0.1em;
    position: absolute;
    top: -30px;
    left: 20px;
}
.benefits_ttl span {
    font-family: "Oswald", sans-serif;
    font-size: clamp(12px,1.1vw,16px);
    font-weight: 600;
    writing-mode: vertical-rl;
    display: inline-block;
    background: linear-gradient(to bottom, #B60000, #612090, #14166F);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.benefits_item .box {
    position: relative;
    z-index: 2;
    text-align: left;
}
.benefits_item .box .upper {
}
.benefits_item .box .upper h3 {
    font-size: clamp(16px,2.2vw,32px);
    font-weight: 700;
    line-height: 1.5;
    color: #111;
    text-align: center;
}
.benefits_item .box .upper h4 {
    font-size: 24px;
    line-height: 1.2em;
    font-weight: 900;
    margin-top: 0.5em;
}
.benefits_item .box .upper p {
    font-size: clamp(18px,4vw,32px);
    line-height: 1.4em;
    font-weight: 900;
}
.benefits_item .box .bottom {
    font-size: clamp(12px,1.1vw,16px);
    line-height: 1.8;
    font-weight: bold;
}
.benefits_item .box .bottom p {
}
.benefits_item .box .bottom h4 {
    font-size: 24px;
    font-size: clamp(18px,4vw,24px);
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 1em;
    background: linear-gradient(to right, #1a68f7 0%, #8a3586 50%, #f50417 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.benefits_item .box .bottom ul {
    justify-content: center;
    gap: 1.1em;
    margin-top: 2.2em;
}
.benefits_item .box .bottom ul li {
    width: 150px;
}
.benefits_item .box .bottom ul + p {
    width: 500px;
    max-width: 100%;
    margin-top: 2.3em;
    margin-left: auto;
    margin-right: auto;
}
.benefits_item .box .bottom dl {
    align-items: flex-start;
    justify-content: flex-start;
    gap: 1em;
    margin-left: 1.8em;
    margin-right: 1.8em;
}
.benefits_item .box .bottom dl + dl {

}
.benefits_item .box .bottom dl dt {
    text-align: right;
    min-width: 5em;
}
.benefits_item .box .bottom dl dt:after {
    content:":";
}
.benefits_item .box .bottom dl dd {
    flex: 1 0 0%;
}
.benefits_box {
    font-size: clamp(14px,4vw,24px);
    line-height: 1.5;
    color: #fff;
    display: flex;
    align-items: center;
    background: linear-gradient(to right, #B60000, #46156E, #15166E);
    border-radius: 12px;
    width: 84%;
    padding: 1.5em 1.5em 1.5em 2.3em;
    margin: 1em 1.7em 0;
    position: relative;
}
.benefits_box::after {
    content: "";
    display: inline-block;
    background: url(../images/benefits_img_circle.webp) no-repeat center / 180px auto;
    width: 180px;
    height: 180px;
    position: absolute;
    top: 50%;
    right: -10%;
    transform: translateY(-50%);
}
.benefits_box + dl {
    margin-top: 1.3em;
}

.speaker_bloc .speaker_list .speaker_cell {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
    opacity: 0;
    -webkit-transform: translate(0, 60px);
    transform: translate(0, 60px);
    -webkit-transition: opacity .6s ease-in-out, -webkit-transform .6s ease-in-out;
    transition: opacity .6s ease-in-out, -webkit-transform .6s ease-in-out;
    transition: opacity .6s ease-in-out, transform .6s ease-in-out;
    transition: opacity .6s ease-in-out, transform .6s ease-in-out, -webkit-transform .6s ease-in-out;
}
.speaker_bloc .speaker_list .speaker_cell.on {
    opacity: 1.0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}


.remodal {
    padding: 0;
}
.remodal-close {
    color: #000;
    border: solid 1px #000;
    border-radius: 50%;
    text-align: center;
    left: auto;
    right: 1em;
    top: 1em;
}
.remodal-close:before {
    font-size: 2em;
    text-align: center;
    width: 33px;
    top: -1px;
    left: -1px;
}

.speaker_modal {

}
.speaker_modal .upper {

}
.speaker_modal .upper figure {
    width: 30%;
    height: auto;
    aspect-ratio: 1;
}
.speaker_modal .upper figure img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
}
.speaker_modal .upper .ses {
    flex: 1 0 0%;
    padding: 1em;
}

.speaker_modal .upper .ses .meta {
    align-items: flex-end;
    justify-content: flex-start;
    gap: 0.5em;
    margin-bottom: 1em;
}
.speaker_modal .upper .ses .meta .m1 {
    color: #c9c7c7;
    font-size: 36px;
    line-height: 1em;
    font-weight: 900;
}
.speaker_modal .upper .ses .meta .m2 {
    font-size: 24px;
    line-height: 1em;
    font-weight: 900;
}
.speaker_modal .upper .ses .meta .m3 {
    font-size: 14px;
    line-height: 1em;
    font-weight: 900;
}
.speaker_modal .upper .ses .meta .m4 {
    font-size: 18px;
    line-height: 1em;
    font-weight: 900;
}

.speaker_modal .upper .ses .const {
    text-align: left;
}
.speaker_modal .upper .ses .const .ttl {
    font-size: 18px;
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 1em;
}
.speaker_modal .upper .ses .const .desc {
    font-size: 14px;
    line-height: 1.6em;
    font-weight: 900;
}


.speaker_modal .bottom {
    padding: 1em;
}
.speaker_modal .bottom .box {
    align-items: center;
    justify-content: flex-start;
    gap: 2em;
    text-align: left;
}
.speaker_modal .bottom .box .name_box {
    align-items: center;
    justify-content: flex-start;
    gap: 1em;
}
.speaker_modal .bottom .box .name_box .name {
    font-size: 18px;
    line-height: 1em;
    font-weight: bold;
}
.speaker_modal .bottom .box .name_box .name em {
    font-size: 24px;
    line-height: 1em;
    font-weight: 900;
}
.speaker_modal .bottom .box .name_box .name em span {
    display: inline-block;
    font-size: 18px;
    line-height: 1.2em;
}
.speaker_modal .bottom .box .name_box .en {
    color: #777676;
    font-size: 14px;
    line-height: 1.4em;
    font-weight: bold;
    text-align: right;
}


.speaker_modal .bottom .box .meta_box {
    
}
.speaker_modal .bottom .box .meta_box > * + * {
    margin-top:0.25em;
}

.speaker_modal .bottom .box .meta_box .co {
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 900;
}
.speaker_modal .bottom .box .meta_box .sub1 {
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 900;
}
.speaker_modal .bottom .box .meta_box .sub2 {
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 900;
}
.speaker_modal .bottom .box .meta_box .sub3 {
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 900;
}


.speaker_modal .bottom .cell {
    border-top: solid 1px #000;
    margin-top: 1em;
    padding-top: 1em;
    text-align: left;
}
.speaker_modal .bottom .cell p {
    font-size: 14px;
    line-height: 1.6em;
    font-weight: bold;
}
.speaker_modal .bottom .cell p a {
    color: #2b2e38;
}



.comingsoon_bloc {
    padding: 4em 0;
}
.comingsoon {
    position: relative;
}
.comingsoon:before {
    content: "Coming Soon!!";
    background: #dd0411;
    color: #fff;
    position: absolute;
    /* top: 50%; */
    /* transform: translateY(-50%); */
    -webkit-transform: translateY(-50%);
    top: -1em;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 2;
    display: inline-block;
    font-size: 48px;
    line-height: 1em;
    font-weight: 900;
    width: 10em;
    padding: 0.4em 0.5em 0.5em;
    z-index: 10;
    transform: rotate(-5deg);
}




.timetable_modal {
    padding: 0.5em 1em 2em;
}
.timetable_modal .upper {
    
}
.timetable_modal .upper .meta {
    align-items: flex-end;
    justify-content: flex-start;
    gap: 0.5em;
    margin-bottom: 1em;
}
.timetable_modal .upper .meta .m1 {
    color: #c9c7c7;
    font-size: 36px;
    line-height: 1em;
    font-weight: 900;
}
.timetable_modal .upper .meta .m2 {
    font-size: 24px;
    line-height: 1em;
    font-weight: 900;
}
.timetable_modal .upper .meta .m3 {
    font-size: 14px;
    line-height: 1em;
    font-weight: 900;
}
.timetable_modal .upper .meta .m4 {
    font-size: 18px;
    line-height: 1em;
    font-weight: 900;
}

.timetable_modal .upper .const {
    text-align: left;
}
.timetable_modal .upper .const .ttl {
    font-size: 18px;
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 1em;
}
.timetable_modal .upper .const .desc {
    font-size: 14px;
    line-height: 1.6em;
    font-weight: 900;
}







.timetable_modal .bottom {
    border-top: solid 1px #000;
    padding-top: 1em;
    margin-top: 1em;
}
.timetable_modal .bottom ul {
    align-items: flex-start;
    justify-content: flex-start;
    gap: 1em;
}
.timetable_modal .bottom ul li {
    
}
.timetable_modal .bottom ul li .st {
    display: block;
    color: #bca041;
    font-size: 12px;
    line-height: 1.2em;
    margin-bottom: 1em;
}
.timetable_modal .bottom ul li figure {
    width: 90px;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    margin: 0 auto;
    overflow: hidden;
    margin-bottom: 0.5em;
}
.timetable_modal .bottom ul li figure.center {
    display: inline-flex;
    align-items: center;
}
.timetable_modal .bottom ul li .name {
    font-size: 12px;
    line-height: 1.4em;
    font-weight: 900;
    margin-bottom: 0.5em;
}
.timetable_modal .bottom ul li .name em {
    font-size: 16px;
    line-height: 1.2em;
}
.timetable_modal .bottom ul li .en {
    color: #777676;
    font-size: 12px;
    line-height: 1em;
    font-weight: bold;
}



.ttm1 {border-top:solid 8px #B60000;}
.ttm2 {border-top:solid 8px #B71069;}
.ttm3 {border-top:solid 8px #5D2085;}
.ttm4 {border-top:solid 8px #00738D;}
.ttm5 {border-top:solid 8px #118CDE;}
.ttm6 {border-top:solid 8px #004FD8;}
.ttm7 {border-top:solid 8px #3315A0;}
.ttm8 {border-top:solid 8px #15176D;}

.remodal[data-remodal-id="tt10"] .ttm2,
.remodal[data-remodal-id="tt11"] .ttm2 {
    border-top:solid 8px #B60000;
}

.remodal[data-remodal-id="tt12"] .ttm3,
.remodal[data-remodal-id="tt13"] .ttm3 {
    border-top:solid 8px #B71069;
}

.remodal[data-remodal-id="tt14"] .ttm4,
.remodal[data-remodal-id="tt15"] .ttm4 {
    border-top:solid 8px #5D2085;
}

.remodal[data-remodal-id="tt16"] .ttm5,
.remodal[data-remodal-id="tt17"] .ttm5 {
    border-top:solid 8px #00738D;
}
.remodal[data-remodal-id="tt18"] .ttm6,
.remodal[data-remodal-id="tt19"] .ttm6 {
    border-top:solid 8px #118CDE;
}
.remodal[data-remodal-id="tt110"] .ttm7,
.remodal[data-remodal-id="tt111"] .ttm7 {
    border-top:solid 8px #004FD8;
}
.remodal[data-remodal-id="tt112"] .ttm8,
.remodal[data-remodal-id="tt113"] .ttm8 {
    border-top:solid 8px #3315A0;
}

.sponsor_bloc {
    background: #fff;
    padding: 2em;
}
.sponsor_bloc h3 {
    color: #000;
    display: block;
    font-size: 30px;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 1em;
}
.sponsor_bloc ul {
    align-items: center;
    justify-content: center;
    gap: 1em;
	grid-row-gap: 1.5em
}
.sponsor_bloc ul li {
    width: calc(100% / 5 - 1em);
    padding: 0 2em;
}
.sponsor_bloc ul li + li {
    
}
.sponsor_bloc ul li img {
    
}


.c_sponsor_sec {
    background: #fff;
    padding-top: 8.9em;
    padding-bottom: 8.9em;
}
.c_sponsor_sec .inner {
    width: 1230px;
    max-width: 1230px;
}
.c_sponsor_sec.last{
	padding-bottom: 3em
}
.c_sponsor_sec .ttl_bloc p {
    color:#000;
	text-align: center;
	font-size: 30px;
}
.c_sponsor_wrap:nth-child(n+2) {
    margin-top: 11.1em;
}
.c_sponsor_sec .ttl_bloc h2 {
    color: #111;
}

.c_sponsor_bloc {
    margin-top: 2.7em;
}
.c_sponsor_bloc h3 {
    color: #000;
    display: block;
    font-size: 30px;
    line-height: 1em;
    font-weight: 900;
    margin-bottom: 1em;
}

.c_sponsor_bloc ul {
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.c_sponsor_bloc ul + ul {
    margin-top: 2.2em;
}
.c_sponsor_bloc ul.partners_community + ul.partners_community {
    margin-top: 1.1em;
}
.c_sponsor_bloc ul li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc((100% - 40px) / 3);
    height: auto;
    aspect-ratio: 385 / 238;
    flex-shrink: 0;
}
.c_sponsor_bloc ul li:has(p) {
    background: #737373;
}
.c_sponsor_bloc ul li p {
    font-family: "Oswald", sans-serif;
    font-size: clamp(14px,4vw,40px);
    font-weight: 600;
    color: #fff;
    opacity: 0.5;
}
.c_sponsor_bloc ul li img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.c_sponsor_wrap:nth-child(2) ul li:nth-child(n+7),
.c_sponsor_wrap:nth-child(3) ul li:nth-child(n+7) {
    width: calc((100% - 60px) / 4);
}

/*
.c_sponsor_bloc ul li {
    width: calc(100% / 3 - 1em);
    padding: 0 2em;
}
.c_sponsor_bloc ul li + li {
    
}
.c_sponsor_bloc ul li img {
    
}
*/
.c_sponsor_bloc ul.partners_platina li {
    width: calc(100% / 3);
    max-width: 386px;
}
.c_sponsor_bloc ul.partners_gold li {
    width: calc(100% / 3);
    max-width: 386px;
}
.c_sponsor_bloc ul.partners_silver li {
    width: calc(100% / 4);
    max-width: 285px;
}
.c_sponsor_bloc ul.partners_bronze li {
    width: calc(100% / 4);
    max-width: 285px;
}
.c_sponsor_bloc ul.partners_media li {
    width: calc(100% / 5);
    max-width: 230px;
}
.c_sponsor_bloc ul.partners_community li {
    width: calc(100% / 5);
    max-width: 230px;
}

.privacy {
    padding: 2em 0;
}
.privacy_bloc {

}
.privacy_bloc p {
    background: #fff;
    color: #000;
    padding: 1em;
    height: 200px;
    overflow-y: scroll;
    font-size: 10px;
    line-height: 1.6em;
    text-align: left;
}
.privacy_bloc p a {
    color: #000;
}

.privacy_bloc p span {
    font-size: 13px;
    line-height: 1.6em;
}




/*0911*/
.price_sec {
    background-color: #000016;
    padding: 3em 0;
    overflow: hidden;
}

.price_tab{
display: flex;
justify-content: flex-end;
column-gap: 11px;
margin-bottom: 9px;
}
.price_tab li img{
	box-sizing: border-box;
}

.price_tab li{
	width: 33.7%;
	border: 2px solid #173dc2;
	padding-bottom: 35px;
}
.price_tab li:first-child{
	width: 30.6%;
	border: 2px solid #000016;
}

.price_tab li h3{
	background: #173dc2;
	display: flex;
	grid-row-gap: 5px;
	align-content: center;
	justify-content: center;
	height: 179px;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	margin-bottom: 40px;
}
.price_tab li h3 span{
	width: 100%;
	display: block;
}

.price_tab li h3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 29px 19px 0 19px;
  border-color: #173dc2 transparent transparent;
  translate: -50% 100%;
}
.price_tab li h3 img{
	width: 77.3%;
	max-width: 295px;
}
.setup02{
	max-width: 156px;
	width: 40%;
	margin-bottom: 10px;
}
.price_tab li p.price_date{
	text-align: center;
	font-size: 18px;
	margin-bottom: 10px;
}
.setup03{
	width: 57%;
	max-width: 227px;
	padding: 0 0px 0px;
}
.price_tab li p.tax{
	text-align: center;
	margin-bottom: 20px
}

.buy_btn{
	display: block;
	margin: 0 auto 20px;
	max-width: 276px;
	width: 90%;
	background: #173dc2;
	text-align: center;
	padding: 25px 20px;
	line-height: 1;
	border-radius: 33px;
	transition: .5s
}
.buy_btn img{
	max-width: 135px;
}

.buy_btn:hover{
	opacity: 0.7;
}
.price_tab li p{
	text-align: left;
	padding: 0 25px;
	font-size: 16px;
}

.price_tab li:nth-child(3){
	border: 2px solid #dd0411;
}

.price_tab li:nth-child(3) h3{
	background: #dd0411;
}
.price_tab li:nth-child(3) h3::after {

  border-color: #dd0411 transparent transparent;
}
.price_tab li:nth-child(3) h3 img{
	width: 90%;
	max-width: 341px;
}
.exe02{
	max-width: 156px;
	width: 40%;
	margin-bottom: 10px;
}
.price_tab li p.price_date{
	text-align: center;
	font-size: 18px;
	margin-bottom: 10px;
}
.exe03{
	max-width: 254px;
	width: 70%;
	padding: 0 0px 0px;
}
.price_tab li:nth-child(3) .buy_btn{
	background: #dd0411;

}

.star_table{
	display: flex;
justify-content: flex-end;
column-gap: 11px;
	margin-bottom: 9px;
}

.star_table li{
	width: 33.7%;
	border: 2px solid #696969;
height: 100px;
	text-align: center;
	display: flex;
	align-items: center;
	padding: 24px 10px;
	justify-content: center;
}
.star_table li:first-child{
	width: 30.6%
}
.session{
	max-width: 198px;
}
.executive{
	max-width: 227px;
}
.vip{
	max-width: 119px;
}
.networking{
	max-width: 185px;
}
.side{
	max-width: 153px;
}
.star{
	max-width: 60px;
}
.star_table li:nth-child(2){
		border: 2px solid #173dc2;
}
.star_table li:nth-child(3){
		border: 2px solid #dd0411;
}
.star_table li span{
	display: inline-block;
	max-width: 93px;
	width: 93px;
	height: 1px;
	background: #173dc2;
}

.price_caution{
	display: flex;
	column-gap: 37px;
	justify-content: center;
	
}
.price_caution li{
	background: url(../images/star01.webp) 0 2px no-repeat;
	background-size: 24px auto;
	min-height: 29px;
	vertical-align: middle;
	padding-left: 32px;
}
.price_caution li:nth-child(2){
    background: url(../images/star02.webp) 0 2px no-repeat;
	background-size: 24px auto;

}

.price_btn{
	display: flex;
	margin: 50px auto;
	justify-content: space-between;
}



.price_btn li{
	width: 48%;
}


.price_btn li a{
	display: block;
	margin: 0 auto 20px;
	max-width: 100%;
	background: #173dc2;
	text-align: center;
	padding: 25px 70px;
	line-height: 1;
	text-decoration: none;
	border-radius: 65px;
	transition: .5s
}
.price_btn li a img{
	display: block;
	margin: 0 auto 10px;
}

.price_btn li a:hover{
	opacity: 0.7;
}

.price_btn li:nth-child(2) a{
	background: #dd0411;

}
.pc{
	display: block;
}
.sp{
	display: none;
}

   @media screen and (max-width: 768px) {
		 .pc{
	display: none;
}
.sp{
	display: block;
}
		 
		 .price_tab li h3{
	background: #173dc2;
	display: flex;
	justify-content: center;
	height: 100px;
	align-items: center;
			 padding-top: 5px;
	position: relative;
	margin-bottom: 20px;
}
		 .price_tab li h3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 15px 9px 0 9px;
  border-color: #173dc2 transparent transparent;
  translate: -50% 100%;
}
		 .price_tab li h3 span{
			 font-size: 12px;
		 }
		 .price_tab li p.price_date {
    text-align: center;
    font-size: 16px;
    margin-bottom: 10px;
}
		 .price_tab li{
			 margin-bottom: 15px;
		 }
		 
		 .buy_btn{
	display: block;
	margin: 0 auto 20px;
	max-width: 276px;
	width: 90%;
	background: #173dc2;
	text-align: center;
	padding: 15px 10px;
	line-height: 1;
	border-radius: 33px;
	transition: .5s
}
.buy_btn img{
	max-width: 100%;
}
		 .price_tab li p{
	text-align: left;
	padding: 0 15px;
	font-size: 14px;
}
		 .star_table li:first-child{
			 padding: 0 10px;
		 }
.session{
	max-width: 100%;
}
.executive{
	max-width: 100%;
}
.vip{
	max-width: 100%;
}
.networking{
	max-width: 100%;
}
.side{
	max-width: 100%;
}
.star{
	max-width: 100%;
}
		 .star_table li img.star{
			 max-width: 40%
		 }
		 .star_table li span{
	display: inline-block;
	max-width: 45px;
	width: 45px;
	height: 1px;
	background: #173dc2;
}
		 .price_caution{
	display: flex;
			 flex-wrap:wrap;
			 grid-row-gap: 5px;
	column-gap: 37px;
	justify-content: center;
}
		 .price_caution li{
			 font-size: 14px;
		 }
		 .price_btn{
	display: flex;
			 flex-wrap: wrap;
	margin: 50px auto;
	justify-content: space-between;
}



.price_btn li{
	width: 100%;
	padding: 0 1em;
}


.price_btn li a{
	display: block;
	margin: 0 auto 20px;
	max-width: 100%;
	background: #173dc2;
	text-align: center;
	padding: 15px 20px;
	line-height: 1;
	text-decoration: none;
	border-radius: 65px;
	transition: .5s
}
.price_btn li a img{
	display: block;
	width: 51.9%;
	margin: 0 auto 10px;
}
.price_btn li:nth-child(2) a img{
	display: block;
	width: 59.3%;
	margin: 0 auto 10px;
}
		 .plan_ex{
			 text-align: left;
	padding:2em 1em 0;
		}
		 .plan_ex p{
			 margin-bottom: 1.5em
		 }
		 .plan_ex p strong{
		 }
}


.row_box.empty_box:hover{
	background: #fff;
	cursor: default
}

   @media screen and (max-width: 767px) {
		 .row_box.empty_box{
			 display: none
		 }
}
.sideevent_sec {
    padding-bottom: 1.7em;
    overflow: hidden;
}
.sideevent_sec p{
    font-size: clamp(12px, 1.1vw, 16px);
    line-height: 1.8;
    font-weight: 700;
    text-align: left;
}
.sideevent_bnr {
    width: 100%;
    max-width: 800px;
    margin-top: 4.5em;
}
.sideevent_txt {
    width: 100%;
    max-width: 800px;
    margin-top: 2.5em;
    margin-left: auto;
    margin-right: auto;
}

.price_banner {
    text-decoration: none;
    font-weight: 900;
}
.price_banner .link_text {
    text-decoration: underline;
}
.price_banner .link_text:hover {
    text-decoration: none;
}

.networking_bloc {
    padding-top: 5.6em;
    text-align: left;
    position: relative;
}

/* .networking_bloc::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 3220px;
    background: url(../images/bg_speaker.webp) no-repeat center top / 100% 3220px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
} */

.networking_bloc h3 {
    color: #dd0411;
    font-size: clamp(30px, 4vw, 40px);
    font-weight: 900;
    margin-bottom: 0.5em;
}
.networking_item_wrap {
    justify-content: center;
    gap: 46px;
    margin-top: 2.7em;
}
.networking_item {

}

.networking_item h4 {
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 12px;
}
.networking_item h4:before {
    content:"";
    display: inline-block;
    background: #B60000;
    width: 4px;
    height: 20px;
    margin-top: 0.2em;
}
.networking_item ul {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.22;
    width: 388px;
}
.networking_item ul li {
    position: relative;
    padding-left: 1em;
    margin-top: 0.6em;
}
.networking_item ul li:before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
}
.networking_item ul li > span {
    display: inline-block;
    padding-left: 3.2em;
    margin-top: 0.2em;
}
.networking_item ul + p {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.22;
    margin-top: 0.6em;
}

.main_sponsor_sec {
    background: url(../images/main_sponsor_bg.webp) no-repeat center / 100% 100%;
    padding: 100px 0;
    position: relative;
}
.main_sponsor_ttl {
    font-family: "Oswald",'Noto Sans JP', sans-serif;
    font-size: clamp(24px, 3.47vw, 50px);
    font-weight: 600;
    line-height: 1.2;
}
.main_sponsor_top {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 92px;
    margin-top: 40px;
}
.main_sponsor_top img {
    width: 310px;
}
.main_sponsor_top_wrap {
    font-size: clamp(14px, 1.25vw, 18px);
    font-weight: 700;
    line-height: 2.25;
    text-align: left;
    letter-spacing: 0.25px;
    width: 600px;
    max-width: 100%;
    position: relative;
}
.main_sponsor_top_wrap::before {
    content: "";
    display: inline-block;
    background: #fff;
    width: 1px;
    height: 296px;
    position: absolute;
    top: 50%;
    left: -53px;
    transform: translateY(-50%);
    opacity: 0.3;
}
.main_sponsor_top_btn_bloc {
    text-align: center;
    margin-top: 30px;
}
.main_sponsor_top_btn_bloc a {
    display: inline-block;
    width: 328px;
    height: 75px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: url(../images/arrow_right_02_white.svg) no-repeat center right 32px / 9px auto,
                #349BAA;
    font-size: 20px;
    line-height: 1em;
    font-weight: 700;
    text-decoration: none;
    border-radius: 2em;
    border: solid 1px #fff;
    transition: .2s;
}
.main_sponsor_top_btn_bloc a:hover {
    color: #349BAA;
    background: url(../images/arrow_right_02_green.svg) no-repeat center right 32px / 9px auto,
                #fff;
    border: solid 1px #349BAA;
}
.main_sponsor_top_txt {
    font-family: "Oswald", sans-serif;
    font-size: 100px;
    font-size: clamp(60px, 6.94vw, 100px);
    font-weight: 600;
    line-height: 1;
    writing-mode: vertical-lr;
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translateY(-50%);
    opacity: 0.2;
    white-space: nowrap;
}

.fvillage_sec {
    padding-top: 5.6em;
}
.fvillage_bloc.flex {
    justify-content: center;
    gap: 56px;
    margin-top: 85px;
}
img.fvillage_img {
    width: 350px;
    height: auto;
    margin-top: 8px;
}
.fvillage_wrap {
    width: 580px;
}
.fvillage_wrap p {
    font-size: clamp(14px, 1.25vw, 18px);
    line-height: 2.25;
    text-align: left;
}
.fvillage_btn_bloc {
    margin-top: 44px;
}
.fvillage_btn_bloc a {
    display: inline-block;
    width: 328px;
    height: 75px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: url(../images/arrow_right_white.svg) no-repeat center right 32px / 9px auto,
                #009DE0;
    font-size: 20px;
    line-height: 1em;
    font-weight: 700;
    text-decoration: none;
    border-radius: 2em;
    border: solid 1px #fff;
    transition: .2s;
}

.principle {
    background: url(../images/principle_bg_pc.webp) no-repeat bottom center / 1440px auto;
    isolation: isolate;
    height: 100vh;
    position: relative;
}
.principle_mask {
    background: url(../images/principle_bg_pc_active.webp) no-repeat bottom center / 1440px auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    padding-top: 27.5vh;
    opacity: 0;
}
.principle_txt {
    font-size: clamp(32px, 8.61vw, 124px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.25px;
    filter: drop-shadow(0px 0px 10px #08092E);
    white-space: nowrap;
    z-index: 1;
}
.principle_txt + .principle_txt {
    margin-top: 40px;
}

.intro {
    text-align: center;
    background: url(../images/intro_bg.webp) no-repeat center / 100% 100%;
    background-blend-mode: overlay;
    padding: 100px 0;
}
.intro_catch_txt {
    font-size: clamp(20px, 2.08vw, 40px);
    font-weight: 900;
    line-height: 2;
    letter-spacing: 0.25px;
}
.intro_catch_em {
    font-size: clamp(40px, 5.56vw, 100px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.25px;
}
.intro_catch_arrow {
    font-size: clamp(16px, 2.08vw, 30px);
    font-weight: 900;
    line-height: 2;
    letter-spacing: 0.25px;
    display: inline-block;
    margin-top: 20px;
    position: relative;
}
.intro_catch_arrow::after {
    content: "";
    display: inline-block;
    background: #fff;
    width: 95%;
    height: 2px;
    position: absolute;
    left: 4px;
    bottom: 1px;
}
img.mv_bnr {
    border: 1px solid #fff;
    width: 1000px;
    max-width: 100%;
    height: auto;
    margin-top: 48px;
}
