@charset "UTF-8";

@media only screen and (max-width: 1200px) {

  .front_page header {
    height: 100vh;
    /* padding-top: 7vw; */
  }

  nav {
    top: 100px;
  }

  .front_page #sec2>div>div {
    padding: 0 5vw;
  }

  .page header>div:first-child>div>div span {
    margin-bottom: 0.4vw;
  }

  .page header>div>div:first-child {
    padding: 0.5vw 200px 1.5vw 1.5vw;
  }

  .outline header {
    height: 36.6vw;
  }

  .outline header>div:first-child>div.top {
    padding: 1vw 200px 1vw 2vw;
  }

  .outline nav {
    top: 6.5vw;
    right: 8vw;
  }

  .header_title {
    margin-top: 11vw;
  }


  .conv.show_top>div>div {
    padding: 7vw;
    margin: 0 auto;
  }

  .page header .top_conv a {
    height: 30px;
  }

  .page nav {
    right: 200px;
  }

  /* -------------------------------
    sub page
    ------------------------------- */
  .page header {
    height: 37vw;
  }

  .page nav {
    top: 7vw;
    /* right: 100px; */
  }


  #footer_copyright {
    margin-top: 0px;
  }

  .fixed_btn_wrap {
    width: 100%;
  }

  footer .footer_part1 {
    width: 30%;
    top: 30%;
  }

  footer .footer_part2 {
    width: 30%;
    top: 70%;
  }

}

@media only screen and (max-width: 1000px) {


  .front_page h2.bg_black {
    font-size: 20px;
    padding: 5px 0 7px;
  }

  .front_page header {
    margin-bottom: 20px;
  }

  .front_page .outer_regarding {
    margin-bottom: 20px;
  }

  .front_page header span {
    bottom: 25%;
  }

  footer {
    /* height: 603px; */
    background-image: url(../img/footer_bg_1000.png);
  }

  .show #sec3 .f_wrap {
    width: 100%;
  }


}

