/* recruit-apply.html 由来。body.lsu-recruit-apply 配下へ閉じてある（他ページと干渉しない） */
body.lsu-recruit-apply{
      --ilife-green:#4CAF50;--deep-green:#2E7D32;--light-green:#C8E6C9;--pale-green:#E8F5E9;
      --su-pink:#EC407A;--su-pink-deep:#C2185B;--su-pink-soft:#FCE4EC;
      --su-yellow:#FFC107;--su-yellow-soft:#FFF8E1;--su-blue:#1E88E5;--su-blue-soft:#E3F2FD;
      --su-red:#E53935;--su-red-soft:#FFEBEE;
      --ink:#212121;--ink-soft:#424242;--ink-mute:#666666;--line:#E0E0E0;--white:#FFFFFF;--off:#FAFAFA;
      --font-jp:'Noto Sans JP','Hiragino Sans','Yu Gothic',sans-serif;
      --font-en:'Inter',-apple-system,sans-serif;
      --max:1120px;
    }body.lsu-recruit-apply,body.lsu-recruit-apply *{box-sizing:border-box}body.lsu-recruit-apply,body.lsu-recruit-apply{margin:0;padding:0}body.lsu-recruit-apply{font-family:var(--font-jp);color:var(--ink);background:var(--white);line-height:1.8;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.lsu-recruit-apply img{display:block;max-width:100%}body.lsu-recruit-apply a{color:inherit;text-decoration:none}body.lsu-recruit-apply button{font-family:inherit}body.lsu-recruit-apply .btn{display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border-radius:999px;font-weight:700;font-size:16px;line-height:1;cursor:pointer;border:none;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap}body.lsu-recruit-apply .btn:hover{transform:translateY(-2px)}body.lsu-recruit-apply .btn-pink{background:var(--su-pink);color:#fff;box-shadow:0 6px 0 var(--su-pink-deep),0 10px 24px rgba(236,64,122,.25)}body.lsu-recruit-apply .btn-pink:hover{background:#E91E63;box-shadow:0 4px 0 var(--su-pink-deep),0 8px 22px rgba(236,64,122,.3)}body.lsu-recruit-apply .btn-pink:disabled{background:#F8BBD0;box-shadow:0 4px 0 #E1A0BC;cursor:not-allowed;transform:none}body.lsu-recruit-apply .btn-outline{background:#fff;color:var(--deep-green);border:2px solid var(--ilife-green);padding:14px 28px}body.lsu-recruit-apply .btn-outline:hover{background:var(--pale-green)}body.lsu-recruit-apply .btn .arr{width:18px;height:18px;display:inline-block}body.lsu-recruit-apply .nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:saturate(140%) blur(6px);border-bottom:1px dashed var(--light-green)}body.lsu-recruit-apply .nav-inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:24px}body.lsu-recruit-apply .nav-logos{display:flex;align-items:center;gap:14px}body.lsu-recruit-apply .nav-logos .su{height:42px;width:auto}body.lsu-recruit-apply .nav-logos .il{height:22px;width:auto;opacity:.85}body.lsu-recruit-apply .nav-logos .divider{width:1px;height:30px;background:var(--line)}body.lsu-recruit-apply .nav-menu{display:flex;align-items:center;gap:26px;margin-left:auto;font-size:14px;font-weight:500;color:var(--ink-soft)}body.lsu-recruit-apply .nav-menu a{position:relative;padding:6px 0}body.lsu-recruit-apply .nav-menu a:hover{color:var(--deep-green)}body.lsu-recruit-apply .nav-menu a:hover::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--su-yellow);border-radius:3px}body.lsu-recruit-apply .nav-menu a.active{color:var(--deep-green);font-weight:700}body.lsu-recruit-apply .nav-menu a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--su-yellow);border-radius:3px}body.lsu-recruit-apply .nav-cta{padding:12px 22px;border-radius:999px;background:var(--su-pink);color:#fff;font-weight:700;font-size:14px;box-shadow:0 4px 0 var(--su-pink-deep);transition:transform .15s ease}body.lsu-recruit-apply .nav-cta:hover{transform:translateY(-1px);background:#E91E63}
    @media(max-width:880px){body.lsu-recruit-apply .nav-menu{display:none}}body.lsu-recruit-apply .container{max-width:var(--max);margin:0 auto;padding:0 24px}body.lsu-recruit-apply .container-narrow{max-width:760px;margin:0 auto;padding:0 24px}body.lsu-recruit-apply .sec-eyebrow{display:flex;align-items:center;gap:14px;justify-content:center;font-family:var(--font-en);font-size:12px;letter-spacing:.22em;color:var(--ilife-green);font-weight:700;text-transform:uppercase;margin-bottom:12px}body.lsu-recruit-apply .sec-eyebrow::before,body.lsu-recruit-apply .sec-eyebrow::after{content:"";width:28px;height:2px;background:var(--ilife-green);border-radius:2px}body.lsu-recruit-apply .sec-title{text-align:center;font-family:var(--font-hand);font-size:30px;line-height:1.5;color:var(--ink);margin:0 0 12px;font-weight:400}body.lsu-recruit-apply .sec-title .hl{background:linear-gradient(transparent 62%,var(--su-yellow) 62%);padding:0 4px}body.lsu-recruit-apply .sec-lead{text-align:center;font-size:15px;color:var(--ink-soft);margin:0 auto 40px;max-width:600px;line-height:1.9}body.lsu-recruit-apply .breadcrumb{font-family:var(--font-en);font-size:12px;letter-spacing:.05em;color:var(--ink-mute);margin-bottom:16px}body.lsu-recruit-apply .breadcrumb a{color:var(--deep-green);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:rgba(76,175,80,.4)}body.lsu-recruit-apply .breadcrumb a:hover{color:var(--ilife-green)}body.lsu-recruit-apply .breadcrumb .bc-sep{margin:0 8px;color:var(--ink-mute)}body.lsu-recruit-apply .breadcrumb .bc-current{color:var(--ink-soft);font-weight:600}body.lsu-recruit-apply .tape-vertical{position:absolute;top:48px;right:max(36px, calc((100% - 1200px) / 2 + 36px));/* 2026-09-09 2周目: 基準をvar(--max)=1120px→1200px(ヘッダー.nav-inner幅)へ */z-index:6;writing-mode:vertical-rl;background:var(--su-yellow);color:var(--ink);font-family:var(--font-hand);font-size:16px;letter-spacing:.15em;padding:18px 11px;transform:rotate(3deg);box-shadow:2px 4px 0 rgba(0,0,0,.1);background-image:linear-gradient(90deg,rgba(255,255,255,.18) 50%,transparent 50%);background-size:6px 100%;border-radius:2px;white-space:nowrap}body.lsu-recruit-apply .tape-vertical::before,body.lsu-recruit-apply .tape-vertical::after{content:"";position:absolute;left:-5px;width:12px;height:7px;background:rgba(255,255,255,.4);transform:rotate(-12deg)}body.lsu-recruit-apply .tape-vertical::before{top:5px}body.lsu-recruit-apply .tape-vertical::after{bottom:5px}body.lsu-recruit-apply .fv-apply{background:linear-gradient(180deg,#F8FBF8 0%,#EEF7EE 100%);padding:52px 48px 64px;min-height:340px;display:flex;align-items:center;position:relative;overflow:hidden}body.lsu-recruit-apply .fv-apply-inner{max-width:var(--max);margin:0 auto;width:100%}body.lsu-recruit-apply .fv-eyebrow-plain{font-family:var(--font-en);font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--ilife-green);text-transform:uppercase;margin-bottom:18px;display:flex;align-items:center;gap:8px}body.lsu-recruit-apply .fv-eyebrow-plain::before{content:"";width:24px;height:2px;background:var(--ilife-green);border-radius:2px}body.lsu-recruit-apply .fv-headline{font-family:var(--font-hand);font-size:40px;line-height:1.35;color:var(--ink);font-weight:400;margin:0 0 14px}body.lsu-recruit-apply .fv-sub{font-size:16px;line-height:1.9;color:var(--ink-soft);max-width:560px;margin:0}body.lsu-recruit-apply .fv-wave-bottom{position:absolute;left:0;bottom:-1px;width:100%;height:48px;display:block}body.lsu-recruit-apply .sec-pre{background:#fff;padding:60px 24px 24px}body.lsu-recruit-apply .pre-box{max-width:760px;margin:0 auto;background:var(--pale-green);border:1px solid var(--light-green);border-radius:16px;padding:28px 32px}body.lsu-recruit-apply .pre-box h3{font-family:var(--font-hand);font-size:18px;font-weight:400;color:var(--deep-green);margin:0 0 16px;display:flex;align-items:center;gap:10px}body.lsu-recruit-apply .pre-box h3 svg{width:22px;height:22px;flex-shrink:0}body.lsu-recruit-apply .pre-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}body.lsu-recruit-apply .pre-list li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.85;color:var(--ink-soft)}body.lsu-recruit-apply .pre-list li svg{width:18px;height:18px;flex-shrink:0;margin-top:3px;color:var(--ilife-green)}body.lsu-recruit-apply .pre-list strong{color:var(--deep-green);font-weight:700}body.lsu-recruit-apply .sec-form{--sp-t:40px;--sp-b:80px;background:#fff;padding:40px 24px 80px}body.lsu-recruit-apply .form-wrap{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:40px 44px}body.lsu-recruit-apply .form-fieldset{margin-bottom:36px}body.lsu-recruit-apply .form-fieldset:last-of-type{margin-bottom:0}body.lsu-recruit-apply .fs-head{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:12px;border-bottom:2px solid var(--light-green)}body.lsu-recruit-apply .fs-num{width:30px;height:30px;border-radius:50%;background:var(--ilife-green);color:#fff;font-family:var(--font-hand);font-size:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}body.lsu-recruit-apply .fs-title{font-size:17px;font-weight:700;color:var(--deep-green);margin:0}body.lsu-recruit-apply .form-row{margin-bottom:22px}body.lsu-recruit-apply .form-row:last-child{margin-bottom:0}body.lsu-recruit-apply .form-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--ink);margin-bottom:8px}body.lsu-recruit-apply .req{font-size:11px;font-weight:700;color:#fff;background:var(--su-red);padding:2px 8px;border-radius:5px;letter-spacing:.04em}body.lsu-recruit-apply .opt{font-size:11px;font-weight:600;color:var(--ink-mute);background:var(--off);border:1px solid var(--line);padding:2px 8px;border-radius:5px}body.lsu-recruit-apply .form-input,body.lsu-recruit-apply .form-select,body.lsu-recruit-apply .form-textarea{width:100%;font-family:var(--font-jp);font-size:15px;color:var(--ink);border:1.5px solid var(--line);border-radius:12px;padding:0 16px;height:48px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}body.lsu-recruit-apply .form-textarea{height:auto;padding:14px 16px;line-height:1.8;resize:vertical;min-height:120px}body.lsu-recruit-apply .form-input:focus,body.lsu-recruit-apply .form-select:focus,body.lsu-recruit-apply .form-textarea:focus{outline:none;border-color:var(--su-pink);box-shadow:0 0 0 3px rgba(236,64,122,.12)}body.lsu-recruit-apply .form-input::placeholder,body.lsu-recruit-apply .form-textarea::placeholder{color:#BDBDBD}body.lsu-recruit-apply .form-select{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'><path d='M3 5l4 4 4-4' stroke='%23666' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px}body.lsu-recruit-apply .form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
    @media(max-width:560px){body.lsu-recruit-apply .form-grid-2{grid-template-columns:1fr}}body.lsu-recruit-apply .form-hint{font-size:12px;color:var(--ink-mute);margin-top:6px;line-height:1.6}body.lsu-recruit-apply .form-privacy{margin-top:28px;padding:18px 20px;border-radius:12px;background:var(--off);border:1px solid var(--line);display:flex;align-items:flex-start;gap:12px}body.lsu-recruit-apply .form-privacy input[type="checkbox"]{width:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:var(--ilife-green);cursor:pointer}body.lsu-recruit-apply .form-privacy label{font-size:13.5px;line-height:1.8;color:var(--ink-soft);cursor:pointer}body.lsu-recruit-apply .form-privacy a{color:var(--deep-green);text-decoration:underline;text-underline-offset:2px;font-weight:600}body.lsu-recruit-apply .form-submit-row{text-align:center;margin-top:28px}body.lsu-recruit-apply .form-submit-row .btn{font-size:17px;padding:18px 52px}
    /* ★2026-09-04 リリス：320px幅で送信ボタンが36pxはみ出す実測を確認して追加。
       .btn は white-space:nowrap のため、狭幅では padding/font-size を縮めて収める。 */
    @media(max-width:400px){body.lsu-recruit-apply .form-submit-row .btn{padding:16px 20px;font-size:15px;width:100%;box-sizing:border-box}}
    body.lsu-recruit-apply .form-note-box{margin-top:18px;font-size:12px;color:var(--ink-mute);text-align:center;line-height:1.8}body.lsu-recruit-apply .form-done{display:none;text-align:center;padding:32px 20px;background:var(--pale-green);border-radius:14px;border:1px solid var(--light-green);margin-top:20px}body.lsu-recruit-apply .form-done.show{display:block}body.lsu-recruit-apply .form-done h3{font-family:var(--font-hand);font-size:20px;color:var(--deep-green);margin:0 0 8px;font-weight:400}body.lsu-recruit-apply .form-done p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.8}body.lsu-recruit-apply .sec-options{--sp-t:64px;--sp-b:72px;background:var(--off);padding:64px 24px 72px}body.lsu-recruit-apply .opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:880px;margin:0 auto}body.lsu-recruit-apply .opt-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px}body.lsu-recruit-apply .opt-card h3{font-family:var(--font-hand);font-size:17px;font-weight:400;color:var(--deep-green);margin:0 0 14px}body.lsu-recruit-apply .opt-card dl{margin:0}body.lsu-recruit-apply .opt-card dt{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:3px}body.lsu-recruit-apply .opt-card dd{font-size:13px;color:var(--ink-soft);margin:0 0 12px;line-height:1.75}body.lsu-recruit-apply .opt-card dd:last-child{margin-bottom:0}
    @media(max-width:760px){body.lsu-recruit-apply .opt-grid{grid-template-columns:1fr}}body.lsu-recruit-apply .sec-after{--sp-t:72px;--sp-b:80px;background:#fff;padding:72px 24px 80px}body.lsu-recruit-apply .step-flow{display:flex;flex-direction:column;max-width:680px;margin:0 auto}body.lsu-recruit-apply .step-item{display:grid;grid-template-columns:64px 1fr;gap:0 22px;background:var(--off);border:1px solid var(--line);border-radius:14px;padding:22px 26px 22px 0}body.lsu-recruit-apply .step-connector{display:flex;justify-content:center;height:26px;position:relative}body.lsu-recruit-apply .step-connector::before{content:"";position:absolute;top:0;bottom:0;left:32px;width:2px;background:linear-gradient(180deg,var(--light-green),var(--ilife-green))}body.lsu-recruit-apply .step-connector-arrow{position:absolute;bottom:0;left:27px;width:11px;height:11px;border-right:2px solid var(--ilife-green);border-bottom:2px solid var(--ilife-green);transform:rotate(45deg) translateY(-4px)}body.lsu-recruit-apply .step-num-col{display:flex;justify-content:center;padding-left:24px}body.lsu-recruit-apply .step-num{width:52px;height:52px;border-radius:50%;color:#fff;font-family:var(--font-hand);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;flex-shrink:0;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);gap:1px}body.lsu-recruit-apply .step-num .n-label{font-size:8px;letter-spacing:.1em;opacity:.85;font-family:var(--font-en)}body.lsu-recruit-apply .step-num .n-val{font-size:22px}body.lsu-recruit-apply .step-item:nth-child(1) .step-num{background:var(--ilife-green)}body.lsu-recruit-apply .step-item:nth-child(3) .step-num{background:var(--su-blue)}body.lsu-recruit-apply .step-item:nth-child(5) .step-num{background:var(--su-yellow);color:var(--ink)}body.lsu-recruit-apply .step-item:nth-child(7) .step-num{background:var(--su-pink)}body.lsu-recruit-apply .step-item:nth-child(9) .step-num{background:var(--deep-green)}body.lsu-recruit-apply .step-body{padding:2px 0}body.lsu-recruit-apply .step-title{font-size:16px;font-weight:700;color:var(--ink);margin:0 0 6px;line-height:1.4}body.lsu-recruit-apply .step-desc{font-size:13.5px;line-height:1.85;color:var(--ink-soft);margin:0}body.lsu-recruit-apply .step-chip{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 11px;border-radius:999px;font-size:11.5px;font-weight:500;background:var(--pale-green);color:var(--deep-green);border:1px solid var(--light-green)}
    @media(max-width:640px){body.lsu-recruit-apply .step-item{grid-template-columns:56px 1fr;padding:18px 18px 18px 0}body.lsu-recruit-apply .step-num-col{padding-left:14px}body.lsu-recruit-apply .step-connector::before{left:28px}body.lsu-recruit-apply .step-connector-arrow{left:23px}}body.lsu-recruit-apply .sec-q{--sp-b:72px;background:var(--off);padding:0 24px 72px}body.lsu-recruit-apply .q-card{max-width:680px;margin:0 auto;background:var(--su-blue-soft);border:1px solid #BBDEFB;border-radius:16px;padding:28px 32px;display:flex;align-items:center;gap:22px}body.lsu-recruit-apply .q-ic{width:50px;height:50px;border-radius:50%;flex-shrink:0;background:#fff;border:1.5px solid #BBDEFB;display:flex;align-items:center;justify-content:center}body.lsu-recruit-apply .q-body{flex:1}body.lsu-recruit-apply .q-body h3{font-family:var(--font-hand);font-size:18px;font-weight:400;color:#0D47A1;margin:0 0 6px}body.lsu-recruit-apply .q-body p{font-size:13.5px;color:var(--ink-soft);margin:0;line-height:1.75}body.lsu-recruit-apply .q-body a{color:var(--su-blue);font-weight:700;text-decoration:underline;text-underline-offset:2px}
    @media(max-width:560px){body.lsu-recruit-apply .q-card{flex-direction:column;text-align:center}}body.lsu-recruit-apply .sec-related{--sp-t:64px;--sp-b:80px;background:#fff;padding:64px 24px 80px}body.lsu-recruit-apply .related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:960px;margin:0 auto}body.lsu-recruit-apply .related-card{background:#fff;border-radius:14px;padding:22px 20px;border:1px solid var(--line);text-decoration:none;color:inherit;display:flex;align-items:center;gap:14px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}body.lsu-recruit-apply .related-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.09)}body.lsu-recruit-apply .related-card.r-pink:hover{border-color:var(--su-pink)}body.lsu-recruit-apply .related-card.r-green:hover{border-color:var(--ilife-green)}body.lsu-recruit-apply .related-card.r-blue:hover{border-color:var(--su-blue)}body.lsu-recruit-apply .related-icon{width:42px;height:42px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}body.lsu-recruit-apply .r-pink .related-icon{background:var(--su-pink-soft)}body.lsu-recruit-apply .r-green .related-icon{background:var(--pale-green)}body.lsu-recruit-apply .r-blue .related-icon{background:var(--su-blue-soft)}body.lsu-recruit-apply .related-body{flex:1;min-width:0}body.lsu-recruit-apply .related-tag{font-family:var(--font-en);font-size:10px;letter-spacing:.16em;color:var(--ink-mute);font-weight:700;text-transform:uppercase;display:block;margin-bottom:2px}body.lsu-recruit-apply .related-title{font-size:14px;font-weight:700;color:var(--ink);margin:0}body.lsu-recruit-apply .related-arr{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;transition:transform .15s ease}body.lsu-recruit-apply .related-card:hover .related-arr{transform:translateX(3px)}
    @media(max-width:760px){body.lsu-recruit-apply .related-grid{grid-template-columns:1fr}}body.lsu-recruit-apply .footer{background:var(--deep-green);color:rgba(255,255,255,.9);padding:64px 24px 30px}body.lsu-recruit-apply .footer .container{max-width:var(--max);margin:0 auto}body.lsu-recruit-apply .footer-grid{--sp-b:40px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.18)}body.lsu-recruit-apply .footer-brand .ft-logos{display:flex;align-items:center;gap:14px;background:#fff;padding:14px 18px;border-radius:14px;width:fit-content}body.lsu-recruit-apply .footer-brand .ft-logos .su{height:36px;width:auto}body.lsu-recruit-apply .footer-brand .ft-logos .il{height:18px;width:auto}body.lsu-recruit-apply .footer-brand .ft-logos .divider{width:1px;height:24px;background:var(--line)}body.lsu-recruit-apply .footer-brand p{font-size:13px;line-height:1.85;color:rgba(255,255,255,.78);margin:18px 0 0}body.lsu-recruit-apply .footer-brand .ft-tel{font-family:var(--font-hand);font-size:22px;color:#fff;margin-top:18px;display:inline-block;white-space:nowrap}body.lsu-recruit-apply .footer h5{font-family:var(--font-en);font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--su-yellow);margin:0 0 14px}body.lsu-recruit-apply .footer ul{list-style:none;padding:0;margin:0}body.lsu-recruit-apply .footer ul li{padding:5px 0;font-size:13.5px}body.lsu-recruit-apply .footer ul li a{color:rgba(255,255,255,.78);transition:color .15s}body.lsu-recruit-apply .footer ul li a:hover{color:#fff}body.lsu-recruit-apply .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:24px;font-size:12px;color:rgba(255,255,255,.6)}body.lsu-recruit-apply .footer-bottom .sns{display:flex;gap:10px}body.lsu-recruit-apply .footer-bottom .sns a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:#fff}body.lsu-recruit-apply .footer-bottom .sns a:hover{background:var(--su-pink)}body.lsu-recruit-apply .footer .ilife-tag{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);padding:6px 14px;border-radius:999px;font-size:11px;color:rgba(255,255,255,.7)}body.lsu-recruit-apply .footer .ilife-tag img{height:14px}
    @media(max-width:900px){body.lsu-recruit-apply .footer-grid{grid-template-columns:1fr 1fr;gap:28px}}
    @media(max-width:640px){body.lsu-recruit-apply .fv-apply{padding:40px 20px 52px;min-height:280px}body.lsu-recruit-apply .fv-headline{font-size:28px}body.lsu-recruit-apply .tape-vertical{display:none}body.lsu-recruit-apply .sec-title{font-size:22px}body.lsu-recruit-apply .form-wrap{padding:28px 22px}body.lsu-recruit-apply .footer-grid{grid-template-columns:1fr}
    }

/* ============================================================
   ★2026-09-03 スマホ幅の見切れ対策（有璽氏の指摘）
   ------------------------------------------------------------
   PC幅は承認済みなので1pxも変えない。すべて 540px 以下だけに効かせる。
   原因は「折り返せない英字1行」と「grid/flexの子が min-content で膨らむこと」。
   ============================================================ */
@media (max-width:540px){
  body.lsu-recruit-apply .programs-en{font-size:22px;line-height:1.5;overflow-wrap:anywhere;word-break:normal}
  body.lsu-recruit-apply .programs-en .amp{margin:0 4px}

  /* 折り返せない英字に改行の機会を与える */
  body.lsu-recruit-apply .fv-en-tag,  body.lsu-recruit-apply .en-text,  body.lsu-recruit-apply .en-line,  body.lsu-recruit-apply .fv-headline,
  body.lsu-recruit-apply .fv-sub,  body.lsu-recruit-apply .sec-eyebrow,  body.lsu-recruit-apply .final-en,  body.lsu-recruit-apply .rb-en{
    overflow-wrap:anywhere;
  }

  /* grid / flex の子が min-content で膨らむのを止める（これが本命） */
  body.lsu-recruit-apply .fv-inner,  body.lsu-recruit-apply .fv-text,  body.lsu-recruit-apply .fv-visual,
  body.lsu-recruit-apply .container,  body.lsu-recruit-apply .blog-grid,  body.lsu-recruit-apply .programs-grid{
    min-width:0;
    max-width:100%;
  }
  body.lsu-recruit-apply .fv-inner > *,  body.lsu-recruit-apply .container > *{min-width:0}

  /* ★これは原本ではなく、私が採用バナーで入れた 420px の flex-basis。
     狭い幅では折り返しても420pxを要求してしまう */
  body.lsu-recruit-apply .recruit-band .rb-text{flex:1 1 100%;min-width:0}
}


/* ============================================================
   ★2026-09-03 重なりの対処（案1：重ね順＋位置）
   ------------------------------------------------------------
   有璽氏の決定＝案1（重ね順を変え、残る装飾を少し動かす。★消さない）。
   ★PC幅は承認済みなので1pxも変えない。すべて540px以下だけに効かせる。
   ★同じ形はグループごとに1回書く（1ページずつ直すと同じ原因を何度も直す）。
   ============================================================ */
@media (max-width:540px){
  /* ①重ね順（★これだけで53組が「読める」側へ移る見込み・実測で確かめる） */
  body.lsu-recruit-apply .tape-vertical,
  body.lsu-recruit-apply .en-bubble,
  body.lsu-recruit-apply .prog-poly,
  body.lsu-recruit-apply .city-badge,
  body.lsu-recruit-apply .polaroid,
  body.lsu-recruit-apply .fvp-growth,
  body.lsu-recruit-apply .prog-bubble,
  body.lsu-recruit-apply .deco-star-1,
  body.lsu-recruit-apply .deco-char-1{z-index:0 !important}
  body.lsu-recruit-apply .breadcrumb,
  body.lsu-recruit-apply .bc-current,
  body.lsu-recruit-apply .fv-eyebrow,
  body.lsu-recruit-apply .fv-headline,
  body.lsu-recruit-apply .fv-text,
  body.lsu-recruit-apply .fv-inner,
  body.lsu-recruit-apply .sec-title,
  body.lsu-recruit-apply .word,
  body.lsu-recruit-apply .line,
  body.lsu-recruit-apply .pp-no,
  body.lsu-recruit-apply .pp-en,
  body.lsu-recruit-apply .city-num,
  body.lsu-recruit-apply .dc-num,
  body.lsu-recruit-apply .ig-ph{position:relative;z-index:3}

  /* ②位置（★消さない。見える量を残したまま、文字の上から外す） */
  body.lsu-recruit-apply .tape-vertical{left:-64px !important;right:auto !important}
  /* ★en-bubble の移動も取り消した ── 実測で新しい重なりを増やしたため
     （recruit-interview で 移動あり6件 vs 移動なし0件）。prog-poly と同じ型。
     ★『まとめて動かす』は、まとめて壊す力も同じだけある。重ね順だけ残す。2026-09-03 */
  /* ★prog-poly の移動は取り消した ── 実測で新しい重なりを19件作ったため
     （p-pink がカード内の「主に小学生」等を覆100%で隠した）。
     重ね順（z-index:0）だけ残す。位置は元のまま。2026-09-03 */
  body.lsu-recruit-apply .city-badge{transform:translateY(30px) !important}
  body.lsu-recruit-apply .polaroid-b{left:auto !important;right:0 !important}
}

/* ============================================================
   ★2026-09-08 有璽氏指摘「パンくずの位置がページによって異なる。なんで
   そうなってんの？」への対応。目標値は共通CSS変数(style.css :root の
   --bc-gap-*)の1か所だけで決める。ここではページごとに違う値
   （このページの自然なgap＝fvのpadding-top等に起因、実測: mobile=40px /
   tablet=61.9px / desktop=61.9px）を差し引くだけ。
   目標を変えたければ :root の3行だけ直せば全ページに伝播する。
   ============================================================ */
body.lsu-recruit-apply .breadcrumb{margin-top:calc(var(--bc-gap-desktop) - 52px) !important}
@media (max-width:980px){
  body.lsu-recruit-apply .breadcrumb{margin-top:calc(var(--bc-gap-tablet) - 52px) !important}
}
@media (max-width:540px){
  body.lsu-recruit-apply .breadcrumb{margin-top:calc(var(--bc-gap-mobile) - 40px) !important}
}

/* ★2026-09-13 チョッパー：セクション間マージンをPC値の比率で縮小(有璽氏指摘・恒久ルール⑤と同じ比率) */
@media (max-width:980px){
  body.lsu-recruit-apply .sec-form,
  body.lsu-recruit-apply .sec-options,
  body.lsu-recruit-apply .sec-after,
  body.lsu-recruit-apply .sec-related{
    padding-top:max(var(--sp-floor),calc(var(--sp-t) * var(--sp-scale-tablet)));
  }
  body.lsu-recruit-apply .sec-form,
  body.lsu-recruit-apply .sec-options,
  body.lsu-recruit-apply .sec-after,
  body.lsu-recruit-apply .sec-q,
  body.lsu-recruit-apply .sec-related{
    padding-bottom:max(var(--sp-floor),calc(var(--sp-b) * var(--sp-scale-tablet)));
  }
}
@media (max-width:540px){
  body.lsu-recruit-apply .sec-form,
  body.lsu-recruit-apply .sec-options,
  body.lsu-recruit-apply .sec-after,
  body.lsu-recruit-apply .sec-related{
    padding-top:max(var(--sp-floor),calc(var(--sp-t) * var(--sp-scale-mobile)));
  }
  body.lsu-recruit-apply .sec-form,
  body.lsu-recruit-apply .sec-options,
  body.lsu-recruit-apply .sec-after,
  body.lsu-recruit-apply .sec-q,
  body.lsu-recruit-apply .sec-related{
    padding-bottom:max(var(--sp-floor),calc(var(--sp-b) * var(--sp-scale-mobile)));
  }
}

/* ★2026-09-14 チョッパー→ピタゴラス：全体マージン調整(有璽氏指摘)。セクション/ブロック間の縦マージン(margin-top/margin-bottom/padding-bottom)を比率化 */
@media (max-width:980px){
  body.lsu-recruit-apply .footer-grid{
    padding-bottom:max(var(--sp-floor),calc(var(--sp-b) * var(--sp-scale-tablet)));
  }
}
@media (max-width:540px){
  body.lsu-recruit-apply .footer-grid{
    padding-bottom:max(var(--sp-floor),calc(var(--sp-b) * var(--sp-scale-mobile)));
  }
}
