@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/





/* --- 事業所情報・実績テーブル (28px) --- */
.emc-info-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 30px;
  font-size: 28px; /* ご指定のサイズ */
  color: #000085;
}

.emc-info-table th,
.emc-info-table td {
  padding: 25px; /* 28pxの文字が窮屈にならないよう広めに */
  border-bottom: 1px solid #a5d1ff;
  text-align: left;
}

.emc-info-table th {
  width: 30%;
  background-color: #a5d1ff33; /* H2の色の透過版で統一感 */
  font-weight: 600;
  vertical-align: top;
}

/* 注釈などの小さな文字用 */
.emc-info-note {
  font-size: 18px;
  display: block;
  margin-top: 10px;
  color: #666;
  line-height: 1.5;
}

/* スマホ対応 */
@media screen and (max-width: 768px) {
  .emc-profile-flex {
    flex-direction: column;
  }
  .emc-info-table {
    font-size: 20px; /* スマホでは28pxは大きすぎるため調整 */
  }
  .emc-info-table th,
  .emc-info-table td {
    display: block;
    width: 100%;
    padding: 15px;
  }
  .emc-info-table th {
    background-color: #a5d1ff55;
  }
}

/* □□（ここまで）「弊所について」の、ご挨拶文のボックス装飾 */




/* ■うざい記号を消す */
/* 指定した全ページの不要な要素を一括非表示 */
/* 全ページ共通で消したい要素を一気に指定 */

