@charset "UTF-8";
/*****************/
/*****************/
/*****************/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;400;500;700;800;900&display=swap");
body {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 1em;
}

a {
  text-decoration: none;
  color: #333333;
}

a:hover {
  opacity: 0.8;
}

ul li {
  list-style: none;
}

ol li {
  list-style: decimal;
}

p {
  color: #333333;
  margin-bottom: 0;
  line-height: 1.5rem;
}

main {
  min-height: calc(100svh - 86px);
}

/*****************
すべてみるリンク
*****************/
.all-view__link {
  color: #263427;
}
.all-view__link::after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: bold;
  margin-left: 4px;
}

/*****************
h2見出し
*****************/
.h2__wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #263427;
  margin-bottom: 76px;
}
.h2__wrap h1,
.h2__wrap h2 {
  color: #263427;
  padding: 10px 20px;
  font-weight: bold;
  font-size: 30px;
  border-left: 20px solid #263427;
  text-align: left;
}

/*****************
h3見出し
*****************/
.h3__wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  background-color: #263427;
  padding: 10px;
}
.h3__wrap h3 {
  color: #fff;
  font-weight: bold;
  padding: 10px;
}
.h3__wrap .info__link {
  color: #263427;
  background-color: #fff;
  padding: 6px 8px;
  border-radius: 2px;
  font-weight: bold;
}
.h3__wrap .info__link::after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: bold;
  margin-left: 4px;
}

/*****************
page見出し
*****************/
.page__header .page__header__img {
  background-image: url(../img/page-header-min.jpg);
  height: 80px;
  background-repeat: no-repeat;
  background-size: cover;
}
.page__header .crumbs__list {
  margin: 25px 5vw;
}
.page__header .crumbs__list a {
  padding-bottom: 6px;
  border-bottom: 1px solid #d7d7d7;
}
.page__header .page__header__title {
  margin: 50px 5vw 25px 5vw;
}
.page__header .page__header__title h1 {
  font-size: 54px;
  font-weight: bold;
}

/*****************
pageコンテンツ
*****************/
.page__content {
  margin-top: 56px;
}

/*****************/
/*****************
header
*****************/
header {
  height: 76px;
}
header nav {
  background-color: rgba(255, 255, 255, 0.768627451);
}
header .navbar-collapse {
  justify-content: flex-end;
}
header .navbar-nav {
  gap: 20px;
}
header .dropdown-menu {
  border-radius: 4px;
  border: none;
  background-color: rgba(255, 255, 255, 0.6901960784) !important;
}
header .navbar-toggler {
  border: none;
}

@media screen and (max-width: 992px) {
  header nav {
    background-color: #fff;
  }
  header .navbar-nav {
    background-color: #f7f7f7;
    padding: 10px;
    text-align: center;
    box-shadow: 3px 3px 3px #eee;
  }
  header .dropdown-menu {
    text-align: center;
  }
}
/*****************
footer
*****************/
footer {
  background-color: #263427;
  padding: 16px 10px;
  text-align: center;
  color: #fff;
}
footer ul {
  margin-bottom: 6px;
}
footer ul a {
  color: #fff;
}

/*****************
main
*****************/
.top__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.top__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.about__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.about__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.unit-activity-info__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.unit-activity-info__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.activity__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.activity__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.laboratory__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.laboratory__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.link__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.link__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.post-detail__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.post-detail__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.contact__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.contact__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.privacypolicy__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.privacypolicy__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

.page-not-found__wrap {
  display: flex;
  flex-direction: column;
  gap: 120px;
  margin: 100px 5vw;
}

.page-not-found__wrap > div {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
}

