@charset "UTF-8";

@media only screen and (max-width: 1200px) {
    /* ---------------------------------------------------
    header
    --------------------------------------------------- */
    .fixed_header .header_right .hidden_part {
        row-gap: 3px;
    }
    .fixed_header .header_right .hidden_part .date .time {
        display: block;
        font-size: 15px;
        line-height: 1;
        margin-top: -2px;
    }

    /* ---------------------------------------------------
    footer
    --------------------------------------------------- */
    .fixed_btn_wrap {
        width: 100%;
    }
    footer .footer_part1 {
        width: 30%;
        top: 30%;
    }
    footer .footer_part2 {
        width: 30%;
        top: 70%;
    }


    /* ---------------------------------------------------
    .front_page
    --------------------------------------------------- */
    /*　トップ-メインビジュアル
    ----------------------------------------------- */
    .front_page .sec1>div {
        padding: 60px 15px 62px;
    }
    .front_page .sec1 .onboard {
        max-width: 800px;
    }
    .front_page .sec1 .mv1 {
        margin-bottom: 10px;
    }
}



@media only screen and (max-width: 880px) {
    /* ---------------------------------------------------
    common
    --------------------------------------------------- */
    main {
        padding-top: 60px;
    }
    .pc_only {
        display: none;
    }
    .mb_only {
        display: block;
    }

    /* ---------------------------------------------------
    header
    --------------------------------------------------- */
    .fixed_header {
        /* display: none; */
        /* height: 16vw; */
        height: 60px;
        background-color: #000;
        display: flex;
    }
    .fixed_header .header_right {
        display: none;
    }

    .fixed_header .header_menu_head {
        height: 60px;
    }
    .header_menu_body {
        display: none;
    }

    /* -------------------------------
    menu trigger
    -------------------------------- */
    .menu-trigger {
        display: inline-block;
        width: 30px;
        height: 20px;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 18px;
        right: 20px;
        z-index: 600;
    }
    .menu-trigger > div {
        color: white;
        text-align: center;
        margin-top: 0px;
    }
    .menu-trigger > div img {
        width: 100%;
        opacity: 1;
        webkit-transition: all 0.5s;
        transition: all 0.5s;
    }
    .menu-trigger.active > div img {
        opacity: 0;
        webkit-transition: all 0.5s;
        transition: all 0.5s;
    }

    .menu-trigger span {
        display: inline-block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #d2691e;
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
    }
    .menu-trigger.active span {
        background-color: #d2691e;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(10px) rotate(-45deg);
        transform: translateY(10px) rotate(-45deg);
    }
    .menu-trigger span:nth-of-type(2) {
        top: 45%;
    }
    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }
    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-8px) rotate(45deg);
    }

    /* -------------------------------
    Menu
    ------------------------------- */

    #overlay {
        content: "";
        display: block;
        width: 100vw;
        height: 120vh;
        background-color: var(--main-color);
        position: fixed;
        padding: 0;
        top: -120vh;
        left: 0;
        z-index: 20;
        opacity: 0.5;
        -webkit-transition: 0.5s;
        transition: 0.5s;
    }

    #overlay.open {
        top: 0;
        opacity: 1;
    }
    #overlay > div:first-child {
        /* background-image: url(../img/overlay_bg.png); */
        background-color: #001c07;
        background-repeat: no-repeat;
        background-position-y: 0;
        background-size: contain;
        height: 60px;
        display: flex;
        align-items: center;
        padding-left: 2vw;
    }
    #overlay > div:last-child {
        background-color: white;
    }
    #overlay > div:last-child li {
        padding: 20px 0;
        font-size: 20px;
        color: var(--main-color);
        border-bottom: 1px solid var(--main-color);
        padding-left: 5vw;
        display: flex;
        align-items: center;
        /* background-image: url(../img/arrow_right.svg); */
        background-repeat: no-repeat;
        background-position: 5% center;
        background-size: 7px;
        font-weight: bold;
    }
    #overlay > div:last-child span li {
        color: #999;
    }
    #overlay > div:last-child li img {
        width: 6px;
        margin-right: 3vw;
    }
    #overlay > div:last-child li.unactive {
        color: #cbcbcb;
    }
    #overlay > div:last-child li span {
        display: inline-block;
        font-size: 10px;
        margin-left: 10px;
        color: #004fa2;
    }
    #overlay a {
        color: var(--main-color);
    }
    #overlay > div:first-child img {
        width: 80%;
        margin-top: 2vw;
    }
    #overlay > div:first-child .conv_btn {
        display: flex;
    }

    #overlay > div > div.conv_btn > a {
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        margin: 0 5px;
    }
    #overlay > div > div.conv_btn > a {
        width: 12.8vw;
        height: 12vw;
    }
    #overlay > div > div.conv_btn > a > div {
        width: 100%;
        height: 100%;
        text-align: center;
        font-size: 2vw;
        line-height: 1.5;
        letter-spacing: 1;
        font-family: "Oswald", sans-serif;
        padding-top: 2.2vw;
        color: #1b224c;
    }
    #overlay > div > div.conv_btn > a > div > img {
        display: block;
        margin: 0 auto;
        width: 38%;
    }

    #overlay_menu {
        padding: 5vw 0;
    }
    #overlay_menu a {
        color: white;
        width: 100%;
        display: block;
        padding: 2vw;
        border-bottom: 1px solid #464c6e;
        font-size: 3.2vw;
        position: relative;
    }
    #overlay_menu .menu-item-has-children > a::after {
        content: "";
        width: 8px;
        height: 8px;
        border: 0px;
        border-bottom: solid 1px #fff;
        border-right: solid 1px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 25px;
        margin-top: -4px;
    }
    #overlay_menu .sub-menu {
        display: none;
    }
    #overlay_menu .sub-menu a {
        padding-left: 5.5vw;
    }
    #overlay .site_title img {
        width: 44vw;
    }
    #overlay .conv_btn a {
        background-color: white;
    }

    nav {
        display: none;
    }
    /*　ロゴ
    ----------------------------------------- */
    .wrap .header_logo a img {
        width: 71%;
        max-width: 400px;
        height: auto;
    }
    .wrap {
        padding-top: 0;
    }

     /* ---------------------------------------------------
    footer
    --------------------------------------------------- */
    footer {
        padding-bottom: 50px;
    }
    footer .footer_part1 {
        display: none;
    }
    footer .footer_part2 {
        display: none;
    }
    #footer_organization {
         font-size: 20px;
    }
    #footer_organization span:first-child {
        /* font-size: 5vw; */
    }
    #footer_tel {
        margin-top: 2vw;
        line-height: 1.2;
    }
    #footer_tel span.tel_text {
        font-size: 18px;
    }
    #footer_tel a {
        font-size: 24px;
    }
    #footer_adress {
        /* font-size: 3vw;
        margin-top: 1vw; */
    }
    #footer_copyright {
        margin-top: 30px;
        font-size: 12px;
    }
    /*　footer 固定ボタン
    ----------------------------------------- */
    .fixed_btn {
        width: 85%;
    }

    /* -------------------------------
    .front_page
    ------------------------------- */
    .front_page main section {
        padding: var(--section-pdb-sp) 20px;
    }

    /*　トップ-メインビジュアル
    ----------------------------------------------- */
    .front_page .sec1 .onboard {
        padding: 8px;
    }
    .front_page .sec1 .onboard_inner {
        padding: 30px 15px;
        /*background: transparent;
        backdrop-filter: none;*/
    }
    .front_page .sec1 .mv1 {
        margin-bottom: 0;
    }
    .front_page .sec1 {
        .purpose {
            .box {
                h3 {
                    font-size: 24px;
                line-height: 1;
                margin-bottom: 12px;
                display: flex;
                justify-content: center;
                align-items: center;
                gap: 10px;
                    &::
                before {
                        border-bottom: 1px solid #000;
                content: "";
                display: block;
                flex: 0 0 20%;
                height: 2px;
                    }
                    &::
                after {
                        border-bottom: 1px solid #000;
                content: "";
                display: block;
                flex: 0 0 20%;
                height: 2px;
                    }
                }
            ;
                line-height: 1.6;
                padding: 20px;
            }
        }
    }
    .front_page .sec1 {
        .mv_conv {
        flex-direction: column;
        align-items: center;
        a.btn {
                margin-top: 0;
            }
        }
    }

    /* トップ-アクセス
    ----------------------------------------------- */
    .front_page .sec6 {
        padding-inline: 0;
        .transportation {
            h4 {
                font-size: 18px;
            }
        }
    }


    /* -------------------------------
    下層ページ-共通
    ------------------------------- */
    .page section {
        padding: 0 20px;
        margin-bottom: 10px;
    }
    .page section h2 {
        margin-top: 10px;
        font-size: 26px;
    }

    /* -------------------------------
    front-page
    ------------------------------- */
    .front_page section h2 {
        font-size: 28px;
        line-height: 1.5;
/*        padding: 0 5vw;*/
        margin-bottom: 40px;
        /* margin-top: 20px; */
    }
    .front_page section h2 span {
        font-size: 18px;
    }


    /*　トップ-メインビジュアル
    ----------------------------------------------- */
    .front_page .sec1 .mv_text1 {
        display: block;
        background-size: auto;
        height: auto;
        line-height: 1.6;
        padding: 6px 0;
        font-size: 16px;
        margin-bottom: 0;
        letter-spacing: 1px;
    }
    .front_page .sec1 a.btn {
        font-size: 20px;
    }
    .front_page .sec1 .schedule_mvtext1_wrap {
        margin-top: 20px;
    }
    .front_page .sec1 .schedule {
        margin-top: 0;
        > div.f_wrap {
            max-width: 100%;
            display: flex;
            flex-direction: column;
            row-gap: 0;
            > div:first-child {
                padding-right: 0;
                line-height: 1;
                margin-bottom: 10px;
                color: #000;
                span:nth-child(1) {
                    font-size: 18px;
                }
                span:nth-child(2), span:nth-child(4), span:nth-child(5) {
                    font-size: 30px;
                    font-weight: 900;
                }
                span:nth-child(3), span:nth-child(6) {
                    font-size: 17px;
                    font-weight: bold;
                }
                span.time {
                    font-size: 24px;
                    display: block;
                    margin-top: 10px;
                }
            }
            > div:last-child {
                align-items: center;
                justify-content: center;
                border-left: none;
                display: flex;
                gap: 10px;
                padding: 10px;
                width: 100%;
                > div:first-child {
                    font-size: 18px;
                    padding: 0;
                    margin: 0;
                }
                > div:last-child {
                    font-size: 20px;
                }
            }
        }
    }


    /*　トップ-MV下写真一覧
    ----------------------------------------------- */
    .front_page .img_g > img {
        flex: 0 0 33.3333%;
    }

    /*　トップ-バナー・YOUTUBE等
    ----------------------------------------------- */
    .front_page {
        .banner {
            /* padding: 20px 20px 0 20px; */
            padding: 0 20px 20px;
        }
        .top_bnr {
            padding-top: 30px;
            margin-bottom: -20px;
/*            padding-bottom: 20px;*/
            img {
                width: 90%;
                max-width: 520px;
            }
            a:hover {
                opacity: 1;
            }
        }
        .youtube_box {
            margin: 30px auto 0;
        }
    }

    /*　トップ-新着情報
    ----------------------------------------------- */
    .front_page .sec2 {
        margin: 0;
        padding-bottom: 30px;
    }
    .front_page .sec2 h2 {
        font-size: 19px;
    }
    .front_page .sec2 .info_list_wrap li {
        padding: 10px 0;
    }


    /* トップ-出展対象製品・サービス
    ----------------------------------------------- */
    .front_page .sec4 .f_wrap1 > div {
        padding: 0;
        flex: 0 0 48%;
    }
    .front_page .sec4 .f_wrap1 > div img {
        position: relative;
        max-width: 100%;
        bottom: 0;
        right: 0;
        display: block;
        margin: 0 auto;
    }
    .front_page .sec4 .f_wrap1 > div h3 {
        font-size: 16px;
        margin-bottom: 15px;
        padding: 0 15px;
    }
    .front_page .sec4 a.btn {
        font-size: 20px;
        margin-top: 20px;
    }

    .front_page .sec4 h2 {
        font-size: 28px;
    /*    margin-bottom: 20px;*/
    }
    .front_page .sec4 {
        .box {
            font-size: 16px;
        }
    }


    /*　トップ-本展示会の特長
    ----------------------------------------------- */
    .front_page .sec3 h2 {
        font-size: 28px;
    }
    .front_page .sec3 .box {
        padding-bottom: 25px;
        margin-bottom: 0px;
    }
    .front_page .sec3 .box1 {
        padding-top: 10px;
        img {
                max-width: 100%;
            }
        }
    .front_page .sec3 .box2 {
        img {
                max-width: 75%;
            }
        }
    .front_page .sec3 .box3 {
            font-size: 24px;
        }
    .front_page .sec3 .box4 {
        img {
                max-width: 100%;
            }
        }
    .front_page .sec3 .box5 {
        font-size: 24px;
    }
    .front_page .sec3 .text br {
        display: none;
    }


    /* トップ-展示会概要
    ----------------------------------------------- */
    .front_page .sec9 .inner table {
        min-width: 100%;
        th {
            width: 100px;
        }
        td.f_wrap > div {
            flex: 0 0 100%;
        }
    }

    /*　トップ-来場対象者
    ----------------------------------------------- */
    .front_page .sec5 {
        margin-bottom: 0;
    }
    .front_page .sec5 > div {
        .f_wrap2 {
            > div {
                font-size: 22px;
                background-position: 15px;
                padding: 10px 0px 10px 60px;
                margin-bottom: 5px;
            }
        }
    }

    /* トップ-半導体産業展 開催のご案内
    ----------------------------------------------- */
    .front_page .sec8 {
        h2 {
            font-size: 20px;
            margin-bottom: 20px;
            padding: 0;
        }
        .content {
            font-size: 18px;
        }
        padding: 30px 10px;
    }
    .front_page .sec8 {
        .btn {
            display: flex;
            justify-content: center;
            margin-top: 20px;
            a {
                font-size: 18px;
            }
        }
    }

    /* トップ-アクセス
    ----------------------------------------------- */
    .front_page .sec6 {
        padding-inline: 0;
    }
    .front_page .sec6 > div {
        padding: 20px;
    }
    .front_page .sec6 {
        .howto {
            margin: 20px 0;
            text-align: center;
            img {
                width: 100%;
            }
        }
    }
    .front_page .sec6 h3 {
        font-size: 20px;
    }


    /*　トップ-屋外展示企画
    ----------------------------------------------- */
    .front_page .sec12 .box {
        padding: 15px;
    }
    .front_page .sec12 .box + .box {
        margin-top: 20px;
    }
    .front_page .sec12 .block-head {
        margin-bottom: 10px;
        font-size: 22px;
        line-height: 1.2;
        .is-sp {
            display: block;
        }
    }
    .front_page .sec12 .block-body {
        margin-top: 10px;
        img {
            display: block;
            margin: 0 auto;
        }
    }
    .front_page .sec12 .body-head {
        margin-bottom: 20px;
        .head {
            font-size: 17px;
            padding-inline: 0;
            &:after {
                height: 12px;
            }
            span {
                font-size: 24px;
            }
        }
    }
    .front_page .sec12 .txt {
        padding-left: 15px;
        font-size: 16px;
        &:after {
            width: 10px;
            height: 10px;
        }
    }


    /* ----------------------------------------------------------

    下層ページ共通設定

    ---------------------------------------------------------- */
    .page section > div {
        padding: 20px;
    }

    /* ---------------------------------------------------
    プレスリリース
    --------------------------------------------------- */
    .press .sec1 {
        .content_block_upper {
            flex-direction: column;
            gap: 10px;
            margin-bottom: 10px;
        }
    }
}