:root{
  --ink:#22201E; --ink-2:#5C564F; --ink-3:#8A837B;
  --accent:#4A6FA5; --accent-dark:#375383; --accent-soft:#EEF3F9;
  --line:#E6E2DC; --bg-soft:#F8F7F5;
}
#recruitpr-lp-wrapper *{box-sizing:border-box;}
#recruitpr-lp-wrapper{margin:0;color:var(--ink);background:#fff;
  font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;
  font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased;}
#recruitpr-lp-wrapper img{max-width:100%;display:block;}
#recruitpr-lp-wrapper a{color:inherit;}
#recruitpr-lp-wrapper .wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
#recruitpr-lp-wrapper .wrap--narrow{max-width:780px;}
#recruitpr-lp-wrapper section{padding:clamp(56px,7vw,100px) 0;}
#recruitpr-lp-wrapper .sec-label{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.24em;
  color:var(--accent);text-align:center;margin-bottom:12px;}
#recruitpr-lp-wrapper h2.sec-title{margin:0 0 14px;text-align:center;font-family:"Shippori Mincho B1",serif;
  font-weight:700;font-size:clamp(23px,3.1vw,32px);line-height:1.5;}
#recruitpr-lp-wrapper .sec-lead{margin:0 auto 46px;max-width:680px;text-align:center;font-size:14.5px;color:var(--ink-2);}
#recruitpr-lp-wrapper .btn{display:inline-block;text-decoration:none;font-weight:700;font-size:15px;
  padding:15px 38px;border-radius:999px;background:var(--accent);color:#fff;
  box-shadow:0 10px 22px -12px rgba(74,111,165,.8);}
#recruitpr-lp-wrapper .btn--ghost{background:#fff;color:var(--accent);border:1.5px solid var(--accent);box-shadow:none;}

/* ---- 画像プレースホルダ（実装時に差し替え） ---- */
#recruitpr-lp-wrapper .ph{position:relative;background:repeating-linear-gradient(45deg,#F2F0EC,#F2F0EC 10px,#EAE7E1 10px,#EAE7E1 20px);
  border:2px dashed #C9C3BA;border-radius:14px;display:flex;align-items:center;justify-content:center;
  text-align:center;color:#7A7168;font-size:12.5px;line-height:1.7;padding:16px;}
#recruitpr-lp-wrapper .ph b{display:block;font-size:13.5px;color:#4A443D;margin-bottom:4px;}
#recruitpr-lp-wrapper .ph code{font-family:ui-monospace,monospace;font-size:11.5px;color:var(--accent-dark);}
#recruitpr-lp-wrapper .ph--16x10{aspect-ratio:16/10;}
#recruitpr-lp-wrapper .ph--16x9{aspect-ratio:16/9;}
#recruitpr-lp-wrapper .ph--4x3{aspect-ratio:4/3;}
#recruitpr-lp-wrapper .ph--1x1{aspect-ratio:1/1;}

/* ---- hero（2カラム・画像主役） ---- */
#recruitpr-lp-wrapper .hero{padding:clamp(44px,6vw,76px) 0;background:linear-gradient(180deg,var(--accent-soft),#fff);}
#recruitpr-lp-wrapper .hero__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,52px);align-items:center;}
#recruitpr-lp-wrapper .hero__title{margin:0 0 18px;font-family:"Shippori Mincho B1",serif;font-weight:700;
  font-size:clamp(25px,3.6vw,40px);line-height:1.5;}
#recruitpr-lp-wrapper .hero__title em{font-style:normal;background:linear-gradient(transparent 62%,#F7D9A8 62%);}
#recruitpr-lp-wrapper .hero__desc{margin:0 0 28px;font-size:14.5px;color:var(--ink-2);}
@media(max-width:820px){#recruitpr-lp-wrapper .hero__inner{grid-template-columns:1fr;}}

/* ---- problem ---- */
#recruitpr-lp-wrapper .problem{background:var(--bg-soft);}
#recruitpr-lp-wrapper .problem__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
#recruitpr-lp-wrapper .problem__item{background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:30px 22px;font-size:14.5px;line-height:1.8;text-align:center;}
#recruitpr-lp-wrapper .problem__icon{width:60px;height:60px;margin:0 auto 18px;border-radius:50%;
  background:var(--accent-soft);color:var(--accent);
  display:flex;align-items:center;justify-content:center;}
