/* ///////////////////////
全体設定
////////////////////// */
a {
  text-decoration: none;
  color: #4a4a4a;
}
a:hover {
  text-decoration: none;
}
/* 見出しのフォントサイズ */
@media screen and (max-width: 639px) {
  .wp-block-heading {
    --_font-size-level: 3;
  }
  h2 {
    --_font-size-level: 2;
  }
}

/* ///////////////////////
共通設定
////////////////////// */
.section-heading h2 {
  position: relative;
  text-align: center;
}

.section-heading h2::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background-color: #e8b4b8;
  margin: 14px auto 0;
  border-radius: 999px;
}

/* ///////////////////////
フォント設定
////////////////////// */
.zen-maru-gothic {
  font-family: "Zen Maru Gothic", sans-serif;
}

/* ///////////////////////
ヘッダー
////////////////////// */
/* 電話 設定 */
.header-above a {
  font-weight: bold;
  font-size: 1.2em;
  letter-spacing: 1.5px;
  line-height: 1;
}
.header-wrapper1 a {
  font-weight: bold;
}

/* ///////////////////////
フッター
////////////////////// */
.l-footer {
  background-color: #8b8680;
  color: #fff;
  border-top: none;
}
.l-footer--footer-1 .l-footer__footer {
  background-color: #8b8680;
  color: #fff;
}

/* 固定フッターの装飾 */
.p-footer-sticky-nav {
  background-color: transparent;
}
.p-footer-sticky-nav .footer-menu_sp {
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
}
.p-footer-sticky-nav .footer-menu_sp a {
  font-size: 1rem;
}
.menu_tel {
  background-color: gray;
  color: #fff;
}

/* ///////////////////////
ドロワーメニュー
////////////////////// */

/* ///////////////////////
トップページ
////////////////////// */
/* ///////////////////////
fv
////////////////////// */
.fv {
  padding-inline: 25px;
}
.fv-text__top {
  width: fit-content;
  margin-left: 0 !important;
}

/* ///////////////////////
特徴
////////////////////// */
.features__contents .features__item .smb-panels__item {
  border-radius: 20px;
}
.features__contents .smb-panels__item__body {
  text-align: center;
  padding: 30px 40px;
}
/* アイコン装飾 */
.features__contents .features__item .wp-block-image {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #ffe4e1;
}

/* ///////////////////////
診療内容
////////////////////// */
.services .services__item .smb-panels__item {
  background: radial-gradient(
    circle at top left,
    #ffffff 0%,
    #fffafa 35%,
    #fff5f5 100%
  );
  border: 1px solid #ffe4e1;
  border-radius: 20px;
  box-shadow: 0 4px 20px rgba(232, 180, 184, 0.15);
}
/* 診療案内テーブル装飾 */
.treatment-table {
  border-radius: 20px;
  padding: 15px;
  background-color: #fff;
}
.treatment-table table tbody tr:nth-child(1),
.treatment-table table tbody tr:nth-child(2) {
  border-bottom: 1px dotted;
}

/* //////////
アクセス
///////// */
/* tdの幅の設定 */
.access-table tbody tr td:first-of-type {
  width: 110px;
}
/* スマホ・タブ時、真ん中よせ */
@media only screen and (max-width: 1023px) {
  .access .access-table table {
    display: flex;
    justify-content: center;
  }
}

/*  */
.contact .tel-block a {
  font-size: 40px;
}

/* ///////////////////////
ここから下層ページ
////////////////////// */
/* ////////////////////////
下層ページ全体設定
//////////////////////// */
/* ヘッダー下の余白を消す */
.page .l-contents__inner {
  padding-top: 0;
  padding-bottom: 0;
}
/* 見出しを表示しない */
.page .c-entry__header {
  display: none;
}

/* ////////////////////////
お問合せ
//////////////////////// */
/* 確認画面で説明文非表示に */
[data-screen="confirm"] .input {
  display: none;
}
[data-screen="input"] .confirm,
[data-screen="invalid"] .confirm {
  display: none;
}
/* ボタンの文字を太字に */
.snow-monkey-form--button-has-accent-color .smf-button-control__control {
  font-weight: bold;
}
/* 必須の文字装飾 */
.smf-item__label__text {
  display: flex;
  gap: 12px;
  align-items: center;
}
.smf-item__label__text::after {
  content: "必須";
  color: #fff;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 22px;
  background-color: #dd3234;
  border-radius: 4px;
  font-size: 12px;
  font-weight: bold;
}

/* 任意の文字装飾 */
.is-optional .smf-item__label__text::after {
  content: "任意";
  color: #fff;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 22px;
  background-color: green;
  border-radius: 4px;
  font-size: 12px;
  font-weight: bold;
}
