@charset "UTF-8";
:root{--paper:#f5f4f0;--white:#fff;--ink:#20231f;--muted:#65685f;--line:#d9dbd3;--accent:#c63326;--blue:#207e88;--header:88px;--gutter:clamp(22px,5.3vw,88px);font-synthesis:none;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.9 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}img{display:block;max-width:100%;height:auto}figure{margin:0}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{line-height:1.5}p{margin-bottom:1.6em}ul,ol{padding-left:1.5em}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:#f3bdb6;color:#161916}.wrap{width:min(1280px,100% - var(--gutter)*2);margin-inline:auto}.narrow{max-width:820px;margin-inline:auto}.section{padding-block:100px}.section-white{background:#fff}.section-dark{background:var(--ink);color:#fff}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;line-height:1.6;text-transform:uppercase;margin-bottom:20px}.eyebrow::before{content:"";display:inline-block;width:7px;height:7px;background:var(--accent);margin-right:12px;vertical-align:1px}.section-title{font-size:clamp(34px,5vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1.2;margin-bottom:14px}.section-title.en{font-family:Arial,sans-serif;font-weight:800;letter-spacing:-.055em}.section-jp{font-size:15px;font-weight:600;margin:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}.section-heading .text-link{margin-bottom:4px}.section-note{font-size:13px;color:var(--muted)}.lead{font-size:clamp(16px,1.6vw,20px);line-height:2}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.split-text p:last-child{margin-bottom:0}.split-photo{aspect-ratio:5/4;overflow:hidden}.split-photo img{width:100%;height:100%;object-fit:cover}.small-label{font-size:11px;letter-spacing:.08em;font-weight:600}.text-link{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600;padding:10px 0;border-bottom:1px solid color-mix(in srgb,currentColor 30%,transparent)}.text-link::after{content:"";position:absolute;left:0;bottom:-1px;width:28px;max-width:100%;height:2px;background:currentColor;transition:width .25s ease}.text-link:hover::after,.text-link:focus-visible::after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:56px;min-width:205px;padding:16px 26px;background:var(--ink);color:#fff;border:1px solid var(--ink);font-size:14px;font-weight:600;line-height:1.6;transition:background-color .2s,color .2s,border-color .2s}.button:hover,.button:focus-visible{background:#3b4039}.button-accent{background:var(--accent);border-color:var(--accent)}.button-accent:hover,.button-accent:focus-visible{background:#a82a20}.button-light{background:#fff;color:var(--ink);border-color:#fff}.button-light:hover,.button-light:focus-visible{background:#ecece7}.button-outline{background:transparent;color:inherit;border-color:currentColor}.button-outline:hover,.button-outline:focus-visible{background:#e5e7df;color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.skip-link{position:fixed;left:20px;top:0;z-index:1000;background:#fff;padding:12px;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:var(--header);padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(245,244,240,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:20px;flex-shrink:0}.brand img{width:177px;height:32px;object-fit:contain;filter:brightness(.16)}.brand-sub{border-left:1px solid var(--line);padding-left:20px;font:600 10px/1.5 Arial,sans-serif;letter-spacing:.12em}.site-nav{display:flex;align-items:center;gap:32px}.site-nav>a{font-size:13px;font-weight:600;line-height:1.5;padding-block:10px}.site-nav>a:hover,.site-nav>a[aria-current=page]{color:var(--accent)}.site-nav .nav-contact{border:1px solid var(--ink);padding:12px 22px}.site-nav .nav-recruit{display:flex;gap:12px;align-items:center}.nav-recruit::before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%}.menu-button{display:none;border:0;background:none;width:48px;height:48px;padding:10px;line-height:1}.menu-button span{display:block;height:1px;background:var(--ink);margin:7px 0}.menu-button small{font-size:9px;font-weight:700}.recruit-nav{display:flex;justify-content:center;gap:32px;overflow-x:auto;white-space:nowrap;padding:16px var(--gutter);background:#fff;border-bottom:1px solid var(--line);font-size:12px}.recruit-nav a[aria-current=page]{color:var(--accent);font-weight:700}
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;padding:72px var(--gutter) 48px}.hero-main{display:grid;grid-template-columns:1fr 1.15fr;gap:5%;align-items:center;max-width:1440px;margin:auto}.hero-copy{position:relative;z-index:2;padding-block:30px}.hero .eyebrow{color:#d6d8d0;margin-bottom:32px}.hero h1{font-size:clamp(38px,4.65vw,74px);letter-spacing:.01em;line-height:1.5;font-weight:700;margin:0 0 28px;word-break:keep-all}.hero-en{font:400 15px/1.8 Arial,sans-serif;color:#d2d4cb;letter-spacing:.03em}.hero-image{position:relative;aspect-ratio:1.15;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image::after{content:"";position:absolute;inset:0;border:1px solid #ffffff1f;pointer-events:none}.hero-image .image-caption{position:absolute;bottom:18px;right:20px;font:11px Arial,sans-serif;letter-spacing:.08em;color:#fff;text-shadow:0 1px 6px #000}.hero-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff30;margin-top:52px;padding-top:22px;color:#d2d4cb;font:11px/1.6 Arial,sans-serif;letter-spacing:.1em}.hero-index{display:flex;gap:20px;white-space:nowrap}.hero-index b{color:#fff}.hero-index a{border-bottom:1px solid #ffffff59;padding-bottom:3px;transition:border-color .2s,color .2s}.hero-index a:hover,.hero-index a:focus-visible{color:#fff;border-color:currentColor}.hero-copy .text-link{margin-top:24px}.hero-shape{position:absolute;width:400px;height:400px;border:1px solid #ffffff14;border-radius:50%;left:-220px;bottom:-200px}.newest{border-bottom:1px solid var(--line);display:grid;grid-template-columns:140px minmax(0,1fr);gap:28px;padding-block:25px;align-items:center}.newest .eyebrow{margin:0}.newest-body{display:flex;align-items:center;gap:26px;font-size:13px}.newest time{font:12px Arial,sans-serif;color:var(--muted);white-space:nowrap}.newest:hover .newest-title,.newest:focus-visible .newest-title{text-decoration:underline;text-underline-offset:5px}.newest-title{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.about-copy h2{font-size:clamp(25px,2.4vw,37px);line-height:1.8;letter-spacing:.03em;margin-bottom:30px}.about-copy p{color:#4a4d46}.about-visual{position:relative;padding:0 0 38px 35px}.about-visual img{aspect-ratio:4/3;object-fit:cover}.about-visual::before{content:"";position:absolute;left:0;bottom:0;width:76%;height:75%;background:#dfdfd6;z-index:-1}.about-visual figcaption{font:10px Arial,sans-serif;letter-spacing:.12em;position:absolute;right:0;bottom:12px}.display-word{font:800 clamp(65px,11vw,166px)/.95 Arial,sans-serif;letter-spacing:-.065em;color:#e6e7e0;margin:0 -4px 48px;white-space:nowrap;overflow:hidden}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.business-card{border-top:1px solid var(--line);padding-top:22px}.business-card .number{font:12px Arial,sans-serif;color:var(--accent)}.business-card .photo{aspect-ratio:16/10;overflow:hidden;margin-block:25px}.business-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.business-card:hover img{transform:scale(1.025)}.business-card h3{font-size:24px;margin-bottom:12px}.business-card p{font-size:14px;color:var(--muted);max-width:95%}.brand-name{font:800 40px Arial,sans-serif;letter-spacing:-.04em}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px}.news-card{min-width:0}.news-image{display:block;aspect-ratio:16/10;background:#e6e7e0;overflow:hidden;margin-bottom:20px}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.news-card:hover .news-image img{transform:scale(1.035)}.news-image.placeholder{display:flex;align-items:center;justify-content:center;font:800 26px Arial,sans-serif;letter-spacing:-.05em;color:#b6b9ae}.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:15px;font:12px/1.5 Arial,sans-serif;margin-bottom:12px}.news-meta time{color:var(--muted)}.tag{font:500 11px/1.5 sans-serif;padding:4px 9px;border:1px solid var(--line);border-radius:0}.news-card h3{font-size:16px;line-height:1.8;font-weight:600;margin:0;overflow-wrap:anywhere}.news-card a:hover h3{text-decoration:underline;text-underline-offset:4px}.news-card .news-excerpt{font-size:13px;margin-top:12px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.category-links{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}.category-links a{padding:9px 18px;border:1px solid var(--line);background:#fff;font-size:12px}.category-links a[aria-current=page],.category-links a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.topic-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.topic-list li{border-bottom:1px solid var(--line)}.topic-list a{display:grid;grid-template-columns:110px minmax(0,1fr);gap:24px;align-items:center;padding:24px 0}.topic-list time{font:12px Arial,sans-serif;color:var(--muted)}.topic-list h3{font-size:15px;font-weight:500;margin:0}.topic-list a:hover h3,.topic-list a:focus-visible h3{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.recruit-banner{display:grid;grid-template-columns:1fr 1.1fr;min-height:475px;background:#272b25;color:#fff}.recruit-banner .banner-text{padding:65px clamp(28px,5.3vw,88px)}.recruit-banner h2{font-size:clamp(29px,3vw,44px);line-height:1.6}.recruit-banner p:not(.eyebrow){font-size:14px;color:#d2d5cc}.recruit-banner .banner-photo{overflow:hidden}.recruit-banner img{width:100%;height:100%;object-fit:cover}.company-table{margin:0}.company-table>div{display:grid;grid-template-columns:160px 1fr;gap:25px;padding:22px 0;border-top:1px solid var(--line);font-size:14px}.company-table>div:last-child{border-bottom:1px solid var(--line)}.company-table dt{font-weight:600}.company-table dd{margin:0}.contact-band{padding-block:64px;background:#e8e9e2}.contact-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-band h2{font:800 clamp(40px,6vw,78px)/1.1 Arial,sans-serif;letter-spacing:-.05em;margin-bottom:12px}.contact-band p{margin:0;font-size:14px}.site-footer{background:#20231f;color:#fff;padding:65px var(--gutter) 24px}.footer-top{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px;padding-bottom:64px}.footer-brand img{width:190px;filter:brightness(0) invert(1);margin-bottom:28px}.footer-brand p{font-size:12px;color:#c4c7bd;margin:0}.footer-heading{font:11px Arial,sans-serif;letter-spacing:.16em;color:#a8afa0;margin-bottom:20px}.footer-links{display:grid;gap:12px;font-size:13px;align-content:start}.footer-links a:hover{text-decoration:underline}.footer-bottom{max-width:1440px;margin:auto;border-top:1px solid #ffffff27;padding-top:22px;display:flex;justify-content:space-between;gap:30px;font-size:11px;color:#aeb4a6}.footer-bottom .legal{display:flex;gap:22px;flex-wrap:wrap}
.breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin:0;padding:26px 0;list-style:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb li+li::before{content:"/";padding-right:10px;color:#a3a69a}.page-head{padding:42px 0 70px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(28px,4vw,48px);line-height:1.5;letter-spacing:.01em;margin-bottom:20px;max-width:1000px}.page-head .en-title{display:block;font:800 clamp(50px,7vw,100px)/1.1 Arial,sans-serif;letter-spacing:-.055em;margin-bottom:20px}.page-head .eyebrow{margin-bottom:16px}.page-head p{max-width:780px;margin-bottom:0;color:var(--muted)}.subnav{display:flex;flex-wrap:wrap;gap:24px;padding-block:24px;border-bottom:1px solid var(--line);font-size:13px}.subnav a{border-bottom:1px solid currentColor;padding-bottom:2px}.page-body{padding-block:65px 100px}.prose{font-size:16px;line-height:2.1;overflow-wrap:anywhere}.prose p{margin-bottom:1.8em}.prose h2{font-size:26px;line-height:1.7;margin:2.8em 0 1em;padding-bottom:12px;border-bottom:1px solid var(--line)}.prose h3{font-size:21px;margin:2em 0 .8em}.prose h4{font-size:18px;margin:1.8em 0 .8em}.prose a{color:#175c6a;text-decoration:underline;text-underline-offset:3px}.prose ul,.prose ol{padding-left:1.6em}.prose li{margin-block:.4em}.prose img{margin:30px auto;max-width:100%;height:auto}.prose figure{margin:32px 0}.prose figcaption{font-size:12px;color:var(--muted);text-align:center}.prose blockquote{border-left:3px solid var(--accent);padding:5px 0 5px 25px;margin:30px 0}.prose table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:14px}.prose th,.prose td{border:1px solid var(--line);padding:12px}.prose iframe{width:100%;max-width:100%;aspect-ratio:16/9;height:auto;border:0}.prose .wp-block-columns{display:flex;gap:24px}.prose .wp-block-column{min-width:0;flex:1}.prose .wp-block-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.prose .wp-block-gallery img{margin:0}.prose .aligncenter{margin-inline:auto}.article-layout{display:grid;grid-template-columns:220px minmax(0,820px);gap:80px;justify-content:space-between}.article-sidebar{font-size:12px}.article-sidebar .eyebrow{margin-bottom:16px}.article-sidebar a{display:block;border-top:1px solid var(--line);padding:14px 0}.article-sidebar a:hover{color:var(--accent)}.article-cover{max-height:520px;object-fit:contain;background:#fff;margin-bottom:50px;width:100%}.related{border-top:1px solid var(--line);padding-top:50px;margin-top:70px}.related h2{font-size:23px}.article-bottom{margin-top:48px;display:flex;justify-content:space-between;gap:20px}.article-bottom a{display:grid;align-content:start;gap:8px;font-size:13px;max-width:48%;padding-top:16px;border-top:1px solid var(--line)}.article-direction{font-size:11px;letter-spacing:.08em;color:var(--muted)}.article-bottom a:hover,.article-bottom a:focus-visible{border-color:var(--ink)}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:60px;flex-wrap:wrap}.pagination a,.pagination span{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--line);font:13px Arial,sans-serif}.pagination span[aria-current=page]{background:var(--ink);color:#fff;border-color:var(--ink)}.search-form{display:flex;align-items:center;gap:22px;margin-bottom:32px}.search-form label{font-size:13px;font-weight:600}.search-form input{max-width:420px;width:100%;border:1px solid var(--line);padding:12px 16px;background:#fff;border-radius:0}.search-form output{font-size:12px;white-space:nowrap}.empty-state{padding:55px;text-align:center;background:#fff}.timeline{padding:0;list-style:none;border-top:1px solid var(--line)}.timeline li{display:grid;grid-template-columns:150px 1fr;gap:35px;border-bottom:1px solid var(--line);padding:32px 0}.timeline time{font:400 25px Arial,sans-serif;color:var(--accent)}.timeline h2{font-size:19px;margin-bottom:10px}.timeline p{font-size:14px;margin:0}.archive-note{margin-top:60px;padding:25px;border:1px solid var(--line)}.archive-note summary{cursor:pointer;font-size:14px;font-weight:600}.archive-note>p{margin-top:20px;font-size:13px;color:var(--muted)}.archive-note .timeline{margin-top:30px}
.recruit-hero{padding:64px var(--gutter) 80px;background:#eeeee8;overflow:hidden}.recruit-hero-inner{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.2fr;gap:5%;align-items:center}.recruit-hero h1{font-size:clamp(35px,4.3vw,65px);line-height:1.5;letter-spacing:.02em;margin-bottom:24px}.recruit-hero .en{font:500 15px Arial,sans-serif;color:var(--accent);letter-spacing:.08em}.recruit-hero .intro{font-size:14px;line-height:2;margin-bottom:0}.recruit-hero-photo{position:relative;aspect-ratio:5/4}.recruit-hero-photo img{width:100%;height:100%;object-fit:cover}.recruit-hero-photo::after{content:"";position:absolute;border:1px solid var(--accent);inset:22px -22px -22px 22px;z-index:0;pointer-events:none}.recruit-hero-photo img{position:relative;z-index:1}.recruit-tagline{font:800 clamp(55px,9vw,130px)/1 Arial,sans-serif;letter-spacing:-.055em;color:#d7d9ce;margin-top:55px;margin-bottom:-20px}.entry-cta{background:var(--accent);color:#fff;padding:65px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px}.entry-cta>div{max-width:900px}.entry-cta .eyebrow::before{background:#fff}.entry-cta h2{font-size:clamp(27px,3vw,42px);margin-bottom:12px}.entry-cta p{margin-bottom:0;font-size:14px}.entry-cta .button{flex-shrink:0}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.person-photo{aspect-ratio:4/4.4;background:#e4e5de;overflow:hidden}.person-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.person-card:hover img{transform:scale(1.025)}.person-card .person-role{font-size:12px;color:var(--muted);margin:20px 0 8px}.person-card h3{font-size:25px;margin-bottom:0}.person-card:hover h3,.person-card:focus-visible h3{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}.person-card .person-index{font:11px Arial,sans-serif;letter-spacing:.15em;margin-top:6px;color:var(--muted)}.person-intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;margin-bottom:65px}.person-intro img{aspect-ratio:4/3;object-fit:cover;width:100%}.person-intro h1{font-size:43px;margin-bottom:16px}.person-intro .person-role{color:var(--accent);font-size:14px}.person-intro p:last-child{margin-bottom:0}.number-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.number-card{padding:34px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:#fff}.number-card h2,.number-card h3{font-size:14px;font-weight:500;min-height:44px}.number-card .value{font:400 clamp(58px,6vw,87px)/1 Arial,sans-serif;letter-spacing:-.055em;color:var(--accent)}.number-card .unit{font-size:16px;margin-left:10px;color:var(--ink)}.chart-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.chart-grid h3{font-size:15px}.chart-grid img{width:100%;height:auto;background:#fff}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:center;gap:22px;cursor:pointer;font-size:15px;font-weight:500;padding:24px 0;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::before{content:"Q";font:20px Arial,sans-serif;color:var(--accent)}.faq summary::after{content:"+";font:24px Arial,sans-serif;margin-left:auto;flex-shrink:0}.faq details[open] summary::after{content:"−"}.faq details p{padding:0 50px 20px;font-size:14px;color:var(--muted)}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.link-grid a{padding:30px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.link-grid a:hover,.link-grid a:focus-visible{background:#e7e8e0}.link-grid strong{display:block;font-size:16px}.link-grid small{font:12px Arial,sans-serif;color:var(--muted)}.philosophy-list{display:grid;gap:0;border-top:1px solid var(--line)}.philosophy-list>div{padding:40px 0;display:grid;grid-template-columns:220px 1fr;gap:35px;border-bottom:1px solid var(--line)}.philosophy-list dt{font:400 22px Arial,sans-serif;color:var(--accent)}.philosophy-list dd{font-size:clamp(21px,2.6vw,34px);font-weight:600;line-height:1.7;margin:0}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:45px 0;border-top:1px solid var(--line);align-items:center}.service-row h3{font-size:26px}.service-row .service-image{aspect-ratio:3/2;object-fit:cover;width:100%}.service-row p{font-size:14px;line-height:2;color:var(--muted)}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 32px}.benefit{border-top:1px solid var(--line);padding-top:22px}.benefit .number{color:var(--accent);font:12px Arial,sans-serif;margin-bottom:18px}.benefit h3{font-size:19px}.benefit p{font-size:14px;color:var(--muted);margin-bottom:0}.education-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 28px}.education-grid img{aspect-ratio:3/2;object-fit:cover;margin-bottom:22px;width:100%}.education-grid h3{font-size:18px}.education-grid p{font-size:14px;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.photo-grid img{width:100%;aspect-ratio:3/2;object-fit:cover}.job-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:35px 0;align-items:center}.job-card .job-type{font-size:12px;color:var(--accent)}.job-card h2{font-size:23px;margin-bottom:12px}.job-card p{font-size:14px;color:var(--muted);margin-bottom:0}.job-card:hover h2,.job-card:focus-visible h2{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.job-table{margin-top:40px}.job-table>div{grid-template-columns:135px 1fr;padding-block:28px}.job-table dd{font-size:15px;line-height:2}.source-date{font-size:12px;color:var(--muted);border-left:2px solid var(--accent);padding-left:15px;margin-top:25px}
.form-intro{margin-bottom:36px}.form-note{font-size:13px;padding:17px 20px;background:#e9e8df;border-left:3px solid var(--accent);margin-bottom:30px}.site-form fieldset{border:0;padding:0;margin:0;min-width:0}.form-field{display:block;margin:0 0 28px}.field-label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.required{display:inline-block;font-size:10px;font-weight:500;color:var(--accent);border:1px solid #d9a8a1;padding:1px 6px;line-height:1.6;margin-left:12px;vertical-align:1px}.optional{font-size:11px;color:var(--muted);margin-left:12px;font-weight:400}.site-form input:not([type=checkbox]),.site-form select,.site-form textarea{display:block;width:100%;border:1px solid #b7bbae;border-radius:0;background:#fff;padding:14px 16px;color:var(--ink);min-height:53px}.site-form input[type=file]{font-size:13px;padding:12px}.site-form input[type=file]::file-selector-button{background:#e8e9e3;border:0;padding:8px 12px;margin-right:15px;color:var(--ink);cursor:pointer}.site-form textarea{resize:vertical;min-height:180px}.site-form input[aria-invalid=true],.site-form textarea[aria-invalid=true],.site-form select[aria-invalid=true]{border-color:var(--accent);border-width:2px}.field-error{display:block;font-size:13px;color:#9f271d;margin-top:8px}.field-hint{display:block;font-size:12px;color:var(--muted);margin-top:8px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px}.check-label{display:flex;align-items:flex-start;gap:12px;font-size:14px;margin:24px 0;line-height:1.9}.check-label input{width:20px;height:20px;flex-shrink:0;accent-color:var(--accent);margin-top:3px}.check-label a{text-decoration:underline;text-underline-offset:4px}.form-buttons{display:flex;gap:15px;flex-wrap:wrap;margin-top:36px}.form-error{background:#fff0ed;border:1px solid var(--accent);padding:18px 22px;color:#9f271d;font-size:14px;margin-bottom:26px}.review-values{margin-bottom:35px}.review-values>div{display:grid;grid-template-columns:180px 1fr;gap:25px;border-top:1px solid var(--line);padding:19px 0;font-size:14px}.review-values>div:last-child{border-bottom:1px solid var(--line)}.review-values dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.thanks{min-height:60vh;padding-block:85px 100px}.thanks .check-mark{width:65px;height:65px;display:grid;place-items:center;border:1px solid var(--accent);color:var(--accent);font-size:30px;margin-bottom:30px}.thanks h1{font-size:clamp(25px,3vw,38px)}.thanks p{max-width:720px}.thanks .text-link{margin-top:15px}
@media(min-width:1600px){.hero{padding-top:95px;padding-bottom:45px}.hero-image{aspect-ratio:1.3}.hero h1{font-size:76px}}
@media(max-width:1100px){:root{--gutter:35px;--header:76px}.site-nav{gap:20px}.brand-sub{display:none}.site-nav>a{font-size:12px}.brand img{width:155px}.hero{padding-top:45px}.hero-main{gap:4%}.hero h1{font-size:44px}.hero-image{aspect-ratio:.92}.article-layout{grid-template-columns:170px minmax(0,1fr);gap:40px}.footer-top{gap:35px}.recruit-hero h1{font-size:40px}.recruit-hero .actions{gap:10px}.recruit-hero .button{min-width:180px;padding:14px 18px}.section{padding-block:80px}}
@media(max-width:840px){.site-nav{display:none;position:absolute;top:var(--header);inset-inline:0;padding:25px var(--gutter) 35px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 15px 30px #0001;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav>a{padding:16px 0;border-bottom:1px solid var(--line);font-size:15px}.site-nav .nav-contact{margin-top:18px;text-align:center}.menu-button{display:block}.hero h1{font-size:38px}.hero-copy .eyebrow{font-size:10px}.hero-main{grid-template-columns:.95fr 1.05fr}.hero-image{aspect-ratio:.8}.section-heading{margin-bottom:35px}.split{gap:5%}.split-text .lead{font-size:16px}.news-grid{gap:35px 22px}.news-card h3{font-size:14px}.news-meta{gap:8px}.section-title{font-size:44px}.recruit-banner{grid-template-columns:1fr 1fr}.recruit-banner .banner-text{padding:40px 30px}.company-table>div{grid-template-columns:110px 1fr;gap:20px}.article-layout{display:block}.article-sidebar{display:none}.footer-top{grid-template-columns:1.4fr 1fr;gap:45px}.footer-top>div:last-child{grid-column:2}.footer-brand{grid-row:span 2}.people-grid{gap:20px}.person-card h3{font-size:22px}.person-intro{gap:5%}.number-card{padding:24px}.benefits-grid,.education-grid{grid-template-columns:repeat(2,1fr)}.recruit-hero{padding-top:50px}.recruit-hero-inner{gap:5%}.recruit-hero h1{font-size:33px}.recruit-hero-photo{aspect-ratio:.8}.recruit-hero .intro{font-size:12px}.recruit-hero .actions{flex-direction:column}.recruit-hero .button{width:220px}.entry-cta{align-items:flex-start}.entry-cta h2{font-size:28px}.link-grid a{padding:23px}.philosophy-list>div{grid-template-columns:170px 1fr}.philosophy-list dd{font-size:25px}.chart-grid{grid-template-columns:1fr}.chart-grid figure{max-width:600px}.service-row{gap:5%}.service-row h3{font-size:22px}}
@media(max-width:600px){:root{--gutter:22px;--header:70px}body{font-size:14px}.brand img{width:146px;height:28px}.site-header{padding-right:16px}.section{padding-block:64px}.section-heading{align-items:flex-start;gap:20px}.section-title{font-size:40px}.section-jp{font-size:13px}.section-heading .text-link{font-size:11px;white-space:nowrap;margin-top:20px}.eyebrow{font-size:10px;margin-bottom:15px}.text-link{font-size:13px}.button{min-width:185px;min-height:53px;padding:14px 20px;font-size:13px}.hero{padding:34px var(--gutter) 25px}.hero-main{display:flex;flex-direction:column;gap:28px;align-items:stretch}.hero-copy{padding:10px 0 0}.hero .eyebrow{margin-bottom:20px}.hero h1{font-size:42px;line-height:1.55;margin-bottom:17px;letter-spacing:.015em}.hero-en{font-size:12px;margin:0}.hero-copy .text-link{margin-top:15px}.hero-image{aspect-ratio:1.45;margin-left:28px}.hero-bottom{margin-top:27px;padding-top:17px;font-size:9px;gap:14px;flex-direction:column;align-items:flex-start}.hero-index{gap:12px}.newest{grid-template-columns:minmax(0,1fr);gap:12px;padding-block:22px}.newest>.eyebrow{grid-column:1/-1}.newest-body{display:block;font-size:12px}.newest-title{-webkit-line-clamp:2;margin-top:7px}.split{grid-template-columns:1fr;gap:35px}.about-copy h2{font-size:28px;margin-bottom:25px}.about-copy p{font-size:14px}.about-visual{padding:0 0 28px 22px}.display-word{font-size:70px;margin-bottom:35px}.business-grid{grid-template-columns:1fr;gap:44px}.business-card .photo{margin-block:18px}.business-card h3{font-size:24px}.business-card p{max-width:100%}.news-grid{grid-template-columns:1fr;gap:35px}.news-card h3{font-size:16px}.news-image{margin-bottom:16px;aspect-ratio:16/9}.news-card .news-excerpt{-webkit-line-clamp:2}.topic-list a{grid-template-columns:minmax(0,1fr);gap:6px 12px;padding:20px 0}.topic-list time{grid-column:1/-1;font-size:11px}.topic-list h3{font-size:14px}.recruit-banner{display:flex;flex-direction:column-reverse}.recruit-banner .banner-photo{aspect-ratio:16/9}.recruit-banner .banner-text{padding:38px var(--gutter) 45px}.recruit-banner h2{font-size:29px}.company-table>div{grid-template-columns:85px 1fr;gap:18px;font-size:12px;padding-block:18px}.contact-band{padding-block:45px}.contact-band .wrap{align-items:flex-start;flex-direction:column;gap:25px}.contact-band h2{font-size:58px}.site-footer{padding-top:45px}.footer-top{grid-template-columns:1fr 1fr;gap:34px 22px;padding-bottom:40px}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-top>div:last-child{grid-column:auto}.footer-brand img{width:170px;margin-bottom:22px}.footer-heading{font-size:10px}.footer-links{font-size:12px;gap:11px}.footer-bottom{flex-direction:column;gap:20px}.footer-bottom .legal{gap:12px;font-size:10px}.breadcrumb{padding-block:22px;font-size:10px}.page-head{padding:24px 0 45px}.page-head h1{font-size:29px;line-height:1.6}.page-head .en-title{font-size:55px}.page-head p{font-size:13px}.page-body{padding-block:40px 65px}.prose{font-size:14px;line-height:2}.prose h2{font-size:22px}.prose h3{font-size:19px}.prose img{margin-block:20px}.prose .wp-block-columns{display:block}.article-cover{margin-bottom:35px}.article-bottom{flex-direction:column}.article-bottom a{max-width:100%}.related{padding-top:35px;margin-top:45px}.category-links{gap:7px;margin-bottom:28px}.category-links a{padding:7px 12px;font-size:11px}.search-form{flex-wrap:wrap;gap:10px}.search-form label{font-size:12px}.search-form input{order:3;max-width:100%}.search-form output{margin-left:auto}.timeline li{grid-template-columns:75px 1fr;gap:20px;padding-block:25px}.timeline time{font-size:17px;line-height:1.8}.timeline h2{font-size:16px}.timeline p{font-size:12px}.archive-note{padding:18px}.archive-note .timeline li{display:block}.archive-note .timeline time{display:block;margin-bottom:12px}.recruit-nav{justify-content:flex-start;gap:22px;font-size:11px;padding-block:13px}.recruit-hero{padding-top:34px;padding-bottom:52px}.recruit-hero-inner{grid-template-columns:1fr;gap:38px}.recruit-hero h1{font-size:42px;margin-bottom:15px}.recruit-hero .en{font-size:12px;margin-bottom:18px}.recruit-hero .intro{font-size:13px}.recruit-hero .actions{flex-direction:row;gap:10px;margin-top:25px}.recruit-hero .button{width:auto;min-width:0;flex:1;padding:14px;font-size:12px}.recruit-hero-photo{aspect-ratio:1.4;margin-right:14px}.recruit-hero-photo::after{inset:14px -14px -14px 14px}.recruit-tagline{font-size:62px;margin-top:38px;margin-bottom:-12px}.entry-cta{flex-direction:column;padding-block:45px;gap:26px}.entry-cta h2{font-size:28px}.entry-cta p{font-size:13px}.people-grid{grid-template-columns:1fr;gap:36px}.person-photo{aspect-ratio:4/3}.person-card .person-role{margin-top:15px}.person-card h3{font-size:26px}.person-intro{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.person-intro h1{font-size:33px}.number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.number-card{padding:20px 16px}.number-card h2,.number-card h3{font-size:11px;min-height:40px;margin-bottom:20px}.number-card .value{font-size:52px}.number-card .unit{font-size:12px;margin-left:6px}.chart-grid{margin-top:32px;gap:25px}.faq summary{font-size:13px;gap:13px;padding:22px 0}.faq details p{padding:0 0 15px 28px;font-size:13px}.link-grid{grid-template-columns:1fr}.link-grid a{padding:24px}.philosophy-list>div{display:block;padding-block:28px}.philosophy-list dt{font-size:18px;margin-bottom:15px}.philosophy-list dd{font-size:24px}.service-row{grid-template-columns:1fr;gap:24px;padding-block:32px}.service-row h3{font-size:23px}.benefits-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.benefit h3{font-size:15px}.benefit p{font-size:12px}.benefit .number{margin-bottom:12px}.education-grid{grid-template-columns:1fr;gap:32px}.education-grid img{margin-bottom:18px}.education-grid h3{font-size:19px}.education-grid p{font-size:13px}.photo-grid{grid-template-columns:repeat(2,1fr);gap:12px}.job-card{grid-template-columns:minmax(0,1fr);gap:12px}.job-card .job-type{grid-column:1/-1}.job-card h2{font-size:20px}.job-card p{font-size:13px}.job-table>div{display:block;padding-block:24px}.job-table dt{margin-bottom:12px;font-size:14px}.job-table dd{font-size:14px}.subnav{gap:15px;font-size:12px;padding-block:20px}.form-pair{grid-template-columns:1fr;gap:0}.site-form input:not([type=checkbox]),.site-form select,.site-form textarea{font-size:16px}.site-form input[type=file]{font-size:12px}.site-form input[type=file]::file-selector-button{font-size:11px;margin-right:8px}.check-label{font-size:13px}.review-values>div{display:block}.review-values dt{font-weight:600;margin-bottom:9px;font-size:12px}.review-values dd{font-size:14px}.form-buttons{flex-direction:column}.form-buttons button{width:100%}.thanks{padding-block:60px}.thanks h1{font-size:25px}.source-date{font-size:11px}.empty-state{padding:35px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-header,.recruit-nav,.site-footer,.entry-cta,.contact-band,.article-sidebar,.article-bottom,.related{display:none}.page-body,.section{padding-block:20px}.wrap{width:100%}.prose{font-size:11pt}.page-head{padding-block:15px}body{background:#fff}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.prose pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.prose video{max-width:100%;height:auto}
.breadcrumb.wrap{margin-inline:auto}

/* B案の配色、書体、レイアウト */
:root{--paper:#fff;--white:#fff;--ink:#333;--muted:#6a6a6a;--line:#ddd;--accent:#007f9f;--blue:#0bf;--header:80px;--gutter:50px}
html{scroll-padding-top:24px}body.design-b{opacity:1;background:#fff;color:#333;font:400 16px/1.8 "Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}body.design-b a:focus-visible,body.design-b button:focus-visible{outline:3px solid #007f9f;outline-offset:5px}body.design-b a:hover{opacity:.8}.design-b [hidden]{display:none!important}.design-b main{min-height:40vh}.design-b .wrap{width:min(1100px,calc(100% - 40px));margin-inline:auto}.design-b .narrow{max-width:820px}.design-b .en,.design-b .en-title{font-family:Oswald,sans-serif;letter-spacing:3.8px;font-weight:500}.design-b .section{padding-block:100px}.design-b .section-white{background:#f5f5f5}.design-b .section-title{font-size:54px;line-height:1.4;margin:0 0 8px}.design-b .section-jp{font-size:20px;font-weight:700;line-height:1.5;margin:0}.design-b .section-heading{align-items:center;margin-bottom:50px}.design-b .eyebrow{font:500 14px/1.5 Oswald,sans-serif;letter-spacing:2px;color:#666}.design-b .eyebrow::before{display:none}.design-b .button{border-radius:40px;background:#fff;color:#333;border:1px solid #333;min-width:180px;min-height:48px;padding:10px 28px;font-size:14px;line-height:1.6;justify-content:center;font-weight:600;transition:background .3s,color .3s,transform .3s}.design-b .button:hover{background:#333;color:#fff;transform:translateY(3px)}.design-b .button-accent{background:#007f9f;color:#fff;border-color:#007f9f}.design-b .button-accent:hover{background:#006580}.design-b .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 24px;margin-top:10px;border:1px solid #333;border-radius:32px;font-size:14px;font-weight:600;background:transparent;line-height:1.6;white-space:normal}.design-b .text-link::before,.design-b .text-link::after{display:none}.design-b .text-link:hover{background:#333;color:#fff}.design-b .breadcrumb{max-width:1100px;padding:24px 0;margin-inline:auto;font-size:12px;line-height:1.5;color:#777;display:flex;flex-wrap:wrap;gap:10px;border:0}.design-b .breadcrumb a{text-decoration:underline;text-underline-offset:3px}
/* 共通ヘッダーとメニュー */
/* 見出し・記事・一覧 */
.b-page-head{background:#efefef;text-align:center;padding:40px 20px;min-height:174px;display:grid;align-items:center}.b-page-head .en{font-size:16px;font-weight:700;margin:0 0 3px}.b-page-head h1{font-size:36px;line-height:1.5;font-weight:700;margin:0}.b-page-description{font-size:14px;max-width:780px;margin:15px auto 0}.design-b .page-head{padding:50px 0 20px;max-width:1100px}.design-b .page-head h1{font-size:30px;max-width:none;line-height:1.8;letter-spacing:0;margin:0}.design-b .page-body{padding:50px 0 90px}.design-b .category-links{gap:18px;padding:0 0 24px;margin:0 0 32px;font-size:13px}.design-b .category-links a{padding:4px 12px}.design-b .category-links [aria-current=page]{background:#4e4e4e;color:#fff}.design-b .news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.design-b .news-card{border:1px solid #e2e4eb;border-radius:5px;background:#fff;overflow:hidden;min-width:0}.design-b .news-card>a{display:flex;flex-direction:column;height:100%;color:#000}.design-b .news-image{aspect-ratio:665/370;margin:0;overflow:hidden}.design-b .news-image img{width:100%;height:100%;object-fit:cover}.design-b .news-meta{padding:16px 30px 0;margin:0;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:14px}.design-b .news-meta time{color:#666}.design-b .news-card .tag{font-size:11px;background:transparent;color:#6a6a6a;border:0;padding:0}.design-b .news-card h3{font-size:16px;line-height:1.5;margin:10px 30px 30px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:96px;letter-spacing:0}.design-b .news-card:hover h3{color:#333}.design-b .article-layout{display:block}.design-b .article-sidebar{display:flex;flex-wrap:wrap;gap:18px;border-block:1px solid #ddd;position:static;margin-bottom:35px;padding:15px 0;font-size:13px}.design-b .article-sidebar .eyebrow{display:none}.design-b .article-sidebar a{padding:0}.design-b .article-layout .prose{max-width:none}.design-b .article-cover{width:100%;max-height:none;object-fit:contain}.design-b .prose{font-size:18px;line-height:1.8;color:#000426;overflow-wrap:anywhere}.design-b .prose p{margin-block:0 24px}.design-b .prose h2{font-size:28px;padding:30px 0;border-bottom:1px solid #ddd;margin:40px 0 30px;letter-spacing:0}.design-b .prose h3{font-size:24px;padding:8px 12px;background:#f7f9fa;border-left:5px solid #0c8eae;margin:30px 0 20px}.design-b .prose img{margin:24px auto}.design-b .related{padding-top:80px}.design-b .article-bottom{margin-top:50px}.design-b .pagination{gap:12px;margin-top:45px}.design-b .pagination a,.design-b .pagination span{border-radius:4px}.design-b .search-form{margin-bottom:15px}.design-b .search-form input{border:1px solid #8d96b2;border-radius:4px;background:#fff;min-width:0}.design-b .topic-list{border-top:1px solid #ddd}.design-b .topic-list a{padding:22px 0;display:grid;grid-template-columns:140px 1fr;gap:20px}.design-b .topic-list h3{font-size:16px;line-height:1.7;font-weight:400;letter-spacing:0}.design-b .topic-list time{font-size:16px;color:#333}.design-b .topic-list li{border-bottom:1px solid #ddd}.design-b .topic-list li:first-child{border-top:0}
/* コーポレートの動画・スライダー */
.b-video-hero{position:relative;height:100vh;min-height:740px;background:#000;color:#fff;overflow:hidden}.b-slider{position:relative;overflow:hidden;min-width:0}.b-slider .swiper-wrapper{display:flex}.b-slider .swiper-slide{height:auto;flex-shrink:0;min-width:0}.b-slider-hero{width:100%;height:100%;padding:150px 0 140px;pointer-events:auto}.b-slider-hero .swiper-wrapper{transition-timing-function:linear!important}.b-slider-hero .swiper-slide{width:35%;height:100%;position:relative}.b-slider-hero .swiper-slide::after{position:absolute;inset:0;content:'';background:#000000b0;pointer-events:none}.b-slider-hero video{width:100%;height:100%;object-fit:cover}.b-hero-copy{position:absolute;top:50%;left:50px;transform:translateY(-50%);z-index:3;pointer-events:none}.b-hero-copy h1{font-size:54px;line-height:1.5;color:#fff;letter-spacing:0;margin:0 0 5px;font-weight:700}.b-hero-copy p{font-size:17px;line-height:1.5;margin:0;color:#fff}.b-hero-copy a{pointer-events:auto}.b-motion-toggle{position:absolute;bottom:10px;right:12px;z-index:5;background:#fff;color:#333;border:1px solid #bbb;border-radius:3px;font:400 11px/1.5 "Noto Sans JP",sans-serif;padding:5px 10px;opacity:.9}.b-slider-hero .b-motion-toggle{top:90px;bottom:auto;background:#222;color:#fff;border-color:#777}.b-home-press{display:grid;grid-template-columns:38% 62%;position:relative;z-index:4;background:#000;color:#fff;margin-top:-200px;padding:0 0 35px;min-height:200px;align-items:center}.b-section-intro{padding:20px 50px}.b-section-intro .section-heading{display:block;margin:0}.b-section-intro .section-jp{font-size:20px}.b-section-intro .text-link{margin-top:24px}.b-home-press .text-link{background:#fff;color:#333}.b-slider-cards{padding-bottom:40px}.b-slider-cards .swiper-slide{width:432px}.b-slider-cards .news-card h3{-webkit-line-clamp:2;min-height:48px}.b-slider-cards .news-card .tag{display:none}.b-slider-cards .swiper-pagination{bottom:9px;text-align:left}.b-slider-cards .swiper-pagination-bullet{background:#ccc;width:30px;height:3px;border-radius:0;margin:0 4px!important;opacity:1}.b-slider-cards .swiper-pagination-bullet-active{width:60px;background:#4e4e4e}.b-home-press .news-card{border:0;border-right:1px solid #333;border-radius:0;background:transparent}.b-home-press .news-card>a{display:grid;grid-template-columns:55% 45%;color:#fff}.b-home-press .news-image{grid-row:1/3;aspect-ratio:1.8;height:100%}.b-home-press .news-meta{padding:30px 20px 0;font-size:14px;line-height:1.5}.b-home-press .news-meta time{color:#fff}.b-home-press .news-card h3{color:#fff;margin:16px 20px 24px;font-size:15px;font-weight:400}.b-home-press .swiper-slide{width:600px}.b-home-press .swiper-pagination{display:none}.b-home-press .b-slider-cards{padding:0 0 30px}.b-home-media{display:grid;grid-template-columns:38% 62%;padding:120px 0;border-block:1px solid #ddd;align-items:center}.b-business .business-grid{display:block}.b-business .business-card{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;padding:65px 0;border:0;align-items:center}.b-business .business-card .number{grid-column:1;font-size:14px;color:#666}.b-business .business-card .photo{grid-column:2;grid-row:1/5;margin:0;border:1px solid #eee;aspect-ratio:auto;background:#fff}.b-business .business-card .photo img{object-fit:contain}.b-business .business-card h3{font-size:36px;margin-bottom:20px}.b-business .business-card p{font-size:16px}.b-business .business-card .text-link{width:max-content}.b-home-topics{background:#f5f5f5}.b-home-topics>.wrap{display:grid;grid-template-columns:34% 66%;gap:0}.b-home-topics .section-heading{display:block;padding-right:40px;margin:0}.b-home-topics .text-link{margin-top:24px}.b-recruit-banner{display:grid;grid-template-columns:38% 62%;height:650px;overflow:hidden}.b-slider-people{height:650px}.b-slider-people .swiper-wrapper{transition-timing-function:linear!important}.b-slider-people .swiper-slide{width:100%;height:auto}.b-slider-people img{width:100%;height:100%;object-fit:cover}.b-recruit-banner .banner-text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:60px 70px;background:#fff;color:#333}.b-recruit-banner h2{font-size:40px;letter-spacing:0;line-height:1.5}.b-recruit-banner p{font-size:18px;line-height:2.5}.b-recruit-banner .eyebrow{display:none}.b-company{background:#fff!important;border-block:1px solid #ddd}.b-company .split{grid-template-columns:35% 65%;gap:0}.design-b .company-table{background:transparent;border:0;display:block;width:100%;table-layout:auto;margin:0;font-size:14px}.design-b .company-table>div{display:grid;grid-template-columns:27% 73%;gap:0;border-bottom:1px solid #eee;padding:18px 10px}.design-b .company-table dt{font-size:14px;font-weight:500;margin:0;padding-right:20px}.design-b .company-table dd{font-size:14px;line-height:1.8;margin:0;overflow-wrap:anywhere}.design-b .company-table p{margin:0}
/* 採用の共通コンテンツ */
.b-recruit-hero{height:min(850px,100vh);min-height:720px;background:#000;color:#fff;position:relative;overflow:hidden}.b-slider-recruit{height:100%;width:100%}.b-slider-recruit .swiper-slide{height:100%;position:relative;width:100%}.b-slider-recruit .swiper-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000d,#0005 70%)}.b-slider-recruit img{width:100%;height:100%;object-fit:cover}.b-recruit-hero .b-hero-copy{max-width:640px;top:54%;padding-right:20px}.b-recruit-hero .b-hero-copy>.en{font:500 18px/1.5 Oswald,sans-serif;letter-spacing:3px;margin-bottom:24px}.b-recruit-hero h1{font-size:60px;margin-bottom:15px}.b-recruit-hero h1 span{color:#fff!important}.b-recruit-hero .b-recruit-intro{font-size:16px;line-height:1.8;margin-top:24px;max-width:580px}.b-recruit-hero .actions{margin-top:30px;gap:18px}.b-recruit-hero .button{color:#fff;background:transparent;border-color:#fff;min-width:200px}.b-recruit-hero .button-accent{background:#fff;color:#333}.b-recruit-hero .button:hover{color:#000;background:#fff}.design-b .split{gap:60px}.design-b .split-photo{aspect-ratio:4/3}.design-b .split-photo img{width:100%;height:100%;object-fit:cover}.design-b .split-text .prose{font-size:16px;color:#333}.design-b .people-grid{gap:40px}.design-b .person-photo{aspect-ratio:4/3}.design-b .person-role{font-size:13px;color:#666}.design-b .person-card h3{font-size:24px;font-weight:700}.design-b .person-index{font:400 14px/1.5 Oswald,sans-serif;letter-spacing:2px;color:#777}.design-b .person-intro{gap:50px}.design-b .person-intro h1{font-size:36px}.design-b .person-intro .prose{font-size:16px;color:#333}.design-b .number-grid{gap:20px;border:0}.design-b .number-card{border:1px solid #ddd;padding:32px;background:#fff}.design-b .number-card .value{font:500 72px/1 Oswald,sans-serif;letter-spacing:0;color:#333}.design-b .number-card h2,.design-b .number-card h3{font-size:15px;font-weight:500;line-height:1.6}.design-b .number-card .unit{font-size:16px}.design-b .job-card{grid-template-columns:130px 1fr;padding:28px;border:1px solid #ddd;border-radius:4px;margin-bottom:20px;background:#fff;gap:25px}.design-b .job-card h2{font-size:23px;letter-spacing:0}.design-b .job-card p{font-size:14px}.design-b .job-type{background:#4e4e4e;color:#fff;border:0;border-radius:3px;font-size:12px}.design-b .benefit .number{font:500 40px/1.2 Oswald,sans-serif;color:#999}.design-b .benefit h3{font-size:20px}.design-b .benefit p{font-size:14px}.design-b .education-grid h3{font-size:21px}.design-b .education-grid p{font-size:14px}.design-b .philosophy-list dt{font:500 22px/1.5 Oswald,sans-serif}.design-b .philosophy-list dd{font-size:28px;letter-spacing:0}.design-b .service-row h3{font-size:28px;letter-spacing:0}.design-b .service-row .prose{font-size:16px;color:#333}.design-b .faq summary{font-size:16px}.design-b .faq summary::before{color:#007f9f}.design-b .faq details p{font-size:14px}.design-b .subnav{font-size:14px;justify-content:center}.design-b .source-date{font-size:12px;color:#666}
/* 共通フォーム */
.design-b .site-form,.design-b .form-intro{max-width:500px;margin-inline:auto}.design-b .form-intro{font-size:14px}.design-b .form-field{margin-bottom:24px}.design-b .field-label{display:flex;align-items:baseline;justify-content:space-between;font-size:14px;margin-bottom:8px}.design-b .required{background:transparent;color:#b80000;padding:0;font-size:12px;border:0}.design-b .optional{background:transparent;color:#777;padding:0;font-size:12px;border:0}.design-b .site-form input:not([type=checkbox]),.design-b .site-form select,.design-b .site-form textarea{border:1px solid #8d96b2;border-radius:4px;background:#fff;color:#030303;min-height:44px;padding:10px 15px;font-size:16px;line-height:1.5;width:100%}.design-b .site-form input:focus,.design-b .site-form textarea:focus,.design-b .site-form select:focus{outline:2px solid #007f9f;outline-offset:2px}.design-b .site-form input[type=file]{font-size:12px;padding:8px}.design-b .site-form input[type=file]::file-selector-button{border:0;border-radius:3px;margin-right:8px;padding:8px;background:#eee;color:#333;font-size:12px}.design-b .form-pair{grid-template-columns:1fr;gap:0}.design-b .field-hint{font-size:11px}.design-b .field-error{font-size:13px;color:#b80000}.design-b .check-label{font-size:13px;line-height:1.8}.design-b .check-label input{accent-color:#007f9f}.design-b .form-buttons{justify-content:center}.design-b .form-buttons .button{font-size:14px;min-height:48px}.design-b .form-error{font-size:14px;border:1px solid #b80000;background:#fff4f4}.design-b .form-note{font-size:14px;background:#f2f5f6;border-left-color:#007f9f}.design-b .site-form [aria-invalid=true]{border-color:#b80000!important}.design-b .review-values{font-size:14px}.design-b .review-values>div{grid-template-columns:120px 1fr}.design-b .review-values dd{word-break:break-word}.design-b .thanks h1{font-size:32px;letter-spacing:0}.design-b .check-mark{background:#007f9f;color:#fff}.design-b .thanks{padding-block:100px;text-align:center}
/* 沿革 */
body.b-history{background:#000;color:#ddd}.b-history-title{padding:200px 20px 100px;text-align:center}.b-history-title .en{font-size:54px;margin-bottom:10px}.b-history-title h1{font-size:28px}.b-history .section{padding:20px 0 120px}.b-history .narrow{max-width:1100px}.b-history .timeline{position:relative;padding:50px 0 20px;list-style:none;margin:0}.b-history .timeline::before{content:'';position:absolute;left:50%;top:0;bottom:0;border-left:3px dotted #4e4e4e}.b-history .timeline li{position:relative;width:45%;display:block;padding:0;margin:40px 0 60px;border:0}.b-history .timeline li::before{content:'';position:absolute;left:calc(111.111% - 9px);top:22px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px #000}.b-history .timeline time{position:absolute;left:122%;top:16px;width:80%;font-size:17px;color:#ccc;font-family:inherit}.b-history .timeline li>div{padding:20px;background:#1e1e1e;border-radius:3px}.b-history .timeline h2{font-size:18px;color:#eee;margin:0 0 10px}.b-history .timeline p{font-size:14px;line-height:1.8;color:#aaa;margin:0}.b-history .timeline .b-timeline-right{margin-left:55%}.b-history .timeline .b-timeline-right::before{left:calc(-11.111% - 9px)}.b-history .timeline .b-timeline-right time{left:auto;right:122%;text-align:right}.b-history .archive-note{padding:25px;background:#fff;color:#333;border:0}.b-history .archive-note .timeline::before{display:none}.b-history .archive-note .timeline li{width:100%;margin:0}.b-history .archive-note .timeline li::before{display:none}.b-history .archive-note .timeline time{position:static;width:auto;color:#007f9f;text-align:left}.b-history .archive-note .timeline li>div{background:#fff;color:#333}.b-history .archive-note h2,.b-history .archive-note p{color:#333}
/* フッター */
.b-entry-cta{text-align:center;padding:100px 20px;border-block:1px solid #ddd;background:#fff;color:#333}.b-entry-cta>.en{font-size:54px;margin:0 0 12px}.b-entry-cta h2{font-size:24px;margin-bottom:16px}.b-entry-cta p{font-size:14px}.b-entry-cta .button{margin-top:20px}.b-footer-body{display:flex;align-items:stretch;gap:40px;padding:8.28vw 13.27vw 5.64vw;max-width:1700px;margin:auto}.b-footer-brand{flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-width:230px}.b-footer-title{font:700 42px/1.5 Oswald,sans-serif;margin:0}.b-footer-brand h2{font-size:18px;margin:0 0 20px}.b-footer-legal{display:flex;gap:20px;flex-wrap:wrap;font-size:12px}.b-footer-legal a{color:#aaa}.b-footer-contents,.b-footer-links{width:24%;min-width:160px}.b-footer-contents>p,.b-footer-links>p{font-size:19px;font-weight:700;margin:0 0 35px}.b-footer-contents nav{display:flex;flex-direction:column;gap:4px;font-size:15px}.b-footer-links>div{font-size:14px}.b-footer-links div>a{display:flex;align-items:center;justify-content:center;min-height:70px;background:#007f9f;font-size:15px;font-weight:700;margin:8px 0 22px;padding:14px}.b-footer-links div>a:hover{transform:translateY(3px)}.b-footer-recruit{border-top:1px solid #ffffff26;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 22px;font-size:12px;padding:24px 30px}.b-top{position:fixed;bottom:30px;right:30px;z-index:90;border:1px solid #bbb;border-radius:50%;width:48px;height:48px;background:#fff;color:#333;font:500 12px Oswald,sans-serif;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.b-top.is-visible{opacity:1;visibility:visible}
@media(max-width:1170px){.b-footer-body{padding-inline:4vw}.b-section-intro{padding-inline:30px}.b-recruit-banner .banner-text{padding-inline:35px}.b-recruit-banner h2{font-size:32px}}
@media(max-width:1080px){.b-home-press,.b-home-media{grid-template-columns:1fr}.b-section-intro{padding:25px}.b-section-intro .section-heading{display:flex;align-items:center}.b-home-press{margin-top:0;padding-bottom:30px}.b-video-hero{min-height:700px;height:100vh}.b-slider-hero{padding:100px 40px 40px}.b-home-media{padding:60px 0}.b-slider-cards{padding-left:20px}.b-home-topics>.wrap{display:block}.b-home-topics .section-heading{display:flex;margin-bottom:35px;padding:0}.b-recruit-banner h2{font-size:30px}.b-recruit-banner p{font-size:15px}.design-b .company-table>div{grid-template-columns:30% 70%}.b-company .split{grid-template-columns:1fr;gap:40px}}
@media(max-width:720px){:root{--gutter:20px}.design-b{font-size:14px!important}.design-b .wrap{width:calc(100% - 30px)}.design-b .section{padding-block:60px}.design-b .section-title{font-size:45px}.design-b .section-jp{font-size:18px}.design-b .section-heading{margin-bottom:30px;gap:16px}.design-b .text-link{font-size:12px;padding:8px 18px}.design-b .button{font-size:13px;padding:12px 22px;min-width:0}.b-page-head{min-height:160px;padding:35px 10px}.b-page-head h1{font-size:24px;line-height:1.6}.b-page-head .en{font-size:14px}.b-page-description{font-size:13px;line-height:1.8}.design-b .page-head{padding:35px 0 15px}.design-b .page-head h1{font-size:23px;line-height:1.7}.design-b .page-body{padding:35px 0 60px}.design-b .news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.design-b .news-meta{padding:12px 10px 0;font-size:12px;gap:3px}.design-b .news-card h3{font-size:12px;line-height:1.6;margin:8px 10px 22px;min-height:77px;-webkit-line-clamp:4}.design-b .news-card .tag{font-size:10px}.design-b .category-links{font-size:12px;gap:7px;padding-bottom:16px;margin-bottom:24px}.design-b .category-links a{padding:4px 8px}.design-b .prose{font-size:14px;line-height:1.8}.design-b .prose h2{font-size:22px;padding-block:20px;margin-top:30px}.design-b .prose h3{font-size:19px}.design-b .article-sidebar{font-size:11px;gap:12px;margin-bottom:25px}.design-b .article-layout .prose{font-size:14px}.design-b .topic-list a{display:block;padding:22px 0}.design-b .topic-list time{font-size:13px}.design-b .topic-list h3{font-size:14px;margin-top:8px}.b-hero-copy{left:15px;right:15px}.b-hero-copy h1{font-size:45px}.b-hero-copy p{font-size:15px}.b-video-hero{min-height:650px;height:100svh}.b-slider-hero{padding:100px 35px 35px}.b-slider-hero .swiper-slide{width:100%}.b-home-press .news-card>a{display:block}.b-home-press .swiper-slide{width:80%}.b-home-press .news-image{height:auto;aspect-ratio:1.8}.b-home-press .news-meta{padding:16px 10px 0}.b-home-press .news-card h3{font-size:14px;margin:10px 10px 20px}.b-section-intro{padding:25px 15px 35px}.b-home-press .section-heading,.b-home-media .section-heading{gap:20px}.b-slider-cards .swiper-slide{width:80%}.b-slider-cards .news-card h3{font-size:14px;min-height:44px}.b-business .business-card{display:flex;flex-direction:column;align-items:flex-start;padding:35px 0;gap:0}.b-business .business-card .photo{order:-1;width:100%;margin-bottom:25px}.b-business .business-card h3{font-size:30px;margin-bottom:16px}.b-business .business-card p{font-size:14px}.b-home-topics .section-heading{display:block}.b-recruit-banner{display:flex;flex-direction:column;height:auto}.b-slider-people{height:280px;width:100%}.b-slider-people .swiper-slide{width:80%;height:280px}.b-recruit-banner .banner-text{padding:45px 20px}.b-recruit-banner h2{font-size:28px}.b-recruit-banner p{font-size:14px}.design-b .company-table>div{padding:16px 0;grid-template-columns:29% 71%}.design-b .company-table dt,.design-b .company-table dd{font-size:13px}.b-recruit-hero{height:780px;min-height:780px;max-height:none}.b-recruit-hero .b-hero-copy{top:54%;padding-right:0;left:20px;right:20px}.b-recruit-hero h1{font-size:45px}.b-recruit-hero .b-hero-copy>.en{font-size:16px;margin-bottom:22px}.b-recruit-hero .b-recruit-intro{font-size:14px;line-height:1.8;max-width:none}.b-recruit-hero .actions{display:flex;flex-direction:row;gap:12px;margin-top:28px}.b-recruit-hero .button{min-width:0;flex:1;padding:12px 10px}.b-slider-recruit img{object-position:58% center}.design-b .split{grid-template-columns:1fr;gap:32px}.design-b .split-text .prose{font-size:14px}.design-b .people-grid{grid-template-columns:1fr;gap:35px}.design-b .person-card h3{font-size:23px}.design-b .person-intro{gap:30px}.design-b .person-intro h1{font-size:30px}.design-b .number-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.design-b .number-card{padding:20px 15px}.design-b .number-card .value{font-size:56px}.design-b .number-card h2,.design-b .number-card h3{font-size:13px;min-height:40px}.design-b .job-card{grid-template-columns:1fr;padding:24px 20px;gap:14px}.design-b .job-card h2{font-size:20px}.design-b .job-type{width:max-content}.design-b .job-card p{font-size:13px}.design-b .job-table>div{display:block;padding-block:24px}.design-b .job-table dt{margin-bottom:12px;font-weight:700}.design-b .job-table dd{font-size:14px}.design-b .benefits-grid{grid-template-columns:1fr}.design-b .benefit h3{font-size:20px}.design-b .philosophy-list dd{font-size:23px}.design-b .service-row h3{font-size:23px}.design-b .service-row .prose{font-size:14px}.design-b .subnav{font-size:12px;gap:15px}.design-b .site-form,.design-b .form-intro{max-width:100%}.design-b .field-label{font-size:14px}.design-b .review-values>div{display:block}.design-b .review-values dt{margin-bottom:8px}.design-b .form-buttons{gap:12px}.design-b .thanks{padding-block:65px}.design-b .thanks h1{font-size:24px}.b-history-title{padding:150px 15px 60px}.b-history-title .en{font-size:45px}.b-history-title h1{font-size:22px}.b-history .timeline{padding-top:20px}.b-history .timeline::before{left:12px}.b-history .timeline li,.b-history .timeline .b-timeline-right{width:calc(100% - 45px);margin:0 0 35px 45px}.b-history .timeline li::before,.b-history .timeline .b-timeline-right::before{left:-40px;top:24px;width:16px;height:16px}.b-history .timeline time,.b-history .timeline .b-timeline-right time{position:static;text-align:left;font-size:14px;padding-bottom:10px;display:block}.b-history .timeline h2{font-size:16px}.b-history .timeline p{font-size:13px}.b-history .timeline li>div{padding:18px}.b-history .archive-note{padding:20px}.b-history .archive-note .timeline li{width:100%;margin:0}.b-entry-cta{padding:60px 20px}.b-entry-cta>.en{font-size:45px}.b-entry-cta h2{font-size:22px}.b-footer-body{flex-direction:column-reverse;padding:50px 20px 35px;gap:45px}.b-footer-contents,.b-footer-links{width:100%}.b-footer-contents>p,.b-footer-links>p{font-size:26px;margin-bottom:24px}.b-footer-links div>a{min-height:72px;margin:15px 0 25px}.b-footer-brand h2{font-size:16px}.b-footer-title{font-size:35px}.b-footer-legal{font-size:12px;gap:15px}.b-footer-recruit{justify-content:flex-start;padding:25px 20px;font-size:12px}.b-top{bottom:18px;right:18px;width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.b-slider-hero video{display:none}.b-slider-hero .swiper-slide{background:#111}.b-motion-toggle{display:none}.b-slider-people{height:650px}.b-slider-people .swiper-wrapper{transform:none!important}.b-slider-people .swiper-slide{height:650px}}
@media print{.b-entry-cta,.b-top,.b-motion-toggle{display:none}.design-b,.b-history{background:#fff!important;color:#000!important}.b-history .timeline::before{display:none}}

.b-history .b-video-hero{height:100vh}.b-history .b-hero-copy{left:50%;width:90%;text-align:center;transform:translate(-50%,-50%)}.b-history .b-slider-hero .swiper-slide::after{background:#000000d9}

/* 過去から将来構想へ続くタイムライン */
.b-history-timeline{list-style:none;margin:0;padding:50px 0 0;position:relative}
.b-history-item{--track:#363a3a;--trace:#e4e8e5;--node-top:30px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) 104px minmax(0,1fr);align-items:start;padding:0 0 64px;margin:0}
.b-history-item::before,.b-history-item::after{content:'';position:absolute;left:calc(50% - 1px);top:0;bottom:0;width:2px;pointer-events:none}
.b-history-item::before{background:var(--track)}
.b-history-item::after{background:var(--trace);transform-origin:top;transform:scaleY(var(--line-progress,1))}
.b-history-item:first-child::before,.b-history-item:first-child::after{top:var(--node-top)}
.b-history-item:last-child::before,.b-history-item:last-child::after{mask-image:linear-gradient(#000 75%,transparent)}
.b-history-node{position:absolute;left:50%;top:var(--node-top);width:14px;height:14px;border:2px solid var(--trace);border-radius:50%;background:#000;transform:translate(-50%,-50%);z-index:2;box-shadow:0 0 0 6px #000;transition:background .25s ease,box-shadow .35s ease}
.b-history-item.is-reached .b-history-node{background:var(--trace)}
.b-history-item.is-current .b-history-node{box-shadow:0 0 0 6px #000,0 0 0 7px var(--track),0 0 24px color-mix(in srgb,var(--trace) 35%,transparent)}
.b-history-card{grid-column:1;grid-row:1;position:relative;padding:23px 26px;background:#191b1b;border:1px solid #2a2d2d;border-radius:4px;min-width:0}
.b-history-card h2{font-size:18px;line-height:1.65;color:#f1f2ef;margin:0 0 10px;overflow-wrap:anywhere}
.b-history-card p{font-size:14px;line-height:1.9;color:#b9bebb;margin:0}
.b-history-date{grid-column:3;grid-row:1;position:relative;display:block;margin:0;padding-top:15px;font:400 22px/1.4 Oswald,sans-serif;letter-spacing:.04em;color:#c5cac7}
.b-history-right .b-history-card{grid-column:3}
.b-history-right .b-history-date{grid-column:1;text-align:right}
.b-history-future{--track:#2d4c49;--trace:#9fcec6}
.b-history-future .b-history-card{background:linear-gradient(120deg,#142827,#0d191a);border-color:#2b4845;border-top-color:#597d77}
.b-history-future .b-history-date{font-size:17px;letter-spacing:.12em;color:var(--trace)}
.b-history-future .b-history-date span{display:inline-block;margin-left:6px;font-size:25px;letter-spacing:.04em}
.b-history-future .b-history-card h2{color:#e0f1ec}
.b-history-future .b-history-card p{color:#b1c8c2}
.b-history-next{--track:#2d4c49;--trace:#9fcec6;--node-top:48px;padding-top:24px;padding-bottom:64px;scroll-margin-top:160px}
.b-history-next::before{background:linear-gradient(#363a3a,#2d4c49)}
.b-history-next::after{background:linear-gradient(#e4e8e5,#9fcec6)}
.b-history-next .b-history-date{grid-column:1;text-align:right;color:var(--trace);font-size:30px;letter-spacing:.06em;padding-top:1px}
.b-history-next .b-history-card{grid-column:3;padding:0;background:transparent;border:0}
.b-history-next h2{font-size:25px;letter-spacing:.04em;color:#d8eee7;margin-bottom:16px}
.b-history-next .b-history-note{font-size:12px;color:#9aafaa;line-height:1.9}
@media(max-width:720px){
  .b-history-timeline{padding-top:15px}
  .b-history-item{--node-top:14px;grid-template-columns:38px minmax(0,1fr);padding-bottom:36px}
  .b-history-item::before,.b-history-item::after{left:8px}
  .b-history-node{left:9px;width:12px;height:12px;box-shadow:0 0 0 4px #000}
  .b-history-date,.b-history-right .b-history-date{grid-column:2;grid-row:1;text-align:left;font-size:19px;padding:0 0 12px}
  .b-history-card,.b-history-right .b-history-card{grid-column:2;grid-row:2;padding:19px 20px}
  .b-history-card h2{font-size:16px}
  .b-history-card p{font-size:13px}
  .b-history-future .b-history-date{font-size:14px}
  .b-history-future .b-history-date span{font-size:20px}
  .b-history-next{--node-top:36px;padding-top:24px;padding-bottom:38px;scroll-margin-top:110px}
  .b-history-next .b-history-date{grid-column:2;text-align:left;font-size:24px;padding:0 0 14px}
  .b-history-next .b-history-card{grid-column:2;padding:0}
  .b-history-next h2{font-size:22px;margin-bottom:12px}
  .b-history-next .b-history-note{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .b-history-node{transition:none}
  .b-history-item::after{transform:none}
  .b-history-item.is-current .b-history-node{box-shadow:0 0 0 6px #000}
}
@media print{
  .b-history-item{break-inside:avoid;--track:#bbb;--trace:#555}
  .b-history-item::after{transform:none}
  .b-history-card,.b-history-future .b-history-card{background:#fff;border-color:#aaa}
  .b-history-card h2,.b-history-card p,.b-history-date,.b-history-future .b-history-card h2,.b-history-future .b-history-card p,.b-history-future .b-history-date,.b-history-next h2,.b-history-next .b-history-date,.b-history-next .b-history-note{color:#222}
  .b-history-node,.b-history-item.is-reached .b-history-node{background:#fff;box-shadow:none}
}

.b-latest{max-width:none;background:#fff;color:#333;padding:0 50px}.design-b .b-latest .newest{margin:0;padding:22px 0;background:transparent;color:#333;border-color:#ddd}.b-latest .eyebrow{color:#555}.b-latest .newest-body{color:#333}
@keyframes b-fade-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.b-enter{animation:b-fade-in .9s ease both}
@media(max-width:720px){.b-latest{padding:0 16px}.design-b .b-latest .newest{gap:12px;font-size:13px;padding:20px 0}}
@media(prefers-reduced-motion:reduce){.b-enter{animation:none}}

.b-slider-hero{padding:150px}.b-slider-hero .swiper-wrapper{align-items:flex-start}.b-slider-hero .swiper-slide{height:auto}.b-slider-hero video{height:auto;display:block}
body.b-article{background:#f7f9fa}.b-article .breadcrumb{background:transparent;padding:30px 20px;color:#8e8e8e}.b-article .page-head{width:calc(100% - 40px);padding:80px 150px 30px;background:#fff}.b-article .page-head .news-meta{padding:0;margin-bottom:10px}.b-article .page-body{max-width:1100px;padding:0;background:#fff}.b-article .article-layout{display:flex;flex-direction:column;padding:0 150px 60px}.b-article .article-layout>article{order:0}.b-article .article-sidebar{order:1;margin:40px 0 0}.b-article .prose{line-height:1.6}.b-article .prose img{margin-top:0}.b-article .related{padding:60px 25px;background:#f7f9fa}
@media(max-width:1080px){.b-slider-hero{padding:100px 40px 0}.b-article .page-head{padding:50px 7% 30px}.b-article .article-layout{padding:0 7% 50px}}
@media(max-width:720px){.b-article .page-head{width:100%;padding:40px 15px 25px}.b-article .page-body{width:100%}.b-article .article-layout{padding:0 15px 40px}.b-article .breadcrumb{padding:20px 0}.b-article .related{padding:45px 15px}}

.design-b .news-image.placeholder{background:#f5f5f5;color:#aaa;display:grid;place-items:center;padding:12px;font:700 clamp(16px,2vw,28px)/1.4 Oswald,sans-serif;letter-spacing:0;white-space:nowrap}.design-b #main>.b-page-head+.thanks{min-height:0;padding-block:55px}
.b-slider{width:100%;max-width:100%}
.b-page-head h1,.b-entry-cta h2,.b-recruit-banner h2{text-wrap:balance}

/* 会社のストーリーと主な沿革 */
.b-story{background:#fff;color:#161616;padding:100px 0}
.b-story-intro{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:start}
.b-story-heading{margin:0}
.b-story .b-story-label{font-size:14px;font-weight:400;line-height:1.4;letter-spacing:.12em;margin:0 0 22px}
.b-story h2{font-size:40px;font-weight:600;line-height:1.7;letter-spacing:.035em;margin:0;color:#161616}
.b-story-body{font-size:16px;line-height:2.1;letter-spacing:.035em;color:#525252;padding-top:41px}
.b-story-body p{margin:0 0 18px}
.b-story-body p:last-child{margin-bottom:0}

.b-story-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;padding:0;margin:48px 0 34px}
.b-story-milestones li{border-top:1px solid #d9d9d9;padding:20px 0 0;min-width:0}
.b-story-milestones time{display:block;font:400 36px/1.2 Oswald,sans-serif;letter-spacing:.025em;margin:0 0 16px;color:#161616}
.b-story-milestones span{display:block;font-size:14px;line-height:1.8;font-weight:500}
.b-story .text-link{margin:0;min-height:46px;color:#161616;border-color:#161616}
.b-story .text-link:hover{background:#161616;color:#fff}
@media(max-width:900px){.b-story{padding:64px 0}.b-story-intro{grid-template-columns:1fr;gap:24px}.b-story-body{padding-top:0;max-width:640px}.b-story h2{font-size:34px}.b-story-milestones{margin-top:34px}}
@media(max-width:720px){.b-story{padding:60px 0}.design-b .b-story>.wrap{width:calc(100% - 44px)}.b-story h2{font-size:28px;letter-spacing:.01em}.b-story-body{font-size:15px;line-height:2;letter-spacing:.02em}.b-story-milestones{grid-template-columns:1fr;gap:0;margin:30px 0}.b-story-milestones li{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:20px;padding:18px 0}.b-story-milestones time{margin:0;font-size:28px}.b-story-milestones span{font-size:13px}.b-story .text-link{padding:12px 24px;font-size:13px}}

/* 共通コンタクトとフッターの配色・書体・余白 */
.design-b .contact-band,.design-b .site-footer{--gutter:clamp(22px,5.3vw,88px);--ink:#20231f;font:400 15px/1.9 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:normal}
.design-b .contact-band{color:var(--ink)}
.design-b .contact-band .wrap{width:min(1280px,100% - var(--gutter)*2)}
.design-b .contact-band .button{min-height:56px;min-width:205px;padding:16px 26px;border-radius:0;background:var(--ink);color:#fff;border-color:var(--ink);font-size:14px;transition:background-color .2s,color .2s,border-color .2s}
.design-b .contact-band .button:hover,.design-b .contact-band .button:focus-visible{background:#3b4039;transform:none;opacity:1}
.design-b .site-footer a:hover{opacity:1}
@media(min-width:601px){.b-top{bottom:76px}}
@media(max-width:1100px){.design-b .contact-band,.design-b .site-footer{--gutter:35px}}
@media(max-width:600px){.design-b .contact-band,.design-b .site-footer{--gutter:22px;font-size:14px}.design-b .contact-band .button{min-width:185px;min-height:53px;padding:14px 20px;font-size:13px}}

/* 採用ページの公式Instagram */
.design-b .footer-social{max-width:1440px;margin:auto;padding:32px 0;display:grid;grid-template-columns:1.3fr 2fr;align-items:center;gap:70px;border-top:1px solid #ffffff27;scroll-margin-top:170px}
.design-b .footer-social-title{margin:0 0 8px;font:600 12px/1.4 Arial,sans-serif;letter-spacing:.18em;color:#fff}
.design-b .footer-social-caption{margin:0;font-size:12px;color:#c4c7bd}
.design-b .footer-social-links{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.design-b .footer-social-link{min-width:0;min-height:82px;padding:16px 24px;display:flex;align-items:center;gap:18px;border:1px solid #ffffff4d;border-radius:999px;color:#fff;background:transparent;text-decoration:none;transition:background-color .25s,color .25s,border-color .25s}
.design-b .footer-social-link svg{flex:none}
.design-b .footer-social-name{display:block;font:600 17px/1.4 Arial,sans-serif;letter-spacing:.035em}
.design-b .footer-social-label{display:block;margin-top:4px;font-size:11px;line-height:1.5;color:#c4c7bd;transition:color .25s}
.design-b .footer-social-link:hover,.design-b .footer-social-link:focus-visible{background:#fff;border-color:#fff;color:#20231f;text-decoration:none}
.design-b .footer-social-link:hover .footer-social-label,.design-b .footer-social-link:focus-visible .footer-social-label{color:#50594b}
.design-b .footer-social-link:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:1100px){.design-b .footer-social{gap:35px;grid-template-columns:1fr 2fr}.design-b .footer-social-link{padding-inline:20px;gap:14px}}
@media(max-width:840px){.design-b .footer-social{grid-template-columns:1fr;gap:22px}}
@media(max-width:600px){.design-b .footer-social{padding-block:28px}.design-b .footer-social-links{grid-template-columns:1fr;gap:12px}.design-b .footer-social-link{min-height:76px;padding:14px 24px;gap:18px}}
@media(prefers-reduced-motion:reduce){.design-b .footer-social-link,.design-b .footer-social-label{transition:none}}