#recruitpr-lp-wrapper .problem__icon svg{width:30px;height:30px;}

/* ---- sample（記事カード・画像主役） ---- */
#recruitpr-lp-wrapper .sample__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:34px;}
#recruitpr-lp-wrapper .sample__card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  text-decoration:none;display:block;transition:box-shadow .2s;}
#recruitpr-lp-wrapper .sample__card:hover{box-shadow:0 14px 30px -20px rgba(0,0,0,.4);}
#recruitpr-lp-wrapper .sample__thumb{border:0;border-radius:0;}
#recruitpr-lp-wrapper .sample__body{padding:18px 20px 22px;}
#recruitpr-lp-wrapper .sample__tag{display:inline-block;background:var(--accent-soft);color:var(--accent-dark);
  font-size:11.5px;font-weight:700;padding:4px 12px;border-radius:999px;margin-bottom:10px;}
#recruitpr-lp-wrapper .sample__title{margin:0;font-size:15px;font-weight:700;line-height:1.65;}
#recruitpr-lp-wrapper .sample__cta{text-align:center;}

/* ---- features（画像＋テキストの交互2カラム） ---- */
#recruitpr-lp-wrapper .feature-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);
  align-items:center;margin-bottom:clamp(40px,5vw,64px);}
#recruitpr-lp-wrapper .feature-row:last-child{margin-bottom:0;}
#recruitpr-lp-wrapper .feature-row:nth-child(even) .feature-row__media{order:-1;}
#recruitpr-lp-wrapper .feature-row__num{font-family:ui-monospace,monospace;font-size:12px;font-weight:700;
  color:var(--accent);letter-spacing:.12em;margin-bottom:10px;}
#recruitpr-lp-wrapper .feature-row__title{margin:0 0 12px;font-family:"Shippori Mincho B1",serif;font-weight:700;
  font-size:clamp(18px,2.3vw,23px);line-height:1.6;}
#recruitpr-lp-wrapper .feature-row__text{margin:0;font-size:14.5px;color:var(--ink-2);line-height:1.9;}
@media(max-width:820px){#recruitpr-lp-wrapper .feature-row{grid-template-columns:1fr;}
#recruitpr-lp-wrapper .feature-row:nth-child(even) .feature-row__media{order:0;}}

/* ---- 制作物イメージ ---- */
#recruitpr-lp-wrapper .mockup{background:var(--bg-soft);}
#recruitpr-lp-wrapper .mockup__frame{max-width:880px;margin:0 auto;}

/* ---- plan ---- */
#recruitpr-lp-wrapper .plan__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;align-items:start;}
#recruitpr-lp-wrapper .plan-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;}
#recruitpr-lp-wrapper .plan-card--rec{border:2px solid var(--accent);box-shadow:0 16px 34px -22px rgba(74,111,165,.75);}
#recruitpr-lp-wrapper .plan-card__rec{background:var(--accent);color:#fff;text-align:center;font-size:12.5px;font-weight:700;padding:6px;}
#recruitpr-lp-wrapper .plan-card__head{padding:22px 24px 0;}
#recruitpr-lp-wrapper .plan-card__name{margin:0 0 12px;font-family:"Shippori Mincho B1",serif;font-weight:700;font-size:19px;}
#recruitpr-lp-wrapper .plan-card__price{font-family:"Shippori Mincho B1",serif;font-weight:700;font-size:29px;line-height:1.2;}
#recruitpr-lp-wrapper .plan-card__price small{font-size:13px;font-weight:400;color:var(--ink-3);margin-left:4px;}
#recruitpr-lp-wrapper .plan-card__body{padding:16px 24px 26px;}
#recruitpr-lp-wrapper .plan-card__body ul{margin:0;padding:0;list-style:none;}
#recruitpr-lp-wrapper .plan-card__body li{position:relative;padding-left:22px;font-size:14px;line-height:1.8;
  color:var(--ink-2);margin-bottom:9px;}
