/* Colourest — 固定ページ (特商法 / PP / 運営会社 等) */
.clr-page{max-width:820px;margin:0 auto;padding:96px 24px 120px}
.clr-page h1{font-weight:300;letter-spacing:.18em;font-size:22px;
  margin:0 0 8px;color:#1a1916}
.clr-page .clr-p-meta{color:#9a9590;font-size:11px;letter-spacing:.1em;
  margin:0 0 40px;padding-bottom:20px;border-bottom:1px solid #e5e3de}
.clr-page-body{color:#1a1916;font-size:14px;line-height:2}
.clr-page-body h2{font-weight:400;font-size:15px;letter-spacing:.08em;
  margin:44px 0 14px;padding-left:10px;border-left:2px solid #1a1916}
.clr-page-body h3{font-weight:400;font-size:14px;margin:28px 0 10px;color:#5a5750}
.clr-page-body p{margin:0 0 16px}
.clr-page-body ul,.clr-page-body ol{margin:0 0 16px;padding-left:1.4em}
.clr-page-body li{margin-bottom:6px}
.clr-page-body a{color:#1a1916;text-decoration:underline;text-underline-offset:3px}
.clr-page-body .clr-p-note{color:#9a9590;font-size:13px}
.clr-page-body .clr-p-sub{color:#9a9590;font-size:12px}
.clr-p-table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:13px}
.clr-p-table th,.clr-p-table td{border:1px solid #e5e3de;padding:14px 16px;
  text-align:left;vertical-align:top;line-height:1.9}
.clr-p-table th{width:32%;background:#faf9f7;font-weight:400;color:#5a5750;
  letter-spacing:.04em}
@media(max-width:640px){
  .clr-page{padding:76px 18px 80px}
  .clr-p-table th,.clr-p-table td{display:block;width:auto;border-bottom:none}
  .clr-p-table tr{display:block;border-bottom:1px solid #e5e3de}
  .clr-p-table td{border-top:none}
}

/* 固定ページ内の画像 */
.clr-p-fig{ margin:28px 0; }
.clr-p-fig img{ width:100%; height:auto; display:block; border:1px solid #e5e3de; }
.clr-p-fig figcaption{ margin-top:8px; font-size:11px; color:#9a9590;
  letter-spacing:.06em; text-align:center; }
.clr-p-figs{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:28px 0; }
.clr-p-figs img{ width:100%; height:auto; display:block; border:1px solid #e5e3de; }
@media(max-width:640px){ .clr-p-figs{ grid-template-columns:1fr; } }

/* ══════════ お問い合わせフォーム ══════════ */
.ct-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.ct-err{
  margin:0 0 24px; padding:13px 16px; font-size:13px; line-height:1.8;
  color:#c0392b; background:#fdf3f2; border:1px solid #f0d5d2;
}
.ct-form{ margin-top:32px; }
.ct-row{ margin:0 0 28px; }
.ct-lb{
  display:block; margin-bottom:9px; font-size:13px;
  color:#1a1916; letter-spacing:.04em;
}
.ct-req{
  display:inline-block; margin-left:9px; padding:2px 7px;
  font-size:10px; letter-spacing:.08em; color:#c0392b;
  background:#fdf3f2; border:1px solid #f0d5d2; border-radius:2px;
  vertical-align:1px;
}
.ct-form input[type="text"], .ct-form input[type="email"], .ct-form textarea{
  width:100%; padding:11px 13px; font-size:14px; line-height:1.7;
  color:#1a1916; background:#fff; border:1px solid #d8d5ce; border-radius:2px;
  font-family:inherit;
}
.ct-form input:focus, .ct-form textarea:focus{
  outline:none; border-color:#1a1916;
}
.ct-form textarea{ resize:vertical; min-height:180px; }
.ct-hint{ display:block; margin-top:7px; font-size:11.5px; line-height:1.8; color:#9a9590; }
.ct-kinds{ display:flex; flex-wrap:wrap; gap:9px; }
.ct-kind{ position:relative; }
.ct-kind input{ position:absolute; opacity:0; width:0; height:0; }
.ct-kind span{
  display:inline-block; padding:9px 15px; cursor:pointer;
  font-size:13px; letter-spacing:.02em; color:#5a5750;
  background:#fff; border:1px solid #d8d5ce; border-radius:2px;
  transition:border-color .15s, color .15s;
}
.ct-kind span:hover{ border-color:#9a9590; }
.ct-kind input:checked + span{
  color:#fff; background:#1a1916; border-color:#1a1916;
}
.ct-kind input:focus-visible + span{ outline:2px solid #2b5fd4; outline-offset:2px; }
.ct-agree{
  display:inline-flex; align-items:center; gap:10px; cursor:pointer;
  font-size:13.5px; color:#1a1916;
}
.ct-agree input{ width:17px; height:17px; }
.ct-pp{ font-size:12px; color:#9a9590; margin:0 0 28px; }
.ct-pp a{ color:#5a5750; }
.ct-actions{ text-align:center; }
.ct-submit{
  min-width:280px; padding:15px 32px; cursor:pointer;
  font-size:14px; letter-spacing:.1em; color:#fff;
  background:#1a1916; border:1px solid #1a1916; border-radius:2px;
  transition:opacity .18s;
}
.ct-submit:hover{ opacity:.82; }
.ct-done{
  margin-top:40px; padding:36px 32px; text-align:center;
  background:#faf9f7; border:1px solid #e5e3de;
}
.ct-done p{ margin:0 0 14px; font-size:13.5px; line-height:2; color:#5a5750; }
.ct-done-h{ font-size:16px !important; color:#1a1916 !important; letter-spacing:.06em; }
.ct-back{
  display:inline-block; margin-top:12px; padding:11px 30px;
  font-size:13px; letter-spacing:.08em; text-decoration:none;
  color:#1a1916; background:#fff; border:1px solid #d8d5ce; border-radius:2px;
}
.ct-back:hover{ border-color:#1a1916; }
@media(max-width:640px){
  .ct-submit{ width:100%; min-width:0; }
  .ct-kinds{ flex-direction:column; }
  .ct-kind span{ display:block; text-align:center; }
}

/* 固定ページ内のCTAボタン */
.clr-p-cta{
  display:inline-block; min-width:280px; padding:15px 32px;
  font-size:14px; letter-spacing:.1em; text-align:center;
  text-decoration:none !important; color:#fff !important;
  background:#1a1916; border:1px solid #1a1916; border-radius:2px;
  transition:opacity .18s;
}
.clr-p-cta:hover{ opacity:.82; }
@media(max-width:640px){ .clr-p-cta{ display:block; min-width:0; } }
