@charset "UTF-8";
/*
index
-----------------------------------------------------*/
/*
i-functions
-----------------------------------------------------*/
/*
i-setting
-----------------------------------------------------*/
/*
i-mixin
-----------------------------------------------------*/
/* ------------------------- 使い方 ----------------------------------------------------------

    @include sizing(width, wide, 365px, sp, 276px);
    ==> width: clamp(276px, 7.46vw + 248px, 365px);
    （ビューポートがwide(1568px)のとき365px, sp(375px)のとき276pxになる自動補完値を上限下限をつけて設定）

    @include sizing(width, wide, 365px, sp, 276px, noClamp);
    ==> width: calc(7.46vw + 248px);
    （ビューポートがwide(1568px)のとき365px, sp(375px)のとき276pxになる自動補完値を設定）

    @include sizingRem(font-size, wide, 14px, sp, 12px);
    ==> font-size: clamp(0.75rem, 0.17vw + 0.70625rem, 0.875rem;
    （ビューポートがwide(1568px)のとき14px, sp(375px)のとき12pxになる自動補完値をremに変換して設定）
　　
    ※使いたいsassファイル上で@useしてください。
    ※scssファイル上での読みやすさ重視のため、mixinの引数に単位[px]が必要な仕様にしてあります。

// ---------------------------------------------------------------------------------------- */
/*
knowledge
-----------------------------------------------------*/
.p-knowledge-nav h2 {
  font-size: clamp(15px, 0.23vw + 14.3px, 18px);
  margin-bottom: clamp(8px, 0.31vw + 6.9px, 12px);
  font-weight: 700;
  color: #005AAA;
}
.p-knowledge-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.4rem;
}
.p-knowledge-nav ul li {
  font-size: clamp(13px, 0.23vw + 12.3px, 16px);
  line-height: 1;
}
.p-knowledge-nav ul li a {
  padding: 0.5rem 0.6rem 0.6rem 0.6rem;
  border-radius: 0.5rem;
  display: block;
  background: #fff;
}
.p-knowledge-nav ul li a.-here {
  background: #005AAA;
  color: #fff;
}
.p-knowledge-outer {
  margin-top: clamp(60px, 0.76vw + 57.6px, 70px);
}
.p-knowledge-outer.-connection {
  margin-top: clamp(60px, 8.93vw + 31.4px, 177px);
}
.p-knowledge-outer h2 {
  display: block;
  width: 100%;
  font-size: clamp(18px, 0.92vw + 15px, 30px);
  margin-bottom: clamp(16px, 0.76vw + 13.6px, 26px);
  font-weight: 700;
  text-align: left;
  color: #005AAA;
}
.p-knowledge-outer > h3 {
  font-size: clamp(16px, 1.07vw + 12.6px, 30px);
  color: #005AAA;
  margin-bottom: clamp(24px, 0.46vw + 22.5px, 30px);
  font-weight: 700;
}
.p-knowledge-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.5rem 2%;
}
@media screen and (min-width: 768px) {
  .p-knowledge-list {
    gap: 2.5rem 2%;
  }
}
@media screen and (min-width: 1080px) {
  .p-knowledge-list {
    gap: 2.5rem 3.5%;
  }
}
.p-knowledge-list .-card {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; /*子要素に追加*/
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; /*子要素に追加*/
  border-radius: 0.75rem 0.75rem 0 0;
}
@media screen and (min-width: 768px) {
  .p-knowledge-list .-card {
    width: 48%;
  }
}
@media screen and (min-width: 1080px) {
  .p-knowledge-list .-card {
    width: 31%;
  }
}
.p-knowledge-list .-card a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
.p-knowledge-list .-card figure {
  overflow: hidden;
  border-radius: 1rem;
  margin-bottom: 1rem;
}
.p-knowledge-list .-card figure img {
  width: 100%;
  height: auto;
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease; /* ゆっくり変化させる */
}
.p-knowledge-list .-card .-date {
  font-size: 14px;
  line-height: 1;
  color: #005AAA;
  font-weight: 500;
}
.p-knowledge-list .-card ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.3rem 0.5rem;
}
.p-knowledge-list .-card ul li {
  color: #858C93;
  line-height: 1;
  font-size: 14px;
}
.p-knowledge-list .-card h3 {
  font-size: clamp(15px, 0.23vw + 14.3px, 18px);
  font-weight: 700;
  line-height: 1.6;
  margin-top: 0.2rem;
  color: #333333;
}
.p-knowledge-list .-card h3 + ul {
  margin-top: 1rem;
}
@media (hover: hover) and (pointer: fine) {
  .p-knowledge-list .-card:hover {
    cursor: pointer;
  }
  .p-knowledge-list .-card:hover figure img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05); /* 拡大 */
  }
}
.p-knowledge-entry {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .p-knowledge-entry {
    width: 54vw;
  }
}
.p-knowledge-entry .-head .-date {
  color: #005AAA;
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  margin-bottom: clamp(0px, 0.76vw - 2.4px, 10px);
}
.p-knowledge-entry .-head h1 {
  font-size: clamp(26px, 0.31vw + 24.9px, 30px);
  font-weight: 700;
}
.p-knowledge-entry .-head ul.-cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem 1.2rem;
  margin-top: 20px;
}
.p-knowledge-entry .-head ul.-cat li {
  font-size: 14px;
  line-height: 1;
  color: #858C93;
}
.p-knowledge-entry .-body .-kv {
  margin-top: clamp(32px, 1.22vw + 28.1px, 48px);
}
.p-knowledge-entry .-body .-kv img {
  border: 1px solid #fff;
  border-radius: 1rem;
  overflow: hidden;
  display: block;
  line-height: 1;
  margin: 0;
  padding: 0;
}
.p-knowledge-entry .-body .-post h2 {
  border-top: 1px solid #C0CEDB;
  margin-top: clamp(62px, 0.99vw + 58.9px, 75px);
  padding-top: clamp(30px, 0.61vw + 28.1px, 38px);
  font-size: clamp(26px, 0.31vw + 24.9px, 30px);
  font-weight: 700;
  margin-bottom: 30px;
}
.p-knowledge-entry .-body .-post * + h3 {
  margin-top: 32px;
}
.p-knowledge-entry .-body .-post h3 {
  font-size: clamp(20px, 0.31vw + 18.9px, 24px);
  font-weight: 700;
  margin-bottom: clamp(16px, 0.31vw + 14.9px, 20px);
}
.p-knowledge-entry .-body .-post * + h4 {
  margin-top: 32px;
}
.p-knowledge-entry .-body .-post h4 {
  font-size: clamp(20px, 0vw + 20px, 20px);
  font-weight: 700;
  margin-bottom: clamp(8px, 0.61vw + 6.1px, 16px);
}
.p-knowledge-entry .-body .-post hr {
  margin-top: 126px;
  margin-bottom: 32px;
}
@media screen and (min-width: 1080px) {
  .p-knowledge-entry .-body .-post hr {
    margin-top: 96px;
  }
}
.p-knowledge-entry .-body .-post hr hr + h2,
.p-knowledge-entry .-body .-post hr hr + h3 {
  margin-top: 0;
}
.p-knowledge-entry .-body .-post * + ul {
  margin-top: 2rem;
}
.p-knowledge-entry .-body .-post ul + * {
  margin-top: 2rem;
}
.p-knowledge-entry .-body .-post figure + * {
  margin-top: 2rem;
}
.p-knowledge-entry .-body .-post ul li {
  line-height: 1.6;
  position: relative;
  list-style-type: none;
  padding-left: 1.8rem;
}
.p-knowledge-entry .-body .-post ul li::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #005AAA;
  position: absolute;
  left: 6px;
  top: 0.6rem;
}
.p-knowledge-entry .-body .-post ul li + li {
  margin-top: 0.6rem;
}
.p-knowledge-entry .-body .-post p .-underline {
  text-decoration: underline;
  text-underline-offset: 0.2rem;
}
.p-knowledge-entry .-body .-post p a[target=_blank],
.p-knowledge-entry .-body .-post li a[target=_blank] {
  display: inline-block;
  position: relative;
  margin-right: 3rem;
}
.p-knowledge-entry .-body .-post p a[target=_blank]:after,
.p-knowledge-entry .-body .-post li a[target=_blank]:after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background: url(../img/common/icon_blank.svg) no-repeat 50% 50%/contain;
  position: absolute;
  right: -1.5rem;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
}
.p-knowledge-entry .-body .-post * + figure {
  margin-top: 2rem;
}
.p-knowledge-entry .-body .-post figure figcaption {
  color: #858C93;
  line-height: 1.6;
  font-size: 14px;
  margin-top: 0.6rem;
}
.p-knowledge-entry .-body .-post .-quotation {
  background: #DDEAF5;
  padding: 1rem 1.5rem;
}
@media screen and (min-width: 1080px) {
  .p-knowledge-entry .-body .-post .-quotation {
    padding: 1.5rem 2rem;
  }
}
.p-knowledge-entry .-body .-post .wp-block-gallery {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.p-knowledge-entry .-body .-post .wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
  background: none; /* タイトル背景の影を消す */
  bottom: -24px;
  padding: 1em 0 0 0;
  text-shadow: unset !important;
  text-align: left !important;
  color: #666;
  font-size: 12px;
}
.p-knowledge-entry .-body .-post .wp-block-gallery.has-nested-images figure.wp-block-image {
  margin-bottom: 30px !important;
}
.p-knowledge-entry .-body .-post .wp-block-gallery.has-nested-images figure.wp-block-image::before {
  display: none;
}

.p-home-knowledge::before {
  display: none !important;
}

.p-home-knowledge .-flex .-card {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; /*子要素に追加*/
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; /*子要素に追加*/
}
@media screen and (min-width: 768px) {
  .p-home-knowledge .-flex .-card {
    width: 48%;
  }
}
@media screen and (min-width: 1080px) {
  .p-home-knowledge .-flex .-card {
    width: 31%;
  }
}
/*# sourceMappingURL=knowledge.css.map */