#recruitpr-lp-wrapper .plan-card__body li::before{content:"✓";position:absolute;left:0;top:0;color:var(--accent);font-weight:700;}
#recruitpr-lp-wrapper .plan__note{margin:26px auto 0;max-width:780px;background:var(--bg-soft);border:1px solid var(--line);
  border-radius:12px;padding:18px 22px;font-size:13.5px;color:var(--ink-2);line-height:1.85;}

/* ---- option ---- */
#recruitpr-lp-wrapper .option{background:var(--bg-soft);}
#recruitpr-lp-wrapper .option__table{width:100%;border-collapse:collapse;font-size:14.5px;background:#fff;
  border-radius:12px;overflow:hidden;}
#recruitpr-lp-wrapper .option__table th, #recruitpr-lp-wrapper .option__table td{border-bottom:1px solid var(--line);padding:15px 16px;text-align:left;}
#recruitpr-lp-wrapper .option__table tr:last-child th, #recruitpr-lp-wrapper .option__table tr:last-child td{border-bottom:0;}
#recruitpr-lp-wrapper .option__table th{width:38%;font-weight:700;}
#recruitpr-lp-wrapper .option__table td:last-child{text-align:right;white-space:nowrap;font-weight:700;}

/* ---- flow ---- */
#recruitpr-lp-wrapper .flow__list{counter-reset:f;max-width:740px;margin:0 auto;padding:0;list-style:none;}
#recruitpr-lp-wrapper .flow__item{counter-increment:f;position:relative;padding:0 0 28px 62px;}
#recruitpr-lp-wrapper .flow__item::before{content:counter(f);position:absolute;left:0;top:0;width:38px;height:38px;
  border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:15px;
  display:flex;align-items:center;justify-content:center;}
#recruitpr-lp-wrapper .flow__item:not(:last-child)::after{content:"";position:absolute;left:18.5px;top:42px;bottom:6px;
  width:1.5px;background:var(--line);}
#recruitpr-lp-wrapper .flow__title{font-weight:700;font-size:15.5px;margin-bottom:4px;}
#recruitpr-lp-wrapper .flow__text{font-size:14px;color:var(--ink-2);margin:0;}

/* ---- faq ---- */
#recruitpr-lp-wrapper .faq__item{border-bottom:1px solid var(--line);padding:20px 0;}
#recruitpr-lp-wrapper .faq__q{font-weight:700;font-size:15.5px;margin-bottom:8px;padding-left:28px;position:relative;}
#recruitpr-lp-wrapper .faq__q::before{content:"Q";position:absolute;left:0;top:0;color:var(--accent);font-family:ui-monospace,monospace;}
#recruitpr-lp-wrapper .faq__a{margin:0;font-size:14.5px;color:var(--ink-2);padding-left:28px;position:relative;}
#recruitpr-lp-wrapper .faq__a::before{content:"A";position:absolute;left:0;top:0;color:var(--ink-3);font-family:ui-monospace,monospace;}

/* ---- cta ---- */
#recruitpr-lp-wrapper .cta{background:var(--accent);color:#fff;text-align:center;}
#recruitpr-lp-wrapper .cta h2{margin:0 0 14px;font-family:"Shippori Mincho B1",serif;font-weight:700;font-size:clamp(22px,3vw,30px);}
#recruitpr-lp-wrapper .cta p{margin:0 0 28px;font-size:14.5px;opacity:.95;}
#recruitpr-lp-wrapper .cta .btn{background:#fff;color:var(--accent-dark);box-shadow:none;}

/* ---- 実画像 ---- */
#recruitpr-lp-wrapper .hero__img{width:100%;border-radius:16px;box-shadow:0 20px 44px -28px rgba(34,32,30,.5);}
#recruitpr-lp-wrapper .sample__img{width:100%;height:auto;display:block;}
#recruitpr-lp-wrapper .feature-row__img{width:100%;border-radius:16px;box-shadow:0 16px 36px -26px rgba(34,32,30,.45);}
#recruitpr-lp-wrapper .mockup__img{width:100%;border-radius:16px;box-shadow:0 22px 48px -30px rgba(34,32,30,.5);}

