/* お問い合わせページだけに適用する。 */
#content.kl-contact-main{float:none;width:100%;padding:40px 0 64px}
.kl-contact-page{--kl-color-primary:#4a7a5a;--kl-color-primary-dark:#2f5f42;--kl-color-primary-light:#e8f4ed;--kl-color-text:#333333;--kl-color-text-strong:#24352b;--kl-color-text-muted:#666f68;--kl-color-text-on-primary:#ffffff;--kl-color-border:#e0e0da;--kl-color-border-strong:#c9d7cd;--kl-color-bg-subtle:#f7f7f5;--kl-color-bg-paper:#ffffff;max-width:800px;margin:auto;color:var(--kl-color-text);font-size:16px;line-height:1.85;overflow-wrap:anywhere;color-scheme:light}
.kl-contact-page .kl-contact-eyebrow{color:var(--kl-color-primary-dark);font-size:14px;font-weight:700;margin:0 0 10px}
.kl-contact-page h1{font-size:clamp(28px,5vw,38px);line-height:1.4;margin:0 0 20px;color:var(--kl-color-text-strong)}
.kl-contact-page h2{font-size:21px;line-height:1.5;margin:0 0 16px;color:var(--kl-color-text-strong)}
.kl-contact-intro{margin-bottom:28px}
.kl-contact-guide,.kl-contact-note{padding:24px;background:var(--kl-color-bg-subtle);border:1px solid var(--kl-color-border);border-radius:var(--kl-border-radius);margin:0 0 32px}
.kl-contact-guide ul{margin:0;padding-left:1.4em}.kl-contact-guide li+li{margin-top:10px}
.kl-contact-form{border-top:3px solid var(--kl-color-primary);padding-top:24px}
.kl-contact-page div.wpforms-container{margin:24px 0 36px}
.kl-contact-page div.wpforms-container .wpforms-field{padding:14px 0}
.kl-contact-page div.wpforms-container .wpforms-field-label{font-size:16px;margin-bottom:10px}
.kl-contact-page div.wpforms-container .wpforms-required-label{font-size:0}
.kl-contact-page div.wpforms-container .wpforms-required-label:after{content:'必須';font-size:12px;margin-left:7px;color:var(--kl-color-primary-dark);background:var(--kl-color-primary-light);padding:3px 6px;border-radius:3px}
.kl-contact-page div.wpforms-container input[type=text],.kl-contact-page div.wpforms-container input[type=email],.kl-contact-page div.wpforms-container select,.kl-contact-page div.wpforms-container textarea{width:100%;max-width:100%;min-height:48px;font-size:16px;color:var(--kl-color-text);background:var(--kl-color-bg-paper);border:1px solid var(--kl-color-border-strong);border-radius:6px;padding:12px;box-sizing:border-box}
.kl-contact-page div.wpforms-container textarea{min-height:180px}
.kl-contact-page div.wpforms-container .wpforms-field-description{font-size:14px;color:var(--kl-color-text-muted);line-height:1.7}
.kl-contact-page div.wpforms-container .wpforms-field-checkbox li{min-height:44px;display:flex;align-items:center;gap:8px}
#content.kl-contact-main .kl-contact-page div.wpforms-container button[type=submit]{background:var(--kl-color-primary-dark);color:var(--kl-color-text-on-primary);border:0;border-radius:6px;min-height:50px;padding:12px 28px;font-size:16px;font-weight:700;cursor:pointer}
.kl-contact-page :is(input,select,textarea,button):focus-visible{outline:3px solid var(--kl-color-primary);outline-offset:3px}
.kl-contact-note p:last-child{margin-bottom:0}
@media(max-width:600px){#content.kl-contact-main{padding-top:24px}.kl-contact-guide,.kl-contact-note{padding:20px}.kl-contact-page div.wpforms-container button[type=submit]{width:100%}}

/* WPForms独自の文字色もページの配色へ合わせる。 */
#content .kl-contact-page .wpforms-field-label,
#content .kl-contact-page .wpforms-field-label-inline{color:var(--kl-color-text)}
#content .kl-contact-page .wpforms-container input[type=text],
#content .kl-contact-page .wpforms-container input[type=email],
#content .kl-contact-page .wpforms-container select,
#content .kl-contact-page .wpforms-container textarea{color:var(--kl-color-text);background-color:var(--kl-color-bg-paper);border-color:var(--kl-color-border-strong)}
#content .kl-contact-page .wpforms-container :is(input,textarea)::placeholder{color:var(--kl-color-text-muted);opacity:1}
#content .kl-contact-page .wpforms-container input[type=checkbox]{accent-color:var(--kl-color-primary);border-color:var(--kl-color-border-strong)}
#content .kl-contact-page .wpforms-container .wpforms-error{color:var(--kl-contact-error,#b42318)}
#content .kl-contact-page .wpforms-container :is(input,select,textarea).wpforms-error{color:var(--kl-color-text);border-color:var(--kl-contact-error,#b42318)}
#content .kl-contact-page .wpforms-confirmation-container-full{background:var(--kl-color-primary-light);color:var(--kl-color-text);border-color:var(--kl-color-primary)}

/* OSの配色とThemifyの明示ダークモード、どちらにも対応する。 */
@media(prefers-color-scheme:dark){
 body.page-id-2235{--kl-contact-canvas:#151b19;--kl-contact-ink:#e8efeb;background-color:var(--kl-contact-canvas);color:var(--kl-contact-ink)}
 body.page-id-2235 .kl-contact-page{--kl-color-primary:#8fd0a7;--kl-color-primary-dark:#a5dfba;--kl-color-primary-light:#263e31;--kl-color-text:#e8efeb;--kl-color-text-strong:#f5faf7;--kl-color-text-muted:#bdcbc2;--kl-color-text-on-primary:#15271c;--kl-color-border:#43594b;--kl-color-border-strong:#7b9485;--kl-color-bg-subtle:#202b25;--kl-color-bg-paper:#1b2720;--kl-contact-error:#ffb4ab;color-scheme:dark}
 body.page-id-2235 :is(#pagewrap,#body,#layout,#headerwrap,#header,#footerwrap,#footer){background-color:var(--kl-contact-canvas);color:var(--kl-contact-ink)}
 body.page-id-2235 :is(#site-logo a,#main-nav a,#footer a,#menu-icon){color:var(--kl-contact-ink)}
}
:is(html.tf_darkmode,html[data-theme=dark],body.tf_darkmode) body.page-id-2235,
body.tf_darkmode.page-id-2235{--kl-contact-canvas:#151b19;--kl-contact-ink:#e8efeb;background-color:var(--kl-contact-canvas);color:var(--kl-contact-ink)}
:is(html.tf_darkmode,html[data-theme=dark],body.tf_darkmode) .kl-contact-page{--kl-color-primary:#8fd0a7;--kl-color-primary-dark:#a5dfba;--kl-color-primary-light:#263e31;--kl-color-text:#e8efeb;--kl-color-text-strong:#f5faf7;--kl-color-text-muted:#bdcbc2;--kl-color-text-on-primary:#15271c;--kl-color-border:#43594b;--kl-color-border-strong:#7b9485;--kl-color-bg-subtle:#202b25;--kl-color-bg-paper:#1b2720;--kl-contact-error:#ffb4ab;color-scheme:dark}
:is(html.tf_darkmode,html[data-theme=dark],body.tf_darkmode) .page-id-2235 :is(#pagewrap,#body,#layout,#headerwrap,#header,#footerwrap,#footer),
body.tf_darkmode.page-id-2235 :is(#pagewrap,#body,#layout,#headerwrap,#header,#footerwrap,#footer){background-color:var(--kl-contact-canvas);color:var(--kl-contact-ink)}
:is(html.tf_darkmode,html[data-theme=dark],body.tf_darkmode) .page-id-2235 :is(#site-logo a,#main-nav a,#footer a,#menu-icon),
body.tf_darkmode.page-id-2235 :is(#site-logo a,#main-nav a,#footer a,#menu-icon){color:var(--kl-contact-ink)}
