@charset "UTF-8";
/* ===============================================
# remのclamp
=============================================== */
/* ===============================================
# ブラウザ幅でフォントサイズを変える関数
=============================================== */
/* ===============================================
# 下層
=============================================== */
#contents {
  /* ===============================================
  # レイアウト
  =============================================== */
  /* ===============================================
  # ユーティリティクラス
  =============================================== */
  /* ===============================================
  # 見出し
  =============================================== */
  /* ===============================================
  # テーブル
  =============================================== */
  /* ===============================================
  # コンポーネント
  =============================================== */
  /* ===============================================
  # セクションごと
  =============================================== */
}
#contents p {
  margin-bottom: 1.25em;
}
#contents p:last-of-type {
  margin-bottom: 0;
}
#contents figure figcaption {
  text-align: center;
  margin-top: 0.625em;
}
#contents .contents-header {
  background: url(../img/l_h1_bg.jpg) no-repeat center center/cover;
  height: auto;
  padding: clamp(100px, 8.125vw, 130px) 0;
}
@media (max-width: 480px) {
  #contents .contents-header {
    padding: 60px 0;
  }
}
#contents .contents-header .contents-header__in .contents-header__ttl {
  color: #311515;
  font-size: 3rem;
  text-align: center;
}
@media (max-width: 480px) {
  #contents .contents-header .contents-header__in .contents-header__ttl {
    font-size: 2.8rem;
  }
}
#contents .breadcrumbs {
  background: transparent;
  margin-top: 20px;
}
#contents .main-contents {
  margin-top: 100px;
}
@media (max-width: 480px) {
  #contents .main-contents {
    margin-top: 50px;
  }
}
#contents .main-contents > section {
  margin-bottom: 100px;
  padding: 0;
}
@media (max-width: 480px) {
  #contents .main-contents > section {
    margin-bottom: 70px;
  }
}
#contents .main-contents > section.last-sec {
  margin-bottom: 115px;
}
@media (max-width: 480px) {
  #contents .main-contents > section.last-sec {
    margin-bottom: 80px;
  }
}
#contents .main-contents > section.bg-color {
  background: #F9F9F9;
  padding: 100px 0;
}
@media (max-width: 480px) {
  #contents .main-contents > section.bg-color {
    padding: 50px 0;
  }
}
#contents .wrap {
  width: calc(1100px + 12%);
}
#contents .flex_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 3.64%;
     -moz-column-gap: 3.64%;
          column-gap: 3.64%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (max-width: 480px) {
  #contents .flex_box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: clamp(20px, 7.6923076923vw, 30px);
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (max-width: 480px) {
  #contents .flex_box.sp_col {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
#contents .flex_box .img_area {
  width: 51.82%;
}
@media (max-width: 480px) {
  #contents .flex_box .img_area {
    width: 100%;
  }
}
#contents .flex_box .text_area {
  width: 44.55%;
}
@media (max-width: 480px) {
  #contents .flex_box .text_area {
    width: 100%;
  }
}
#contents .flex_box .col {
  width: 50%;
}
@media (max-width: 480px) {
  #contents .flex_box .col {
    width: 100%;
  }
}
#contents .flex_box .w10 {
  width: 10%;
}
@media (max-width: 480px) {
  #contents .flex_box .w10 {
    width: 100%;
  }
}
#contents .flex_box .w20 {
  width: 20%;
}
@media (max-width: 480px) {
  #contents .flex_box .w20 {
    width: 100%;
  }
}
#contents .flex_box .w30 {
  width: 30%;
}
@media (max-width: 480px) {
  #contents .flex_box .w30 {
    width: 100%;
  }
}
#contents .flex_box .w40 {
  width: 40%;
}
@media (max-width: 480px) {
  #contents .flex_box .w40 {
    width: 100%;
  }
}
#contents .flex_box .w50 {
  width: 50%;
}
@media (max-width: 480px) {
  #contents .flex_box .w50 {
    width: 100%;
  }
}
#contents .flex_box .w60 {
  width: 60%;
}
@media (max-width: 480px) {
  #contents .flex_box .w60 {
    width: 100%;
  }
}
#contents .flex_box .w70 {
  width: 70%;
}
@media (max-width: 480px) {
  #contents .flex_box .w70 {
    width: 100%;
  }
}
#contents .flex_box .w80 {
  width: 80%;
}
@media (max-width: 480px) {
  #contents .flex_box .w80 {
    width: 100%;
  }
}
#contents .flex_box .w90 {
  width: 90%;
}
@media (max-width: 480px) {
  #contents .flex_box .w90 {
    width: 100%;
  }
}
@media (max-width: 480px) {
  #contents .flex_box.box_reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
#contents .flex_box .w12 {
  width: 12%;
}
@media (max-width: 480px) {
  #contents .flex_box .w12 {
    width: 100%;
  }
}
#contents .flex_box .w88 {
  width: 88%;
}
@media (max-width: 480px) {
  #contents .flex_box .w88 {
    width: 100%;
  }
}
#contents .u_mb0 {
  margin-bottom: 0px;
}
#contents .u_mb10 {
  margin-bottom: 10px;
}
#contents .u_mb20 {
  margin-bottom: 20px;
}
#contents .u_mb30 {
  margin-bottom: 30px;
}
@media (max-width: 480px) {
  #contents .u_mb30 {
    margin-bottom: 25px;
  }
}
#contents .u_mb40 {
  margin-bottom: 40px;
}
@media (max-width: 480px) {
  #contents .u_mb40 {
    margin-bottom: 35px;
  }
}
#contents .u_mb50 {
  margin-bottom: 50px;
}
@media (max-width: 480px) {
  #contents .u_mb50 {
    margin-bottom: 45px;
  }
}
#contents .u_mb60 {
  margin-bottom: 60px;
}
@media (max-width: 480px) {
  #contents .u_mb60 {
    margin-bottom: 40px;
  }
}
#contents .u_mb80 {
  margin-bottom: 80px;
}
@media (max-width: 480px) {
  #contents .u_mb80 {
    margin-bottom: 60px;
  }
}
#contents .u_mb120 {
  margin-bottom: 120px;
}
@media (max-width: 480px) {
  #contents .u_mb120 {
    margin-bottom: 80px;
  }
}
#contents .text_12 {
  font-size: 12px;
}
@media (max-width: 480px) {
  #contents .text_12 {
    font-size: 11px;
  }
}
#contents .text_14 {
  font-size: 14px;
}
@media (max-width: 480px) {
  #contents .text_14 {
    font-size: 12px;
  }
}
#contents .text_16 {
  font-size: 16px;
}
@media (max-width: 480px) {
  #contents .text_16 {
    font-size: 14px;
  }
}
#contents .text_18 {
  font-size: 18px;
}
@media (max-width: 480px) {
  #contents .text_18 {
    font-size: 16px;
  }
}
#contents .text_20 {
  font-size: 20px;
}
@media (max-width: 480px) {
  #contents .text_20 {
    font-size: 18px;
  }
}
#contents .text_22 {
  font-size: 22px;
}
@media (max-width: 480px) {
  #contents .text_22 {
    font-size: 20px;
  }
}
#contents .text_24 {
  font-size: 24px;
}
@media (max-width: 480px) {
  #contents .text_24 {
    font-size: 20px;
  }
}
#contents .text_28 {
  font-size: 28px;
}
@media (max-width: 480px) {
  #contents .text_28 {
    font-size: 22px;
  }
}
#contents .al_start {
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
}
#contents .al_center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#contents .js_cneter {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contents .flex_center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contents .re_center {
  text-align: center;
}
@media (max-width: 480px) {
  #contents .re_center {
    text-align: start;
  }
}
#contents .u_center {
  text-align: center;
}
#contents .u_start {
  text-align: start;
}
#contents .u_end {
  text-align: end;
}
#contents .primary-color {
  color: #6A2929;
}
#contents .secondary-color {
  color: #DAC2A9;
}
#contents .text-red {
  color: red;
}
#contents .indent {
  text-indent: -1em;
  padding-left: 1em;
  display: block;
}
#contents .fw500 {
  font-weight: 500;
}
@media (max-width: 480px) {
  #contents .spw80 {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 480px) {
  #contents .spw50 {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 480px) {
  #contents .spw30 {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
  }
}
#contents h2.unit-ttl01 {
  font-size: 3.5rem;
  text-align: center;
  padding-bottom: 0.5714285714em;
  position: relative;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-weight: 500;
  margin-bottom: 0.8571428571em;
}
@media (max-width: 480px) {
  #contents h2.unit-ttl01 {
    font-size: 2.4rem;
  }
}
#contents h2.unit-ttl01::before {
  content: "";
  display: block;
  width: 69px;
  height: 1px;
  background: #B9886E;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#contents h2.border-ttl {
  font-weight: bold;
  text-align: left;
  font-size: 3rem;
  border-bottom: solid 1px #CACACA;
  position: relative;
  z-index: 0;
  padding-bottom: 0.6666666667em;
  margin-bottom: 1em;
}
@media (max-width: 480px) {
  #contents h2.border-ttl {
    font-size: 2.2rem;
  }
}
#contents h2.border-ttl::before {
  content: "";
  display: block;
  width: 2.5666666667em;
  height: 1px;
  background: #B9886E;
  position: absolute;
  top: auto;
  bottom: -1px;
  left: 0;
  right: auto;
  z-index: 1;
}
#contents h2.border-ttl .num {
  font-weight: 300;
  color: #6A2929;
  font-size: 1.6rem;
  line-height: 2.5;
  display: inline-block;
  margin-right: 0.625em;
  letter-spacing: 0;
}
#contents h2.border-ttl .sub {
  display: block;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.6;
  margin-top: 0.25em;
}
@media (max-width: 480px) {
  #contents h2.border-ttl .sub {
    font-size: 1.6rem;
  }
}
#contents h2.border-ttl.--small {
  font-size: 2.4rem;
}
@media (max-width: 480px) {
  #contents h2.border-ttl.--small {
    font-size: 2rem;
  }
}
#contents h3.under-h3 {
  position: relative;
  font-size: 2.4rem;
  padding-left: 0.5769230769em;
  font-weight: 600;
  margin-bottom: 1.25em;
}
@media (max-width: 480px) {
  #contents h3.under-h3 {
    font-size: 2rem;
  }
}
#contents h3.under-h3:before {
  content: "";
  display: block;
  position: absolute;
  width: 2px;
  height: 1em;
  top: 0.3em;
  left: 0;
  background: #6A2929;
}
#contents .table-default {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #C2C2C2;
  border-spacing: 0;
}
#contents .table-default th,
#contents .table-default td {
  padding: 16px 16px;
  text-align: left;
  border: 1px solid #C2C2C2;
  line-height: 1.6;
}
@media (max-width: 767px) {
  #contents .table-default th,
  #contents .table-default td {
    padding: 10px 8px;
  }
}
#contents .table-default thead th {
  background-color: #6A2929;
  color: #fff;
  text-align: center;
  font-weight: 500;
}
#contents .table-default tbody th {
  background-color: #F9F9F9;
}
#contents .table-default tbody td {
  background: #fff;
}
#contents .works-table th,
#contents .works-table td {
  font-size: 1.5rem;
}
@media (max-width: 480px) {
  #contents .works-table th,
  #contents .works-table td {
    font-size: 1.4rem;
  }
}
@media (max-width: 480px) {
  #contents .main-contents .c-btn-sec {
    margin-bottom: 40px;
  }
}
#contents .under-btns {
  margin: auto;
}
#contents .under-btns.--small {
  max-width: 858px;
}
#contents .under-btns.flex_box {
  -webkit-box-align: normal;
  -webkit-align-items: normal;
      -ms-flex-align: normal;
          align-items: normal;
}
#contents .under-btns.flex_box > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 480px) {
  #contents .under-btns.flex_box {
    row-gap: 10px;
    -webkit-column-gap: 6px;
       -moz-column-gap: 6px;
            column-gap: 6px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
