@charset "UTF-8";
/* ==========================================================================
   LDM 下層リニューアル 第8弾（2026-09-28）
   対象：サイトマップ / 代表プロフィール / お問い合わせ / プライバシーポリシー /
         特定商取引 / 協会情報
   文字・内容は変えず、古い表・見出し・フォームの見た目だけを整える。
   色は ldm-sub-2026.css の変数（--ldm-purple など）を使う。
   ========================================================================== */

/* ---- 表（特定商取引・協会情報）：グレーのマス目 → 薄紫の見出し列＋細い線 ---- */
#container .campany{margin:28px 0 0 !important;border:1px solid var(--ldm-line);border-radius:14px;overflow:hidden;background:#fff;}
#container .campany table{width:100% !important;margin:0 !important;border:0 !important;border-collapse:collapse !important;border-spacing:0 !important;}
#container .campany th,#container .campany td{border:0 !important;border-bottom:1px solid var(--ldm-line) !important;padding:18px 22px !important;vertical-align:top;text-align:left;}
#container .campany tr:last-child th,#container .campany tr:last-child td{border-bottom:0 !important;}
#container .campany th{width:30% !important;background:var(--ldm-purple-pale) !important;font-size:14px !important;font-weight:bold !important;line-height:1.8 !important;color:var(--ldm-text) !important;letter-spacing:.03em;}
#container .campany td{background:#fff !important;font-size:15px !important;line-height:1.95 !important;}
#container .campany td p{margin:0 !important;}
#container .campany td p + p{margin-top:.2em !important;}
#container .campany td a{word-break:break-all;}

/* ---- お問い合わせフォーム ---- */
#container .contact{margin-top:8px;}
#container .contact table{width:100% !important;margin:0 0 8px !important;border:1px solid var(--ldm-line) !important;border-radius:14px;overflow:hidden;border-collapse:separate !important;border-spacing:0 !important;background:#fff;}
#container .contact th,#container .contact td{border:0 !important;border-bottom:1px solid var(--ldm-line) !important;padding:20px 22px !important;vertical-align:top;text-align:left;}
#container .contact tr:last-child th,#container .contact tr:last-child td{border-bottom:0 !important;}
#container .contact th{width:30% !important;background:var(--ldm-purple-pale) !important;font-size:14px !important;font-weight:bold !important;line-height:1.8 !important;color:var(--ldm-text) !important;padding-top:26px !important;}
#container .contact td{background:#fff !important;font-size:14px !important;line-height:1.9 !important;}
#container .contact td input[type="text"],#container .contact td textarea{
  border:1px solid #d9cfd8 !important;border-radius:8px;padding:10px 12px !important;font-size:15px !important;line-height:1.6;
  color:var(--ldm-text);background:#fcfafc;box-sizing:border-box;margin:0 4px 6px 0;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;-webkit-appearance:none;appearance:none;
}
#container .contact td input[name="c_name"],#container .contact td input[name="c_name2"]{width:calc(50% - 60px);min-width:120px;}
#container .contact td input[name="c_mailaddress"],#container .contact td input[name="c_ckmailaddress"],#container .contact td input[name="telephone"]{width:calc(100% - 72px);}
#container .contact td textarea{width:100%;min-height:200px;margin-top:6px;resize:vertical;}
#container .contact td input[type="text"]:focus,#container .contact td textarea:focus{outline:none;border-color:var(--ldm-purple) !important;background:#fff;box-shadow:0 0 0 3px rgba(174,93,180,.16);}
#container .contact .form_hissu{display:inline-block;margin-left:2px;padding:0 8px;border-radius:999px;background:var(--ldm-purple-pale);color:var(--ldm-purple-deep) !important;font-size:11px !important;font-weight:bold;line-height:1.9 !important;white-space:nowrap;vertical-align:1px;}
#container .contact .form_rei{color:var(--ldm-sub) !important;font-size:13px !important;}
/* 送信ボタン（画像は新しいボタン画像に差し替え） */
#container .contact input#imageField{width:320px;max-width:100%;height:auto;border:0;border-radius:999px;box-shadow:0 8px 20px rgba(153,73,159,.22);transition:transform .2s ease,box-shadow .2s ease;margin-top:12px;}
#container .contact input#imageField:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(153,73,159,.28);}
/* 個人情報の取り扱いの注意書き（インラインのグレー枠） */
#container .contact > div[style*="E6E6E6"]{border:0 !important;}
#container .contact > div[style*="E6E6E6"] > div{background:var(--ldm-purple-pale) !important;border:1px solid var(--ldm-line) !important;border-radius:12px;padding:16px 20px !important;font-size:13px !important;line-height:1.9 !important;color:var(--ldm-text);}

/* ---- プライバシーポリシー ---- */
#container .privacy{padding:0 !important;}
#container .privacy p{padding:0 !important;margin:0 0 1.2em !important;}
#container .privacy h3{
  position:relative;clear:both;margin:44px 0 18px !important;padding:12px 18px 12px 22px !important;
  border:1px solid var(--ldm-line) !important;border-radius:12px;background:var(--ldm-purple-pale) !important;
  font-size:17px !important;font-weight:bold !important;line-height:1.6 !important;color:var(--ldm-text) !important;letter-spacing:.03em;
}
#container .privacy h3::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--ldm-purple),var(--ldm-purple-deep));}
#container .privacy ol{list-style:none !important;margin:0 0 1.4em !important;padding:0 !important;}
#container .privacy ol li{position:relative;margin:0 0 .5em !important;padding:0 0 0 20px !important;}
#container .privacy ol li::before{content:"";position:absolute;left:4px;top:.85em;width:6px;height:6px;border-radius:50%;background:var(--ldm-purple);}

