/* 107.php AIチャット設置 */
:root{--ai-navy:#123a59;--ai-blue:#1769aa;--ai-soft:#f3f8fc;--ai-line:#d9e6ef;--ai-text:#344b5d;--ai-green:#16856b}

/* 107ページ本文だけ横幅を整える */
main .wrap{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-left:auto;margin-right:auto;box-sizing:border-box}
.breadcrumb{padding-top:18px;padding-bottom:12px}

.install-hero{padding:48px 0 50px;background:linear-gradient(135deg,#eef7ff 0%,#fff 58%,#eef9f6 100%)}
.install-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);gap:54px;align-items:center}
.install-kicker,.install-eyebrow{margin:0 0 10px;color:var(--ai-blue);font-weight:800;letter-spacing:.12em;font-size:.78rem}
.install-hero h1{margin:0 0 20px;color:var(--ai-navy);font-size:clamp(2.15rem,3.05vw,3.15rem);line-height:1.25;letter-spacing:.01em}
.install-hero h1 span{color:var(--ai-blue);white-space:nowrap}
.install-lead{max-width:660px;margin:0;font-size:1rem;line-height:1.9;color:var(--ai-text)}
.install-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.install-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border:1px solid transparent;border-radius:9px;font-weight:700;line-height:1.3;text-decoration:none!important;box-sizing:border-box;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.install-btn:hover{transform:translateY(-1px);text-decoration:none!important}
.install-btn-primary{background:var(--ai-blue);border-color:var(--ai-blue);color:#fff!important;box-shadow:0 7px 18px rgba(23,105,170,.18)}
.install-btn-primary:hover{background:#125b95}
.install-btn-secondary{background:#fff;border-color:#b9cfdf;color:var(--ai-navy)!important}
.install-btn-secondary:hover{background:#f4f9fc}

.code-card{overflow:hidden;border:1px solid #cbdde9;border-radius:16px;background:#fff;box-shadow:0 14px 32px rgba(26,73,108,.11)}
.code-card-head{padding:13px 18px;background:var(--ai-navy);color:#fff;font-weight:800}
.code-card pre{margin:0;padding:22px 20px;overflow:auto;background:#0e2638;color:#e9f5ff;font-size:.84rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.code-card p{margin:0;padding:14px 20px;color:#536b7d;font-size:.88rem;line-height:1.65}

.install-section{padding:58px 0}.install-section.soft{background:var(--ai-soft)}
.install-section h2{margin:0 0 23px;color:var(--ai-navy);font-size:clamp(1.65rem,2.35vw,2.15rem);line-height:1.45}
.section-copy{max-width:820px;color:var(--ai-text);line-height:1.9}
.install-grid{display:grid;gap:20px}.install-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.install-card{padding:24px 22px;border:1px solid var(--ai-line);border-radius:15px;background:#fff;box-shadow:0 7px 20px rgba(26,73,108,.055)}
.install-card>span{display:inline-grid;place-items:center;min-width:42px;height:32px;padding:0 9px;border-radius:999px;background:#e8f3fb;color:var(--ai-blue);font-size:.76rem;font-weight:900}
.install-card h3{margin:14px 0 9px;color:var(--ai-navy);font-size:1.05rem}.install-card p{margin:0;color:#5a7080;line-height:1.8;font-size:.96rem}
.install-two{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:start}.install-two p{color:var(--ai-text);line-height:1.95}
.point-box,.notice-box{padding:24px;border:1px solid #cfe0ec;border-radius:15px;background:#fff}.point-box strong,.notice-box strong{color:var(--ai-navy);font-size:1.03rem}
.point-box ul{margin:15px 0 0;padding-left:1.3em;color:#536b7d;line-height:1.9}
.collect-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin:28px 0}
.collect-flow div{padding:21px 16px;text-align:center;border:1px solid var(--ai-line);border-radius:14px;background:#fff}.collect-flow b{display:block;color:var(--ai-blue);font-size:1.03rem}.collect-flow span{display:block;margin-top:6px;color:#607483;font-size:.88rem}.collect-flow i{color:#8ba8bc;font-style:normal;font-size:1.35rem}
.notice-box{border-left:5px solid var(--ai-green)}.notice-box p{margin:7px 0 0;color:#536b7d}.user-data-note{margin:24px 0 0;padding:18px 20px;border-left:4px solid var(--ai-blue);background:#fff;color:#4f687a}

.price-section{background:#fff}.price-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;max-width:900px;margin:28px auto 0}.price-card{padding:28px 26px;border:1px solid var(--ai-line);border-radius:17px;background:#fff;box-shadow:0 9px 25px rgba(26,73,108,.075)}.price-card.featured{border:2px solid var(--ai-blue);background:linear-gradient(180deg,#f7fbff 0%,#fff 100%)}.price-label{margin:0 0 10px;color:var(--ai-navy);font-weight:800;font-size:1.03rem}.price-value{margin:0 0 20px;color:var(--ai-blue);line-height:1}.price-value strong{font-size:2.55rem;letter-spacing:-.03em}.price-value span{margin-left:6px;font-size:1rem;font-weight:700}.price-card ul{margin:0;padding-left:1.25em;color:#536b7d;line-height:1.9}.price-note{max-width:900px;margin:16px auto 0;color:#657b8b;font-size:.9rem}

.install-cta{padding:52px 0;text-align:center;background:linear-gradient(135deg,#123a59,#1769aa);color:#fff}.install-cta p:first-child{font-size:.78rem;font-weight:800;letter-spacing:.13em;opacity:.8}.install-cta h2{margin:8px 0 14px;font-size:clamp(1.7rem,2.6vw,2.25rem)}.install-cta p{max-width:760px;margin:0 auto 23px;line-height:1.9}.install-btn-light{background:#fff;border-color:#fff;color:var(--ai-blue)!important;box-shadow:0 7px 18px rgba(0,0,0,.12)}.install-btn-light:hover{background:#f4f9fc}

@media(max-width:900px){main .wrap{width:min(100% - 32px,1180px)}.install-hero-grid{grid-template-columns:1fr;gap:30px}.install-hero h1 span{white-space:normal}.install-two,.install-grid.three{grid-template-columns:1fr}.collect-flow{grid-template-columns:1fr}.collect-flow i{transform:rotate(90deg);text-align:center}.install-hero{padding-top:38px}.code-card{max-width:680px}.price-grid{grid-template-columns:1fr}.price-value strong{font-size:2.25rem}}
@media(max-width:560px){main .wrap{width:calc(100% - 24px)}.install-hero{padding:32px 0 38px}.install-hero h1{font-size:2rem}.install-actions{display:grid;grid-template-columns:1fr}.install-btn{width:100%}.install-section{padding:46px 0}.code-card pre{font-size:.76rem;padding:18px 16px}}

/* 料金プラン（107.php） */
.install-setup-fee{border:1px solid #cbdde9;border-radius:15px;background:#f3f8fc;padding:22px 26px;margin:24px 0 28px}
.install-setup-fee>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--ai-navy);font-weight:800}
.install-setup-fee strong{font-size:2rem;color:var(--ai-blue)}.install-setup-fee small{font-size:.85rem;margin-left:4px}
.install-setup-fee p{margin:8px 0 0;color:#536b7d;line-height:1.8}
.install-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;align-items:stretch}
.install-plan-card{position:relative;min-width:0;border:1px solid #d5e4ee;border-radius:16px;background:#fff;padding:24px 18px 20px;box-shadow:0 6px 18px rgba(26,73,108,.06)}
.install-plan-card.recommended{border:2px solid var(--ai-blue);background:#f7fbff}
.install-plan-card h3{font-size:1.18rem;color:var(--ai-navy);margin:0 0 7px}
.install-plan-audience{min-height:3em;font-size:.84rem;line-height:1.6;color:#657b8b;margin:0 0 15px}
.install-plan-price{margin:0 0 18px;white-space:nowrap;color:var(--ai-blue);font-size:.9rem;font-weight:700}
.install-plan-price strong{font-size:clamp(1.65rem,2.3vw,2.15rem);letter-spacing:-.04em}
.install-plan-price span{font-size:.8rem;color:#536b7d}
.install-plan-price.custom{white-space:normal}.install-plan-price.custom strong{font-size:1.22rem;letter-spacing:0}
.install-plan-card dl{margin:0;border-top:1px solid #e0eaf1}
.install-plan-card dl>div{padding:11px 0;border-bottom:1px solid #e0eaf1}
.install-plan-card dt{font-size:.8rem;color:#657b8b}.install-plan-card dd{margin:4px 0 0;font-weight:800;color:var(--ai-navy)}
.install-plan-tag{position:absolute;right:12px;top:-13px;background:var(--ai-blue);color:#fff;padding:4px 13px;border-radius:20px;font-size:.75rem;font-weight:800;margin:0}
.install-plan-notes{margin-top:28px;border:1px solid #d5e4ee;background:#f8fbfd;border-radius:14px;padding:22px 25px}
.install-plan-notes h3{color:var(--ai-navy);font-size:1.1rem;margin:0 0 12px}
.install-plan-notes ul{margin:0;padding-left:1.3em;line-height:1.9;color:#4d6577}
@media(max-width:1050px){.install-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.install-plan-grid{grid-template-columns:1fr}.install-setup-fee{padding:20px}.install-plan-card{padding:24px 22px}.install-plan-audience{min-height:0}.install-plan-price strong{font-size:2rem}.install-plan-notes{padding:18px}}