@media screen and (max-width: 992px) {
  .top__wrap > div {
    max-width: 100%;
  }
  .about__wrap > div {
    max-width: 100%;
  }
  .unit-activity-info__wrap > div {
    max-width: 100%;
  }
  .activity__wrap > div {
    max-width: 100%;
  }
  .laboratory__wrap > div {
    max-width: 100%;
  }
  .link__wrap > div {
    max-width: 100%;
  }
  .post-detail__wrap > div {
    max-width: 100%;
  }
  .contact__wrap > div {
    max-width: 100%;
  }
  .privacypolicy__wrap > div {
    max-width: 100%;
  }
  .page-not-found__wrap > div {
    max-width: 100%;
  }
}
/*****************
home
*****************/
main#top .top__visual {
  position: relative;
  top: 0;
  left: 0;
  background-image: url(../img/top-main-min.jpg);
  background-color: #f4f4f4;
  background-size: cover;
  min-height: 550px;
}
main#top .top__visual .top__visual__ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding: 50px;
  text-align: center;
}
main#top .top__visual .top__visual__ttl h1 {
  font-size: 100px;
  font-weight: 900;
  letter-spacing: 0.8px;
}
main#top .top__visual .top__visual__ttl .top__visual__discription {
  margin-top: 20px;
}
main#top .top__visual .top__visual__ttl .top__visual__discription p:last-child {
  margin-top: 10px;
}
main#top .top__visual .top__visual__ttl .visuallyHidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
main#top .top__visual .top__visual__ttl .top__visual__anime {
  font-size: 100px;
  font-weight: 900;
  letter-spacing: 0.8px;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
main#top .top__visual .top__visual__ttl .top__visual__anime.is-active {
  --skewX: 0deg;
  --x: 0;
}
main#top .top__visual .top__visual__ttl .top__visual__anime1,
main#top .top__visual .top__visual__ttl .top__visual__anime2,
main#top .top__visual .top__visual__ttl .top__visual__anime3 {
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
main#top .top__visual .top__visual__ttl .top__visual__anime2,
main#top .top__visual .top__visual__ttl .top__visual__anime3 {
  position: absolute;
}
main#top .top__visual .top__visual__ttl .top__visual__anime1 {
  -webkit-mask-image: linear-gradient(to bottom, #333333 33.3%, transparent 33.3%);
          mask-image: linear-gradient(to bottom, #333333 33.3%, transparent 33.3%);
  transform: translateX(var(--x, -110%)) skewX(var(--skewX, 40deg));
}
main#top .top__visual .top__visual__ttl .top__visual__anime2 {
  -webkit-mask-image: linear-gradient(to bottom, transparent 33.3%, #333333 33.3%, #333333 66.6%, transparent 66.6%);
          mask-image: linear-gradient(to bottom, transparent 33.3%, #333333 33.3%, #333333 66.6%, transparent 66.6%);
  transform: translateX(var(--x, 110%)) skewX(var(--skewX, -40deg));
}
main#top .top__visual .top__visual__ttl .top__visual__anime3 {
  -webkit-mask-image: linear-gradient(to bottom, transparent 66.6%, #333333 66.6%);
          mask-image: linear-gradient(to bottom, transparent 66.6%, #333333 66.6%);
  transform: translateX(var(--x, -110%)) skewX(var(--skewX, 40deg));
}
main#top .top__about .top__about__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#top .top__about .top__about__ttl {
  flex: 1 1 40%;
}
main#top .top__about .top__about__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#top .top__about .top__about__ttl h2 {
  font-weight: bold;
}
main#top .top__about .top__about__discription {
  flex: 1 1 60%;
  line-height: 2;
}
main#top .top__recent-activities .top__recent-activities__inner {
  display: flex;
  flex-direction: row;
  gap: 30px;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__ttl {
  flex: 1 1 20%;
  background-color: #eee;
  padding: 20px;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__ttl h2 {
  font-weight: bold;
  font-size: 18px;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__list {
  flex: 1 1 80%;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__list .top__recent-news__item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  padding: 40px 0;
  border-bottom: 1px solid #eee;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__list .top__recent-news__item .date {
  font-size: 14px;
  letter-spacing: 0.8;
}
main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__list .top__recent-news__item .tag {
  border: 1px solid #919191;
  color: #919191;
  padding: 4px 6px;
  font-size: 14px;
}
main#top .top__recent-research .top__recent-research__ttl {
  flex: 1 1 20%;
}
main#top .top__recent-research .top__recent-research__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#top .top__recent-research .top__recent-research__ttl h2 {
  font-weight: bold;
}
main#top .top__recent-research .top__recent-research__inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 80px auto 0 auto;
  max-width: 860px;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item {
  flex: 1 1 75%;
  padding: 0 62px 0 0;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__ttl {
  display: flex;
  flex-direction: row;
  border-bottom: 1px solid #eee;
  justify-content: space-between;
  align-items: center;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__ttl .ttl-en {
  font-size: 16px;
  color: #919191;
  margin-bottom: 0;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__ttl h3 {
  font-size: 20px;
  font-weight: bold;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__ttl .info__link {
  background-color: #333333;
  color: #fff;
  padding: 4px 10px;
  border-radius: 16px;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__lists a {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__lists a .date {
  font-size: 14px;
  margin-top: 20px;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__lists .ttl {
  font-weight: bold;
  margin-top: 20px;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__item .top__recent-research__lists .all-view__link {
  justify-content: end;
  margin-top: 20px;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__img {
  flex: 1 1 25%;
}
main#top .top__recent-research .top__recent-research__inner .top__recent-research__img img {
  width: 100%;
  height: auto;
}
main#top .top__access {
  background-color: #eee;
}
main#top .top__access .top__access__inner {
  padding: 100px 0;
  max-width: 1280px;
  margin: 0 auto;
}
main#top .top__access .top__access__ttl {
  flex: 1 1 40%;
}
main#top .top__access .top__access__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#top .top__access .top__access__ttl h2 {
  font-weight: bold;
}
main#top .top__access .top__access__container {
  padding: 50px;
}
main#top .top__access .top__access__container .ttl {
  border: 1px solid #333333;
  padding: 4px 16px;
  display: inline-block;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 26px;
}
main#top .top__access .top__access__container .address {
  margin-bottom: 10px;
}
main#top .top__access .top__access__container iframe {
  width: 100%;
  height: auto;
}
main#top .top__access .head-office__container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  margin-bottom: 36px;
  padding-bottom: 18px;
  border-bottom: 1px solid #263427;
  justify-content: space-between;
}
main#top .top__access .branch-office__container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}
main#top .top__access .google-map__link {
  background-color: #333;
  border-radius: 14px;
  color: #fff;
  padding: 6px 18px;
  font-size: 12px;
}

