/* Service directory: independent of the shared visit-area layout. */
.service-index{--paper:#FBFAF5;--ink:#262420;--text:#57503F;--line:#E4DDC9;--green:#5D6B3C;background:var(--paper);color:var(--ink);font:16px/1.85 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;overflow-wrap:break-word}
.service-index *{box-sizing:border-box}
.service-index h1,.service-index h2{font-family:"Shippori Mincho B1","Hiragino Mincho ProN",serif;font-weight:600;line-height:1.5;letter-spacing:.015em}
.service-index p{margin:0;color:var(--text)}
.service-index a{color:inherit;text-decoration:none}
.service-index a:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.service-index [id]{scroll-margin-top:100px}
.si-wrap{max-width:1248px;margin:auto;padding:0 40px}
.si-heading{padding:42px 0 30px}
.service-index .si-kicker{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--green);margin:0 0 10px}
.si-heading h1{font-size:40px;margin:0 0 14px}
.si-heading>p:last-child{font-size:16px}
.si-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.si-card{display:flex;flex-direction:column;background:#FDFCF8;border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.si-card:hover{border-color:var(--green);box-shadow:0 14px 30px -22px #26242055}
.service-index .si-category{padding:12px 24px;background:#E8EBDE;color:#37412A;font-weight:700;font-size:14px;display:flex;gap:14px;align-items:center}
.si-card:nth-child(2) .si-category{background:#EDE2AF;color:#50421F}
.si-card:nth-child(3) .si-category{background:#E8E4D9;color:#494438}
.si-category span{font-size:17px;font-weight:500}
.si-card-body{padding:25px 24px 19px;display:flex;flex-direction:column;flex:1}
.si-card h2{font-size:26px;margin:0 0 17px;white-space:nowrap}
.service-index .si-value{font-size:20px;font-weight:700;line-height:1.7;color:var(--ink);margin-bottom:14px}
.si-summary{font-size:15px;line-height:1.85}
.si-card ul{padding:0;list-style:none;margin:20px 0 22px;font-size:14px;line-height:2;color:var(--text)}
.si-card li::before{content:"";display:inline-block;width:5px;height:5px;background:var(--green);margin:0 10px 3px 0}
.service-index .si-terms{margin-top:auto;font-size:13px;color:var(--text);padding-bottom:16px}
.si-link{border-top:1px solid var(--line);padding-top:16px;min-height:45px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;color:var(--green);font-weight:700}
.si-link>span{font-size:20px}
.service-index .si-choice-note{font-size:14px;margin:22px 0 62px}
.si-detail{display:grid;grid-template-columns:1fr 1.6fr;gap:64px;border-top:1px solid var(--line);padding:48px 0}
.si-detail h2{font-size:29px;margin:0 0 18px}
.service-index .si-detail-lead{font-size:20px;color:var(--ink);line-height:1.8}
.si-detail dl{margin:24px 0 16px}
.si-detail dl>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line);font-size:15px}
.si-detail dt{font-weight:700}
.si-detail dd{margin:0;color:var(--text)}
.service-index .si-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:44px;color:var(--green);text-decoration:underline;text-underline-offset:6px;font-weight:700;font-size:15px}
.si-consult{margin:20px 0 0;padding:32px;background:#F3F1E8;border-left:5px solid #C9A83C;display:flex;align-items:center;justify-content:space-between;gap:32px}
.si-consult h2{font-size:25px;margin:0 0 10px}
.si-consult p:last-child{font-size:15px}
.service-index .si-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;white-space:nowrap;background:var(--green);color:#FBFAF5;padding:14px 24px;min-height:52px;border-radius:3px;font-weight:700}
.si-button:hover{background:#46522D}
.si-related{display:flex;justify-content:flex-end;gap:28px;padding:26px 0 60px;font-size:14px;color:var(--green)}
.si-related a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}
.si-mobile{display:none}
@media(max-width:1100px) and (min-width:881px){.si-wrap{padding:0 24px}.si-grid{gap:14px}.si-card-body{padding:22px 18px 18px}.si-card h2{font-size:23px}.si-value{font-size:18px!important}.si-category{padding:12px 18px!important}.si-consult{display:block}.si-button{margin-top:20px}}
@media(max-width:880px){.si-wrap{padding:0 24px}.si-heading{padding:30px 0 24px}.si-heading h1{font-size:32px}.si-grid{grid-template-columns:1fr;gap:20px}.si-card-body{padding:23px 24px 18px}.si-card h2{font-size:28px}.si-card ul{margin:16px 0}.si-detail{grid-template-columns:1fr;gap:24px;padding:36px 0}.si-detail h2{font-size:27px}.service-index .si-choice-note{margin-bottom:40px}.si-consult{display:block;padding:26px 24px}.si-consult h2{font-size:24px}.si-button{margin-top:22px}.si-related{justify-content:flex-start;flex-wrap:wrap;gap:4px 24px;padding-bottom:36px}.si-mobile{display:block}}
@media(max-width:400px){.si-wrap{padding:0 18px}.si-heading>p:last-child{font-size:15px}.si-card-body{padding:22px 20px 18px}.si-card h2{font-size:26px}.si-detail dl>div{grid-template-columns:1fr;gap:6px}.si-consult{padding:24px 18px}.si-consult h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.si-card{transition:none}}
/* v2: large distinct color fields, shorter copy, visible click targets. */
.service-index{--text:#393830;background:#F3F1E8}
.si-heading{padding:40px 0 28px}
.si-heading h1{font-size:42px}
.si-grid{gap:28px}
.si-card{border:0;background:#fff;box-shadow:0 3px 0 #26242012}
.si-card-cover{position:relative;min-height:230px;padding:25px 24px;background:#52683D;color:#fff;overflow:hidden}
.tone-1 .si-card-cover{background:#E4BC39;color:#262420}
.tone-2 .si-card-cover{background:#303E3B;color:#fff}
.service-index .si-category,.si-card:nth-child(2) .si-category,.si-card:nth-child(3) .si-category{padding:0!important;background:none;color:inherit;font-size:14px;letter-spacing:.05em}
.si-card h2{font-size:29px;margin:12px 0 0;position:relative;z-index:1;letter-spacing:0}
.si-symbol{display:block;width:135px;height:115px;margin:12px 0 0 auto;opacity:.95}
.si-card-body{padding:24px}
.service-index .si-value{font-size:19px;line-height:1.8;font-weight:500;margin-bottom:22px}
.si-link{border:0;background:#52683D;color:#fff;min-height:52px;padding:12px 18px;font-size:15px;border-radius:3px}
.tone-1 .si-link{background:#E4BC39;color:#262420}
.tone-2 .si-link{background:#303E3B;color:#fff}
.si-card:hover{box-shadow:0 12px 28px #26242024}
.si-card:hover .si-link{text-decoration:underline;text-underline-offset:4px}
.service-index .si-choice-note{margin:24px 0 36px;color:#393830}
.si-consult{background:#fff;border-left:6px solid #E4BC39;padding:30px}
@media(max-width:1100px) and (min-width:881px){.si-grid{gap:18px}.si-card-cover{padding:22px 18px}.si-card h2{font-size:23px}.si-card-body{padding:22px 18px}.si-link{font-size:14px;padding:12px}}
@media(max-width:880px){.si-heading h1{font-size:32px}.si-grid{gap:24px}.si-card-cover{min-height:180px;padding:24px}.si-card h2{font-size:28px}.si-symbol{height:76px;width:100px;margin-top:8px}.si-card-body{padding:22px 24px}.service-index .si-value{font-size:18px}.si-consult{padding:24px}}
@media(max-width:360px){.si-card-cover,.si-card-body{padding:20px}.si-card h2{font-size:25px}.si-link{padding:12px;font-size:14px}}
