/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */
/* 本文 */
/* サイト全体のスムーズスクロールをブラウザレベルで禁止 */
html, body {
    scroll-behavior: auto !important;
}
body, .et_pb_text, .et_pb_promo, .et_pb_blurb, .et_pb_module {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}
/* 見出し */
h1,h2,h3,h4,h5,h6,
.et_pb_module_header, .et_pb_cta_0 h2 {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
    font-weight:bold;
}
.mintyou-font{
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif;
}
@media (min-width: 981px) {
    .et_pb_gutters3 .et_pb_column_3_4, .et_pb_gutters3.et_pb_row .et_pb_column_3_4 {
        width: 79.625%;
    }
}


 @media (min-width: 981px) {
    .et_pb_gutters3 .et_pb_column_1_4, .et_pb_gutters3.et_pb_row .et_pb_column_1_4 {
        width: 14.875%;
    }
}
.footerflex{
    display: flex;
    flex-direction: column;
    align-items: flex-end;  /* 右に寄せる */
}
.footbox{
    width:80%!important;
}
.et_pb_blurb_0_tb_footer.et_pb_blurb{

}
@media (max-width: 767px) {
    .footbox{
    width:100%!important;
    
}
}
@media (min-width: 981px) and (max-width: 1380px) {
    .footbox{
    width:100%!important;
    }
}
/* 例：見出しや文章ブロックの親（今の対象に合わせてください） */
.entry2-content {
  display: flex;
  align-items: center;      /* 縦中央 */
  gap: 0.4em;               /* 文字に比例して間隔も変わる */
}

.entry2-content::before {
  content: "";
  width: 1.2em;             /* ← 文字サイズに追従 */
  height: 1.2em;            /* ← 文字サイズに追従 */
  flex-shrink: 0;
  background: url("/wp-content/uploads/2026/02/t-top.webp") no-repeat center / contain;
}
.entry3-content {
  display: flex;
  align-items: center;      /* 縦中央 */
  gap: 0.4em;               /* 文字に比例して間隔も変わる */
}
.entry3-content::before {
  content: "";
  width: 0.7em;             /* ← 文字サイズに追従 */
  height: 0.7em;            /* ← 文字サイズに追従 */
  flex-shrink: 0;
  background: url("/wp-content/uploads/2026/02/t-top.webp") no-repeat center / contain;
}
.entryli-content {
  display: flex;
  align-items: center;      /* 縦中央 */
  gap: 0.4em;               /* 文字に比例して間隔も変わる */
}
.entryli-content::before {
  content: "";
  width: 1em;             /* ← 文字サイズに追従 */
  height: 1em;            /* ← 文字サイズに追従 */
  flex-shrink: 0;
  background: url("/wp-content/uploads/2026/02/rightarrow.webp") no-repeat center / contain;
}
.et_pb_row {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mark-content{
  display: flex;
  align-items: center;      /* 縦中央 */
  gap: 0.6em;               /* 文字に比例して間隔も変わる */
}

.mark-content h3 {
  border:1px solid #A48B78;
  border-radius:8px;
  padding:8px;
  width:auto;
}

@media (max-width: 767px) {
.mark-content h3 {
  width:30%;
}
}

.atention-content{
  display: flex;
  align-items: center;      /* 縦中央 */
  gap: 0.6em; 
  background:#F5F3EC;
  padding:12px;              /* 文字に比例して間隔も変わる */
  align-items: center;      /* 縦中央 */
  gap: 0.4em;               /* 文字に比例して間隔も変わる */
}

.atention-content h3{
    width:15%;
}

.footer-list{
 display:flex;
 flex-direction: row;
}

.footer-list > section{
 width:50%;
 padding:0 15px;
}

@media (max-width: 980px) {
.footer-list{
  display:block;
 flex-direction: column;
}
.footer-list > section{
 width:100%!important;
 padding:0 20px;
}
}
.about-title h3 ,.about-title-arrownone h3 {
  position: relative;
  padding-right: 2em;
  width:100%;
  border-bottom:1px solid #fff;
  margin-bottom:20px;
}

.about-title h3::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 1em;
  height: 1em;
  transform: translateY(-50%);
  background: url("/wp-content/uploads/2026/01/arrow-white.png")
              no-repeat center / contain;
}
@media (max-width: 768px) {
  .about-title h3::after {
    width: 0.9em;
    height: 0.9em;
  }
}
.treatments-list{
 display: flex;
}

.treatments-list li{
 list-style:none;
 font-size:0.9em;
 padding-right:15px;
}
.treatments-list li a{
 color:#fff;
}

