@charset "UTF-8";

/* --------------
booth-lead
-------------- */
#booth-lead {
    margin-top: clamp(80px / 2, 80 * var(--vw-ratio-1920) * 1vw, 80px);
}
#booth-lead .md_ttl {
    margin: auto;
    text-align: center;
}

@media (max-width: 750px) {
    #booth-lead {
        margin-top: clamp(50px / 2, 50 * var(--vw-ratio-750) * 1vw, 50px);
    }
}

@media (max-width: 375px) {
    #booth-lead {
        margin-top: calc(clamp(50px / 2, 50 * var(--vw-ratio-375) * 1vw, 50px) / 2);
    }
}

/* 各カテゴリー共通 */
.sec_booth {
    margin-top: clamp(90px / 2, 90 * var(--vw-ratio-1920) * 1vw, 90px);
    padding: clamp(90px / 2, 90 * var(--vw-ratio-1920) * 1vw, 90px) 0 clamp(100px / 2, 100 * var(--vw-ratio-1920) * 1vw, 100px);
}
.sec_booth + .sec_booth {
    margin-top: 0;
}
.sec_booth .md_ttl {
    position: relative;
    width: fit-content;
    margin: auto;
    font-size: clamp(50px / 2, 50 * var(--vw-ratio-1920) * 1vw, 50px);
    text-align: center;
}
.sec_booth .md_ttl::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: clamp(20px / 2, 20 * var(--vw-ratio-1920) * 1vw, 20px);
    z-index: 0;
}
.sec_booth .md_ttl .border {
    position: relative;
    z-index: 1;
}
.sec_booth .md_content {
    margin-top: clamp(40px / 2, 40 * var(--vw-ratio-1920) * 1vw, 40px);
}
.sec_booth .md_content .booth_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    gap: clamp(30px / 2, 30 * var(--vw-ratio-1920) * 1vw, 30px);
}
.sec_booth .md_content .booth_list .booth_list_item {
    width: clamp(277px / 2, 277 * var(--vw-ratio-1920) * 1vw, 277px);
    height: auto;
    border: solid 1px #808080;
    border-radius: clamp(20px / 2, 20 * var(--vw-ratio-1920) * 1vw, 20px);
    background-color: #fff;
    overflow: hidden;
    transition: all 0.5s;
}
.sec_booth .md_content .booth_list .booth_list_item:has(a):hover {
    scale: 1.05;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.35);
}
.sec_booth .md_content .booth_list .booth_list_item .booth-img {
    width: 100%;
    height: clamp(180px / 2, 180 * var(--vw-ratio-1920) * 1vw, 180px);
    overflow: hidden;
}
.sec_booth .md_content .booth_list .booth_list_item .booth-img img {
    width: 100%;
}
.sec_booth .md_content .booth_list .booth_list_item .booth-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: clamp(16px / 2, 16 * var(--vw-ratio-1920) * 1vw, 16px);
    /* height: clamp(136px / 2, 136 * var(--vw-ratio-1920) * 1vw, 136px); */
    height: calc(100% - clamp(180px / 2, 180 * var(--vw-ratio-1920) * 1vw, 180px));
    padding: clamp(16px / 2, 16 * var(--vw-ratio-1920) * 1vw, 16px);
}
.sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name {
    min-height: calc(clamp(22px / 2, 22 * var(--vw-ratio-1920) * 1vw, 22px) * 2);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name h3,
.sec_booth .md_content .booth_list .booth_list_item a .booth-text .booth-name h3 {
    font-size: clamp(18px / 2, 18 * var(--vw-ratio-1920) * 1vw, 18px);
    font-weight: 700;
    line-height: 1.36;
    text-align: center;
    color: #000;
}
.sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-btn p {
    width: clamp(135px / 2, 135 * var(--vw-ratio-1920) * 1vw, 135px);
    padding: 0.5em 1em;
    font-size: clamp(12px / 2, 12 * var(--vw-ratio-1920) * 1vw, 12px);
    font-weight: 600;
    text-align: center;
    border-radius: 50px;
}
.sec_booth .md_content .comingsoon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: clamp(260px / 2, 260 * var(--vw-ratio-1920) * 1vw, 260px);
    border: solid 2px #808080;
    border-radius: clamp(20px / 2, 20 * var(--vw-ratio-1920) * 1vw, 20px);
    background: #fff;
}
.sec_booth .md_content .comingsoon p { 
    font-size: clamp(66px / 2, 66 * var(--vw-ratio-1920) * 1vw, 66px);
    font-weight: 900;
    text-align: center;
}

