@charset "UTF-8";
/*==========================================
変数 inc.scss
===========================================*/
/*==========================================
変数 fonts.scss
===========================================*/
/*===================================
userSS 追加
=====================================*/
.sec-article {
  border-top: 1px solid #000;
  position: relative; }
  .sec-article::before {
    content: "";
    width: 10em;
    display: inline-block;
    height: 1px;
    background: #000;
    position: absolute;
    top: 2em;
    left: 2em;
    transform: translate(-50%, 50%) rotate(-45deg); }
  .sec-article::after {
    content: "";
    width: 1px;
    display: inline-block;
    height: 70%;
    background: #000;
    position: absolute;
    top: 0;
    left: 0%;
    transform: translate(0%, 0); }
    @media screen and (max-width: 960px) {
      .sec-article::after {
        height: 90%; } }
  .sec-article .article-inner {
    overflow-x: hidden; }

.editor-style {
  font-size: clamp(1.6rem, 1.8vw, 1.8rem); }
  @media screen and (min-width: 961px) {
    .editor-style {
      padding-inline: 4%; } }
  @media all and (-ms-high-contrast: none) {
    .editor-style {
      word-break: break-all; } }
  .editor-style p {
    line-height: 2; }
    .editor-style p:not(:last-child) {
      margin-bottom: 3em; }
  .editor-style mark {
    font-weight: bold;
    position: relative;
    z-index: 2; }
    .editor-style mark::after {
      content: "";
      width: 114%;
      display: inline-block;
      background: linear-gradient(transparent 25%, #ff0 75%);
      z-index: 1; }
  .editor-style a {
    color: #005096;
    text-decoration: underline; }
    .editor-style a img {
      transition: 0.3s; }
    .editor-style a:hover {
      text-decoration: underline !important; }
      .editor-style a:hover img {
        opacity: 0.5; }
  .editor-style img {
    height: auto; }
  .editor-style h2 {
    line-height: 1.4;
    font-size: clamp(2rem, 2.8vw, 3.2rem);
    font-weight: bold;
    padding: 0.6em;
    margin: 1em 0 2em;
    position: relative;
    background: #e4ecec; }
  .editor-style h3 {
    font-size: clamp(2rem, 2.4vw, 2.8rem);
    font-weight: bold;
    padding: 0 0 0.5em;
    margin: 1em 0 1.5em;
    line-height: 1.5;
    position: relative;
    border-bottom: 3px solid #000; }
  .editor-style h4 {
    font-size: clamp(1.8rem, 2vw, 2.4rem);
    font-weight: 500;
    margin: 1em 0 1.5em;
    border-left: 7px solid #000;
    padding: 0 0 0 0.6em; }
    @media screen and (max-width: 767px) {
      .editor-style h4 {
        border-width: 4px; } }
  .editor-style h5 {
    border-block: 3px solid #333;
    padding: 0.5em 0;
    margin: 2em 0 2em; }
  .editor-style strong {
    font-weight: bold; }
  .editor-style em {
    font-style: italic; }
  .editor-style ul {
    margin: 2em 0;
    padding: 1.0em 2em;
    background: #e4ecec; }
    @media screen and (max-width: 767px) {
      .editor-style ul {
        padding: 1em; } }
    .editor-style ul li {
      position: relative;
      padding: 0 0 0 1.5em; }
      .editor-style ul li:not(:last-child) {
        margin-bottom: 0.7em; }
      .editor-style ul li::before {
        content: "";
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        font-weight: 500;
        top: 0;
        left: 0;
        position: absolute; }
  .editor-style ol {
    margin: 4em 0;
    border: 1px solid #000;
    padding: 1.0em 2em;
    counter-reset: number; }
    @media screen and (max-width: 767px) {
      .editor-style ol {
        padding: 1em; } }
    .editor-style ol li {
      padding: 0 0 0 2.5em;
      position: relative; }
      .editor-style ol li::before {
        position: absolute;
        font-family: "Outfit";
        content: counter(number);
        counter-increment: number;
        left: 0;
        width: 1.5em;
        aspect-ratio: 1/1;
        border-radius: 50%;
        background: #352E2C;
        color: white;
        font-weight: 500;
        text-align: center;
        vertical-align: middle;
        display: flex;
        justify-content: center;
        align-items: center; }
      .editor-style ol li:not(:last-child) {
        margin-bottom: 1em; }
  .editor-style .blocks-gallery-grid,
  .editor-style .wp-block-gallery {
    margin: 0; }
  .editor-style li.blocks-gallery-item {
    padding-left: 0; }
    .editor-style li.blocks-gallery-item::before {
      display: none; }
  .editor-style .wp-block-table {
    margin-block: 4em; }
  .editor-style .wp-block-image {
    margin-block: 4em; }
  .editor-style .wp-block-buttons {
    margin-block: 4em; }
    @media screen and (max-width: 767px) {
      .editor-style .wp-block-buttons {
        flex-direction: column; } }
    @media screen and (max-width: 767px) {
      .editor-style .wp-block-buttons .wp-block-button:last-of-type {
        margin-top: 2em; } }
    .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-50 {
      width: calc(50% - var(--wp--style--block-gap, .5em) * .5); }
      @media screen and (max-width: 767px) {
        .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-50 {
          width: 100%; } }
    .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-75 {
      width: calc(50% - var(--wp--style--block-gap, .5em) * .5); }
      @media screen and (max-width: 767px) {
        .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-75 {
          width: 100%; } }
  .editor-style .wp-block-columns {
    margin-block: 2em; }
  .editor-style .wp-block-table thead {
    border-bottom: 0px solid;
    background: #e4ecec;
    border: 1px solid #000; }
  .editor-style hr {
    border-top: 3px solid #000;
    width: 70%;
    margin: clamp(30px, 6vw, 60px) auto; }
  .editor-style table {
    width: 100%; }
    .editor-style table th, .editor-style table td {
      border: 1px solid #352E2C;
      padding: 1em; }
    .editor-style table th {
      text-align: center; }
      .editor-style table th:not(:first-of-type) {
        border-left: 1px solid #000; }

/*==========================================
 動的一覧共通
===========================================*/
body {
  overflow: initial !important; }

.news-list .news-item .more-arrow {
  min-width: 10px;
  left: 0px;
  transition: 0.3s ease-in-out;
  position: relative;
  fill: #000;
  max-width: 2em;
  transition: all 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s; }
  @media screen and (max-width: 960px) {
    .news-list .news-item .more-arrow {
      display: none; } }
  .news-list .news-item .more-arrow .st0 {
    fill: none;
    stroke: #000;
    stroke-miterlimit: 10;
    transition: all 0.3s cubic-bezier(0.8, 0, 0.2, 1) 0s; }
.news-list .news-item a {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  padding: 0 0 1.6em;
  margin: 0 0 2em;
  border-bottom: 1px solid #352E2C;
  color: #352E2C; }
  @media (hover: hover) {
    .news-list .news-item a:hover:hover .more-arrow {
      rotate: 360deg; }
    .news-list .news-item a:hover:hover .item-ttl {
      padding-left: 1em; } }
.news-list .news-item .item-head {
  min-width: 180px;
  position: relative;
  margin-bottom: 1rem;
  display: flex;
  align-items: flex-end;
  letter-spacing: 0.1em; }
.news-list .news-item .item-date {
  display: inline-block;
  letter-spacing: 0.05em;
  font-weight: 600; }
.news-list .news-item .item-cate {
  display: inline-block;
  font-family: "Outfit";
  background: #352E2C;
  border-radius: 100vmax;
  padding: 0.1em 0.75em 0;
  display: inline-block;
  margin-right: 1em;
  color: #fff;
  min-width: 4em;
  font-size: clamp(1rem, 0.8334vw, 1.6rem);
  text-align: center; }
  @media screen and (max-width: 960px) {
    .news-list .news-item .item-cate {
      font-size: clamp(1rem, 2.8334vw, 1.6rem); } }
  .news-list .news-item .item-cate.news {
    background: #fff;
    color: #352E2C;
    border: 1px solid #352E2C; }
.news-list .news-item .item-body {
  width: 100%;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .news-list .news-item .item-body {
      margin-top: 0.3em; } }
.news-list .news-item .new-area {
  display: inline-block;
  position: relative;
  left: 0; }
  .news-list .news-item .new-area span {
    display: none; }
  .news-list .news-item .new-area .new {
    font-size: 1.4rem;
    display: inline-block;
    color: #ff0000;
    border: 1px solid #ff0000;
    border-radius: 20px;
    padding: 0 0.7em 0.2em;
    margin-right: 0.2em; }
.news-list .news-item .item-ttl-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%; }
.news-list .news-item .item-ttl {
  transition: 0s;
  letter-spacing: 0.1em;
  width: 100%;
  padding-right: 1em;
  font-weight: 600;
  font-size: 1.6rem;
  padding-left: 0em;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  transition: 0.3s ease-in-out;
  display: flex;
  align-items: flex-start; }
  @media screen and (max-width: 767px) {
    .news-list .news-item .item-ttl {
      -webkit-line-clamp: 2;
      font-size: clamp(1.4rem, 0.9375vw, 1.6rem); } }

/*==========================================
 　一覧
===========================================*/
.archive .breadcrumbs_area {
  margin-top: clamp(100px, 15vw, 150px); }

/*==========================================
 　詳細
===========================================*/
.single .article-block {
  background: #fff;
  padding: clamp(40px, 8vw, 80px) min(4%, 80px); }
.single .article-head {
  margin-bottom: clamp(60px, 10vw, 100px); }
.single .article-ttl {
  font-size: clamp(2.2rem, 3vw, 4rem);
  font-weight: bold;
  letter-spacing: 0.1em; }
.single .article-date {
  margin-top: 1em;
  font-family: "Outfit";
  font-weight: 500;
  letter-spacing: 0.1em;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 0.8em 0; }

/*# sourceMappingURL=news.css.map */
