/**/
:root { --review-sage:#5d6b59; --review-oak:#a8895f; }
.review-links {display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin:24px auto;}
.review-link {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border:1px solid var(--review-sage);border-radius:999px;color:var(--review-sage);background:#fdfaf5;text-decoration:none;font:inherit;font-size:16px;line-height:1.6;text-align:center;box-sizing:border-box;}
.review-link.primary {background:var(--review-sage);color:white;}
.review-link::after {content:'→'; flex:none;}
.review-intro {max-width:1080px;margin:auto;padding:40px 24px;color:#3a3632;box-sizing:border-box;}
.review-intro h2 {font-size:clamp(22px,3vw,30px);line-height:1.6;margin:0 0 16px;}
.review-intro p {font-size:16px;line-height:1.9;}
.review-staff {display:grid;grid-template-columns:160px 1fr;align-items:center;gap:32px;max-width:880px;margin:40px auto;text-align:left;}
.review-staff img {width:160px;height:auto;border-radius:16px;}
.review-life {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:40px auto;max-width:960px;}
.review-life a {display:block;color:#3a3632;text-decoration:none;background:#fff;border:1px solid #e8e2d9;border-radius:24px;overflow:hidden;}
.review-life img {display:block;width:100%;height:180px;object-fit:contain;background:#fdfaf5;}
.review-life strong,.review-life span {display:block;margin:16px;font-size:16px;line-height:1.7;}
.review-life span {text-decoration:underline;text-underline-offset:4px;}
.review-status {font:14px/1.6 'Zen Maru Gothic',sans-serif;color:#5d6b59;text-align:center;padding:12px 20px;background:#f0ebe3;}
.review-top p {color:#645d56 !important;font-size:16px !important;}
.review-top a {text-decoration:none;}
.review-top .review-life span {text-decoration:underline;}
.review-top {padding-bottom:32px;}
.review-buy-intro {background:#f8f5f0;border-bottom:1px solid #e8e2d9;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {outline:3px solid #5d6b59 !important;outline-offset:4px;}
#contactForm input:not([type=radio]):not([type=checkbox]):not([type=hidden]),#contactForm select,#contactForm textarea {font:inherit;font-size:16px;width:100%;min-height:48px;box-sizing:border-box;}
#scopeGroup select {padding:12px;border:1px solid #a8895f;border-radius:8px;background:#fdfaf5;color:#3a3632;}
#contactForm .cat-opt,#contactForm .detail-opt {min-height:48px;}
#contactForm [hidden] {display:none !important;}
#simulationSummary {white-space:pre-wrap;}
.review-preview-note {padding:16px;background:#f0ebe3;border-left:3px solid #5d6b59;font-size:16px;line-height:1.8;}
body {padding-bottom:var(--review-bottom-height,0px);}
/**/
@media(max-width:767px) {
  .review-staff {grid-template-columns:100px minmax(0,1fr);gap:20px;}
  .review-staff img {width:100px;}
  .review-life {grid-template-columns:1fr;gap:16px;}
  .review-life a {display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;}
  .review-life img {height:120px;grid-row:1 / 3;}
  .review-life strong,.review-life span {margin:8px 16px;}
  .review-links {flex-direction:column;align-items:stretch;}
  .review-intro {padding:32px 20px;}
  /*
*/
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto !important;} *,*::before,*::after {animation-duration:.01ms !important;transition-duration:.01ms !important;}}
/**/
.review-door__main {display:block;color:inherit;text-decoration:none;}
.review-door__links {display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;}
.review-door__links .review-link {min-height:44px;padding:9px 16px;}
@media(max-width:767px) {.review-door__links {flex-direction:column;align-items:stretch;} .review-door__links .review-link {padding:9px 12px;gap:6px;}}
/**/
.review-doors--sp > .review-door {min-width:0;}
@media(max-width:767px) {
  .review-top .review-door p.review-door__desc {font-size:14px !important;line-height:1.6;}   /**/
  /**/
  .review-routes {display:grid;gap:14px;margin:10px -12px 0;padding:14px 12px 12px;background:#fff;border:1px solid #e8e2d9;border-radius:1.75rem;box-sizing:border-box;}
  .review-routes__group {display:flex;flex-direction:column;gap:8px;}
  .review-routes__group + .review-routes__group {border-top:1px solid #e8e2d9;padding-top:14px;}   /**/
  .review-routes__label {text-align:center;font-size:13px;font-weight:700;letter-spacing:0.04em;line-height:1.5;}
}
/**/
@media(max-width:339px) {.review-doors--sp {grid-template-columns:1fr !important;margin:0 !important;}}
/*

*/
@media(min-width:768px) {
  .review-door__routes {margin-top:18px;padding:0 8px;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:8px 10px;}
  .review-door__routes-label {flex:0 0 100%;text-align:center;font-size:14px;font-weight:700;letter-spacing:0.04em;line-height:1.5;margin-bottom:4px;}
  .review-door__routes .review-link {min-height:44px;padding:9px 16px;}
}
/*



*/
.review-door__label {overflow-wrap:anywhere;}
@media(min-width:340px) and (max-width:767px) {
  .review-doors--sp {grid-template-columns:repeat(auto-fit,minmax(min(100%,7.6em),1fr)) !important;}
}
/**/
.review-doors--sp.review-doors--bigtext {grid-template-columns:minmax(0,1fr) !important;}
@media(max-width:299px) {
  .review-staff {grid-template-columns:minmax(0,1fr);}
  .review-staff .review-link {padding:12px 10px;gap:6px;}   /**/
}
