
/* 3つの強み帯 */
.ky-strengths{width:100%;max-width:100%;min-width:0;flex:none;position:relative;box-sizing:border-box;padding:76px 24px;background:linear-gradient(180deg,#fbf6f6 0%,#ffffff 100%);}
.ky-strengths *{box-sizing:border-box;}
.ky-str__head{text-align:center;max-width:1080px;margin:0 auto 44px;}
.ky-str__en{display:block;color:#1E7A52;font-family:'Montserrat','Noto Sans JP',sans-serif;font-weight:800;letter-spacing:.16em;font-size:14px;margin-bottom:10px;}
.ky-str__ttl{font-size:clamp(24px,3.6vw,34px);color:#22334e;font-weight:800;margin:0 0 12px;line-height:1.35;}
.ky-str__ttl strong{color:#1E7A52;}
.ky-str__lead{color:#6b5b5b;font-size:15px;line-height:1.8;margin:0;}
.ky-str__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:0 auto;}
.ky-str__card{background:#fff;border:1px solid #f0e2e2;border-radius:18px;padding:34px 28px;box-shadow:0 12px 34px rgba(30,122,82,.06);position:relative;}
.ky-str__no{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#17593C,#1E7A52 60%,#134F38);color:#fff;font-family:'Montserrat',sans-serif;font-weight:800;font-size:20px;margin-bottom:18px;box-shadow:0 6px 16px rgba(30,122,82,.22);}
.ky-str__h{font-size:19px;color:#22334e;margin:0 0 12px;font-weight:800;line-height:1.4;}
.ky-str__p{font-size:14.5px;line-height:1.9;color:#5c5555;margin:0;}
.ky-str__p strong{color:#1E7A52;font-weight:800;}
@media(max-width:900px){.ky-strengths{padding:52px 18px;}.ky-str__grid{grid-template-columns:1fr;gap:16px;}.ky-str__card{padding:28px 24px;}}
/* --- SP: 青リボン(看護・リハビリ・ケアマネ採用情報)は非表示、下部固定は金バーのみ --- */
@media(max-width:768px){
  main>.sd-4{display:none!important;}
}
/* --- SP: ヒーロー写真の見せ位置(実写真反映後・顔が切れないよう中央基準に統一) (2026-08-25) --- */
@media(max-width:768px){
  .kv-slider .kv-slide:nth-child(1){background-position:center center;}
  .kv-slider .kv-slide:nth-child(2){background-position:center center;}
  .kv-slider .kv-slide:nth-child(3){background-position:center center;}
}
/* --- 末尾CTA: ボタン高さ/矢印統一 + 黄丸バッジ強化 --- */
.symbol-4__sd-12,.symbol-4__sd-25{height:60px!important;min-height:60px!important;align-items:center!important;justify-content:center!important;}
.symbol-4__sd-12::after{content:"→";color:#fff;font-size:17px;font-weight:700;margin-left:10px;}
.symbol-4__sd-16{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:116px!important;height:116px!important;background:radial-gradient(circle at 32% 26%,#ffe27a,#ffc107 72%)!important;border:3px solid #fff!important;box-shadow:0 10px 24px rgba(0,0,0,.22)!important;transform:rotate(8deg);line-height:1.3!important;}
.symbol-4__sd-16 small{font-size:10px;font-weight:700;color:#6b4a00;}
.symbol-4__sd-16 strong{font-size:14.5px;font-weight:900;color:#1E7A52;}
/* ===== SNSセクション(Instagram) ===== */
.sns-sec{position:relative;z-index:1;width:100%;padding:72px 40px 76px;box-sizing:border-box;background:linear-gradient(180deg,#fff,#fdf4f4);}
.sns-head{max-width:1180px;margin:0 auto 34px;}
.sns-en{display:flex;align-items:center;gap:8px;margin:0 0 8px;}
.sns-en p{margin:0;color:#1E7A52;font-weight:800;font-size:14px;letter-spacing:.14em;}
.sns-dot{width:13px;height:13px;border-radius:50%;background:#1E7A52;}
.sns-ttl{margin:0 0 10px;font-size:28px;font-weight:800;color:#1f2c4c;line-height:1.4;}
.sns-lead{margin:0;font-size:14px;color:#4a4a55;line-height:1.9;}
.sns-grid{max-width:1180px;margin:0 auto;display:flex;gap:28px;align-items:stretch;}
.sns-card{flex:1;min-width:0;background:#fff;border-radius:16px;box-shadow:0 14px 38px rgba(80,20,20,.09);padding:24px 24px 26px;display:flex;flex-direction:column;gap:16px;}
.sns-bar{display:block;height:6px;border-radius:99px;}
.sns-bar--ig{background:linear-gradient(90deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5);}
.sns-card__head{display:flex;align-items:center;gap:12px;}
.sns-card__head img{width:44px;height:44px;border-radius:10px;display:block;}
.sns-card__id{display:flex;flex-direction:column;line-height:1.3;}
.sns-card__id strong{font-size:17px;font-weight:800;color:#222;}
.sns-card__id span{font-size:12.5px;color:#1E7A52;font-weight:600;}
.sns-feed{flex:1;min-height:300px;background:#faf7f7;border-radius:12px;overflow:hidden;display:flex;align-items:stretch;justify-content:center;}
.sns-ig-frame{width:100%;height:430px;border:0;display:block;background:#fff;}
.sns-btn{display:flex;align-items:center;justify-content:center;height:52px;border-radius:999px;text-decoration:none;font-weight:800;font-size:14.5px;letter-spacing:.04em;transition:opacity .2s,transform .2s;}
.sns-btn:hover{opacity:.88;transform:translateY(-2px);}
.sns-btn--ig{background:linear-gradient(90deg,#fa7e1e,#d62976,#962fbf);color:#fff;}
.sns-btn--tt{background:#111;color:#fff;}
@media(max-width:768px){
  .sns-sec{padding:52px 20px 56px;}
  .sns-ttl{font-size:22px;}
  .sns-grid{flex-direction:column;gap:22px;}
  .sns-ig-frame{height:400px;}
}
/* --- 各サービスのご案内: 6カードの画像枠を同一表示領域(3:2=対応エリア地図に合わせる)に統一 --- */
.list-1__item__sd-1{aspect-ratio:3/2!important;height:auto!important;flex:none!important;align-self:center!important;border-radius:8px!important;}
/* 訪問看護事業カード(about1.jpg=縦写真)は顔が入る位置でクロップ */
div[style*="about1.jpg"].list-1__item__sd-1>.image__bg-container::before{background-position:center 22%!important;}
/* --- SP: About写真3枚をwyl風コンパクトコラージュ(左1枚+右2枚) --- */
@media(max-width:768px){
  .sd-40{flex-wrap:nowrap!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:12px!important;}
  .sd-41{width:45%!important;max-width:45%!important;flex:none!important;margin:0!important;box-shadow:none!important;}
  .sd-43{width:45%!important;max-width:45%!important;flex:none!important;gap:12px!important;align-items:flex-start!important;}
  .sd-42{width:100%!important;max-width:100%!important;height:50vw!important;}
  .sd-44{width:100%!important;max-width:100%!important;height:44vw!important;}
  .sd-45{width:76%!important;max-width:76%!important;height:32vw!important;margin:0!important;}
}
/* ===== フッター v2(自作・コンパクト) ===== */
.kf{width:100%;background:#f8efef;padding:56px 40px 0;box-sizing:border-box;font-family:inherit;}
.kf__inner{max-width:1180px;margin:0 auto;display:flex;gap:60px;align-items:flex-start;flex-wrap:wrap;}
.kf__left{flex:1.1;min-width:270px;}
.kf__logo{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:20px;}
.kf__mark{height:52px;width:auto;border-radius:8px;}
.kf__name{display:flex;flex-direction:column;line-height:1.15;gap:2px;}
.kf__name small{font-size:10.5px;color:#1E7A52;font-weight:600;}
.kf__name strong{font-size:17px;color:#1E7A52;font-weight:800;white-space:nowrap;}
.kf__addr{font-size:12.5px;color:#6b5252;line-height:1.9;margin:0 0 18px;}
.kf__sns{display:flex;gap:10px;}
.kf__sns a{display:block;width:32px;height:32px;border-radius:8px;overflow:hidden;transition:transform .2s;}
.kf__sns a:hover{transform:translateY(-2px);}
.kf__sns img{width:100%;height:100%;object-fit:cover;display:block;}
.kf__cols{flex:2;display:flex;gap:44px;flex-wrap:wrap;min-width:0;}
.kf__col{min-width:150px;display:flex;flex-direction:column;gap:0;}
.kf__ttl{font-size:13px;font-weight:800;color:#1E7A52;margin:0 0 10px;padding-bottom:8px;border-bottom:1.5px solid rgba(30,122,82,.22);}
.kf__col a{font-size:12.5px;color:#5c3f3f;text-decoration:none;padding:6px 0;line-height:1.5;transition:color .2s;}
.kf__col a:hover{color:#1E7A52;}
.kf__bottom{max-width:1180px;margin:36px auto 0;padding:16px 0 22px;border-top:1px solid rgba(30,122,82,.14);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;}
.kf__bottom span{display:flex;gap:20px;}
.kf__bottom a{font-size:11.5px;color:#6b5252;text-decoration:none;}
.kf__bottom a:hover{color:#1E7A52;}
.kf__bottom small{font-size:10.5px;color:#8f7676;letter-spacing:.06em;}
@media(max-width:768px){
  .kf{padding:40px 20px 0;}
  .kf__inner{flex-direction:column;gap:28px;}
  .kf__left{flex:none;width:100%;min-width:0;}
  .kf__cols{flex:none;width:100%;gap:24px 20px;}
  .kf__col{min-width:calc(50% - 10px);width:calc(50% - 10px);}
  .kf__bottom{margin-top:26px;justify-content:center;text-align:center;}
}
/* SERVICEイラスト: 透過PNGで背景に馴染ませる */
div[style*="service_map"] .image__bg-container{box-shadow:none!important;}
/* --- フッター: コーポレート極薄+ロゴ拡大 --- */
footer.box{background:#f8efef!important;}
footer.box :is(.text,p,a,h2,h3,span:not(.icon)){color:#5c3f3f!important;}
footer.box a:hover .text,footer.box a:hover{color:#1E7A52!important;}
footer.box .icon{color:#1E7A52!important;}
div.box:has(>footer){background:#f8efef!important;}
footer.box div[style*="logo_lockup"]{width:460px!important;max-width:460px!important;min-width:460px!important;height:140px!important;}
@media(max-width:768px){footer.box div[style*="logo_lockup"]{width:82vw!important;max-width:82vw!important;min-width:82vw!important;height:96px!important;}}
/* --- About右下写真枠を拡大(車椅子) ※SPはコラージュ側の指定を優先 --- */
.sd-57{height:300px!important;}
@media(min-width:769px){.sd-45{height:300px!important;}}

/* --- News(ヒーロー直下)をコンパクトに: 最新2件のみ --- */
.news-wrap .sd-86{padding-top:34px!important;padding-bottom:30px!important;}
.news-wrap .list-3__item:nth-child(n+3){display:none!important;}
.news-wrap .list-3__item{padding-top:12px!important;padding-bottom:12px!important;min-height:0!important;}
.news-wrap .symbol-2__sd-3{font-size:24px!important;}
.news-wrap .symbol-2__sd-4{font-size:17px!important;}
.news-wrap .sd-89{display:none!important;} /* 説明文のみ非表示(見出しは残す) */
/* --- News移設(ヒーロー直下)+CMS注記 --- */
.news-wrap{width:100%;max-width:100%;min-width:0;flex:none;display:flex;flex-direction:column;align-items:center;}
.news-wrap>.sd-86{width:100%;}
.news-cms-note{align-self:center;margin:-6px auto 8px;background:#fff3b0;color:#7a5b00;font-size:11px;font-weight:700;padding:4px 14px;border-radius:14px;}
/* --- ヒーロー動き: 浮遊光 + SCROLLインジケーター --- */
.kv-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;}
.kv-fx i{position:absolute;bottom:-50px;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(2px);animation:kvFloat linear infinite;}
.kv-fx i:nth-child(1){left:7%;width:10px;height:10px;animation-duration:12s;animation-delay:0s;}
.kv-fx i:nth-child(2){left:18%;width:16px;height:16px;animation-duration:15s;animation-delay:2.4s;}
.kv-fx i:nth-child(3){left:33%;width:8px;height:8px;animation-duration:10s;animation-delay:5s;}
.kv-fx i:nth-child(4){left:52%;width:13px;height:13px;animation-duration:14s;animation-delay:1.2s;}
.kv-fx i:nth-child(5){left:68%;width:9px;height:9px;animation-duration:11s;animation-delay:6.5s;}
.kv-fx i:nth-child(6){left:82%;width:18px;height:18px;animation-duration:16s;animation-delay:3.6s;}
.kv-fx i:nth-child(7){left:93%;width:11px;height:11px;animation-duration:13s;animation-delay:8s;}
@keyframes kvFloat{0%{transform:translateY(0) translateX(0);opacity:0;}10%{opacity:.85;}55%{transform:translateY(-48vh) translateX(14px);}100%{transform:translateY(-94vh) translateX(-10px);opacity:0;}}
.kv-scroll{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:9px;color:#fff;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;letter-spacing:.34em;text-indent:.34em;text-shadow:0 1px 10px rgba(0,0,0,.3);}
.kv-scroll::after{content:"";width:2px;height:46px;border-radius:2px;background:linear-gradient(180deg,#fff 30%,rgba(255,255,255,0));transform-origin:top;animation:kvScr 2s cubic-bezier(.6,0,.3,1) infinite;}
@keyframes kvScr{0%{transform:scaleY(0);opacity:1;}55%{transform:scaleY(1);opacity:1;}100%{transform:scaleY(1);opacity:0;}}
@media(max-width:768px){.kv-scroll{display:none;}}
@media(prefers-reduced-motion:reduce){.kv-fx,.kv-scroll::after{animation:none!important;display:none;}}
/* --- CTAカード等の英字ラベルもkurashi式に統一 --- */
.symbol-3__sd-8,.symbol-4__sd-8,.symbol-5__sd-8,.symbol-3__sd-21,.symbol-4__sd-21,.symbol-5__sd-21,.symbol-3__sd-2{display:none!important;}
.symbol-3__sd-9,.symbol-4__sd-9,.symbol-5__sd-9,.symbol-3__sd-22,.symbol-4__sd-22,.symbol-5__sd-22,.symbol-3__sd-3{font-family:Montserrat,sans-serif!important;font-weight:800!important;color:#1E7A52!important;text-transform:uppercase!important;letter-spacing:.06em!important;line-height:1.1!important;}
.symbol-3__sd-9,.symbol-4__sd-9,.symbol-5__sd-9,.symbol-3__sd-22,.symbol-4__sd-22,.symbol-5__sd-22{font-size:22px!important;}
.symbol-3__sd-3{font-size:34px!important;}
@media(max-width:768px){
  .symbol-3__sd-9,.symbol-4__sd-9,.symbol-5__sd-9,.symbol-3__sd-22,.symbol-4__sd-22,.symbol-5__sd-22{font-size:18px!important;}
  .symbol-3__sd-3{font-size:26px!important;}
}
/* --- RECRUITセクション(kurashi式・臙脂) --- */
.rc-sec{position:relative;width:100%;max-width:100%;min-width:0;flex:none;box-sizing:border-box;margin:170px 0 110px;padding:60px 0 110px;background:linear-gradient(180deg,#1A6B48 0%,#1E7A52 45%,#134F38 100%);}
.rc-curve{position:absolute!important;bottom:100%!important;top:auto!important;left:0!important;width:100%!important;height:96px;display:block;pointer-events:none;margin:0!important;}
.rc-sec>*{position:relative;z-index:1;}
.rc-curve{z-index:0;}
.rc-balloon{position:absolute;top:-30px;left:8%;display:flex;align-items:center;gap:12px;background:#fff;border:2.5px solid #1E7A52;color:#1E7A52;font-size:16px;font-weight:800;padding:10px 24px 10px 12px;border-radius:44px;box-shadow:0 12px 30px rgba(19,79,56,.3);z-index:3;transform:rotate(-2deg);}
.rc-balloon__ico{width:38px;height:41px;border-radius:9px;flex:none;}
.rc-balloon__txt{letter-spacing:.02em;white-space:nowrap;}
.rc-balloon__txt em{font-style:normal;color:#e3a400;font-size:19px;font-weight:900;}
.rc-balloon::after{content:"";position:absolute;right:-14px;bottom:2px;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:16px 8px 0 -3px #fff;}
.rc-marquee{margin:36px 0 10px;overflow:hidden;max-width:100%;min-width:0;}
.rc-marquee__track{display:flex;gap:.55em;width:max-content;animation:rcSlide 26s linear infinite;}
.rc-marquee__track span{font-family:Montserrat,sans-serif;font-weight:800;font-size:clamp(84px,10.5vw,150px);line-height:1.05;color:#fff;white-space:nowrap;}
.rc-marquee__track span.rc-out{color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.75);}
@keyframes rcSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rc-inner{max-width:1180px;margin:44px auto 0;padding:0 40px;display:flex;gap:56px;align-items:flex-start;}
.rc-txt{flex:1;min-width:0;}
.rc-catch{font-size:38px;font-weight:800;color:#fff;line-height:1.75;letter-spacing:.04em;margin:0 0 26px;}
.rc-lead{color:rgba(255,255,255,.92);font-size:15.5px;line-height:2.1;margin:0 0 28px;}
.rc-jobs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px;}
.rc-job{border:1.5px solid rgba(255,255,255,.8);color:#fff;font-size:13px;font-weight:700;padding:7px 16px;border-radius:22px;}
.rc-cta{display:inline-flex;align-items:center;gap:12px;background:#fff;color:#1E7A52;font-size:16px;font-weight:800;padding:16px 34px;border-radius:36px;text-decoration:none;box-shadow:0 10px 26px rgba(0,0,0,.24);transition:transform .25s ease,box-shadow .25s ease;}
.rc-cta:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,0,0,.32);}
.rc-cta__arrow{transition:transform .25s ease;}
.rc-cta:hover .rc-cta__arrow{transform:translateX(4px);}
.rc-photo{flex:1;min-width:0;border-radius:18px;overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,.3);}
.rc-photo img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3;}
@media(max-width:768px){
  .rc-sec{margin:96px 0 64px;padding:60px 0 70px;}
  .rc-curve{height:44px;}
  .rc-balloon{top:-16px;}
  .rc-balloon{top:22px;left:14px;right:14px;text-align:center;font-size:12.5px;padding:11px 16px;}
  .rc-marquee{margin-top:44px;}
  .rc-marquee__track span{font-size:64px;-webkit-text-stroke-width:1.5px;}
  .rc-inner{flex-direction:column;gap:30px;margin-top:26px;padding:0 20px;}
  .rc-catch{font-size:21px;line-height:1.85;}
  .rc-lead{font-size:13.5px;line-height:2;}
  .rc-cta{width:100%;justify-content:center;padding:14px;}
}
/* --- SPバランス調整: キャッチ/採用CTA縮小 --- */
@media(max-width:768px){
  h1.catch-v2{font-size:1.5rem!important;line-height:1.7!important;}
  .sd-19{font-size:.82rem!important;}
  .sd-19::before{width:40px;margin:0 0 10px;}
  .hero-recruit{padding:12px 16px;border-radius:14px;border:2px solid #1E7A52;bottom:-26px!important;box-shadow:0 12px 30px rgba(30,122,82,.25);}
  .hero-recruit::before{top:12px;bottom:12px;width:3px;}
  .hero-recruit__en{font-size:9px;}
  .hero-recruit__txt strong{font-size:15px;}
  .hero-recruit__txt>span{font-size:11px;}
  .hero-recruit__circle{width:34px;height:34px;font-size:14px;}
  .hero-recruit .hero-badge{display:none!important;}
}
/* --- ナビSNSアイコン --- */
.kh__sns-row{display:flex;align-items:center;gap:10px;}
.kh__sns{display:block;width:36px;height:36px;border-radius:9px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;}
.kh__sns img{width:100%;height:100%;object-fit:cover;display:block;}
.kh__sns:hover{transform:translateY(-2px) scale(1.06);box-shadow:0 6px 14px rgba(0,0,0,.18);}
@media(max-width:1080px){.kh__sns-row{justify-content:flex-start;gap:14px;margin:14px 0 4px;padding:0 8px;}.kh__sns{width:42px;height:42px;}}
/* --- 見出しkurashi式: 英字=臙脂特大主役 --- */
.symbol-2{flex-direction:column!important;align-items:flex-start!important;gap:2px!important;}
.symbol-2__sd-1{order:-1;}
.symbol-2__sd-2{display:none!important;}
.symbol-2__sd-3{font-family:Montserrat,sans-serif!important;font-size:34px!important;font-weight:800!important;color:#1E7A52!important;text-transform:uppercase!important;letter-spacing:.06em!important;line-height:1.1!important;}
.symbol-2__sd-4{color:#2a2a30!important;}
@media(max-width:768px){.symbol-2__sd-3{font-size:26px!important;}}
/* --- ナビ2段(小英字+日本語) --- */
.kh__link{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.15;}
.kh__link small{font-size:9px;font-family:Montserrat,sans-serif;font-weight:700;letter-spacing:.16em;color:#1E7A52;}
@media(max-width:1080px){.kh__link{flex-direction:row;align-items:baseline;gap:10px;}.kh__link small{min-width:64px;}}
/* --- GSAP演出: gsap-on時はIOリビールを無効化 --- */
html.gsap-on body :is(.symbol-2,.list-1__item,.list-2__item,.list-3__item,.list-4__item,.list-6__item,.image--vertical){opacity:1;transform:none;transition:none;}
.chx{display:inline-block;will-change:transform,opacity;}
h1 .chx,h2 .chx{backface-visibility:hidden;}
/* ===== 標準ヘッダー v2(上部密着型) ===== */
.kh{position:fixed;top:0;left:0;right:0;z-index:60;pointer-events:none;}
.kh__bar{pointer-events:auto;position:relative;width:100%;background:#fff;box-shadow:0 2px 16px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 34px;transition:padding .3s ease;box-sizing:border-box;}
.kh__logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none;}
.kh__mark{height:52px;width:auto;border-radius:8px;transition:height .3s ease;}
.kh__name{display:flex;flex-direction:column;line-height:1.12;gap:2px;}
.kh__name small{font-size:11px;color:#1E7A52;font-weight:600;white-space:nowrap;}
.kh__name strong{font-size:20px;color:#1E7A52;font-weight:800;white-space:nowrap;letter-spacing:.01em;transition:font-size .3s ease;}
.kh__nav{display:flex;align-items:center;gap:22px;}
.kh__link{text-decoration:none;color:#2a2a2a;font-size:15px;font-weight:700;white-space:nowrap;transition:color .2s;}
.kh__link:hover{color:#1E7A52;}
/* ===== ヘッダー ドロップダウン(2026-07-17追加) ===== */
.kh__item{position:relative;display:flex;align-items:center;}
.kh__caret{display:inline-block;width:7px;height:7px;margin-left:7px;border-right:2px solid #1E7A52;border-bottom:2px solid #1E7A52;transform:rotate(45deg) translateY(-2px);transition:transform .25s ease;}
.kh__has-sub:hover .kh__caret{transform:rotate(-135deg) translateY(2px);}
.kh__sub{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(10px);min-width:220px;background:#fff;border-radius:14px;box-shadow:0 20px 46px rgba(20,35,60,.17);padding:10px;display:flex;flex-direction:column;gap:1px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:70;}
.kh__sub::before{content:"";position:absolute;top:-14px;left:0;right:0;height:16px;}
.kh__has-sub:hover .kh__sub,.kh__has-sub:focus-within .kh__sub{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(4px);}
.kh__sub a{display:block;padding:11px 15px;border-radius:9px;font-size:14px;font-weight:700;color:#2a2a2a;text-decoration:none;white-space:nowrap;transition:background .18s,color .18s;}
.kh__sub a:first-child{color:#1E7A52;border-bottom:1px solid #f1eaea;border-radius:9px 9px 0 0;margin-bottom:3px;}
.kh__sub a:hover{background:#f8efef;color:#1E7A52;}
.kh-a{display:block;width:0;height:0;overflow:hidden;scroll-margin-top:96px;}
@media(max-width:1080px){
  .kh__item{display:block;border-bottom:1px solid #f1eaea;}
  .kh__has-sub>.kh__link{display:flex;align-items:center;justify-content:space-between;}
  .kh__caret{margin-left:auto;}
  .kh__item.sub-open .kh__caret{transform:rotate(-135deg) translateY(2px);}
  .kh__sub{position:static;transform:none;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;min-width:0;padding:0 0 8px 12px;max-height:0;overflow:hidden;transition:max-height .32s ease;}
  .kh__item.sub-open .kh__sub{max-height:520px;}
  .kh__sub::before{display:none;}
  .kh__sub a{padding:11px 8px;font-size:15px;white-space:normal;}
  .kh__sub a:first-child{border-bottom:1px solid #f1eaea;}
  .kh__has-sub:hover .kh__sub,.kh__has-sub:focus-within .kh__sub{position:static;transform:none;left:auto;}
}

.kh__line{display:inline-flex;align-items:center;justify-content:center;background:#06C755;color:#fff!important;padding:9px 18px;border-radius:26px;font-size:14px;font-weight:700;border:2px solid transparent;box-sizing:border-box;}
.kh__line:hover{filter:brightness(1.08);color:#fff!important;}
.kh__ctas{display:flex;align-items:center;gap:10px;}
.kh__cta{text-decoration:none;font-size:14px;font-weight:700;padding:9px 18px;border-radius:26px;white-space:nowrap;box-sizing:border-box;border:2px solid transparent;transition:all .2s;}
.kh__cta--fill{background:linear-gradient(135deg,#17593C,#1E7A52 55%,#134F38);color:#fff;box-shadow:0 4px 14px rgba(30,122,82,.28);}
.kh__cta--fill:hover{filter:brightness(1.12);transform:translateY(-1px);}
.kh__cta--outline{background:#fff;border-color:#1E7A52;color:#1E7A52;}
.kh__cta--outline:hover{background:#1E7A52;color:#fff;}
.kh__burger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:6px;padding:8px;flex:none;}
.kh__burger span{display:block;width:26px;height:2px;background:#1E7A52;border-radius:2px;transition:.3s;}
html.hdr-shrink .kh__bar{padding-top:7px;padding-bottom:7px;}
html.hdr-shrink .kh__mark{height:42px;}
html.hdr-shrink .kh__name strong{font-size:18px;}
@media(max-width:1080px){
  .kh__burger{display:flex;}
  .kh__nav{position:absolute;top:100%;right:0;left:0;margin-top:0;background:#fff;border-radius:0 0 18px 18px;box-shadow:0 14px 44px rgba(0,0,0,.16);flex-direction:column;align-items:stretch;gap:0;padding:0 16px;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height .38s ease,opacity .25s ease,padding .3s ease;}
  .kh.open .kh__nav{max-height:82vh;opacity:1;pointer-events:auto;padding:12px 16px;}
  .kh__link{padding:13px 8px;border-bottom:1px solid #f1eaea;font-size:16px;}
  .kh__line{justify-content:center;margin:10px 0;padding:11px;font-size:15px;}
  .kh__ctas{flex-direction:column;align-items:stretch;gap:9px;margin-top:10px;}
  .kh__cta{display:flex;align-items:center;justify-content:center;width:100%;text-align:center;padding:13px;font-size:15px;}
  .kh__ctas>.kh__item{display:block;border-bottom:none;}
  .kh__ctas>.kh__item>.kh__cta{width:100%;}
  .kh__ctas>.kh__item>.kh__cta .kh__caret{margin-left:8px;}
  .kh__ctas>.kh__item>.kh__sub{padding:6px 0 4px 12px;}
  .kh.open .kh__burger span:nth-child(1){transform:translateY(8px) rotate(45deg);}
  .kh.open .kh__burger span:nth-child(2){opacity:0;}
  .kh.open .kh__burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
}
@media(max-width:600px){
  .kh__bar{padding:10px 16px;}
  .kh__name small{display:none;}
  .kh__name strong{font-size:16px;}
  .kh__mark{height:40px;}
  html.hdr-shrink .kh__mark{height:34px;}
}

/* --- ヒーロー採用カード v2(デザイン強化) --- */
.sd-12{position:relative!important;}
.hero-recruit{position:absolute;right:5%;bottom:9%;z-index:4;display:flex;align-items:center;gap:24px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:20px;padding:20px 118px 20px 30px;box-shadow:0 18px 46px rgba(20,35,60,.22);text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;}
.hero-recruit::before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#17593C,#1E7A52);}
.hero-recruit:hover{transform:translateY(-3px);box-shadow:0 24px 56px rgba(20,35,60,.3);}
.hero-recruit__txt{display:flex;flex-direction:column;gap:3px;}
.hero-recruit__en{font-style:normal;font-family:Montserrat,sans-serif;font-size:10.5px;letter-spacing:.3em;color:#3F8F6D;font-weight:700;}
.hero-recruit__txt strong{font-size:22px;font-weight:800;color:#26262a;letter-spacing:.03em;}
.hero-recruit__txt>span{font-size:13px;color:#70707a;}
.hero-recruit__circle{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#17593C,#1E7A52 60%,#134F38);color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none;box-shadow:0 6px 16px rgba(30,122,82,.35);transition:transform .3s ease;}
.hero-recruit:hover .hero-recruit__circle{transform:translateX(4px);}
.hero-recruit .hero-badge{position:absolute;right:-38px;top:50%;transform:translateY(-58%) rotate(8deg);width:116px;height:116px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#ffe27a,#ffc107 72%);border:3px solid #fff;box-shadow:0 10px 26px rgba(0,0,0,.22);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none;}
.hero-badge small{background:#1E7A52;color:#fff;font-size:9px;font-weight:700;padding:2px 9px;border-radius:10px;letter-spacing:.04em;}
.hero-badge>strong{font-size:12px;font-weight:800;color:#6b4a00;line-height:1.2;}
.hero-badge__num{font-size:19px;font-weight:900;color:#1E7A52;line-height:1.1;letter-spacing:.01em;}
.hero-badge__num i{font-style:normal;font-size:10px;font-weight:700;margin-right:2px;color:#6b4a00;}
@media(max-width:768px){
  .hero-recruit{right:14px;left:14px;bottom:20px;justify-content:space-between;padding:16px 20px;gap:12px;}
  .hero-recruit__txt strong{font-size:18px;}
  .hero-recruit__txt>span{font-size:12px;}
  .hero-recruit__circle{width:42px;height:42px;font-size:17px;}
  .hero-recruit .hero-badge{right:6px;top:-88px;transform:rotate(8deg);width:96px;height:96px;}
  .hero-badge small{font-size:8px;padding:2px 7px;}
  .hero-badge>strong{font-size:10.5px;}
  .hero-badge__num{font-size:16px;}
}
/* --- キャッチ デザインv2(明朝・濃紺・アクセント・細線+サブ文) --- */
.catch-v2{display:block!important;font-family:"Noto Serif JP","Yu Mincho",YuMincho,"Hiragino Mincho ProN","MS PMincho",serif!important;color:#22334e!important;font-weight:600!important;letter-spacing:.08em!important;line-height:1.55!important;text-shadow:0 2px 18px rgba(255,255,255,.65);}
.catch-accent{color:#1E7A52;}
.sd-19{color:#33415c!important;font-weight:600!important;letter-spacing:.05em!important;text-shadow:0 1px 12px rgba(255,255,255,.6);display:block!important;}
.sd-19{transition:none!important;}
.sd-19::before{content:"";display:block;width:54px;height:2px;background:#1E7A52;margin:2px 0 16px;}
@media(max-width:768px){
.kv-slider::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(235,242,248,0) 34%,rgba(235,242,248,.42) 66%,rgba(238,244,250,.72) 100%);}
}
/* --- 転職祝い金 固定バー --- */
.kv-fixbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(90deg,#ffd23d 0%,#ffc107 100%);box-shadow:0 -4px 22px rgba(0,0,0,.20);padding:11px 54px 11px 20px;transform:translateY(115%);transition:transform .55s cubic-bezier(.2,.8,.2,1);}
.kv-fixbar.show{transform:none;}
.kv-fixbar__link{display:flex;align-items:center;gap:14px;text-decoration:none;flex-wrap:wrap;justify-content:center;}
.kv-fixbar__tag{background:#1E7A52;color:#fff;font-size:12px;font-weight:700;padding:3px 11px;border-radius:20px;white-space:nowrap;}
.kv-fixbar__main{font-size:17px;font-weight:800;color:#1E7A52;white-space:nowrap;}
.kv-fixbar__main strong{font-size:21px;}
.kv-fixbar__cta{display:inline-flex;align-items:center;gap:6px;background:#1E7A52;color:#fff;font-weight:700;font-size:14px;padding:8px 20px;border-radius:26px;white-space:nowrap;transition:filter .2s;}
.kv-fixbar__link:hover .kv-fixbar__cta{filter:brightness(1.15);}
.kv-fixbar__close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:24px;line-height:1;color:#134F38;cursor:pointer;padding:2px 8px;}
@media(max-width:600px){
  .kv-fixbar{padding:8px 38px 8px 12px;gap:7px;}
  .kv-fixbar__link{gap:8px;}
  .kv-fixbar__tag{font-size:10px;padding:2px 7px;}
  .kv-fixbar__main{font-size:13px;}
  .kv-fixbar__main strong{font-size:16px;}
  .kv-fixbar__cta{font-size:12px;padding:6px 13px;}
  .kv-fixbar__close{font-size:20px;right:8px;}
}
/* --- スクロール出現演出(2026-07-15 ④) --- */
html.js-anim :is(.symbol-2,.list-1__item,.list-2__item,.list-3__item,.list-4__item,.list-6__item,.image--vertical){opacity:0;transform:translateY(38px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform;}
html.js-anim .image--vertical{transform:translateY(28px) scale(1.05);}
html.js-anim .is-in{opacity:1!important;transform:none!important;}
@media(prefers-reduced-motion:reduce){html.js-anim :is(.symbol-2,.list-1__item,.list-2__item,.list-3__item,.list-4__item,.list-6__item,.image--vertical){opacity:1!important;transform:none!important;}}
/* --- ナビCTA: 採用情報=臙脂塗り / お問い合わせ=白抜き枠(コーポレート色) 同サイズ --- */
.symbol-1__sd-64,.symbol-1__sd-67{min-width:106px!important;justify-content:center!important;box-sizing:border-box!important;transition:filter .25s ease,transform .25s ease,background .25s ease,color .25s ease!important;}
.symbol-1__sd-64{background:linear-gradient(135deg,#17593C 0%,#1E7A52 52%,#134F38 100%)!important;box-shadow:0 4px 14px rgba(30,122,82,.28)!important;border:2px solid transparent!important;}
.symbol-1__sd-64 .text{color:#fff!important;}
.symbol-1__sd-67{background:#fff!important;border:2px solid #1E7A52!important;box-shadow:none!important;}
.symbol-1__sd-67 .text{color:#1E7A52!important;}
.symbol-1__sd-64:hover{filter:brightness(1.12)!important;transform:translateY(-1px)!important;}
.symbol-1__sd-67:hover{background:#1E7A52!important;transform:translateY(-1px)!important;}
.symbol-1__sd-67:hover .text{color:#fff!important;}
/* --- ナビ コンパクト化(2026-07-15) --- */
/* 初期は大きく、スクロールで縮小(hdr-shrink) */
.symbol-1__sd-1{height:84px!important;padding:0 24px!important;transition:height .35s ease,padding .35s ease!important;}
.site-logo .site-logo__mark{height:50px!important;transition:height .35s ease!important;}
.site-logo__main{font-size:20px!important;transition:font-size .35s ease!important;}
.site-logo__sub{font-size:11px!important;transition:font-size .35s ease!important;}
html.hdr-shrink .symbol-1__sd-1{height:66px!important;padding:0 26px!important;}
html.hdr-shrink .site-logo .site-logo__mark{height:42px!important;}
html.hdr-shrink .site-logo__main{font-size:18px!important;}
html.hdr-shrink .site-logo__sub{font-size:10px!important;}
@media(max-width:768px){
  .symbol-1__sd-1{height:66px!important;padding:0 16px!important;}
  .site-logo .site-logo__mark{height:44px!important;}
  .site-logo__main{font-size:17px!important;}
  html.hdr-shrink .symbol-1__sd-1{height:54px!important;}
  html.hdr-shrink .site-logo .site-logo__mark{height:33px!important;}
  html.hdr-shrink .site-logo__main{font-size:15px!important;}
}
/* --- ヘッダーロゴ: マーク拡大 + 社名テキスト --- */
.site-logo{display:flex!important;flex-direction:row!important;align-items:center!important;gap:11px;text-decoration:none;height:auto;margin:0!important;}
.site-logo .site-logo__mark{width:auto!important;height:54px!important;flex:none;border-radius:9px;box-shadow:0 2px 10px rgba(30,122,82,.18);}
.site-logo__name{display:flex;flex-direction:column;justify-content:center;line-height:1.12;gap:3px;}
.site-logo__sub{font-size:11px;color:#1E7A52;letter-spacing:.03em;font-weight:600;white-space:nowrap;}
.site-logo__main{font-size:21px;color:#1E7A52;font-weight:800;letter-spacing:.01em;white-space:nowrap;}
@media(max-width:768px){
  .site-logo{gap:8px;}
  .site-logo .site-logo__mark{height:40px!important;border-radius:7px;}
  .site-logo__sub{font-size:9px;}
  .site-logo__main{font-size:16px;}
}
@media(max-width:600px){
  /* SPは社名テキスト優先: 冗長な採用情報ヘッダーボタンを隠す(メニュー内に有) */
  a.symbol-1__sd-5{display:none!important;}
  .site-logo__sub{display:none;}
  .site-logo .site-logo__mark{height:36px!important;}
  .site-logo__main{font-size:15px;}
}