.page-id-7662 .copyright,
.page-id-7662 .entry-title,
.page-id-7662 .date-tags,
.page-id-7662 .breadcrumb,
.page-id-7662 .author-info,
.page-id-7665 .copyright,
.page-id-7665 .entry-title,
.page-id-7665 .date-tags,
.page-id-7665 .breadcrumb,
.page-id-7665 .author-info,
.page-id-7777 .copyright,
.page-id-7777 .entry-title,
.page-id-7777 .date-tags,
.page-id-7777 .breadcrumb,
.page-id-7777 .author-info,
.page-id-7789 .copyright,
.page-id-7789 .entry-title,
.page-id-7789 .date-tags,
.page-id-7789 .breadcrumb,
.page-id-7789 .author-info,
.page-id-7801 .copyright,
.page-id-7801 .entry-title,
.page-id-7801 .date-tags,
.page-id-7801 .breadcrumb,
.page-id-7801 .author-info,
.page-id-7813 .copyright,
.page-id-7813 .entry-title,
.page-id-7813 .date-tags,
.page-id-7813 .breadcrumb,
.page-id-7813 .author-info,
.page-id-7825 .copyright,
.page-id-7825 .entry-title,
.page-id-7825 .date-tags,
.page-id-7825 .breadcrumb,
.page-id-7825 .author-info,
.page-id-7837 .copyright,
.page-id-7837 .entry-title,
.page-id-7837 .date-tags,
.page-id-7837 .breadcrumb,
.page-id-7837 .author-info,
.page-id-7693 .copyright,
.page-id-7693 .entry-title,
.page-id-7693 .date-tags,
.page-id-7693 .breadcrumb,
.page-id-7693 .author-info,
.page-id-7738 .copyright,
.page-id-7738 .entry-title,
.page-id-7738 .date-tags,
.page-id-7738 .breadcrumb,
.page-id-7738 .author-info,
.page-id-7778 .copyright,
.page-id-7778 .entry-title,
.page-id-7778 .date-tags,
.page-id-7778 .breadcrumb,
.page-id-7778 .author-info,
.page-id-7790 .copyright,
.page-id-7790 .entry-title,
.page-id-7790 .date-tags,
.page-id-7790 .breadcrumb,
.page-id-7790 .author-info,
.page-id-7802 .copyright,
.page-id-7802 .entry-title,
.page-id-7802 .date-tags,
.page-id-7802 .breadcrumb,
.page-id-7802 .author-info,
.page-id-7814 .copyright,
.page-id-7814 .entry-title,
.page-id-7814 .date-tags,
.page-id-7814 .breadcrumb,
.page-id-7814 .author-info,
.page-id-7826 .copyright,
.page-id-7826 .entry-title,
.page-id-7826 .date-tags,
.page-id-7826 .breadcrumb,
.page-id-7826 .author-info,
.page-id-7838 .copyright,
.page-id-7838 .entry-title,
.page-id-7838 .date-tags,
.page-id-7838 .breadcrumb,
.page-id-7838 .author-info,
.page-id-7709 .copyright,
.page-id-7709 .entry-title,
.page-id-7709 .date-tags,
.page-id-7709 .breadcrumb,
.page-id-7709 .author-info,
.page-id-7739 .copyright,
.page-id-7739 .entry-title,
.page-id-7739 .date-tags,
.page-id-7739 .breadcrumb,
.page-id-7739 .author-info,
.page-id-7779 .copyright,
.page-id-7779 .entry-title,
.page-id-7779 .date-tags,
.page-id-7779 .breadcrumb,
.page-id-7779 .author-info,
.page-id-7791 .copyright,
.page-id-7791 .entry-title,
.page-id-7791 .date-tags,
.page-id-7791 .breadcrumb,
.page-id-7791 .author-info,
.page-id-7803 .copyright,
.page-id-7803 .entry-title,
.page-id-7803 .date-tags,
.page-id-7803 .breadcrumb,
.page-id-7803 .author-info,
.page-id-7815 .copyright,
.page-id-7815 .entry-title,
.page-id-7815 .date-tags,
.page-id-7815 .breadcrumb,
.page-id-7815 .author-info,
.page-id-7827 .copyright,
.page-id-7827 .entry-title,
.page-id-7827 .date-tags,
.page-id-7827 .breadcrumb,
.page-id-7827 .author-info,
.page-id-7839 .copyright,
.page-id-7839 .entry-title,
.page-id-7839 .date-tags,
.page-id-7839 .breadcrumb,
.page-id-7839 .author-info,
.page-id-7710 .copyright,
.page-id-7710 .entry-title,
.page-id-7710 .date-tags,
.page-id-7710 .breadcrumb,
.page-id-7710 .author-info,
.page-id-7740 .copyright,
.page-id-7740 .entry-title,
.page-id-7740 .date-tags,
.page-id-7740 .breadcrumb,
.page-id-7740 .author-info,
.page-id-7780 .copyright,
.page-id-7780 .entry-title,
.page-id-7780 .date-tags,
.page-id-7780 .breadcrumb,
.page-id-7780 .author-info,
.page-id-7792 .copyright,
.page-id-7792 .entry-title,
.page-id-7792 .date-tags,
.page-id-7792 .breadcrumb,
.page-id-7792 .author-info,
.page-id-7804 .copyright,
.page-id-7804 .entry-title,
.page-id-7804 .date-tags,
.page-id-7804 .breadcrumb,
.page-id-7804 .author-info,
.page-id-7816 .copyright,
.page-id-7816 .entry-title,
.page-id-7816 .date-tags,
.page-id-7816 .breadcrumb,
.page-id-7816 .author-info,
.page-id-7828 .copyright,
.page-id-7828 .entry-title,
.page-id-7828 .date-tags,
.page-id-7828 .breadcrumb,
.page-id-7828 .author-info,
.page-id-7840 .copyright,
.page-id-7840 .entry-title,
.page-id-7840 .date-tags,
.page-id-7840 .breadcrumb,
.page-id-7840 .author-info,
.page-id-7712 .copyright,
.page-id-7712 .entry-title,
.page-id-7712 .date-tags,
.page-id-7712 .breadcrumb,
.page-id-7712 .author-info,
.page-id-7736 .copyright,
.page-id-7736 .entry-title,
.page-id-7736 .date-tags,
.page-id-7736 .breadcrumb,
.page-id-7736 .author-info,
.page-id-7781 .copyright,
.page-id-7781 .entry-title,
.page-id-7781 .date-tags,
.page-id-7781 .breadcrumb,
.page-id-7781 .author-info,
.page-id-7793 .copyright,
.page-id-7793 .entry-title,
.page-id-7793 .date-tags,
.page-id-7793 .breadcrumb,
.page-id-7793 .author-info,
.page-id-7805 .copyright,
.page-id-7805 .entry-title,
.page-id-7805 .date-tags,
.page-id-7805 .breadcrumb,
.page-id-7805 .author-info,
.page-id-7817 .copyright,
.page-id-7817 .entry-title,
.page-id-7817 .date-tags,
.page-id-7817 .breadcrumb,
.page-id-7817 .author-info,
.page-id-7829 .copyright,
.page-id-7829 .entry-title,
.page-id-7829 .date-tags,
.page-id-7829 .breadcrumb,
.page-id-7829 .author-info,
.page-id-7841 .copyright,
.page-id-7841 .entry-title,
.page-id-7841 .date-tags,
.page-id-7841 .breadcrumb,
.page-id-7841 .author-info,
.page-id-7711 .copyright,
.page-id-7711 .entry-title,
.page-id-7711 .date-tags,
.page-id-7711 .breadcrumb,
.page-id-7711 .author-info,
.page-id-7737 .copyright,
.page-id-7737 .entry-title,
.page-id-7737 .date-tags,
.page-id-7737 .breadcrumb,
.page-id-7737 .author-info,
.page-id-7782 .copyright,
.page-id-7782 .entry-title,
.page-id-7782 .date-tags,
.page-id-7782 .breadcrumb,
.page-id-7782 .author-info,
.page-id-7794 .copyright,
.page-id-7794 .entry-title,
.page-id-7794 .date-tags,
.page-id-7794 .breadcrumb,
.page-id-7794 .author-info,
.page-id-7806 .copyright,
.page-id-7806 .entry-title,
.page-id-7806 .date-tags,
.page-id-7806 .breadcrumb,
.page-id-7806 .author-info,
.page-id-7818 .copyright,
.page-id-7818 .entry-title,
.page-id-7818 .date-tags,
.page-id-7818 .breadcrumb,
.page-id-7818 .author-info,
.page-id-7830 .copyright,
.page-id-7830 .entry-title,
.page-id-7830 .date-tags,
.page-id-7830 .breadcrumb,
.page-id-7830 .author-info,
.page-id-7842 .copyright,
.page-id-7842 .entry-title,
.page-id-7842 .date-tags,
.page-id-7842 .breadcrumb,
.page-id-7842 .author-info,
.page-id-6 .copyright,
.page-id-6 .entry-title,
.page-id-6 .date-tags,
.page-id-6 .breadcrumb,
.page-id-6 .author-info,
.page-id-19 .copyright,
.page-id-19 .entry-title,
.page-id-19 .date-tags,
.page-id-19 .breadcrumb,
.page-id-19 .author-info,
.page-id-21 .copyright,
.page-id-21 .entry-title,
.page-id-21 .date-tags,
.page-id-21 .breadcrumb,
.page-id-21 .author-info,
.page-id-48 .copyright,
.page-id-48 .entry-title,
.page-id-48 .date-tags,
.page-id-48 .breadcrumb,
.page-id-48 .author-info,
.page-id-50 .copyright,
.page-id-50 .entry-title,
.page-id-50 .date-tags,
.page-id-50 .breadcrumb,
.page-id-50 .author-info,
.page-id-52 .copyright,
.page-id-52 .entry-title,
.page-id-52 .date-tags,
.page-id-52 .breadcrumb,
.page-id-52 .author-info,
.page-id-2124 .copyright,
.page-id-2124 .entry-title,
.page-id-2124 .date-tags,
.page-id-2124 .breadcrumb,
.page-id-2124 .author-info,
.page-id-3003 .copyright,
.page-id-3003 .entry-title,
.page-id-3003 .date-tags,
.page-id-3003 .breadcrumb,
.page-id-3003 .author-info,
.page-id-5031 .copyright,
.page-id-5031 .entry-title,
.page-id-5031 .date-tags,
.page-id-5031 .breadcrumb,
.page-id-5031 .author-info,
.page-id-4983 .copyright,
.page-id-4983 .entry-title,
.page-id-4983 .date-tags,
.page-id-4983 .breadcrumb,
.page-id-4983 .author-info,
.page-id-4297 .copyright,
.page-id-4297 .entry-title,
.page-id-4297 .date-tags,
.page-id-4297 .breadcrumb,
.page-id-4297 .author-info {
  display: none;
}

