@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}





/* ===== カンプ実装：Industry DS + トップ ===== */
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;700&family=Barlow+Condensed:wght@400;600&family=Shippori+Mincho:wght@400;500;600&family=Zen+Kaku+Gothic+New:wght@400;500&display=swap');
:root{--color-bg:#f2f2f3;--color-surface:#e9e9ea;--color-text:#1d1f20;--color-accent:#5980a6;--color-accent-2:#728fab;--color-divider:color-mix(in srgb,#1d1f20 16%,transparent);--color-neutral-100:#f5f5f8;--color-neutral-200:#e7e7ea;--color-neutral-300:#d4d4d7;--color-neutral-400:#b7b7ba;--color-neutral-500:#98989b;--color-neutral-600:#7a7a7d;--color-neutral-700:#5d5d60;--color-neutral-800:#424244;--color-neutral-900:#2b2b2d;--color-accent-100:#eef6ff;--color-accent-200:#d6ebff;--color-accent-300:#b5d9fd;--color-accent-400:#94bce3;--color-accent-500:#749dc4;--color-accent-600:#597ea3;--color-accent-700:#416180;--color-accent-800:#2c455d;--color-accent-900:#1d2d3d;--font-heading:"Barlow Condensed",system-ui,sans-serif;--font-heading-weight:600;--font-body:"Barlow",system-ui,sans-serif;--space-1:3.4px;--space-2:6.8px;--space-3:10.2px;--space-4:13.6px;--space-6:20.4px;--space-8:27.2px;}
*,*::before,*::after{box-sizing:border-box;}
.blueprint{position:relative;border:1px solid var(--color-divider);border-radius:0;}
.blueprint.duotone{overflow:visible;}
.blueprint>.corner{position:absolute;width:11px;height:11px;color:color-mix(in srgb,var(--color-text) 55%,transparent);}
.blueprint>.corner::before,.blueprint>.corner::after{content:"";position:absolute;background:currentColor;}
.blueprint>.corner::before{left:5px;top:0;width:1px;height:100%;}
.blueprint>.corner::after{top:5px;left:0;width:100%;height:1px;}
.blueprint>.corner.tl{top:-6px;left:-6px;}.blueprint>.corner.tr{top:-6px;right:-6px;}.blueprint>.corner.bl{bottom:-6px;left:-6px;}.blueprint>.corner.br{bottom:-6px;right:-6px;}
.duotone{position:relative;overflow:hidden;}
.duotone::after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--color-accent);mix-blend-mode:color;}
.text-muted{color:color-mix(in srgb,var(--color-text) 55%,transparent);}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-decoration:none;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:14px;line-height:1.2;color:var(--color-text);background:transparent;border:1px solid var(--color-divider);padding:var(--space-2) calc(var(--space-3)*1.2);border-radius:0;}
.btn-primary{background:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent);}
.btn-primary:hover{background:var(--color-accent-600);}
.btn-secondary{border-color:var(--color-divider);}
.btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent);}
.btn-ghost{color:var(--color-accent);border-color:transparent;padding-inline:var(--space-1);}
.field>label{display:block;font-size:12px;margin-bottom:5px;color:color-mix(in srgb,var(--color-text) 70%,transparent);}
.input{width:100%;min-height:36px;padding:6px 10px;font:inherit;font-size:14px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:0;}
.input:focus-visible{border-color:var(--color-accent);outline-offset:0;}
textarea.input{min-height:90px;resize:vertical;}
.seg{display:inline-flex;overflow:hidden;border:1px solid var(--color-divider);border-radius:0;}
.seg-opt{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font-size:13px;cursor:pointer;}
.seg-opt+.seg-opt{border-left:1px solid var(--color-divider);}
.seg-opt input{position:absolute;opacity:0;width:0;height:0;}
.seg-opt:has(input:checked){background:var(--color-accent);color:var(--color-bg);}
.tag{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.02em;padding:3px 10px;border-radius:0;}
.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent);}
.table{width:100%;border-collapse:collapse;font-size:14px;}
.table td{padding:var(--space-2);border-bottom:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);}
/* comp global */
body{font-family:"Zen Kaku Gothic New",var(--font-body);background:var(--color-bg);color:var(--color-text);}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{font-family:var(--font-heading);font-weight:var(--font-heading-weight);}
.entry-content a{color:var(--color-accent-700);text-decoration:none;}
.entry-content a:hover{color:var(--color-accent);}
details>summary{list-style:none;cursor:pointer;}
details>summary::-webkit-details-marker{display:none;}
details[open] .faq-mark{transform:rotate(45deg);}
/* Cocoon overrides */
#header,#navi,.navi,#footer,.footer,.footer-in,#sidebar,#breadcrumb,.breadcrumb,#pankuzi,.date-tags,.post-date,.post-update,.sns-share,.sns-follow,.footer-sns,.toc,.tt-header,.totsuka-fixed-cta{display:none!important;}
#main,.main{width:100%!important;float:none!important;margin:0 auto!important;}
.home .entry-title,.home .article-title{display:none!important;}
.home #content,.home .content,.home #main,.home .main,.home .entry-content,.home #container{max-width:none!important;width:100%!important;margin:0!important;padding:0!important;float:none!important;}
.home .entry-content>*{max-width:none;margin:0;}
.home article.article,.home .a-wrap,.home .main .article{margin:0!important;padding:0!important;border:0!important;}
body{padding-bottom:0;}


