@CHARSET "UTF-8";

@media screen and (max-width: 768px){
    .header {
        padding: 10px;
    }
    .header .main-header table th {
        width: 12vw;
    }
    .header .main-header table td h1 {
        font-size: 4vw;
    }
    .main-visual .main-visual-contents {
        top: auto;
        left: auto;
        position: relative;
        margin-top: -30vw;
    }
    .main-visual .main-visual-image {
        width: 200%;
        margin-left: -100%;
    }

    .main-visual .main-visual-contents .main-visual-title h1 span.name {
        font-size: 5vw;
    }

    .main-visual .main-visual-contents .main-visual-title h1 span.title {
        font-size: 9vw;
    }

    .main-visual .main-visual-contents .main-visual-title h1 span.title-en {
        font-size: 3vw;
        line-height: 1.5;
    }

    .main-visual .main-visual-contents .main-visual-sub-title {
        margin-top: 0;
        padding: 2vw 10px;
        background: #fef6eb;
    }

    .main-visual .main-visual-contents .main-visual-sub-title h2 span.title {
        font-size: 6vw;
        line-height: 1.5;
    }

    .main-visual .main-visual-contents .main-visual-sub-title h2 span.title-en {
        font-size: 3vw;
        line-height: 1.5;
    }

    .main-visual .main-visual-contents .main-visual-date h3 {
        font-size: 5vw;
    }

    .main-visual .main-visual-contents .main-visual-date h3 span.date {
        font-size: 9vw;
    }

    .main-visual .main-visual-contents .main-visual-date h3 span.week {
        font-size: 5vw;
    }

    .main-visual .main-visual-contents .main-visual-master table th, .main-visual .main-visual-contents .main-visual-master table td {
        display: block;
    }

    .main-visual .main-visual-contents .main-visual-master table {
        width: 100%;
    }

    .main-visual .main-visual-contents .main-visual-master {
        margin-top: 0;
        padding: 1vw 10px;
        background: #fef6eb;
    }

    .main-visual .main-visual-contents .main-visual-master table th span {
        font-size: 4vw;
    }

    .main-visual .main-visual-contents .main-visual-master table th {
        width: 8em;
        text-align: center;
        margin: 0 auto 1vw;
    }

    .main-visual .main-visual-contents .main-visual-master table td {
        font-size: 4vw;
        padding: 0;
        margin-bottom: 1vw;
    }

    .main-visual .main-visual-contents .main-visual-title {
        padding: 10px 10px 0;
    }

    .main-visual .main-visual-contents .main-visual-date {
        margin-top: 0;
        padding: 2vw 10px 0;
        background: #fef6eb;
    }
    .contents {
        padding: 0 10px;
    }

    .main-contents {
        width: 100%;
    }

    .main-contents .news-wrap {
        max-height: 80vw;
        overflow-y: scroll;
    }

    h2.news-title {
        margin: 15px 0 20px;
    }

    .news-wrap ul li span, .news-wrap ul li a span {
        display: block;
    }

    .news-wrap ul li {
        padding-left: 3px;
    }

    p.security {
        padding: 15px 10px;
    }

    .menu-trigger.active span {
        background: #0767ad;
    }
    .main-visual.en .main-visual-contents .main-visual-master {
        padding-top: 5vw;
        margin-top: 0;
    }

    .main-visual.en .main-visual-contents .main-visual-date {
        padding-top: 2vw;
        margin-top: 0;
    }

    .main-visual.en .main-visual-contents .main-visual-title h1 span.title-en {
        font-size: 5.5vw;
    }

    .main-visual.en .main-visual-contents .main-visual-sub-title h2 span.title-en {
        font-size: 4.5vw;
    }

    .main-visual.en .main-visual-contents .main-visual-date h3 {
        font-size: 5vw;
    }
    .header .main-header.en table td h1 {
        font-size: 4vw;
    }
    .main-visual .main-visual-contents .main-visual-sub-title h2 span.title {
        text-shadow: 0 0 16px #0075c2, 0 0 16px #0075c2, 0 0 16px #0075c2, 0 0 16px #0075c2, 0 0 16px #0075c2, 0 0 16px #0075c2;
    }
    .subpage-contents .about-table-wrap table th, .subpage-contents .about-table-wrap table td {
        display: block;
        width: 100%;
    }
    .subpage-contents .about-table-wrap table th {
        text-align: center;
    }
    .subpage-contents .about-table-wrap.en table th {
        width: 100%;
    }
    body.sub .header .main-header > table th {
        width: 10vw;
        display: inline-block;
    }
    body.sub .header .main-header > table td {
        display: inline-block;
    }
    body.sub .header .main-header > table td.info {
        display: block;
        width: 100%;
        padding: 0;
    }

    body.sub .header .main-header > table td h1 {
        font-size: 3.5vw;
    }
    body.sub .header .main-header > table td.info > table.date-master td.date {
        display: block;
        width: 100%;
        font-size: 4vw;
        margin-top: 5px;
    }

    body.sub .header .main-header > table td.info > table.date-master td.date span.title {
        position: relative;
        font-size: 3vw;
        width: auto;
        padding: 5px;
        top: 0;
    }

    body.sub .header .main-header > table td.info > table.date-master td.date span.num {
        font-size: 5vw;
    }

    body.sub .header .main-header > table td.info > table.date-master td.master {
        display: block;
        width: 100%;
        padding: 0;
        margin-top: 5px;
    }

    body.sub .header .main-header > table td.info > table.date-master td.master span.title {
        position: relative;
        font-size: 3vw;
        width: auto;
        padding: 5px;
        left: 0;
        top: 0;
    }

    body.sub .header .main-header > table td.info > table.date-master td.master > table {
        width: auto;
        display: inline;
        padding-left: 0px;
    }

    body.sub .header .main-header > table td.info > table.date-master {
        border-bottom: none;
    }

    body.sub .header .main-header > table td.info > table.date-master td.master > table td.name {
        font-size: 5vw;
    }
    body.sub .header .main-header > table td.info > table.date-master td.master > table td.belong {
        font-size: 2vw;
    }
    body.sub .header .main-header > table td.info > table.place td.place-title {
        font-size: 3vw;
        width: auto;
        padding: 3px 5px;
        left: 0;
        top: 0;
    }

    body.sub .header .main-header > table td.info > table.place {
        margin-top: 5px;
    }

    body.sub .header .main-header > table td.info > table.place td.place-name {
        font-size: 2.8vw;
        padding: 0 1.5vw;
    }
    .master-table-wrap table th {
        display: block;
        margin: auto;
    }
    .master-table-wrap table td {
        display: block;
        padding: 0;
        width: 100%;
        margin-top: 10px;
    }
    .master-table-wrap table td .master-info-wrap p.belong {
        font-size: 3.7vw;
    }
    .sponsor-wrap {
        width: 100%;
        position: relative;
        margin-top: 15px;
        margin-bottom: 30px;
    }
    body.sub .header .main-header.en > .info > table.date-master td.date {
        display: block;
        width: 100%;
        font-size: 2vw;
        padding-left: 10.5vw;
    }
    body.sub .header .main-header.en > .info > table.date-master td.master {
        display: block;
        width: 100%;
        margin-top: 2.2vw;
    }
    body.sub .header .main-header.en > .info > table.date-master {
        width: 100%;
        border-bottom: none;
    }
    body.sub .header .main-header.en > .info > table.date-master td.date span.title {
        position: absolute;
        padding: 3px 5px;
        font-size: 1.5vw;
        width: 9.5vw;
    }
    body.sub .header .main-header.en > .info > table.date-master td.master span.title {
        position: absolute;
        padding: 3px 5px;
        width: 9.5vw;
        font-size: 1.5vw;
    }
    body.sub .header .main-header.en > .info > table.date-master td.master > table td.name, body.sub .header .main-header.en > .info > table.date-master td.master > table td.belong {
        vertical-align: top;
        font-size: 1.3vw;
    }
    body.sub .header .main-header.en > .info > table.date-master td.master > table td.name {
        padding-left: 10.5vw;
        font-size: 2.5vw;
        width: 14em;
    }
    body.sub .header .main-header.en > .info > table.date-master td.master > table {
    }
    body.sub .header .main-header.en > .info > table.place td.place-title {
        font-size: 1.5vw;
    }
    body.sub .header .main-header.en > .info > table.place td.place-name {
        padding-left: 1.3vw;
        font-size: 1.3vw;
    }
    .header .main-header.en > table th {
        width: 12vw;
    }
    .to-company-schedule-link a {
        display: block;
        margin-bottom: 10px;
        text-align: center;
    }
    .faq-wrap .question-wrap p {
        padding-right: 36px;
    }
    .faq-wrap .question-wrap .answer-wrap p {
        padding-right: 0;
    }
    table.viewing-date {
        display: block;
        width: 100%;
        table-layout: fixed;
        margin-top: 5px;
        margin-bottom: 0;
        background: #fef6eb;
        padding-bottom: 10px;
    }
    table.viewing-date th {
        display: block;
        width: 100%;
        font-size: 4vw;
    }
    table.viewing-date td {
        display: block;
        width: 100%;
        font-size: 5vw;
    }
    table.viewing-date td span.v-date {
        font-size: 8vw;
    }
    .sponsor-wrap .sponsor-banner [class^=col-] {
        margin-bottom: 15px;
    }
    .company-table.presenter-table table {
        min-width: 1000px;
    }
    .poster-image-wrap {
        margin: 40px auto 0;
        width: 80%;
    }
    .sponsor-wrap.sub {
        margin-top: -10px;
    }
    .program-date-tabs.program-contents-tabs a {
        display: block;
        margin-bottom: 10px;
    }
    .koen-box a.koen-title span.code {
        font-size: 3.5vw;
    }
    .koen-box a.koen-title {
        font-size: 3.5vw;
        padding-right: 30px;
    }
    .program-tabs-wrap .full-open-close {
        margin-bottom: 15px;
    }
    .howto-participation-wrap {
        overflow-x: scroll;
    }
    .howto-participation-wrap img {
        width: 800px;
    }
    .invitation-table table {
        min-width: 560px!important;
    }
    .invitation-project-sub-box {
        margin-top: 20px;
    }
    .apply-main-image-wrap {
        overflow-x: scroll;
    }
    .apply-main-image-wrap img {
        min-width: 800px;
    }
    h2.special-title {
        font-size: 7vw;
    }
    .special-main-contents span.web-icon {
        position: relative;
        top: auto;
        right: auto;
        display: block;
        text-align: center;
        margin-top: 20px;
    }
}

@media screen and (max-width: 700px){
}

@media screen and (max-width: 650px){
}

@media screen and (max-width: 480px){
}

@media screen and (max-width: 400px){
}