.disnone-pc{
  display:none;
}
@media (max-width: 767px) {
.disnone-pc{
  display:block;
}
.sloganback{
  position: relative; /* ← 重ねる基準 */
}

.slogan{
  position: absolute; /* ← これが必須 */
  z-index: 10;

  bottom: 20px;   /* 好みで調整 */
  left: 20px;
  color: #fff;    /* 文字が見えるように */
}
}
.font-min{
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif;
}
 /*お知らせ一覧設定*/
  .news-info {
      background: transparent;
      padding: 10px 20px 20px;
  }
  .news-info h2 {
      color: #505152;
      font-size: 2.3em;
      margin-bottom: 15px;
      font-weight:bold;
      text-align:center;
      font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  }
  .newslist {
      display: flex;
      align-items: center; /* 子要素を垂直方向中央揃え */
      padding: 10px 0;
      position: relative;
      border-bottom: 1px solid #d3d3d3;
  }
  .newslist:first-child {
      border-bottom: 1px solid #d3d3d3;
      border-top: 1px solid #d3d3d3;
  }
  .newslist:last-child {
      border-bottom: 1px solid #d3d3d3;
  }
  /* 日付の配置を完全に中央に */
  .entryday {
      font-size: 1.2em;
      color: #000;
      white-space: nowrap;
      margin-right: 40px; /* 日付とタイトルの間隔 */
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 1.2em; /* 最小限の高さを確保 */
      flex-shrink: 0;
      padding-top:15px;
  }
  /* タイトルの枠全体をリンク化 */
  .news-title {
      font-size: 1.2em;
      color: #000;
      flex: 1;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      display: flex;
      align-items: center; /* 中央揃え */
      position: relative;
  }
  
  /* タイトル枠全体をクリックできるように */
  .news-title a {
      color: #A58D6F;
      text-decoration: none;
      display: block;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; /* 省略記号 (...) を表示 */
      width: 100%;
      height: 100%;
      padding: 10px 0; /* クリック範囲を広げる */
      display: flex;
      align-items: center;
  }
  /* リンクのホバー時のスタイル */
  .news-title a:hover {text-decoration: underline;}
  @media screen and (max-width:768px){
      .news-info h2 {
          color: #505152;
          font-size: 1.9em;
          margin-bottom: 15px;
      }
  }
  .flex-two{
    display:flex;
    justify-content:space-between;
  }
  .flex-two-space{
    display:flex;
    justify-content: space-between;
    }
  .inwidth-2{width:18%;}
  .inwidth-3{width:28%;}
  .inwidth-4{width:38%;}
  .inwidth-5{width:48%;}
  .inwidth-6{width:58%;}
  .inwidth-7{width:68%;}
  .inwidth-8{width:78%;}
  .inwidth-9{width:88%;}
  .inwidth-10{width:100%;}
  .pad-left10{padding-left:10px;}
  .pad-left20{padding-left:20px;}

  .sp-none{
   display:block;
  }
  .pc-none{
    display:none;
  }
  .upperarrow{display: block; margin-left: auto; margin-right: auto; padding-top: 35px; width: 17%;}
   .upperarrow-2{display: block; margin-left: auto; margin-right: auto; padding-top: 0px; width: 16%;}
  .underarrow{ display: block; margin-left: auto; margin-right: auto; padding-top: 20px; width: 22%;}
  .underarrow-2{ display: block; margin-left: auto; margin-right: auto; padding-top: 25px; width: 19%;}
  .underarrow-3{ display: block; margin-left: auto; margin-right: auto; padding-top: 0px; width: 19%;}

@media (max-width: 768px){
   .flex-two{
    display:flex;
     flex-direction: row;
  }
  .flex-two-space{
    display:flex;
    justify-content: space-between;
    }
    .sp-none{
   display:none;
  }
  .pc-none{
    display:block;
  }
  .upperarrow{padding-top: 0px; width: 20%;}
  .underarrow{padding-top: 0px; width: 22%;}
}

  /* =========================
   Sterile Flow (1→2→3 ↓ 4←5←6)
   - 981px以上〜769px：3列×2段（矢印は横、上段は3つ目の下に↓）
   - 768px以下：縦並び（各ステップの下に↓、横矢印は非表示）
   ========================= */

.sterile-flow{
  --gap: 28px;
  --arrowW: 28px;      /* 横矢印サイズ */
  --downW: 34px;       /* 下矢印サイズ */
  --arrowOpacity: 0.55;
  max-width: 1100px;
  margin: 0 auto;
}

/* 行（上段・下段共通） */
.flow-row{
  display: flex;
  align-items: center;        /* 横矢印を天地センターに */
  justify-content: center;
  gap: var(--gap);
}

/* 各ステップ */
.flow-step{
  flex: 1 1 0;
  min-width: 0;
  text-align: center;
}

.flow-photo{
  width: 170px;
  height: 170px;
  object-fit: cover;
  border-radius: 9999px;
  display: block;
  margin: 0 auto 14px;
}

