:root{--color-text:#15364a;--color-muted:#526e7e;--color-brand:#0077ad;--color-brand-hover:#005b85;--color-deep:#083e54;--color-on-deep:#d0e3ed;--color-label-on-deep:#9edaf3;--color-white:#fff;--color-surface:#f2f7fa;--color-border:#d4e3eb;--color-input-border:#8ba5b4;--color-disabled:#e0e8ed;--font-body:1rem;--font-small:.875rem;--font-caption:.75rem;--font-title:clamp(2rem, 5vw, 4rem);--font-section:clamp(1.5rem, 2.5vw, 1.875rem);--font-card:1.25rem;--line-body:1.9;--line-heading:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-panel:4px;--radius-pill:999px;--content-width:75rem;--reading-width:48rem;--page-gutter:clamp(1.25rem, 5vw, 4rem);--section-gap:var(--space-20);--panel-padding:var(--space-8);--tap-size:44px;--button-size:56px}@media (max-width:640px){:root{--section-gap:var(--space-12);--panel-padding:var(--space-6)}}
*{box-sizing:border-box}html{color:var(--color-text);background:var(--color-white);font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,system-ui,sans-serif;font-size:100%;line-height:var(--line-body)}body{margin:0}main{max-width:var(--content-width);padding:var(--space-8) var(--page-gutter) var(--section-gap);min-height:70vh;margin-inline:auto}main>section{margin-block:var(--section-gap)}main>section:last-child{margin-bottom:0}h1,h2,h3{line-height:var(--line-heading);text-wrap:balance;word-break:auto-phrase;line-break:strict;overflow-wrap:anywhere}h1{font-size:var(--font-title);letter-spacing:-.04em;margin:var(--space-6) 0;line-height:1.3}h2{font-size:var(--font-section);margin:0 0 var(--space-6)}h3{font-size:var(--font-card);margin:var(--space-6) 0 var(--space-3)}p{margin:0 0 var(--space-4);text-wrap:pretty}p,li,dd{overflow-wrap:anywhere;word-break:auto-phrase}ul,ol{padding-left:var(--space-6)}li{margin-bottom:var(--space-2)}a{color:var(--color-brand);text-underline-offset:.25em}p a{word-break:keep-all;overflow-wrap:anywhere}a:hover{color:var(--color-brand-hover)}:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--color-brand);outline-offset:4px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img{max-width:100%}dd{margin:0}:where(section,article,[id]){scroll-margin-top:var(--space-8)}
.site-header{justify-content:space-between;align-items:center;gap:var(--space-8);padding:var(--space-4) max(var(--page-gutter), calc((100vw - var(--content-width)) / 2));border-top:4px solid var(--color-deep);border-bottom:1px solid var(--color-border);background:var(--color-white);display:flex}.logo{min-height:var(--tap-size);flex-shrink:0;align-items:center;display:inline-flex}.logo img,.footer-main img{width:218px;height:auto;display:block}.site-header nav,.footer-main nav{align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.site-header nav a,.footer-main nav a{min-height:var(--tap-size);padding:var(--space-2) var(--space-1);font-size:var(--font-small);color:var(--color-text);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.site-header nav a:hover,.footer-main nav a:hover{color:var(--color-brand);text-decoration:underline}.site-header .nav-contact{border:1px solid var(--color-brand);border-radius:var(--radius-panel);padding-inline:var(--space-4);gap:var(--space-4)}.site-footer{padding:var(--section-gap) max(var(--page-gutter), calc((100vw - var(--content-width)) / 2)) var(--space-6);border-top:1px solid var(--color-border);background:var(--color-surface)}.footer-main{justify-content:space-between;gap:var(--space-12);display:flex}.footer-main>div{flex-shrink:0}.footer-main p{font-size:var(--font-small);margin:var(--space-4) 0 var(--space-2)}.footer-main small,.footer-bottom{color:var(--color-muted)}.footer-main nav{justify-content:flex-end}.footer-bottom{justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--color-border);margin-top:var(--space-12);padding-top:var(--space-6);font-size:var(--font-caption);flex-wrap:wrap;display:flex}.footer-bottom small{font-size:inherit}.skip-link{top:-100px;left:var(--space-4);padding:var(--space-4);background:var(--color-white);z-index:10;position:absolute}.skip-link:focus{top:var(--space-4)}@media (max-width:1100px){.site-header{gap:var(--space-4);flex-wrap:wrap}.footer-main{gap:var(--space-8);flex-direction:column}.footer-main nav{justify-content:flex-start}}@media (max-width:640px){.site-header{padding-block:var(--space-3);gap:var(--space-2)}.logo img,.footer-main img{width:180px}.site-header nav{gap:0 var(--space-3)}.site-header nav a{font-size:var(--font-small)}}
.breadcrumbs{align-items:center;gap:var(--space-3);font-size:var(--font-caption);color:var(--color-muted);flex-wrap:wrap;display:flex}.breadcrumbs a{min-height:var(--tap-size);color:inherit;align-items:center;display:inline-flex}.page-intro{padding:var(--space-12) 0 var(--space-8);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-12)}.section-label{color:var(--color-brand);font-size:var(--font-caption);letter-spacing:.12em;margin:0 0 var(--space-4);font-weight:700}.intro-copy{max-width:var(--reading-width);color:var(--color-muted)}.section-links,.glossary-index{gap:var(--space-3);margin-bottom:var(--space-12);flex-wrap:wrap;display:flex}.section-links a,.glossary-index a{min-height:var(--tap-size);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);font-size:var(--font-small);align-items:center;font-weight:600;display:inline-flex}.button-primary,.button-light,.button-secondary{min-height:var(--button-size);justify-content:space-between;align-items:center;gap:var(--space-6);max-width:100%;padding:var(--space-3) var(--space-6);border-radius:var(--radius-panel);font-size:var(--font-body);overflow-wrap:anywhere;text-wrap:balance;word-break:auto-phrase;border:1px solid #0000;font-weight:600;line-height:1.5;text-decoration:none;display:inline-flex}.button-primary{background:var(--color-brand);color:var(--color-white)}.action-label{min-width:0}.keep-phrase{white-space:nowrap}.button-primary:hover{background:var(--color-brand-hover);color:var(--color-white)}.button-light{background:var(--color-white);color:var(--color-deep)}.button-light:hover{background:var(--color-surface);color:var(--color-deep)}.button-secondary{border-color:var(--color-brand);color:var(--color-brand);background:0 0}.button-secondary:hover{background:var(--color-surface)}.service-actions{align-items:center;gap:var(--space-4) var(--space-6);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.service-actions>a:not([class*=button-]),.text-link{min-height:var(--tap-size);font-size:var(--font-small);align-items:center;display:inline-flex}.service-card,.profile-panel,.company-name,.service-scope,.site-map-grid section{padding:var(--panel-padding);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel)}.service-card{flex-direction:column;margin:0;display:flex}.service-card h3{margin-top:var(--space-4)}.service-card p,.service-scope p,.service-scope li{color:var(--color-muted)}.service-card>a{margin-top:auto}.service-card>p:last-child{margin-bottom:0}.service-number{font-size:var(--font-caption);letter-spacing:.1em;color:var(--color-brand)}.service-detail,.offer-panel,.diagnosis-feature,.representative-message{padding:var(--panel-padding);border:1px solid var(--color-border);border-radius:var(--radius-panel)}.service-detail{border-left:3px solid var(--color-brand)}.offer-panel,.diagnosis-feature,.representative-message{background:var(--color-surface);border-top:3px solid var(--color-brand)}.contact-banner{padding:var(--panel-padding);background:var(--color-deep);color:var(--color-white);border-radius:var(--radius-panel);margin-top:var(--section-gap)}.contact-banner p{max-width:var(--reading-width);color:var(--color-on-deep)}.contact-banner .section-label{color:var(--color-label-on-deep)}.contact-banner p a,.contact-banner .service-actions>a:not([class*=button-]){color:var(--color-on-deep)}.contact-banner>.button-light{margin-top:var(--space-4)}.contact-banner :focus-visible{outline-color:var(--color-label-on-deep)}.application-cta{gap:var(--space-8);margin-bottom:var(--space-12);padding:var(--panel-padding);background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--color-brand);border-radius:var(--radius-panel);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.application-cta h2{font-size:var(--font-card);margin-bottom:var(--space-3)}.application-cta p{font-size:var(--font-small);color:var(--color-muted)}.application-cta .section-label{font-size:var(--font-caption);color:var(--color-brand)}.application-cta-action{gap:var(--space-3);flex-direction:column;display:flex}.application-cta-note{max-width:19rem;font-size:var(--font-small);color:var(--color-muted);line-height:1.7}.form-layout{gap:var(--space-12);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);display:grid}.form-guide h2{font-size:var(--font-card)}.form-guide p{color:var(--color-muted)}.contact-form{padding:var(--panel-padding);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface)}.contact-form label{gap:var(--space-2);margin-bottom:var(--space-6);font-size:var(--font-small);font-weight:600;display:grid}.contact-form input,.contact-form textarea,.contact-form select{width:100%;min-width:0;min-height:var(--button-size);padding:var(--space-3) var(--space-4);border:1px solid var(--color-input-border);border-radius:var(--radius-panel);color:var(--color-text);background:var(--color-white);font-size:var(--font-body);font-weight:400}.contact-form textarea{resize:vertical;min-height:11rem}.contact-form :is(input,textarea)::placeholder{color:var(--color-muted);opacity:1}.contact-form small{color:var(--color-muted);font-size:var(--font-small);font-weight:400}.contact-form .button-primary{justify-content:center;width:100%}.contact-form button:disabled{background:var(--color-disabled);color:var(--color-muted)}@media (max-width:900px){.application-cta,.form-layout{grid-template-columns:1fr}.application-cta-action{align-items:flex-start}}@media (max-width:640px){.page-intro{padding-top:var(--space-8);margin-bottom:var(--space-8)}.application-cta{gap:var(--space-6)}.application-cta-action,.application-cta-action .button-primary{width:100%}.form-layout{gap:var(--space-8)}}.form-template-notice{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6)}.form-template-notice p{font-size:var(--font-small);color:var(--color-muted)}.form-template-notice strong{color:var(--color-text)}.contact-form .meeting-choice{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2);font-size:var(--font-body);display:flex}.contact-form .meeting-choice input{width:1.25rem;height:1.25rem;min-height:1.25rem;accent-color:var(--color-brand);flex:none;margin-top:.35rem}.form-note{font-size:var(--font-small);color:var(--color-muted)}.inquiry-received{overflow-wrap:anywhere;min-width:0}.monitor-offer{padding:var(--panel-padding);background:var(--color-white);border:1px solid var(--color-border);border-left:3px solid var(--color-brand);border-radius:var(--radius-panel)}.monitor-offer .monitor-price{margin:var(--space-2) 0 0;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:var(--line-heading);color:var(--color-brand)}.monitor-offer .monitor-deadline{margin:var(--space-2) 0 0;color:var(--color-text);font-weight:600}.monitor-offer .monitor-action{align-items:center;gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.monitor-offer>p:last-child{max-width:var(--reading-width);margin:var(--space-6) 0 0;font-size:var(--font-small);color:var(--color-muted)}.pitch-box{padding:var(--panel-padding);margin-bottom:var(--space-12);background:var(--color-deep);color:var(--color-on-deep);border-radius:var(--radius-panel)}.pitch-box h2{margin:0 0 var(--space-4);font-size:var(--font-card);color:var(--color-label-on-deep)}.pitch-box p{font-size:var(--font-card);margin:0;line-height:1.8}.pitch-box strong{color:var(--color-white)}
.home-hero{align-items:center;gap:var(--space-12);margin:var(--space-8) 0 var(--section-gap);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);display:grid}.home-hero h1{font-size:var(--font-title);line-height:1.4}.home-hero :where(h1) span{color:var(--color-brand)}.home-hero .button-primary{margin-top:var(--space-6)}.brand-art{padding:var(--space-8);border:1px solid var(--color-border);background:radial-gradient(circle, var(--color-surface), var(--color-white) 70%);border-radius:50%}.brand-art img{width:100%;height:auto;display:block}.about-strip,.company-story,.company-representative{align-items:start;gap:var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.about-strip{border-block:1px solid var(--color-border);padding-block:var(--space-8);align-items:center}.company-story h2{font-size:var(--font-section)}.company-story p,.company-representative p{color:var(--color-muted)}.company-representative{padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border)}.service-grid{gap:var(--space-6);margin-block:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.case-strip{justify-content:space-between;align-items:center;gap:var(--space-8);padding-block:var(--space-8);display:flex}.case-strip p{max-width:var(--reading-width)}.case-strip>a{min-height:var(--tap-size);flex-shrink:0;align-items:center;display:inline-flex}.company-details,.career-list{margin-block:var(--space-8);grid-template-columns:12rem minmax(0,1fr);gap:0;display:grid}.company-details dt,.company-details dd,.career-list dt,.career-list dd{padding:var(--space-6);border-bottom:1px solid var(--color-border)}.company-details dt{background:var(--color-surface);font-weight:600}.company-details :where(dd) p,.career-description p{margin:0}.career-list dt{color:var(--color-brand);font-size:var(--font-small)}.career-list h3{margin-top:0}.career-description{color:var(--color-muted)}.editorial-content section{margin-block:var(--space-12)}.editorial-content>h2{margin-top:var(--space-12)}.editorial-content>p,.editorial-content>ul,.editorial-content>ol,.service-faq{max-width:var(--reading-width)}.editorial-content>section:first-child{margin-top:0}.draft-note{max-width:var(--reading-width);margin:0 0 var(--space-6);padding:var(--space-3) var(--space-4);border-radius:var(--radius-panel);color:#6b4b00;background:#fff8e6;border:1px solid #d9a441}.article-page{max-width:calc(var(--reading-width) + var(--page-gutter) * 2)}.service-selector{gap:var(--space-4);margin-bottom:var(--section-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.service-selector a{gap:var(--space-4);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-panel);color:var(--color-text);background:var(--color-surface);flex-direction:column;text-decoration:none;display:flex}.service-selector a:hover{border-color:var(--color-brand)}.service-selector span{color:var(--color-brand);font-size:var(--font-caption)}.service-selector strong{font-size:var(--font-small)}.service-selector a>span:last-child{font-size:var(--font-body);align-self:flex-end;margin-top:auto}.service-feature{gap:var(--space-12);padding-top:var(--space-12);border-top:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-summary p{color:var(--color-muted)}.service-summary h3,.service-scope h3{font-size:var(--font-card)}.service-scope>h3:first-child{margin-top:0}.service-scope li::marker{color:var(--color-brand)}.diagnosis-feature>p{color:var(--color-muted)}.diagnosis-facts{gap:var(--space-6);padding-block:var(--space-6);margin-block:var(--space-6);border-block:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.diagnosis-facts span{font-size:var(--font-small);color:var(--color-muted);margin-bottom:var(--space-2);display:block}.diagnosis-facts strong{font-size:var(--font-card)}.diagnosis-facts .fact-lead{color:var(--color-brand)}.values-grid{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.value-initial{color:var(--color-brand);font-size:var(--font-title);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-4);font-weight:300;display:block}.values-grid h3{font-size:var(--font-body)}.values-grid h3 span{font-size:var(--font-small);color:var(--color-muted);font-weight:400;display:block}.values-grid p{font-size:var(--font-small);color:var(--color-muted)}.representative-message>p{max-width:var(--reading-width)}.message-signature{text-align:right;margin-top:var(--space-8);font-size:var(--font-small)}.message-signature strong{font-size:var(--font-card)}.message-heading-phrase{white-space:nowrap}.glossary-entry{max-width:var(--reading-width);padding-top:var(--space-8);border-top:1px solid var(--color-border)}.glossary-entry p{color:var(--color-muted)}.glossary-entry strong{color:var(--color-text)}.home-news ul{padding:0;list-style:none}.home-news li{gap:var(--space-6);padding-block:var(--space-6);border-top:1px solid var(--color-border);grid-template-columns:8rem minmax(0,1fr);display:grid}.home-news time{color:var(--color-muted);font-size:var(--font-small)}.home-news .case-strip{padding:0}.site-map-grid{gap:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.site-map-grid section{border-top:3px solid var(--color-brand);margin:0}.site-map-grid ul{padding:0;list-style:none}.site-map-grid li{margin:0}.site-map-grid li+li{border-top:1px solid var(--color-border)}.site-map-grid a{min-height:var(--button-size);justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-3);text-decoration:none;display:flex}.site-map-grid a:hover{text-decoration:underline}@media (max-width:900px){.service-grid{grid-template-columns:1fr}.service-feature{gap:var(--space-6)}.values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero{gap:var(--space-6)}}@media (max-width:640px){.home-hero,.about-strip,.company-story,.company-representative,.service-feature,.site-map-grid{gap:var(--space-6);grid-template-columns:1fr}.brand-art{justify-self:center;width:230px;max-width:100%}.case-strip{align-items:flex-start;gap:var(--space-4);flex-direction:column}.company-details,.career-list{grid-template-columns:1fr}.company-details dt,.career-list dt{padding-bottom:var(--space-2);border-bottom:0}.company-details dd,.career-list dd{padding-top:var(--space-3)}.service-selector{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.service-selector a{padding:var(--space-4)}.diagnosis-facts{grid-template-columns:1fr}.diagnosis-facts>div{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.values-grid{gap:var(--space-4)}.home-news li{gap:var(--space-2);grid-template-columns:1fr}}.diagram{margin:var(--space-8) 0;overflow-x:auto}.diagram svg{width:100%;min-width:34rem;height:auto;display:block}.diagram figcaption{max-width:var(--reading-width);margin-top:var(--space-4);font-size:var(--font-small);color:var(--color-muted)}.home-monitor{margin-bottom:var(--section-gap)}.home-monitor h2{margin-top:var(--space-2)}.quote-card{margin:var(--space-6) 0;padding:var(--space-6);background:var(--color-surface);border-left:3px solid var(--color-brand);border-radius:var(--radius-panel)}.quote-card blockquote{margin:0}.quote-card blockquote>p{margin:0 0 var(--space-3)}.quote-card .quote-original{font-size:var(--font-small);color:var(--color-muted);margin:0}.quote-card figcaption{margin-top:var(--space-4);font-size:var(--font-small);color:var(--color-muted)}.home-monitor-services{gap:var(--space-8);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-monitor-services h3{margin:0 0 var(--space-2);font-size:var(--font-card)}.home-monitor-services>div{flex-direction:column;display:flex}.home-monitor-services>div>p{color:var(--color-muted);margin:0}.home-monitor-services .monitor-action{align-items:flex-start;gap:var(--space-3);padding-top:var(--space-6);flex-direction:column;margin-top:auto}@media (max-width:700px){.home-monitor-services{gap:var(--space-6);grid-template-columns:1fr}}.tag-list{gap:var(--space-2);margin:var(--space-4) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.tag-list a{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--font-small);color:var(--color-brand);text-decoration:none;display:inline-block}.tag-list a:hover{border-color:var(--color-brand);background:var(--color-surface)}.tag-list span{color:var(--color-muted)}.post-list{margin:var(--space-12) 0 0;padding:0;list-style:none}.post-list>li{padding-block:var(--space-6);border-top:1px solid var(--color-border)}.post-list>li:last-child{border-bottom:1px solid var(--color-border)}.post-list time{font-size:var(--font-small);color:var(--color-muted);display:block}.post-list a{margin-top:var(--space-2);font-size:var(--font-card);color:var(--color-text);font-weight:600;text-decoration:none;display:inline-block}.post-list a:hover{color:var(--color-brand);text-decoration:underline}.post-list p{max-width:var(--reading-width);margin:var(--space-2) 0 0;color:var(--color-muted)}

