
.fv{position:relative;background:#f3f7fc;container-type:inline-size}
.fv__stage{--u:calc(100cqw / 1586);position:relative;overflow:hidden;height:calc(var(--u) * 907)}
.fv__bg img{position:absolute;left:0;bottom:0;width:calc(var(--u) * 1586);height:auto;max-width:none}
.fv__sp{display:none}


.fv__in{position:absolute;z-index:2;left:calc(var(--u) * 70);top:calc(var(--u) * 128)}
.fv__label{font-family:Inter,sans-serif;font-weight:700;font-size:max(10px,calc(var(--u) * 18));line-height:1.4;letter-spacing:.27em;color:#2b57bf;white-space:nowrap}
.fv__ttl{position:relative;margin-top:calc(var(--u) * 25);font-size:calc(var(--u) * 92);font-weight:900;line-height:1.14;letter-spacing:.02em;color:#03162f;font-feature-settings:"palt";white-space:nowrap}
.fv__ttl em{font-style:normal;color:#1c4cad}

.fv__kana{font-size:.86em}

.fv__l2{font-size:.935em;letter-spacing:0}



.fv__ttl::before{content:none}
.fv__ttl{text-shadow:0 0 calc(var(--u) * 3) rgba(255,255,255,.95),0 0 calc(var(--u) * 9) rgba(255,255,255,.7)}
.fv__lead{margin-top:calc(var(--u) * 21);margin-left:calc(var(--u) * 4);font-size:max(12px,calc(var(--u) * 21.5));font-weight:500;line-height:1.81;color:#202941;letter-spacing:.02em;white-space:nowrap}
.fv__cta{display:flex;gap:calc(var(--u) * 16);margin-top:calc(var(--u) * 54);margin-left:calc(var(--u) * 2)}
.fv__btn{display:flex;align-items:center;justify-content:center;gap:max(12px,calc(var(--u) * 29));min-width:calc(var(--u) * 264);height:max(40px,calc(var(--u) * 74));padding:0 calc(var(--u) * 24);font-size:max(12px,calc(var(--u) * 18.4));font-weight:700;letter-spacing:.02em;white-space:nowrap;color:#fff;background:#2551be;box-shadow:inset 0 0 0 1px #2551be;transition:background .2s,color .2s}
.fv__btn::after{content:"→";flex:none;font-family:Inter,sans-serif;font-weight:500;font-size:max(13px,calc(var(--u) * 22));transition:transform .2s}
.fv__btn:hover{background:#1d3f97}
.fv__btn:hover::after{transform:translateX(4px)}
.fv__btn--line{min-width:calc(var(--u) * 219);background:#fff;color:#0b1a33;box-shadow:inset 0 0 0 1.5px #3a465c}
.fv__btn--line:hover{background:#eef3fb}
.fv__tag{display:flex;align-items:center;gap:calc(var(--u) * 16);margin-top:calc(var(--u) * 43);margin-left:calc(var(--u) * 6);width:calc(var(--u) * 470);font-size:max(12px,calc(var(--u) * 17.2));font-weight:500;letter-spacing:.04em;color:#2c374e;white-space:nowrap}
.fv__tag::before,.fv__tag::after{content:"";flex:1;height:max(1px,calc(var(--u) * 2));background:#4f78e0}
.fv__tag{width:max-content;min-width:calc(var(--u) * 470)}
.fv__tag::before,.fv__tag::after{flex:1 0 max(16px,calc(var(--u) * 60))}

@media (min-width:768px) and (max-width:879px){
  .fv__cta{flex-direction:column;align-items:flex-start;gap:8px}
  .fv__btn,.fv__btn--line{min-width:calc(var(--u) * 330)}

  .fv__tag{margin-left:0;gap:8px;letter-spacing:0}
  .fv__tag::before{display:none}
}
.fv__en{position:absolute;z-index:1;left:calc(var(--u) * 842);top:calc(var(--u) * 748);font-family:Inter,sans-serif;font-weight:800;font-size:calc(var(--u) * 70);line-height:.93;letter-spacing:-.01em;color:rgba(64,118,220,.32);transform:skewX(-10deg);transform-origin:left bottom;white-space:nowrap;pointer-events:none;user-select:none}
.fv__en span{letter-spacing:.035em}
.fv__words{display:none}



@media (max-width:767px){

  .fv__stage{--u:calc(100cqw / 853);height:auto;min-height:calc(var(--u) * 1736);background:#eff7ff}
  .fv__bg img{top:0;bottom:auto;width:100%}
  .fv__sp{display:inline}



  .fv__stage::after{content:"";position:absolute;z-index:1;left:0;right:0;top:calc(var(--u) * 1484);bottom:0;background:linear-gradient(180deg,#04285a 0,#04285a calc(var(--u) * 60),#03214a calc(var(--u) * 150),#032043 100%);clip-path:polygon(0 calc(var(--u) * 79.4),100% 0,100% 100%,0 100%)}
  .fv__in{position:relative;left:auto;top:auto;padding:calc(var(--u) * 150) calc(var(--u) * 23) calc(var(--u) * 253) calc(var(--u) * 40)}
  .fv__label{font-size:max(9.5px,calc(var(--u) * 20));line-height:calc(var(--u) * 33);letter-spacing:.22em}

  .fv__ttl{margin-top:calc(var(--u) * 17);font-size:calc(var(--u) * 78);line-height:1.42}

  .fv__ttl{text-shadow:0 0 3px #fff,0 0 4px #fff,0 0 6px #fff,0 0 7px #fff,0 0 8px #fff,0 0 11px #fff}

  .fv__lead{margin-top:calc(var(--u) * 525.96);margin-left:0;font-size:clamp(12px,calc(var(--u) * 33),22px);line-height:calc(var(--u) * 54.6);letter-spacing:0;font-feature-settings:"palt"}
  .fv__cta{gap:calc(var(--u) * 17);margin-top:calc(var(--u) * 40);margin-left:calc(var(--u) * -2)}

  .fv__btn{flex:1 1 0;min-width:max-content;gap:max(8px,calc(var(--u) * 34));height:max(40px,calc(var(--u) * 107));padding:0 calc(var(--u) * 32);font-size:max(12px,calc(var(--u) * 26.8));font-weight:500}
  .fv__btn::after{font-size:max(13px,calc(var(--u) * 30))}
  .fv__tag{margin-top:calc(var(--u) * 36);margin-left:0;width:auto;font-size:max(11.5px,calc(var(--u) * 26));line-height:calc(var(--u) * 46);gap:calc(var(--u) * 26);letter-spacing:.07em}
  .fv__en{z-index:2;left:calc(var(--u) * 22);top:auto;bottom:calc(var(--u) * 46);font-size:calc(var(--u) * 62.5);color:rgba(70,120,225,.45)}
  .fv__words{display:block;position:absolute;z-index:2;left:calc(var(--u) * 697);bottom:calc(var(--u) * 25);padding-left:calc(var(--u) * 25);border-left:1px solid rgba(255,255,255,.75);font-family:Inter,sans-serif;font-weight:500;font-size:calc(var(--u) * 14);line-height:calc(var(--u) * 30.3);letter-spacing:.12em;color:#fff}
}


@media (max-width:420px){
  .fv__label{letter-spacing:.14em}
  .fv__lead{letter-spacing:0;font-feature-settings:"palt"}
  .fv__btn{padding:0 8px;letter-spacing:0}
  .fv__tag{letter-spacing:0;gap:8px}
  .fv__tag::before{flex:0 0 12px}
}
