/* ===== site.css ===== */
/* ==================== index（TOP・FV・共通ベース） ==================== */
html{scroll-behavior:smooth;}
    body{margin:0;background:#F7FBFD;color:#242C32;font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;line-height:1.9;font-size:18px;-webkit-font-smoothing:antialiased;}
    a{color:#1e5db0;text-decoration:none;}
    a:hover{color:#119cf0;}
    @keyframes waveDrift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    a.js-cta:hover{background:#119cf0 !important;color:#fff !important;}
    button.js-totop:hover{background:#1e5db0 !important;}
    a.js-btn-ol:hover{background:#1e5db0 !important;color:#fff !important;}
    a.js-cta-tel:hover, a.js-cta-tel:hover span{background:#ED8C0E !important;color:#fff !important;}
    a.js-btn-solid:hover{background:#119cf0 !important;color:#fff !important;}
    a.js-btn-voice:hover{background:#119cf0 !important;color:#fff !important;}
    a.js-btn-google:hover{background:#ED8C0E !important;color:#fff !important;}
    a.js-btn-gold:hover{background:#ED8C0E !important;color:#fff !important;}
    a.js-btn-line:hover{background:#fff !important;color:#06C755 !important;}
    a.js-btn-mail:hover{background:#fff !important;color:#119cf0 !important;}
    nav.js-fnav a:hover{color:#fff !important;}
    .svc-btns a{width:240px;box-sizing:border-box;text-align:center;padding-left:0;padding-right:0;}
    @media (max-width:1180px){
      .fv-slide{background-position:center center !important;}
    }
    @media (max-width:760px){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
    }
    @media (max-width:1024px) and (orientation:portrait){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      body{font-size:16px !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
      .grid3{grid-template-columns:repeat(3,1fr) !important;}
      .cta-btns{flex-wrap:nowrap !important;}
      .cta-btns > a{min-width:0 !important;flex:1 1 0 !important;padding-left:12px !important;padding-right:12px !important;}
    }
    @media (max-width:1024px){
      .fv-sec{min-height:auto !important;justify-content:flex-start !important;}
      .fv-copy{margin-top:clamp(170px,24vw,300px) !important;}
      .fv-wrap{padding-bottom:200px !important;padding-top:24px !important;}
      .fv-wave{height:80px !important;}
      .news-sec{margin-top:24px !important;}
      .fv-info{font-size:13.5px !important;}
      .fv-info span[style*="width:100px"]{width:80px !important;font-size:12px !important;padding:2px 8px !important;}
      .fv-badges span{font-size:13px !important;padding:7px 12px !important;}
    }
    @media (max-width:680px){
      .fv-sec{min-height:82vh !important;}
      .fv-copy{margin-top:8px !important;font-size:clamp(23px,6.2vw,30px) !important;line-height:1.55 !important;letter-spacing:.06em !important;-webkit-text-stroke:3px #fff !important;}
      .fv-wrap{padding-bottom:180px !important;}
      .js-floatbar{display:none !important;}
      .js-mobline{display:flex !important;}
      .fv-grad{background:linear-gradient(to bottom, rgba(224,247,255,0.9) 0%, rgba(224,247,255,0.55) 40%, rgba(224,247,255,0.2) 72%, rgba(247,251,253,0.05) 100%) !important;}
      .fv-info{font-size:13px !important;}
      .fv-wave{height:48px !important;}
      .fv-slide{top:auto !important;bottom:0 !important;height:52vh !important;background-size:cover !important;background-position:center center !important;background-repeat:no-repeat !important;-webkit-mask:linear-gradient(to bottom, transparent 0%, #000 24%) !important;mask:linear-gradient(to bottom, transparent 0%, #000 24%) !important;}
      .fv-wave{bottom:24px !important;height:66px !important;z-index:5 !important;}
      .news-sec{margin-top:44px !important;}
      .br-koji{display:none !important;}
      section h2{font-size:29px !important;}
      .svc-btns a{width:260px !important;padding-left:0 !important;padding-right:0 !important;text-align:center !important;}
      .grid3{grid-template-columns:1fr !important;}
      .secwave{height:44px !important;}
      nav.js-fnav{grid-template-columns:1fr !important;white-space:normal !important;justify-content:start !important;}
      .cta-btns{flex-direction:column !important;align-items:stretch !important;}
      .cta-btns > a{width:100% !important;max-width:320px !important;margin-left:auto !important;margin-right:auto !important;height:72px !important;min-height:72px !important;}
      .hdr-logo{margin-left:-7px !important;}
      body{font-size:15px !important;}
      .cause-tag{font-size:20px !important;}
      .fv-spacer{flex:0 0 20px !important;}
      .fv-ripple{width:110% !important;height:auto !important;top:0 !important;left:-6% !important;opacity:.6 !important;transform:scale(1.2) !important;transform-origin:top left !important;}
      .fv-info span[style*="width:100px"]{width:78px !important;font-size:12px !important;padding:2px 8px !important;}
    }
    @media (max-width:860px){
      .js-floatbar{display:none !important;}
      .js-mobline{display:flex !important;}
    }
    @keyframes blobFloat{from{transform:translate(0,0) scale(1)}to{transform:translate(20px,-16px) scale(1.07)}}
    @keyframes blobMorph{0%{border-radius:58% 42% 54% 46% / 48% 56% 44% 52%}50%{border-radius:45% 55% 47% 53% / 56% 44% 57% 43%}100%{border-radius:52% 48% 57% 43% / 44% 54% 46% 56%}}
    @keyframes bubbleRise{0%{transform:translateY(0) scale(.55);opacity:0}12%{opacity:.7}100%{transform:translateY(-340px) scale(1.15);opacity:0}}
    @keyframes fvOverlay{0%{opacity:1}40%{opacity:1}50%{opacity:0}90%{opacity:0}100%{opacity:1}}
    @keyframes surfaceWobble{0%{transform:translateY(34px) scale(1.12)}100%{transform:translateY(0) scale(1)}}
    @keyframes sheenSweep{0%{opacity:0;transform:translateY(60%)}25%{opacity:.9}100%{opacity:0;transform:translateY(-120%)}}
    h1,h2{font-feature-settings:"palt";}
    @media (max-width:834px){
      .sec1-accent{top:auto !important;bottom:0 !important;left:50% !important;transform:translateX(-50%) !important;opacity:.5 !important;}
    }
    @media (min-width:768px){
      .fv-copy{font-size:clamp(42px,4.6vw,60px) !important;}
    }

/* ==================== 下層共通ベース + .biz-card:hover（水回り helmet より） ==================== */
html{scroll-behavior:smooth;}
    body{margin:0;background:#F7FBFD;color:#242C32;font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;line-height:1.9;font-size:17px;-webkit-font-smoothing:antialiased;}
    a{color:#1e5db0;text-decoration:none;}
    a:hover{color:#119cf0;}
    @keyframes waveDrift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    a.js-cta:hover{background:#119cf0 !important;color:#fff !important;}
    button.js-totop:hover{background:#1e5db0 !important;}
    a.js-btn-ol:hover{background:#1e5db0 !important;color:#fff !important;}
    a.js-cta-tel:hover, a.js-cta-tel:hover span{background:#ED8C0E !important;color:#fff !important;}
    a.js-btn-solid:hover{background:#119cf0 !important;color:#fff !important;}
    a.js-btn-line:hover{background:#fff !important;color:#06C755 !important;}
    a.js-btn-mail:hover{background:#fff !important;color:#119cf0 !important;}
    nav.js-fnav a:hover{color:#fff !important;}
    a.js-btn-voice:hover{background:#119cf0 !important;color:#fff !important;}
    a.js-btn-google:hover{background:#ED8C0E !important;color:#fff !important;}
    .svc-btns a{width:240px;box-sizing:border-box;text-align:center;padding-left:0;padding-right:0;}
    .biz-card:hover{box-shadow:0 12px 30px rgba(28,78,107,.14) !important;transform:translateY(-4px) !important;}
    @media (max-width:760px){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
    }
    @media (max-width:1024px) and (orientation:portrait){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      body{font-size:16px !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
      .cta-btns{flex-wrap:nowrap !important;}
      .cta-btns > a{min-width:0 !important;flex:1 1 0 !important;padding-left:12px !important;padding-right:12px !important;}
    }
    @media (max-width:1024px){
      .ph-sec{padding-top:120px !important;}
      .ph-copy{margin-top:8px !important;}
    }
    @media (max-width:680px){
      .ph-sec img{object-fit:contain !important;object-position:top left !important;height:auto !important;max-height:70% !important;width:56% !important;}
      .js-floatbar{display:none !important;}
      section h2{font-size:29px !important;}
      .svc-btns a{width:260px !important;padding-left:0 !important;padding-right:0 !important;text-align:center !important;}
      .biz-grid{grid-template-columns:1fr !important;}
      .loc-grid{grid-template-columns:1fr !important;}
      .secwave{height:44px !important;}
      nav.js-fnav{grid-template-columns:1fr !important;white-space:normal !important;justify-content:start !important;}
      .cta-btns{flex-direction:column !important;align-items:stretch !important;}
      .cta-btns > a{width:100% !important;max-width:320px !important;margin-left:auto !important;margin-right:auto !important;height:72px !important;min-height:72px !important;}
      .hdr-logo{margin-left:-7px !important;}
      body{font-size:15px !important;}
      .ph-copy{font-size:clamp(30px,8vw,40px) !important;}
      .ph-sec{padding-top:112px !important;}
    }
    @keyframes blobMorph{0%{border-radius:58% 42% 54% 46% / 48% 56% 44% 52%}50%{border-radius:45% 55% 47% 53% / 56% 44% 57% 43%}100%{border-radius:52% 48% 57% 43% / 44% 54% 46% 56%}}
    @keyframes bubbleRise{0%{transform:translateY(0) scale(.55);opacity:0}12%{opacity:.7}100%{transform:translateY(-340px) scale(1.15);opacity:0}}
    @keyframes surfaceWobble{0%{transform:translateY(34px) scale(1.12)}100%{transform:translateY(0) scale(1)}}
    @keyframes sheenSweep{0%{opacity:0;transform:translateY(60%)}25%{opacity:.9}100%{opacity:0;transform:translateY(-120%)}}
    h1,h2{font-feature-settings:"palt";}

/* ==================== 下層 .trust-badges/.trust-badge（エリア helmet より） ==================== */
html{scroll-behavior:smooth;}
    body{margin:0;background:#F7FBFD;color:#242C32;font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;line-height:1.9;font-size:17px;-webkit-font-smoothing:antialiased;}
    a{color:#1e5db0;text-decoration:none;}
    a:hover{color:#119cf0;}
    @keyframes waveDrift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
    a.js-cta:hover{background:#119cf0 !important;color:#fff !important;}
    button.js-totop:hover{background:#1e5db0 !important;}
    a.js-btn-ol:hover{background:#1e5db0 !important;color:#fff !important;}
    a.js-cta-tel:hover, a.js-cta-tel:hover span{background:#ED8C0E !important;color:#fff !important;}
    a.js-btn-solid:hover{background:#119cf0 !important;color:#fff !important;}
    a.js-btn-line:hover{background:#fff !important;color:#06C755 !important;}
    a.js-btn-mail:hover{background:#fff !important;color:#119cf0 !important;}
    nav.js-fnav a:hover{color:#fff !important;}
    .svc-btns a{width:240px;box-sizing:border-box;text-align:center;padding-left:0;padding-right:0;}
    .biz-card:hover{box-shadow:0 12px 30px rgba(28,78,107,.14) !important;transform:translateY(-4px) !important;}
    @media (max-width:760px){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
      .trust-badges{flex-direction:column !important;align-items:center !important;}
      .trust-badge{width:100% !important;max-width:320px !important;box-sizing:border-box !important;}
    }
    @media (max-width:1024px) and (orientation:portrait){
      .row-imgright{flex-direction:column !important;}
      .row-imgright > div{flex:0 0 auto !important;width:100% !important;}
      .imgcol-r{order:-1 !important;}
      [data-anim="morph"]{width:100% !important;margin:0 auto !important;}
      body{font-size:16px !important;}
      .area-btn{display:block !important;width:fit-content !important;margin-left:auto !important;margin-right:auto !important;}
      .cta-btns{flex-wrap:nowrap !important;}
      .cta-btns > a{min-width:0 !important;flex:1 1 0 !important;padding-left:12px !important;padding-right:12px !important;}
    }
    @media (max-width:1024px){
      .ph-sec{padding-top:120px !important;}
      .ph-copy{margin-top:8px !important;}
    }
    @media (max-width:680px){
      .ph-sec img{object-fit:contain !important;object-position:top left !important;height:auto !important;max-height:70% !important;width:56% !important;}
      .js-floatbar{display:none !important;}
      section h2{font-size:29px !important;}
      .svc-btns a{width:260px !important;padding-left:0 !important;padding-right:0 !important;text-align:center !important;}
      .biz-grid{grid-template-columns:1fr !important;}
      .loc-grid{grid-template-columns:1fr !important;}
      .secwave{height:44px !important;}
      nav.js-fnav{grid-template-columns:1fr !important;white-space:normal !important;justify-content:start !important;}
      .cta-btns{flex-direction:column !important;align-items:stretch !important;}
      .cta-btns > a{width:100% !important;max-width:320px !important;margin-left:auto !important;margin-right:auto !important;height:72px !important;min-height:72px !important;}
      .hdr-logo{margin-left:-7px !important;}
      body{font-size:15px !important;}
      .ph-copy{font-size:clamp(30px,8vw,40px) !important;}
      .ph-sec{padding-top:112px !important;}
    }
    @keyframes blobMorph{0%{border-radius:58% 42% 54% 46% / 48% 56% 44% 52%}50%{border-radius:45% 55% 47% 53% / 56% 44% 57% 43%}100%{border-radius:52% 48% 57% 43% / 44% 54% 46% 56%}}
    @keyframes bubbleRise{0%{transform:translateY(0) scale(.55);opacity:0}12%{opacity:.7}100%{transform:translateY(-340px) scale(1.15);opacity:0}}
    @keyframes surfaceWobble{0%{transform:translateY(34px) scale(1.12)}100%{transform:translateY(0) scale(1)}}
    @keyframes sheenSweep{0%{opacity:0;transform:translateY(60%)}25%{opacity:.9}100%{opacity:0;transform:translateY(-120%)}}
    h1,h2{font-feature-settings:"palt";}

/* ===== CueZilla化 追加ルール（分解時に追記・みやけ水道設備 S01817） ===== */
/* R-18 固定ヘッダー高さ（システム描画ページの潜り込み防止／skinが上余白に加算） */
:root{ --fixed-header-h: 150px; }
@media (max-width:1319px){ :root{ --fixed-header-h: 92px; } }

/* ヘッダー：デスクトップナビ / ハンバーガーの出し分け（DCの mobile判定 BP=1320 を再現） */
.hdr-burger{display:none;}
@media (max-width:1319px){
  .hdr-nav-desktop{display:none !important;}
  .hdr-cta-desktop{display:none !important;}
  .hdr-burger{display:flex !important;}
}
/* ヘッダー電話：phone(<560)で隠す＝DCの showHeaderTel */
@media (max-width:559px){ .hdr-tel{display:none !important;} }

/* デスクトップ・ドロップダウン（DCの openMenu/JS を CSS hover へ置換） */
.hdr-dd{opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s ease, transform .2s ease;}
.hdr-nav-item:hover .hdr-dd, .hdr-nav-item:focus-within .hdr-dd{opacity:1;visibility:visible;transform:translateY(0);}

/* スプラッシュ：JS不動時は表示しない（html.js ゲート＝白画面/覆い被さり事故の防止） */
.miyake-splash{display:none;}
html.js .miyake-splash{display:flex;}

/* モバイル全画面メニュー：既定は隠す（ハンバーガーでJS開閉） */
.miyake-menu{opacity:0;visibility:hidden;transform:translateY(-14px);pointer-events:none;transition:opacity .35s ease, transform .35s ease;}
.miyake-menu.open{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}

/* R-10a カスタムパンくずを各ページヒーロー(.ph-sec)内に内蔵しているため、CueZilla自動パンくずは非表示（二重防止） */
.parts231_breadcrumb{display:none !important;}

/* ヘッダー電話のホバー（inline color に勝つよう !important） */
a.hdr-tel:hover{color:#119cf0 !important;}

.parts222_section h2{
        display: none!important;
}
.parts131415_blog_48dH6LUPYS.bg-color{
            background-color: #f7fbfd00 !important;
    padding-top: 1px;
    padding-bottom: 60px;
}
.design-parts-11_xX3T0capAI{
        padding-top: 1px!important;
    padding-bottom: 1px!important;
}
.design-parts-11_xX3T0capAI .container .content ul li a{
    background-color: #ffffff!important;
    border: none!important;
    padding: 0px !important;
}
.design-parts-11_xX3T0capAI .container .content .image_area{
    border-radius: 10px 10px 0 0!important;
}
.design-parts-11_xX3T0capAI .container .content .card-foot-area{
    padding: 10px!important;
}
.parts040506_notice-news_HdrUplWSAC .container .content{
        box-shadow: 4px 7px 5px #f1f1f1!important;
}
 .required{
    padding: 1px 0 5px 0!important;
}
@media screen and (min-width: 521px) and (max-width: 991px) {
     .required{
                height: 24px!important;
    }
}
@media screen and (max-width: 520px){
 .required{
                height: 27px!important;
    }
}
.parts213_section_form dt,.parts219_section_form dt{
        color: rgb(30, 93, 176)!important;
    font-weight: bold!important;
}