#contents .under-btns.flex_box > div {
  width: calc(50% - 6px);
}
#contents .under-btns .button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
#contents .under-btns .button a {
  width: 100%;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 480px) {
  #contents .under-btns .button a {
    font-size: 1.4rem;
    padding: 0.8em 20px;
  }
}
#contents .highlight {
  background: #F9F9F9;
  padding: 30px 40px 36px;
}
@media (max-width: 480px) {
  #contents .highlight {
    padding: 24px 6%;
  }
}
#contents .c-list li {
  list-style: none;
  position: relative;
  padding-left: 1.25em;
  line-height: 1.7;
}
#contents .c-list li:not(:last-child) {
  margin-bottom: 1em;
}
#contents .c-list li::before {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  background: #6A2929;
  position: absolute;
  top: 0.6em;
  bottom: auto;
  left: 0;
  right: auto;
  border-radius: 50%;
}
#contents .c-list.--fw500 li {
  font-weight: 500;
}
#contents .c-list.--small li:not(:last-child) {
  margin-bottom: 0.375em;
}
#contents .contents1-sec1 .unit-ttl01 {
  font-size: 2rem;
  padding-bottom: 1em;
  margin-bottom: 5em;
  line-height: 1.6;
}
@media (max-width: 480px) {
  #contents .contents1-sec1 .unit-ttl01 {
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 40px;
  }
}
#contents .contents1-sec1 .u-bsBox:not(:first-of-type) {
  margin-top: 80px;
}
@media (max-width: 480px) {
  #contents .contents1-sec1 .u-bsBox:not(:first-of-type) {
    margin-top: 60px;
  }
}
#contents .contents1-sec1 .u-bsBox__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
#contents .contents1-sec1 .u-bsBox__img {
  width: 42.3636363636%;
}
@media (max-width: 480px) {
  #contents .contents1-sec1 .u-bsBox__img {
    width: 100%;
    margin-bottom: 30px;
  }
}
#contents .contents1-sec1 .u-bsBox__text {
  width: 57.6363636364%;
  padding-left: 37px;
}
@media (max-width: 480px) {
  #contents .contents1-sec1 .u-bsBox__text {
    width: 100%;
    padding-left: 0;
  }
}
#contents .u-workImg {
  position: relative;
}
#contents .u-workImg figcaption {
  position: absolute;
  color: #fff;
  bottom: 20px;
  right: 20px;
  font-weight: bold;
  font-size: 1.4rem;
  display: table;
  text-align: left;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
}
@media (max-width: 480px) {
  #contents .u-workImg figcaption {
    right: 10px;
    bottom: 10px;
  }
}
#contents .greeting-large-text {
  font-size: 2.4rem;
  color: #6A2929;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
