@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
body.cfr-recruit{--navy:#002060;--blue:#0069ef;--ink:#263954;--muted:#60728b;--line:#dce6f1;--soft:#f3f8ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body.cfr-recruit{margin:0;color:var(--ink);background:#fff;font:18px/1.95 'Noto Sans JP',sans-serif}h1,h2,h3,h4,p,ul,ol{margin:0}h1,h2,h3,h4{color:var(--navy);line-height:1.6;letter-spacing:.015em}h2{font-size:34px}h3{font-size:22px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ffa937}button{cursor:pointer}img{max-width:100%;display:block}svg{width:24px;height:24px;flex-shrink:0}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 80px));margin:auto}.narrow{max-width:1050px}.section{padding:88px 0}.soft{background:var(--soft)}.eyebrow{font-family:Manrope,sans-serif;color:var(--blue);font-size:15px;font-weight:800;letter-spacing:.15em;line-height:1.6;margin-bottom:16px}.section-title{border-left:3px solid var(--blue);padding-left:22px;margin-bottom:27px}.section-title .eyebrow{margin-bottom:10px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:14px 27px;background:var(--blue);border:1px solid var(--blue);color:white;font-size:17px;font-weight:700;border-radius:3px;line-height:1.6;transition:.2s}.button:hover{background:#004baa;transform:translateY(-2px)}.button svg{width:21px}.button.outline{color:var(--navy);background:white;border-color:var(--navy)}.button.outline:hover{background:var(--soft)}.text-link{display:inline-flex;align-items:center;gap:18px;color:var(--blue);font-weight:700;font-size:17px}.text-link:hover{text-decoration:underline}.header{position:sticky;top:0;z-index:30;background:#fffffff5;border-bottom:1px solid #e5edf5;backdrop-filter:blur(14px)}.header-inner{max-width:1440px;padding:0 40px;margin:auto;height:86px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:15px;flex-shrink:0}.brand img{width:200px;height:auto}.brand span{border-left:1px solid #cfdaea;padding-left:15px;color:var(--navy);font-size:14px;font-weight:700;white-space:nowrap}nav{display:flex;align-items:center;gap:27px}nav>a:not(.button){font-size:16px;font-weight:700;position:relative;white-space:nowrap}nav>a[aria-current]::after{content:'';height:3px;background:var(--blue);position:absolute;bottom:-15px;left:0;right:0}nav .button{min-height:43px;padding:11px 20px;gap:20px}.menu-toggle{display:none}.hero{position:relative;min-height:615px;overflow:hidden;background:linear-gradient(110deg,#f2f9ff,#e2eff8 50%,#93bedc)}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f3f9fff5 0%,#f3f9ffeb 33%,#eef7ff90 50%,transparent 75%)}.hero-inner{position:relative;z-index:1;padding-top:65px;padding-bottom:66px}.hero h1{font-size:clamp(39px,4vw,56px);font-weight:800;line-height:1.5;letter-spacing:.035em;margin-bottom:22px}.hero h1 span{color:var(--blue)}.hero-description{max-width:490px;font-size:17px;line-height:2.1;margin-bottom:30px}.hero .button{min-width:245px}.hero-caption{position:absolute;right:0;top:245px;color:white;text-shadow:0 2px 20px #00206060}.hero-caption>span{font-family:Georgia,serif;font-style:italic;font-size:clamp(32px,4.3vw,65px);letter-spacing:-.05em}.hero-caption p{font-size:18px;text-align:right;letter-spacing:.12em}.scroll-hint{display:flex;align-items:center;gap:18px;font:13px Manrope,sans-serif;letter-spacing:.16em;margin-top:48px}.scroll-hint span{font-size:26px;color:var(--blue)}.features{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 0;gap:22px}.features>div{display:flex;align-items:center;gap:16px;border-right:1px solid var(--line);padding-right:16px}.features>div:last-child{border:0}.features svg{width:39px;height:39px;color:var(--blue)}.features p{font-size:15px;font-weight:700;color:var(--navy);line-height:1.8}.business-intro,.two-column{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.business-intro>.section-title{margin-bottom:0}.business-intro>p{padding-top:20px}.business-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:42px}.business-card{background:white;border:1px solid var(--line);border-radius:5px;overflow:hidden}.card-visual{height:180px;position:relative;display:flex;align-items:center;justify-content:center;color:var(--blue);background:linear-gradient(130deg,#e2efff,#f5faff);overflow:hidden}.card-visual::after{content:'';position:absolute;inset:30px 100px;border:1px solid #a4c8f2;transform:rotate(-25deg);box-shadow:15px 15px 0 #0069ef08,30px 30px 0 #0069ef08}.card-visual.shield{background:linear-gradient(130deg,#092d6c,#0e548d);color:#a2d8ff}.card-visual.shield::after{border-color:#65baff44}.card-visual>svg{width:70px;height:70px;z-index:1}.card-visual>span{position:absolute;left:25px;top:18px;font:15px Manrope;letter-spacing:.1em}.visual-label{position:absolute;right:25px;bottom:17px;font:14px Manrope;letter-spacing:.17em}.card-body{padding:26px 32px 29px}.card-body h3{margin-bottom:10px}.card-body p{font-size:17px;margin-bottom:22px}.business-bridge{text-align:center;margin-top:35px;font:14px Manrope;color:#7288a7;letter-spacing:.2em}.business-bridge span{font-size:24px;color:var(--blue);margin:0 25px}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.approach-grid{margin-top:40px}.approach-grid article{position:relative;padding:30px 25px;border-top:1px solid #9ab8df;background:#f7faff}.approach-grid svg{width:40px;height:40px;color:var(--blue);margin-bottom:20px}.step-num{position:absolute;right:24px;top:24px;font:36px Manrope;color:#d0def0}.approach-grid h3{font-size:20px;margin-bottom:12px}.approach-grid p{font-size:17px}.case{margin-top:50px;background:var(--navy);color:#e0e9f7;border-radius:4px;padding:40px;display:grid;grid-template-columns:1.6fr 1fr;gap:60px}.case .eyebrow{color:#7db8ff}.case h2{color:white;font-size:28px}.case p{font-size:17px}.case-process{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px}.case-process>span{width:100%;padding:13px 20px;border:1px solid #9fc6f140;font:15px Manrope;color:#8cb9f7;display:flex;align-items:center;gap:22px}.case-process b{font:600 18px 'Noto Sans JP';color:white}.case-process i{color:#8cb9f7;font-style:normal}.support-grid{margin-top:42px}.support-grid article{background:#fff;border:1px solid var(--line);border-radius:5px;padding:30px}.support-grid svg{width:46px;height:46px;color:var(--blue);margin-bottom:18px}.support-grid h3{font-size:20px;min-height:58px;margin-bottom:16px}.support-grid .eyebrow{font-size:13px}.support-grid ul{padding-left:18px;font-size:16px;line-height:2.2}.career{align-items:center}.career-list{background:var(--soft);padding:35px;border:1px solid var(--line);border-radius:4px}.career-list h3{font-size:19px;margin-bottom:22px}.career-list ul{padding:0;list-style:none}.career-list li{display:flex;gap:13px;font-size:17px;margin:11px 0}.career-list li span{color:var(--blue);font-weight:bold}.vision{position:relative;padding:80px 0;background:#eaf3fd}.vision p{font-size:17px}.vision-quote{position:relative;align-self:center;padding:30px 0 30px 40px;border-left:1px solid #bed4ef}.vision-quote>span{font:90px Georgia;color:#92b8e8;position:absolute;left:35px;top:-45px}.vision-quote h3{font-size:25px;line-height:2}.vision-quote p{font:13px Manrope;color:#5785bf;letter-spacing:.2em;margin-top:25px}.closing{background:linear-gradient(100deg,#002060f2,#004b88dc),url('city.jpg') center 65%/cover;color:white;padding:57px 0}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.closing h2{color:white;font-size:34px;margin-bottom:14px}.closing p:not(.eyebrow){font-size:16px}.closing .eyebrow{color:#8bc3ff;font-size:13px}.closing .button{min-width:245px}.footer-grid{padding:48px 0;display:grid;grid-template-columns:1.25fr .7fr 1fr 1.4fr;gap:24px;align-items:start;font-size:14px;line-height:1.9}.footer-grid .brand{display:block}.footer-grid .brand img{width:190px}.footer-grid .brand span{display:block;border:0;padding:10px 0}.footer-grid small{display:block;color:#7b8fa8;letter-spacing:.1em;font:13px Manrope;margin-bottom:10px}.footer-bottom{padding:18px 0 25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px;color:#7c8ba0}.subhero{position:relative;background:linear-gradient(90deg,#f1f8fff5 0%,#eff7fff5 58%,#e7f3ff65),url('city.jpg') right center/cover;padding:28px 0 55px}.breadcrumb{display:flex;gap:14px;font-size:14px;color:#6f829d;margin-bottom:35px}.subhero h1{font-size:43px;margin-bottom:17px}.subhero h2{font-size:28px;margin-bottom:18px}.subhero>.container>p:not(.breadcrumb):not(.eyebrow){max-width:680px;font-size:17px}.subhero .eyebrow{margin-bottom:8px}.subhero .button{margin-top:25px}.flow{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:10px 0 0;gap:30px}.flow li{position:relative;border-top:2px solid var(--blue);padding-top:22px}.flow li:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:48px;color:var(--blue)}.flow li>span{font:16px Manrope;color:var(--blue)}.flow h3{font-size:21px;margin:10px 0}.flow p{font-size:16px}.job-table{border-top:2px solid var(--navy);background:#fff}.job-row{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line)}.job-row>h3{background:#eaf2fc;padding:28px 25px;font-size:18px}.job-row>div{padding:26px 30px;font-size:17px}.job-row p+p{margin-top:13px}.job-row h4{margin:24px 0 12px;font-size:18px}.note{font-size:15px!important;color:#6e7f96;background:#f3f6fa;padding:15px;margin-top:18px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;align-items:start}.faq-grid details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:15px;font-size:17px;font-weight:600;padding:23px 0;line-height:1.8;color:var(--navy)}summary::-webkit-details-marker{display:none}summary>span{color:var(--blue);font:700 22px Manrope}summary b{margin-left:auto;color:var(--blue);font-size:21px;font-weight:400}details[open] summary b{transform:rotate(45deg)}details>p{font-size:16px;padding:0 15px 24px 38px}.entry-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:65px}.demo-notice{padding:12px 16px;background:#f3f7fc;border-left:3px solid #90aacd;font-size:15px;margin-bottom:22px}.form-intro{font-size:16px;margin-bottom:30px}.required,.optional{font-size:13px;padding:3px 7px;border-radius:2px;vertical-align:middle;display:inline-block;line-height:1.5;margin-left:8px;font-weight:500}.required{color:white;background:var(--blue)}.optional{color:#65768f;background:#eaf0f7}.form-field{margin:0 0 25px;padding:0;border:0;min-width:0}.form-field>label,.form-field>legend{display:block;font-size:17px;font-weight:600;color:var(--navy);width:100%}input:not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;background:#fafcff;border:1px solid #ced9e8;border-radius:3px;min-height:49px;margin-top:10px;padding:11px 14px;font-size:17px;color:var(--ink);font-weight:400}input:focus,select:focus,textarea:focus{outline:2px solid #6aabff;outline-offset:1px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#929fb1}.birth-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.upload{border:1px dashed #aec5e1;background:#f8fbff;margin-top:12px;padding:20px;display:flex;flex-direction:column;align-items:center;font-weight:400;font-size:16px;cursor:pointer}.upload small{color:#7b8aa0;font-size:14px}.upload-icon{font-size:28px;color:var(--blue)}.upload input{font-size:15px;width:100%;margin-top:14px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:16px}.consent input{margin-top:7px;width:16px;height:16px;accent-color:var(--blue)}.consent a{text-decoration:underline}.entry-layout form>.button{margin-top:24px;min-width:280px}.entry-sidebar .section-title h2{font-size:24px}.sidebar-flow{list-style:none;padding:0 0 30px}.sidebar-flow li{position:relative;padding:0 0 25px 43px;border-left:1px solid var(--line);margin-left:13px}.sidebar-flow li:last-child{border:0;padding-bottom:0}.sidebar-flow li>span{position:absolute;left:-14px;top:0;background:var(--blue);color:#fff;border-radius:50%;width:28px;height:28px;display:grid;place-content:center;font:14px Manrope}.sidebar-flow h3{font-size:18px;margin-bottom:6px}.sidebar-flow p{font-size:15px}.sidebar-message{background:var(--soft);padding:28px;margin:20px 0 30px;border:1px solid var(--line)}.sidebar-message h3{font-size:21px;margin-bottom:14px}.sidebar-message p,.contact-box p{font-size:15px}.contact-box{border-top:1px solid var(--line);padding-top:25px}.contact-box h3{font-size:19px;margin-bottom:12px}.contact-box a{margin-top:18px;font-size:15px}#form-error{color:#b52b39;font-size:16px;margin-top:18px}#confirmation-values{margin:25px 0}#confirmation-values dt{background:var(--soft);font-size:16px;font-weight:700;padding:10px 15px;color:var(--navy)}#confirmation-values dd{margin:0;padding:12px 15px 20px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:17px}.confirmation-actions{display:flex;flex-wrap:wrap;gap:15px}.confirmation-actions .button{font-size:15px}.complete-icon{font-size:50px;color:var(--blue)}#demo-complete p{margin:20px 0}.skip{position:fixed;top:-60px;left:20px;z-index:100;background:white;color:var(--navy);padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1600px){.hero{min-height:680px}.hero-inner{padding-top:90px}}@media(max-width:1150px){.header-inner{padding:0 25px}.brand img{width:175px}.brand span{font-size:13px;gap:10px}nav{gap:18px}nav>a:not(.button){font-size:14px}.hero-caption{right:0;top:340px}.hero-caption>span{font-size:42px}.features{gap:15px}.features>div{gap:10px}.business-intro,.two-column{gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.entry-layout{gap:35px}}@media(max-width:1050px){.header-inner{height:72px}.header .brand img{width:185px}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:12px;border:0;background:transparent}.menu-toggle span{display:block;width:23px;height:2px;background:var(--navy)}nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:20px 30px 30px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #00206010}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav>a:not(.button){font-size:17px;padding:16px 0;border-bottom:1px solid var(--line)}nav>a[aria-current]::after{display:none}nav .button{margin-top:20px}.container{width:calc(100% - 48px)}.hero{min-height:630px}.hero h1{font-size:44px}.hero::after{background:linear-gradient(90deg,#f3f9fff2,#f3f9ffd9 45%,#eef7ff40)}.hero-caption{top:auto;bottom:48px;right:0}.hero-caption>span{font-size:34px}.hero-caption p{font-size:14px}.hero-description{max-width:450px}.features{grid-template-columns:1fr 1fr;padding:28px 0;gap:24px}.features>div:nth-child(2){border:0}.features p{font-size:15px}.business-intro,.two-column{grid-template-columns:1fr;gap:20px}.section{padding:65px 0}.business-intro>p{padding-top:0}.business-intro h2 br:nth-child(2){display:none}.three-grid{gap:14px}.approach-grid article,.support-grid article{padding:24px 18px}.support-grid h3{font-size:18px}.case{padding:30px;gap:30px;grid-template-columns:1fr}.case-process{flex-direction:row}.case-process>span{flex-direction:column;gap:10px;text-align:center}.case-process b{font-size:16px;line-height:1.6}.case-process i{transform:rotate(-90deg)}.vision-quote{margin-top:30px}.closing-inner{align-items:flex-start;flex-direction:column;gap:25px}.entry-layout{grid-template-columns:1fr}.entry-sidebar{border-top:1px solid var(--line);padding-top:40px}.faq-grid{grid-template-columns:1fr}.job-row{grid-template-columns:150px 1fr}.job-row>h3{padding:25px 20px}.job-row>div{padding:25px}.flow{gap:22px}.flow h3{font-size:19px}.subhero h2{font-size:25px}.entry-sidebar .sidebar-flow{display:grid;grid-template-columns:1fr 1fr;gap:20px}}@media(max-width:560px){body.cfr-recruit{font-size:17px}.container{width:calc(100% - 40px)}.header-inner{padding:0 20px}.brand{gap:10px}.header .brand img{width:166px}.brand span{font-size:12px;padding-left:10px}.hero-inner{padding:40px 0 120px}.hero{min-height:680px}.hero h1{font-size:38px;line-height:1.6;letter-spacing:.01em}.hero .eyebrow{font-size:13px}.hero-image{object-position:64% center}.hero::after{background:linear-gradient(180deg,#f3f9fff5 0%,#f3f9ffec 42%,#e8f2ff70 70%,#00206020)}.hero-description{font-size:16px;line-height:2.1}.hero .button{min-width:225px}.hero-caption{bottom:22px;text-align:right}.hero-caption>span{font-size:39px}.hero-caption p{font-size:13px}.scroll-hint{margin-top:30px}.features{gap:22px 10px}.features>div{padding-right:7px;gap:8px}.features svg{width:27px;height:27px}.features p{font-size:13px}.section{padding:55px 0}h2{font-size:26px}.section-title{padding-left:15px;margin-bottom:23px}.eyebrow{font-size:13px}.business-cards{grid-template-columns:1fr;gap:22px;margin-top:30px}.card-visual{height:150px}.card-body{padding:25px}.business-bridge{font-size:12px;letter-spacing:.1em}.business-bridge span{margin:0 12px}.three-grid{grid-template-columns:1fr;gap:20px}.approach-grid article{padding:26px}.approach-grid h3{font-size:20px}.approach-grid svg{margin-bottom:10px}.case{padding:25px;margin-top:32px}.case h2{font-size:23px}.case-process{flex-direction:column}.case-process>span{flex-direction:row;justify-content:flex-start;text-align:left}.case-process i{transform:none}.support-grid{margin-top:25px}.support-grid article{padding:25px}.support-grid h3{min-height:0;margin-bottom:14px}.support-grid svg{float:right;width:40px;height:40px}.support-grid ul{font-size:16px}.career-list{padding:25px}.career-list h3{font-size:18px}.career-list li{font-size:15px}.vision{padding:55px 0}.vision-quote{padding:15px 0 15px 24px}.vision-quote>span{left:20px}.vision-quote h3{font-size:21px}.closing{padding:40px 0}.closing h2{font-size:28px}.closing .button{width:100%}.closing p:not(.eyebrow){font-size:15px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px;padding:35px 0}.footer-grid>.brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid .brand{display:flex}.footer-grid .brand span{padding-left:13px;border-left:1px solid var(--line)}.footer-bottom{flex-direction:column;gap:12px}.subhero{padding:20px 0 40px}.breadcrumb{margin-bottom:25px;font-size:13px}.subhero h1{font-size:36px}.subhero h2{font-size:22px}.subhero>.container>p:not(.breadcrumb):not(.eyebrow){font-size:16px}.flow{grid-template-columns:1fr;gap:24px}.flow li{padding:5px 0 5px 55px;border:0}.flow li>span{position:absolute;left:0;top:10px;width:35px;height:35px;border:1px solid var(--blue);display:grid;place-content:center}.flow li:not(:last-child)::after{display:none}.flow h3{margin:0 0 5px}.flow p{font-size:15px}.job-row{grid-template-columns:1fr}.job-row>h3{padding:15px 20px}.job-row>div{padding:22px 20px;font-size:16px}.job-row h4{font-size:17px}summary{font-size:16px;gap:12px}.entry-layout .section-title h2{font-size:25px}.entry-sidebar .sidebar-flow{grid-template-columns:1fr}.form-intro{font-size:15px}.entry-layout form>.button{width:100%;min-width:0}.consent{font-size:15px}.entry-layout{gap:40px}.confirmation-actions{flex-direction:column}.confirmation-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

body.cfr-recruit.admin-bar .header{top:32px}@media(max-width:782px){body.cfr-recruit.admin-bar .header{top:46px}}@media(max-width:600px){body.cfr-recruit.admin-bar .header{top:0}}


/* Contact Form 7 — recruitment form only */
body.cfr-recruit .cfr-cf7 .wpcf7-form-control-wrap{display:block;width:100%}
body.cfr-recruit .cfr-cf7 .form-field>label{margin-bottom:10px}
body.cfr-recruit .cfr-cf7 .form-field input:not([type=file]),
body.cfr-recruit .cfr-cf7 select,
body.cfr-recruit .cfr-cf7 textarea{margin-top:0}
body.cfr-recruit .cfr-cf7 .upload{margin-top:0;font-weight:400}
body.cfr-recruit .cfr-cf7 .upload input[type=file]{margin-top:14px;min-height:0;border:0;background:none;padding:0;color:var(--ink)}
body.cfr-recruit .cfr-cf7 .upload input[type=file]::file-selector-button{padding:8px 12px;margin-right:10px;border:1px solid #ced9e8;background:#fff;border-radius:3px;color:var(--navy);cursor:pointer}
body.cfr-recruit .cfr-cf7 .wpcf7-not-valid{border-color:#b52b39!important}
body.cfr-recruit .cfr-cf7 .wpcf7-not-valid-tip{display:block;color:#b52b39;font-size:15px;font-weight:400;margin-top:7px}
body.cfr-recruit .cfr-cf7 .wpcf7-list-item{margin:0}
body.cfr-recruit .cfr-cf7 .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:10px;font-size:16px;line-height:1.9}
body.cfr-recruit .cfr-cf7 .wpcf7-acceptance input{margin-top:6px;flex:0 0 16px;width:16px;height:16px;accent-color:var(--blue)}
body.cfr-recruit .cfr-cf7 .wpcf7-acceptance a{text-decoration:underline;color:var(--navy)}
body.cfr-recruit .cfr-cf7 .cf7-submit{display:flex;align-items:center;gap:12px;margin-top:28px}
body.cfr-recruit .cfr-cf7 input.wpcf7-submit{width:auto;min-width:280px;min-height:54px;padding:14px 27px;background:var(--blue);color:#fff;border:1px solid var(--blue);font-size:17px;font-weight:700;cursor:pointer;margin:0;text-align:center}
body.cfr-recruit .cfr-cf7 input.wpcf7-submit:hover{background:#004baa}
body.cfr-recruit .cfr-cf7 input.wpcf7-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}
body.cfr-recruit .wpcf7 form .wpcf7-response-output{margin:25px 0 0;padding:15px 18px;font-size:16px;border-radius:3px}
body.cfr-recruit .wpcf7 form.sent .wpcf7-response-output{border-color:#438b70;background:#f0faf5}
body.cfr-recruit .wpcf7 form.invalid .wpcf7-response-output,
body.cfr-recruit .wpcf7 form.failed .wpcf7-response-output{border-color:#bb6570;background:#fff5f6}
@media(max-width:560px){body.cfr-recruit .cfr-cf7 input.wpcf7-submit{min-width:0;width:100%}body.cfr-recruit .cfr-cf7 .cf7-submit{flex-wrap:wrap}}

/* Readability adjustment: body 18px, mobile 17px; allow larger text to wrap. */
body.cfr-recruit .header-inner{gap:20px}
body.cfr-recruit .button{min-height:58px;white-space:normal}
body.cfr-recruit .hero-description{max-width:550px;line-height:2}
body.cfr-recruit .hero{min-height:680px}
body.cfr-recruit .hero-inner{padding-bottom:75px}
body.cfr-recruit .features{padding-block:34px}
body.cfr-recruit .features>div{align-items:flex-start}
body.cfr-recruit .features p{line-height:1.85}
body.cfr-recruit .support-grid h3{min-height:70px}
body.cfr-recruit .footer-grid{grid-template-columns:1.1fr .7fr 1.1fr 1.5fr;gap:26px}
body.cfr-recruit .footer-grid>div{overflow-wrap:anywhere}
body.cfr-recruit .entry-layout{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:48px}
/* More specific than the inline CF7 rules in cfi_entry.php. */
body.cfr-recruit .cfr-entry-form .wpcf7 form label{font-size:17px;line-height:1.9}
body.cfr-recruit .cfr-entry-form .wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]),
body.cfr-recruit .cfr-entry-form .wpcf7 select,
body.cfr-recruit .cfr-entry-form .wpcf7 textarea{font-size:17px;min-height:54px;line-height:1.8}
body.cfr-recruit .cfr-entry-form .wpcf7 textarea{min-height:180px}
body.cfr-recruit .cfr-entry-form .wpcf7 input[type=file]{font-size:15px;line-height:1.8}
body.cfr-recruit .cfr-entry-form .wpcf7 input[type=submit],
body.cfr-recruit .cfr-entry-form .wpcf7 button[type=submit]{font-size:17px;min-height:58px}
body.cfr-recruit .cfr-entry-form .wpcf7-acceptance label{font-size:16px}
body.cfr-recruit .cfr-entry-form .wpcf7-not-valid-tip{font-size:14px}
body.cfr-recruit .cfr-entry-form .wpcf7-response-output{font-size:16px}
@media(max-width:1150px){body.cfr-recruit .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1050px){
 body.cfr-recruit .entry-layout{grid-template-columns:1fr;gap:40px}
 body.cfr-recruit .hero-caption{top:auto;bottom:32px}
 body.cfr-recruit .footer-grid{grid-template-columns:1fr 1fr}
 body.cfr-recruit .support-grid h3{min-height:0}
}
@media(max-width:560px){
 body.cfr-recruit .hero{min-height:730px}
 body.cfr-recruit .hero-inner{padding-bottom:130px}
 body.cfr-recruit .hero h1{font-size:36px}
 body.cfr-recruit .hero-description{font-size:17px}
 body.cfr-recruit .hero-caption>span{font-size:33px}
 body.cfr-recruit .hero-caption p{font-size:13px}
 body.cfr-recruit .features{grid-template-columns:1fr;gap:20px;padding-block:30px}
 body.cfr-recruit .features>div{border-right:0;border-bottom:1px solid var(--line);padding:0 0 18px;gap:15px;align-items:center}
 body.cfr-recruit .features>div:last-child{border-bottom:0;padding-bottom:0}
 body.cfr-recruit .features p{font-size:16px}
 body.cfr-recruit .features svg{width:33px;height:33px}
 body.cfr-recruit .footer-grid{grid-template-columns:1fr;gap:24px}
 body.cfr-recruit .footer-grid>.brand,body.cfr-recruit .footer-grid>div:last-child{grid-column:auto}
 body.cfr-recruit .case{padding:24px 20px}
 body.cfr-recruit .case h2{font-size:23px}
 body.cfr-recruit .career-list{padding:24px 20px}
 body.cfr-recruit .business-bridge{letter-spacing:0}
}
