@charset "UTF-8";
@import url(common.css);

.t-area {
  background: url("/image/photo_title.jpg") no-repeat 100% 50%;
  background-size: 100%;
}

/* お知らせ一覧のレイアウト */
.inblock .kiji-area {
  display: block;
}

.info-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 2em;
  padding: 1.5em;
  border: 1px solid #f0f0f0;
  border-radius: 8px;
  background: #fff;
  transition: all 0.3s ease;
}

.info-item:hover {
  border-color: #0e8091;
  box-shadow: 0 2px 8px rgba(14, 128, 145, 0.1);
}

.info-date {
  flex-shrink: 0;
  width: 120px;
  margin-right: 1.5em;
  padding: 0.5em;
  background: #f8f9fa;
  border-radius: 4px;
  text-align: center;
  font-size: 0.9em;
  color: #666;
  font-weight: bold;
}

.info-content {
  flex: 1;
}

.info-title {
  margin: 0 0 0.8em 0;
  font-size: 1.4em;
  line-height: 1.4;
  font-weight: bold;
}

.info-title a {
  color: #333;
  text-decoration: none;
  transition: color 0.3s ease;
}

.info-title a:hover {
  color: #0e8091;
  text-decoration: none;
}

.info-excerpt {
  margin: 0;
  color: #666;
  line-height: 1.6;
  font-size: 0.95em;
}

/* ページ送りのデザイン - WordPress標準のクラスに対応 */
.navigation.pagination,
.wp-pagenavi,
.page-numbers {
  margin: 3em auto 6em;
  text-align: center;
  max-width: 600px;
}

.navigation.pagination .nav-links,
.wp-pagenavi .page-numbers,
.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  list-style: none;
  margin: 0;
  padding: 0;
}

.wp-pagenavi .page-numbers li,
.page-numbers li {
  display: inline-block;
}

.navigation.pagination .nav-links a,
.navigation.pagination .nav-links span,
.wp-pagenavi .page-numbers a,
.wp-pagenavi .page-numbers span,
.page-numbers a,
.page-numbers span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 0.8em;
  font-size: 0.95em;
  font-weight: 500;
  text-decoration: none;
  color: #666;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  transition: all 0.3s ease;
  margin: 0 0.2em;
}

.navigation.pagination .nav-links a:hover,
.wp-pagenavi .page-numbers a:hover,
.page-numbers a:hover {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(14, 128, 145, 0.2);
}

.navigation.pagination .nav-links .current,
.wp-pagenavi .page-numbers.current,
.page-numbers.current {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
  font-weight: 600;
}

.wp-pagenavi .page-numbers.current span,
.page-numbers.current span {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
}

.navigation.pagination .nav-links .next,
.navigation.pagination .nav-links .prev,
.wp-pagenavi .page-numbers.prev,
.wp-pagenavi .page-numbers.next,
.page-numbers.prev,
.page-numbers.next {
  font-weight: 600;
  background: #f8f9fa;
  border-color: #0e8091;
  color: #0e8091;
}

.navigation.pagination .nav-links .next:hover,
.navigation.pagination .nav-links .prev:hover,
.wp-pagenavi .page-numbers.prev:hover,
.wp-pagenavi .page-numbers.next:hover,
.page-numbers.prev:hover,
.page-numbers.next:hover {
  background: #0e8091;
  color: #fff;
}

/* 省略記号のスタイル */
.wp-pagenavi .page-numbers.dots,
.page-numbers.dots {
  background: transparent;
  border: none;
  color: #999;
  font-weight: bold;
}

/* 従来の.pagerクラスもサポート */
.pager {
  margin: 3em auto 6em;
  text-align: center;
  max-width: 600px;
}

.pager ul {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  list-style: none;
  margin: 0;
  padding: 0;
}

.pager ul li {
  display: inline-block;
}

.pager ul li a,
.pager ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 0.8em;
  font-size: 0.95em;
  font-weight: 500;
  text-decoration: none;
  color: #666;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  transition: all 0.3s ease;
}

.pager ul li a:hover {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(14, 128, 145, 0.2);
}

.pager ul li.current {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
  font-weight: 600;
}

.pager ul li.current span {
  background: #0e8091;
  border-color: #0e8091;
  color: #fff;
}

/* 前へ・次へボタンの特別なスタイル */
.pager ul li:first-child a,
.pager ul li:last-child a {
  font-weight: 600;
  background: #f8f9fa;
  border-color: #0e8091;
  color: #0e8091;
}

.pager ul li:first-child a:hover,
.pager ul li:last-child a:hover {
  background: #0e8091;
  color: #fff;
}

/* 省略記号のスタイル */
.pager ul li.dots span {
  background: transparent;
  border: none;
  color: #999;
  font-weight: bold;
}

#single {
  /* clear hack */
}

#single .kiji {
  margin-bottom: 4em;
  border: 1px solid #f5f5f5;
  padding: 2em;
}

#single .kiji p.date {
  margin: 0;
  font-size: 0.8em;
  color: #555;
}

#single .kiji h2 {
  padding-bottom: 0.8em;
  margin-bottom: 0.8em;
  border-bottom: 1px solid #ccc;
  font-size: 1.5em;
  line-height: 1.5em;
}

#single .kiji .entry-format a {
  position: static;
}

#single .pagenav {
  width: 100%;
  max-width: 550px;
  margin: 0 auto 4em;
  position: relative;
}

#single .pagenav .prev {
  display: inline-block;
  float: left;
  width: 180px;
  word-wrap: break-word;
}

