/* kaigyou（開業準備LP）専用。接頭辞 .kg- */
.kg-fv,.kg-sec{--kg-or:#ff7a1a;--kg-or2:#ee5a0c;--kg-ink:#1f2933;--kg-muted:#66707c;--kg-warm:#fbf7f2;--kg-line:#ebe3d9;--kg-font:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;color:var(--kg-ink)}
.kg-fv h1,.kg-sec h2,.kg-sec h3{font-family:var(--kg-font)}

/* ===== ボタン（このページだけオレンジを少し明るく） ===== */
.kg-btns{gap:12px!important;margin-top:1.4em!important}
.kg-fv .wp-block-button.is-style-cx-cta .wp-block-button__link,.kg-sec .wp-block-button.is-style-cx-cta .wp-block-button__link{background:linear-gradient(180deg,#ff9536,#ff6a12);box-shadow:0 4px 0 #c74a05,0 12px 24px rgba(255,106,18,.28);font-family:var(--kg-font);padding:1em 2em}
.kg-fv .wp-block-button.is-style-cx-sub .wp-block-button__link{border-color:#c9ccd1;color:var(--kg-ink);background:rgba(255,255,255,.9)}
.kg-center{justify-content:center}

/* ===== ファーストビュー ===== */
.kg-fv{position:relative;background-color:#fff;background-repeat:no-repeat;min-height:620px;display:flex;align-items:center;padding:56px 16px 64px!important;overflow:hidden}
.kg-fv::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 34%,rgba(255,255,255,.75) 50%,rgba(255,255,255,0) 66%);pointer-events:none}
.kg-fv::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:repeating-linear-gradient(90deg,var(--kg-or) 0 40px,#fff 40px 52px)}
.kg-fv > .kg-fv-text{position:relative;z-index:1;width:100%;max-width:1180px!important}
.kg-fv-text > *{max-width:600px;margin-left:0!important;margin-right:auto!important}
.kg-kicker{display:inline-block;width:auto!important;border:2px solid var(--kg-or);color:var(--kg-or2);background:#fff;font-weight:900;font-size:15px;padding:.25em .9em;border-radius:3px;margin-bottom:1em!important;letter-spacing:.04em}
.kg-fv h1{font-size:clamp(34px,4.6vw,58px);line-height:1.25;margin:0 0 .35em!important;color:var(--kg-ink);letter-spacing:.01em}
.kg-fv h1 strong{color:var(--kg-or2);font-family:"Outfit",var(--kg-font);font-size:1.3em;line-height:1;display:inline-block;margin-top:.08em}
.kg-fv h1 strong small{font-family:var(--kg-font);font-size:.42em;margin-left:.04em}
.kg-fv-sub{font-size:clamp(16px,1.7vw,19px);font-weight:700;line-height:1.75}
ul.kg-fv-checks{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:8px;margin:1em 0 0!important}
ul.kg-fv-checks li{background:#fff;border:1px solid var(--kg-line);box-shadow:0 2px 0 var(--kg-line);padding:.35em .8em .35em 2em;font-weight:700;font-size:14.5px;position:relative;border-radius:3px}
ul.kg-fv-checks li::before{content:"";position:absolute;left:.7em;top:50%;width:.95em;height:.95em;margin-top:-.5em;background:var(--kg-or);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
ul.kg-fv-checks li strong{color:var(--kg-or2)}
.kg-micro{font-size:13px;color:var(--kg-muted);margin-top:.8em!important}

/* ===== セクション共通 ===== */
.kg-sec{padding:clamp(60px,8vw,104px) 16px!important}
.kg-white{background:#fff}
.kg-warm{background:var(--kg-warm)}
.kg-en{text-align:center;font-family:"Outfit",sans-serif;font-weight:800;letter-spacing:.24em;font-size:14px;color:var(--kg-or);margin:0 auto .3em!important}
.kg-sec h2.kg-h{text-align:center;font-size:clamp(26px,3.6vw,40px);line-height:1.4;margin:0 auto .5em!important;color:var(--kg-ink)}
.kg-lead{text-align:center;font-size:clamp(15px,1.7vw,18px);font-weight:700;color:#3c4652;margin:0 auto 2em!important;max-width:820px}
.kg-lead strong{color:var(--kg-or2)}
.kg-note{text-align:center;font-size:13px;color:var(--kg-muted);max-width:860px;margin:1.6em auto 0!important}
.kg-sec > .kg-btns{justify-content:center}

/* ===== チェックリスト（メモ帳） ===== */
.kg-memo-cols{max-width:1040px;margin:0 auto!important;gap:clamp(24px,4vw,56px)!important;align-items:center!important}
.kg-memo{background:#fff;border:1px solid var(--kg-line);border-radius:4px;box-shadow:0 18px 40px rgba(31,41,51,.08);padding:28px 26px 18px!important;position:relative}
.kg-memo::before{content:"";position:absolute;top:-10px;left:50%;width:120px;height:20px;margin-left:-60px;background:rgba(255,122,26,.35);transform:rotate(-2deg)}
.kg-memo-title{font-family:var(--kg-font);font-weight:900;font-size:19px;margin:0 0 .4em!important;letter-spacing:.06em}
ul.kg-memo-list{list-style:none;padding:0!important;margin:0!important}
ul.kg-memo-list li{position:relative;padding:.55em 0 .55em 2.4em;border-bottom:1px dashed #e6ddd1;line-height:1.5}
ul.kg-memo-list li:last-child{border-bottom:0}
ul.kg-memo-list li::before{content:"";position:absolute;left:.2em;top:.7em;width:1.25em;height:1.25em;border:2px solid #b9bfc7;border-radius:3px;background:#fff}
ul.kg-memo-list li strong{display:block;font-size:16px}
ul.kg-memo-list li span{display:block;font-size:13.5px;color:var(--kg-muted)}
ul.kg-memo-list li:last-child{background:#fff4ea;margin:6px -10px 0;padding-left:calc(2.4em + 10px);padding-right:10px;border-radius:3px}
ul.kg-memo-list li:last-child::before{left:calc(.2em + 10px);border-color:var(--kg-or);background:var(--kg-or)}
ul.kg-memo-list li:last-child::after{content:"";position:absolute;left:calc(.48em + 10px);top:1.02em;width:.7em;height:.7em;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
ul.kg-memo-list li:last-child span{color:var(--kg-or2);font-weight:700}
.kg-memo-chara img{width:110px;border-radius:0!important}
.kg-memo-chara{margin:0 0 .4em!important}
.kg-sec h3.kg-side-h{font-size:clamp(22px,2.6vw,30px);line-height:1.45;margin:0 0 .6em!important}
.kg-side-h strong{color:var(--kg-or2)}

/* ===== タイムライン ===== */
.kg-tl{max-width:820px;margin:0 auto!important;position:relative}
.kg-tl::before{content:"";position:absolute;left:27px;top:12px;bottom:40px;width:4px;background:repeating-linear-gradient(180deg,var(--kg-or) 0 14px,transparent 14px 22px)}
.kg-tl-item{display:grid!important;grid-template-columns:58px 1fr;gap:18px!important;margin:0 0 18px!important;position:relative}
.kg-tl-item > *{margin:0!important}
.kg-tl-n{width:58px;height:58px;border-radius:50%;background:#fff;border:3px solid var(--kg-or);color:var(--kg-or2);display:flex;align-items:center;justify-content:center;font-family:"Outfit",sans-serif;font-weight:800;font-size:24px;position:relative;z-index:1}
.kg-tl-body{background:#fff;border:1px solid var(--kg-line);border-radius:4px;padding:16px 20px!important}
.kg-tl-body > *{margin:0!important}
.kg-tl-body h3{font-size:19px!important;margin:.3em 0 .25em!important}
.kg-tl-body p:not(.kg-tl-tag){font-size:15px;color:#3c4652}
.kg-tl-tag{display:inline-block;background:#fff1e4;color:var(--kg-or2);font-weight:900;font-size:12.5px;padding:.15em .7em;border-radius:3px}
.kg-tl-goal .kg-tl-n{background:var(--kg-or);color:#fff}
.kg-tl-goal .kg-tl-body{border:2px solid var(--kg-or)}

/* ===== 名刺に載せるURL ===== */
.kg-url-cols{max-width:980px;margin:0 auto!important;gap:24px!important}
.kg-url-card{position:relative;border-radius:4px;padding:24px 22px 26px!important;height:100%}
.kg-url-card > *{margin-top:0!important}
.kg-url-ng{background:#f4f5f7;border:1px dashed #c3c8cf}
.kg-url-ok{background:#fff;border:2px solid var(--kg-or);box-shadow:0 14px 34px rgba(255,122,26,.14)}
.kg-url-label{font-weight:900;font-size:14px;color:var(--kg-muted);margin-bottom:.6em!important}
.kg-url-text{font-family:"Outfit","Noto Sans JP",sans-serif;font-weight:700;font-size:clamp(19px,2.2vw,24px);color:#8a929c;text-decoration:line-through;text-decoration-thickness:2px;word-break:break-all;margin:.8em 0!important}
.kg-url-text b,.kg-card-url b{font-weight:800}
.kg-url-desc{font-size:14.5px;color:#3c4652}
.kg-stamp{position:absolute;top:16px;right:16px;font-weight:900;font-size:13px;padding:.25em .7em;border-radius:3px;transform:rotate(4deg)}
.kg-stamp-ng{border:2px solid #9aa2ad;color:#7d8692}
.kg-stamp-ok{background:var(--kg-or);color:#fff}
.kg-card{background:#fff;border:1px solid #e3ddd4;box-shadow:0 8px 20px rgba(31,41,51,.10);aspect-ratio:91/55;max-width:380px;padding:18px 20px!important;display:flex;flex-direction:column;justify-content:center;margin:0 0 1em!important;border-left:0;position:relative}
.kg-card > *{margin:0!important}
.kg-card-shop{font-family:var(--kg-font);font-weight:900;font-size:20px}
.kg-card-name{font-size:13px;margin-bottom:.8em!important}
.kg-card-line{font-size:11.5px;color:var(--kg-muted)}
.kg-card-url{font-family:"Outfit","Noto Sans JP",sans-serif;font-weight:700;font-size:clamp(13px,1.5vw,15px);color:var(--kg-or2);margin-top:.3em!important;word-break:break-all}

/* ===== 費用 ===== */
.kg-cost-cols{max-width:900px;margin:0 auto!important;gap:20px!important}
.kg-cost{border-radius:4px;padding:26px 20px!important;text-align:center;height:100%}
.kg-cost > *{margin:0!important}
.kg-cost-them{background:#fff;border:1px solid var(--kg-line);color:#5d6670}
.kg-cost-us{background:var(--kg-or);color:#fff;box-shadow:0 14px 30px rgba(255,106,18,.28)}
.kg-cost-label{font-weight:900;font-size:15px}
.kg-cost-big{font-family:var(--kg-font);font-weight:900;font-size:22px;line-height:1.3;margin:.3em 0!important}
.kg-cost-big strong{font-family:"Outfit",sans-serif;font-size:2.3em;font-weight:800;margin:0 .05em}
.kg-cost-us .kg-cost-big strong{font-size:3em}
.kg-cost-sub{font-weight:700;font-size:15px}
.kg-chips{max-width:900px;margin:22px auto 0!important;gap:10px!important;justify-content:center!important}
.kg-chip{background:#fff;border:1px solid var(--kg-line);border-radius:3px;padding:.5em 1em;font-weight:700;font-size:14.5px;margin:0!important}
.kg-chip strong{color:var(--kg-or2)}

/* ===== 途中CTAの帯 ===== */
.kg-band{background:linear-gradient(120deg,#ff8a2a,#ff6a12)!important;padding:clamp(36px,5vw,56px) 16px!important;color:#fff}
.kg-band-in{max-width:1040px!important;display:grid!important;grid-template-columns:120px 1fr auto;gap:24px!important;align-items:center}
.kg-band-in > *{margin:0!important}
.kg-band-chara img{width:120px;border-radius:0!important}
.kg-band-text > *{margin:0!important}
.kg-sec h2.kg-band-h{color:#fff;font-size:clamp(21px,2.4vw,28px);line-height:1.45;text-align:left}
.kg-band-p{font-weight:700;margin-top:.4em!important}
.kg-band .wp-block-button.is-style-cx-cta .wp-block-button__link{background:#fff!important;color:var(--kg-or2)!important;box-shadow:0 4px 0 #c74a05!important}

/* ===== 業種別デザイン ===== */
.kg-dz-grid{max-width:1140px;margin:0 auto!important;gap:20px!important}
.kg-dz{background:#fff;border:1px solid var(--kg-line);border-radius:4px;overflow:hidden;padding:0 0 18px!important}
.kg-dz > *{margin:0!important;padding-left:18px;padding-right:18px}
.kg-dz > .wp-block-image{padding:0}
.kg-dz .wp-block-image img{border-radius:0!important;aspect-ratio:3/2;object-fit:cover;object-position:top;width:100%;display:block;border-bottom:1px solid var(--kg-line)}
.kg-dz-gyo{display:block;margin:16px 18px 0!important;padding:0!important;font-weight:900;font-size:13px;color:var(--kg-or2)}
.kg-dz h3{font-size:18px!important;margin:.15em 0 .3em!important}
.kg-dz p:not(.kg-dz-gyo){font-size:14.5px;color:#3c4652}
.kg-dz-link{margin-top:.6em!important}
.kg-dz-link a,.kg-link-more a{color:var(--kg-or2);font-weight:900;text-decoration:none}

/* ===== 開業支援リンク ===== */
.kg-links{max-width:1080px;margin:0 auto!important;gap:18px!important}
.kg-link{background:#fff;border:1px solid var(--kg-line);border-radius:4px;padding:22px 22px 18px!important}
.kg-link > *{margin:0 0 .5em!important}
.kg-link h3{font-size:18px!important}
.kg-link h3 a{color:var(--kg-ink);text-decoration:none}
.kg-link h3 a:hover{color:var(--kg-or2)}
.kg-link p{font-size:14.5px;color:#3c4652}

/* ===== FAQ ===== */
.kg-faq details.is-style-cx-faq{border-color:var(--kg-line)}
.kg-faq details.is-style-cx-faq summary{color:var(--kg-ink)}
.kg-faq details.is-style-cx-faq summary::before{color:var(--kg-or)}
.kg-faq details.is-style-cx-faq a{color:var(--kg-or2)}

/* ===== 折りたたみ ===== */
.kg-more-sec{padding-top:0!important;padding-bottom:56px!important}
.kg-faq{padding-bottom:40px!important}
.kg-fv .kg-btns .wp-block-button__link{padding:.95em 1.6em!important}
.kg-fv-text > .kg-btns{max-width:680px}
details.kg-more{max-width:900px;margin:0 auto!important;background:#fff;border:1px solid var(--kg-line);border-radius:4px}
details.kg-more summary{cursor:pointer;font-weight:900;padding:1em 1.2em}
details.kg-more > :not(summary){padding:0 1.2em 1.2em;margin:0;font-size:15px}

/* ===== 締め ===== */
.kg-close{background:#fff;background-image:radial-gradient(circle at 20% 20%,#fff1e4 0,transparent 40%),radial-gradient(circle at 85% 80%,#fff1e4 0,transparent 40%)}
.kg-close-box{max-width:880px!important;margin:0 auto!important;text-align:center;border:3px solid var(--kg-or);border-radius:4px;padding:clamp(28px,4vw,48px) 20px!important;background:#fff;position:relative}
.kg-close-box > *{margin-left:auto!important;margin-right:auto!important}
.kg-close-chara img{width:220px;border-radius:0!important}
.kg-close-chara{margin:0 auto .6em!important}
.kg-sec h2.kg-close-h{font-size:clamp(26px,3.6vw,40px);line-height:1.4;margin:.2em 0 .4em!important}
.kg-close-h strong{color:var(--kg-or2)}
.kg-close-p{font-weight:700}

/* ===== スマホ ===== */
@media (max-width:781px){
  .kg-fv{display:block;min-height:0;background-size:auto 330px!important;background-position:76% top!important;padding-top:300px!important;padding-bottom:44px!important}
  .kg-fv::before{background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,0) 200px,#fff 320px)}
  .kg-fv-text > *{max-width:none;margin-left:auto!important}
  .kg-fv-text{text-align:center}
  .kg-fv h1{font-size:32px}
  ul.kg-fv-checks{justify-content:center}
  .kg-fv .kg-btns{justify-content:center}
  .kg-fv .kg-btns .wp-block-button,.kg-fv .kg-btns .wp-block-button__link{width:100%}
  .kg-lead{text-align:left}
  .kg-lead br,.kg-band-h br{display:none}
  .kg-tl::before{left:19px}
  .kg-tl-item{grid-template-columns:42px 1fr;gap:12px!important}
  .kg-tl-n{width:42px;height:42px;font-size:19px}
  .kg-tl-body{padding:14px 14px!important}
  .kg-band-in{grid-template-columns:1fr;text-align:center}
  .kg-band-chara img{width:90px;margin:0 auto}
  .kg-sec h2.kg-band-h{text-align:center}
  .kg-band-btn{justify-content:center}
  .kg-stamp{top:-12px;right:10px}
}
@media (max-width:781px){
  .kg-sec h2.kg-h{font-size:23px;letter-spacing:0}
  .kg-cost-big strong{font-size:1.7em}
  .kg-cost-us .kg-cost-big strong{font-size:2.6em}
  .kg-dz .wp-block-image img{aspect-ratio:16/9}
  .kg-close-chara img{width:170px}
}
.kg-sec h2,.kg-sec h3,.kg-fv h1{word-break:auto-phrase}
