@charset "UTF-8";
/*--------
共通カラー
---------*/
/*--------
page_style
---------*/
.page_style {
  margin: 0;
  font-size: 16px;
  font-family: "Montserrat", "noto sans jp";
  /* h2 */
  /* h3 */
  /* h4 */
  /* 太文字 strong */
  /* 強調文字 em */
  /* ギャラリー */
  /* 文中ユーチューブ動画のサイズ */
  /* 引用 */
  /* コード */
  /* リスト */
  /* リンク文字 */
  /* テーブル */ }
  @media (max-width: 1080px) {
    .page_style {
      font-size: 15px; } }
  @media (max-width: 900px) {
    .page_style {
      font-size: 16px; } }
  @media (max-width: 750px) {
    .page_style {
      font-size: 15px; } }
  @media (max-width: 500px) {
    .page_style {
      line-height: 2em; } }
  @media (max-width: 360px) {
    .page_style {
      font-size: 14px; } }
  .page_style p {
    line-height: 2em; }
  .page_style > p:not([class]) {
    margin: 16px auto;
    padding: 0;
    text-justify: inter-ideograph;
    font-size: 16px; }
    @media (max-width: 1080px) {
      .page_style > p:not([class]) {
        margin: 14px auto;
        font-size: 15px; } }
    @media (max-width: 500px) {
      .page_style > p:not([class]) {
        line-height: 1.5em; } }
    @media (max-width: 360px) {
      .page_style > p:not([class]) {
        font-size: 14px; } }
    .page_style > p:not([class]):empty {
      margin: 0;
      padding: 0; }
  .page_style > h2,
  .page_style > h3,
  .page_style > h4,
  .page_style > h5,
  .page_style > h6 {
    padding: 0; }
    .page_style > h2 + p,
    .page_style > h3 + p,
    .page_style > h4 + p,
    .page_style > h5 + p,
    .page_style > h6 + p {
      margin-top: 0; }
    .page_style > h2:empty,
    .page_style > h3:empty,
    .page_style > h4:empty,
    .page_style > h5:empty,
    .page_style > h6:empty {
      display: none; }
  .page_style > h2 {
    font-size: 24px;
    margin: 1em auto; }
    @media (max-width: 700px) {
      .page_style > h2 {
        font-size: 22px; } }
    @media (max-width: 500px) {
      .page_style > h2 {
        font-size: 18px; } }
  .page_style > h2:not([class*="is-style-ttl_"]),
  .page_style h2.is-style-default {
    padding-bottom: 0.3em;
    line-height: 2em;
    font-weight: 500;
    color: #131313;
    border-bottom: 1px solid #ccc; }
  .page_style > h3 {
    margin: 2em auto 1em auto;
    font-size: 20px; }
    @media (max-width: 500px) {
      .page_style > h3 {
        font-size: 18px; } }
  .page_style > h3:not([class*="is-style-ttl_"]),
  .page_style h3.is-style-default {
    padding-left: 0.5em;
    padding-bottom: 0.2em;
    line-height: 1.5em;
    font-weight: 500;
    color: #ccc;
    border-left: 0.3em solid #ccc; }
  .page_style > h4 {
    margin: 2em auto 0.5em auto;
    font-size: 18px; }
    @media (max-width: 500px) {
      .page_style > h4 {
        font-size: 16px; } }
  .page_style > h4:not([class*="is-style-ttl_"]),
  .page_style h4.is-style-default {
    position: relative;
    padding-left: 1.5em;
    line-height: 1.5em;
    font-weight: 500;
    color: #ccc; }
    .page_style > h4:not([class*="is-style-ttl_"])::before,
    .page_style h4.is-style-default::before {
      position: absolute;
      top: 0.35em;
      left: 0;
      z-index: 1;
      margin-right: 0.5em;
      padding-right: 0.3em;
      content: "";
      display: block;
      width: 1em;
      height: 1em;
      background: #ccc;
      border-radius: 50%; }
    .page_style > h4:not([class*="is-style-ttl_"])::after,
    .page_style h4.is-style-default::after {
      position: absolute;
      top: 0.7em;
      left: 0.3em;
      z-index: 2;
      content: "";
      width: 0.3em;
      height: 0.3em;
      border-top: 2px solid #fff;
      border-left: 2px solid #fff;
      transform: rotate(134deg); }
      @media (max-width: 600px) {
        .page_style > h4:not([class*="is-style-ttl_"])::after,
        .page_style h4.is-style-default::after {
          border-width: 1px; } }
  .page_style strong, .page_style b {
    font-weight: 500; }
  .page_style em {
    font-weight: 500;
    font-size: 1.1em;
    background: #f8f68a; }
  .page_style .wp-block-columns {
    margin: 16px auto;
    padding: 0; }
    .page_style .wp-block-columns p {
      margin: 0.8em auto;
      text-justify: inter-ideograph;
      font-size: 16px;
      line-height: 1.8em; }
      @media (max-width: 1080px) {
        .page_style .wp-block-columns p {
          font-size: 15px; } }
      @media (max-width: 900px) {
        .page_style .wp-block-columns p {
          font-size: 16px; } }
      @media (max-width: 750px) {
        .page_style .wp-block-columns p {
          font-size: 15px; } }
      @media (max-width: 500px) {
        .page_style .wp-block-columns p {
          line-height: 2em; } }
      @media (max-width: 360px) {
        .page_style .wp-block-columns p {
          font-size: 14px; } }
    .page_style .wp-block-columns h2,
    .page_style .wp-block-columns h3,
    .page_style .wp-block-columns h4 {
      margin: 1.3em 0 1em 0;
      font-size: 20px;
      font-weight: 500; }
      @media (max-width: 1080px) {
        .page_style .wp-block-columns h2,
        .page_style .wp-block-columns h3,
        .page_style .wp-block-columns h4 {
          font-size: 18px; } }
      @media (max-width: 600px) {
        .page_style .wp-block-columns h2,
        .page_style .wp-block-columns h3,
        .page_style .wp-block-columns h4 {
          font-size: 16px; } }
  @media (max-width: 781px) {
    .page_style .wp-block-columns > p:not([class]) {
      display: none; } }
  .page_style .wp-block-image {
    width: 100%; }
  .page_style .wp-block-image,
  .page_style .wp-block-columns .wp-block-image {
    margin: 0 auto; }
    .page_style .wp-block-image figcaption,
    .page_style .wp-block-columns .wp-block-image figcaption {
      text-align: center; }
  .page_style .wp-block-columns .wp-block-image {
    padding: 0; }
  .page_style .wp-block-embed__wrapper::before,
  .page_style .wp-block-columns .wp-block-embed__wrapper::before {
    content: "";
    padding-top: 57%;
    display: block; }
  .page_style .wp-block-embed__wrapper iframe,
  .page_style .wp-block-columns .wp-block-embed__wrapper iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .page_style .blocks-gallery-grid {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important; }
    .page_style .blocks-gallery-grid figure {
      box-shadow: 0 0 50px #eee; }
  .page_style .wp-block-embed__wrapper {
    margin: 16px auto;
    margin-bottom: 24px;
    padding: 0 16px;
    max-width: 832px;
    width: 100%;
    height: auto;
    position: relative; }
    .page_style .wp-block-embed__wrapper::before {
      padding-top: 56.3%;
      content: "";
      display: block; }
    .page_style .wp-block-embed__wrapper iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .page_style > .youtube_video_iframe {
    position: relative;
    margin: 16px auto;
    padding: 0 16px;
    max-width: 832px;
    width: 100%;
    height: auto; }
    .page_style > .youtube_video_iframe::before {
      padding-top: 56.2%;
      content: "";
      display: block; }
    .page_style > .youtube_video_iframe iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .page_style > .wp-block-quote {
    position: relative;
    z-index: 10;
    margin: 40px 0;
    padding: 24px 32px;
    font-size: 0.95em;
    border-left: 0.5em solid #709797;
    text-justify: inter-ideograph; }
    .page_style > .wp-block-quote::after {
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1;
      content: "";
      width: 100%;
      height: 100%;
      display: block;
      background: #709797;
      opacity: 0.1; }
    .page_style > .wp-block-quote p {
      margin: 0;
      margin-bottom: 16px; }
    .page_style > .wp-block-quote cite {
      font-size: 0.9em; }
  .page_style > .wp-block-code code {
    padding: 1em 1.5em;
    display: block;
    background: #222;
    color: #fff; }
  .page_style > ul:not([class*="is-style-li_"]),
  .page_style .wp-block-columns ul:not([class*="is-style-li_"]) {
    margin: 1.3em auto;
    line-height: 1.6em;
    display: grid;
    gap: .6em; }
    .page_style > ul:not([class*="is-style-li_"]) li,
    .page_style .wp-block-columns ul:not([class*="is-style-li_"]) li {
      position: relative;
      margin-left: 1.2em;
      padding-left: 1.7em; }
      @media (max-width: 1080px) {
        .page_style > ul:not([class*="is-style-li_"]) li,
        .page_style .wp-block-columns ul:not([class*="is-style-li_"]) li {
          font-size: 14px; } }
      @media (max-width: 1080px) {
        .page_style > ul:not([class*="is-style-li_"]) li,
        .page_style .wp-block-columns ul:not([class*="is-style-li_"]) li {
          margin-left: 0.5em; } }
      .page_style > ul:not([class*="is-style-li_"]) li::before,
      .page_style .wp-block-columns ul:not([class*="is-style-li_"]) li::before {
        position: absolute;
        top: .55em;
        left: 0;
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #000; }
    .page_style > ul:not([class*="is-style-li_"]) ul,
    .page_style > ul:not([class*="is-style-li_"]) ol,
    .page_style .wp-block-columns ul:not([class*="is-style-li_"]) ul,
    .page_style .wp-block-columns ul:not([class*="is-style-li_"]) ol {
      margin-top: 0.6em; }
  .page_style > ol:not([class*="is-style-li_"]),
  .page_style .wp-block-columns ol:not([class*="is-style-li_"]) {
    margin: 1em auto;
    padding-left: 1em;
    list-style-type: decimal;
    line-height: 1.6em; }
    .page_style > ol:not([class*="is-style-li_"]) li,
    .page_style .wp-block-columns ol:not([class*="is-style-li_"]) li {
      margin-left: 1.2em;
      margin-bottom: 0.8em; }
      @media (max-width: 1080px) {
        .page_style > ol:not([class*="is-style-li_"]) li,
        .page_style .wp-block-columns ol:not([class*="is-style-li_"]) li {
          font-size: 14px !important; } }
      .page_style > ol:not([class*="is-style-li_"]) li ol li,
      .page_style .wp-block-columns ol:not([class*="is-style-li_"]) li ol li {
        margin-left: 0.6em; }
    .page_style > ol:not([class*="is-style-li_"]) ul,
    .page_style > ol:not([class*="is-style-li_"]) ol,
    .page_style .wp-block-columns ol:not([class*="is-style-li_"]) ul,
    .page_style .wp-block-columns ol:not([class*="is-style-li_"]) ol {
      margin-top: 0.6em;
      padding-left: 0; }
  .page_style .wp-block-columns ul:not([class*="is-style-li_"]),
  .page_style .wp-block-columns ol:not([class*="is-style-li_"]) {
    padding-left: 0.3em; }
  .page_style > a {
    color: #1a65a3; }
  .page_style > p a {
    text-decoration: underline; }
    .page_style > p a:hover {
      color: #fa5555; }
  .page_style > figure a {
    border: none; }
  .page_style > .wp-block-image {
    margin: 1.5em 0; }
  .page_style > .wp-block-button a {
    padding: 0.5em 1em;
    font-size: 14px;
    transition: 0.5s;
    text-decoration: none; }
    .page_style > .wp-block-button a:hover {
      opacity: 0.8; }
  .page_style > .wp-block-file a.wp-block-file__button {
    color: #fff;
    text-decoration: none; }
  .page_style > p:not([class]) + .wp-block-table {
    margin-top: 1.5em; }
  .page_style > .wp-block-table {
    max-width: 100%;
    overflow: scroll;
    border-bottom: none;
    letter-spacing: 0;
    line-height: 1.4em;
    font-size: 14px; }
    @media (max-width: 500px) {
      .page_style > .wp-block-table {
        font-size: 14px; } }
    .page_style > .wp-block-table table {
      border-collapse: collapse;
      /* セルの線を重ねる */ }
    .page_style > .wp-block-table thead {
      background: #555;
      color: #fff; }
      .page_style > .wp-block-table thead tr th {
        padding: 0.5em 0.3em;
        border-right: 1px solid #ddd; }
        .page_style > .wp-block-table thead tr th:last-of-type {
          border-right: none; }
    .page_style > .wp-block-table tbody tr th,
    .page_style > .wp-block-table tbody tr td {
      border: solid 1px #ccc;
      /* 枠線指定 */ }
    .page_style > .wp-block-table td {
      padding: 12px; }
      .page_style > .wp-block-table td ul {
        margin: 0;
        padding: 0;
        border: none; }
        .page_style > .wp-block-table td ul li {
          margin: 0;
          padding: 0; }
          .page_style > .wp-block-table td ul li::before {
            display: none; }
  .page_style > .wp-block-table.is-style-stripes thead {
    background: #555;
    color: #fff; }
    .page_style > .wp-block-table.is-style-stripes thead tr th {
      padding: 0.2em;
      border-right: 1px solid #eee;
      color: 0; }
      .page_style > .wp-block-table.is-style-stripes thead tr th:last-of-type {
        border-right: none; }
  .page_style > .wp-block-table.is-style-stripes td {
    padding: 0.2em; }
  @media (max-width: 560px) {
    .page_style > .wp-block-table table.has-fixed-layout {
      width: 500px;
      max-width: initial !important; } }
  .page_style > .wp-block-table + p {
    margin-top: 0 !important;
    padding-top: 0 !important; }
  .page_style > iframe {
    max-width: 100% !important; }
  .page_style > .wp-block-preformatted {
    white-space: inherit; }
  .page_style > .wp-block-video {
    position: relative;
    margin: 24px auto;
    max-width: 832px;
    width: 100%; }
    .page_style > .wp-block-video + p.is-style-p_03, .page_style > .wp-block-video + p.is-style-p_04 {
      margin-top: -12px; }
    .page_style > .wp-block-video::before {
      padding-top: 60%;
      content: "";
      display: block; }
    .page_style > .wp-block-video video {
      position: absolute;
      top: 0;
      left: 16px;
      width: calc(100% - 32px);
      height: 100%;
      object-fit: cover; }
  .page_style > .wp-block-columns {
    margin-bottom: 1em;
    gap: 16px; }
    @media (max-width: 781px) {
      .page_style > .wp-block-columns {
        gap: 0; } }
    .page_style > .wp-block-columns > p:not([class]) {
      display: none; }

/*-----------------
breadcrumb
パンクズ
------------------
.breadcrumb {
    margin-top: -12px;
    margin-bottom: 48px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    @media (max-width: 1120px) {
        padding: 0 16px;
    }
    @media (max-width: 980px) {
        margin-bottom: 24px;
        font-size: 13px;
    }
    @media (max-width: 900px) {
        padding: 0;
    }
    @media (max-width: 600px) {
        margin-bottom: 24px;
        font-size: 11px;
    }
    li {
        margin-right: 16px;
        display: flex;
        align-items: center;
        line-height: 1.6em;
        @media (max-width: 600px) {
            margin-right: 10px;
        }
        &::after {
            content: "";
            margin-top: 1px;
            margin-left: 16px;
            display: block;
            width: 6px;
            height: 6px;
            border-top: 1px solid #222;
            border-right: 1px solid #222;
            transform: rotate(45deg);
            @media (max-width: 600px) {
                margin-left: 8px;
            }
        }
        &:first-of-type {
            margin-left: 0;
        }
        &:last-of-type {
            &::after {
                display: none;
            }
        }
        a {
            color: #222;
            display: block;
            line-height: 3em;
            @media (max-width: 600px) {
                letter-spacing: 0;
            }
            &:hover {
                color: $hover_color;
            }
            svg {
                height: 12px;
                width: auto;
                fill: #222;
                @media (max-width: 600px) {
                    height: 10px;
                }
            }
        }
    }
}*/