/* ■(ここまで) * うざい記号を消す */

/* ■CF7のいろんな設定 */
/* □送信ボタン */
/* 未入力グレー、入力済黄色制御 */
.page-id-2124 .wpcf7-submit {
  background-color: #8a8a8a !important;
  color: #4a4a4a !important;
  height: 150px;
  width: 100%;
  max-width: 600px;
  display: block;
  margin: 0 auto;
  font-size: 28px;
  font-weight: bold;
  border-radius: 20px;
  border: none !important;
  cursor: not-allowed;
  transition: all 0.3s ease;
  pointer-events: none;
  opacity: 0.7;
}

/* チェックが入って「有効」になった時の色（黄色＋濃い黄枠） */
.page-id-2124 .wpcf7-submit:not([disabled]) {
  background-color: #dee400 !important;
  color: #2b2b2b !important;
  font-size: 32px;
  border: 2px solid #b8bd00 !important;
  cursor: pointer;
  pointer-events: auto;
  opacity: 1;
  box-shadow: 0 4px 10px #b8bd00 !important;
}

.page-id-2124 .wpcf7-submit:not([disabled]):hover {
  background-color: #a7ac00 !important;
  border-color: #8e9300 !important;
  transform: translateY(-2px);
}

/* □プライバシーポリシーのチェックマークをデカくした */
.page-id-2124 .wpcf7-list-item {
  display: flex;
  align-items: center;
  margin: 100px 20px 50px 180px; /* ここはお好みで調整してください */
  cursor: pointer;
}

.page-id-2124 input[type="checkbox"] {
  transform: scale(3);
  margin-right: 15px;
  cursor: pointer;
}

.page-id-2124 .wpcf7-list-item-label {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #333;
}

.page-id-2124 .wpcf7-list-item-label a {
  color: #648fff;
  text-decoration: underline;
}

/* □これは「送信完了」「未入力があります」メッセをボタンのすぐ上に表示させる設定 */
.page-id-2124 .wpcf7-form {
  display: flex;
  flex-direction: column;
}

.page-id-2124 .wpcf7-form > div,
.page-id-2124 .wpcf7-form > p {
  order: 1;
}
/* □以下はそっとしておいて。リキャプチャがスパムとみなすと「赤文字で送信されました」とか出すので、それの回避 */

/* 【重要】メッセージボックスの基本色：送信されたら「緑」に固定 */
.page-id-2124 .wpcf7-response-output {
  order: 2 !important;
  margin: 20px 0 !important;
  padding: 20px !important;
  font-size: 28px !important;
  line-height: 1.4;
  font-weight: bold;
  border: 4px solid #008a02 !important; /* 成功の緑枠 */
  background-color: #e6fffa !important; /* 成功の薄緑背景 */
  color: #005403 !important; /* 成功の文字色 */
}

/* 【重要】入力不備（空欄）の時だけ「赤」に強制上書き */
/* クラスを2つ繋げて詳細度を上げ、上の緑設定を打ち消します */
.page-id-2124 .wpcf7-response-output.wpcf7-validation-errors {
  border-color: #ff0000 !important;
  background-color: #fff5f5 !important;
  color: #ff0000 !important;
}

/* 送信ボタンの塊を一番下に */
.page-id-2124 .wpcf7-form > p:has(.wpcf7-submit),
.page-id-2124 .wpcf7-form > div:has(.wpcf7-submit),
.page-id-2124 .wpcf7-submit {
  order: 3 !important;
  margin-top: 10px !important;
}

/* ---【最終決戦】メッセージボックスの出し分け完全版 --- */

/* 1. 基本設定：送信が動いた後は「緑」にする（reCAPTCHA対策） */
.page-id-2124 div.wpcf7-response-output {
  order: 2 !important;
  margin: 20px 0 !important;
  padding: 20px !important;
  font-size: 28px !important;
  line-height: 1.4;
  font-weight: bold;
  border: 4px solid #008a02 !important; /* 成功の緑枠 */
  background-color: #e6fffa !important; /* 成功の薄緑背景 */
  color: #005403 !important;
}