@media screen and (max-width: 992px) {
  main#top .top__visual {
    min-height: 400px;
  }
  main#top .top__visual .top__visual__ttl {
    padding: 10px;
  }
  main#top .top__visual .top__visual__ttl h1 {
    font-size: 60px;
  }
  main#top .top__visual .top__visual__ttl .top__visual__discription p {
    font-size: 14px;
  }
  main#top .top__visual .top__visual__ttl .top__visual__anime {
    font-size: 60px;
  }
  main#top .top__recent-activities .top__recent-activities__inner {
    flex-direction: column;
  }
  main#top .top__recent-activities .top__recent-activities__inner .top__recent-activities__list .top__recent-news__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 26px 0;
  }
  main#top .top__access .top__access__inner {
    padding: 100px 5vw;
    max-width: 100%;
  }
  main#top .top__access .top__access__container {
    padding: 50px 10px;
  }
  main#top .top__access .head-office__container {
    flex-direction: column;
  }
  main#top .top__access .branch-office__container {
    flex-direction: column;
    gap: 44px;
  }
}
@media screen and (max-width: 576px) {
  main#top .top__recent-research .top__recent-research__inner {
    flex-direction: column-reverse;
    max-width: 100%;
    gap: 20px;
  }
  main#top .top__recent-research .top__recent-research__inner .top__recent-research__item {
    flex: 1 1 100%;
    padding: 0;
  }
  main#top .top__recent-research .top__recent-research__inner .top__recent-research__img {
    flex: 1 1 100%;
    text-align: center;
  }
  main#top .top__recent-research .top__recent-research__inner .top__recent-research__img img {
    width: 60%;
    height: auto;
  }
}
/*****************
about
*****************/
main#about .about__outline__ttl {
  flex: 1 1 20%;
}
main#about .about__outline__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#about .about__outline__ttl h2 {
  font-weight: bold;
}
main#about .about__officer__ttl {
  flex: 1 1 20%;
}
main#about .about__officer__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#about .about__officer__ttl h2 {
  font-weight: bold;
}
main#about .about__history__ttl {
  flex: 1 1 20%;
}
main#about .about__history__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#about .about__history__ttl h2 {
  font-weight: bold;
}
main#about .about__philosophy__ttl {
  flex: 1 1 20%;
}
main#about .about__philosophy__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#about .about__philosophy__ttl h2 {
  font-weight: bold;
}
main#about .about__outline .about__outline__inner {
  display: flex;
  flex-direction: row;
}
main#about .about__outline .about__outline__inner table.about__outline__table {
  flex: 1 1 80%;
  margin-top: 80px;
}
main#about .about__outline .about__outline__inner table.about__outline__table tbody tr {
  border-bottom: 1px solid #eee;
}
main#about .about__outline .about__outline__inner table.about__outline__table tbody th,
main#about .about__outline .about__outline__inner table.about__outline__table tbody td {
  padding: 1rem 10px;
}
main#about .about__outline .about__outline__inner table.about__outline__table tbody th div,
main#about .about__outline .about__outline__inner table.about__outline__table tbody td div {
  padding: 0.5rem 0;
}
main#about .about__philosophy .about__philosophy__inner {
  display: flex;
}
main#about .about__philosophy .about__philosophy__inner .philosophy__items {
  flex: 1 1 80%;
}
main#about .about__philosophy .about__philosophy__inner .philosophy__item {
  position: relative;
  top: 0;
  left: 0;
  min-height: 248px;
}
main#about .about__philosophy .about__philosophy__inner .philosophy__item h3 {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 128px;
  font-weight: bold;
  opacity: 0.2;
}
main#about .about__philosophy .about__philosophy__inner .philosophy__item p {
  position: absolute;
  top: 76px;
  left: 46px;
  font-size: 30px;
  background-color: rgba(255, 255, 255, 0.2392156863);
  padding: 10px;
}
main#about .about__officer {
  max-width: none;
  background-color: rgba(230, 230, 230, 0.631372549);
  margin: 0 -5vw;
  width: calc(100% + 10vw);
  padding: 100px 0;
}
main#about .about__officer .about__officer__wrap {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 0 5vw;
}
main#about .about__officer .about__officer__inner {
  display: flex;
}
main#about .about__officer .about__officer__inner .about__officer__container {
  flex-direction: row;
  flex: 1 1 80%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 60px;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-president {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  align-items: center;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-president img {
  width: 100%;
  max-width: 200px;
  height: auto;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-president p {
  margin-top: 10px;
  text-align: center;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items .about__officer__item {
  width: 20%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 0 5px;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items .about__officer__item img {
  width: 80%;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-auditor {
  width: 20%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 0 5px;
}
main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-auditor img {
  width: 80%;
}
main#about .about__history .about__history__inner {
  display: flex;
}
main#about .about__history .about__history__inner .about__history__container {
  flex-direction: row;
  flex: 1 1 80%;
  display: flex;
  flex-direction: column;
  gap: 60px;
}
main#about .about__history .about__history__inner .about__history__container .about__history__lists li {
  overflow: hidden;
  margin: 0;
  position: relative;
}
main#about .about__history .about__history__inner .about__history__container .about__history__lists .date {
  width: 110px;
  float: left;
  padding: 10px 0;
  margin-top: 10px;
}
main#about .about__history .about__history__inner .about__history__container .about__history__lists .txt {
  width: 75%;
  float: left;
  border-left: 3px #e5e5d1 solid;
  padding: 14px 9px 14px 30px;
}
main#about .about__history .about__history__inner .about__history__container .about__history__lists .txt:before {
  content: "";
  width: 12px;
  height: 12px;
  background: #1b2b5a;
  position: absolute;
  left: 106px;
  top: 24px;
  border-radius: 100%;
}

