@charset "UTF-8";
.cf {
  *zoom: 1; }
  .cf:after {
    content: "";
    display: table;
    clear: both; }

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box; }

a {
  color: #1f5fa9;
  text-decoration: none; }
  a:link, a:visited, a:hover, a:active {
    color: #1f5fa9; }
  a:hover {
    text-decoration: underline; }

html {
  font-size: 62.5%;
  overflow-y: scroll; }

body {
  font-family: Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  color: #333;
  background-color: #fff; }

header {
  font-size: 0; }

.header-logo {
  display: inline-block;
  width: 50%;
  vertical-align: top; }

.header-logo-link {
  display: block;
  width: 150px;
  height: 60px;
  background: url("../images/header_logo_sm.png") no-repeat;
  background-size: cover; }
  .header-logo-link h1 {
    width: 100%;
    height: 100%;
    margin: 0;
    text-indent: -9000px; }

.header-nav {
  display: inline-block;
  width: 50%;
  vertical-align: top; }

.header-nav-top {
  font-size: 0;
  text-align: right; }

.e-link {
  display: inline-block;
  margin: 0 10px 0 0;
  vertical-align: top; }

.e-link-button {
  padding: 3px;
  font-size: 10px;
  font-size: 1.0rem;
  line-height: 60px;
  color: #333;
  border: 1px solid #333; }
  .e-link-button:link, .e-link-button:visited, .e-link-button:hover, .e-link-button:active {
    color: #333;
    text-decoration: none; }

.visitor-nav {
  display: none; }

.visitor-toggle, .nav-toggle {
  display: inline-block;
  width: 44px;
  margin: 10px 5px 0 0;
  text-align: center; }

.visitor-toggle-inner, .nav-toggle-inner {
  font-size: 30px;
  font-size: 3.0rem;
  line-height: 30px;
  color: #333; }
  .visitor-toggle-inner:link, .visitor-toggle-inner:visited, .visitor-toggle-inner:hover, .visitor-toggle-inner:active, .nav-toggle-inner:link, .nav-toggle-inner:visited, .nav-toggle-inner:hover, .nav-toggle-inner:active {
    color: #333;
    text-decoration: none; }

.visitor-toggle-title, .nav-toggle-title {
  margin: 0;
  font-size: 10px;
  font-size: 1.0rem;
  line-height: 12px; }

.kikin-link {
  display: none; }

.header-nav-bottom {
  display: none; }

.global-nav {
  display: none; }

.visitor-mobile, .global-mobile {
  display: none; }

.visitor-mobile-inner, .global-mobile-inner, .link-mobile-inner {
  margin: 0;
  padding: 0;
  list-style-type: none; }

.visitor-mobile-inner {
  font-size: 0;
  background-color: #1f77be; }

.visitor-mobile-list {
  display: inline-block;
  width: 33.333%;
  border-right: 1px solid #fff; }
  .visitor-mobile-list:nth-child(3n) {
    border-right: none; }
  .visitor-mobile-list:nth-child(-n+3) {
    border-bottom: 1px solid #fff; }
  .visitor-mobile-list a {
    display: block;
    width: 100%;
    height: 80px;
    color: #fff;
    text-align: center; }
    .visitor-mobile-list a:link, .visitor-mobile-list a:visited, .visitor-mobile-list a:hover, .visitor-mobile-list a:active {
      text-decoration: none; }

.visitor-icon {
  margin: 0;
  padding: 12px 0 5px 0;
  font-size: 16px;
  font-size: 1.6rem; }

.visitor-title {
  margin: 0;
  font-size: 14px;
  font-size: 1.4rem; }

.global-mobile {
  background-color: #1f77be;
  padding: 15px 0; }

.mobile-search {
  width: 90%;
  margin: 0 auto 20px auto; }

.mobile-search-box {
  position: relative;
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 6px;
  margin: 0; }
  .mobile-search-box dt {
    padding: 3px; }
  .mobile-search-box input {
    width: 86%;
    height: 30px;
    line-height: 30px;
    background: none;
    border: none; }
  .mobile-search-box dd {
    position: absolute;
    top: 0;
    right: 0; }
  .mobile-search-box button {
    display: block;
    padding: 3px;
    background: none;
    border: none; }
  .mobile-search-box span {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 24px;
    font-size: 2.4rem; }

.global-mobile-inner {
  width: 90%;
  margin: 0 auto 30px auto; }

.global-mobile-list {
  border-bottom: 1px dotted #fff; }
  .global-mobile-list:first-child {
    border-top: 1px dotted #fff; }

.global-mobile-title {
  display: block;
  width: 100%;
  height: 50px;
  padding: 0 10px;
  line-height: 50px; }
  .global-mobile-title:link, .global-mobile-title:visited, .global-mobile-title:hover, .global-mobile-title:active {
    color: #fff;
    text-decoration: none; }
  .global-mobile-title i {
    line-height: 50px; }

.link-mobile-inner {
  width: 90%;
  margin: 0 auto;
  font-size: 0;
  border: 1px dotted #fff;
  border-radius: 5px; }

.link-mobile-list {
  display: inline-block;
  width: 50%;
  font-size: 14px;
  font-size: 1.4rem;
  border-bottom: 1px dotted #fff; }
  .link-mobile-list:nth-child(odd) {
    border-right: 1px dotted #fff; }

.link-mobile-list2x {
  display: inline-block;
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem; }

.link-mobile-title {
  display: block;
  width: 100%;
  height: 50px;
  padding: 0 10px;
  line-height: 50px;
  text-align: center; }
  .link-mobile-title:link, .link-mobile-title:visited, .link-mobile-title:hover, .link-mobile-title:active {
    color: #fff;
    text-decoration: none; }
  .link-mobile-title i {
    line-height: 50px; }

footer {
  padding: 20px 0;
  background-color: #1f77be; }

.footer-wrapper {
  margin: 0 0 20px 0; }

.footer-logo {
  width: 150px;
  height: 60px;
  margin: 0 auto 10px auto;
  text-indent: -9000px;
  background: url("../images/footer_logo_sm.png") no-repeat;
  background-size: cover; }

.address {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 20px;
  color: #fff;
  text-align: center; }

.footer-nav-inner {
  margin: 0;
  padding: 0;
  list-style-type: none;
  font-size: 0; }

.footer-nav-list {
  display: inline-block;
  width: 50%; }

.footer-header > a {
  display: block;
  width: 100%;
  height: 60px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  color: #fff;
  line-height: 60px;
  text-align: center; }

.footer-link {
  display: none; }

.copyright {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  text-align: center; }

@media screen and (min-width: 768px) {
  .header-logo-link {
    width: 300px;
    height: 80px;
    margin: 0 0 0 20px;
    background: url("../images/header_logo_tb.png") no-repeat;
    background-size: cover; }

  .e-link {
    margin-right: 40px; }

  .e-link-button {
    padding: 5px;
    line-height: 80px;
    font-size: 12px;
    font-size: 1.2rem; }

  .visitor-toggle, .nav-toggle {
    margin: 20px 20px 0 0; }

  .visitor-toggle-inner, .nav-toggle-inner {
    font-size: 35px;
    font-size: 3.5rem;
    line-height: 40px; }

  .visitor-mobile-list {
    width: 20%; }
    .visitor-mobile-list:nth-child(3) {
      border-right: 1px solid #fff; }
    .visitor-mobile-list:nth-child(-n+3) {
      border-bottom: none; }

  .link-mobile-inner {
    border: none; }

  .link-mobile-list {
    width: 20%;
    border-right: 1px dotted #fff;
    border-bottom: none; }
    .link-mobile-list:first-child {
      border-left: 1px dotted #fff; }

  .link-mobile-list2x {
    width: 20%;
    border-right: 1px dotted #fff; }

  .footer-logo {
    width: 300px;
    height: 80px;
    background: url("../images/footer_logo_tb.png") no-repeat;
    background-size: cover; }

  .footer-nav-list {
    width: 33.33%; } }
@media screen and (min-width: 1024px) {
  header {
    max-width: 1024px;
    margin: 0 auto; }

  .header-logo {
    width: 395px; }

  .header-logo-link {
    width: 375px;
    height: 100px;
    margin: 15px 0 0 20px;
    background: url("../images/header_logo.png") no-repeat;
    background-size: cover; }

  .header-nav {
    width: 612px; }

  .header-nav-top {
    margin: 10px 20px 0 0; }

  .e-link {
    margin: 10px 20px 0 20px; }

  .e-link-button {
    line-height: 40px; }
    .e-link-button:hover {
      color: #fff;
      background-color: #1f77be;
      border: 1px solid #1f77be;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }

  .nav-toggle, .visitor-toggle {
    display: none; }

  .visitor-nav {
    display: inline-block; }

  .visitor-nav-inner {
    padding: 0;
    font-size: 0; }

  .visitor-nav-list {
    display: inline-block;
    margin: 0;
    text-align: center;
    border-left: 1px solid #fff; }
    .visitor-nav-list:first-child a {
      border-radius: 5px 0 0 5px; }
    .visitor-nav-list:last-child a {
      border-radius: 0 5px 5px 0; }
    .visitor-nav-list a {
      display: block;
      padding: 7px 15px;
      color: #333;
      font-size: 14px;
      font-size: 1.4rem;
      background-color: #eee; }
      .visitor-nav-list a:hover {
        color: #fff;
        background-color: #2385d4;
        text-decoration: none; }

  .visitor-icon {
    padding: 0 0 3px 0;
    font-size: 12px;
    font-size: 1.2rem; }

  .visitor-title {
    font-size: 12px;
    font-size: 1.2rem; }

  .kikin-link {
    display: inline-block;
    width: 100px;
    margin: 0 0 0 20px; }

  .kikin-link-button {
    display: block;
    padding: 7px 10px;
    color: #333;
    background-color: #eee;
    border-radius: 5px; }
    .kikin-link-button:link, .kikin-link-button:visited, .kikin-link-button:hover, .kikin-link-button:active {
      color: #333;
      text-decoration: none; }
    .kikin-link-button:hover {
      color: #fff;
      background-color: #2385d4; }

  .kikin-link-icon {
    margin: 0;
    padding: 0 0 3px 0;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: center; }

  .kikin-link-title {
    margin: 0;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: center; }

  .header-nav-bottom {
    display: block;
    margin: 10px 20px 10px 0;
    font-size: 0;
    text-align: right; }

  .header-link {
    display: inline-block; }

  .header-link-inner {
    padding: 0;
    font-size: 0;
    text-align: right; }

  .header-link-list {
    display: inline-block;
    border-right: 1px solid #aaa; }
    .header-link-list:last-child {
      border-right: none; }
    .header-link-list a {
      display: block;
      padding: 5px 10px;
      font-size: 14px;
      font-size: 1.4rem;
      color: #333; }
      .header-link-list a:hover {
        color: #1f77be;
        text-decoration: none; }

  .desktop-search {
    display: inline-block;
    width: 165px; }

  .desktop-search-box {
    position: relative;
    background-color: #fff;
    border: 1px solid #aaa;
    border-radius: 6px;
    margin: 0;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
    border-radius: 3px; }
    .desktop-search-box dt {
      padding: 3px; }
    .desktop-search-box input {
      width: 86%;
      height: 30px;
      line-height: 30px;
      background: none;
      border: none; }
    .desktop-search-box dd {
      position: absolute;
      top: 0;
      right: 0; }
    .desktop-search-box button {
      display: block;
      padding: 3px;
      background: none;
      border: none; }
    .desktop-search-box span {
      display: block;
      width: 30px;
      height: 30px;
      line-height: 30px;
      font-size: 24px;
      font-size: 2.4rem; }
    .desktop-search-box span {
      font-size: 20px;
      font-size: 2.0rem; }

  .global-nav {
    display: block;
    position: relative;
    clear: both;
    background-color: #1f77be; }

  .global-nav-inner {
    width: 960px;
    margin: 0 auto;
    padding: 0;
    font-size: 0;
    list-style-type: none; }

  .global-nav-list {
    display: inline-block;
    margin: 0; }

  .global-nav-title {
    display: block;
    width: 160px;
    height: 60px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 60px;
    text-align: center;
    background-color: #1f77be; }
    .global-nav-title:link, .global-nav-title:visited, .global-nav-title:hover, .global-nav-title:active {
      color: #fff; }
    .global-nav-title:hover {
      text-decoration: none;
      background-color: #2385d4; }

  .global-nav-title.is-active {
    background-color: #2385d4;
    transition: background 0.2s ease; }

  .panel {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    margin: auto;
    display: none;
    overflow: hidden;
    z-index: 2;
    width: 100%;
    background-color: #2385d4; }

  .panel-inner {
    width: 960px;
    margin: 0 auto;
    padding: 0;
    list-style-type: none; }

  .panel-item-4, .panel-item-5, .panel-item-6, .panel-item-7, .panel-item-8 {
    float: left;
    height: 78px;
    margin: 0; }
    .panel-item-4 > a, .panel-item-5 > a, .panel-item-6 > a, .panel-item-7 > a, .panel-item-8 > a {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      color: #fff;
      text-align: center; }
      .panel-item-4 > a:hover, .panel-item-5 > a:hover, .panel-item-6 > a:hover, .panel-item-7 > a:hover, .panel-item-8 > a:hover {
        text-decoration: none;
        background-color: #3291de; }

  .panel-item-4 {
    width: 240px; }
    .panel-item-4 > a {
      padding: 10px 45px; }

  .panel-item-5 {
    width: 192px; }
    .panel-item-5 > a {
      padding: 10px 21px; }

  .panel-item-6 {
    width: 160px; }
    .panel-item-6 > a {
      padding: 10px 17px; }

  .panel-item-7 {
    width: 137px; }
    .panel-item-7 > a {
      padding: 10px 14px; }

  .panel-item-8 {
    width: 120px; }
    .panel-item-8 > a {
      padding: 10px 10px; }

  .panel-l {
    height: 290px; }

  .panel-line2 {
    margin: 0;
    padding: 0;
    line-height: 1.3;
    text-align: left; }

  footer {
    padding: 40px 0 20px 0; }

  .footer-wrapper {
    width: 1024px;
    margin: 0 auto 40px auto;
    font-size: 0; }

  .footer-left, .footer-right {
    display: inline-block;
    vertical-align: top; }

  .footer-left {
    width: 250px; }

  .footer-right {
    width: 774px; }

  .footer-logo {
    width: 250px;
    height: 165px;
    margin: 52px 0 15px 0;
    background: url("../images/footer_logo.png") no-repeat;
    background-size: cover; }

  .address {
    text-align: left;
    text-indent: 20px; }

  .footer-nav {
    margin: 0 0 0 20px; }

  .footer-nav-list {
    display: table;
    width: 100%;
    margin: 0 0 20px 0; }
    .footer-nav-list:last-child {
      margin: 0; }

  .footer-header {
    display: table-cell;
    width: 18%;
    vertical-align: top;
    border-right: 1px solid #fff; }
    .footer-header > a {
      height: auto;
      padding: 0 20px 0 0;
      line-height: 32px;
      text-align: right; }

  .footer-link {
    display: table-cell;
    padding: 0 0 0 20px; }

  .footer-link-list {
    display: inline-block;
    margin: 0 30px 0 0; }
    .footer-link-list a {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 32px;
      color: #fff; }
      .footer-link-list a:hover {
        text-decoration: underline; } }
.swiper-container {
  width: 100%;
  height: 100%; }

.swiper-slide {
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  background: #fff;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center; }

.swiper-container.main-swiper .swiper-slide a {
  line-height: 0; }
.swiper-container.main-swiper .swiper-slide img, .swiper-container.main-swiper .swiper-slide source {
  width: 100%;
  height: 100%;
  max-width: 1280px; }

.departments {
  padding: 50px 0;
  background-color: #eee; }

.departments-title {
  width: 100%;
  margin: 0 0 20px 0;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: normal;
  color: #000;
  text-align: center; }

.departments-nav {
  width: 300px;
  margin: 0 auto;
  padding: 0;
  list-style-type: none; }

.departments-list {
  background-color: #fff; }
  .departments-list:nth-child(odd) img {
    float: right; }
  .departments-list:nth-child(even) img {
    float: left; }

.departments-link {
  display: block;
  width: 100%;
  height: 150px;
  margin: 0;
  color: #fff;
  background-color: #1f77be; }
  .departments-link:link, .departments-link:visited, .departments-link:hover, .departments-link:active {
    color: #fff;
    text-decoration: none; }

.departments-img {
  display: block;
  width: 150px;
  height: 150px; }

.departments-name {
  margin: 0 0 3px 0;
  padding: 58px 0 0 0;
  text-align: center;
  letter-spacing: 1px; }

.departments-alpha {
  margin: 0;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center; }

.pickup {
  background-color: rgba(31, 119, 190, 0.9); }

.pickup-list {
  width: 90%;
  margin: 0 auto;
  padding: 0;
  list-style-type: none; }
  .pickup-list li {
    padding: 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8;
    border-bottom: 1px dotted #fff; }
    .pickup-list li:last-child {
      border-bottom: none; }
  .pickup-list a {
    color: #fff; }

.pickup-icon {
  display: inline-block;
  width: 80px;
  margin: 0 0 5px 0;
  vertical-align: bottom;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 24px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #e06a40; }

.qrinews-top {
  padding: 50px 0 0 0; }

.qrinews-top-title {
  width: 100%;
  margin: 0 0 10px 0;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: normal;
  color: #000;
  text-align: center; }

.qrinews-arch {
  width: 90%;
  margin: 0 auto 10px auto;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right; }

.sub-swiper {
  margin-bottom: 20px;
  padding-bottom: 30px; }

.qrinews-top-link {
  position: relative;
  width: 280px;
  height: 280px;
  overflow: hidden; }

.lower-box {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: 280px;
  height: 116px;
  padding: 10px;
  background-color: rgba(31, 119, 190, 0.8);
  -webkit-transform: translateY(54px);
  -ms-transform: translateY(54px);
  transform: translateY(54px);
  -webkit-transition: all 0.5s;
  transition: all 0.5s; }

.qrinews-top-headline {
  display: table-cell;
  width: 280px;
  height: 42px;
  margin: 0;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
  vertical-align: middle; }

.qrinews-top-text {
  margin: 0;
  padding: 10px 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  text-align: left; }

.new-title {
  width: 100%;
  margin: 0 0 10px 0;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: normal;
  color: #000;
  padding: 50px 0 0 20px;
  text-align: center; }

.new-arch {
  width: 90%;
  margin: 0 auto 10px auto;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right; }

.new-wrapper {
  width: 90%;
  margin: 0 auto 20px auto;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
  border-left: 1px solid #666;
  border-radius: 5px; }

.new-tab-inner, .all-contents, .topics-contents, .admission-contents, .event-contents {
  padding: 0;
  list-style-type: none; }

.new-tab-inner {
  width: 100%;
  font-size: 0; }

.new-all-tab, .new-topics-tab, .new-admission-tab, .new-event-tab {
  display: inline-block;
  width: 50%;
  padding: 15px 0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
  border-radius: 5px 5px 0 0;
  cursor: pointer; }

.new-topics-tab, .new-admission-tab, .new-event-tab {
  border-bottom: 1px solid #666; }

.new-admission-tab {
  border-right: none; }

.new-topics-tab, .new-event-tab {
  display: none; }

.new-all, .new-topics, .new-admission, .new-event {
  padding: 15px 10px; }

.new-topics, .new-admission, .new-event {
  display: none; }

.topics-contents, .admission-contents, .event-contents {
  margin: 0; }

.new-list:not(:last-child) {
  margin: 0 0 15px 0;
  padding: 0 0 15px 0;
  border-bottom: 1px dotted #333; }

.new-header {
  margin: 0 0 7px 0; }

.new-date {
  display: inline-block;
  width: 80px;
  margin: 0;
  vertical-align: bottom;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 20px; }

.new-ann-icon {
  display: inline-block;
  width: 80px;
  margin: 0 0 0 10px;
  vertical-align: bottom;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #e06a40; }

.new-topics-icon {
  display: inline-block;
  width: 80px;
  margin: 0 0 0 10px;
  vertical-align: bottom;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #f0ba32; }

.new-admission-icon {
  display: inline-block;
  width: 80px;
  margin: 0 0 0 10px;
  vertical-align: bottom;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #4b75b9; }

.new-event-icon {
  display: inline-block;
  width: 80px;
  margin: 0 0 0 10px;
  vertical-align: bottom;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 20px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #1daf9e; }

.new-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8; }
  .new-text a:hover {
    text-decoration: underline; }

.banner {
  margin-bottom: 20px; }

.banner-contents {
  width: 320px;
  margin: 0 auto;
  padding: 0;
  list-style-type: none; }

@media screen and (min-width: 768px) {
  .departments-nav {
    width: 650px;
    font-size: 0; }

  .departments-list {
    display: inline-block;
    width: 300px; }
    .departments-list:nth-child(odd) {
      margin-right: 50px; }
    .departments-list:nth-child(-n+2) img {
      float: right; }
    .departments-list:nth-child(3) img, .departments-list:nth-child(4) img {
      float: left; }
    .departments-list:nth-child(5) img {
      float: right; }

  .departments-link {
    font-size: 16px;
    font-size: 1.6rem; }

  .pickup-header, .pickup-title {
    display: inline-block; }

  .pickup-icon {
    margin: 0 10px 0 20px; }

  .new-all-tab, .new-topics-tab, .new-admission-tab, .new-event-tab {
    width: 25%; }

  .new-admission-tab {
    border-right: 1px solid #666; }

  .new-event-tab {
    border-right: none; }

  .new-topics-tab, .new-event-tab {
    display: inline-block; }

  .new-all, .new-topics, .new-admission, .new-event {
    padding: 20px; }

  .new-list {
    *zoom: 1; }
    .new-list:after {
      content: "";
      display: table;
      clear: both; }
    .new-list:not(:last-child) {
      margin: 0 0 15px 0;
      padding: 0 0 15px 0; }

  .new-header {
    float: left;
    width: 200px;
    margin: 0; }

  .new-date {
    line-height: 25px; }

  .new-ann-icon, .new-topics-icon, .new-admission-icon, .new-event-icon {
    line-height: 25px; }

  .new-text {
    padding: 0 0 0 200px;
    line-height: 25px; }

  .banner-contents {
    width: 690px;
    font-size: 0; }

  .banner-list {
    display: inline-block;
    margin-bottom: 20px; }
    .banner-list:nth-child(odd) {
      margin-right: 50px; } }
@media screen and (min-width: 1024px) {
  .departments-title {
    display: none; }

  .departments-wrapper {
    position: relative;
    width: 1024px;
    margin: 0 auto; }

  .departments {
    padding: 0; }

  .departments-nav {
    position: absolute;
    top: -238px;
    z-index: 100;
    width: 100%; }

  .departments-list {
    width: 20%;
    background-color: inherit;
    border: none;
    border-radius: 0; }
    .departments-list:nth-child(odd) {
      margin-right: 0; }
    .departments-list:nth-child(-n+2) img {
      float: none; }
    .departments-list:nth-child(3) img, .departments-list:nth-child(4) img {
      float: none; }
    .departments-list:nth-child(5) img {
      float: none; }

  .departments-link {
    width: 150px;
    height: auto;
    margin: 0 auto;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2); }
    .departments-link img, .departments-link p {
      opacity: 1;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
    .departments-link:hover img, .departments-link:hover p {
      opacity: 0.8;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }

  .departments-img {
    float: none;
    display: block;
    width: 150px;
    height: 150px;
    margin-right: 0;
    border-radius: 5px 5px 0 0; }

  .departments-name, .departments-alpha {
    margin: 0;
    color: #fff;
    text-align: center;
    background-color: #1f77be; }

  .departments-name {
    padding: 6px 0 0 0;
    font-size: 16px;
    font-size: 1.6rem; }

  .departments-alpha {
    padding: 0 0 6px 0;
    font-size: 12px;
    font-size: 1.2rem;
    border-radius: 0 0 5px 5px; }

  .pickup-list {
    width: 960px; }
    .pickup-list li {
      font-size: 16px;
      font-size: 1.6rem; }

  .pickup-icon {
    margin: 0 20px;
    line-height: 28px; }

  .qrinews-top {
    width: 1024px;
    margin: 0 auto;
    font-size: 0; }

  .qrinews-top-title {
    display: inline-block;
    width: 70%;
    margin: 0 0 15px 0;
    padding: 0 0 0 20px;
    text-align: left; }

  .qrinews-arch {
    display: inline-block;
    width: 30%;
    margin: 0 0 15px 0;
    padding: 0 20px 0 0;
    vertical-align: bottom; }

  .sub-swiper {
    max-width: 1024px; }

  .qrinews-top-link:hover .lower-box {
    background-color: #1f77be;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }

  .collum-wrapper {
    width: 1024px;
    margin: 0 auto 50px auto;
    font-size: 0; }

  .new {
    display: inline-block;
    width: 764px;
    margin: 0 20px 0 0; }

  .new-title {
    display: inline-block;
    width: 70%;
    margin: 0 0 15px 0;
    padding: 50px 0 0 20px;
    text-align: left; }

  .new-arch {
    display: inline-block;
    width: 30%;
    margin: 0 0 15px 0;
    padding: 0 20px 0 0;
    vertical-align: bottom; }

  .new-wrapper {
    width: 100%;
    margin: 0; }

  .banner {
    display: inline-block;
    width: 240px;
    margin: 57px 0 0 0;
    vertical-align: top;
    padding: 50px 0 0 0; }

  .banner-contents {
    width: 100%;
    vertical-align: top; }

  .banner-list:nth-child(odd) {
    margin-right: 0; }
  .banner-list img {
    width: 240px;
    height: 75px; } }
.sub-image {
  width: 100%;
  height: 100%;
  max-width: 1280px;
  margin: 0 auto; }

.sub-image-inner {
  width: 100%;
  height: 100%;
  vertical-align: bottom; }

.topic-pass {
  display: none; }

.sub-title {
  width: 100%;
  margin: 20px 0;
  padding: 10px 5%;
  color: #fff;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: normal;
  background-color: #1f77be; }

.sub-heading-1st {
  margin: 20px 0;
  padding: 0 0 0 10px;
  color: #1f77be;
  font-size: 18px;
  font-size: 1.8rem;
  border-left: 5px solid #1f77be; }

.sub-heading-2nd {
  margin: 20px 0;
  color: #1f77be;
  font-size: 18px;
  font-size: 1.8rem; }

.sub-heading-3rd {
  margin: 20px 0;
  color: #333;
  font-size: 18px;
  font-size: 1.8rem; }

.sub-contents {
  width: 90%;
  margin: 0 auto 50px auto; }

.sub-text {
  margin: 0 0 40px 0;
  line-height: 1.8; }

.text-red {
  color: red;
  font-style: normal; }

.text-blue {
  color: blue;
  font-style: normal; }

.text-green {
  color: green;
  font-style: normal; }

.text-orange {
  color: orange;
  font-style: normal; }

.text-bold {
  font-weight: bold; }

.text-italic {
  font-style: italic; }

.text-underline {
  text-decoration: underline; }

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

.text-comment {
  margin: 0 0 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8; }

.sub-list {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px; }
  .sub-list > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }

.sub-list-lroman {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: lower-roman; }
  .sub-list-lroman > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }

.sub-list-uroman {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: upper-roman; }
  .sub-list-uroman > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }

.sub-list-lalpha {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: lower-alpha; }
  .sub-list-lalpha > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }

.sub-list-ualpha {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: upper-alpha; }
  .sub-list-ualpha > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }

.sub-list-round {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: none;
  list-style-position: inside; }
  .sub-list-round > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }
  .sub-list-round > li {
    text-indent: -22px;
    counter-increment: cnt; }
    .sub-list-round > li:before {
      display: marker;
      content: "(" counter(cnt) ")"; }

.sub-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .sub-table th, .sub-table td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .sub-table th {
    text-align: center;
    background-color: #eee; }

.sub-table-center {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .sub-table-center th, .sub-table-center td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .sub-table-center th {
    text-align: center;
    background-color: #eee; }
  .sub-table-center td {
    text-align: center; }

.sub-table-right {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .sub-table-right th, .sub-table-right td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .sub-table-right th {
    text-align: center;
    background-color: #eee; }
  .sub-table-right td {
    text-align: right; }

.sub-table-wrapper {
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch; }
  @media screen and (min-width: 768px) {
    .sub-table-wrapper {
      overflow-x: hidden; } }

.sub-table-scroll {
  width: 680px;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .sub-table-scroll th, .sub-table-scroll td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .sub-table-scroll th {
    text-align: center;
    background-color: #eee; }

.sub-table-block {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa; }
  .sub-table-block th, .sub-table-block td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .sub-table-block th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .sub-table-block th, .sub-table-block td {
      display: table-cell;
      border: 1px solid #aaa; } }

.sub-table-split {
  width: 100%; }
  .sub-table-split tr {
    display: block;
    margin: 0 0 20px 0; }
    .sub-table-split tr:first-child {
      margin: 0; }
  .sub-table-split th, .sub-table-split td {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8; }
  .sub-table-split th {
    display: none; }
  .sub-table-split td {
    display: block;
    padding: 15px 15px 15px 110px;
    text-indent: -110px;
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa;
    border-left: 1px solid #aaa; }
    .sub-table-split td:first-child {
      border-radius: 5px 5px 0 0; }
    .sub-table-split td:last-child {
      border-bottom: 1px solid #aaa;
      border-radius: 0 0 5px 5px; }
    .sub-table-split td:before {
      content: attr(data-label);
      display: block;
      float: left;
      width: 95px;
      padding: 0 0 0 15px;
      font-weight: bold; }
  @media screen and (min-width: 768px) {
    .sub-table-split {
      margin: 0 0 40px 0;
      border-collapse: collapse; }
      .sub-table-split tr {
        display: table-row;
        margin: 0; }
      .sub-table-split th, .sub-table-split td {
        display: table-cell;
        padding: 10px;
        border: 1px solid #aaa; }
      .sub-table-split th {
        background-color: #eee; }
      .sub-table-split td {
        text-indent: 0; }
        .sub-table-split td:first-child {
          border-radius: 0; }
        .sub-table-split td:last-child {
          border-radius: 0; }
        .sub-table-split td:before {
          display: none; } }

.table-caption-top {
  margin: 0 0 10px 0;
  text-align: right; }

.table-cell-center {
  text-align: center; }

.table-cell-right {
  text-align: right; }

.table-cell-left {
  text-align: left; }

.table-cell-w10 {
  width: 10%; }

.table-cell-w20 {
  width: 20%; }

.table-cell-w30 {
  width: 30%; }

.table-cell-w40 {
  width: 40%; }

.table-cell-w50 {
  width: 50%; }

.figure-left, .figure-right, .figure-all, .figure-half {
  margin: 0 0 40px 0;
  text-align: center; }

.figure-inner {
  max-width: 100%;
  height: auto; }

.figure-caption {
  margin: 5px 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center; }

.contents-link {
  margin: 0 0 40px 0;
  padding: 0;
  list-style-type: none; }

.contents-link-list {
  margin: 0 0 20px 0; }
  .contents-link-list a {
    display: block;
    padding: 15px;
    color: #333;
    border: solid 1px #aaa; }
    .contents-link-list a:link, .contents-link-list a:visited, .contents-link-list a:hover, .contents-link-list a:active {
      text-decoration: none; }
  .contents-link-list .fa {
    line-height: 1.5; }

.sub-nav {
  display: none; }

.pager {
  text-align: center; }

.pager-current {
  display: inline-block;
  width: 35px;
  padding: 4px 0;
  color: #fff;
  background-color: #1f77be;
  border: 1px solid #aaa;
  border-radius: 5px; }

.pager-link {
  display: inline-block;
  width: 35px;
  padding: 4px 0;
  border: 1px solid #aaa;
  border-radius: 5px; }
  .pager-link:hover {
    color: #fff;
    background-color: #1f77be;
    text-decoration: none; }

.arch-contents {
  margin: 0 0 40px 0;
  padding: 0;
  list-style-type: none; }

.rinen-container {
  width: 180px;
  margin: 0 0 40px 0;
  padding: 15px 0;
  text-align: center;
  font-weight: bold;
  line-height: 2;
  background-color: #eee;
  border: 1px solid #bbb;
  border-radius: 5px; }

.history-gen-odd {
  text-align: center;
  background-color: #ead5ff; }

.history-gen-even {
  text-align: center;
  background-color: #d5eaff; }

.history-year {
  text-align: right; }

.history-content {
  width: 60%; }

.yakusyoku-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .yakusyoku-table th, .yakusyoku-table td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .yakusyoku-table th {
    text-align: center;
    background-color: #eee; }
  .yakusyoku-table th {
    font-weight: bold; }

.list-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .list-table th, .list-table td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .list-table th {
    text-align: center;
    background-color: #eee; }
  .list-table tr:nth-child(odd) {
    background-color: #EAF6FD; }
  .list-table th, .list-table td {
    width: 33%;
    text-align: center; }
  .list-table th {
    font-weight: bold; }

.data-wrapper {
  display: table;
  margin: 0 0 20px 0; }

.data-img {
  display: table-cell;
  width: 50%; }
  .data-img img {
    width: 100%;
    max-width: 100%;
    height: auto; }

.data-text {
  display: table-cell;
  width: 50%;
  margin: 0;
  padding: 0 0 0 15px;
  line-height: 1.5;
  vertical-align: middle; }

#gmap {
  width: 100%;
  height: 300px;
  margin: 0 0 20px 0; }

.labo {
  margin: 0 0 40px 0; }

.labo-list {
  padding: 15px;
  background-color: #1f77be;
  color: #fff; }

.labo-name {
  margin: 0 0 15px 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal; }

.labo-staff {
  margin: 0 0 0 10px;
  padding: 0 0 0 10px;
  list-style-type: none;
  border-left: 2px solid #fff; }
  .labo-staff li {
    margin: 0 0 5px 0; }

.labo-text {
  *zoom: 1;
  margin: 0;
  padding: 15px;
  background-color: #eee; }
  .labo-text:after {
    content: "";
    display: table;
    clear: both; }

.labo-round {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  margin: 10px 0 10px 15px;
  list-style-type: none;
  list-style-position: inside; }
  .labo-round > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }
  .labo-round > li {
    margin: 0;
    text-indent: -22px;
    counter-increment: cnt; }
    .labo-round > li:before {
      display: marker;
      content: "(" counter(cnt) ")"; }

.labo-link {
  display: block;
  margin: 20px 0;
  padding: 5px 15px;
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  color: #1f77be;
  border: solid 1px #1f77be;
  border-radius: 5px; }
  .labo-link:link, .labo-link:visited, .labo-link:hover, .labo-link:active {
    color: #1f77be; }
  .labo-link:hover {
    color: #fff;
    text-decoration: none;
    background-color: #2385d4; }
  .labo-link .fa {
    line-height: 1.8; }

.affiliation-list {
  margin: 20px 0 0 20px;
  padding: 0;
  font-size: 14px;
  font-size: 1.4rem;
  list-style-type: none; }

.bio-list {
  margin: 0 0 40px 0; }
  .bio-list dt, .bio-list dd {
    line-height: 1.5; }
  .bio-list dt {
    margin: 0;
    font-weight: bold; }
  .bio-list dd {
    margin: 0 0 15px 10px;
    padding: 0; }

.program-list {
  margin: 0 0 40px 0;
  padding: 10px;
  font-size: 0;
  background-color: #1f77be;
  border-radius: 10px; }
  .program-list dt, .program-list dd {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff; }
  .program-list dt {
    width: 50%;
    padding: 5px 0;
    vertical-align: top; }
  .program-list dd {
    width: 50%;
    margin: 0;
    padding: 5px 0; }

.job-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa; }
  .job-table th, .job-table td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .job-table th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .job-table th, .job-table td {
      display: table-cell;
      border: 1px solid #aaa; } }

.oshirase {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  .oshirase li:not(:last-child) {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px dotted #333; }

.oshirase-date {
  margin-bottom: 5px; }
  .oshirase-date p {
    display: inline-block;
    width: 80px;
    margin: 0;
    vertical-align: bottom;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 20px; }

.oshirase-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px; }
  .oshirase-text a:hover {
    text-decoration: underline; }

.list-right {
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
  list-style-type: none; }
  .list-right > li {
    margin: 0 0 10px 0;
    line-height: 1.8; }
  .list-right li {
    margin: 0;
    text-align: right; }

.schedule-bc1 {
  background-color: #fcc; }

.schedule-bc2 {
  background-color: #fc9; }

.schedule-bc3 {
  font-style: italic;
  background-color: #ffc; }

.schedule-bc4 {
  background-color: #9f9; }

.calendar-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .calendar-table th, .calendar-table td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .calendar-table th {
    text-align: center;
    background-color: #eee; }
  .calendar-table th, .calendar-table td {
    width: 33%; }

.report-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa; }
  .report-table th, .report-table td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .report-table th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .report-table th, .report-table td {
      display: table-cell;
      border: 1px solid #aaa; } }

.report-more {
  margin: 0 0 50px 0; }

.report-link {
  display: block;
  margin: 20px 0;
  padding: 5px 15px;
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  color: #1f77be;
  border: solid 1px #1f77be;
  border-radius: 5px; }
  .report-link:link, .report-link:visited, .report-link:hover, .report-link:active {
    color: #1f77be; }
  .report-link:hover {
    color: #fff;
    text-decoration: none;
    background-color: #2385d4; }

.ossep-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa; }
  .ossep-table th, .ossep-table td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .ossep-table th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .ossep-table th, .ossep-table td {
      display: table-cell;
      border: 1px solid #aaa; } }

.ossep-poster {
  margin: 0;
  padding: 0;
  font-size: 0;
  list-style-type: none; }
  .ossep-poster li {
    display: inline-block;
    width: 100%;
    margin: 0 0 40px 0; }
  .ossep-poster img {
    display: block;
    margin: 0 auto; }

.etraining-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa;
  margin: 0 0 20px 0; }
  .etraining-table th, .etraining-table td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .etraining-table th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .etraining-table th, .etraining-table td {
      display: table-cell;
      border: 1px solid #aaa; } }

.topics {
  margin: 0 0 40px 0;
  padding: 0;
  list-style-type: none; }
  .topics li:not(:last-child) {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px dotted #333; }

.topics-date {
  margin-bottom: 5px; }
  .topics-date p {
    display: inline-block;
    width: 80px;
    margin: 0;
    vertical-align: bottom;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 20px; }

.topics-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px; }
  .topics-text a:hover {
    text-decoration: underline; }

.oc-event {
  margin: 0 0 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #aaa;
  border-radius: 5px; }

.oc-event-figure {
  margin: 0;
  text-align: center; }
  .oc-event-figure img {
    display: block;
    max-width: 100%;
    height: auto; }

.oc-event-title {
  margin: 0;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 40px;
  text-align: center;
  background-color: #1f77be; }

.oc-event-schedule {
  margin: 0;
  padding: 15px; }
  .oc-event-schedule dt {
    color: #1f77be;
    font-weight: bold; }
  .oc-event-schedule dd {
    margin: 0 0 10px 0;
    padding: 0 0 0 10px; }
    .oc-event-schedule dd:last-child {
      margin: 0; }

.oc-event-link {
  display: block;
  margin: 0 20px 20px 20px;
  padding: 5px 15px;
  background-color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  color: #1f77be;
  border: solid 1px #1f77be;
  border-radius: 5px; }
  .oc-event-link:link, .oc-event-link:visited, .oc-event-link:hover, .oc-event-link:active {
    color: #1f77be; }
  .oc-event-link:hover {
    color: #fff;
    text-decoration: none;
    background-color: #2385d4; }
  .oc-event-link .fa {
    line-height: 1.8; }

.oc-timetable-wrapper {
  margin: 0 0 70px 0;
  background-image: url("../koho/topics/images/oc_line_01.png");
  background-repeat: repeat-y;
  background-position: left top; }

.oc-timetable {
  margin: 0 0 40px 0;
  font-size: 0; }
  .oc-timetable:last-child {
    margin: 0; }

.oc-timetable-arrow {
  display: inline-block;
  width: 15%;
  padding: 12px 0 0 0;
  vertical-align: top;
  overflow: hidden; }

.oc-timetable-text, .oc-timetable-image {
  display: inline-block;
  width: 85%;
  padding: 10px;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #aaa;
  border-radius: 5px; }

.oc-timetable-inner {
  font-size: 14px;
  font-size: 1.4rem; }

.oc-time {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold; }

.oc-title {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #1f77be; }

.oc-timetable-figure {
  margin: 10px 0 0 0;
  padding: 0; }
  .oc-timetable-figure img {
    max-width: 100%;
    height: auto; }

.oc-notes {
  margin: 0 0 70px 0;
  line-height: 1.8;
  font-size: 14px;
  font-size: 1.4rem; }

.magazine {
  margin: 0; }

.magazine-img {
  margin: 0 0 20px 0; }
  .magazine-img img {
    width: 100%;
    max-width: 100%;
    height: auto; }

.magazine-contents {
  margin: 0 0 0 15px; }

.backnumber-wrapper {
  display: table;
  margin: 0 0 20px 0; }

.backnumber-img {
  display: table-cell;
  width: 50%; }
  .backnumber-img img {
    width: 100%;
    max-width: 100%;
    height: auto; }

.backnumber-text {
  display: table-cell;
  width: 50%;
  margin: 0;
  padding: 0 0 0 10px;
  line-height: 1.5;
  vertical-align: middle; }

.kobo {
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch; }
  @media screen and (min-width: 768px) {
    .kobo {
      overflow-x: hidden; } }

.kobo-list {
  width: 680px;
  margin: 0 0 40px 0;
  border-collapse: collapse; }
  .kobo-list th, .kobo-list td {
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .kobo-list th {
    text-align: center;
    background-color: #eee; }
  .kobo-list tr {
    border-bottom: 1px solid #ccc; }
  .kobo-list td {
    padding: 0;
    line-height: 1.5;
    vertical-align: middle;
    border: none; }

.kobo-title {
  width: 50%; }
  .kobo-title a {
    display: inline-block;
    width: 100%;
    padding: 20px 10px; }

.kobo-begin, .kobo-end {
  display: inline-block;
  width: 70px;
  padding: 5px 0;
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  text-align: center;
  border-radius: 5px; }

.kobo-begin {
  background-color: #20bf55; }

.kobo-end {
  background-color: #ee8434; }

.kobo-table {
  width: 100%;
  margin: 0 0 40px 0;
  border-collapse: collapse;
  border-top: 1px solid #aaa; }
  .kobo-table th, .kobo-table td {
    display: block;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.8;
    vertical-align: top;
    border: 1px solid #aaa; }
  .kobo-table th {
    text-align: center;
    background-color: #eee;
    border-top: none;
    border-bottom: none; }
  @media screen and (min-width: 768px) {
    .kobo-table th, .kobo-table td {
      display: table-cell;
      border: 1px solid #aaa; } }

.kikin-tax {
  margin: 0 0 40px 0;
  padding: 20px;
  line-height: 1.8;
  background-color: #f6f6f6; }

.kikin-send {
  margin: 0 0 10px 0;
  padding: 15px;
  color: #fff;
  line-height: 1.8;
  text-align: center;
  background-color: #1f77be;
  border-radius: 5px; }

.kikin-wrapper {
  padding: 0;
  font-size: 0; }

.kikin-inner {
  display: inline-block;
  width: 100%;
  margin: 0 0 40px 0;
  padding: 15px;
  color: #1f77be;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
  border: 1px solid #1f77be;
  border-radius: 5px; }
  .kikin-inner:last-child {
    margin: 0 0 10px 0; }

.kikin-title {
  margin: 0 0 10px 0;
  font-weight: bold; }

.kikin-contact {
  margin: 0; }

.sitemap-wrapper {
  margin: 0 0 40px 0;
  font-size: 0; }

.sitemap-block {
  display: inline-block;
  width: 100%;
  vertical-align: top; }

.sitemap-1st-layer {
  margin: 30px 0;
  padding: 0 0 3px 10px;
  color: #1f77be;
  font-size: 18px;
  font-size: 1.8rem;
  border-bottom: 2px solid #1f77be; }

.sitemap-2nd-layer {
  margin: 0 0 30px 0;
  padding: 0 0 0 10px;
  color: #1f77be;
  font-size: 16px;
  font-size: 1.6rem; }

.sitemap-list {
  margin: 0 0 30px 0;
  padding: 0;
  list-style-type: none; }
  .sitemap-list > li {
    margin: 0 0 10px 0;
    padding: 0 0 0 20px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8;
    color: #1f77be; }

.mb0 {
  margin-bottom: 0px; }

.mb10 {
  margin-bottom: 10px; }

.mb20 {
  margin-bottom: 20px; }

.mb30 {
  margin-bottom: 30px; }

.mb40 {
  margin-bottom: 40px; }

.mb50 {
  margin-bottom: 50px; }

.mb70 {
  margin-bottom: 70px; }

.mb100 {
  margin-bottom: 100px; }

@media screen and (min-width: 768px) {
  .topic-pass {
    display: block; }
    .topic-pass p {
      width: 90%;
      margin: 15px auto;
      font-size: 14px;
      font-size: 1.4rem; }
    .topic-pass a:hover {
      text-decoration: underline; }

  .sub-title {
    margin: 0 0 20px 0; }

  .sub-heading-1st {
    margin: 0 0 20px 0; }

  .text-comment {
    text-align: right; }

  .figure-right {
    display: table;
    float: right;
    width: 200px;
    margin: 0 0 20px 20px; }

  .figure-left {
    display: table;
    float: left;
    width: 200px;
    margin: 0 20px 20px 0; }

  .figure-half {
    float: left;
    width: 50%;
    margin: 0 0 40px 0; }

  .figure-inner {
    max-width: none; }

  .figure-caption {
    text-align: left; }

  .history-content {
    width: 80%; }

  .list-table th:nth-child(1), .list-table td:nth-child(1) {
    width: 30%; }
  .list-table th:nth-child(2), .list-table td:nth-child(2) {
    width: 20%; }
  .list-table th:nth-child(3), .list-table td:nth-child(3) {
    width: 50%; }

  .data {
    *zoom: 1; }
    .data:after {
      content: "";
      display: table;
      clear: both; }

  .data-wrapper {
    float: left;
    width: 50%; }

  .data-text {
    padding: 0 15px; }

  #gmap {
    height: 450px; }

  .labo-link {
    float: right;
    margin: 15px 0 0 0;
    line-height: 1.8; }

  .math-list dt {
    width: 35%; }
  .math-list dd {
    width: 65%; }

  .bio-list {
    margin: 0 10px 40px 10px;
    font-size: 0; }
    .bio-list dt, .bio-list dd {
      display: inline-block;
      font-size: 16px;
      font-size: 1.6rem; }
    .bio-list dt {
      width: 25%;
      padding: 5px 0 5px 0;
      font-weight: normal;
      vertical-align: top; }
    .bio-list dd {
      width: 75%;
      margin: 0;
      padding: 5px 0 5px 10px; }

  .program-list {
    padding: 15px; }
    .program-list dt {
      width: 20%; }
    .program-list dd {
      width: 80%; }
      .program-list dd:before {
        content: "："; }

  .job-table th {
    width: 30%; }
  .job-table td {
    width: 70%; }

  .oshirase li {
    *zoom: 1; }
    .oshirase li:after {
      content: "";
      display: table;
      clear: both; }
    .oshirase li:not(:last-child) {
      margin: 0 0 15px 0;
      padding: 0 0 15px 0; }

  .oshirase-date {
    float: left;
    width: 100px;
    margin: 0; }
    .oshirase-date p {
      line-height: 25px; }

  .oshirase-text {
    padding: 0 0 0 100px;
    line-height: 25px; }

  .report-table th {
    width: 30%; }
  .report-table td {
    width: 70%; }

  .report-link {
    float: right;
    margin: 15px 0 0 0;
    line-height: 1.8; }

  .ossep-table th {
    width: 20%; }
  .ossep-table td {
    width: 80%; }

  .ossep-poster li {
    width: 50%;
    margin: 0;
    vertical-align: top; }

  .etraining-table th {
    width: 30%;
    vertical-align: middle; }
  .etraining-table td {
    width: 70%; }

  .topics li {
    *zoom: 1; }
    .topics li:after {
      content: "";
      display: table;
      clear: both; }
    .topics li:not(:last-child) {
      margin: 0 0 15px 0;
      padding: 0 0 15px 0; }

  .topics-date {
    float: left;
    width: 100px;
    margin: 0; }
    .topics-date p {
      line-height: 25px; }

  .topics-text {
    padding: 0 0 0 100px;
    line-height: 25px; }

  .oc-event {
    display: inline-block;
    width: 320px;
    vertical-align: top; }
    .oc-event:nth-child(even) {
      margin: 0 0 40px 30px; }

  .oc-timetable-arrow {
    width: 10%; }

  .oc-timetable-text, .oc-timetable-image {
    width: 90%; }

  .oc-timetable-image {
    font-size: 0; }

  .oc-timetable-inner {
    display: inline-block;
    width: 325px;
    font-size: 14px;
    font-size: 1.4rem;
    vertical-align: top; }

  .oc-timetable-figure {
    display: inline-block;
    width: 250px;
    margin: 0 0 0 15px; }

  .magazine {
    font-size: 0; }

  .magazine-img {
    display: inline-block;
    width: 50%; }

  .magazine-contents {
    display: inline-block;
    width: 50%;
    margin: 0;
    padding: 0 0 0 30px;
    vertical-align: top;
    font-size: 16px;
    font-size: 1.6rem; }

  .backnumber {
    *zoom: 1; }
    .backnumber:after {
      content: "";
      display: table;
      clear: both; }

  .backnumber-wrapper {
    float: left;
    width: 50%; }

  .kobo-table th {
    width: 20%;
    text-align: left; }

  .kikin-send {
    width: 350px;
    margin: 0 auto 10px auto; }

  .kikin-inner {
    width: 330px;
    margin: 0 0 10px 0; }
    .kikin-inner:last-child {
      margin: 0 0 10px 20px; }

  .sitemap-block {
    width: 50%; }
    .sitemap-block:first-child {
      padding: 0 10px 0 0; }
    .sitemap-block:nth-child(2) {
      padding: 0 0 0 10px; } }
@media screen and (min-width: 1024px) {
  .topic-pass p {
    width: 960px;
    margin: 20px auto;
    padding: 0 20px; }

  .container {
    width: 960px;
    margin: 0 auto;
    font-size: 0; }

  .sub-wrapper {
    display: inline-block;
    width: 720px;
    vertical-align: top;
    font-size: 16px;
    font-size: 1.6rem; }

  .sub-contents {
    width: 100%;
    padding: 0 20px; }

  .sub-title {
    padding: 10px 20px; }

  .contents-link-list a:hover {
    background-color: #eee;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }

  .sub-nav {
    display: inline-block;
    width: 240px;
    vertical-align: top;
    font-size: 16px;
    font-size: 1.6rem; }

  .sub-nav-inner {
    margin: 0 0 50px 20px;
    padding: 0;
    list-style-type: none; }

  .sub-nav-header {
    width: 100%;
    height: 70px;
    padding: 0 0 0 20px;
    color: #fff;
    line-height: 70px;
    background-color: #1f77be;
    border-radius: 5px 5px 0 0; }

  .sub-nav-list {
    border-right: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
    border-left: 1px solid #aaa; }
    .sub-nav-list:first-child {
      border-top: 1px solid #aaa; }
    .sub-nav-list:last-child {
      border-radius: 0 0 5px 5px; }

  .sub-nav-title {
    display: block;
    padding-left: 20px;
    height: 60px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 60px;
    color: #333;
    cursor: pointer; }
    .sub-nav-title:link, .sub-nav-title:visited, .sub-nav-title:hover, .sub-nav-title:active {
      color: #333; }
    .sub-nav-title:hover {
      text-decoration: none;
      background-color: #eee;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }

  .sub-twitter {
    margin: 0 0 50px 20px; }

  .acc-check {
    display: none; }

  .acc-inner {
    padding: 0;
    list-style-type: none; }

  .acc-list {
    max-height: 0;
    overflow-y: hidden;
    -webkit-transition: all 0.5s;
    transition: all 0.5s; }

  .acc-item {
    display: block;
    padding-left: 36px;
    height: 45px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 45px;
    color: #333; }
    .acc-item:link, .acc-item:visited, .acc-item:hover, .acc-item:active {
      color: #333; }
    .acc-item:hover {
      text-decoration: none;
      background-color: #eee;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }

  #acc-title01:checked ~ #acc-links01 li,
  #acc-title02:checked ~ #acc-links02 li,
  #acc-title03:checked ~ #acc-links03 li,
  #acc-title04:checked ~ #acc-links04 li,
  #acc-title05:checked ~ #acc-links05 li,
  #acc-title06:checked ~ #acc-links06 li {
    max-height: 45px;
    opacity: 1;
    border-bottom: 1px dotted #aaa; }
    #acc-title01:checked ~ #acc-links01 li:first-child,
    #acc-title02:checked ~ #acc-links02 li:first-child,
    #acc-title03:checked ~ #acc-links03 li:first-child,
    #acc-title04:checked ~ #acc-links04 li:first-child,
    #acc-title05:checked ~ #acc-links05 li:first-child,
    #acc-title06:checked ~ #acc-links06 li:first-child {
      border-top: 1px dotted #aaa; }
    #acc-title01:checked ~ #acc-links01 li:last-child,
    #acc-title02:checked ~ #acc-links02 li:last-child,
    #acc-title03:checked ~ #acc-links03 li:last-child,
    #acc-title04:checked ~ #acc-links04 li:last-child,
    #acc-title05:checked ~ #acc-links05 li:last-child,
    #acc-title06:checked ~ #acc-links06 li:last-child {
      border-bottom: none; } }
.qrinews-toggle {
  width: 100%;
  background-color: #1f77be; }

.qrinews-toggle-inner {
  display: block;
  width: 100%;
  padding: 15px 0;
  color: #fff;
  text-align: center; }
  .qrinews-toggle-inner:link, .qrinews-toggle-inner:visited, .qrinews-toggle-inner:hover, .qrinews-toggle-inner:active {
    color: #fff;
    text-decoration: none;
    cursor: pointer; }

.qrinews-menu {
  position: absolute;
  z-index: 2;
  visibility: collapse;
  width: 100%;
  opacity: 0;
  transition: opacity 0.3s linear, visibility 0.3s linear; }

.qrinews-menu-inner {
  padding: 0;
  font-size: 0;
  border-top: 1px solid #fff; }

.qrinews-menu-list {
  display: inline-block;
  width: 50%;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  background-color: #23a2d4; }
  .qrinews-menu-list:nth-child(2n-1) {
    border-right: 1px solid #fff; }
  .qrinews-menu-list:nth-child(-n+6) {
    border-bottom: 1px solid #fff; }
  .qrinews-menu-list:hover {
    background-color: #3291de; }
  .qrinews-menu-list:link, .qrinews-menu-list:visited, .qrinews-menu-list:hover, .qrinews-menu-list:active {
    cursor: pointer; }

.qrinews-menu-list-link {
  display: block;
  width: 100%;
  height: 100%;
  padding: 15px 0;
  color: #fff; }
  .qrinews-menu-list-link:link, .qrinews-menu-list-link:visited, .qrinews-menu-list-link:hover, .qrinews-menu-list-link:active {
    color: #fff;
    text-decoration: none; }

.qrinews-menu-all {
  display: inline-block;
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  background-color: #23a2d4; }
  .qrinews-menu-all:hover {
    background-color: #3291de; }

.qrinews-menu-all-link {
  display: block;
  width: 100%;
  height: 100%;
  padding: 15px 0;
  color: #fff; }
  .qrinews-menu-all-link:link, .qrinews-menu-all-link:visited, .qrinews-menu-all-link:hover, .qrinews-menu-all-link:active {
    color: #fff;
    text-decoration: none; }

.qrinews-menu-active {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.3s linear, visibility 0.3s linear; }

.sci-today-thumbnail {
  display: inline-block;
  margin: 0 0 20px 0; }

.sci-today-thumbnail-link {
  font-size: 0; }
  .sci-today-thumbnail-link:link, .sci-today-thumbnail-link:visited, .sci-today-thumbnail-link:hover, .sci-today-thumbnail-link:active {
    color: #fff;
    text-decoration: none; }

.sci-today-thumbnail-element {
  width: 25%;
  vertical-align: middle; }

.logue-face {
  vertical-align: top;
  border-radius: 50%;
  width: 14%;
  max-width: 75px; }

.logue-face-hidden {
  visibility: hidden; }

.logue-left, .logue-right {
  display: inline-block;
  max-width: 75%;
  background: #2385d4;
  border-radius: 10px;
  padding: 5px;
  position: relative;
  color: white; }
  .logue-left a, .logue-right a {
    color: white; }
  .logue-left:before, .logue-right:before {
    top: 10px;
    position: absolute;
    content: '';
    border-style: solid; }

.logue-left {
  margin: 10px 5px 5px 20px; }

.logue-right {
  margin: 10px 20px 5px 5px; }

.logue-left:before {
  border-width: 0 20px 10px 0;
  border-color: transparent #2385d4 transparent transparent;
  left: -18px; }

.logue-right:before {
  border-width: 0 0 10px 20px;
  border-color: transparent transparent transparent #2385d4;
  right: -18px; }

.inline-img-eqn {
  vertical-align: middle; }

.qrinews-inner {
  max-width: 100%;
  max-height: 300px;
  width: auto;
  height: auto; }

.qrinews-inner-long {
  max-width: 100%;
  max-height: 200%;
  width: auto;
  height: auto; }

a[class|="link-to"]:after {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 1.28571429em;
  text-align: center; }

.link-to-external-page:after {
  content: "\f08e"; }

.link-to-internal-page:after {
  content: "\f0c1"; }

.link-to-upper-part:after {
  content: "\f102"; }

.link-to-lower-part:after {
  content: "\f103"; }

.link-to-original-part:after {
  content: "\f0e2"; }

.link-to-pdf-file:after {
  content: "\f1c1"; }

.link-to-video-file:after {
  content: "\f1c8"; }

.qrinews-command-line {
  display: block;
  padding: 5px;
  color: White;
  background-color: Black; }

.image-list-hidden {
  display: none; }

.qri-bottom-right {
  display: none; }

.en {
  ruby-position: after; }

.qrinews-abstract-headline {
  margin: 20px 0;
  text-align: left;
  color: #1f77be;
  font-size: 18px;
  font-size: 1.8rem; }

.qrinews-tab-switch {
  display: none; }

article.cat-1 {
  display: block; }

article.cat-2 {
  display: block; }

article.cat-3 {
  display: block; }

article.cat-4 {
  display: block; }

article.cat-5 {
  display: block; }

.qrinews-nav-sticky {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0; }

.qrinews-nav-button {
  position: -webkit-sticky;
  position: sticky;
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 60px;
  margin: 0;
  padding: 0;
  background: #fff;
  border-top: solid 3px #fff; }
  .qrinews-nav-button .qrinews-nav-item-button {
    display: table-cell;
    color: #fff;
    background-color: #1f77be;
    border-left: solid 1px #fff;
    border-right: solid 1px #fff;
    border-radius: 5px; }
    .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button {
      display: block;
      width: 100%;
      height: 60px;
      padding-top: 5px;
      padding-bottom: 5px;
      font-size: 0.9rem;
      text-align: center;
      color: #fff;
      border: solid 2px #1f77be;
      border-radius: 5px; }
      .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button:link, .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button:visited {
        text-decoration: none; }
      .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button:hover, .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button:active {
        color: #1f77be;
        text-decoration: none;
        background-color: white; }
      .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button i {
        padding: 5px;
        font-size: 2rem; }
  .qrinews-nav-button .button-large-window {
    display: none; }

.balloon-left, .balloon-right {
  display: none;
  width: 200px;
  position: absolute;
  bottom: 58px;
  padding: 10px;
  border-radius: 10px;
  border: 1.5px solid black;
  background: #fff;
  text-align: center; }
  .balloon-left figcaption, .balloon-right figcaption {
    text-align: left;
    color: black; }
  .balloon-left:before, .balloon-right:before {
    content: "";
    position: absolute;
    border: 13px solid transparent;
    border-top: 13px solid #fff;
    bottom: -25px;
    z-index: 2; }
  .balloon-left:after, .balloon-right:after {
    content: "";
    position: absolute;
    border: 14px solid transparent;
    border-top: 14px solid black;
    bottom: -28px;
    z-index: 1; }

@media screen and (min-width: 768px) {
  a:hover + .balloon-left, a:hover + .balloon-right {
    display: block; } }

.balloon-left {
  margin-left: -10px; }
  .balloon-left:before {
    left: 20px; }
  .balloon-left:after {
    left: 19px; }

.balloon-right {
  margin-left: calc(16.7% - 192px); }
  .balloon-right:before {
    right: 20px; }
  .balloon-right:after {
    right: 19px; }

.within-balloon {
  max-width: 150px;
  max-height: 150px; }

.qrinews-figure-title {
  font-weight: bold; }

.qrinews-figure {
  margin: 0 auto 40px auto;
  text-align: center;
  max-width: 500px; }
  .qrinews-figure .qrinews-figcaption {
    text-align: left;
    padding-left: 2.5em;
    text-indent: -2.5em; }
    .qrinews-figure .qrinews-figcaption a:after {
      margin-left: 1.2em;
      margin-right: -1.2em; }
  .qrinews-figure .qrinews-figcaption-no-indent {
    text-align: left; }
  .qrinews-figure .qrinews-table-heading {
    text-align: left;
    padding-left: 2.5em;
    text-indent: -2.5em; }
  .qrinews-figure .qrinews-table-footnote {
    text-align: left; }
  .qrinews-figure video {
    width: 100%;
    max-width: 400px; }

/*
.topics-abstract {		//section
	margin: 0 0 40px 0;
	border-bottom: 1px dotted #333;
}
*/
.figure-author {
  float: right;
  width: 120px;
  height: 120px;
  margin: 0 0 10px 10px; }

.figure-author2 {
  text-align: center;
  width: auto;
  height: auto;
  margin: 0 auto 10px auto; }

.topics-abstract-text {
  margin: 0 0 15px 0;
  line-height: 1.8; }

.topics-author {
  *zoom: 1;
  margin: 0;
  padding: 0 0 15px 0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right;
  margin: 0 0 40px 0;
  border-bottom: 1px dotted #333; }
  .topics-author:after {
    content: "";
    display: table;
    clear: both; }

.topics-main {
  margin: 0 0 40px 0; }

.topics-appendix, .topics-reference, .topics-notes {
  margin: 0 0 40px 0;
  padding: 15px;
  font-size: 14px;
  font-size: 1.4rem;
  background-color: #eee; }
  .topics-appendix p, .topics-reference p, .topics-notes p {
    margin: 0 0 20px 0; }

.topics-reference dl {
  *zoom: 1;
  margin: 0;
  word-wrap: break-word; }
  .topics-reference dl:after {
    content: "";
    display: table;
    clear: both; }
  .topics-reference dl:not(:last-child) {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: 1px dotted #333; }
.topics-reference dt {
  float: left;
  width: 25%; }
.topics-reference dd {
  float: left;
  width: 75%;
  margin: 0 0 10px 0; }

.topics-notes ul {
  margin: 0 0 20px 0;
  padding: 0 0 0 20px; }
.topics-notes li {
  list-style-type: none;
  list-style-position: inside;
  margin: 0 0 10px 0;
  line-height: 1.5;
  text-indent: -20px;
  counter-increment: cnt; }
  .topics-notes li:first-child {
    margin-top: -10px; }
.topics-notes a:not(.link-to-original-part):after {
  text-align: right;
  padding-right: 0.2em; }

.topics-phys-icon {
  display: inline-block;
  width: 50px;
  margin: 0 10px 0 0;
  padding: 5px 5px 2px 5px;
  vertical-align: middle;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #ed384a;
  border-radius: 3px; }

.topics-chem-icon {
  display: inline-block;
  width: 50px;
  margin: 0 10px 0 0;
  padding: 5px 5px 2px 5px;
  vertical-align: middle;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #e06a40;
  border-radius: 3px; }

.topics-geo-icon {
  display: inline-block;
  width: 50px;
  margin: 0 10px 0 0;
  padding: 5px 5px 2px 5px;
  vertical-align: middle;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #f0ba32;
  border-radius: 3px; }

.topics-math-icon {
  display: inline-block;
  width: 50px;
  margin: 0 10px 0 0;
  padding: 5px 5px 2px 5px;
  vertical-align: middle;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #4b75b9;
  border-radius: 3px; }

.topics-bio-icon {
  display: inline-block;
  width: 50px;
  margin: 0 10px 0 0;
  padding: 5px 5px 2px 5px;
  vertical-align: middle;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 20px;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  font-style: normal;
  background-color: #1daf9e;
  border-radius: 3px; }

.within-p {
  margin: -40px 0 0 20px;
  padding: 5px 0 5px 20px; }

.parentheses {
  margin: -40px 0 0 0;
  padding: 5px 0 5px 20px; }
  .parentheses li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt; }
    .parentheses li:before {
      display: marker;
      content: "(" counter(cnt) ") "; }

.proper-name {
  font-weight: bold; }

.scientific-name {
  font-style: italic; }

.mathvar {
  font-family: Times; }

.matheqn {
  font-family: Times;
  margin: 0 0.25em; }

.eqnarray {
  font-family: Times;
  margin: 0 0 0 2em; }

.i {
  font-style: italic; }

.marker {
  font-style: normal;
  font-weight: bold; }

dfn.marker {
  background: -webkit-linear-gradient(transparent 40%, #66ccff 40%);
  background: -moz-linear-gradient(transparent 40%, #66ccff 40%);
  background: linear-gradient(rgba(0, 0, 0, 0) 40%, #66ccff 40%); }

strong.marker {
  background: -webkit-linear-gradient(transparent 40%, #66ffcc 40%);
  background: -moz-linear-gradient(transparent 40%, #66ffcc 40%);
  background: linear-gradient(rgba(0, 0, 0, 0) 40%, #66ffcc 40%); }

cite[lang|="ja"] {
  font-style: normal;
  font-weight: bold; }

.article {
  font-style: normal;
  color: #1f77be; }

.fig {
  font-style: normal;
  color: #1f77be; }

dfn.fig {
  font-weight: bold; }

.figsub {
  font-style: normal;
  font-weight: bold; }

.figure-topics {
  margin: 0 auto 40px auto;
  text-align: center;
  max-width: 500px; }
  .figure-topics figcaption {
    text-align: left;
    padding-left: 2.5em;
    text-indent: -2.5em; }

.qrinews-youtube {
  width: 100%;
  aspect-ratio: 16 / 9; }

.qrinews-gmap {
  width: 100%;
  aspect-ratio: 4 / 3; }

.topics-red {
  color: red;
  font-weight: normal; }

/*
.qri-point {      //strong
}
*/
.topics-bold {
  font-weight: bold; }

.arch {
  margin: 0 0 50px 0; }

.arch-img {
  width: 75%;
  margin: 0 auto 10px auto; }
  .arch-img img {
    width: 100%;
    max-width: 100%;
    height: auto; }

.arch-date {
  margin: 20px 0;
  padding: 0 0 0 10px;
  border-left: 5px solid #1f77be; }

.arch-title {
  margin: 0 0 10px 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal; }

.arch-summary {
  margin: 0 0 20px 0;
  line-height: 1.8; }

.arch-author {
  margin: 0 0 10px 0;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: right; }

.arch-more {
  display: block;
  margin: 0;
  line-height: 2.0;
  padding: 5px 15px 3px 15px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #1f77be;
  text-align: center;
  background-color: #fff;
  border: solid 1px #1f77be;
  border-radius: 5px; }
  .arch-more:link, .arch-more:visited, .arch-more:hover, .arch-more:active {
    color: #1f77be; }

.qrinews-share-button {
  display: flex;
  width: calc(98px + 10px + 105px);
  margin: -20px 1px 20px auto; }
  .qrinews-share-button .fb-share-button {
    margin-left: 10px; }

.qrinews-mathbox {
  overflow: scroll hidden;
  padding: 15px 0 10px 0;
  margin-bottom: 5px; }

.qrinews-itembox {
  border: 2px solid #aaa;
  border-radius: 20px;
  padding: 10px 20px 15px 20px; }

@media screen and (min-width: 768px) {
    /*
    .qrinews-nav-list {     //li
        width: 16.666%;
        border-right: 1px dotted #fff;
        border-bottom: 1px dotted #fff;

        &:nth-child(2n-1) {
            border-right: 1px dotted #fff;
        }

        &:nth-child(-n+6) {
            border-bottom: 1px dotted #fff;
        }
    }
    */
  .qrinews-nav-button {
    height: 70px; }
    .qrinews-nav-button .qrinews-nav-item-button .qrinews-nav-link-button {
      height: 70px;
      padding-top: 10px;
      padding-bottom: 10px;
      font-size: 1.2rem; }
    .qrinews-nav-button .button-large-window {
      display: block; }
    .qrinews-nav-button .button-small-window {
      display: none; }

  .topics-reference dt {
    width: 15%; }
  .topics-reference dd {
    width: 85%; }

  .qrinews-figure video {
    max-height: 300px;
    max-width: 500px; }

  .figure-author2 {
    float: right;
    width: 200px;
    margin: 0 0 10px 10px; }

  .logue-left, .logue-right {
    margin: 10px 20px 5px 20px; }

  .qri-bottom-right {
    display: block;
    position: absolute;
    bottom: 0;
    right: -30px; }

  .iframe-topics {
    width: 480px;
    height: 270px; }

  .qrinews-youtube {
    width: 560px;
    height: 315px; }

  .qrinews-gmap {
    width: 600px;
    height: 450px; }

  .arch-wrapper {
    margin: 0 0 40px 0; }

  .arch {
    margin: 0;
    padding: 40px 0;
    font-size: 0;
    border-bottom: 1px solid #ccc; }
    .arch:first-child {
      padding: 20px 0 40px 0; }
    .arch:last-child {
      border-bottom: none; }

  .arch-date {
    margin: 0 0 20px 0;
    font-size: 16px;
    font-size: 1.6rem; }

  .arch-title {
    font-size: 20px;
    font-size: 2.0rem; }

  .arch-author {
    margin: 0 0 20px 0;
    font-size: 16px;
    font-size: 1.6rem; }

  .arch-img {
    display: inline-block;
    width: 40%;
    margin: 0;
    padding: 0 20px 0 0; }

  .arch-abstract {
    display: inline-block;
    width: 60%;
    vertical-align: top; }

  .arch-summary {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8; }

  .arch-more {
    float: right; }
    .arch-more:hover {
      color: #fff;
      text-decoration: none;
      background-color: #2385d4; }

  .sci-today-thumbnail {
    margin: 0 0 40px 0; }

  .sci-today-thumbnail-element {
    width: 12.5%; }

  .qrinews-mathbox {
    padding: 0; }

  .qrinews-twitter {
    position: relative;
    margin: 0 0 50px 20px;
    padding: 3px 0 3px 0;
    border: #aaaaaa solid 1px;
    border-radius: 5px; } }
@media screen and (min-width: 1024px) {
  .qrinews-menu {
    width: 720px; } }
@media print {
  .qrinews-nav-sticky {
    display: none; }

  .qrinews-command-line {
    color: Black;
    background-color: none;
    border-style: outset; }

  .arch-img {
    display: inline-block;
    width: 20%;
    padding: 0 20px 0 0; }

  .arch-abstract {
    display: inline-block;
    width: 75%;
    vertical-align: top; } }
.kokusai-header {
  max-width: none; }

.kokusai-image {
  width: 100%;
  height: 100%;
  max-width: 1280px;
  margin: 0 auto; }

.kokusai-image-inner {
  width: 100%;
  height: 100%;
  vertical-align: bottom; }

.kokusai-wrapper:nth-child(even) {
  background-color: #eee; }

.kokusai-content {
  width: 90%;
  margin: 0 auto;
  padding: 50px 0; }

.kokusai-heading {
  margin: 0 0 40px 0;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: normal;
  color: #1f77be;
  text-align: center; }

.kokusai-cf {
  *zoom: 1; }
  .kokusai-cf:after {
    content: "";
    display: table;
    clear: both; }

.kokusai-text, .kokusai-left-text, .kokusai-right-text {
  margin: 0 0 40px 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2.0; }

.kokusai-stext {
  margin: 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
  color: red; }

.kokusai-box {
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  border: 1px solid #1f77be;
  border-radius: 5px; }

.kokusai-box-title {
  margin: 0 0 20px 0;
  padding: 15px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  color: #fff;
  text-align: center;
  background-color: #1f77be; }

.kokusai-box-text {
  margin: 0 0 20px 0;
  padding: 0 20px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8; }

.kokusai-tokutyo {
  margin: 0 0 20px 0;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  color: #1f77be;
  text-align: center; }

.kokusai-kyoiku {
  margin: 0;
  padding: 0 20px;
  list-style: none; }
  .kokusai-kyoiku li {
    padding-left: 20px;
    text-indent: -21px;
    margin: 0 0 20px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8; }
    .kokusai-kyoiku li:before {
      font-family: FontAwesome;
      content: '\f14a';
      font-size: 16px;
      font-size: 1.6rem;
      color: #1f77be; }

.kokusai-qanda {
  width: 100%;
  margin: 0 0 20px 0;
  padding: 20px;
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 5px; }

.kokusai-q, .kokusai-a {
  margin: 0;
  font-size: 0; }
  .kokusai-q dt, .kokusai-a dt {
    width: 10%;
    display: inline-block;
    font-size: 20px;
    font-size: 2.0rem;
    vertical-align: top; }
  .kokusai-q dd, .kokusai-a dd {
    width: 85%;
    margin: 0 0 0 5%;
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8; }

.kokusai-q {
  padding: 0 0 15px 0;
  border-bottom: 1px solid #aaa; }
  .kokusai-q dt {
    color: red; }

.kokusai-a {
  padding: 15px 0 0 0; }
  .kokusai-a dt {
    color: blue; }

.kokusai-contact {
  margin: 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center; }

.kokusai-policy-title {
  margin: 0 0 40px 0;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: normal;
  color: #1f77be;
  text-align: center; }

.kokusai-policy {
  width: 100%;
  margin: 0 auto 40px auto;
  background-color: #fff;
  border: 1px solid #1f77be;
  border-radius: 5px; }

.kokusai-policy-text {
  margin: 0 0 20px 0;
  padding: 0 20px;
  line-height: 1.8; }

.kokusai-policy-list {
  margin: 0 0 20px 20px;
  padding: 0 20px; }
  .kokusai-policy-list > li {
    margin: 0 0 10px 0;
    line-height: 1.5; }

@media screen and (min-width: 768px) {
  .kokusai-content {
    width: 600px; }

  .kokusai-heading {
    font-size: 28px;
    font-size: 2.8rem; }

  .kokusai-cf {
    margin: 0 0 40px 0; }

  .kokusai-text, .kokusai-left-text, .kokusai-right-text {
    font-size: 18px;
    font-size: 1.8rem; }

  .kokusai-left-text {
    width: 280px;
    float: left; }

  .kokusai-right-text {
    width: 280px;
    float: right; }

  .kokusai-stext {
    font-size: 16px;
    font-size: 1.6rem; }

  .kokusai-box {
    width: 400px; }

  .kokusai-box-title {
    font-size: 22px;
    font-size: 2.2rem; }

  .kokusai-box-text {
    font-size: 16px;
    font-size: 1.6rem; }

  .kokusai-kyoiku li {
    text-indent: -24px;
    font-size: 16px;
    font-size: 1.6rem; }
    .kokusai-kyoiku li:before {
      font-size: 18px;
      font-size: 1.8rem; }

  .kokusai-qanda {
    width: 600px; }

  .kokusai-q dt, .kokusai-a dt {
    width: 30px;
    font-size: 24px;
    font-size: 2.4rem; }
  .kokusai-q dd, .kokusai-a dd {
    width: 500px;
    margin: 0 0 0 20px;
    font-size: 16px;
    font-size: 1.6rem; }

  .kokusai-contact {
    font-size: 18px;
    font-size: 1.8rem; } }
@media screen and (min-width: 1024px) {
  .kokusai-box {
    width: 600px; } }