@media (max-width: 750px) {
    .sec_booth {
        margin-top: clamp(45px / 2, 45 * var(--vw-ratio-750) * 1vw, 45px);
        padding: clamp(30px / 2, 30 * var(--vw-ratio-750) * 1vw, 30px) 0 clamp(50px / 2, 50 * var(--vw-ratio-750) * 1vw, 50px);
    }
    .sec_booth .md_inner {
        max-width: clamp(530px / 2, 530 * var(--vw-ratio-750) * 1vw, 530px);
    }
    .sec_booth .md_ttl {
        font-size: clamp(45px / 2, 45 * var(--vw-ratio-750) * 1vw, 45px);
    }
    .sec_booth .md_ttl::after {
        height: clamp(18px / 2, 18 * var(--vw-ratio-750) * 1vw, 18px);
    }
    .sec_booth .md_content {
        margin-top: clamp(40px / 2, 40 * var(--vw-ratio-750) * 1vw, 40px);
    }
    .sec_booth .md_content .booth_list {
        gap: clamp(20px / 2, 20 * var(--vw-ratio-750) * 1vw, 20px);
    }
    .sec_booth .md_content .booth_list .booth_list_item {
        width: clamp(255px / 2, 255 * var(--vw-ratio-750) * 1vw, 255px);
        border-radius: clamp(15px / 2, 15 * var(--vw-ratio-750) * 1vw, 15px);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-img {
        height: clamp(157px / 2, 157 * var(--vw-ratio-750) * 1vw, 157px);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text {
        gap: clamp(16px / 2, 16 * var(--vw-ratio-750) * 1vw, 16px);
        /* height: clamp(123px / 2, 123 * var(--vw-ratio-750) * 1vw, 123px); */
        height: calc(100% - clamp(157px / 2, 157 * var(--vw-ratio-750) * 1vw, 157px));
        padding: clamp(16px / 2, 16 * var(--vw-ratio-750) * 1vw, 16px);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name {
        min-height: calc(clamp(20px / 2, 20 * var(--vw-ratio-750) * 1vw, 20px) * 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name h3,
    .sec_booth .md_content .booth_list .booth_list_item a .booth-text .booth-name h3 {
        font-size: clamp(16px / 2, 16 * var(--vw-ratio-750) * 1vw, 16px);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-btn p {
        width: clamp(133px / 2, 133 * var(--vw-ratio-750) * 1vw, 133px);
        font-size: clamp(13px / 2, 13 * var(--vw-ratio-750) * 1vw, 13px);
    }
    .sec_booth .md_content .comingsoon {
        min-height: clamp(180px / 2, 180 * var(--vw-ratio-750) * 1vw, 180px);
        border: solid 1px #808080;
        border-radius: clamp(15px / 2, 15 * var(--vw-ratio-750) * 1vw, 15px);
    }
    .sec_booth .md_content .comingsoon p { 
        font-size: clamp(50px / 2, 50 * var(--vw-ratio-750) * 1vw, 50px);
    }
}

@media (max-width: 375px) {
    .sec_booth {
        margin-top: calc(clamp(45px / 2, 45 * var(--vw-ratio-375) * 1vw, 45px) / 2);
        padding: calc(clamp(30px / 2, 30 * var(--vw-ratio-375) * 1vw, 30px) / 2) 0 calc(clamp(50px / 2, 50 * var(--vw-ratio-375) * 1vw, 50px) / 2);
    }
    .sec_booth .md_inner {
        max-width: calc(clamp(530px / 2, 530 * var(--vw-ratio-375) * 1vw, 530px) / 2);
    }
    .sec_booth .md_ttl {
        font-size: calc(clamp(45px / 2, 45 * var(--vw-ratio-375) * 1vw, 45px) / 2);
    }
    .sec_booth .md_ttl::after {
        height: calc(clamp(18px / 2, 18 * var(--vw-ratio-375) * 1vw, 18px) / 2);
    }
    .sec_booth .md_content {
        margin-top: calc(clamp(40px / 2, 40 * var(--vw-ratio-375) * 1vw, 40px) / 2);
    }
    .sec_booth .md_content .booth_list {
        gap: calc(clamp(20px / 2, 20 * var(--vw-ratio-375) * 1vw, 20px) / 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item {
        width: calc(clamp(255px / 2, 255 * var(--vw-ratio-375) * 1vw, 255px) / 2);
        border-radius: calc(clamp(15px / 2, 15 * var(--vw-ratio-375) * 1vw, 15px) / 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-img {
        height: calc(clamp(157px / 2, 157 * var(--vw-ratio-375) * 1vw, 157px) / 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text {
        gap: calc(clamp(16px / 2, 16 * var(--vw-ratio-375) * 1vw, 16px) / 2);
        /* height: calc(clamp(123px / 2, 123 * var(--vw-ratio-375) * 1vw, 123px) / 2); */
        height: calc(100% - calc(clamp(157px / 2, 157 * var(--vw-ratio-375) * 1vw, 157px) / 2));
        padding: calc(clamp(16px / 2, 16 * var(--vw-ratio-375) * 1vw, 16px) / 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name {
        min-height: calc(calc(clamp(20px / 2, 20 * var(--vw-ratio-375) * 1vw, 20px) / 2) * 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-name h3,
    .sec_booth .md_content .booth_list .booth_list_item a .booth-text .booth-name h3 {
        font-size: calc(clamp(16px / 2, 16 * var(--vw-ratio-375) * 1vw, 16px) / 2);
    }
    .sec_booth .md_content .booth_list .booth_list_item .booth-text .booth-btn p {
        width: calc(clamp(133px / 2, 133 * var(--vw-ratio-375) * 1vw, 133px) / 2);
        font-size: calc(clamp(13px / 2, 13 * var(--vw-ratio-375) * 1vw, 13px) / 2);
    }
    .sec_booth .md_content .comingsoon {
        min-height: calc(clamp(180px / 2, 180 * var(--vw-ratio-375) * 1vw, 180px) / 2);
        border-radius: calc(clamp(15px / 2, 15 * var(--vw-ratio-375) * 1vw, 15px) / 2);
    }
    .sec_booth .md_content .comingsoon p { 
        font-size: calc(clamp(50px / 2, 50 * var(--vw-ratio-375) * 1vw, 50px) / 2);
    }
}

/* --------------
booth-sightseeing
-------------- */
#booth-sightseeing {
    background-color: var(--bg_sightseeing);
}
#booth-sightseeing .md_ttl::after {
    background-color: var(--cl_sightseeing);
}
#booth-sightseeing .md_content .booth_list .booth_list_item .booth-text .booth-btn p,
#booth-sightseeing .md_content .booth_list .booth_list_item a .booth-text .booth-btn p {
    color: var(--cl_sightseeing);
    border: solid 1px var(--cl_sightseeing);
}

/* --------------
booth-technology
-------------- */
#booth-technology {
    background-color: var(--bg_technology);
}
#booth-technology .md_ttl::after {
    background-color: var(--cl_technology);
}
#booth-technology .md_content .booth_list .booth_list_item .booth-text .booth-btn p,
#booth-technology .md_content .booth_list .booth_list_item a .booth-text .booth-btn p {
    color: var(--cl_technology);
    border: solid 1px var(--cl_technology);
}

/* --------------
booth-culture
-------------- */
#booth-culture {
    background-color: var(--bg_culture);
}
#booth-culture .md_ttl::after {
    background-color: var(--cl_culture);
}
#booth-culture .md_content .booth_list .booth_list_item .booth-text .booth-btn p,
#booth-culture .md_content .booth_list .booth_list_item a .booth-text .booth-btn p {
    color: var(--cl_culture);
    border: solid 1px var(--cl_culture);
}

/* --------------
booth-connecthub
-------------- */
#booth-connecthub {
    background-color: var(--bg_connecthub);
}
#booth-connecthub .md_ttl::after {
    background-color: var(--cl_connecthub);
}
#booth-connecthub .md_content .booth_list .booth_list_item .booth-text .booth-btn p,
#booth-connecthub .md_content .booth_list .booth_list_item a .booth-text .booth-btn p {
    color: var(--cl_connecthub);
    border: solid 1px var(--cl_connecthub);
}

/* --------------
booth-fb
-------------- */
#booth-fb {
    background-color: var(--bg_fb);
}
#booth-fb .md_ttl::after {
    background-color: var(--cl_fb);
}
#booth-fb .md_content .booth_list .booth_list_item .booth-text .booth-btn p,
#booth-fb .md_content .booth_list .booth_list_item a .booth-text .booth-btn p {
    color: var(--cl_fb);
    border: solid 1px var(--cl_fb);
}

/* --------------
sec_booth-single
-------------- */
.sec_booth-single {
    margin-top: clamp(100px / 2, 100 * var(--vw-ratio-1920) * 1vw, 100px);
}
.sec_booth-single .md_inner {
    max-width: clamp(1200px / 2, 1200 * var(--vw-ratio-1920) * 1vw, 1200px);
}
.sec_booth-single .md_inner .booth-img {
    width: 100%;
    max-width: clamp(675px / 2, 675 * var(--vw-ratio-1920) * 1vw, 675px);
    margin: auto;
}
.sec_booth-single .md_inner .booth-img img {
    width: 100%;
}
.sec_booth-single .md_inner .booth-text {
    margin-top: clamp(80px / 2, 80 * var(--vw-ratio-1920) * 1vw, 80px);
}
.sec_booth-single .md_inner .booth-text .booth-cat {
    width: fit-content;
}
.sec_booth-single .md_inner .booth-text .booth-cat p {
    width: fit-content;
    padding: 0.5em 1em;
    font-size: clamp(24px / 2, 24 * var(--vw-ratio-1920) * 1vw, 24px);
    font-weight: 700;
}
.sec_booth-single .md_inner .booth-text .booth-cat.cat_sightseeing {
    background-color: var(--bg_sightseeing);
}
.sec_booth-single .md_inner .booth-text .booth-cat.cat_technology {
    background-color: var(--bg_technology);
}
.sec_booth-single .md_inner .booth-text .booth-cat.cat_culture {
    background-color: var(--bg_culture);
}
.sec_booth-single .md_inner .booth-text .booth-cat.cat_fb {
    background-color: var(--bg_fb);
}
.sec_booth-single .md_inner .booth-text .booth-name {
    margin-top: clamp(40px / 2, 40 * var(--vw-ratio-1920) * 1vw, 40px);
}
.sec_booth-single .md_inner .booth-text .booth-name h3 {
    font-size: clamp(45px / 2, 45 * var(--vw-ratio-1920) * 1vw, 45px);
    font-weight: 700;
    line-height: 1.5;
}
.sec_booth-single .md_inner .booth-text .booth-caption {
    margin-top: clamp(40px / 2, 40 * var(--vw-ratio-1920) * 1vw, 40px);
}
.sec_booth-single .md_inner .booth-text .booth-caption p {
    font-size: clamp(20px / 2, 20 * var(--vw-ratio-1920) * 1vw, 20px);
    line-height: 1.85;
}
.sec_booth-single .md_inner .booth-text .booth-caption a {
    color: #000;
    text-decoration: underline;
}
.sec_booth-single .md_inner .booth-text .booth-caption a[target="_blank"]::after {
    content: "";
    display: inline-block;
    background: url(../img/common/icon_blank.svg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 0.9em;
    height: 0.9em;
}
.sec_booth-single .md_inner .md_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1em;
    width: 100%;
    max-width: clamp(425px / 2, 425 * var(--vw-ratio-1920) * 1vw, 425px);
    min-width: clamp(321px / 2, 321 * var(--vw-ratio-1920) * 1vw, 321px);
    padding: 1em;
    margin: auto;
    margin-top: clamp(100px / 2, 100 * var(--vw-ratio-1920) * 1vw, 100px);
    font-size: clamp(22px / 2, 22 * var(--vw-ratio-1920) * 1vw, 22px);
    font-weight: 600;
    border-radius: 50px;
    text-align: center;
    color: #fff;
}
.sec_booth-single .md_inner .md_btn.cat_sightseeing {
    background-color: var(--cl_sightseeing);
}
.sec_booth-single .md_inner .md_btn.cat_technology {
    background-color: var(--cl_technology);
}
.sec_booth-single .md_inner .md_btn.cat_culture {
    background-color: var(--cl_culture);
}
.sec_booth-single .md_inner .md_btn.cat_fb {
    background-color: var(--cl_fb);
}
.sec_booth-single .md_inner .md_btn::before {
    content: "";
    display: block;
    width: clamp(26px / 2, 26 * var(--vw-ratio-1920) * 1vw, 26px);
    height: clamp(21px / 2, 21 * var(--vw-ratio-1920) * 1vw, 21px);
    background: url(../img/common/arrow_booth_btn.svg);
    background-repeat: no-repeat;
    background-position: center;
}

@media (max-width: 750px) {
    .sec_booth-single {
        margin-top: clamp(80px / 2, 80 * var(--vw-ratio-750) * 1vw, 80px);
    }
    .sec_booth-single .md_inner {
        max-width: clamp(630px / 2, 630 * var(--vw-ratio-750) * 1vw, 630px);
    }
    .sec_booth-single .md_inner .booth-img {
        max-width: clamp(630px / 2, 630 * var(--vw-ratio-750) * 1vw, 630px);
    }
    .sec_booth-single .md_inner .booth-text {
        margin-top: clamp(40px / 2, 40 * var(--vw-ratio-750) * 1vw, 40px);
    }
    .sec_booth-single .md_inner .booth-text .booth-cat p {
        font-size: clamp(20px / 2, 20 * var(--vw-ratio-750) * 1vw, 20px);
    }
    .sec_booth-single .md_inner .booth-text .booth-name {
        margin-top: clamp(25px / 2, 25 * var(--vw-ratio-750) * 1vw, 25px);
    }
    .sec_booth-single .md_inner .booth-text .booth-name h3 {
        font-size: clamp(37px / 2, 37 * var(--vw-ratio-750) * 1vw, 37px);
    }
    .sec_booth-single .md_inner .booth-text .booth-caption {
        margin-top: clamp(25px / 2, 25 * var(--vw-ratio-750) * 1vw, 25px);
    }
    .sec_booth-single .md_inner .booth-text .booth-caption p {
        font-size: clamp(22px / 2, 22 * var(--vw-ratio-750) * 1vw, 22px);
        line-height: 1.85;
    }
    .sec_booth-single .md_inner .md_btn {
        min-width: clamp(300px / 2, 300 * var(--vw-ratio-750) * 1vw, 300px);
        margin-top: clamp(50px / 2, 50 * var(--vw-ratio-750) * 1vw, 50px);
        padding: 1.5em 1em;
        font-size: clamp(16px / 2, 16 * var(--vw-ratio-750) * 1vw, 16px);
    }
    .sec_booth-single .md_inner .md_btn::before {
        width: clamp(18px / 2, 18 * var(--vw-ratio-750) * 1vw, 18px);
        height: clamp(14px / 2, 14 * var(--vw-ratio-750) * 1vw, 14px);
    }
}

@media (max-width: 375px) {
    .sec_booth-single {
        margin-top: calc(clamp(80px / 2, 80 * var(--vw-ratio-375) * 1vw, 80px) / 2);
    }
    .sec_booth-single .md_inner {
        max-width: calc(clamp(630px / 2, 630 * var(--vw-ratio-375) * 1vw, 630px) / 2);
    }
    .sec_booth-single .md_inner .booth-img {
        max-width: calc(clamp(630px / 2, 630 * var(--vw-ratio-375) * 1vw, 630px) / 2);
    }
    .sec_booth-single .md_inner .booth-text {
        margin-top: calc(clamp(40px / 2, 40 * var(--vw-ratio-375) * 1vw, 40px) / 2);
    }
    .sec_booth-single .md_inner .booth-text .booth-cat p {
        font-size: calc(clamp(20px / 2, 20 * var(--vw-ratio-375) * 1vw, 20px) / 2);
    }
    .sec_booth-single .md_inner .booth-text .booth-name {
        margin-top: calc(clamp(25px / 2, 25 * var(--vw-ratio-375) * 1vw, 25px) / 2);
    }
    .sec_booth-single .md_inner .booth-text .booth-name h3 {
        font-size: calc(clamp(37px / 2, 37 * var(--vw-ratio-375) * 1vw, 37px) / 2);
    }
    .sec_booth-single .md_inner .booth-text .booth-caption {
        margin-top: calc(clamp(25px / 2, 25 * var(--vw-ratio-375) * 1vw, 25px) / 2);
    }
    .sec_booth-single .md_inner .booth-text .booth-caption p {
        font-size: calc(clamp(22px / 2, 22 * var(--vw-ratio-375) * 1vw, 22px) / 2);
        line-height: 1.85;
    }
    .sec_booth-single .md_inner .md_btn {
        min-width: calc(clamp(300px / 2, 300 * var(--vw-ratio-375) * 1vw, 300px) / 2);
        margin-top: calc(clamp(50px / 2, 50 * var(--vw-ratio-375) * 1vw, 50px) / 2);
        font-size: calc(clamp(16px / 2, 16 * var(--vw-ratio-375) * 1vw, 16px) / 2);
    }
    .sec_booth-single .md_inner .md_btn::before {
        width: calc(clamp(18px / 2, 18 * var(--vw-ratio-375) * 1vw, 18px) / 2);
        height: calc(clamp(14px / 2, 14 * var(--vw-ratio-375) * 1vw, 14px) / 2);
    }
}