/* ---- サイトマップ ---- */
#container .column-sitemap{margin:28px 0 0 !important;border-top:1px solid var(--ldm-line);}
#container .column-sitemap > p:empty{display:none;}
#container .column-sitemap h3{
  margin:0 !important;padding:0 !important;border:0 !important;border-bottom:1px solid var(--ldm-line) !important;
  background:none !important;font-size:16px !important;font-weight:bold !important;line-height:1.6 !important;
}
#container .column-sitemap h3 a{display:block;position:relative;padding:16px 12px 16px 28px;color:var(--ldm-text) !important;text-decoration:none !important;transition:background .2s ease,color .2s ease;}
#container .column-sitemap h3 a::before{content:"";position:absolute;left:10px;top:50%;margin-top:-4px;border:4px solid transparent;border-left:6px solid var(--ldm-purple);}
#container .column-sitemap h3 a:hover{background:var(--ldm-purple-pale);color:var(--ldm-purple-deep) !important;}
#container .column-sitemap h4{margin:0 !important;padding:0 !important;border:0 !important;background:none !important;font-size:14px !important;font-weight:normal !important;line-height:1.7 !important;}
#container .column-sitemap h4 a{display:block;position:relative;padding:8px 12px 8px 50px;color:var(--ldm-text) !important;text-decoration:none !important;transition:color .2s ease;}
#container .column-sitemap h4 a::before{content:"";position:absolute;left:32px;top:1.15em;width:8px;height:1px;background:var(--ldm-purple);}
#container .column-sitemap h4 a:hover{color:var(--ldm-purple-deep) !important;text-decoration:underline !important;}
/* 小項目のまとまりの下に余白と線 */
#container .column-sitemap h4 + p,#container .column-sitemap h4 + h3{border-top:1px solid var(--ldm-line) !important;margin-top:10px !important;}
#container .column-sitemap h3 + h4{margin-top:8px !important;}

/* ---- 代表プロフィール ---- */
#container #contents-main{float:none !important;width:auto !important;padding:0 !important;}
#container .profile-body{border:0 !important;padding:0 !important;margin-top:0 !important;}
#container .profile-body img[src*="horiuchi-speaking"]{border-radius:14px !important;margin:0 auto 8px;}
#container .profile-body h3,#container #contents_left > div[style*="d7dfca"] h3{
  position:relative;clear:both;margin:44px 0 18px !important;padding:12px 18px 12px 22px !important;
  border:1px solid var(--ldm-line) !important;border-radius:12px;background:var(--ldm-purple-pale) !important;
  font-size:17px !important;font-weight:bold !important;line-height:1.6 !important;color:var(--ldm-text) !important;letter-spacing:.03em;
}
#container .profile-body h3::before,#container #contents_left > div[style*="d7dfca"] h3::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--ldm-purple),var(--ldm-purple-deep));}
#container .profile-body ul{list-style:none;margin:0 0 1em !important;padding:0 !important;}
#container .profile-body ul li{position:relative;margin:0 0 .35em !important;padding:0 0 0 20px !important;}
#container .profile-body ul li::before{content:"";position:absolute;left:4px;top:.85em;width:6px;height:6px;border-radius:50%;background:var(--ldm-purple);}
#container .profile-body .goto{text-align:right;margin-top:24px;}
/* 下の「現在の活動について」（インラインの薄緑の枠）→ 薄紫のカード */
#container #contents_left > div[style*="d7dfca"]{margin-top:48px !important;padding:8px 26px 20px !important;border:1px solid var(--ldm-line) !important;border-radius:14px;background:linear-gradient(120deg,#fff 0%,var(--ldm-purple-pale) 100%) !important;}
#container #contents_left > div[style*="d7dfca"] h3{margin:18px 0 14px !important;background:#fff !important;}
/* 右カラムの「堀内恭隆 最新情報」（薄緑の枠） */
#container #contents_right div[style*="d7dfca"],#container #contents_right div[style*="f7f9f3"]{border:1px solid var(--ldm-line) !important;border-radius:14px;background:#fff !important;}

/* ==========================================================================
   スマホ
   ========================================================================== */
@media screen and (max-width:750px){
  #container .campany table,#container .campany tbody,#container .campany tr,#container .campany th,#container .campany td{display:block;width:100% !important;}
  #container .campany th{padding:12px 16px !important;border-bottom:0 !important;}
  #container .campany td{padding:12px 16px 18px !important;}
  #container .campany tr:last-child td{border-bottom:0 !important;}
  #container .contact table{border-radius:12px;}
  #container .contact th{padding:14px 16px 6px !important;border-bottom:0 !important;width:100% !important;}
  #container .contact td{padding:10px 16px 18px !important;}
  #container .contact td input[type="text"]{width:100% !important;margin-right:0;}
  #container .contact td input[name="c_name"],#container .contact td input[name="c_name2"]{width:calc(50% - 44px) !important;min-width:0;}
  #container .contact td input[name="c_name"]{margin-right:4px;}
  #container .contact > div[style*="E6E6E6"] > div{padding:14px 16px !important;}
  #container .privacy h3,#container .profile-body h3,#container #contents_left > div[style*="d7dfca"] h3{font-size:16px !important;margin-top:36px !important;padding:10px 14px 10px 18px !important;}
  #container .column-sitemap h4 a{padding-left:40px;}
  #container .column-sitemap h4 a::before{left:24px;}
  #container #contents_left > div[style*="d7dfca"]{padding:6px 16px 16px !important;}
}
