/*End Generated Styles*/:root{
--green:#1f8a5b;
--green-dark:#166847;
--green-soft:#e9f8ef;
--lime:#c8f169;
--yellow:#ffd96a;
--orange:#ffae57;
--sky:#8ed8ff;
--blue:#4d8df7;
--pink:#ff8fba;
--text:#213028;
--muted:#5f6f67;
--white:#ffffff;
--shadow:0 16px 38px rgba(21,71,48,.10);
--radius:24px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
margin:0;
font-family:"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
color:var(--text);
background:
radial-gradient(circle at top right, rgba(142,216,255,.35), transparent 28%),
radial-gradient(circle at top left, rgba(255,217,106,.28), transparent 26%),
linear-gradient(180deg,#f7fff9 0%,#f8fbff 100%);
line-height:1.8;
}

a{color:inherit}
.container{max-width:1120px;margin:0 auto;padding:28px 18px 72px}

.hero{
position:relative;
overflow:hidden;
background:linear-gradient(135deg,var(--green-dark),var(--green),#38b57a);
color:#fff;
border-radius:32px;
padding:34px 28px;
box-shadow:0 20px 50px rgba(20,86,58,.18);
}

.hero::before,
.hero::after{
content:"";
position:absolute;
border-radius:999px;
background:rgba(255,255,255,.10);
}

.hero::before{width:260px;height:260px;right:-80px;top:-70px}
.hero::after{width:200px;height:200px;left:-60px;bottom:-80px}

.hero-grid{
display:grid;
grid-template-columns:1.2fr .8fr;
gap:24px;
align-items:center;
position:relative;
z-index:1;
}

.badge{
display:inline-flex;
align-items:center;
gap:10px;
background:rgba(255,255,255,.14);
border:1px solid rgba(255,255,255,.18);
padding:8px 14px;
border-radius:999px;
font-size:13px;
font-weight:700;
letter-spacing:.04em;
}

.hero h1{
margin:14px 0 12px;
font-size:clamp(30px,4.6vw,50px);
line-height:1.2;
}

.hero p{
margin:0;
font-size:16px;
max-width:58ch;
opacity:.97;
}

.hero-points{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:18px;
}

.hero-points span{
display:inline-flex;
align-items:center;
gap:8px;
padding:9px 12px;
background:rgba(255,255,255,.14);
border-radius:999px;
font-size:14px;
}

.hero-illust{
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.16);
border-radius:24px;
padding:10px;
backdrop-filter:blur(4px);
}

.section{
margin-top:24px;
background:rgba(255,255,255,.86);
backdrop-filter:blur(4px);
border:1px solid rgba(45,118,79,.10);
border-radius:var(--radius);
overflow:hidden;
box-shadow:var(--shadow);
}

.section-head{
display:flex;
align-items:center;
justify-content:space-between;
gap:16px;
padding:18px 22px;
background:linear-gradient(135deg,#f4fff7,#edf8ff);
}

.section-head h2{
margin:0;
font-size:24px;
color:var(--green-dark);
display:flex;
align-items:center;
gap:12px;
}

.section-head p{
margin:0;
color:var(--muted);
font-size:14px;
}

.icon-bubble{
width:42px;
height:42px;
border-radius:14px;
display:inline-grid;
place-items:center;
background:linear-gradient(135deg,var(--yellow),var(--orange));
box-shadow:0 10px 24px rgba(255,174,87,.22);
}

.table-wrap{padding:0 18px 18px}

.table{
width:100%;
border-collapse:separate;
border-spacing:0;
overflow:hidden;
border-radius:18px;
background:#fff;
}

.table th,
.table td{
padding:14px 16px;
border-bottom:1px solid #e8f1eb;
vertical-align:top;
}

.table tr:last-child th,
.table tr:last-child td{border-bottom:none}

.table th{
width:28%;
background:linear-gradient(135deg,var(--green-soft),#f4fff9);
text-align:left;
font-weight:800;
color:var(--green-dark);
}

.grid-cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
gap:14px;
padding:0 18px 18px;
}

.metric{
position:relative;
overflow:hidden;
background:linear-gradient(135deg,#ffffff,#f1fff5);
border:1px solid #ddf0e4;
border-radius:20px;
padding:18px;
min-height:148px;
box-shadow:0 8px 20px rgba(39,96,67,.06);
}

.metric:nth-child(2n){background:linear-gradient(135deg,#fffdf5,#fff3dc)}
.metric:nth-child(3n){background:linear-gradient(135deg,#f5fbff,#eaf5ff)}

.metric .emoji{font-size:28px}

.metric h3{
margin:10px 0 6px;
font-size:18px;
color:var(--green-dark);
}

.metric .num{
font-size:34px;
font-weight:900;
line-height:1.1;
}

.metric small{color:var(--muted)}

.feature-row{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;
padding:0 18px 18px;
}

.feature{
background:linear-gradient(135deg,#ffffff,#f9fffb);
border:1px solid #e6f3ea;
border-radius:20px;
padding:18px;
}

.feature h3{
margin:10px 0 8px;
font-size:18px;
color:var(--green-dark);
}

.feature p{
margin:0;
color:var(--muted);
font-size:14px;
}

.list{margin:0;padding:0 28px 24px 48px}
.list li{margin:6px 0}

.sales{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:16px;
padding:0 18px 18px;
}

.sales-card,
.chart-card{
background:#fff;
border:1px solid #e6f1ea;
border-radius:22px;
padding:18px;
}

.bar-wrap{
display:grid;
gap:12px;
margin-top:8px;
}

.bar-row{
display:grid;
grid-template-columns:150px 1fr auto;
gap:12px;
align-items:center;
}

.bar{
height:14px;
border-radius:999px;
background:#edf2ee;
overflow:hidden;
}

.fill{
height:100%;
border-radius:999px;
background:linear-gradient(90deg,var(--green),#45c785);
}

.fill.orange{background:linear-gradient(90deg,#ffb24a,#ffd15a)}
.fill.blue{background:linear-gradient(90deg,#67a8ff,#8ed8ff)}
.fill.pink{background:linear-gradient(90deg,#ff8fba,#ffb4cf)}

.footer-note{
margin-top:18px;
text-align:center;
color:var(--muted);
font-size:13px;
}

svg{
max-width:100%;
height:auto;
display:block;
}

@media (max-width:920px){
.hero-grid,.sales,.feature-row{grid-template-columns:1fr}
}

@media (max-width:720px){
.container{padding:18px 12px 48px}
.hero{padding:26px 18px}
.section-head{padding:16px 16px;display:block}
.table-wrap,.grid-cards,.feature-row,.sales{padding-left:12px;padding-right:12px}
.table th,.table td{display:block;width:100%}
.table th{border-bottom:none}
.table td{padding-top:0}
.bar-row{grid-template-columns:1fr}
}
:root{
  --green:#1f8a5b;
  --green-dark:#166847;
  --green-soft:#e8f8ef;
  --lime:#c8f169;
  --yellow:#ffd96a;
  --orange:#ffae57;
  --sky:#8ed8ff;
  --blue:#4d8df7;
  --pink:#ff8fba;
  --text:#213028;
  --muted:#5f6f67;
  --white:#fff;
  --shadow:0 20px 50px rgba(21,71,48,.12);
  --radius:28px;
}

*{box-sizing:border-box}

body{
  margin:0;
  font-family:"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
  color:var(--text);
  line-height:1.8;
  background:
    radial-gradient(circle at top left, rgba(255,217,106,.26), transparent 22%),
    radial-gradient(circle at top right, rgba(142,216,255,.24), transparent 25%),
    linear-gradient(180deg,#f7fff9 0%,#f8fbff 100%);
}

.container{
  max-width:1140px;
  margin:0 auto;
  padding:28px 18px 72px;
}

.hero{
  border-radius:36px;
  background:linear-gradient(135deg,#156443,#1f8a5b,#39bf7f);
  color:#fff;
  padding:34px 28px;
  box-shadow:0 24px 60px rgba(20,86,58,.2);
}

.hero-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:center;
}

.badge{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  font-size:13px;
  font-weight:700;
}

.hero h1{
  margin:14px 0;
  font-size:40px;
}

.hero-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.hero-points span{
  padding:9px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
}

.section{
  margin-top:24px;
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

.section-head{
  padding:18px 22px;
  background:linear-gradient(135deg,#f5fff8,#eef8ff);
}

.cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding:18px;
}

.biz-card{
  border-radius:24px;
  padding:20px;
}

:root{
      --green:#1f8a5b;
      --green-dark:#166847;
      --green-soft:#eaf8ef;
      --lime:#c8f169;
      --yellow:#ffd96a;
      --orange:#ffae57;
      --sky:#8ed8ff;
      --blue:#4d8df7;
      --pink:#ff8fba;
      --text:#203128;
      --muted:#607168;
      --white:#ffffff;
      --shadow:0 18px 42px rgba(18,76,50,.11);
      --radius:24px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at top right, rgba(142,216,255,.34), transparent 28%),
        radial-gradient(circle at top left, rgba(255,217,106,.26), transparent 24%),
        linear-gradient(180deg,#f7fff9 0%,#f8fbff 100%);
      line-height:1.8;
    }

    a{color:inherit;text-decoration:none}
    .container{max-width:1120px;margin:0 auto;padding:28px 18px 80px}

    .hero{
      position:relative;
      overflow:hidden;
      background:linear-gradient(135deg,var(--green-dark),var(--green),#39b77c);
      color:#fff;
      border-radius:34px;
      padding:36px 30px;
      box-shadow:0 20px 50px rgba(22,92,62,.18);
    }

    .hero::before,.hero::after{
      content:"";
      position:absolute;
      border-radius:999px;
      background:rgba(255,255,255,.10);
    }

    .hero::before{width:280px;height:280px;right:-90px;top:-86px}
    .hero::after{width:220px;height:220px;left:-70px;bottom:-96px}

    .hero-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:24px;
      align-items:center;
    }

    .badge{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:8px 14px;
      border-radius:999px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.18);
      font-size:13px;
      font-weight:700;
      letter-spacing:.04em;
    }

    .hero h1{
      margin:14px 0 12px;
      font-size:clamp(30px,4.8vw,50px);
      line-height:1.18;
    }

    .hero p{
      margin:0;
      max-width:58ch;
      font-size:16px;
      opacity:.97;
    }

    .hero-points{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:20px;
    }

    .hero-points span{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      background:rgba(255,255,255,.14);
      font-size:14px;
    }

    .hero-illust{
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.16);
      border-radius:24px;
      padding:10px;
      backdrop-filter:blur(4px);
    }

    .section{
      margin-top:24px;
      background:rgba(255,255,255,.88);
      border:1px solid rgba(43,120,79,.10);
      border-radius:var(--radius);
      overflow:hidden;
      box-shadow:var(--shadow);
      backdrop-filter:blur(4px);
    }

    .section-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:18px 22px;
      background:linear-gradient(135deg,#f4fff7,#edf8ff);
    }

    .section-head h2{
      display:flex;
      align-items:center;
      gap:12px;
      margin:0;
      font-size:24px;
      color:var(--green-dark);
    }

    .section-head p{
      margin:0;
      color:var(--muted);
      font-size:14px;
    }

    .icon-bubble{
      width:42px;
      height:42px;
      display:grid;
      place-items:center;
      border-radius:14px;
      background:linear-gradient(135deg,var(--yellow),var(--orange));
      box-shadow:0 10px 24px rgba(255,174,87,.22);
    }

    .lead{
      padding:0 22px 8px;
      color:var(--muted);
      font-size:15px;
    }

    .division-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:16px;
      padding:0 18px 18px;
    }

    .division{
      position:relative;
      overflow:hidden;
      border-radius:22px;
      padding:20px;
      background:linear-gradient(135deg,#fff,#f4fff7);
      border:1px solid #e2f1e7;
      min-height:100%;
    }

    .division:nth-child(2){background:linear-gradient(135deg,#fffdf5,#fff5df)}
    .division:nth-child(3){background:linear-gradient(135deg,#f5fbff,#eef7ff)}

    .division .emoji{
      font-size:30px;
      line-height:1;
    }

    .division h3{
      margin:12px 0 6px;
      font-size:24px;
      line-height:1.3;
      color:var(--green-dark);
    }

    .division .sub{
      margin:0 0 14px;
      color:var(--muted);
      font-size:14px;
    }

    .service-list{
      list-style:none;
      padding:0;
      margin:0;
      display:grid;
      gap:10px;
    }

    .service-list li{
      display:flex;
      align-items:flex-start;
      gap:10px;
      padding:12px 14px;
      border-radius:16px;
      background:rgba(255,255,255,.88);
      border:1px solid rgba(31,138,91,.10);
      box-shadow:0 8px 18px rgba(39,96,67,.05);
      font-weight:700;
    }

    .service-list .arrow{
      flex:0 0 auto;
      width:26px;
      height:26px;
      border-radius:999px;
      display:grid;
      place-items:center;
      background:linear-gradient(135deg,var(--green),#44c685);
      color:#fff;
      font-size:13px;
      margin-top:1px;
    }

    .overview{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:16px;
      padding:0 18px 18px;
    }

    .info-card,
    .visual-card{
      background:#fff;
      border:1px solid #e5f1e9;
      border-radius:22px;
      padding:20px;
    }

    .info-card h3,
    .visual-card h3{
      margin:0 0 10px;
      color:var(--green-dark);
      font-size:20px;
    }

    .pill-wrap{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:12px;
    }

    .pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      background:var(--green-soft);
      color:var(--green-dark);
      font-size:14px;
      font-weight:700;
    }

    .stats{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      margin-top:14px;
    }

    .stat{
      border-radius:18px;
      padding:16px;
      background:linear-gradient(135deg,#fff,#f3fff7);
      border:1px solid #e2f0e7;
      text-align:center;
    }

    .stat b{
      display:block;
      font-size:30px;
      line-height:1.1;
      color:var(--green-dark);
    }

    .stat span{
      color:var(--muted);
      font-size:13px;
      font-weight:700;
    }

    svg{max-width:100%;height:auto;display:block}

    .footer-note{
      margin-top:18px;
      text-align:center;
      color:var(--muted);
      font-size:13px;
    }


    @media print{
      .container{max-width:none;padding:18px 14px 30px}
      .division-grid{grid-template-columns:repeat(2,1fr)}
      .overview{grid-template-columns:1fr}
      .service-list li{font-size:15px;line-height:1.5}
    }
    @media (max-width:980px){
      .hero-grid,.division-grid,.overview{grid-template-columns:1fr}
    }

    @media (max-width:760px){
      .container{padding:18px 12px 48px}
      .hero{padding:28px 18px}
      .section-head{display:block;padding:16px}
      .lead,.division-grid,.overview{padding-left:12px;padding-right:12px}
      .stats{grid-template-columns:1fr}
    }