:root{--orange:#e85e37;--ink:#161616;--cream:#ffffed;--gray:#f3f3f3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}a{color:inherit}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;padding:8px}.skip:focus{left:8px}
.site-header{height:85px;padding:0 clamp(20px,3vw,44px);border-bottom:1px solid #ddd;display:flex;align-items:center;gap:30px;background:#fff}.brand{display:block;width:175px;flex:none}.brand img{display:block;width:100%}.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto;white-space:nowrap;font-size:14px;font-weight:700}.desktop-nav a{text-decoration:none}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--orange)}.header-contact{display:grid;place-items:center;min-width:140px;height:49px;border-radius:6px;background:var(--orange);color:#fff;text-decoration:none;font-size:14px;font-weight:700}.menu-toggle,.mobile-nav{display:none}
.section-inner{max-width:1240px;margin:auto}.section-band{background:var(--orange);color:#fff;text-align:center}.section-band h2{margin:0;font-size:46px;line-height:1.5;font-weight:800}.section-band h2 span{color:#ffffb9}
.hero{overflow:hidden;position:relative;background:#fff}.hero:before{content:"";position:absolute;left:65%;top:-54px;width:300px;height:300px;background:url("assets/dot-pattern.png") center/contain no-repeat;opacity:.22;pointer-events:none}.hero:after{content:"";position:absolute;right:-60px;bottom:-20px;width:280px;height:280px;background:url("assets/dot-pattern.png") center/contain no-repeat;opacity:.22;pointer-events:none}.hero-inner{position:relative;display:flex;align-items:center;max-width:1440px;min-height:705px;margin:auto;padding:105px 5.4% 70px 9%;z-index:1}.hero-copy{position:relative;z-index:1;flex:0 0 57%}.hero h1{font-size:clamp(44px,4.3vw,62px);line-height:1.62;font-weight:900;letter-spacing:.025em;white-space:nowrap;margin:0 0 14px}.hero h1 span{display:inline-block;background:#d76540;color:#fff;padding:0 15px;border-radius:8px;line-height:1.45}.hero p{font-size:21px;font-weight:700;line-height:1.68;letter-spacing:.02em;margin:0 0 55px}.hero-description-sp{display:none}.hero-visual{position:absolute;width:43%;max-width:620px;right:1%;top:31%;z-index:0}.hero-actions{display:flex;gap:20px}.button{display:inline-flex;align-items:center;justify-content:center;position:relative;min-width:315px;height:80px;border-radius:10px;text-decoration:none;font-size:22px;font-weight:800;letter-spacing:.12em}.button-outline{border:3px solid var(--orange);color:var(--orange);background:#fff}.button span{position:absolute;right:30px;font-size:44px;line-height:1;font-weight:300;top:12px}
.problems{background:#f4f4f4;overflow:hidden}.problems .section-inner{position:relative;padding:100px 175px 130px}.problems h2{text-align:center;font-size:48px;line-height:1.5;margin:0 0 45px;font-weight:800;white-space:nowrap}.problems h2 span{color:var(--orange)}.problem-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px 20px}.problem-grid li{display:flex;align-items:center;gap:18px;min-height:143px;padding:16px 22px;background:#fff;font-size:20px;line-height:1.65;font-weight:700}.problem-grid img{width:90px;height:90px;object-fit:contain;flex:none}.problem-person{position:absolute;bottom:0;max-width:none;pointer-events:none}.problem-person-left{left:-22px;width:230px}.problem-person-right{right:-23px;width:274px;bottom:-10px}.sp-break{display:none}
.support{background:var(--cream)}.support .section-band{padding:67px 20px 76px}.support-inner{padding:80px 20px 100px}.support-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:50px 48px}.support-card{border:1px solid #777;border-radius:12px;background:#fff;text-align:center;width:calc((100% - 96px)/3);min-height:440px;padding:55px 15px 40px}.support-card:nth-child(n+4){width:calc((100% - 48px)/2.35);min-height:410px}.support-card img{display:block;width:230px;height:210px;object-fit:contain;margin:0 auto 23px}.support-card h3{font-size:24px;line-height:1.4;margin:0 0 12px;font-weight:800}.support-card p{font-size:16px;line-height:1.5;margin:0}.support-card:nth-child(n+4) img{width:260px;height:190px}
.flow{background:#fff}.flow .section-band{padding:72px 20px}.flow .section-band h2 span{color:rgb(253,255,185)}.flow-inner{padding:80px 20px 100px}.flow-lead{text-align:center;font-size:32px;line-height:1.35;font-weight:700;margin:0 0 95px}.flow-lead strong{color:var(--orange)}.flow-list{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;list-style:none;margin:0;padding:0}.flow-list li{text-align:center;position:relative}.flow-list li:not(:last-child):after{content:"›";position:absolute;right:-22px;top:45px;font-size:42px;font-weight:300}.flow-list img{display:block;width:180px;height:180px;object-fit:contain;border:1px solid #999;border-radius:50%;padding:28px;margin:0 auto 30px}.flow-list h3{font-size:23px;margin:0 0 10px}.flow-list p{font-size:16px;line-height:1.55;margin:0}
.audience{background:var(--cream)}.audience .section-band{padding:55px 20px 65px}.audience .section-band p{font-size:21px;line-height:1.5;margin:8px 0 0;font-weight:700}.audience-inner{padding:75px 20px 85px}.audience-grid{list-style:none;padding:0;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.audience-grid li{grid-column:span 2;min-height:275px;border:1px solid #888;border-radius:12px;background:#fff;text-align:center;padding:60px 15px 35px}.audience-grid li:first-child{grid-column:2/span 2}.audience-grid li:nth-child(2){grid-column:4/span 2}.audience-grid h3{font-size:23px;margin:0 0 42px}.audience-grid p{font-size:16px;line-height:1.8;margin:0}.industries{text-align:center;margin:75px auto 0}.industries h2{font-size:46px;color:var(--orange);margin:0}.industries p{font-size:21px;font-weight:700;margin:0 0 32px}.industries ul{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;list-style:none;max-width:950px;padding:0;margin:auto}.industries li{border:1px solid #777;border-radius:10px;background:#fff;font-size:21px;font-weight:700;padding:11px 8px}
.contact-section{background:var(--orange);color:#fff;text-align:center;padding:75px 20px 55px}.contact-section h2{font-size:46px;line-height:1.4;margin:0}.contact-section p{font-size:21px;font-weight:700;margin:5px 0 35px}.contact-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;width:550px;max-width:100%;min-height:75px;border-radius:45px;background:#fff;color:var(--orange);font-size:22px;font-weight:800;letter-spacing:.1em;text-decoration:none}.contact-button span{font-size:30px}.contact-section small{display:block;font-size:20px;margin-top:24px}
@media(max-width:900px){.desktop-nav{gap:13px;font-size:12px}.site-header{gap:14px}.header-contact{min-width:110px}.hero-inner{padding-left:5%}.hero h1{font-size:45px}.hero p{font-size:16px}.button{min-width:215px;height:65px;font-size:17px}.problems .section-inner{padding-left:110px;padding-right:110px}.problem-grid li{font-size:16px}.problem-grid img{width:70px}.support-card h3{font-size:19px}}
@media(max-width:700px){.site-header{height:69px;padding:0 19px}.brand{width:96px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;position:absolute;right:14px;top:0;z-index:6;width:61px;height:69px;background:transparent;border:0;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}.menu-toggle span{font-size:13px;font-weight:800;letter-spacing:.03em;color:var(--orange)}.menu-toggle i{display:block;width:3px;height:3px;border-radius:50%;background:#222}.mobile-nav{display:none;position:absolute;left:0;right:0;top:69px;z-index:5;padding:20px 26px;background:#fff;box-shadow:0 10px 20px #0003}.mobile-nav.open{display:grid;gap:14px}.mobile-nav a{text-decoration:none;font-weight:700}.pc-break{display:none}.sp-break{display:initial}
  .hero:before{left:auto;right:-50px;top:0;width:130px;height:130px}.hero:after{display:none}.hero-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:88px 30px 80px}.hero-copy{display:contents}.hero h1{order:1;font-size:30px;line-height:1.65;letter-spacing:0;margin:0 0 14px;white-space:nowrap}.hero h1 span{padding:0 7px;border-radius:4px}.hero-description-pc{display:none}.hero-description-sp{display:block;order:2}.hero p{font-size:16px;line-height:1.84;letter-spacing:0;margin:0 0 20px;font-weight:700;white-space:nowrap}.hero-visual{display:block;position:static;order:3;width:100%;max-width:340px;margin:-40px auto 12px}.hero-actions{display:grid;order:4;gap:12px;width:100%;max-width:255px;margin:auto}.button{width:100%;height:53px;min-width:0;border-radius:35px;font-size:16px;letter-spacing:.06em}.button:first-child{background:var(--orange);color:#fff}.button span{right:28px;font-size:32px;top:8px}
  .problems .section-inner{padding:68px 20px 40px}.problems h2{font-size:23px;margin:0 0 30px}.problem-grid{gap:10px;position:relative;z-index:1}.problem-grid li{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:145px;padding:10px 5px;text-align:center;font-size:13px;line-height:1.38}.problem-grid img{width:72px;height:72px}.problem-person-left{width:92px;left:-5px;bottom:-3px;z-index:2}.problem-person-right{display:none}
  .section-band h2{font-size:25px;line-height:1.4}.support .section-band{padding:33px 15px}.support-inner{padding:45px 35px 35px}.support-grid{display:grid;gap:20px}.support-card,.support-card:nth-child(n+4){width:100%;min-height:0;padding:35px 12px 40px;border-radius:10px}.support-card img,.support-card:nth-child(n+4) img{width:170px;height:135px;margin-bottom:13px}.support-card h3{font-size:20px;margin-bottom:8px}.support-card p{font-size:15px;line-height:1.6}
  .flow .section-band{padding:31px 20px}.flow .section-band h2 span{color:#fff}.flow-inner{padding:45px 20px 38px}.flow-lead{font-size:18px;line-height:1.55;margin-bottom:26px}.flow-list{display:block}.flow-list li{display:grid;grid-template-columns:112px 1fr;grid-template-rows:auto auto;column-gap:15px;text-align:left;min-height:145px;padding:25px 0;border-bottom:1px solid #eee;align-content:center}.flow-list li:last-child{border-bottom:0}.flow-list li:after{display:none}.flow-list img{grid-row:1/3;width:100px;height:100px;border:0;border-radius:0;padding:8px;margin:auto}.flow-list h3{font-size:19px;line-height:1.4;margin:0}.flow-list p{font-size:15px;line-height:1.5}
  .audience .section-band{padding:33px 15px 35px}.audience .section-band p{display:none}.audience-inner{padding:40px 25px 55px}.audience-grid{display:grid;grid-template-columns:1fr;gap:12px}.audience-grid li,.audience-grid li:first-child,.audience-grid li:nth-child(2){grid-column:auto;min-height:0;padding:27px 10px 34px;border-radius:8px}.audience-grid h3{font-size:20px;margin-bottom:23px}.audience-grid p{font-size:15px;line-height:1.8}.industries{margin-top:50px}.industries h2{font-size:24px}.industries p{font-size:15px;line-height:1.5;margin:5px auto 25px;max-width:250px}.industries ul{grid-template-columns:repeat(2,1fr);gap:10px;max-width:250px}.industries li{font-size:16px;padding:6px 5px;border-radius:5px}
  .contact-section{padding:55px 20px 44px}.contact-section h2{font-size:23px}.contact-section p{font-size:15px;line-height:1.5;margin:10px auto 28px;max-width:270px}.contact-button{width:270px;min-height:51px;gap:9px;font-size:16px}.contact-button span{font-size:22px}.contact-section small{font-size:12px;margin-top:18px}
}
@media(max-width:370px){.hero-inner{padding-left:22px;padding-right:22px}.hero h1{font-size:27px}.problems h2{font-size:21px}}
.audience .section-band h2 .audience-title-accent{color:rgb(253,255,185)}
.audience .section-band h2 .audience-title-rest{color:#fff}
.flow-sp-break{display:none}
.support-sp-break{display:none}
.industry-sp-break{display:none}
.hero-dot-left{position:absolute;left:-35px;bottom:-105px;width:220px;height:220px;background:url("assets/dot-ring.png") center/contain no-repeat;opacity:.32;pointer-events:none}
@media(min-width:701px){
  .hero-inner{display:grid;grid-template-columns:minmax(0,57fr) minmax(0,43fr);column-gap:20px}
  .hero-copy{min-width:0;flex:none}
  .hero h1{font-size:clamp(36px,4.3vw,62px)}
  .hero p{overflow-wrap:anywhere}
  .hero-visual{position:relative;top:auto;right:auto;width:100%;max-width:620px;transform:translateY(55px)}
  .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-actions .button{min-width:0;width:100%;font-size:clamp(16px,1.5vw,22px)}
}
@media(max-width:700px){
  .hero-dot-left{display:block;left:-42px;bottom:164px;width:116px;height:116px;background-image:url("assets/dot-ring.png");opacity:.32}
  .hero-inner::before{content:"";position:absolute;right:23px;bottom:300px;width:116px;height:116px;background:url("assets/dot-ring.png") center/contain no-repeat;opacity:.32;pointer-events:none}
  .support-sp-break{display:initial}
  .support-card img,.support-card:nth-child(n+4) img{width:230px;height:190px}
  .support-card h3{font-size:25px;line-height:1.35}
  .problem-grid li:nth-child(1){order:1}
  .problem-grid li:nth-child(2){order:2}
  .problem-grid li:nth-child(3){order:5}
  .problem-grid li:nth-child(4){order:4}
  .problem-grid li:nth-child(5){order:3}
  .problem-grid li:nth-child(6){order:6}
  .flow-sp-break{display:initial}
  .flow-lead strong{background:linear-gradient(to bottom,transparent 25%,rgb(255,255,97) 25%)}
  .audience .section-band{position:relative}
  .audience .section-band p{display:block;position:absolute;top:calc(100% + 42px);left:0;right:0;margin:0;padding:0 10px;color:var(--ink);font-size:15px;line-height:23px;font-weight:700}
  .audience .section-band p .audience-description-accent{color:var(--orange)}
  .audience-inner{padding-top:112px}
  .industry-sp-break{display:initial}
  .industries p{max-width:350px}
  .industries li{display:grid;place-items:center;height:37px;padding:0;border:.7px solid #000;border-radius:9px}
}
.support .section-band h2 .support-title-accent{color:rgb(253,255,185)}
.support .section-band h2 .support-title-pc{color:#fff}
.support .section-band h2 .support-title-sp{display:none;color:#fff}
.audience-grid h3{display:table;margin:0 auto 28px;padding-bottom:12px;border-bottom:1px solid rgb(30,30,30)}
.audience-grid p .audience-accent{color:rgb(232,94,55)}
.contact-section h2{position:relative;display:table;margin:0 auto}
.contact-section h2>span{color:rgb(253,255,185)}
.contact-icon{display:block;width:32px;height:auto;flex:none}
@media(min-width:701px){
  .contact-section h2::before,.contact-section h2::after{content:"";position:absolute;top:50%;width:58px;height:2px;background:#fff}
  .contact-section h2::before{left:-59px;transform:rotate(45deg)}
  .contact-section h2::after{right:-59px;transform:rotate(-45deg)}
}
@media(max-width:700px){
  .support .section-band h2 .support-title-pc{display:none}
  .support .section-band h2 .support-title-sp{display:inline}
  .audience .section-band h2 .audience-title-accent,.audience .section-band h2 .audience-title-rest{display:block}
  .audience-grid h3{margin-bottom:16px;padding-bottom:8px}
  .audience-grid p .audience-accent{color:inherit}
  .contact-section h2{display:block}
  .contact-icon{width:32px}
}
@media(min-width:1000px){
  .support-card img{width:275px;height:220px;margin-bottom:10px}
  .support-card:nth-child(n+4) img{width:315px;height:210px}
}