/* BCART 巾木レスLP: クラックガード構成参考版 */
.habakiless_lp {
  color: #1f2528;
  background: #f6f5f1;
  font-family: "Meiryo UI", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.75;
  overflow-x: hidden;
}
.habakiless_lp, .habakiless_lp * { box-sizing: border-box; }
.habakiless_lp img { display: block; max-width: 100%; }
.habakiless_lp a { color: inherit; text-decoration: none; }
.habakiless_lp__content { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.habakiless_lp__header { background: #fff; border-bottom: 1px solid #d9dedf; }
.habakiless_lp__header_outer { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.habakiless_lp__header_logo { display: flex; align-items: center; gap: 18px; }
.habakiless_lp__logo { width: 176px; }
.habakiless_lp__onlineshop { width: 142px; }
.habakiless_lp__header_menu_list { display: flex; align-items: center; gap: 22px; margin: 0; padding: 0; list-style: none; color: #333; font-size: 14px; font-weight: 700; }
.habakiless_lp__btn_white { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border: 1px solid #1f2528; border-radius: 999px; background: #fff; }
.habakiless_lp__mainph { position: relative; overflow: hidden; background: #293236; }
.habakiless_lp__mainph::after { content: none; }
.habakiless_lp__mainph picture { display: block; }
.habakiless_lp__hero_img { width: 100%; height: auto; object-fit: contain; filter: none; }
.habakiless_lp__mainph_copy { display: none; }
.habakiless_lp__eyebrow { margin: 0 0 12px; color: #2f6f73; font-size: 13px; font-weight: 700; letter-spacing: 0; text-transform: uppercase; }
.habakiless_lp__mainph .habakiless_lp__eyebrow { color: #cfe8e5; }
.habakiless_lp h1, .habakiless_lp h2, .habakiless_lp h3, .habakiless_lp p { overflow-wrap: anywhere; }
.habakiless_lp h1 { margin: 0; font-size: clamp(40px, 6vw, 76px); line-height: 1.1; letter-spacing: 0; }
.habakiless_lp h2 { margin: 0; font-size: clamp(28px, 4vw, 46px); line-height: 1.22; letter-spacing: 0; }
.habakiless_lp h3 { margin: 0 0 12px; font-size: 22px; line-height: 1.35; letter-spacing: 0; }
.habakiless_lp__mainph_copy p:not(.habakiless_lp__eyebrow) { max-width: 690px; margin: 22px 0 0; font-size: 18px; }
.habakiless_lp__mainph_btns, .habakiless_lp__cta_btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.habakiless_lp__btn_primary, .habakiless_lp__btn_secondary { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border-radius: 999px; font-weight: 700; }
.habakiless_lp__btn_primary { background: #2f6f73; color: #fff; }
.habakiless_lp__btn_secondary { border: 1px solid currentColor; color: inherit; background: rgba(255,255,255,.08); }
.habakiless_lp__problem, .habakiless_lp__works, .habakiless_lp__lineup, .habakiless_lp__sales { padding: 88px 0; }
.habakiless_lp__column_02 { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 64px; align-items: center; }
.habakiless_lp__body_copy, .habakiless_lp__section_header p, .habakiless_lp__lineup p, .habakiless_lp__detail p, .habakiless_lp__sales dd { color: #657078; font-size: 16px; }
.habakiless_lp__feature { padding: 88px 0; background: #293236; color: #fff; }
.habakiless_lp__feature .habakiless_lp__eyebrow { color: #b8d8d5; }
.habakiless_lp__section_header { max-width: 780px; margin-bottom: 34px; }
.habakiless_lp__feature_outer, .habakiless_lp__product_outer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.habakiless_lp__feature_inner { min-height: 220px; padding: 28px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); }
.habakiless_lp__feature_inner p { margin: 0; color: rgba(255,255,255,.78); }
.habakiless_lp__works { background: #fff; }
.habakiless_lp__works_grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.habakiless_lp figure { margin: 0; background: #fff; box-shadow: 0 18px 56px rgba(31,37,40,.13); }
.habakiless_lp figure img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.habakiless_lp__works_grid img { cursor: zoom-in; }
.habakiless_lp figcaption { padding: 16px 18px 18px; color: #46535a; font-size: 14px; line-height: 1.55; }
.habakiless_lp figcaption span { display: block; margin-bottom: 4px; color: #2f6f73; font-size: 12px; font-weight: 700; letter-spacing: 0; }
.habakiless_lp--modal_open { overflow: hidden; }
.habakiless_lp__lightbox { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 42px; background: rgba(20,25,27,.82); }
.habakiless_lp__lightbox[hidden] { display: none; }
.habakiless_lp__lightbox_frame { width: min(1120px, 92vw); max-height: 88vh; background: #fff; }
.habakiless_lp__lightbox_frame img { width: 100%; max-height: calc(88vh - 58px); aspect-ratio: auto; object-fit: contain; background: #111719; }
.habakiless_lp__lightbox_close { position: fixed; top: 22px; right: 24px; min-height: 44px; padding: 0 18px; border: 1px solid rgba(255,255,255,.64); color: #fff; font: inherit; font-weight: 700; background: rgba(20,25,27,.64); cursor: pointer; }
.habakiless_lp__voice { padding: 88px 0; background: #fbfaf7; }
.habakiless_lp__voice_grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.habakiless_lp__voice_grid div { padding: 24px; border: 1px solid #d9dedf; background: #fff; }
.habakiless_lp__voice_grid span { display: block; margin-bottom: 12px; color: #657078; font-weight: 700; font-size: 13px; }
.habakiless_lp__voice_grid p { margin: 0; }
.habakiless_lp__product_inner { overflow: hidden; background: #fff; box-shadow: 0 18px 56px rgba(31,37,40,.13); }
.habakiless_lp__product_inner img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.habakiless_lp__product_inner div { padding: 24px; }
.habakiless_lp__product_inner p { margin: 0; color: #657078; }
.habakiless_lp__select_guide { display: none; }
.habakiless_lp__select_guide div { padding: 20px; border: 1px solid #d9dedf; background: #fff; }
.habakiless_lp__select_guide span { display: block; color: #2f6f73; font-size: 12px; font-weight: 700; }
.habakiless_lp__select_guide strong { display: block; margin-top: 6px; font-size: 20px; line-height: 1.35; }
.habakiless_lp__select_guide p { margin: 8px 0 0; color: #657078; font-size: 14px; line-height: 1.65; }
.habakiless_lp__detail { padding: 88px 0; background: #e6e2da; }
.habakiless_lp__detail img { width: 100%; max-height: 600px; object-fit: cover; box-shadow: 0 18px 56px rgba(31,37,40,.13); }
.habakiless_lp__sales { background: #fff; }
.habakiless_lp__sales dl { margin: 0; display: grid; gap: 16px; }
.habakiless_lp__sales dl div { padding-bottom: 16px; border-bottom: 1px solid #d9dedf; }
.habakiless_lp__sales dt { font-weight: 700; }
.habakiless_lp__sales dd { margin: 4px 0 0; }
.habakiless_lp__cta { padding: 88px 0; color: #fff; text-align: center; background: linear-gradient(135deg, #1d5558, #293236); }
.habakiless_lp__cta .habakiless_lp__content { max-width: 900px; }
.habakiless_lp__cta p { color: rgba(255,255,255,.82); }
.habakiless_lp__cta_btns { justify-content: center; }
.habakiless_lp__tel { padding: 34px 0; text-align: center; background: #fff; }
.habakiless_lp__tel a { font-size: 24px; font-weight: 700; color: #1d5558; }
.habakiless_lp__tel p { margin: 8px 0 0; color: #657078; font-size: 13px; }
.habakiless_lp footer { padding: 42px 0 24px; background: #f6f5f1; }
.habakiless_lp__footer_outer { display: flex; justify-content: space-between; gap: 32px; align-items: flex-start; }
.habakiless_lp__footer_logo { width: 176px; }
.habakiless_lp__footer_outer ul { display: flex; flex-wrap: wrap; gap: 18px; margin: 0; padding: 0; list-style: none; color: #657078; font-size: 14px; }
.habakiless_lp__copyright { margin: 24px 0 0; color: #657078; font-size: 12px; }
.habakiless_lp__sp { display: none; }
@media (max-width: 860px) {
  .habakiless_lp__content { width: min(100% - 32px, 1120px); }
  .habakiless_lp__header_outer { align-items: flex-start; flex-direction: column; padding: 14px 0; }
  .habakiless_lp__header_menu { width: 100%; }
  .habakiless_lp__header_menu_list { width: 100%; gap: 10px 14px; flex-wrap: wrap; white-space: normal; }
  .habakiless_lp__logo { width: 142px; }
  .habakiless_lp__onlineshop { width: 116px; }
  .habakiless_lp__mainph { min-height: 0; background: #122021; }
  .habakiless_lp__hero_img { width: 100%; }
  .habakiless_lp__mainph_copy { width: calc(100% - 32px); margin: 0 16px 56px; }
  .habakiless_lp__problem, .habakiless_lp__feature, .habakiless_lp__works, .habakiless_lp__voice, .habakiless_lp__lineup, .habakiless_lp__detail, .habakiless_lp__sales, .habakiless_lp__cta { padding: 64px 0; }
  .habakiless_lp__column_02, .habakiless_lp__feature_outer, .habakiless_lp__works_grid, .habakiless_lp__voice_grid, .habakiless_lp__product_outer, .habakiless_lp__select_guide { grid-template-columns: 1fr; gap: 22px; }
  .habakiless_lp__select_guide { margin: -4px 0 24px; }
  .habakiless_lp__sp { display: inline; }
  .habakiless_lp__footer_outer { flex-direction: column; }
}