#single .pagenav .next {
  display: inline-block;
  float: right;
  width: 180px;
  text-align: right;
  word-wrap: break-word;
}

#single .pagenav .back {
  margin: 0 auto 4em !important;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari逕ｨ */
  transform: translate(-50%, -50%);
  background: #000;
}

#single .pagenav .back a {
  position: relative;
  width: 250px;
  margin: 0 auto;
  display: block;
  padding: 5px 25px;
  text-decoration: none;
  color: #fff;
}

#single .pagenav .back a:before {
  content: "\f104";
  font-family: "FontAwesome";
  padding: 0 10px 0 0;
}

#single .pagenav {
  zoom: 1;
}

#single .pagenav:after {
  content: ".";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}

footer .inner {
  width: 100%;
}

.sub-t {
  font-size: 2em;
  margin-bottom: 1em;
}

/*===========================================================================*/
/*  media quary:1000px  */
/*===========================================================================*/
@media screen and (max-width: 1000px) {
  .info-item {
    padding: 1.2em;
  }
  
  .info-date {
    width: 100px;
    margin-right: 1em;
    font-size: 0.85em;
  }
  
  .info-title {
    font-size: 1.3em;
  }
  
  .pager ul {
    gap: 0.3em;
  }
  
  .pager ul li a,
  .pager ul li span {
    min-width: 36px;
    height: 36px;
    font-size: 0.9em;
  }
  
  /* WordPress標準のページ送り */
  .wp-pagenavi .page-numbers,
  .page-numbers {
    gap: 0.3em;
  }
  
  .wp-pagenavi .page-numbers a,
  .wp-pagenavi .page-numbers span,
  .page-numbers a,
  .page-numbers span {
    min-width: 36px;
    height: 36px;
    font-size: 0.9em;
  }
}

/*===========================================================================*/
/*  media quary:767px  */
/*===========================================================================*/
@media screen and (max-width: 767px) {
  .sub-t {
    font-size: 1.5em;
    margin-bottom: 1em;
  }

  .info-item {
    flex-direction: column;
    padding: 1em;
    margin-bottom: 1.5em;
  }
  
  .info-date {
    width: auto;
    margin-right: 0;
    margin-bottom: 0.8em;
    text-align: left;
    background: #0e8091;
    color: #fff;
    padding: 0.3em 0.8em;
  }
  
  .info-title {
    font-size: 1.2em;
    margin-bottom: 0.6em;
  }
  
  .info-excerpt {
    font-size: 0.9em;
  }
  
  .pager {
    margin: 2em auto 4em;
    max-width: 500px;
  }
  
  .navigation.pagination,
  .wp-pagenavi,
  .page-numbers {
    margin: 2em auto 4em;
    max-width: 500px;
  }
  
  .pager ul {
    gap: 0.2em;
    flex-wrap: wrap;
  }
  
  .pager ul li a,
  .pager ul li span {
    min-width: 32px;
    height: 32px;
    font-size: 0.85em;
    padding: 0 0.5em;
  }
  
  /* WordPress標準のページ送り */
  .wp-pagenavi .page-numbers,
  .page-numbers {
    gap: 0.2em;
    flex-wrap: wrap;
  }
  
  .wp-pagenavi .page-numbers a,
  .wp-pagenavi .page-numbers span,
  .page-numbers a,
  .page-numbers span {
    min-width: 32px;
    height: 32px;
    font-size: 0.85em;
    padding: 0 0.5em;
  }

  #single .kiji {
    padding: 1em;
    margin-bottom: 2em;
  }
  
  #single .kiji h2 {
    font-size: 1.2em;
  }
  
  #single .pagenav {
    _zoom: 1;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    padding: 0 0 6em 0;
    position: relative;
  }
  
  #single .pagenav .prev {
    display: inline-block;
    float: left;
    width: 30%;
    margin-bottom: 0.5em;
  }
  
  #single .pagenav .next {
    display: inline-block;
    float: right;
    width: 30%;
    margin-bottom: 0.5em;
  }
  
  #single .pagenav .back {
    margin: 0 auto !important;
    text-align: center;
  }
  
  #single #single-blog .entry-format {
    padding: 0.8em;
  }
}

/*===========================================================================*/
/*  media quary:479px  */
/*===========================================================================*/
@media screen and (max-width: 479px) {
  .info-item {
    padding: 0.8em;
    margin-bottom: 1em;
  }
  
  .info-date {
    font-size: 0.8em;
    padding: 0.2em 0.6em;
  }
  
  .info-title {
    font-size: 1.1em;
    margin-bottom: 0.5em;
  }
  
  .info-excerpt {
    font-size: 0.85em;
    line-height: 1.5;
  }
  
  .pager {
    margin: 1.5em auto 3em;
    max-width: 400px;
  }
  
  .navigation.pagination,
  .wp-pagenavi,
  .page-numbers {
    margin: 1.5em auto 3em;
    max-width: 400px;
  }
  
  .pager ul {
    gap: 0.1em;
  }
  
  .pager ul li a,
  .pager ul li span {
    min-width: 28px;
    height: 28px;
    font-size: 0.8em;
    padding: 0 0.3em;
  }
  
  /* WordPress標準のページ送り */
  .wp-pagenavi .page-numbers,
  .page-numbers {
    gap: 0.1em;
  }
  
  .wp-pagenavi .page-numbers a,
  .wp-pagenavi .page-numbers span,
  .page-numbers a,
  .page-numbers span {
    min-width: 28px;
    height: 28px;
    font-size: 0.8em;
    padding: 0 0.3em;
  }
}
