
:root{--blue:#2f80ed;--blue2:#4da3e3;--sky:#62c7f2;--deep:#245e8c;--line:#d7e7f2;--bg:#f4faff;--bg2:#eaf6fd;--white:#fff;--text:#243746;--muted:#617686;--accent:#56b8df}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:var(--text);background:#fff;line-height:1.75}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 3px 16px rgba(46,128,191,.08)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:800;color:var(--deep);font-size:20px;line-height:1.1}.brand rt{font-size:9px;font-weight:500}.brand span{display:block;font-size:10px;letter-spacing:.16em;color:var(--muted);margin-top:8px}.navlinks{display:flex;gap:22px;align-items:center;font-size:14px;font-weight:700}.navlinks .cta{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;padding:12px 18px;border-radius:3px}
.hero{position:relative;color:#fff;padding:92px 0;background-image:linear-gradient(90deg,rgba(28,101,154,.88),rgba(67,174,220,.56)),url('https://images.unsplash.com/photo-1768321912048-9d358964c7ed?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000');background-size:cover;background-position:center}
.corporateHero{background-image:linear-gradient(90deg,rgba(26,103,157,.88),rgba(85,189,227,.50)),url('https://images.unsplash.com/photo-1747909020005-6dc48e78a4dd?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000')}
.personalHero{background-image:linear-gradient(90deg,rgba(40,116,166,.86),rgba(90,196,233,.42)),url('https://images.unsplash.com/photo-1781249144416-46a743be97a0?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000')}
.heroGrid{display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:var(--blue);margin-bottom:10px}.hero .eyebrow{color:#d8f4ff}.hero h1{font-size:44px;line-height:1.35;margin:10px 0 20px;letter-spacing:.02em;text-shadow:0 2px 12px rgba(0,0,0,.18)}.hero p{font-size:17px;color:#f2fbff}.heroPanel{background:rgba(255,255,255,.95);color:var(--text);padding:30px;border-radius:6px;box-shadow:0 20px 50px rgba(16,77,114,.18);backdrop-filter:blur(3px)}.heroPanel b{font-size:18px;color:var(--deep)}.heroPanel ul{padding-left:20px;margin:15px 0 0}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;padding:14px 22px;font-weight:800;border:1px solid var(--blue);font-size:14px;border-radius:3px}.btn.primary{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;border-color:transparent}.hero .btn.primary{background:#fff;color:var(--deep);border-color:#fff}.hero .btn.secondary{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}
.visualBand{padding:26px 0;background:#fff}.visualGrid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:12px}.visualTile{min-height:220px;background-size:cover;background-position:center;border-radius:5px;position:relative;overflow:hidden;box-shadow:0 8px 24px rgba(51,128,175,.12)}.visualTile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,75,106,.38),transparent 58%)}.visualTile span{position:absolute;left:18px;bottom:15px;z-index:2;color:#fff;font-weight:800;font-size:14px;text-shadow:0 1px 6px rgba(0,0,0,.3)}
.section{padding:78px 0}.section.alt{background:linear-gradient(180deg,var(--bg),#fff)}.title{font-size:31px;color:var(--deep);margin:0 0 12px;line-height:1.4}.lead{max-width:850px;color:var(--muted);margin:0 0 34px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:#fff;padding:26px;min-height:190px;border-radius:5px;box-shadow:0 9px 24px rgba(50,132,181,.07)}.card h3{margin:0 0 10px;color:var(--deep);font-size:19px}.card p{margin:0;color:var(--muted);font-size:14px}.tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--blue);margin-bottom:10px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:26px}.choice{padding:34px;border:1px solid var(--line);background:#fff;border-radius:5px;box-shadow:0 9px 24px rgba(50,132,181,.06)}.choice.corp{border-top:5px solid var(--blue)}.choice.personal{border-top:5px solid var(--sky)}.choice h3{font-size:24px;color:var(--deep);margin:0 0 10px}.choice ul{padding-left:20px;color:var(--muted)}
.flow{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.step{background:#fff;border:1px solid var(--line);padding:18px 12px;text-align:center;font-size:13px;border-radius:4px}.step b{display:block;color:var(--blue);font-size:16px;margin-bottom:8px}.notice{background:#eaf7ff;border-left:5px solid var(--sky);padding:20px 24px;margin-top:28px;color:#3e657d}
.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formGrid .full{grid-column:1/-1}label{font-size:13px;font-weight:800;color:var(--deep)}input,select,textarea{width:100%;padding:13px;border:1px solid #c8ddea;font:inherit;background:#fff}textarea{min-height:130px}.companyTable{width:100%;border-collapse:collapse}.companyTable th,.companyTable td{padding:15px;border-bottom:1px solid var(--line);text-align:left}.companyTable th{width:28%;color:var(--deep);background:#f0f8fd}
.footer{background:linear-gradient(135deg,#2d7fb8,#4fb6dd);color:#edfaff;padding:46px 0}.footerGrid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.footer b{color:#fff}.footer a{color:#fff}.fixed{display:none}
@media(max-width:820px){.wrap{width:min(100% - 26px,1160px)}.nav{height:auto;min-height:72px;align-items:flex-start;padding:12px 0}.navlinks{display:none}.hero{padding:58px 0;background-position:58% center}.heroGrid,.split,.cards,.footerGrid{grid-template-columns:1fr}.hero h1{font-size:31px}.heroPanel{padding:22px}.title{font-size:25px}.section{padding:56px 0}.cards{gap:12px}.flow{grid-template-columns:1fr 1fr}.formGrid{grid-template-columns:1fr}.formGrid .full{grid-column:auto}.visualGrid{grid-template-columns:1fr 1fr}.visualTile{min-height:150px}.visualTile:first-child{grid-column:1/-1;min-height:190px}.mobileMenu{display:grid!important;grid-template-columns:repeat(4,1fr);position:sticky;top:72px;z-index:45;background:#fff;border-bottom:1px solid var(--line)}.mobileMenu a{text-align:center;padding:11px 3px;font-size:11px;font-weight:800;color:var(--deep)}.fixed{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:60}.fixed a{text-align:center;padding:14px;background:var(--blue);color:#fff;font-weight:800;font-size:13px}.fixed a+ a{background:var(--sky)}body{padding-bottom:50px}}
@media(min-width:821px){.mobileMenu{display:none}}

/* v4 typography / area / forms */
.hero h1.heroTwoLine{font-size:clamp(30px,3.15vw,43px);line-height:1.34;white-space:nowrap;letter-spacing:0}
.trustInfo{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.trustInfo .card{min-height:160px}
.areaList{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 22px;margin:18px 0 0;padding:0;list-style:none}
.areaList li{padding:10px 12px;border-bottom:1px solid var(--line);font-weight:700;color:var(--navy)}
.contactIntro{background:#eef8fd;border-left:5px solid var(--blue);padding:18px 22px;margin-bottom:26px}
@media(max-width:1100px){.hero h1.heroTwoLine{font-size:35px}}
@media(max-width:820px){.hero h1.heroTwoLine{font-size:29px;white-space:normal}.trustInfo,.areaList{grid-template-columns:1fr}}

/* v6: 個人向けメイン */
.personalHeroTitle{font-size:clamp(31px,3.2vw,44px)!important;line-height:1.34!important;letter-spacing:0!important}
.worksGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.workCard{background:#fff;border:1px solid var(--line);overflow:hidden}
.workCard img{width:100%;height:220px;object-fit:cover;background:#eaf3f8}
.workCard .body{padding:18px}.workCard h3{margin:0 0 7px;color:var(--navy);font-size:18px}.workCard p{margin:0;color:var(--muted);font-size:14px}
.b2bBand{background:linear-gradient(120deg,#eaf7fd,#f7fbfd);border-top:1px solid #d7eaf4;border-bottom:1px solid #d7eaf4}
@media(max-width:820px){.personalHeroTitle{font-size:28px!important}.worksGrid{grid-template-columns:1fr 1fr}.workCard img{height:180px}}
@media(max-width:520px){.worksGrid{grid-template-columns:1fr}.workCard img{height:220px}}

/* v6.1: hero catch copy fixed to two lines */
@media (min-width: 821px){
  .personalHeroTitle{white-space:nowrap!important;font-size:clamp(28px,2.65vw,39px)!important;}
}
@media (max-width:820px){
  .personalHeroTitle{white-space:normal!important;}
}

/* v6.2: 法人ページのメインコピーをPCで2行固定 */
@media (min-width:821px){
  .corporateHeroTitle{
    white-space:nowrap!important;
    font-size:clamp(30px,2.8vw,41px)!important;
    line-height:1.34!important;
    letter-spacing:0!important;
  }
}
@media (max-width:820px){
  .corporateHeroTitle{
    white-space:normal!important;
    font-size:29px!important;
    line-height:1.4!important;
  }
}