/* ---- 活用できる場所 ---- */
#recruitpr-lp-wrapper .usage{background:var(--bg-soft);}
#recruitpr-lp-wrapper .usage__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;}
#recruitpr-lp-wrapper .usage__item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px;
  font-size:14.5px;color:var(--ink-2);line-height:1.7;}
#recruitpr-lp-wrapper .usage__label{display:block;font-family:"Shippori Mincho B1",serif;font-weight:700;
  font-size:17px;color:var(--accent);margin-bottom:4px;}

/* ---- 納品イメージ（PCモックアップ＋実記事） ---- */
#recruitpr-lp-wrapper .mock{max-width:860px;margin:0 auto;}
#recruitpr-lp-wrapper .pc__screen{background:#FFF;border:3px solid #2B2926;border-radius:14px;overflow:hidden;
  box-shadow:0 26px 50px -30px rgba(34,32,30,.55);}
#recruitpr-lp-wrapper .pc__bar{display:flex;align-items:center;gap:7px;padding:10px 14px;background:#2B2926;}
#recruitpr-lp-wrapper .pc__dot{width:10px;height:10px;border-radius:50%;}
#recruitpr-lp-wrapper .pc__dot:nth-child(1){background:#FF6058;}
#recruitpr-lp-wrapper .pc__dot:nth-child(2){background:#FFBD2E;}
#recruitpr-lp-wrapper .pc__dot:nth-child(3){background:#28C840;}
#recruitpr-lp-wrapper .pc__url{flex:1;margin-left:10px;background:#43403B;color:#C9C3BA;border-radius:999px;
  padding:5px 14px;font-size:11.5px;font-family:ui-monospace,monospace;}
#recruitpr-lp-wrapper .pc__page{background:#fff;line-height:0;}
#recruitpr-lp-wrapper .pc__page img{width:100%;display:block;}
#recruitpr-lp-wrapper .pc__stand{width:140px;height:14px;margin:0 auto;background:#2B2926;}
#recruitpr-lp-wrapper .pc__base{width:250px;height:9px;margin:0 auto;background:#3D3A36;border-radius:0 0 10px 10px;}
#recruitpr-lp-wrapper .mock__cap{margin:26px auto 0;max-width:640px;text-align:center;
  font-size:13px;color:var(--ink-3);line-height:1.8;}



/* ---- 固定ヘッダー分の余白 ---- */
#recruitpr-lp-wrapper .hero { padding-top: calc(70px + clamp(44px, 6vw, 76px)); }
#recruitpr-lp-wrapper { width: 100%; overflow-x: hidden; }

/* =========================================
   ヘッダー（service/pr・report と同じ設計）
   ========================================= */
#recruitpr-lp-wrapper .pr-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.95);
    border-bottom: 1px solid #e5e7eb;
    transition: all 0.3s ease;
}

body.admin-bar #recruitpr-lp-wrapper .pr-header { top: 32px; }

@media screen and (max-width: 782px) {
    body.admin-bar #recruitpr-lp-wrapper .pr-header { top: 46px; }
}

#recruitpr-lp-wrapper .pr-header__container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}

#recruitpr-lp-wrapper .pr-header__logo .logo-link {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: inherit;
}

#recruitpr-lp-wrapper .logo-main-img { height: 48px; width: auto; }

#recruitpr-lp-wrapper .pr-header__logo .logo-sub {
    font-size: 24px;
    font-weight: 700;
    color: #1f2937;
    white-space: nowrap;
}

#recruitpr-lp-wrapper .nav__list {
    display: flex;
    align-items: center;
    gap: 32px;
    list-style: none;
    margin: 0;
    padding: 0;
}

#recruitpr-lp-wrapper .nav__item { margin: 0; }

#recruitpr-lp-wrapper .nav__link {
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;
    color: #1f2937;
    transition: color 0.2s ease;
}

#recruitpr-lp-wrapper .nav__link:hover { color: var(--accent); }

