/* ── SERVICE PAGE ── */
.service-detail{border-top:1px solid var(--line-d)}
.service-detail-header{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-d)}
.service-detail-header-left{background:var(--light);color:var(--dark);padding:80px 56px}
.service-detail-header-right{background:var(--dark);padding:80px 56px;display:flex;flex-direction:column;gap:40px}
.service-num-large{font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(3rem,8vw,6rem);font-weight:400;color:rgba(12,11,9,.07);line-height:1;margin-bottom:16px}
.service-name{font-family:'Noto Serif JP',serif;font-size:clamp(1.4rem,3vw,2.4rem);font-weight:300;line-height:1.3;color:var(--dark);margin-bottom:16px}
.service-name-en{font-family:'Playfair Display',serif;font-style:italic;font-size:.85rem;color:var(--mid-l);display:block;margin-top:4px}
.service-catchcopy{font-family:'Noto Serif JP',serif;font-size:.9rem;font-weight:300;color:var(--mid-l);line-height:1.8}
.service-detail-tags{display:flex;flex-wrap:wrap;gap:8px}
.service-kpi-preview{border-top:1px solid var(--line-d);padding-top:32px}
.service-kpi-label{font-size:.48rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mid-d);margin-bottom:8px}
.service-kpi-value{font-family:'Playfair Display',serif;font-size:3rem;font-weight:700;color:var(--light);line-height:1}
.service-kpi-note{font-size:.65rem;color:var(--mid-d);margin-top:8px;line-height:1.6}
.service-detail-body{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-d)}
.detail-col{background:var(--dark);padding:72px 56px}
.detail-col h4{font-family:'Noto Serif JP',serif;font-size:.95rem;font-weight:400;margin-bottom:20px;color:var(--light)}
.detail-col p{font-size:.78rem;color:var(--mid-d);line-height:2.2;margin-bottom:16px}
.feature-list{margin-top:24px;display:flex;flex-direction:column}
.feature-item{font-size:.75rem;color:var(--mid-d);padding:12px 0;border-top:1px solid var(--line-d);line-height:1.7;display:flex;align-items:flex-start;gap:12px}
.feature-item::before{content:'—';color:rgba(245,242,236,.2);flex-shrink:0}
.process-section{padding:100px 56px;border-top:1px solid var(--line-d)}
.process-section h3{font-family:'Noto Serif JP',serif;font-size:clamp(1.2rem,2.5vw,2rem);font-weight:300;margin-bottom:56px}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-d)}
.process-step{background:var(--dark);padding:48px 36px;transition:background .4s}
.process-step:hover{background:#111}
.step-n{font-family:'Playfair Display',serif;font-style:italic;font-size:2.4rem;font-weight:400;color:rgba(245,242,236,.06);line-height:1;margin-bottom:24px}
.step-title{font-family:'Noto Serif JP',serif;font-size:.95rem;font-weight:400;margin-bottom:12px;line-height:1.5}
.step-body{font-size:.72rem;color:var(--mid-d);line-height:2}
.faq-list{display:flex;flex-direction:column}
.faq-item{border-top:1px solid var(--line-d);overflow:hidden}
.faq-q{padding:28px 0;font-family:'Noto Serif JP',serif;font-size:.95rem;font-weight:300;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px}
.faq-q::after{content:'+';font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--mid-d);flex-shrink:0;transition:transform .3s}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{font-size:.78rem;color:var(--mid-d);line-height:2.2;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease}
.faq-item.open .faq-a{max-height:300px;padding-bottom:28px}
@media(max-width:768px){
  .service-detail-header,.service-detail-body{grid-template-columns:1fr}
  .service-detail-header-left{padding:56px 24px}
  .service-detail-header-right{padding:56px 24px}
  .detail-col{padding:56px 24px}
  .process-section{padding:72px 24px}
  .process-steps{grid-template-columns:1fr}
}