@media only screen and (max-width: 880px) {

  /* -------------------------------
    common
    ------------------------------- */
  .no-wrap {
    white-space: break-spaces;
  }

  nav {
    display: none;
  }

  /* .front_page .wrap .header_logo a img,.wrap .header_logo a img {
        max-width: 80%;
    } */

  main {
    padding-top: 60px;
  }

  .wrap .header_logo a img {
    width: 71%;
    max-width: 400px;
    height: auto;
  }

  .front_page .top_bnr {
    margin-top: 40px;
    width: 90%;
    max-width: 600px;

    /*            max-width: 520px;*/
    /*        img {
            width: 90%;
            max-width: 520px;
        }*/
    a {
      margin-bottom: 10px;
    }

    a:hover {
      opacity: 1;
    }
  }

  .front_page .wrap .header_logo {
    top: 2vw;
    left: 4%;
  }

  .front_page header .header_support .f_wrap {
    font-size: 13px;
  }

  .front_page header .header_support {
    padding-left: 0;
    padding-top: 15px;
  }

  .front_page header div.main_logo {
    max-width: 90%;
    margin-top: 21vw;
  }

  .front_page header>div::before {
    transform: skewY(349deg);
    width: 120%;
    height: 80vh;
    min-height: 700px;
    background-color: rgba(45, 80, 29, 0.9);
    border-top: 8px solid rgba(255, 255, 0, 0.9);
    border-bottom: 8px solid rgba(255, 255, 0, 0.9);
  }

  .wrap {
    padding-top: 0;
  }


  .front_page header div.main_logo img {
    max-width: 100%;
  }

  .front_page .sec2 {
    margin-top: 30px;
  }

  .front_page .sec7 tr {
    display: flex;
    flex-wrap: wrap;
  }

  .front_page .sec7 th {
    min-width: auto;
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 4px;
  }

  .front_page .sec7 td {
    width: 100%;
    border-bottom: none;
    margin-bottom: 0;
  }

  .page h2.box {
    min-width: 80%;
    height: 15vw;
    padding: 1vw 0;
  }

  .page h2.box>div {
    font-size: 5vw;
  }

  .page header .place_data,
  .page header .contact_data {
    display: none;
  }

  .page header>div:first-child>div>a {
    width: 80%;
    padding-top: 1vw;
  }

  .page header>div:first-child>div>a>img {
    width: 100%;
  }

  .page header .top_conv {
    display: none;
  }

  .page h2.box {
    margin-top: 6vw;
  }

  .page h2.box span {
    line-height: 1;
  }

  .pc_only {
    display: none;
  }

  .mb_only {
    display: block;
  }

  .page section {
    padding: 0 20px;
  }

  .page section h2 {
    margin-top: 10px;
  }




  .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;
  }



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

  #overlay {
    content: "";
    display: block;
    width: 100vw;
    height: 120vh;
    background-color: #790936;
    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 {
    font-size: 4vw;
    /* color: var(--main-color); */
    border-bottom: 1px solid var(--main-color);
    padding-left: 40px;
    display: flex;
    align-items: center;
    background-image: url(../img/arrow_right.svg);
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 7px;
    font-weight: bold;
  }

  #overlay>div:last-child span li {
    color: #999;
  }

  #overlay>div:last-child li img {
    width: 3vw;
    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: var(--main-color); */
  }

  #overlay a {
    display: block;
    padding: 4vw 0;
    width: 100%;
    color: var(--main-color);
  }

  #overlay a.is_disable {
    color: #ccc;
    pointer-events: none;
  }


  #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;
  }

  header.open {
    height: 100vh;
    background-color: #1b224c;
    transition-duration: 0.2s;
  }

  header.open .mb_menu {
    display: block;
  }

  /* .menu-trigger {
        display: inline-block;
        width: 7vw;
        height: 5vw;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 5.5vw;
        right: 5vw;
        z-index: 600;
    } */
  .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: #fff;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
  }

  .menu-trigger.active span {
    background-color: #fff;
  }

  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }

  .menu-trigger.active span:nth-of-type(1) {
    /* -webkit-transform: translateY(2.5vw) rotate(-45deg);
        transform: translateY(2.5vw) rotate(-45deg); */
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
    background-color: #fff;
  }

  .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(-2vw) rotate(45deg);
        transform: translateY(-2vw) rotate(45deg); */
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg);
    background-color: #fff;
  }

  .mb_sns {
    display: flex;
    align-items: center;
    justify-content: space-around;
    margin-top: 5vw;
  }

  .mb_sns a {
    display: block;
    width: 10vw;
    margin: 0 8px;
    line-height: 1;
  }

  .mb_sns a:last-child {
    width: 15vw;
  }

  .mb_sns a img {
    width: 100%;
  }

  /* footer {
    height: 603px;
    background-image: url(../img/footer_bg_750.png);
  } */

  main section {
    padding: 20px 20px;
    margin-bottom: 10px;
  }


  /* -------------------------------
    front-page
    ------------------------------- */
  .front_page header {
    height: 100vh;
    min-height: 820px;
    margin-top: 0;
  }

  .front_page .main_date {
    margin-top: 0px;
  }

  /* .front_page .wrap {
    background-image: url(../img/main_bg_mb.png);
  } */

  .front_page .main_logo>img {
    width: 55%;
  }

  .front_page .main_date>img {
    width: 85%;
  }

  .front_page section h2 img {
    width: 90%;
    min-width: auto;
  }

  .front_page #sec4 .conv_btn a {
    width: 70%;
  }

  .front_page section h2 {
    font-size: 22px;
    line-height: 1.3;
    padding: 5px 5vw;
    margin-bottom: 10px;
    /* margin-top: 20px; */
  }

  .front_page .sec4 {
    margin-top: 0;
  }

  .front_page .sec4 .f_wrap1>div {
    padding: 20px;
  }

  .front_page .sec4 .bg_gray {
    padding: 20px;
  }

  .front_page .sec4 .bg_gray .f_wrap2 {
    flex-direction: column;
  }


  .front_page .sec3 .text br {
    display: none;
  }

  .front_page {}

  .front_page {}

  .front_page .sec4 .f_wrap1>div:nth-child(n+2) {
    flex: 0 0 100%;
  }

  .front_page .sec3 .text_catch span:first-child {
    display: inline-block;
    margin-bottom: 5px;
  }

  .front_page .sec3 .text_catch span.uline {
    margin-top: 10px;
    /* background: none; */
    display: inline;
  }

  .front_page .sec1 .mv_text1 {
    display: block;
    background-size: auto;
    height: auto;
    line-height: 1.3;
    padding: 6px 0;
  }

  .front_page .img_g>img {
    flex: 0 0 33.3333%;
  }

  .front_page .sec3 {
    margin-top: 0;
  }

  .front_page .sec3 .event .event_inner {
    padding: 30px 0 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(1) {
    /* padding-bottom: 180px; */
    padding-bottom: 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(1) img {
    max-width: 65vw;
    bottom: 0;
    right: 0;
    display: block;
    margin: 0 auto;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(2) {
    /* padding-bottom: 180px; */
    padding-bottom: 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(2) img {
    max-width: 65vw;
    bottom: 0;
    right: 0;
    display: block;
    margin: 0 auto;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(3) {
    /* padding-bottom: 180px; */
    padding-bottom: 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(3) img {
    max-width: 65vw;
    bottom: 0;
    right: 0;
    display: block;
    margin: 0 auto;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(4) {
    /* padding-bottom: 180px; */
    padding-bottom: 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(4) img {
    max-width: 65vw;
    bottom: 0;
    right: 0;
    display: block;
    margin: 0 auto;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(5) {
    /* padding-bottom: 180px; */
    padding-bottom: 0;
  }

  .front_page .sec4 .f_wrap1>div:nth-child(5) img {
    max-width: 65vw;
    bottom: 0;
    right: 0;
    display: block;
    margin: 0 auto;
  }

  .front_page .sec4 a.btn {
    font-size: 20px;
    margin-top: 20px;
  }

  .front_page .sec4 .bg_gray .f_wrap2>div {
    padding: 10px 0;
    font-size: 18px;
    flex-direction: column;
  }

  .front_page .sec1 a.btn {
    font-size: 20px;
  }

  .front_page .sec6>div {
    padding: 20px;
  }

  .front_page .sec4 .f_wrap1>div h3 {
    font-size: 20px;
  }

  .front_page .sec4 .f_wrap1 img {
    position: relative;
  }

  .front_page .sec4 .bg_gray img {
    max-width: 100%;
  }

  /* -------------------------------
    outline
    ------------------------------- */
  .outline #sec1>div>div {
    padding: 70px 5vw 10vw;
  }

  .outline table,
  .outline table th,
  .outline table td {
    display: block;
    width: 100%;
  }

  .outline #sec1 table th {
    width: 100%;
  }

  /* -------------------------------
    sub page
    ------------------------------- */
  .page header {
    background-image: url(../img/sub_page_mv_mb.png);
    height: 58vw;
  }




  /* -------------------------------
    Show
    ------------------------------- */
  .conv>div>div a {
    width: 90%;
    margin: 10vw auto;
    font-size: 16px;
    height: 14vw;
  }

  .conv.show_top>div>div a {
    width: 90%;
    margin: 0 auto;
    font-size: 16px;
    height: 14vw;
  }

  .show #sec3 .pc_c {
    display: none;
  }

  .show #sec3 .mb_c {
    width: 100%;
    display: block;
  }

  .show #sec1>div {
    margin: 5vw auto 0;
  }

  .show #sec1>div>div:first-child {
    font-size: 6vw;
    line-height: 7vw;
    margin-bottom: 3vw;
  }

  .show #sec1 .f_wrap>div:first-child {
    text-align: center;
    font-size: 6vw;
  }

  .show #sec1 .f_wrap,
  .show #sec2 .f_wrap,
  .show #sec3 .f_wrap {
    display: block;
  }

  .show #sec2 .f_wrap img {
    max-width: 100%;
  }

  .show #sec2 .f_wrap>div:last-child {
    padding-left: 0;
  }

  .show #sec2>div>div {
    padding: 5vw;
  }

  .show #sec3 .f_wrap>div:nth-child(2) img {
    width: 70%;
    margin: 5vw auto;
  }

  .show #sec3 .f_wrap {
    padding: 8vw 0;
  }

  .show #sec1>div:first-child span {
    font-size: 6.5vw;
    line-height: 9vw;
    background: none;
  }

  .show #sec1>div:first-child span.large {
    font-size: 6.5vw;
    line-height: 9vw;
    background: none;
  }

  /* -------------------------------
    footer
    ------------------------------- */
  footer {
    /* height: 120vw; */
    background-size: cover;
    padding-bottom: 50px;
  }

  #footer_tel {
    margin-top: 2vw;
    line-height: 1.2;
  }

  footer .footer_part1 {
    display: none;
  }

  footer .footer_part2 {
    display: none;
  }

  .fixed_btn {
    /* width: 85%; */
    width: 100%;
  }

  #footer_organization {
    /* font-size: 7vw;
        line-height: 8vw; */
  }

  #footer_organization span:first-child {
    /* font-size: 5vw; */
  }

  #footer_adress {
    /* font-size: 3vw;
        margin-top: 1vw; */
  }

  #footer_copyright {
    /* font-size: 4vw; */
  }



  .sub_page .content_area:last-child {
    padding: 33px 10px 0px;
  }

  .sub_page #contact_press {
    padding: 10px;
  }

  .sub_page .mainbox_wrap {
    display: block;
  }

  #press .content_block_upper {
    display: block;
  }

  #press .content_block_upper>div:first-child {
    margin-right: 0;
  }

  #press .content_block_upper>div:last-child {
    margin-top: 10px;
  }

  .sub_page #sidebox {
    float: none;
    display: none;
  }

  .sub_page .h1_pagettl {
    background-color: #202020;
    padding: 22px 20px 26px;
  }

  .sub_page h2.style_h201 {
    padding: 10px;
    font-size: 20px;
  }

  .sub_page .content_area section h3 {
    font-size: 20px;
  }





  .press {
    .sec1 {
      .content_block_upper {
        flex-direction: column;
        gap: 10px;
        margin-bottom: 10px;
      }
    }
  }



  .exhibitorslist {
    margin-top: 0;
  }

  .exhibitorslist .list_wrap {
    display: block;
    padding-bottom: 0;
    padding: 0;
  }

  .exhibitorslist .list_service_wrap {
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 10px;
  }

  .exhibitorslist .exhibitor_logo {
    margin-top: 5px;
  }

  .exhibitorslist .exhibitor_logo .noimage {
    /* display: none; */
  }



  .exhibitorslist .content_area:last-child {
    padding: 6.66vw 0;
  }

  .exhibitorslist .note_tar {
    text-align: center;
  }

  .exhibitorslist .exhibitor_wrap {
    padding: 10px 50px 10px 16px;
  }

  .exhibitorslist .list_wrap>div:first-child {
    padding-right: 0;
  }

  .exhibitorslist .list_wrap>div:nth-child(2) {
    width: auto;

  }

  .exhibitorslist .exhibitor_wrap::after {
    /* display: none; */
    right: 2%;
  }

  .exhibitorslist .exhibitor_name {
    font-size: 18px;
  }

  .exhibitorslist .list_service_wrap ul li {
    margin-right: 0;
  }

  .exhibitorslist .list_service_wrap ul li .exh_service_desc {
    padding: 10px;
  }

  .exhibitorslist .co-exhibitors {
    display: block !important;
  }

  .exhibitorslist .co-exhibitors>div {}

  .exhibitorslist .co-exhibitors>div:nth-child(n+2) {
    padding-left: 0;
  }



  .student {
    margin-top: 0;
  }

  .student .list_wrap {
    display: block;
    padding-bottom: 0;
    padding: 15px 10px;
  }

  .student .list_service_wrap {
    margin-top: 10px;
    margin-bottom: 20px;
    padding: 10px;
  }

  .student .list_wrap>div:first-child {
    padding-right: 0;
  }

  .student .pre_text {
    margin: 0;
  }

  .student .pre_text .title {
    font-size: 19px;
  }


  .header_menu_body {
    display: none;
  }

  .front_page header>div {
    padding-top: 14vw;
  }

  header .logo_data {
    font-size: 17px;
    margin: 10px 0;
  }

  header .logo_data div:first-child {
    justify-content: flex-start;
  }

  header .logo_data>div:first-child>div:last-child {
    flex-direction: column;
    flex-grow: 1;
    text-align: left;
    align-items: baseline;
    row-gap: 0px;
  }

  header .logo_data div span {
    font-size: 26px;
  }

  header .logo_data>div {
    margin: 10px 0;
  }

  header .logo_data .time {
    margin-top: 5px;
    font-size: 18px;
  }

  .front_page #sec9 {
    /* margin-top: -100px;
    padding-top: 100px; */
  }

  header .btn {
    margin-bottom: 10px;
  }



  .front_page .sec7 {
    .f_wrap {
      padding-top: 10px;
    }
  }

  .front_page .sec8 {
    padding: 20px;

    .pr {
      flex-direction: column;
    }
  }





  .front_page {
    .bnr_odex {
      max-width: 800px;
      margin: 0 auto;
      /* background-color: white; */
      background-color: #000b36;
      /* background-color: white; */
      padding: 20px;

      h3 {
        font-size: 22px;
        font-weight: 900;
        line-height: 1;
        margin-bottom: 10px;
        border-top: 1px solid #fff;
        border-bottom: 1px solid #fff;
        color: white;
        padding: 5px 0 10px;

      }

      .odex_logo {

        /* margin: 0 auto; */
        background-color: #000b36;

        img {
          max-width: 80%;
        }
      }

      .f_wrap {
        display: flex;
        margin: 0 auto;
        justify-content: space-around;
      }

      .f_wrap>a {
        display: flex;
        flex: 0 1 48%;

        img {
          max-width: 100%;
        }
      }
    }


    .sec9 {
      .content {
        margin-top: 10px;

        .note {}

        .f_wrap {
          flex-direction: column;

          h3 {}

          .img {
            max-width: 80%;
          }

          .text {
            br {
              display: none;
            }
          }
        }
      }
    }

    .topmap {
      margin: 0px 0 0;
      padding: 0 10px;

      img {}
    }


    .sec10 {
      .sec9 {
        padding: 15px;
        margin-top: 10px;

        h2 {
          font-size: 21px;
        }
      }
    }

    .sec4 .bg_gray .copy {
      font-size: 20px;
    }

    .sec1 {
      .sec1btnarea {
        a.btn {
          font-size: 16px;
          flex: 0 0 48%;
          line-height: 1.3;
        }
      }

      .info {
        .date {
          font-size: 38px;
        }

        .week {
          font-size: 24px;
        }

        .time {
          font-size: 26px;
        }
      }

      .place {
        font-size: 18px;

        &:before,
        &:after {
          width: 20px;
        }

        &:before {
          left: -35px;
        }

        &:after {
          right: -35px;
        }
      }
    }

    .sec10 {
      .sec10inner {
        padding: 20px 10px;
        margin-bottom: 10px;

        .title {
          margin-bottom: 10px;
          gap: 10px;
          justify-content: center;


          .en {
            font-size: 30px;
          }
        }

        iframe {
          height: 46vw;
        }

        .f_wrap {
          /*flex-direction: column;*/
        }
      }

      .sec10inner_data {
        .f_wrap {
          flex-direction: row;

          a {
            flex: 0 0 95%;
            height: 70px;
            background-size: 20px;
            background-position: 95% center;
          }
        }

        .flexcenter {
          margin-bottom: 3px;
        }
      }
    }




  }





  /* -------------------------------
    visitor
    ------------------------------- */
  .visitor {
    .lead_box {
      margin: 40px auto;
      padding: 20px;

      .pc_only {
        display: block;
      }

      h2 {
        line-height: 1.6;
        font-size: 28px;

      }

      .present_area {
        .head {
          font-size: 28px;
        }

        .head::before,
        .head::after {
          height: 32px;
        }
      }

      .present_box {
        .icon {
          font-size: 22px;
        }

        .txt {
          font-size: 22px;
        }

        .txt_lrg {
          font-size: 26px;
        }

        .txt_xlrg {
          font-size: 32px;
        }
      }

      .note_list {
        margin-top: 10px;
      }

      .note_item {
        font-size: 12px;
      }
    }

    .sec2-01,
    .sec2-02 {
      padding: 60px 0 0;

      h2 {
        font-size: 26px;
      }

      .txt_sml {
        font-size: 16px;
      }
    }

    .sec2-01 {
      .seminar_list {
        gap: 20px;
      }

      .seminar_item {
        width: calc((100% - 20px) / 2);
      }

      .seminar_img {
        /*img {
                    height: auto;
                }*/
      }

      .seminar_body {

        .theme {
          font-size: 11px;
        }

        .title {
          font-size: 16px;
        }
      }
    }

    .sec2-02 {
      padding-bottom: 60px;

      .meetup_list {
        gap: 20px;
      }

      .meetup_item {
        width: calc((100% - 20px) / 2);
      }

      .meetup_img {
        /*img {
                    height: auto;
                }*/
      }

      .meetup_body {
        .title {
          font-size: 16px;
        }

        .summary {
          font-size: 14px;
        }
      }
    }

    .sec3 {
      margin-top: 60px;
    }

  }


  .btn_register {
    margin: 40px 20px;

    a {
      font-size: 26px;
      line-height: 1.6;
    }
  }

  .bg_white {
    &.pd_btm {
      padding-bottom: 10px;
    }
  }

  .inner {
    margin: 0 20px;
  }

}