/* 2. 入力不備（空欄）の時だけ「赤」に強制上書き */
/* 親が invalid（不備）または unaccepted（未承諾）の時は赤にする */
.page-id-2124 form.invalid div.wpcf7-response-output,
.page-id-2124 form.unaccepted div.wpcf7-response-output,
.page-id-2124 div.wpcf7-response-output.wpcf7-validation-errors {
  border-color: #ff0000 !important; /* 強制赤枠 */
  background-color: #fff5f5 !important; /* 強制薄赤 */
  color: #ff0000 !important;
}

/* ■（ここまで） * CF7のいろんな設定 */


/* ■トップへ戻るボタン（いまのところこれで） */
/* =============================================
 * 【最終完全版】トップへ戻るボタン：文字拡大・視認性最大化
 * ============================================= */

/* 1. ボタン本体（青い四角） */
.go-to-top-button {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  position: fixed !important;
  bottom: 30px !important;
  right: 30px !important;
  width: 75px !important; /* 文字拡大に合わせて少し広げました */
  height: 75px !important;
  background-color: #5e5affff !important;
  border-radius: 4px !important;
  z-index: 9999 !important;
  border: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* これ、かっこよく緊急ページだけ紫色にしている。 */
.page-id-19 .go-to-top-button {
  background-color: #8228bf !important;
}

/* 2. 矢印アイコン（白・大きく） */
/* 2. 矢印部分（FontAwesomeを使わずCSSで描画） */
.go-to-top-button .fa,
.go-to-top-button .fa-angle-double-up {
  display: none !important; /* 既存のアイコンは隠す */
}

.go-to-top-button::before {
  content: "" !important;
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  border-top: 4px solid #ffffff !important;
  border-left: 4px solid #ffffff !important;
  transform: rotate(45deg) !important;
  margin-bottom: 5px !important;
  margin-top: 5px !important;
}


/* 3. TOPの文字（14px・極太・拡大版） */
.go-to-top-button::after {
  content: "TOP" !important;
  display: block !important;
  color: #ffffff !important;
  font-family: "Arial Black", sans-serif !important;
  font-size: 14px !important; /* 大きくしました */
  font-weight: 900 !important; /* ぶ厚くしました */
  line-height: 1 !important;
  letter-spacing: 1px !important;
}

/* 4. ホバー時の動き */
.go-to-top-button:hover {
  background-color: #000085 !important;
  transform: translateY(-5px) !important;
  transition: 0.3s ease !important;
}
/* ■（ここまで）トップへ戻るボタン */



/* 真ん中（main）の背景色 */
/*メインの背景色 cocoonの「設定→全体」でも変わらなかった白いところを変更するCSS */
.page-id-7662 .main,
.page-id-7665 .main,
.page-id-7777 .main,
.page-id-7789 .main,
.page-id-7801 .main,
.page-id-7813 .main,
.page-id-7825 .main,
.page-id-7837 .main,
.page-id-7693 .main,
.page-id-7738 .main,
.page-id-7778 .main,
.page-id-7790 .main,
.page-id-7802 .main,
.page-id-7814 .main,
.page-id-7826 .main,
.page-id-7838 .main,
.page-id-7709 .main,
.page-id-7739 .main,
.page-id-7779 .main,
.page-id-7791 .main,
.page-id-7803 .main,
.page-id-7815 .main,
.page-id-7827 .main,
.page-id-7839 .main,
.page-id-7710 .main,
.page-id-7740 .main,
.page-id-7780 .main,
.page-id-7792 .main,
.page-id-7804 .main,
.page-id-7816 .main,
.page-id-7828 .main,
.page-id-7840 .main,
.page-id-7712 .main,
.page-id-7736 .main,
.page-id-7781 .main,
.page-id-7793 .main,
.page-id-7805 .main,
.page-id-7817 .main,
.page-id-7829 .main,
.page-id-7841 .main,
.page-id-7711 .main,
.page-id-7737 .main,
.page-id-7782 .main,
.page-id-7794 .main,
.page-id-7806 .main,
.page-id-7818 .main,
.page-id-7830 .main,
.page-id-7842 .main,
.page-id-6 .main,
.page-id-19 .main,
.page-id-21 .main,
.page-id-48 .main,
.page-id-50 .main,
.page-id-52 .main,
.page-id-2124 .main,
.page-id-3003 .main,
.page-id-5031 .main,
.page-id-4983 .main,
.page-id-4297 .main {
  background-color: #f0f0ff;
}


/* 【左グラ】緊急ページ見分け */
/* 1200px以上の広幅ディスプレイ時のみ適用 */
@media screen and (min-width: 1200px) {
  /* 【緊急サービス用：ページID 19】 */
  body.page-id-19 {
    background: linear-gradient(
        to right,
        #d3b2ff 0%,
        #d3b2ff69 4%,
        #f0f0ff 8%,
        #f0f0ff 92%,
        #d3b2ff69 96%,
        #d3b2ff 100%
      )
      fixed #f0f0ff !important; /* 背景色を固定してスクロールしても色を維持 */
  }
}

/* 【左グラ】トップ、最適解、弊所 */
/* 1200px以上の広幅ディスプレイ時のみ適用 */
@media screen and (min-width: 1200px) {
  /* 【ページID 6 21,52】 */
  body.page-id-6,
  body.page-id-5031,
  body.page-id-52 {
    background: linear-gradient(
        to right,
        #0f52ff4a 0%,
        #0f52ff1f 4%,
        #f0f0ff 8%,
        #f0f0ff 92%,
        #0f52ff1f 96%,
        #0f52ff4a 100%
      )
      fixed #f0f0ff !important; /* 背景色を固定してスクロールしても色を維持 */
  }
}

/* 【左グラ】最適解ページ見分け */
/* 1200px以上の広幅ディスプレイ時のみ適用 */
@media screen and (min-width: 1200px) {
  /* 【通常サービス用：ページID 21】 */
  body.page-id-21 {
    background: linear-gradient(
        to right,
        #3e54a387 0%,
        #5776e661 4%,
        #f0f0ff 8%,
        #f0f0ff 92%,
        #5776e661 96%,
        #3e54a387 100%
      )
      fixed #f0f0ff !important; /* 背景色を固定してスクロールしても色を維持 */
  }
}










/* 社名ヘッダーロゴ 上下padding削り */

/* ロゴの上下余白調整 SVGコード自体はcoccon設定→アクセス解析のフッターにはいっているけど、それはさわらずこっちで追加CSS書いたほうがいいらしい、AI談 */

/* 自作ロゴ(SVG)自体の余白とサイズ制御 */
.my-custom-logo {
  line-height: 0; /* 下側の謎の隙間を排除 */
  display: flex;
  align-items: center;
  justify-content: center;
}

.my-custom-logo svg {
  height: 40px; /* ★ロゴの縦幅：ここでヘッダーの太さが決まります */
  width: auto; /* 横幅は比率を維持 */
  padding: 0 !important;
  margin: 0 !important;
}

/* ヘッダー全体の余白をさらに追い込む */
.logo-header .site-name-text-link {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: block; /* クリック範囲を適正化 */
}

/* スマホ表示（480px以下）の微調整 */
@media screen and (max-width: 480px) {
  .my-custom-logo svg {
    height: 30px; /* スマホでは少し小さくしてヘッダーを細くする */
  }
}

/* （ここまで）社名ヘッダーロゴ 上下padding削り */



/* ■ ロゴ・レイアウト・ヘッダー完全統合版（2026/03/06）
   ・ヘッダー上下余白調整（20px/10px）
   ・PCワイド表示 & スマホレスポンシブ
   ・メインエリア余白リセット これもっていくとエラーがでるなぁ */

/* --- 1. 共通設定：タグ・クラスの基本動作 --- */
.tagline {
  display: none !important;
}

.my-custom-logo svg,
.SVG {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto;
  line-height: 1 !important;
}

/* --- 2. ヘッダー・ロゴ基本設定（上下余白含む） --- */
.header-container-in {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-direction: row !important;
}

/* ロゴの器：ここで上下の余白を制御 */
.logo-header {
  padding-top: 20px !important; /* ★PCでの上下余白 */
  padding-bottom: 20px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
}

.logo-header .my-custom-logo {
  display: flex !important;
  align-items: center !important;
  position: relative !important;
  left: 30px !important;
}

.logo-header .my-custom-logo svg {
  width: 420px !important;
}

.navi-in {
  display: flex !important;
  justify-content: flex-end !important;
}

/* --- 3. メインエリア余白リセット --- */
#main.main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* --- 4. フッターセクション（中央寄せ・重なり解消） --- */
.footer-in {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
	padding:0px 0px 30px 0px;
	width: 100% !important;
  max-width: 100% !important;
}

.footer-in .site-name.site-name-text-link {
  display: inline-flex !important;
  position: relative !important;
  top: -5px !important;
  left: 0 !important;
  height: 35.573px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto 15px auto !important;
  padding: 0 !important;
  text-decoration: none !important;
  min-height: 0 !important;
  line-height: 1 !important;
}

.footer-in .my-custom-logo svg {
  width: 340px !important;
  height: 35.573px !important;
  position: static !important;
}

.footer-bottom-content,
.navi-footer,
.navi-footer-in,
.footer-bottom-logo,
.footer-bottom-menu,
.footer-in .logo-footer,
.footer-in .menu-footer-container {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  clear: both !important;
  position: relative !important;
  z-index: 10 !important;
  margin: 5px auto !important;
  padding: 0 !important;
  left: 0 !important;
}

.menu-footer {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: 10px auto !important;
  padding: 0 !important;
  list-style: none !important;
}

.menu-footer li {
  display: inline-block !important;
  margin: 0 15px !important;
  float: none !important;
}

.footer {
	margin-top:0px;
}


/* --- 5. PCワイド表示専用調整（1201px以上） --- */
@media screen and (min-width: 1201px) {
  body.home #appeal {
    margin-top: 20px !important;
  }
  #header-in.wrap,
  #navi-in.wrap {
    position: relative !important;
    left: -200px !important;
    max-width: 1600px !important;
    width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
  }

  .logo-header {
    margin-right: 50px !important;
  }

  #navi {
    margin-left: 0 !important;
    flex: 0 0 auto !important;
  }

  ul.menu-header {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    margin: 0 !important;
  }

  /* 修正箇所：[class*=""] を使わず、Cocoonの標準クラスを指定 */
  .menu-header .menu-item {
    width: 200px !important;
    min-width: 200px !important;
    flex: 0 0 auto !important;
    margin-right: 5px !important;
  }

  .menu-header .menu-item a {
    font-size: 24px !important;
    white-space: nowrap !important;
  }

  .menu-header .menu-item a br {
    display: none !important;
  }

  main#main,
  .main,
  .entry-content {
    position: relative !important;
    left: 0 !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
		}
	}

