@charset "utf-8";

img {
  display: block;
  height: auto;
  max-width: 100%;
}
.sp {
  display: none;
}

.btn-menu {
  display: none;
}

#slideShow {
  margin: 35px 0 0;
}
.slick-prev {
  left: 5px;
}
.slick-next {
  right: 15px;
}
@media screen and (max-width: 768px) {
  #slideShow {
    margin: 0;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }

  #wrapper {
    width: auto;
    max-width: 100%;
    margin: 0;
  }

  /* ヘッダ */
  #globalHeader {
    height: 66px;
    position: relative;
    border-bottom: 1px solid #dfdfdf;
  }
  #globalHeader .modal-menu {
    display: none;
  }
  #globalHeader.is-active .modal-menu {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.2);
  }
  #globalHeader .site-logo {
    position: absolute;
    top: 0;
    z-index: 4;
    width: 100%;
    height: 100%;
    margin: 0;
    float: none;
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: 0 20px;
    box-sizing: border-box;
  }
  /*#globalHeader .site-logo img {
    width: 240px;
  }*/
  #globalHeader nav {
    background-color: #fff;
    box-sizing: border-box;
    left: 0;
    position: absolute;
    top: 66px;
    transform: translateY(-100%);
    transition: all 0.3s;
    width: 100%;
    z-index: 3;
    display: flex;
    flex-flow: column-reverse;
  }
  #globalHeader.is-active nav {
    opacity: 1;
    transform: translateY(0);
  }
  #globalHeader nav .right {
    float: none;
    flex-flow: column;
    text-align: center;
    margin: 24px 0 20px;
  }
  #globalHeader nav .right #search_box {
    margin: 0 0 16px;
    order: 1;
  }
  #globalHeader nav .right .globalChanger {
    margin: 0 auto;
    order: 3;
  }
  #globalHeader nav .right .globalChanger a {
    margin: 0;
    padding: 2px 10px;
  }
  #globalHeader .social {
    justify-content: center;
    order: 2;
    margin: 0 0 16px;
  }
  #globalHeader nav #globalNav {
  }
  #globalHeader nav #globalNav li {
    float: none;
    width: auto;
    height: auto;
    border: 0;
    border-top: 1px solid #ccc;
  }
  #globalHeader nav #globalNav li:last-child {
    border-bottom: 1px solid #ccc;
  }
  #globalHeader nav #globalNav li a {
    width: auto;
    height: auto;
    padding: 14px 0;
    background-color: #f4f4f4;
  }

  /* メニューボタン */
  .btn-menu {
    display: block;
    width: 66px;
    height: 66px;
    margin: auto !important;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 5;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
  }
  .btn-menu a {
    display: block;
    height: 100%;
    text-decoration: none !important;
  }
  .btn-menu a > span {
    display: block;
    height: 14px;
    padding: 19px 20px 0;
    position: relative;
    width: 28px;
  }
  .btn-menu a .line {
    background-color: #000;
    display: block;
    height: 2px;
    text-indent: -9999px;
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
    width: 100%;
  }
  .btn-menu a .line + .line {
    margin-top: 6px;
  }
  #globalHeader.is-active .line:nth-child(1) {
    transform: translateY(8px) rotate(-45deg);
  }
  #globalHeader.is-active .line:nth-child(3) {
    transform: translateY(-8px) rotate(45deg);
  }
  #globalHeader.is-active .line:nth-child(2) {
    opacity: 0;
  }
  .btn-menu a em {
    content: "MENU";
    font-family: "Noto Sans Japanese";
    font-size: 1rem;
    color: #000;
    margin-top: 6px;
    display: block;
    font-style: normal;
  }

  /*  */
  #globalFooter {
    padding: 0 24px;
  }
  #glossaryNav {
    padding: 4px 20px 14px;
    font-size: 0rem;
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 48px);
    margin-left: -24px;
    box-sizing: border-box;
  }
  #glossaryNav li {
    padding: 0;
    margin-top: 10px;
  }
  #glossaryNav li:first-child {
    border-left: 1px solid #d1d1d1;
  }
  #glossaryNav > li:last-child {
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.1);
    padding: 6px 8px 6px 0;
    border: 0;
  }
  #glossaryNav li .pageTop {
    float: none;
    margin: 0;
    font-size: 1rem;
  }
  #glossaryNav li a {
    padding: 0 18px;
    font-size: 1.2rem;
  }
  #glossaryNav .social li {
    margin-left: 8px;
    margin-right: 0;
    padding: 0;
    border: 0 !important;
    margin-top: 0;
  }
  #glossaryNav .social li a {
    padding: 0;
  }
  #footerNav {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -4px;
    padding: 10px 0;
  }
  #footerNav li {
    flex-basis: 50%;
    max-width: 50%;
    box-sizing: border-box;
    margin-top: 20px;
    padding: 0 4px;
    border: 0;
    display: block;
    min-height: 0;
  }
  .footerInfo {
    padding: 0 0 40px;
  }
  #globalFooter .footerInfo div.bottom {
    position: static;
    margin-top: 20px;
    display: flex;
    flex-flow: row-reverse;
    justify-content: flex-end;
    align-items: flex-start;
  }
  #globalFooter .footerInfo div img {
  }
  #globalFooter .footerInfo div ul {
  }

  /* TOP */
  #contentNews {
    display: flex;
    flex-flow: column;
    margin-top: 30px;
    padding: 0 24px;
  }
  #contentNews > div {
    width: 100%;
  }
  #contentNews .focus {
    order: 3;
    margin: 0;
  }
  #contentNews .news {
    order: 1;
    margin: 0 0 40px;
  }
  #contentNews .events {
    order: 2;
    margin: 0 0 40px;
  }
  #bannerLinks {
    margin: 40px 0;
  }
  #bannerLinks li {
    float: none;
    margin: 0 auto;
  }
  #bannerLinks li:first-child {
    margin: 0 auto;
  }
  #bannerLinks li a {
    display: block;
  }

  /* 下層ページ */
  #breadcrumb {
    padding: 0 24px;
  }
  .container {
    padding: 0 24px;
  }
  .container #mainColumn {
    width: 100%;
    float: none;
    margin-bottom: 60px;
  }
  .container #sideColumn {
    width: 100%;
    float: none;
    margin-bottom: 60px;
  }
  .container #sideColumn h2 {
    padding: 20px;
  }
  #sideNav li {
    width: 100%;
  }
  #sideNav li a {
    width: 100%;
  }

  /* about */
  #mainColumn .article p {
    word-break: break-word;
  }
  #mainColumn dl.withPhoto dt,
  #mainColumn dl.withPhoto dd {
    width: auto !important;
  }
  #mainColumn dl.message p.text {
    width: auto;
    margin: 0 0 20px;
  }
  #about #sections dt {
    overflow: hidden;
  }
  #about #sections dt a.showLabs {
    position: relative;
    float: right;
    margin: 10px 0 10px 10px;
  }
  #about #networks dl,
  #about #networks dl:first-child {
    float: none;
    width: auto;
    margin: 0 0 30px;
  }
  #about .centersHistory .immunity2,
  #about .centersHistory .immunity3 {
    float: none;
    width: auto;
  }
  #about .centersHistory .immunity3 {
    margin-top: 18px;
  }
  #about .centersHistory table,
  #about .centersHistory tr,
  #about .centersHistory td {
    display: block;
  }
  #about .centersHistory td + td {
    margin-top: 18px;
  }
  #about .centersHistory .nenpyou {
    width: auto;
    margin: 0;
  }
  #about .centersHistory dd ~ dd {
    margin-top: 10px;
  }
  #mainColumn dl.defList #about #access > dd {
    float: none;
    width: auto;
  }
  #about #access .access {
    margin-bottom: 10px;
  }
  #about #access > dd,
  #about #access > dt {
    float: none;
    width: auto;
  }
  #about #access > dd,
  #about #access > dd ~ dd {
    margin-top: 10px;
  }
  #about #mainColumn dl.advisoryCouncil dd,
  #about #mainColumn dl.advisoryCouncil dt {
    width: auto;
    margin: 0 0 20px;
  }
  #about #mainColumn dl.advisoryCouncil dd.photo img {
    margin: 0 auto;
  }
  #about #mainColumn dl.ethics dd,
  #about #mainColumn dl.ethics dt {
    width: auto;
    margin: 0 0 20px;
  }
  #about #mainColumn dl.ethics dd.photo img {
    margin: 0 auto;
  }

  /* laboratories */
  #laboratories #sections dt {
    overflow: hidden;
  }
  #laboratories #sections dt a {
    position: relative;
    float: right;
    margin: 10px 0 10px 10px;
  }
  #laboratories #sections .pageTop {
    margin-top: 0;
  }
  #laboratories #sections .professorList {
    margin: 25px 0 5px 0;
  }
  #laboratories #sections .professorList li {
    width: auto;
    display: flex;
    float: none;
    margin: 0;
  }
  #laboratories #sections .professorList .text {
    width: auto;
  }

  /* projects */
  #projects .projectList {
    margin: 0;
  }
  #projects .projectList li {
    float: none;
    width: auto;
    margin: 0;
  }
  #mainColumn .linkNav dt,
  #mainColumn .linkNav dd {
    width: auto !important;
  }
  #mainColumn dl.withPhoto dt,
  #mainColumn dl.withPhoto dd {
    float: none;
    width: auto;
    margin-right: 0;
  }
  #mainColumn dl.withPhoto dd.photo {
    display: block;
    margin-top: 12px;
  }

  /* library */
  #library .interviewList li h3 {
    height: auto;
    margin-bottom: 4px;
  }
  #library .videoArchive .video .photo {
  }
  #library .videoArchive .video .text {
    overflow: visible;
  }
  #library .videoArchive .rcai_labs,
  #library .videoArchive .fronteer {
    padding-bottom: 90px;
    background-position: center bottom;
  }
  #library .publications .manual_reports li {
    width: 50%;
  }

  /* databases */
  #databases .defList dt,
  #databases .defList dd {
    width: auto !important;
  }

  /* jobs */
  #jobs .recruit dd .researchJob,
  #jobs .recruit dd .accountingJob {
    float: none;
  }
  #jobs .recruit dd.photo {
    position: static;
  }

  /* glossary */
  #glossary .glossaryNav {
    margin: 13px -12px 0 0;
  }
  #glossary .glossaryNav li {
    margin-right: 12px;
  }
  #glossary .glossaryNav li a {
    margin: 0 !important;
  }

  /* links */
  #links ul li {
    width: 100%;
    min-height: auto;
    padding-bottom: 20px;
  }

  /* siteMap */
  #siteMap ul {
    display: block;
  }
  #siteMap ul li {
    display: block;
    width: 100%;
    min-height: auto;
    margin-bottom: 20px;
  }
}
