@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500&display=swap&subset=japanese');
.search_container02 .icon button:hover {
    opacity: .7;
}
/* ---------------------------------
  緊急連絡
-----------------------------------*/
.info_top {
   background: #FFE100;
   text-align: center;
   display: none;
   font-weight: bold;
   font-size: 1.6rem;
   animation-name: fadeIn;
   animation-duration: 2s;
   animation-timing-function: ease-out;
   animation-iteration-count: 1;
   animation-direction: normal;
   animation-fill-mode: forwards;
}
.info_top a {
   color: #000;
   display: block;
   padding: 10px 4%;
}
@keyframes fadeIn {
   0% {
      opacity: 0;
   }
   100% {
      opacity: 1;
   }
}
@-webkit-keyframes fadeIn {
   0% {
      opacity: 0;
      transform: translate3d(0, -20px, 0);
   }
   100% {
      opacity: 1;
      transform: translate3d(0, 0, 0);
   }
}
@media screen and (max-width:767px) {
   .info_top {
      margin-bottom: 20px;
   }
   .info_top p b {
      font-size: 1.7rem;
   }
}
/* ---------------------------------
  メイン画像エリア
-----------------------------------*/
#main {
   background: url("lib/img/top/bg_main.jpg") left center no-repeat;
   background-size: cover;
   height: 450px;
   align-items: center;
}
#main .inner {
   width: 100%;
   max-width: 1050px;
   align-items: center;
   justify-content: center;
   padding-top: 70px;
}
.nav-tabs {
   border-bottom: 1px solid #fff;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: justify;
   -ms-flex-pack: justify;
   justify-content: space-between;
}
.nav-tabs li {
   width: 18%;
   font-size: 2rem;
   border-bottom: 0;
   text-align: center;
}
.nav-tabs li h3 {
   font-weight: normal;
}
.nav-tabs li:last-of-type {
   margin-right: 0;
}
.nav-tabs li a {
   background-color: rgba(40,44,50,.4);
   color: #fff;
   text-decoration: none;
   width: 100%;
   border: 1px solid #fff !important;
   border-bottom: 0;
   height: 50px;
   display: flex; /* 子要素をflexboxで揃える */
   flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
   justify-content: center; /* 子要素をflexboxにより中央に配置する */
   align-items: center; /* 子要素をflexboxにより中央に配置する */
}
.nav-tabs li a.active, .nav-tabs li a:hover {
   background: #9A0000 !important;
   color: #fff !important;
}
.nav-tabs .nav-link:hover {
   background: #cd8080 !important;
}
.tab-content {
   background: none;
}
.card-body {
   color: #fff;
   padding: 25px 0;
}
.tab-content > .tab-pane {
   background: none;
}
.card-body p {
   font-size: 2.2rem;
   margin-bottom: 10px;
}
.search_container02 {
   box-sizing: border-box;
   display: flex;
   align-content: center;
   align-items: center;
}
.search_container02 .wrap {
   box-sizing: border-box;
   position: relative;
   border: 1px solid #999;
   padding: 3px 10px;
   /* height: 80px; */
   width: 100%;
   overflow: hidden;
   background: #fff;
   display: flex;
   align-content: center;
   margin-right: 20px;
}
.search_container03 .wrap {
   box-sizing: border-box;
   position: relative;
   border: 1px solid #999;
   padding: 3px 10px;
   height: 58px;
   width: 100%;
   overflow: hidden;
   background: #fff;
   display: flex;
   align-content: center;
}
.search_container02 input[type="text"] {
   border: none;
   font-size: 4.2rem;
   width: 100%;
}
.search_container03 input[type="text"] {
   border: none;
   font-size: 2rem;
   width: 90%;
}
.search_container02 input[type="text"]:focus,.search_container03 input[type="text"]:focus {
   outline: 0;
}
.search_container02 .icon {
   position: absolute;
   right: 20px;
   top: 8px;
   outline: none;
}
.search_container02 .icon .fas {
   color: #666;
   font-size: 2.2rem;
}
.search_container02 .btn_area {
   width: 100%;
   color: #fff;
}
.search_container02 .btn_area button {
   width: 48%;
   border: 1px solid #fff;
   color: #fff;
   height: 40px;
}
.search_container03 button {
 width: 100%;
   border: 1px solid #fff;
   color: #fff;
   height: 58px;
}
.search_container02 .btn_area button .fas,.search_container03 button .fas {
   margin-left: 5px;
}
.search_container03 .icon {
   position: absolute;
   right: 10px;
   outline: none;
   top: 50%;
   transform: translate(0%, -50%);
}
.search_container03 .icon .fas {
   color: #666;
   font-size: 2rem;
}
.detail_search {
   border: 1px solid #fff;
   text-align: center;
   padding: 10px;
   height: 40px;
   display: flex;
   justify-content: center;
   align-items: center;
   margin-top: 20px;
   color: #fff;
}
.search_container02 .btn_area button:hover, .detail_search:hover,.search_container03 button:hover {
   background-color: #9A0000;
   color: #fff;
   text-decoration: none;
}
.info-inner li a {
   font-size: 1.8rem;
}
.search_container02 input[type="text"] {
   font-size: 2rem;
   padding: 0 20px 0 0;
   width: 96%;
}
@media screen and (min-width: 768px) {
   .search_container02 .wrap {
      height: 58px;
   }
}
@media screen and (min-width: 992px) {
   .search_container02 .icon {
      top: 50%;
      transform: translate(0, -50%);
   }
}
/* ---------------------------------
  スライダー
-----------------------------------*/
.slide {
   background: #E2E6E9;
}
.slide img {
   vertical-align: bottom;
}
.slide h3 {
   font-size: 2.4rem;
   margin: 20px 0;
}
.slide p {
   font-size: 1.4rem;
   color: #707070;
}
.carousel-indicators {
   bottom: 15px;
}
.carousel-indicators li {
   box-sizing: content-box;
   -ms-flex: 0 1 auto;
   flex: 0 1 auto;
   width: 16px;
   height: 16px;
   margin-right: 3px;
   margin-left: 3px;
   text-indent: -999px;
   cursor: pointer;
   background-color: #fff;
   background-clip: padding-box;
   border-top: 0;
   border-bottom: 0;
   opacity: 1;
   transition: opacity .6s ease;
   border-radius: 16px;
   border-color: #666;
}
.carousel-indicators li.active {
   background: #9A0000;
   width: 36px;
}
/* ---------------------------------
  お知らせ
-----------------------------------*/
.today_info {
   background: #F2F4F6;
   font-weight: bold;
   line-height: 1.4;
}
.today {
   font-weight: bold;
   font-size: 2rem;
   text-align: center;
}
.today span {
   font-size: 3rem;
   color: #9A0000;
}
.time {
   font-size: 1.5rem;
   color: #666;
}
.time .far {
   font-size: 1.8rem;
   padding-right: 5px;
}
.today_info .kic {
   color: #d04465;
}
.today_info .suzaku {
   color: #ed7020;
}
.today_info .oic {
   color: #6baa31;
}
.today_info .bkc {
   color: #2180c1;
}
@media screen and (min-width: 768px) {
    .today_info__inner {
        border-left: solid 1px #ccc;
    }
}
@media screen and (min-width: 992px) {
   .today_info__date {
      transform: translate(0, -1.5rem);
   }
}
@media screen and (max-width: 1024px) {
   .today_info__inner > div > span {
      font-size: 13px;
    }  
}

