/* トップページ（/）only. v0.39.0：サイト全体の案内所として作り直したトップ。
   構成：FV → サービスから探す → 会社紹介 → ご利用案内 → Instagram → ご依頼の流れ＋よくある質問 → 濃紺 CTA。
   値は docs/20-共通デザインルール.md と company.css（v0.37.0）・recruit.css（v0.38.0）と同じ。新しい色は足していない。
   共通ヘッダー・フッター・他ページは変更しない（このファイルは inc/setup.php でトップページのときだけ読み込む）。 */
.sp-front { --t-navy:#0b2e48; --t-gold:#af8a50; --t-line:#e6dfd1; --t-rule:#c4a57c; --t-muted:#566877; --t-paper:#fffdf8; --t-tint:#f5f2e9; --t-serif:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif; }
.sp-front #sp-main.sp-main { background:var(--t-paper); color:var(--t-navy); font-size:14px; }
.sp-front #sp-main.sp-main .sp-wrap { max-width:1320px; }
.sp-front #sp-main.sp-main h1,.sp-front #sp-main.sp-main h2,.sp-front #sp-main.sp-main h3 { background:none; border:0; padding:0; color:var(--t-navy); font-family:var(--t-serif); font-weight:600; }
.sp-front #sp-main.sp-main h2 { font-size:30px; line-height:1.65; letter-spacing:.03em; margin:0; }
.sp-front #sp-main.sp-main h2::before,.sp-front #sp-main.sp-main h2::after,.sp-front #sp-main.sp-main h3::before,.sp-front #sp-main.sp-main h3::after { content:none; }
.sp-front #sp-main.sp-main p { line-height:1.9; margin:12px 0; }
.sp-front #sp-main.sp-main figure { margin:0; }
.sp-front #sp-main.sp-main figure img { display:block; width:100%; height:100%; object-fit:cover; }
.sp-front #sp-main.sp-main ul,.sp-front #sp-main.sp-main ol { list-style:none; margin:0; padding:0; }
.sp-front #sp-main.sp-main li { margin:0; }
.sp-front #sp-main.sp-main a:focus-visible,.sp-front #sp-main.sp-main summary:focus-visible,.sp-front #sp-main.sp-main .t39-ig__list:focus-visible { outline:3px solid #d59a43; outline-offset:4px; }
.sp-front #sp-main.sp-main .t39-eye { font:italic 12px/1.8 Georgia,serif; letter-spacing:.18em; color:var(--t-gold); margin:0 0 8px; }
.sp-front #sp-main.sp-main .t39-nw { display:inline-block; }
.sp-front #sp-main.sp-main .t39-section { padding:56px 0; }
.sp-front #sp-main.sp-main .t39-heading { text-align:center; margin-bottom:30px; }
.sp-front #sp-main.sp-main .t39-heading .t39-eye { margin-bottom:4px; }
.sp-front #sp-main.sp-main .t39-heading__lead { font-size:13px; line-height:1.9; color:var(--t-muted); margin:6px 0 0; }
.sp-front #sp-main.sp-main .t39-heading--left { text-align:left; border-left:2px solid var(--t-gold); padding-left:22px; }
.sp-front #sp-main.sp-main .t39-more { margin:0; text-align:right; }
.sp-front #sp-main.sp-main .t39-more a { display:inline-block; color:#8c5826; text-decoration:none; border-bottom:1px solid var(--t-rule); padding:0 0 4px; font-size:13px; font-weight:600; }
.sp-front #sp-main.sp-main .t39-more--center { text-align:center; }
.sp-front #sp-main.sp-main .t39-more a span { margin-left:8px; }
.sp-front #sp-main.sp-main .t39-more a:hover { color:var(--t-navy); }

/* FV：/flow/・/area/・/company/ と同じ 2 列グリッドと背景。トップは入口なので、少し高くして大きなオレンジのボタンを置く。 */
.sp-front #sp-main.sp-main .t39-hero { background:linear-gradient(110deg,#f5f1e6,#fffef9); }
.sp-front #sp-main.sp-main .t39-hero__grid { display:grid; grid-template-columns:1.08fr 1fr; max-width:1600px; margin:auto; min-height:500px; }
.sp-front #sp-main.sp-main .t39-hero:not(.has-photo) .t39-hero__grid { grid-template-columns:1fr; min-height:360px; }
.sp-front #sp-main.sp-main .t39-hero__copy { display:flex; flex-direction:column; justify-content:center; padding:48px 42px 48px max(28px,calc((100vw - 1260px) / 2)); }
.sp-front #sp-main.sp-main .t39-hero h1 { font-size:clamp(34px,3.4vw,48px); line-height:1.55; letter-spacing:.1em; margin:2px 0 20px; }
.sp-front #sp-main.sp-main .t39-hero__lead { max-width:540px; font-size:15px; line-height:2; color:var(--t-muted); margin:0 0 30px; }
.sp-front #sp-main.sp-main .t39-hero__act { display:flex; flex-wrap:wrap; align-items:center; gap:16px 30px; }
.sp-front #sp-main.sp-main .t39-btn { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:64px; padding:14px 38px; background:linear-gradient(110deg,#dc741a,#bc4e06); border:1px solid #bf5a14; border-radius:5px; color:#fff; font-size:17px; font-weight:700; line-height:1.5; text-decoration:none; box-shadow:0 5px 14px #7c3f1115; }
.sp-front #sp-main.sp-main .t39-btn:hover { background:#a94607; color:#fff; }
.sp-front #sp-main.sp-main .t39-hero__tel { display:flex; flex-direction:column; color:var(--t-navy); text-decoration:none; line-height:1.4; }
.sp-front #sp-main.sp-main .t39-hero__tel span { font-size:11px; letter-spacing:.06em; color:var(--t-muted); }
.sp-front #sp-main.sp-main .t39-hero__tel b { font:600 24px/1.35 var(--t-serif); letter-spacing:.04em; white-space:nowrap; font-variant-numeric:lining-nums; }
.sp-front #sp-main.sp-main .t39-hero__photo { position:relative; min-width:0; overflow:hidden; }
.sp-front #sp-main.sp-main .t39-hero__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fffdf8c0,transparent 35%); pointer-events:none; }
.sp-front #sp-main.sp-main .t39-hero__photo img { position:absolute; inset:0; object-position:60% 50%; }

/* サービスから探す：写真付きのカード 5 枚。白・細罫線・角なし・右下の矢印（/area/ の関連カードと同じ）。 */
.sp-front #sp-main.sp-main .t39-svc { background:var(--t-paper); }
.sp-front #sp-main.sp-main .t39-svc__list { display:flex; flex-wrap:wrap; justify-content:center; gap:18px; }
.sp-front #sp-main.sp-main .t39-svc__list > li { display:flex; flex:0 0 calc((100% - 72px) / 5); min-width:0; }
.sp-front #sp-main.sp-main .t39-card { display:flex; flex-direction:column; width:100%; background:#fff; border:1px solid var(--t-line); color:inherit; text-decoration:none; transition:border-color .2s; }
.sp-front #sp-main.sp-main .t39-card:hover { border-color:var(--t-gold); }
.sp-front #sp-main.sp-main .t39-card__img { display:block; aspect-ratio:16 / 11; overflow:hidden; background:var(--t-tint); }
.sp-front #sp-main.sp-main .t39-card__img img { display:block; width:100%; height:100%; object-fit:cover; }
.sp-front #sp-main.sp-main .t39-card__img--icon { display:flex; align-items:center; justify-content:center; background:linear-gradient(110deg,#f5f1e6,#fffef9); border-bottom:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-card__img--icon svg { width:66px; height:66px; fill:none; stroke:var(--t-gold); stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.sp-front #sp-main.sp-main .t39-card__body { position:relative; display:flex; flex-direction:column; flex:1; padding:16px 20px 38px; }
.sp-front #sp-main.sp-main .t39-card__en { font:italic 10px/1.6 Georgia,serif; letter-spacing:.16em; color:var(--t-gold); margin:0 0 2px; }
.sp-front #sp-main.sp-main .t39-card__ttl { font-size:18px; line-height:1.6; letter-spacing:.02em; margin:0 0 6px; }
.sp-front #sp-main.sp-main .t39-card__text { font-size:12.5px; line-height:1.85; color:var(--t-muted); }
.sp-front #sp-main.sp-main .t39-card__arrow { position:absolute; right:18px; bottom:12px; color:#ad571d; }

/* 会社紹介：左に文章、右に写真（FV と同じ組み方。地は白、写真の左端は白へぼかす）。 */
.sp-front #sp-main.sp-main .t39-about { background:#fff; border-top:1px solid var(--t-line); border-bottom:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-about__grid { display:grid; grid-template-columns:minmax(0,1fr); max-width:1600px; margin:auto; }
.sp-front #sp-main.sp-main .t39-about.has-photo .t39-about__grid { grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); min-height:420px; }
.sp-front #sp-main.sp-main .t39-about__copy { display:flex; flex-direction:column; justify-content:center; padding:56px 48px 56px max(28px,calc((100vw - 1260px) / 2)); }
.sp-front #sp-main.sp-main .t39-about__copy > p:not(.t39-eye) { max-width:560px; font-size:15px; line-height:2.05; margin:14px 0 22px; }
.sp-front #sp-main.sp-main .t39-about__facts { max-width:560px; margin:0 0 28px; border-top:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-about__facts > div { display:grid; grid-template-columns:5em minmax(0,1fr); gap:12px; padding:11px 0; border-bottom:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-about__facts dt { margin:0; font-size:12px; font-weight:600; letter-spacing:.08em; line-height:1.9; color:var(--t-muted); }
.sp-front #sp-main.sp-main .t39-about__facts dd { margin:0; font-size:14px; line-height:1.9; }
.sp-front #sp-main.sp-main .t39-btn-line { align-self:flex-start; display:inline-flex; align-items:center; gap:16px; padding:13px 32px; background:#fff; border:1px solid var(--t-rule); border-radius:3px; color:var(--t-navy); font-size:14px; font-weight:600; text-decoration:none; }
.sp-front #sp-main.sp-main .t39-btn-line span { color:#ad571d; }
.sp-front #sp-main.sp-main .t39-btn-line:hover { border-color:var(--t-navy); }
.sp-front #sp-main.sp-main .t39-about__photo { position:relative; min-width:0; min-height:320px; overflow:hidden; }
.sp-front #sp-main.sp-main .t39-about__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#ffffffd0,transparent 30%); pointer-events:none; }
.sp-front #sp-main.sp-main .t39-about__photo img { position:absolute; inset:0; object-position:40% 50%; }

/* ご利用案内：アイコン＋短い文の 4 枚（/area/ の関連カードと同じ枠・矢印）。 */
.sp-front #sp-main.sp-main .t39-guide { background:var(--t-tint); }
.sp-front #sp-main.sp-main .t39-guide__list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.sp-front #sp-main.sp-main .t39-guide__list a { position:relative; display:flex; flex-direction:column; height:100%; padding:22px 24px 38px; background:#fff; border:1px solid var(--t-line); color:inherit; text-decoration:none; transition:border-color .2s; }
.sp-front #sp-main.sp-main .t39-guide__list a:hover { border-color:var(--t-gold); }
.sp-front #sp-main.sp-main .t39-guide__icon { width:36px; height:36px; margin:0 0 10px; fill:none; stroke:var(--t-gold); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.sp-front #sp-main.sp-main .t39-guide h3 { font-size:17px; line-height:1.7; margin:0 0 6px; }
.sp-front #sp-main.sp-main .t39-guide__list p { font-size:12.5px; line-height:1.85; color:#586b78; margin:0; }
.sp-front #sp-main.sp-main .t39-guide__list a > span { position:absolute; right:20px; bottom:12px; color:#ad571d; }

/* Instagram：写真の列（PC 6 枚・タブレット 3 枚ずつ・スマホは横スクロール）。主役にしすぎない。 */
.sp-front #sp-main.sp-main .t39-ig { background:#fff; }
.sp-front #sp-main.sp-main .t39-ig__head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px 32px; margin-bottom:26px; }
.sp-front #sp-main.sp-main .t39-ig__head .t39-heading { margin:0; }
.sp-front #sp-main.sp-main .t39-ig__more { display:inline-flex; align-items:center; gap:8px; flex:none; color:#8c5826; font-size:13px; font-weight:600; text-decoration:none; border-bottom:1px solid var(--t-rule); padding:0 0 4px; white-space:nowrap; }
.sp-front #sp-main.sp-main .t39-ig__more svg { width:18px; height:18px; }
.sp-front #sp-main.sp-main .t39-ig__more:hover { color:var(--t-navy); }
.sp-front #sp-main.sp-main .t39-ig__list { position:relative; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; } /* relative：読み上げ用の .sp-sr-only（absolute）がスマホの横スクロールの外へはみ出さないように */
.sp-front #sp-main.sp-main .t39-ig__list a { display:block; color:inherit; text-decoration:none; }
.sp-front #sp-main.sp-main .t39-ig__frame { display:block; aspect-ratio:1 / 1; overflow:hidden; background:var(--t-tint); }
.sp-front #sp-main.sp-main .t39-ig__frame img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.sp-front #sp-main.sp-main .t39-ig__list a:hover img { transform:scale(1.04); }
.sp-front #sp-main.sp-main .t39-ig__frame .sp-ph { height:100%; min-height:0; }
.sp-front #sp-main.sp-main .t39-ig__cap { display:block; font-size:12px; line-height:1.7; color:var(--t-muted); margin-top:6px; }

/* ご依頼の流れ：共通のコンテンツ幅の中に 4 枚を横並び。 */
.sp-front #sp-main.sp-main .t39-ff { background:var(--t-paper); border-top:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-ff .t39-heading { margin-bottom:26px; }
.sp-front #sp-main.sp-main .t39-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin:0 0 22px; padding:17px 0 0; }
.sp-front #sp-main.sp-main .t39-steps li { position:relative; padding:30px 16px 18px; background:#fff; border:1px solid var(--t-line); }
.sp-front #sp-main.sp-main .t39-steps li + li::before { content:"›"; position:absolute; left:-16px; top:50%; transform:translateY(-50%); color:var(--t-gold); font-size:20px; line-height:1; }
.sp-front #sp-main.sp-main .t39-steps__no { position:absolute; top:-17px; left:16px; display:flex; width:34px; height:34px; align-items:center; justify-content:center; border-radius:50%; background:var(--t-navy); color:#fff; font:14px/1 Georgia,serif; }
.sp-front #sp-main.sp-main .t39-steps h3 { font-size:16px; line-height:1.6; margin:0 0 8px; }
.sp-front #sp-main.sp-main .t39-steps p { font-size:12px; line-height:1.85; color:var(--t-muted); margin:0; }

/* CTA：/flow/・/faq/・/company/ と同じ濃紺の面と大きなオレンジボタン */
.sp-front #sp-main.sp-main .t39-cta { padding:48px 0; background:radial-gradient(ellipse at 50% 0,#174863,#06273f); color:#fff; text-align:center; }
.sp-front #sp-main.sp-main .t39-cta h2 { color:#fff; font-size:33px; margin:10px 0 16px; }
.sp-front #sp-main.sp-main .t39-cta .t39-cta__lead { color:#dfe8ed; font-size:14px; line-height:1.9; margin:0 0 24px; }
.sp-front #sp-main.sp-main .t39-main-cta { display:flex; align-items:center; justify-content:center; gap:24px; max-width:740px; min-height:74px; margin:0 auto 24px; padding:15px 24px; background:linear-gradient(110deg,#dc741a,#bc4e06); border:1px solid #e9bb7f; border-radius:5px; color:#fff; text-decoration:none; font-size:22px; font-weight:700; line-height:1.6; box-shadow:0 5px 14px #7c3f1115; }
.sp-front #sp-main.sp-main .t39-main-cta:hover { background:#a94607; color:#fff; }
.sp-front #sp-main.sp-main .t39-tel { display:flex; align-items:center; justify-content:center; gap:16px; color:#fff; text-decoration:none; }
.sp-front #sp-main.sp-main .t39-tel span { font-size:12px; }
.sp-front #sp-main.sp-main .t39-tel b { font-size:34px; letter-spacing:.03em; white-space:nowrap; }
.sp-front #sp-main.sp-main .t39-phone p { font-size:11px; color:#d8e4eb; margin:6px 0 0; }
.sp-front #sp-main.sp-main .t39-cta .t39-cta__sub { font-size:13px; margin:18px 0 0; }
.sp-front #sp-main.sp-main .t39-cta__sub a,.sp-front #sp-main.sp-main .t39-cta__line a { color:#fff; text-decoration:none; border-bottom:1px solid #ffffff66; padding-bottom:1px; }
.sp-front #sp-main.sp-main .t39-cta__sub a:hover,.sp-front #sp-main.sp-main .t39-cta__line a:hover { border-bottom-color:#fff; }
.sp-front #sp-main.sp-main .t39-cta__sub span { margin-left:8px; color:#e9bb7f; }
.sp-front #sp-main.sp-main .t39-cta .t39-cta__line { font-size:13px; margin:10px 0 0; }

@media (max-width:1100px) {
 .sp-front #sp-main.sp-main .t39-hero__copy { padding:36px 28px; }
 .sp-front #sp-main.sp-main .t39-about__copy { padding:48px 32px 48px 28px; }
 .sp-front #sp-main.sp-main .t39-svc__list { gap:12px; }
 .sp-front #sp-main.sp-main .t39-svc__list > li { flex-basis:calc((100% - 48px) / 5); }
 .sp-front #sp-main.sp-main .t39-card__body { padding:14px 14px 36px; }
 .sp-front #sp-main.sp-main .t39-card__ttl { font-size:16px; }
 .sp-front #sp-main.sp-main .t39-card__arrow { right:14px; }
}
@media (max-width:1023px) {
 .sp-front #sp-main.sp-main .t39-ig__list { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:999px) {
 .sp-front #sp-main.sp-main .t39-svc__list > li { flex-basis:calc((100% - 24px) / 3); }
}
@media (max-width:899px) {
 .sp-front #sp-main.sp-main .t39-guide__list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sp-front #sp-main.sp-main .t39-about.has-photo .t39-about__grid { grid-template-columns:minmax(0,1fr); min-height:0; }
 .sp-front #sp-main.sp-main .t39-about__copy { padding:44px 22px 36px; }
 .sp-front #sp-main.sp-main .t39-about__photo { min-height:0; height:300px; }
 .sp-front #sp-main.sp-main .t39-about__photo::after { display:none; }
}
@media (max-width:800px) {
 .sp-front #sp-main.sp-main .t39-hero__grid { grid-template-columns:1.2fr 1fr; }
 .sp-front #sp-main.sp-main .t39-hero__copy { padding:32px 22px; }
 .sp-front #sp-main.sp-main .t39-hero__lead { font-size:14px; }
 .sp-front #sp-main.sp-main .t39-btn { padding:12px 26px; font-size:16px; min-height:58px; }
 .sp-front #sp-main.sp-main h2 { font-size:26px; }
}
@media (max-width:767px) {
 .sp-front #sp-main.sp-main .t39-pc { display:none; }
 .sp-front #sp-main.sp-main .t39-steps { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:30px; }
 .sp-front #sp-main.sp-main .t39-steps li + li::before { content:none; }
 .sp-front #sp-main.sp-main .t39-ig__head { flex-direction:column; align-items:flex-start; }
}
@media (max-width:600px) {
 .sp-front #sp-main.sp-main .t39-section { padding:38px 0; }
 .sp-front #sp-main.sp-main .t39-heading { margin-bottom:22px; }
 .sp-front #sp-main.sp-main h2 { font-size:23px; }
 .sp-front #sp-main.sp-main .t39-hero__grid { grid-template-columns:1fr; min-height:0; }
 .sp-front #sp-main.sp-main .t39-hero__copy { padding:30px 18px 28px; }
 .sp-front #sp-main.sp-main .t39-hero h1 { font-size:31px; letter-spacing:.08em; margin-bottom:14px; }
 .sp-front #sp-main.sp-main .t39-hero__lead { margin-bottom:22px; }
 .sp-front #sp-main.sp-main .t39-hero__act { flex-direction:column; align-items:stretch; gap:14px; }
 .sp-front #sp-main.sp-main .t39-btn { width:100%; min-height:60px; font-size:17px; }
 .sp-front #sp-main.sp-main .t39-hero__tel { align-items:center; }
 .sp-front #sp-main.sp-main .t39-hero__photo { height:220px; }
 .sp-front #sp-main.sp-main .t39-hero__photo::after { display:none; }
 .sp-front #sp-main.sp-main .t39-svc__list { gap:10px; }
 .sp-front #sp-main.sp-main .t39-svc__list > li { flex-basis:100%; }
 .sp-front #sp-main.sp-main .t39-card { flex-direction:row; }
 .sp-front #sp-main.sp-main .t39-card__img { flex:0 0 112px; aspect-ratio:auto; min-height:106px; }
 .sp-front #sp-main.sp-main .t39-card__img--icon { border-bottom:0; border-right:1px solid var(--t-line); }
 .sp-front #sp-main.sp-main .t39-card__img--icon svg { width:46px; height:46px; }
 .sp-front #sp-main.sp-main .t39-card__body { justify-content:center; padding:12px 34px 12px 16px; }
 .sp-front #sp-main.sp-main .t39-card__ttl { font-size:16px; margin-bottom:2px; }
 .sp-front #sp-main.sp-main .t39-card__text { font-size:12px; line-height:1.75; }
 .sp-front #sp-main.sp-main .t39-card__arrow { top:50%; bottom:auto; right:14px; transform:translateY(-50%); }
 .sp-front #sp-main.sp-main .t39-about__copy { padding:36px 18px 30px; }
 .sp-front #sp-main.sp-main .t39-about__copy > p:not(.t39-eye) { font-size:14px; line-height:2; }
 .sp-front #sp-main.sp-main .t39-about__facts > div { grid-template-columns:3.6em minmax(0,1fr); }
 .sp-front #sp-main.sp-main .t39-about__facts dd { font-size:13px; }
 .sp-front #sp-main.sp-main .t39-btn-line { align-self:stretch; justify-content:center; }
 .sp-front #sp-main.sp-main .t39-about__photo { height:220px; }
 .sp-front #sp-main.sp-main .t39-guide__list { gap:10px; }
 .sp-front #sp-main.sp-main .t39-guide__list a { padding:16px 14px 34px; }
 .sp-front #sp-main.sp-main .t39-guide__icon { width:30px; height:30px; margin-bottom:6px; }
 .sp-front #sp-main.sp-main .t39-guide h3 { font-size:15px; }
 .sp-front #sp-main.sp-main .t39-guide__list p { font-size:12px; line-height:1.75; }
 .sp-front #sp-main.sp-main .t39-guide__list a > span { right:14px; bottom:10px; }
 .sp-front #sp-main.sp-main .t39-ig__list { display:flex; gap:10px; margin:0 calc(-1 * var(--sp-gut)); padding:0 var(--sp-gut) 6px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:var(--sp-gut); -webkit-overflow-scrolling:touch; }
 .sp-front #sp-main.sp-main .t39-ig__list > li { flex:0 0 42%; scroll-snap-align:start; }
 .sp-front #sp-main.sp-main .t39-steps { grid-template-columns:minmax(0,1fr); gap:10px; padding-top:0; }
 .sp-front #sp-main.sp-main .t39-steps li { padding:14px 16px 14px 62px; }
 .sp-front #sp-main.sp-main .t39-steps__no { top:50%; left:14px; transform:translateY(-50%); }
 .sp-front #sp-main.sp-main .t39-steps h3 { font-size:15px; margin-bottom:2px; }
 .sp-front #sp-main.sp-main .t39-more { text-align:center; }
 .sp-front #sp-main.sp-main .t39-cta { padding:36px 0; }
 .sp-front #sp-main.sp-main .t39-cta h2 { font-size:24px; letter-spacing:0; }
 .sp-front #sp-main.sp-main .t39-main-cta { min-height:68px; font-size:20px; gap:20px; }
 .sp-front #sp-main.sp-main .t39-tel { flex-direction:column; gap:4px; }
 .sp-front #sp-main.sp-main .t39-tel b { font-size:30px; }
}

/* v0.42.3: 既存5カードの順序を保ち、追加1件と3列2段に収める。 */
@media(min-width:1000px){
.sp-front #sp-main.sp-main .t39-svc__list--six{gap:18px}
.sp-front #sp-main.sp-main .t39-svc__list--six > li{flex-basis:calc((100% - 36px) / 3)}
}
