@charset "UTF-8";
@import url("header.css");
body,
h1,
h2,
h3,
h4,
h5,
table,
th,
td,
ul,
li,
ol,
dl,
dt,
dd,
form,
fieldset,
p,
figure,
button {
  margin: 0px;
  padding: 0px;
  font-weight: 500;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: 22px;
  line-height: 2;
  letter-spacing: 0.05em;
  text-underline-offset: 3px;
  color: #212121;
}
@media only screen and (max-width: 767px) {
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  table,
  th,
  td,
  ul,
  li,
  ol,
  dl,
  dt,
  dd,
  form,
  fieldset,
  p,
  figure,
  button {
    font-size: 16px;
  }
}
@media only screen and (max-width: 480px) {
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  table,
  th,
  td,
  ul,
  li,
  ol,
  dl,
  dt,
  dd,
  form,
  fieldset,
  p,
  figure,
  button {
    font-size: 14px;
  }
}
@media only screen and (max-width: 350px) {
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  table,
  th,
  td,
  ul,
  li,
  ol,
  dl,
  dt,
  dd,
  form,
  fieldset,
  p,
  figure,
  button {
    font-size: 14px;
  }
}

table {
  border-collapse: collapse;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}
a img {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

input,
textArea,
select,
button {
  background: none;
  margin: 0px;
  outline: none;
  padding: 0px;
  font-weight: normal;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  -webkit-appearance: none;
}

select {
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
}

button {
  cursor: pointer;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*                link
======================================================= */
a {
  color: #212121;
  text-decoration: none;
}

@media only screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.p-news-kv {
  height: 340px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 0;
}

.p-news-kv__inner {
  max-width: 1100px;
  padding: 0 50px;
  margin: auto;
  width: 100%;
}

.p-news-kv__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  font-size: 33px;
}

.p-news-kv__img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
}

.p-news-section {
  padding: 50px 0;
}

.p-news-container {
  max-width: 1300px;
  margin: auto;
  padding: 0 50px;
}

.p-news__item + .p-news__item {
  margin-top: 100px;
}

.p-news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 20px;
}

.p-news__date {
  font-size: 14px;
}

.p-news__cat {
  background-color: #633400;
  color: #fff;
  padding: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6px 10px 3px;
  font-weight: bold;
  font-size: 12px;
}

.p-news__title {
  margin-top: 30px;
  font-size: 50px;
  font-weight: bold;
  color: var(--title-color);
}

.news-detail {
  margin-top: 40px;
  font-size: 24px;
}
.news-detail p {
  margin-bottom: 1em;
}
.news-detail h2 {
  font-size: 40px;
  font-weight: bold;
}
.news-detail h3 {
  font-size: 30px;
  font-weight: bold;
}
.news-detail h4 {
  font-weight: bold;
}
.news-detail .wp-block-heading {
  margin-bottom: 1em;
}
.news-detail a {
  color: #006638;
  text-decoration: underline;
}
@media only screen and (min-width: 768px) {
  .news-detail a:hover {
    text-decoration: none;
  }
}
.news-detail * + h2,
.news-detail * + h3,
.news-detail * + h4 {
  margin-top: 2em;
}
.news-detail *:first-child {
  margin-top: 0;
}
.news-detail .wp-block-list {
  list-style: none;
}
.news-detail :where(figure) {
  margin-bottom: 0;
}
.news-detail :where(.wp-block-columns.is-layout-flex) {
  gap: 40rem;
}
.news-detail :where(figure),
.news-detail figure,
.news-detail .wp-block-columns {
  margin-bottom: 0;
}
.news-detail .wp-block-image img {
  max-width: none;
  width: 100%;
}
.news-detail .wp-block-image .alignleft {
  @apply float-none ml-0 mr-auto;
}
.news-detail .wp-block-image .alignright {
  @apply float-none mr-0 ml-auto;
}
.news-detail .wp-element-caption {
  @apply text-15 font-medium leading-[1.8];
}
.news-detail ul > li {
  position: relative;
  padding-left: 16px;
}
.news-detail ul > li::before {
  content: "";
  position: absolute;
  top: 15px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #6b2d16;
  border-radius: 50%;
}
.news-detail ol {
  counter-reset: my-counter; /* カウンターをリセット */
}
.news-detail ol > li {
  counter-increment: my-counter; /* カウンターをインクリメント */
  position: relative;
  padding-left: 1.8em;
}
.news-detail ol > li::before {
  content: counter(my-counter); /* 数字を出力 */
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
  width: 1em;
  text-align: right;
}
.news-detail .wp-block-table tr {
  @apply flex flex-col md:flex-row;
}
.news-detail .wp-block-table td {
  vertical-align: top;
  @apply md:first-letter:border-y border-black bg-white p-16 text-17;
}
.news-detail .wp-block-table td:first-child {
  @apply font-bold;
}
.news-detail .wp-block-columns {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important;
}
@media only screen and (min-width: 768px) {
  .news-detail .wp-block-columns {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
  }
}
.news-detail .wp-block-columns.is-layout-flex {
  gap: 20rem !important;
}
@media only screen and (min-width: 1272px) {
  .news-detail .wp-block-columns.is-layout-flex {
    gap: 40rem !important;
  }
}
.news-detail .wp-block-button__link {
  @apply flex justify-center items-center px-32 h-60 text-20;
}
.news-detail ul,
.news-detail ol {
  margin-bottom: 20px;
}

.gutenberg {
  padding-bottom: 60rem;
}