/* =====================================================
   不同意性交トラブル LP  (デザイン基準幅 750px / 1rem = 10px)
   ===================================================== */
:root{
  --navy:#222c47;
  --navy-deep:#001b55;
  --blue:#3281b8;
  --blue-light:#66b1da;
  --blue-pale:#dbe8f0;
  --blue-card:#d6e7f1;
  --yellow:#f6eb7a;
  --red:#c31413;
  --text:#333;
}
*{box-sizing:border-box;margin:0;padding:0}
html{font-size:calc(100vw / 75);-webkit-text-size-adjust:100%}
@media (min-width:750px){html{font-size:10px}}
body{
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  color:var(--text);background:#e6e9ee;line-height:1.6;
  font-feature-settings:"palt";
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lp{width:100%;max-width:750px;margin:0 auto;background:#fff;overflow:hidden;position:relative}
.en{font-family:"Oswald","Noto Sans JP",sans-serif}
.serif{font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif}
.hl{background:linear-gradient(transparent 55%,var(--yellow) 55%)}
.b{font-weight:700}

/* ---------- hero ---------- */
.hero img{width:100%}
.hero{position:relative}
.hero__free{
  position:absolute;left:2.6rem;top:41rem;width:22rem;height:22rem;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:radial-gradient(circle at 35% 30%,#e8302e,var(--red) 70%);color:#fff;text-align:center;
  border:.6rem solid #fff;box-shadow:0 0 0 .5rem var(--red),0 1rem 2.4rem rgba(0,0,0,.45);
  transform:rotate(-8deg);animation:hero-pulse 2.4s ease-in-out infinite;
}
.hero__free-m{font-size:5.6rem;font-weight:900;line-height:1.05;letter-spacing:.04em;margin:.4rem 0}
.hero__free-s{font-size:2rem;font-weight:700;line-height:1.2;color:var(--yellow)}
@keyframes hero-pulse{0%,100%{transform:rotate(-8deg) scale(1)}50%{transform:rotate(-8deg) scale(1.06)}}
@media (prefers-reduced-motion:reduce){.hero__free{animation:none}}

/* ---------- CTA buttons ---------- */
.cta{padding:4.8rem 3rem 4.4rem;background:#fff}
.cta--2{padding:8rem 3rem 8rem}
.btn{
  display:flex;align-items:center;gap:1.8rem;height:15rem;padding:0 0 0 6rem;border-radius:7.5rem;
  color:#fff;box-shadow:0 .6rem 1.2rem rgba(0,0,0,.18);position:relative;overflow:hidden
}
.btn + .btn{margin-top:3rem}
.btn::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(rgba(255,255,255,.22),rgba(255,255,255,0) 50%);pointer-events:none}
.btn--line{background:linear-gradient(#80d54d,#3ba52e)}
.btn--tel{background:linear-gradient(#f69708,#d4551c)}
.btn__icon{width:8.8rem;height:8.8rem;flex:none}
.btn__body{display:flex;flex-direction:column;align-items:center;flex:1;padding-right:5rem;line-height:1.15}
.btn__sub{font-size:2.3rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.btn__sub::before,.btn__sub::after{content:"";display:inline-block;width:1.4rem;height:2.6rem;border-left:.25rem solid #fff;transform:skewX(-35deg);vertical-align:-.5rem;margin-right:.9rem}
.btn__sub::after{transform:skewX(35deg);margin:0 0 0 .9rem}
.btn__main{font-size:5.4rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;margin-top:.4rem}
.btn__main .en{font-family:"Oswald","Noto Sans JP",sans-serif;font-weight:500;font-size:5.6rem;letter-spacing:.03em}
.btn--form{background:linear-gradient(#3d5a9a,var(--navy-deep))}
.btn__main--s{font-size:4.8rem}
.btn__tel{display:block;width:39.9rem;height:auto;margin-top:1.4rem;margin-bottom:.6rem}

/* ---------- 該当する方 ---------- */
.check{background:var(--blue-pale);padding:7.6rem 3rem 0;position:relative;height:113.6rem}
.check__card{background:#fff;border-radius:1.6rem;position:relative;box-shadow:0 .4rem 1.2rem rgba(0,0,0,.08)}
.check__head{background:var(--navy-deep);color:#fff;border-radius:1.6rem 1.6rem 0 0;text-align:center;padding:7.4rem 0 3.6rem;position:relative;line-height:1.35}
.check__head::after{content:"";position:absolute;left:50%;bottom:-1.9rem;transform:translateX(-50%);border:2rem solid transparent;border-top:2rem solid var(--navy-deep);border-bottom:0}
.check__warn{position:absolute;left:50%;top:-3.2rem;transform:translateX(-50%);width:7.6rem;height:7.2rem}
.check__head p{font-size:3rem;font-weight:700}
.check__head strong{display:block;font-size:4rem;color:var(--yellow);font-weight:900;margin-top:.3rem}
.check__list{list-style:none;padding:4.6rem 5.4rem 1.8rem 5.4rem}
.check__list li{position:relative;padding-left:5rem;font-size:3rem;font-weight:500;color:#222;line-height:1.35;margin-bottom:3.4rem}
.check__list li::before{content:"";position:absolute;left:0;top:.2rem;width:2.4rem;height:1.3rem;border-left:.7rem solid var(--red);border-bottom:.7rem solid var(--red);transform:rotate(-45deg)}
.check__list b{color:var(--red);font-weight:700}
.check__banner{
  position:absolute;left:10rem;top:82rem;width:55rem;height:32rem;background:var(--blue-light);color:#fff;text-align:center;
  clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%);padding-top:2.4rem;line-height:1.3
}
.check__banner .s{font-size:2.4rem;font-weight:500}
.check__banner .s::before,.check__banner .s::after{content:"";display:inline-block;width:1.4rem;height:2.4rem;border-left:.2rem solid #fff;transform:skewX(-35deg);vertical-align:-.4rem;margin-right:1rem}
.check__banner .s::after{transform:skewX(35deg);margin:0 0 0 1rem}
.check__banner .m{display:inline-block;font-size:4.6rem;font-weight:900;background:#3b82a9;padding:0 .6rem;line-height:1.15;margin:.8rem 0 .6rem}
.check__banner .m small{font-size:3.4rem}
.check__banner .t{font-size:3rem;font-weight:700}
.check__woman{position:absolute;left:3.3rem;top:84.1rem;width:16.7rem}

/* ---------- 解決実績 ---------- */
.result{background:#fff;padding:7.6rem 3rem 5.4rem;position:relative}
.result__lead{font-size:3.3rem;font-weight:700;color:var(--navy);line-height:1.5;padding-right:17.5rem;letter-spacing:-.01em}
.result__lead .hl{padding:0 .4rem}
.result__man{position:absolute;right:2rem;top:0;width:20rem}
.result__card{margin-top:5.6rem;border:.1rem solid #d2d2d2;padding:5.4rem 1.5rem 1.6rem;display:flex;justify-content:space-between;align-items:flex-start;position:relative;flex-wrap:wrap}
.badge{display:flex;align-items:center;justify-content:center;color:var(--navy);text-align:center;line-height:1.1;flex:none}
.badge::before,.badge::after{content:"";width:5.1rem;height:12.6rem;background:url(../img/laurel.png) no-repeat center/contain;flex:none}
.badge::after{transform:scaleX(-1)}
.badge__in{padding:0 .4rem;white-space:nowrap}
.badge--1{width:26rem}
.badge--2{width:38.5rem}
.badge--1 .l1{font-size:5.4rem;font-weight:700}
.badge--1 .l2{font-size:3.8rem;font-weight:700}
.badge--2 .l1{font-size:3.2rem;font-weight:600;letter-spacing:.05em}
.badge--2 .l2{font-size:2.9rem;font-weight:600;white-space:nowrap;margin-top:.2rem}
.badge--2 .l2 .n{display:inline-block;font-size:6.6rem;font-weight:700;line-height:1;position:relative;padding-right:1.5rem;vertical-align:-.4rem}
.badge--2 .l2 .n sup{font-size:1.6rem;position:absolute;top:.2rem;right:0;line-height:1}
.result__note{width:100%;text-align:right;font-size:2rem;color:var(--navy);margin-top:.4rem}

/* ---------- 弁護士だけができる ---------- */
.only{background:var(--navy);color:#fff;text-align:center;padding:6rem 3rem 8.6rem}
.only__h{font-size:4rem;font-weight:700;line-height:1.3}
.only__h .em{text-emphasis:filled dot #fff;-webkit-text-emphasis:filled dot #fff;text-emphasis-position:over;font-size:4.4rem}
.only__h small{font-size:3.2rem}
.only__circles{display:grid;grid-template-columns:repeat(2,26rem);justify-content:center;gap:2.6rem 5rem;margin:3.8rem 0 4rem}
.only__c{width:26rem;height:26rem;padding:0 2rem;border-radius:50%;background:linear-gradient(#ffffff 0%,#fefef5 30%,#faf5c2 70%,#f6ec7f 100%);color:var(--navy);display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.3;font-weight:700;font-size:2.6rem}
.only__c .big{font-size:3.4rem;display:block;margin-bottom:.4rem}
.only__c .mid{font-size:3rem;display:block}
.only__f{font-size:3rem;font-weight:700}
.only__f .y{color:var(--yellow);font-size:4rem;margin:0 .6rem}

/* ---------- FLOW ---------- */
.flow{background:linear-gradient(#fff 0,#fff 10%,#eef1f5 25%,#dae1e8 50%,#bccad9 76%,#9fb7cc 92%,#73a2c7 100%);position:relative;padding:0 0 0}
.sec-h{position:relative;text-align:center;padding:12rem 0 5rem;font-size:4rem;font-weight:700;color:var(--navy);line-height:1.2}
.sec-h .bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:17rem;font-weight:300;letter-spacing:-.02em;color:var(--blue-pale);z-index:0;line-height:1;pointer-events:none}
.sec-h .bg.small{font-size:17rem}
.sec-h .tx{position:relative;z-index:1}
.sec-h .c{color:var(--blue)}
.step{position:relative}
.step__photo{position:absolute;z-index:2}
.step__card{background:#fff;position:relative;z-index:1}
.step__icon{position:absolute;z-index:3}
.step__no{font-family:"Oswald","Noto Sans JP",sans-serif;font-weight:400;font-size:7rem;color:var(--blue);line-height:1}
.step__title{font-size:4rem;font-weight:700;color:var(--navy);line-height:1.25}
.step__text{font-size:2.6rem;line-height:1.7;color:var(--text)}
.step__text b{color:var(--blue);font-weight:700}
.chev{display:block;width:15rem;margin:0 auto}

/* 01 */
.step--1{height:82rem}
.step--1 .step__photo{left:0;top:11rem;width:52.7rem}
.step--1 .step__card{position:absolute;left:10rem;right:0;top:30rem;height:41rem;border-radius:3rem 0 0 3rem}
.step--1 .step__icon{right:3rem;top:31.5rem;width:17rem}
.step--1 .step__head{position:absolute;left:18rem;top:15rem;display:flex;align-items:baseline;gap:2rem}
.step--1 .step__text{position:absolute;left:5.5rem;right:5rem;top:23.5rem}
.step--1 .chev{position:absolute;left:30rem;bottom:0}
/* 02 */
.step--2{height:79rem}
.step--2 .step__photo{right:0;top:2.4rem;width:54.5rem}
.step--2 .step__card{position:absolute;left:0;width:65rem;top:21rem;height:49rem;border-radius:0 0 3rem 0}
.step--2 .step__icon{left:3rem;top:23rem;width:12.5rem}
.step--2 .step__no{position:absolute;left:4.5rem;top:16.5rem}
.step--2 .step__title{position:absolute;left:14rem;width:40rem;top:16rem;font-size:3.2rem;text-align:center}
.step--2 .step__text{position:absolute;left:4.5rem;right:4rem;top:26rem}
.step--2 .chev{position:absolute;left:30rem;bottom:2rem}
/* 03 */
.step--3{height:109rem}
.step--3 .step__photo{left:0;top:3.5rem;width:53rem}
.step--3 .step__card{position:absolute;left:10rem;right:0;top:22.5rem;height:72rem;border-radius:3rem 0 0 3rem}
.step--3 .step__icon{right:4.5rem;top:24.5rem;width:14rem}
.step--3 .step__head{position:absolute;left:8rem;top:14.5rem;display:flex;align-items:baseline;gap:3rem}
.step--3 .step__text{position:absolute;left:5.5rem;right:5rem;top:24rem}
.step--3 .chev{position:absolute;left:30rem;bottom:0}
/* 04 */
.step--4{height:77.2rem}
.step--4 .step__photo{right:0;top:0;width:54.2rem}
.step--4 .step__card{position:absolute;left:0;width:65rem;top:19rem;height:58.2rem;border-radius:0 0 3rem 0}
.step--4 .step__icon{left:2.2rem;top:20.5rem;width:18.3rem}
.step--4 .step__no{position:absolute;left:5rem;top:18rem}
.step--4 .step__title{position:absolute;left:30rem;top:19.5rem}
.step--4 .step__text{position:absolute;left:5rem;right:4rem;top:26.5rem}

/* ---------- 早めの対応 ---------- */
.early{background:linear-gradient(#6393bb 0,#4188bc 18%,var(--blue) 33%,var(--blue) 100%);color:#fff;position:relative;padding:13.5rem 3rem 8rem}
.early__catch{position:absolute;left:3rem;top:13.5rem;width:47rem;text-align:center;line-height:1.3}
.early__catch::before,.early__catch::after{content:"";position:absolute;top:0;width:.4rem;height:10rem;background:#fff;transform:rotate(-30deg);left:7rem}
.early__catch::after{transform:rotate(30deg);left:auto;right:5rem}
.early__catch .y{color:var(--yellow);font-size:4.6rem;font-weight:900}
.early__catch .y small{font-size:3rem}
.early__catch .w{font-size:3rem;font-weight:700}
.early__catch .t{display:block;font-size:3.4rem;font-weight:700}
.early__man{position:absolute;right:0;top:.3rem;width:26.5rem}
.early__card{background:var(--blue-card);border-radius:3rem;padding:4.6rem 4.5rem 4.2rem;margin-top:15.5rem;color:var(--navy);position:relative}
.early__text{font-size:3rem;font-weight:700;line-height:6.5rem;text-align:justify;position:relative;z-index:1}
.early__lines{position:absolute;left:4.5rem;right:4.5rem;top:4.6rem;height:45.5rem;pointer-events:none;z-index:0;
  background-image:repeating-linear-gradient(to right,#7d8aa8 0 .3rem,transparent .3rem .9rem);
  -webkit-mask:repeating-linear-gradient(to bottom,transparent 0 5.2rem,#000 5.2rem 5.45rem,transparent 5.45rem 6.5rem);
  mask:repeating-linear-gradient(to bottom,transparent 0 5.2rem,#000 5.2rem 5.45rem,transparent 5.45rem 6.5rem)}
.early__dakara{display:block;width:18rem;margin:4.4rem auto 1.6rem;background:#fff;color:var(--navy);font-size:2.6rem;font-weight:700;text-align:center;line-height:4.6rem}
.early__close{text-align:center;color:var(--navy);line-height:1.4}
.early__close .a{font-size:3rem;font-weight:700;display:block}
.early__close .b2{font-size:4.6rem;font-weight:900;display:inline-block;background:linear-gradient(transparent 60%,var(--yellow) 60%);padding:0 .4rem;letter-spacing:.02em}

/* ---------- トラブル事例 ---------- */
.trouble{background:#fff;padding:7rem 3rem 5rem}
.trouble__box{border:.4rem solid var(--navy);position:relative;padding:8.4rem 0 4rem 4rem}
.trouble__label{position:absolute;left:50%;top:-4.4rem;transform:translateX(-50%);width:51rem;height:8rem;background:var(--navy);color:#fff;text-align:center;font-size:3.6rem;font-weight:700;line-height:8rem}
.trouble__label .y{color:var(--yellow);font-size:4rem}
.trouble__list{list-style:none;font-size:2.9rem;font-weight:500;color:var(--navy);line-height:5.5rem}
.trouble__list li::before{content:"・"}
.trouble__man{position:absolute;right:.3rem;bottom:0;width:17.3rem}

/* ---------- FAQ ---------- */
.faq{background:#fff;padding:0 3rem 7rem}
.faq .sec-h{padding:5.6rem 0 4.6rem}
.faq__item{border:.3rem solid var(--navy);border-radius:.6rem;margin-bottom:4.2rem;overflow:hidden}
.faq__q{display:flex;align-items:center;width:100%;min-height:9rem;text-align:left;position:relative;padding:1.6rem 9rem 1.6rem 13rem;font-size:3rem;font-weight:700;color:var(--navy);line-height:1.35;background:#fff}
.faq__q::before{content:"Q";position:absolute;left:0;top:0;bottom:0;width:10rem;background:var(--blue-pale);clip-path:polygon(0 0,100% 0,72% 100%,0 100%);font-family:"Roboto Slab","Noto Serif JP",serif;font-size:5rem;font-weight:400;color:var(--navy);display:flex;align-items:center;padding-left:2.6rem}
.faq__q::after{content:"";position:absolute;right:4.4rem;top:50%;width:3rem;height:3rem;transform:translateY(-50%);background:
  linear-gradient(var(--navy),var(--navy)) center/100% .5rem no-repeat,
  linear-gradient(var(--navy),var(--navy)) center/.5rem 100% no-repeat}
.faq__item.open .faq__q::after{background:linear-gradient(var(--navy),var(--navy)) center/100% .5rem no-repeat}
.faq__a{display:none;border-top:.3rem solid var(--navy);padding:3.4rem 3.6rem 3.6rem;font-size:2.8rem;line-height:1.6;color:#222;
  background-color:#fefefe;background-image:linear-gradient(#f0f3f8 .1rem,transparent .1rem),linear-gradient(90deg,#f0f3f8 .1rem,transparent .1rem);background-size:1.4rem 1.4rem}
.faq__item.open .faq__a{display:block}
.faq__a b{color:#3a8ad9;font-weight:700}
.faq__a p + p{margin-top:0}
.faq__a ul{list-style:none;margin:0 0 3rem 0}
.faq__a ul li{padding-left:1.4em;text-indent:-1.4em}
.faq__a ul li::before{content:"・"}
.faq__a ul li .in{display:block;padding-left:1.4em;text-indent:0}

/* ---------- office page ---------- */
.office__bar{background:var(--navy);padding:2.4rem 3rem;display:flex;justify-content:flex-start}
.office__back{color:#fff;font-size:2.6rem;font-weight:700;display:inline-flex;align-items:center;gap:1rem}
.office__back::before{content:"";width:1.4rem;height:1.4rem;border-left:.4rem solid #fff;border-bottom:.4rem solid #fff;transform:rotate(45deg);margin-left:.4rem}
.office{background:#fff;padding:0 3rem 2rem}
.office .sec-h{padding:8rem 0 4.6rem}
.office__table{width:100%;height:auto;display:block}
.office__map{margin-top:4rem;border:.3rem solid var(--navy);border-radius:.6rem;overflow:hidden}
.office__map iframe{display:block;width:100%;height:50rem;border:0}

/* ---------- footer ---------- */
.foot{background:var(--navy);color:#fff;text-align:center;padding:4.4rem 3rem 3rem}
.foot__link{display:inline-block;font-size:3rem;font-weight:700;border-bottom:.2rem solid #fff;padding-bottom:.6rem;line-height:1.2}
.foot__copy{margin-top:3.4rem;display:flex;justify-content:center}
.foot__copy img{height:2.2rem;width:auto;opacity:.9}

/* ---------- 担当弁護士（2026-10-31） ---------- */
.lawyer{background:var(--navy-deep);color:#fff;text-align:center;padding:4.4rem 3rem 4.6rem}
.lawyer__lead{font-size:3rem;font-weight:700;line-height:1.4}
.lawyer__lead b{color:var(--yellow)}
.lawyer__card{margin:2.6rem auto 0;width:52rem;background:#fff;color:var(--navy);border-radius:1.6rem;padding:2.6rem 2rem 2.8rem;box-shadow:0 .6rem 1.6rem rgba(0,0,0,.25)}
.lawyer__role{display:inline-block;font-size:2.2rem;font-weight:700;color:#fff;background:var(--blue);border-radius:.6rem;padding:.2rem 1.6rem}
.lawyer__name{font-size:6rem;font-weight:700;letter-spacing:.12em;line-height:1.2;margin-top:1.4rem}
.lawyer__name img{display:block;width:28.2rem;height:auto;margin:1.8rem auto 0}
.lawyer__bar{font-size:1.6rem;font-weight:500;color:#778;margin-top:1.4rem;border-top:.2rem solid var(--blue-pale);padding-top:1rem}

/* ---------- 事件化前でも相談可（2026-10-31） ---------- */
.before{background:#fff;padding:6.4rem 3rem 1rem}
.before__box{border:.5rem solid var(--red);border-radius:1.6rem;padding:3.6rem 4rem 4rem;text-align:center;background:#fff8f3}
.before__s{display:inline-block;font-size:2.6rem;font-weight:700;color:#fff;background:var(--red);border-radius:3rem;padding:.4rem 2.4rem}
.before__m{font-size:4.2rem;font-weight:900;color:var(--navy);line-height:1.45;margin-top:2rem}
.before__m .y{background:linear-gradient(transparent 58%,var(--yellow) 58%);padding:0 .4rem}
.before__t{font-size:2.6rem;line-height:1.7;color:#333;text-align:left;margin-top:2.4rem}

/* ---------- 相談フォーム（2026-10-31） ---------- */
.form{background:var(--blue-pale);padding:0 3rem 8rem}
.form .sec-h{padding:8rem 0 4rem}
.form .sec-h .bg{color:#c6d9e6;font-size:13rem}
.form__lead{font-size:2.7rem;line-height:1.7;color:#222;margin-bottom:3.6rem}
.form__lead b{color:var(--blue)}
.form__body{background:#fff;border-radius:1.6rem;padding:4.4rem 4rem 4.6rem;box-shadow:0 .4rem 1.2rem rgba(0,0,0,.08)}
.form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__row{margin-bottom:3.4rem}
.form__label{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem;font-size:2.8rem;font-weight:700;color:var(--navy);margin-bottom:1.2rem}
.form__label .req,.form__label .opt{font-size:1.9rem;font-weight:700;border-radius:.4rem;padding:.2rem 1rem;line-height:1.5}
.form__label .req{background:var(--red);color:#fff}
.form__label .opt{background:#e3e7ee;color:#556}
.form__input{display:block;width:100%;font:inherit;font-size:16px;font-size:max(16px,2.8rem);padding:1.8rem 2rem;border:.25rem solid #b8c4d4;border-radius:1rem;background:#fff;color:#222}
.form__input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 .4rem rgba(50,129,184,.2)}
.form__ta{min-height:28rem;resize:vertical;line-height:1.6}
.form__radios{display:flex;flex-wrap:wrap;gap:1.4rem 3.6rem}
.form__checks{display:flex;flex-direction:column;gap:1.6rem}
.form__chk{display:flex;align-items:center;gap:1.4rem;font-size:2.7rem;color:#222;cursor:pointer;line-height:1.4}
.form__chk input{width:3.6rem;height:3.6rem;min-width:18px;min-height:18px;accent-color:var(--blue);flex:none;margin:0}
.form__agree{background:#f3f6fa;border-radius:1rem;padding:2.6rem 3rem;margin:1rem 0 3.6rem}
.form__agree p{font-size:2.3rem;line-height:1.6;color:#444;margin-bottom:1.8rem}
.form__submit{display:block;width:100%;height:13rem;border-radius:6.5rem;background:linear-gradient(#3d5a9a,var(--navy-deep));color:#fff;font-size:4.2rem;font-weight:700;letter-spacing:.06em;box-shadow:0 .6rem 1.2rem rgba(0,0,0,.18)}
.form__submit:active{transform:translateY(.2rem)}
.form__note{font-size:2.2rem;line-height:1.7;color:#556;margin-top:2.6rem}

/* ---------- 固定相談バー（2026-10-31） ---------- */
.lp{padding-bottom:13rem}
.fixbar{position:fixed;left:50%;bottom:0;transform:translate(-50%,110%);width:100%;max-width:750px;display:flex;gap:1.2rem;padding:1.4rem 1.6rem calc(1.4rem + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);box-shadow:0 -.4rem 1.4rem rgba(0,0,0,.15);z-index:50;transition:transform .25s ease}
.fixbar.show{transform:translate(-50%,0)}
.fixbar__btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:9.6rem;border-radius:1.4rem;color:#fff;font-size:3rem;font-weight:700;line-height:1.15;text-align:center}
.fixbar__btn small{font-size:1.8rem;font-weight:700;opacity:.95;margin-bottom:.4rem;white-space:nowrap}
.fixbar__btn--line{background:linear-gradient(#80d54d,#3ba52e)}
.fixbar__btn--tel{background:linear-gradient(#f69708,#d4551c)}
.fixbar__btn--form{background:linear-gradient(#3d5a9a,var(--navy-deep))}
@media (prefers-reduced-motion:reduce){.fixbar{transition:none}}

/* ---------- 送信完了・エラー（2026-10-31） ---------- */
.done{min-height:100vh;padding:12rem 4rem 8rem;text-align:center;background:#fff}
.done__h{font-size:4.4rem;font-weight:900;color:var(--navy);line-height:1.4}
.done__p{font-size:2.8rem;line-height:1.8;color:#333;margin-top:3.6rem;text-align:left}
.done__err{list-style:none;font-size:2.8rem;line-height:1.8;color:var(--red);margin-top:3.6rem;text-align:left}
.done__err li::before{content:"・"}
.done__back,.done__line{display:block;margin:4rem auto 0;width:52rem;height:10rem;line-height:10rem;border-radius:5rem;font-size:3rem;font-weight:700}
.done__back{border:.3rem solid var(--navy);color:var(--navy)}
.done__line{background:linear-gradient(#80d54d,#3ba52e);color:#fff}

/* ---------- 逮捕・起訴のリスク／早期介入（2026-10-31） ---------- */
.risk{background:#cfe8f8;padding:6.4rem 3rem 5rem}
.risk__head{display:flex;align-items:flex-end;justify-content:center;gap:1.6rem}
.risk__man{width:9.6rem;flex:none}
.risk__h{font-size:3.6rem;font-weight:900;color:#1c86cf;line-height:1.4;padding-bottom:1.2rem}
.risk__panel{background:#e8f5fc;text-align:center;padding:3.6rem 2rem 3.2rem;margin:0 2rem}
.risk__p1{font-size:3.2rem;font-weight:700;color:#222;line-height:1.5}
.risk__p2{font-size:2.6rem;font-weight:700;color:#222;line-height:1.5;margin-top:.8rem}
.risk__p1 .r,.risk__p2 .r{color:#e8336b;font-size:1.25em}
.risk__p2 sup{font-size:1.6rem;color:#555}
.risk__cards{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.4rem}
.risk__card{background:#fff;border-radius:.8rem;text-align:center;padding:2.8rem 1.4rem 3rem;box-shadow:0 .2rem .8rem rgba(14,79,134,.08)}
.risk__card p{font-size:2.8rem;font-weight:700;color:#0e4f86;line-height:1.35}
.risk__card svg{display:block;width:12rem;height:10rem;margin:2rem auto 0}
.risk__early{background:#fff;border:.5rem solid var(--navy-deep);border-radius:1.6rem;margin-top:4.8rem;padding:4rem 3.2rem 4rem}
.risk__early-h{text-align:center;font-size:3.2rem;font-weight:700;color:var(--navy);line-height:1.45}
.risk__early-h .y{font-size:4.6rem;font-weight:900;background:linear-gradient(transparent 58%,var(--yellow) 58%);padding:0 .4rem}
.risk__steps{list-style:none;margin-top:3.6rem;position:relative}
.risk__steps::before{content:"";position:absolute;left:8.4rem;top:4rem;bottom:4rem;border-left:.5rem dotted #9fb7cc}
.risk__step{display:flex;align-items:center;gap:2.4rem;position:relative}
.risk__step + .risk__step{margin-top:2.4rem}
.risk__when{flex:none;width:16.8rem;height:16.8rem;border-radius:50%;background:#7d8aa8;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-size:2.6rem;font-weight:700;line-height:1.3;position:relative;z-index:1}
.risk__what{font-size:2.4rem;color:#444;line-height:1.55}
.risk__what b{display:block;font-size:2.9rem;color:var(--navy);line-height:1.4;margin-bottom:.6rem}
.risk__step--best .risk__when{background:var(--red);box-shadow:0 0 0 .6rem #f9d3d3}
.risk__step--best .risk__what b{color:var(--red)}
.risk__close{margin-top:3.6rem;text-align:center;font-size:2.6rem;line-height:1.7;color:#333}
.risk__close b{font-size:3rem;color:var(--red)}
.risk__note{font-size:2rem;color:#555;margin-top:2rem;line-height:1.6}

/* ---------- ファーストビュー下部：時間と初動（2026-10-31） ---------- */
.hero__time{position:absolute;left:3rem;right:3rem;bottom:1.6rem;text-align:center;color:#fff;line-height:1.35;
  border-top:.2rem solid rgba(255,255,255,.35);padding-top:1.2rem}
.hero__time .l1{display:block;font-size:2.9rem;font-weight:900;letter-spacing:.01em;white-space:nowrap}
.hero__time em{font-style:normal;color:var(--yellow);font-size:1.12em}
.hero__time .l2{display:block;font-size:2.3rem;font-weight:700;margin-top:.5rem;opacity:.95}

/* 2026-11-10 電話を第一導線に：固定バーの電話を広く */
.fixbar__btn--tel{flex:1.5;font-size:3.4rem}
