:root{--green:#00845e;--deep:#073f32;--ink:#183c33;--muted:#54665e;--line:#d7e3dc;--pale:#f1f7f3;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.9;font-size:16px;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible{outline:3px solid #c18f29;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:700;line-height:1.55}h2{font-size:clamp(28px,3vw,40px);letter-spacing:.035em}h3{font-size:21px}p+p{margin-top:20px}.container{width:min(1180px,calc(100% - 96px));margin-inline:auto}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{max-width:1380px;padding:20px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;flex-direction:column}.logo-window{display:block;width:254px;height:37px;position:relative;overflow:hidden}.logo-window img{position:absolute;width:338px;height:auto;max-width:none;left:-42px;top:-76px}.brand-caption{font-size:12px;letter-spacing:.08em;margin-top:3px}.header nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.header nav a:hover{color:var(--green)}.nav-contact{padding:11px 18px;background:var(--pale);border:1px solid var(--line);border-radius:4px}.nav-contact span{margin-left:12px}.menu-toggle{display:none}.hero{background:linear-gradient(115deg,#f5f9f5 0%,#f5f9f5 52%,#eaf3ed 100%);padding-top:76px}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center}.eyebrow{color:var(--green);font-size:13px;font-weight:700;letter-spacing:.16em;margin-bottom:24px}.hero .eyebrow{font-size:15px;letter-spacing:.08em}.hero h1{font-size:clamp(32px,3.35vw,47px);letter-spacing:.015em;line-height:1.6}.hero h1 span{color:var(--green)}.hero-description{margin-top:26px;color:var(--muted);line-height:2}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 25px;border:0;border-radius:4px;font-weight:600;font-size:15px}.primary{background:var(--green);color:#fff;margin-top:32px;transition:background .2s}.primary:hover{background:var(--deep)}.text-link{display:block;width:fit-content;font-size:14px;margin-top:18px}.text-link span{margin-left:18px}.logo-panel{border:1px solid #e0e9e3;box-shadow:0 22px 60px #123a2710;background:white;border-radius:5px;overflow:hidden}.logo-panel img{width:100%;height:auto;display:block}.hero-note{border-left:2px solid #72ae90;margin:34px 0 0 27px;padding-left:24px}.hero-note>span{font-size:11px;letter-spacing:.19em;color:var(--green)}.hero-note p{font-size:19px;line-height:1.8;margin-top:8px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:65px;padding-block:22px;border-top:1px solid #ccdcd1;font-size:14px}.hero-bottom a{display:flex;gap:15px;align-items:center}.small-pill{font-size:12px;border:1px solid #bccfc2;padding:1px 9px;border-radius:30px}.section{padding-block:100px}.section-heading{float:left;width:47%}.about-text{margin-left:50%;color:var(--muted)}.value-grid{clear:both;padding-top:62px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.value{border-top:2px solid #619c7e;padding-top:20px}.number{font-family:Georgia,serif;font-size:27px;color:var(--green)}.value h3{font-size:20px;margin:14px 0 18px}.value p{font-size:15px;color:var(--muted)}.examples-section{background:var(--pale);padding-block:90px}.heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:42px}.heading-row>p{color:var(--muted);font-size:15px}.heading-row .eyebrow{margin-bottom:14px}.tabs{display:flex;gap:28px;border-bottom:1px solid #c6d8cd;margin-bottom:30px}.tabs button{padding:14px 0;color:var(--muted);border:0;border-bottom:3px solid transparent;background:transparent;font-size:16px}.tabs button[aria-selected=true]{border-color:var(--green);color:var(--green);font-weight:700}.tabs span{margin-left:10px;font-size:12px}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.profile-card{background:#fff;padding:30px;border:1px solid var(--line);border-radius:4px}.profile-type{font-size:11px;letter-spacing:.15em;color:var(--green)}.profile-card h3{font-size:27px;margin-top:28px}.profile-card h3 span{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:5px}.profile-status{border-top:1px solid var(--line);font-size:13px;color:var(--muted);margin-top:27px;padding-top:16px}.company{grid-column:span 2}.section-note{font-size:14px;color:var(--muted);margin-top:26px}.use-list{margin-top:50px;border-top:1px solid var(--line)}.use-list article{display:grid;grid-template-columns:70px 1fr 1.7fr;gap:28px;padding:31px 0;border-bottom:1px solid var(--line)}.use-list h3{font-size:21px}.use-list p{color:var(--muted);font-size:15px}.use-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0}.use-tags li{background:var(--pale);font-size:13px;padding:3px 10px;border-radius:3px}.monitor-section{background:var(--deep);color:white;padding-block:82px}.monitor-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.monitor-section .eyebrow{color:#a7d6bd}.light-pill{display:inline-block;border:1px solid #719789;font-size:12px;padding:2px 12px;border-radius:30px;margin-bottom:19px}.monitor-section h2{font-size:36px}.monitor-section h2+p{margin-top:18px;color:#d4e7dc}.monitor-duration{display:flex;align-items:center;gap:22px;margin-top:26px}.monitor-duration strong{font-size:64px;line-height:1.3;font-weight:500}.monitor-duration strong span{font-size:23px;margin-left:7px}.monitor-duration>span{font-size:13px;color:#d4e7dc}.monitor-detail h3{font-size:23px;margin-bottom:19px}.monitor-detail>p,.monitor-detail li{font-size:15px;color:#e3eee7}.monitor-detail ul{padding-left:20px;margin:22px 0}.monitor-detail li{margin-bottom:10px;padding-left:4px}.monitor-assurance{border-block:1px solid #466c5e;padding:17px 0}.unavailable{margin-top:24px;background:#dae9df;color:#355646;justify-content:center;width:100%}.monitor-detail .monitor-small{font-size:12px;color:#bfdbcb;margin-top:12px}.contact-section{display:grid;grid-template-columns:1fr 1.4fr;gap:75px}.contact-section h2+p{margin-top:22px;color:var(--muted)}.contact-list{border-top:1px solid var(--line)}.contact-list>div{padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.contact-list h3{font-size:17px}.contact-list span{font-size:12px;background:var(--pale);padding:3px 10px;white-space:nowrap}footer{background:#f6f8f6;padding:46px 0 22px;border-top:1px solid var(--line)}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:flex-start}.footer-main p{font-size:12px;margin-top:8px}.footer-main dl{margin:0;font-size:14px}.footer-main dl>div{display:flex;gap:24px;margin-bottom:15px}.footer-main dt{color:var(--muted);min-width:100px}.footer-main dd{margin:0}.back-top{font-size:13px}.footer-links{display:flex;flex-wrap:wrap;gap:12px 25px;border-top:1px solid var(--line);padding-top:23px;margin-top:26px;font-size:12px;color:var(--muted)}.copyright{font-size:12px;color:var(--muted);margin-top:25px}.skip-link{position:fixed;top:-80px;left:10px;z-index:100;padding:10px;background:white}.skip-link:focus{top:10px}[hidden]{display:none!important}@media(min-width:1500px){.hero h1{font-size:48px}}@media(max-width:1050px){.header-inner{padding:16px 24px}.header nav{gap:18px;font-size:13px}.logo-window{width:220px;height:32px}.logo-window img{width:293px;left:-36px;top:-66px}.brand-caption{font-size:11px}.container{width:calc(100% - 64px)}.hero-grid{gap:25px;grid-template-columns:1.25fr 1fr}.hero h1{font-size:36px}.value-grid{gap:22px;grid-template-columns:repeat(2,1fr)}.monitor-grid{gap:45px}.contact-section{gap:35px}.footer-main{flex-wrap:wrap}}@media(max-width:760px){html{scroll-padding-top:100px}.container{width:calc(100% - 40px)}.header-inner{padding:14px 20px;flex-wrap:wrap}.menu-toggle{display:flex;gap:12px;align-items:center;background:white;border:1px solid var(--line);border-radius:4px;padding:6px 10px;font-size:13px}.logo-window{width:198px;height:29px}.logo-window img{width:264px;left:-33px;top:-59px}.brand-caption{font-size:10px}.header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:5px}.header nav.is-open{display:flex}.header nav a{padding:12px 8px}.hero{padding-top:43px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(26px,7.15vw,42px)}.hero .eyebrow{font-size:12px;margin-bottom:18px}.hero-description{font-size:15px;margin-top:20px}.hero-aside{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:18px}.hero-note{margin:0;padding-left:14px}.hero-note>span{font-size:9px;letter-spacing:.06em}.hero-note p{font-size:13px;margin-top:5px}.hero-bottom{margin-top:30px;flex-direction:column;align-items:flex-start;font-size:12px;gap:10px}.hero-bottom a{gap:9px}.small-pill{font-size:10px}.section{padding-block:64px}.section-heading{float:none;width:auto}.about-text{margin:25px 0 0;font-size:15px}.value-grid{padding-top:35px;gap:28px 20px}.value h3{font-size:17px}.value p{font-size:14px}.number{font-size:23px}.examples-section{padding-block:60px}.heading-row{display:block;margin-bottom:28px}.heading-row>p{margin-top:20px;font-size:14px}.tabs{gap:24px}.tabs button{font-size:14px}.profile-grid{grid-template-columns:1fr}.profile-card{padding:23px}.profile-card h3{margin-top:18px;font-size:25px}.profile-status{margin-top:20px}.company{grid-column:auto}.use-list{margin-top:30px}.use-list article{grid-template-columns:35px 1fr;gap:12px;padding:25px 0}.use-list article>div{grid-column:2}.use-list h3{font-size:20px}.monitor-section{padding-block:55px}.monitor-grid{grid-template-columns:1fr;gap:38px}.monitor-section h2{font-size:31px}.monitor-detail h3{font-size:21px}.contact-section{grid-template-columns:1fr;gap:30px}.contact-list>div{align-items:flex-start;flex-direction:column;gap:8px;padding:19px 0}.contact-list h3{font-size:16px}.footer-main{flex-direction:column;gap:28px}.footer-main dl{font-size:13px}.footer-main dl>div{gap:12px}.footer-links{flex-direction:column;gap:10px}.button{padding:14px 20px;font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:761px) and (max-width:1000px){.hero-grid{grid-template-columns:1fr}.hero h1{font-size:40px}.hero-aside{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.hero-note{margin:0}.hero{padding-top:45px}.header-inner{flex-wrap:wrap}.header nav{font-size:14px}.hero-bottom{flex-wrap:wrap}.contact-section{grid-template-columns:1fr}.monitor-grid{grid-template-columns:1fr 1.2fr;gap:28px}}

/* Revised header and single-column introduction */
.header-logo{display:block;position:relative;overflow:hidden;width:320px;height:76px}
.header-logo img{position:absolute;width:426px;max-width:none;height:auto;left:-53px;top:-95px}
.hero{padding:64px 0 58px}
.hero-content h1{font-size:clamp(20px,2.55vw,36px);line-height:1.65;letter-spacing:0;white-space:nowrap}
.hero-content .hero-description{font-size:clamp(16px,1.5vw,20px);margin-top:24px;white-space:nowrap}
.hero-menu{display:flex;flex-direction:column;gap:0;margin-top:34px;border-top:1px solid var(--line)}
.hero-menu a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:600}
.hero-menu a:hover{color:var(--green)}
.hero-menu a span{color:var(--green)}
.profile-link{display:flex;justify-content:space-between;color:var(--green)}
.profile-card h3 a:hover,.profile-link:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px){.header-logo{width:280px;height:67px}.header-logo img{width:373px;left:-46px;top:-83px}}
@media(max-width:760px){.header-logo{width:220px;height:53px}.header-logo img{width:293px;left:-36px;top:-65px}.header-inner{gap:12px}.hero{padding:36px 0}.hero-content h1{font-size:25px;white-space:normal}.hero-content .hero-description{font-size:16px;white-space:normal}.hero-menu a{font-size:15px}}

