

/* DECA Service Agent — page CSS (v35で整理済み)
   ・v33までの約30版分の上書きを、最終的な見た目を変えずに1本化しています
     （未使用のセレクタ・後から上書きされて効いていない指定を削除。12幅＋拡大表示で計算後スタイルが完全一致することを確認）
   ・並び順がそのまま優先順位です。修正するときは、同じセレクタの一番下の行を編集してください
   ・!important は、共通テーマや他ルールとの競合があり得る箇所だけ残しています */
.dsa-page{margin:0;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-weight:500;line-height:1.78;letter-spacing:.08em}
.dsa-page,.dsa-page *{box-sizing:border-box}
.dsa-page{--navy:#1d2088;--navy2:#001379;--pink:#e4007f;--sky:#00a0e9;--lav:#d2cde6;--lav2:#f3f1fa;--grey:#ededf3;--soft:#f8f8fc;--line:#d7d8ea;--sub:#555a87;--white:#fff;max-width:100%;overflow:hidden;color:var(--navy);background:#fff}
.dsa-page img{display:block;max-width:100%;height:auto}
.dsa-page a{color:inherit;text-decoration:none}
.dsa-page button{font:inherit}
.dsa-page :focus-visible{outline:3px solid var(--sky);outline-offset:3px}
.dsa-container{width:min(1200px,calc(100% - 48px));margin-inline:auto}
.dsa-section{position:relative}
.dsa-section--soft{background:var(--soft)}
.dsa-kicker{margin:0 0 8px;color:var(--pink);font-family:Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.18em}
.dsa-heading{text-align:center}
.dsa-heading h2{margin:0;font-size:36px;line-height:1.5;letter-spacing:.1em}
.dsa-heading h2::after{content:"";display:block;width:49px;height:4px;margin:22px auto 0;background:var(--navy)}
.dsa-heading__lead{margin:20px auto 0;color:var(--sub);font-size:15px;text-align:center}
.dsa-underline{background:linear-gradient(transparent 80%,var(--lav) 80%)}
.dsa-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.dsa-btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:12px 26px;border:2px solid var(--navy);border-radius:999px;background:var(--navy);color:#fff!important;font-size:13px;font-weight:700;letter-spacing:.05em;transition:.25s ease}
.dsa-btn:hover{border-color:var(--pink);background:var(--pink)}
.dsa-btn::after{content:"";width:9px;height:12px;margin-left:13px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.dsa-btn--outline{background:#fff;color:var(--navy)!important}
.dsa-btn--outline:hover{color:#fff!important}
.dsa-localNav{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(29,32,136,.12);backdrop-filter:blur(12px)}
.dsa-localNav__inner{width:min(1400px,calc(100% - 32px));min-height:76px;margin:auto;display:flex;align-items:center;gap:22px}
.dsa-localNav__links{display:flex;gap:18px;align-items:center;justify-content:center;flex:1;margin:0;padding:0;list-style:none}
.dsa-localNav__links a{display:flex;align-items:center;min-height:44px;font-size:11px;font-weight:700;white-space:nowrap}
.dsa-localNav__links a:hover{color:var(--pink)}
.dsa-hero{position:relative;min-height:690px;display:flex;align-items:center;background:linear-gradient(145deg,#fff 15%,#f2f3fb 100%)}
.dsa-hero::before,.dsa-hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.dsa-hero::before{width:330px;height:330px;right:-110px;top:-120px;background:rgba(0,160,233,.09)}
.dsa-hero::after{width:210px;height:210px;left:-95px;bottom:30px;background:rgba(228,0,127,.07)}
.dsa-hero__inner{position:relative;z-index:1;width:min(1400px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);gap:42px;align-items:center;padding:66px 0 70px}
.dsa-hero h1{margin:0;font-size:40px;line-height:1.55;letter-spacing:.035em}
.dsa-hero h1 .dsa-mark{display:inline;background:linear-gradient(transparent 82%,var(--lav) 82%)}

.dsa-hero__desc{max-width:770px;margin:22px 0 0;color:var(--sub);font-size:15px;line-height:2}
.dsa-hero__btns{margin-top:28px}

.dsa-challengeGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.dsa-challenge{position:relative;border:1px solid var(--line);border-radius:18px;background:#fff}
.dsa-challenge__num{position:absolute;right:22px;color:var(--lav);font-family:Arial,sans-serif;font-size:42px;font-weight:700;letter-spacing:0}
.dsa-challenge h3{max-width:82%;margin:0 0 16px;font-size:20px;line-height:1.65}
.dsa-challenge p{margin:0;color:var(--sub);font-size:13px;line-height:1.9}
.dsa-challengesClose{max-width:930px;margin:42px auto 0;padding:28px 32px;border-radius:18px;background:var(--navy);color:#fff;text-align:center;font-size:18px;font-weight:700;line-height:1.9}
.dsa-coreBlock{padding:42px;border:1px solid var(--line);border-radius:20px;background:#fff}
.dsa-coreBlock+.dsa-coreBlock{margin-top:30px}
.dsa-coreBlock__head{display:grid;grid-template-columns:118px 1fr;gap:22px;align-items:start;margin-bottom:30px}
.dsa-coreBlock__index{padding:11px 12px;border-radius:999px;background:var(--navy);color:#fff;text-align:center;font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em}
.dsa-coreBlock h3{margin:0;font-size:26px;line-height:1.55}
.dsa-coreBlock__lead{margin:10px 0 0;color:var(--sub);font-size:14px}

.dsa-phaseGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:stretch}
.dsa-phase{position:relative;padding:26px 22px;border:1px solid var(--line);border-radius:17px;background:#fff}
.dsa-phase:not(:last-child)::after{content:"";position:absolute;right:-11px;top:48px;width:20px;height:20px;border-top:2px solid var(--pink);border-right:2px solid var(--pink);transform:rotate(45deg);z-index:2}
.dsa-phase__num{color:var(--pink);font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.12em}
.dsa-phase h3{line-height:1.5}
.dsa-phase h4{line-height:1.6}
.dsa-phase ul{margin:0;padding:0;list-style:none}
.dsa-phase li{position:relative;padding-left:14px;color:var(--sub);font-size:10.5px}
.dsa-phase li+li{margin-top:5px}
.dsa-phase li::before{content:"";position:absolute;left:0;top:.68em;width:6px;height:6px;border-radius:50%;background:var(--pink)}
.dsa-phase__output{padding-top:14px;border-top:1px dashed var(--line);font-size:10px;font-weight:700}
.dsa-deliveryMessage{max-width:920px;margin:34px auto 0;text-align:center;font-size:18px;font-weight:700;line-height:1.85}
.dsa-finalCta{padding:94px 0;background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;text-align:center}
.dsa-finalCta h2{margin:0;font-size:31px;line-height:1.65}
.dsa-finalCta p{margin:15px auto 0;color:#e4e6ff;font-size:12px}
.dsa-finalCta .dsa-btns{justify-content:center;margin-top:28px}
.dsa-finalCta .dsa-btn{border-color:#fff;background:#fff;color:var(--navy)!important}
.dsa-finalCta .dsa-btn:hover{border-color:var(--pink);background:var(--pink);color:#fff!important}
@media (max-width:1100px){
  .dsa-localNav__links{gap:10px}
  .dsa-localNav__links a{font-size:10px}
  .dsa-hero__inner{grid-template-columns:minmax(0,1fr) minmax(390px,.8fr);gap:30px}
  .dsa-hero h1{font-size:37px}
}
@media (max-width:850px){
  .dsa-localNav__links{display:none}
  .dsa-localNav__inner{min-height:66px}
  .dsa-hero__inner{grid-template-columns:1fr}
}
@media (max-width:767.98px){
  .dsa-container{width:min(100% - 28px,1200px)}
  .dsa-heading h2{font-size:26px;line-height:1.55}
  .dsa-heading h2::after{margin-top:17px}
  .dsa-heading__lead{font-size:13px}
  .dsa-localNav__inner{width:calc(100% - 22px);gap:10px}
  .dsa-hero{min-height:auto}
  .dsa-hero__inner{width:calc(100% - 28px);padding:50px 0 64px}
  .dsa-hero h1{font-size:29px;line-height:1.65;letter-spacing:.035em}
  
  .dsa-hero__desc{font-size:13px;line-height:1.9}
  .dsa-hero__btns{margin-top:22px}
  .dsa-btns{display:grid;grid-template-columns:1fr}
  .dsa-btn{width:100%;min-height:54px}
  .dsa-challengeGrid{grid-template-columns:1fr;gap:12px}
  .dsa-challenge h3{font-size:17px}
  .dsa-challengesClose{padding:22px 18px;font-size:15px}
  .dsa-coreBlock{padding:28px 18px;border-radius:16px}
  .dsa-coreBlock__head{grid-template-columns:1fr;gap:12px}
  .dsa-coreBlock__index{width:max-content}
  .dsa-coreBlock h3{font-size:21px}
  
  .dsa-phase:not(:last-child)::after{right:auto;left:50%;top:auto;bottom:-10px;transform:translateX(-50%) rotate(135deg)}
  .dsa-phase{padding:24px 20px}
  .dsa-deliveryMessage{font-size:15px}
  .dsa-finalCta{padding:74px 0}
  .dsa-finalCta h2{font-size:24px}
}
@media (max-width:767px){
  .dsa-coreBlock__head{grid-template-columns:1fr}
  .dsa-coreBlock__index{justify-self:start}
  .dsa-heading h2{font-size:28px}
}
.dsa-localNav{box-shadow:0 5px 18px rgba(29,32,136,.05)}
.dsa-contentIcon{display:block;width:64px;height:64px;object-fit:contain}
.dsa-challenge__num{top:18px}
.dsa-phase__icon{width:54px;height:54px;margin:12px 0 4px}
.dsa-phase h3{margin:6px 0 3px;font-size:19px}
.dsa-phase h4{margin:0 0 16px;color:var(--pink);font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.08em}
.dsa-deliveryMessage{margin-top:34px}
@media (max-width:767px){
  .dsa-coreBlock{padding:28px 20px}
}
.dsa-page{overflow-x:clip!important;overflow-y:visible!important;--dsa-sticky-offset:0px;--dsa-header-gap:0px}
.dsa-localNav{position:sticky!important;top:var(--dsa-sticky-offset,0px)!important;z-index:1100!important;isolation:isolate;transition:none!important;animation:none!important;margin-top:0!important;will-change:top}
.dsa-page>.dsa-localNav:first-child{margin-block-start:0!important}

.dsa-challenge{padding:30px 30px 26px;min-height:0}
.dsa-challenge__num{margin-bottom:12px}
.dsa-challenge h3{margin-top:0}
.dsa-productGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.dsa-productCard{display:flex;flex-direction:column;min-height:300px;padding:26px 22px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--navy);text-decoration:none;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}
.dsa-productCard:hover,.dsa-productCard:focus-visible{transform:translateY(-3px);border-color:var(--pink);background:#f6f4ff;box-shadow:0 14px 30px rgba(29,32,136,.12);outline:none}
.dsa-productCard__logoBox{display:flex;align-items:center;justify-content:center;height:92px;padding:8px 12px;margin-bottom:18px}
.dsa-productCard__logoBox img{display:block;max-width:100%;width:auto!important;height:auto!important;object-fit:contain}
.dsa-productCard__category{display:block;font-size:18px;font-weight:700;line-height:1.5;text-align:center}
.dsa-productCard__desc{display:block;margin-top:10px;color:var(--sub);font-size:12px;line-height:1.8;flex:1;text-align:left}
.dsa-productCard__more{display:block;margin-top:18px;color:var(--navy);font-size:12px;font-weight:700;text-align:right}

.dsa-phase__en{color:var(--sub)!important;font-size:10px!important;font-weight:700!important;letter-spacing:.04em!important}
@media (max-width:1020px){
  .dsa-productGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:767px){
  
  
  .dsa-challenge{padding:24px 20px}
  .dsa-productGrid{grid-template-columns:1fr!important}
  .dsa-productCard{min-height:0}
  .dsa-productCard__logoBox{height:82px}
  .dsa-localNav{top:var(--dsa-sticky-offset,0px)!important}
}
.dsa-section{padding:88px 0}
.dsa-heading{margin-bottom:42px}

.dsa-localNav__logo{flex:0 0 214px}
.dsa-localNav__logo img{display:block;width:205px!important;height:auto!important;max-height:46px!important;object-fit:contain;object-position:left center}

.dsa-localNav__cta{flex:0 0 230px}
.dsa-localNav__cta .dsa-btn{width:100%;min-height:54px;padding:8px 18px;font-size:11px;line-height:1.45;text-align:center;white-space:nowrap}
.dsa-productCard__logoBox img{max-height:66px}

.dsa-page .afs-p-caseCard{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}
.dsa-page .afs-p-caseCard__head{display:grid;grid-template-columns:230px 1fr;border-bottom:1px solid var(--line)}
.dsa-page .afs-p-caseCard__summary{padding:30px 34px}
.dsa-page .afs-p-caseCard__summary p{margin:0 0 9px;color:var(--pink);font-weight:700}
.dsa-page .afs-p-caseCard__summary h3{margin:0;font-size:24px;line-height:1.65}
.dsa-page .afs-p-caseCard__company{margin:0 0 8px!important;color:var(--sub)!important}
.dsa-page .afs-p-caseCard__logo{width:min(270px,100%);max-height:72px;object-fit:contain;object-position:left center;margin:0 0 12px}
.dsa-page .afs-p-caseCard__metrics{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.dsa-page .afs-p-metric{padding:8px 12px;border-radius:999px;background:var(--grey);font-weight:700}
.dsa-page .afs-p-caseFlow{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.dsa-page .afs-p-caseStage{padding:28px 30px}
.dsa-page .afs-p-caseStage+.afs-p-caseStage{border-left:1px solid var(--line)}
.dsa-page .afs-p-caseStage__label{margin:0;color:var(--pink);font-family:Arial,sans-serif;font-weight:700;letter-spacing:.12em}
.dsa-page .afs-p-caseStage h4{margin:8px 0 0;font-size:17px}
.dsa-page .afs-p-caseStage p{margin:13px 0 0;color:var(--sub)}
.dsa-page .afs-p-caseStage.afs-_relatedResult strong{display:block;margin-top:13px;color:var(--navy);font-size:17px;font-weight:700;line-height:1.75}
.dsa-page .afs-p-caseCard__link{padding:0 30px 30px;text-align:center}
.dsa-page .afs-c-btn{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:13px 28px;border:2px solid var(--navy);border-radius:999px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;line-height:1.45;letter-spacing:.06em;transition:.325s cubic-bezier(.25,.25,.75,.75);text-decoration:none}
.dsa-page .afs-c-btn:hover{border-color:var(--pink);background:var(--pink)}
.dsa-page .afs-c-btn::after{content:"";width:11px;height:13px;margin-left:14px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.dsa-page .afs-p-caseCard__link .afs-c-btn{min-width:300px;justify-content:center}
.dsa-page .afs-p-caseCard.afs-_related{border-color:rgba(29,32,136,.18);box-shadow:0 14px 36px rgba(29,32,136,.06)}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__logo.afs-_cainz{width:min(190px,55%);max-height:54px;margin-bottom:10px;object-position:left center}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__head{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:stretch}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary{display:flex;flex-direction:column;justify-content:center;padding:34px 34px 32px}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary h3{margin-top:4px;font-size:23px;line-height:1.6}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary>p:not(.afs-p-caseCard__company){margin:0 0 8px;color:var(--pink);font-size:12px;font-weight:700}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__media{min-height:300px;padding:24px 28px;border-left:1px solid var(--line);background:#fff;display:grid;place-items:center;overflow:hidden}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__media img{width:100%;height:100%;min-height:0;max-height:270px;object-fit:contain;background:#fff}
.dsa-page .afs-p-caseCard.afs-_related .afs-p-metric{padding:9px 14px;background:#f4f6fb;color:var(--navy)}
.dsa-page .afs-p-diagramScrollHint{display:none}
@media (max-width:1180px){
  .dsa-localNav__inner{gap:14px}
  .dsa-localNav__logo{flex-basis:190px}
  .dsa-localNav__logo img{width:182px!important}
  .dsa-localNav__links{gap:10px}
  .dsa-localNav__links a{font-size:10px}
  .dsa-localNav__cta{flex-basis:205px}
  .dsa-localNav__cta .dsa-btn{padding-inline:13px;font-size:10.5px}
}
@media (max-width:850px){
  .dsa-localNav__logo{flex:1 1 auto}
  .dsa-localNav__logo img{width:170px!important}
  .dsa-localNav__cta{flex:0 0 176px}
  .dsa-localNav__cta .dsa-btn{min-height:44px;padding:7px 10px;font-size:10px}
}
@media (max-width:767.98px){
  .dsa-section{padding:68px 0}
  .dsa-heading{margin-bottom:32px}
  
  #products{padding-top:52px}
  .dsa-localNav__logo img{width:154px!important}
  .dsa-localNav__cta{flex-basis:160px}
  .dsa-localNav__cta .dsa-btn{min-height:42px;padding:7px 8px;font-size:9.5px}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__head{grid-template-columns:1fr}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary h3{font-size:19px}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__media{min-height:0;padding:12px 10px 14px;border-left:0;border-top:1px solid var(--line);background:#fff;display:block;overflow:hidden}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__media img{display:block;width:100%;max-width:100%;height:auto;min-height:0;max-height:none;object-fit:contain;margin:0}
  .dsa-page .afs-p-diagramScrollHint{display:block;margin:6px 0 0;color:var(--sub);line-height:1.5;text-align:center}
  .dsa-page .afs-p-caseFlow{grid-template-columns:1fr}
  .dsa-page .afs-p-caseStage{padding:22px 20px}
  .dsa-page .afs-p-caseStage+.afs-p-caseStage{border-left:0;border-top:1px solid var(--line)}
  .dsa-page .afs-p-caseCard__link{padding:0 20px 24px}
  .dsa-page .afs-p-caseCard__link .afs-c-btn{width:100%;min-width:0}
}
@media (max-width:430px){
  .dsa-localNav__inner{width:calc(100% - 16px);gap:6px}
  .dsa-localNav__logo img{width:138px!important}
  .dsa-localNav__cta{flex-basis:148px}
  .dsa-localNav__cta .dsa-btn{font-size:9px;padding-inline:7px}
}
.dsa-phase{display:flex;flex-direction:column}
.dsa-phase__jp{min-height:58px;display:flex;align-items:flex-end;font-size:19px!important;line-height:1.45!important;letter-spacing:.02em}
.dsa-phase__en{min-height:28px;margin-top:4px!important}
.dsa-phase ul{flex:1}
.dsa-phase__output{margin-top:auto}
@media (max-width:1100px){
  .dsa-phaseGrid{grid-template-columns:repeat(2,1fr)!important;gap:16px}
  .dsa-phase:nth-child(2)::after{display:none!important}
  .dsa-phase__jp{min-height:48px}
}
@media (max-width:767.98px){
  .dsa-phaseGrid{grid-template-columns:1fr!important}
  .dsa-phase__jp{min-height:0;font-size:18px!important}
  .dsa-phase__en{min-height:0}
}

.dsa-visionToChallenge{max-width:1020px;margin:24px auto 0;padding-top:28px;border-top:1px solid var(--line);text-align:center}
.dsa-visionToChallenge h3{margin:4px 0 10px;font-size:27px;line-height:1.5;letter-spacing:.04em}
.dsa-visionToChallenge .dsa-heading__lead{max-width:820px;margin:0 auto 28px}
.dsa-visionToChallenge .dsa-challengeGrid{text-align:left}
.dsa-visionToChallenge .dsa-challengesClose{margin-top:30px}

@media (max-width:767px){
  
  
  
  
  
  
  
  .dsa-visionToChallenge{padding-top:22px}
  .dsa-visionToChallenge h3{font-size:22px}
  .dsa-visionToChallenge .dsa-heading__lead{margin-bottom:22px;font-size:13px}
  .dsa-visionToChallenge .dsa-challengesClose{margin-top:24px}
}
@media (min-width:1181px){
  .dsa-visionToChallenge .dsa-challengeGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .dsa-visionToChallenge .dsa-challenge{padding:26px 20px 22px}
  .dsa-visionToChallenge .dsa-challenge__num{right:16px;top:12px;font-size:34px}
  .dsa-visionToChallenge .dsa-challenge h3{max-width:88%;margin-bottom:12px;font-size:17px;line-height:1.55}
  .dsa-visionToChallenge .dsa-challenge p{font-size:12px;line-height:1.78}
}

.dsa-visionToChallenge{margin-top:34px}
@media (max-width: 960px){
  
  
  
  .dsa-visionToChallenge{margin-top:28px}
}

.dsa-heading__lead{max-width:820px;margin-left:auto;margin-right:auto;line-height:1.9}
.dsa-hero__content>p:last-of-type{max-width:760px}

.dsa-coreBlock__lead{max-width:760px;line-height:1.85}

.dsa-phase ul{gap:7px}
.dsa-phase li{line-height:1.65}
.dsa-phase__output{line-height:1.6}
.dsa-finalCta p{max-width:720px;margin-left:auto;margin-right:auto;line-height:1.8}
@media (max-width:767px){
  .dsa-heading__lead{max-width:100%;line-height:1.8}
  .dsa-coreBlock__lead{max-width:100%}
  
}

.dsa-coreFig{position:relative;margin-top:6px;padding:14px;border:1px solid var(--line,#d7d8ea);border-radius:18px;background:#fff}
.dsa-coreFig svg{display:block;width:100%;height:auto}
.dsa-coreFig .decafig--sp{display:none}
@media (max-width:767px){
  .dsa-coreFig .decafig--pc{display:none}
  .dsa-coreFig .decafig--sp{display:block}
}
.dsa-coreFig svg text{font-family:inherit}
@media (max-width:767px){
  .dsa-page .dsa-pcBr{display:none}
}
.dsa-page .dsa-heading__lead{max-width:780px}
.dsa-pressWrap{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:36px;align-items:start;padding:34px;border:1px solid rgba(29,32,136,.14);border-radius:24px;background:#fff;box-shadow:0 22px 60px rgba(29,32,136,.07)}
.dsa-pressVisual{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff}
.dsa-pressVisual img{display:block;width:100%;aspect-ratio:1200/630;object-fit:contain;background:#fff}
.dsa-press h3{margin:0;font-size:23px;line-height:1.7;letter-spacing:.02em}
.dsa-press__subtitle{margin:14px 0 0;color:var(--navy);font-size:13px;font-weight:700;line-height:1.9}
.dsa-press__lead{margin:18px 0 0;color:var(--sub);font-size:13px;line-height:2}
.dsa-pressTags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.dsa-pressTags span{display:inline-flex;padding:6px 11px;border-radius:999px;background:var(--lav2);font-size:10.5px;font-weight:700;letter-spacing:.04em}
.dsa-pressActions{margin-top:24px}
.dsa-pressActions .dsa-btn{min-height:50px;font-size:12.5px}
@media (max-width:1020px){
  .dsa-pressWrap{grid-template-columns:1fr;gap:26px}
  .dsa-pressVisual{max-width:720px;margin-inline:auto}
}
@media (max-width:767px){
  .dsa-pressWrap{padding:20px}
  .dsa-press h3{font-size:18px;line-height:1.65}
  .dsa-press__subtitle{font-size:12px;line-height:1.8}
  .dsa-press__lead{font-size:12.5px;line-height:1.9}
  .dsa-pressActions .dsa-btn{width:100%;max-width:360px}
}
.dsa-page section[id],.dsa-page #challenges{scroll-margin-top:calc(var(--dsa-sticky-offset,0px) + 104px)}
@media (max-width:767px){
  .dsa-page section[id],.dsa-page #challenges{scroll-margin-top:calc(var(--dsa-sticky-offset,0px) + 76px)}
}

.dsa-formEmbed{max-width:860px;margin:0 auto;padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(29,32,136,.06)}
.dsa-formEmbed iframe{display:block;width:100%;min-height:500px;border:0}
@media (max-width:767px){
  .dsa-formEmbed{padding:14px;border-radius:16px}
}
.dsa-page .dsa-heading__lead{font-size:16px;line-height:2.05}
.dsa-page .dsa-hero__desc{font-size:16px;line-height:2}

.dsa-page .dsa-visionToChallenge .dsa-heading__lead{font-size:15px}
.dsa-page .dsa-coreBlock__lead{font-size:15px;line-height:1.95}

.dsa-page .dsa-productCard__desc{font-size:13.5px;line-height:1.85}
.dsa-page .dsa-productCard__more{font-size:13px}

.dsa-page .afs-p-caseCard__company{font-size:12.5px!important}
.dsa-page .afs-p-caseCard__summary p{font-size:12.5px}
.dsa-page .afs-p-caseStage p{font-size:14px;line-height:2}
.dsa-page .afs-p-caseStage__label{font-size:12.5px}
.dsa-page .afs-p-metric{font-size:12.5px}
.dsa-page .dsa-phase h4,.dsa-page .dsa-phase__en{font-size:11.5px}
.dsa-page .dsa-phase__num{font-size:11px}
.dsa-page .dsa-phase li{font-size:12.5px;line-height:1.85}
.dsa-page .dsa-phase__output{font-size:11.5px;line-height:1.7}
.dsa-page .dsa-finalCta p{font-size:14px;line-height:2}
.dsa-page .dsa-btn{font-size:13.5px}
.dsa-page .dsa-localNav__links a{font-size:11.5px}
@media (max-width:767px){
  .dsa-page .dsa-heading h2{font-size:25px;line-height:1.6}
  .dsa-page .dsa-heading__lead{font-size:14.5px;line-height:1.95}
  .dsa-page .dsa-hero__desc{font-size:14.5px;line-height:1.95}
  
  
  .dsa-page .dsa-visionToChallenge h3{font-size:22px;line-height:1.6}
  .dsa-page .dsa-visionToChallenge .dsa-heading__lead{font-size:14px}
  .dsa-page .dsa-challengesClose{font-size:16px;line-height:1.85}
  .dsa-page .dsa-coreBlock h3{font-size:21px;line-height:1.6}
  .dsa-page .dsa-coreBlock__lead{font-size:14px;line-height:1.9}
  .dsa-page .dsa-productCard__category{font-size:16px}
  .dsa-page .dsa-productCard__desc{font-size:13px;line-height:1.8}
  
  
  .dsa-page .afs-p-caseStage p{font-size:13.5px;line-height:1.95}
  .dsa-page .dsa-finalCta p{font-size:13.5px;line-height:1.95}
  .dsa-page .dsa-btn{font-size:13px}
  .dsa-container{width:min(100% - 24px,1200px)}
  .dsa-coreBlock{padding-inline:16px}
  .dsa-coreFig{margin-inline:-22px;padding:6px;border-radius:0;border-left:0;border-right:0}
  .dsa-coreFig .decafig{width:100%}
}

.dsa-zoom{position:fixed;inset:0;z-index:2000;display:none;flex-direction:column;background:rgba(6,8,45,.97)}
.dsa-zoom[aria-hidden="false"]{display:flex}

@media (max-width:430px){
  .dsa-page .dsa-hero__inner>*,.dsa-page .dsa-hero__content,.dsa-page .dsa-hero__content>*{min-width:0;max-width:100%}
  
}
@media (max-width:374px){
  .dsa-page .dsa-hero h1{letter-spacing:.02em}
}

.dsa-page .dsa-coreBlock__head{grid-template-columns:240px 1fr;gap:24px;align-items:start}
.dsa-page .dsa-coreBlock__index{display:inline-flex;align-items:center;justify-content:flex-start;width:100%;min-height:42px;padding:0 18px;text-align:left;white-space:nowrap;line-height:1;font-size:11.5px;letter-spacing:.1em}
@media (max-width:900px){
  .dsa-page .dsa-coreBlock__head{grid-template-columns:1fr;gap:14px}
  .dsa-page .dsa-coreBlock__index{width:max-content;max-width:100%;min-height:38px;padding:0 16px;font-size:11px;letter-spacing:.08em}
}
@media (max-width:400px){
  .dsa-page .dsa-coreBlock__index{letter-spacing:.06em;padding:0 14px}
}

.dsa-page .dsa-finalCta__logo{display:block;width:236px;height:auto;margin:0 auto 26px;filter:brightness(0) invert(1)}
.dsa-page .dsa-formEmbed--onNavy{max-width:900px;margin:36px auto 0;padding:26px;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:rgba(255,255,255,.08);box-shadow:none;text-align:left}
.dsa-page .dsa-formEmbed--onNavy h3{margin:0 0 10px;color:#fff;font-size:22px;line-height:1.5;letter-spacing:.04em}
.dsa-page .dsa-formEmbed--onNavy p{max-width:none;margin:0 0 16px;color:rgba(255,255,255,.88);font-size:13.5px;line-height:1.9;text-align:left}
.dsa-page .dsa-formEmbed--onNavy iframe{border-radius:18px;background:#fff}
@media (max-width:767px){
  .dsa-page .dsa-finalCta__logo{width:188px;margin-bottom:22px}
  .dsa-page .dsa-formEmbed--onNavy{margin-top:28px;padding:16px;border-radius:16px}
  .dsa-page .dsa-formEmbed--onNavy h3{font-size:18px}
  .dsa-page .dsa-formEmbed--onNavy p{font-size:13px}
}

.dsa-page .dsa-visionToChallenge .dsa-challengeGrid{align-items:stretch;margin-top:34px;row-gap:34px}
.dsa-page .dsa-visionToChallenge .dsa-challenge{height:100%;display:flex;flex-direction:column;overflow:visible;padding:32px 18px 24px}
.dsa-page .dsa-visionToChallenge .dsa-challenge__num{position:absolute;left:50%;right:auto;top:0;transform:translate(-50%,-50%);z-index:3;display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:30px;padding:0 15px;border-radius:999px;background:var(--navy);color:#fff;font-family:Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.1em;line-height:1}
.dsa-page .dsa-visionToChallenge .dsa-challenge h3{max-width:100%;margin:0 0 14px;font-size:15.5px;line-height:1.62;letter-spacing:.01em;text-align:center}
.dsa-page .dsa-visionToChallenge .dsa-challenge p{margin:0;font-size:13px;line-height:1.92}
@media (max-width:1023px){
  .dsa-page .dsa-visionToChallenge .dsa-challenge h3{font-size:16px}
}
@media (max-width:767px){
  .dsa-page .dsa-visionToChallenge .dsa-challengeGrid{margin-top:30px;row-gap:30px}
  .dsa-page .dsa-visionToChallenge .dsa-challenge{padding:30px 20px 22px}
  .dsa-page .dsa-visionToChallenge .dsa-challenge__num{min-width:54px;height:28px;font-size:12px}
  .dsa-page .dsa-visionToChallenge .dsa-challenge h3{font-size:17px;line-height:1.6}
}

.dsa-page .dsa-formEmbed--onNavy iframe{width:100%;height:var(--dsa-form-h);min-height:0;overflow:hidden}

@media (max-width:767px){
  
  
  
  
  
  
  .dsa-page .dsa-phaseGrid{gap:16px}
  .dsa-page .dsa-phase{padding:26px 20px;text-align:center}
  .dsa-page .dsa-phase__num{font-size:11.5px}
  .dsa-page .dsa-phase__icon{margin-inline:auto}
  .dsa-page .dsa-phase__jp{font-size:19px;line-height:1.55}
  .dsa-page .dsa-phase h4,.dsa-page .dsa-phase__en{font-size:12px;line-height:1.6}
  .dsa-page .dsa-phase ul{display:inline-block;text-align:left}
  .dsa-page .dsa-phase li{font-size:13.5px;line-height:1.8}
  .dsa-page .dsa-phase li+li{margin-top:7px}
  .dsa-page .dsa-phase__output{font-size:12px;line-height:1.7}
  .dsa-page .dsa-deliveryMessage{font-size:16px;line-height:1.85}
}

@media (max-width:767.98px){
  .dsa-page .dsa-hero__inner{padding-top:66px}
}
.dsa-page .dsa-coreFig svg.decafig{width:100%;max-width:100%;height:auto;max-height:none;min-height:0;min-width:0;margin:0;padding:0;border:0;position:static;float:none;transform:none;aspect-ratio:auto;vertical-align:top}
@media (min-width:768px){
  .dsa-page .dsa-coreFig .decafig--pc{display:block!important}
  .dsa-page .dsa-coreFig .decafig--sp{display:none!important}
}
@media (max-width:767.98px){
  .dsa-page .dsa-coreFig .decafig--pc{display:none!important}
  .dsa-page .dsa-coreFig .decafig--sp{display:block!important}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary{align-items:center;text-align:center;padding:26px 20px 24px}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__logo.afs-_cainz{width:min(178px,60%);margin:0 auto 12px;object-position:center center}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__company{margin-bottom:6px!important}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary h3{margin-top:6px;text-align:center}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__metrics{justify-content:center;width:100%;margin-top:16px}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-metric{text-align:center}
  .dsa-page .dsa-phase{text-align:center}
  .dsa-page .dsa-phase__num{display:block;text-align:center}
  .dsa-page .dsa-phase__icon{margin:6px auto 2px}
  .dsa-page .dsa-phase__jp{justify-content:center;text-align:center}
  .dsa-page .dsa-phase__en,.dsa-page .dsa-phase h4{text-align:center}
  .dsa-page .dsa-phase ul{display:block;width:auto;max-width:100%;margin:4px 0 0;padding-left:20px;text-align:left}
  .dsa-page .dsa-phase li{padding-left:15px;text-align:left}
  .dsa-page .dsa-phase__output{text-align:center}
}
.dsa-page,.dsa-zoom{word-break:keep-all;overflow-wrap:anywhere;line-break:strict}
.dsa-page #press,.dsa-page #press *{word-break:keep-all}
.dsa-page h1,.dsa-page h2,.dsa-page h3,.dsa-page h4{text-wrap:balance}
.dsa-page p,.dsa-page li{text-wrap:pretty}
.dsa-page .dsa-deliveryMessage,.dsa-page .dsa-deliveryMessage *,.dsa-page .dsa-challengesClose,.dsa-page .dsa-phase__output,.dsa-page .dsa-heading__lead,.dsa-page .dsa-finalCta p{text-wrap:balance}
.dsa-page svg,.dsa-page svg *{word-break:normal;overflow-wrap:normal}

.dsa-zoom{overscroll-behavior:contain}
html.dsa-noscroll,body.dsa-noscroll{overflow:hidden}
.dsa-page .dsa-pressWrap{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:center;padding:40px 44px}
.dsa-page .dsa-press{letter-spacing:.04em}
.dsa-page .dsa-press h3{font-size:26px;line-height:1.65;letter-spacing:.03em}
.dsa-page .dsa-press__subtitle{margin-top:18px;font-size:16px;line-height:1.85;letter-spacing:.02em}
.dsa-page .dsa-press__lead{margin-top:18px;font-size:15px;line-height:2}
.dsa-page .dsa-pressTags{gap:10px;margin-top:24px}
.dsa-page .dsa-pressTags span{padding:7px 15px;font-size:13px;line-height:1.5}
.dsa-page .dsa-pressActions{margin-top:30px}
.dsa-page .dsa-pressActions .dsa-btn{min-height:58px;min-width:300px;font-size:14px}
@media (max-width:1180px){
  .dsa-page .dsa-pressWrap{gap:36px;padding:34px}
  .dsa-page .dsa-press h3{font-size:23px}
  .dsa-page .dsa-press .dsa-pcBr{display:none}
}
@media (max-width:1020px){
  .dsa-page .dsa-pressWrap{grid-template-columns:1fr;gap:28px}
}
@media (max-width:767.98px){
  .dsa-page .dsa-pressWrap{gap:22px;padding:18px 18px 26px;border-radius:18px}
  .dsa-page .dsa-pressVisual{border-radius:12px}
  .dsa-page .dsa-press{padding-inline:4px}
  .dsa-page .dsa-press h3{font-size:20px;line-height:1.6}
  .dsa-page .dsa-press__subtitle{margin-top:14px;font-size:14.5px;line-height:1.85}
  .dsa-page .dsa-press__lead{margin-top:14px;font-size:14px;line-height:1.95}
  .dsa-page .dsa-pressTags{gap:8px;margin-top:20px}
  .dsa-page .dsa-pressTags span{padding:6px 13px;font-size:12.5px}
  .dsa-page .dsa-pressActions{margin-top:24px;text-align:center}
  .dsa-page .dsa-pressActions .dsa-btn{width:100%;min-width:0;max-width:none;min-height:56px}
}
@media (min-width:768px){
  .dsa-page .dsa-kicker{font-size:14px}
  
  .dsa-page .dsa-coreBlock__index{font-size:12.5px}
  
  
  
  
  .dsa-page .dsa-phase__num{font-size:12px}
  .dsa-page .dsa-phase h4,.dsa-page .dsa-phase__en{font-size:12px!important}
  .dsa-page .dsa-phase li{font-size:13.5px}
  .dsa-page .dsa-phase__output{font-size:12.5px}
  .dsa-page .afs-p-caseCard__company{font-size:13px!important}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary>p:not(.afs-p-caseCard__company){font-size:13px}
  .dsa-page .afs-p-metric{font-size:13.5px}
  
}
@media (min-width:1181px){
  .dsa-page .dsa-localNav__links a{font-size:13px}
}
@media (min-width:851px) and (max-width:1180px){
  .dsa-page .dsa-localNav__links a{font-size:12px}
}
@media (min-width:851px) and (max-width:1023px){
  .dsa-page .dsa-localNav__inner{gap:10px}
  .dsa-page .dsa-localNav__logo{flex:0 0 150px}
  .dsa-page .dsa-localNav__logo img{width:146px!important}
  .dsa-page .dsa-localNav__links{gap:8px}
  .dsa-page .dsa-localNav__links a{font-size:11px;letter-spacing:.02em}
  .dsa-page .dsa-localNav__cta{flex:0 0 168px}
  .dsa-page .dsa-localNav__cta .dsa-btn{padding-inline:10px;font-size:10.5px}
}
@media (max-width:767.98px){
  .dsa-page{letter-spacing:.05em}
  .dsa-page .dsa-kicker{font-size:12px}
  .dsa-page .dsa-heading__lead,.dsa-page .dsa-visionToChallenge .dsa-heading__lead,.dsa-page .dsa-hero__desc,.dsa-page .dsa-finalCta p,.dsa-page .dsa-formEmbed--onNavy p{font-size:14px;line-height:1.9}
  .dsa-page .dsa-visionToChallenge .dsa-challenge p,.dsa-page .dsa-coreBlock__lead,.dsa-page .dsa-productCard__desc,.dsa-page .afs-p-caseStage p{font-size:14px;line-height:1.9}
  .dsa-page .dsa-phase li{font-size:14px}
  
  .dsa-page .dsa-coreBlock__index{font-size:11.5px;letter-spacing:.06em}
  
  
  
  .dsa-page .dsa-phase__num{font-size:12px}
  .dsa-page .dsa-phase h4,.dsa-page .dsa-phase__en{font-size:12px!important}
  .dsa-page .dsa-phase__output{font-size:12.5px}
  .dsa-page .afs-p-diagramScrollHint{font-size:11.5px}
  .dsa-page .afs-p-metric{font-size:13px}
  .dsa-page .dsa-btn{font-size:14px}
  .dsa-page .dsa-localNav__cta .dsa-btn{font-size:11px;letter-spacing:.02em;white-space:nowrap}
  .dsa-page .afs-p-caseCard.afs-_related .afs-p-caseCard__summary>p:not(.afs-p-caseCard__company){font-size:13px}
  .dsa-page .afs-p-caseCard__company{font-size:13px!important}
  .dsa-page .dsa-heading h2{font-size:24px;line-height:1.6;letter-spacing:.03em}
  .dsa-page .dsa-visionToChallenge>h3{font-size:22px}
  .dsa-page .dsa-coreBlock h3{font-size:20px;line-height:1.6}
  
  
  .dsa-page .dsa-hero__content{text-align:center}
  .dsa-page .dsa-hero h1{text-align:center}
  .dsa-page .dsa-hero__desc{margin-inline:auto;text-align:center}
  .dsa-page .dsa-hero .dsa-hero__desc .dsa-pcBr{display:none}
  
  .dsa-page .dsa-formEmbed--onNavy h3{text-align:center;font-size:19px}
  .dsa-page .dsa-formEmbed--onNavy p{text-align:center}
  .dsa-page .dsa-deliveryMessage{font-size:16px}
  .dsa-page .dsa-challengesClose{font-size:15.5px}
}
@media (max-width:400px){
  .dsa-page .dsa-coreBlock__index{font-size:11px}
}
@media (max-width:374px){
  .dsa-page .dsa-hero h1{font-size:23px}
  .dsa-page .dsa-heading h2{font-size:22px}
  .dsa-page .dsa-press h3{font-size:19px}
}
.dsa-page{margin-top:var(--dsa-top-fix,0px)}
.dsa-page .dsa-formEmbed--onNavy{--dsa-form-h:960px}
@media (max-width:901px){
  .dsa-page .dsa-formEmbed--onNavy{--dsa-form-h:1080px}
}
@media (max-width:487px){
  .dsa-page .dsa-formEmbed--onNavy{--dsa-form-h:1140px}
}
@media (max-width:359px){
  .dsa-page .dsa-formEmbed--onNavy{--dsa-form-h:1200px}
}

/* ===== v36 : PRESS RELEASE（ニトリ）を /service/cloud/chat/ の実測値に合わせる ===== */
.dsa-page .dsa-pressWrap{grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);gap:34px;align-items:start;padding:32px;border-radius:24px}
.dsa-page .dsa-pressVisual{margin-top:6px;border-radius:18px}
.dsa-page .dsa-press{padding-inline:0;letter-spacing:.45px}
.dsa-page .dsa-press .dsa-pcBr{display:none}
.dsa-page .dsa-press h3{font-size:24px;font-weight:700;line-height:1.65;letter-spacing:.03em}
.dsa-page .dsa-press__subtitle{max-width:40em;margin-top:12px;font-size:clamp(16px,1.55vw,24px);font-weight:800;line-height:1.55;letter-spacing:.45px}
.dsa-page .dsa-press__lead{margin-top:18px;font-size:13px;line-height:1.95;letter-spacing:.45px}
.dsa-page .dsa-pressTags{gap:8px;margin-top:18px}
.dsa-page .dsa-pressTags span{padding:6px 10px;font-size:11px;font-weight:800;line-height:1.8;letter-spacing:.45px}
.dsa-page .dsa-pressActions{margin-top:22px;text-align:left}
.dsa-page .dsa-pressActions .dsa-btn{width:auto;max-width:none;min-width:0;min-height:56px;padding:12px 24px;font-size:13px;font-weight:800;letter-spacing:.04em}
@media(max-width:1100px){
  .dsa-page .dsa-press__subtitle{font-size:18px}
}
@media(max-width:1180px){
  .dsa-page .dsa-pressWrap{gap:34px;padding:32px}
  .dsa-page .dsa-press h3{font-size:24px}
}
@media(max-width:1020px){
  .dsa-page .dsa-pressWrap{grid-template-columns:1fr}
  .dsa-page .dsa-pressVisual{max-width:720px;margin-inline:auto}
}
@media(max-width:767.98px){
  .dsa-page .dsa-pressWrap{gap:34px;padding:20px;border-radius:24px}
  .dsa-page .dsa-pressVisual{border-radius:18px}
  .dsa-page .dsa-press,.dsa-page .dsa-press__lead,.dsa-page .dsa-pressTags span{letter-spacing:.23px}
  .dsa-page .dsa-press__subtitle{margin-top:12px;font-size:13.5px;letter-spacing:.23px}
  .dsa-page .dsa-press h3{font-size:19px;line-height:1.65}
  .dsa-page .dsa-press__lead{margin-top:18px;font-size:13px}
  .dsa-page .dsa-pressTags{gap:8px;margin-top:18px}
  .dsa-page .dsa-pressTags span{padding:6px 10px;font-size:11px}
  .dsa-page .dsa-pressActions{margin-top:22px;text-align:center}
  .dsa-page .dsa-pressActions .dsa-btn{width:100%;max-width:360px;font-size:12px;letter-spacing:.04em}
}
/* ===== /v36 ===== */

/* ===== v37→v39 : 共通ヘッダーとページヘッダーの重なり =====
   v37で、メニューを開いたときの被さりを直すためにページヘッダーを共通ヘッダー（z-index:100）の下に回したところ、
   共通ヘッダーの下端から下へ約59px（SPは約30px）はみ出して描かれる装飾のノイズ帯（.l-header::before）が
   ページヘッダーの上に乗り、初期表示で白っぽく見える不具合が出た。
   v39：①ページヘッダーは従来どおり共通ヘッダーより手前（ノイズ帯を隠す）
        ②メニューを開いている間だけページヘッダーを隠す（CSSの :has() とJSの二重で判定） */
.dsa-page .dsa-localNav{z-index:1100!important;transition:opacity .2s ease,visibility .2s ease}
html.dsa-gmenu-open .dsa-page .dsa-localNav{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
html:has(.js-hamburger[aria-expanded="true"]) .dsa-page .dsa-localNav{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
html:has(#megamenu[aria-hidden="false"]) .dsa-page .dsa-localNav{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
/* ===== /v39 ===== */

/* ===== v38 ===== */
/* 1. iOS 15以前（overflow:clip 非対応）：ページ全体の overflow:hidden が効いてしまい、
      ページヘッダーの画面上部固定（sticky）が止まるため、はみ出し対策をFVだけに限定 */
@supports not (overflow:clip){
  .dsa-page{overflow:visible!important}
  .dsa-page .dsa-hero{overflow:hidden}
}
/* 2. タッチ端末：タップ後にホバー表示（カードの浮き上がり・ピンク色）が残らないようにする */
@media (hover:none){
  .dsa-page .dsa-btn:hover{border-color:var(--navy);background:var(--navy)}
  .dsa-page .dsa-btn--outline:hover{background:#fff;color:var(--navy)!important}
  .dsa-page .dsa-finalCta .dsa-btn:hover{border-color:#fff;background:#fff;color:var(--navy)!important}
  .dsa-page .afs-c-btn:hover{border-color:var(--navy);background:var(--navy)}
  .dsa-page .dsa-localNav__links a:hover{color:inherit}
  .dsa-page .dsa-productCard:hover{transform:none;border-color:var(--line);background:#fff;box-shadow:none}
  /* 押している間だけ色を変えて、タップの手応えは残す */
  .dsa-page .dsa-btn:active,.dsa-page .afs-c-btn:active{border-color:var(--pink);background:var(--pink);color:#fff!important}
  .dsa-page .dsa-productCard:active{border-color:var(--pink);background:#f6f4ff}
}
/* ===== /v38 ===== */



/* DECA FAQ（/service/cloud/faq/）のKNOWLEDGE LOOP・SERVICE AGENTモーション用CSSをそのまま流用 */
/* DECA FAQ review build / deca-page-builder v1.5.0 */
.dfq-page{--dfq-navy:#1d2088;--dfq-navy2:#001379;--dfq-navy3:#1f3591;--dfq-pink:#e4007f;--dfq-pink-deep:#cc0072;--dfq-grey:#ededf3;--dfq-line:#d7d9e8;--dfq-lav:#d2cde6;--dfq-sky:#00a0e9;--dfq-white:#fff;--dfq-common-header-h:0px;--dfq-local-header-h:72px;color:var(--dfq-navy);font-family:YakuHanJP,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-weight:500;line-height:1.6875;letter-spacing:.08em;background:#fff;overflow-x:clip;position:relative}
.dfq-page *{box-sizing:border-box}.dfq-page a{color:inherit;text-decoration:none}.dfq-page button,.dfq-page input,.dfq-page textarea,.dfq-page select{font:inherit}.dfq-page img{max-width:100%;height:auto}.dfq-page [hidden]{display:none!important}

.dfq-section{scroll-margin-top:calc(var(--dfq-common-header-h) + var(--dfq-local-header-h) + 18px);padding:112px 24px}.dfq-section__inner{max-width:1200px;margin:0 auto}.dfq-section--soft{background:var(--dfq-grey)}.dfq-kicker{margin:0 0 10px;text-align:center;color:var(--dfq-pink-deep);font-family:Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em}.dfq-heading{margin:0;text-align:center;color:var(--dfq-navy);font-size:36px;line-height:1.5;letter-spacing:.1em;font-weight:700}.dfq-heading:after{content:"";display:block;width:49px;height:4px;margin:22px auto 0;background:var(--dfq-navy);border-radius:99px}.dfq-lead{max-width:860px;margin:28px auto 0;text-align:center;font-size:16px;line-height:2;letter-spacing:.1em}

/* HERO */

/* ===== shared FAQ UI mock (hero + experience tabs) ===== */

[data-dfq-reveal]{opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease}[data-dfq-reveal].is-in{opacity:1;transform:none}
/* AI answer card */

/* related / normal results */

/* article view */

/* consult / follow-up button */

/* chat */

/* chat input bar (bottom) */

/* auto-filled inquiry form */

/* fake cursor */

[data-dfq-view-name]{animation:dfq-viewin .45s ease both}
@keyframes dfq-blink{0%,49%{opacity:1}50%,100%{opacity:0}}@keyframes dfq-shimmer{0%{background-position:120% 0}100%{background-position:-120% 0}}@keyframes dfq-bounce{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}@keyframes dfq-ripple{0%{transform:scale(.3);opacity:.9}100%{transform:scale(1);opacity:0}}@keyframes dfq-viewin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* WHY */

/* EXPERIENCE */
.dfq-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--dfq-line)}
/* KNOWLEDGE */
.dfq-loop-card{background:#fff;border:1px solid var(--dfq-line);border-radius:18px;overflow:hidden;min-width:0}.dfq-loop-card__body{padding:22px}.dfq-loop-card__no{font-family:Arial,sans-serif;font-weight:700;font-size:11px;color:var(--dfq-pink-deep);letter-spacing:.12em}.dfq-loop-card h3{font-size:19px;margin:4px 0 10px}.dfq-loop-card p{font-size:12px;line-height:1.9;margin:0}

/* SERVICE AGENT */

/* IMPLEMENTATION */

/* WHY GIVERY */

/* PRESS RELEASE */

/* DOCUMENT */

/* Modal */
/* Preview shell */

@media(max-width:767px){.dfq-page{letter-spacing:.06em}.dfq-section{padding:74px 18px}.dfq-kicker{font-size:11px}.dfq-heading{font-size:26px;line-height:1.55;letter-spacing:.07em}.dfq-heading:after{width:55px;height:4px;margin-top:18px}.dfq-lead{font-size:14px;text-align:left;line-height:1.9;margin-top:22px}.dfq-tabs{display:flex;overflow-x:auto;scrollbar-width:none}.dfq-tabs::-webkit-scrollbar{display:none}.dfq-loop-card__body{padding:20px 18px}.dfq-loop-card h3{font-size:17px}}
@media(prefers-reduced-motion:reduce){.dfq-page *,.dfq-page *:before,.dfq-page *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}[data-dfq-reveal],[data-dfq-view-name]{opacity:1!important;transform:none!important}}

/* KNOWLEDGE LOOP : 機能挙動が分かるミニUIモーション (v6) */
.dfq-loop-card__visual{height:256px;padding:14px;background:#f1f2f8;border-bottom:1px solid var(--dfq-line);display:block;position:relative;overflow:hidden}
.dfq-kl{--kl-dur:8s;--kl-delay:0s;width:100%;height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e2f0;border-radius:11px;overflow:hidden;box-shadow:0 14px 28px -24px rgba(15,20,80,.9)}
.dfq-kl .dfq-kl__head{flex:none;height:27px;display:flex;align-items:center;gap:5px;padding:0 8px;border-bottom:1px solid #edeef6;background:#fafbfe}
.dfq-kl .dfq-kl__mark{flex:none;width:14px;height:14px;border-radius:4px;background:var(--dfq-navy);color:#fff;font-family:Arial,sans-serif;font-size:6px;font-weight:800;display:flex;align-items:center;justify-content:center;letter-spacing:0}
.dfq-kl .dfq-kl__app{font-size:9px;font-weight:700;letter-spacing:.02em;color:#5b5f8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl__ai{flex:none;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:14px;padding:0 5px;border-radius:999px;background:#e9eaf3;color:#a3a6c0;font-family:Arial,sans-serif;font-size:7.5px;font-weight:800;letter-spacing:.02em}
.dfq-kl .dfq-kl__stage{position:relative;flex:1;min-height:0;overflow:hidden}
.dfq-kl .dfq-kl__scene{position:absolute;left:8px;right:8px;top:8px;bottom:6px;display:flex;flex-direction:column;gap:4px;opacity:0}
.dfq-kl .dfq-kl__foot{flex:none;height:25px;display:flex;align-items:center;gap:6px;padding:0 8px;border-top:1px solid #edeef6;background:#fafbfe}
.dfq-kl .dfq-kl__status{position:relative;flex:1;min-width:0;height:25px}
.dfq-kl .dfq-kl__status span{position:absolute;left:0;top:0;display:flex;align-items:center;height:25px;font-size:8.5px;font-weight:700;letter-spacing:.01em;color:#6c7099;white-space:nowrap;opacity:0}
.dfq-kl .dfq-kl__dots{flex:none;display:flex;align-items:center;gap:3px}
.dfq-kl .dfq-kl__dots i{width:5px;height:5px;border-radius:50%;background:#dfe1ec}
/* parts */
.dfq-kl .dfq-kl-cap{margin:0;font-size:8px;font-weight:700;letter-spacing:.02em;color:#9a9dba}
.dfq-kl .dfq-kl-row{display:flex;align-items:center;gap:5px;min-height:22px;padding:4px 6px;border:1px solid #e6e8f2;border-radius:6px;background:#fff}
.dfq-kl .dfq-kl-row__t{flex:1;min-width:0;font-size:9px;line-height:1.4;font-weight:700;color:#3b3f70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-row.is-pair{border-color:var(--dfq-pink);background:#fff6fb;box-shadow:0 0 0 1px rgba(228,0,127,.18)}
.dfq-kl .dfq-kl-row.is-dim{opacity:.4}
.dfq-kl .dfq-kl-tag{flex:none;font-size:7px;font-weight:700;line-height:1;letter-spacing:.01em;padding:3px 5px;border-radius:999px;background:#eef0f7;color:#8b8fae;white-space:nowrap}
.dfq-kl .dfq-kl-tag--pink{background:#ffe3f0;color:var(--dfq-pink-deep)}
.dfq-kl .dfq-kl-tag--navy{background:var(--dfq-navy);color:#fff}
.dfq-kl .dfq-kl-tag--ok{background:var(--dfq-pink);color:#fff}
.dfq-kl .dfq-kl-tag--miss{background:#fff;color:var(--dfq-pink-deep);border:1px solid #f3b8d8}
.dfq-kl .dfq-kl-scanwrap{position:relative;display:flex;flex-direction:column;gap:4px;overflow:hidden;border-radius:7px}
.dfq-kl .dfq-kl-scan{position:absolute;left:0;right:0;top:0;height:26px;border-radius:6px;background:linear-gradient(180deg,rgba(228,0,127,0),rgba(228,0,127,.16),rgba(228,0,127,0));opacity:0;pointer-events:none}
.dfq-kl .dfq-kl-found{display:flex;align-items:center;gap:5px;margin-top:auto;padding:5px 7px;border:1px solid #f3b8d8;border-radius:7px;background:#fff6fb;font-size:9px;font-weight:700;color:var(--dfq-navy);line-height:1.4}
.dfq-kl .dfq-kl-found span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-card{border:1px solid #dcdeeb;border-radius:8px;background:#fff;padding:7px 8px 8px;display:flex;flex-direction:column;gap:4px}
.dfq-kl .dfq-kl-card--new{border-color:#f3b8d8;background:#fffafd}
.dfq-kl .dfq-kl-card__head{display:flex;align-items:center;gap:5px;padding-bottom:5px;border-bottom:1px dashed #e4e6f0}
.dfq-kl .dfq-kl-card__ttl{flex:1;min-width:0;font-size:9px;font-weight:700;color:var(--dfq-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-qa{display:flex;gap:5px;font-size:9px;line-height:1.55;color:#3b3f70}
.dfq-kl .dfq-kl-qa b{flex:none;width:12px;height:12px;margin-top:1px;border-radius:3px;background:var(--dfq-navy);color:#fff;font-family:Arial,sans-serif;font-size:7px;font-weight:800;display:flex;align-items:center;justify-content:center;letter-spacing:0}
.dfq-kl .dfq-kl-qa__a{background:var(--dfq-pink)!important}
.dfq-kl .dfq-kl-qa span{min-width:0;overflow:hidden;white-space:normal}
.dfq-kl .dfq-kl-check{display:flex;align-items:center;gap:4px;margin-top:auto;padding:5px 6px;border:1px solid #dcdeeb;border-radius:7px;background:#f7f8fc}
.dfq-kl .dfq-kl-who{flex:none;display:inline-flex;align-items:center;gap:3px;font-size:7px;font-weight:700;color:#fff;background:#8b8fae;border-radius:999px;padding:3px 6px;line-height:1}
.dfq-kl .dfq-kl-check__t{flex:1;min-width:0;font-size:8.5px;font-weight:700;color:#5b5f8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;height:16px;padding:0 7px;border-radius:999px;background:var(--dfq-navy);color:#fff;font-size:7.5px;font-weight:700;line-height:1}
.dfq-kl .dfq-kl-btn--ghost{background:#fff;color:#8b8fae;border:1px solid #dcdeeb}
.dfq-kl .dfq-kl-pairbox{display:flex;flex-direction:column;gap:4px;padding:7px;border:1px solid #dcdeeb;border-radius:8px;background:#fff}
.dfq-kl .dfq-kl-pairrow{display:flex;align-items:center;gap:5px;min-height:20px}
.dfq-kl .dfq-kl-pairrow .dfq-kl-row__t{font-weight:700}
.dfq-kl .dfq-kl-pairrow.is-dim .dfq-kl-row__t{color:#9a9dba}
.dfq-kl .dfq-kl-pairrow.is-off{opacity:.45}
.dfq-kl .dfq-kl-pairrow.is-off .dfq-kl-row__t{text-decoration:line-through;text-decoration-color:#b9bcd0}
.dfq-kl .dfq-kl-note{margin:2px 0 0;padding-top:5px;border-top:1px dashed #e4e6f0;font-size:8px;line-height:1.5;color:#8b8fae}
.dfq-kl .dfq-kl-ext{display:flex;flex-direction:column;gap:3px;padding:4px 6px;border:1px solid #e6e8f2;border-radius:6px;background:#fff}
.dfq-kl .dfq-kl-ext__t{font-size:8.5px;font-weight:700;color:#5b5f8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-mark{align-self:flex-start;max-width:100%;font-size:8.5px;font-weight:700;line-height:1.3;color:var(--dfq-pink-deep);background:#ffe3f0;border-radius:4px;padding:2px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-arrow{display:block;margin:0 auto;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--dfq-pink);opacity:0}
.dfq-kl .dfq-kl-merged__h{margin:0;font-size:9px;font-weight:700;color:var(--dfq-navy)}
.dfq-kl .dfq-kl-ul{margin:0;padding:0 0 0 11px;list-style:none}
.dfq-kl .dfq-kl-ul li{position:relative;font-size:8.5px;line-height:1.6;color:#3b3f70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-ul li:before{content:"";position:absolute;left:-9px;top:6px;width:4px;height:4px;border-radius:50%;background:var(--dfq-pink)}
.dfq-kl .dfq-kl-line{margin:0;font-size:9px;line-height:1.6;color:#3b3f70}
.dfq-kl .dfq-kl-line.is-old{color:#9a9dba}
.dfq-kl .dfq-kl-line.is-add{color:var(--dfq-pink-deep);font-weight:700;padding-left:8px;border-left:2px solid var(--dfq-pink)}
.dfq-kl .dfq-kl-line.is-add span{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;max-width:100%}
.dfq-kl .dfq-kl-qa span[class*="dkl-type"]{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;max-width:100%}
.dfq-kl .dfq-kl-cmp{display:flex;align-items:center;gap:5px;padding:5px 6px;border:1px solid #e6e8f2;border-radius:6px;background:#fff}
.dfq-kl .dfq-kl-cmp.is-new{border-color:#f3b8d8;background:#fff6fb}
.dfq-kl .dfq-kl-cmp__l{flex:none;font-size:7px;font-weight:700;color:#fff;background:#a3a6c0;border-radius:999px;padding:3px 5px;line-height:1}
.dfq-kl .dfq-kl-cmp.is-new .dfq-kl-cmp__l{background:var(--dfq-pink)}
.dfq-kl .dfq-kl-cmp__t{flex:1;min-width:0;font-size:9px;font-weight:700;color:#3b3f70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfq-kl .dfq-kl-vs{display:block;margin:1px auto;width:1px;height:10px;background:#c8cbdd;opacity:0}
@keyframes dkl-ai{0%,24%{background:#e9eaf3;color:#a3a6c0}26%,72%{background:var(--dfq-pink);color:#fff}75%,100%{background:#e9eaf3;color:#a3a6c0}}.dkl-ai-create,.dkl-ai-dedupe,.dkl-ai-merge,.dkl-ai-update{animation:dkl-ai var(--kl-dur) linear var(--kl-delay) infinite both}
@keyframes dkl-sc-0-24{0%,24%{opacity:1;transform:none}28%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-0-24{animation:dkl-sc-0-24 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-24-42{0%,24%{opacity:0;transform:translateY(5px)}26%,42%{opacity:1;transform:none}46%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-24-42{animation:dkl-sc-24-42 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-24-48{0%,24%{opacity:0;transform:translateY(5px)}26%,48%{opacity:1;transform:none}52%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-24-48{animation:dkl-sc-24-48 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-24-50{0%,24%{opacity:0;transform:translateY(5px)}26%,50%{opacity:1;transform:none}54%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-24-50{animation:dkl-sc-24-50 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-42-60{0%,42%{opacity:0;transform:translateY(5px)}44%,60%{opacity:1;transform:none}64%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-42-60{animation:dkl-sc-42-60 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-48-72{0%,48%{opacity:0;transform:translateY(5px)}50%,72%{opacity:1;transform:none}76%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-48-72{animation:dkl-sc-48-72 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-50-74{0%,50%{opacity:0;transform:translateY(5px)}52%,74%{opacity:1;transform:none}78%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-50-74{animation:dkl-sc-50-74 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-60-78{0%,60%{opacity:0;transform:translateY(5px)}62%,78%{opacity:1;transform:none}82%,100%{opacity:0;transform:translateY(-5px)}}.dkl-sc-60-78{animation:dkl-sc-60-78 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-72-100{0%,72%{opacity:0;transform:translateY(5px)}74%,100%{opacity:1;transform:none}}.dkl-sc-72-100{animation:dkl-sc-72-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-74-100{0%,74%{opacity:0;transform:translateY(5px)}76%,100%{opacity:1;transform:none}}.dkl-sc-74-100{animation:dkl-sc-74-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-sc-78-100{0%,78%{opacity:0;transform:translateY(5px)}80%,100%{opacity:1;transform:none}}.dkl-sc-78-100{animation:dkl-sc-78-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-2{0%,2%{opacity:0;transform:translateY(5px)}5%,100%{opacity:1;transform:none}}.dkl-in-2{animation:dkl-in-2 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-5{0%,5%{opacity:0;transform:translateY(5px)}8%,100%{opacity:1;transform:none}}.dkl-in-5{animation:dkl-in-5 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-8{0%,8%{opacity:0;transform:translateY(5px)}11%,100%{opacity:1;transform:none}}.dkl-in-8{animation:dkl-in-8 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-10{0%,10%{opacity:0;transform:translateY(5px)}13%,100%{opacity:1;transform:none}}.dkl-in-10{animation:dkl-in-10 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-11{0%,11%{opacity:0;transform:translateY(5px)}14%,100%{opacity:1;transform:none}}.dkl-in-11{animation:dkl-in-11 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-30{0%,30%{opacity:0;transform:translateY(5px)}33%,100%{opacity:1;transform:none}}.dkl-in-30{animation:dkl-in-30 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-33{0%,33%{opacity:0;transform:translateY(5px)}36%,100%{opacity:1;transform:none}}.dkl-in-33{animation:dkl-in-33 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-34{0%,34%{opacity:0;transform:translateY(5px)}37%,100%{opacity:1;transform:none}}.dkl-in-34{animation:dkl-in-34 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-35{0%,35%{opacity:0;transform:translateY(5px)}38%,100%{opacity:1;transform:none}}.dkl-in-35{animation:dkl-in-35 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-36{0%,36%{opacity:0;transform:translateY(5px)}39%,100%{opacity:1;transform:none}}.dkl-in-36{animation:dkl-in-36 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-40{0%,40%{opacity:0;transform:translateY(5px)}43%,100%{opacity:1;transform:none}}.dkl-in-40{animation:dkl-in-40 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-44{0%,44%{opacity:0;transform:translateY(5px)}47%,100%{opacity:1;transform:none}}.dkl-in-44{animation:dkl-in-44 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-48{0%,48%{opacity:0;transform:translateY(5px)}51%,100%{opacity:1;transform:none}}.dkl-in-48{animation:dkl-in-48 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-54{0%,54%{opacity:0;transform:translateY(5px)}57%,100%{opacity:1;transform:none}}.dkl-in-54{animation:dkl-in-54 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-58{0%,58%{opacity:0;transform:translateY(5px)}61%,100%{opacity:1;transform:none}}.dkl-in-58{animation:dkl-in-58 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-62{0%,62%{opacity:0;transform:translateY(5px)}65%,100%{opacity:1;transform:none}}.dkl-in-62{animation:dkl-in-62 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-65{0%,65%{opacity:0;transform:translateY(5px)}68%,100%{opacity:1;transform:none}}.dkl-in-65{animation:dkl-in-65 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-66{0%,66%{opacity:0;transform:translateY(5px)}69%,100%{opacity:1;transform:none}}.dkl-in-66{animation:dkl-in-66 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-68{0%,68%{opacity:0;transform:translateY(5px)}71%,100%{opacity:1;transform:none}}.dkl-in-68{animation:dkl-in-68 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-80{0%,80%{opacity:0;transform:translateY(5px)}83%,100%{opacity:1;transform:none}}.dkl-in-80{animation:dkl-in-80 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-84{0%,84%{opacity:0;transform:translateY(5px)}87%,100%{opacity:1;transform:none}}.dkl-in-84{animation:dkl-in-84 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-in-86{0%,86%{opacity:0;transform:translateY(5px)}89%,100%{opacity:1;transform:none}}.dkl-in-86{animation:dkl-in-86 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-0-22{0%{opacity:1}22%{opacity:1}24%,100%{opacity:0}}.dkl-live-0-22{animation:dkl-live-0-22 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-24-39{0%,24%{opacity:0}26%,39%{opacity:1}41%,100%{opacity:0}}.dkl-live-24-39{animation:dkl-live-24-39 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-24-40{0%,24%{opacity:0}26%,40%{opacity:1}42%,100%{opacity:0}}.dkl-live-24-40{animation:dkl-live-24-40 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-24-48{0%,24%{opacity:0}26%,48%{opacity:1}50%,100%{opacity:0}}.dkl-live-24-48{animation:dkl-live-24-48 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-40-46{0%,40%{opacity:0}42%,46%{opacity:1}48%,100%{opacity:0}}.dkl-live-40-46{animation:dkl-live-40-46 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-42-58{0%,42%{opacity:0}44%,58%{opacity:1}60%,100%{opacity:0}}.dkl-live-42-58{animation:dkl-live-42-58 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-48-70{0%,48%{opacity:0}50%,70%{opacity:1}72%,100%{opacity:0}}.dkl-live-48-70{animation:dkl-live-48-70 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-50-72{0%,50%{opacity:0}52%,72%{opacity:1}74%,100%{opacity:0}}.dkl-live-50-72{animation:dkl-live-50-72 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-60-76{0%,60%{opacity:0}62%,76%{opacity:1}78%,100%{opacity:0}}.dkl-live-60-76{animation:dkl-live-60-76 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-72-100{0%,72%{opacity:0}74%,100%{opacity:1}}.dkl-live-72-100{animation:dkl-live-72-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-74-100{0%,74%{opacity:0}76%,100%{opacity:1}}.dkl-live-74-100{animation:dkl-live-74-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-live-78-100{0%,78%{opacity:0}80%,100%{opacity:1}}.dkl-live-78-100{animation:dkl-live-78-100 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-2{0%,2%{background:#dfe1ec}4%,100%{background:var(--dfq-navy)}}.dkl-dot-2{animation:dkl-dot-2 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-25{0%,25%{background:#dfe1ec}27%,100%{background:var(--dfq-navy)}}.dkl-dot-25{animation:dkl-dot-25 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-49{0%,49%{background:#dfe1ec}51%,100%{background:var(--dfq-navy)}}.dkl-dot-49{animation:dkl-dot-49 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-51{0%,51%{background:#dfe1ec}53%,100%{background:var(--dfq-navy)}}.dkl-dot-51{animation:dkl-dot-51 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-61{0%,61%{background:#dfe1ec}63%,100%{background:var(--dfq-navy)}}.dkl-dot-61{animation:dkl-dot-61 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-73{0%,73%{background:#dfe1ec}75%,100%{background:var(--dfq-navy)}}.dkl-dot-73{animation:dkl-dot-73 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-75{0%,75%{background:#dfe1ec}77%,100%{background:var(--dfq-navy)}}.dkl-dot-75{animation:dkl-dot-75 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-dot-79{0%,79%{background:#dfe1ec}81%,100%{background:var(--dfq-navy)}}.dkl-dot-79{animation:dkl-dot-79 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-scan-25-38{0%,25%{opacity:0;transform:translateY(-14px)}27%{opacity:1}38%{opacity:1;transform:translateY(74px)}40%,100%{opacity:0;transform:translateY(74px)}}.dkl-scan-25-38{animation:dkl-scan-25-38 var(--kl-dur) linear var(--kl-delay) infinite both}@keyframes dkl-type-52-58-18{0%,52%{width:0}58%,100%{width:100%}}.dkl-type-52-58-18{animation:dkl-type-52-58-18 var(--kl-dur) steps(18,end) var(--kl-delay) infinite both}@keyframes dkl-type-55-66-15{0%,55%{width:0}66%,100%{width:100%}}.dkl-type-55-66-15{animation:dkl-type-55-66-15 var(--kl-dur) steps(15,end) var(--kl-delay) infinite both}@keyframes dkl-type-59-68-24{0%,59%{width:0}68%,100%{width:100%}}.dkl-type-59-68-24{animation:dkl-type-59-68-24 var(--kl-dur) steps(24,end) var(--kl-delay) infinite both}
@media(max-width:1180px){.dfq-loop-card__visual{height:244px}}
@media(max-width:767px){.dfq-loop-card{display:block}.dfq-loop-card__visual{height:258px;min-height:0;padding:12px}.dfq-loop-card__body{padding:20px 18px}.dfq-kl__scene{gap:5px}.dfq-kl-sp-hide{display:none!important}.dfq-kl-check{padding:4px 6px}.dfq-kl-ul li{white-space:normal}}
@media(prefers-reduced-motion:reduce){.dfq-kl *{animation:none!important}.dfq-kl__scene{opacity:0!important;transform:none!important}.dfq-kl__scene[data-dkl-final]{opacity:1!important}.dfq-kl__status span{opacity:0!important}.dfq-kl__status span:last-child{opacity:1!important}.dfq-kl__dots i{background:var(--dfq-navy)!important}.dfq-kl__ai{background:var(--dfq-pink)!important;color:#fff!important}.dfq-kl-line.is-add span,.dfq-kl-qa span[class*="dkl-type"]{width:auto!important}}
.dfq-kl-js .dfq-kl:not(.is-play) *{animation-play-state:paused!important}
.dfq-kl-js .dfq-kl.is-reset *{animation:none!important}

/* SERVICE AGENT : データフロー可視化モーション (v7) */
.dfq-nw{--nw-dur:11s;--nw-delay:0s;display:flex;flex-direction:column;margin:48px auto 0;max-width:1020px}
.dfq-nw__row{display:grid;grid-template-columns:minmax(0,1fr) 58px minmax(210px,300px) 58px minmax(0,1fr);align-items:stretch;gap:0}
/* 中核 */
.dfq-nw__core{border:2px solid var(--dfq-navy);border-radius:18px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 22px 20px;position:relative;z-index:2}
.dfq-nw__core strong{font-size:20px;line-height:1.5}
.dfq-nw__core p{font-size:11.5px;line-height:1.85;margin:8px 0 0}
.dfq-nw__core-states{position:relative;display:block;width:100%;height:28px;margin-top:16px}
.dfq-nw__core-state{position:absolute;left:50%;top:0;transform:translateX(-50%);white-space:nowrap;display:inline-flex;align-items:center;height:28px;padding:0 14px;border-radius:999px;background:var(--dfq-navy);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;opacity:0}
.dfq-nw-sprite{position:absolute;width:0;height:0;overflow:hidden}
.dfq-nw-ic{flex:none;display:block;width:26px;height:26px}
.dfq-nw-ic--core{width:58px;height:58px;margin-bottom:14px}
.dfq-nw-ic--src{width:22px;height:22px}

/* チャネル群 */
.dfq-nw-group{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--dfq-line);border-radius:18px;background:#fbfbfe;min-width:0}
.dfq-nw-group__head{display:flex;align-items:center;gap:8px;min-height:24px}
.dfq-nw-group__lab{display:inline-flex;align-items:center;height:24px;padding:0 12px;border-radius:999px;background:#e7e8f1;color:#6c7099;font-size:11px;font-weight:700;letter-spacing:.06em}
.dfq-nw-log{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:999px;background:#eef0ff;color:var(--dfq-navy);border:1px solid #c9cdf0;font-size:10px;font-weight:700;opacity:0}
.dfq-nw-log:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--dfq-navy)}
.dfq-nw-card{flex:1;border:1px solid var(--dfq-line);border-radius:14px;background:#fff;padding:14px 16px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.dfq-nw-card__head{display:flex;align-items:center;gap:8px;min-width:0}

.dfq-nw-card strong{display:block;font-size:15px;line-height:1.5;margin-top:6px}
.dfq-nw-card p{font-size:11px;line-height:1.75;margin:5px 0 0}
.dfq-nw-card a{display:inline-flex;align-items:center;min-height:32px;margin-top:4px;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
/* 線 */
.dfq-nw-line{position:absolute;overflow:hidden;border-radius:99px}
.dfq-nw-line--h{height:3px;background-image:repeating-linear-gradient(90deg,#ccd0e6 0 6px,transparent 6px 12px)}
.dfq-nw-line--v{width:3px;background-image:repeating-linear-gradient(180deg,#ccd0e6 0 6px,transparent 6px 12px)}
.dfq-nw-line--back.dfq-nw-line--h{background-image:repeating-linear-gradient(90deg,#d5d8ea 0 3px,transparent 3px 8px)}
.dfq-nw-line--back.dfq-nw-line--v{background-image:repeating-linear-gradient(180deg,#d5d8ea 0 3px,transparent 3px 8px)}
.dfq-nw-line i{position:absolute;opacity:0}
.dfq-nw-line--h i{top:0;bottom:0;width:40%;background:linear-gradient(90deg,rgba(228,0,127,0),var(--dfq-pink),rgba(228,0,127,0))}
.dfq-nw-line--v i{left:0;right:0;height:40%;background:linear-gradient(180deg,rgba(228,0,127,0),var(--dfq-pink),rgba(228,0,127,0))}
.dfq-nw-line--back.dfq-nw-line--h i{background:linear-gradient(90deg,rgba(29,32,136,0),var(--dfq-navy),rgba(29,32,136,0))}
.dfq-nw-line--back.dfq-nw-line--v i{background:linear-gradient(180deg,rgba(29,32,136,0),var(--dfq-navy),rgba(29,32,136,0))}
.dfq-nw-arrow{position:absolute;width:0;height:0;border:5px solid transparent}
.dfq-nw-arrow--out{border-right-color:var(--dfq-pink)}
.dfq-nw-arrow--back{border-right-color:var(--dfq-navy)}
/* 往復ワイヤー（PC） */
.dfq-nw-wire{position:relative;align-self:stretch}
.dfq-nw-wire .dfq-nw-line--out{top:calc(50% - 11px)}
.dfq-nw-wire .dfq-nw-line--back{top:calc(50% + 8px)}
.dfq-nw-wire--l .dfq-nw-line--out{left:10px;right:0}
.dfq-nw-wire--l .dfq-nw-line--back{left:0;right:10px}
.dfq-nw-wire--r .dfq-nw-line--out{left:0;right:10px}
.dfq-nw-wire--r .dfq-nw-line--back{left:10px;right:0}
.dfq-nw-wire--l .dfq-nw-arrow--out{left:0;top:calc(50% - 16px);border-left-width:0;border-right-width:8px;border-right-color:var(--dfq-pink)}
.dfq-nw-wire--l .dfq-nw-arrow--back{right:0;top:calc(50% + 3px);border-right-width:0;border-left-width:8px;border-left-color:var(--dfq-navy)}
.dfq-nw-wire--r .dfq-nw-arrow--out{right:0;top:calc(50% - 16px);border-right-width:0;border-left-width:8px;border-left-color:var(--dfq-pink)}
.dfq-nw-wire--r .dfq-nw-arrow--back{left:0;top:calc(50% + 3px);border-left-width:0;border-right-width:8px;border-right-color:var(--dfq-navy)}
.dfq-nw-wire__cap{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;font-weight:700;letter-spacing:.04em;opacity:0}
.dfq-nw-wire__cap--out{top:calc(50% - 30px);color:var(--dfq-pink-deep)}
.dfq-nw-wire__cap--back{top:calc(50% + 16px);color:var(--dfq-navy)}
/* 集約バンド */
.dfq-nw__feed{position:relative;height:66px}
.dfq-nw-trunk{left:calc(50% - 1.5px);top:10px;height:26px}
.dfq-nw-trunk__a{left:calc(50% - 5px);top:0;border-top-width:0;border-bottom-width:8px;border-bottom-color:var(--dfq-pink)}
.dfq-nw-bus{top:35px}
.dfq-nw-bus--l{left:10%;width:40%}
.dfq-nw-bus--r{left:50%;width:40%}
.dfq-nw-stub{top:36px;height:30px}
.dfq-nw-stub--0{left:calc(10% - 1.5px)}
.dfq-nw-stub--1{left:calc(30% - 1.5px)}
.dfq-nw-stub--2{left:calc(50% - 1.5px)}
.dfq-nw-stub--3{left:calc(70% - 1.5px)}
.dfq-nw-stub--4{left:calc(90% - 1.5px)}
/* データソース */
.dfq-nw__sources{position:relative}

.dfq-nw__srcrow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.dfq-nw-src{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid var(--dfq-line);border-radius:12px;background:#fff;font-size:11.5px;font-weight:700;line-height:1.4;text-align:center;color:#5b5f8c}

/* プラットフォーム帯 */
.dfq-nw__platform{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:24px;padding:16px 22px;border:1px dashed var(--dfq-line);border-radius:14px;background:#fbfbfe}
.dfq-nw__platform-lab{font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--dfq-pink-deep)}
.dfq-nw__platform strong{font-size:15px}
.dfq-nw__platform p{flex:1;min-width:180px;font-size:11.5px;line-height:1.8;margin:0;color:#5b5f8c}
.dfq-nw__platform a{font-size:11.5px;font-weight:700;text-decoration:underline;text-underline-offset:4px;min-height:36px;display:inline-flex;align-items:center}
/* 3フェーズの凡例 */
.dfq-nw__legend{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;margin:20px 0 0;padding:0}
.dfq-nw__legend li{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--dfq-line);border-radius:12px;background:#fff}
.dfq-nw__legend b{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#e7e8f1;color:#8b8fae;font-family:Arial,sans-serif;font-size:11px;font-weight:800}

/* SP専用の流れ */
.dfq-nw-sp{display:none}
.dfq-nw-sp--in{display:none}

@keyframes dnw-fl-up-3-24{0%,3%{opacity:0;transform:translateY(270%)}5%{opacity:1}22%{opacity:1}24%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-3-24{animation:dnw-fl-up-3-24 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-5-26{0%,5%{opacity:0;transform:translateY(270%)}7%{opacity:1}24%{opacity:1}26%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-5-26{animation:dnw-fl-up-5-26 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-7-28{0%,7%{opacity:0;transform:translateY(270%)}9%{opacity:1}26%{opacity:1}28%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-7-28{animation:dnw-fl-up-7-28 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-9-30{0%,9%{opacity:0;transform:translateY(270%)}11%{opacity:1}28%{opacity:1}30%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-9-30{animation:dnw-fl-up-9-30 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-11-32{0%,11%{opacity:0;transform:translateY(270%)}13%{opacity:1}30%{opacity:1}32%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-11-32{animation:dnw-fl-up-11-32 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-17-34{0%,17%{opacity:0;transform:translateY(270%)}19%{opacity:1}32%{opacity:1}34%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-17-34{animation:dnw-fl-up-17-34 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-up-70-92{0%,70%{opacity:0;transform:translateY(270%)}72%{opacity:1}90%{opacity:1}92%,100%{opacity:0;transform:translateY(-115%)}}.dnw-fl-up-70-92{animation:dnw-fl-up-70-92 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-down-8-32{0%,8%{opacity:0;transform:translateY(-115%)}10%{opacity:1}30%{opacity:1}32%,100%{opacity:0;transform:translateY(270%)}}.dnw-fl-down-8-32{animation:dnw-fl-down-8-32 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-down-37-59{0%,37%{opacity:0;transform:translateY(-115%)}39%{opacity:1}57%{opacity:1}59%,100%{opacity:0;transform:translateY(270%)}}.dnw-fl-down-37-59{animation:dnw-fl-down-37-59 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-right-12-31{0%,12%{opacity:0;transform:translateX(-115%)}14%{opacity:1}29%{opacity:1}31%,100%{opacity:0;transform:translateX(270%)}}.dnw-fl-right-12-31{animation:dnw-fl-right-12-31 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-right-37-59{0%,37%{opacity:0;transform:translateX(-115%)}39%{opacity:1}57%{opacity:1}59%,100%{opacity:0;transform:translateX(270%)}}.dnw-fl-right-37-59{animation:dnw-fl-right-37-59 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-right-70-92{0%,70%{opacity:0;transform:translateX(-115%)}72%{opacity:1}90%{opacity:1}92%,100%{opacity:0;transform:translateX(270%)}}.dnw-fl-right-70-92{animation:dnw-fl-right-70-92 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-left-12-31{0%,12%{opacity:0;transform:translateX(270%)}14%{opacity:1}29%{opacity:1}31%,100%{opacity:0;transform:translateX(-115%)}}.dnw-fl-left-12-31{animation:dnw-fl-left-12-31 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-left-37-59{0%,37%{opacity:0;transform:translateX(270%)}39%{opacity:1}57%{opacity:1}59%,100%{opacity:0;transform:translateX(-115%)}}.dnw-fl-left-37-59{animation:dnw-fl-left-37-59 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-fl-left-70-92{0%,70%{opacity:0;transform:translateX(270%)}72%{opacity:1}90%{opacity:1}92%,100%{opacity:0;transform:translateX(-115%)}}.dnw-fl-left-70-92{animation:dnw-fl-left-70-92 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-live-0-33{0%{opacity:1}33%{opacity:1}35%,100%{opacity:0}}.dnw-live-0-33{animation:dnw-live-0-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-live-34-65{0%,34%{opacity:0}36%,65%{opacity:1}67%,100%{opacity:0}}.dnw-live-34-65{animation:dnw-live-34-65 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-live-40-64{0%,40%{opacity:0}42%,64%{opacity:1}66%,100%{opacity:0}}.dnw-live-40-64{animation:dnw-live-40-64 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-live-66-100{0%,66%{opacity:0}68%,100%{opacity:1}}.dnw-live-66-100{animation:dnw-live-66-100 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-live-72-96{0%,72%{opacity:0}74%,96%{opacity:1}98%,100%{opacity:0}}.dnw-live-72-96{animation:dnw-live-72-96 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-log-67-97{0%,67%{opacity:0;transform:translateY(4px)}70%,97%{opacity:1;transform:none}100%,100%{opacity:0;transform:none}}.dnw-log-67-97{animation:dnw-log-67-97 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-log-69-97{0%,69%{opacity:0;transform:translateY(4px)}72%,97%{opacity:1;transform:none}100%,100%{opacity:0;transform:none}}.dnw-log-69-97{animation:dnw-log-69-97 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-card-42-66{0%,42%{border-color:var(--dfq-line);box-shadow:none;background:#fff}45%,66%{border-color:var(--dfq-pink);box-shadow:0 10px 26px -18px rgba(228,0,127,.85);background:#fffafd}70%,100%{border-color:var(--dfq-line);box-shadow:none;background:#fff}}.dnw-card-42-66{animation:dnw-card-42-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-card-43-66{0%,43%{border-color:var(--dfq-line);box-shadow:none;background:#fff}46%,66%{border-color:var(--dfq-pink);box-shadow:0 10px 26px -18px rgba(228,0,127,.85);background:#fffafd}70%,100%{border-color:var(--dfq-line);box-shadow:none;background:#fff}}.dnw-card-43-66{animation:dnw-card-43-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-card-45-66{0%,45%{border-color:var(--dfq-line);box-shadow:none;background:#fff}48%,66%{border-color:var(--dfq-pink);box-shadow:0 10px 26px -18px rgba(228,0,127,.85);background:#fffafd}70%,100%{border-color:var(--dfq-line);box-shadow:none;background:#fff}}.dnw-card-45-66{animation:dnw-card-45-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-card-46-66{0%,46%{border-color:var(--dfq-line);box-shadow:none;background:#fff}49%,66%{border-color:var(--dfq-pink);box-shadow:0 10px 26px -18px rgba(228,0,127,.85);background:#fffafd}70%,100%{border-color:var(--dfq-line);box-shadow:none;background:#fff}}.dnw-card-46-66{animation:dnw-card-46-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-card-48-66{0%,48%{border-color:var(--dfq-line);box-shadow:none;background:#fff}51%,66%{border-color:var(--dfq-pink);box-shadow:0 10px 26px -18px rgba(228,0,127,.85);background:#fffafd}70%,100%{border-color:var(--dfq-line);box-shadow:none;background:#fff}}.dnw-card-48-66{animation:dnw-card-48-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-lab-40-66{0%,40%{background:#e7e8f1;color:#6c7099}42%,66%{background:var(--dfq-navy);color:#fff}69%,100%{background:#e7e8f1;color:#6c7099}}.dnw-lab-40-66{animation:dnw-lab-40-66 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-src-3-33{0%,3%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}5%,33%{border-color:var(--dfq-pink);background:#fff6fb;color:var(--dfq-navy)}36%,100%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}}.dnw-src-3-33{animation:dnw-src-3-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-src-5-33{0%,5%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}7%,33%{border-color:var(--dfq-pink);background:#fff6fb;color:var(--dfq-navy)}36%,100%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}}.dnw-src-5-33{animation:dnw-src-5-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-src-7-33{0%,7%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}9%,33%{border-color:var(--dfq-pink);background:#fff6fb;color:var(--dfq-navy)}36%,100%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}}.dnw-src-7-33{animation:dnw-src-7-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-src-9-33{0%,9%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}11%,33%{border-color:var(--dfq-pink);background:#fff6fb;color:var(--dfq-navy)}36%,100%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}}.dnw-src-9-33{animation:dnw-src-9-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-src-11-33{0%,11%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}13%,33%{border-color:var(--dfq-pink);background:#fff6fb;color:var(--dfq-navy)}36%,100%{border-color:var(--dfq-line);background:#fff;color:#5b5f8c}}.dnw-src-11-33{animation:dnw-src-11-33 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-core-29-36{0%,29%{box-shadow:0 0 0 0 rgba(228,0,127,0)}32%{box-shadow:0 0 0 10px rgba(228,0,127,.12)}36%{box-shadow:0 0 0 0 rgba(228,0,127,0)}34%{box-shadow:0 0 0 0 rgba(228,0,127,0)}64%{box-shadow:0 0 0 6px rgba(228,0,127,.10)}88%{box-shadow:0 0 0 0 rgba(29,32,136,0)}94%{box-shadow:0 0 0 10px rgba(29,32,136,.12)}100%{box-shadow:0 0 0 0 rgba(29,32,136,0)}}.dnw-core-29-36{animation:dnw-core-29-36 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-db-22-36{0%,22%{transform:none}29%{transform:scale(1.06)}36%,100%{transform:none}}@keyframes dnw-dbt-22-36{0%,22%{fill:#c7c7e4}29%{fill:#e4007f}36%,100%{fill:#c7c7e4}}.dnw-db-22-36{animation:dnw-db-22-36 var(--nw-dur) linear var(--nw-delay) infinite both}.dnw-db-22-36 ellipse{animation:dnw-dbt-22-36 var(--nw-dur) linear var(--nw-delay) infinite both}@keyframes dnw-lg-0-33{0%,0%{border-color:var(--dfq-line);background:#fff}2%,33%{border-color:var(--dfq-navy);background:#f7f8ff}35%,100%{border-color:var(--dfq-line);background:#fff}}@keyframes dnw-lgb-0-33{0%,0%{background:#e7e8f1;color:#8b8fae}2%,33%{background:var(--dfq-pink);color:#fff}35%,100%{background:#e7e8f1;color:#8b8fae}}@keyframes dnw-lg-34-65{0%,34%{border-color:var(--dfq-line);background:#fff}36%,65%{border-color:var(--dfq-navy);background:#f7f8ff}67%,100%{border-color:var(--dfq-line);background:#fff}}@keyframes dnw-lgb-34-65{0%,34%{background:#e7e8f1;color:#8b8fae}36%,65%{background:var(--dfq-pink);color:#fff}67%,100%{background:#e7e8f1;color:#8b8fae}}@keyframes dnw-lg-66-100{0%,66%{border-color:var(--dfq-line);background:#fff}68%,100%{border-color:var(--dfq-navy);background:#f7f8ff}100%,100%{border-color:var(--dfq-line);background:#fff}}@keyframes dnw-lgb-66-100{0%,66%{background:#e7e8f1;color:#8b8fae}68%,100%{background:var(--dfq-pink);color:#fff}100%,100%{background:#e7e8f1;color:#8b8fae}}
@media(max-width:1024px){.dfq-nw__row{grid-template-columns:minmax(0,1fr) 44px minmax(180px,240px) 44px minmax(0,1fr)}.dfq-nw__core{padding:20px 14px 16px}.dfq-nw__core strong{font-size:17px}.dfq-nw-card{padding:12px 13px}.dfq-nw-card strong{font-size:14px}.dfq-nw__srcrow{grid-template-columns:repeat(3,1fr)}.dfq-nw-bus--l{left:16.6%;width:33.4%}.dfq-nw-bus--r{left:50%;width:33.4%}.dfq-nw-stub--0{left:calc(16.6% - 1.5px)}.dfq-nw-stub--1{left:calc(50% - 1.5px)}.dfq-nw-stub--2{left:calc(83.3% - 1.5px)}.dfq-nw-stub--3,.dfq-nw-stub--4{display:none}}
@media(max-width:767px){
.dfq-nw{margin-top:30px}
.dfq-nw__row{display:flex;flex-direction:column;gap:0}
.dfq-nw__sources{order:1}.dfq-nw-sp--in{order:2}.dfq-nw__feed{display:none}.dfq-nw__row{order:3}.dfq-nw__platform{order:4}.dfq-nw__legend{order:5}
.dfq-nw__core{order:1;padding:20px 18px 16px}.dfq-nw-sp--out{order:2}.dfq-nw-group--ai{order:3}.dfq-nw-group--human{order:4}.dfq-nw-sp--back{order:5}
.dfq-nw-wire{display:none}
.dfq-nw-group{margin-top:0}
.dfq-nw-group--human{margin-top:12px}
.dfq-nw-sp,.dfq-nw-sp--in{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0;position:relative}
.dfq-nw-sp__line{position:relative;width:4px;height:26px;flex:none}
.dfq-nw-sp__cap{font-size:10px;font-weight:700;color:var(--dfq-pink-deep)}
.dfq-nw-sp__cap--back{color:var(--dfq-navy);text-align:center}
.dfq-nw-sp .dfq-nw-arrow--down{position:static;border-top-width:8px;border-bottom-width:0;border-top-color:var(--dfq-pink);border-left-width:6px;border-right-width:6px}
.dfq-nw-sp .dfq-nw-arrow--up{position:static;border-bottom-width:8px;border-top-width:0;border-bottom-color:var(--dfq-navy);border-left-width:6px;border-right-width:6px}
.dfq-nw-sp--in .dfq-nw-arrow--down{border-top-color:var(--dfq-pink)}
.dfq-nw__srcrow{grid-template-columns:repeat(2,1fr);gap:8px}
.dfq-nw-src{font-size:11px;min-height:46px}
.dfq-nw-bus--l{left:25%;width:25%}.dfq-nw-bus--r{left:50%;width:25%}
.dfq-nw-stub--0{left:calc(25% - 1.5px)}.dfq-nw-stub--1{left:calc(75% - 1.5px)}
.dfq-nw-stub--2,.dfq-nw-stub--3,.dfq-nw-stub--4{display:none}
.dfq-nw__core-state{font-size:10px;height:24px;padding:0 11px;bottom:-12px}
.dfq-nw__legend{grid-template-columns:1fr;gap:8px;margin-top:26px}
.dfq-nw__legend li{padding:11px 14px}
.dfq-nw__platform{padding:16px 18px;gap:8px}
.dfq-nw__platform p{min-width:100%}
}
@media(prefers-reduced-motion:reduce){
.dfq-nw *{animation:none!important}
.dfq-nw-line i{opacity:.85!important}
.dfq-nw-line--h i{left:30%}.dfq-nw-line--v i{top:30%}
.dfq-nw-log,.dfq-nw-wire__cap{opacity:1!important}
.dfq-nw__core-state{opacity:0!important}
.dfq-nw__core-state:first-of-type{opacity:1!important}
.dfq-nw__legend li{border-color:var(--dfq-navy)}
}
.dfq-nw-reveal-target{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.dfq-nw-reveal-target.is-seen{opacity:1;transform:none}
.dfq-nw-js .dfq-nw:not(.is-play) *{animation-play-state:paused!important}
.dfq-nw-js .dfq-nw.is-reset *{animation:none!important}
/* ============================================================
   v1.3 adjustments (2026-09-20)
   Appended last so these rules win on source order, including
   over the earlier media queries.
   ============================================================ */

/* --- scroll reveal ---------------------------------------- */
.dfq-page [data-dfq-rise]{opacity:0;transform:translateY(20px);
  transition:opacity .62s ease,transform .62s ease;transition-delay:var(--rise-delay,0s)}
.dfq-page [data-dfq-rise].is-rise{opacity:1;transform:none}

/* --- bridge between sections ------------------------------ */
.dfq-page .dfq-bridge{position:relative;display:flex;flex-direction:column;gap:2px;
  margin:44px auto 0;max-width:900px;padding-top:40px;text-align:center;
  font-size:22px;font-weight:700;line-height:1.75;letter-spacing:.08em;color:var(--dfq-navy)}
.dfq-page .dfq-bridge:before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:1px;height:24px;background:linear-gradient(180deg,rgba(228,0,127,0),#e4007f)}
.dfq-page .dfq-bridge:after{content:"";position:absolute;left:50%;top:26px;transform:translateX(-50%);
  width:7px;height:7px;border-radius:50%;background:var(--dfq-pink)}
.dfq-page .dfq-bridge__em{color:var(--dfq-pink)}

/* --- hero logo -------------------------------------------- */
/* .dfq-page img{height:auto} used to beat .dfq-logo-img on specificity,
   so the logo rendered at its intrinsic size. Pinned here. */

/* --- screen-reader only ----------------------------------- */
.dfq-page .dfq-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;list-style:none}

/* --- KNOWLEDGE LOOP : stacked zigzag ---------------------- */
.dfq-page .dfq-loop-zz{display:flex;flex-direction:column;gap:22px;margin-top:44px}
.dfq-page .dfq-loop-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;gap:40px;padding:28px 32px;background:#fff;
  border:1px solid var(--dfq-line);border-radius:22px;overflow:hidden;min-width:0}
/* the motion sits first in the DOM, so odd steps pull the text to the left and
   even steps keep the default order -> text / motion / text / motion zigzag */
.dfq-page .dfq-loop-card:nth-child(odd) .dfq-loop-card__body{order:-1}
.dfq-page .dfq-loop-card__body{padding:0;max-width:440px}
.dfq-page .dfq-loop-card:nth-child(even) .dfq-loop-card__body{margin-left:auto}
.dfq-page .dfq-loop-card__no{font-size:12px}
.dfq-page .dfq-loop-card h3{font-size:24px;margin:6px 0 12px}
.dfq-page .dfq-loop-card p{font-size:13.5px;line-height:1.95}
.dfq-page .dfq-loop-card__visual{height:300px;padding:16px;border-bottom:0;border-radius:16px}

/* --- DATA SOURCE label + qualifier on one baseline -------- */

/* --- SERVICE AGENT : phase status above the diagram ------- */
.dfq-page .dfq-nw__phase{position:relative;height:46px;margin:0 0 14px}
.dfq-page .dfq-nw__phase-item{position:absolute;left:0;top:0;right:0;display:flex;align-items:center;
  gap:12px;height:46px;padding:0 18px;border-radius:12px;border:1px solid var(--dfq-line);
  background:#fff;opacity:0}
.dfq-page .dfq-nw__phase-item b{flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:26px;height:26px;border-radius:50%;background:var(--dfq-pink);color:#fff;
  font-family:Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:0}
.dfq-page .dfq-nw__phase-t{flex:none;font-size:14px;font-weight:700}
.dfq-page .dfq-nw__phase-d{font-size:12px;line-height:1.7;color:#6c7099}
@keyframes dnw-st-1{0%,31%{opacity:1}34%,100%{opacity:0}}
@keyframes dnw-st-2{0%,31%{opacity:0}34%,63%{opacity:1}66%,100%{opacity:0}}
@keyframes dnw-st-3{0%,63%{opacity:0}66%,100%{opacity:1}}
.dfq-page .dnw-st-1{animation:dnw-st-1 var(--nw-dur) linear var(--nw-delay) infinite both}
.dfq-page .dnw-st-2{animation:dnw-st-2 var(--nw-dur) linear var(--nw-delay) infinite both}
.dfq-page .dnw-st-3{animation:dnw-st-3 var(--nw-dur) linear var(--nw-delay) infinite both}

/* --- SERVICE AGENT : shorter so DATA SOURCE fits on screen - */
.dfq-page .dfq-nw{margin-top:26px}
.dfq-page .dfq-nw-group{gap:7px;padding:12px}
.dfq-page .dfq-nw-group__head{min-height:22px}
.dfq-page .dfq-nw-card{padding:10px 13px}
.dfq-page .dfq-nw-card strong{font-size:14px;margin-top:5px}
.dfq-page .dfq-nw-card p{font-size:10.5px;line-height:1.62;margin:4px 0 0}
.dfq-page .dfq-nw-card a{min-height:24px;margin-top:2px}
.dfq-page .dfq-nw__core{padding:20px 18px 16px}
.dfq-page .dfq-nw__core strong{font-size:18px}
.dfq-page .dfq-nw__core p{font-size:11px;line-height:1.75;margin:6px 0 0}
.dfq-page .dfq-nw__core-states{height:26px;margin-top:12px}
.dfq-page .dfq-nw__platform{margin-top:16px;padding:13px 20px}

/* --- responsive ------------------------------------------- */
@media(max-width:1024px){
  .dfq-page .dfq-loop-card{gap:26px;padding:24px 24px}
  .dfq-page .dfq-loop-card h3{font-size:21px}
  .dfq-page .dfq-loop-card__visual{height:272px}
}
@media(max-width:767px){
  .dfq-page .dfq-bridge{margin-top:34px;padding-top:32px;font-size:17px;letter-spacing:.06em}
  .dfq-page .dfq-bridge:before{height:18px}
  .dfq-page .dfq-bridge:after{top:20px}
  
  
  .dfq-page .dfq-loop-zz{gap:14px;margin-top:28px}
  .dfq-page .dfq-loop-card{display:block;padding:0}
  .dfq-page .dfq-loop-card:nth-child(even) .dfq-loop-card__body{order:0}
  .dfq-page .dfq-loop-card__visual{height:258px;padding:12px;border-radius:0;
    border-bottom:1px solid var(--dfq-line)}
  .dfq-page .dfq-loop-card__body{padding:20px 18px}
  .dfq-page .dfq-loop-card h3{font-size:18px}
  .dfq-page .dfq-loop-card p{font-size:12.5px}
  .dfq-page .dfq-nw__phase{height:auto;min-height:62px;margin-bottom:12px}
  .dfq-page .dfq-nw__phase-item{position:absolute;flex-direction:column;align-items:flex-start;
    gap:4px;height:auto;min-height:62px;padding:10px 14px}
  .dfq-page .dfq-nw__phase-d{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .dfq-page [data-dfq-rise]{opacity:1!important;transform:none!important}
  .dfq-page .dfq-nw__phase-item{animation:none!important;opacity:0!important}
  .dfq-page .dfq-nw__phase-item.dnw-st-1{opacity:1!important}
}

/* ============================================================
   v1.4 adjustments (2026-09-20)
   ============================================================ */

/* --- reveal: slower, and reversible ----------------------- */
.dfq-page [data-dfq-rise]{transition:opacity .72s ease,transform .72s ease;
  transition-delay:var(--rise-delay,0s)}

/* --- DOCUMENT : 資料請求 / 無料相談 の切り替え ------------- */

/* --- KNOWLEDGE LOOP : テキスト側を大きく ------------------ */
/* モーションが主役のままで、空いている左右の余白を使う。
   セクション見出し36pxより十分小さく保ち、強弱は崩さない。 */
.dfq-page .dfq-loop-card__no{font-size:13px;letter-spacing:.14em}
.dfq-page .dfq-loop-card h3{font-size:28px;line-height:1.5;margin:8px 0 14px}
.dfq-page .dfq-loop-card p{font-size:15px;line-height:2}
.dfq-page .dfq-loop-card__body{max-width:470px}

/* --- SERVICE AGENT : 製品名をラベル行へ -------------------- */
.dfq-page .dfq-nw-card__head{display:flex;align-items:center;gap:7px;
  min-width:0;flex-wrap:nowrap}
.dfq-page .dfq-nw-card__head strong{display:inline;flex:0 1 auto;min-width:0;
  margin-top:0;font-size:13.5px;line-height:1.4;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.dfq-page .dfq-nw-card p{margin:6px 0 0}
.dfq-page .dfq-nw__phase{height:40px;margin-bottom:12px}
.dfq-page .dfq-nw__phase-item{height:40px;padding:0 16px}
.dfq-page .dfq-nw{margin-top:20px}
.dfq-page .dfq-nw__platform{margin-top:12px}

@media(max-width:1024px){
  .dfq-page .dfq-loop-card h3{font-size:24px}
  .dfq-page .dfq-loop-card p{font-size:14px}
}
@media(max-width:767px){
  
  
  
  .dfq-page .dfq-loop-card__no{font-size:12px}
  .dfq-page .dfq-loop-card h3{font-size:20px;margin:6px 0 10px}
  .dfq-page .dfq-loop-card p{font-size:13.5px;line-height:1.95}
  .dfq-page .dfq-loop-card__body{max-width:none}
  .dfq-page .dfq-nw-card__head{flex-wrap:wrap}
  .dfq-page .dfq-nw-card__head strong{white-space:normal}
}

/* ============================================================
   v1.5 — Service Agent vertical fit (2026-09-20)
   Measured: the row height comes from the centre column, so the
   trim targets the core block rather than the channel cards.
   ============================================================ */
.dfq-page .dfq-nw__phase{height:36px;margin-bottom:10px}
.dfq-page .dfq-nw__phase-item{height:36px;padding:0 14px}
.dfq-page .dfq-nw__phase-item b{width:24px;height:24px;font-size:10.5px}
.dfq-page .dfq-nw__phase-t{font-size:13px}
.dfq-page .dfq-nw__core{padding:14px 16px 12px}
.dfq-page .dfq-nw__core strong{font-size:17px}
.dfq-page .dfq-nw__core p{font-size:10.5px;line-height:1.7;margin:5px 0 0}
.dfq-page .dfq-nw__core-states{height:24px;margin-top:9px}
.dfq-page .dfq-nw__core-state{height:24px;font-size:10.5px;padding:0 12px}
.dfq-page .dfq-nw-group{gap:6px;padding:10px}
.dfq-page .dfq-nw-card{padding:8px 12px}
.dfq-page .dfq-nw-card p{margin:5px 0 0}
@media(max-width:767px){
  .dfq-page .dfq-nw__phase{height:auto;min-height:58px}
  .dfq-page .dfq-nw__phase-item{height:auto;min-height:58px;padding:9px 13px}
  .dfq-page .dfq-nw__core{padding:18px 16px 14px}
}

/* ============================================================
   v1.6 (2026-09-20)
   ============================================================ */

/* --- SP: ページ内メニューをハンバーガーへ ------------------ */
/* .dfq-page button{font:inherit} が .dfq-local-nav-toggle{font-size:0} に
   詳細度で勝っていたため、ボタン内のテキストがそのまま描画され、
   ヘッダーからはみ出していた。詳細度を上げて潰し、線3本のアイコンに置き換える。
   テキストは読み上げ用に残す。 */

/* 開いたときのアンカーリンク一覧 */

/* ============================================================
   v1.7 (2026-09-20)
   ============================================================ */

/* --- EXPERIENCE: タブを操作できるものとして見せる --------- */

/* 初回操作までのごく浅い呼吸。触った時点で止める。 */
@keyframes dfq-tab-breathe{0%,100%{background:#f1f2f8}50%{background:#e4e7f4}}

/* --- KNOWLEDGE LOOP : SPはテキスト → モーションの順 ------- */
@media(max-width:767px){
  
  
  
  
  
  
  

  /* PC側の align-items:center が縦積みにも効いて、モーションが
     コンテンツ幅まで縮んでいた。SPでは必ず横いっぱいに伸ばす。 */
  .dfq-page .dfq-loop-card{display:flex;flex-direction:column;align-items:stretch;padding:0}
  .dfq-page .dfq-loop-card__body,
  .dfq-page .dfq-loop-card:nth-child(odd) .dfq-loop-card__body,
  .dfq-page .dfq-loop-card:nth-child(even) .dfq-loop-card__body{order:-1;margin-left:0;
    padding:20px 18px 16px}
  .dfq-page .dfq-loop-card__visual{border-bottom:0;border-top:1px solid var(--dfq-line);
    border-radius:0}
}

/* ============================================================
   v1.8 readability (2026-09-20)
   ============================================================ */

/* a) 比較カードの見出し。白 on #a7a9ba は 2.33:1 でAA未満だった。 */

/* v2.3: CHALLENGESのDECA FAQカードをブランドネイビーで明確化 */

/* d) 二次ラベルの下限を12pxに */

/* c) 製品名を省略しない。1180px以下では折り返す。 */
@media(max-width:1180px){
  .dfq-page .dfq-nw-card__head{flex-wrap:wrap}
  .dfq-page .dfq-nw-card__head strong{white-space:normal;overflow:visible;text-overflow:clip}
}

@media(max-width:767px){
  /* b) SPのつなぎ。17px太字は「大きな文字」に届かず、
        ピンク #e4007f が薄グレー地で 3.91:1 とAA未満になっていた。 */
  .dfq-page .dfq-bridge{font-size:19px;line-height:1.7}
  /* d) 折りたたみメニュー内のリンク */
  
  
}

/* ============================================================
   v1.9 (2026-09-20)
   ============================================================ */

/* --- フェーズ表示：重なりを構造的に起こせなくする --------- */
/* 絶対配置の重ね合わせをやめ、1セルのグリッドに3枚を重ねる。
   枠の高さは常にいちばん高いカードに追従するので、
   文章が折り返しても下の要素へはみ出さない。 */
.dfq-page .dfq-nw__phase{display:grid;grid-template-columns:1fr;height:auto;min-height:0;
  order:0;margin:0 0 12px}
.dfq-page .dfq-nw__phase-item{position:static;grid-area:1/1;height:auto;min-height:36px}

@media(max-width:767px){
  /* 説明文は見出しの横。縦に積むと2〜3行ぶん伸びる。 */
  .dfq-page .dfq-nw__phase{margin-bottom:14px}
  .dfq-page .dfq-nw__phase-item{flex-direction:row;align-items:flex-start;flex-wrap:nowrap;
    gap:8px;padding:9px 12px;min-height:0}
  .dfq-page .dfq-nw__phase-item b{width:22px;height:22px;font-size:10px;margin-top:1px}
  .dfq-page .dfq-nw__phase-t{flex:none;font-size:12px;line-height:1.85}
  .dfq-page .dfq-nw__phase-d{min-width:0;font-size:10.5px;line-height:1.6;margin-top:1px}
}

/* --- SPのローカルヘッダー：ハンバーガー中央 / 資料請求 右上 --- */

/* v2.2: local header official DECA FAQ logo */

/* v2.2: PRESS RELEASE — attached implementation parity */



/* =====================================================================
   ナレッジの自律改善（DECA Service Agent ソリューション）— ページ専用CSS
   ・土台はDSAのページCSS（dsa-）と、DECA FAQのモーションCSS（dfq-）
   ・このファイルは「2ページのトンマナを揃える調整」と「新規の小パーツ（dkn-）」だけ
   ===================================================================== */

/* ---------- 改行ユーティリティ ---------- */
.dkn-pcBr{display:inline}
.dkn-spBr{display:none}
@media (max-width:767.98px){
  .dkn-pcBr{display:none}
  .dkn-spBr{display:inline}
}

/* ---------- ページヘッダー：ロゴ＋ソリューション名 ---------- */
.dkn-page .dkn-navLogo{display:flex;align-items:center;gap:12px;flex:0 0 auto!important}
.dkn-page .dkn-navLogo img{width:176px!important}
.dkn-navLogo__sol{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;
  background:var(--lav2);color:var(--navy);font-size:11.5px;font-weight:700;letter-spacing:.06em;white-space:nowrap}
.dkn-page .dsa-localNav__links{gap:22px}
@media (max-width:1180px){
  .dkn-page .dkn-navLogo img{width:150px!important}
  .dkn-page .dsa-localNav__links{gap:12px}
}
@media (max-width:1319px){.dkn-navLogo__sol{display:none}}
@media (max-width:767.98px){.dkn-page .dkn-navLogo img{width:140px!important}}

/* ---------- 01 FV（Hero画像なし・中央組み） ---------- */
.dkn-hero{min-height:0}
.dkn-hero .dsa-hero__inner{grid-template-columns:1fr!important;justify-items:center;padding:96px 0 104px!important}
.dkn-hero .dsa-hero__content{max-width:980px;text-align:center}
.dkn-hero h1{text-align:center;font-size:44px;line-height:1.55}
.dkn-hero .dsa-hero__desc{margin-inline:auto;text-align:center;max-width:800px}
.dkn-hero .dsa-hero__btns{justify-content:center}
.dkn-hero .dsa-hero__btns .dsa-btn{min-width:230px}
.dkn-hero::before{width:420px;height:420px;right:-150px;top:-170px}
.dkn-hero::after{width:260px;height:260px;left:-110px;bottom:-40px}
.dkn-hero__name{margin:26px 0 0;color:var(--navy);font-size:20px;font-weight:700;letter-spacing:.18em}
.dkn-hero__name::before,.dkn-hero__name::after{content:"";display:inline-block;width:28px;height:2px;margin:0 14px;vertical-align:middle;background:var(--pink)}
@media (max-width:767.98px){
  .dkn-hero .dsa-hero__inner{padding:48px 0 60px!important}
  .dkn-hero h1{font-size:25px;line-height:1.7}
    .dkn-hero__name{margin-top:20px;font-size:16px;letter-spacing:.14em}
  .dkn-hero__name{line-height:1.7}
  .dkn-hero__name::before,.dkn-hero__name::after{display:none}
  .dkn-hero .dsa-hero__btns{flex-direction:column;align-items:stretch;max-width:360px;margin-inline:auto}
  .dkn-hero .dsa-hero__btns .dsa-btn{width:100%;min-width:0}
}

/* ---------- 02 CHALLENGES：独立セクションとして使うための調整 ---------- */
.dkn-challenges{max-width:none!important;margin-top:0!important;padding-top:0!important;border-top:0!important}
.dkn-challenges .dsa-challengeGrid{margin-top:14px!important}
.dkn-page .dkn-challenges .dsa-challenge p{flex:1}
/* 課題カード → 解決する動きへのジャンプ。ボタンの形と「↓」で、押すと下へ移動することを示す */
.dkn-page .dkn-challenge__to{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px;padding:10px 10px 10px 16px;
  border:1.5px solid var(--pink);border-radius:14px;background:#fff;color:var(--pink);text-align:left;cursor:pointer;
  transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.dkn-challenge__toTxt{display:flex;flex-direction:column;gap:1px;min-width:0}
.dkn-challenge__toTxt small{color:var(--sub);font-size:11.5px;font-weight:700;letter-spacing:.04em;line-height:1.5}
.dkn-challenge__toTxt strong{font-size:14px;line-height:1.5;letter-spacing:.03em;white-space:nowrap}
/* v3: 4つのボタンを同じ高さ・カード下端に揃える */
.dkn-page .dkn-challenges .dsa-challenge .dkn-challenge__to{margin-top:auto;min-height:62px}
.dkn-page .dkn-challenges .dsa-challenge p{margin-bottom:20px}
.dkn-challenge__toIcon{flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;
  background:var(--pink);color:#fff;font-family:Arial,sans-serif;font-size:15px;font-weight:700;transition:transform .2s ease,background .2s ease,color .2s ease}
.dkn-page .dkn-challenge__to:hover,.dkn-page .dkn-challenge__to:focus-visible{background:var(--pink);color:#fff;box-shadow:0 10px 22px rgba(228,0,127,.18)}
.dkn-page .dkn-challenge__to:hover small,.dkn-page .dkn-challenge__to:focus-visible small{color:rgba(255,255,255,.85)}
.dkn-page .dkn-challenge__to:hover .dkn-challenge__toIcon,.dkn-page .dkn-challenge__to:focus-visible .dkn-challenge__toIcon{background:#fff;color:var(--pink);transform:translateY(3px)}
@media (hover:none){
  .dkn-page .dkn-challenge__to:hover{background:#fff;color:var(--pink);box-shadow:none}
  .dkn-page .dkn-challenge__to:hover small{color:var(--sub)}
  .dkn-page .dkn-challenge__to:hover .dkn-challenge__toIcon{background:var(--pink);color:#fff;transform:none}
  .dkn-page .dkn-challenge__to:active{background:var(--pink);color:#fff}
}
@media (max-width:767.98px){
  .dkn-challenge__toTxt strong{font-size:14.5px}
}
/* ジャンプ先に着いたとき、どこに来たかが分かるよう一瞬だけ枠を光らせる */
@keyframes dkn-arrive{0%{box-shadow:0 0 0 0 rgba(228,0,127,0)}25%{box-shadow:0 0 0 4px rgba(228,0,127,.55)}100%{box-shadow:0 0 0 0 rgba(228,0,127,0)}}
.dsa-page .dfq-loop-card.dkn-arrive{animation:dkn-arrive 1.6s ease-out 1}
@media (prefers-reduced-motion:reduce){.dsa-page .dfq-loop-card.dkn-arrive{animation:none;outline:3px solid var(--pink)}}

/* ---------- 10 最終CTA：フォームの高さ（フォーム内でスクロールさせず全体を表示） ----------
   資料請求はDSAの実績値（960px）を継承。ご相談はサービス選択（7項目）と問い合わせ内容の欄が加わるため、その分を上乗せ。
   ※フォーム側の項目を増減したときは、この値だけ調整してください */
.dsa-page .dkn-formPanel--consult{--dsa-form-h:1460px}
@media (max-width:901px){.dsa-page .dkn-formPanel--consult{--dsa-form-h:1600px}}
@media (max-width:487px){.dsa-page .dkn-formPanel--consult{--dsa-form-h:1700px}}
@media (max-width:359px){.dsa-page .dkn-formPanel--consult{--dsa-form-h:1780px}}

/* ---------- 03 SOLUTION：2つの動作イメージへの導線 ---------- */
.dkn-figLinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px auto 0}
.dkn-figLink{display:flex;align-items:center;gap:18px;padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:#fff;
  box-shadow:0 10px 26px rgba(29,32,136,.06);transition:border-color .2s ease,box-shadow .2s ease}
.dkn-figLink:hover,.dkn-figLink:focus-visible{border-color:var(--pink);box-shadow:0 14px 30px rgba(29,32,136,.12)}
.dkn-figLink__tag{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;
  background:var(--navy);color:#fff;font-size:14px;font-weight:700;letter-spacing:.08em}
.dkn-figLink:nth-child(2) .dkn-figLink__tag{background:var(--pink)}
.dkn-figLink__txt{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.dkn-figLink__txt strong{color:var(--navy);font-size:17px;line-height:1.55}
.dkn-figLink__txt small{color:var(--sub);font-size:13px;font-weight:500;letter-spacing:.04em}
.dkn-figLink__arrow{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-size:16px;
  border:1.5px solid var(--navy);color:var(--navy);font-family:Arial,sans-serif;font-weight:700;transition:.2s ease}
.dkn-figLink:hover .dkn-figLink__arrow{border-color:var(--pink);background:var(--pink);color:#fff}
@media (max-width:767.98px){
  .dkn-figLinks{grid-template-columns:1fr;gap:12px;margin-top:20px}
  .dkn-figLink{padding:16px;gap:14px}
  .dkn-figLink__tag{width:54px;height:54px;font-size:13px}
  .dkn-figLink__txt strong{font-size:15.5px}
  .dkn-figLink__txt small{font-size:12.5px}
}

/* ---------- セクション間のつなぎ（DECA FAQのブリッジと同じ見た目） ---------- */
.dkn-bridge{position:relative;display:flex;flex-direction:column;gap:2px;max-width:900px;margin:48px auto 0;padding-top:40px;
  text-align:center;color:var(--navy);font-size:21px;font-weight:700;line-height:1.75;letter-spacing:.06em}
.dkn-bridge::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:1px;height:24px;
  background:linear-gradient(180deg,rgba(228,0,127,0),#e4007f)}
.dkn-bridge::after{content:"";position:absolute;left:50%;top:26px;transform:translateX(-50%);width:7px;height:7px;border-radius:50%;background:var(--pink)}
.dkn-bridge__em{color:var(--pink)}
.dkn-bridge + .dkn-figLinks{margin-top:24px}
@media (max-width:767.98px){
  .dkn-bridge{margin-top:36px;padding-top:36px;font-size:17px;line-height:1.75;letter-spacing:.03em}
  .dkn-bridge__em{color:#c8006f}
}

/* ---------- スクロールで順に表示（上に戻ると、下にある要素は再び隠れる） ---------- */
.dkn-js [data-dkn-rise]{opacity:0;translate:0 22px;transition:opacity .7s ease,translate .7s ease;transition-delay:var(--rise-delay,0s)}
.dkn-js [data-dkn-rise].is-rise{opacity:1;translate:none}
@media (prefers-reduced-motion:reduce){
  .dkn-js [data-dkn-rise]{opacity:1;translate:none;transition:none}
}

/* ---------- 04/05 DECA FAQパーツの埋め込み：DSAのトンマナに揃える ---------- */
.dkn-embed{word-break:normal;overflow-wrap:anywhere;line-break:strict;letter-spacing:.05em}
.dsa-page .dkn-embed .dfq-section{padding:88px 24px;scroll-margin-top:calc(var(--dsa-sticky-offset,0px) + 104px)}
.dsa-page .dkn-embed .dfq-section--soft{background:#fff}
.dsa-page .dkn-embed--channels .dfq-section{background:var(--soft)}
.dsa-page .dkn-embed .dfq-kicker{color:var(--pink);font-size:14px;letter-spacing:.18em;margin-bottom:8px}
.dsa-page .dkn-embed .dfq-heading{font-size:36px;letter-spacing:.1em}
.dsa-page .dkn-embed .dfq-lead{max-width:820px;color:var(--sub);font-size:16px;line-height:2.05;margin-top:20px}
.dsa-page .dkn-embed .dfq-heading,.dsa-page .dkn-embed .dfq-lead,.dsa-page .dkn-embed .dfq-bridge{word-break:keep-all;overflow-wrap:anywhere}
.dsa-page .dkn-embed .dfq-loop-card{scroll-margin-top:calc(var(--dsa-sticky-offset,0px) + 104px)}
/* LOOPカード内：解決する課題 */
.dkn-page .dkn-solves{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 0;padding-top:14px;border-top:1px dashed var(--dfq-line);
  color:var(--dfq-navy);font-size:13px!important;font-weight:700;line-height:1.6!important}
.dkn-page .dkn-solves span{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:var(--lav2);
  color:var(--pink);font-size:11.5px;letter-spacing:.06em}
/* 図との対応（提案②） */
@media (max-width:767.98px){
  .dsa-page .dkn-embed .dfq-section{padding:68px 14px}
  .dsa-page .dkn-embed .dfq-kicker{font-size:12px}
  .dsa-page .dkn-embed .dfq-heading{font-size:24px;line-height:1.6;letter-spacing:.03em}
  .dsa-page .dkn-embed .dfq-bridge{margin-top:36px;padding-top:36px;font-size:17px;letter-spacing:.03em}
  .dsa-page .dkn-embed .dfq-lead{font-size:14px;line-height:1.9;letter-spacing:.04em;text-align:center}
  }

/* ---------- 07 PRODUCTS：有人対応を含む全製品への一文リンク（提案④） ---------- */
.dkn-allProducts{margin:26px 0 0;color:var(--sub);font-size:14px;line-height:1.9;text-align:center}
.dkn-allProducts a{display:inline-flex;align-items:center;gap:6px;margin-left:10px;color:var(--navy);font-weight:700;
  text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--lav);text-decoration-thickness:2px}
.dkn-allProducts a:hover{color:var(--pink)}
@media (max-width:767.98px){
  .dkn-allProducts{font-size:13px}
  .dkn-allProducts a{display:flex;justify-content:center;margin:6px 0 0}
}

/* ---------- 10 最終CTA：資料請求／ご相談のタブ ---------- */
.dkn-contact h2{margin:0}
.dkn-contact > .dsa-container > p{max-width:760px;margin:16px auto 0}
.dkn-docSwitch{display:flex;justify-content:center;gap:6px;width:fit-content;margin:34px auto 0;padding:6px;border-radius:999px;background:rgba(255,255,255,.12)}
/* v2: DSA共通の「.dsa-page button{font:inherit}」に文字サイズ・太さが上書きされ、テーマの小さい文字サイズを継承していた。
   詳細度を上げ、DECA チャットボット（/service/cloud/chat/）の切り替えボタンと同じ値に揃える */
.dsa-page .dkn-docSwitch__btn{min-width:168px;min-height:46px;margin:0;padding:0 26px;border:0;border-radius:999px;background:transparent;color:#fff;
  font-size:14px;font-weight:700;letter-spacing:.06em;line-height:1.4;cursor:pointer;transition:background .25s ease,color .25s ease}
.dsa-page .dkn-docSwitch__btn:hover{background:rgba(255,255,255,.16)}
.dsa-page .dkn-docSwitch__btn[aria-selected="true"]{background:#fff;color:var(--navy)}
.dsa-page .dkn-docSwitch__btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.dsa-page .dkn-formPanel{margin-top:22px}
.dsa-page .dkn-formPanel[hidden]{display:none}
@media (max-width:767.98px){
  .dkn-docSwitch{width:100%;max-width:400px}
  .dsa-page .dkn-docSwitch__btn{flex:1;min-width:0;padding:0 12px;font-size:13px}
  .dsa-page .dkn-formPanel{margin-top:16px}
}

@media (prefers-reduced-motion:reduce){
  .dkn-challenge__to span,.dkn-figLink,.dsa-page .dkn-docSwitch__btn{transition:none}
}

/* ---------- v4 FV：資料表紙つきボタン（DECA チャットボットの資料ボタンを参考。相談をメインに保つため線のボタン） ---------- */
.dkn-page .dkn-hero__btns{align-items:center;gap:16px 14px}
.dsa-page .dkn-hero__consult{min-height:64px;min-width:230px;font-size:14px}
.dsa-page .dkn-docBtn{position:relative;display:inline-flex;align-items:center;min-height:64px;padding:12px 138px 12px 30px;border:2px solid var(--navy);
  border-radius:999px;background:#fff;color:var(--navy);font-size:14px;font-weight:700;letter-spacing:.04em;line-height:1.4;
  box-shadow:0 16px 28px -20px rgba(29,32,136,.55);transition:background .2s ease,color .2s ease,border-color .2s ease}
.dkn-docBtn__txt{display:inline-flex;align-items:center;white-space:nowrap}
.dkn-docBtn__txt::after{content:"";flex:none;width:9px;height:12px;margin-left:13px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.dsa-page .dkn-docBtn__cover{position:absolute;right:14px;bottom:12px;width:112px;border:2px solid #fff;border-radius:6px;overflow:hidden;background:#fff;
  box-shadow:0 12px 22px -10px rgba(15,18,80,.6);transform:rotate(-5deg);transform-origin:60% 100%;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.dsa-page .dkn-docBtn__cover img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.dsa-page .dkn-docBtn:hover,.dsa-page .dkn-docBtn:focus-visible{background:var(--navy);color:#fff}
.dsa-page .dkn-docBtn:hover .dkn-docBtn__cover,.dsa-page .dkn-docBtn:focus-visible .dkn-docBtn__cover{transform:rotate(-1.5deg) translateY(-6px)}
@media (max-width:767.98px){
  .dsa-page .dkn-hero__consult{min-height:58px;min-width:0}
  .dsa-page .dkn-docBtn{width:100%;min-height:60px;padding:10px 120px 10px 24px;font-size:13px}
  .dsa-page .dkn-docBtn__cover{right:12px;bottom:10px;width:100px}
}
@media (max-width:374px){
  .dsa-page .dkn-docBtn{padding:10px 96px 10px 18px;font-size:12px;letter-spacing:.02em}
  .dkn-docBtn__txt::after{display:none}
  .dsa-page .dkn-docBtn__cover{right:10px;width:82px}
}

/* ---------- v4 中間CTA（DECA チャットボットの中間CTAを参考）：資料＝チャネル展開の後／ご相談＝プレスリリースの後 ---------- */
.dsa-page .dkn-midCta{position:relative;overflow:hidden;max-width:1000px;margin:72px auto 0;border-radius:24px;text-align:left;
  word-break:keep-all;overflow-wrap:anywhere;letter-spacing:.05em}
.dsa-page .dkn-midCta__kicker{margin:0 0 10px;color:#cc0072;font:700 11.5px/1.4 Arial,sans-serif;letter-spacing:.18em}
.dsa-page .dkn-midCta h3{margin:0;color:var(--navy);font-size:24px;font-weight:700;line-height:1.6;letter-spacing:.05em}
.dsa-page .dkn-midCta__text{margin:12px 0 0;color:var(--sub);font-size:14px;line-height:1.9}
.dsa-page .dkn-midCta__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:26px}
.dsa-page .dkn-ctaBtn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:12px 30px;border:2px solid var(--navy);
  border-radius:999px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;letter-spacing:.05em;line-height:1.4;transition:.25s ease}
.dsa-page .dkn-ctaBtn::after{content:"";flex:none;width:8px;height:11px;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.dsa-page .dkn-ctaBtn:hover,.dsa-page .dkn-ctaBtn:focus-visible{border-color:var(--pink);background:var(--pink)}
.dsa-page .dkn-ctaBtn--white{border-color:#fff;background:#fff;color:var(--navy)}
.dsa-page .dkn-ctaBtn--white:hover,.dsa-page .dkn-ctaBtn--white:focus-visible{border-color:var(--pink);background:var(--pink);color:#fff}
.dsa-page .dkn-midCta__link{display:inline-flex;align-items:center;padding-bottom:2px;border-bottom:1px solid currentColor;color:var(--navy);
  font-size:13px;font-weight:700;line-height:1.5;transition:color .2s}
.dsa-page .dkn-midCta__link:hover{color:var(--pink)}
/* 資料 */
.dsa-page .dkn-midCta--doc{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:52px;align-items:center;padding:44px 52px;
  border:1px solid var(--line);background:linear-gradient(135deg,#ffffff 0%,#eef0fb 100%)}
.dsa-page .dkn-midCta__cover{position:relative;padding:6px 10px 12px 0}
.dsa-page .dkn-midCta__cover::before{content:"";position:absolute;inset:14px 0 2px 12px;border:1px solid #e1e3f2;border-radius:10px;background:#fff;transform:rotate(3deg)}
.dsa-page .dkn-midCta__cover img{position:relative;display:block;width:100%;height:auto;aspect-ratio:16/9;border:1px solid #e1e3f2;border-radius:10px;
  box-shadow:0 26px 40px -28px rgba(29,32,136,.6);transform:rotate(-2deg)}
/* ご相談 */
.dsa-page .dkn-midCta--consult{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 56px;align-items:center;padding:46px 56px;
  background:linear-gradient(120deg,#1d2088 0%,#2a2fa6 100%)}
.dsa-page .dkn-midCta--consult::before,.dsa-page .dkn-midCta--consult::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.dsa-page .dkn-midCta--consult::before{width:260px;height:260px;right:-80px;top:-120px;background:rgba(0,160,233,.16)}
.dsa-page .dkn-midCta--consult::after{width:160px;height:160px;left:-60px;bottom:-80px;background:rgba(228,0,127,.14)}
.dsa-page .dkn-midCta--consult>*{position:relative;z-index:1}
.dsa-page .dkn-midCta--consult .dkn-midCta__kicker{color:#ff8fc9}
.dsa-page .dkn-midCta--consult h3{color:#fff}
.dsa-page .dkn-midCta--consult .dkn-midCta__text{color:#e2e4ff}
.dsa-page .dkn-midCta--consult .dkn-midCta__actions{flex-direction:column;align-items:center;gap:14px;margin-top:0}
.dsa-page .dkn-midCta--consult .dkn-ctaBtn{min-width:260px}
.dsa-page .dkn-midCta--consult .dkn-midCta__link{color:#fff}
.dsa-page .dkn-midCta--consult .dkn-midCta__link:hover{color:#ff8fc9}
/* チャネル展開内（淡色の背景）では、つなぎ文との間を少し詰める */
.dsa-page .dkn-embed .dkn-midCta + .dfq-bridge{margin-top:56px}
@media (max-width:1020px){
  .dsa-page .dkn-midCta{margin-top:60px}
  .dsa-page .dkn-midCta--doc{grid-template-columns:minmax(0,1fr);gap:30px;padding:40px 36px;text-align:center}
  .dsa-page .dkn-midCta--doc .dkn-midCta__cover{width:min(380px,90%);margin:0 auto}
  .dsa-page .dkn-midCta--consult{grid-template-columns:minmax(0,1fr);gap:26px;padding:42px 36px;text-align:center}
  .dsa-page .dkn-midCta__actions{justify-content:center}
}
@media (max-width:767.98px){
  .dsa-page .dkn-midCta{margin-top:48px;border-radius:18px}
  .dsa-page .dkn-midCta--doc{gap:24px;padding:30px 20px 32px}
  .dsa-page .dkn-midCta--consult{padding:34px 20px 36px}
  .dsa-page .dkn-midCta h3{font-size:19px;line-height:1.65}
  .dsa-page .dkn-midCta__text{font-size:13px}
  .dsa-page .dkn-midCta__actions{flex-direction:column;gap:16px;margin-top:22px}
  .dsa-page .dkn-midCta .dkn-ctaBtn,.dsa-page .dkn-midCta--consult .dkn-ctaBtn{width:100%;max-width:360px;min-width:0}
  .dsa-page .dkn-embed .dkn-midCta + .dfq-bridge{margin-top:40px}
}
@media (prefers-reduced-motion:reduce){.dsa-page .dkn-docBtn__cover{transition:none}}

/* ---------- v5 ページヘッダー（タブレット・SP）：DECA チャットボットと同じく、ページ内リンクをMENUボタンに格納 ----------
   ・851px以上：従来どおりリンクを横並び（MENUボタンは出さない）
   ・850px以下：［ロゴ］［MENU］［相談する］を1行に並べ、リンクはMENUを押すとページヘッダーの下に重ねて表示
   ・JSが動かない場合は、MENUボタンを出さず従来表示（リンクは非表示、ロゴと相談ボタン） */
.dkn-navToggle{display:none}
@media (max-width:850px){
  .dkn-page .dsa-localNav__inner{gap:10px}
  .dkn-page .dkn-navLogo{flex:1 1 auto!important;min-width:0}
  .dkn-page .dkn-navLogo img{width:150px!important}
  .dkn-page .dsa-localNav__cta{flex:0 0 auto}
  .dkn-page .dsa-localNav__cta .dsa-btn{width:auto;min-width:0;min-height:42px;padding:8px 18px;font-size:11.5px}
  .dkn-page.dkn-navJS .dkn-navToggle{order:2;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;min-width:44px;
    padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-family:Arial,sans-serif;font-size:10px;font-weight:700;
    letter-spacing:.12em;line-height:1;cursor:pointer}
  .dkn-page.dkn-navJS .dkn-navToggle:hover{border-color:var(--navy)}
  .dkn-page.dkn-navJS .dsa-localNav__cta{order:3}
  .dkn-navToggle__icon{position:relative;display:block;width:14px;height:10px}
  .dkn-navToggle__icon::before,.dkn-navToggle__icon::after{content:"";position:absolute;left:0;width:14px;height:2px;border-radius:2px;background:currentColor;
    transition:transform .2s ease,top .2s ease}
  .dkn-navToggle__icon::before{top:0}
  .dkn-navToggle__icon::after{top:8px}
  .dkn-page .dsa-localNav.is-navOpen .dkn-navToggle__icon::before{top:4px;transform:rotate(45deg)}
  .dkn-page .dsa-localNav.is-navOpen .dkn-navToggle__icon::after{top:4px;transform:rotate(-45deg)}
  .dkn-page.dkn-navJS .dsa-localNav__links{position:absolute;left:0;right:0;top:100%;z-index:3;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;
    padding:14px max(12px,calc((100% - 720px) / 2));background:#fff;border-top:1px solid var(--line);box-shadow:0 16px 32px rgba(29,32,136,.14)}
  .dkn-page.dkn-navJS .dsa-localNav__links[data-collapsed="true"]{display:none}
  .dkn-page.dkn-navJS .dsa-localNav__links li{display:flex}
  .dkn-page.dkn-navJS .dsa-localNav__links a{flex:1;justify-content:center;min-height:46px;padding:9px 8px;border-radius:999px;background:var(--soft);
    font-size:12.5px;text-align:center;letter-spacing:.04em}
  .dkn-page.dkn-navJS .dsa-localNav__links a:hover{color:var(--pink)}
}
@media (max-width:767.98px){
  .dkn-page .dkn-navLogo img{width:132px!important}
  .dkn-page .dsa-localNav__inner{gap:8px}
  .dkn-page .dsa-localNav__cta .dsa-btn{min-height:40px;padding:8px 14px;font-size:11px}
  .dkn-page.dkn-navJS .dkn-navToggle{min-height:40px;padding:8px 12px}
  .dkn-page.dkn-navJS .dsa-localNav__links a{font-size:12px}
}
@media (max-width:390px){
  .dkn-page .dkn-navLogo img{width:112px!important}
  .dkn-page .dsa-localNav__cta .dsa-btn{padding:8px 11px;font-size:10.5px}
  .dkn-page.dkn-navJS .dkn-navToggle{gap:0;padding:8px 12px}
  .dkn-page.dkn-navJS .dkn-navToggle__txt{display:none}
  .dkn-page.dkn-navJS .dsa-localNav__links a{font-size:11.5px;padding:9px 6px}
}
@media (prefers-reduced-motion:reduce){.dkn-navToggle__icon::before,.dkn-navToggle__icon::after{transition:none}}