/* --- 6. スマホ表示専用調整（480px以下） --- */
@media screen and (max-width: 480px) {
  .logo-header {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    justify-content: center !important;
  }

  .logo-header .my-custom-logo {
    left: 0 !important;
  }

  .logo-header .my-custom-logo svg {
    width: 250px !important;
  }

  .footer-in .my-custom-logo svg {
    width: 150px !important;
  }


}

/* 修正箇所：:not(.home) を使わず、body.page で指定 */
body.page #content.content,
body.page .content,
body.page .entry-content.cf {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* トップページ（.home）だけは余白を戻す（上書き） */
body.home #content.content,
body.home .content,
body.home .entry-content.cf {
  margin-top: inherit !important;
}

/* スマホ表示（480px以下）のフッター調整 */
@media screen and (max-width: 480px) {
  /* 親クラス .footer を付けることで詳細度を上げ、確実に適用させます */
  .footer .footer-bottom {
    margin-top: 0 !important;
    padding-top: 0; /* マージンで足りない場合はパディングも削るのがセオリーです */
  }

  /* ロゴ画像自体のマージンが干渉している場合の予備策 */
  .footer-bottom .footer-bottom-logo {
    margin-top: 0;
    margin-bottom: 5px; /* 下のリンクとの距離を少しだけ確保 */
  }
}

/* ■（ここまで） ロゴ・レイアウト・ヘッダー完全統合版（2026/03/06）
   ・ヘッダー上下余白調整（20px/10px）
   ・PCワイド表示 & スマホレスポンシブ
   ・メインエリア余白リセット これもっていくとエラーがでるなぁ */


/* ■トップ最下段 問い合わせ誘導 */
/* 全体の土台 */
.Contact_main {
  display: flex;
  max-width: 900px;
  gap: 20px;
  align-items: center; /* 左右の高さの中央を揃える（お好みで） */
}

/* 左カラム:!importantを戻すか詳細度を上げて死守 */
.Contact_main .Contact_sub_left {
  flex: 0 0 40% !important;
}

/* 右カラム */
.entry-content .Contact_main .Contact_sub_right {
  flex: 0 0 60% !important;
}

/* 電話 */
.Contact_sub_left .Contact_Cellphone {
  font-size: 28px;
  color: #000085;
  margin: 50px 10px 10px 30px;
}

/* □トップ最下段の「お気軽にお問い合わせ下さい」のカスタムhtml用のCSS */

/* 親コンテナ：横並びと中央揃えを制御 */
.Contact_Container {
  display: flex;
  justify-content: center; /* 左右中央 */
  align-items: center; /* 垂直方向の中央（これでズレない！） */
  gap: 40px; /* 要素間の余白 */
  width: min(1000px, 95%); /* アコーディオンと揃える */
  margin: 40px auto;
  padding: 30px;
  background: #f0f0ff; /* サイトキーカラー */
  border: 2px solid #5e5affff;
  border-radius: 8px;
  box-sizing: border-box;
}

/* 左：電話エリア */
.Contact_Container .Contact_Tel_Box {
  text-align: center;
  color: #000085;
}
.Contact_Container .Contact_Label {
  font-size: 24px;
  font-weight: bold;
}
.Contact_Container .Contact_Tel_Number {
  font-size: 32px;
  font-weight: 800;
  margin: 0;
}

/* 右：ボタンエリア */
.Contact_Mail_Link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #fcff5cff; /* アクセントカラー */
  color: #000085;
  padding: 20px 40px;
  font-size: 22px;
  font-weight: bold;
  text-decoration: none;
  border: 3px solid #999b13;
  transition: 0.3s;
}