@media screen and (max-width: 992px) {
  main#about .about__outline__ttl {
    flex: 1 1 20%;
  }
  main#about .about__outline__ttl .ttl-en {
    display: block;
    font-size: 14px;
    margin-bottom: 20px;
  }
  main#about .about__outline__ttl h2 {
    font-weight: bold;
  }
  main#about .about__officer__ttl {
    flex: 1 1 20%;
  }
  main#about .about__officer__ttl .ttl-en {
    display: block;
    font-size: 14px;
    margin-bottom: 20px;
  }
  main#about .about__officer__ttl h2 {
    font-weight: bold;
  }
  main#about .about__history__ttl {
    flex: 1 1 20%;
  }
  main#about .about__history__ttl .ttl-en {
    display: block;
    font-size: 14px;
    margin-bottom: 20px;
  }
  main#about .about__history__ttl h2 {
    font-weight: bold;
  }
  main#about .about__philosophy__ttl {
    flex: 1 1 20%;
  }
  main#about .about__philosophy__ttl .ttl-en {
    display: block;
    font-size: 14px;
    margin-bottom: 20px;
  }
  main#about .about__philosophy__ttl h2 {
    font-weight: bold;
  }
  main#about .about__outline .about__outline__inner table.about__outline__table tbody th {
    writing-mode: vertical-rl;
    display: flex;
    letter-spacing: 0.2em;
  }
  main#about .about__philosophy .about__philosophy__inner {
    display: flex;
  }
  main#about .about__philosophy .about__philosophy__inner .philosophy__item {
    min-height: 186px;
  }
  main#about .about__philosophy .about__philosophy__inner .philosophy__item h3 {
    font-size: 60px;
  }
  main#about .about__philosophy .about__philosophy__inner .philosophy__item p {
    top: 42px;
    font-size: 18px;
  }
  main#about .about__officer .about__officer__wrap {
    max-width: 100%;
  }
  main#about .about__officer .about__officer__inner {
    display: flex;
  }
  main#about .about__officer .about__officer__inner .about__officer__container {
    flex-direction: row;
    flex: 1 1 80%;
    display: flex;
    flex-direction: column;
    gap: 60px;
  }
  main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items {
    flex-direction: column;
    gap: 60px;
  }
  main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items .about__officer__item {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 0 5px;
  }
  main#about .about__officer .about__officer__inner .about__officer__container .about__officer__items .about__officer__item img {
    width: 80%;
  }
  main#about .about__officer .about__officer__inner .about__officer__container .about__officer__item-auditor {
    width: 100%;
  }
  main#about .about__history .about__history__inner .about__history__container .about__history__lists .txt {
    margin-left: 4px;
  }
  main#about .about__history .about__history__inner .about__history__container .about__history__lists .txt::before {
    left: 0;
    top: 50px;
  }
}
/*****************
unit-activity-info
*****************/
main#unit-activity-info .activity__item {
  margin: 80px auto 0 auto;
  max-width: 860px;
}
main#unit-activity-info .activity__item .activity__ttl {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #eee;
  justify-content: flex-start;
  margin-bottom: 20px;
}
main#unit-activity-info .activity__item .activity__ttl .ttl-en {
  font-size: 16px;
  color: #919191;
  margin-bottom: 0;
}
main#unit-activity-info .activity__item .activity__ttl h2 {
  font-size: 30px;
  font-weight: bold;
}
main#unit-activity-info .activity__item .activity__ttl h2 span {
  font-size: 16px;
  font-weight: bold;
  margin-left: 4px;
}
main#unit-activity-info .activity__item .activity__content .link__wrap {
  margin-top: 20px;
  text-align: right;
}