@media (max-width: 480px) {
  #contents .greeting-large-text {
    font-size: 2rem;
  }
}
#contents .map-sec {
  position: relative;
  padding-top: 450px;
}
@media (max-width: 480px) {
  #contents .map-sec {
    padding-top: 90%;
  }
}
#contents .map-sec iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#contents .map-note {
  background: #F9F9F9;
  padding: 14px;
}
#contents .map-note > p {
  text-align: center;
  position: relative;
}
@media (max-width: 480px) {
  #contents .map-note > p {
    text-align: left;
  }
}
#contents .map-note > p::before {
  content: "＋－";
  font-size: 110%;
  letter-spacing: 4px;
  color: #303030;
  margin-right: 6px;
  padding: 0 1px 0 5px;
  border: 1px solid #303030;
}
#contents .u-greetingImg {
  background: rgba(218, 194, 169, 0.3);
  padding: 12px;
}
@media (max-width: 480px) {
  #contents .u-greetingImg > img {
    margin: auto;
    width: 50%;
  }
}
#contents .u-greetingImg figcaption {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  text-align: left;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contents .u-greetingImg figcaption img {
  width: 36px;
}
@media (max-width: 480px) {
  #contents .u-greetingImg figcaption img {
    width: 33px;
  }
}
#contents .u-greetingImg__name .name {
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
@media (max-width: 480px) {
  #contents .u-greetingImg__name .name {
    font-size: 1.8rem;
  }
}/*# sourceMappingURL=contents.css.map */