.Contact_Mail_Link:hover {
  background-color: #e6e954;
  transform: translateY(-2px); /* 浮き上がる演出 */
}

/* 【重要】スマホ表示：縦に並べる */
@media screen and (max-width: 768px) {
  .Contact_Container {
    flex-direction: column; /* 縦並びに切り替え */
    gap: 20px;
    padding: 20px;
  }
  .Contact_Tel_Number {
    font-size: 26px;
  }
  .Contact_Mail_Link {
    width: 100%;
    font-size: 18px;
  }
}

/* ■（ここまで）トップ最下段 問い合わせ誘導 */



/* ■弊所について：写真付き挨拶文 */

/* はこ */
.emc-profile-container {
  background-color: rgb(227, 233, 255);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);

  border: 1px solid #aacdf3;
  border-left: 4px solid #3194ff;

  margin: 56px 0;
  padding: 40px;
}

.emc-profile-flex {
  display: flex;
  gap: 40px;
  align-items: center;
}

.emc-profile-photo {
  flex: 0 0 300px;
}

.emc-profile-photo img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  border: 1px solid #d5e9ff;
}

/* 文字全体のdiv */
.emc-profile-greeting {
  flex: 1;
  line-height: 1.7;
  color: #000085;
}

/* アオ文字 */
.entry-content .emc-greeting-intro,
.entry-content .emc-greeting-focus {
  font-weight: 600;
  color: #2D42FF;
	
  margin-bottom: 24px;
}


/* =======自己紹介ページ======= */

/* コントラスト対策 */
.emc-profile-greeting .emc-greeting-intro,
.emc-profile-greeting .emc-greeting-focus {
  color: #2D42FF; /* サイトフォント色 */
}