@media screen and (max-width: 992px) {
  main#unit-activity-info .activity__item {
    max-width: 100%;
  }
}
/*****************
activity
*****************/
main#activity .activity__items__inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
main#activity .activity__item {
  display: flex;
  flex-direction: row;
  gap: 20px;
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
  align-items: center;
}
main#activity .activity__item .date {
  font-size: 14px;
  letter-spacing: 0.8;
}
main#activity .activity__item .tag {
  border: 1px solid #919191;
  color: #919191;
  padding: 4px 6px;
  font-size: 14px;
}

/*****************
directors-laboratory
*****************/
main#directors-laboratory .laboratory__item {
  margin: 80px auto 0 auto;
  max-width: 860px;
}
main#directors-laboratory .laboratory__ttl {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #eee;
  justify-content: flex-start;
  margin-bottom: 20px;
}
main#directors-laboratory .laboratory__ttl .ttl-en {
  font-size: 16px;
  color: #919191;
  margin-bottom: 0;
}
main#directors-laboratory .laboratory__ttl h2 {
  font-size: 30px;
  font-weight: bold;
}
main#directors-laboratory .laboratory__content {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
main#directors-laboratory .laboratory__content .laboratory__img__wrap {
  flex: 1 1 20%;
}
main#directors-laboratory .laboratory__content .laboratory__discription {
  flex: 1 1 80%;
  padding-left: 50px;
}
main#directors-laboratory .laboratory__content .link__wrap {
  margin-top: 20px;
  text-align: right;
}

