:root{--brand:#1f3a68;--brand-dark:#152a4d;--accent:#3a78c2;--pale:#eef2f8;--ink:#1d1b20;--muted:#555158;--white:#fff;--line:#dde2e8;--space:80px}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--white);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.9}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--brand);text-underline-offset:5px}button{font:inherit}img{max-width:100%;height:auto}p,h1,h2,h3{margin-top:0}p{margin-bottom:0}h2{font-size:32px;line-height:1.5;letter-spacing:.015em;margin-bottom:18px}h3{font-size:23px;line-height:1.6;letter-spacing:.01em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:2px}.container{width:min(1120px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;top:8px;left:12px;padding:10px 16px;background:#fff;z-index:10;transform:translateY(-160%)}.skip-link:focus{transform:none}.draft-notice{background:var(--pale);border-bottom:1px solid var(--line);padding:9px 0;color:var(--brand-dark);font-size:12px;line-height:1.65}.draft-notice .container{display:flex;gap:16px;align-items:center}.draft-notice strong{flex-shrink:0}.site-header{background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:98px}.brand{display:flex;flex-shrink:0;align-items:center;text-decoration:none;white-space:nowrap;line-height:1}.brand img{height:34px;width:auto;margin-right:12px}.logo-name{display:flex;align-items:center;font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Hiragino Sans","メイリオ",Meiryo,"Yu Gothic UI",sans-serif;font-size:13px;font-weight:700;color:#383635;letter-spacing:.06em;line-height:1}.logo-name:before{content:"";width:1px;height:17px;background:var(--line);margin-right:12px}.site-navigation{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.site-navigation a{text-decoration:none;min-height:44px;display:flex;align-items:center}.site-navigation a:hover{text-decoration:underline}.site-navigation .nav-contact{padding:8px 16px;border:1px solid var(--brand);border-radius:4px}.menu-toggle{display:none}.hero{padding:88px 0 84px;background:linear-gradient(125deg,#fbfcfe,#e8eef7);border-block:1px solid var(--line)}.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:center}.hero h1{font-size:46px;line-height:1.5;letter-spacing:.015em;font-weight:700;margin:0 0 28px;color:var(--brand-dark)}.hero-line{display:block;white-space:nowrap}.hero-intro{font-size:16px;line-height:2.05;max-width:43em;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:10px 24px;background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:4px;text-decoration:none;font-size:14px;font-weight:700}.button-secondary{background:#fff;color:var(--brand)}.button:hover{background:var(--brand-dark);color:#fff}.business-outline{border-left:1px solid #b9c8dc;padding-left:28px}.business-outline p{font-size:13px;color:var(--muted);margin-bottom:15px}.business-outline a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid #c8d5e6;font-size:18px;font-weight:700;text-decoration:none}.business-outline a:hover{text-decoration:underline}.section{padding:var(--space) 0}.section-heading p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:40px}.service{border-top:3px solid var(--accent);padding-top:26px;scroll-margin-top:28px}.service h3{margin:0 0 15px;color:var(--brand)}.service>p{font-size:16px;font-weight:700;min-height:62px;line-height:1.9}.service .service-description{font-size:14px;color:var(--muted);font-weight:400;line-height:1.95;min-height:0;margin-top:16px}.service-mark{display:none}.experience{background:var(--brand-dark);color:#fff}.experience-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.experience h2{margin-bottom:0}.experience-intro{font-size:17px;line-height:2.05}.industry-list{display:flex;gap:10px;list-style:none;padding:0;margin:25px 0}.industry-list li{border:1px solid #71829e;min-width:74px;text-align:center;padding:6px 15px;font-size:14px}.experience-note{font-size:14px;color:#e0e7f2}.company-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:90px}.company-caption{font-size:14px;margin-top:15px}.company-facts{margin:0}.company-facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);border-bottom:1px solid var(--line);padding:17px 0;gap:20px}.company-facts>div:first-child{border-top:1px solid var(--line)}dt{font-weight:700}dd{margin:0;color:var(--muted)}address{font-style:normal}.company-history{margin-top:34px}.company-history h3{font-size:18px;margin-bottom:16px}.company-history dl{margin:0}.company-history dl>div{display:grid;grid-template-columns:150px 1fr;gap:20px;margin-top:10px;font-size:14px}.partners{background:var(--pale)}.partners-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:90px;align-items:center}.partners h2{margin:0}.partners p{max-width:36em}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:48px;margin-top:18px;font-weight:700;font-size:15px}.text-link span{font-size:21px}.contact-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:90px;align-items:center}.contact h2{margin-bottom:10px}.contact-layout>div>p{color:var(--muted);font-size:14px}.contact-guidance{border-left:3px solid var(--brand);padding:10px 0 10px 30px}.contact-guidance p{font-size:19px!important;font-weight:700;line-height:1.9;color:var(--brand-dark)!important}.contact-guidance span{display:block;margin-top:12px;color:var(--muted);font-size:13px}.site-guidance{border-top:1px solid var(--line);padding:24px 0}.guidance-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.site-guidance details{font-size:14px;scroll-margin-top:30px}.site-guidance summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--brand);font-weight:700}.site-guidance details p{padding:10px 0 8px;color:var(--muted)}.site-footer{background:var(--brand-dark);color:#fff;padding:28px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.site-footer p{font-size:11px;line-height:1.8}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px}.site-footer a{display:flex;align-items:center;min-height:44px;color:#fff;font-size:12px;text-decoration:none}.site-footer a:hover{text-decoration:underline}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;gap:12px;padding:24px 0 16px}.site-navigation{width:100%;justify-content:flex-end;gap:28px}.hero-layout{grid-template-columns:1fr;gap:35px}.hero h1{font-size:44px}.business-outline{display:flex;gap:20px;align-items:center;border-left:0;border-top:1px solid #b9c8dc;padding:18px 0 0}.business-outline p{margin:0;font-size:12px}.business-outline a{flex:1;font-size:16px;min-height:44px;border:0}.service-grid{gap:26px}.service h3{font-size:21px}.experience-layout,.company-layout,.partners-layout,.contact-layout{gap:45px}.footer-inner{display:block}.site-footer nav{margin-top:12px}}
@media(max-width:700px){:root{--space:54px}.container{width:calc(100% - 40px)}h2{font-size:26px}.draft-notice{font-size:11px;padding:9px 0}.draft-notice .container{display:block}.draft-notice strong{display:block;margin-bottom:2px}.header-inner{padding:19px 0 12px;gap:15px;min-height:0}.brand{width:100%}.brand img{height:30px;margin-right:10px}.logo-name{font-size:12px;letter-spacing:.04em}.logo-name:before{height:15px;margin-right:10px}.menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--line);border-radius:3px;min-height:44px;width:100%;padding:8px 14px;font-size:13px;font-weight:700;color:var(--brand)}.menu-symbol{display:block;width:16px;height:10px;border-block:1px solid currentColor;position:relative}.menu-symbol:after{content:"";height:1px;width:16px;background:currentColor;position:absolute;top:4px;left:0}.menu-toggle[aria-expanded=true] .menu-symbol{height:1px;border-top:0;transform:rotate(45deg);border-bottom:1px solid currentColor}.menu-toggle[aria-expanded=true] .menu-symbol:after{transform:rotate(90deg);top:-1px}.site-navigation{display:none;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:3px 0}.site-navigation.is-open{display:flex}.site-navigation a{min-height:48px;padding:9px 14px;font-size:14px;border-bottom:1px solid var(--line)}.site-navigation .nav-contact{border:0;border-bottom:1px solid var(--line);border-radius:0}.hero{padding:48px 0 40px}.hero-layout{gap:30px}.hero h1{font-size:clamp(24px,6.6vw,36px);line-height:1.65;letter-spacing:0;margin-bottom:22px}.hero-intro{font-size:14px;line-height:2.05}.hero-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:26px}.button{font-size:14px;min-height:48px;width:100%}.business-outline{display:block;padding-top:17px}.business-outline p{margin-bottom:9px}.business-outline a{min-height:46px;border-bottom:1px solid #c8d5e6;font-size:16px}.business-outline a:last-child{border-bottom:0}.section-heading p{font-size:14px}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.service{padding-top:22px}.service h3{font-size:23px;margin-bottom:9px}.service>p{min-height:0;font-size:15px}.service .service-description{font-size:14px;margin-top:12px}.desktop-break{display:none}.experience-layout,.company-layout,.partners-layout,.contact-layout{grid-template-columns:1fr;gap:27px}.experience-intro{font-size:15px}.industry-list{margin:20px 0;gap:9px}.company-caption{margin-top:9px}.company-facts>div{grid-template-columns:88px minmax(0,1fr);gap:15px;font-size:13px;padding:16px 0}.company-history dl>div{grid-template-columns:1fr;gap:2px;font-size:13px;margin-top:13px}.company-history{margin-top:27px}.partners p{font-size:14px}.text-link{font-size:14px;gap:12px}.contact-guidance{padding-left:20px}.contact-guidance p{font-size:17px!important}.contact-guidance span{font-size:12px}.guidance-grid{grid-template-columns:1fr;gap:8px}.site-guidance{padding:18px 0}.site-footer{padding:22px 0}.site-footer nav{gap:0 16px}.site-footer p{font-size:10px}.site-footer a{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.intro-sentence{display:block}.intro-sentence>span{display:inline-block;max-width:100%}
.copy-chunk{display:inline-block!important;max-width:100%;font:inherit!important;color:inherit!important;margin:0!important}.contact-guidance p .copy-chunk{font-size:inherit!important}@media(min-width:641px) and (max-width:700px){.brand img{height:34px;margin-right:12px}.logo-name{font-size:13px;letter-spacing:.06em}.logo-name:before{height:17px;margin-right:12px}}@media(min-width:701px) and (max-width:900px){.experience-layout{grid-template-columns:1fr;gap:30px}}
/* 企業経験とAI告知を分けた2画面ヒーロー */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero-slider{border-block:1px solid var(--line);background:#fff}.slider-viewport{overflow:hidden}.slider-track{display:flex;transition:transform .65s ease-in-out;transform:translateX(0)}.slider-track[data-slide="1"]{transform:translateX(-100%)}.hero-slide{flex:0 0 100%;min-width:0;background-size:cover;background-position:center;min-height:470px}.slide-experience{background-color:#eef2f8;background-image:url('hero-experience.svg')}.slide-ai{background-color:#152a4d;background-image:url('hero-ai.svg');color:#fff}.slide-inner{min-height:470px;display:flex;align-items:center;padding-block:66px}.slide-copy{width:min(730px,74%)}.slide-title{font-size:46px;line-height:1.55;letter-spacing:0;margin:0 0 24px;color:var(--brand-dark)}.slide-title>span{display:block;white-space:nowrap}.slide-ai .slide-title{color:#fff}.slide-description{font-size:16px;line-height:2.05;max-width:39em;color:var(--brand-dark);margin-bottom:26px}.slide-ai .slide-description{color:#fff;font-size:19px;font-weight:700}.slide-ai .button{background:#fff;border-color:#fff;color:var(--brand-dark)}.slide-ai .button:hover{background:#eef2f8}.slider-controls{display:flex;justify-content:center;align-items:center;gap:10px;min-height:80px;padding-block:14px}.slider-controls button{min-width:44px;min-height:44px;background:#fff;border:1px solid #b9c8dc;border-radius:3px;color:var(--brand);font-weight:700;cursor:pointer}.slider-arrow{font-size:20px}.slider-indicators{display:flex;gap:3px}.slider-indicators button{border:0}.slider-indicators span{display:block;width:10px;height:10px;margin:auto;background:#a3b0c5;border:1px solid #63728a;border-radius:50%}.slider-indicators [aria-current=true] span{background:var(--brand);border-color:var(--brand);width:14px;height:14px}.slider-pause{padding:8px 15px;font-size:13px}.slider-state{font-size:12px;min-width:143px;color:var(--muted)}.business-bar{background:var(--pale);border-bottom:1px solid var(--line)}.business-bar>.container{display:flex;align-items:center;gap:40px;padding-block:15px}.business-bar p{font-size:13px;color:var(--muted)}.business-bar a{display:flex;align-items:center;min-height:48px;font-size:17px;font-weight:700;text-decoration:none}.business-bar a:hover{text-decoration:underline}
@media(max-width:1100px){.slide-copy{width:82%}.slide-title{font-size:40px}.hero-slide,.slide-inner{min-height:450px}.business-bar>.container{gap:30px}}
@media(max-width:700px){.hero-slide{min-height:490px;background-size:auto 100%;background-position:62% center}.slide-inner{min-height:490px;padding-block:48px}.slide-copy{width:100%}.slide-title{font-size:26px;line-height:1.65;margin-bottom:22px}.slide-description{font-size:14px;line-height:2.05;max-width:100%;margin-bottom:26px}.slide-ai .slide-description{font-size:16px}.slide-experience{background-position:32% center}.slide-ai{background-position:25% center}.slider-controls{flex-wrap:wrap;gap:8px;min-height:114px;padding-block:12px}.slider-state{flex-basis:100%;min-width:0;text-align:center;font-size:11px;line-height:1.5}.slider-pause{padding-inline:10px;font-size:12px}.business-bar>.container{display:grid;grid-template-columns:1fr;gap:0;padding-block:15px}.business-bar p{font-size:12px;margin-bottom:5px}.business-bar a{min-height:46px;font-size:16px;border-bottom:1px solid #c8d5e6}.business-bar a:last-child{border:0}}
@media(prefers-reduced-motion:reduce){.slider-track{transition:none}}
@media(max-width:700px){.hero-slide{background-size:auto 230px;background-position:right bottom;background-repeat:no-repeat}.slide-experience{background-color:#f7f9fc}.slide-ai{background-color:#152a4d}}
.brand{min-height:44px}
/* 言語版は日本語のみ。英語・ドイツ語は仮の準備中表示。 */
.language-options{display:flex;align-items:center;gap:6px;flex-shrink:0;color:var(--brand);font-size:11px}.language-label{margin-right:2px}.language-options button{min-height:44px;min-width:44px;padding:5px 8px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--brand);font-size:11px;line-height:1.4}.language-options button[aria-pressed=true]{border-color:var(--brand);background:var(--pale);font-weight:700}.language-options button:disabled{opacity:1;color:var(--muted);background:#fff;cursor:default}.language-options small{display:block;font-size:10px}.header-inner{gap:18px}.site-navigation{gap:16px}
.slider-track[data-position="0"]{transform:translateX(0)}.slider-track[data-position="1"]{transform:translateX(-100%)}.slider-track[data-position="2"]{transform:translateX(-200%)}.slider-track.is-resetting{transition:none!important}.hero-slide-clone{pointer-events:none}
@media(max-width:1100px){.language-options{margin-left:auto}.site-navigation{gap:28px}}
@media(max-width:700px){.language-options{width:100%;margin-left:0;justify-content:flex-end}.header-inner{gap:15px}}
@media(min-width:701px) and (max-width:1100px){.brand{order:0}.language-options{order:1;margin-left:auto}.site-navigation{order:2}}
/* r4: 操作領域を保ちながら、ヒーロー下の操作バーを控えめにする。 */
.slider-controls{min-height:56px;padding-block:4px;gap:0}.slider-controls button{border-color:transparent;background:transparent;font-weight:400}.slider-controls button:hover:not(:disabled){background:var(--pale)}.slider-controls .slider-arrow{font-size:16px}.slider-indicators{gap:0}.slider-indicators span{width:6px;height:6px;background:#a3b0c5;border-color:#63728a}.slider-indicators [aria-current=true] span{width:8px;height:8px}.slider-controls .slider-pause{padding:4px 8px;font-size:11px;text-decoration:underline;text-underline-offset:4px}.slider-controls .slider-pause:disabled{text-decoration:none;cursor:default}.slider-state{font-size:10px;min-width:0;margin-left:10px}
@media(max-width:700px){.slider-controls{min-height:72px;padding-block:4px;gap:0}.slider-state{font-size:10px;line-height:1.5;margin-left:0}}
/* r5: 字体に依存しない小さな塗り三角。ボタン領域は44pxを維持。 */
.slider-controls .slider-arrow{display:inline-flex;align-items:center;justify-content:center;padding:0}.arrow-glyph{display:block;width:0;height:0;border-block:5px solid transparent}.arrow-left{border-right:8px solid currentColor}.arrow-right{border-left:8px solid currentColor}
/* r5: 言語の見える枠は32px、外側の実ボタンは44px以上。 */
.language-options{gap:4px}.language-options button{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0;border:0;background:transparent;font-size:10px}.language-options button[aria-pressed=true]{border:0;background:transparent}.language-options .language-face{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:36px;height:32px;padding:3px 6px;border:1px solid var(--line);border-radius:3px;line-height:1.2;white-space:nowrap}.language-options [aria-pressed=true] .language-face{border-color:var(--brand);background:var(--pale)}.language-options .language-face small{font-size:9px;line-height:1.2}

/* r6: B案の言語欄とメニューを右16pxへ。ロゴと本文の左位置は維持。 */
.site-header .header-inner{width:auto;margin-left:max(32px,calc((100% - 1120px)/2));margin-right:16px;gap:16px;justify-content:flex-start}.site-header .site-navigation{margin-left:auto;gap:16px}.site-header .language-options{margin-left:0}
@media(max-width:1100px){.site-header .language-options{margin-left:auto}}
@media(max-width:700px){.site-header .header-inner{margin-left:20px}.site-header .site-navigation{gap:0}}

/* r7: 左右均等の従来余白へ戻し、メニューだけを言語欄の手前へ寄せる。 */
.site-header .header-inner{width:min(1120px,calc(100% - 64px));margin-inline:auto}.site-header .site-navigation{margin-left:auto}.site-header .language-options{margin-left:0}
@media(min-width:701px) and (max-width:1100px){.site-header .language-options{margin-left:auto}}
@media(max-width:700px){.site-header .header-inner{width:calc(100% - 40px);margin-inline:auto}}

/* r8: 余白を維持し、Lang/各言語の文字を20%縮小。枠を外し言語間隔を半減。 */
.language-options{font-size:8.8px;gap:2px}.language-options button{font-size:8px}.language-options .language-face{border:0;background:transparent}.language-options [aria-pressed=true] .language-face{border:0;background:transparent}

/* r9: 文字の自然幅で詰め、DEの文字端を共通右端へ揃える。 */
.language-options{gap:6px}.language-options .language-label{margin-right:0}.language-options button{min-width:0;width:auto;padding:0;flex:0 0 auto}.language-options .language-face{min-width:0;width:auto;height:auto;padding:0;line-height:1.2}

/* r10: 言語を少し拡大し、仮の独立ページ候補だけを表示する。 */
.language-options,.language-options button{font-size:10px}.language-options .language-label{font-weight:600}.language-options button{font-weight:400}.language-options button[aria-pressed=true]{font-weight:700}
.draft-boundary{border-top:2px dashed var(--accent);background:var(--pale);color:var(--brand-dark);padding:10px 0;font-size:12px;line-height:1.7}.draft-boundary p{font-weight:600;margin:0}.draft-boundary span{display:block;font-weight:400;margin-top:3px}

/* r11: デスクトップだけナビと言語群の間を32pxにする。 */
@media(min-width:1101px){.site-header .language-options{margin-left:16px}}

/* r12: 指示によりナビをさらに16px左へ。言語位置を維持。 */
@media(min-width:1101px){.site-header .language-options{margin-left:32px}}

/* r14: 第1面の主見出し・業務経験・補足を読み分ける。 */
.slide-subtitle{font-size:20px;font-weight:600;line-height:1.85;color:var(--brand-dark);margin:0 0 16px}.slide-sub-line{display:block}.slide-experience .slide-detail{font-size:14px;font-weight:400;line-height:1.95;max-width:43em}
@media(max-width:700px){.slide-subtitle{font-size:16px;line-height:1.9;margin-bottom:14px}.slide-experience .slide-detail{font-size:13px;line-height:1.9}}

/* r15: トップのお知らせ、サービスの概要、経験の詳細。 */
.news{padding-block:48px}.news-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start}.news h2{font-size:26px;margin:0}.news-draft-note{font-size:12px;color:var(--muted);margin-bottom:12px}.news-list{list-style:none;padding:0;margin:0}.news-list li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;align-items:baseline;border-block:1px solid var(--line);padding-block:18px}.news-date{font-size:13px;color:var(--muted)}.news-list a{font-size:15px;text-decoration:none}.news-list a:hover{text-decoration:underline}.service-detail-link{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;font-size:14px;font-weight:700}.service-terminology{font-size:12px!important}.experience-detail{font-size:15px;line-height:2.05;margin-top:20px}.industry-list{flex-wrap:wrap}.experience-note{max-width:43em}
@media(max-width:700px){.news{padding-block:34px}.news-layout{grid-template-columns:1fr;gap:18px}.news-list li{grid-template-columns:1fr;gap:6px;padding-block:16px}.experience-detail{font-size:14px}.service-detail-link{font-size:13px}}
@media(min-width:701px) and (max-width:1000px){.service-grid{grid-template-columns:1fr;gap:32px}.service>p{min-height:0;max-width:43em}.service .desktop-break{display:none}}
@media(max-width:700px){.experience h2{font-size:clamp(22px,6vw,26px)}.industry-list{gap:8px}.industry-list li{min-width:64px;padding-inline:12px}}

/* 階層型ドラフト：共通導線と情報ページ。r15の色/ロゴ/ヘッダー/スライドを継承。 */
.site-navigation [aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}.page-intro{background:var(--pale);border-block:1px solid var(--line);padding:24px 0 54px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 32px;font-size:13px;color:var(--muted)}.breadcrumbs li+li:before{content:'/';margin-right:8px;color:var(--muted)}.breadcrumbs a{display:inline-flex;min-height:44px;align-items:center}.breadcrumbs li{min-height:44px;display:inline-flex;align-items:center}.page-intro h1{font-size:40px;color:var(--brand-dark);line-height:1.5;margin:0 0 18px}.page-lead{max-width:44em;color:var(--brand-dark)}.prose{max-width:900px}.prose p{max-width:43em;margin-bottom:20px}.prose .button{margin-top:12px}.prose h3{font-size:22px;color:var(--brand);margin:0 0 14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.plain-list{padding-left:1.3em;margin:18px 0;max-width:43em}.plain-list li{margin-bottom:8px}.separated{margin-top:30px}.role-list{margin:28px 0}.role-list>div{border-block-start:1px solid var(--line);padding:18px 0}.role-list dd{margin-top:8px}.page-help{background:var(--pale);padding:48px 0;border-block:1px solid var(--line)}.help-inner{display:flex;justify-content:space-between;align-items:center;gap:32px}.page-help h2{font-size:26px;margin-bottom:10px}.page-help p{font-size:15px;max-width:43em}.help-inner .button{flex-shrink:0}.related-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.related-row h2{font-size:16px;margin:0}.related-row a{display:inline-flex;min-height:44px;align-items:center;font-size:14px}.service h2{font-size:23px;color:var(--brand);margin:0 0 15px}.business-bar p a{font-size:13px;min-height:44px}.form-layout{display:grid;grid-template-columns:1fr 1.45fr;gap:60px}.contact-intro h2{font-size:26px}.contact-intro p{font-size:15px;max-width:36em}.preview-note{font-size:13px!important;background:var(--pale);padding:16px;margin-top:24px}.required-guide{font-size:13px;color:var(--muted);margin-bottom:24px}.form-field{margin-bottom:24px}.form-field label{display:block;font-size:15px;font-weight:700;margin-bottom:8px}.field-required,.field-optional{font-size:12px;font-weight:400;margin-left:10px;color:var(--muted)}.form-field input,.form-field select,.form-field textarea{font:inherit;width:100%;max-width:100%;border:1px solid #8994a5;border-radius:3px;padding:10px 12px;color:var(--ink);background:#fff;min-height:48px}.form-field textarea{resize:vertical}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.form-preview:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.form-privacy{font-size:14px;border-top:1px solid var(--line);padding:20px 0}.form-privacy a{display:inline-flex;min-height:44px;align-items:center}.form-preview{padding:24px;margin-top:32px;background:var(--pale);border:1px solid var(--line)}.form-preview h2{font-size:23px}.form-preview p{font-size:14px}.form-preview dl{margin:24px 0}.form-preview dl>div{border-bottom:1px solid var(--line);padding:12px 0}.form-preview dd{overflow-wrap:anywhere;white-space:pre-wrap}.form-preview .button{font:inherit;cursor:pointer}.section+.section{border-top:1px solid var(--line)}
@media(max-width:900px){.form-layout{grid-template-columns:1fr;gap:30px}.detail-grid{grid-template-columns:1fr;gap:26px}}
@media(max-width:700px){.page-intro{padding-bottom:32px}.page-intro h1{font-size:30px}.page-lead{font-size:15px}.breadcrumbs ol{font-size:12px;margin-bottom:18px}.prose p,.plain-list,.role-list{font-size:14px}.prose h3{font-size:21px}.help-inner,.related-row{display:flex;flex-direction:column;align-items:stretch;gap:20px}.page-help{padding:34px 0}.page-help p{font-size:14px}.related-row{gap:8px}.related-row h2{font-size:15px}.form-layout{gap:26px}.contact-intro h2{font-size:24px}.form-preview{padding:18px}.form-field{margin-bottom:22px}.form-privacy{font-size:13px}.form-field input,.form-field select,.form-field textarea{font-size:16px}}

/* ホームr2：詳細を下層へ分け、全幅の境界線を取り除く。 */
.homepage .hero-slider,.homepage .business-bar,.homepage main>.section,.homepage .page-help,.homepage .site-guidance{border:0}
.homepage .draft-boundary{display:none}
.homepage .site-footer .site-guidance{padding:0 0 12px}
.homepage .site-footer .related-row{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px 24px}
.homepage .site-footer .related-row h2{font-size:12px;font-weight:600;color:#fff}
.homepage .site-footer .related-row a{font-size:12px}
/* サービス下層の体裁整理：他ページ・ヘッダー・スライドには適用しない。 */
.service-page #services .service-grid{margin-top:0}
.service-page #services .service{display:flex;flex-direction:column;min-width:0}
.service-page #services .service-detail-link{align-self:flex-start;margin-top:auto;padding-top:16px}
.service-page .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.service-page .detail-grid>article{min-width:0}
@media(max-width:900px){.service-page .detail-grid{grid-template-columns:1fr}}
/* 2026-10-12: globe language label; JP/EN only */
.language-options .language-globe{display:inline-flex;align-items:center;margin-right:3px;flex:0 0 auto}.language-globe svg{display:block;width:16px;height:16px}


/* 2026-10-12: align globe and language codes on a common center */
.language-options{align-items:center}.language-options .language-globe{height:16px;line-height:1;justify-content:center}.language-options button{display:inline-flex;align-items:center;justify-content:center;line-height:1}.language-options .language-face{display:inline-flex;align-items:center;justify-content:center;height:16px;line-height:16px}.language-options .language-globe svg{flex:none;transform:translateY(-1px)}

/* 2026-10-12 Mia：社名の字の上下の中心を、隣のロゴの字「Blockware」の中心にそろえる（オーナーのご指示）。
   直す前は、社名の字の中心が Blockware の字の中心より 3.62px（ロゴ34px・社名13px）／3.13px（ロゴ30px・社名12px）上だった。
   縦線は社名の :before なので、一緒に下がる。位置だけを動かし、ロゴの大きさ・色・形は変えない */
.site-header .logo-name{position:relative;top:3.5px}
@media(max-width:640px){.site-header .logo-name{top:3px}}
/* 縦線は社名の枠の中心に付くので、字の中心より 1.25px（375px で 1px）下に出る。1px 上げて字の中心にそろえる */
.site-header .logo-name:before{position:relative;top:-1px}
/* 2026-10-21 見本：1枚目の背景を写真に（Mia） */
.slide-experience{background-color:#f7f9fc;background-image:linear-gradient(90deg,rgba(247,249,252,.95) 0%,rgba(247,249,252,.9) 36%,rgba(247,249,252,.55) 60%,rgba(247,249,252,.12) 88%,rgba(247,249,252,.04) 100%),url('hero-a6.jpg');background-size:cover,130% auto;background-position:center,right 30%;background-repeat:no-repeat}
@media(max-width:1100px){.slide-experience{background-image:linear-gradient(90deg,rgba(247,249,252,.95) 0%,rgba(247,249,252,.9) 58%,rgba(247,249,252,.74) 78%,rgba(247,249,252,.2) 100%),url('hero-a6.jpg')}}
@media(max-width:700px){.slide-experience{background-image:linear-gradient(180deg,rgba(247,249,252,.92) 0%,rgba(247,249,252,.84) 50%,rgba(247,249,252,.62) 78%,rgba(247,249,252,.45) 100%),url('hero-a6.jpg');background-size:cover,auto 120%;background-position:center,74% 30%;background-repeat:no-repeat}}

/* 2026-10-21 見本：2枚目（AI）の背景を写真 B-4 に（Mia） */
.slide-ai{background-color:#152a4d;background-image:linear-gradient(90deg,rgba(21,42,77,.9) 0%,rgba(21,42,77,.86) 42%,rgba(21,42,77,.6) 58%,rgba(21,42,77,.3) 80%,rgba(21,42,77,.24) 100%),url('hero-b4.jpg');background-size:cover,cover;background-position:center,center 38%;background-repeat:no-repeat}
@media(max-width:1100px){.slide-ai{background-image:linear-gradient(90deg,rgba(21,42,77,.9) 0%,rgba(21,42,77,.88) 60%,rgba(21,42,77,.66) 80%,rgba(21,42,77,.34) 100%),url('hero-b4.jpg');background-position:center,right 38%}}
@media(max-width:700px){.slide-ai{background-image:linear-gradient(180deg,rgba(21,42,77,.9) 0%,rgba(21,42,77,.88) 72%,rgba(21,42,77,.45) 88%,rgba(21,42,77,.22) 100%),url('hero-b4.jpg');background-size:cover,auto 100%;background-position:center,78% center;background-repeat:no-repeat}}
/* 2026-10-21 見本 c：b の版の左をさらに直した版（Mia） */
.slide-experience{background-color:#f7f9fc;background-image:linear-gradient(90deg,rgba(247,249,252,0.6) 0%,rgba(247,249,252,0.6) 24%,rgba(247,249,252,0.66) 36%,rgba(247,249,252,0.62) 42%,rgba(247,249,252,0.4) 54%,rgba(247,249,252,0.06) 80%,rgba(247,249,252,0) 100%),url('hero-a6c.jpg');background-size:cover,130% auto;background-position:center,right 30%;background-repeat:no-repeat}
@media(max-width:1100px){.slide-experience{background-image:linear-gradient(90deg,rgba(247,249,252,0.8) 0%,rgba(247,249,252,0.74) 58%,rgba(247,249,252,0.6) 78%,rgba(247,249,252,0.16) 100%),url('hero-a6c.jpg')}}
@media(max-width:700px){.slide-experience{background-image:linear-gradient(180deg,rgba(247,249,252,0.66) 0%,rgba(247,249,252,0.64) 60%,rgba(247,249,252,0.46) 82%,rgba(247,249,252,0.3) 100%),url('hero-a6c.jpg');background-size:cover,auto 136%;background-position:center,74% 70%;background-repeat:no-repeat}}
