@charset "utf-8";
/*==================================================
共通
==================================================*/
/* -------------------------------------
パンくず _Rank Math SEO
-------------------------------------*/
.breadcrumb-wrap {
  width: min(90%, 1100px);
  margin: 0 auto;
  padding: 20px 0;
  color: var(--color);
  font-size: 0.8em;
  line-height: 1.2;
}
.breadcrumb-wrap ul {
  --gap: 8px;
  display: flex;
  gap: var(--gap);
}
.breadcrumb-wrap ul li:not(:last-child)::after {
  content: ">";
  margin-left: var(--gap);
  font-size: 0.7em;
  color: var(--gray);
}
.breadcrumb-wrap ul li a {
  color: var(--color);
}

/*==================================================
post
==================================================*/
/* -------------------------------------
post aside_R
-------------------------------------**/
.l-container {
  display: grid;
  grid-template-columns: auto 270px;
  gap: 60px;
  padding: 80px 0;
}
.l-container section,
.l-container aside {
  padding: 0;
}
.l-container .l-main {
  width: 100%;
}

/* l-sidebar */
.l-container .l-sidebar {
  width: 100%;
}
.l-sidebar-tit {
  padding-bottom: 5px;
  font-weight: var(--fw_b);
  border-bottom: 1px solid var(--gray);
}
.l-sidebar-category-list li {
  padding: 0.5em;
  font-size: 1.5rem;
  border-bottom: var(--dot);
}
.l-sidebar-category-list li a {
  --bf-width: 15px;
  display: grid;
  grid-template-columns: var(--bf-width) auto;
  align-items: center;
  gap: 5px;
  padding: 5px 0;
}
.l-sidebar-category-list li a:hover {
  color: var(--c-main);
}
.l-sidebar-category-list li a::before {
  content: "";
  width: var(--bf-width);
  aspect-ratio: 1 / 1;
  -webkit-mask: url(../images/ico-arrow-right.svg) center / 100% auto no-repeat;
  mask: url(../images/ico-arrow-right.svg) center / 100% auto no-repeat;
  background: var(--gray);
}

@media (max-width: 520px) {
  .l-container {
    grid-template-columns: 1fr;
    gap: 70px;
    padding: 70px 0;
  }

  /* l-sidebar */
  .l-sidebar-tit {
    padding-bottom: 5px;
    font-weight: var(--fw_b);
    border-bottom: 1px solid var(--gray);
  }
  .l-sidebar-category-list li {
    padding: 0.5em;
    font-size: 1.5rem;
    border-bottom: var(--dot);
  }
  .l-sidebar-category-list li a {
    --bf-width: 15px;
    display: grid;
    grid-template-columns: var(--bf-width) auto;
    align-items: center;
    gap: 5px;
    padding: 5px 0;
  }
  .l-sidebar-category-list li a:hover {
    color: var(--c-main);
  }
  .l-sidebar-category-list li a::before {
    content: "";
    width: var(--bf-width);
    aspect-ratio: 1 / 1;
    -webkit-mask: url(../images/ico-arrow-right.svg) center / 100% auto no-repeat;
    mask: url(../images/ico-arrow-right.svg) center / 100% auto no-repeat;
    background: var(--gray);
  }
}

/* -------------------------------------
post詳細
-------------------------------------**/
/* post-content */
.post-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  word-break: break-word;
  overflow-wrap: anywhere; /* 長い英数字や罫線や記号も自動改行 */
}
.post-content {
}
.post-content a {
  color: var(--c-link);
  text-decoration: underline;
}
.post-content a:hover {
  text-decoration: none;
}
.post-content strong {
  font-weight: bold;
}
/* 見出し */
.post-content :is(h2, h3, h4, h5, h6) {
  font-size: 1.2em;
  font-weight: bold;
}
/* youtube */
.is-type-video div:has(iframe) {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.is-type-video iframe {
  width: 100%;
  height: 100%;
}
/* PDF ファイル */
.post-content .wp-block-file a {
  font-weight: bold;
  font-size: 1.1em;
}
.post-content .wp-block-file__button {
  padding: 10px 2em;
  color: #fff;
  font-weight: bold;
  background: var(--c-main);
}

@media (max-width: 520px) {
  /* post-content */
  .post-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .post-content a {
    color: var(--c-link);
    text-decoration: underline;
  }
  .post-content a:hover {
    text-decoration: none;
  }
  .post-content strong {
    font-weight: bold;
  }
  /* 見出し */
  .post-content :is(h2, h3, h4, h5, h6) {
    font-size: 1.2em;
    font-weight: bold;
  }
  /* youtube */
  .is-type-video div:has(iframe) {
    width: 100%;
    aspect-ratio: 16 / 9;
  }
  .is-type-video iframe {
    width: 100%;
    height: 100%;
  }
  /* PDF ファイル */
  .post-content .wp-block-file a {
    font-weight: bold;
    font-size: 1.1em;
  }
  .post-content .wp-block-file__button {
    padding: 10px 2em;
    color: #fff;
    font-weight: bold;
    background: var(--c-main);
  }
}

/* -------------------------------------
ページネーション  the_posts_pagination()
-------------------------------------*/
.nav-links {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 100px 0 0;
  text-align: center;
}
.nav-links > * {
  display: grid;
  place-content: center;
  width: 30px;
  aspect-ratio: 1/1;
  color: var(--c-main);
  line-height: 1;
}
.nav-links a {
  border: 1px solid var(--c-main);
  /* border-bottom: 1px solid var(--c-main); */
}
.nav-links a:hover {
  background: var(--c-main_l);
}
.nav-links span.current {
  border: none;
  background: var(--c-main_l);
}

/** ==============================================
お問い合わせ
============================================== **/
/* -------------------------------------
フォーム snow_monkey_form
-------------------------------------*/
#autozip {
  display: none !important;
}
.form .smf-form .smf-item .smf-text-control__control {
  width: 100%;
  padding: 1em;
}
/* 項目名 th */
.form .smf-form--business .smf-item__col--label {
  min-width: 250px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 25px 20px;
  color: #fff;
  font-weight: var(--fw_b);
  background: var(--c-main);
}
/* 必須 */
.form .smf-form--business .smf-item__description {
  margin: 0;
  padding: 0;
  font-size: 0.8em;
  color: yellow;
  font-weight: var(--fw_b);
}