#recruitpr-lp-wrapper .pr-header__nav {
    display: flex;
    align-items: center;
    gap: 32px;
}

#recruitpr-lp-wrapper .pr-header__nav-cta { display: none; }

#recruitpr-lp-wrapper .pr-header__cta-desktop .btn {
    display: inline-block;
    text-decoration: none;
    background: var(--accent);
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    padding: 10px 24px;
    border-radius: 999px;
    white-space: nowrap;
    transition: all 0.2s ease;
}

#recruitpr-lp-wrapper .pr-header__cta-desktop .btn:hover {
    background: #fff;
    color: var(--accent);
    box-shadow: inset 0 0 0 2px var(--accent);
}

#recruitpr-lp-wrapper .pr-header__menu-toggle {
        display: none;
        flex-direction: column;
        width: 30px;
        height: 24px;
        justify-content: space-between;
        border: none;
        background: none;
        padding: 0;
        cursor: pointer;
        z-index: 1001;
    }

#recruitpr-lp-wrapper .pr-header__menu-toggle span {
        display: block;
        width: 100%;
        height: 3px;
        margin: 0;
        background: var(--accent);
        border-radius: 3px;
        transition: all 0.3s ease;
    }

#recruitpr-lp-wrapper .pr-mobile-overlay {
    display: none;
    position: fixed;
    inset: 70px 0 0 0;
    background: rgba(0, 0, 0, 0.28);
    z-index: 900;
}

#recruitpr-lp-wrapper .pr-mobile-overlay.active { display: block; }

/* ---- モバイル ---- */
@media (max-width: 900px) {
    #recruitpr-lp-wrapper .pr-header__cta-desktop { display: none; }

    #recruitpr-lp-wrapper .pr-header__nav {
        position: fixed;
        top: 70px;
        left: 0;
        width: 100%;
        max-height: 0;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.98);
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.06);
        transition: max-height 0.3s ease;
        z-index: 1001;
    }

    body.admin-bar #recruitpr-lp-wrapper .pr-header__nav { top: 102px; }

    #recruitpr-lp-wrapper .pr-header__nav.active { max-height: 480px; }

    #recruitpr-lp-wrapper .nav__list {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 8px 24px 0;
    }

    #recruitpr-lp-wrapper .nav__item { border-bottom: 1px solid #f0eeea; }

    #recruitpr-lp-wrapper .nav__link { display: block; padding: 15px 0; font-size: 15px; }

    #recruitpr-lp-wrapper .pr-header__nav-cta {
        display: block;
        padding: 18px 24px 24px;
    }

    #recruitpr-lp-wrapper .pr-header__nav-cta .btn {
        display: block;
        text-align: center;
        text-decoration: none;
        background: var(--accent);
        color: #fff;
        font-size: 15px;
        font-weight: 700;
        padding: 14px;
        border-radius: 999px;
    }

    #recruitpr-lp-wrapper .pr-header__menu-toggle { display: flex; }

    #recruitpr-lp-wrapper .pr-header__menu-toggle.active span:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }

    #recruitpr-lp-wrapper .pr-header__menu-toggle.active span:nth-child(2) { opacity: 0; }

    #recruitpr-lp-wrapper .pr-header__menu-toggle.active span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }

    }

/* =========================================
   フッター（service/pr・report と同じ設計）
   ========================================= */
#recruitpr-lp-wrapper .footer {
    background: #1f2937;
    color: #f3f4f6;
    padding: 60px 0 20px;
    font-size: 14px;
    margin-top: 0;
}

#recruitpr-lp-wrapper .footer__container {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

#recruitpr-lp-wrapper .footer__main {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 40px;
}

#recruitpr-lp-wrapper .footer__logo {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 14px;
    color: #fff;
}

#recruitpr-lp-wrapper .footer-logo-img {
    width: 60px;
    height: auto;
    object-fit: contain;
}

#recruitpr-lp-wrapper .footer__tagline {
    margin: 0;
    font-size: 13px;
    line-height: 1.9;
    color: #d1d5db;
}

#recruitpr-lp-wrapper .footer__links {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
}

