/* 2026-10-13: LINEとフォームを主要な窓口に統一 */
.line-mark{width:22px;height:22px;flex:none;fill:currentColor}
.mail-mark{width:24px;height:24px;flex:none}
.site-header .header-contact{display:flex;align-items:center;gap:10px;flex:none}
.header-line,.header-form{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border-radius:4px;font-size:15px;letter-spacing:.02em;white-space:nowrap;min-height:48px}
.header-line{background:#06c755;color:#fff}
.header-line:hover{background:#05b24c}
.header-form{background:#f0f5f7;color:#15394c;border:1px solid #d6e2e8}
.header-form:hover{background:#fff}
.site-header{gap:22px}
.site-header nav{gap:20px}
@media(min-width:851px) and (max-width:1200px){.site-header nav{gap:12px;font-size:13px}.header-line,.header-form{font-size:14px;padding:10px 12px}.site-header{gap:16px;padding-left:3%;padding-right:3%}.site-header .logo{width:190px}}
@media(min-width:851px) and (max-width:1050px){.site-header nav{display:none}.site-header .header-contact{margin-left:auto}.site-header .menu-toggle{display:grid;gap:6px;place-content:center;width:44px;height:44px;border:0;background:none;padding:5px;flex:none}.menu-toggle span{width:22px;height:1px;background:#afc9db}}
@media(max-width:850px){.site-header .header-contact{display:none}}
.hero-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:14px;margin-top:32px}
.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;border-radius:4px;min-height:64px;padding:14px 24px;box-sizing:border-box;font-size:17px;letter-spacing:.025em}
.hero-cta-line{background:#06c755;color:#fff}
.hero-cta-line .line-mark{width:26px;height:26px}
.hero-cta-line:hover{background:#05b24c}
.hero-cta-form{background:#f0f5f7;border:1px solid #d6e2e8;color:#15394c}
.hero-cta-form:hover{background:#fff}
.hero-copy .hero-link{margin-top:26px}
@media(max-width:850px){.hero-actions{display:none}}
.contact-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 18px}
.channel-card{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:28px 30px;border-radius:6px;text-decoration:none;min-height:180px;box-sizing:border-box}
.channel-head{display:flex;align-items:center;gap:12px}
.channel-line{background:#06c755;color:#fff}
.channel-line:hover{background:#05b24c}
.channel-line .line-mark,.channel-form .mail-mark{width:28px;height:28px}
.channel-form{background:#f0f5f7;color:#15394c;border:1px solid #d6e2e8}
.channel-form:hover{background:#fff}
.channel-title{font-size:20px;letter-spacing:.025em;line-height:1.5}
.channel-note{font-size:16px;line-height:1.8}
.channel-line .channel-note{color:#fff}
.channel-note .nb{display:inline-block}
.channel-action{font-size:16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #c7d5db;padding-top:10px}
.line-help{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;font-size:14px;color:#dce8ed}
.line-help>a{display:inline-flex;align-items:center;gap:10px;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.line-help .qr-disclosure{margin:0}
.line-help .qr-disclosure summary{min-height:44px;font-size:14px}
.contact-service .contact-availability{font-size:15px;line-height:1.9;margin:18px 0 0}
.contact-service .contact-form-panel{margin-top:28px;scroll-margin-top:16px}
.contact-service .form-wrap label{font-size:16px}
.contact-service .form-wrap label>small{font-size:12px}
.contact-service .confirm-button{font-size:16px}
.contact-phone-secondary{font-size:15px;line-height:1.9;margin-top:28px;color:#c3d4df}
.contact-phone-secondary a{text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:6px 0}
.contact-phone-secondary span{font-size:14px}
.sp-contact-bar{display:none}
.sp-contact-bar[hidden]{display:none!important}
@media(max-width:700px){.contact-channels{grid-template-columns:1fr;gap:14px}.channel-card{padding:22px 20px;min-height:0}.channel-title{font-size:18px}.channel-note{font-size:15px}.line-help{display:block}.line-help>a{font-size:14px;line-height:1.7}.line-help .line-mark{width:20px;height:20px}.contact-service .contact-availability{font-size:14px}.contact-phone-secondary{font-size:14px}.contact-phone-secondary span{font-size:13px}}
@media(max-width:850px){
.sp-contact-bar{position:fixed;left:0;right:0;bottom:0;z-index:29;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#0b1a2a;border-top:1px solid rgba(154,181,199,.25);padding-bottom:env(safe-area-inset-bottom)}
.sp-contact-bar a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:62px;text-decoration:none;line-height:1.2;font-size:16px}
.sp-contact-bar .bar-line{background:#06c755;color:#fff}
.sp-contact-bar .bar-line .line-mark{width:24px;height:24px}
.sp-contact-bar .bar-form{background:#f0f5f7;color:#15394c}
body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
.hero-foot{transform:translateY(-62px)}
}

/* 独自ドメインの公開問い合わせ先 */
.contact-service .direct-email{margin:-8px 0 28px;font-size:15px;line-height:1.8;color:#36586b}
.direct-email>span{display:block}
.direct-email>a{display:inline-block;font-size:18px;text-decoration:underline;text-underline-offset:4px;padding:5px 0;overflow-wrap:anywhere}
.footer-email{display:block;margin:16px 0 8px;font-size:16px;line-height:1.8;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.footer-email>span{display:block;font-size:13px;color:#b8cbd5}
@media(max-width:700px){.contact-service .direct-email{font-size:14px;margin-bottom:24px}.direct-email>a{font-size:17px}.footer-email{font-size:14px}.footer-email>span{font-size:12px}}