@media only screen and (max-width: 480px) {
  .front_page {
    & .sec10 {
      & .sec10inner {
        .f_wrap {
          flex-direction: column;
          gap: 0;

          a,
          div {
            width: 100%;
          }

          /*                        img {
                            margin-bottom: 10px;
                        }*/
        }
      }
    }
  }

  /* -------------------------------
    visitor
    ------------------------------- */
  .visitor {
    .lead_box {
      margin: 40px auto;
      padding: 20px;

      .pc_only {
        display: none;
      }

      h2 {
        font-size: 22px;
      }

      .lead_txt {
        margin-bottom: 30px;
        padding: 20px 0;
        font-size: 18px;
        text-align: left;
      }

      >p {
        font-size: 16px;
      }

      .present_area {
        margin-top: 30px;
        padding: 30px 15px;

        .head {
          font-size: 22px;
          line-height: 1.6;
          align-items: flex-end;
        }

        .head::before,
        .head::after {
          height: 30px;
        }

        .head::before {
          margin-right: 20px;
        }

        .head::after {
          margin-left: 20px;
        }
      }

      .present_box {
        .icon {
          font-size: 20px;
        }

        .txt {
          padding: 10px 15px 20px;
          font-size: 18px;
          line-height: 1.6;
        }

        .txt_lrg {
          font-size: 22px;
        }

        .txt_xlrg {
          font-size: 24px;
        }
      }

      .more-txt {
        margin-top: 20px;
        font-size: 20x;
      }

      .gift_card {
        width: 80%;
      }

      .note_item {
        font-size: 12px;
      }
    }

    .sec2-01,
    .sec2-02 {
      padding: 60px 0 0;

      h2 {
        font-size: 24px;
      }

      .txt_sml {
        font-size: 12px;
      }
    }

    .sec2-01 {
      .seminar_item {
        width: 100%;
      }

    }

    .sec2-02 {
      padding-bottom: 40px;

      .meetup_item {
        width: 100%;
      }

    }

  }


  .btn_register {
    a {
      font-size: 24px;
    }
  }
}

@media only screen and (max-width: 880px) {

  /* -------------------------------
    scta
    ------------------------------- */
  .scta .scta_area {
    margin: 40px auto;
    padding: 20px;
  }

  .scta .scta_area .header {
    margin-bottom: 20px;
    padding-bottom: 10px;
  }

  .scta .scta_area .txt_jp {
    margin: 0px;
    padding: 0;
    font-size: 24px;
  }

  .scta .scta_area .txt_en {
    font-size: 12px;
  }

  .scta .scta_area .scta_tr {
    flex-direction: column;
    gap: 0;
    padding: 20px 0;
  }

  .scta .scta_area .scta_th {
    width: 100%;
  }

  .scta .scta_area .scta_td {
    width: 100%;
  }

  .scta .scta_area a.tel_link {
    color: var(--main-color);
    text-decoration: underline;
  }
}