.flow-title{
  margin: 0 0 8px;
  font-size: 1.4em;
  line-height: 1.35;
}

.flow-text{
  margin: 0;
  font-size: 1.1em;
  line-height: 1.75;
  color: rgba(0,0,0,.72);
  width:230px;
  text-align:left;
  margin:0 auto;
}

/* 横矢印（→、←） */
.flow-arrow--h{
  width: var(--arrowW);
  height: auto;
  /*opacity: var(--arrowOpacity);*/
  flex: 0 0 auto;
  display: block;
}

/* 下段の leftarrow.webp をそのまま左向きで表示したいので
   is-reverse は「打ち消し」にしておく（過去の反転指定の名残対策） */
.flow-row--bottom .flow-arrow--h.is-reverse{
  transform: none;
}

/* HTMLにある under-arrow-b は使わない（中央配置になるため） */
.sterile-flow > .under-arrow-b{
  display: none;
}

/* 上段rowに下矢印分の余白 */
.flow-row--top{
  position: relative;
  padding-bottom: 46px; /* 下矢印スペース */
}

/* 3つ目の直下に下矢印 */
.flow-row--top .flow-step:last-of-type{
  position: relative;
}
.flow-row--top .flow-step:last-of-type::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -38px; /* ここを調整すると “3つ目との距離” が変わる */
  transform: translateX(-50%);
  width: var(--downW);
  height: var(--downW);
  opacity: var(--arrowOpacity);
  background-image: url("/wp-content/uploads/2026/02/underarrow.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* 上段と下段の間の余白（PC/タブレットのみ欲しい） */
.flow-row--bottom{
  margin-top: 40px;
}

/* モバイル時だけ表示したい under-arrow（※あなたの要望） */
.under-arrow{
  display: none;
  width: var(--downW);
  height: auto;
  margin: 18px auto 0;
  opacity: var(--arrowOpacity);
}

/* =========================
   768px以下：縦並び
   - 横矢印は消す
   - 各ステップの下に↓を自動挿入（最後は除外）
   - PC用の「上段3つ目↓」と「段間40px」は解除
   ========================= */
@media (max-width: 768px){

  .flow-row{
    flex-direction: column;
    gap: 14px;
  }

  /* 横矢印は消す */
  .flow-arrow--h{
    display: none;
  }
/* HTMLにある under-arrow-b は使わない（中央配置になるため） */
.sterile-flow > .under-arrow-b{
  display: block;
  width: var(--arrowW);
  height: auto;
  margin:10px auto 20px;
}
  /* PC用：上段の余白＆3つ目↓ を解除（縦並び用に切替） */
  .flow-row--top{
    padding-bottom: 0;
  }
  .flow-row--top .flow-step:last-of-type::after{
    content: none;
  }
  .flow-text{
  width:270px;
}

  /* 段間40pxも解除 */
  .flow-row--bottom{
    margin-top: 0;
  }

  /* 縦並び：各ステップの下に↓（最後のステップは除外） */
  .flow-row .flow-step{
    position: relative;
    padding-bottom: 18px;
  }

  .flow-row .flow-step::after{
    content: "";
    display: block;
    width: var(--downW);
    height: var(--downW);
    margin: 10px auto 0;
    opacity: var(--arrowOpacity);
    background-image: url("/wp-content/uploads/2026/02/underarrow.webp");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }

  .flow-row .flow-step:last-of-type{
    padding-bottom: 0;
  }
  .flow-row .flow-step:last-of-type::after{
    content: none;
  }

  /* モバイル時だけ見せたい under-arrow（必要なら） */
  .under-arrow{
    display: block;
  }

  /* サイズ微調整（必要なら） */
  .flow-photo{
    width: 160px;
    height: 160px;
  }
}
/* タイトル上のワンポイントアクセント */
.title-accent{
  position: relative;
  padding-top: 18px; /* 線と文字の間隔（好みで調整） */
}

.title-accent::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 2px;
  background-color: #AC9171;
}
.mobile_menu_bar:before{
  font-size: 48px;

}
.topheader-txt{
display: flex;
  justify-content: flex-end;  
}
.topimg{
 text-align:right;
  width:42%;
  line-height:1.5em;
  padding:35px 25px;
  border-radius:25px;
  background:rgba(165,141,111,0.77);
}

.topimg p{
  font-family: 游明朝, YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "MS P明朝", "MS 明朝", serif;
  font-weight:bold;
 text-align:left;
}
@media (max-width: 980px){
.topimg{
  width:60%;
  padding:25px 25px;
  border-radius:25px;
}
  
}

@media (max-width: 768px){
.topimg{
  width:100%;
  padding:15px 15px;
  border-radius:25px;
}
  
  
}