/* パターンB：既存FVの雰囲気 */
.sfv::after{background:linear-gradient(180deg,rgba(8,30,80,.15) 0,rgba(8,30,80,.05) 40%,rgba(8,30,80,.25) 100%)!important}
.ofv{position:relative;margin:3cqw 0 0;padding:0 1cqw}
.ofv_tag{display:inline-block;background:#fff;color:#0b347f;font-weight:900;font-style:italic;font-size:4.2cqw;padding:1.2cqw 5cqw 1.2cqw 3cqw;clip-path:polygon(0 0,100% 0,93% 100%,0 100%);box-shadow:0 .6cqw 1.4cqw rgba(0,0,0,.2)}
.ofv_h{margin:2cqw 0 0;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-style:italic;line-height:1.05;color:#fff;letter-spacing:-.02em}
.ofv_h span{display:block;font-size:14.5cqw;text-shadow:0 .6cqw 0 #0b347f,0 1.2cqw 2.4cqw rgba(0,20,70,.6)}
.ofv_h .l1{position:relative;padding-left:2cqw}
.ofv_h .l1::before{content:"";position:absolute;left:-4cqw;top:8%;bottom:4%;width:60%;background:linear-gradient(90deg,#1556c4,rgba(21,86,196,.0));z-index:-1;transform:skewX(-12deg)}
.ofv_h small{font-size:.42em;margin-left:.5cqw}
.ofv_no{display:flex;align-items:center;gap:2cqw;margin-top:1cqw}
.ofv_no b{font-family:"Jost",sans-serif;font-style:italic;font-weight:600;font-size:30cqw;line-height:.9;color:#ffe500;text-shadow:.6cqw .8cqw 0 #0b347f,0 1.6cqw 3cqw rgba(0,0,0,.45);letter-spacing:-.04em}
.ofv_no img{width:28cqw;height:auto;filter:drop-shadow(0 1.4cqw 1.6cqw rgba(0,0,0,.4));animation:boyon 1.6s cubic-bezier(.28,.84,.42,1) .2s both;transform-origin:50% 100%}
.ofv_t1{display:inline-block;margin:3cqw 0 0;background:#fff;color:#0b347f;font-weight:900;font-size:5.4cqw;padding:1.4cqw 3cqw;box-shadow:0 .6cqw 1.4cqw rgba(0,0,0,.2)}
.ofv_t2{display:block;width:max-content;margin:1.4cqw 0 0;background:#fff;color:#0f2f55;font-weight:800;font-size:4cqw;padding:1.2cqw 3cqw;box-shadow:0 .6cqw 1.4cqw rgba(0,0,0,.2)}
.ofv_t2 b{color:#c8102e;font-size:1.35em}
.sfv_masc.umb{bottom:-6cqw!important}
@media (min-width:900px){
.ofv{grid-area:h1}.ofv_tag{font-size:19px;padding:6px 26px 6px 14px}.ofv_h span{font-size:78px}.ofv_no b{font-size:150px}.ofv_no img{width:150px}.ofv_t1{font-size:26px;padding:6px 16px}.ofv_t2{font-size:18px;padding:6px 16px}
.sfv::after{background:linear-gradient(90deg,rgba(8,30,80,.35) 0,rgba(8,30,80,.1) 50%,rgba(8,30,80,0) 70%)!important}
}
.sfv_tag{background:rgba(255,255,255,.9);border-radius:8px;padding:1cqw 2cqw!important}
.sfv_ics{background:rgba(255,255,255,.94);border-radius:3cqw;padding:2.4cqw 1cqw!important;box-shadow:0 1cqw 2.4cqw rgba(8,30,80,.18)}
.sfv_ics li{color:#0f2f55!important;font-weight:800;text-shadow:none!important}
.sfv_circ b{white-space:nowrap;font-size:4.2cqw!important}
.sfv_circ b{font-size:3.5cqw!important;line-height:1.3}.sfv_circ small{font-size:2.5cqw!important;white-space:nowrap}
.sfv_circ b.sm{font-size:2.9cqw!important;letter-spacing:-.03em}
/* ===== PC配置（900px〜） ===== */
@media (min-width:900px){
.sfv_in{grid-template-columns:1.1fr .9fr!important;grid-template-areas:"top top" "h1 mid" "h1 who" "h1 ics"!important;column-gap:28px!important;row-gap:14px!important;align-items:start!important;padding-bottom:40px!important}
.ofv{grid-area:h1;margin-top:6px}
.ofv_h span{font-size:70px}
.ofv_no b{font-size:120px!important}.ofv_no img{width:150px!important}
.sfv_mid{grid-area:mid;margin-top:0!important;display:flex;align-items:center;gap:12px;min-height:250px}
.sfv_circ{display:flex!important;flex-direction:row!important;gap:10px!important;padding:0!important;margin:0!important;flex:1;align-self:center}
.sfv_circ li{width:126px!important;height:126px!important;position:static!important;transform:none!important;flex:none}
.sfv_circ small{font-size:11.5px!important}.sfv_circ b{font-size:15px!important;line-height:1.3}.sfv_circ b.sm{font-size:13px!important}
.sfv_circ svg{width:20px;height:20px}
.sfv_masc.umb{position:relative!important;width:170px!important;right:auto!important;bottom:auto!important;flex:none}
.rain{inset:-40px 0 0 auto;width:220px}
.sfv_who{grid-area:who;margin:0!important}
.sfv_ics{grid-area:ics;margin:0!important;padding:12px 8px!important}
.sfv_tag{max-width:none}
}
@media (min-width:900px) and (max-width:1180px){.sfv_circ li{width:108px!important;height:108px!important}.sfv_circ b{font-size:13px!important}.ofv_h span{font-size:58px}}
@media (min-width:900px){
.sfv_mid{justify-content:space-between}
.sfv_circ{order:1;justify-content:flex-start}
.sfv_circ li,.sfv_circ li:nth-child(n){width:118px!important;height:118px!important;margin:0!important;top:auto!important;left:auto!important}
.sfv_masc.umb{order:2;width:150px!important;z-index:2}
.rain{display:none}
.sfv_tag{display:none}
}
/* スマホ：No.1小さく・バッジ大きく */
.ofv_no{gap:3cqw;margin:2cqw 0 0 2cqw}
.ofv_no b{font-size:21cqw!important}
.ofv_no img{width:36cqw!important}
@media (min-width:900px){
.ofv_no b{font-size:100px!important}.ofv_no img{width:170px!important}
.sfv_masc.umb{position:static!important;inset:auto!important;transform:none!important;margin-left:6px}
.sfv_mid{flex-wrap:nowrap}
}
.ofv_no img{width:30cqw!important}.ofv_no b{font-size:20cqw!important}
@media (min-width:900px){
.sfv_mid{position:relative;display:block!important;min-height:200px}
.sfv_circ{position:absolute!important;left:0;top:50%;transform:translateY(-50%)!important}
.sfv_masc.umb{position:absolute!important;right:0!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;width:140px!important}
.ofv_no b{font-size:100px!important}.ofv_no img{width:170px!important}
}
@media (min-width:900px){
.sfv_circ li,.sfv_circ li:nth-child(n){width:104px!important;height:104px!important}
.sfv_circ b{font-size:13.5px!important}.sfv_circ small{font-size:10.5px!important}
.sfv_masc.umb{width:120px!important;right:-6px!important}
}
/* No.1文字なし：見出しを大きく・バッジを右に重ねる */
.ofv{position:relative}
.ofv_h span{font-size:17.5cqw!important;letter-spacing:-.04em}
.ofv_h small{font-size:.3em!important;margin-left:.3cqw}
.ofv_h .l2{margin-top:.5cqw}
.ofv_no{position:absolute;right:-1cqw;top:44cqw;margin:0!important}
.ofv_no img{width:34cqw!important}
.ofv_t1{margin-top:6cqw!important}
@media (min-width:900px){.ofv_h span{font-size:84px!important}.ofv_no{right:auto;left:420px;top:150px}.ofv_no img{width:170px!important}.ofv_t1{margin-top:24px!important}}
.ofv_h span{font-size:15.4cqw!important;white-space:nowrap}
.ofv_no{top:auto;bottom:-3cqw;right:0}
.ofv_no img{width:31cqw!important}
.ofv_t1{margin-top:4cqw!important;font-size:5cqw!important}.ofv_t2{font-size:3.8cqw!important}
@media (min-width:900px){.ofv_h span{font-size:80px!important}.ofv_no{bottom:-10px;left:400px;top:auto}.ofv_t1{font-size:26px!important}.ofv_t2{font-size:18px!important}}
.ofv_h span{font-size:14.4cqw!important}
.ofv_no{top:9cqw;bottom:auto;right:-1cqw}
.ofv_no img{width:25cqw!important}
.ofv_h .l1{padding-right:24cqw}
@media (min-width:900px){.ofv_h span{font-size:80px!important}.ofv_no{top:40px;bottom:auto;left:auto;right:0}.ofv_no img{width:160px!important}.ofv_h .l1{padding-right:0}}
.ofv_h .l1{padding-right:0}
.ofv_no{top:43cqw;right:1cqw}
.ofv_no img{width:29cqw!important}
.ofv_t1,.ofv_t2{max-width:62cqw}
.ofv_t1{font-size:4.6cqw!important}
.sfv_mid{margin-top:9cqw!important}
@media (min-width:900px){.ofv_no{top:40px}.ofv_t1,.ofv_t2{max-width:none}}
/* ===== 屋根LP参考のFV（明るい・太字・青＋金） ===== */
.sfv::after{background:linear-gradient(180deg,rgba(255,255,255,.72) 0,rgba(240,247,255,.86) 55%,rgba(255,255,255,.92) 100%)!important}
.rfv{position:relative;margin-top:2cqw;padding-bottom:2cqw}
.rfv_bb{position:relative;display:inline-block;margin:0 0 3cqw;background:#fff;border-radius:3cqw;padding:2cqw 4cqw;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-style:italic;font-size:5.2cqw;color:#173b8f;box-shadow:0 1cqw 2.4cqw rgba(20,60,140,.18)}
.rfv_bb small{font-size:.7em;margin-left:.4em}
.rfv_bb::after{content:"";position:absolute;right:10%;bottom:-2.6cqw;border:1.6cqw solid transparent;border-top:2.6cqw solid #fff;border-bottom:0}
.rfv_h{margin:0;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:900;font-style:italic;line-height:1.08;letter-spacing:-.03em}
.rfv_h>span{display:block;white-space:nowrap}
.rfv_h .r1{font-size:16.5cqw;background:linear-gradient(180deg,#3d86ea 0%,#1d55c4 55%,#16388f 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .5cqw 0 #fff) drop-shadow(0 1.2cqw 1.6cqw rgba(20,60,140,.25))}
.rfv_h .ame{position:relative;display:inline-block}
.rfv_h .dps{position:absolute;left:12%;top:58%;width:70%;display:flex;justify-content:space-around;pointer-events:none}
.rfv_h .dp{width:3.6cqw;height:5cqw;filter:drop-shadow(0 .3cqw .3cqw rgba(0,40,120,.35));animation:dpf 2.4s ease-in infinite}
.rfv_h .dp:nth-child(2){animation-delay:.6s;width:3cqw}.rfv_h .dp:nth-child(3){animation-delay:1.2s}
@keyframes dpf{0%{transform:translateY(-1cqw);opacity:0}20%{opacity:1}80%{transform:translateY(3cqw);opacity:1}100%{transform:translateY(4cqw);opacity:0}}
.rfv_h .r2{margin-top:1.5cqw;font-size:15.5cqw;position:relative}
.rfv_h .r2 b{position:relative;z-index:1;background:linear-gradient(180deg,#5d6876 0%,#2d3540 60%,#1b2028 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .5cqw 0 #fff)}
.rfv_h .r2::before{content:"";position:absolute;left:30%;right:6%;bottom:8%;height:38%;background:linear-gradient(90deg,rgba(255,226,90,0),#ffe25a 12%,#ffd23a 85%,rgba(255,226,90,0));transform:skewX(-14deg) rotate(-2deg);border-radius:1cqw;z-index:0}
.rfv_h .r2 em{font-style:normal;font-size:.45em;color:#2d3540;position:relative;z-index:1;margin-left:1cqw}
.rfv_h .r3{margin-top:1cqw;font-size:8cqw;color:#173b8f}
.rfv_h .r3 strong{font-family:"Jost",sans-serif;font-weight:600;font-size:2.2em;margin-left:1.6cqw;background:linear-gradient(180deg,#ffd75a 0%,#f2a400 55%,#c67a00 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .5cqw 0 #fff) drop-shadow(0 1cqw 1.4cqw rgba(160,90,0,.3))}
.rfv_s{margin:3cqw 0 0;font-weight:900;font-size:4.6cqw;line-height:1.55;color:#173b8f;text-shadow:0 0 .6cqw #fff,0 0 1.2cqw #fff}
.rfv_s mark{background:none;color:#d72d2d;font-size:1.15em}
.rfv_pr{margin:2.4cqw 0 0;display:inline-block;background:#fff;border-radius:999px;padding:1.4cqw 4cqw;font-weight:800;font-size:4cqw;color:#173b8f;box-shadow:0 .8cqw 1.8cqw rgba(20,60,140,.18)}
.rfv_pr b{color:#d72d2d;font-size:1.4em}.rfv_pr small{font-size:.75em;color:#555}
.rfv_md{position:absolute;right:-2cqw;bottom:-4cqw;width:32cqw;height:auto;filter:drop-shadow(0 1.4cqw 1.8cqw rgba(0,30,90,.35));animation:boyon 1.6s cubic-bezier(.28,.84,.42,1) .3s both;transform-origin:50% 100%}
.sfv_masc.umb{display:none!important}
.sfv_mid{margin-top:6cqw!important}
@media (min-width:900px){
.rfv{grid-area:h1}.rfv_bb{font-size:22px;padding:8px 20px;border-radius:14px}
.rfv_h .r1{font-size:84px}.rfv_h .r2{font-size:80px}.rfv_h .r3{font-size:40px}.rfv_h .dp{width:18px;height:26px}
.rfv_s{font-size:20px}.rfv_pr{font-size:18px;padding:6px 20px}
.rfv_md{right:0;bottom:-10px;width:170px}
.sfv_masc.umb{display:block!important}
}
.rfv_h .dps{top:62%;z-index:2}.rfv_h .dp{width:4.4cqw;height:6cqw}
.rfv_h .r2{margin-top:0}
.rfv_h .r2::before{display:none}
.rfv_h .r2 b{background:linear-gradient(180deg,#9aa4b0 0%,#6b7684 45%,#3f4855 100%);-webkit-background-clip:text;background-clip:text}
.rfv_h .r1{margin-top:1cqw}
.rfv_h .r1 em,.rfv_h .r2 em{font-style:normal;font-size:.45em;margin-left:1cqw;-webkit-text-fill-color:#173b8f}
.rfv_h .r2 em{-webkit-text-fill-color:#3f4855}
.rfv_h .r3{text-align:right;margin-top:-1cqw;padding-right:2cqw}
.rfv_h .r3 strong{font-size:22cqw;margin:0}
.rfv_h .dp{width:5cqw!important;height:7cqw!important}
@media (min-width:900px){.rfv_h .r3 strong{font-size:110px}.rfv_h .dp{width:22px!important;height:30px!important}}
.sfv::after{background:linear-gradient(180deg,rgba(255,255,255,.5) 0,rgba(240,247,255,.38) 50%,rgba(255,255,255,.75) 100%)!important}
.rfv_h .r1,.rfv_h .r2 b,.rfv_h .r3 strong{filter:drop-shadow(0 0 .5cqw #fff) drop-shadow(0 0 .5cqw #fff) drop-shadow(0 1cqw 1.4cqw rgba(20,60,140,.3))!important}
.rfv_s{text-shadow:0 0 .5cqw #fff,0 0 .5cqw #fff,0 0 1cqw #fff,0 0 1.6cqw #fff}
/* v24 防水工事メイン・テカテカシルバー */
.sfv::after{background:linear-gradient(180deg,rgba(255,255,255,.38) 0,rgba(240,247,255,.2) 50%,rgba(255,255,255,.62) 100%)!important}
.rfv_h .r2{font-size:21cqw!important;line-height:1.05}
.rfv_h .r2 b{display:inline-block;padding:0 3cqw .5cqw 0;margin-right:-2cqw;background:linear-gradient(180deg,#e9edf1 0%,#b4bcc6 18%,#5b6573 40%,#2a313b 52%,#6e7885 64%,#c9d0d8 82%,#8a94a1 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent;position:relative}
.rfv_h .r2 b::after{content:"防水工事";position:absolute;inset:0;padding:inherit;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.95) 42%,transparent 54%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gl 3.6s ease-in-out 1s infinite}
@keyframes gl{0%{background-position:130% 0}55%,100%{background-position:-60% 0}}
.rfv_h .r2 em{font-size:.38em!important}
.rfv_h .r1{font-size:12.4cqw!important;margin-top:1.5cqw;padding-right:2cqw}
.rfv_h .r1 em{font-size:.5em}
.rfv_h .r1 strong{font-family:"Jost",sans-serif;font-weight:600;font-size:1.35em;margin-left:2cqw;padding-right:2cqw;background:linear-gradient(180deg,#ffd75a 0%,#f2a400 55%,#c67a00 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.rfv_h .r3{display:none!important}
@media (min-width:900px){.rfv_h .r2{font-size:104px!important}.rfv_h .r1{font-size:58px!important}}
.rfv_h .r2 b{background:linear-gradient(180deg,#c9d0d8 0%,#7d8794 22%,#39414c 42%,#1c2229 52%,#4a535f 64%,#a3acb7 84%,#5c6672 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;filter:drop-shadow(.35cqw 0 0 #fff) drop-shadow(-.35cqw 0 0 #fff) drop-shadow(0 .35cqw 0 #fff) drop-shadow(0 -.35cqw 0 #fff) drop-shadow(0 1.2cqw 1.6cqw rgba(0,10,30,.45))!important}
.rfv_h .r2 em{-webkit-text-fill-color:#2a313b}
.rfv_h .r1{font-size:10.6cqw!important}
.rfv_h .r1 strong{font-size:1.3em;margin-left:1cqw}
@media (min-width:900px){.rfv_h .r1{font-size:52px!important}.rfv_h .r2 b{filter:drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff) drop-shadow(0 2px 0 #fff) drop-shadow(0 -2px 0 #fff) drop-shadow(0 6px 8px rgba(0,10,30,.45))!important}}
.rfv_h .r2 b{background:linear-gradient(180deg,#a3aab3 0%,#858d97 45%,#6f7781 100%)!important;-webkit-background-clip:text!important;background-clip:text!important}
.rfv_h .r2 em{-webkit-text-fill-color:#5f6670}
/* v27 */
.rfv_h .r2 b{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;color:#5a616b!important;-webkit-text-fill-color:#5a616b!important}
.rfv_h .r2 em{-webkit-text-fill-color:#4a515a!important}
.sfv_masc.umb{display:block!important;width:26cqw!important;right:0!important;bottom:-6cqw!important}
.rfv_md{right:auto;left:58cqw;bottom:auto;top:-2cqw;width:24cqw}
.rfv_h .ame{overflow:visible}
.rfv_h .dps{position:absolute;left:-10%;right:-10%;width:auto;top:70%;height:12cqw;display:flex;justify-content:space-between;z-index:3}
.rfv_h .dp{width:4.6cqw!important;height:6.4cqw!important;flex:none}
.rfv_h .dp path{fill:#2a8cf0}
.rain{display:block!important}
.rfv_md{left:auto!important;right:0!important;top:auto!important;bottom:0!important;width:24cqw!important}.rfv_s,.rfv_pr{max-width:70cqw}
.rfv_md{bottom:12cqw!important;width:23cqw!important}.sfv_masc.umb{bottom:-10cqw!important}
.rfv_h .r2 b{color:#40464f!important;-webkit-text-fill-color:#40464f!important}.rfv_h .r2 em{-webkit-text-fill-color:#40464f!important}
/* 屋根LPと同じ極太の角ばった書体 */
.rfv_h,.rfv_h *{font-family:"Dela Gothic One","Zen Kaku Gothic New",sans-serif!important;font-style:normal!important;font-weight:400!important}
.rfv_h>span{transform:skewX(-8deg) rotate(-3deg);transform-origin:left center}
.rfv_h .r1{font-size:11.6cqw!important;-webkit-text-fill-color:transparent}
.rfv_h .r2{font-size:19cqw!important}
.rfv_h .r1 strong{font-family:"Jost",sans-serif!important;font-weight:600!important;font-style:italic!important;font-size:1.45em}
.rfv_bb{font-family:"Dela Gothic One",sans-serif!important;font-style:normal!important;font-weight:400!important;transform:rotate(-3deg)}
@media (min-width:900px){.rfv_h .r2{font-size:96px!important}.rfv_h .r1{font-size:56px!important}}
.rfv_h .r1{font-size:9.6cqw!important;letter-spacing:0;padding-right:4cqw}
.rfv_h .r1 strong{font-size:1.5em;margin-left:1cqw}
.rfv_h .r2{font-size:18cqw!important;letter-spacing:-.02em}
.rfv_bb{font-size:4.6cqw!important;letter-spacing:.04em}
.rfv_h{padding-left:1cqw}