/* くろ文字：絶望的な。。。 */

.entry-content .emc-greeting-finish,
.entry-content .Emc_Para_Black {
  color: #000085;

  margin-bottom: 24px;
}

.emc-greeting-finish strong {
  font-weight: 700;
  color: #000085;
}

@media screen and (max-width: 480px) {
  .emc-profile-container {
    margin: 50px 0;
    padding: 48px 16px;
  }
}

/* ■（ここまで）弊所について：写真付き挨拶文 */





/* ====== 会社概要テーブル ====== */
/* 1. 全体コンテナの配置 */
.entry-content .company-info {
  max-width: 850px;

  margin: 40px 0;
  margin-left: auto;
  margin-right: auto;

  color: #000085; /* サイトフォント色 */
}

/* 2. テーブル本体の構造 */
.company-info .Profile_Table {
  width: 100%;

  border-collapse: collapse;
  border-top: 2px solid #333;
  border-bottom: 2px solid #333;
  table-layout: fixed; /* 列幅を固定してガタつきを防ぐ */
}

/* 3. 左側ラベル（th）の設定：20px */
.company-info .Profile_Table th {
  width: 30%;
  background-color: #e2e2ff;
  border-bottom: 1px solid #cccccc;

  font-size: 17px;
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;

  padding: 24px 16px;
}

/* 4. 右側データ（td）とSVGの設定 */
.company-info .Profile_Table td {
  border-bottom: 1px solid #cccccc;

  vertical-align: middle;

  padding: 24px 16px;
}

/* 右側のSVGを左側の20pxテキストと視覚的に揃える */
.company-info .Profile_Table td svg {
  height: 1.2rem; /* 20pxの文字高さに合わせる黄金比 */
  width: auto;
  vertical-align: middle;
  display: inline-block;
  /* 文字との微細な高さズレを解消 */
  margin-top: -2px;
}

/* 5. 所在地（3段組み）の垂直リズム */
.company-info .address-container {
  display: flex;
  flex-direction: column;
  gap: 10px; /* 20px文字に合わせた適度な行間 */
  align-items: flex-start;
}

.company-info .address-row {
  line-height: 1;
  display: flex;
  align-items: center;
}

/* バーチャルオフィスのコメント */
.company-info .address-note {
  display: block;

  font-size: 0.8rem;
  color: #666;

  margin-top: 12px;
  line-height: 1.5;
}

/* メール */
.company-info .email-link {
  font-size: 18px;
}

/* 6. スマホ対応（480px以下） */
@media screen and (max-width: 480px) {
  .entry-content .Profile_Table_Wrapper {
    width: 100%;

    font-size: 17px;

    margin: 32px 0;
    padding: 0;
  }

  .company-info .Profile_Table th,
  .company-info .Profile_Table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  /* 左側： */
  .company-info .Profile_Table th {
    background-color: #e2e2ff;
    border-bottom: 1px solid #cccccc;

    font-size: 17px;
    color: #000085;

    padding: 16px;
  }

  /* 右側： */
  .company-info .Profile_Table td {
    border-bottom: none;
    padding: 16px;
  }

  /* スマホでSVGがはみ出さないようガード */
  .company-info .Profile_Table td svg {
    max-width: 100%;
    height: auto; /* スマホでは横幅に合わせて縮小を優先 */
    max-height: 1.2rem;
  }
	
/* メール */
  .company-info .email-link {
    font-size: 17px;
  }
}

/* （ここまで）====== 会社概要テーブル ====== */


/* ====== 経歴・実績テーブル ====== */
.entry-content .Career_Record_Wrapper {
  max-width: 850px;

  font-size: 17px;
  color: #000085;

  margin: 40px auto;
}
.Career_Record_Table {
  width: 100%;
  border-collapse: collapse; /* 隣接線一本化らしい */
  border-top: 2px solid #333;
  border-bottom: 2px solid #333;
}

.entry-content .Career_Record_Table th,
.entry-content .Career_Record_Table td {
  padding: 24px 16px;
  vertical-align: middle;
  text-align: left;

  border-bottom: 1px solid #cccccc; /* 項目間のグレー線 */
}

/* 最後の行だけグレー線を消して黒太線と重ならないようにする */
.Career_Record_Table tr:last-child th,
.Career_Record_Table tr:last-child td {
  border-bottom: none;
}

/* 左側：業種・職種・主な経験製品 */
.Career_Record_Table th {
  width: 30%;
  background-color: #e2e2ff;
  font-weight: bold;
}

/* 右側：医療機器・FA機器 */
.cr-label {
  display: inline-block;
  width: 5.5em;
}
/* 右側：全部 */
.Career_Record_Wrapper .cr-item {
  font-size: 16px;
  line-height: 1.6;
  color: #000000;

  margin-bottom: 12px; /* 2段目との行間 */
}

.Career_Record_Wrapper td .cr-item:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 480px) {
  .entry-content .Career_Record_Wrapper {
    width: 100%;

    font-size: 17px;

    margin: 32px 0;
    padding: 0x;
  }

  /* テーブルの中身を縦並びにする設定 */
  .Career_Record_Table th,
  .Career_Record_Table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  .Career_Record_Table {
    border-bottom: none;
  }

  /* 左側：業種・職種・主な経験製品 */
  .entry-content .Career_Record_Table th {
    font-size: 17px;
    color: #000085;

    background-color: #e2e2ff;

    border-bottom: 1px solid #cccccc;
    padding: 16px 16px;
  }

  /* 右側：医療機器・FA機器 */
  .entry-content .Career_Record_Table td {
    border-bottom: none;
    padding: 16px 16px;
  }

  .Career_Record_Table tr:last-child td {
    border-bottom: 2px solid #333;
  }

  .cr-label {
    width: auto;
    display: block;
    margin-bottom: 4px;
  }
}

