/**
 * カスタムプロパティ
 */
:root {
  /* ホバー時にしようする水色 */
  --HOVER-BLUE: #57BDCC;
  /* 黒 */
  --DARK-GRAY: #333;
}

/**
 * カスタムCSS
 */
.content-top-in {
  padding-left: 29px;
  padding-right: 29px;
}

/* CSSの打ち消し */
@media screen and (max-width: 1280px) {
  .main, .sidebar, .sidebar-left .main, .sidebar-left .sidebar {
    margin: 0;
  }
}

@media screen and (max-width: 834px) {
  .content-top-in {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media screen and (max-width: 1260px) {
  .header-in.wrap,
  .navi-in.wrap,
  .content-in.wrap,
  .content-top-in.wrap,
  .content-bottom-in.wrap,
  #sidebar,
  .footer-in.wrap,
  main#main {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

/* ナビゲーションバー */
.item-label:hover {
  /* 水色 */
  color: var(--HOVER-BLUE);
}

.navi-in>ul .sub-menu ul {
  display: none;
  position: absolute;
  top: 63px;
  left: 0px;
  margin: 0;
  padding: 0;
  list-style-type: none;
  height: auto;
  z-index: 99999;
}

.navi-in>ul .sub-menu li {
  float: none;
  height: auto;
  line-height: 0;
  padding: 0;
  margin: 0;
  text-align: left;
  background: none;
  display: block;
  background: var(--DARK-GRAY);
}

#navi .navi-in>ul .sub-menu a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 10px 15px 8px;
  color: white;
  font-size: 14px;
  font-weight: 400;
  line-height: 180%;
  text-align: left;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.navi-in>ul .sub-menu a:hover {
  background: var(--HOVER-BLUE);
}

.sub-menu .item-label:hover {
  color: white;
}

/* スライダー */
@media screen and (max-width: 600px) {
  #metaslider_1163 img {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}

/* ヘッダー */
@media screen and (max-width: 1023px) {
  .tagline, .logo-header {
    display: none;
  }
}

@media screen and (max-width: 600px){
  .has-logo-button .logo-menu-button {
     position: relative;
  }

  a.menu-button-in {
    margin: 0;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
  }
}

/* サイドバー */
.sidebar {
  padding-right: 29px;
}

@media screen and (max-width: 1023px) {
  div.sidebar {
    width: 65%;
  }
}

@media screen and (max-width: 790px) {
  div.sidebar {
    width: 100%;
  }
}

.sidebar H3 {
  border: none;
  font-size: 20px;
  margin: 0 0 10px;
  padding-bottom: 5px;
  background: url(images/dot_02.png) repeat-x left bottom;
  border-bottom: dotted 1px #888;
  min-height: 30px;
}

.widget-sidebar li {
  position: relative;
  font-weight: bold;
  font-size: 12px;
  line-height: 170%;
  margin: 0 0 10px 0;
  padding: 0 0 5px 15px;
  box-sizing: border-box;
  border-bottom: dotted 1px #888;
  min-height: 25px;
}

.widget-sidebar li:before {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  display: inline-block;
  border-width: 5px;
  border-style: solid;
  border-right-color: transparent;
  border-left-color: var(--DARK-GRAY);
  border-bottom-color: transparent;
  border-top-color: transparent;
  box-sizing: border-box;
  left: 0.5em;
  top: 1.1em;
}

.widget li {
  list-style: none;
}

/* スライダー */
@media screen and (max-width: 1260px) {

  /*必要ならばここにコードを書く*/
  .metaslider {
    width: 100%;
  }
}

@media screen and (max-width: 600px) {
  .slider-1163 {
    width: calc(100vw - calc(100vw - 100%));
  }
}

/* 投稿日、更新日非表示にする */
.entry-date.date,
.fa-clock-o, .fa-history {
  display: none;
}

/* 3つの窓 */
@media screen and (max-width: 1023px) {
  .three-win {
    margin-bottom: 0;
  }

  main.main {
    margin-top: 0;
    padding-top: 0;
  }

  header.article-header.entry-header {
    margin-top: 0;
  }
}

.three-win>div {
  width: calc(33.33333% - 1.1333em);
}

.three-win>div:not(:first-child) {
  margin-left: 1.7em;
}

@media screen and (max-width: 1260px) {
  .three-win>div {
    width: calc(33.33333% - .83333em);
  }

  .three-win>div:not(:first-child) {
    margin-left: 1.25em;
  }
}

@media screen and (max-width: 600px) {
  .three-win>div {
    width: 100%;
    height: auto;
  }

  .three-win>div:not(:first-child) {
    margin-left: 0;
  }
}

.three-win>div>figure>a {
  position: relative;
  display: block;
  width: 100%;
}

.three-win>div>figure>a:before {
  content: '';
  display: block;
  padding-top: 47.6%;
}

.three-win>div>figure>a>img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
}

@media screen and (max-width: 600px) {
  .three-win .wp-block-column {
    width: 100%;
    text-align: center;
  }

  .three-win>div>figure>a {
    position: static;
  }

  .three-win>div>figure>a:before {
    padding-top: 0;
  }

  .three-win>div>figure>a>img {
    position: static;
    height: auto;
  }
}

.three-win h2 {
  font-size: 20px;
}

.three-win p {
  font-size: 12px;
}

.three-win a {
  text-decoration: none;
  color: var(--DARK-GRAY);
}

/* カード型記事（新着記事、関連記事、検索結果画面） */
.article H3 {
  border: none;
}

.wp-block-latest-posts__list li,
.related-entry-card-wrap,
.entry-card-wrap {
  background-color: #F2F2F2;
}

.wp-block-latest-posts__list li {
  margin: 0 12px;
}

.post-date {
  margin: 0 15px 7px 0;
}

.ect-3-columns .entry-card-wrap,
.rect-vertical-card .related-entry-card-wrap {
  padding: 0;
}

.ect-3-columns,
.rect-vertical-card .related-list  {
  justify-content: flex-start;
}

@media screen and (max-width: 600px) {
  .wp-block-latest-posts__list.is-grid li {
    margin-right: 0;
  }
}

.wp-block-latest-posts__list li>a,
.related-entry-card-title,
.entry-card-title {
  text-decoration: none;
  font-weight: bold;
  color: var(--DARK-GRAY);
  font-size: 16px;
  line-height: 20px;
  padding: 0 15px;
  display: inline-block;
}

.ect-vertical-card .entry-card-wrap {
  margin-bottom: 1.2em;
}

.ect-vertical-card .entry-card-thumb,
.rect-vertical-card .related-entry-card-thumb {
  margin-bottom: 1em;
}

.wp-block-latest-posts__featured-image>a,
.related-entry-card-thumb,
.entry-card-thumb {
  position: relative;
  display: block;
  width: 100%;
}

.wp-block-latest-posts__featured-image>a::before,
.related-entry-card-thumb::before,
.entry-card-thumb::before {
  content: "";
  display: block;
  /* 245 × 150px */
  padding-top: 61.2%;
}

.wp-block-latest-posts__featured-image>a>img,
.related-entry-card-thumb-image,
.related-entry-card-no-image,
.entry-card-thumb-image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
}

@media screen and (max-width: 600px) {
  .wp-block-latest-posts__featured-image>a,
  .related-entry-card-thumb,
  .entry-card-thumb {
    width: 100%;
    position: static;
  }

  .wp-block-latest-posts__featured-image>a::before,
  .related-entry-card-thumb::before,
  .entry-card-thumb::before {
    padding-top: 0;
  }

  .wp-block-latest-posts__featured-image>a>img,
  .related-entry-card-thumb-image,
  .entry-card-thumb-image {
    position: static;
    height: auto;
  }
}

.ect-3-columns .entry-card-wrap,
.rect-vertical-card-3 .related-entry-card-wrap {
  box-sizing: border-box;
  width: calc(33.33333% - .83333em);
}

@media screen and (min-width: 601px) {
  .ect-3-columns .entry-card-wrap:not(:nth-child(3n)),
  .rect-vertical-card-3 .related-entry-card-wrap:not(:nth-child(3n)) {
    margin: 0 1.25em 1.25em 0;
  }
}

@media screen and (max-width: 600px) {
  .ect-3-columns .entry-card-wrap,
  .rect-vertical-card-3 .related-entry-card-wrap {
    width: 100%;
  }
}

.wp-block-latest-posts__post-excerpt,
.related-entry-card-snippet,
.entry-card-snippet,
.entry-card .admin-pv {
  outline: none;
  color: var(--DARK-GRAY);
  font-size: 12px;
  margin-top: .5em;
  margin-bottom: 1em;
  padding: 0 15px;
  font-weight: 500;
}

.ect-3-columns .entry-card-snippet,
.entry-card-snippet, .related-entry-card-snippet {
  max-height: none;
}

/* 共通 */
.site-logo-image.header-site-logo-image:hover,
.three-win>div>figure>a:hover>img,
.wp-block-latest-posts__featured-image>a:hover>img,
.related-entry-card-thumb-image:hover,
.related-entry-card-no-image:hover,
.entry-card-thumb-image:hover {
  opacity: 0.5;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.three-win a:hover,
.wp-block-latest-posts__list li>a:hover,
.related-entry-card-title:hover,
.entry-card-title:hover,
.related-entry-card-snippet:hover,
.entry-card-snippet:hover,
.entry-card .admin-pv:hover,
.post-date:hover {
  color: var(--HOVER-BLUE);
}

/* フッター */
#footer-in a:hover {
  color: var(--HOVER-BLUE);
  transition: none;
  /* 水色 */
  background: inherit;
}

.footer-copy a {
  text-decoration: none;
  font-size: 16px;
}

.footer-title {
  font-size: 16px;
  border-bottom: 1px dotted;
  margin-bottom: 5px;
}

.footer-copy p {
  font-size: 12px;
}

.popular-entry-card-title {
  font-size: 14px;
}

.widget_nav_menu ul li ul {
  padding-left: 10px;
}

.widget_nav_menu ul li a {
  font-size: 12px;
  padding-top: 2.5px;
  padding-bottom: 2.5px;
}
