:root{--navy:#1a2b4a;--navy-dark:#12203a;--wood:#c9a06c;--wood-soft:#e6d4ba;--sage:#9aa5a0;--bg:#ffffff;--bg-soft:#faf8f5;--line:#ece7df;--text:#26303f;--text-sub:#6b7480}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);line-height:1.9;font-size:16px;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:var(--navy);text-decoration:none}.eyebrow{display:block;text-align:center;font-size:.72rem;letter-spacing:.32em;font-weight:700;color:var(--wood);margin-bottom:12px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.header-inner{max-width:1100px;margin:0 auto;padding:14px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.site-title{font-weight:700;font-size:1.05rem;color:var(--navy);letter-spacing:.04em}.site-nav{display:flex;align-items:center;gap:20px;font-size:.92rem}.site-nav a{color:var(--text)}.header-tel{background:var(--navy);color:#fff!important;padding:9px 16px;border-radius:4px;font-weight:700;white-space:nowrap;font-size:.9rem}.hero{background:var(--bg);padding:40px 20px 8px}.hero-inner{max-width:1100px;margin:0 auto}.hero-image{width:100%;border-radius:10px;overflow:hidden;box-shadow:0 12px 40px rgba(26,43,74,.1)}.hero-image,.work-image{position:relative}.hero-image:after,.work-image:after{content:"※画像はイメージです";position:absolute;right:8px;bottom:8px;font-size:10px;line-height:1;color:#fff;background:rgba(26,43,74,.55);padding:4px 8px;border-radius:4px;pointer-events:none}.hero-image img{width:100%;height:auto}.hero-body{text-align:center;padding:36px 4px 8px}.hero-company{font-size:.85rem;letter-spacing:.2em;color:var(--text-sub);margin-bottom:18px}.hero-catch{font-size:1.85rem;font-weight:700;line-height:1.55;color:var(--navy);letter-spacing:.02em;margin-bottom:20px}.hero-sub{font-size:1rem;color:var(--text-sub);margin-bottom:32px}.tel-button{display:inline-block;background:var(--navy);color:#fff;font-size:1.3rem;font-weight:700;padding:16px 40px;border-radius:6px;letter-spacing:.03em;box-shadow:0 6px 20px rgba(26,43,74,.22);transition:transform .15s ease,box-shadow .15s ease}.tel-button:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(26,43,74,.28)}.tel-button small{display:block;font-size:.78rem;font-weight:500;opacity:.85;letter-spacing:.06em}.section{padding:72px 20px}.section-alt{background:var(--bg-soft)}.section-inner{max-width:1100px;margin:0 auto}.section-title{text-align:center;font-size:1.7rem;font-weight:700;color:var(--navy);letter-spacing:.05em;margin-bottom:44px}.reasons{display:grid;grid-gap:24px;gap:24px;grid-template-columns:1fr}.reason-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:36px 28px;text-align:center}.reason-icon{width:64px;height:64px;margin:0 auto 18px}.reason-icon img{width:100%;height:100%}.reason-title{font-size:1.12rem;font-weight:700;color:var(--navy);margin-bottom:12px}.reason-text{font-size:.95rem;color:var(--text-sub);text-align:left}.services{display:grid;grid-gap:24px;gap:24px;grid-template-columns:1fr}.service-item{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.service-thumb{width:100%;aspect-ratio:4/3;background:var(--bg-soft)}.service-thumb img{width:100%;height:100%;object-fit:cover}.service-body{padding:22px 24px}.service-name{font-weight:700;font-size:1.08rem;color:var(--navy);margin-bottom:6px}.service-detail{font-size:.92rem;color:var(--text-sub)}.works{display:grid;grid-gap:28px;gap:28px;grid-template-columns:1fr}.work-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 6px 18px rgba(26,43,74,.06)}.work-image{width:100%;aspect-ratio:4/3}.work-image img{width:100%;height:100%;object-fit:cover}.work-body{padding:20px 22px;color:var(--navy);font-weight:700}.works-note{text-align:center;font-size:.85rem;color:var(--text-sub);margin-top:28px}.greeting{display:flex;flex-direction:column;align-items:center;gap:32px;max-width:860px;margin:0 auto}.greeting-avatar{width:200px;height:200px;border-radius:10px;overflow:hidden;flex-shrink:0;border:1px solid var(--line);background:var(--bg-soft)}.greeting-avatar img{width:100%;height:100%;object-fit:cover}.greeting-text{color:var(--text);font-size:1rem}.greeting-name{margin-top:16px;font-weight:700;color:var(--navy)}.area-box{background:#fff;border:1px solid var(--line);border-top:3px solid var(--wood);border-radius:8px;padding:36px 24px;text-align:center;color:var(--navy);max-width:760px;margin:0 auto}.area-box p+p{margin-top:6px;font-size:.9rem;color:var(--text-sub)}.contact{background:var(--bg-soft);text-align:center}.contact-lead{color:var(--text-sub);margin-bottom:28px}.contact-note{margin-top:24px;font-size:.85rem;color:var(--text-sub)}.page-title{text-align:center;font-size:1.6rem;font-weight:700;color:var(--navy);letter-spacing:.05em;margin-bottom:44px}.company-table{width:100%;max-width:760px;margin:0 auto;border-collapse:collapse;background:#fff}.company-table td,.company-table th{border:1px solid var(--line);padding:16px 18px;text-align:left;vertical-align:top;font-size:.95rem}.company-table th{background:var(--bg-soft);color:var(--navy);width:32%;font-weight:700}.privacy-body{max-width:760px;margin:0 auto}.privacy-body h2{font-size:1.1rem;color:var(--navy);margin:36px 0 8px;padding-left:12px;border-left:3px solid var(--wood)}.privacy-body p{font-size:.95rem;color:var(--text)}.privacy-date{margin-top:36px;text-align:right;font-size:.85rem;color:var(--text-sub)}.site-footer{background:var(--navy);color:#cdd5e2;text-align:center;padding:48px 20px;font-size:.9rem}.footer-name{font-weight:700;font-size:1.05rem;color:#fff;letter-spacing:.05em}.footer-area,.footer-name{margin-bottom:10px}.footer-link{color:var(--wood-soft);text-decoration:underline}.footer-copy{margin-top:18px;font-size:.8rem;color:#8b96ac}@media (min-width:768px){.hero{padding:56px 20px 8px}.hero-catch{font-size:2.6rem}.reasons,.works{grid-template-columns:repeat(3,1fr)}.services{grid-template-columns:repeat(2,1fr)}.greeting{flex-direction:row;align-items:center;text-align:left}}.nowrap{display:inline-block;white-space:nowrap}