#about .section-heading h1{font-size:clamp(28px,3vw,40px);letter-spacing:.035em}

/* Requested brown section headings */
h2.section-banner,.monitor-section h2.section-banner{display:block;background:#79543a;color:#fff;font-size:20px;font-weight:700;line-height:1.6;letter-spacing:.02em;padding:12px 18px;margin:0 0 24px}

/* Header, profile portraits and supplied footer logo */
.header{background:#e4f1e7}
.header-logo img{mix-blend-mode:multiply}
.profile-portrait{display:block;width:100%;height:230px;object-fit:contain;margin-top:24px;background:#f6f8f6}
.profile-card .profile-role{font-size:14px;line-height:1.85;color:var(--muted);margin-top:16px}
.profile-card h3 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.footer-logo-window{display:block;position:relative;overflow:hidden;width:320px;height:80px}
.footer-logo-window img{position:absolute;width:425px;height:auto;max-width:none;left:-54px;top:-92px}
@media(max-width:760px){.footer-logo-window{width:280px;height:70px}.footer-logo-window img{width:372px;left:-47px;top:-80px}}
.profile-portrait{object-fit:cover;object-position:center 20%}

.profile-card .profile-role{color:#79543a;font-weight:600;margin-top:20px}
.profile-card .profile-role+h3{margin-top:8px}

/* Revised copy, three-column benefits and monitor application */
.value-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.heading-row>div{min-width:0;flex:1}.heading-row>p{max-width:360px}
.portrait-link{display:block}.portrait-link:hover{opacity:.9}
.issue-heading{margin:20px 0 8px;font-size:16px}.use-bullets{padding-left:1.4em;margin:14px 0 20px;color:var(--muted);font-size:15px}.use-bullets li{margin:8px 0}
.monitor-preparing{display:inline-block;font-size:15px;font-weight:400;margin-left:18px}
.monitor-recruit-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:35px;align-items:start}
.monitor-detail .application-heading{font-size:19px;margin:28px 0 12px}
.monitor-form{background:#fff;color:var(--ink);padding:30px;border-radius:4px}
.monitor-form h3{font-size:23px;margin-bottom:22px}.monitor-form label{display:block;font-size:15px;font-weight:600;margin:18px 0 7px}
.monitor-form input,.monitor-form textarea{display:block;width:100%;padding:11px 12px;border:1px solid #a3b7aa;border-radius:3px;background:#fff;color:var(--ink);font:inherit;font-size:16px;line-height:1.6}.monitor-form textarea{resize:vertical}
.monitor-form input:focus-visible,.monitor-form textarea:focus-visible{outline:3px solid #c18f29;outline-offset:2px}
.monitor-form #form-status{font-size:14px;margin-top:22px;color:var(--muted)}
@media(max-width:760px){.value-grid{grid-template-columns:1fr}.monitor-recruit-grid{grid-template-columns:1fr;gap:30px}.monitor-form{padding:22px}.monitor-preparing{display:block;margin:5px 0 0}.heading-row>p{max-width:none}}

/* Supplied illustrations for use cases 01–03 */
.use-list .use-illustration{grid-column:3;width:100%;max-width:420px;margin:0;min-width:0;justify-self:start}
.use-illustration img{display:block;width:100%;height:auto;border-radius:4px}
@media(max-width:760px){
 .profile-portrait{height:auto;aspect-ratio:3 / 4}
 .use-list .use-illustration{grid-column:1 / -1;max-width:none;margin-top:4px}
}

/* Wide screens: text on the left, supporting illustration on the right */
@media(min-width:1100px){
 .use-list article{grid-template-columns:50px minmax(0,1fr) minmax(280px,380px);grid-template-rows:auto 1fr;column-gap:30px;row-gap:16px;align-items:start}
 .use-list article>.number{grid-column:1;grid-row:1 / 3}
 .use-list article>h3{grid-column:2;grid-row:1}
 .use-list article>div{grid-column:2;grid-row:2;min-width:0}
 .use-list article>.use-illustration{grid-column:3;grid-row:1 / 3;max-width:380px;align-self:center}
}
.monitor-form .monitor-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.monitor-privacy{margin-top:24px;font-size:14px;line-height:1.8}.monitor-privacy summary{cursor:pointer;font-weight:600}.monitor-privacy p{margin-top:12px;overflow-wrap:anywhere}
.monitor-form .monitor-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px}.monitor-form .monitor-consent input{width:18px;height:18px;flex:none;margin-top:3px}
.monitor-form button:disabled{opacity:.6;cursor:wait}

/* Official sheep logo: original artwork displayed within a whitespace crop. */
.header-logo,.footer-logo-window{width:360px;height:auto;aspect-ratio:1640 / 400;max-width:100%}
.header-logo img,.footer-logo-window img{width:103.5366%;height:auto;left:-1.8293%;top:-65%;max-width:none;mix-blend-mode:multiply}
@media(max-width:1050px){.header-logo{width:300px}}
@media(max-width:760px){.header-logo{width:220px}.footer-logo-window{width:280px}.header-inner{column-gap:12px}}
@media(max-width:359px){.header-logo{width:190px}}

/* Compact global header and align the footer identity with it. */
html{scroll-padding-top:100px}
.header-inner{padding:10px 40px}
.header-logo,.footer-logo-window{width:300px}
footer{padding:28px 0 12px}
.footer-main{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:35px;row-gap:0}
.footer-main dl{grid-column:1;grid-row:1;display:flex;align-items:flex-start;gap:48px}
.footer-main .footer-links{grid-column:1 / -1;grid-row:2;margin-top:6px;padding-top:8px}
.footer-brand{grid-column:2;grid-row:1;margin:0}

@media(max-width:1050px){
  html{scroll-padding-top:88px}
  .header-inner{padding:10px 24px}
  .header-logo,.footer-logo-window{width:260px}
}

@media(max-width:760px){
  html{scroll-padding-top:76px}
  .header-inner{padding:9px 20px}
  .header-logo,.footer-logo-window{width:200px}
  footer{padding:28px 0 16px}
  .footer-main{display:flex;align-items:stretch;flex-direction:column;gap:0}
  .footer-main dl{display:block}
  .footer-main .footer-links{align-items:flex-start;margin-top:0;padding-top:10px}
  .footer-brand{margin-top:18px;margin-left:auto}
}

@media(max-width:359px){
  .header-logo,.footer-logo-window{width:180px}
}

/* Responsive icon menu and tighter opening section. */
#about{padding-top:18px;padding-bottom:72px}

@media(max-width:900px){
  .header-inner{flex-wrap:wrap}
  .menu-toggle{
    display:inline-flex;
    width:44px;
    height:44px;
    flex:0 0 44px;
    align-items:center;
    justify-content:center;
    padding:0;
    border:1px solid rgba(164,95,66,.28);
    border-radius:6px;
    background:#fff;
  }
  .menu-icon{display:block;position:relative;width:26px;height:20px}
  .menu-icon span{position:absolute;left:0;width:26px;height:2px;border-radius:2px;background:var(--green);transition:transform .2s ease,opacity .2s ease,top .2s ease}
  .menu-icon span:nth-child(1){top:1px}
  .menu-icon span:nth-child(2){top:9px}
  .menu-icon span:nth-child(3){top:17px}
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1){top:9px;transform:rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3){top:9px;transform:rotate(-45deg)}
  .header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:8px}
  .header nav.is-open{display:flex}
  .header nav a{padding:11px 8px}
}

@media(max-width:760px){
  #about{padding-top:18px;padding-bottom:54px}
  .menu-toggle{gap:0;background:#fff;padding:0}
}

/* Compact popup menu, section spacing, and stable footer wrapping. */
#examples,#uses,#monitor{padding-top:40px;padding-bottom:40px}
.footer-main dt,.footer-main dd,.footer-links span{word-break:keep-all;overflow-wrap:normal}

@media(max-width:900px){
  .header-inner{position:relative;flex-wrap:nowrap}
  .menu-toggle{
    position:relative;
    z-index:23;
    border:1px solid var(--green);
    border-radius:8px;
    background:transparent;
    box-shadow:none;
  }
  .menu-toggle[aria-expanded="true"]{
    background:#e4f1e7;
    border:1px solid var(--green);
    border-radius:8px;
  }
  .header nav{
    position:absolute;
    z-index:22;
    top:calc(100% - 1px);
    right:24px;
    width:216px;
    padding:12px 14px 14px;
    border:1px solid var(--green);
    border-radius:8px;
    background:#e4f1e7;
    box-shadow:0 14px 30px rgba(7,63,50,.16);
  }
  .header nav::before{
    content:"メニュー";
    display:block;
    margin:0 0 5px;
    color:var(--green);
    font-size:10px;
    font-weight:700;
    line-height:1.4;
    letter-spacing:.12em;
    text-align:left;
  }
  .header nav a{display:block;padding:8px 4px;border-bottom:1px solid rgba(0,132,94,.48);font-size:13px;line-height:1.5;text-align:left}
  .header nav a:nth-of-type(3){border-bottom:0}
  .header nav .nav-contact{display:none}
}

.header{border-bottom-color:var(--green)}

.header nav a{word-break:keep-all;overflow-wrap:normal}

@media(min-width:901px) and (max-width:1050px){
  .header-inner{flex-wrap:nowrap;gap:14px}
  .header nav{flex-wrap:nowrap;gap:14px;font-size:13px}
}

@media(max-width:760px){
  #examples,#uses,#monitor{padding-top:30px;padding-bottom:30px}
  .header nav{right:20px}
  .footer-main dl>div{display:block;margin-bottom:12px}
  .footer-main dt,.footer-main dd,.footer-links span{white-space:nowrap}
  .footer-main dt{min-width:0;margin-bottom:2px}
}

/* Unified 67px header and precisely sized hamburger icon. */
.header{height:67px;border-top:1px solid var(--green);box-sizing:border-box}
.header-inner{height:65px;padding-top:0;padding-bottom:0}
.header-logo{width:260px}

@media(max-width:900px){
  .menu-icon{width:26px;height:18px}
  .menu-icon span{left:1px;width:24px;height:2px}
  .menu-icon span:nth-child(1){top:0}
  .menu-icon span:nth-child(2){top:8px}
  .menu-icon span:nth-child(3){top:16px}
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1),
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3){top:8px}
}

@media(max-width:760px){
  .header-inner{height:65px}
  .header-logo{width:200px}
}

@media(max-width:359px){
  .header-logo{width:180px}
}

/* 2026-11-07 preview: compact chapter banners using the supplied sleeping-sheep artwork. */
.chapter-pill{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:min(100%,760px);
  margin:0;
  padding:11px 30px;
  border-radius:999px;
  text-align:left;
}
.chapter-pill-icon{display:block;width:36px;height:36px;flex:0 0 36px;object-fit:contain}
.chapter-pill>span{font-size:clamp(24px,2.45vw,34px);font-weight:900;line-height:1.2;letter-spacing:-.025em;white-space:nowrap}
.chapter-pill--profiles{background:#d9eff8;color:#0b426d;border:1px solid #0b426d}
.chapter-pill--about{background:#f9dce4;color:#b62d69;border:1px solid #b62d69}
.chapter-pill--monitor{background:#eadcf2;color:#4b075f;border:1px solid #4b075f}
.profile-showcase-title-group{width:min(100%,760px)}
.profile-showcase-title-group .chapter-pill{width:100%}
#about .section-heading{float:none;width:100%;margin-bottom:34px}
#about .section-heading .chapter-pill{width:min(100%,760px)}
.about-intro{display:grid;grid-template-columns:minmax(0,47%) minmax(0,1fr);gap:3%}
.about-intro>h1{font-size:clamp(28px,3vw,40px);letter-spacing:.035em}
.about-intro .about-text{margin:0}
.monitor-section .chapter-pill{margin:0 0 34px}

@media(max-width:900px){
  .profile-showcase-heading{align-items:flex-start}
  .profile-showcase-title-group{width:100%}
  .about-intro{grid-template-columns:1fr;gap:24px}
  .about-intro .about-text{margin:0}
}

@media(max-width:760px){
  .chapter-pill{gap:8px;width:100%;padding:clamp(8px,calc(3.36vw - 4px),10.4px) 16px}
  .chapter-pill-icon{width:30px;height:30px;flex-basis:30px}
  .chapter-pill>span{font-size:clamp(20px,5.6vw,24px)}
  .profile-showcase-title-group .chapter-pill,#about .section-heading .chapter-pill,.monitor-section .chapter-pill{width:100%}
  #about .section-heading{margin-bottom:25px}
  .monitor-section .chapter-pill{margin-bottom:26px}
}

/* 2026-11-06 preview: official profile horizontal showcase. */
.profile-showcase{
  overflow:hidden;
  padding:42px 0 48px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,#edf6f0 0%,#f9fbf9 52%,#eef5f0 100%);
}
.profile-showcase-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}
.profile-showcase-kicker{margin:0 0 5px;color:#0b426d;font:700 12px/1.4 Georgia,serif;letter-spacing:.16em;text-transform:uppercase}
.profile-showcase-heading h1{margin:0;color:var(--deep);font-size:clamp(25px,2.6vw,36px);letter-spacing:.06em}
.profile-showcase-guide{margin:0 0 4px;color:var(--muted);font-size:12px;white-space:nowrap}
.profile-showcase-viewport{width:100%;overflow-x:auto;overflow-y:hidden;padding:0 max(48px,calc((100vw - 1180px)/2)) 12px;scrollbar-width:thin;scrollbar-color:var(--green) #dbe8df;overscroll-behavior-inline:contain}
.profile-showcase-viewport::-webkit-scrollbar{height:6px}
.profile-showcase-viewport::-webkit-scrollbar-track{background:#dbe8df;border-radius:999px}
.profile-showcase-viewport::-webkit-scrollbar-thumb{background:var(--green);border-radius:999px}
.profile-showcase-track{display:flex;width:max-content;gap:22px;scroll-snap-type:x mandatory}
.profile-showcase-card{position:relative;display:grid;grid-template-rows:310px 1fr;width:282px;min-height:478px;overflow:hidden;border:1px solid rgba(0,132,94,.28);border-radius:4px;background:#fff;box-shadow:0 12px 32px rgba(7,63,50,.08);scroll-snap-align:start;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.profile-showcase-card:hover{transform:translateY(-4px);border-color:var(--green);box-shadow:0 18px 40px rgba(7,63,50,.14)}
.profile-showcase-card:focus-visible{outline:3px solid #c18f29;outline-offset:4px}
.profile-showcase-card figure{position:relative;margin:0;overflow:hidden;background:#dfe9e2}
.profile-showcase-card figure::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(7,63,50,.16));pointer-events:none}
.profile-showcase-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.86) contrast(1.02);transition:transform .45s ease}
.profile-showcase-card:hover img{transform:scale(1.025)}
.profile-showcase-card:first-child img{object-position:center center}
.profile-showcase-card:nth-child(2) img{object-position:center 15%}
.profile-showcase-card:nth-child(3) img{object-position:center 20%}
.profile-showcase-card:nth-child(4) img{object-position:center 17%}
.profile-showcase-copy{position:relative;padding:21px 22px 20px;border-top:3px solid var(--green)}
.profile-showcase-role{min-height:3.4em;margin:0 0 7px;color:#79543a;font-size:12px;font-weight:700;line-height:1.7;letter-spacing:.025em}
.profile-showcase-copy h2{margin:0;color:var(--deep);font-size:24px;line-height:1.35;letter-spacing:.08em}
.profile-showcase-name-en{margin:5px 0 14px;color:var(--muted);font:400 11px/1.5 "Segoe UI",sans-serif;letter-spacing:.18em;text-transform:uppercase}
.profile-showcase-link{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line);color:var(--green);font:600 11px/1.4 "Segoe UI",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.profile-showcase-link b{font-size:14px;font-weight:400}

@media(max-width:760px){
  .profile-showcase{padding:30px 0 36px}
  .profile-showcase-heading{display:block;margin-bottom:18px}
  .profile-showcase-guide{margin-top:9px}
  .profile-showcase-viewport{padding-left:20px;padding-right:20px}
  .profile-showcase-track{gap:14px}
  .profile-showcase-card{grid-template-rows:286px 1fr;width:min(76vw,268px);min-height:452px}
  .profile-showcase-copy{padding:18px 18px 17px}
  .profile-showcase-copy h2{font-size:22px}
  .profile-showcase-role{font-size:11px}
}

@media(prefers-reduced-motion:reduce){
  .profile-showcase-card,.profile-showcase-card img{transition:none}
}

/* 2026-10-28 preview: merge the service purpose and use-case sections. */
#about{padding-bottom:72px}
.purpose-list{clear:both;padding-top:54px;display:grid;gap:22px}
.purpose-card{overflow:hidden;border:1px solid #c9dbd0;border-top:3px solid var(--green);border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(7,63,50,.06)}
.purpose-intro{display:grid;grid-template-columns:72px minmax(0,1fr);gap:24px;padding:30px 34px 28px}
.purpose-intro .number{padding-top:2px}
.purpose-intro h3{margin:0 0 12px;font-size:22px}
.purpose-intro p{max-width:900px;color:var(--muted);font-size:15px}
.purpose-details{border-top:1px solid var(--line)}
.purpose-details summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px 16px 130px;background:#edf6f0;color:var(--deep);font-size:15px;font-weight:600;line-height:1.5;list-style:none;cursor:pointer;transition:background .2s ease}
.purpose-details summary::-webkit-details-marker{display:none}
.purpose-details summary:hover{background:#e2f0e7}
.purpose-details summary:focus-visible{outline:3px solid #c18f29;outline-offset:-3px}
.purpose-details summary b{margin-right:9px;color:var(--green);font-family:Georgia,serif;font-size:14px;letter-spacing:.04em}
.accordion-icon{position:relative;width:24px;height:24px;flex:0 0 24px;border:1px solid var(--green);border-radius:50%}
.accordion-icon::before,.accordion-icon::after{content:"";position:absolute;left:6px;top:10px;width:10px;height:2px;border-radius:2px;background:var(--green);transition:transform .2s ease}
.accordion-icon::after{transform:rotate(90deg)}
.purpose-details[open] summary{background:#e2f0e7}
.purpose-details[open] .accordion-icon::after{transform:rotate(0)}
.purpose-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,430px);gap:38px;align-items:start;padding:30px 34px 34px 130px;background:#fbfdfb}
.purpose-copy h4{margin:0 0 14px;font-size:20px;color:var(--deep)}
.purpose-copy h5{font-size:16px}
.purpose-copy p{color:var(--muted);font-size:15px}
.purpose-panel .use-illustration{width:100%;max-width:430px;margin:0;justify-self:end}
.purpose-panel .use-illustration img{border:1px solid #d5e2da;box-shadow:0 8px 24px rgba(7,63,50,.08)}
.monitor-section{padding-top:54px;padding-bottom:54px}
.header nav a:last-child{border-bottom:0}

@media(max-width:900px){
  .section-heading{float:none;width:auto}
  .about-text{margin:25px 0 0}
  .purpose-panel{grid-template-columns:1fr;gap:26px;padding:30px 34px 34px}
  .purpose-panel .use-illustration{width:100%;max-width:640px;margin-inline:auto;justify-self:center}
}

@media(max-width:760px){
  #about{padding-bottom:46px}
  .purpose-list{padding-top:34px;gap:16px}
  .purpose-intro{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:22px 18px 20px}
  .purpose-intro h3{font-size:18px;margin-bottom:10px}
  .purpose-intro p{font-size:14px}
  .purpose-details summary{padding:14px 16px 14px 70px;font-size:14px}
  .purpose-panel{grid-template-columns:1fr;gap:24px;padding:24px 18px}
  .purpose-copy h4{font-size:18px}
  .purpose-panel .use-illustration{max-width:none;justify-self:stretch}
  .monitor-section{padding-top:38px;padding-bottom:38px}
}

/* Five-page shared header geometry: 67px, 62px desktop sides, 20px mobile sides. */
.header{
  height:67px;
  border-top:1px solid var(--green);
  border-bottom:1px solid var(--green);
  box-sizing:border-box;
}
.header-inner{
  width:auto;
  max-width:none;
  height:65px;
  margin:0;
  padding:0 62px;
}
.header-logo{
  width:260px;
  height:auto;
  aspect-ratio:1640 / 400;
}
.header-logo img{
  width:103.5366%;
  height:auto;
  max-width:none;
  left:-1.8293%;
  top:-65%;
}
.menu-toggle{margin-left:auto}
.header-inner{position:relative;flex-wrap:nowrap}
.menu-toggle{
  position:relative;
  z-index:23;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  margin-left:auto;
  padding:0;
  border:1px solid var(--green);
  border-radius:8px;
  background:transparent;
  box-shadow:none;
}
.menu-icon{display:block;position:relative;width:26px;height:18px}
.menu-icon span{position:absolute;left:1px;width:24px;height:2px;border-radius:2px;background:var(--green);transition:transform .2s ease,opacity .2s ease,top .2s ease}
.menu-icon span:nth-child(1){top:0}
.menu-icon span:nth-child(2){top:8px}
.menu-icon span:nth-child(3){top:16px}
.menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1){top:8px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3){top:8px;transform:rotate(-45deg)}
.header nav{
  position:absolute;
  z-index:22;
  top:calc(100% + 14px);
  right:62px;
  width:216px;
  display:none;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:12px 14px 14px;
  border:1px solid var(--green);
  border-radius:8px;
  background:#e4f1e7;
  box-shadow:0 14px 30px rgba(7,63,50,.16);
}
.header nav.is-open{display:flex}
.header nav::before{content:"メニュー";display:block;margin:0 0 5px;color:var(--green);font-size:10px;font-weight:700;line-height:1.4;letter-spacing:.12em;text-align:left}
.header nav a{display:block;padding:8px 4px;border-bottom:1px solid rgba(0,132,94,.48);font-size:13px;line-height:1.5;text-align:left}
.header nav a:nth-of-type(3){border-bottom:0}
.header nav .nav-contact{display:none}

@media(max-width:700px){
  .header-inner{height:65px;padding:0 20px}
  .header-logo{width:200px}
  .header nav{right:20px}
}

@media(max-width:359px){
  .header-logo{width:180px}
}

/* 2026-11-08 local preview: exchange the first and second chapter color themes. */
.profile-showcase{
  background:#eef8fc;
}
.profile-showcase-heading h1.chapter-pill--profiles{color:#0b426d}

/* 2026-11-07 preview: pale monitor section with dark-green copy. */
.monitor-section{background:#faf6fc;color:var(--deep)}
.monitor-section .eyebrow,.monitor-section h2+p,.monitor-duration>span,.monitor-detail>p,.monitor-detail li,.monitor-detail .monitor-small{color:var(--deep)}
.monitor-assurance{border-block-color:#cdbfd5}

/* 2026-11-07 preview: final fine-tuning of section spacing, tones and form frame. */
.profile-showcase{padding-top:37px}
#about{background:transparent;box-shadow:none;clip-path:inset(0 -100vmax);isolation:isolate}
#about::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(135deg,#fff2f6 0%,#fff9fa 52%,#fae9ef 100%)}
.chapter-pill--about{background:#f9dce4}
.monitor-section{background:#f3eaf8}
.monitor-form{border:1px solid var(--deep)}
@media(max-width:760px){.profile-showcase{padding-top:25px}}

/* 2026-11-07 preview: match footer geometry and color to the 67px header. */
footer{height:67px;padding:0;background:#e4f1e7;border-top:1px solid var(--green);border-bottom:1px solid var(--green);box-sizing:border-box}
footer>.container,.footer-main{height:65px}
.footer-main{display:flex;align-items:center;justify-content:flex-end;gap:0}
.footer-brand{margin:0}
.footer-brand,.footer-brand .brand{display:flex;align-items:center;height:65px;line-height:0}
.footer-logo-window{width:260px}
@media(max-width:700px){.footer-logo-window{width:200px}}
@media(max-width:359px){.footer-logo-window{width:180px}}

/* 2026-11-07 preview: add 3px above and below both bars. */
.header,footer{height:73px}
.header-inner,footer>.container,.footer-main{height:71px}
.footer-brand,.footer-brand .brand{height:71px;justify-content:center}
@media(max-width:700px){.header-inner{height:71px}.footer-brand,.footer-brand .brand{height:71px;align-items:center;justify-content:center}.footer-logo-window{align-self:center}}

/* 2026-11-07 local preview: section separators, spacing and card/form refinements. */
.header{border-top:1px solid var(--green)}
.profile-showcase{border-bottom-color:#b62d69}
.profile-showcase-card:hover{
  box-shadow:0 0 0 1px var(--green),0 18px 40px rgba(7,63,50,.14);
}
#about{position:relative}
#about::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:100vw;
  border-bottom:1px solid #4b075f;
  transform:translateX(-50%);
}
.monitor-form{background:#e4f1e7}

@media(min-width:761px){
  .profile-showcase{padding-top:32px;padding-bottom:43px}
  #about{padding-bottom:62px}
}

/* 2026-11-10 local preview: unify content widths while keeping full-bleed backgrounds and rules. */
:root{--page-content-width:min(1180px,calc(100% - 96px))}

.header-inner,
.profile-showcase-heading.container,
.profile-showcase-viewport,
#about,
.monitor-section>.container,
footer>.container{
  width:var(--page-content-width);
  max-width:none;
  margin-inline:auto;
}

.header-inner{padding-inline:0}
.header nav{right:0}

.profile-showcase-viewport{
  width:min(1210px,calc(var(--page-content-width) + 30px));
  padding-left:0;
  padding-right:0;
}

.profile-showcase-card{
  border-color:var(--green);
}

.profile-showcase-card:hover{
  box-shadow:0 18px 40px rgba(7,63,50,.14);
}

@media(max-width:1050px){
  :root{--page-content-width:calc(100% - 64px)}
}

@media(max-width:760px){
  :root{--page-content-width:calc(100% - 40px)}
  .header-inner{padding-inline:0}
  .header nav{right:0}
  .profile-showcase-viewport{
    width:calc(var(--page-content-width) + 30px);
    padding-left:0;
    padding-right:0;
  }
}

/* Keep the hidden anti-spam field from widening the page. */
body{overflow-x:hidden}

.monitor-form .monitor-honeypot{
  left:0;
  top:0;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
}

/* 2026-11-10 local preview: compact chapter-title styling for the popup menu. */
.header nav{
  width:232px;
  gap:8px;
  padding:10px;
  background:rgba(228,241,231,.88);
}

.header nav::before{
  margin:0 2px 1px;
}

.header nav a,
.header nav a:nth-of-type(3){
  display:block;
  min-height:34px;
  padding:7px 12px;
  border:1px solid currentColor;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  line-height:1.5;
  letter-spacing:.01em;
  text-align:left;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .18s ease;
}

.header nav a:nth-of-type(1),
.header nav a:nth-of-type(1):hover{
  color:#0b426d;
  background:#d9eff8;
}

.header nav a:nth-of-type(2),
.header nav a:nth-of-type(2):hover{
  color:#b62d69;
  background:#f9dce4;
}

.header nav a:nth-of-type(3),
.header nav a:nth-of-type(3):hover{
  color:#4b075f;
  background:#eadcf2;
}

.header nav a:hover{
  transform:translateX(2px);
  box-shadow:0 3px 8px rgba(7,63,50,.10);
}

@media(max-width:700px){
  .header nav{width:232px}
}