/* 内容 td */
.form .smf-form--business .smf-item__col--controls {
  padding: 20px 30px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* td 「郵便番号」などのテキスト */
.form .smf-form--business .smf-item__col--controls p {
  margin: 8px 0 5px;
  font-size: 0.8em;
}
.form .smf-placeholder + p {
  margin-top: 5px;
}
/* td 注釈 */
.form .smf-control-description {
  margin-top: 2px;
  font-size: 0.8em;
}
.form .smf-item__col .smf-item__controls .note {
  color: var(--c-main);
}
/* 日付 */
.form .smf-form .smf-item input[type="date"] {
  max-width: 200px;
}
/* チェックボックス */
.form .smf-form .smf-item .smf-checkboxes-control__control {
  display: flex;
  gap: 1em 2em;
}

/* ボタン */
.form .smf-action .smf-button-control__control {
  width: 300px;
  max-width: 40vw;
  height: 70px;
  margin: 10px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8em;
  color: #fff;
  text-align: center;
  background: var(--c-main);
  border: none;
  cursor: pointer;
}
.form .smf-action .smf-button-control__control:hover {
  opacity: var(--opacity);
}
.form .smf-action .smf-button-control__control[data-action="back"] {
  background: var(--gray);
}

.form .smf-form--business + .smf-action {
  display: flex;
  justify-content: center;
}

/* 個人情報保護方針に同意 */
.form .smf-form--business .smf-item.agree-block {
  text-align: center;
  border: none;
}
.form .smf-form--business .smf-item.agree-block .smf-item__col {
  padding-bottom: 0;
}
.form .smf-form--business .smf-item.agree-block p {
  font-size: 16px;
}
.form .smf-form--business .smf-item.agree-block p strong {
  display: block;
}
.form .smf-form--business .smf-item.agree-block p a {
  color: var(--c-main);
  text-decoration: underline;
}
.form .smf-form--business .smf-item.agree-block .smf-checkboxes-control__control {
  justify-content: center;
}
/* 完了画面 */
.form .smf-complete-content {
  width: min(85%, 700px);
  margin: 50px auto;
}

@media screen and (max-width: 520px) {
  form.snow-monkey-form {
    margin-left: -3%;
    margin-right: -3%;
  }
  .form .smf-form .smf-item .smf-text-control__control {
    padding: 0.8em 0.5em;
  }
  .form .smf-form--business .smf-item__col.smf-item__col--label {
    justify-content: flex-start;
    flex-direction: row;
    gap: 15px;
    padding: 10px;
    line-height: 1.2;
  }
  .form .smf-form--business .require .smf-item__col--label {
    flex-direction: row;
    gap: 12px;
  }
  .form .smf-form--business .smf-item__col.smf-item__col--controls {
    padding: 14px 10px 24px;
  }
}

/** ==============================================
プライバシーポリシー
============================================== **/
#privacy section h2 {
  margin-bottom: 10px;
  font-size: 1.1em;
  font-weight: var(--fw-b);
  line-height: 1.5;
}
#privacy section p + h2 {
  margin-top: 30px;
}
#privacy section p a {
  border-bottom: 1px dotted var(--gray);
}
#privacy section p a:hover {
  color: var(--c-main-d);
  border-color: var(--c-main-d);
  border: none;
}