@media screen and (max-width: 992px) {
  main#directors-laboratory .laboratory__item {
    max-width: 100%;
  }
  main#directors-laboratory .laboratory__content {
    flex-direction: column;
    gap: 40px;
  }
  main#directors-laboratory .laboratory__content .laboratory__discription {
    padding-left: 0;
  }
}
/*****************
laboratory
*****************/
main#laboratory .laboratory__career__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__career__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__career__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__career__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__career__inner .laboratory__career__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__theme__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__theme__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__theme__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__theme__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__theme__inner .laboratory__theme__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__awards__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__awards__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__awards__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__awards__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__awards__inner .laboratory__awards__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__thesis__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__thesis__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__thesis__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__thesis__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__thesis__inner .laboratory__thesis__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__message__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__message__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__message__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__message__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__message__inner .laboratory__message__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__info__ttl {
  flex: 1 1 20%;
}
main#laboratory .laboratory__info__ttl .ttl-en {
  display: block;
  font-size: 14px;
  margin-bottom: 20px;
}
main#laboratory .laboratory__info__ttl h2 {
  font-weight: bold;
}
main#laboratory .laboratory__info__inner {
  display: flex;
  flex-direction: row;
  gap: 20px;
}
main#laboratory .laboratory__info__inner .laboratory__info__discription {
  flex: 1 1 80%;
}
main#laboratory .laboratory__img__wrap {
  text-align: center;
}
main#laboratory .laboratory__career__inner .laboratory__career__discription {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
main#laboratory .laboratory__career__inner .laboratory__career__discription .date {
  margin-right: 10px;
}
main#laboratory .laboratory__theme__inner .laboratory__theme__discription .ttl {
  font-weight: bold;
  margin-top: 20px;
}
main#laboratory .laboratory__theme__inner .laboratory__theme__discription .txt {
  line-height: 1.5;
}
main#laboratory .laboratory__thesis__inner .laboratory__thesis__discription .discription {
  margin-bottom: 20px;
}
main#laboratory .laboratory__thesis__inner .laboratory__thesis__discription .thesis__link {
  background-color: #333;
  color: #fff;
  padding: 10px 20px;
  border-radius: 50px;
}
main#laboratory .laboratory__awards__inner .laboratory__awards__discription {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
main#laboratory .laboratory__awards__inner .laboratory__awards__discription .date {
  margin-right: 10px;
}
main#laboratory .laboratory__info__inner .laboratory__info__discription .laboratory__info__lists a {
  display: flex;
  flex-direction: row;
  gap: 20px;
  margin-top: 20px;
  align-items: center;
}
main#laboratory .laboratory__info__inner .laboratory__info__discription .laboratory__info__lists a .date {
  font-size: 14px;
}
main#laboratory .laboratory__info__inner .laboratory__info__discription .laboratory__info__lists a .ttl {
  font-weight: bold;
}
main#laboratory .laboratory__info__inner .laboratory__info__discription .laboratory__info__lists .all-view__link {
  justify-content: end;
}

