/* ===== 20_site.css ===== */
@charset "UTF-8";
/* ============================================================
   O01543 マルモリ塗装有限会社 — 20_site.css（受領CSSの機械変換）
   ・共通部品（header・brushline・cta）の helmet → 各ページ helmet の style を、**ブロックごとに元の順のまま**出している
     （メディアクエリは詳細度を上げないので、順番が入れ替わると後勝ちが壊れる）。
     ページ固有の規則は .mm-p-＜ページキー＞ で包んだ（同名の data-* が別ページで別の意味で使われているため）。
   ・生成クラス .mmh＊＝style-hover（受領ランタイムの .scp＊:hover と同じく1宣言ずつ !important）
               .mma＊＝インラインの animation・transition の退避先（CueZillaが style 属性から除去するため）
   ・追加CSS欄はコメント内のタグ形の記号でMIMEが text/html に化ける（R-31）ので、タグ形の記号は書かない。
   ============================================================ */

/* ---- keyframes（受領 helmet の初出を採用） ---- */
@keyframes phoneRingHd{0% { transform: rotate(0deg); } 8% { transform: rotate(-16deg); } 16% { transform: rotate(14deg); } 24% { transform: rotate(-12deg); } 32% { transform: rotate(10deg); } 40% { transform: rotate(-7deg); } 48% { transform: rotate(5deg); } 56% { transform: rotate(-3deg); } 64%, 100% { transform: rotate(0deg); }}
@keyframes fsUp{0% { opacity: 1; transform: none; } 0.01% { opacity: 0; transform: translateY(28px); } 100% { opacity: 1; transform: none; }}
@keyframes fsRight{0% { opacity: 1; transform: none; } 0.01% { opacity: 0; transform: translateX(56px); } 100% { opacity: 1; transform: none; }}
@keyframes fsCurtainTL{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(100% 0 0 100%); clip-path: inset(100% 0 0 100%); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes fsCurtainBR{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(0 100% 100% 0); clip-path: inset(0 100% 100% 0); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes fsBandL{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes fsBandR{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes fsTrack{0% { width: 100%; } 0.01% { width: 0; } 100% { width: 100%; }}
@keyframes fsBob{0%, 100% { transform: translateY(0); } 50% { transform: translateY(-14px); }}
@keyframes fsDraw{0% { stroke-dashoffset: 0; } 0.01% { stroke-dashoffset: 1; } 100% { stroke-dashoffset: 0; }}
@keyframes fsRing{0% { opacity: 1; stroke-dashoffset: 0; } 0.01% { opacity: 1; stroke-dashoffset: 0; } 100% { opacity: 0; stroke-dashoffset: -100; }}
@keyframes ctaSheen{0% { transform: translateX(-120%) skewX(-14deg); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { transform: translateX(320%) skewX(-14deg); opacity: 0; }}
@keyframes brushReveal{from { -webkit-mask-position: 100% 0; mask-position: 100% 0; } to { -webkit-mask-position: 0% 0; mask-position: 0% 0; }}
@keyframes brushSwipe{0% { transform: translateX(-130%) rotate(-2deg); opacity: 0; } 10% { opacity: 1; } 92% { opacity: 1; } 100% { transform: translateX(660%) rotate(-2deg); opacity: 0; }}
@keyframes brushOrbit{0% { left: 0; top: 0; opacity: 0; } 6% { opacity: 1; } 32% { left: 100%; top: 0; } 56% { left: 100%; top: 100%; } 82% { left: 0; top: 100%; } 94% { left: 0; top: 0; opacity: 1; } 100% { left: 0; top: 0; opacity: 0; }}
@keyframes aboutFloat{0%, 100% { transform: translateY(0); box-shadow: 0 18px 40px rgba(15,127,163,.16); } 50% { transform: translateY(-14px); box-shadow: 0 34px 58px rgba(15,127,163,.22); }}
@keyframes ringSpin{0% { stroke-dashoffset: 0; opacity: 0; } 8% { opacity: 1; } 85% { opacity: 1; } 100% { stroke-dashoffset: -100; opacity: 0; }}
@keyframes recruitGlow{0%, 100% { box-shadow: 0 0 0 0 rgba(95,205,239,0); } 35% { box-shadow: 0 0 0 9px rgba(95,205,239,.42); } 75% { box-shadow: 0 0 0 20px rgba(95,205,239,0); }}
@keyframes recruitIcon{0%, 100% { transform: translateY(0) rotate(0deg); } 20% { transform: translateY(-8px) rotate(-8deg); } 45% { transform: translateY(0) rotate(6deg); } 65% { transform: translateY(-4px) rotate(-3deg); }}
@keyframes phoneRing{0% { transform: rotate(0deg); } 8% { transform: rotate(-16deg); } 16% { transform: rotate(14deg); } 24% { transform: rotate(-12deg); } 32% { transform: rotate(10deg); } 40% { transform: rotate(-7deg); } 48% { transform: rotate(5deg); } 56% { transform: rotate(-3deg); } 64%, 100% { transform: rotate(0deg); }}
@keyframes strokeGrow{from { transform: scaleX(0); } to { transform: scaleX(1); }}
@keyframes curtainIn{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(100% 0 0 100%); clip-path: inset(100% 0 0 100%); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes curtainInHouse{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(0 100% 100% 0); clip-path: inset(0 100% 100% 0); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes bandIn{0% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); } 0.01% { -webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); } 100% { -webkit-clip-path: inset(0 0 0 0); clip-path: inset(0 0 0 0); }}
@keyframes trackIn{0% { width: 100%; } 0.01% { width: 0; } 100% { width: 100%; }}
@keyframes boxIn{0% { opacity: 1; transform: none; } 0.01% { opacity: 0; transform: translateY(22px); } 100% { opacity: 1; transform: none; }}
@keyframes boxFloat{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14); } 50% { transform: translateY(-10px); box-shadow: 0 24px 42px rgba(15,127,163,.2); }}
@keyframes heroFloat{0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(15,127,163,.14); } 50% { transform: translateY(-16px); box-shadow: 0 34px 54px rgba(15,127,163,.22); }}
@keyframes signFloat{0%, 100% { transform: translateY(0); box-shadow: 0 8px 20px rgba(15,127,163,.12); } 50% { transform: translateY(-18px); box-shadow: 0 32px 52px rgba(15,127,163,.22); }}
@keyframes steelFloat{0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(15,127,163,.14); } 50% { transform: translateY(-16px); box-shadow: 0 34px 54px rgba(15,127,163,.22); }}
@keyframes aboutFloat-about{0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(15,127,163,.14); } 50% { transform: translateY(-16px); box-shadow: 0 34px 54px rgba(15,127,163,.22); }}
@keyframes cardFloat{0%, 100% { transform: translateY(0); box-shadow: 0 8px 20px rgba(15,127,163,.12); } 50% { transform: translateY(-14px); box-shadow: 0 28px 46px rgba(15,127,163,.2); }}
@keyframes cardFloat-recruit{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14); } 50% { transform: translateY(-14px); box-shadow: 0 28px 48px rgba(15,127,163,.22); }}
@keyframes wishFloat{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14), inset 0 1px 0 #fff; } 50% { transform: translateY(-12px); box-shadow: 0 26px 44px rgba(15,127,163,.22), inset 0 1px 0 #fff; }}
@keyframes siteFloat{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14); } 50% { transform: translateY(-14px); box-shadow: 0 28px 48px rgba(15,127,163,.22); }}
@keyframes phoneShake{0% { transform: rotate(0deg); } 8% { transform: rotate(-16deg); } 16% { transform: rotate(14deg); } 24% { transform: rotate(-12deg); } 32% { transform: rotate(10deg); } 40% { transform: rotate(-7deg); } 48% { transform: rotate(5deg); } 56% { transform: rotate(-3deg); } 64%, 100% { transform: rotate(0deg); }}
@keyframes staffFloat{0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(15,127,163,.14); } 50% { transform: translateY(-16px); box-shadow: 0 34px 54px rgba(15,127,163,.22); }}
@keyframes tableFloat{0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(15,127,163,.14), inset 0 1px 0 #fff; } 50% { transform: translateY(-10px); box-shadow: 0 28px 48px rgba(15,127,163,.2), inset 0 1px 0 #fff; }}
@keyframes cardFloat-works{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14); } 50% { transform: translateY(-14px); box-shadow: 0 28px 48px rgba(15,127,163,.22); }}
@keyframes cardFloat-blog{0%, 100% { transform: translateY(0); box-shadow: 0 10px 24px rgba(15,127,163,.14); } 50% { transform: translateY(-14px); box-shadow: 0 28px 48px rgba(15,127,163,.22); }}
@keyframes phoneRing-inquiry{0%, 100% { transform: rotate(0deg) scale(1); } 12% { transform: rotate(-16deg) scale(1.08); } 26% { transform: rotate(14deg) scale(1.08); } 40% { transform: rotate(-11deg) scale(1.05); } 54% { transform: rotate(9deg) scale(1.05); } 68% { transform: rotate(-5deg) scale(1.02); } 82% { transform: rotate(3deg) scale(1.01); }}

/* ---- 受領 header.dc.html の helmet（共通ヘッダー・全ページ共通）：15規則 ---- */
[data-ring][data-ringing="1"]{animation: phoneRingHd 1s ease-in-out;}
html,body{height: auto !important; min-height: 100%;}
header[data-hd] > div:first-of-type,header[data-hd] img,header[data-hd] nav ul > li > a{transition: padding .3s ease, height .3s ease, min-height .3s ease, font-size .3s ease, opacity .3s ease;}
header[data-hd="shrink"] > div:first-of-type{padding-top: 6px !important; padding-bottom: 6px !important;}
header[data-hd="shrink"] img{height: 38px !important;}
header[data-hd="shrink"] nav ul > li > a{min-height: 46px !important; font-size: 13px !important;}
header[data-hd="shrink"] nav ul > li > a > span[aria-hidden="true"]:first-child{display: none !important;}
header[data-hd="shrink"] nav ul > li[aria-hidden="true"] svg{height: 26px !important;}
[data-mobonly]{display: none;}
[data-drawer-backdrop]{display: none;}
[data-navtoggle]:checked ~ label[data-menubtn] [data-navicon="bars"]{display: none !important;}
[data-navtoggle]:checked ~ label[data-menubtn] [data-navicon="close"]{display: block !important;}
@media (max-width: 760px){
  [data-mobonly]{display: flex !important;}
  [data-deskonly]{display: none !important;}
  label[data-menubtn]{display: flex !important; align-items: center; justify-content: center;}
  header[data-hd] nav{position: fixed !important; top: 0 !important; right: 0 !important; bottom: 0 !important; width: min(84vw, 320px) !important; border-top: 0 !important; z-index: 95 !important; padding: 74px 12px 32px !important; overflow-y: auto !important; box-shadow: -14px 0 40px rgba(15,127,163,.22) !important; transform: translateX(340px) !important; visibility: hidden !important; transition: transform .3s cubic-bezier(.3,.7,.32,1), visibility .3s !important;}
  [data-navtoggle]:checked ~ nav{transform: translateX(0) !important; visibility: visible !important;}
  [data-drawer-backdrop]{display: block !important; position: fixed; inset: 0; z-index: 90; background: rgba(15,127,163,.34); opacity: 0; pointer-events: none; transition: opacity .3s ease;}
  [data-navtoggle]:checked ~ [data-drawer-backdrop]{opacity: 1; pointer-events: auto;}
  header[data-hd] > div:first-of-type{padding-top: 6px !important; padding-bottom: 6px !important; padding-right: 66px !important; flex-wrap: nowrap !important; gap: 8px !important;}
  header[data-hd] img{height: 34px !important;}
  header[data-hd="shrink"] img{height: 28px !important;}
  header[data-hd] > div:first-of-type > a:first-child{min-width: 0 !important; flex: 0 1 auto !important;}
  header[data-hd] > div:first-of-type > a:first-child > span{display: none !important;}
  header[data-hd] nav > ul{flex-direction: column !important; align-items: stretch !important; justify-content: flex-start !important; flex-wrap: nowrap !important; gap: 2px !important; padding: 0 !important; overflow: visible !important;}
  header[data-hd] nav > ul > li{flex: 0 0 auto !important; display: flex !important; align-items: stretch !important;}
  header[data-hd] nav > ul > li[aria-hidden="true"]{display: none !important;}
  header[data-hd] nav > ul > li{flex: 0 0 auto !important; display: block !important;}
  header[data-hd] nav ul > li > a{flex-direction: row !important; justify-content: flex-start !important; min-height: 52px !important; gap: 12px !important; padding: 0 16px !important; font-size: 16px !important; border-radius: 16px !important; white-space: nowrap !important;}
  header[data-hd] nav ul > li > a > span[aria-hidden="true"]{display: flex !important;}
  header[data-hd] nav ul > li > a > span[aria-hidden="true"] svg{width: 22px !important; height: 22px !important;}
  header[data-hd] nav > ul > li > ul{display: block !important; position: static !important; min-width: 0 !important; padding: 0 0 6px 20px !important; box-shadow: none !important; border-radius: 0 !important;}
  header[data-hd] nav > ul > li > ul > li > a{min-height: 48px !important; font-size: 15px !important; padding: 0 14px !important;}
  header[data-hd] nav > ul > li > button[aria-haspopup]{display: none !important;}
}
@media (max-width: 760px) and (prefers-reduced-motion: reduce){
  header[data-hd] nav{transition: none !important;}
}
@media (prefers-reduced-motion: reduce){
  [data-ring][data-ringing="1"]{animation: none !important;}
}

