/* ==========================================================================
   エンターテイナー採用（Figma 99:2 / 103:2073、応募フォーム 99:903 / 103:2922）
   元: 07_org/03_hiring/design/entertainment/recruit/student/entertainment/index.html のCSSを移植し、
   header/footer/modal を WordPress 側（header-recruit.php / footer-recruit.php）へ置き換え。
   prefix: re-（ページ固有の追加分）。移植元のクラス名（.section .title .btn 等）はこのファイル内でのみ使用する。
   ========================================================================== */
.re-main { font-size: 14px; line-height: 1.9; color: #171719; overflow-wrap: break-word; }
.re-main *, .re-main *::before, .re-main *::after { box-sizing: border-box; }
:where(.re-main) :is(h1, h2, h3, h4, p, figure, dl, dd) { margin: 0; }
:where(.re-main) a { color: inherit; text-decoration: none; }
:where(.re-main) :is(button, input, select, textarea) { font: inherit; }
:where(.re-main) button { cursor: pointer; }
:where(.re-main) svg { display: block; }
:where(.re-main) img { display: block; max-width: 100%; height: auto; }
.re-main .container { width: min(944px, calc(100% - 48px)); margin-inline: auto; }
@media (min-width: 768px) { .re-main .container { width: min(944px, calc(100% - 136px)); } }
:root{--red:#dd222e;--red-dark:#b91522;--ink:#202126;--muted:#68686c;--paper:#fff;--soft:#f7f6f3;--black:#131416;--line:#dddeda;--sans:"Noto Sans CJK JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--serif:"Noto Serif CJK JP","Hiragino Mincho ProN","Yu Mincho",serif;--max:1160px}.red{color:var(--red)}.en{font-family:Arial,Helvetica,sans-serif;letter-spacing:.13em}.art{width:100%;height:100%;fill:none}.arrow{width:24px;height:24px;flex:none;transition:transform .2s}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:58px;padding:16px 25px;background:var(--red);border:1px solid var(--red);color:#fff;font-size:12px;font-weight:700;line-height:1.7;transition:background .2s,border-color .2s}.btn:hover{background:var(--red-dark);border-color:var(--red-dark)}.btn:hover .arrow{transform:translateX(4px)}.btn-outline{background:transparent;color:var(--ink);border-color:#969698}.btn-outline:hover{background:var(--soft);color:var(--red);border-color:var(--red)}.link-arrow{display:inline-flex;align-items:center;gap:26px;font-size:12px;font-weight:600;border-bottom:1px solid #a2a3a5;padding:10px 0}.link-arrow:hover{color:var(--red);border-color:var(--red)}.eyebrow{display:block;font-size:10px;font-weight:700;color:var(--red);letter-spacing:.11em}.title{font-size:32px;line-height:1.7;letter-spacing:.025em;font-weight:700}.lead{font-size:15px;line-height:2.15}.text-muted{color:var(--muted)}.body-copy{font-size:13px;line-height:2.15;color:var(--muted)}.body-copy p+p{margin-top:18px}.section{padding:86px 0 94px;position:relative;overflow:hidden}.section.soft{background:var(--soft)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:47px;position:relative}.section-head:after{content:"";position:absolute;width:54px;height:2px;bottom:-1px;left:0;background:var(--red)}.section-head .eyebrow{color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.06em;margin-bottom:10px}.section-head h2{font-family:Arial,Helvetica,sans-serif;font-size:31px;line-height:1.1;letter-spacing:-.035em}.section-number{font-family:Arial,Helvetica,sans-serif;font-size:40px;letter-spacing:-.06em;color:var(--red);line-height:1}
/* A quiet theatrical first view, with editable vector line-art. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--black);color:#fff}.hero-topline{display:flex;gap:19px;align-items:center;color:#c6c6c8;font-size:10px;letter-spacing:.07em}.hero-topline b{color:#fff;font-weight:500;font-size:11px;padding:5px 10px;border:1px solid #626366}.hero-topline .en{font-size:9px}.hero-tag{margin-top:34px;color:#ee4e58;font-size:12px;letter-spacing:.12em;font-weight:600}.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(39px,4.5vw,65px);line-height:1.5;letter-spacing:.018em;margin-top:17px;position:relative;width:76%;z-index:3}.hero h1 span{display:block;white-space:nowrap}.hero h1 .last{color:#f04450;font-size:1.18em;line-height:1.6}.hero-description{font-size:13px;line-height:2.1;color:#ceced0;margin-top:22px;letter-spacing:.025em}.hero-description strong{color:#fff;font-weight:500}.hero-cta{display:flex;align-items:center;gap:36px;margin-top:30px}.hero .btn{min-width:265px}.hero .link-arrow{color:#dedee0;font-size:11px;border-color:#54565a;gap:15px}.hero .link-arrow:hover{color:white;border-color:white}.hero-footer{margin-top:45px;padding:18px 0 20px;border-top:1px solid #3b3d40;display:flex;align-items:center;justify-content:space-between;color:#b3b4b6;font-size:8px;letter-spacing:.13em}.hero-footer span:last-child{display:flex;align-items:center;gap:17px}.hero-footer i{display:block;width:49px;height:1px;background:var(--red)}.facts{background:var(--black);border-top:1px solid #3d3d41;color:#fff}.fact{padding:0 24px;border-left:1px solid #404145}.fact:first-child{padding-left:0;border:0}.fact small{display:block;color:#a9aaad;font-size:9px;letter-spacing:.09em;margin-bottom:7px}.fact strong{display:block;font-size:17px;font-weight:500;line-height:1.7}.fact em{font-style:normal;color:#fb636d}.fact span{display:block;font-size:10px;color:#bbbbbe;margin-top:4px}.story-grid{display:grid;grid-template-columns:.92fr 1.1fr;gap:82px;align-items:start}.story-figure{position:relative;padding-left:18px;padding-top:14px}.story-figure:before{content:"";position:absolute;left:0;top:0;width:70%;height:84%;border-left:2px solid var(--red);border-top:2px solid var(--red)}.story-photo{height:530px;background:#e4e2df;position:relative;overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}.story-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 62%,#1117)}.photo-label{position:absolute;left:0;bottom:0;padding:15px 21px;color:#fff;background:var(--red);font-size:9px;letter-spacing:.13em;z-index:2}.story-figure figcaption{font-size:9px;color:var(--muted);display:flex;justify-content:space-between;gap:16px;margin-top:12px}.story-text .eyebrow{margin-bottom:18px}.story-text .title{font-size:33px}.story-text .body-copy{margin-top:25px}.story-line{margin:25px 0 0;padding:18px 0 18px 22px;border-left:2px solid var(--red);font-size:17px;font-weight:600;line-height:2}.signature{display:flex;align-items:center;gap:20px;margin-top:24px}.signature small{font-size:10px;color:var(--muted)}.signature strong{font-family:var(--serif);font-size:25px;letter-spacing:.09em;font-weight:600}.story-foot{border-top:1px solid var(--line);padding-top:24px;margin-top:35px;display:flex;justify-content:space-between;gap:30px;align-items:center}.story-foot .en{font-size:9px;color:var(--muted)}.story-foot p{font-size:15px;font-weight:500}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-bottom:34px}.section-intro .body-copy{max-width:465px;justify-self:end}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.strength-card{background:#fff;border:1px solid var(--line);padding:26px 28px 29px;position:relative;transition:border-color .2s,transform .2s}.strength-card:hover{border-color:var(--red);transform:translateY(-3px)}.strength-card:before{content:"";position:absolute;left:28px;top:-1px;width:29px;height:2px;background:var(--red)}.strength-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.strength-top .en{font-size:9px;color:#73747a}.strength-num{font-family:Georgia,serif;font-size:40px;line-height:1;color:var(--red);font-weight:400}.strength-card h3{font-size:20px;line-height:1.7;margin-bottom:10px}.strength-card p{font-size:12px;color:var(--muted);line-height:2}.strength-note{margin-top:21px;color:var(--muted);font-size:11px}.bridge{background:var(--black);color:#fff}.bridge .section-head,.message .section-head{border-color:#48494c}.bridge .section-head .eyebrow,.message .section-head .eyebrow{color:#b6b6b9}.bridge .title{font-family:var(--serif);font-weight:500}.bridge .body-copy{color:#bfbfc2}.bridge-intro{display:grid;grid-template-columns:1fr 280px;gap:75px;align-items:start;margin-bottom:35px}.bridge-intro p{padding-top:9px;font-size:12px;line-height:2.1}.bridge-table{position:relative;z-index:1}.bridge-thead,.bridge-row{display:grid;grid-template-columns:42px 1fr 84px 1fr;align-items:center;gap:15px}.bridge-thead{font-size:9px;letter-spacing:.13em;color:#9d9fa4;padding:10px 0 15px;border-bottom:1px solid #5a5a5e}.bridge-thead span:first-child{grid-column:2}.bridge-thead span:last-child{grid-column:4}.bridge-row{padding:26px 0;border-bottom:1px solid #37383d}.bridge-row .index{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.1em;color:#8d8e95}.bridge-row p{font-size:16px;line-height:1.8}.bridge-row p:last-child{font-weight:600}.bridge-row .arrow{color:#f24d58;width:43px;height:28px;justify-self:center}.who-grid{display:grid;grid-template-columns:330px 1fr;gap:90px;align-items:center;margin-top:24px;margin-bottom:39px}.years-card{position:relative;padding:0 22px 26px 0;border-right:1px solid var(--line)}.years-kicker{color:var(--muted);font-size:11px}.years-number{font-family:Georgia,serif;font-size:148px;line-height:1.2;color:var(--red);letter-spacing:-.08em}.years-number sup{font-family:Arial,sans-serif;font-size:59px;letter-spacing:0;top:0;position:relative;margin-left:12px;vertical-align:35%}.years-card .en{font-size:9px;letter-spacing:.19em;margin-top:2px;color:var(--muted)}.years-card p{margin-top:18px;font-size:12px;font-weight:500}.who-criteria{margin:0}.who-criteria div{display:grid;grid-template-columns:90px 1fr;gap:22px;padding:21px 0;border-bottom:1px solid var(--line)}.who-criteria div:first-child{border-top:1px solid var(--line)}.who-criteria dt{font-size:11px;color:var(--muted)}.who-criteria dd{margin:0;font-size:14px;font-weight:500;line-height:1.9}.fields{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.field{background:var(--soft);padding:18px 10px 21px;min-width:0;text-align:center;position:relative;transition:background .2s}.field:hover{background:#f8eded}.field-art{height:83px;width:92px;margin:0 auto 14px;color:#6c6463}.field strong{font-size:12px;line-height:1.8;display:block}.field .en{display:block;margin-top:5px;font-size:8px;color:#8d7d7d;letter-spacing:.09em}.field-note{font-size:11px;color:var(--muted);margin-top:18px}.work-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:start}.work-visual{margin-top:9px;position:relative}.work-visual img{width:100%;height:310px;object-fit:cover}.work-visual:after{content:"Brixa / TEAM & BUSINESS";position:absolute;left:0;bottom:0;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.14em;padding:13px 20px;background:var(--black);color:white}.job-tag{display:inline-block;font-size:11px;border-left:3px solid var(--red);padding:8px 13px;background:#fff;margin-bottom:20px;line-height:1.9}.work-copy .body-copy{margin-top:20px}.work-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0 28px;margin-top:33px}.work-step{border-left:1px solid var(--line);padding-left:26px}.work-step:first-child{border:0;padding-left:0}.work-step .en{font-size:9px;color:var(--red)}.work-step h3{font-size:17px;line-height:1.8;margin:8px 0}.work-step p{font-size:12px;color:var(--muted);line-height:1.9}.project-head{display:flex;align-items:end;justify-content:space-between;margin-top:36px;gap:30px}.project-head h3{font-size:23px;line-height:1.8}.project-head .en{font-size:9px;color:var(--muted);margin-bottom:7px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:20px}.project{padding:26px 27px;background:white;display:grid;grid-template-columns:48px 1fr;gap:19px;position:relative}.project-num{font-family:Arial,sans-serif;font-size:34px;color:#cfbdbd;line-height:1.4}.project h4{font-size:17px;line-height:1.8;margin-bottom:11px}.project p{font-size:12px;color:var(--muted);line-height:2}.project-tag{display:inline-block;border-bottom:1px solid #eeb8bd;color:var(--red);margin-top:13px;font-size:10px;padding-bottom:3px}.project-note{font-size:11px;color:var(--muted);margin-top:18px}.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.flow-badge{font-size:12px;padding:10px 17px;border:1px solid #ddb2b7;color:var(--red);font-weight:500;white-space:nowrap}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:58px;margin-top:37px;position:relative}.flow:before{content:"";position:absolute;left:0;right:0;top:28px;border-top:1px solid var(--line)}.flow-item{position:relative}.step-number{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;padding-bottom:19px}.step-number span{background:#fff;padding-right:17px;color:var(--red);font-family:Arial,sans-serif;font-size:10px;letter-spacing:.1em}.step-number b{font-size:39px;font-weight:400;margin-left:8px;letter-spacing:-.05em;line-height:1.4}.step-number .arrow{background:#fff;box-shadow:8px 0 0 #fff,-8px 0 0 #fff;color:var(--red)}.flow-item:last-child .step-number:after{content:"";width:7px;height:7px;background:var(--red);border-radius:50%}.flow-item h3{font-size:22px;line-height:1.7;margin-bottom:12px}.flow-item p{font-size:12px;line-height:2;color:var(--muted)}.flow-note{border-top:1px solid var(--line);padding-top:22px;margin-top:29px;font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:25px;align-items:center}.flow-note .link-arrow{color:var(--red);font-size:11px;flex:none;border:0}.message{background:#1c1d20;color:white}.message-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:95px;align-items:start;position:relative;z-index:1}.message-title{font-family:var(--serif);font-size:39px;font-weight:500;line-height:1.9;letter-spacing:.025em;margin-top:9px}.message-tag{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.18em;color:#9c999c;margin-top:19px}.message .body-copy{color:#d1d0d3;font-size:13px;line-height:2.2}.message .body-copy .message-highlight{font-size:17px;line-height:2.1;color:#fff;font-weight:500}.message .signature{border-top:1px solid #414247;padding-top:22px;margin-top:27px}.message .signature small{color:#a8a8b0}.faq-layout{display:grid;grid-template-columns:290px 1fr;gap:90px}.faq-layout .title{font-size:26px}.faq-intro{font-size:12px;color:var(--muted);margin-top:15px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;font-size:13px;font-weight:500;line-height:1.9;padding:22px 36px 22px 0;display:flex;align-items:start;gap:19px;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary .q{font-family:Georgia,serif;font-size:17px;color:var(--red);line-height:1.5}.faq-plus{width:18px;height:18px;position:absolute;right:0;top:26px;transition:transform .2s;color:var(--red)}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details p{font-size:12px;color:var(--muted);line-height:2;padding:0 34px 23px 33px}.entry{position:relative;overflow:hidden;background:var(--black);color:#fff;padding:86px 0 92px;isolation:isolate;text-align:center}.entry .eyebrow{color:#ee5863;font-size:10px}.entry h2{font-family:var(--serif);font-size:49px;line-height:1.75;font-weight:500;letter-spacing:.04em;margin-top:24px}.entry-copy{font-size:15px;color:#d8d7da;margin-top:23px}.entry-button{min-width:320px;margin-top:31px;min-height:63px}.entry-note{font-size:10px;color:#aeafb2;margin-top:14px}
/* Demo entry drawer. Set the two URL constants before publishing. */
@media(max-width:1150px){.hero h1{font-size:53px;width:82%}.story-grid{gap:48px}.story-text .title{font-size:28px}.story-photo{height:500px}.title{font-size:29px}.strength-card{padding:23px}.strength-card:before{left:23px}.strength-card h3{font-size:18px}.strength-grid{gap:16px}.who-grid{grid-template-columns:280px 1fr;gap:55px}.field strong{font-size:11px}.field-art{width:76px;height:76px}.work-grid{gap:40px}.work-visual img{height:300px}.message-grid{gap:50px}.message-title{font-size:34px}.flow{gap:36px}.flow-item h3{font-size:20px}.faq-layout{grid-template-columns:250px 1fr;gap:60px}.bridge-intro{gap:40px}.bridge-row p{font-size:14px}}
@media(max-width:900px){html{scroll-padding-top:86px}.hero h1{font-size:49px}.hero-description{font-size:12px}.hero .btn{min-width:235px}.hero-cta{gap:25px}.hero-topline .en{font-size:8px}.hero-topline{font-size:9px;gap:14px}.hero-footer{font-size:7px}.fact{padding:0 15px}.fact strong{font-size:13px}.fact small{font-size:8px}.fact span{font-size:8px}.section{padding:62px 0 68px}.section-head{margin-bottom:34px;padding-bottom:17px}.section-head h2{font-size:27px}.section-number{font-size:35px}.title{font-size:26px}.story-grid{gap:30px;grid-template-columns:.9fr 1fr}.story-photo{height:445px}.story-text .title{font-size:23px}.story-text .body-copy{font-size:12px;margin-top:18px}.story-text .eyebrow{margin-bottom:13px}.story-line{font-size:15px;padding-left:16px;margin-top:20px}.signature strong{font-size:22px}.signature{gap:15px;margin-top:19px}.story-figure figcaption{font-size:8px}.story-foot p{font-size:13px}.story-foot .en{font-size:8px}.section-intro{gap:38px;margin-bottom:29px}.body-copy{font-size:12px}.strength-grid{gap:12px}.strength-card{padding:22px 20px}.strength-card:before{left:20px}.strength-top{margin-bottom:22px;gap:8px}.strength-num{font-size:34px}.strength-top .en{font-size:8px;letter-spacing:.08em}.strength-card h3{font-size:16px}.strength-card p{font-size:11px}.bridge-intro{grid-template-columns:1fr 210px;gap:30px}.bridge-intro p{font-size:11px}.bridge-row{grid-template-columns:30px 1fr 52px 1fr;gap:12px;padding:22px 0}.bridge-thead{grid-template-columns:30px 1fr 52px 1fr;gap:12px}.bridge-row p{font-size:12px}.bridge-row .arrow{width:32px}.who-grid{grid-template-columns:220px 1fr;gap:35px}.years-number{font-size:130px}.years-number sup{font-size:48px}.who-criteria div{grid-template-columns:66px 1fr;gap:16px;padding:18px 0}.who-criteria dt{font-size:10px}.who-criteria dd{font-size:12px}.fields{gap:9px;grid-template-columns:repeat(3,1fr)}.field-art{width:83px;height:80px}.field strong{font-size:12px}.field{padding:19px 12px}.work-grid{gap:28px;grid-template-columns:1fr 1fr}.work-visual img{height:324px}.job-tag{font-size:10px;padding:8px 12px}.work-copy .title{font-size:25px}.work-step{padding-left:19px}.work-steps{gap:19px}.work-step h3{font-size:15px}.work-step p{font-size:11px}.project{padding:22px 20px;grid-template-columns:35px 1fr;gap:15px}.project-num{font-size:29px}.project h4{font-size:15px}.project p{font-size:11px}.project-head h3{font-size:20px}.flow-badge{font-size:10px;padding:9px 13px}.flow{gap:28px}.flow-item h3{font-size:17px}.flow-item p{font-size:11px}.message-grid{gap:35px}.message-title{font-size:29px}.message .body-copy{font-size:12px}.message .body-copy .message-highlight{font-size:15px}.faq-layout{grid-template-columns:205px 1fr;gap:38px}.faq-layout .title{font-size:22px}.faq-list summary{font-size:12px;gap:14px}.faq-list details p{font-size:11px;padding-left:27px}.entry h2{font-size:41px}.entry-copy{font-size:13px}}
@media(max-width:640px){html{scroll-padding-top:82px}.hero-topline{flex-wrap:wrap;gap:8px 12px;font-size:8px;max-width:92%}.hero-topline b{font-size:10px;padding:4px 8px}.hero-topline .en{font-size:7px}.hero-tag{font-size:10px;margin-top:32px;letter-spacing:.1em}.hero h1{font-size:clamp(29px,7.5vw,47px);width:100%;margin-top:20px;letter-spacing:0;line-height:1.65}.hero h1 .last{font-size:1.18em;line-height:1.55}.hero-description{font-size:11px;line-height:2.1;margin-top:23px;letter-spacing:.015em;max-width:92%}.hero-cta{display:flex;flex-wrap:wrap;gap:13px 24px;margin-top:26px}.hero .btn{min-width:0;width:100%;max-width:340px;font-size:12px;min-height:55px;padding:14px 20px}.hero .link-arrow{font-size:10px;gap:16px;padding:8px 0}.hero-footer{margin-top:29px;padding:15px 0 17px;font-size:6px;letter-spacing:.09em;gap:20px}.hero-footer span:last-child{gap:8px;white-space:nowrap}.hero-footer i{width:24px}.fact{padding:0 0 0 18px}.fact:nth-child(odd){border:0;padding-left:0}.fact strong{font-size:14px}.fact small{font-size:9px;margin-bottom:5px}.fact span{font-size:9px;margin-top:3px}.section{padding:45px 0 52px}.section-head{margin-bottom:29px;padding-bottom:18px}.section-head .eyebrow{font-size:9px;letter-spacing:.025em;margin-bottom:8px}.section-head h2{font-size:24px}.section-number{font-size:31px}.title{font-size:23px;line-height:1.75}.story-grid{display:flex;flex-direction:column-reverse;gap:30px}.story-text .title{font-size:25px}.story-text .eyebrow{font-size:9px;margin-bottom:14px}.story-text .body-copy{font-size:12px;line-height:2.1;margin-top:20px}.story-line{font-size:15px;padding:13px 0 13px 16px;margin-top:22px}.signature strong{font-size:22px}.signature small{font-size:9px}.story-figure{padding:9px 0 0 11px;width:100%}.story-photo{height:345px}.story-photo img{object-position:50% 35%}.story-figure figcaption{font-size:8px;margin-top:11px}.photo-label{font-size:8px;padding:12px 17px}.story-foot{display:none}.section-intro{display:block;margin-bottom:27px}.section-intro .body-copy{margin-top:15px;font-size:12px;line-height:2}.strength-grid{grid-template-columns:1fr 1fr;gap:11px}.strength-card{padding:19px 16px 21px}.strength-card:before{left:16px;width:22px}.strength-top{margin-bottom:23px;align-items:center;gap:6px}.strength-num{font-size:32px}.strength-top .en{font-size:6px;letter-spacing:.07em;max-width:75px;line-height:1.7}.strength-card h3{font-size:16px;line-height:1.8;margin-bottom:9px}.strength-card p{font-size:11px;line-height:1.95}.strength-note{font-size:10px;margin-top:17px}.bridge-intro{display:block;margin-bottom:28px}.bridge-intro .title{font-size:24px}.bridge-intro p{font-size:11px;line-height:2;margin-top:17px;padding:0}.bridge-thead{display:none}.bridge-row{grid-template-columns:25px 1fr;gap:8px 14px;padding:23px 0;position:relative}.bridge-row .index{grid-row:1/3;align-self:start;margin-top:5px;font-size:9px}.bridge-row p{font-size:12px;line-height:1.9}.bridge-row p.stage{color:#b4b4ba;font-size:11px}.bridge-row p.business{grid-column:2;padding-left:29px}.bridge-row .arrow{position:absolute;left:38px;top:auto;bottom:25px;width:18px;height:22px;transform:rotate(0)}.who-grid{display:block;margin-top:27px;margin-bottom:27px}.years-card{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:143px 1fr;column-gap:17px;align-items:center;padding:0 0 24px;margin-bottom:22px}.years-number{font-size:112px;line-height:1;grid-column:1;grid-row:1/4}.years-number sup{font-size:41px;margin-left:7px;vertical-align:47%}.years-kicker{grid-column:2;font-size:10px;align-self:end}.years-card .en{grid-column:2;font-size:7px;margin-top:6px}.years-card p{grid-column:2;font-size:10px;margin-top:7px;line-height:1.9;align-self:start}.who-criteria div{grid-template-columns:64px 1fr;gap:15px;padding:17px 0}.who-criteria div:first-child{border-top:0}.who-criteria dt{font-size:10px}.who-criteria dd{font-size:12px}.fields{gap:10px;grid-template-columns:repeat(3,1fr)}.field{padding:16px 6px 19px}.field-art{width:65px;height:71px;margin-bottom:11px}.field strong{font-size:10px;line-height:1.8}.field .en{font-size:7px;letter-spacing:.065em;margin-top:5px}.field-note{font-size:10px;line-height:1.9;margin-top:16px}.work-grid{display:flex;flex-direction:column;gap:25px}.job-tag{font-size:10px;margin-bottom:18px}.work-copy .title{font-size:26px}.work-copy .body-copy{font-size:12px;margin-top:17px;line-height:2.1}.work-visual{width:100%;margin-top:0}.work-visual img{height:255px}.work-visual:after{font-size:8px;padding:11px 17px}.work-steps{display:block;padding:0;margin-top:29px}.work-step{border:0;border-bottom:1px solid var(--line);padding:21px 0}.work-step:first-child{padding:21px 0}.work-step:last-child{border:0}.work-step h3{font-size:16px;margin:6px 0}.work-step .en{font-size:9px}.work-step p{font-size:11px;line-height:1.95}.project-head{display:block;margin-top:28px}.project-head h3{font-size:20px}.project-head .en{font-size:8px;margin-top:5px}.project-grid{grid-template-columns:1fr;gap:13px;margin-top:17px}.project{grid-template-columns:33px 1fr;gap:13px;padding:22px 20px}.project h4{font-size:15px;margin-bottom:10px}.project p{font-size:11px}.project-tag{font-size:9px;margin-top:10px}.project-note{font-size:10px;line-height:1.9;margin-top:16px}.flow-heading{display:block}.flow-heading .title{font-size:25px}.flow-badge{display:inline-block;font-size:10px;padding:9px 13px;margin-top:18px}.flow{display:block;margin-top:30px}.flow:before{left:16px;top:20px;bottom:22px;right:auto;border-top:0;border-left:1px solid var(--line)}.flow-item{padding:0 0 27px 57px}.flow-item:last-child{padding-bottom:0}.step-number{position:absolute;left:0;top:0;padding:0;width:36px;height:43px;display:flex;align-items:center;justify-content:center;background:#fff}.step-number span{font-size:0;padding:0}.step-number b{font-size:29px;line-height:1.4;margin:0}.step-number .arrow,.flow-item:last-child .step-number:after{display:none}.flow-item h3{font-size:20px;margin-bottom:9px}.flow-item p{font-size:12px;line-height:2}.flow-note{display:block;margin-top:26px;padding-top:18px;font-size:10px;line-height:1.9}.flow-note .link-arrow{display:flex;justify-content:space-between;margin-top:9px;font-size:11px}.message-grid{display:block}.message-title{font-size:29px;margin-top:0;line-height:1.85}.message-tag{font-size:8px;margin-top:15px}.message .body-copy{font-size:12px;line-height:2.15;margin-top:27px}.message .body-copy .message-highlight{font-size:16px}.message .signature{margin-top:24px;padding-top:21px}.message .signature strong{font-size:24px}.faq-layout{display:block}.faq-layout .title{font-size:24px}.faq-intro{font-size:11px;margin-top:12px}.faq-list{margin-top:26px}.faq-list summary{font-size:12px;padding:19px 26px 19px 0;gap:13px}.faq-list summary .q{font-size:16px}.faq-plus{width:17px;height:17px;top:24px}.faq-list details p{padding:0 14px 20px 28px;font-size:11px;line-height:2}.entry{padding:56px 0 69px}.entry .eyebrow{font-size:9px}.entry h2{font-size:clamp(27px,7.4vw,42px);letter-spacing:.01em;line-height:1.9;margin-top:23px}.entry-copy{font-size:12px;margin-top:22px}.entry-button{width:100%;max-width:340px;min-width:0;font-size:12px;margin-top:29px;min-height:59px;padding:15px 20px}.entry-note{font-size:9px;margin-top:13px}}
@media(max-width:360px){.hero-topline .en{font-size:6px}.hero h1{font-size:27px}.strength-card{padding:17px 12px}.strength-card:before{left:12px}.strength-card h3{font-size:14px}.field strong{font-size:9px}.years-card{grid-template-columns:124px 1fr}.years-number{font-size:98px}.section-head h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}


/* Existing recruitment Figma design system. Content follows the supplied index (3).html. */
:root{--red:#CF1B1B;--red-dark:#AB1515;--ink:#23232C;--muted:#62626D;--soft:#F8F8F5;--line:#E9E9E9;--black:#23232C;--sans:"Zen Kaku Gothic New",sans-serif;--serif:"Zen Kaku Gothic New",sans-serif;--max:944px}.en,.section-head h2,.section-number,.strength-num,.years-number,.years-number sup,.project-num,.step-number span,.signature strong,.message-tag{font-family:"Archivo","Zen Kaku Gothic New",sans-serif}.hero{background:#fff;color:var(--ink)}.hero h1{font-family:var(--sans);font-weight:700;font-size:54px;line-height:1.55}.hero h1 .last{color:var(--red)}.hero-description{color:var(--muted);font-size:14px}.hero-description strong{color:var(--ink)}.hero-tag{color:var(--red)}.hero-topline{color:var(--muted)}.hero-topline b{background:var(--red);color:#fff;border-color:var(--red)}.hero .link-arrow{color:var(--ink);border-color:var(--ink);font-size:12px}.hero .link-arrow:hover{color:var(--red);border-color:var(--red)}.hero-footer{color:var(--muted);border-color:var(--line)}.facts{background:var(--soft);color:var(--ink);border-color:var(--line)}.fact{border-color:var(--line)}.fact small,.fact span{color:var(--muted)}.fact em{color:var(--red)}.fact strong{font-weight:700}.section-head h2{font-size:42px}.section-head .eyebrow{color:var(--red);font-size:12px}.section-number{font-size:54px}.title,.story-text .title,.bridge .title,.message-title,.entry h2{font-family:var(--sans);font-weight:700}.body-copy{font-size:14px}.story-grid{gap:48px}.story-text .title{font-size:32px}.story-photo{height:530px}.strength-card{padding:24px}.strength-card p,.work-step p,.project p,.flow-item p,.faq-list details p{font-size:13px}.strength-card h3{font-size:19px}.strength-top .en{font-size:9px}.bridge{background:var(--soft);color:var(--ink)}.bridge .section-head,.message .section-head{border-color:var(--line)}.bridge .section-head .eyebrow,.message .section-head .eyebrow{color:var(--red)}.bridge .body-copy,.bridge-intro p{color:var(--muted)}.bridge-thead,.bridge-row{border-color:var(--line)}.bridge-thead,.bridge-row .index{color:var(--muted)}.bridge-row .arrow{color:var(--red)}.who-grid{grid-template-columns:280px 1fr;gap:56px}.fields{grid-template-columns:repeat(3,1fr)}.field strong{font-size:14px}.field-art{color:var(--red)}.field .en{color:var(--muted)}.field-note,.strength-note,.project-note,.flow-note{font-size:12px}.work-grid{gap:40px}.work-copy .title{font-size:32px}.work-steps{gap:20px}.work-step{padding-left:20px}.project-num{color:var(--red)}.job-tag{font-size:12px}.message{background:var(--soft);color:var(--ink)}.message-grid{gap:60px}.message-title{font-size:34px}.message .body-copy{color:var(--muted);font-size:14px}.message .body-copy .message-highlight{color:var(--ink);font-weight:700}.message .signature{border-color:var(--line)}.message .signature small,.message-tag{color:var(--muted)}.entry{background:var(--soft);color:var(--ink)}.entry .eyebrow{color:var(--red)}.entry h2{font-size:42px}.entry-copy,.entry-note{color:var(--muted)}@media(max-width:640px){.hero h1{font-size:30px;line-height:1.7}.hero-description{font-size:13px;max-width:100%}.hero .btn{max-width:none}.hero .link-arrow{font-size:12px}.hero-topline{max-width:100%}.hero-footer{font-size:7px}.section{padding:56px 0 60px}.section-head h2{font-size:26px}.section-number{font-size:34px}.section-head .eyebrow{font-size:11px}.section-head{gap:10px}.section-head h2{overflow-wrap:normal}.story-text .title{font-size:25px}.story-text .body-copy,.section-intro .body-copy,.work-copy .body-copy,.message .body-copy{font-size:14px}.story-foot{display:block}.story-foot p{margin-top:12px;font-size:13px}.story-photo{height:420px}.strength-grid{grid-template-columns:1fr}.strength-card{padding:24px}.strength-top{margin-bottom:15px}.strength-top .en{font-size:10px;max-width:none}.strength-card h3{font-size:20px}.strength-card p{font-size:14px}.bridge-intro p{font-size:13px}.bridge-row p.stage{color:var(--muted);font-size:13px}.bridge-row p.business{font-size:14px}.bridge-row .arrow{bottom:24px}.who-grid{display:block}.who-criteria dd{font-size:13px}.fields{grid-template-columns:repeat(2,1fr)}.field strong{font-size:12px}.field-note,.strength-note,.project-note,.flow-note{font-size:12px}.work-copy .title{font-size:26px}.work-step{padding-left:0}.work-step p,.project p,.flow-item p,.faq-list details p{font-size:13px}.project h4{font-size:17px}.job-tag{font-size:11px}.message-title{font-size:28px}.message .body-copy .message-highlight{font-size:17px}.faq-list summary{font-size:14px}.faq-intro{font-size:13px}.entry h2{font-size:26px}.entry-copy{font-size:13px}.entry-button{max-width:none}.entry-note{font-size:11px}
}



/* Visual reference: Figma 64:18 / FV案 F｜赤と黒の素材. */
:root{--red:#CF1B1B;--red-dark:#AC1717;--ink:#171719;--muted:#62626D;--soft:#F5F5F3;--black:#101012;--line:#E5E5E5}.hero{background:#080809;color:#fff}.hero-material,.entry-material{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:0}.hero-topline{color:#E5E5E7;font-size:11px}.hero-topline b{background:none;border:1px solid #99999E;color:#fff;font-size:12px}.hero-tag{margin-top:100px;color:#fff;font-size:14px;font-weight:700;letter-spacing:.12em}.hero h1{margin-top:28px;color:#fff;font-size:64px;font-weight:900;line-height:1.35;width:100%;letter-spacing:.015em}.hero h1 .last{color:#fff;font-size:1em;line-height:1.35}.hero-description{margin-top:32px;color:#fff;font-size:16px;line-height:2}.hero-description strong{color:#fff;font-weight:500}.hero-cta{margin-top:34px;gap:16px}.hero .btn{background:#fff;border-color:#fff;color:var(--red);min-width:265px;min-height:58px;font-size:14px}.hero .link-arrow{display:inline-flex;justify-content:space-between;min-width:236px;min-height:58px;padding:16px 22px;background:#171719;color:#fff;border:1px solid #fff;font-size:13px}.hero .link-arrow:hover{background:#333337;color:#fff;border-color:#fff}.hero .btn:hover{background:#ECECEE;border-color:#ECECEE}.hero-footer{width:100%;margin-top:auto;border-color:#5A5A60;color:#D0D0D5;padding:20px 0 0}.hero-footer i{background:#fff}.facts{background:#171719;border-color:#3C3C42;color:#fff}.fact{border-color:#414147}.fact strong{color:#fff}.fact small,.fact span{color:#BABAC1}.fact em{color:#F55757}.section-head h2{font-weight:700}.section-number{font-weight:600}.strength-num{font-weight:600}.strength-card{border-color:#D8D8DC}.strength-card:before{width:42px;height:3px}.years-number{font-weight:700;letter-spacing:-.07em}.bridge{background:#111113;color:#fff}.bridge .section-head{border-color:#48484E}.bridge .section-head .eyebrow{color:#F15E5E}.bridge .section-number{color:#F15E5E}.bridge .body-copy,.bridge-intro p{color:#CBCBD0}.bridge-thead,.bridge-row{border-color:#414148}.bridge-thead,.bridge-row .index{color:#AAAAB4}.bridge-row .arrow{color:#F15E5E}.field{background:#F3F3F2}.field-art{color:#B81D23}.project-num{color:var(--red)}.flow-badge{border-color:#CF1B1B}.message{background:#171719;color:#fff}.message .section-head,.message .signature{border-color:#45454D}.message .section-head .eyebrow,.message .section-number{color:#F15E5E}.message .body-copy{color:#D0D0D6}.message .body-copy .message-highlight{color:#fff;font-weight:700}.message .signature small,.message-tag{color:#AAAAB4}.entry{background:#080809;color:#fff;padding:86px 0 92px}.entry-material{opacity:.85}.material-shade{position:absolute;inset:0;background:#000;opacity:.3;z-index:1;pointer-events:none}.entry .eyebrow{color:#fff}.entry h2{font-size:43px;font-weight:900;color:#fff}.entry-copy,.entry-note{color:#E0E0E5}.entry-button{background:#fff;border-color:#fff;color:var(--red);font-size:14px;min-width:350px}.entry-button:hover{background:#ECECEE;border-color:#ECECEE}@media(max-width:640px){.hero-topline{gap:8px 10px;font-size:8px}.hero-topline b{font-size:10px}.hero-tag{margin-top:88px;font-size:12px}.hero h1{font-size:34px;line-height:1.5;margin-top:23px;letter-spacing:0}.hero h1 .last{line-height:1.5}.hero-description{font-size:13px;line-height:2.15;margin-top:28px}.hero-cta{margin-top:29px;flex-direction:column;align-items:stretch;width:100%;gap:12px}.hero .btn,.hero .link-arrow{width:100%;min-width:0;min-height:56px;font-size:12px;padding:15px 20px;max-width:none}.hero-footer{margin-top:auto;font-size:6px;letter-spacing:.065em;gap:8px}.hero-footer span:last-child{gap:7px}.hero-footer i{width:20px}.bridge-row p.stage{color:#B8B8C2}.bridge-row p.business{color:#fff}.entry{padding:68px 0 76px}.entry h2{font-size:26px;line-height:1.8}.entry-button{min-width:0;width:100%;font-size:12px}.entry-note{font-size:10px;line-height:1.9}.entry-copy{font-size:13px}.entry-material{opacity:.55}
}
.hero-shade{display:none}.hero-topline{background:rgba(8,8,9,.76);padding:8px 12px}.hero-topline b{border-color:#BBB}@media(max-width:640px){.hero-shade{display:block;position:absolute;inset:0;background:#000;opacity:.23;z-index:1;pointer-events:none}.hero-topline{padding:8px;gap:7px;flex-wrap:wrap}.hero-topline .en{font-size:7px}}


/* Reference material, editorial comparisons and photographic field cards. */
.section-material{position:absolute;right:-58px;top:0;width:244px;height:130px;object-fit:cover;object-position:right center;pointer-events:none;z-index:0;clip-path:polygon(42% 0,100% 0,100% 100%,0 58%)}.section-head{padding-right:150px}.section-number{position:absolute;right:0;top:0;color:#fff!important;font-size:30px}.bridge-thead,.bridge-row{grid-template-columns:42px 1fr 1.1fr;gap:24px}.bridge-thead span:last-child{grid-column:3}.bridge-row p.business{border-left:1px solid #525258;padding-left:34px}.bridge-row p.stage{font-weight:400;color:#B8B8C2}.bridge-row p.business{font-weight:700;color:#fff}.fields{grid-template-columns:repeat(3,1fr);gap:18px}.field{padding:0 24px 24px;height:240px;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;background:#100C0E;overflow:hidden;color:white}.field-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.field-shade{position:absolute;left:0;right:0;bottom:0;height:80px;background:#08080A;opacity:.76}.field strong,.field .en{position:relative;z-index:2}.field strong{font-size:17px}.field .en{font-size:9px;color:#fff;letter-spacing:.13em;margin-top:3px}.field:hover{background:#100C0E}@media(max-width:640px){.section-material{width:152px;height:91px;right:-32px}.section-head{padding-right:86px}.section-number{font-size:25px}.bridge-thead{display:grid;grid-template-columns:1fr 1.12fr;gap:15px;font-size:7px;letter-spacing:0;padding-left:24px}.bridge-thead span:first-child{grid-column:1}.bridge-thead span:last-child{grid-column:2}.bridge-row{display:grid;grid-template-columns:15px 1fr 1.12fr;gap:9px;padding:23px 0}.bridge-row .index{position:static;align-self:start;font-size:8px;line-height:2.6}.bridge-row p.stage,.bridge-row p.business{grid-column:auto;font-size:12px;line-height:1.9;margin:0}.bridge-row p.business{padding-left:12px}.fields{grid-template-columns:repeat(2,1fr);gap:12px}.field{height:196px;padding:0 13px 17px}.field strong{font-size:12px;white-space:nowrap}.field .en{font-size:7px}.field-shade{height:65px}}
.section-number{background:#CF1B1B;padding:6px 8px;font-size:20px!important;line-height:1!important;letter-spacing:-.02em}

/* Each section has a distinct composition using the shared red material. */
.section-head{padding-right:56px}#story .section-material{left:-78px;right:auto;top:auto;bottom:0;width:340px;height:68px;clip-path:polygon(0 0,100% 36%,78% 100%,0 100%);object-position:75% 70%}#strength .section-material{right:-50px;top:0;width:142px;height:210px;clip-path:polygon(47% 0,100% 0,100% 100%,0 68%);object-position:90% 30%}#bridge .section-material{right:-135px;top:auto;bottom:-12px;width:390px;height:148px;clip-path:polygon(27% 0,100% 34%,100% 100%,0 100%);object-position:75% 85%}#eligibility .section-material{left:-58px;right:auto;top:0;width:244px;height:62px;clip-path:polygon(0 0,100% 0,73% 55%,0 100%);object-position:70% 20%}#work .section-material{right:-72px;top:auto;bottom:0;width:190px;height:115px;clip-path:polygon(67% 0,100% 42%,100% 100%,0 100%);object-position:85% 80%}#selection .section-material{left:calc(50% - 130px);right:auto;top:0;width:320px;height:35px;clip-path:polygon(0 0,100% 0,77% 100%,17% 42%);object-position:70% 50%}#message .section-material{left:-64px;right:auto;top:38%;width:100px;height:340px;clip-path:polygon(0 0,100% 25%,67% 76%,0 100%);object-position:90% 45%}#faq .section-material{left:-80px;right:auto;top:auto;bottom:0;width:270px;height:72px;clip-path:polygon(0 0,65% 26%,100% 100%,0 100%);object-position:70% 75%}@media(max-width:640px){.section-head{padding-right:48px}#story .section-material{left:-55px;width:214px;height:45px}#strength .section-material{right:-40px;width:92px;height:130px}#bridge .section-material{right:-95px;bottom:-9px;width:265px;height:94px}#eligibility .section-material{left:-42px;width:164px;height:41px}#work .section-material{right:-55px;width:134px;height:68px}#selection .section-material{left:calc(50% - 90px);width:202px;height:27px}#message .section-material{left:-43px;width:58px;height:240px;top:42%}#faq .section-material{left:-61px;width:191px;height:46px}}



/* Red-only close crops, fully contained within the section whitespace. */
.section-material{object-fit:none!important;object-position:100% 80%!important}#story .section-material{left:56px;right:auto;top:auto;bottom:24px;width:200px;height:48px}#strength .section-material{left:auto;right:80px;top:22px;bottom:auto;width:150px;height:46px}#bridge .section-material{left:auto;right:56px;top:auto;bottom:24px;width:210px;height:48px}#eligibility .section-material{left:56px;right:auto;top:22px;bottom:auto;width:170px;height:40px}#work .section-material{left:auto;right:56px;top:auto;bottom:24px;width:140px;height:48px}#selection .section-material{left:calc(50% - 90px);right:auto;top:24px;bottom:auto;width:180px;height:36px}#message .section-material{left:auto;right:72px;top:24px;bottom:auto;width:156px;height:40px}#faq .section-material{left:56px;right:auto;top:auto;bottom:24px;width:190px;height:44px}@media(max-width:640px){#story .section-material{left:24px;bottom:16px;width:132px;height:28px}#strength .section-material{right:64px;top:12px;width:98px;height:28px}#bridge .section-material{right:24px;bottom:16px;width:136px;height:30px}#eligibility .section-material{left:24px;top:12px;width:112px;height:26px}#work .section-material{right:24px;bottom:16px;width:96px;height:28px}#selection .section-material{left:calc(50% - 60px);top:13px;width:120px;height:24px}#message .section-material{left:auto;right:64px;top:13px;width:102px;height:26px}#faq .section-material{left:24px;bottom:16px;width:124px;height:28px}}



/* Individual curved corner compositions: no polygon clipping or inset placement. */
.section-material{clip-path:none!important;object-fit:contain!important;object-position:center!important;mix-blend-mode:multiply;opacity:1}#bridge .section-material,#message .section-material{mix-blend-mode:screen}#story .section-material,#strength .section-material,#bridge .section-material,#eligibility .section-material,#work .section-material,#selection .section-material,#message .section-material,#faq .section-material{width:280px;height:140px;left:auto;right:auto;top:auto;bottom:auto}#story .section-material,#work .section-material{right:0;bottom:0}#strength .section-material,#selection .section-material{left:0;top:0}#bridge .section-material,#faq .section-material{left:0;bottom:0}#eligibility .section-material,#message .section-material{right:0;top:0}#strength,#eligibility,#selection,#message{padding-top:160px}#story,#bridge,#work,#faq{padding-bottom:160px}@media(max-width:640px){#story .section-material,#strength .section-material,#bridge .section-material,#eligibility .section-material,#work .section-material,#selection .section-material,#message .section-material,#faq .section-material{width:200px;height:100px}#strength,#eligibility,#selection,#message{padding-top:116px}#story,#bridge,#work,#faq{padding-bottom:116px}}
.section-material,#bridge .section-material,#message .section-material{mix-blend-mode:normal!important}.section-material{object-fit:cover!important;object-position:center!important}

/* Comments 15–20: supplied photos and attachment fields. */
.story-photo{height:auto!important;aspect-ratio:960/1378}.story-photo img{object-position:center!important}.message-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px;align-items:start}.message-photos img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain}.message-photos img:nth-child(2){margin-top:24px}@media(max-width:600px){.message-photos{gap:12px;margin:28px 0 32px}.message-photos img:nth-child(2){margin-top:20px}}


/* ==========================================================================
   ここから WordPress 実装用の追加（re-）
   ========================================================================== */
/* ヘッダー（エンターテイナー採用: Figma header 243:1082 / 243:1269） */
.re-header { background: #101012; color: #fff; border-bottom: 1px solid #323236; position: relative; z-index: 70; }
.re-header__in { max-width: 1016px; margin: 0 auto; padding: 0 20px; height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.re-header__brand { display: flex; align-items: center; gap: 10px; color: #fff; min-width: 0; }
.re-header__logo { display: block; padding: 4px 6px; }
.re-header__logo img { width: 102px; height: auto; }
.re-header__brand small { display: block; margin-top: 2px; padding-left: 6px; font-family: var(--rc-en); font-size: 6px; letter-spacing: .16em; color: #B9B9BE; line-height: 1.9; white-space: nowrap; }
.re-header__label { border-left: 1px solid #55555A; padding-left: 10px; font-size: 8px; font-weight: 700; line-height: 1.7; white-space: nowrap; }
.re-header__label span { display: block; font-family: var(--rc-en); color: #F07070; letter-spacing: .12em; }
.re-header__nav { display: none; position: absolute; top: 74px; left: 0; right: 0; flex-direction: column; background: #111113; border-bottom: 1px solid #44444B; padding: 12px 24px 24px; }
.re-header__nav.is-open { display: flex; }
.re-header__nav > a:not(.re-header__btn) { padding: 14px 0; border-bottom: 1px solid #44444B; font-size: 13px; font-weight: 700; }
.re-header__btn { display: inline-flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; height: 48px; padding: 0 18px; background: #fff; color: var(--rc-red); font-size: 12px; font-weight: 700; }
.re-header__btn svg { width: 18px; height: 18px; }
.re-header__toggle { display: block; width: 44px; height: 44px; padding: 10px; border: 0; background: none; margin-right: -10px; }
.re-header__toggle span { display: block; height: 1px; background: #fff; margin: 7px 0; transition: transform .2s; }
.re-header__toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
.re-header__toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
@media (min-width: 768px) {
	.re-header__in { height: 86px; padding: 0 32px; }
	.re-header__brand { gap: 14px; }
	.re-header__logo { padding: 7px 9px; }
	.re-header__logo img { width: 126px; height: auto; }
	.re-header__brand small { font-size: 7px; padding-left: 9px; }
	.re-header__label { padding-left: 15px; font-size: 9px; }
	.re-header__nav { display: flex; position: static; flex-direction: row; align-items: center; gap: 18px; background: none; border: 0; padding: 0; }
	.re-header__nav > a:not(.re-header__btn) { padding: 0; border: 0; font-size: 12px; }
	.re-header__btn { margin: 0 0 0 0; height: 42px; padding: 0 18px; font-size: 10px; }
	.re-header__toggle { display: none; }
}

/* 移植元のヘッダー高さに依存していた余白の調整 */
.re-main .hero .container { min-height: 840px; }
@media (min-width: 768px) { .re-main .hero .container { min-height: 936px; } }
.re-main .section-number { font-family: var(--rc-en); }

/* 選考フロー（Figma 99:2 SELECTION: 2ステップ） */
.re-steps { margin-top: 32px; }
.re-steps li { list-style: none; padding: 0 0 16px; border-bottom: 1px solid #CCCCD1; }
.re-steps li + li { margin-top: 24px; }
.re-steps__no { display: block; font-size: 25px; font-weight: 700; color: #E30912; line-height: 1.7; }
.re-steps__ttl { margin-top: 4px; font-size: 19px; font-weight: 700; color: var(--rc-ink); line-height: 1.7; }
.re-steps__txt { margin-top: 10px; font-size: 13px; line-height: 1.7; color: var(--rc-ink); }
@media (min-width: 768px) {
	.re-steps { margin-top: 48px; display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; }
	.re-steps li + li { margin-top: 0; }
	.re-steps__ttl { font-size: 20px; }
}
.re-main .flow-heading .flow-badge { border-color: var(--rc-red); }

/* 募集要項（新卒トップの rs-info と同じ構造。エンターテイナー採用は白背景） */
.re-info { background: #fff; padding: 20px 0 32px; }
.re-info .rs-label { margin-top: 42px; }
.re-main .rs-table div, .re-main .rs-req div { box-sizing: border-box; }
@media (min-width: 768px) { .re-info { padding: 24px 0 32px; } }

/* 会社説明会バンドは rs-seminar を流用 */

/* ---------- 応募フォーム（Figma 99:903 / 103:2922） ---------- */
.ref-page { padding: 36px 0 24px; }
.ref-narrow { width: 100%; max-width: 632px; margin: 0 auto; padding: 0 24px; }
.ref-lead { margin-top: 20px; color: #666666; font-size: 14px; line-height: 1.7; }
.ref-form { margin-top: 36px; }
.ref-grid { display: grid; grid-template-columns: 1fr; gap: 16px 18px; }
.ref-field { min-width: 0; }
.ref-field--full { grid-column: 1 / -1; }
.ref-label { display: flex; align-items: baseline; gap: 4px; font-size: 12px; font-weight: 500; line-height: 1.9; color: #171719; }
.ref-label small { font-size: 9px; font-weight: 500; color: var(--rc-red); }
.ref-field input[type=text], .ref-field input[type=email], .ref-field input[type=number], .ref-field select, .ref-field textarea { width: 100%; height: 50px; border: 1px solid #C9C9CE; border-radius: 0; background: #fff; color: #171719; padding: 0 13px; font-size: 16px; line-height: 1.5; -webkit-appearance: none; appearance: none; }
.ref-field textarea { height: 110px; padding: 12px 13px; resize: vertical; line-height: 1.65; }
.ref-field ::placeholder { color: #777780; }
.ref-select { position: relative; }
.ref-select::after { content: ""; position: absolute; right: 14px; top: 50%; width: 8px; height: 8px; border-right: 1.5px solid #62626D; border-bottom: 1.5px solid #62626D; transform: translateY(-70%) rotate(45deg); pointer-events: none; }
.ref-select select { padding-right: 36px; }
.ref-field.is-error input, .ref-field.is-error select, .ref-field.is-error textarea, .ref-field.is-error .ref-file { border-color: #B01818; }
.ref-help { margin-top: 6px; font-size: 10px; line-height: 1.9; color: #62626D; }
.ref-desc { margin: 4px 0 8px; font-size: 12px; line-height: 1.9; color: #62626D; }
.ref-file { display: flex; align-items: center; gap: 12px; padding: 13px; border: 1px solid #C9C9CE; background: #fff; min-width: 0; cursor: pointer; }
.ref-file input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.ref-file__btn { flex: none; padding: 9px 11px; border: 1px solid #171719; font-size: 11px; font-weight: 500; white-space: nowrap; }
.ref-file__name { min-width: 0; font-size: 10px; line-height: 1.7; color: #62626D; overflow-wrap: anywhere; }
.ref-file:focus-within { outline: 2px solid var(--rc-red); outline-offset: 2px; }
.ref-consent { margin-top: 22px; display: flex; align-items: center; gap: 10px; font-size: 14px; line-height: 1.8; }
.ref-consent input { width: 22px; height: 22px; accent-color: var(--rc-red); flex: none; margin: 0; }
.ref-consent a { color: var(--rc-red); text-decoration: underline; }
.ref-consent small { margin-left: auto; font-size: 11px; font-weight: 700; color: var(--rc-red); white-space: nowrap; }
.ref-consent.is-error { color: #B01818; }
.ref-submit { margin-top: 16px; }
.ref-submit button { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 58px; padding: 0 16px 0 17px; background: var(--rc-red); border: 1px solid var(--rc-red); color: #fff; font-size: 11px; font-weight: 700; line-height: 1.7; }
.ref-submit button svg { width: 24px; height: 24px; }
.ref-submit button:hover { background: #AB1515; border-color: #AB1515; }
.ref-back { display: inline-block; margin-top: 24px; font-size: 14px; color: #666666; line-height: 1.7; text-decoration: underline; }
.ref-error { margin-top: 6px; color: #B01818; font-size: 12px; font-weight: 700; line-height: 1.6; }
.ref-photo { margin-top: 10px; width: 100%; max-width: 532px; height: auto; border: 1px solid #DFDDDA; }
@media (min-width: 768px) {
	.ref-page { padding: 56px 0 56px; }
	.ref-narrow { padding: 0; width: calc(100% - 48px); }
	.ref-lead { margin-top: 20px; }
	.ref-form { margin-top: 36px; }
	.ref-grid { grid-template-columns: 1fr 1fr; gap: 17px 18px; }
	.ref-field input[type=text], .ref-field input[type=email], .ref-field input[type=number], .ref-field select { height: 47px; font-size: 14px; }
	.ref-field textarea { font-size: 14px; }
	.ref-file__btn { font-size: 12px; padding: 10px 12px; }
	.ref-file__name { font-size: 11px; }
	.ref-submit button { font-size: 12px; padding: 0 26px; }
}
.re-main .facts .container { grid-template-columns: 1fr 1fr; }
.re-main .facts-note { grid-column: 1 / -1; margin-top: 20px; font-size: 12px; line-height: 1.7; color: #D1D1D6; }
@media (min-width: 768px) { .re-main .facts .container { grid-template-columns: 1fr 1fr 1.4fr 1.4fr; } .re-main .facts-note { font-size: 13px; margin-top: 24px; } }

/* 移植元の .container 系ルール（親セレクタ付き） */
.re-main .hero .container{position:relative;z-index:2;padding-top:64px;padding-bottom:0}
.re-main .facts .container{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.4fr;gap:0;padding-top:28px;padding-bottom:31px}
.re-main .entry .container{position:relative;z-index:2}
@media(max-width:1150px){.re-main .hero .container{padding-top:50px}}
@media(max-width:900px){.re-main .facts .container{grid-template-columns:repeat(4,1fr);padding-top:25px;padding-bottom:27px}}
@media(max-width:640px){.re-main .hero .container{padding-top:33px}}
@media(max-width:640px){.re-main .facts .container{grid-template-columns:1fr 1fr;gap:23px 0;padding-top:25px;padding-bottom:27px}}
@media print{.re-main .hero .container{padding-top:30px}}
.re-main .hero .container{min-height:936px;padding-top:54px;padding-bottom:22px;display:flex;flex-direction:column;align-items:flex-start;z-index:2}
.re-main .entry .container{z-index:2}
@media(max-width:640px){.re-main .hero .container{min-height:840px;padding-top:38px;padding-bottom:22px}}
.re-main .section>.container{position:relative;z-index:1}

.re-main .project-num { white-space: nowrap; }
.re-main .story-figure::before { display: none; }
.re-main .story-figure { padding: 0; }
/* 進行表示（Figma 99:903: 下線式） */
.ref-page .rf-progress { background: none; padding: 0; gap: 12px; border-bottom: 0; }
.ref-page .rf-progress li { padding: 0 0 8px; border-bottom: 2px solid transparent; color: #808080; }
.ref-page .rf-progress li.is-current { border-bottom-color: #D11212; color: #D11212; }
@media (max-width: 640px) { .re-main .project { grid-template-columns: 44px 1fr; } }

.re-main .faq-list summary .q { font-family: "Archivo", sans-serif; font-weight: 500; }
.re-main .faq-list details[open] .faq-plus { transform: none; }
.re-main .signature strong { font-family: "Zen Kaku Gothic New", sans-serif; font-weight: 700; }
.re-main .link-arrow, .re-main .story-line { font-weight: 700; }
.re-info { padding-top: 0; padding-bottom: 46px; }
.re-info .rs-label { margin-top: 42px; }
.re-main #work { padding-bottom: 95px; }
@media (min-width: 768px) { .re-info { padding-top: 30px; } .re-info .rs-label { margin-top: 62px; } }
.ref-grid { row-gap: 24px; }
.ref-consent { margin-top: 26px; }
.ref-back { margin-top: 24px; }
.ref-submit { margin-top: 37px; }
.ref-field--photo { margin-top: -8px; }
@media (min-width: 768px) { .ref-consent { margin-top: 22px; } .ref-back { margin-top: 25px; } .ref-submit { margin-top: 36px; } .ref-field--photo { margin-top: -12px; } .re-main #work { padding-bottom: 160px; } }
.ref-lead { margin-top: 35px; }
@media (min-width: 768px) { .ref-grid { row-gap: 29px; } .ref-lead { margin-top: 20px; } }

/* 2026-09-25 エンターテイナー応募フォーム: 選考フローと右サイドバー（新卒採用エントリーと同じ構成） */
.ref-flow { margin-top: 28px; padding: 20px 0 4px; border-top: 1px solid #E5E5E5; }
.ref-flow__label { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: 13px; font-weight: 700; line-height: 1.7; }
.ref-flow__label span { padding: 3px 8px; border: 1px solid var(--rc-red); color: var(--rc-red); font-size: 10px; font-weight: 700; }
.ref-flow .re-steps { margin-top: 16px; }
.ref-flow .re-steps__no { font-size: 20px; }
.ref-flow .re-steps__ttl { font-size: 15px; }
.ref-flow .re-steps__txt { font-size: 12px; color: #62626D; }
.ref-main { min-width: 0; }
.ref-aside { display: block; margin-top: 48px; }
.ref-aside .rf-guide__box--docs { display: block; }
@media (max-width: 767px) {
	.ref-aside .rf-summary, .ref-aside .rf-guide { margin-left: 0; margin-right: 0; }
	.ref-aside .rf-guide { margin-top: 12px; }
}
@media (min-width: 768px) {
	.ref-narrow.ref-layout { max-width: 944px; display: grid; grid-template-columns: minmax(0, 1fr) 240px; column-gap: clamp(24px, 5vw, 56px); align-items: start; }
	.ref-aside { margin-top: 0; position: sticky; top: 24px; }
	.ref-flow .re-steps { margin-top: 18px; column-gap: 20px; }
	.ref-flow .re-steps__ttl { font-size: 15px; }
}
@media (max-width: 767px) { .ref-aside .rf-guide__box + .rf-guide__box { margin-top: 24px; } }