/* ---------------------------------
  NEWS
-----------------------------------*/
.news_top .ttl_area {
   font-size: 1.4rem;
}
.news_top .ttl_area a {
   color: #666666;
   align-items: center;
   display: inline-flex;
}
.news_top .ttl_area ul {
   display: flex;
   align-content: center;
}
.info-inner li {
   float: left;
   font-size: 1.4rem;
   width: 100%;
   text-align: left;
}
.info-inner li a {
   color: #000;
   font-size: 1.8rem;
   line-height: 1.2;
}
.tag {
   padding: 2px 4px;
   margin-right: 10px;
   color: #fff;
   font-size: 1rem;
   width: 22px;
   height: 22px;
}
.tag.kic {
   background-color: #d04465;
}
.tag.suzaku {
   background-color: #ed7020;
}
.tag.oic {
   background-color: #6baa31;
}
.tag.bkc {
   background-color: #2180c1;
}
.info-inner {
   -webkit-box-shadow: 0 0 5px 0 #ccc;
   -moz-box-shadow: 0 0 5px 0 #ccc;
   box-shadow: 0 0 5px 0 #ccc;
   width: 100%;
   float: left;
}
.info-inner .share {
   background: #9A0000;
}
.info-inner .tag {
   margin-right: 0;
   width: 66px;
   text-align: center;
   justify-content: center;
   display: flex;
   align-items: center;
}
.info-inner .tag.two {
   margin-right: 0;
   width: 33px;
   align-items: center;
}
.info-inner .tag.three {
   margin-right: 0;
   width: 22px;
   align-items: center;
}
.info-inner .date {
   color: #666666;
   font-weight: bold;
   font-size: 1.5rem;
   width: 130px;
}
.service dt {
   font-size: 1.5rem;
   color: #666;
   margin-top: -.4em;
}
.service dd {
   font-size: 1.4rem;
   color: #707070;
}
.service a {
   color: #707070;
}
@media screen and (min-width:1025px) {
   .info-inner li .col-lg-9 {
      position: relative;
      right: 40px;
   }
}