@media screen and (max-width: 992px) {
  main#laboratory .laboratory__career__inner {
    flex-direction: column;
  }
  main#laboratory .laboratory__theme__inner {
    flex-direction: column;
  }
  main#laboratory .laboratory__awards__inner {
    flex-direction: column;
  }
  main#laboratory .laboratory__thesis__inner {
    flex-direction: column;
  }
  main#laboratory .laboratory__message__inner {
    flex-direction: column;
  }
  main#laboratory .laboratory__info__inner {
    flex-direction: column;
  }
}
/*****************
contact
*****************/
main#contact .page__content label {
  font-weight: bold;
  margin-bottom: 20px;
}
main#contact .page__content label .required {
  background-color: #263427;
  color: #ffffff;
  font-size: 0.9em;
  padding: 2px 6px;
  margin-left: 6px;
}
main#contact .page__content input[type=text],
main#contact .page__content input[type=email],
main#contact .page__content textarea {
  border-bottom: 1px solid #eee;
  padding: 10px 8px;
  font-size: 16px;
  font-weight: normal;
  width: 100%;
  background-color: #fbfbfb;
  margin-top: 8px;
}
main#contact .page__content .submit__wrap {
  text-align: center;
}
main#contact .page__content input[type=submit] {
  background-color: #263427;
  color: #ffffff;
  width: 20%;
  padding: 6px 6px 8px 6px;
}
main#contact .page__content .wpcf7 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/*****************
link
*****************/
main#link .link__items .link__item {
  border-bottom: 1px solid #eee;
  padding: 6px;
  margin-bottom: 20px;
}
main#link .link__items .link__item:last-child {
  margin-bottom: 0;
}
main#link .link__items .link__item a {
  white-space: nowrap;
}

@media screen and (max-width: 992px) {
  main#link .link__items .link__item {
    flex-wrap: wrap;
  }
  main#link .link__items .link__item .discription {
    flex: 1 1 100%;
  }
}
/*****************
privacypolicy
*****************/
main#privacypolicy .privacypolicy__inner .privacypolicy__items {
  margin-top: 50px;
}
main#privacypolicy .privacypolicy__inner .privacypolicy__items ul li {
  line-height: 1.8rem;
}

/*****************
single
*****************/
main#post-detail .post-detail__inner {
  background-color: #eee;
  padding: 50px 30px;
}
main#post-detail .post-detail__inner .post-detail__item .post-detail__ttl {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
main#post-detail .post-detail__inner .post-detail__item .post-detail__ttl .tag {
  border: 1px solid #c8c8c8;
  padding: 4px 6px;
  font-size: 14px;
  color: #7d7d7d;
  display: inline-block;
}
main#post-detail .post-detail__inner .post-detail__item .post-detail__ttl .date {
  font-size: 14px;
}
main#post-detail .post-detail__inner .post-detail__item .post-detail__ttl h1 {
  font-weight: bold;
  border-bottom: 1px solid #c8c8c8;
  padding-bottom: 6px;
}
main#post-detail .post-detail__inner .post-detail__item .post-detail__txt {
  line-height: 2;
}
main#post-detail .post-detail__inner .post-detail__item .btn__wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  gap: 40px;
}
main#post-detail .post-detail__inner .post-detail__item .btn__wrapper a {
  background-color: #333;
  margin-top: 66px;
  flex: 1 1 50%;
  padding: 10px 6px;
  color: #fff;
  text-align: center;
}

/*****************
404
*****************//*# sourceMappingURL=style.css.map */