#recruitpr-lp-wrapper .footer__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#recruitpr-lp-wrapper .footer__list a {
    color: #d1d5db;
    text-decoration: none;
    font-size: 13px;
    transition: color 0.2s ease;
}

#recruitpr-lp-wrapper .footer__list a:hover { color: #fff; text-decoration: underline; }

#recruitpr-lp-wrapper .footer__bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    padding-top: 18px;
    text-align: center;
    font-size: 12px;
    color: #9ca3af;
}

@media (max-width: 700px) {
    #recruitpr-lp-wrapper .footer__main { flex-direction: column; gap: 30px; }
    #recruitpr-lp-wrapper .footer__links { gap: 32px; }
}

/* ---- お問い合わせフォーム（WPForms）---- */
#recruitpr-lp-wrapper .cta__form {
    max-width: 640px;
    margin: 0 auto;
    padding: 34px 32px 28px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .12);
    text-align: left;
    color: var(--ink, #1f2937);
}

#recruitpr-lp-wrapper .cta__form .wpforms-container,
#recruitpr-lp-wrapper .cta__form .wpforms-container-full {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-field {
    padding: 0 0 16px !important;
    max-width: 100% !important;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-field-label {
    display: block;
    margin-bottom: 6px;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: var(--ink, #1f2937) !important;
    line-height: 1.6;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-field-sublabel,
#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-field-description {
    font-size: 12px !important;
    color: #6b7280 !important;
    font-weight: 400;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-required-label {
    color: #d94a4a !important;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form input[type=text],
#recruitpr-lp-wrapper .cta__form .wpforms-form input[type=email],
#recruitpr-lp-wrapper .cta__form .wpforms-form input[type=tel],
#recruitpr-lp-wrapper .cta__form .wpforms-form input[type=url],
#recruitpr-lp-wrapper .cta__form .wpforms-form input[type=number],
#recruitpr-lp-wrapper .cta__form .wpforms-form select,
#recruitpr-lp-wrapper .cta__form .wpforms-form textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    padding: 11px 13px !important;
    border: 1px solid #d5d8dd !important;
    border-radius: 8px !important;
    background: #fff !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: var(--ink, #1f2937) !important;
    box-shadow: none !important;
    transition: border-color .2s, box-shadow .2s;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form textarea {
    min-height: 130px !important;
    resize: vertical;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form input:focus,
#recruitpr-lp-wrapper .cta__form .wpforms-form select:focus,
#recruitpr-lp-wrapper .cta__form .wpforms-form textarea:focus {
    outline: none;
    border-color: var(--accent-dark, #1f2937) !important;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, .06) !important;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-submit-container {
    padding: 6px 0 0 !important;
    text-align: center;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form button[type=submit] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 240px;
    min-height: 52px;
    padding: 0 34px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--accent-dark, #1f2937) !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 15.5px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-indent: 0 !important;
    vertical-align: middle;
    letter-spacing: .04em;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .16);
    transition: opacity .2s, transform .2s;
}

/* 送信中スピナー：ボタン内で行揃えを崩さない */
#recruitpr-lp-wrapper .cta__form .wpforms-form button[type=submit] img,
#recruitpr-lp-wrapper .cta__form .wpforms-form .wpforms-submit-spinner {
    width: 17px !important;
    height: 17px !important;
    max-width: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle;
    flex: 0 0 auto;
}

#recruitpr-lp-wrapper .cta__form .wpforms-form button[type=submit]:hover {
    opacity: .9;
    transform: translateY(-1px);
}

#recruitpr-lp-wrapper .cta__form .wpforms-error,
#recruitpr-lp-wrapper .cta__form label.wpforms-error {
    color: #d94a4a !important;
    font-size: 12.5px !important;
}

@media (max-width: 640px) {
    #recruitpr-lp-wrapper .cta__form {
        padding: 26px 18px 22px;
        border-radius: 12px;
    }

    #recruitpr-lp-wrapper .cta__form .wpforms-form button[type=submit] {
        width: 100%;
        min-width: 0;
        padding: 0 20px !important;
    }
}