/* ===== B案ヘッダー ===== */
.tt-head2{position:sticky;top:0;z-index:60;background:var(--color-accent-900);color:var(--color-bg);}
.tt-head2-in{max-width:1400px;margin:0 auto;padding:10px clamp(16px,3vw,40px);display:flex;align-items:center;gap:clamp(14px,2.5vw,36px);}
.tt-logo2{display:flex;align-items:baseline;gap:10px;margin-right:auto;color:var(--color-bg);text-decoration:none;}
.tt-logo2 .ja{font-family:'Shippori Mincho',serif;font-weight:500;font-size:clamp(19px,2.2vw,23px);letter-spacing:.16em;}
.tt-logo2 .en{font-family:var(--font-heading);font-size:10px;letter-spacing:.24em;color:var(--color-accent-300);}
.tt-nav2{display:flex;gap:clamp(12px,1.6vw,24px);font-size:13px;letter-spacing:.08em;}
.tt-nav2 a{color:var(--color-accent-200);text-decoration:none;}
.tt-nav2 a:hover{color:#fff;}
.tt-tel2{display:flex;align-items:center;gap:10px;background:var(--color-bg);color:var(--color-accent-900);padding:9px 18px;text-decoration:none;}
.tt-tel2 .lbl{font-family:var(--font-heading);font-size:10px;letter-spacing:.16em;line-height:1.35;opacity:.7;}
.tt-tel2 .num{font-family:var(--font-heading);font-size:clamp(19px,2.2vw,24px);letter-spacing:.03em;}
.tt-burger{display:none;}
.tt-drawer{display:none;}
.btn-block{width:100%;}
@media(max-width:819px){
.tt-nav2,.tt-tel2{display:none;}
.tt-head2-in{padding:12px 16px;}
.tt-burger{display:grid;place-items:center;gap:5px;width:44px;height:44px;border:1px solid rgba(242,242,243,.4);cursor:pointer;color:var(--color-bg);background:transparent;}
.tt-burger span{display:block;width:20px;height:1px;background:currentColor;}
.tt-drawer-cb:checked ~ .tt-drawer{display:grid;border-top:1px solid rgba(242,242,243,.22);}
.tt-drawer a{padding:16px;font-size:15px;letter-spacing:.08em;color:var(--color-accent-200);border-bottom:1px solid rgba(242,242,243,.14);text-decoration:none;}
}


/* 戸塚：トップ フルワイド（page-id-6 / プレビュー・固定ページ両対応） */
body.tt-saijo #content,
body.tt-saijo .content,
body.tt-saijo #main,
body.tt-saijo .main,
body.tt-saijo .entry-content,
body.tt-saijo #container,
body.tt-saijo article,
body.tt-saijo .article{
  max-width:none!important;
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  float:none!important;
}
body.tt-saijo #content{display:block!important;}
body.tt-saijo #main{flex:none!important;}
body.tt-saijo .main-before,
body.tt-saijo .main-after{display:none!important;}


/* 戸塚：トップ フルワイド 追補（content-in.wrap がサイト幅を絞っている） */
body.tt-saijo #content-in,
body.tt-saijo .content-in.wrap,
body.tt-saijo .content-in{
  display:block!important;
  max-width:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.tt-saijo #main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  flex:none!important;
}
body.tt-saijo #sidebar{display:none!important;}


/* 戸塚：トップ Cocoonの見出し標準装飾（背景バンド/枠/余白）を除去。独自デザインの見出し色を活かす */
body.tt-saijo .entry-content h1,
body.tt-saijo .entry-content h2,
body.tt-saijo .entry-content h3,
body.tt-saijo .entry-content h4,
body.tt-saijo .entry-content h5,
body.tt-saijo .entry-content h6{
  background:transparent!important;
  border:none!important;
  border-left:none!important;
  border-bottom:none!important;
  box-shadow:none!important;
  padding:0!important;
  color:inherit!important;
}


/* 戸塚：お問い合わせフォーム（Contact Form 7）視認性・デザイン調整 */
body.tt-saijo .ttform-field{margin:0 0 22px;}
body.tt-saijo .ttform-label{display:block;color:#f2f2f3;font-size:14px;letter-spacing:.05em;margin:0 0 8px;font-weight:500;}
body.tt-saijo .wpcf7 .wpcf7-form-control-wrap{display:block;}
body.tt-saijo .wpcf7 input.wpcf7-text,
body.tt-saijo .wpcf7 input.wpcf7-tel,
body.tt-saijo .wpcf7 textarea.wpcf7-textarea{
  width:100%!important; box-sizing:border-box!important;
  background:#ffffff!important; color:#1d2d3d!important;
  border:1px solid #c9d2db!important; border-radius:0!important;
  padding:15px 16px!important; font-size:16px!important; line-height:1.5!important;
  box-shadow:none!important; -webkit-appearance:none!important;
}
body.tt-saijo .wpcf7 input::placeholder,
body.tt-saijo .wpcf7 textarea::placeholder{color:#9aa5ae!important;opacity:1!important;}
body.tt-saijo .wpcf7 input.wpcf7-text:focus,
body.tt-saijo .wpcf7 input.wpcf7-tel:focus,
body.tt-saijo .wpcf7 textarea.wpcf7-textarea:focus{
  border-color:#5980a6!important; outline:2px solid rgba(89,128,166,.4)!important; outline-offset:0!important;
}
/* radio: segmented pill style */
body.tt-saijo .ttform-seg .wpcf7-radio{display:flex;gap:10px;flex-wrap:wrap;}
body.tt-saijo .ttform-seg .wpcf7-list-item{margin:0!important;}
body.tt-saijo .ttform-seg .wpcf7-list-item label{
  display:inline-flex;align-items:center;gap:7px;cursor:pointer;
  color:#f2f2f3;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.28);padding:9px 16px;font-size:14px;letter-spacing:.03em;
}
body.tt-saijo .ttform-seg .wpcf7-list-item input[type=radio]{accent-color:#5980a6;margin:0;}
/* submit button */
body.tt-saijo .ttform-submit{margin:6px 0 0;}
body.tt-saijo .wpcf7 input.wpcf7-submit{
  display:block;width:100%;
  background:#5980a6!important;color:#ffffff!important;
  border:none!important;border-radius:0!important;
  padding:18px 24px!important;font-size:16px!important;letter-spacing:.1em!important;
  cursor:pointer;transition:background .2s;font-weight:500;
}
body.tt-saijo .wpcf7 input.wpcf7-submit:hover{background:#6f93b5!important;}
body.tt-saijo .ttform-note{color:rgba(242,242,243,.6);font-size:13px;line-height:1.7;margin:16px 0 0;}
/* validation / response text readable on dark */
body.tt-saijo .wpcf7 .wpcf7-not-valid-tip{color:#ffbcbc!important;font-size:13px!important;}
body.tt-saijo .wpcf7 form .wpcf7-response-output{color:#f2f2f3!important;border-color:rgba(255,255,255,.45)!important;margin:14px 0 0!important;}


/* 戸塚：高齢者向け 明るさ・暖色・可読性チューニング */
:root{
  --color-bg:#fbf8f3;
  --color-text:#2c2823;
  --color-divider:#e9e2d7;
  --color-accent:#5c7d97;
  --color-accent-200:#d6e2ea;
  --color-accent-300:#a6c1d0;
  --color-accent-600:#4a6c85;
  --color-accent-700:#3d6178;
  --color-accent-900:#2b3844;
  --color-neutral-400:#a79e93;
  --color-neutral-500:#847b71;
  --color-neutral-600:#6a6157;
  --color-neutral-700:#514940;
  --color-neutral-800:#3b342c;
  --color-neutral-900:#28231e;
}
body.tt-saijo{ background:var(--color-bg); }
body.tt-saijo p, body.tt-saijo li, body.tt-saijo dd{ letter-spacing:0.02em; }
body.tt-saijo .wpcf7 input.wpcf7-text,
body.tt-saijo .wpcf7 input.wpcf7-tel,
body.tt-saijo .wpcf7 textarea.wpcf7-textarea{ font-size:17px!important; }
body.tt-saijo .ttform-label{ font-size:16px; }
body.tt-saijo .wpcf7 .ttform-seg .wpcf7-list-item label{ font-size:15px; }


/* 戸塚：CTA刺し色(ゴールド)・メインビジュアル5枚スライド・下部管理パネル非表示 */
:root{ --color-cta:#c8912e; --color-cta-600:#b07e22; }
#admin-panel{ display:none!important; }

body.tt-saijo a.tt-cta{
  background:var(--color-cta)!important; color:#2a2012!important;
  border:1px solid var(--color-cta)!important; box-shadow:0 6px 18px rgba(200,145,46,0.30);
}
body.tt-saijo a.tt-cta:hover{ background:var(--color-cta-600)!important; border-color:var(--color-cta-600)!important; }
body.tt-saijo a.tt-cta span{ color:#2a2012!important; }
body.tt-saijo .wpcf7 input.wpcf7-submit{
  background:var(--color-cta)!important; color:#2a2012!important; box-shadow:0 6px 18px rgba(200,145,46,0.30);
}
body.tt-saijo .wpcf7 input.wpcf7-submit:hover{ background:var(--color-cta-600)!important; }

/* メインビジュアル：5枚クロスフェード */
.tt-hero-slides{ position:absolute; inset:0; background:#243039; overflow:hidden; }
.tt-hero-slides .tt-slide{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; animation:ttHeroFade 20s infinite; will-change:opacity; }
@keyframes ttHeroFade{ 0%{opacity:0;} 4%{opacity:1;} 17%{opacity:1;} 21%{opacity:0;} 100%{opacity:0;} }


/* 戸塚：ロゴ（メモリアルライフ 横浜市運営 ＋ 斎場名） */
.tt-head2 .tt-logo2{ display:flex!important; flex-direction:column!important; align-items:flex-start!important; gap:3px!important; line-height:1.15!important; }
.tt-head2 .tt-logo2 .tt-logo2-op{ font-family:var(--font-heading); font-size:11px; letter-spacing:0.14em; color:var(--color-accent-200); opacity:.95; }
.tt-head2 .tt-logo2 .ja{ font-size:clamp(20px,2.2vw,24px); letter-spacing:0.14em; }


/* 戸塚：カラーパレット刷新（小さなお葬式 参考／ティール＋コーラル） */
:root{
  --color-bg:#f7f4ee;
  --color-text:#333333;
  --color-divider:#e4ded3;
  --color-accent:#0a9cb1;
  --color-accent-200:#bfe2e8;
  --color-accent-300:#7fc6d2;
  --color-accent-600:#0a7f90;
  --color-accent-700:#0a7180;
  --color-accent-900:#0e4a54;
  --color-neutral-400:#a8a49c;
  --color-neutral-500:#8a857d;
  --color-neutral-600:#6c6862;
  --color-neutral-700:#54504a;
  --color-neutral-800:#3a3833;
  --color-neutral-900:#2a2824;
  --color-cta:#f15c5c;
  --color-cta-600:#e04a4a;
}
/* CTA(コーラル)は白文字に */
body.tt-saijo a.tt-cta,
body.tt-saijo a.tt-cta span{ color:#ffffff!important; }
body.tt-saijo .wpcf7 input.wpcf7-submit{ color:#ffffff!important; }
body.tt-saijo .wpcf7 input.wpcf7-submit{ box-shadow:0 6px 18px rgba(241,92,92,0.30); }
body.tt-saijo a.tt-cta{ box-shadow:0 6px 18px rgba(241,92,92,0.30); }
/* 人気No.1バッジも白文字に */
body.tt-saijo .blueprint > span[style*="position:absolute"]{ color:#ffffff!important; }


/* 戸塚：メインカラーを #009db3 に（明るいティール） */
:root{
  --color-accent:#009db3;
  --color-accent-600:#0090a4;
  --color-accent-700:#017e8f;
  --color-accent-900:#009db3;
}
/* ヘッダー（明るいティール地）のナビ・ロゴ補助を白文字に */
.tt-head2 .tt-nav2 a{ color:#ffffff!important; }
.tt-head2 .tt-logo2 .ja{ color:#ffffff!important; }
.tt-head2 .tt-logo2 .tt-logo2-op{ color:#ffffff!important; opacity:.92; }
/* 明るいティール地セクションの文字を白で可読性確保 */
body.tt-saijo #emergency p,
body.tt-saijo #emergency span,
body.tt-saijo #emergency h3,
body.tt-saijo #contact > div > div > p{ color:#ffffff!important; }


/* 戸塚：ヘッダー調整・実績バー配色・SPヒーロー文字調整 */
.tt-head2 .tt-nav2 a{ font-size:15px!important; }
.tt-head2 .tt-tel2{ background:var(--color-cta)!important; border-color:var(--color-cta)!important; }
.tt-head2 .tt-tel2, .tt-head2 .tt-tel2 *{ color:#ffffff!important; }
.tt-head2 .tt-tel2:hover{ background:var(--color-cta-600)!important; }
body.tt-saijo #stats dt, body.tt-saijo #stats dd, body.tt-saijo #stats dd span{ color:var(--color-accent)!important; }
@media (max-width:640px){
  body.tt-saijo #top{ min-height:68vh!important; }
  body.tt-saijo #top h1{ font-size:26px!important; line-height:1.35!important; margin-bottom:8px!important; }
  body.tt-saijo #top > div:last-child > p:nth-of-type(1){ font-size:10.5px!important; letter-spacing:0.10em!important; margin-bottom:12px!important; }
  body.tt-saijo #top > div:last-child > p:nth-of-type(2){ font-size:16px!important; margin-bottom:12px!important; }
  body.tt-saijo #top > div:last-child > p:nth-of-type(3){ font-size:13px!important; line-height:1.85!important; margin-bottom:20px!important; }
  body.tt-saijo #top .tt-cta{ min-height:52px!important; }
}


/* 戸塚：ハンバーガー線幅を細く・SP固定フッター電話をピンクに */
.tt-head2 .tt-burger span{ width:18px!important; margin-left:auto!important; margin-right:auto!important; }
.tt-mbar a[href^="tel"]{ background:var(--color-cta)!important; }
.tt-mbar a[href^="tel"], .tt-mbar a[href^="tel"] *{ color:#ffffff!important; }


/* 戸塚：「横浜市戸塚斎場とは」右カラム(表)の高さを左に揃えて自然に */
body.tt-saijo #about > div{ align-items:stretch!important; }
body.tt-saijo #about > div > div:last-child{ grid-auto-rows:1fr!important; }
body.tt-saijo #about > div > div:last-child > div{ display:flex!important; flex-direction:column!important; justify-content:center!important; }


/* 戸塚：CTA/ボタンに ○＞ アイコン（小さなお葬式風） */
body.tt-saijo a.tt-cta,
body.tt-saijo a.btn-secondary,
body.tt-saijo #top a[href="#price"]{ position:relative!important; padding-right:56px!important; }
body.tt-saijo a.tt-cta::after,
body.tt-saijo a.btn-secondary::after,
body.tt-saijo #top a[href="#price"]::after{
  content:''; position:absolute; right:16px; top:50%; transform:translateY(-50%);
  width:21px; height:21px; background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='none' stroke='%23000' stroke-width='1.6'/><path d='M10.5 8L14.5 12L10.5 16' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat; mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='none' stroke='%23000' stroke-width='1.6'/><path d='M10.5 8L14.5 12L10.5 16' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat; pointer-events:none;
}
/* CF7送信ボタン（inputは疑似要素不可のため背景画像で） */
body.tt-saijo .wpcf7 input.wpcf7-submit{
  background-color:var(--color-cta)!important;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='none' stroke='%23fff' stroke-width='1.6'/><path d='M10.5 8L14.5 12L10.5 16' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>")!important;
  background-repeat:no-repeat!important;
  background-position:right 20px center!important;
  background-size:21px 21px!important;
  padding-right:56px!important;
}
/* ヘッダー電話CTAの「24時間受付」を白の角丸バッジに */
body .tt-head2 .tt-tel2 .lbl{
  background:#ffffff!important; color:var(--color-accent-900)!important;
  border-radius:8px!important; padding:4px 8px!important; line-height:1.2!important;
  display:inline-block!important; font-weight:600;
}


/* ============ 戸塚：デザイン品質アップ（装飾・アイコン・質感） ============ */

/* 共通トランジション */
body.tt-saijo a, body.tt-saijo .blueprint, body.tt-saijo #flow li, body.tt-saijo .wpcf7 input, body.tt-saijo .wpcf7 textarea{ transition:transform .25s ease, box-shadow .25s ease, background-color .2s ease, border-color .2s ease !important; }

/* カード（プラン・お客様の声）を柔らかい高級感に */
body.tt-saijo .blueprint{
  border-radius:16px !important;
  background:#ffffff !important;
  border:1px solid rgba(14,74,84,.07) !important;
  box-shadow:0 6px 22px rgba(14,74,84,.08), 0 2px 6px rgba(0,0,0,.03) !important;
}
body.tt-saijo .blueprint:hover{ transform:translateY(-5px) !important; box-shadow:0 16px 38px rgba(14,74,84,.14) !important; }
body.tt-saijo .blueprint .corner{ display:none !important; }
body.tt-saijo .blueprint > div[style*="aspect-ratio"]{ border-radius:11px !important; }

/* 画像に丸み */
body.tt-saijo #about > div > div:first-child > div[style*="aspect-ratio"],
body.tt-saijo #reason [style*="aspect-ratio"]{ border-radius:14px !important; overflow:hidden !important; box-shadow:0 6px 20px rgba(14,74,84,.10) !important; }

/* 流れカード */
body.tt-saijo #flow li{ border-radius:16px !important; overflow:hidden !important; border:1px solid rgba(14,74,84,.07) !important; box-shadow:0 5px 18px rgba(14,74,84,.07) !important; }
body.tt-saijo #flow li:hover{ transform:translateY(-4px) !important; box-shadow:0 14px 32px rgba(14,74,84,.13) !important; }

/* 情報ボックス（とは・アクセス）に丸みと影 */
body.tt-saijo #about > div > div:last-child,
body.tt-saijo #access dl{ border-radius:16px !important; overflow:hidden !important; box-shadow:0 5px 18px rgba(14,74,84,.07) !important; }

/* ボタン：角丸・ホバー・影 */
body.tt-saijo a.tt-cta, body.tt-saijo a.btn-secondary, body.tt-saijo #top a[href="#price"], body.tt-saijo .wpcf7 input.wpcf7-submit{ border-radius:12px !important; }
body.tt-saijo a.tt-cta:hover, body.tt-saijo .wpcf7 input.wpcf7-submit:hover{ transform:translateY(-2px) !important; box-shadow:0 12px 26px rgba(241,92,92,.34) !important; }
body.tt-saijo a.btn-secondary:hover, body.tt-saijo #top a[href="#price"]:hover{ transform:translateY(-2px) !important; }

/* フォーム入力：角丸・フォーカス */
body.tt-saijo .wpcf7 input.wpcf7-text, body.tt-saijo .wpcf7 input.wpcf7-tel, body.tt-saijo .wpcf7 textarea.wpcf7-textarea{ border-radius:12px !important; }
body.tt-saijo .wpcf7 input.wpcf7-text:focus, body.tt-saijo .wpcf7 input.wpcf7-tel:focus, body.tt-saijo .wpcf7 textarea.wpcf7-textarea:focus{ box-shadow:0 0 0 4px rgba(0,157,179,.18) !important; }

/* FAQ：カード化・洗練 */
body.tt-saijo #faq details{ border-top:none !important; background:#ffffff !important; border:1px solid rgba(14,74,84,.08) !important; border-radius:14px !important; margin:0 0 12px !important; padding:0 20px !important; box-shadow:0 3px 12px rgba(14,74,84,.05) !important; }
body.tt-saijo #faq details[open]{ box-shadow:0 8px 22px rgba(14,74,84,.10) !important; }
body.tt-saijo #faq summary{ padding:18px 0 !important; }

/* 見出しの装飾アクセント（コーラルの短い下線） */
body.tt-saijo section h2::after{ content:''; display:block; width:46px; height:4px; border-radius:3px; background:var(--color-cta); margin-top:16px; }

/* 実績バーにアイコン */
body.tt-saijo #stats dl > div::before{ content:''; display:block; width:26px; height:26px; margin:0 0 10px; background-color:var(--color-accent); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; -webkit-mask-position:left center; mask-position:left center; }
body.tt-saijo #stats dl > div:nth-child(1)::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='%23000' stroke-width='1.8'/><path d='M12 7v5l3 2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='%23000' stroke-width='1.8'/><path d='M12 7v5l3 2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
body.tt-saijo #stats dl > div:nth-child(2)::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 13.5 7 5M12 13.5 17 5M12 13.5V20M8 14h8M8 17h8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 13.5 7 5M12 13.5 17 5M12 13.5V20M8 14h8M8 17h8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
body.tt-saijo #stats dl > div:nth-child(3)::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 11l1.6-4.6A2 2 0 0 1 8.5 5h7a2 2 0 0 1 1.9 1.4L19 11m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 11l1.6-4.6A2 2 0 0 1 8.5 5h7a2 2 0 0 1 1.9 1.4L19 11m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>"); }
body.tt-saijo #stats dl > div:nth-child(4)::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20s-7-4.4-7-9.5A3.5 3.5 0 0 1 12 6a3.5 3.5 0 0 1 7 4.5C19 15.6 12 20 12 20z' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20s-7-4.4-7-9.5A3.5 3.5 0 0 1 12 6a3.5 3.5 0 0 1 7 4.5C19 15.6 12 20 12 20z' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/></svg>"); }

/* アクセスの各項目にアイコン */
body.tt-saijo #access dl dt{ display:flex; align-items:center; gap:7px; }
body.tt-saijo #access dl > div:nth-child(1) dt::before,
body.tt-saijo #access dl > div:nth-child(2) dt::before,
body.tt-saijo #access dl > div:nth-child(3) dt::before{ content:''; width:16px; height:16px; background-color:var(--color-accent); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; }
body.tt-saijo #access dl > div:nth-child(1) dt::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-6-5.3-6-10a6 6 0 0 1 12 0c0 4.7-6 10-6 10z' fill='none' stroke='%23000' stroke-width='1.7' stroke-linejoin='round'/><circle cx='12' cy='11' r='2.2' fill='none' stroke='%23000' stroke-width='1.7'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 21s-6-5.3-6-10a6 6 0 0 1 12 0c0 4.7-6 10-6 10z' fill='none' stroke='%23000' stroke-width='1.7' stroke-linejoin='round'/><circle cx='12' cy='11' r='2.2' fill='none' stroke='%23000' stroke-width='1.7'/></svg>"); }
body.tt-saijo #access dl > div:nth-child(2) dt::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect x='6' y='3.5' width='12' height='13' rx='3' fill='none' stroke='%23000' stroke-width='1.7'/><path d='M6 10h12M9 20l-1.5 1.5M15 20l1.5 1.5' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/><circle cx='9' cy='13.3' r='1' fill='%23000'/><circle cx='15' cy='13.3' r='1' fill='%23000'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect x='6' y='3.5' width='12' height='13' rx='3' fill='none' stroke='%23000' stroke-width='1.7'/><path d='M6 10h12M9 20l-1.5 1.5M15 20l1.5 1.5' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/><circle cx='9' cy='13.3' r='1' fill='%23000'/><circle cx='15' cy='13.3' r='1' fill='%23000'/></svg>"); }
body.tt-saijo #access dl > div:nth-child(3) dt::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 11l1.6-4.6A2 2 0 0 1 8.5 5h7a2 2 0 0 1 1.9 1.4L19 11m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 11l1.6-4.6A2 2 0 0 1 8.5 5h7a2 2 0 0 1 1.9 1.4L19 11m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>"); }

/* ヘッダー電話：意味のある電話ウィジェットに（白カード＋電話アイコン＋番号） */
body .tt-head2 .tt-tel2{ background:#ffffff !important; border:none !important; border-radius:14px !important; padding:7px 16px 7px 9px !important; gap:11px !important; box-shadow:0 4px 16px rgba(0,0,0,.18) !important; display:flex !important; align-items:center !important; }
body .tt-head2 .tt-tel2::before{ content:''; width:36px; height:36px; flex:0 0 auto; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><circle cx='20' cy='20' r='20' fill='%23f15c5c'/><path d='M15.4 13.2c1.2 2.4 3 4.2 5.4 5.4l1.8-1.8c.25-.25.6-.32.9-.2 1 .34 2.05.52 3.1.52.5 0 .9.4.9.9v2.9c0 .5-.4.9-.9.9C18.9 22.7 12 15.8 12 7.4c0-.5.4-.9.9-.9h2.9c.5 0 .9.4.9.9 0 1.1.18 2.1.52 3.1.1.3.04.65-.2.9z' fill='%23fff'/></svg>") center/contain no-repeat; }
body .tt-head2 .tt-tel2 .lbl{ background:transparent !important; color:var(--color-neutral-600) !important; font-size:10px !important; padding:0 !important; border-radius:0 !important; letter-spacing:.05em !important; line-height:1.3 !important; font-weight:700 !important; }
body .tt-head2 .tt-tel2 .num{ color:var(--color-cta) !important; font-weight:700 !important; }


/* 戸塚：安心ポイント（トラストストリップ）のアイコン・ホバー */
body.tt-saijo .tt-trust-ic{ width:68px; height:68px; margin:0 auto 18px; border-radius:50%; background:rgba(0,157,179,.10); display:flex; align-items:center; justify-content:center; }
body.tt-saijo .tt-trust-ic::before{ content:''; width:32px; height:32px; background-color:var(--color-accent); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-size:contain; mask-size:contain; -webkit-mask-position:center; mask-position:center; }
body.tt-saijo .tt-trust-card:nth-child(1) .tt-trust-ic::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 3l7 3v5c0 4.5-3 8.3-7 9.5C8 19.3 5 15.5 5 11V6z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><path d='M8.8 12l2.2 2.2L15.4 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 3l7 3v5c0 4.5-3 8.3-7 9.5C8 19.3 5 15.5 5 11V6z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><path d='M8.8 12l2.2 2.2L15.4 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
body.tt-saijo .tt-trust-card:nth-child(2) .tt-trust-ic::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 13.5 7 5M12 13.5 17 5M12 13.5V20M8 14h8M8 17h8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 13.5 7 5M12 13.5 17 5M12 13.5V20M8 14h8M8 17h8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
body.tt-saijo .tt-trust-card:nth-child(3) .tt-trust-ic::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='%23000' stroke-width='1.8'/><path d='M12 7v5l3 2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='%23000' stroke-width='1.8'/><path d='M12 7v5l3 2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>"); }
body.tt-saijo .tt-trust-card:nth-child(4) .tt-trust-ic::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20s-7-4.4-7-9.5A3.5 3.5 0 0 1 12 6a3.5 3.5 0 0 1 7 4.5C19 15.6 12 20 12 20z' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20s-7-4.4-7-9.5A3.5 3.5 0 0 1 12 6a3.5 3.5 0 0 1 7 4.5C19 15.6 12 20 12 20z' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/></svg>"); }
body.tt-saijo .tt-trust-card{ transition:transform .25s ease, box-shadow .25s ease; }
body.tt-saijo .tt-trust-card:hover{ transform:translateY(-5px); box-shadow:0 16px 36px rgba(14,74,84,.13); }


/* 戸塚：ヘッダー電話ウィジェットのホバーを白のまま浮き上がりに（可読性確保） */
body .tt-head2 .tt-tel2:hover{
  background:#ffffff !important;
  box-shadow:0 9px 24px rgba(0,0,0,.26) !important;
  transform:translateY(-1px) !important;
}
body .tt-head2 .tt-tel2:hover .num{ color:var(--color-cta-600) !important; }


/* 戸塚：Cocoonの固定ページタイトル見出し（独自ヒーローと重複）を全ページで非表示 */
body.tt-saijo .entry-header,
body.tt-saijo .article-header,
body.tt-saijo .entry-title{ display:none !important; }



/* === ヘッダー電話ボタン修正 (2026-08) === */
/* SP: PCヘッダーの電話ウィジェットを非表示（下部固定バーの電話を使用） */
@media(max-width:819px){
  body .tt-head2 .tt-tel2{ display:none !important; }
}
/* PC: 電話アイコンを円の中心にきちんと配置し直す */
body .tt-head2 .tt-tel2::before{
  content:"" !important;
  width:40px !important; height:40px !important; flex:0 0 auto !important;
  border-radius:0 !important; -webkit-mask:none !important; mask:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23f15c5c'/%3E%3Cg transform='translate(8,8)'%3E%3Cpath fill='%23ffffff' d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size:contain !important; background-position:50% 50% !important; background-repeat:no-repeat !important;
}


/* === SP メインビジュアル：文字を画像の下に配置 (2026-08) === */
@media(max-width:640px){
  #top{ display:block !important; min-height:0 !important; }
  #top > div:first-child{ position:relative !important; height:210px !important; }
  #top > div:last-child{ position:static !important; align-self:auto !important; background:linear-gradient(160deg,#0e4a54 0%,#082e37 100%) !important; padding:26px 20px 32px !important; }
}


/* === トップ 葬儀プランを home-plan グリッド（SPは1列） === */
@media(max-width:640px){ #home-plan .hp-grid{ grid-template-columns:1fr !important; } }


/* === プランカードは2列、SPは1列（tt-plan-grid SP1列） === */
@media(max-width:640px){ .tt-plan-grid{ grid-template-columns:1fr !important; } }


/* === お急ぎナビ＋固定フッター (2026-08) === */
.tt-nav2 .tt-urgent > a{ background:linear-gradient(135deg,#e8a13a,#d4881c); color:#fff !important; border-radius:10px; padding:9px 18px !important; font-weight:800; box-shadow:0 6px 16px rgba(212,136,28,.3); }
.tt-nav2 .tt-urgent > a::after{ display:none !important; }
.tt-nav2 .tt-urgent:hover > a{ background:linear-gradient(135deg,#d4881c,#b8720f); opacity:1; }
.tt-mbar{ display:flex !important; align-items:stretch; }
.tt-mbar .tt-mbar-urgent{ display:flex !important; align-items:center; justify-content:center; gap:6px; background:linear-gradient(135deg,#e8a13a,#d4881c); color:#fff !important; font-weight:800; text-decoration:none; flex:1; }
body{ padding-bottom:64px; }
@media(min-width:820px){
  .tt-mbar{ justify-content:center; gap:14px; padding:9px 16px; }
  .tt-mbar > a{ flex:0 1 300px !important; border-radius:12px; }
}
@media(max-width:640px){ .tt-mbar > a:last-child{ display:none !important; } }


/* === 固定フッター詳細度上書き === */
body.tt-saijo .tt-mbar{ display:flex !important; }
@media(min-width:820px){ body.tt-saijo .tt-mbar{ justify-content:center; gap:14px; padding:9px 16px; } body.tt-saijo .tt-mbar > a{ flex:0 1 300px !important; border-radius:12px; } }
@media(max-width:640px){ body.tt-saijo .tt-mbar > a:last-child{ display:none !important; } }

/* フッター余白調整88 */
body.tt-saijo{ padding-bottom:88px !important; }



/* === 固定フッター 2トーン再デザイン v3 (2026-08) === */
body.tt-saijo .tt-mbar{
  --ico-alert:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E");
  --ico-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E");
  display:flex !important; align-items:stretch; gap:12px;
  background:#fff !important; box-shadow:0 -6px 24px rgba(14,60,68,.16) !important;
  border-top:1px solid rgba(0,0,0,.06) !important; padding:9px 12px !important;
}
@media(min-width:820px){
  body.tt-saijo .tt-mbar{ justify-content:center; gap:16px; padding:10px 16px !important; }
  body.tt-saijo .tt-mbar a.tt-mbar-btn{ flex:0 1 320px !important; }
}
@media(max-width:819px){ body.tt-saijo .tt-mbar a.tt-mbar-btn{ flex:1 1 0 !important; } }

/* ボタン（カード：上白／下カラー） */
body.tt-saijo .tt-mbar a.tt-mbar-btn{
  display:flex !important; flex-direction:column !important; padding:0 !important;
  background:#fff !important; border-radius:13px !important; overflow:hidden;
  min-height:0 !important; text-decoration:none !important;
  box-shadow:0 8px 22px rgba(14,60,68,.18) !important; border:1px solid rgba(0,0,0,.05);
  transition:transform .15s ease, box-shadow .15s ease;
}
body.tt-saijo .tt-mbar a.tt-mbar-btn:hover{ transform:translateY(-2px); opacity:1 !important; box-shadow:0 13px 30px rgba(14,60,68,.26) !important; }
body.tt-saijo .tt-mbar a.tt-mbar-btn .cap{
  background:#fff; text-align:center; font-size:11.5px; font-weight:700; letter-spacing:.02em;
  padding:5px 8px 4px; line-height:1.3; white-space:nowrap;
}
body.tt-saijo .tt-mbar a.tt-mbar-btn .main{
  display:flex; align-items:center; justify-content:center; gap:8px;
  padding:9px 10px; color:#fff !important; font-weight:800; font-size:18px; letter-spacing:.02em; line-height:1.2;
}
body.tt-saijo .tt-mbar a.tt-mbar-btn .main .ic{ width:22px; height:22px; background:#fff; flex:0 0 auto; }
body.tt-saijo .tt-mbar a.tt-mbar-btn .ic-alert{ -webkit-mask:var(--ico-alert) center/contain no-repeat; mask:var(--ico-alert) center/contain no-repeat; }
body.tt-saijo .tt-mbar a.tt-mbar-btn .ic-phone{ -webkit-mask:var(--ico-phone) center/contain no-repeat; mask:var(--ico-phone) center/contain no-repeat; }
/* お急ぎ：ゴールド */
body.tt-saijo .tt-mbar a.tt-mbar-urgent .cap{ color:#c17d12; }
body.tt-saijo .tt-mbar a.tt-mbar-urgent .main{ background:linear-gradient(135deg,#f4ab3c 0%,#e08a15 100%); }
/* 電話：コーラル */
body.tt-saijo .tt-mbar a.tt-mbar-tel .cap{ color:#d0453f; }
body.tt-saijo .tt-mbar a.tt-mbar-tel .main{ background:linear-gradient(135deg,#f15c5c 0%,#d94a4a 100%); font-size:20px; }

/* --- グロナビ お急ぎ（アンバー・アイコン付き・上品に） --- */
body .tt-nav2 .tt-urgent > a{
  display:inline-flex !important; align-items:center; gap:7px;
  background:linear-gradient(135deg,#f4ab3c,#e08a15) !important; color:#fff !important;
  border-radius:11px !important; padding:9px 16px 9px 13px !important; font-weight:800 !important;
  box-shadow:0 6px 16px rgba(224,138,21,.34) !important;
}
body .tt-nav2 .tt-urgent > a::after{ display:none !important; }
body .tt-nav2 .tt-urgent > a::before{
  content:""; width:18px; height:18px; flex:0 0 auto; background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E") center/contain no-repeat;
}
body .tt-nav2 .tt-urgent:hover > a{ background:linear-gradient(135deg,#e69a24,#c9790d) !important; box-shadow:0 8px 20px rgba(224,138,21,.44) !important; transform:translateY(-1px); }

/* === 固定フッター背景色 === */
body.tt-saijo .tt-mbar{ background:linear-gradient(180deg,#0e4a54 0%,#0a3a43 100%) !important; box-shadow:0 -6px 26px rgba(0,0,0,.3) !important; border-top:none !important; }

/* === フッターキャプション色を確実に === */
body.tt-saijo .tt-mbar a.tt-mbar-btn span.cap{ color:#3a352e !important; }
body.tt-saijo .tt-mbar a.tt-mbar-urgent span.cap{ color:#b8730f !important; }
body.tt-saijo .tt-mbar a.tt-mbar-tel span.cap{ color:#c0392f !important; }



/* === ヘッダーCTA 2トーン統一 (2026-08) === */
body.tt-saijo{
  --ico-alert:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E");
  --ico-phone:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E");
}
/* 共通の見た目（カード・キャップ・メイン） */
body .tt-nav2 .tt-urgent > a{
  display:flex !important; flex-direction:column !important; padding:0 !important; gap:0 !important;
  background:#fff !important; border-radius:11px !important; overflow:hidden !important;
  box-shadow:0 6px 16px rgba(0,0,0,.2) !important; text-decoration:none !important; border:none !important; min-height:0 !important;
  transition:transform .15s ease, box-shadow .15s ease;
}
body .tt-nav2 .tt-urgent > a::before, body .tt-nav2 .tt-urgent > a::after{ display:none !important; }
body .tt-head2 .tt-tel2::before{ display:none !important; }
body .tt-head2 .tt-tel2 .cap, body .tt-nav2 .tt-urgent .cap{
  background:#fff !important; text-align:center; font-size:10px; font-weight:700; letter-spacing:.01em;
  padding:3px 12px 2px !important; white-space:nowrap; line-height:1.3; display:block;
}
body .tt-head2 .tt-tel2 .main, body .tt-nav2 .tt-urgent .main{
  display:flex !important; align-items:center; justify-content:center; gap:6px;
  padding:6px 14px !important; color:#fff !important; font-weight:800 !important; line-height:1.2;
}
body .tt-head2 .tt-tel2 .main .ic, body .tt-nav2 .tt-urgent .main .ic{ width:17px; height:17px; background:#fff; flex:0 0 auto; }
body .tt-head2 .tt-tel2 .ic-phone, body .tt-nav2 .tt-urgent .ic-phone{ -webkit-mask:var(--ico-phone) center/contain no-repeat; mask:var(--ico-phone) center/contain no-repeat; }
body .tt-head2 .tt-tel2 .ic-alert, body .tt-nav2 .tt-urgent .ic-alert{ -webkit-mask:var(--ico-alert) center/contain no-repeat; mask:var(--ico-alert) center/contain no-repeat; }
/* お急ぎ：ゴールド */
body .tt-nav2 .tt-urgent .cap{ color:#b8730f !important; }
body .tt-nav2 .tt-urgent .main{ background:linear-gradient(135deg,#f4ab3c,#e08a15) !important; font-size:15px !important; }
/* 電話：コーラル */
body .tt-head2 .tt-tel2 .cap{ color:#c0392f !important; }
body .tt-head2 .tt-tel2 .main{ background:linear-gradient(135deg,#f15c5c,#d94a4a) !important; font-size:18px !important; letter-spacing:.02em; }
body .tt-nav2 .tt-urgent > a:hover{ transform:translateY(-1px); box-shadow:0 9px 22px rgba(0,0,0,.26) !important; opacity:1 !important; }
/* ヘッダー電話はPCのみ2トーンで表示（SPは下部固定バーを使用＝非表示のまま） */
@media(min-width:820px){
  body .tt-head2 .tt-tel2{
    display:flex !important; flex-direction:column !important; padding:0 !important; gap:0 !important;
    background:#fff !important; border-radius:11px !important; overflow:hidden !important;
    box-shadow:0 6px 16px rgba(0,0,0,.2) !important; text-decoration:none !important; border:none !important; min-height:0 !important;
    transition:transform .15s ease, box-shadow .15s ease;
  }
  body .tt-head2 .tt-tel2:hover{ transform:translateY(-1px); box-shadow:0 9px 22px rgba(0,0,0,.26) !important; }
}

/* === 2トーン角丸バグ修正 === */
body .tt-nav2 .tt-urgent .cap, body .tt-head2 .tt-tel2 .cap{ border-radius:11px 11px 0 0 !important; }
body .tt-nav2 .tt-urgent .main, body .tt-head2 .tt-tel2 .main{ border-radius:0 0 11px 11px !important; }
body.tt-saijo .tt-mbar a.tt-mbar-btn .cap{ border-radius:13px 13px 0 0 !important; }
body.tt-saijo .tt-mbar a.tt-mbar-btn .main{ border-radius:0 0 13px 13px !important; }
body .tt-nav2 .tt-urgent > a, body .tt-head2 .tt-tel2, body.tt-saijo .tt-mbar a.tt-mbar-btn{ background:transparent !important; }


/* === 2トーンボタン 2トーン幅ズレ修正v2 (2026-08) === */
body .tt-nav2 .tt-urgent > a, body .tt-head2 .tt-tel2, body.tt-saijo .tt-mbar a.tt-mbar-btn{align-items:stretch !important;}
body .tt-nav2 .tt-urgent .cap, body .tt-nav2 .tt-urgent .main, body .tt-head2 .tt-tel2 .cap, body .tt-head2 .tt-tel2 .main, body.tt-saijo .tt-mbar a.tt-mbar-btn .cap, body.tt-saijo .tt-mbar a.tt-mbar-btn .main{width:100% !important;box-sizing:border-box !important;align-self:stretch !important;}


/* === 2トーン上下隙間修正 (2026-08) === */
body.tt-saijo .tt-mbar a.tt-mbar-btn, body .tt-nav2 .tt-urgent > a, body .tt-head2 .tt-tel2{justify-content:flex-start !important;row-gap:0 !important;}
body.tt-saijo .tt-mbar a.tt-mbar-btn .main, body .tt-nav2 .tt-urgent .main, body .tt-head2 .tt-tel2 .main{flex:1 1 auto !important;}


/* === サイト内CTA 2トーン統一 .tt-cta2 (2026-08) === */
body.tt-saijo .tt-cta2{display:inline-flex;flex-direction:column;align-items:stretch;border-radius:14px;overflow:hidden;text-decoration:none;background:transparent;box-shadow:0 12px 30px rgba(0,0,0,.18);min-width:300px;transition:transform .15s ease,box-shadow .15s ease}
body.tt-saijo .tt-cta2:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(0,0,0,.26);opacity:1 !important}
body.tt-saijo .tt-cta2 .cap{display:block;background:#fff;text-align:center;font-size:13px;font-weight:700;letter-spacing:.02em;padding:8px 18px 7px;line-height:1.3;white-space:nowrap;border-radius:14px 14px 0 0;width:100%;box-sizing:border-box}
body.tt-saijo .tt-cta2 .main{display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 26px;color:#fff !important;font-weight:800;font-size:26px;letter-spacing:.02em;line-height:1.15;border-radius:0 0 14px 14px;width:100%;box-sizing:border-box;flex:1 1 auto}
body.tt-saijo .tt-cta2 .main .ic{width:26px;height:26px;background:#fff;flex:0 0 auto}
body.tt-saijo .tt-cta2 .ic-phone{-webkit-mask:var(--ico-phone) center/contain no-repeat;mask:var(--ico-phone) center/contain no-repeat}
body.tt-saijo .tt-cta2 .ic-alert{-webkit-mask:var(--ico-alert) center/contain no-repeat;mask:var(--ico-alert) center/contain no-repeat}
body.tt-saijo .tt-cta2--tel .cap{color:#c0392f}
body.tt-saijo .tt-cta2--tel .main{background:linear-gradient(135deg,#f15c5c,#d94a4a)}
body.tt-saijo .tt-cta2--urgent .cap{color:#b8730f}
body.tt-saijo .tt-cta2--urgent .main{background:linear-gradient(135deg,#f4ab3c,#e08a15)}
body.tt-saijo .tt-cta2--lg .main{font-size:30px}
@media(max-width:640px){body.tt-saijo .tt-cta2{min-width:0;width:100%}body.tt-saijo .tt-cta2 .cap{white-space:normal}body.tt-saijo .tt-cta2--lg .main{font-size:24px}body.tt-saijo .tt-cta2 .main{font-size:22px}}


/* === #emergency等ID指定の白文字がCTAキャプションを消す問題の修正 (2026-08) === */
body.tt-saijo #emergency .tt-cta2--tel .cap{color:#c0392f !important}
body.tt-saijo #emergency .tt-cta2--urgent .cap{color:#b8730f !important}
body.tt-saijo .tt-cta2--tel .cap{color:#c0392f !important}
body.tt-saijo .tt-cta2--urgent .cap{color:#b8730f !important}


/* === 横浜市ロゴをサイトロゴ左に配置 (2026-08) === */
body.tt-saijo .tt-logo2{display:grid !important;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px}
body.tt-saijo .tt-logo2 .tt-citylogo{grid-column:1;grid-row:1 / span 2;height:44px;width:auto;align-self:center;display:block}
body.tt-saijo .tt-logo2 .tt-logo2-op{grid-column:2;grid-row:1}
body.tt-saijo .tt-logo2 .ja{grid-column:2;grid-row:2}
@media(max-width:640px){body.tt-saijo .tt-logo2{column-gap:8px}body.tt-saijo .tt-logo2 .tt-citylogo{height:34px}}


/* === ロゴ調整27px＋フッターロゴ (2026-08) === */
body.tt-saijo .tt-logo2 .tt-citylogo{height:27px !important}
body.tt-saijo .footer-bottom-logo .site-name-text-link{display:inline-flex !important;align-items:center;gap:10px}
body.tt-saijo .footer-bottom-logo .site-name-text-link::before{content:"";display:inline-block;width:86px;height:27px;background:url("data:image/webp;base64,UklGRuoEAABXRUJQVlA4WAoAAAAwAAAARQAAFQAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZBTFBIEwIAAAWQtG27GidvdVXkFHdIcIfTFS4Z5AecwR0SZFlJsJ0luM9Vd80/YOqy9BV6iu9KirtMrN51RDBw20hR9vgWMkuPwHCVJhV07/wz8Cxd/QD8cN1Ac/FMVzBlOy6fGVCW5FIU7YORhpbD7T4Qwp3vBFYEPxm3BBOMnkm+htdHwgA2Z89A6jUvUjjQLOsBmQYsS6dBIhCBUiS5jnQ5qiemZQeQc+q7yyH+/lFUHn7tQ7rgMtAMWbdMFeDNlSZL91HmopezF8CP1vgIrc8Wcf6Cg6oDmiBrEtWam0Ep0RNd+QXJiYw6L5bpYdXJz12Fj0bGevj9ce6BMQmhJgBUZc3UbVOphDOMSDRuhwClAJMUv1O5Hd/5K2pygm/Hfun8EivEp4aAsMQzBMIqOTSkM8PSFUhM4ZWRMLyO3gK94dNvAuBkCMJzwEIlq4QkcsiVTI+CqkfByWdncSQ8pPfmZVFoLUy5G6hgUJjEBQvEgcvMdUGGP73Pkjfz+6kcx0CmckAVTDWDMJELzy3i7T5f+lJR+IhfRarkMhC5qotWRaWZXml4X0RJYlH9NNuDUIXEMDVM63lzhk4UM11uNkxddUh8DzPYi5V3LRX5+10rzw9DbdYqiS5rZthQLaUZYOk8yVmRFZEcvdwF8NAoHR/ZBfyXKm0m3LNmiSVwt43dgDOJSWXvNoJ1OSJONXZgwFNMGdn/DsN/AgBWUDgg4AAAAPAGAJ0BKkYAFgA+bTKVR6QioiEptVkggA2JaADQv9bsA4e505ZIB6AHlRewv+yfo5//8A9InZ3bhRMb+duw7EAA/vHcf+3MbPxv862L/Ac9681ZkCrVv8i4/n/8kNv/nYwHsuM/odf2HzlvVp5/H7373wyY/nU9T99T7Y7MZH1YhO7iwmZZWc8NgkBu2OUP5fHfbHaqJHfb7XrYJxSEm4tf6wHxKXa75afA/VdEjHSTnWu7AWkicR7fj0nGMqxjT/BjH2yC8I9K6R+g/6jq9eBXxxAetcRa17irgQgAAAAA") left center/contain no-repeat;flex:0 0 auto}


/* === 公営テーマカラー化 navy（民間色→横浜市カラー） (2026-08) === */
html body.tt-saijo{--color-accent:#0a4f9c;--color-accent-700:#083f7d;--color-accent-800:#062f5e;--color-accent-900:#0a4f9c;--color-accent-100:#eaf1fb;}
/* ヘッダー：白背景＋黒文字（横浜市サイトに合わせる） */
body.tt-saijo .tt-head2{background:#ffffff !important;border-bottom:1px solid #e3e6eb !important;box-shadow:0 2px 10px rgba(0,0,0,.05) !important;}
body.tt-saijo .tt-logo2 .ja{color:#15233a !important;}
body.tt-saijo .tt-logo2 .tt-logo2-op{color:#5b6674 !important;}
body.tt-saijo .tt-nav2 .tt-ni:not(.tt-urgent) > a{color:#1b2a3d !important;}
body.tt-saijo .tt-nav2 .tt-ni:not(.tt-urgent) > a:hover{color:#0a4f9c !important;}
body.tt-saijo .tt-nav2 .tt-sub a{color:#1b2a3d !important;}
/* 固定フッターバー：紺 */
body.tt-saijo .tt-mbar{background:linear-gradient(180deg,#0a3f7d,#083166) !important;}
/* ヒーローCTAに少し余白 */
body.tt-saijo #top .tt-cta2{margin-top:14px !important;}


/* === 電話CTAを横浜市レッドに統一 (2026-08) === */
body.tt-saijo .tt-cta2--tel .main{background:linear-gradient(135deg,#c8102e,#a3122a) !important}
body .tt-head2 .tt-tel2 .main{background:linear-gradient(135deg,#c8102e,#a3122a) !important}
body.tt-saijo .tt-mbar a.tt-mbar-tel .main{background:linear-gradient(135deg,#c8102e,#a3122a) !important}
body.tt-saijo .tt-cta2--tel .cap{color:#a3122a !important}
body.tt-saijo #emergency .tt-cta2--tel .cap{color:#a3122a !important}


/* === ヒーローCTAの余白調整 (2026-08) === */
body.tt-saijo #top .tt-cta2{margin-top:34px !important;margin-bottom:10px !important}


/* ==== 2026-09 修正対応（メモリアルライフ様 修正シート） ==== */
/* FV：スライド表示時間を2倍（20s→40s） */
.tt-hero-slides .tt-slide{animation-duration:40s !important;}
/* FV・お問い合わせ：電話番号をリンク無しテキストで大きく */
body.tt-saijo .tt-teltext{display:inline-flex;flex-direction:column;gap:4px;margin-top:30px;color:#fff;pointer-events:none;}
body.tt-saijo .tt-teltext .cap{font-size:15px;font-weight:700;letter-spacing:.06em;color:#fff !important;}
body.tt-saijo .tt-teltext .num{display:flex;align-items:center;gap:12px;font-weight:800;font-size:clamp(44px,5vw,56px);line-height:1.1;letter-spacing:.02em;color:#fff !important;white-space:nowrap;}
body.tt-saijo .tt-teltext .ic{width:.8em;height:.8em;background:#fff;flex:0 0 auto;-webkit-mask:var(--ico-phone) center/contain no-repeat;mask:var(--ico-phone) center/contain no-repeat;}
@media(max-width:640px){body.tt-saijo .tt-teltext .num{font-size:38px;}}
/* 安心して、お任せいただける理由：影と動きを無くす */
body.tt-saijo .tt-trust-card,body.tt-saijo .tt-trust-card:hover{box-shadow:none !important;transform:none !important;}
body.tt-saijo .tt-trust-card:nth-child(1) .tt-trust-ic::before{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/></svg>");}
body.tt-saijo .tt-trust-card:nth-child(4) .tt-trust-ic::before{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 14v-2a8 8 0 0 1 16 0v2' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='2.5' y='12.5' width='4.5' height='7' rx='1.8' fill='%23000'/><rect x='17' y='12.5' width='4.5' height='7' rx='1.8' fill='%23000'/><path d='M19.3 19.5c0 1.8-2.2 2.6-5.3 2.6' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='11' y='20.9' width='3.6' height='2.2' rx='1.1' fill='%23000'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 14v-2a8 8 0 0 1 16 0v2' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='2.5' y='12.5' width='4.5' height='7' rx='1.8' fill='%23000'/><rect x='17' y='12.5' width='4.5' height='7' rx='1.8' fill='%23000'/><path d='M19.3 19.5c0 1.8-2.2 2.6-5.3 2.6' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='11' y='20.9' width='3.6' height='2.2' rx='1.1' fill='%23000'/></svg>");}
/* 見出しの下線：中央寄せ見出しは中央に */
body.tt-saijo #home-plan h2::after{margin-left:auto;margin-right:auto;}
/* 見出し毎のボタン：ホバーアニメーション */
body.tt-saijo a.tt-more-btn:hover,body.tt-saijo a.tt-plink:hover{transform:translateY(-2px) !important;box-shadow:0 16px 32px rgba(42,124,157,.36) !important;background:#236a86 !important;opacity:1 !important;}
/* 横浜市戸塚斎場について：写真・表の影を無くす */
body.tt-saijo #about > div > div:first-child > div[style*="aspect-ratio"],body.tt-saijo #about > div > div:last-child{box-shadow:none !important;}
/* 料金・費用の目安：簡潔な一覧 */
body.tt-saijo .tt-price-list a.tt-plink-text:hover{text-decoration:underline !important;transform:none !important;}
body.tt-saijo #home-plan .tt-plan-card > div[style*="aspect-ratio"]{border-radius:11px !important;}
/* アクセス：表の影を無くす／アイコン（バス・車・タクシー） */
body.tt-saijo #access dl{box-shadow:none !important;}
body.tt-saijo #access dl > div:nth-child(4) dt::before,body.tt-saijo #access dl > div:nth-child(5) dt::before{content:'';width:16px;height:16px;background-color:var(--color-accent);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;}
body.tt-saijo #access dl > div:nth-child(3) dt::before{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect x='4' y='3.5' width='16' height='14' rx='2.6' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><path d='M4 11h16M4 7h16M2.3 8v3M21.7 8v3' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='6' y='17.5' width='3' height='3' rx='.8' fill='%23000'/><rect x='15' y='17.5' width='3' height='3' rx='.8' fill='%23000'/><circle cx='7.6' cy='14.3' r='1.1' fill='%23000'/><circle cx='16.4' cy='14.3' r='1.1' fill='%23000'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect x='4' y='3.5' width='16' height='14' rx='2.6' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><path d='M4 11h16M4 7h16M2.3 8v3M21.7 8v3' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/><rect x='6' y='17.5' width='3' height='3' rx='.8' fill='%23000'/><rect x='15' y='17.5' width='3' height='3' rx='.8' fill='%23000'/><circle cx='7.6' cy='14.3' r='1.1' fill='%23000'/><circle cx='16.4' cy='14.3' r='1.1' fill='%23000'/></svg>");}
body.tt-saijo #access dl > div:nth-child(4) dt::before{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12l1.6-4.6A2 2 0 0 1 8.5 6h7a2 2 0 0 1 1.9 1.4L19 12m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12l1.6-4.6A2 2 0 0 1 8.5 6h7a2 2 0 0 1 1.9 1.4L19 12m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/></svg>");}
body.tt-saijo #access dl > div:nth-child(5) dt::before{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12l1.6-4.6A2 2 0 0 1 8.5 6h7a2 2 0 0 1 1.9 1.4L19 12m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/><rect x='9.3' y='2.2' width='5.4' height='2.6' rx='.6' fill='%23000'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12l1.6-4.6A2 2 0 0 1 8.5 6h7a2 2 0 0 1 1.9 1.4L19 12m-14 0h14v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1v-1H8v1a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/><circle cx='8' cy='14.5' r='1' fill='%23000'/><circle cx='16' cy='14.5' r='1' fill='%23000'/><rect x='9.3' y='2.2' width='5.4' height='2.6' rx='.6' fill='%23000'/></svg>");}
/* お客様の声：ボタン以外の影とアニメーションを無くす */
body.tt-saijo #voice .blueprint,body.tt-saijo #voice .blueprint:hover{box-shadow:none !important;transform:none !important;}
/* 葬儀の流れ：ボタン以外の影とアニメーションを無くす */
body.tt-saijo #flow li,body.tt-saijo #flow li:hover{box-shadow:none !important;transform:none !important;}
/* フッター：投稿者名を非表示／下部の余白を解消 */
body.tt-saijo .footer-meta,body.tt-saijo .author-info{display:none !important;}
body.tt-saijo{padding-bottom:0 !important;}
body.tt-saijo .tt-mbar-sp{display:none !important;}
body.tt-saijo > footer{padding-bottom:calc(28px + 88px) !important;}


/* ==== 2026-09 修正対応 part2（全ページ共通・下層・TOP追加） ==== */
/* 両端の白い線（#mainの枠線） */
body.tt-saijo #main{border:0 !important;}
/* ヘッダー下・フッター上の余分な空間 */
body.tt-saijo #content{margin-top:0 !important;}
body.tt-saijo .entry-content{margin:0 !important;}
body.tt-saijo .article,body.tt-saijo .tt-page{margin-bottom:0 !important;}
body.tt-saijo .tt-page table{margin:0 !important;}
/* 下層：ヘッダー画像と本文の間を広げる */
body.tt-saijo .tt-page > div:first-of-type > :first-child{margin-top:48px !important;}
/* 下層CTA：見出しの赤線を中央に */
body.tt-saijo .tt-page > section:last-of-type h2::after{margin-left:auto;margin-right:auto;}
/* 表：角丸をやめる／横スクロールバーを常に表示 */
body.tt-saijo .tt-tblwrap{overflow-x:auto;border-radius:0 !important;scrollbar-width:thin;scrollbar-color:#9fb3c8 #eef2f7;}
body.tt-saijo .tt-tblwrap::-webkit-scrollbar{height:8px;}
body.tt-saijo .tt-tblwrap::-webkit-scrollbar-thumb{background:#9fb3c8;border-radius:4px;}
body.tt-saijo .tt-tblwrap::-webkit-scrollbar-track{background:#eef2f7;}
/* 葬儀事例カード：ホバー */
body.tt-saijo a.tt-case-card{transition:transform .25s ease,box-shadow .25s ease !important;}
body.tt-saijo a.tt-case-card:hover{transform:translateY(-4px) !important;box-shadow:0 16px 36px rgba(14,60,68,.14) !important;opacity:1 !important;}
/* プラン一覧カード（下層） */
body.tt-saijo .tt-page .tt-plan-card:hover{transform:translateY(-4px) !important;}
/* よくある質問：開閉マーク（＋／－） */
body.tt-saijo details.tt-faq summary::after{content:"";flex:0 0 auto;margin-left:auto;width:16px;height:16px;background:linear-gradient(#0a4f9c,#0a4f9c) center/16px 2px no-repeat,linear-gradient(#0a4f9c,#0a4f9c) center/2px 16px no-repeat;}
body.tt-saijo details.tt-faq[open] summary::after{background:linear-gradient(#0a4f9c,#0a4f9c) center/16px 2px no-repeat;}
/* プラン詳細の流れ：PCは3列の縦長カード */
@media(min-width:900px){
body.tt-saijo .tt-steps--grid{grid-template-columns:repeat(3,1fr) !important;}
body.tt-saijo .tt-steps--grid > div{flex-direction:column !important;align-items:stretch !important;}
body.tt-saijo .tt-steps--grid > div > div:first-child img{width:100% !important;height:190px !important;}
body.tt-saijo .tt-steps--grid > div > div:last-child{flex:0 0 auto !important;min-width:0 !important;}
}
/* 流れ：SPは写真を横幅いっぱい・中央寄せ */
@media(max-width:640px){
body.tt-saijo .tt-steps > div{flex-direction:column !important;align-items:stretch !important;text-align:center;}
body.tt-saijo .tt-steps > div > div:first-child img{width:100% !important;height:auto !important;aspect-ratio:3/2;}
body.tt-saijo .tt-steps > div > div:last-child{flex:0 0 auto !important;min-width:0 !important;}
}
/* お急ぎの方へ：このあとの流れ（PC 2:1／SP中央） */
body.tt-saijo .tt-next{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:end;}
body.tt-saijo .tt-next-btn{text-align:right;margin:0 0 16px;}
@media(max-width:768px){body.tt-saijo .tt-next{grid-template-columns:1fr;}body.tt-saijo .tt-next-btn{text-align:center;}}
/* 葬儀プラン一覧：SPのヘッダー写真は右寄せ */
@media(max-width:640px){body.page-id-7 .tt-page > section:first-child{background-position:right center !important;}}
/* SP：フッター下の余白を広げる（固定ボタンに隠れないように） */
@media(max-width:819px){body.tt-saijo > footer{padding-bottom:200px !important;}}
/* ヘッダーの問い合わせボタン：影を小さく・間を詰める */
body .tt-nav2 .tt-urgent > a,body .tt-head2 .tt-tel2{box-shadow:0 2px 6px rgba(0,0,0,.14) !important;}
body .tt-nav2 .tt-urgent > a:hover,body .tt-head2 .tt-tel2:hover{box-shadow:0 4px 10px rgba(0,0,0,.2) !important;}
@media(min-width:820px){body .tt-head2 .tt-tel2{margin-left:calc(-1 * clamp(4px,1.2vw,22px));}}
/* TOP：総額に含まれるもの 2:1 ／ 無料見積りボタンを濃い赤 */
body.tt-saijo #price .tt-total{grid-template-columns:2fr 1fr !important;}
@media(max-width:640px){body.tt-saijo #price .tt-total{grid-template-columns:1fr !important;}}
body.tt-saijo a.tt-cta{background:#a3122a !important;border-color:#a3122a !important;box-shadow:0 6px 18px rgba(163,18,42,.3) !important;}
body.tt-saijo a.tt-cta:hover{background:#860e22 !important;border-color:#860e22 !important;}
/* 送信ボタン：ホバーでも矢印を表示 */
body.tt-saijo .wpcf7 input.wpcf7-submit:hover{background-color:var(--color-cta-600) !important;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='none' stroke='%23fff' stroke-width='1.6'/><path d='M10.5 8L14.5 12L10.5 16' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;background-repeat:no-repeat !important;background-position:right 20px center !important;background-size:21px 21px !important;}
/* TOP：ご逝去の直後のボタン（横並び・中央・幅統一） */
body.tt-saijo .tt-emg-btns{display:flex;justify-content:center;align-items:stretch;gap:16px;flex-wrap:wrap;margin:56px 0 8px;}
body.tt-saijo .tt-emg-btns .tt-cta2{width:340px;min-width:0;}
body.tt-saijo .tt-emg-btns .tt-cta2 .main{font-size:26px;}
@media(max-width:640px){body.tt-saijo .tt-emg-btns{margin-top:44px;}body.tt-saijo .tt-emg-btns .tt-cta2{width:100%;}}
/* SP：ハンバーガー・メニュー色／TOPプラン見出し左寄せ／ご逝去の直後の間隔 */
@media(max-width:819px){
body.tt-saijo .tt-head2 .tt-burger{color:#c8102e !important;border-color:rgba(200,16,46,.45) !important;}
body.tt-saijo .tt-head2 .tt-drawer a{color:#1b2a3d !important;}
}
@media(max-width:640px){
body.tt-saijo #home-plan > div > div:first-child{text-align:left !important;}
body.tt-saijo #home-plan h2::after{margin-left:0 !important;}
body.tt-saijo #emergency > div > div[style*="grid"]{row-gap:60px !important;}
}

/* 横スクロール防止（100vwセクションのはみ出し） */
html,body.tt-saijo{overflow-x:clip;}