/* (ここまで)====== 経歴・実績テーブル ====== */

/* ====== カワウソテーブル ====== */
/* PC版 */
.entry-content .Private_Interest_Wrapper {
  max-width: 850px;
  font-size: 17px;
  color: #000085;

  margin: 40px auto;
}

.entry-content .Private_Interest_Table {
  width: 100%;

  border-collapse: collapse;
  border-top: 2px solid #333;
  border-bottom: 2px solid #333;
}

.Private_Interest_Table th,
.Private_Interest_Table td {
  padding: 24px 16px;
  vertical-align: middle;
  text-align: left;
  border: none; /* 中の余計な線を消す */
}

.Private_Interest_Table th {
  width: 30%;
  background-color: #e2e2ff;
  font-weight: bold;
}

/* 趣味・関心のテキストカラー指定 */
.Private_Interest_Wrapper .pi-item {
  font-size: 16px;
  line-height: 1.6;
  color: #000000;
}

/* --- スマホ版（480px以下） --- */
@media screen and (max-width: 480px) {
  /* ハコ */
  .entry-content .Private_Interest_Wrapper {
    width: 100%;

    font-size: 17px;

    margin: 32px 0;
    padding: 0x;
  }

  .Private_Interest_Table th,
  .Private_Interest_Table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }

  .Private_Interest_Table {
    border-bottom: none;
  }

  /* 左側：趣味・関心 */
  .entry-content .Private_Interest_Table th {
    background-color: #e2e2ff;
    border-bottom: 1px solid #cccccc;

    font-size: 17px;
    color: #000085;
    padding: 16px 16px;
  }

  /* 右側：カワウソ */
  .entry-content .Private_Interest_Table td {
    padding: 16px 16px;
    line-height: 1.6;
  }
}

/* （ここまで）====== カワウソテーブル ====== */


/* ■Q&A共通の枠組み */
.entry-content .qa-question,
.entry-content .qa-answer {
  position: relative;

  font-size: max(16px, 1.1vw);
  line-height: 1.7;

  margin: 0;
  padding: 20px 20px 20px 60px; /* 左側にアイコン用のスペースを確保 */
}

/* Q（質問）の枠 */
.entry-content .qa-question {
  max-width: 950px;
  background-color: #e6e6ff;
  border-left: 5px solid #5e5aff; /* 枠の左 */
  border-bottom: 3px solid #d1d1ff; /* 装飾線 */
  border-right: 3px solid #d1d1ff; /* 装飾線 */

  margin: 20px 0px 0px 100px;
  padding: 10px 20px 10px 60px;
}

/* 「Q」のアイコン */
.entry-content .qa-question::before {
  content: "Q";
  position: absolute;
  left: 15px;
  top: 45%;
  transform: translateY(-50%); /* 垂直中央揃え */

  color: #5e5aff; /* ロゴの色で塗りつぶし */
  font-size: 28px;
  font-weight: 900;
  font-family: "Arial Black", sans-serif; /* 力強いフォント */
}

/* A（回答）の枠 */
.entry-content .qa-answer {
  max-width: 920px;
  background-color: #e6e6ff; /* 枠の背景色 */

  border-left: 5px solid #ff6a9f; /* 枠の左 */
  border-bottom: 3px solid #d1d1ff; /* 装飾線 */
  border-right: 3px solid #d1d1ff; /* 装飾線 */

  margin: 0px 0px 20px 130px;
}

/* 「A」のアイコン */
.entry-content .qa-answer::before {
  content: "A";
  position: absolute;
  left: 18px; /* Qより少し左に寄せてバランス調整 */
  top: 50%;
  transform: translateY(-50%);

  color: #ff97ef; /* Aの中の色 */
  font-size: 28px;
  font-weight: 900;
  font-family: "Arial Black", sans-serif;
  /* 縁取り（袋文字）の設定 */
}

/* --- スマホ表示（480px以下）のQ&A最適化 --- */
@media screen and (max-width: 480px) {
  /* 共通：文字サイズと余白の全面見直し */
  .entry-content .qa-question,
  .entry-content .qa-answer {
    font-size: 16px;
    padding: 15px 15px 15px 45px; /* アイコン分の左余白を45pxに凝縮 */
    margin-left: 5px !important; /* 100px以上のマージンを解除 */
    max-width: 100%; /* 横幅いっぱい使う */
  }

  /* 質問：マージン調整 */
  .entry-content .qa-question {
    margin-top: 25px;
    margin-bottom: 10px;
  }

  /* 「Q」アイコンのサイズと位置 */
  .entry-content .qa-question::before {
    font-size: 22px; /* 32pxから24pxへ */
    left: 10px;
  }

  /* 回答：マージン調整 */
  .entry-content .qa-answer {
    margin-left: 15px !important; /* Qより少しだけ下げて階層を表現 */
    margin-bottom: 30px;
  }

  /* 「A」アイコンのサイズと位置 */
  .entry-content .qa-answer::before {
    font-size: 24px;
    left: 12px;
  }
}

/* ■（ここまで）Q&A共通の枠組み */










/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px) {
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px) {
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px) {
  /*必要ならばここにコードを書く*/
}
