/* =========================================================
   APERIO RECRUIT LP
   全国集客 / SEO / 広告 / 無料相談
========================================================= */
:root{
  --rc-navy:#06101f;
  --rc-navy2:#08182e;
  --rc-blue:#79aef5;
  --rc-blue-strong:#2368b7;
  --rc-text:#122033;
  --rc-soft:#5c6979;
  --rc-bg:#f4f6fa;
  --rc-max:1240px;
  --rc-pad:clamp(20px,3vw,34px);
  --rc-serif:"Yu Mincho","Hiragino Mincho ProN","Hiragino Mincho Pro",Georgia,serif;
  --rc-sans:ui-sans-serif,system-ui,-apple-system,"Hiragino Sans","Noto Sans JP","Segoe UI",sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--rc-sans);color:var(--rc-text);background:#fff}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.rc-container{width:min(var(--rc-max),calc(100% - var(--rc-pad)*2));margin-inline:auto}

/* Header */
.rc-header{
  position:sticky;top:0;z-index:100;
  background:rgba(6,16,31,.95);
  border-bottom:1px solid rgba(255,255,255,.09);
  backdrop-filter:blur(14px);
}
.rc-header-inner{height:74px;display:flex;align-items:center;justify-content:space-between}
.rc-logo{font-family:Georgia,var(--rc-serif);font-size:29px;letter-spacing:.04em;color:#fff}
.rc-nav{display:flex;align-items:center;gap:25px;color:rgba(255,255,255,.72);font-size:10px;letter-spacing:.08em}
.rc-nav a:hover{color:#fff}
.rc-nav-cta{padding:11px 17px;border:1px solid rgba(255,255,255,.38);color:#fff!important}

/* Shared */
.rc-kicker{margin:0 0 18px;font-size:10px;letter-spacing:.18em;font-weight:700;color:#9dc8ff}
.rc-kicker.rc-dark{color:#4d78ad}
.rc-section{padding:clamp(90px,8vw,122px) 0}
.rc-head{max-width:800px;margin-bottom:52px}
.rc-head h2,.rc-consultation h2{
  margin:0;font-family:var(--rc-serif);
  font-size:clamp(34px,4.2vw,56px);line-height:1.4;
  font-weight:500;letter-spacing:.02em;
}
.rc-head>p:last-child{max-width:720px;margin:18px 0 0;font-size:13px;line-height:2;color:var(--rc-soft)}
.rc-head-light{color:#fff}
.rc-head-light>p:last-child{color:rgba(255,255,255,.58)}

/* Hero */
.rc-hero{
  position:relative;min-height:min(790px,calc(100svh - 74px));
  display:flex;align-items:center;overflow:hidden;background:var(--rc-navy);
}
.rc-hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(4,12,25,.985) 0%,rgba(5,15,30,.94) 35%,rgba(5,15,30,.56) 63%,rgba(5,15,30,.18) 100%),
    linear-gradient(180deg,rgba(4,12,25,.03),rgba(4,12,25,.30)),
    url('/img/aperio-recruit-hero.webp') 72% center/cover no-repeat;
}
.rc-hero-inner{position:relative;z-index:2;padding:92px 0 82px}
.rc-hero-copy{max-width:740px}
.rc-hero h1{
  margin:0;font-family:var(--rc-serif);
  font-size:clamp(52px,6.2vw,88px);line-height:1.14;
  font-weight:500;letter-spacing:.025em;color:#fff;
}
.rc-hero-lead{margin:27px 0 0;font-family:var(--rc-serif);font-size:clamp(20px,1.8vw,27px);line-height:1.75;color:#fff}
.rc-hero-text{max-width:650px;margin:18px 0 0;font-size:13px;line-height:2;color:rgba(255,255,255,.68)}
.rc-actions{display:flex;align-items:center;gap:28px;margin-top:32px}
.rc-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-width:240px;padding:16px 20px;border:0;cursor:pointer;font-size:12px;font-weight:700}
.rc-btn-primary{background:var(--rc-blue-strong);color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.18)}
.rc-btn-primary:hover{background:#2c75c9}
.rc-text-link{font-size:12px;color:rgba(255,255,255,.76);padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.28)}
.rc-hero-meta{display:flex;max-width:650px;margin-top:42px;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.rc-hero-meta span{flex:1;padding:13px 15px 13px 0;margin-right:15px;border-right:1px solid rgba(255,255,255,.12);font-size:10px;color:rgba(255,255,255,.55)}
.rc-hero-meta span:last-child{border:0;margin:0}
.rc-hero-meta b{display:block;margin-bottom:2px;font-family:var(--rc-serif);font-size:17px;font-weight:500;color:#fff}
.rc-micro{margin:13px 0 0;font-size:10px;color:rgba(255,255,255,.42)}

.rc-intent-strip{background:#fff;border-bottom:1px solid rgba(18,32,51,.1)}
.rc-intent-strip p{margin:0;padding:17px 0;text-align:center;font-size:11px;color:#5c6979}

/* Issues */
.rc-problem{background:var(--rc-bg)}
.rc-issue-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(18,32,51,.13)}
.rc-issue-grid article{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:23px 26px 23px 0;border-bottom:1px solid rgba(18,32,51,.11)}
.rc-issue-grid article:nth-child(even){padding-left:28px;border-left:1px solid rgba(18,32,51,.1)}
.rc-issue-grid span{font-family:Georgia,serif;color:#4d7fb7;font-size:11px}
.rc-issue-grid p{margin:0;font-size:13px;line-height:1.8}

/* Search / Ads */
.rc-search-flow{color:#fff;background:linear-gradient(180deg,#091a31,#06101f)}
.rc-funnel{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:18px;align-items:center}
.rc-funnel article{min-height:190px;padding:28px;border:1px solid rgba(143,196,255,.18);background:rgba(255,255,255,.035)}
.rc-funnel b{font-family:Georgia,serif;font-size:12px;color:#82b8f7}
.rc-funnel span{display:block;margin-top:20px;font-size:9px;letter-spacing:.14em;color:rgba(255,255,255,.45)}
.rc-funnel h3{margin:8px 0 10px;font-size:17px}
.rc-funnel p{margin:0;font-size:11px;line-height:1.85;color:rgba(255,255,255,.57)}
.rc-funnel i{font-style:normal;color:#6f9dce}
.rc-ad-note{margin-top:18px;padding:24px 26px;border-left:2px solid #79aef5;background:rgba(255,255,255,.04)}
.rc-ad-note strong{font-size:13px}
.rc-ad-note p{margin:8px 0 0;font-size:11px;line-height:1.85;color:rgba(255,255,255,.57)}

/* Design */
.rc-design,.rc-structure,.rc-process{color:#fff;background:var(--rc-navy2)}
.rc-design-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.14)}
.rc-design-grid article{padding:30px 28px 30px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.rc-design-grid article:nth-child(3n+2),.rc-design-grid article:nth-child(3n+3){padding-left:28px;border-left:1px solid rgba(255,255,255,.1)}
.rc-design-grid span,.rc-structure-grid span{font-size:10px;letter-spacing:.12em;color:#8fc4ff}
.rc-design-grid h3,.rc-structure-grid h3{margin:17px 0 10px;font-size:16px}
.rc-design-grid p,.rc-structure-grid p{margin:0;font-size:11px;line-height:1.85;color:rgba(255,255,255,.57)}

/* Structure */
.rc-structure{background:#071426;border-top:1px solid rgba(255,255,255,.08)}
.rc-structure-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rc-structure-grid article{min-height:220px;padding:28px;border:1px solid rgba(143,196,255,.18);background:rgba(255,255,255,.025)}
.rc-note{margin:22px 0 0;font-size:10px;line-height:1.8;color:rgba(255,255,255,.42)}
.rc-note-dark{color:#778391}

/* Target */
.rc-target{background:#fff}
.rc-target-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.rc-target-grid article{padding:30px;border:1px solid rgba(18,32,51,.11);background:#fff}
.rc-target-grid h3{margin:0 0 10px;font-family:var(--rc-serif);font-size:23px;font-weight:500}
.rc-target-grid p{margin:0;font-size:12px;line-height:1.9;color:#687585}

/* Process */
.rc-process{background:linear-gradient(180deg,#091a31,#06101f)}
.rc-process-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(143,196,255,.28)}
.rc-process-list li{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid rgba(143,196,255,.16)}
.rc-process-list>li>span{font-family:Georgia,serif;font-size:19px;color:#79aef5}
.rc-process-list h3{margin:0 0 7px;font-size:15px}
.rc-process-list p{margin:0;font-size:12px;line-height:1.8;color:rgba(255,255,255,.55)}

/* Price */
.rc-price{background:#f5f7fa}
.rc-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rc-price-grid article{padding:36px;border:1px solid rgba(18,32,51,.12);background:#fff}
.rc-price-grid .rc-featured{border-color:rgba(65,121,188,.38);box-shadow:0 22px 50px rgba(32,75,128,.08)}
.rc-plan{margin:0;font-size:10px;letter-spacing:.15em;color:#4c77aa}
.rc-plan em{margin-left:10px;padding:5px 8px;background:#eaf3ff;font-style:normal;font-size:8px}
.rc-price-grid h3{margin:20px 0 0;font-size:17px}
.rc-price-num{margin:13px 0 8px;font-family:var(--rc-serif);font-size:17px;color:#1b4f89}
.rc-price-num strong{font-size:38px;font-weight:500}
.rc-plan-for{margin:0 0 22px;font-size:11px;line-height:1.7;color:#687585}
.rc-price-grid ul{margin:0;padding:20px 0 0 18px;border-top:1px solid rgba(18,32,51,.1);font-size:12px;line-height:2;color:#566373}

/* FAQ */
.rc-faq{color:#fff;background:linear-gradient(180deg,#071629,#06101f)}
.rc-faq-list{border-top:1px solid rgba(143,196,255,.3)}
.rc-faq-list details{border-bottom:1px solid rgba(143,196,255,.17)}
.rc-faq-list summary{position:relative;list-style:none;cursor:pointer;padding:23px 56px 23px 0;font-size:14px;font-weight:600;line-height:1.7}
.rc-faq-list summary::-webkit-details-marker{display:none}
.rc-faq-list summary:after{content:"+";position:absolute;right:4px;top:15px;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(143,196,255,.26);border-radius:50%;font-size:23px;font-weight:300;color:#8fc4ff}
.rc-faq-list details[open] summary:after{content:"−"}
.rc-faq-list details p{margin:0;max-width:900px;padding:0 55px 25px 0;font-size:12px;line-height:2;color:rgba(255,255,255,.62)}

/* Consultation */
.rc-consultation{padding:clamp(90px,9vw,132px) 0;color:#fff;background:radial-gradient(720px 360px at 18% 10%,rgba(59,127,219,.2),transparent 70%),#06101f}
.rc-consultation-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start}
.rc-consultation-copy>p:not(.rc-kicker){max-width:520px;margin:22px 0 0;font-size:13px;line-height:2;color:rgba(255,255,255,.62)}
.rc-consultation-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.rc-consultation-points span{padding:8px 10px;border:1px solid rgba(143,196,255,.22);border-radius:999px;font-size:10px;color:#c8def8}

.rc-form-card{padding:34px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045)}
.rc-form-card h3{margin:0;font-family:var(--rc-serif);font-size:26px;font-weight:500}
.rc-form-intro{margin:10px 0 25px;font-size:11px;line-height:1.8;color:rgba(255,255,255,.5)}
.rc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rc-form-card label{display:block;margin-bottom:14px}
.rc-form-card label>span{display:block;margin-bottom:7px;font-size:11px;color:rgba(255,255,255,.7)}
.rc-form-card label em{margin-left:6px;font-size:9px;font-style:normal;color:#9dc8ff}
.rc-form-card input,.rc-form-card select,.rc-form-card textarea{
  width:100%;border:1px solid rgba(255,255,255,.14);border-radius:0;
  background:rgba(0,0,0,.18);color:#fff;padding:12px 13px;outline:none;
}
.rc-form-card select option{color:#111;background:#fff}
.rc-form-card textarea{resize:vertical}
.rc-form-card input:focus,.rc-form-card select:focus,.rc-form-card textarea:focus{border-color:rgba(121,174,245,.65);box-shadow:0 0 0 2px rgba(121,174,245,.08)}
.rc-consent{display:flex!important;align-items:flex-start;gap:9px}
.rc-consent input{width:auto;margin-top:3px}
.rc-consent span{margin:0!important;font-size:10px!important;color:rgba(255,255,255,.52)!important}
.rc-consent a{text-decoration:underline}
.rc-submit{width:100%}
.rc-form-note{margin:10px 0 0;font-size:9px;line-height:1.7;color:rgba(255,255,255,.32)}

/* Fixed CTA */
.rc-fixed-cta{display:none}

/* Footer */
.rc-footer{background:#040b15;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.rc-footer-inner{min-height:150px;display:flex;align-items:center;gap:28px}
.rc-footer p{font-size:10px;color:rgba(255,255,255,.45)}
.rc-footer small{margin-left:auto;color:rgba(255,255,255,.3);font-size:9px}

/* Responsive */
@media(max-width:980px){
  .rc-nav a:not(.rc-nav-cta){display:none}
  .rc-design-grid{grid-template-columns:1fr 1fr}
  .rc-design-grid article:nth-child(3n+2),.rc-design-grid article:nth-child(3n+3){padding-left:0;border-left:0}
  .rc-design-grid article:nth-child(even){padding-left:25px;border-left:1px solid rgba(255,255,255,.1)}
  .rc-structure-grid{grid-template-columns:1fr 1fr}
  .rc-consultation-grid{grid-template-columns:1fr;gap:42px}
}

@media(max-width:720px){
  body{padding-bottom:66px}
  .rc-header-inner{height:66px}
  .rc-logo{font-size:25px}
  .rc-nav-cta{padding:9px 12px}
  .rc-hero{min-height:auto}
  .rc-hero-bg{
    background:
      linear-gradient(180deg,rgba(4,12,25,.48),rgba(4,12,25,.90) 55%,rgba(4,12,25,.99)),
      url('/img/aperio-recruit-hero.webp') 61% center/cover no-repeat;
  }
  .rc-hero-inner{padding:88px 0 62px}
  .rc-hero h1{font-size:clamp(43px,12vw,60px)}
  .rc-hero-lead{font-size:18px}
  .rc-pc{display:none}
  .rc-actions{align-items:flex-start;flex-direction:column;gap:17px}
  .rc-btn{width:100%}
  .rc-hero-meta{display:grid;grid-template-columns:1fr}
  .rc-hero-meta span{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);margin:0;padding:10px 0}
  .rc-intent-strip p{text-align:left;line-height:1.7}

  .rc-issue-grid,.rc-design-grid,.rc-structure-grid,.rc-target-grid,.rc-price-grid{grid-template-columns:1fr}
  .rc-issue-grid article,.rc-issue-grid article:nth-child(even){padding:20px 0;border-left:0}
  .rc-design-grid article,.rc-design-grid article:nth-child(even){padding:24px 0;border-left:0}
  .rc-structure-grid article{min-height:0}
  .rc-target-grid article{padding:24px 20px}
  .rc-funnel{grid-template-columns:1fr}
  .rc-funnel i{display:none}
  .rc-process-list li{grid-template-columns:54px 1fr}
  .rc-price-grid article{padding:28px 22px}
  .rc-form-row{grid-template-columns:1fr}
  .rc-form-card{padding:26px 20px}
  .rc-faq-list details p{padding-right:0}

  .rc-fixed-cta{
    display:flex;position:fixed;left:14px;right:14px;bottom:12px;z-index:120;
    align-items:center;justify-content:space-between;
    padding:14px 17px;background:#2368b7;color:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.3);font-size:12px;font-weight:700;
  }

  .rc-footer-inner{padding:35px 0;min-height:0;display:block}
  .rc-footer p{margin:14px 0}
  .rc-footer small{display:block}
}


/* 2026-09-04: send.php / reCAPTCHA response UI only — existing design preserved */
.rc-form-message{display:none;margin:0 0 14px;padding:12px 14px;font-size:11px;line-height:1.7}
.rc-form-message.is-success{display:block;background:rgba(58,154,102,.14);border:1px solid rgba(93,207,144,.34);color:#c7f4da}
.rc-form-message.is-error{display:block;background:rgba(180,66,66,.14);border:1px solid rgba(232,110,110,.35);color:#ffd1d1}
.rc-submit:disabled{opacity:.65;cursor:wait}

/* Recruit header text color fix */
.recruit-page .brand-name{
  color:#fff;
}

.recruit-page .brand-sub{
  color:rgba(255,255,255,.46);
}

.recruit-page .brand{
  color:#fff;
}