@layer page {
  .dds-layout {
    position: relative;
  }
  @media screen and (min-width: 768px) {
    .dds-in-bg {
      position: relative;
    }
    .dds-in-bg::before {
      pointer-events: none;
      right: 0;
      top: 0;
      aspect-ratio: 1/1;
      width: 25rem;
      background: url("../../../../img/page/business/dds/sap_bg_top_in.png") 100% 0/25rem auto no-repeat;
      display: block;
      content: "";
      position: absolute;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-in-bg {
      background: url("../../../../img/page/business/dds/sap_bg_top_sp.png") 100% 0/51.2820512821vw auto no-repeat;
    }
  }
  .dds-sap-wrap {
    position: relative;
  }
  .dds-sap-wrap.is-in {
    padding-top: 5.375rem;
  }
  .dds-sap-wrap.is-in::before {
    width: 80rem;
    height: 1px;
    background: rgba(255, 255, 255, 0.6);
    display: block;
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
  }
  @media screen and (max-width: 767px) {
    .dds-sap-wrap {
      background: url("../../../../img/page/business/dds/sap_bg_top_sp.png") 100% 0/51.2820512821vw auto no-repeat, url("../../../../img/page/business/dds/sap_bg_bottom_sp.png") 0 100%/51.2820512821vw auto no-repeat;
    }
    .dds-sap-wrap.is-in {
      padding-top: 10.2564102564vw;
      background: url("../../../../img/page/business/dds/sap_bg_bottom_sp.png") 0 calc(100% + 10.2564102564vw)/51.2820512821vw auto no-repeat;
    }
    .dds-sap-wrap.is-in::before {
      width: calc(100% - var(--sp-pad) * 2);
    }
  }
  .dds-sap {
    padding-top: 6.25rem;
    padding-bottom: 9.8125rem;
  }
  @media screen and (min-width: 768px) {
    .dds-sap {
      position: relative;
      background: url("../../../../img/page/business/dds/sap_bg_bottom.png") 0 100%/25.6875rem auto no-repeat;
    }
    .dds-sap::before {
      width: 25.6875rem;
      height: 25.6875rem;
      background: url("../../../../img/page/business/dds/sap_bg_top.png") 0 0/contain;
      display: block;
      content: "";
      position: absolute;
      right: 0%;
      top: -3.3125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap {
      padding-top: 12.8205128205vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  .dds-sap.is-in {
    padding-top: 0;
    padding-bottom: 5rem;
    background: none;
  }
  @media screen and (min-width: 768px) {
    .dds-sap.is-in {
      background: url("../../../../img/page/business/dds/sap_bg_bottom_in.png") 0 100%/25rem auto no-repeat;
    }
    .dds-sap.is-in::before {
      display: none;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap__row {
      display: flex;
      flex-direction: row-reverse;
      justify-content: space-between;
      align-items: center;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap__text-wrap {
      width: 25rem;
    }
  }
  .dds-sap__hdr {
    margin-bottom: 1.5rem;
    padding-bottom: 1.875rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
  @media screen and (max-width: 767px) {
    .dds-sap__hdr {
      margin-bottom: 7.1794871795vw;
      padding-bottom: 7.1794871795vw;
    }
  }
  .dds-sap__hdr-a {
    margin-bottom: 1.875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap__hdr-a {
      margin-bottom: 7.1794871795vw;
    }
  }
  .dds-sap__sub {
    display: block;
    font-size: 1.125rem;
    margin-bottom: 1rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap__sub {
      font-size: 4vw;
      margin-bottom: 2.5641025641vw;
    }
  }
  .dds-sap__ttl {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.35;
  }
  .dds-sap__ttl .is-suf {
    font-size: 1.5rem;
    font-family: var(--en-sans);
    letter-spacing: normal;
  }
  @media screen and (max-width: 767px) {
    .dds-sap__ttl {
      font-size: 6.9230769231vw;
    }
    .dds-sap__ttl .is-suf {
      font-size: 4.1025641026vw;
    }
  }
  .dds-sap__ttl-a {
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0.04em;
  }
  @media screen and (max-width: 767px) {
    .dds-sap__ttl-a {
      font-size: 6.9230769231vw;
    }
  }
  .dds-sap__text {
    line-height: 2.2222222222;
  }
  @media screen and (min-width: 768px) {
    .dds-sap__text {
      font-size: 1.125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap__text {
      font-size: 4.1025641026vw;
      line-height: 1.75;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap__img-wrap {
      width: 49.875rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap__img-wrap {
      margin: 10.2564102564vw auto 0 auto;
    }
  }
  .dds-sap__img-wrap-a {
    text-align: center;
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap__img-wrap-a {
      margin-top: 10.2564102564vw;
    }
  }
  .dds-sap__img-wrap-a img {
    width: 50rem;
  }
  .dds-sap-camera {
    position: relative;
    margin-top: 3.75rem;
    padding: 5rem;
  }
  .dds-sap-camera::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(19.5410003662px);
    --webkit-backdrop-filter: blur(19.541000366210938px);
    filter: hue-rotate(6deg) brightness(90%);
    background-color: rgba(4, 8, 93, 0.2);
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera {
      margin-top: 7.6923076923vw;
      padding: 7.6923076923vw;
    }
  }
  .dds-sap-camera > * {
    position: relative;
    z-index: 1;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__row {
      display: grid;
      grid-template-columns: 1fr 26.875rem;
      gap: 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__row {
      display: flex;
      flex-direction: column;
      gap: 6.6666666667vw;
    }
  }
  .dds-sap-camera__ttl {
    font-size: 1.375rem;
    margin-bottom: 1em;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ttl {
      font-size: 4.6153846154vw;
    }
  }
  .dds-sap-camera__dl {
    margin-top: 2.5rem;
    padding: 1.5625rem 0;
    border: 1px solid rgba(255, 255, 255, 0.5);
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__dl {
      display: grid;
      grid-template-columns: 15.625rem 1fr;
      align-items: center;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__dl {
      margin-top: 3.8461538462vw;
      padding: 5.1282051282vw;
    }
  }
  .dds-sap-camera__dl dt {
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__dl dt {
      font-size: 4.1025641026vw;
      text-align: center;
      margin-bottom: 4.1025641026vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__dl dd {
      font-size: 0.875rem;
      padding-left: 2.5rem;
      border-left: 1px solid rgba(255, 255, 255, 0.2);
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__dl dd {
      border-top: 1px solid rgba(255, 255, 255, 0.5);
      padding-top: 4.1025641026vw;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__dl ul {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__dl ul {
      font-size: 3.0769230769vw;
    }
    .dds-sap-camera__dl ul li {
      text-indent: -0.6em;
      margin-left: 0.6em;
    }
  }
  .dds-sap-camera__ul {
    margin-top: 5.1282051282vw;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__ul {
      margin-top: 2.5rem;
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 0.75rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul {
      display: flex;
      flex-direction: column;
      gap: 1.2820512821vw;
    }
  }
  .dds-sap-camera__ul li {
    color: var(--main);
    background: #fff;
    padding: 1.25rem;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__ul li {
      text-align: center;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul li {
      display: grid;
      align-items: center;
      grid-template-columns: 8.2051282051vw 1fr;
      padding: 4.1025641026vw 4.1025641026vw;
    }
  }
  .dds-sap-camera__ul img {
    width: auto;
    height: 2.6875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul img {
      height: 9.2307692308vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul dl {
      display: grid;
      align-items: center;
      grid-template-columns: 23.0769230769vw 1fr;
      gap: 2.5641025641vw;
    }
  }
  .dds-sap-camera__ul dt {
    font-size: 1.125rem;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-camera__ul dt {
      margin: 0.625rem 0 0.25rem 0;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul dt {
      text-align: center;
      font-size: 3.5897435897vw;
    }
  }
  .dds-sap-camera__ul dd {
    font-size: 0.6875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-camera__ul dd {
      font-size: 2.8205128205vw;
    }
  }
  .dds-sap-example {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5.1282051282vw;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-example {
      gap: 1.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-example {
      margin-bottom: 5.1282051282vw;
    }
  }
  .dds-sap-example > li {
    border: 1px solid #fff;
    padding: 5.1282051282vw;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-example > li {
      display: grid;
      grid-template-columns: 4.375rem 1fr;
      align-items: center;
      gap: 2.125rem;
      margin: 2.5rem 0 2.5rem 0;
      padding: 2.125rem 3.125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-example img {
      width: 10.2564102564vw;
      display: block;
      margin: 0 auto;
    }
  }
  .dds-sap-example dt {
    font-size: 1.25rem;
    margin-bottom: 0.125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-example dt {
      text-align: center;
      font-size: 4.6153846154vw;
      margin: 2.5641025641vw 0;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-example dd {
      font-size: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-list-a {
      margin-top: 3.125rem;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
      margin-top: 7.6923076923vw;
    }
  }
  .dds-sap-list-a > li {
    background: #004ecc;
    padding: 4.6875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a > li {
      padding: 7.6923076923vw;
      background: linear-gradient(to right, #0061e0 0%, #0038b5 100%);
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-list-a > li:nth-child(2) {
      background: #0041bf;
    }
  }
  .dds-sap-list-a__tax {
    margin-top: 0.2em;
  }
  .dds-sap-list-a__tax span {
    display: inline-block;
    background: #033788;
    font-size: 0.875rem;
    font-family: var(--en-sans);
    padding: 0.8em 1em;
    line-height: 1.1;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a__tax span {
      font-size: 3.0769230769vw;
    }
  }
  .dds-sap-list-a__ttl {
    font-size: 2.25rem;
  }
  .dds-sap-list-a__ttl span {
    font-size: 1rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a__ttl {
      font-size: 8.2051282051vw;
    }
    .dds-sap-list-a__ttl span {
      font-size: 3.5897435897vw;
      display: inline-block;
      margin-left: 0.4em;
    }
  }
  .dds-sap-list-a__hdr {
    margin-bottom: 1.5rem;
    padding-bottom: 1.375rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    display: grid;
    align-items: center;
    grid-template-columns: 4rem 1fr;
    gap: 1.875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a__hdr {
      gap: 5.1282051282vw;
      grid-template-columns: 13.8461538462vw 1fr;
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }
  }
  .dds-sap-list-a__text {
    line-height: 1.875;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list-a__text {
      font-size: 3.5897435897vw;
    }
  }
  .dds-sap-list {
    margin-top: 3.125rem;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5rem;
    }
    .dds-sap-list.is-col2 {
      grid-template-columns: repeat(2, 1fr);
    }
    .dds-sap-list.is-col2 > li {
      background: #0044c2;
    }
    .dds-sap-list.is-col2 > li:nth-child(2) {
      background: #0044c2;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
      margin-top: 15.3846153846vw;
    }
  }
  .dds-sap-list > li {
    background: #0059d7;
    padding: 3.75rem 2.5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list > li {
      padding: 7.6923076923vw;
      background: linear-gradient(to right, #0061e0 0%, #0038b5 100%);
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-list > li:nth-child(2) {
      background: #0049c7;
    }
    .dds-sap-list > li:nth-child(3) {
      background: #0044c2;
    }
  }
  .dds-sap-list__ttl {
    text-align: center;
  }
  .dds-sap-list__ttl span {
    display: inline-block;
    background: #033788;
    font-size: 0.875rem;
    font-family: var(--en-sans);
    padding: 0.8em 1em;
    line-height: 1.1;
    letter-spacing: normal;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list__ttl span {
      font-size: 3.0769230769vw;
    }
  }
  .dds-sap-list__ttl-a {
    font-size: 2.25rem;
  }
  .dds-sap-list__ttl-a span {
    font-size: 1rem;
  }
  .dds-sap-list__lead {
    font-size: 1.125rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    line-height: 1.6666666667;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
  }
  .dds-sap-list__lead b {
    font-size: 1.375rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list__lead {
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      font-size: 4.6153846154vw;
    }
  }
  .dds-sap-list__text {
    font-size: 0.875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-list__text {
      font-size: 3.5897435897vw;
    }
  }
  .dds-sap-list__text ul > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  .dds-sap-text-block {
    padding: 3.75rem 0;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-text-block {
      padding: 6.6666666667vw 0 0 0;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-sec + .dds-sap-sec {
      margin-top: 4.375rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-sec + .dds-sap-sec {
      margin-top: 12.8205128205vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-3__row {
      margin-top: 2.5rem;
      display: grid;
      grid-template-columns: 33.3125rem 1fr;
      gap: 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-3__row {
      margin-top: 6.4102564103vw;
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
    }
  }
  .dds-sap-3__text-wrap {
    backdrop-filter: blur(19.5410003662px);
    --webkit-backdrop-filter: blur(19.541000366210938px);
    filter: hue-rotate(6deg) brightness(90%);
    background-color: rgba(4, 8, 93, 0.2);
    padding: 2.5rem;
  }
  .dds-sap-3__text {
    line-height: 2;
    margin-top: 1.25rem;
  }
  @media screen and (min-width: 768px) {
    .dds-sap-3-list {
      display: flex;
      flex-direction: column;
      gap: 0.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-3-list {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
    }
  }
  .dds-sap-3-list > li {
    backdrop-filter: blur(19.5410003662px);
    --webkit-backdrop-filter: blur(19.541000366210938px);
    filter: hue-rotate(6deg) brightness(90%);
    background-color: rgba(4, 8, 93, 0.2);
    padding: 1.875rem 2.5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-3-list > li {
      padding: 8.7179487179vw 6.4102564103vw;
    }
  }
  .dds-sap-3-list__ttl {
    font-size: 1.125rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    margin-bottom: 0.75rem;
    padding-bottom: 0.75rem;
  }
  .dds-sap-3-list__text {
    font-size: 0.875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-3-list__text {
      font-size: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-movie {
      padding-bottom: 3.75rem;
    }
  }
  .dds-sap-movie__lead {
    margin-top: 2.1875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-movie__lead {
      font-size: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-movie__row {
      margin-top: 2.5rem;
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-movie__row {
      margin-top: 7.6923076923vw;
      display: flex;
      flex-direction: column;
      gap: 7.6923076923vw;
    }
  }
  .dds-sap-movie__video-wrap {
    aspect-ratio: 560/315;
  }
  .dds-sap-movie__video-wrap iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dds-sap-movie__caption {
    margin-top: 0.3em;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-movie__caption {
      font-size: 3.5897435897vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sap-assist {
      display: grid;
      grid-template-columns: 21.25rem 1fr;
      gap: 4.375rem;
      align-items: center;
      margin-top: 3.75rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sap-assist {
      margin-top: 10.2564102564vw;
      display: flex;
      flex-direction: column-reverse;
      gap: 5.1282051282vw;
    }
  }
  .dds-sap-assist__text-wrap {
    position: relative;
    padding: 2.5rem;
  }
  .dds-sap-assist__text-wrap::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(19.5410003662px);
    --webkit-backdrop-filter: blur(19.541000366210938px);
    filter: hue-rotate(6deg) brightness(90%);
    background-color: rgba(4, 8, 93, 0.2);
  }
  .dds-sap-assist__text-wrap > * {
    position: relative;
    z-index: 2;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-assist__text-wrap {
      padding: 7.6923076923vw;
    }
  }
  .dds-sap-assist__text {
    margin-top: 1.25rem;
    line-height: 2;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-assist__text {
      margin-top: 2.5641025641vw;
      font-size: 3.5897435897vw;
    }
  }
  .dds-sap-assist__text b {
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-sap-assist__text b {
      font-size: 4.1025641026vw;
    }
  }
  .dds-business {
    background: var(--sub) url("../../../../img/page/business/dds/business_bg.png") 100% 0/45rem auto no-repeat;
    padding-top: 10.3125rem;
    padding-bottom: 10.3125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business {
      background-size: 57.4358974359vw auto;
      padding-top: 20.5128205128vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  .dds-business__hdr {
    border-top: 1px solid var(--accent);
    padding-top: 5rem;
    font-size: 3rem;
    font-weight: 600;
  }
  @media screen and (max-width: 767px) {
    .dds-business__hdr {
      padding-top: 10.2564102564vw;
      font-size: 7.1794871795vw;
    }
  }
  .dds-business__text {
    margin-top: 5rem;
    margin-bottom: 3.75rem;
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business__text {
      margin-top: 10.2564102564vw;
      margin-bottom: 10.2564102564vw;
      font-size: 4.1025641026vw;
    }
  }
  .dds-business__lead {
    position: relative;
    font-size: 2rem;
    margin: 5rem 0 3.75rem 0;
    padding: 1.375rem 3.125rem;
    text-align: center;
    letter-spacing: 0.05em;
    font-weight: 600;
    font-feature-settings: "palt";
  }
  @media screen and (min-width: 768px) {
    .dds-business__lead {
      width: fit-content;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-business__lead {
      font-size: 4.1025641026vw;
      margin: 10.2564102564vw 0 5.1282051282vw 0;
      font-size: 4.6153846154vw;
      padding: 5.1282051282vw 6.1538461538vw;
      text-align: left;
    }
  }
  .dds-business__lead::before, .dds-business__lead::after {
    content: "";
    display: block;
    width: 3rem;
    height: 1.5rem;
    position: absolute;
  }
  @media screen and (max-width: 767px) {
    .dds-business__lead::before, .dds-business__lead::after {
      width: 10.2564102564vw;
      height: 5.1282051282vw;
    }
  }
  .dds-business__lead::before {
    top: 0;
    left: 0;
    border-top: 1px solid var(--accent);
    border-left: 1px solid var(--accent);
  }
  .dds-business__lead::after {
    bottom: 0;
    right: 0;
    border-bottom: 1px solid var(--accent);
    border-right: 1px solid var(--accent);
  }
  @media screen and (min-width: 768px) {
    .dds-business-list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-business-list {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-business-list.is-column {
      display: flex;
      flex-direction: column;
      gap: 1.25rem;
    }
  }
  .dds-business-list > li {
    background: #fff;
    padding: 3.125rem 5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list > li {
      padding: 7.6923076923vw;
      font-size: 3.5897435897vw;
    }
  }
  .dds-business-list > li.is-row {
    padding: 0;
  }
  @media screen and (min-width: 768px) {
    .dds-business-list > li.is-row {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      align-items: center;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-business-list > li.is-row {
      display: flex;
      flex-direction: column-reverse;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-business-list > li.is-row + .dds-business-list > li.is-row {
      margin-top: 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-business-list > li.is-row .dds-business-list__ttl {
      font-size: 1.5rem;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-business-list__text-wrap {
      padding: 0 5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__text-wrap {
      padding: 7.6923076923vw;
    }
  }
  .dds-business-list__hdr {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    font-weight: 500;
  }
  .dds-business-list__hdr b {
    font-weight: 500;
  }
  .dds-business-list__icon img {
    height: 3.375rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__icon img {
      height: 12.8205128205vw;
    }
  }
  .dds-business-list__icon.is-construction img, .dds-business-list__icon.is-government img {
    height: 4rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__icon.is-construction img, .dds-business-list__icon.is-government img {
      height: 11.2820512821vw;
      margin-top: -10.2564102564vw;
    }
  }
  .dds-business-list__ttl {
    font-size: 1.375rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__ttl {
      font-size: 4.6153846154vw;
    }
  }
  .dds-business-list__ttl span {
    display: block;
    font-size: 1rem;
    font-family: var(--en-sans);
    color: var(--accent);
    margin-bottom: 0.2em;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__ttl span {
      font-size: 3.5897435897vw;
    }
  }
  .dds-business-list__btn-wrap {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__btn-wrap {
      margin-top: 6.1538461538vw;
    }
  }
  .dds-business-list__btn-wrap a {
    width: 20rem;
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .dds-business-list__btn-wrap a {
      width: 56.4102564103vw;
      font-size: 4.1025641026vw;
    }
  }
  .dds-solution {
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
  @media screen and (max-width: 767px) {
    .dds-solution {
      padding-top: 20.5128205128vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  .dds-solution + .dds-solution {
    padding-top: 0;
  }
  .dds-solution__hdr {
    border-top: 1px solid var(--accent);
    padding-top: 5rem;
    font-size: 3rem;
    font-weight: 600;
  }
  @media screen and (max-width: 767px) {
    .dds-solution__hdr {
      padding-top: 11.5384615385vw;
      font-size: 7.1794871795vw;
    }
  }
  .dds-solution__text {
    margin-top: 5rem;
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-solution__text {
      margin-top: 10.2564102564vw;
      font-size: 4.1025641026vw;
    }
  }
  @media screen and (min-width: 768px) {
    .is-in .dds-solution-list__name {
      margin-top: 0.125rem;
      font-size: 1.375rem;
    }
  }
  @media screen and (min-width: 768px) {
    .is-construction .dds-solution-list {
      margin-top: 5rem;
    }
  }
  .is-government .dds-solution-list > li:not(.is-genba, .is-picture-maker) {
    display: none;
  }
  .is-government .dds-solution-list .is-picture-maker {
    order: 1;
  }
  .dds-solution-list {
    margin-top: 3.75rem;
    line-height: 1.6;
  }
  @media screen and (min-width: 768px) {
    .dds-solution-list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 0.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list {
      margin-top: 11.5384615385vw;
      display: flex;
      flex-direction: column;
      gap: 1.2820512821vw;
    }
  }
  .dds-solution-list > li {
    background: #F0F4F7;
  }
  .dds-solution-list__btn {
    border: 0;
    padding: 3.125rem 2.5rem;
    width: 100%;
    background-color: transparent;
    text-align: left;
    display: grid;
    grid-template-columns: 1fr 2.5rem;
    align-items: center;
    gap: 0.625rem;
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list__btn {
      padding: 7.6923076923vw;
      grid-template-columns: 1fr 6.1538461538vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list__btn .p-icon-arrow {
      --my-icon-size: 3.0769230769vw;
    }
  }
  .dds-solution-list__text {
    color: var(--accent);
    font-weight: 500;
    line-height: 1.5;
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list__text {
      font-size: 3.5897435897vw;
    }
  }
  .dds-solution-list__name {
    font-size: 1.5rem;
    font-family: var(--mix-sans);
    font-weight: 500;
    margin-top: 0.375rem;
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list__name {
      margin-top: 2.0512820513vw;
      font-size: 4.358974359vw;
      line-height: 1.4;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-solution-list__name[lang=en] {
      font-size: 5.1282051282vw;
    }
  }
  .dds-modal {
    padding: 4.6875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-modal {
      padding: 10.2564102564vw 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-modal__hdr {
      text-align: center;
    }
  }
  .dds-modal__lead {
    color: var(--accent);
    font-size: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-modal__lead {
      font-size: 4.1025641026vw;
    }
  }
  .dds-modal__ttl {
    font-size: 3rem;
    font-weight: 600;
    margin-top: 0.5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-modal__ttl {
      margin-top: 0.5128205128vw;
      font-size: 7.1794871795vw;
    }
  }
  .dds-modal__unit {
    margin-top: 4.375rem;
  }
  @media screen and (min-width: 768px) {
    .dds-modal__unit + .dds-modal__unit {
      margin-top: 3.125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-modal__unit + .dds-modal__unit {
      margin-top: 2.5641025641vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-modal__unit {
      margin-top: 10.2564102564vw;
    }
  }
  .dds-modal__sttl {
    padding: 2.875rem 0;
    font-size: 2rem;
    border-top: 1px solid var(--accent);
    font-weight: 500;
  }
  @media screen and (max-width: 767px) {
    .dds-modal__sttl {
      padding: 10.2564102564vw 0;
      font-size: 6.1538461538vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-modal__list > div {
      display: grid;
      grid-template-columns: 10rem 1fr;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-modal__list > div {
      position: relative;
      border-top: 1px solid rgba(5, 12, 31, 0.1);
    }
    .dds-modal__list > div::before {
      content: "";
      display: block;
      top: -1px;
      left: 0;
      background: var(--accent);
      width: 20.5128205128vw;
      height: 1px;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-modal__list > div > dt,
    .dds-modal__list > div > dd {
      padding-top: 1.625rem;
      padding-bottom: 1.625rem;
    }
  }
  .dds-modal__list > div > dt {
    color: var(--accent);
    font-size: 1.125rem;
    font-weight: 500;
  }
  @media screen and (min-width: 768px) {
    .dds-modal__list > div > dt {
      border-top: 1px solid var(--accent);
    }
  }
  @media screen and (max-width: 767px) {
    .dds-modal__list > div > dt {
      padding-top: 7.6923076923vw;
      margin-bottom: 3.5897435897vw;
    }
  }
  .dds-modal__list > div > dd {
    line-height: 1.875;
  }
  @media screen and (min-width: 768px) {
    .dds-modal__list > div > dd {
      border-top: 1px solid rgba(5, 12, 31, 0.1);
    }
  }
  @media screen and (max-width: 767px) {
    .dds-modal__list > div > dd {
      padding-bottom: 7.6923076923vw;
      font-size: 3.5897435897vw;
    }
  }
  .dds-modal__btn-wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.25rem;
    margin-top: 2.5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-modal__btn-wrap {
      margin-top: 7.6923076923vw;
      justify-content: center;
      gap: 4.1025641026vw;
    }
  }
  .dds-modal__btn-wrap a {
    width: 20rem;
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .dds-modal__btn-wrap a {
      width: 61.5384615385vw;
    }
  }
  .dds-video {
    aspect-ratio: 560/315;
  }
  .dds-video iframe {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
  .dds-m {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .dds-maru-list > li {
    text-indent: -1em;
    margin-left: 1em;
  }
  @media screen and (min-width: 768px) {
    .dds-has-sidebar {
      padding-left: 13.75rem;
      box-sizing: border-box;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-hidden-gtTAB {
      display: none;
    }
  }
  .is-in-show {
    display: none;
  }
  @media screen and (min-width: 768px) {
    .is-in .is-in-show {
      display: block;
    }
  }
  .dds-seen-btn-wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 3.75rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen-btn-wrap {
      margin-top: 10.2564102564vw;
    }
  }
  .dds-seen-btn-wrap a {
    text-align: center;
    width: 20rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen-btn-wrap a {
      width: 74.358974359vw;
    }
  }
  .dds-seen {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    margin-top: 5.625rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen {
      margin-top: 11.5384615385vw;
      gap: 5.1282051282vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-seen__row {
      display: grid;
      grid-template-columns: 1fr 18.75rem;
      gap: 3.125rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-seen__row {
      display: flex;
      flex-direction: column-reverse;
      gap: 7.6923076923vw;
    }
  }
  .dds-seen__row .dds-sttl {
    margin-bottom: 2.1875rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__row .dds-sttl {
      margin-bottom: 5.1282051282vw;
    }
  }
  .dds-seen__row img {
    mix-blend-mode: multiply;
  }
  @media screen and (min-width: 768px) {
    .dds-seen__videos {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: center;
      gap: 1.25rem;
      margin-top: 2.5rem;
    }
  }
  .dds-seen__video {
    aspect-ratio: 560/308;
  }
  @media screen and (min-width: 768px) {
    .dds-seen__video {
      width: 28.625rem;
    }
  }
  .dds-seen__video iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dds-seen__item {
    background: #004ECC;
    color: #fff;
  }
  @media screen and (min-width: 768px) {
    .dds-seen__item {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      align-items: center;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item {
      display: flex;
      flex-direction: column-reverse;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-seen__item-a {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 5rem;
      align-items: center;
      margin-bottom: 1.875rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item-a {
      display: flex;
      flex-direction: column-reverse;
      gap: 8.9743589744vw;
    }
  }
  .dds-seen__item-a .dds-seen__text {
    font-size: 1.125rem;
    line-height: 2.1;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item-a .dds-seen__text {
      font-size: 4.1025641026vw;
    }
  }
  .dds-seen__item-b {
    background: #f0f4f7;
    padding: 5.625rem 3.75rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item-b {
      padding: 7.6923076923vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item-b + .dds-seen__item-b {
      margin-top: 5.1282051282vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-seen__item-b .dds-seen__text {
      margin-bottom: 7.6923076923vw;
    }
  }
  .dds-seen__text-wrap {
    padding: 5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__text-wrap {
      padding: 9.7435897436vw 7.6923076923vw;
    }
  }
  .dds-seen__pick {
    font-size: 0.875rem;
  }
  .dds-seen__pick span {
    display: inline-block;
    background: #fff;
    color: #004ECC;
    line-height: 1.1;
    padding: 0.7em 1em;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__pick span {
      font-size: 3.0769230769vw;
      padding: 0.5em 1em;
    }
  }
  .dds-seen__ttl {
    font-size: 1.5rem;
    font-weight: 600;
    margin-top: 0.625rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    margin-bottom: 1.5625rem;
    padding-bottom: 1.5625rem;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__ttl {
      margin-bottom: 5.1282051282vw;
      padding-bottom: 5.1282051282vw;
      font-size: 4.6153846154vw;
    }
  }
  .dds-seen__text {
    line-height: 1.875;
  }
  @media screen and (max-width: 767px) {
    .dds-seen__text {
      font-size: 3.5897435897vw;
    }
  }
  .dds-movie-list {
    margin-top: 6.875rem;
  }
  @media screen and (min-width: 768px) {
    .dds-movie-list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-movie-list {
      margin-top: 20.5128205128vw;
      display: flex;
      flex-direction: column;
      gap: 10.2564102564vw;
    }
  }
  .dds-movie-list__box {
    aspect-ratio: 560/315;
  }
  .dds-movie-list__box iframe {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
  .dds-movie-list__cap {
    font-size: 1.125rem;
    line-height: 1.5;
    margin-top: 0.375rem;
  }
  @media screen and (max-width: 767px) {
    .dds-movie-list__cap {
      font-size: 4.6153846154vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sidenav {
      position: absolute;
      transform: translateY(6.25rem);
      top: 2.5rem;
      z-index: 100;
    }
    .dds-sidenav.is-fixed {
      position: fixed;
      top: 2.5rem;
    }
    .dds-sidenav.is-bottom {
      position: absolute;
      bottom: 8.75rem;
      top: auto;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sidenav {
      padding-bottom: 3.75rem;
      background: linear-gradient(to right, #0280ff 0%, #004ecb 100%);
    }
  }
  .dds-sidenav__list {
    line-height: 1.4285714286;
    background: #fff;
    box-sizing: border-box;
    padding: 6.6666666667vw 5.1282051282vw 10.2564102564vw 7.1794871795vw;
    font-size: 0.875rem;
    font-weight: 500;
  }
  @media screen and (min-width: 768px) {
    .dds-sidenav__list {
      padding: 2.5rem;
      font-size: 0.875rem;
      width: 16.25rem;
    }
  }
  .dds-sidenav__list li {
    position: relative;
  }
  @media screen and (min-width: 768px) {
    .dds-sidenav__list li {
      padding-left: 1rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-sidenav__list li {
      border-bottom: 1px solid rgba(5, 12, 31, 0.1);
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sidenav__list li + li {
      margin-top: 1.4em;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-sidenav__list li::before {
      content: "";
      display: block;
      width: 0.5rem;
      height: 1px;
      background: var(--accent);
      position: absolute;
      left: 0;
      top: 0.625rem;
    }
  }
  .dds-sidenav__list a {
    transition: 0.25s color;
  }
  .dds-sidenav__list a.is-current {
    font-weight: 600;
    color: var(--accent);
  }
  @media screen and (max-width: 767px) {
    .dds-sidenav__list a {
      padding: 3.8461538462vw 0;
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
    }
  }
  @media (hover: hover) {
    .dds-sidenav__list a:hover {
      color: var(--accent);
    }
  }
  .dds-sidenav__list a .p-icon-arrow {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateX(-25%);
    rotate: 90deg;
  }
  .dds-useful {
    background: var(--sub);
    padding-top: 10.3125rem;
    padding-bottom: 10.3125rem;
  }
  @media screen and (max-width: 767px) {
    .dds-useful {
      background-size: 61.5384615385vw auto;
      padding-top: 20.5128205128vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  .dds-useful__hdr {
    border-top: 1px solid var(--accent);
    padding-top: 5rem;
    font-size: 3rem;
    font-weight: 600;
  }
  @media screen and (max-width: 767px) {
    .dds-useful__hdr {
      padding-top: 10.2564102564vw;
      font-size: 7.1794871795vw;
    }
  }
  .dds-useful__body {
    margin-top: 5rem;
  }
  @media screen and (max-width: 767px) {
    .dds-useful__body {
      margin-top: 10.2564102564vw;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-useful__row {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      align-items: center;
    }
  }
  @media screen and (min-width: 768px) {
    .dds-useful__text-wrap {
      padding: 5.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-useful__text-wrap {
      margin-top: 10.2564102564vw;
    }
  }
  .dds-useful__sttl {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1.25rem;
    letter-spacing: 0.1em;
  }
  @media screen and (max-width: 767px) {
    .dds-useful__sttl {
      font-size: 4.6153846154vw;
      margin-bottom: 5.1282051282vw;
    }
  }
  @media screen and (max-width: 767px) {
    .dds-useful__text {
      font-size: 3.5897435897vw;
    }
  }
  .dds-sttl {
    font-size: 1.5rem;
    font-weight: 500;
    padding-left: 1.25rem;
    border-left: 1px solid #fff;
  }
  .dds-sttl.is-in-white {
    border-color: var(--accent);
  }
  @media screen and (max-width: 767px) {
    .dds-sttl {
      font-size: 5.1282051282vw;
    }
  }
}