/* plan3の汎用header指定を、業務案内ページ内の見出しでは解除する */
.service-page header {
  position: static;
  inset: auto;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

@media (max-width: 999px) {
  body > header [data-menu] {
    display: grid;
  }
}

/* 業務請負・業務委託：三者関係図 */
.contract-section{grid-template-columns:1fr;gap:0}
.contract-section .diagram-intro{max-width:880px}
.contract-section .relationship{width:100%;max-width:1000px;margin:50px auto 0}
.contract-figure{margin:0}
.contract-diagram{display:block;width:100%;height:auto;font-family:var(--font)}
.contract-diagram-mobile{display:none}
.contract-solid{fill:none;stroke:var(--teal);stroke-width:3;stroke-linecap:round}
.contract-dashed{fill:none;stroke:#536269;stroke-width:3;stroke-dasharray:10 8;stroke-linecap:round;stroke-linejoin:round}
.contract-node{fill:var(--gray);stroke:var(--line);stroke-width:2}
.contract-node-text{fill:var(--navy);font-size:21px;font-weight:700}
.contract-label-bg{fill:#fff}
.contract-label{fill:var(--navy);font-size:17px;font-weight:700}
.contract-figure figcaption{margin-top:12px;color:#566164;font-size:12px;line-height:1.8}
@media(max-width:699px){
  .contract-section .relationship{margin-top:35px}
  .contract-diagram-desktop{display:none}
  .contract-diagram-mobile{display:block}
  .contract-node-text{font-size:25px}
  .contract-label{font-size:24px}
  .contract-figure figcaption{font-size:13px}
}
