/* クジョシル /contact/ のみ。既存トップ・記事一覧・投稿には影響しません。 */
.ks-contact-content{max-width:1100px;margin:0 auto;padding:34px 22px 90px;box-sizing:border-box}
.ks-contact-content .ks-contact-inner,.ks-contact-content .ks-contact-main{width:100%;max-width:none;min-width:0;margin:0;padding:0;float:none;box-sizing:border-box;background:transparent;box-shadow:none}
.ks-contact-breadcrumb{font-size:13px;color:#71807b;margin:0 0 28px}
.ks-contact-breadcrumb a{color:#246c57;text-decoration:none}
.ks-contact-breadcrumb span{margin-left:8px}
.ks-contact-hero{background:#f0f7f3;border-radius:18px;padding:44px 42px;margin:0 0 28px}
.ks-contact-eyebrow{color:#237458!important;letter-spacing:.16em;font-size:12px;font-weight:800;margin:0 0 10px!important}
.ks-contact-hero h1{color:#174c3c;font-size:clamp(27px,4vw,39px);line-height:1.35;margin:0 0 13px;padding:0;border:0;background:none}
.ks-contact-hero>p:last-child{font-size:15px;line-height:1.8;color:#53665d;margin:0}
.ks-contact-panel{max-width:760px;background:#fff;border:1px solid #e0eae4;border-radius:18px;padding:42px;box-shadow:0 7px 27px rgba(30,73,54,.055);margin:0 auto}
.ks-contact-intro h2,.ks-contact-success h2{font-size:24px;color:#174c3c;margin:0 0 10px;padding:0;border:0;background:none}
.ks-contact-intro p{margin:0 0 30px;color:#53665d;font-size:14px}
.ks-contact-form{display:grid;gap:25px}
.ks-contact-field{display:grid;gap:9px}
.ks-contact-field>label{font-size:15px;font-weight:800;color:#243b32}
.ks-contact-required{display:inline-block;vertical-align:middle;margin-left:7px;padding:3px 7px;background:#fdf0e7;color:#b14f1a;border-radius:4px;font-size:11px;font-weight:800;line-height:1.3}
.ks-contact-field input,.ks-contact-field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;float:none;border:1px solid #cdded3;border-radius:9px;padding:13px 14px;background:#fff;color:#20372c;font:inherit;font-size:16px;line-height:1.6;box-shadow:none}
.ks-contact-field input:focus,.ks-contact-field textarea:focus{outline:3px solid #bce5d0;border-color:#1b654d}
.ks-contact-field textarea{resize:vertical;min-height:170px}
.ks-contact-field small{font-size:12px;color:#687c70}
.ks-contact-consent{background:#f5f9f6;padding:18px;border-radius:10px;font-size:14px;line-height:1.7;color:#345544}
.ks-contact-consent label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.ks-contact-consent input{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:#17644c}
.ks-contact-consent a{color:#17644c;text-decoration:underline;font-weight:700}
.ks-contact-submit{width:100%;max-width:none!important;min-height:55px;background:#0f5c4a!important;border:0!important;border-radius:10px;color:#fff!important;font-size:16px;font-weight:800;cursor:pointer;padding:14px 20px;display:flex;justify-content:center;align-items:center;gap:14px;transition:background .15s}
.ks-contact-submit:hover,.ks-contact-submit:focus-visible{background:#174536!important}
.ks-contact-submit:focus-visible{outline:3px solid #8bd2aa;outline-offset:3px}
.ks-contact-fineprint{font-size:12px!important;color:#6c7b71;line-height:1.8;margin:0!important}
.ks-contact-notice{border-radius:10px;padding:20px 23px;font-size:14px;line-height:1.8;margin-bottom:25px}
.ks-contact-error{background:#fff3f0;border:1px solid #ebc3b6;color:#843a28}
.ks-contact-success{background:#eff8f1;border:1px solid #c2dfca;color:#1b5132}
.ks-contact-success p{margin:8px 0 0}
.ks-contact-return{display:inline-block;background:#0f5c4a;color:#fff!important;text-decoration:none!important;border-radius:9px;padding:13px 22px;font-weight:800}
.ks-contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:600px){.ks-contact-content{padding:18px 15px 55px}.ks-contact-breadcrumb{margin-bottom:18px}.ks-contact-hero{padding:27px 20px;margin-bottom:18px}.ks-contact-hero>p:last-child{font-size:13px}.ks-contact-panel{padding:24px 18px}.ks-contact-intro h2{font-size:21px}.ks-contact-form{gap:20px}}
@media(prefers-reduced-motion:reduce){.ks-contact-submit{transition:none}}