@media screen and (max-width:767px) {

   /* ---------------------------------
  メイン画像エリア
-----------------------------------*/
   #main {
      background: none;
      height: auto;
   }
   #main .inner {
      width: 100%;
      max-width: 100%;
      padding: 0;
   }
   /* ---------------------------------
  蔵書けんさく
-----------------------------------*/
   .nav-tabs {
      display: none;
   }
   .card-header {
      padding: 0;
      border: none;
   }
   .text-body {
      padding: 10px;
      font-size: 1.6rem;
   }
   .text-body:hover {
      text-decoration: none;
   }
   .card {
      position: relative;
   }
   .card-header a {
      padding: 10px 4%;
      font-size: 1.6rem;
   }
   .card-header a:hover {
      text-decoration: none;
   }
   .card-header a[aria-expanded="false"]:after {
      content: "\f078";
      font-family: "Font Awesome 5 Free";
      font-weight: bold;
      position: absolute;
      font-size: 2rem;
      right: 20px;
      top: 8px;
      color: #CFD2D5;
   }
   .card-header a[aria-expanded="true"] {
      background: #9A0000;
      color: #fff !important;
      display: block;
      text-decoration: none;
   }
   .card-header a[aria-expanded="false"] {
      background: #fff;
      color: #565D63 !important;
      display: block;
      text-decoration: none;
   }
   .card-body {
      padding: 20px;
   }
   .card-body p {
      font-size: 1.8rem;
      font-weight: bold;
      margin-bottom: 10px;
      color: #000;
      line-height: 1.2;
   }
   .search_container02 .wrap {
      width: 100%;
   }
   .detail_search {
      border: 1px solid #fff;
      text-align: center;
      height: 40px;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 20px;
      color: #565D63;
   }
   .search_container02 .btn_area button:hover, .detail_search:hover {
      background-color: #9A0000;
      color: #fff;
      text-decoration: none;
   }
   .info-inner li a {
      font-size: 1.8rem;
   }
   .search_container02 input[type="text"] {
      font-size: 2rem;
      padding: 0 20px 0 0;
   }
   .card-body .search_container02 .icon .fas {
      font-size: 2.4rem;
   }
   .card-body .search_container02 {
      height: 50px;
   }
   .card-body .search_container02 {
      width: 100%;
      height: auto;
   }
   .card-body .search_container03 label {
      color: #000;
   }
   .card-body .search_container03 .wrap {
      width: 100%;
   }
   .search_container02 .btn_area button, .card-body .detail_search, .search_container03 button {
      border: 1px solid #CFD2D5;
      color: #565D63;
   }
   .card-body .detail_search:hover {
      color: #fff;
   }
   .card-body .search_container02 .icon {
      top: 10px;
      right: 10px;
   }
   .search_container03 .icon {
      right: 10px;
   }
   .info-inner li a {
      font-size: 1.8rem;
   }
   .search_container02 input[type="text"] {
      font-size: 2rem;
      padding: 0 20px 0 0;
   }
   /* ---------------------------------
  お知らせ
-----------------------------------*/
   .time {
      text-align: right;
      display: block;
   }
   /* ---------------------------------
  スライダー
-----------------------------------*/
   .slide {
      padding-bottom: 30px;
   }
   .carousel-indicators {
      bottom: -10px;
   }
   .slide h3 {
      font-size: 1.6rem;
      padding: 0 4%;
   }
   .slide p {
      padding: 0 4%;
   }
   .news_top .ttl_area ul li {
      font-size: 1.4rem;
   }
}
@media screen and (min-width:768px) and (max-width:1024px) {
   .slide h3 {
      font-size: 1.6rem;
      margin-bottom: 10px;
   }
   .today {
      font-size: 2.2rem;
   }
   .today span {
      font-size: 2.4rem;
   }
   .nav-tabs li {
      font-size: 1.6rem;
   }
   .search_container02 .icon .fas {
      font-size: 4rem;
   }
   #main .inner {
      max-width: 760px;
      padding-top: 30px;
   }
}
@media(min-width:768px) {
   .card {
      border: none;
   }
   .card .card-header {
      display: none;
   }
   .card .collapse {
      display: block;
   }
}
@media(max-width:767px) {
   .tab-content > .tab-pane {
      display: block !important;
      opacity: 1;
   }
}
@media(min-width:992px) {
   #pane-04 .collapse {
      /* width: calc(100% + 280px);
      position: relative;
      right: 140px; */
   }
}

.database-button {
   border: 0 !important;
}

.database-button:hover {
    background-color: #fff !important;
    opacity: .7;
}

/* 電子書籍検索 セレクトボックス非表示*/
.ebook-select-wrapper {
    display: none;
}

.carousel-item a {
    color: #000;
    display: block;
}

.carousel-item a:hover {
    text-decoration: none;
    opacity: .7;
}
