/* Case detail and cards, checked against the 1440px Figma frames. */
.case-detail-page{background:#f5f5f5;color:#001431}
.case-detail-page .case-intro{width:min(1000px,calc(100% - 64px));max-width:none;padding:18px 0 80px}
.case-detail-page .case-intro h1{margin:0 0 10px;padding:10px;color:#2767e7;font-size:36px;font-weight:900;line-height:1.4}
.case-detail-page .case-intro>.tags{gap:10px 30px;min-height:29px;align-items:center;font-size:14px;line-height:1.6}
.case-detail-page .case-intro>.tags>span{padding:0;border-radius:0;background:transparent;color:#818181}
.case-detail-page .case-intro-client{display:flex;gap:10px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed #27b9e7}
.case-detail-page .case-intro-client>.case-company-logo,.case-card .case-client>.case-company-logo{flex:0 0 48px;width:48px;height:48px;object-fit:contain;border-radius:10px}
.case-company-copy{min-width:0}
.case-detail-page .case-company-name,.case-card .case-company-name{color:#000e20;font-family:Geist,'Noto Sans JP',sans-serif;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:.78px;overflow-wrap:anywhere}
.case-detail-page .case-service-name,.case-card .case-service-name{margin:0;color:rgb(0 14 32 / 50%);font-family:Geist,'Noto Sans JP',sans-serif;font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.66px}
.case-detail-page .case-company-url{margin-left:auto;align-self:flex-start;padding-top:5px;color:#2767e7;font-size:11px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.case-detail-page .case-detail-body{padding:0;background:transparent}
.case-detail-page .case-detail-body>.container{width:min(1001px,calc(100% - 64px));max-width:none}
.case-detail-page .case-hero-image{width:min(var(--case-hero-width,880px),100%);margin:0 auto 44px;background:transparent;border-radius:10px;overflow:hidden}
.case-detail-page .case-hero-image>img{width:100%;height:auto}
.case-detail-page .case-article-panel{padding:60px;border-radius:10px;background:#fff}
.case-detail-page .case-lead,.case-detail-page .case-content h2{padding:0 0 0 10px;border:0;border-left:8px solid #2767e7;color:#001431;font-size:24px;font-weight:900;line-height:1.4}
.case-detail-page .case-lead{margin:0}
.case-detail-page .case-overview{display:flex;flex-direction:column;gap:16px;margin:26px 0 67px;padding:30px;border-radius:0;background:#d3f0fa}
.case-detail-page .case-overview>.case-overview-row{display:grid;grid-template-columns:100px minmax(0,1fr);gap:30px;width:100%}
.case-detail-page .case-overview dt{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 0;border-radius:5px;background:#fff;color:#001431;font-size:18px;line-height:1.6}
.case-detail-page .case-overview dd{font-size:18px;font-weight:700;line-height:1.6;overflow-wrap:anywhere}
.case-detail-page .case-overview .case-overview-result dt{background:#2767e7;color:#fff}
.case-detail-page .case-overview .case-overview-result dd{align-self:center;color:#2767e7;font-size:20px}
.case-detail-page .case-overview>.case-overview-separator{display:flex;justify-content:center}
.case-detail-page .case-overview-separator img{transform:scaleY(-1)}
.case-detail-page .case-content{padding:0;border-radius:0;background:transparent;font-size:14px;font-weight:700;line-height:1.6}
.case-detail-page .case-content>*{max-width:100%}
.case-detail-page .case-content>:first-child{margin-top:0}
.case-detail-page .case-content>*+*{margin-top:26px}
.case-detail-page .case-content>p+p{margin-top:0}
.case-detail-page .case-content h2{margin-top:67px}
.case-detail-page .case-content h3{margin-top:40px;padding:0 0 0 10px;border-left:5px solid #2767e7;color:#001431;font-size:20px;font-weight:900;line-height:1.4}
.case-detail-page .case-content .wp-block-image{margin:26px auto}
.case-detail-page .case-content .wp-block-image img{width:auto;height:auto;max-width:100%;margin-inline:auto;border-radius:0}
.case-detail-page .case-content blockquote{position:relative;margin:26px 0 0;padding:17px;border:0!important;border-radius:10px;background:#f5f5f5!important;color:#001431;font-size:14px;line-height:1.6}
.case-detail-page .case-content blockquote>*{margin-block:0}
.case-detail-page .case-content blockquote cite{display:block;margin-top:12px;font-size:12px;font-style:normal}
.case-detail-page .has-client-logo .case-content blockquote{margin-left:88.5px}
.case-detail-page .has-client-logo .case-content blockquote::before{content:'';position:absolute;left:-88.5px;top:0;width:48px;height:48px;border-radius:10px;box-sizing:border-box;border:var(--case-client-logo-border,none);background:var(--case-client-logo-bg,transparent) var(--case-client-logo) center/var(--case-client-logo-size,contain) no-repeat}
.case-detail-page .has-client-logo .case-content blockquote::after{content:'';position:absolute;left:-15px;top:22px;width:15px;height:17px;background:url('../images/case-quote-arrow.svg') center/contain no-repeat}
.case-detail-page .case-content .is-style-convertoru-case-section{padding:0;border:0}
.case-detail-page .related-cases{display:flex;flex-direction:column;align-items:center;gap:40px;width:min(1000px,calc(100% - 64px));max-width:none;padding:84px 0 119px}
.case-detail-page .related-cases>h2{margin:0;color:#2767e7;font-size:24px;font-weight:900;line-height:1.4;text-align:center}
.case-detail-page .related-cases .case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,373px));gap:40px;justify-content:center;width:100%;max-width:786px;margin:0}
.case-detail-page .case-more-button{gap:12px;padding:16px 24px;min-height:66px;background:#2767e7;color:#fff;font-size:24px;font-weight:900;line-height:1.4}
.case-detail-page .case-more-button img{flex-shrink:0}
.case-card{border-radius:10px;background:#fff;box-shadow:0 4px 9.9px rgb(1 27 47 / 10%)}
.case-card .case-card-visual{aspect-ratio:373/233}
.case-card .case-card-body{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:24px}
.case-card .case-card-title{margin:0;padding:0;border:0;color:#001431;font-size:18px;font-weight:700;line-height:1.6}
.case-card .tags{gap:8px 16px;color:#818181;font-size:14px;line-height:1.6}
.case-card .tags>span{padding:0;border:0;background:transparent;color:inherit}
.case-card .case-client{align-items:center;gap:10px;margin:0;padding-top:10px;border-top:1px dashed #27b9e7}
@media(max-width:700px){
 .case-detail-page .case-intro{width:calc(100% - 32px);padding:10px 0 40px}
 .case-detail-page .case-intro h1{padding:6px 0;font-size:24px;line-height:1.4}
 .case-detail-page .case-intro>.tags{gap:8px 16px;font-size:12px}
 .case-detail-page .case-intro-client{flex-wrap:wrap}
 .case-detail-page .case-company-url{flex-basis:100%;margin-left:58px;padding-top:0}
 .case-detail-page .case-detail-body>.container{width:calc(100% - 32px)}
 .case-detail-page .case-hero-image{margin-bottom:24px}
 .case-detail-page .case-article-panel{padding:24px 18px}
 .case-detail-page .case-lead,.case-detail-page .case-content h2{padding-left:10px;border-left-width:5px;font-size:20px}
 .case-detail-page .case-overview{margin:24px 0 40px;padding:18px 14px}
 .case-detail-page .case-overview>.case-overview-row{grid-template-columns:minmax(0,1fr);gap:12px}
 .case-detail-page .case-overview dt{width:fit-content;min-width:96px;flex-direction:row;gap:6px;padding:8px 12px;font-size:14px}
 .case-detail-page .case-overview dd{font-size:14px}
 .case-detail-page .case-overview .case-overview-result dd{font-size:15px}
 .case-detail-page .case-content h2{margin-top:40px}
 .case-detail-page .case-content>:first-child{margin-top:0}
 .case-detail-page .case-content blockquote{padding:16px;font-size:13px}
 .case-detail-page .has-client-logo .case-content blockquote{margin-left:58px}
 .case-detail-page .has-client-logo .case-content blockquote::before{left:-58px;width:40px;height:40px}
 .case-detail-page .related-cases{width:calc(100% - 32px);gap:28px;padding:48px 0 64px}
 .case-detail-page .related-cases>h2{font-size:20px}
 .case-detail-page .related-cases .case-grid{grid-template-columns:minmax(0,373px);gap:24px}
 .case-detail-page .case-more-button{min-height:58px;font-size:20px}
 .case-card .case-card-body{padding:20px}
 .case-card .case-card-title{font-size:16px}
 .case-card .tags{font-size:12px}
}
@media(min-width:701px){
 .post-type-archive-case .case-archive.container{width:min(1167px,calc(100% - 64px))}
 .post-type-archive-case .case-archive .case-grid{gap:24px}
}
/* The archive guide overlaps the hero and breadcrumb exactly as in Figma. */
.case-archive-hero{position:relative}
.case-archive-guide{position:absolute;top:248px;right:max(32px,calc((100% - 1192px)/2));width:196px;height:190px;z-index:1;pointer-events:none}
.case-archive-guide p{position:absolute;top:10px;left:0;width:100%;color:#001431;font-size:14px;font-weight:900;font-style:italic;line-height:1.4;text-align:center}
.case-archive-guide img{position:absolute;top:58.81px;left:9px;width:164px;height:131px;object-fit:cover}
@media(max-width:700px){
 .case-archive-guide{top:190px;right:10px;width:140px;height:146px}
 .case-archive-guide p{top:0;font-size:11px}
 .case-archive-guide img{top:38px;left:12px;width:118px;height:94px}
}
.case-detail-page .case-result-note{display:block}
.case-detail-page .case-detail-compact-note .case-intro{padding-bottom:48px}
.case-detail-page .case-detail-compact-note .case-result-note{font-size:11px;line-height:18px}
.case-detail-page .case-detail-spaced-summary .case-overview{margin-top:67px}
.case-detail-page .case-content h2{white-space:pre-line}
@media(max-width:700px){
 .case-detail-page .case-detail-compact-note .case-intro{padding-bottom:40px}
 .case-detail-page .case-detail-spaced-summary .case-overview{margin-top:24px}
}
