@charset "UTF-8";
/* CSS Document */
@media (max-width:768px) {
  .pc {
    display: none !important;
  }
  main {
    width: 100%;
    overflow-x: hidden;
  }
  #top_head, .inner {
    width: 100%;
    padding: 0;
  }
  #top_head {
    top: 0;
    position: fixed;
    margin-top: 0;
  }
  /* Fixed reset */
  #top_head.fixed {
    padding-top: 0;
    background: rgba(255, 255, 255, 0.8);
    height: 60px;
  }
  #mobile_head {
    width: 100%;
    z-index: 999;
    position: relative;
  }
  #top_head.fixed .logo, #top_head .logo {
    position: absolute;
    left: 13px;
    top: 6px;
    color: #333;
    font-size: 26px;
  }
  #global_nav {
    position: absolute;
    /* 開いてないときは画面外に配置 */
    top: -580px;
    background: rgba(255, 255, 255, .9);
    width: 100%;
    text-align: center;
    padding: 10px 0;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
  }
  #global_nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
  }
  #global_nav ul li {
    float: none;
    position: static;
  }
  #top_head #global_nav ul li a, #top_head.fixed #global_nav ul li a {
    width: 100%;
    display: block;
    color: #333;
    padding: 18px 0;
  }
  #nav_toggle {
    display: block;
  }
  /* #nav_toggle 切り替えアニメーション */
  .open #nav_toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
  }
  .open #nav_toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav_toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
  /* #global_nav スライドアニメーション */
  .open #global_nav {
    /* #global_nav top + #mobile_head height */
    -moz-transform: translateY(640px);
    -webkit-transform: translateY(640px);
    transform: translateY(640px);
  }
  #top_head .logo img {
    width: 160px;
  }
  .modal-box {
    display: none;
  }
  .mv_inner {
    width: 100%;
  }
  .mv_inner h2 {
    font-size: 1.5rem;
  }
  .mv_inner h3 {
    font-size: 1.1rem;
  }
  .container {
    padding: 10% 5%;
  }
  .col {
    display: block;
  }
  .lead_01, .lead_02, .title {
    font-size: 5rem;
    line-height: 4rem;
    margin-bottom: 3%;
  }
  .section_01 dl p {
    font-size: 1rem;
  }
  .section_01 dt, .section_01 dd, .section_02 dt, .section_02 dd {
    width: 100%;
    margin-bottom: 10%;
  }
  .box {
    flex-direction: column;
  }
  .box:nth-child(even) {
    flex-direction: column;
  }
  .text {}
  .box:nth-child(even) .text {}
  .pict {
    width: 100%;
    margin-left: 0;
    text-align: center;
  }
  .box:nth-child(even) .pict {
    margin-left: 0;
    margin-right: 0%;
  }
  .pict {
    margin-bottom: 5%;
  }
  .pict img {
    width: 100%;
    height: auto;
  }
  .section_04::before {
    height: 90%;
  }
  .section_04 ul li {
    width: 100%;
  }
  .section_04 .member_img {
    width: 40%;
    margin: -50px auto 5%;
  }
  .section_04 ul li {
    margin: 0;
    margin-bottom: 10%;
  }
  .section_05 {
    width: 100%;
  }
  .breadcrumb {
    padding: 10px;
    font-size: 11px;
  }
  .sub_title {
    font-size: 2rem;
  }
  .philosophy {
    font-size: 1.3rem;
    line-height: 2rem;
  }
  .page_wrap {
    padding-top: 5rem;
  }
  .sub_container {
    width: 90%;
    margin: 10% auto;
  }
  .text h5 {
    font-size: 1.5rem;
  }
  .section_04 ul li p {
    font-size: 16px;
  }
  .page_title {
    font-size: 1rem;
  }
  .hero {
    margin-bottom: 8%;
  }
  .hero_text h3 {
    font-size: 3rem;
    line-height: 2.5rem;
  }
  .hero_text {
    top: -8%;
    left: 5%;
  }
  .hero img {
    height: 250px;
  }
  .timeline {
    list-style: none;
  }
  .timeline > li {
    margin-bottom: 60px;
  }
  table {
    margin-bottom: 30px;
  }
  table th, table td {
    display: block;
    width: 100%;
  }
  table th {
    border-bottom: none;
    padding: 15px 15px 0;
  }
  footer li {
    width: 45%;
    text-align: left;
    margin-bottom: 10px;
  }
  footer h6 {
    font-size: 1rem;
  }
  footer p {
    font-size: 11px;
  }
  footer nav {
    padding-bottom: 10%;
    margin-bottom: 11%;
  }
    footer .mb30 img{
        width: 190px;
    }
  .about_box dl {
    flex-wrap: wrap;
  }
  .about_box dt, .about_box dd {
    width: 100%;
    margin-bottom: 10px;
  }
  .about_box dt img {
    width: 100%;
    height: 200px;
    object-fit: cover;
  }
  .research_list li, .step li {
    width: 100%;
    margin-bottom: 10%;
  }
  .contant_title {
    font-size: 1.2rem;
  }
  .s_title {
    font-size: 1rem;
  }
  .section_05 ul img {
    height: 100px;
  }
  .wpcf7-list-item {
    margin: 0 !important;
  }
  .contact_select li {
    width: 100%;
    margin-bottom: 3%;
  }
  .contact_select li a {
    font-size: 1rem;
  }
}