/* ---- 受領 brushline.dc.html の helmet（筆線・fail-safe の出現アニメ・全ページ共通）：18規則 ---- */
svg[data-brushline] path{stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.1s cubic-bezier(.35,.7,.32,1);}
svg[data-brushline][data-shown="1"] path{stroke-dashoffset: 0;}
@media (prefers-reduced-motion: reduce){
  svg[data-brushline] path{stroke-dashoffset: 0 !important; transition: none !important;}
}
[data-reveal],[data-stepin],[data-signfloat],[data-slidein],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-float],[data-ctacard],[data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
[data-reveal],[data-stepin],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
[data-slidein],#works .col,#blog .col,#check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
[data-signfloat],[data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
[data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
[data-curtain="house"],[data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
[data-roll="band"],[data-roll="band2"],[data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
[data-roll="band2"]{animation-name: fsBandR !important;}
[data-roll="track"],[data-roll="track2"],[data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
[data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  [data-reveal],[data-stepin],[data-signfloat],[data-slidein],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-float],[data-ctacard],[data-curtain],[data-roll],#works .col,#blog .col,#check ul > li{animation: none !important; transform: none !important;}
  [data-roll="track"],[data-roll="track2"],[data-roll="track3"]{width: 100% !important;}
}
[data-stroke],svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
[data-brushtex]{stroke-dashoffset: 0 !important;}
[data-ringspin] ellipse,[data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  [data-stroke],svg[data-brushline] path,[data-ringspin] ellipse,[data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 cta.dc.html の helmet（お問い合わせ帯・全ページ共通）：20規則 ---- */
[data-ctacard]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
[data-ctacard][data-shown="1"]{opacity: 1; transform: none;}
[data-ctasheen]{opacity: 0;}
[data-ctacard][data-shown="1"] [data-ctasheen]{animation: ctaSheen 1.5s cubic-bezier(.32,.72,.3,1) .55s both;}
@media (prefers-reduced-motion: reduce){
  [data-ctacard]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
  [data-ctacard][data-shown="1"] [data-ctasheen]{animation: none !important;}
}
[data-reveal],[data-stepin],[data-signfloat],[data-slidein],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-float],[data-ctacard],[data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
[data-reveal],[data-stepin],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
[data-slidein],#works .col,#blog .col,#check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
[data-signfloat],[data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
[data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
[data-curtain="house"],[data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
[data-roll="band"],[data-roll="band2"],[data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
[data-roll="band2"]{animation-name: fsBandR !important;}
[data-roll="track"],[data-roll="track2"],[data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
[data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  [data-reveal],[data-stepin],[data-signfloat],[data-slidein],[data-boxfloat],[data-cardfloat],[data-tablefloat],[data-flowfloat],[data-pop],[data-float],[data-ctacard],[data-curtain],[data-roll],#works .col,#blog .col,#check ul > li{animation: none !important; transform: none !important;}
  [data-roll="track"],[data-roll="track2"],[data-roll="track3"]{width: 100% !important;}
}
[data-stroke],svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
[data-brushtex]{stroke-dashoffset: 0 !important;}
[data-ringspin] ellipse,[data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  [data-stroke],svg[data-brushline] path,[data-ringspin] ellipse,[data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 ホーム.dc.html の helmet（.mm-p-index で包む・元の順のまま）：80規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-index span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible,button:focus-visible{outline: 3px solid #0F7FA3; outline-offset: 3px;}
html,body{height: auto !important; min-height: 100%;}
.mm-p-index [data-safewipe]{-webkit-mask-image: linear-gradient(38deg,#000 0 49%,rgba(0,0,0,.55) 53%,rgba(0,0,0,0) 58%); mask-image: linear-gradient(38deg,#000 0 49%,rgba(0,0,0,.55) 53%,rgba(0,0,0,0) 58%); -webkit-mask-size: 300% 300%; mask-size: 300% 300%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: 100% 0%; mask-position: 100% 0%; transition: -webkit-mask-position 2.3s cubic-bezier(.28,.68,.32,1), mask-position 2.3s cubic-bezier(.28,.68,.32,1);}
.mm-p-index [data-safewipe][data-shown="1"]{-webkit-mask-position: 0% 100%; mask-position: 0% 100%;}
.mm-p-index [data-curtain]{opacity: 1 !important; transform: none !important; -webkit-clip-path: inset(100% 100% 0 0); clip-path: inset(100% 100% 0 0); transition: clip-path 1.6s cubic-bezier(.3,.72,.28,1), -webkit-clip-path 1.6s cubic-bezier(.3,.72,.28,1) !important;}
.mm-p-index [data-curtain][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-curtain]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-safewipe]{-webkit-mask-image: none !important; mask-image: none !important; transition: none !important;}
}
.mm-p-index header[data-hd] > div:first-of-type,.mm-p-index header[data-hd] img,.mm-p-index header[data-hd] nav ul > li > a{transition: padding .3s ease, height .3s ease, min-height .3s ease, font-size .3s ease;}
.mm-p-index header[data-hd="shrink"] > div:first-of-type{padding-top: 6px !important; padding-bottom: 6px !important;}
.mm-p-index header[data-hd="shrink"] img{height: 38px !important;}
.mm-p-index header[data-hd="shrink"] nav ul > li > a{min-height: 46px !important; font-size: 13px !important;}
.mm-p-index header[data-hd="shrink"] nav ul > li > a > span[aria-hidden="true"]:first-child{display: none !important;}
.mm-p-index header[data-hd="shrink"] nav ul > li[aria-hidden="true"] svg{height: 26px !important;}
@media (min-width: 1140px){
  .mm-p-index #recruit p{white-space: nowrap;}
}
.mm-p-index [data-mobonly]{display: none;}
.mm-p-index [data-drawer-backdrop]{display: none;}
.mm-p-index [data-navtoggle]:checked ~ label[data-menubtn] [data-navicon="bars"]{display: none !important;}
.mm-p-index [data-navtoggle]:checked ~ label[data-menubtn] [data-navicon="close"]{display: block !important;}
@media (max-width: 760px){
  .mm-p-index [data-mobonly]{display: flex !important;}
  .mm-p-index [data-deskonly]{display: none !important;}
  .mm-p-index label[data-menubtn]{display: flex !important; align-items: center; justify-content: center;}
  .mm-p-index header[data-hd] nav{position: fixed !important; top: 0 !important; right: 0 !important; bottom: 0 !important; width: min(84vw, 320px) !important; border-top: 0 !important; z-index: 95 !important; padding: 74px 12px 32px !important; overflow-y: auto !important; box-shadow: -14px 0 40px rgba(15,127,163,.22) !important; transform: translateX(340px) !important; visibility: hidden !important; transition: transform .3s cubic-bezier(.3,.7,.32,1), visibility .3s !important;}
  .mm-p-index [data-navtoggle]:checked ~ nav{transform: translateX(0) !important; visibility: visible !important;}
  .mm-p-index [data-drawer-backdrop]{display: block !important; position: fixed; inset: 0; z-index: 90; background: rgba(15,127,163,.34); opacity: 0; pointer-events: none; transition: opacity .3s ease;}
  .mm-p-index [data-navtoggle]:checked ~ [data-drawer-backdrop]{opacity: 1; pointer-events: auto;}
  .mm-p-index header[data-hd] > div:first-of-type{padding-top: 6px !important; padding-bottom: 6px !important; padding-right: 66px !important; flex-wrap: nowrap !important; gap: 8px !important;}
  .mm-p-index header[data-hd] img{height: 34px !important;}
  .mm-p-index header[data-hd="shrink"] img{height: 28px !important;}
  .mm-p-index header[data-hd] > div:first-of-type > a:first-child{min-width: 0 !important; flex: 0 1 auto !important;}
  .mm-p-index header[data-hd] > div:first-of-type > a:first-child > span{display: none !important;}
  .mm-p-index header[data-hd] nav > ul{flex-direction: column !important; align-items: stretch !important; justify-content: flex-start !important; flex-wrap: nowrap !important; gap: 2px !important; padding: 0 !important; overflow: visible !important;}
  .mm-p-index header[data-hd] nav > ul > li{flex: 0 0 auto !important; display: flex !important; align-items: stretch !important;}
  .mm-p-index header[data-hd] nav > ul > li[aria-hidden="true"]{display: none !important;}
  .mm-p-index header[data-hd] nav > ul > li{flex: 0 0 auto !important; display: block !important;}
  .mm-p-index header[data-hd] nav ul > li > a{flex-direction: row !important; justify-content: flex-start !important; min-height: 52px !important; gap: 12px !important; padding: 0 16px !important; font-size: 16px !important; border-radius: 16px !important; white-space: nowrap !important;}
  .mm-p-index header[data-hd] nav ul > li > a > span[aria-hidden="true"]{display: flex !important;}
  .mm-p-index header[data-hd] nav ul > li > a > span[aria-hidden="true"] svg{width: 22px !important; height: 22px !important;}
  .mm-p-index header[data-hd] nav > ul > li > ul{display: block !important; position: static !important; min-width: 0 !important; padding: 0 0 6px 20px !important; box-shadow: none !important; border-radius: 0 !important;}
  .mm-p-index header[data-hd] nav > ul > li > ul > li > a{min-height: 48px !important; font-size: 15px !important; padding: 0 14px !important;}
  .mm-p-index header[data-hd] nav > ul > li > button[aria-haspopup]{display: none !important;}
}
@media (max-width: 720px){
  .mm-p-index .features-grid{grid-template-columns: minmax(0,1fr) !important; gap: 34px !important;}
}
@media (max-width: 760px) and (prefers-reduced-motion: reduce){
  .mm-p-index header[data-hd] nav{transition: none !important;}
}
.mm-p-index [data-reveal="1"]{opacity: 0; transform: translateY(28px); will-change: opacity, transform; transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-index [data-reveal-done="1"]{opacity: 1 !important; transform: none !important;}
.mm-p-index #works .col[data-reveal="1"],.mm-p-index #blog .col[data-reveal="1"],.mm-p-index #check ul > li[data-reveal="1"]{transform: translateX(56px);}
.mm-p-index #works .col[data-reveal-done="1"],.mm-p-index #blog .col[data-reveal-done="1"],.mm-p-index #check ul > li[data-reveal-done="1"]{transform: none !important;}
.mm-p-index [data-reveal="1"]:nth-child(2){transition-delay: .09s;}
.mm-p-index [data-reveal="1"]:nth-child(3){transition-delay: .18s;}
.mm-p-index [data-reveal="1"]:nth-child(4){transition-delay: .27s;}
.mm-p-index [data-reveal="1"]:nth-child(5){transition-delay: .36s;}
.mm-p-index [data-reveal="1"]:nth-child(n+6){transition-delay: .45s;}
.mm-p-index [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-index [data-roll="band"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-index [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-index [data-roll="track"][data-shown="1"]{width: 100% !important;}
.mm-p-index [data-roll="band2"]{-webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-index [data-roll="band2"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-index [data-roll="track2"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-index [data-roll="track2"][data-shown="1"]{width: 100% !important;}
.mm-p-index [data-stroke]{stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.1s cubic-bezier(.35,.7,.32,1);}
.mm-p-index [data-stroke][data-shown="1"]{stroke-dashoffset: 0 !important;}
.mm-p-index [data-stroke="aboutbrush"]{transition-duration: 1.9s;}
.mm-p-index [data-brushtex]{stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 2.2s cubic-bezier(.35,.7,.32,1) .1s;}
.mm-p-index [data-brushtex]{opacity: 1;}
.mm-p-index g[data-brushtex]{stroke-dasharray: none; opacity: 0; transition: opacity 1s ease 1.1s;}
.mm-p-index svg:has([data-stroke="aboutbrush"][data-shown="1"]) [data-brushtex]{stroke-dashoffset: 0;}
.mm-p-index svg:has([data-stroke="aboutbrush"][data-shown="1"]) g[data-brushtex]{opacity: 1;}
.mm-p-index [data-orbit]{opacity: 0;}
.mm-p-index [data-orbit][data-shown="1"]{animation: brushOrbit 1.1s cubic-bezier(.35,.7,.32,1) both;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-reveal="1"]{opacity: 1 !important; transform: none !important; transition: none !important;}
  .mm-p-index [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-index [data-roll="track"]{width: 100% !important; transition: none !important;}
  .mm-p-index [data-roll="band2"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-index [data-roll="track2"]{width: 100% !important; transition: none !important;}
  .mm-p-index [data-stroke]{stroke-dashoffset: 0 !important; transition: none !important;}
  .mm-p-index [data-brushtex]{stroke-dashoffset: 0 !important; transition: none !important;}
}
.mm-p-index [data-float="about"]{animation: aboutFloat 5.6s ease-in-out infinite; will-change: transform;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-float="about"]{animation: none !important;}
}
.mm-p-index [data-ringspin] ellipse{opacity: 0;}
.mm-p-index [data-logoring][data-shown="1"] [data-ringspin] ellipse{animation: ringSpin 1.6s linear .15s both;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-logoring][data-shown="1"] [data-ringspin]{animation: none !important;}
}
.mm-p-index [data-pop="recruit"][data-shown="1"]{animation: recruitGlow 2.4s ease-in-out .25s 3;}
.mm-p-index [data-pop-icon][data-shown="1"]{animation: recruitIcon 1.6s cubic-bezier(.3,.7,.32,1) .25s 3;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-pop="recruit"][data-shown="1"],.mm-p-index [data-pop-icon][data-shown="1"]{animation: none !important;}
}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-brush]{animation: none !important; -webkit-mask-image: none !important; mask-image: none !important;}
}
.mm-p-index [data-reveal],.mm-p-index [data-stepin],.mm-p-index [data-signfloat],.mm-p-index [data-slidein],.mm-p-index [data-boxfloat],.mm-p-index [data-cardfloat],.mm-p-index [data-tablefloat],.mm-p-index [data-flowfloat],.mm-p-index [data-pop],.mm-p-index [data-float],.mm-p-index [data-ctacard],.mm-p-index [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-index [data-reveal],.mm-p-index [data-stepin],.mm-p-index [data-boxfloat],.mm-p-index [data-cardfloat],.mm-p-index [data-tablefloat],.mm-p-index [data-flowfloat],.mm-p-index [data-pop],.mm-p-index [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-index [data-slidein],.mm-p-index #works .col,.mm-p-index #blog .col,.mm-p-index #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-index [data-signfloat],.mm-p-index [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-index [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-index [data-curtain="house"],.mm-p-index [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-index [data-roll="band"],.mm-p-index [data-roll="band2"],.mm-p-index [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-index [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-index [data-roll="track"],.mm-p-index [data-roll="track2"],.mm-p-index [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-index [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-reveal],.mm-p-index [data-stepin],.mm-p-index [data-signfloat],.mm-p-index [data-slidein],.mm-p-index [data-boxfloat],.mm-p-index [data-cardfloat],.mm-p-index [data-tablefloat],.mm-p-index [data-flowfloat],.mm-p-index [data-pop],.mm-p-index [data-float],.mm-p-index [data-ctacard],.mm-p-index [data-curtain],.mm-p-index [data-roll],.mm-p-index #works .col,.mm-p-index #blog .col,.mm-p-index #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-index [data-roll="track"],.mm-p-index [data-roll="track2"],.mm-p-index [data-roll="track3"]{width: 100% !important;}
}
.mm-p-index [data-stroke],.mm-p-index svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-index [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-index [data-ringspin] ellipse,.mm-p-index [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-stroke],.mm-p-index svg[data-brushline] path,.mm-p-index [data-ringspin] ellipse,.mm-p-index [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 業務案内.dc.html の helmet（.mm-p-work で包む・元の順のまま）：15規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-work span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-work [data-curtain]{animation: curtainIn 1.6s cubic-bezier(.3,.72,.28,1) .25s both;}
.mm-p-work [data-curtain="house"]{animation-name: curtainInHouse;}
.mm-p-work [data-curtain="steel"]{animation-delay: .4s;}
.mm-p-work [data-roll="band2"]{animation: bandIn 1.8s cubic-bezier(.3,.7,.32,1) .3s both;}
.mm-p-work [data-roll="track2"]{width: 100%; animation: trackIn 1.8s cubic-bezier(.3,.7,.32,1) .3s both;}
.mm-p-work [data-boxfloat]{animation: boxIn .65s cubic-bezier(.22,.7,.3,1) .2s both, boxFloat 5.4s ease-in-out .9s infinite;}
.mm-p-work [data-boxfloat="2"]{animation-delay: .34s, 2.5s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-work [data-curtain],.mm-p-work [data-roll="band2"],.mm-p-work [data-roll="track2"],.mm-p-work [data-boxfloat]{animation: none !important;}
  .mm-p-work [data-roll="track2"]{width: 100% !important;}
}

/* ---- 受領 住宅塗装.dc.html の helmet（.mm-p-house で包む・元の順のまま）：41規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-house span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-house [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-house [data-roll="band"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-house [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-house [data-roll="track"][data-shown="1"]{width: 100% !important;}
.mm-p-house [data-roll="band2"]{-webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-house [data-roll="band2"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-house [data-roll="track2"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-house [data-roll="track2"][data-shown="1"]{width: 100% !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-house [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-house [data-roll="track"]{width: 100% !important; transition: none !important;}
  .mm-p-house [data-roll="band2"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-house [data-roll="track2"]{width: 100% !important; transition: none !important;}
}
.mm-p-house [data-herofloat]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-house [data-herofloat][data-shown="1"]{opacity: 1; transform: none; animation: heroFloat 5.6s ease-in-out .7s infinite;}
@media (prefers-reduced-motion: reduce){
  .mm-p-house [data-herofloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-house [data-signfloat]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-house [data-signfloat][data-shown="1"]{opacity: 1; animation: signFloat 5.4s ease-in-out infinite; transform: none;}
.mm-p-house [data-signfloat="2"][data-shown="1"]{animation-delay: 1.8s; transition-delay: .1s;}
.mm-p-house [data-signfloat="3"][data-shown="1"]{animation-delay: 3.6s; transition-delay: .2s;}
.mm-p-house [data-stepin]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-house [data-stepin][data-shown="1"]{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){
  .mm-p-house [data-signfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
  .mm-p-house [data-stepin]{opacity: 1 !important; transform: none !important; transition: none !important;}
}
.mm-p-house [data-reveal],.mm-p-house [data-stepin],.mm-p-house [data-signfloat],.mm-p-house [data-slidein],.mm-p-house [data-boxfloat],.mm-p-house [data-cardfloat],.mm-p-house [data-tablefloat],.mm-p-house [data-flowfloat],.mm-p-house [data-pop],.mm-p-house [data-float],.mm-p-house [data-ctacard],.mm-p-house [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-house [data-reveal],.mm-p-house [data-stepin],.mm-p-house [data-boxfloat],.mm-p-house [data-cardfloat],.mm-p-house [data-tablefloat],.mm-p-house [data-flowfloat],.mm-p-house [data-pop],.mm-p-house [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-house [data-slidein],.mm-p-house #works .col,.mm-p-house #blog .col,.mm-p-house #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-house [data-signfloat],.mm-p-house [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-house [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-house [data-curtain="house"],.mm-p-house [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-house [data-roll="band"],.mm-p-house [data-roll="band2"],.mm-p-house [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-house [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-house [data-roll="track"],.mm-p-house [data-roll="track2"],.mm-p-house [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-house [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-house [data-reveal],.mm-p-house [data-stepin],.mm-p-house [data-signfloat],.mm-p-house [data-slidein],.mm-p-house [data-boxfloat],.mm-p-house [data-cardfloat],.mm-p-house [data-tablefloat],.mm-p-house [data-flowfloat],.mm-p-house [data-pop],.mm-p-house [data-float],.mm-p-house [data-ctacard],.mm-p-house [data-curtain],.mm-p-house [data-roll],.mm-p-house #works .col,.mm-p-house #blog .col,.mm-p-house #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-house [data-roll="track"],.mm-p-house [data-roll="track2"],.mm-p-house [data-roll="track3"]{width: 100% !important;}
}
.mm-p-house [data-stroke],.mm-p-house svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-house [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-house [data-ringspin] ellipse,.mm-p-house [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-house [data-stroke],.mm-p-house svg[data-brushline] path,.mm-p-house [data-ringspin] ellipse,.mm-p-house [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 鉄塔橋梁塗装.dc.html の helmet（.mm-p-steel で包む・元の順のまま）：36規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-steel span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-steel [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-steel [data-roll="band"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-steel [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-steel [data-roll="track"][data-shown="1"]{width: 100% !important;}
.mm-p-steel [data-roll="band2"]{-webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-steel [data-roll="band2"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-steel [data-roll="track2"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-steel [data-roll="track2"][data-shown="1"]{width: 100% !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-steel [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-steel [data-roll="track"]{width: 100% !important; transition: none !important;}
  .mm-p-steel [data-roll="band2"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-steel [data-roll="track2"]{width: 100% !important; transition: none !important;}
}
.mm-p-steel [data-float="steel"]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-steel [data-float="steel"][data-shown="1"]{opacity: 1; transform: none; animation: steelFloat 5.6s ease-in-out .7s infinite;}
.mm-p-steel [data-slidein]{opacity: 0; transform: translateX(56px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-steel [data-slidein][data-shown="1"]{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){
  .mm-p-steel [data-float="steel"]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
  .mm-p-steel [data-slidein]{opacity: 1 !important; transform: none !important; transition: none !important;}
}
.mm-p-steel [data-reveal],.mm-p-steel [data-stepin],.mm-p-steel [data-signfloat],.mm-p-steel [data-slidein],.mm-p-steel [data-boxfloat],.mm-p-steel [data-cardfloat],.mm-p-steel [data-tablefloat],.mm-p-steel [data-flowfloat],.mm-p-steel [data-pop],.mm-p-steel [data-float],.mm-p-steel [data-ctacard],.mm-p-steel [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-steel [data-reveal],.mm-p-steel [data-stepin],.mm-p-steel [data-boxfloat],.mm-p-steel [data-cardfloat],.mm-p-steel [data-tablefloat],.mm-p-steel [data-flowfloat],.mm-p-steel [data-pop],.mm-p-steel [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-steel [data-slidein],.mm-p-steel #works .col,.mm-p-steel #blog .col,.mm-p-steel #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-steel [data-signfloat],.mm-p-steel [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-steel [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-steel [data-curtain="house"],.mm-p-steel [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-steel [data-roll="band"],.mm-p-steel [data-roll="band2"],.mm-p-steel [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-steel [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-steel [data-roll="track"],.mm-p-steel [data-roll="track2"],.mm-p-steel [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-steel [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-steel [data-reveal],.mm-p-steel [data-stepin],.mm-p-steel [data-signfloat],.mm-p-steel [data-slidein],.mm-p-steel [data-boxfloat],.mm-p-steel [data-cardfloat],.mm-p-steel [data-tablefloat],.mm-p-steel [data-flowfloat],.mm-p-steel [data-pop],.mm-p-steel [data-float],.mm-p-steel [data-ctacard],.mm-p-steel [data-curtain],.mm-p-steel [data-roll],.mm-p-steel #works .col,.mm-p-steel #blog .col,.mm-p-steel #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-steel [data-roll="track"],.mm-p-steel [data-roll="track2"],.mm-p-steel [data-roll="track3"]{width: 100% !important;}
}
.mm-p-steel [data-stroke],.mm-p-steel svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-steel [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-steel [data-ringspin] ellipse,.mm-p-steel [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-steel [data-stroke],.mm-p-steel svg[data-brushline] path,.mm-p-steel [data-ringspin] ellipse,.mm-p-steel [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 会社について.dc.html の helmet（.mm-p-about で包む・元の順のまま）：43規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-about span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-about [data-float="about"]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-about [data-float="about"][data-shown="1"]{opacity: 1; transform: none; animation: aboutFloat-about 5.6s ease-in-out .7s infinite;}
.mm-p-about [data-safewipe]{-webkit-mask-image: linear-gradient(38deg,#000 0 49%,rgba(0,0,0,.55) 53%,rgba(0,0,0,0) 58%); mask-image: linear-gradient(38deg,#000 0 49%,rgba(0,0,0,.55) 53%,rgba(0,0,0,0) 58%); -webkit-mask-size: 300% 300%; mask-size: 300% 300%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: 100% 0%; mask-position: 100% 0%; transition: -webkit-mask-position 2.3s cubic-bezier(.28,.68,.32,1), mask-position 2.3s cubic-bezier(.28,.68,.32,1);}
.mm-p-about [data-safewipe][data-shown="1"]{-webkit-mask-position: 0% 100%; mask-position: 0% 100%;}
.mm-p-about [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-about [data-roll="band"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-about [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-about [data-roll="track"][data-shown="1"]{width: 100% !important;}
.mm-p-about [data-roll="band2"]{-webkit-clip-path: inset(0 0 0 100%); clip-path: inset(0 0 0 100%); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-about [data-roll="band2"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-about [data-roll="track2"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-about [data-roll="track2"][data-shown="1"]{width: 100% !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-about [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-about [data-roll="track"]{width: 100% !important; transition: none !important;}
  .mm-p-about [data-roll="band2"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-about [data-roll="track2"]{width: 100% !important; transition: none !important;}
}
@media (prefers-reduced-motion: reduce){
  .mm-p-about [data-safewipe]{-webkit-mask-image: none !important; mask-image: none !important; transition: none !important;}
}
.mm-p-about [data-cardfloat]{opacity: 0; transform: translateY(24px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-about [data-cardfloat][data-shown="1"]{opacity: 1; transform: none; animation: cardFloat 5.4s ease-in-out infinite;}
.mm-p-about [data-cardfloat][data-shown="1"]:nth-child(2){animation-delay: 1.3s;}
.mm-p-about [data-cardfloat][data-shown="1"]:nth-child(3){animation-delay: 2.6s;}
.mm-p-about [data-cardfloat][data-shown="1"]:nth-child(4){animation-delay: 3.9s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-about [data-float="about"]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
  .mm-p-about [data-cardfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-about [data-reveal],.mm-p-about [data-stepin],.mm-p-about [data-signfloat],.mm-p-about [data-slidein],.mm-p-about [data-boxfloat],.mm-p-about [data-cardfloat],.mm-p-about [data-tablefloat],.mm-p-about [data-flowfloat],.mm-p-about [data-pop],.mm-p-about [data-float],.mm-p-about [data-ctacard],.mm-p-about [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-about [data-reveal],.mm-p-about [data-stepin],.mm-p-about [data-boxfloat],.mm-p-about [data-cardfloat],.mm-p-about [data-tablefloat],.mm-p-about [data-flowfloat],.mm-p-about [data-pop],.mm-p-about [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-about [data-slidein],.mm-p-about #works .col,.mm-p-about #blog .col,.mm-p-about #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-about [data-signfloat],.mm-p-about [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-about [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-about [data-curtain="house"],.mm-p-about [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-about [data-roll="band"],.mm-p-about [data-roll="band2"],.mm-p-about [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-about [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-about [data-roll="track"],.mm-p-about [data-roll="track2"],.mm-p-about [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-about [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-about [data-reveal],.mm-p-about [data-stepin],.mm-p-about [data-signfloat],.mm-p-about [data-slidein],.mm-p-about [data-boxfloat],.mm-p-about [data-cardfloat],.mm-p-about [data-tablefloat],.mm-p-about [data-flowfloat],.mm-p-about [data-pop],.mm-p-about [data-float],.mm-p-about [data-ctacard],.mm-p-about [data-curtain],.mm-p-about [data-roll],.mm-p-about #works .col,.mm-p-about #blog .col,.mm-p-about #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-about [data-roll="track"],.mm-p-about [data-roll="track2"],.mm-p-about [data-roll="track3"]{width: 100% !important;}
}
.mm-p-about [data-stroke],.mm-p-about svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-about [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-about [data-ringspin] ellipse,.mm-p-about [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-about [data-stroke],.mm-p-about svg[data-brushline] path,.mm-p-about [data-ringspin] ellipse,.mm-p-about [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-about [data-boxfloat],.mm-p-about [data-boxfloat][data-shown="1"],.mm-p-about [data-signfloat],.mm-p-about [data-signfloat][data-shown="1"],.mm-p-about [data-float],.mm-p-about [data-float][data-shown="1"],.mm-p-about [data-cardfloat],.mm-p-about [data-cardfloat][data-shown="1"],.mm-p-about [data-tablefloat],.mm-p-about [data-tablefloat][data-shown="1"],.mm-p-about [data-flowfloat],.mm-p-about [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}

/* ---- 受領 各種募集.dc.html の helmet（.mm-p-recruit で包む・元の順のまま）：27規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-recruit span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-recruit [data-cardfloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-recruit [data-cardfloat][data-shown="1"]{opacity: 1; transform: none; animation: cardFloat-recruit 5.4s ease-in-out infinite;}
.mm-p-recruit [data-cardfloat="2"][data-shown="1"]{animation-delay: 1.7s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-recruit [data-cardfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-recruit [data-reveal],.mm-p-recruit [data-stepin],.mm-p-recruit [data-signfloat],.mm-p-recruit [data-slidein],.mm-p-recruit [data-boxfloat],.mm-p-recruit [data-cardfloat],.mm-p-recruit [data-tablefloat],.mm-p-recruit [data-flowfloat],.mm-p-recruit [data-pop],.mm-p-recruit [data-float],.mm-p-recruit [data-ctacard],.mm-p-recruit [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-recruit [data-reveal],.mm-p-recruit [data-stepin],.mm-p-recruit [data-boxfloat],.mm-p-recruit [data-cardfloat],.mm-p-recruit [data-tablefloat],.mm-p-recruit [data-flowfloat],.mm-p-recruit [data-pop],.mm-p-recruit [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-recruit [data-slidein],.mm-p-recruit #works .col,.mm-p-recruit #blog .col,.mm-p-recruit #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-recruit [data-signfloat],.mm-p-recruit [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-recruit [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-recruit [data-curtain="house"],.mm-p-recruit [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-recruit [data-roll="band"],.mm-p-recruit [data-roll="band2"],.mm-p-recruit [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-recruit [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-recruit [data-roll="track"],.mm-p-recruit [data-roll="track2"],.mm-p-recruit [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-recruit [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-recruit [data-reveal],.mm-p-recruit [data-stepin],.mm-p-recruit [data-signfloat],.mm-p-recruit [data-slidein],.mm-p-recruit [data-boxfloat],.mm-p-recruit [data-cardfloat],.mm-p-recruit [data-tablefloat],.mm-p-recruit [data-flowfloat],.mm-p-recruit [data-pop],.mm-p-recruit [data-float],.mm-p-recruit [data-ctacard],.mm-p-recruit [data-curtain],.mm-p-recruit [data-roll],.mm-p-recruit #works .col,.mm-p-recruit #blog .col,.mm-p-recruit #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-recruit [data-roll="track"],.mm-p-recruit [data-roll="track2"],.mm-p-recruit [data-roll="track3"]{width: 100% !important;}
}
.mm-p-recruit [data-stroke],.mm-p-recruit svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-recruit [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-recruit [data-ringspin] ellipse,.mm-p-recruit [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-recruit [data-stroke],.mm-p-recruit svg[data-brushline] path,.mm-p-recruit [data-ringspin] ellipse,.mm-p-recruit [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-recruit [data-boxfloat],.mm-p-recruit [data-boxfloat][data-shown="1"],.mm-p-recruit [data-signfloat],.mm-p-recruit [data-signfloat][data-shown="1"],.mm-p-recruit [data-float],.mm-p-recruit [data-float][data-shown="1"],.mm-p-recruit [data-cardfloat],.mm-p-recruit [data-cardfloat][data-shown="1"],.mm-p-recruit [data-tablefloat],.mm-p-recruit [data-tablefloat][data-shown="1"],.mm-p-recruit [data-flowfloat],.mm-p-recruit [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}

/* ---- 受領 現場スタッフ募集.dc.html の helmet（.mm-p-staff で包む・元の順のまま）：55規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-staff span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-staff [data-wishfloat]{opacity: 0; transform: translateY(22px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-wishfloat][data-shown="1"]{opacity: 1; transform: none; animation: wishFloat 5.2s ease-in-out infinite;}
.mm-p-staff [data-wishfloat="2"][data-shown="1"]{animation-delay: 1.3s;}
.mm-p-staff [data-wishfloat="3"][data-shown="1"]{animation-delay: 2.6s;}
.mm-p-staff [data-wishfloat="4"][data-shown="1"]{animation-delay: 3.9s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-wishfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-staff [data-sitefloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-sitefloat][data-shown="1"]{opacity: 1; transform: none; animation: siteFloat 5.4s ease-in-out infinite;}
.mm-p-staff [data-sitefloat][data-shown="1"]:nth-child(2){animation-delay: .9s;}
.mm-p-staff [data-sitefloat][data-shown="1"]:nth-child(3){animation-delay: 1.8s;}
.mm-p-staff [data-sitefloat][data-shown="1"]:nth-child(4){animation-delay: 2.7s;}
.mm-p-staff [data-sitefloat][data-shown="1"]:nth-child(5){animation-delay: 3.6s;}
.mm-p-staff [data-sitefloat][data-shown="1"]:nth-child(6){animation-delay: 4.5s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-sitefloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-staff [data-flowfloat]{opacity: 0; transform: translateY(22px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-flowfloat][data-shown="1"]{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-flowfloat]{opacity: 1 !important; transform: none !important; transition: none !important;}
}
.mm-p-staff [data-wishfloat]{opacity: 0; transform: translateY(22px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-wishfloat][data-shown="1"]{opacity: 1; transform: none; animation: wishFloat 5.2s ease-in-out infinite;}
.mm-p-staff [data-wishfloat="2"][data-shown="1"]{animation-delay: 1.3s;}
.mm-p-staff [data-wishfloat="3"][data-shown="1"]{animation-delay: 2.6s;}
.mm-p-staff [data-wishfloat="4"][data-shown="1"]{animation-delay: 3.9s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-wishfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-staff [data-ring][data-ringing="1"]{animation: phoneShake 1s ease-in-out;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-ring][data-ringing="1"]{animation: none !important;}
}
.mm-p-staff [data-ctacard]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-ctacard][data-shown="1"]{opacity: 1; transform: none;}
.mm-p-staff [data-ctasheen]{opacity: 0;}
.mm-p-staff [data-ctacard][data-shown="1"] [data-ctasheen]{animation: ctaSheen 1.5s cubic-bezier(.32,.72,.3,1) .55s both;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-ctacard]{opacity: 1 !important; transform: none !important; transition: none !important;}
  .mm-p-staff [data-ctacard][data-shown="1"] [data-ctasheen]{animation: none !important;}
}
.mm-p-staff [data-float="staff"]{opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);}
.mm-p-staff [data-float="staff"][data-shown="1"]{opacity: 1; transform: none; animation: staffFloat 5.6s ease-in-out .7s infinite;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-float="staff"]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-staff [data-reveal],.mm-p-staff [data-stepin],.mm-p-staff [data-signfloat],.mm-p-staff [data-slidein],.mm-p-staff [data-boxfloat],.mm-p-staff [data-cardfloat],.mm-p-staff [data-tablefloat],.mm-p-staff [data-flowfloat],.mm-p-staff [data-pop],.mm-p-staff [data-float],.mm-p-staff [data-ctacard],.mm-p-staff [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-staff [data-reveal],.mm-p-staff [data-stepin],.mm-p-staff [data-boxfloat],.mm-p-staff [data-cardfloat],.mm-p-staff [data-tablefloat],.mm-p-staff [data-flowfloat],.mm-p-staff [data-pop],.mm-p-staff [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-staff [data-slidein],.mm-p-staff #works .col,.mm-p-staff #blog .col,.mm-p-staff #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-staff [data-signfloat],.mm-p-staff [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-staff [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-staff [data-curtain="house"],.mm-p-staff [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-staff [data-roll="band"],.mm-p-staff [data-roll="band2"],.mm-p-staff [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-staff [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-staff [data-roll="track"],.mm-p-staff [data-roll="track2"],.mm-p-staff [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-staff [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-reveal],.mm-p-staff [data-stepin],.mm-p-staff [data-signfloat],.mm-p-staff [data-slidein],.mm-p-staff [data-boxfloat],.mm-p-staff [data-cardfloat],.mm-p-staff [data-tablefloat],.mm-p-staff [data-flowfloat],.mm-p-staff [data-pop],.mm-p-staff [data-float],.mm-p-staff [data-ctacard],.mm-p-staff [data-curtain],.mm-p-staff [data-roll],.mm-p-staff #works .col,.mm-p-staff #blog .col,.mm-p-staff #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-staff [data-roll="track"],.mm-p-staff [data-roll="track2"],.mm-p-staff [data-roll="track3"]{width: 100% !important;}
}
.mm-p-staff [data-stroke],.mm-p-staff svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-staff [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-staff [data-ringspin] ellipse,.mm-p-staff [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-staff [data-stroke],.mm-p-staff svg[data-brushline] path,.mm-p-staff [data-ringspin] ellipse,.mm-p-staff [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 協力業者募集.dc.html の helmet（.mm-p-partner で包む・元の順のまま）：35規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-partner span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-partner [data-boxfloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-partner [data-boxfloat][data-shown="1"]{opacity: 1; transform: none; animation: boxFloat 5.4s ease-in-out infinite;}
.mm-p-partner [data-boxfloat="2"][data-shown="1"]{animation-delay: 1.6s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-partner [data-boxfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
@media (max-width: 900px){
  .mm-p-partner [data-roll="band"] p{white-space: normal !important;}
}
.mm-p-partner [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-partner [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
@media (prefers-reduced-motion: reduce){
  .mm-p-partner [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-partner [data-roll="track"]{width: 100% !important; transition: none !important;}
}
.mm-p-partner [data-stepin]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-partner [data-stepin][data-shown="1"]{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){
  .mm-p-partner [data-stepin]{opacity: 1 !important; transform: none !important; transition: none !important;}
}
.mm-p-partner [data-reveal],.mm-p-partner [data-stepin],.mm-p-partner [data-signfloat],.mm-p-partner [data-slidein],.mm-p-partner [data-boxfloat],.mm-p-partner [data-cardfloat],.mm-p-partner [data-tablefloat],.mm-p-partner [data-flowfloat],.mm-p-partner [data-pop],.mm-p-partner [data-float],.mm-p-partner [data-ctacard],.mm-p-partner [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-partner [data-reveal],.mm-p-partner [data-stepin],.mm-p-partner [data-boxfloat],.mm-p-partner [data-cardfloat],.mm-p-partner [data-tablefloat],.mm-p-partner [data-flowfloat],.mm-p-partner [data-pop],.mm-p-partner [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-partner [data-slidein],.mm-p-partner #works .col,.mm-p-partner #blog .col,.mm-p-partner #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-partner [data-signfloat],.mm-p-partner [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-partner [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-partner [data-curtain="house"],.mm-p-partner [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-partner [data-roll="band"],.mm-p-partner [data-roll="band2"],.mm-p-partner [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-partner [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-partner [data-roll="track"],.mm-p-partner [data-roll="track2"],.mm-p-partner [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-partner [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-partner [data-reveal],.mm-p-partner [data-stepin],.mm-p-partner [data-signfloat],.mm-p-partner [data-slidein],.mm-p-partner [data-boxfloat],.mm-p-partner [data-cardfloat],.mm-p-partner [data-tablefloat],.mm-p-partner [data-flowfloat],.mm-p-partner [data-pop],.mm-p-partner [data-float],.mm-p-partner [data-ctacard],.mm-p-partner [data-curtain],.mm-p-partner [data-roll],.mm-p-partner #works .col,.mm-p-partner #blog .col,.mm-p-partner #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-partner [data-roll="track"],.mm-p-partner [data-roll="track2"],.mm-p-partner [data-roll="track3"]{width: 100% !important;}
}
.mm-p-partner [data-stroke],.mm-p-partner svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-partner [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-partner [data-ringspin] ellipse,.mm-p-partner [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-partner [data-stroke],.mm-p-partner svg[data-brushline] path,.mm-p-partner [data-ringspin] ellipse,.mm-p-partner [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-partner [data-boxfloat],.mm-p-partner [data-boxfloat][data-shown="1"],.mm-p-partner [data-signfloat],.mm-p-partner [data-signfloat][data-shown="1"],.mm-p-partner [data-float],.mm-p-partner [data-float][data-shown="1"],.mm-p-partner [data-cardfloat],.mm-p-partner [data-cardfloat][data-shown="1"],.mm-p-partner [data-tablefloat],.mm-p-partner [data-tablefloat][data-shown="1"],.mm-p-partner [data-flowfloat],.mm-p-partner [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}
.mm-p-partner [data-orb]{transform: none !important;}

/* ---- 受領 会社概要.dc.html の helmet（.mm-p-info で包む・元の順のまま）：28規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-info span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-info [data-tablefloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-info [data-tablefloat][data-shown="1"]{opacity: 1; transform: none; animation: tableFloat 5.6s ease-in-out infinite;}
.mm-p-info [data-tablefloat="2"][data-shown="1"]{animation-delay: 1.4s;}
.mm-p-info [data-tablefloat="3"][data-shown="1"]{animation-delay: 2.8s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-info [data-tablefloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-info [data-reveal],.mm-p-info [data-stepin],.mm-p-info [data-signfloat],.mm-p-info [data-slidein],.mm-p-info [data-boxfloat],.mm-p-info [data-cardfloat],.mm-p-info [data-tablefloat],.mm-p-info [data-flowfloat],.mm-p-info [data-pop],.mm-p-info [data-float],.mm-p-info [data-ctacard],.mm-p-info [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-info [data-reveal],.mm-p-info [data-stepin],.mm-p-info [data-boxfloat],.mm-p-info [data-cardfloat],.mm-p-info [data-tablefloat],.mm-p-info [data-flowfloat],.mm-p-info [data-pop],.mm-p-info [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-info [data-slidein],.mm-p-info #works .col,.mm-p-info #blog .col,.mm-p-info #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-info [data-signfloat],.mm-p-info [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-info [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-info [data-curtain="house"],.mm-p-info [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-info [data-roll="band"],.mm-p-info [data-roll="band2"],.mm-p-info [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-info [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-info [data-roll="track"],.mm-p-info [data-roll="track2"],.mm-p-info [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-info [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-info [data-reveal],.mm-p-info [data-stepin],.mm-p-info [data-signfloat],.mm-p-info [data-slidein],.mm-p-info [data-boxfloat],.mm-p-info [data-cardfloat],.mm-p-info [data-tablefloat],.mm-p-info [data-flowfloat],.mm-p-info [data-pop],.mm-p-info [data-float],.mm-p-info [data-ctacard],.mm-p-info [data-curtain],.mm-p-info [data-roll],.mm-p-info #works .col,.mm-p-info #blog .col,.mm-p-info #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-info [data-roll="track"],.mm-p-info [data-roll="track2"],.mm-p-info [data-roll="track3"]{width: 100% !important;}
}
.mm-p-info [data-stroke],.mm-p-info svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-info [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-info [data-ringspin] ellipse,.mm-p-info [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-info [data-stroke],.mm-p-info svg[data-brushline] path,.mm-p-info [data-ringspin] ellipse,.mm-p-info [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-info [data-boxfloat],.mm-p-info [data-boxfloat][data-shown="1"],.mm-p-info [data-signfloat],.mm-p-info [data-signfloat][data-shown="1"],.mm-p-info [data-float],.mm-p-info [data-float][data-shown="1"],.mm-p-info [data-cardfloat],.mm-p-info [data-cardfloat][data-shown="1"],.mm-p-info [data-tablefloat],.mm-p-info [data-tablefloat][data-shown="1"],.mm-p-info [data-flowfloat],.mm-p-info [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}

/* ---- 受領 sitemap.dc.html の helmet（.mm-p-sitemap で包む・元の順のまま）：6規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}

/* ---- 受領 施工実績.dc.html の helmet（.mm-p-works で包む・元の順のまま）：33規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-works span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-works [data-roll="band"]{-webkit-clip-path: inset(0 100% 0 0); clip-path: inset(0 100% 0 0); transition: clip-path 1.8s cubic-bezier(.3,.7,.32,1), -webkit-clip-path 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-works [data-roll="band"][data-shown="1"]{-webkit-clip-path: inset(0 0 0 0) !important; clip-path: inset(0 0 0 0) !important;}
.mm-p-works [data-roll="track"]{width: 0; transition: width 1.8s cubic-bezier(.3,.7,.32,1);}
.mm-p-works [data-roll="track"][data-shown="1"]{width: 100% !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-works [data-roll="band"]{-webkit-clip-path: none !important; clip-path: none !important; transition: none !important;}
  .mm-p-works [data-roll="track"]{width: 100% !important; transition: none !important;}
}
.mm-p-works [data-cardfloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-works [data-cardfloat][data-shown="1"]{opacity: 1; transform: none; animation: cardFloat-works 5.4s ease-in-out infinite;}
.mm-p-works [data-cardfloat][data-shown="1"]:nth-child(3){animation-delay: 1.3s;}
.mm-p-works [data-cardfloat][data-shown="1"]:nth-child(4){animation-delay: 2.6s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-works [data-cardfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-works [data-reveal],.mm-p-works [data-stepin],.mm-p-works [data-signfloat],.mm-p-works [data-slidein],.mm-p-works [data-boxfloat],.mm-p-works [data-cardfloat],.mm-p-works [data-tablefloat],.mm-p-works [data-flowfloat],.mm-p-works [data-pop],.mm-p-works [data-float],.mm-p-works [data-ctacard],.mm-p-works [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-works [data-reveal],.mm-p-works [data-stepin],.mm-p-works [data-boxfloat],.mm-p-works [data-cardfloat],.mm-p-works [data-tablefloat],.mm-p-works [data-flowfloat],.mm-p-works [data-pop],.mm-p-works [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-works [data-slidein],.mm-p-works #works .col,.mm-p-works #blog .col,.mm-p-works #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-works [data-signfloat],.mm-p-works [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-works [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-works [data-curtain="house"],.mm-p-works [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-works [data-roll="band"],.mm-p-works [data-roll="band2"],.mm-p-works [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-works [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-works [data-roll="track"],.mm-p-works [data-roll="track2"],.mm-p-works [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-works [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-works [data-reveal],.mm-p-works [data-stepin],.mm-p-works [data-signfloat],.mm-p-works [data-slidein],.mm-p-works [data-boxfloat],.mm-p-works [data-cardfloat],.mm-p-works [data-tablefloat],.mm-p-works [data-flowfloat],.mm-p-works [data-pop],.mm-p-works [data-float],.mm-p-works [data-ctacard],.mm-p-works [data-curtain],.mm-p-works [data-roll],.mm-p-works #works .col,.mm-p-works #blog .col,.mm-p-works #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-works [data-roll="track"],.mm-p-works [data-roll="track2"],.mm-p-works [data-roll="track3"]{width: 100% !important;}
}
.mm-p-works [data-stroke],.mm-p-works svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-works [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-works [data-ringspin] ellipse,.mm-p-works [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-works [data-stroke],.mm-p-works svg[data-brushline] path,.mm-p-works [data-ringspin] ellipse,.mm-p-works [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-works [data-boxfloat],.mm-p-works [data-boxfloat][data-shown="1"],.mm-p-works [data-signfloat],.mm-p-works [data-signfloat][data-shown="1"],.mm-p-works [data-float],.mm-p-works [data-float][data-shown="1"],.mm-p-works [data-cardfloat],.mm-p-works [data-cardfloat][data-shown="1"],.mm-p-works [data-tablefloat],.mm-p-works [data-tablefloat][data-shown="1"],.mm-p-works [data-flowfloat],.mm-p-works [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}

/* ---- 受領 blog.dc.html の helmet（.mm-p-blog で包む・元の順のまま）：28規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-blog span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
.mm-p-blog [data-cardfloat]{opacity: 0; transform: translateY(24px); transition: opacity .65s cubic-bezier(.22,.7,.3,1), transform .65s cubic-bezier(.22,.7,.3,1);}
.mm-p-blog [data-cardfloat][data-shown="1"]{opacity: 1; transform: none; animation: cardFloat-blog 5.4s ease-in-out infinite;}
.mm-p-blog [data-cardfloat="2"][data-shown="1"]{animation-delay: 1.3s;}
.mm-p-blog [data-cardfloat="3"][data-shown="1"]{animation-delay: 2.6s;}
@media (prefers-reduced-motion: reduce){
  .mm-p-blog [data-cardfloat]{opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important;}
}
.mm-p-blog [data-reveal],.mm-p-blog [data-stepin],.mm-p-blog [data-signfloat],.mm-p-blog [data-slidein],.mm-p-blog [data-boxfloat],.mm-p-blog [data-cardfloat],.mm-p-blog [data-tablefloat],.mm-p-blog [data-flowfloat],.mm-p-blog [data-pop],.mm-p-blog [data-float],.mm-p-blog [data-ctacard],.mm-p-blog [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-blog [data-reveal],.mm-p-blog [data-stepin],.mm-p-blog [data-boxfloat],.mm-p-blog [data-cardfloat],.mm-p-blog [data-tablefloat],.mm-p-blog [data-flowfloat],.mm-p-blog [data-pop],.mm-p-blog [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-blog [data-slidein],.mm-p-blog #works .col,.mm-p-blog #blog .col,.mm-p-blog #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-blog [data-signfloat],.mm-p-blog [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-blog [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-blog [data-curtain="house"],.mm-p-blog [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-blog [data-roll="band"],.mm-p-blog [data-roll="band2"],.mm-p-blog [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-blog [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-blog [data-roll="track"],.mm-p-blog [data-roll="track2"],.mm-p-blog [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-blog [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-blog [data-reveal],.mm-p-blog [data-stepin],.mm-p-blog [data-signfloat],.mm-p-blog [data-slidein],.mm-p-blog [data-boxfloat],.mm-p-blog [data-cardfloat],.mm-p-blog [data-tablefloat],.mm-p-blog [data-flowfloat],.mm-p-blog [data-pop],.mm-p-blog [data-float],.mm-p-blog [data-ctacard],.mm-p-blog [data-curtain],.mm-p-blog [data-roll],.mm-p-blog #works .col,.mm-p-blog #blog .col,.mm-p-blog #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-blog [data-roll="track"],.mm-p-blog [data-roll="track2"],.mm-p-blog [data-roll="track3"]{width: 100% !important;}
}
.mm-p-blog [data-stroke],.mm-p-blog svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-blog [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-blog [data-ringspin] ellipse,.mm-p-blog [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-blog [data-stroke],.mm-p-blog svg[data-brushline] path,.mm-p-blog [data-ringspin] ellipse,.mm-p-blog [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}
.mm-p-blog [data-boxfloat],.mm-p-blog [data-boxfloat][data-shown="1"],.mm-p-blog [data-signfloat],.mm-p-blog [data-signfloat][data-shown="1"],.mm-p-blog [data-float],.mm-p-blog [data-float][data-shown="1"],.mm-p-blog [data-cardfloat],.mm-p-blog [data-cardfloat][data-shown="1"],.mm-p-blog [data-tablefloat],.mm-p-blog [data-tablefloat][data-shown="1"],.mm-p-blog [data-flowfloat],.mm-p-blog [data-flowfloat][data-shown="1"]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both !important;}

/* ---- 受領 お問い合わせ.dc.html の helmet（.mm-p-inquiry で包む・元の順のまま）：25規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-inquiry span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
input,select,textarea{font-family: inherit; font-size: 16px;}
.mm-p-inquiry [data-ring][data-ringing="1"]{animation: phoneRing-inquiry .82s cubic-bezier(.36,.07,.19,.97) 2;}
@media (prefers-reduced-motion: reduce){
  .mm-p-inquiry [data-ring][data-ringing="1"]{animation: none !important;}
}
.mm-p-inquiry [data-reveal],.mm-p-inquiry [data-stepin],.mm-p-inquiry [data-signfloat],.mm-p-inquiry [data-slidein],.mm-p-inquiry [data-boxfloat],.mm-p-inquiry [data-cardfloat],.mm-p-inquiry [data-tablefloat],.mm-p-inquiry [data-flowfloat],.mm-p-inquiry [data-pop],.mm-p-inquiry [data-float],.mm-p-inquiry [data-ctacard],.mm-p-inquiry [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-inquiry [data-reveal],.mm-p-inquiry [data-stepin],.mm-p-inquiry [data-boxfloat],.mm-p-inquiry [data-cardfloat],.mm-p-inquiry [data-tablefloat],.mm-p-inquiry [data-flowfloat],.mm-p-inquiry [data-pop],.mm-p-inquiry [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-inquiry [data-slidein],.mm-p-inquiry #works .col,.mm-p-inquiry #blog .col,.mm-p-inquiry #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-inquiry [data-signfloat],.mm-p-inquiry [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-inquiry [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-inquiry [data-curtain="house"],.mm-p-inquiry [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-inquiry [data-roll="band"],.mm-p-inquiry [data-roll="band2"],.mm-p-inquiry [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-inquiry [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-inquiry [data-roll="track"],.mm-p-inquiry [data-roll="track2"],.mm-p-inquiry [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-inquiry [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-inquiry [data-reveal],.mm-p-inquiry [data-stepin],.mm-p-inquiry [data-signfloat],.mm-p-inquiry [data-slidein],.mm-p-inquiry [data-boxfloat],.mm-p-inquiry [data-cardfloat],.mm-p-inquiry [data-tablefloat],.mm-p-inquiry [data-flowfloat],.mm-p-inquiry [data-pop],.mm-p-inquiry [data-float],.mm-p-inquiry [data-ctacard],.mm-p-inquiry [data-curtain],.mm-p-inquiry [data-roll],.mm-p-inquiry #works .col,.mm-p-inquiry #blog .col,.mm-p-inquiry #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-inquiry [data-roll="track"],.mm-p-inquiry [data-roll="track2"],.mm-p-inquiry [data-roll="track3"]{width: 100% !important;}
}
.mm-p-inquiry [data-stroke],.mm-p-inquiry svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-inquiry [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-inquiry [data-ringspin] ellipse,.mm-p-inquiry [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-inquiry [data-stroke],.mm-p-inquiry svg[data-brushline] path,.mm-p-inquiry [data-ringspin] ellipse,.mm-p-inquiry [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 応募フォーム.dc.html の helmet（.mm-p-entry で包む・元の順のまま）：23規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-entry span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}
input,select,textarea{font-family: inherit; font-size: 16px;}
.mm-p-entry [data-reveal],.mm-p-entry [data-stepin],.mm-p-entry [data-signfloat],.mm-p-entry [data-slidein],.mm-p-entry [data-boxfloat],.mm-p-entry [data-cardfloat],.mm-p-entry [data-tablefloat],.mm-p-entry [data-flowfloat],.mm-p-entry [data-pop],.mm-p-entry [data-float],.mm-p-entry [data-ctacard],.mm-p-entry [data-glassbg]{opacity: 1 !important; animation-fill-mode: both !important;}
.mm-p-entry [data-reveal],.mm-p-entry [data-stepin],.mm-p-entry [data-boxfloat],.mm-p-entry [data-cardfloat],.mm-p-entry [data-tablefloat],.mm-p-entry [data-flowfloat],.mm-p-entry [data-pop],.mm-p-entry [data-ctacard]{animation-name: fsUp !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important;}
.mm-p-entry [data-slidein],.mm-p-entry #works .col,.mm-p-entry #blog .col,.mm-p-entry #check ul > li{animation-name: fsRight !important; animation-duration: .7s !important; animation-timing-function: cubic-bezier(.22,.7,.3,1) !important; opacity: 1 !important;}
.mm-p-entry [data-signfloat],.mm-p-entry [data-float]{animation: fsUp .7s cubic-bezier(.22,.7,.3,1) both, fsBob 5.4s ease-in-out .9s infinite !important;}
.mm-p-entry [data-curtain]{-webkit-clip-path: none; clip-path: none; animation: fsCurtainTL 1.6s cubic-bezier(.3,.72,.28,1) .2s both !important;}
.mm-p-entry [data-curtain="house"],.mm-p-entry [data-curtain="intro2"]{animation-name: fsCurtainBR !important;}
.mm-p-entry [data-roll="band"],.mm-p-entry [data-roll="band2"],.mm-p-entry [data-roll="band3"]{-webkit-clip-path: none; clip-path: none; animation: fsBandL 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-entry [data-roll="band2"]{animation-name: fsBandR !important;}
.mm-p-entry [data-roll="track"],.mm-p-entry [data-roll="track2"],.mm-p-entry [data-roll="track3"]{width: 100% !important; animation: fsTrack 1.8s cubic-bezier(.3,.7,.32,1) .25s both !important;}
.mm-p-entry [data-glassbg]{opacity: 1 !important; transform: none !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-entry [data-reveal],.mm-p-entry [data-stepin],.mm-p-entry [data-signfloat],.mm-p-entry [data-slidein],.mm-p-entry [data-boxfloat],.mm-p-entry [data-cardfloat],.mm-p-entry [data-tablefloat],.mm-p-entry [data-flowfloat],.mm-p-entry [data-pop],.mm-p-entry [data-float],.mm-p-entry [data-ctacard],.mm-p-entry [data-curtain],.mm-p-entry [data-roll],.mm-p-entry #works .col,.mm-p-entry #blog .col,.mm-p-entry #check ul > li{animation: none !important; transform: none !important;}
  .mm-p-entry [data-roll="track"],.mm-p-entry [data-roll="track2"],.mm-p-entry [data-roll="track3"]{width: 100% !important;}
}
.mm-p-entry [data-stroke],.mm-p-entry svg[data-brushline] path{stroke-dasharray: 1 !important; stroke-dashoffset: 0 !important; animation: fsDraw 1.1s cubic-bezier(.35,.7,.32,1) .2s both !important;}
.mm-p-entry [data-brushtex]{stroke-dashoffset: 0 !important;}
.mm-p-entry [data-ringspin] ellipse,.mm-p-entry [data-ringspin] circle{opacity: 1 !important; animation: fsRing 1.6s linear .3s both !important;}
@media (prefers-reduced-motion: reduce){
  .mm-p-entry [data-stroke],.mm-p-entry svg[data-brushline] path,.mm-p-entry [data-ringspin] ellipse,.mm-p-entry [data-ringspin] circle{stroke-dashoffset: 0 !important; opacity: 1 !important; animation: none !important;}
}

/* ---- 受領 privacypolicy.dc.html の helmet（.mm-p-privacy で包む・元の順のまま）：7規則 ---- */
html{-webkit-text-size-adjust: 100%;}
body{margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; color: #222222; background: #FFFFFF; overflow-wrap: anywhere;}
*{box-sizing: border-box;}
.mm-p-privacy span.line-chunk{display: inline-block; overflow-wrap: anywhere; word-break: normal;}
a{color: #0F7FA3;}
a:hover{color: #046C3B;}
a:focus-visible{outline: 3px solid #06A65A; outline-offset: 2px;}

/* ---- 生成クラス：style-hover ---- */
.mmh1:hover{transform:translateY(-6px) !important;box-shadow:0 16px 30px rgba(15,127,163,.22) !important;}
.mmh2:hover{background-position:-140% 0,0 0 !important;box-shadow:0 12px 26px rgba(6,166,90,.36) !important;}
.mmh3:hover{background:#EDF7FB !important;color:#0F7FA3 !important;}
.mmh4:hover{background:#EDF7FB !important;}
.mmh5:hover{transform:translateY(-6px) !important;box-shadow:0 18px 34px rgba(15,127,163,.24) !important;}
.mmh6:hover{color:#046C3B !important;}
.mmh7:hover{background-position:-140% 0,0 0 !important;box-shadow:0 16px 32px rgba(6,166,90,.36) !important;}
.mmh8:hover{transform:translateY(-6px) !important;box-shadow:0 18px 34px rgba(15,127,163,.26) !important;}
.mmh9:hover{transform:translateY(-6px) !important;box-shadow:0 20px 36px rgba(15,127,163,.26) !important;}
.mmh10:hover{transform:translateY(-6px) !important;box-shadow:0 18px 34px rgba(6,166,90,.34) !important;}
.mmh11:hover{color:#0F7FA3 !important;}
.mmh12:hover{background-position:-140% 0,0 0 !important;transform:translateY(-6px) !important;box-shadow:0 20px 36px rgba(6,166,90,.36) !important;}
.mmh13:hover{transform:translateY(-6px) !important;box-shadow:0 18px 34px rgba(15,127,163,.22) !important;}
.mmh14:hover{text-decoration:underline !important;}

/* ---- 生成クラス：インラインの animation / transition の退避先（3重クラス・important無し） ---- */
.mma1.mma1.mma1{transition:transform .28s cubic-bezier(.3,.7,.32,1),box-shadow .28s ease;}
.mma2.mma2.mma2{transition:background-position .7s ease,box-shadow .3s ease;}
.mma3.mma3.mma3{transition:opacity 1.1s ease;}
.mma4.mma4.mma4{animation:brushReveal 1.5s cubic-bezier(.32,.72,.3,1) .33s both;}
.mma5.mma5.mma5{animation:brushSwipe 1.5s cubic-bezier(.32,.72,.3,1) .25s both;}
.mma6.mma6.mma6{animation:strokeGrow 1.5s cubic-bezier(.32,.72,.3,1) .25s both;}
.mma7.mma7.mma7{transition:background-position .7s ease,box-shadow .3s ease,transform .28s cubic-bezier(.3,.7,.32,1);}


/* ===== 21_cuezilla-skin.css ===== */
/* ============================================================
   ★★★ このファイルは【全案件共通の資産】です。案件では編集しないでください ★★★
   ------------------------------------------------------------
   （Claude Code / Claude Design / 手作業、いずれの経路でも同じです）

   ■ 案件ごとの調整は、必ず `override.css` に書いてください。
     読み込み/結合順が  … → style.css → cuezilla-skin.css → 【override.css】  なので、
     override.css に書いた指定は本ファイルに打ち消されません。**案件の上書きが効く唯一の場所です。**
     （例: カード面を白にしたい → override.css に `:root{ --dyn-surface:#fff; }`）

   ■ なぜ編集してはいけないか
     本ファイルを案件で書き換えた瞬間、その案件の skin は共通資産から切り離されます。
     以後、共通側で直した修正（カード高さの不揃い／サイドバーの可読性／
     フォーム送信ボタンの崩れ 等）が **その案件には二度と届きません**。
     実際に S01189 で本ファイルの §0 が案件調整で書き換えられ、共通修正が届かなくなりました。
     「毎案件おなじ崩れを直している」の原因はこれです。

   ■ 共通で直すべき崩れを見つけたら
     案件で握り込まず、正本 `skin/cuezilla-skin.css` へ還流してください（全案件に効きます）。
     還流し忘れると、次の同期でその修正は消えます。

   詳細は R-30（70_運用ルール/運用ルール集.md）。
   ============================================================ */

/* ============================================================
   CueZilla 動的パーツ スキンキット v1.0
   ------------------------------------------------------------
   目的: ブログ/施工実績(blog-ex)/お問い合わせ/パンくず/ページヘッダー等の
         CueZilla 既定パーツを、サイトのトンマナ（ダーク/ライト・ブランド色・
         フォント・角丸）に "自動で寄せる" 汎用CSS。案件ごとの調整を最小化する。

   思想:
     (1) 色は CueZilla テーマ変数(--main-color 等)から自動連動
         → サイトのテーマ設定がそのまま skin にも効く（色は一元管理）
     (2) フォント/角丸/グリッド幅はトークンで指定（テーマ変数に無いため）
     (3) partsNNN は採番が可変だが接尾辞は共通(_post_wrap 等)
         → 属性セレクタ [class*="_xxx"] で番号非依存に当てる（単一属性セレクタまで。積んで詳細度を稼がない）

   ★適用範囲と安全契約（重要・memory: cuezilla-css-safety-contract）:
     ・本skinは「CueZilla既定の動的パーツ」だけを寄せる。サイトのフリーコーディング設計には当てない
       （生成サイトCSSは変数非依存＋具体値＋自作接頭辞クラスで組む＝構造的に非衝突・skinと干渉しない）。
     ・[class*=…]を積んで詳細度を同点/超過させる手法は禁止（脆い・過剰マッチ・アーマーレース）。
       単一の番号非依存セレクタ＋!important1個で当てる（theme_defaultは非importantなので確定勝ち）。
     ・!important可は「レイヤーで越えられない相手」＝theme_default／body内インライン／BSユーティリティ／
       .partsNNN_blog_＜ID＞(0,3,0) のみ。後者(0,3,0)+!importantには詳細度で負けるため、
       負けた時だけ §14 の手順で実採番(0,3,1)を【案件CSS】に足して勝つ（汎用skinには番号を書かない）。
     ・変数の注意：実機は body内コンポの style 要素の :root が7色(--main-color等)を撒きうる（490件中16件）。
       →§0の--dyn-*はその頁で乗っ取られ得る。動的パーツの色合わせには許容だが、サイト設計の主機構にしない。

   使い方:
     1. §0 のトークンを案件に合わせて調整（ダーク/ライトはプリセットをコピー）
     2. CueZilla テーマカラー(--main-color 等)をブランド値に設定
     3. 本ファイルをサイト全体CSS(AddCssInfo)へ貼る（サイト固有のフリーコーディングCSSの後ろ）
   ============================================================ */


/* ============================================================
   §0  トークン ─ ここだけ案件ごとに調整
   ============================================================ */
:root{
  /* --- 色: CueZilla テーマ変数から自動取得（無い場合のフォールバック付き） ---
     ※これらは【動的パーツの色合わせ用】。生成サイトCSSはこの変数に依存せず具体値で書く（安全契約）。
       実機では body内コンポの style 要素の :root が --main-color 等を頁単位で上書きしうる＝--dyn-*も追従する。 */
  --dyn-bg:        var(--background-color, #ffffff);   /* ページ/セクション背景 */
  --dyn-surface:   var(--temporary-color, #f4f4f2);    /* カード/パネル/入力欄の面 */
  --dyn-text:      var(--text-color, #222222);         /* 本文 */
  --dyn-heading:   var(--text-color, #111111);         /* 見出し */
  --dyn-muted:     var(--sub-color, #8a8a8a);          /* 補助/日付 */
  --dyn-border:    var(--sub-color, #dddddd);          /* 罫線/枠 */
  --dyn-accent:    var(--main-color, #1e3a5f);         /* アクセント（ボタン/チップ/見出しバー） */
  --dyn-accent-2:  var(--link-color, var(--main-color, #1e3a5f)); /* リンク/ホバー */
  --dyn-on-accent: #ffffff;                             /* アクセント面の上の文字 */

  /* --- フォント（site.css の :root に定義があればそれを使用） ---
     KEEP: ★既定を明朝にしない（2026-08-31 ディレクター判断）。旧既定は display と numeric が
     `"Noto Serif JP","Yu Mincho",serif` / `"EB Garamond","Noto Serif JP",serif` ＝**明朝**で、
     案件が `--font-*` を渡し忘れると**動的ページ（ブログ・施工実績）だけが明朝で出る**。
     実測 S00757 スマイルカミオン: 記事タイトル・抜粋・タグ（display）7要素＋20要素、日付（numeric）各4要素が明朝になり、
     ディレクター指摘「ブログページに明朝が活用されていますが、サイト全体のフォントで統一してください」を受けた。
     ★渡し忘れは"案件のミス"だが、**気づけるのが公開直前の目視だけ**で、静的ページを見ている限り絶対に露見しない。
     ＝**既定が事故を作っていた**ので、既定側を直す。方針は「今後進める案件がサイトに使用しているフォントで
     反映される仕様にする」（ディレクター 2026-08-31）。
     ★意図して明朝にしたい案件は、これまでどおり `--font-display` 等を渡せばそのまま効く（機構は不変）。
     ★numeric は日付・英字ラベル用なので、和文本文より英字の顔が合う。sans を既定にしつつ英字を先頭へ置く。
     ★既存の納品済み案件は影響を受けない（納品CSSは書き出し時にベイク済みで、再エクスポートしない限り変わらない）。 */
  --dyn-font-display: var(--font-display, "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif);
  --dyn-font-body:    var(--font-body, "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif);
  --dyn-font-numeric: var(--font-numeric, "Helvetica Neue",Arial,"Noto Sans JP",sans-serif);
  /* /KEEP */

  /* --- 角丸（チップ/ボタン/カード）。角なしにするなら 0 --- */
  --dyn-radius: 6px;
  /* --- 一覧カードの最小幅 / 段組ギャップ --- */
  --dyn-card-min: 300px;
  --dyn-gap: 32px;
}

/* === テーマ プリセット（使う方を §0 の後にコピペして上書き） =========
   【ダーク】
   :root{
     --dyn-bg:#0A0A0A; --dyn-surface:#111110; --dyn-text:#F4F1EC; --dyn-heading:#FAF7F1;
     --dyn-muted:#8C857A; --dyn-border:#3A352D; --dyn-accent:#8E3A22; --dyn-accent-2:#B0533A;
     --dyn-on-accent:#FAF7F1; --dyn-radius:0;
   }
   【ライト】
   :root{
     --dyn-bg:#ffffff; --dyn-surface:#f7f7f5; --dyn-text:#222222; --dyn-heading:#111111;
     --dyn-muted:#8a8a8a; --dyn-border:#e3e3e3; --dyn-accent:#1e3a5f; --dyn-accent-2:#1e3a5f;
     --dyn-on-accent:#ffffff; --dyn-radius:6px;
   }
   ※ CueZilla テーマ変数(--main-color 等)を設定する場合は §0 が自動連動するのでプリセット不要。
   ============================================================ */


/* ============================================================
   §1  パンくず（CueZilla parts###_breadcrumb / p-breadcrumb）
   実markup: div.parts###_breadcrumb.p-breadcrumb.c-breadcrumb
             > ul.p-breadcrumb__inner(BreadcrumbList) > li.p-breadcrumb__item(ListItem)
   CueZilla共通CSSにパンくず装飾は無い → skin側で横並び・区切り・配色を付与
   ============================================================ */
[class*="_breadcrumb"], .p-breadcrumb{ background:var(--dyn-bg) !important; }
.p-breadcrumb__inner{
  list-style:none; margin:0 auto; padding:14px 24px;
  max-width:1200px; display:flex; flex-wrap:wrap; align-items:center;
}
.p-breadcrumb__item{
  display:inline-flex; align-items:center;
  color:var(--dyn-muted) !important; font-family:var(--dyn-font-body);
  font-size:.78rem; letter-spacing:.04em;
}
.p-breadcrumb__item a{ color:var(--dyn-muted) !important; text-decoration:none; }
.p-breadcrumb__item a:hover{ color:var(--dyn-accent-2) !important; text-decoration:underline; }
.p-breadcrumb__item:last-child{ color:var(--dyn-text) !important; }   /* 現在地 */
/* 区切り（2件目以降の左に縦罫線）※R-27対応（2026-08-26）
   旧実装は `::before` の content 宣言（文字リテラル "›"）で区切りを描いていたが、AddCssInfo は
   疑似要素の content 宣言をサニタイズで落とすため、実機では区切りが消えて
   「ホーム私たちの歴史」のように語が詰まっていた。
   ★実要素（＜span＞）へ昇格させず「content を使わない罫線」で代替した理由:
     パンくずの運用第一候補は「CueZilla がページ階層から自動描画するパンくずパーツ」で、
     その markup に区切り用の要素を挿す手段が無い。templates/breadcrumb.html（明示設置版）だけ
     直しても自動描画側は直らないので、両経路に1本のCSSで効く手段を採った。
     border / padding はサニタイズ後も残る（R-27「残る」側）。
   ★物理プロパティ（border-left）で書く理由: サニタイズのホワイトリストに論理プロパティが
     載っていない可能性を避ける。和文サイトは横書きLTR固定なので意味は同じ。 */
.p-breadcrumb__item + .p-breadcrumb__item{
  margin-left:.7em; padding-left:.7em;
  border-left:1px solid var(--dyn-border) !important;
}
.p-breadcrumb meta{ display:none; }   /* schema.org の ＜meta itemprop="position"＞ は非表示 */


/* ============================================================
   §2  ページヘッダー（[class*="_article_header"]）画像上のタイトル
   ============================================================ */
[class*="_article_header"] .ja, [class*="_article_header"] h1, [class*="_article_header"] h2{
  color:var(--dyn-heading) !important; font-family:var(--dyn-font-display) !important;
  text-shadow:0 2px 14px rgba(0,0,0,.5) !important;
}
[class*="_article_header"] .en{ color:var(--dyn-muted) !important; font-family:var(--dyn-font-numeric) !important; letter-spacing:.1em; text-shadow:0 1px 10px rgba(0,0,0,.5) !important; }


/* ============================================================
   §3  ページネーション（2系統。テーマCSSの持ち方が違うので扱いを分ける＝崩れ防止）
   ・.pagination_*（enjoyworks系）            … テーマが素 → 体裁＋色を一式付与
   ・[class*="_pagenation"]（parts222/225/228系）… テーマが体裁を持つ（flex/padding/border/白黒ハードコード）
        → レイアウト・サイズはテーマに任せ、ハードコードの白黒(#000/#fff)だけブランド色へ置換（最小限）。
          a/.current 以外（余白用の素の ＜span＞）には触らない＝二重ボックス化を防ぐ。
          --dyn-accent は §0 で var(--main-color) にバインド済み＝サイトのCMS色に自動一致（案件側の手当て不要）。
   ============================================================ */
/* (A) pagination_* 系：テーマ装飾が無いので一式付与 */
.pagination_num, .pagination_prev, .pagination_next{
  font-family:var(--dyn-font-numeric); color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
  min-width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none;
}
.pagination_num.current{ background:var(--dyn-accent) !important; border-color:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }
.pagination_num:hover, .pagination_prev:hover, .pagination_next:hover{ border-color:var(--dyn-accent-2) !important; color:var(--dyn-accent-2) !important; }

/* (B) _pagenation 系：色だけ寄せる（ジオメトリはテーマのまま＝箱を再定義しない） */
[class*="_pagenation"] a{ border-color:var(--dyn-accent) !important; color:var(--dyn-text) !important; }
[class*="_pagenation"] span.current, [class*="_pagenation"] .current, [class*="_pagenation"] .active{
  background:var(--dyn-accent) !important; border-color:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
}
[class*="_pagenation"] a:hover{ border-color:var(--dyn-accent-2) !important; color:var(--dyn-accent-2) !important; }
.pe-none{ opacity:.3; pointer-events:none; }


/* ============================================================
   §4  ブログ / 施工実績(blog-ex) 一覧（番号非依存）
   ============================================================ */
/* 一覧セクションの地 */
[class*="_post_list"], [class*="_post_wrap"]{ } /* 下で個別指定 */
/* カード並び（最小幅を確保して細くなりすぎない） */
[class*="_post_list"]{ display:grid !important; grid-template-columns:repeat(auto-fill, minmax(var(--dyn-card-min), 1fr)) !important; gap:var(--dyn-gap) !important; }
/* カード */
[class*="_post_wrap"]{
  /* カード等寸化：中身を縦に積み、内側の ＜a＞/本文枠を flex で伸長させて高さを揃える（S01189還流） */
  display:flex !important; flex-direction:column;
  margin:0 !important;   /* theme_default の margin-bottom(55px等)残存で最終行カードだけ高さ不揃いになるのを打ち消す */
  width:auto !important; max-width:none !important; text-decoration:none;
  background:var(--dyn-surface) !important; border:1px solid var(--dyn-border) !important;
  border-radius:var(--dyn-radius); overflow:hidden;
  transition:transform .3s ease, border-color .3s ease;
}
[class*="_post_wrap"]:hover{ transform:translateY(-4px); border-color:var(--dyn-accent-2) !important; }
[class*="_post_wrap"] > a{ display:flex; flex-direction:column; flex:1 1 auto; color:inherit; }  /* カード全体ラップ＜a＞を縦伸長（内容を上下に満たす） */
/* サムネ等寸化：グリッド列の幅から高さを算出（幅制約下＝§6.5の aspect-ratio×height 併用の罠には該当しない） */
[class*="_post_img"]{ width:100%; display:block; border-radius:0; aspect-ratio:16/10; overflow:hidden; }
[class*="_post_img"] img{ width:100%; height:100%; object-fit:cover; display:block; }
/* カード内のテキストに左右余白 */
[class*="_post_status"]{ border:none !important; background:transparent !important; margin:14px 16px 0 !important; padding:0 !important; display:flex !important; flex-wrap:wrap; justify-content:flex-start !important; gap:10px; align-items:center; }
[class*="_post_status"]:has([class*="_title-excerpt"]){ display:block !important; }   /* parts228系「日付｜タイトル」の横並びを解除（:has非対応環境ではflex-wrapで折返し） */
[class*="_post_title-excerpt"]{ padding:10px 16px 16px !important; flex:1 1 auto; }   /* 本文枠を伸長＝カード等寸化の要 */
[class*="_post_status"]:has([class*="_title-excerpt"]) [class*="_title-excerpt"]{ padding:10px 0 16px !important; }   /* 施工実績は左端揃え */
[class*="_post_title"]{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; font-weight:700 !important; line-height:1.5; }
[class*="_post_excerpt"]{ color:var(--dyn-muted) !important; }
[class*="_post_date"]{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }
/* カテゴリ/ステータスは1チップに。
   テーマは既に _post_category に border:1px solid var(--main-color) を持つ＝枠を“足す”と2重になるので
   同一要素に !important で単一の枠を確定（色は --dyn-accent=var(--main-color) で一致）。幅は % 制約を解除し content 幅に。 */
[class*="_post_category"]:not([class*="_sidebar"]), [class*="_post_status"] > span:last-child{
  /* :not(_sidebar) ＝ この§4チップ装飾が §5 の _sidebar_post_category_count へ漏れ二重適用されるのを防ぐ（S01189還流） */
  width:auto; max-width:none !important;
  background:var(--dyn-bg) !important; border:1px solid var(--dyn-accent) !important;
  border-radius:var(--dyn-radius); padding:2px 8px; color:var(--dyn-accent) !important;
}
.parts-blog-ex-tag_wrap{ display:flex; flex-wrap:wrap; gap:6px; padding:0 16px 14px; }
.parts-blog-ex_tag{ font-size:.72rem; color:var(--dyn-muted) !important; background:var(--dyn-surface) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:2px 8px; }

/* --- 一覧パーツ固有の崩れ2点（実共有CSS=theme parts222/225/228 を突き合わせて確定）---
   (a) 自動セクション見出し（「ブログ」「施工実績」等）の撤去：
       テーマは `.parts222_section h2 / .parts228_section h2` に
       color:var(--main-color)/font-size:35px/text-align:center を付与し、
       一覧上部に大見出しを自動描画する。自前の下層ヘッダー(hero)と二重化＝崩れ。
       → 一覧パーツ(_post_list を含む _section)直下の素の h2 だけ隠す。
         残したいサイトは案件CSSで個別に復帰。`:has()` 非対応保険に f_meiryo 版も併記。 */
[class*="_section"]:has([class*="_post_list"]) > h2,
[class*="_section"] > h2.f_meiryo{ display:none !important; }
/* (b) flex前提の余白スペーサー ::after の無効化：
       テーマは `.parts228_post_list::after{content:"";width:32.465%}` で flex の最終行詰めをする。
       §4 で _post_list を grid 化すると、この ::after が「空のゴースト列」になり最終行が片寄る。
       → grid では不要なので除去（content:none で擬似要素自体を消す）。 */
[class*="_post_list"]::after{ content:none !important; display:none !important; }


/* ============================================================
   §4-b  ブログ枠パーツ（parts131415_blog 系）＝ 内側でBootstrapが生きている型
   ------------------------------------------------------------
   §4 は parts222/225/228 の `_post_list` / `_post_wrap` 接尾辞を前提にしている。
   parts131415_blog 系は接尾辞が違い（`.row.row-cols-lg-3 > .col > .card`）、§4のセレクタが
   **1つも届かない**。そのため案件ごとに同じCSSを書き直す状態になっていた。
   教訓: 70_運用ルール/デザイン教訓/cms-part-bootstrap-grid-collapses-cards.md
         70_運用ルール/デザイン教訓/cms-part-heading-typography-override.md
   （承認: 2026-09-01「A・B・C ＋ I ＋ G/H（受領チェック1項目）」）

   (a) カードが列幅のさらに1/3に潰れる（独立3案件で真因一致: S02150・O01540・S00459）
       パーツが吐く `.row.row-cols-1.row-cols-sm-2.row-cols-lg-3` は Bootstrap の
       `.row-cols-lg-3 > *{flex:0 0 auto; width:33.3333%}` が生きたまま。案件側で `.row` を
       grid 化しても **grid の子に残った width:33.3333% が「列幅の33.3%」として再び効く**ため、
       341px の列の中でカードが 114px（サムネイル 52px）まで潰れる（実測 S02150 2026-08-25）。
       ★崩れるのは実機だけで、受領データを単体で開くと正常に見える＝**受領物を見ている限り
         絶対に気づけない**。だから案件ごとの気づきに任せず skin の既定にする。
       → §4 の `_post_list` と同じ扱い（auto-fill グリッド＋子の幅指定を落とす）を対にして当てる。
         **grid 化と子の無効化は必ずセット**。片方だけだと、grid 化なしで幅を落とせば1列に伸び、
         幅を落とさず grid 化すれば上記の 1/3 潰れが起きる。
       ★施工実績枠には当たらない。あちらは `.content.d-flex`（`.row` を持たない）で、
         flex の子に幅を当てると3枚が横にあふれる。クラス名では枠を判別できない
         （CMSが `parts131415_blog_DKhwGnz7DM` のように乱数の接尾辞を付け、作り直すと変わる）ため、
         **`.row` を持つか＝中身で分岐している**。 */
[class*="parts131415_blog"] .row{
  display:grid !important;
  grid-template-columns:repeat(auto-fill, minmax(var(--dyn-card-min), 1fr)) !important;
  gap:var(--dyn-gap) !important;
}
[class*="parts131415_blog"] .row > *{
  width:auto !important; max-width:none !important; min-width:0 !important;
  flex:none !important; margin:0 !important; padding:0 !important;
}

/* (b) パーツ見出しがCMS既定の書体・色のまま出てブランドタイポから浮く（独立2案件: S00459・S01926）
       レイアウト（配置・カラム）は案件CSSで整えられる一方、**パーツ自身が生成する見出し要素の
       書体・色はパーツ内部に付いているため見落とされやすい**。結果「配置は整っているのに見出しだけ
       フォントが違う・色が違う」という部分的な浮きが残る。
       実測: S00459 `.design-parts-11 .parts-title` が色 #0E6FB8 のまま／
             S01926 `.parts131415_blog_title_wrap .title` が明朝のまま（一度PC幅だけ直して
             「全端末で適用」と差し戻された＝BP単位の個別対応では同じ穴が別BPで再発する）。
       → §4 の `_post_title` / §5 の `_sidebar_post_title` と同じ扱いで、**書体と色だけ**を寄せる。
       ★サイズ・寄せは案件ごとのデザイン判断なので skin では触らない（§4の既存方針と同じ）。
         そちらは 30_コード生成/AI生成指示書_CueZilla.md 側の手順で担保する。
       ★全BP共通で当たる（メディアクエリの外に置いてある）。
       ★実測で確認できた2クラスだけに絞ってある。`.card-title` / `.card-text` は当てていない
         （O01540 では `.card-title` が「濃緑地に白文字のチップ」＝見出しではなくラベルとして
         使われており、`--dyn-heading` を当てると読めなくなる）。パーツが増えたら実機で確認して追記する。 */
[class*="_blog_title_wrap"] .title,
[class*="design-parts-"] .parts-title{
  font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important;
}


/* ============================================================
   §4-c  テーマが一覧サムネに掛ける「固定の高さ」を打ち消す（番号非依存）
   ------------------------------------------------------------
   ★§4 の意図が theme_default に**黙って負けていた**のを直すぶん（2026-09-11 実測）。

   何が起きていたか:
     §4 は `[class*="_post_img"]{ aspect-ratio:16/10 }` でサムネを等寸化する設計だが、
     theme_default は `.parts228_post_wrap .parts228_post_img{ height:240px }` と
     `… img{ max-height:240px }` を持つ。**セレクタの詳細度は テーマ(0,2,0) > skin(0,1,0)** なので、
     skin の aspect-ratio は計算に使われず**常にテーマの240pxで確定**していた。
     実測（local-sandbox・theme+skin のみ・案件CSS無し）:
       打ち消し前: .parts228_post_img の computed height = 240px（aspect-ratio:16/10 は設定されているのに無効）
       打ち消し後: 233px（＝列幅375px ÷ 1.6）＝**skin 自身の設計どおりになる**
     ＝「skin を採用しているのにサムネだけテーマの寸法」という状態で、案件側は毎回
     `.parts228_post_wrap .parts228_post_img img{ max-height:unset; height:200px }` を手で書いていた
     （実測: 収穫ログで4案件が同じ規則を貼っていた。機械化台帳 B1）。

   線引き（§4 の既存方針と同じ。ここを広げないこと）:
     ・**打ち消すだけ**＝テーマが持ち込む固定値を外して §4 の aspect-ratio に戻す。
     ・**寸法の具体値と色は入れない**。案件が貼っていた `height:200px` `margin-bottom:45px`
       `background:#FFFFFF` は**デザイン判断**なので案件CSSに残す（値は案件ごとに違う）。

   ★入れなかったもの（実測して落とした・同じ検討を繰り返さないため）:
     `[class*="_sidebar"]{ max-width:none !important }`（案件が4件で手貼りしていた規則）は
     **skin に入れてはいけない**。theme_default は `.parts222_sidebar{ max-width:28.179%; width:100% }`
     と対で持っており、max-width だけ外すと width:100% が生きて**2カラムが崩れる**。
     実測（local-sandbox）: main 780px + sidebar 333px → **main 590px + sidebar 590px**。
     サイドバー幅は案件ごとのレイアウト判断なので、案件CSSで width とセットで指定すること。
   ============================================================ */
[class*="_post_wrap"] [class*="_post_img"]{ height:auto !important; }          /* テーマの height:240px を外し §4 の aspect-ratio に戻す */
[class*="_post_wrap"] [class*="_post_img"] img{ max-height:none !important; }  /* 同 max-height:240px の頭打ちを外す（§4 の height:100% を効かせる） */



/* ============================================================
   §5  サイドバー / 最近の投稿 / カテゴリ記事数
   ============================================================ */
[class*="_sidebar"], .recent_posts_wrap{ color:var(--dyn-text); }
/* サイドバー見出し（「最近の投稿」「カテゴリ」）の可読性を確保。
   theme_default は `.partsNNN_sidebar h3{ background-color:var(--main-color); color:#fff }` と
   色を直当てするが、§12 の見出しリセットが**背景だけ**を transparent にするため、
   ライト基調の案件では「白地に白文字」で消える（ダーク案件では地に映えるため露見しない）。
   背景は戻さず（skinのフラット化方針を維持）、文字色だけトークンへ寄せて両基調で可読にする。
   あわせて左右パディングも解除する：`padding:15px 20px` は**帯があった前提**の内側余白のため、
   帯を透明化したまま残すと「見出しだけ20px字下げ」になり、直下の日付／タイトルと文頭がズレる。
   （詳細ページ側の .recent_post_title には下で同じ手当てをしており、一覧側だけ取り残されていた） */
[class*="_sidebar"] h3{ color:var(--dyn-heading) !important; padding-left:0 !important; padding-right:0 !important; }
[class*="_sidebar_post_title"], .recent_post_title{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }
/* 「最近の投稿」見出し（詳細ページ側）の帯を外して一覧側と体裁を揃える。
   theme_default は `.recent_posts_wrap .recent_post_title{ background-color:var(--main-color); color:#fff }` で帯を敷くが、
   §12 の見出しリセットは (a) 包み(parts166_single_article / parts-blog-ex-single-wrap)が `_section` を含まない
   (b) 要素が ＜div＞（h2/h3でない）── の2点で**届かず**、帯だけが生き残る。
   一方すぐ上の §5 が文字色を --dyn-heading（＝ライトでは濃色）へ寄せるため「濃い帯に濃い文字」となり、
   案件ごとに帯との視認性を見て文字色を手当てする必要があった。帯を外せば一覧（§12で帯が外れる）と揃い、手当ても不要になる。
   ※帯を活かしたい案件は案件側で `background:var(--dyn-accent); color:var(--dyn-on-accent)` を再指定する。 */
.recent_post_title{ background:transparent !important; padding-left:0 !important; }
[class*="_sidebar_date"], .recent_post_date{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }
/* 記事li の区切り罫線：theme_default が #666 をハードコードしており地に合わず過剰に見える → トークンへ */
[class*="_sidebar"] ul li, .recent_posts_wrap ul li{ border-bottom-color:var(--dyn-border) !important; }
/* カテゴリ右の記事数を視認できるチップに */
[class*="_sidebar_post_category_count"]{ background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:0 8px !important; }
/* カテゴリ一覧 li：theme_default 由来の左右縦罫線(1px solid #666)を除去（下罫線は区切りとして意図的に残す）。S01189還流 */
[class*="category_post_count"] li{ border-left:0 !important; border-right:0 !important; }
/* カテゴリ名と件数チップが重ならないよう両端寄せ。
   あわせて左右パディングを解除：theme_default は `.category_post_count ul li a{ padding:15px 20px }` と
   **帯／箱があった前提**の字下げを持つため、帯を外した状態では
   カテゴリ名だけが 20px 右にずれ、見出し(h3)や「最近の投稿」リストと頭が揃わない。
   上下15pxはタップ領域として残す。 */
[class*="category_post_count"] li a{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding-left:0 !important; padding-right:0 !important; }


/* ============================================================
   §6  詳細ページ（本文 / 署名 / SNS / 詳細内スライダー）
   ============================================================ */
.parts-blog-ex_text{ font-family:var(--dyn-font-body); color:var(--dyn-text) !important; line-height:1.9; }
.parts-blog-ex_text h2, .parts-blog-ex_text h3{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }
.signature_wrap{ font-family:var(--dyn-font-display); color:var(--dyn-muted) !important; border-top:1px solid var(--dyn-border); padding-top:16px; }
.slick-prev, .slick-next{ color:var(--dyn-accent-2) !important; }
/* ※詳細本文の親ラッパーが固定class薄め。崩れる場合は実ページで本文コンテナを確認し追補 */


/* ============================================================
   §7  お問い合わせフォーム
   ============================================================ */
.contact_section, [class*="_section_form"], [class*="_section_content"], [class*="_content_wrap"], [class*="_content"]{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
[class*="_form_wrap"]{ max-width:720px; margin:0 auto; }
[class*="_form_wrap"] label, [class*="_form_wrap"] dt, [class*="_form_wrap"] .ja, [class*="_form_wrap"] .en{ color:var(--dyn-text) !important; }
/* 入力欄を十分な大きさに（チェック/ラジオは除外） */
[class*="_form_wrap"] dd input:not([type="checkbox"]):not([type="radio"]),
[class*="_form_wrap"] dd select{ width:100% !important; max-width:none !important; padding:14px 16px !important; font-size:16px !important; min-height:54px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }
[class*="_form_wrap"] textarea, .form_textarea textarea{ width:100% !important; padding:14px 16px !important; font-size:16px !important; min-height:220px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }
/* チェックボックス/ラジオはサイズ統一 */
[class*="_form_wrap"] input[type="checkbox"], [class*="_form_wrap"] input[type="radio"]{ width:18px !important; height:18px !important; min-height:0 !important; padding:0 !important; margin:0 8px 0 0 !important; vertical-align:-3px; accent-color:var(--dyn-accent); flex:none !important; }
/* 必須バッジ: 文字を中央・折り返さない・角丸はトークン */
.required{ display:inline-flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important; white-space:nowrap !important; padding:6px 12px !important; border-radius:var(--dyn-radius) !important; background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }
.error{ color:var(--dyn-accent-2) !important; }
/* 「お問い合わせ内容」を囲む大きな箱(枠線)を撤去 */
.form_textarea, .form_text_dt{ border:none !important; background:transparent !important; }
/* 送信ボタン。★セレクタに包み(.contact_submit 自体)を含めないこと：
   包みは複数ボタンを載せるレイアウト用のdivで、ここを accent で塗ると
   (a) 完了ページ=藍の包みに藍のボタンが乗って同化し、ボタンが消えて見える
   (b) 確認ページ=すぐ下でアウトライン化する「戻る」が藍地に濃色文字となり判読不能（実測 1.01:1）
   になる。当てる先はボタン実体だけでよい（dynamic-form.md §1 の意図も「送信 .contact_submit input = accent地」）。 */
.contact_submit button, .contact_submit input{ background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; border:none !important; border-radius:var(--dyn-radius) !important; }
/* 確認ページの「戻る」は副ボタン（送信＝アクセント／戻る＝アウトライン）＝誤導線防止 */
.contact_submit input[name="back"]{ background:transparent !important; color:var(--dyn-text) !important; border:1px solid var(--dyn-border) !important; }
/* 送信前 disabled（reCAPTCHA未完了）の見え方 */
.contact_submit input[disabled]{ opacity:.5; cursor:not-allowed; }

/* --- フォーム実コードで頻出するが §7本体に無かった部品（parts213等の実装を突き合わせ）--- */
/* ファイル添付の自作UI：受領のインライン style が #eee 地・#999 文字・明るいグラデで固定し、
   ダーク地で白い箱・低コントラストになる。トークンで地・枠・文字を寄せる（label_file_upload に限定）。 */
.label_file_upload{ display:block; width:100%; padding:12px 14px; cursor:pointer;
  background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius); }
.label_file_upload button{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius) !important; pointer-events:none; }
.label_file_upload span, #file-chosen, [id$="filechosen"]{ color:var(--dyn-muted) !important; }
.des{ color:var(--dyn-muted) !important; }
/* 注意書き（文字数制限・ファイル名規則等の補助）：色未指定/未定義var(--red)で可読性がばらつくため muted で固定（AA確保色） */
.attention{ color:var(--dyn-muted) !important; }
/* 郵便番号は narrow に保つ：上の入力欄ルール `[class*="_form_wrap"] dd input:not([checkbox]):not([radio])`
   は (0,3,2)+!important で .zip も全幅化し〒[郵便番号][住所]を壊す。これに勝つよう :not() を重ねて
   詳細度を (0,4,2) に上げて .zip だけ幅を戻す（parts219等 form_address系・番号非依存）。 */
[class*="_form_wrap"] dd input.zip:not([type="checkbox"]):not([type="radio"]){ width:9em !important; max-width:9em !important; display:inline-block; margin-right:8px; }
/* プライバシー同意 */
.privacypolicy{ background:var(--dyn-surface) !important; border:1px solid var(--dyn-border); border-radius:var(--dyn-radius); padding:16px; color:var(--dyn-muted) !important; }
.privacypolicy-link{ color:var(--dyn-accent-2) !important; }
/* 電話/メール等の content バー（角丸はトークン） */
[class*="_content"] [class*="btn"], [class*="_content"] a[class*="round"]{ border-radius:var(--dyn-radius) !important; }


/* ============================================================
   §7b  お問い合わせフォーム ─ wpcf7 / .formBox 系（第2系統）
   ------------------------------------------------------------
   【重要】フォームには構造が2系統ある（dynamic-harvest.js の「フォーム系統」で判定）：
     ・§7  = parts_form/dl 系（[class*="_form_wrap"] / dt / dd / .required / .contact_submit）
     ・§7b = wpcf7/.formBox 系（.formWrap > .formBox > dt>label>span.req + dd>input,
              送信=input.wpcf7-submit。SEIKEN/協力会社フォーム等 Contact Form 7 由来）
   §7 の `[class*="_form_wrap"]` は §7b 構造に当たらないため、当該系統では本セクションが要る。
   いずれも番号非依存のセマンティッククラスで記述。
   ============================================================ */
.formWrapbg, .formWrap, .form, [class*="formSec"]{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
.formWrap{ max-width:720px; margin:0 auto; }
.formBox{ margin-bottom:20px; }
.formBox dt, .formBox label{ color:var(--dyn-text) !important; }
.formBox dd input:not([type="checkbox"]):not([type="radio"]),
.formBox dd select,
.formWrap input[type="text"], .formWrap input[type="email"], .formWrap input[type="tel"]{
  width:100% !important; max-width:none !important; padding:14px 16px !important; font-size:16px !important;
  min-height:54px !important; background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
}
.formBox dd textarea, .formWrap textarea{
  width:100% !important; padding:14px 16px !important; font-size:16px !important; min-height:220px !important;
  background:var(--dyn-surface) !important; color:var(--dyn-text) !important;
  border:1px solid var(--dyn-border) !important; border-radius:var(--dyn-radius);
}
.formWrap input[type="checkbox"], .formWrap input[type="radio"]{
  width:18px !important; height:18px !important; min-height:0 !important; padding:0 !important; margin:0 8px 0 0 !important;
  vertical-align:-3px; accent-color:var(--dyn-accent); flex:none !important;
}
/* 必須バッジ（wpcf7系は .req） */
.req, .formBox .req{
  display:inline-flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important;
  white-space:nowrap !important; padding:6px 12px !important; border-radius:var(--dyn-radius) !important;
  background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
}
.wpcf7-not-valid-tip, .wpcf7-response-output{ color:var(--dyn-accent-2) !important; }
/* 送信（Contact Form 7） */
input.wpcf7-submit, .formWrap button[type="submit"]{
  background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important;
  border:none !important; border-radius:var(--dyn-radius) !important;
  min-height:54px !important; padding:14px 28px !important; font-size:16px !important; cursor:pointer;
}
/* プライバシー同意（両系統共通の .privacypolicy* は §7 で適用済） */


/* ============================================================
   §14  自動CSSに負けた時の手順（R-27）※汎用アーマーは持たない＝安全契約
   ------------------------------------------------------------
   CueZilla は body内コンポの style 要素でパーツ単位に `.partsNNN_blog_＜ID＞ .card .card-body{…!important}`
   等の高詳細度(0,3,0)+!important を吐く。§1〜§9 の単一属性セレクタ(0,1,0〜0,2,0)+!important は
   同プロパティで【負ける】（症状：当てているのに反映されない＝崩れの常連）。

   → 【禁止】[class*=…]を積んで(0,3,0)に並べる汎用アーマー（脆い・過剰マッチ・アーマーレース）。
        ＝以前ここにあった `[class*="parts"][class*="_blog"] .card` 等は本契約により撤去した。
        （theme_default 非importantへの色寄せは §8 の単一 `[class*="_blog"] .card`(0,2,0)+!important で足りる）
   → 【正】負けたパーツだけ、harvestで実採番を取り【案件CSS】末尾に (0,3,1) を1個足して確実に勝つ：
        section.parts131415_blog_xxxx .card .card-body{ … !important }   ← 実採番。構造変化に不感
     ※ skin は全案件共通なので案件固有の番号は書かない（負けた時だけ案件側で対処）。
     ※ 採番取得＝verify/dynamic-harvest.js。当て方＝50_CSS・動的ページ/動的ページCSS_実セレクタ参考.md §14。 */
/* 見出しのテーマ装飾(角丸/中央寄せ/背景/罫線)残りをパーツ内でリセット（R-21）。
   theme_default は非importantなので、単一 [class*="_section"] + !important で確定勝ち（[class*]を積まない）。 */
[class*="_section"] h2, [class*="_section"] h3{
  border-radius:0 !important; background:transparent !important; border:none !important; text-align:inherit !important;
}


/* ============================================================
   §8  トップ用 お知らせ/ブログ teaser（notice-news / blog teaser）
   ============================================================ */
.parts040506_notice-news{ background:var(--dyn-bg) !important; color:var(--dyn-text) !important; }
.parts040506_notice-news *{ color:var(--dyn-text) !important; }
.parts040506_notice-news .title, .parts040506_notice-news .title a{ color:var(--dyn-heading) !important; }
.parts040506_notice-news [class*="date"], .parts040506_notice-news .f_yugothic{ font-family:var(--dyn-font-numeric) !important; color:var(--dyn-muted) !important; }
.parts040506_notice-news .more{ white-space:nowrap !important; color:var(--dyn-accent-2) !important; }
.parts040506_notice-news a{ color:var(--dyn-accent-2) !important; }
/* サムネ型ブログ teaser */
[class*="_blog_title_wrap"]{ font-family:var(--dyn-font-display) !important; color:var(--dyn-heading) !important; }
[class*="_blog_thumbnail"]{ border-radius:var(--dyn-radius); }
/* teaser内が Bootstrap .card（既定で白）の場合のダーク/トーン化 */
[class*="_blog"] .card{ background:var(--dyn-surface) !important; border-color:var(--dyn-border) !important; border-radius:var(--dyn-radius) !important; }
[class*="_blog"] .card-title, [class*="_blog"] .card-text{ color:var(--dyn-text) !important; }
[class*="_blog"] .card-title{ font-family:var(--dyn-font-display) !important; }


/* ============================================================
   §9  Bootstrap汎用クラスの地ならし（パーツ内に限定）
       text-dark / bg-light 等がパーツ内でトーンを乱すのを抑える
   ============================================================ */
[class*="parts"] .text-dark{ color:var(--dyn-text) !important; }
[class*="parts"] .bg-light{ background:var(--dyn-surface) !important; }
.card-header.bg-light{ background:var(--dyn-accent) !important; color:var(--dyn-on-accent) !important; }


/* ============================================================
   §10  プライバシーポリシー（templates/privacy-policy.html のフリーコーディング設置版）
   ※CueZilla既定パーツ(item_title/item_description)へ転記する場合は §5 等で別途適用される
   ============================================================ */
.privacy{ max-width:880px; margin:0 auto; padding:64px 24px; color:var(--dyn-text); font-family:var(--dyn-font-body); line-height:1.9; }
.privacy__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,4vw,2.6rem); }
.privacy__subtitle{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:1.2rem; margin-top:8px; }
.privacy__lead{ color:var(--dyn-muted); margin:24px 0 40px; }
.privacy-item{ margin-bottom:32px; }
.privacy-item__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); border-left:3px solid var(--dyn-accent); padding-left:12px; margin-bottom:12px; }
.privacy-item__body{ color:var(--dyn-text); }
/* 原文の (1)(2)… 表記は【HTML側のテキスト】で持つ ※R-27対応（2026-08-26）
   旧実装は `li::before` の content 宣言（`counter(pp)` を括弧で挟む）で番号を描いていたが、AddCssInfo は
   content 宣言をサニタイズで落とす（counter() は content 専用なのでCSS単独の代替が無い）。実機では番号が消えたうえに
   下のぶら下げインデントだけが残り、本文が左へはみ出していた。
   ★番号を捨てず HTML テキストへ移した理由: 本文が「上記(1)から(6)に掲げるほか」と番号を参照しており、
     番号は装飾ではなく文書の一部（消すと文意が壊れる）。会社承認の定型文なので表記も変えられない。
     → templates/privacy-policy.html の各 ＜li＞ 先頭に "(1) " 等を直接書く形へ変更した。
   ★ぶら下げインデント（padding-left / text-indent）は残す: 番号が行頭テキストになった今も、
     折り返し行を本文位置に揃えるために必要（＝この2行が番号の受け皿）。
     番号を持たない古い privacy HTML に当たると字下げだけが見えるので、その場合はCSSではなく
     HTML側に番号を入れて直す。counter-reset / counter-increment は用が無くなったので外した。 */
.privacy-item__list{ list-style:none; margin:8px 0; padding:0; }
.privacy-item__list li{ padding-left:2.2em; text-indent:-2.2em; margin:4px 0; color:var(--dyn-text); }


/* ============================================================
   §11  下層ヘッダーパーツ（templates/subpage-header.html）
   サイトヘッダーとパンくずの間。フリーコーディングで別パーツ化
   ============================================================ */
/* padding-top に固定ヘッダー高さ(--fixed-header-h)を加算＝固定ヘッダーへのめり込み防止。
   固定ヘッダーが無いサイトは既定0で無影響。固定ヘッダー採用サイトは案件CSSで :root{ --fixed-header-h:88px } 等を設定（R-18）。 */
.subpage-header{ position:relative; padding:calc(72px + var(--fixed-header-h, 0px)) 24px 72px; background:var(--dyn-surface); text-align:center; overflow:hidden; }
.subpage-header__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.45; z-index:0; }
.subpage-header__inner{ position:relative; z-index:1; }
.subpage-header__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,5vw,3rem); line-height:1.3; text-shadow:0 2px 14px rgba(0,0,0,.5); }
.subpage-header__en{ font-family:var(--dyn-font-numeric); color:var(--dyn-muted); letter-spacing:.12em; margin-top:8px; }


/* ============================================================
   §12  システム定型ページ：送信完了(thanks) / 404
   templates/thanks.html, templates/404.html 用。トークンスキン準拠
   ============================================================ */
.thanks, .notfound{ max-width:760px; margin:0 auto; padding:calc(80px + var(--fixed-header-h, 0px)) 24px 96px; text-align:center; }
/* CueZilla 既定404（section.not-found）はレイアウトを変えず、固定ヘッダー分の上余白だけ確保（R-18） */
.not-found{ padding-top: calc(var(--fixed-header-h, 0px) + 24px); }
.thanks__title, .notfound__title{ font-family:var(--dyn-font-display); color:var(--dyn-heading); font-size:clamp(1.8rem,5vw,2.6rem); line-height:1.3; margin-bottom:28px; }
.thanks__lead, .notfound__lead{ color:var(--dyn-text); line-height:2; margin-bottom:40px; }
.thanks__action, .notfound__action{ margin-top:8px; }


/* ============================================================
   §13  Bootstrap(テーマ)既定の恒久打ち消し（R-20）
   ------------------------------------------------------------
   CueZillaテーマが読み込む Bootstrap の "素のタグ/汎用クラス" が
   フリーHTMLに当たって崩す症状を、案件ごとの手当て無しで地ならしする。
   ここは確認済みの実害2件（test0605）に限定して打ち消す。
   ※「色/余白/タイポ」を意図して変える装飾は接頭辞クラス(.xw- 等)で
     付け直す＝下記より高詳細度になり、本セクションに勝つ（壊さない）。
   ============================================================ */
/* (a) ＜mark＞ / .mark の黄ハイライト背景：ロゴや見出しが黄色い箱になる症状 → 無効化。
       意図的なマーカー装飾は専用クラスで（Bootstrap名 .mark を流用しない＝R-20）。 */
mark, .mark{
  background-color:transparent !important; color:inherit !important;
  padding:0 !important; border-radius:0 !important;
}
/* (b) a:hover が Bootstrap青(#0a58ca)になる症状 → 既定は「ホバーで色を変えない」。
       !important は付けない＝個別のホバー装飾(接頭辞クラスや site.css の指定)が
       そのまま勝ち、未指定リンクだけが青化を免れる（フォールバック）。 */
a:hover{ color:inherit; }

/* (c) 電話番号リンク(tel:)の最低タップ確保（R-24／§5.5-3）。
       本文中インラインでも折り返さない。CTA/ボタン用途は接頭辞クラスで44px確保。 */
a[href^="tel:"]{ white-space:nowrap; }


/* ===== 29_override.css ===== */
@charset "UTF-8";
/* ============================================================
   O01543 マルモリ塗装有限会社 — 29_override.css（手書き・結合の最後＝最優先）
   20_site.css（受領CSSの機械変換）で表現できないものだけを持つ:
     ①JSが動かないと見えなくなるものの R-4 フォールバック
     ②CueZilla側の事情（テーマCSS・自動パンくず・CMSパーツとの継ぎ目）
   ★このファイルにHTMLのタグ形の文字列を書かない（R-31：コメント内でも追加CSS欄のMIMEが
     text/html に化けてCSSが1行も効かなくなる）。必要なときは全角の ＜ ＞ で書く。
   ============================================================ */

/* R-18: 固定ヘッダーは使っていない（受領は position:sticky）＝0px。
   skin がCueZilla描画ページの上余白に使う変数なので、必ず宣言しておく。 */
:root{ --fixed-header-h: 0px; }

/* ============================================================
   ① R-4：JSが動かないと見えなくなるもの
   ============================================================ */
/* 受領CSSは多くの出現演出に fail-safe（0%で表示・CSSアニメだけで出る）を持つが、次の3つはその対象から漏れていて、
   JS（BODY内JS）が data-shown を付けるまで opacity:0 のまま＝BODY内JSを貼り忘れると本文が消える。
   ・住宅塗装のヒーロー写真（data-herofloat）
   ・現場スタッフ募集の「求める人物」カード（data-wishfloat）・「現場」カード（data-sitefloat）
   JSが動けば html に .mm-js が付くので、ここは効かなくなり受領どおりの演出になる。 */
html:not(.mm-js) :is([data-herofloat],[data-wishfloat],[data-sitefloat]){opacity:1 !important;transform:none !important}

/* ============================================================
   ② CueZilla側の事情
   ============================================================ */

/* sticky ヘッダーの復活（2行セット・片方だけでは不完全）。
   テーマ（theme_default.css）の html,body{height:100%}（＝sticky の可動域が1画面）と
   body{overflow-x:hidden}（＝スクロールコンテナ化）の両方が position:sticky を殺す。
   ★html には overflow を書かない（教訓 html-overflow-clip-stops-body-overflow-propagation-and-kills-sticky）。
   教訓 cuezilla-theme-html-body-height-100-kills-sticky ／ body-overflowx-hidden-kills-sticky ／ sticky-header-needs-containing-block-room */
html,body{height:auto !important}
body{overflow-x:clip !important;min-height:100%}

/* CueZillaが自動挿入するパンくず（parts231）は非表示にする（R-10a）。
   受領の各下層ページはページヒーロー（pagehead）の直下に自前のパンくず帯を持っているため、放置すると二重に出る。 */
[class*="parts"][class*="_breadcrumb"]{display:none !important}

/* TOPのお知らせ・施工実績・ブログは、パーツの記事をBODY内JSが受領デザインの入れ物へ写す方式
   （節を切らない＝背景がパーツの裏まで途切れない。2026-09-29 ディレクター指摘）。
   受領の fail-safe CSS は入ってくるカードを「#works .col / #blog .col」で指しているが、
   納品ではパーツ模倣クラス（col）を外している（skin・テーマの誤爆を避けるため）ので、同じ動きを目印の方に当てる。 */
.mm-p-index [data-mm-col]{animation-name:fsRight !important;animation-duration:.7s !important;animation-timing-function:cubic-bezier(.22,.7,.3,1) !important;opacity:1 !important}
@media (prefers-reduced-motion: reduce){
  .mm-p-index [data-mm-col]{animation:none !important;transform:none !important}
}

/* テーマ（Bootstrap reboot）の見出し既定 h1〜h6{line-height:1.2; margin-bottom:.5rem} などを、
   受領（素のブラウザ既定＝行高は body から継承）へ戻す（教訓 local-repro-without-bootstrap-misses-theme-heading-lineheight）。
   ★本文ラッパー（.mm-page）と共通ヘッダー／フッター（.mm-shell）の中だけに当てる（CMSパーツの見出しは skin の担当）。
   ★:where() で詳細度を Bootstrap と同じ (0,0,1) に抑える＝受領の属性セレクタ規則・インライン指定には必ず負ける。 */
:where(.mm-page,.mm-shell) :is(h1,h2,h3,h4,h5,h6){line-height:inherit}
:where(.mm-page,.mm-shell) p{margin-top:1em;margin-bottom:1em}
:where(.mm-page,.mm-shell) :is(ul,ol,dl){margin-top:1em;margin-bottom:1em}
:where(.mm-page,.mm-shell) dd{margin-left:40px;margin-bottom:0}
:where(.mm-page,.mm-shell) figure{margin:1em 40px}
:where(.mm-page,.mm-shell) label{display:inline}
:where(.mm-page,.mm-shell) img,:where(.mm-page,.mm-shell) svg{vertical-align:baseline}

/* 素の電話番号を tel: で包んだぶん（R-24：会社概要の表・フッター・現場スタッフ募集の本文）。見た目は受領のまま。 */
a.mm-tel{color:inherit;text-decoration:none}

/* ============================================================
   ③ ブログ一覧（/blog・CMSの parts222）を受領デザインに合わせる（2026-09-29 ディレクター指示）
   受領デザイン（blog.dc）の一覧は「白いカード（角丸30px・影）＋高さ200pxの写真＋日付/カテゴリの行＋タイトル」で、
   節の地は上から下へ淡い水色へ変わるグラデーション。CMSが描くページなので、ここ（追加CSS）でしか当てられない（R-28）。
   ★サイドバー（最近の投稿・カテゴリー）は受領デザインに無いが、指示が「記事部分だけ」だったので残している。
   ★施工実績一覧（/blog-ex/instance）は別のパーツなので、ここでは触っていない。
   ============================================================ */
/* 節の地。上のブロック（04c）の節が #F8FCFE で終わるので、そこから続ける（受領 blog.dc の一覧節と同じ値） */
section.parts222_section{
  background:linear-gradient(180deg,#F8FCFE 0%,#EDF7FB 55%,#E3F3FA 100%) !important;
  padding:8px clamp(16px,4vw,32px) clamp(52px,9vw,92px) !important;
}
/* ※パーツが出す見出し「ブログ」（下層ヘッダーと重複）は skin が既に隠しているので、ここには書かない */
/* 一覧のグリッド（受領と同じ auto-fit・間隔24px） */
.parts222_section .parts222_post_list{/*grid-template-columns:repeat(auto-fit,minmax(248px,1fr)) !important;*/gap:24px !important;align-items:start !important;padding:8px 0 22px !important}
/* カード */
.parts222_section .parts222_post_wrap{background:#FFFFFF !important;border:0 !important;border-radius:30px !important;overflow:hidden !important;box-shadow:0 10px 28px rgba(15,127,163,.14) !important}
.parts222_section .parts222_post_wrap > a{display:block !important;color:inherit !important;text-decoration:none !important}
/* 写真（受領は高さ200px・はみ出しは切る）。CMSの「画像なし」の代替画像は出さず、受領の空枠と同じ淡い地にする */
.parts222_section .parts222_post_img{height:200px !important;margin:0 !important;padding:0 !important;overflow:hidden !important;border-radius:0 !important;background:#E3F3FA !important}
.parts222_section .parts222_post_img img{display:block !important;width:100% !important;height:200px !important;max-height:none !important;object-fit:cover !important;border-radius:0 !important}
.parts222_section .parts222_post_img img[src*="no_image"]{opacity:0 !important}
/* 日付・カテゴリの行 */
.parts222_section .parts222_post_status{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:8px 14px !important;margin:0 !important;padding:20px 20px 0 !important;font-size:13px !important}
.parts222_section .parts222_post_date{margin:0 !important;padding:0 !important;font-family:Barlow,sans-serif !important;font-size:13px !important;font-weight:600 !important;color:#0F7FA3 !important}
/* ★カテゴリの札は skin の `[class*="_post_status"] > span:last-child`（詳細度 0,2,1・!important）が当たっているので、
   それより高い (0,3,0) で書く。枠線も skin が足すので border:0 で消す（受領デザインの札は枠なし）。 */
.parts222_section .parts222_post_status .parts222_post_category{display:inline-flex !important;align-items:center !important;width:auto !important;margin:0 !important;padding:5px 12px !important;border:0 !important;border-radius:999px !important;background:#EDF7FB !important;color:#046C3B !important;font-size:13px !important;font-weight:700 !important}
/* タイトル */
.parts222_section .parts222_post_title-excerpt{margin:0 !important;padding:0 20px 20px !important}
.parts222_section .parts222_post_title{margin:0 !important;font-family:'Zen Maru Gothic',sans-serif !important;font-size:17px !important;font-weight:700 !important;line-height:1.7 !important;color:#222222 !important}

/* ============================================================
   ③b ブログ記事ページ（/blog/＜記事ID＞・CMSの parts166）の地（2026-09-29 ディレクター指示）
   記事の節は地を持たない（＝body の白がそのまま出る）ので、一覧（/blog）と同じグラデーションを敷く
   （教訓 received-section-background-missing-on-dynamic-pages）。
   ★地を敷くと、テーマ既定が rgba(0,0,0,.3) のカテゴリ帯（.article_category_wrap）が
     「汚れた黒い帯」として露見する（同教訓の再発ポイント）。白い帯へ直してセットで当てる。
   ★記事本文は白いカードに載せていない（受領デザインに記事ページが無く、指示も「背景」だったため）。
     本文を白カードに載せたい場合は .article_wrap に地と角丸を足す。
   ============================================================ */
section.parts166_single_article{background:linear-gradient(180deg,#F8FCFE 0%,#EDF7FB 55%,#E3F3FA 100%) !important}
section.parts166_single_article .article_category_wrap{background:#FFFFFF !important;border-radius:18px !important;padding:16px 20px !important}

/* ============================================================
   ④ 施工実績一覧（/blog-ex/instance）の地と、記事の上の絞り込みタグ（2026-09-29 ディレクター指示）
   ★このページの一覧は CueZilla の標準パーツではなく、**別途フリーHTMLで組まれた独自マークアップ**
     （section.bex-list ＞ nav.bex-filter ＋ div.bex-works-grid。CSSとJSも同じブロックの中にある）。
     そのブロックは当方の納品物ではないので**触らず**、ここ（追加CSS）で見た目だけ受領デザインへ寄せる。
   ★ページの中の style は、この追加CSSより**後**に読まれる＝同じ詳細度では向こうが勝つ。
     必ず section から書いて詳細度で上回ること（ここを1段落とすと何も効かない）。
   ・地 … 受領デザイン（施工実績.dc）の一覧節と同じグラデーション。全幅に敷くため max-width を外し、
          中身（絞り込み・カード）を受領と同じ 1040px に寄せ直す（元は1200px）。
   ・絞り込みタグ … 受領は丸いピル。現在地（すべて／選択中）は緑→青のグラデ、他は淡い水色。
     ★受領デザインは左寄せだが、**ディレクター指示で中央寄せのまま**にしている。
   ・カード（bex-works-card）の見た目は指示外なので触っていない。
   ============================================================ */
section.bex-list{
  max-width:none !important;
  background:linear-gradient(180deg,#F8FCFE 0%,#EDF7FB 55%,#E3F3FA 100%) !important;
  padding:8px clamp(16px,4vw,32px) clamp(52px,9vw,92px) !important;
}
section.bex-list > .bex-filter{max-width:1040px !important;margin:0 auto 32px !important;gap:10px !important;justify-content:center !important}
section.bex-list > .bex-works-grid{max-width:1040px !important;margin:0 auto !important}
section.bex-list .bex-filter .bex-filter-btn{display:flex !important;align-items:center !important;min-height:44px !important;padding:10px 20px !important;border:1px solid #E3F3FA !important;border-radius:999px !important;background:#EDF7FB !important;color:#046C3B !important;font-size:15px !important;font-weight:400 !important;text-decoration:none !important}
section.bex-list .bex-filter .bex-filter-btn:hover{background:#E3F3FA !important;color:#046C3B !important}
/* ★現在地は :hover と同じ詳細度なので、必ず :hover の**後**に置く（先に置くと押している間だけ淡色に戻る） */
section.bex-list .bex-filter .bex-filter-btn.is-active{background-color:transparent !important;background-image:linear-gradient(120deg,#06A65A,#0F7FA3) !important;border-color:transparent !important;color:#FFFFFF !important;font-weight:700 !important}
@media (min-width: 1025px){
   .blog-new{
      grid-template-columns: repeat(3, 1fr)!important;
} 
}