@charset "utf-8";
/* CSS Document */
:root{
  --uh-green:#4a9b6e;
  --uh-green-dark:#2f7350;
  --uh-green-pale:#f2f8f4;
  --uh-orange:#ec6d00;
  --uh-orange-pale:#fff5eb;
  --uh-text:#2e3632;
  --uh-muted:#67716c;
  --uh-border:#d9e4dd;
  --uh-bg:#f8faf9;
}
*{box-sizing:border-box}
body{
  margin:0;
  color:var(--uh-text);
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  background:#fff;
  line-height:1.8;
}
.demo-shell{max-width:1080px;margin:0 auto;padding:36px 20px 80px}
.demo-label{
  display:inline-block;margin-bottom:18px;padding:6px 10px;border-radius:3px;
  background:#eef1ef;color:#56605b;font-size:12px;font-weight:700;
}
.current-intro{
  max-width:820px;margin:0 auto 42px;padding-bottom:24px;border-bottom:1px solid #ecefec;
}
.current-intro h1{font-size:30px;line-height:1.45;margin:0 0 24px}
.current-intro p{margin:0 0 16px;font-size:16px}
.current-intro strong{color:var(--uh-green-dark)}

#uh-isan-case{
  max-width:980px;
  margin:0 auto 54px;
  padding:34px 34px 36px;
  background:linear-gradient(180deg,#fbfdfb 0%,#f5f9f6 100%);
  border:1px solid var(--uh-border);
  border-top:5px solid var(--uh-green);
  border-radius:8px;
  box-shadow:0 5px 18px rgba(31,78,55,.06);
}
#uh-isan-case .uh-case-head{text-align:center;margin-bottom:24px}
#uh-isan-case .uh-eyebrow{
  display:block;
  margin-bottom:6px;
  color:var(--uh-green);
  font-family:Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}
#uh-isan-case h2{
  margin:0;
  font-size:27px;
  line-height:1.5;
  color:#28332d;
}
#uh-isan-case .uh-lead{
  max-width:760px;
  margin:12px auto 0;
  color:var(--uh-muted);
  font-size:15px;
}
#uh-isan-case .uh-case-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
#uh-isan-case .uh-case-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  background:#fff;
  border:1px solid var(--uh-border);
  border-radius:6px;
  overflow:hidden;
}
#uh-isan-case .uh-card-top{
  padding:20px 20px 16px;
  border-bottom:1px solid #edf1ee;
}
#uh-isan-case .uh-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
#uh-isan-case .uh-badge{
  display:inline-block;
  padding:4px 8px;
  border-radius:999px;
  background:var(--uh-green-pale);
  color:var(--uh-green-dark);
  border:1px solid #c9dfd0;
  font-size:11px;
  font-weight:700;
}
#uh-isan-case .uh-badge.orange{
  background:var(--uh-orange-pale);
  color:#ad5200;
  border-color:#f2cfaf;
}
#uh-isan-case .uh-case-card h3{
  margin:0;
  font-size:18px;
  line-height:1.55;
  min-height:84px;
}
#uh-isan-case .uh-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:16px 20px 20px;
}
#uh-isan-case .uh-summary{
  margin:0 0 14px;
  font-size:14px;
  color:#505b55;
}
#uh-isan-case .uh-result{
  margin-top:auto;
  padding:12px 13px;
  background:var(--uh-orange-pale);
  border-left:4px solid var(--uh-orange);
  font-size:13px;
  line-height:1.65;
}
#uh-isan-case .uh-result b{
  color:#b95600;
  margin-right:5px;
}
#uh-isan-case .uh-case-link{
  display:block;
  margin-top:14px;
  padding:10px 12px;
  text-align:center;
  border:1px solid var(--uh-green);
  border-radius:4px;
  color:var(--uh-green-dark);
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}
#uh-isan-case .uh-case-link:hover{
  background:var(--uh-green-pale);
}
#uh-isan-case .uh-more{
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(100%,430px);
  margin:28px auto 0;
  padding:14px 20px;
  border-radius:4px;
  background:var(--uh-green);
  color:#fff;
  font-weight:700;
  text-decoration:none;
  box-shadow:0 3px 10px rgba(74,155,110,.18);
}
#uh-isan-case .uh-more:hover{filter:brightness(.96)}
#uh-isan-case .uh-note{
  margin:14px 0 0;
  text-align:center;
  color:#78827d;
  font-size:11px;
}
.after-section{
  max-width:820px;margin:0 auto;
  padding-top:8px;
}
.after-section h2{
  margin:0 0 18px;
  padding-left:14px;
  border-left:5px solid var(--uh-green);
  font-size:26px;
}
.after-section p{font-size:16px;margin:0}

@media(max-width:768px){
  .demo-shell{padding:20px 14px 60px}
  .current-intro h1{font-size:24px}
  #uh-isan-case{
    margin-bottom:38px;
    padding:26px 14px 28px;
    border-radius:5px;
  }
  #uh-isan-case h2{font-size:23px}
  #uh-isan-case .uh-lead{font-size:14px}
  #uh-isan-case .uh-case-grid{grid-template-columns:1fr;gap:12px}
  #uh-isan-case .uh-case-card h3{min-height:auto;font-size:17px}
  #uh-isan-case .uh-card-top{padding:17px 16px 14px}
  #uh-isan-case .uh-card-body{padding:14px 16px 17px}
  #uh-isan-case .uh-more{font-size:14px;padding:13px 14px}
  .after-section h2{font-size:22px}
}
