@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@400;600&display=swap");
.ja.ja.ja *{all:revert}
/* 大手セキュリティ型(見本 SECOM www.secom.co.jp/adcs/access.do → トップページ)。読みやすい版。
   直したら style.css を作り直す(.ja.ja.ja → .ja.ja.ja.ja.ja.ja.ja.ja.ja と先頭に .ja.ja.ja.ja.ja.ja.ja.ja.ja *{all:revert}) */

.ja.ja.ja{--main:#e80012;--main-dk:#a8000d;--ink:#111;--logo:#2a3550;--gy:#f0f0f0;--gy2:#f8f8f8;--line:#dcdcdc;--cream:#ffffe2;--cream-dk:#c9c48f;--teal:#009fa7;
  --chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 2l6 6-6 6'/%3E%3C/svg%3E");
  max-width:480px;margin:0 auto;background:#fff;color:var(--ink);font-family:"Noto Sans JP",sans-serif;font-size:16px;font-weight:400;line-height:1.6;letter-spacing:0;line-break:strict;position:relative;overflow-x:clip;-webkit-font-smoothing:antialiased}
.ja.ja.ja *{box-sizing:border-box}
.ja.ja.ja img{display:block;max-width:100%}
.ja.ja.ja p{margin:0}
.ja.ja.ja h1,.ja.ja.ja h2,.ja.ja.ja h3{margin:0;font-weight:700;font-size:inherit}
.ja.ja.ja ul,.ja.ja.ja ol{margin:0;padding:0;list-style:none}
.ja.ja.ja a{color:inherit;text-decoration:none}
.ja.ja.ja em{font-style:normal;color:var(--main)}
.ja.ja.ja i{font-style:normal}
.ja.ja.ja s{text-decoration:line-through}
.ja.ja.ja summary{list-style:none;cursor:pointer}
.ja.ja.ja summary::-webkit-details-marker{display:none}
.ja.ja.ja p,.ja.ja.ja li,.ja.ja.ja h3,.ja.ja.ja summary{text-wrap:pretty}
.ja.ja.ja .en{font-family:"Oswald",sans-serif;font-weight:400;letter-spacing:0}

/* 線のアイコン(色は --main。mask なので色を選ぶと一緒に変わる) */
.ja.ja.ja .ic{display:inline-block;flex:none;width:24px;height:24px;background:var(--main);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.ja.ja.ja .ic-doc{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2.5h8.5l4.5 4.5v14.5H6z'/%3E%3Cpath d='M14.5 2.5V7H19M9 11.5h7M9 14.5h7M9 17.5h5'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-phone{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 3h3.2l1.8 4.6-2.3 1.5a11.5 11.5 0 0 0 6.7 6.7l1.5-2.3 4.6 1.8v3.2A2 2 0 0 1 19 20.5 16.5 16.5 0 0 1 3.5 5a2 2 0 0 1 2-2z'/%3E%3Cpath d='M14.5 3.5a6 6 0 0 1 6 6M14.5 7a2.5 2.5 0 0 1 2.5 2.5'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-web{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='11' rx='1'/%3E%3Cpath d='M2 19h20'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-camera{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7.5 16.5 4l2 6.5L5 14z'/%3E%3Cpath d='M18.5 7l3-1 .5 4-3 1M8 13l1 4H4M4 14.5v5'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-wifi{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 9a14 14 0 0 1 19 0M5.5 12.5a9.5 9.5 0 0 1 13 0M8.7 16a5 5 0 0 1 6.6 0'/%3E%3Ccircle cx='12' cy='19.3' r='1'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-list{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3.5h10.5l3 3V21H7z'/%3E%3Cpath d='M4 6.5v17h13M10 10h7M10 13.5h7M10 17h5'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-house{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11 12 3.5 21 11M5.5 9v12h13V9M10 21v-6h4v6'/%3E%3C/svg%3E")}
.ja.ja.ja .ic-chat{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H10l-4 3.5V16H4z'/%3E%3C/svg%3E")}

/* ---- いちばん上の白い帯(ずっと固定):社名・赤い電話ボタン・MENU ---- */
.ja.ja.ja .hd{position:fixed;left:0;right:0;top:0;z-index:60}
.ja.ja.ja .hd .in{display:flex;align-items:center;max-width:480px;height:60px;margin:0 auto;padding-left:16px;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.ja.ja.ja .logo{display:flex;flex-direction:column;min-width:0;margin-right:auto;line-height:1.15;color:var(--logo)}
.ja.ja.ja .logo small{font-size:9px;font-weight:500;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ja.ja.ja .logo b{font-size:clamp(16px,4.6vw,19px);font-weight:900;letter-spacing:.02em;white-space:nowrap}
.ja.ja.ja .hd .tl{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:clamp(124px,36vw,150px);height:40px;margin:0 10px;border-radius:8px;background:var(--main);color:#fff;font-family:"Oswald",sans-serif;font-size:16px;font-weight:600;line-height:1.05;letter-spacing:.01em}
.ja.ja.ja .hd .tl small{font-family:"Noto Sans JP",sans-serif;font-size:10px;font-weight:700;letter-spacing:.06em}
.ja.ja.ja .hd .mn{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;flex:none;width:60px;height:60px;padding-bottom:8px;border-left:1px solid var(--line);background:#fff;font-size:10px;letter-spacing:.02em;color:#333}
.ja.ja.ja .hd .mn i{display:block;width:20px;height:13px;margin-bottom:8px;border-top:2px solid #333;border-bottom:2px solid #333;background:linear-gradient(#333,#333) center/100% 2px no-repeat}

/* ---- 最初の画面:写真をゆっくり入れかえる(見本は動画4本の入れかえ)+中央下に白いキャッチ ---- */
.ja.ja.ja .fv{position:relative;height:100svh;min-height:600px;max-height:900px;overflow:hidden;background:#3a3a3a}
.ja.ja.ja .fvs{position:absolute;inset:0}
.ja.ja.ja .fvs img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;animation:ja-f4 20s linear infinite both}
.ja.ja.ja .fvs img:nth-child(1){animation-delay:-1s}
.ja.ja.ja .fvs img:nth-child(2){animation-delay:4s}
.ja.ja.ja .fvs img:nth-child(3){animation-delay:9s}
.ja.ja.ja .fvs img:nth-child(4){animation-delay:14s}
.ja.ja.ja .fvs:has(>img:nth-child(3):last-child) img{animation-name:ja-f3;animation-duration:15s}
.ja.ja.ja .fvs:has(>img:nth-child(2):last-child) img{animation-name:ja-f2;animation-duration:10s}
.ja.ja.ja .fvs img:only-child{opacity:1;animation:none}
@keyframes ja-f4{0%{opacity:0;transform:scale(1)}5%{opacity:1}25%{opacity:1}30%{opacity:0;transform:scale(1.06)}100%{opacity:0;transform:scale(1.06)}}
@keyframes ja-f3{0%{opacity:0;transform:scale(1)}6.67%{opacity:1}33.3%{opacity:1}40%{opacity:0;transform:scale(1.06)}100%{opacity:0;transform:scale(1.06)}}
@keyframes ja-f2{0%{opacity:0;transform:scale(1)}10%{opacity:1}50%{opacity:1}60%{opacity:0;transform:scale(1.06)}100%{opacity:0;transform:scale(1.06)}}
@media (prefers-reduced-motion:reduce){.ja.ja.ja .fvs img{animation:none}.ja.ja.ja .fvs img:first-child{opacity:1}}
.ja.ja.ja .fv::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.28) 60%,rgba(0,0,0,.36));pointer-events:none}
.ja.ja.ja .fv .cp{position:absolute;left:12px;right:12px;top:64%;z-index:2;color:#fff;text-align:center;text-shadow:0 0 20px rgba(0,0,0,.5)}
.ja.ja.ja .fv h1{font-size:clamp(26px,7.7vw,32px);font-weight:700;line-height:1.5;letter-spacing:.1em}
.ja.ja.ja .fv .sub{margin-top:10px;font-size:clamp(15px,4.4vw,18px);font-weight:700;letter-spacing:.12em}
.ja.ja.ja .fv .pn{position:absolute;right:10px;top:68px;z-index:2;color:#fff;font-size:10px;text-shadow:0 0 6px rgba(0,0,0,.6)}
.ja.ja.ja .fv .scr{position:absolute;left:50%;bottom:96px;z-index:2;transform:translateX(-50%);padding-bottom:50px;color:#fff;font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.08em;text-shadow:0 0 6px rgba(0,0,0,.5)}
.ja.ja.ja .fv .scr::after{content:"";position:absolute;left:50%;bottom:0;width:1px;height:44px;background:rgba(255,255,255,.85)}
.ja.ja.ja .fv .scr::before{content:"";position:absolute;left:50%;bottom:36px;width:7px;height:7px;margin-left:-3px;border-radius:50%;background:#fff;animation:ja-dot 2.2s ease-in-out infinite}
@keyframes ja-dot{0%{transform:translateY(-6px);opacity:0}30%{opacity:1}100%{transform:translateY(34px);opacity:0}}

/* ---- 最初の画面の下:白い箱の「無料」+赤い丸ボタン+赤い線の丸ボタン ---- */
.ja.ja.ja .cv{padding:20px;background:var(--gy2)}
.ja.ja.ja .cv .box{padding:20px;border-radius:10px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.2)}
.ja.ja.ja .ch{display:flex;align-items:center;gap:8px;line-height:1.4}
.ja.ja.ja .ch b{font-size:18px;font-weight:700}
.ja.ja.ja .free{flex:none;padding:1px 9px;border-radius:20px;background:var(--teal);color:#fff;font-size:12px;font-weight:700;line-height:18px}
.ja.ja.ja .cl{margin-top:8px;font-size:14px;line-height:1.7;color:#333}
.ja.ja.ja .pill{position:relative;display:flex;align-items:center;justify-content:center;height:50px;margin-top:12px;padding:0 40px;border:1px solid var(--main);border-radius:50px;font-size:16px;font-weight:700;letter-spacing:.04em}
.ja.ja.ja .pill .ic{position:absolute;left:20px;top:50%;margin-top:-12px}
.ja.ja.ja .pill::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:12px;margin-top:-6px;background:currentColor;-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}
.ja.ja.ja .pill.rd{background:var(--main);color:#fff}
.ja.ja.ja .pill.rd .ic{background:#fff}
.ja.ja.ja .pill.ol{background:#fff;color:var(--ink)}
.ja.ja.ja .pill.ol::after{background:var(--main)}
/* 受賞・No.1・資格の札(本物だけ) */
.ja.ja.ja .awd{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
.ja.ja.ja .awd li{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100px;min-height:100px;padding:8px 6px;border:2px solid var(--main);border-radius:50%;background:#fff;text-align:center;line-height:1.25}
.ja.ja.ja .awd small{font-size:10px;font-weight:700;color:#444}
.ja.ja.ja .awd b{margin:2px 0;font-family:"Oswald","Noto Sans JP",sans-serif;font-size:22px;font-weight:600;color:var(--main)}
.ja.ja.ja .awd span{font-size:10px;font-weight:700}
.ja.ja.ja .an{margin-top:8px;font-size:10px;line-height:1.6;color:#666;text-align:center}

/* ---- 見出し:英字(Oswald)の大文字+日本語の両側に細い線 ---- */
.ja.ja.ja .sh{text-align:center}
.ja.ja.ja .sh .en{font-size:40px;line-height:1;text-transform:uppercase}
.ja.ja.ja .sh h2{margin-top:10px;font-size:18px;line-height:1.5}
.ja.ja.ja .sh h2 span{display:flex;align-items:center;justify-content:center;gap:12px;text-wrap:balance}
.ja.ja.ja .sh h2 span::before,.ja.ja.ja .sh h2 span::after{content:"";flex:0 0 40px;height:1px;background:currentColor}
.ja.ja.ja .sh.wt{color:#fff;text-shadow:0 0 10px rgba(0,0,0,.5)}
.ja.ja.ja .sh.wt h2 span::before,.ja.ja.ja .sh.wt h2 span::after{box-shadow:0 0 6px rgba(0,0,0,.4)}
.ja.ja.ja .sl{margin:16px 20px 0;font-size:15px;line-height:1.8;text-align:center}
.ja.ja.ja .nt{margin-top:12px;font-size:11px;line-height:1.7;color:#666}

/* ---- 数字(実績):赤い Oswald の大きな数字 ---- */
.ja.ja.ja .st{padding:56px 20px 50px;background:#fff}
.ja.ja.ja .nums{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.ja.ja.ja .nums li{display:flex;flex-direction:column;justify-content:center;padding:16px 8px 14px;border-radius:8px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.15);text-align:center}
.ja.ja.ja .nums li:first-child:nth-last-child(odd){grid-column:1/-1}
.ja.ja.ja .nums small{font-size:13px;font-weight:700;line-height:1.4}
.ja.ja.ja .nums p{margin-top:4px;font-size:15px;font-weight:700;line-height:1}
.ja.ja.ja .nums b{margin-right:2px;font-family:"Oswald",sans-serif;font-size:46px;font-weight:600;line-height:1.05;color:var(--main);letter-spacing:.01em}
.ja.ja.ja .st .nt{text-align:center}

/* ---- サービスのまとまり(for PERSONAL / for BUSINESS):写真の上に英字の見出しが止まり、カードが上を流れる ---- */
.ja.ja.ja .gp{position:relative;padding:0 40px 90px;background:#fff}
.ja.ja.ja .gin{position:relative}
.ja.ja.ja .gp .pin{position:sticky;top:60px;z-index:0;height:500px;margin:0 -40px}
.ja.ja.ja .gp .gbg{position:absolute;top:0;right:-14px;width:76%;height:500px;overflow:hidden}
.ja.ja.ja .gp .gbg img{width:100%;height:100%;object-fit:cover}
.ja.ja.ja .gp .gh{position:absolute;left:40px;top:30px;max-width:70%;text-shadow:2px 2px 0 #fff}
.ja.ja.ja .gp .gh .en{line-height:1}
.ja.ja.ja .gp .gh .en small{display:block;font-size:30px;line-height:1.1}
.ja.ja.ja .gp .gh .en b{display:block;font-size:clamp(42px,13vw,50px);font-weight:400;line-height:1.1;text-transform:uppercase;letter-spacing:-.005em}
.ja.ja.ja .gp .gh h2{position:relative;margin-top:16px;padding-top:18px;font-size:18px;line-height:1.5}
.ja.ja.ja .gp .gh h2::before{content:"";position:absolute;left:0;top:0;width:40px;height:1px;background:var(--ink)}
.ja.ja.ja .gp.rv .gbg{right:auto;left:-14px}
.ja.ja.ja .gp.rv .gh{left:auto;right:40px}
.ja.ja.ja .cards{position:relative;z-index:1;margin-top:-250px}
.ja.ja.ja .cards li+li{margin-top:20px}
.ja.ja.ja .cards a{display:block;padding:8px 8px 0;border-radius:8px;background:#fff;box-shadow:0 0 15px rgba(0,0,0,.3)}
.ja.ja.ja .cards img{width:100%;aspect-ratio:6/5;object-fit:cover}
.ja.ja.ja .cards .lb{position:relative;display:block;padding:12px 26px 4px 6px;font-size:clamp(17px,4.9vw,20px);font-weight:700;line-height:1.5;text-align:center}
.ja.ja.ja .cards .lb::after{content:"";position:absolute;right:6px;top:50%;width:10px;height:18px;margin-top:-7px;background:var(--ink);-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}
.ja.ja.ja .cards small{display:block;padding:0 12px 14px;font-size:13px;line-height:1.6;color:#444;text-align:center}
.ja.ja.ja .cards .lb:last-child{padding-bottom:14px}
.ja.ja.ja .gbtn{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:50px;margin-top:30px;padding:0 36px;border:2px solid var(--main);border-radius:8px;background:var(--main);color:#fff;font-size:clamp(16px,4.8vw,20px);font-weight:700;letter-spacing:.04em}
.ja.ja.ja .gbtn .ic{position:absolute;left:16px;top:50%;margin-top:-12px;background:#fff}
.ja.ja.ja .gbtn::after{content:"";position:absolute;right:16px;top:50%;width:7px;height:11px;margin-top:-5px;background:#fff;-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}
.ja.ja.ja .gp.rv .gbtn{border-color:var(--ink);background:#fff;color:var(--ink);font-size:16px}
.ja.ja.ja .gp.rv .gbtn .ic{display:none}
.ja.ja.ja .gp.rv .gbtn::after{background:var(--ink)}

/* ---- 写真の帯(CORPORATE / RECRUIT):白い半透明の箱+黒いボタン ---- */
.ja.ja.ja .bd{position:relative;display:flex;align-items:center;justify-content:center;min-height:292px;padding:30px 40px;background:var(--gy)}
.ja.ja.ja .bd>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ja.ja.ja .bd .unit{position:relative;width:100%;padding:12px 16px 18px;background:rgba(255,255,255,.78);text-align:center}
.ja.ja.ja .bd .en{font-size:40px;line-height:1.05;text-transform:uppercase}
.ja.ja.ja .bd h2{margin-top:4px;font-size:18px;line-height:1.5}
.ja.ja.ja .bd h2 span{display:inline-flex;align-items:center;gap:12px}
.ja.ja.ja .bd h2 span::before,.ja.ja.ja .bd h2 span::after{content:"";flex:none;width:30px;height:1px;background:var(--ink)}
.ja.ja.ja .bd .tx{margin-top:8px;font-size:14px;font-weight:500;line-height:1.75;text-align:left}
.ja.ja.ja .bd .bb{position:relative;display:flex;align-items:center;justify-content:center;height:50px;margin:14px auto 0;max-width:248px;padding:0 30px;border-radius:8px;background:#000;color:#fff;font-size:clamp(16px,4.8vw,19px);font-weight:700;letter-spacing:.06em}
.ja.ja.ja .bd .bb::after{content:"";position:absolute;right:14px;top:50%;width:7px;height:11px;margin-top:-5px;background:#fff;-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}

/* ---- お知らせ型の段(INFORMATION):灰色の地+白い箱の行+右に > ---- */
.ja.ja.ja .inf,.ja.ja.ja .fq{padding:60px 20px 50px;background:var(--gy)}
.ja.ja.ja .ibox{margin-top:30px;background:#fff}
.ja.ja.ja .tbox{margin-top:40px}
.ja.ja.ja .it{display:flex;align-items:center;gap:12px;padding:14px 20px;font-size:clamp(19px,5.6vw,22px);line-height:1.4}
.ja.ja.ja .tbox .it{padding:0 0 14px;border-bottom:1px solid var(--line)}
.ja.ja.ja .ii{position:relative;flex:none;width:30px;height:30px;border:2px solid var(--main);border-radius:50%}
.ja.ja.ja .ii::before{content:"";position:absolute;left:50%;top:5px;width:3px;height:3px;margin-left:-1.5px;border-radius:50%;background:var(--main)}
.ja.ja.ja .ii::after{content:"";position:absolute;left:50%;top:10px;width:3px;height:11px;margin-left:-1.5px;background:var(--main)}
.ja.ja.ja .it .ic{width:30px;height:30px;border-radius:50%;background:#555;-webkit-mask:none;mask:none;position:relative}
.ja.ja.ja .it .ic::after{content:"";position:absolute;inset:5px;background:#fff;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.ja.ja.ja .inf details,.ja.ja.ja .fq details{border-top:1px solid var(--line)}
.ja.ja.ja .tbox details{border-top:0;border-bottom:1px solid var(--line)}
.ja.ja.ja .inf summary,.ja.ja.ja .fq summary{position:relative;display:block;padding:18px 44px 18px 20px;font-size:16px;line-height:1.7}
.ja.ja.ja .tbox summary{padding:18px 36px 18px 0}
.ja.ja.ja .inf summary::after,.ja.ja.ja .fq summary::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:13px;margin-top:-6px;background:var(--ink);-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat;transition:transform .2s}
.ja.ja.ja .tbox summary::after{right:8px}
.ja.ja.ja .inf details[open] summary::after,.ja.ja.ja .fq details[open] summary::after{transform:rotate(90deg)}
.ja.ja.ja .inf details p,.ja.ja.ja .fq details p{margin:-6px 20px 0;padding:0 0 18px 14px;border-left:3px solid var(--main);font-size:15px;line-height:1.8;color:#333}
.ja.ja.ja .tbox details p{margin:-6px 0 0}
.ja.ja.ja .tbox summary b{display:block;font-size:18px;font-weight:700;line-height:1.5}
.ja.ja.ja .vo .vc{padding:16px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.8}
.ja.ja.ja .vo .vw{font-size:14px;font-weight:700}
.ja.ja.ja .fq summary i{margin-right:10px;font-family:"Oswald",sans-serif;font-size:20px;font-weight:600;color:var(--main)}

/* ---- 写真つきの案内カード+小さな写真の行(見本の「ホームを全力で守る〜」) ---- */
.ja.ja.ja .rd2{padding:40px 20px 70px;background:#fff}
.ja.ja.ja .bnr{background:#fff;box-shadow:0 0 10px rgba(0,0,0,.12)}
.ja.ja.ja .bnr+.bnr{margin-top:20px}
.ja.ja.ja .bnr img{width:100%;aspect-ratio:7/3;object-fit:cover}
.ja.ja.ja .bnr h3{padding:16px 14px 6px;font-size:clamp(17px,5vw,20px);line-height:1.5}
.ja.ja.ja .bnr p{padding:0 14px 18px;font-size:14px;line-height:1.8;color:#333}
.ja.ja.ja .mt{margin-top:40px;font-size:18px;line-height:1.5}
.ja.ja.ja .rows{margin-top:8px}
.ja.ja.ja .rows li{margin-top:20px}
.ja.ja.ja .rows a{position:relative;display:flex;align-items:center;min-height:60px;padding-right:36px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.1)}
.ja.ja.ja .rows img{flex:none;width:80px;height:60px;object-fit:cover}
.ja.ja.ja .rows span{padding:6px 0 6px 12px;font-size:clamp(15px,4.6vw,18px);font-weight:700;line-height:1.4}
.ja.ja.ja .rows a::after{content:"";position:absolute;right:14px;top:50%;width:7px;height:11px;margin-top:-5px;background:var(--ink);-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}

/* ---- 価格(本物の価格だけ・打ち消し表示つき) ---- */
.ja.ja.ja .pr{padding:60px 20px 50px;background:#fff}
.ja.ja.ja .pc{position:relative;margin-top:24px;padding:22px 18px 18px;border-radius:10px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.2);text-align:center}
.ja.ja.ja .pbg{position:absolute;left:50%;top:-12px;transform:translateX(-50%);padding:2px 14px;border-radius:20px;background:var(--main);color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.ja.ja.ja .pc h3{font-size:18px;line-height:1.5}
.ja.ja.ja .was{margin-top:6px;font-size:15px;color:#666}
.ja.ja.ja .was s{text-decoration-color:var(--main);text-decoration-thickness:2px}
.ja.ja.ja .now{margin-top:2px;font-size:16px;font-weight:700}
.ja.ja.ja .now b{font-family:"Oswald",sans-serif;font-size:44px;font-weight:600;line-height:1.1;color:var(--main)}
.ja.ja.ja .pnt{margin-top:6px;font-size:12px;line-height:1.6;color:#555}

/* ---- 流れ ---- */
.ja.ja.ja .fl{padding:60px 20px 56px;background:#fff}
.ja.ja.ja .fl ol{margin-top:30px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.12)}
.ja.ja.ja .fl li{display:flex;gap:14px;padding:18px 18px 18px 16px;border-top:1px solid var(--line)}
.ja.ja.ja .fl li:first-child{border-top:0}
.ja.ja.ja .fl .no{flex:none;width:44px;font-family:"Oswald",sans-serif;font-size:34px;font-weight:600;line-height:1.1;color:var(--main)}
.ja.ja.ja .fl h3{font-size:18px;line-height:1.5}
.ja.ja.ja .fl li p{margin-top:4px;font-size:14px;line-height:1.8;color:#333}

/* ---- お問い合わせ(CONTACT):写真の上に白い箱・赤い大きな電話番号 ---- */
.ja.ja.ja .ct{position:relative;padding:40px 20px 50px;background:var(--gy)}
.ja.ja.ja .ct .cbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.82)}
.ja.ja.ja .ct .sh{position:relative}
.ja.ja.ja .cbox{position:relative;margin-top:30px;padding:20px;background:#fff;box-shadow:0 0 10px rgba(0,0,0,.2);text-align:center}
.ja.ja.ja .cbox .ch{justify-content:center;flex-wrap:wrap;text-align:left}
.ja.ja.ja .cbox .ch .ic{width:26px;height:26px}
.ja.ja.ja .cbox .ch b{font-size:clamp(19px,5.6vw,22px)}
.ja.ja.ja .cbox .free{border:1px solid var(--teal);background:#fff;color:var(--teal);border-radius:4px}
.ja.ja.ja .cbox .cl{text-align:left}
.ja.ja.ja .sq{position:relative;display:flex;align-items:center;justify-content:center;height:50px;margin-top:16px;padding:0 40px;border-radius:8px;background:var(--main);color:#fff;font-size:clamp(20px,6vw,24px);font-weight:700;letter-spacing:.06em}
.ja.ja.ja .sq .ic{position:absolute;left:18px;top:50%;margin-top:-12px;background:#fff}
.ja.ja.ja .sq::after{content:"";position:absolute;right:18px;top:50%;width:7px;height:11px;margin-top:-5px;background:#fff;-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}
.ja.ja.ja .tel{display:inline-block;margin-top:14px;font-family:"Oswald",sans-serif;font-size:clamp(36px,11vw,42px);font-weight:600;line-height:1.1;color:var(--main);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;letter-spacing:.01em}
.ja.ja.ja .hr{margin-top:6px;font-size:11px}
.ja.ja.ja .ct .pn{position:relative;margin-top:10px;color:#fff;font-size:10px;text-align:right;text-shadow:0 0 6px rgba(0,0,0,.6)}

/* ---- いちばん下(灰色・先頭へ・行の一覧・開閉の会社情報・社名) ---- */
.ja.ja.ja .ft{padding:0 0 110px;background:var(--gy)}
.ja.ja.ja .fl2{padding:14px 20px;font-size:12px;line-height:1.6;background:#fff}
.ja.ja.ja .pt{position:relative;display:block;padding:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--gy2);font-size:12px;text-align:center}
.ja.ja.ja .pt::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:8px;margin-top:-2px;border-left:1.5px solid #333;border-top:1.5px solid #333;transform:rotate(45deg)}
.ja.ja.ja .nav>a,.ja.ja.ja .nav summary{position:relative;display:block;padding:16px 44px 16px 20px;border-bottom:1px solid var(--line);font-size:17px;font-weight:700;line-height:1.5}
.ja.ja.ja .nav>a::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:13px;margin-top:-6px;background:var(--ink);-webkit-mask:var(--chev) center/contain no-repeat;mask:var(--chev) center/contain no-repeat}
.ja.ja.ja .nav summary::before,.ja.ja.ja .nav summary::after{content:"";position:absolute;right:18px;top:50%;width:16px;height:2px;margin-top:-1px;background:#333}
.ja.ja.ja .nav summary::after{transform:rotate(90deg);transition:transform .2s}
.ja.ja.ja .nav details[open] summary::after{transform:rotate(0)}
.ja.ja.ja .nav details p{padding:14px 20px 18px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.8;background:#fff}
.ja.ja.ja .flogo{display:flex;flex-direction:column;align-items:center;margin-top:34px;color:var(--logo);line-height:1.2}
.ja.ja.ja .flogo small{font-size:11px;font-weight:700;letter-spacing:.06em}
.ja.ja.ja .flogo b{margin-top:2px;font-size:26px;font-weight:900;letter-spacing:.02em}
.ja.ja.ja .cr{margin-top:14px;font-size:11px;text-align:center;color:#444}

/* ---- 下に固定の3つの札(見本の「資料請求・ホームセキュリティ・対策別プラン」) ---- */
.ja.ja.ja .fx{position:fixed;left:0;right:0;bottom:0;z-index:60;pointer-events:none}
.ja.ja.ja .fx ul{display:flex;gap:8px;max-width:480px;margin:0 auto;padding:6px 10px calc(10px + env(safe-area-inset-bottom))}
.ja.ja.ja .fx li{flex:1;min-width:0;pointer-events:auto}
.ja.ja.ja .fx a{display:flex;flex-direction:column;align-items:center;justify-content:center;height:62px;border-radius:5px;background:var(--cream);box-shadow:0 0 3.5px rgba(0,0,0,.25),0 4px 0 var(--cream-dk);font-size:clamp(11px,3.3vw,13px);font-weight:700;line-height:1.25;letter-spacing:-.02em;text-align:center}
.ja.ja.ja .fx .ic{width:30px;height:30px;margin-bottom:3px}
.ja.ja.ja .fx span{display:block;max-width:100%;padding:0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ja.ja.ja .fx .t01 a{background:var(--main);color:#fff;box-shadow:0 0 3.5px rgba(0,0,0,.25),0 4px 0 var(--main-dk)}
.ja.ja.ja .fx .t01 .ic{background:#fff}
