@charset "UTF-8";
/* ==========================================================================
   運営会社・プライバシーポリシーの共通スタイル
   LP（style.css / sections.css）と同じ配色・書体でトンマナを揃える。
   内容はヒカリのプロLPの /company・/privacy と同一構成。
   ========================================================================== */

:root{
  color-scheme: light;
  --c-navy-deep:#011D42;
  --c-blue:#0151A7;
  --c-blue-ink:#0250A4;
  --c-red-cta:#EC3D29;
  --c-ink:#151921;
  --c-muted:#5B6675;
  --c-line:#D6E0EE;
  --c-pale:#EBF2FD;
  --sec-foot:#F0F1F3;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  color:var(--c-ink);
  background:#fff;
  line-height:1.6;
}
img{ display:block; max-width:100%; }
a{ color:inherit; }
ul{ margin:0; padding:0; list-style:none; }

.pwrap{ width:100%; max-width:820px; margin-inline:auto; padding-inline:20px; }

/* --- 告知バー・ヘッダー（LPと同じ体裁） --- */
.pnotice{ background:var(--c-navy-deep); color:#DCE7F5; }
.pnotice .pwrap{ padding-block:11px; text-align:center; font-size:12.5px; font-weight:500; }

.phead{ background:#fff; border-bottom:1px solid var(--c-line); }
.phead .pwrap{ display:flex; align-items:center; padding-block:14px; }
.phead__brand{ display:inline-flex; align-items:center; gap:11px; text-decoration:none; }
.phead__brand img{ width:40px; height:40px; object-fit:contain; }
.phead__brand span{ font-size:clamp(16px,3.6vw,20px); font-weight:800; letter-spacing:.02em; }

/* --- 本文 --- */
.pmain{ padding-block:40px 56px; }
.backlink{
  display:inline-block;
  font-size:14px; font-weight:700;
  color:var(--c-blue-ink);
  text-decoration:underline; text-underline-offset:3px;
}
.backlink:hover{ color:var(--c-blue); }

.ptitle{
  margin:22px 0 0;
  font-size:clamp(26px,5vw,38px);
  font-weight:900; letter-spacing:.01em; line-height:1.3;
  color:var(--c-ink);
}
.plead{
  margin:20px 0 0;
  font-size:15px; line-height:1.9; color:#3C4757;
  word-break:auto-phrase;
}

/* 会社概要のテーブル */
.ptable{
  margin:26px 0 0;
  border:1px solid var(--c-line);
  border-radius:12px;
  overflow:hidden;
}
.ptable__row{
  display:grid;
  grid-template-columns:9.5rem 1fr;
  gap:16px;
  padding:16px 22px;
  font-size:15px;
}
.ptable__row + .ptable__row{ border-top:1px solid var(--c-line); }
.ptable__row dt{ font-weight:700; color:var(--c-muted); }
.ptable__row dd{ margin:0; word-break:auto-phrase; }
.ptable__row dd a{ color:var(--c-blue-ink); text-decoration:underline; text-underline-offset:2px; }
.ptable__row dd a:hover{ color:var(--c-blue); }

/* 規約の節 */
.psec{ margin-top:34px; }
.psec__h{
  margin:0;
  font-size:17px; font-weight:800; color:var(--c-blue-ink);
  padding-left:12px;
  border-left:4px solid var(--c-blue);
  line-height:1.5;
}
.psec__body{ margin-top:12px; font-size:15px; line-height:1.9; color:#26313F; }
.psec__body p{ margin:0 0 10px; word-break:auto-phrase; }
.psec__body p:last-child{ margin-bottom:0; }
.psec__body ul{ margin:0; padding:0; }
.psec__body ul li{ margin-bottom:6px; word-break:auto-phrase; }
.psec__body ul.disc{ padding-left:1.3em; list-style:disc; }
.psec__body a{ color:var(--c-blue-ink); text-decoration:underline; text-underline-offset:2px; word-break:break-all; }
.psec__body a:hover{ color:var(--c-blue); }

.pdate{ margin:36px 0 0; font-size:12.5px; color:var(--c-muted); }

/* --- サンクスページ（WEB予約の受付完了） --- */
.thanks{ text-align:center; padding-block:10px 6px; }
.thanks__badge{
  display:inline-flex; align-items:center; justify-content:center;
  width:78px; height:78px;
  border-radius:50%;
  background:var(--c-pale);
  color:var(--c-blue);
}
.thanks__badge svg{ width:40px; height:40px; }
.thanks__title{
  margin:20px 0 0;
  font-size:clamp(24px,4.6vw,34px);
  font-weight:900; letter-spacing:.01em; line-height:1.35;
  color:var(--c-navy-deep);
}
.thanks__br{ display:none; }
.thanks__lead{
  margin:16px 0 0;
  font-size:15px; line-height:1.9; color:#3C4757;
  /* 折り返しはHTML側の <wbr> でのみ許可する（「ありがとう／ございます」等の分断を防ぐ） */
  word-break:keep-all;
}

/* サンクスページの節は、折り返しをHTML側の <wbr> でのみ許可する */
.psec--thanks .psec__body p,
.psec--thanks .psec__body ul li{ word-break:keep-all; }

.thankstel{
  margin-top:16px;
  padding:22px 20px;
  border:1px solid var(--c-line);
  border-radius:12px;
  background:var(--c-pale);
  text-align:center;
}
.thankstel__num{
  display:inline-flex; align-items:center; gap:10px;
  font-size:clamp(28px,6vw,38px);
  font-weight:900; letter-spacing:.02em; line-height:1.2;
  color:var(--c-navy-deep);
  text-decoration:none;
}
.thankstel__num svg{ width:.72em; height:.72em; color:var(--c-blue); }
.thankstel__time{ margin:8px 0 0; font-size:13.5px; font-weight:500; color:var(--c-muted); }

.pfootnav{
  margin-top:40px; padding-top:26px;
  border-top:1px solid var(--c-line);
  text-align:center;
}

/* --- フッター（LPと同じ） --- */
.sitefoot{ background:var(--sec-foot); padding-block:40px; }
.sitefoot .pwrap{ text-align:center; }
.sitefoot__nav{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 28px; }
.sitefoot__link{
  font-size:14.5px; font-weight:700; color:var(--c-blue-ink);
  text-decoration:underline; text-underline-offset:3px;
}
.sitefoot__link:hover{ color:var(--c-blue); }
.sitefoot__copy{ margin:18px 0 0; font-size:12.5px; color:var(--c-muted); }

@media (max-width:560px){
  .pmain{ padding-block:28px 40px; }
  .ptable__row{ grid-template-columns:1fr; gap:4px; padding:14px 16px; }
  .psec{ margin-top:28px; }
  .psec__h{ font-size:16px; }
  .psec__body, .plead, .ptable__row{ font-size:14.5px; }
  .thanks__br{ display:inline; }
  .thanks__badge{ width:66px; height:66px; }
  .thanks__badge svg{ width:34px; height:34px; }
  .thanks__lead{ font-size:14.5px; }
  .thankstel{ padding:18px 14px; }
}
