/* Scoped additions for the 2026-10-11 dev review. Existing theme is retained. */
.review-content { width:90%; max-width:900px; margin:0 auto; padding-bottom:160px; color:#5b4a37; font-size:1.5rem; line-height:2.2; }
.review-content *, .review-content *::before, .review-content *::after { box-sizing:border-box; }
.review-content p { margin:0; font-size:1.5rem; line-height:2.2; text-align:justify; }
.review-content a:not(.review-button) { text-decoration:underline; text-underline-offset:4px; transition:opacity .3s ease; }
.review-content a:not(.review-button):hover { opacity:.8; }
.review-banner { padding:12px 18px; margin-bottom:42px; border-left:3px solid #ee8353; background:#f9f8f2; font-size:1.3rem; }
.review-banner a { display:inline-block; margin-left:16px; color:#5b4a37; }
.review-intro { max-width:780px; }
.review-content h3 { font-size:2rem; line-height:1.75; font-weight:400; margin:28px 0 18px; }
.review-intro h3 { font-size:2.7rem; margin:12px 0 32px; }
.review-content .review-kicker { color:#ee8353; font-size:1.6rem; margin-bottom:10px; }
.review-content .review-lead { font-size:1.8rem; margin-bottom:20px; }
.review-section { margin-top:85px; scroll-margin-top:120px; }
.review-section .subtitle { position:relative; font-size:2.5rem; font-weight:400; line-height:2; margin:0 0 52px; }
.review-section .subtitle::before { position:absolute; content:""; left:0; bottom:-4px; width:293px; max-width:100%; height:2px; background:#ee8353; }
.review-section .subtitle::after { position:absolute; content:""; left:0; bottom:-4px; width:100%; height:1px; background:#d3d3d3; z-index:-1; }
.review-section .subtitle { isolation:isolate; }
.review-pending { border:1px solid #ee8353; padding:18px 22px; background:#fff7ef; margin:18px 0; }
.review-pending strong { display:block; color:#5b4a37; margin-bottom:8px; font-weight:400; }
.review-pending p:last-child { margin-bottom:0; }
.review-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; align-items:start; }
.review-plan { padding:28px; background:#f1ebe5; border-radius:5px; }
.review-plan h3 { margin-top:0; color:#ee8353; }
.review-table { margin:25px 0 0; }
.review-table > div { display:grid; grid-template-columns:145px minmax(0,1fr); border-bottom:1px solid #ded8d2; padding:22px 0; gap:22px; }
.review-table > div:first-child { border-top:1px solid #ded8d2; }
.review-table dt { font-weight:400; }
.review-table dd { margin:0; min-width:0; }
.review-table p:last-child { margin-bottom:0; }
.review-table .review-pending { margin:0; }
.review-plan .review-table > div { grid-template-columns:1fr; gap:6px; padding:16px 0; }
.review-plan .review-table dt { color:#5b4a37; }
.review-content .review-small { font-size:1.4rem; margin-top:20px; }
.review-twins { background:#fff1e5; padding:38px; border-radius:5px; }
.review-inset { background:rgba(255,255,255,.75); padding:18px 26px; margin-top:28px; }
.review-inset h3 { margin:0 0 12px; }
.review-list { padding:0 0 0 1.35em; margin:14px 0 20px; }
.review-list li { list-style:disc; margin:0; padding-left:.15em; }
.review-feature { overflow:hidden; border:1px solid #e8e1da; border-radius:5px; }
.review-photo-pending { min-height:180px; display:flex; flex-direction:column; justify-content:center; align-items:center; background:#f2ede7; color:#7a6756; border-bottom:1px dashed #bdae9e; }
.review-photo-pending span { font-size:1.6rem; }
.review-photo-pending small { font-size:1.3rem; }
.review-feature-copy { padding:24px; }
.review-feature-copy h3 { margin:0 0 15px; }
.review-feature-copy p { font-size:1.4rem; }
/* Same orange pill, arrow and hover treatment as .medical01 / .instagram. */
.review-button { position:relative; display:inline-flex; align-items:center; min-height:60px; box-sizing:border-box; background:#ee8353; color:#fff; border:0; border-radius:30px; padding:12px 62px 12px 29px; text-decoration:none; text-align:left; font-size:1.6rem; font-weight:400; line-height:1.8; margin-top:20px; max-width:100%; transition:opacity .3s ease; }
.review-button::after { content:""; position:absolute; top:50%; right:26px; width:20px; height:20px; background:url(https://hicona.jp/wp2/wp-content/themes/hicona/img/arrow01.svg) no-repeat center center / contain; transform:translateY(-50%); }
.review-button:hover { opacity:.8; }
.review-button:focus-visible, .review-content a:focus-visible { outline:3px solid #5b4a37; outline-offset:4px; }
.review-new-window { display:block; font-size:1.2rem; }
.review-button-external { display:inline-block; border-radius:40px; }
.review-phone { font-size:1.8rem; color:#ee8353; }
.review-belongings { margin-top:30px; }
.review-notice { padding:30px; background:#f8eee4; border-radius:5px; }
.review-content div.review-notice { margin-top:40px; }
.review-notice h3:first-child { margin-top:0; }
.review-fees { width:100%; margin:26px 0; border-collapse:collapse; }
.review-fees th, .review-fees td { padding:20px; border-bottom:1px solid #d9d2cb; text-align:left; font-weight:400; }
.review-fees thead { background:#f1ebe5; }
.review-fees thead th:last-child { white-space:nowrap; }
.review-fees td { white-space:nowrap; color:#ee8353; font-size:2rem; }
.review-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin:30px 0; }
.review-options > div { border-top:2px solid #ee8353; }
.review-options h3 { font-size:1.9rem; }
.review-toc { background:#f1ebe5; padding:28px 32px; margin-top:40px; }
.review-toc h2 { font-size:1.8rem; font-weight:400; margin-bottom:20px; }
.review-toc ol { columns:2; padding-left:1.5em; column-gap:45px; }
.review-toc li { list-style:decimal; break-inside:avoid; margin:0 0 12px; font-size:1.4rem; line-height:1.9; }
.review-toc a { color:#5b4a37; }
.review-links { display:flex; flex-wrap:wrap; gap:16px; }
.hicona-review #globalFooter .foot_nav_sub ul { flex-wrap:wrap; row-gap:8px; }
@media(max-width:767px) {
 .review-content { width:88vw; padding-bottom:75px; font-size:1.4rem; }
 .review-content p { font-size:1.4rem; }
 .review-banner { margin-bottom:30px; padding:10px 14px; }
 .review-banner a { display:block; margin:3px 0 0; }
 .review-intro h3 { font-size:2.1rem; margin-bottom:24px; }
 .review-content h3 { font-size:1.8rem; }
 .review-content .review-lead { font-size:1.6rem; }
 .review-section { margin-top:40px; scroll-margin-top:90px; }
 .review-section .subtitle { font-size:2rem; margin-bottom:30px; }
 .review-section .subtitle::before { width:135px; }
 .review-pair, .review-options { grid-template-columns:1fr; gap:24px; }
 .review-plan { padding:24px 20px; }
 .review-table > div { grid-template-columns:1fr; gap:7px; padding:18px 0; }
 .review-table dt { color:#5b4a37; }
 .review-twins { padding:25px 20px; }
 .review-inset { padding:18px; }
 .review-pending { padding:15px; }
 .review-notice { padding:24px 20px; }
 .review-fees th, .review-fees td { padding:15px 10px; font-size:1.4rem; }
 .review-fees td { font-size:1.8rem; }
 .review-toc { padding:24px; }
 .review-toc ol { columns:1; }
 .review-photo-pending { min-height:170px; }
 .review-options h3 { margin-top:18px; }
}

/* Reuse the existing theme MV structure and its typography without overriding the header. */
.review-standard-hero { height:auto; min-height:905px; padding-bottom:80px; }
.review-standard-hero .mv_img { height:100%; }
.review-standard-hero .mv_img img { height:100%; }
.review-standard-hero + .review-content { padding-top:100px; }
.review-standard-hero .mv_img, .review-standard-hero .mv_img_sp { position:relative; }
.review-standard-hero .mv_img { position:absolute; }
.review-photo-caption { position:absolute; right:16px; bottom:16px; padding:3px 10px; background:rgba(255,255,255,.9); color:#5b4a37; font-size:1.2rem; line-height:1.8; }
.review-hero-yomogi .mv_img img { object-position:45% center; }
.review-hero-facility-standards .mv_img img { object-position:35% center; }
.review-banner + .review-section { margin-top:0; }
@media(max-width:767px) {
 .review-standard-hero { min-height:0; padding-bottom:40px; }
 .review-standard-hero + .review-content { padding-top:50px; }
 .review-standard-hero .mv_img_sp img { display:block; width:100%; aspect-ratio:5 / 4; object-fit:cover; }
 .review-hero-yomogi .mv_img_sp img { object-position:45% center; }
 .review-hero-facility-standards .mv_img_sp img { object-position:35% center; }
 .review-photo-caption { right:12px; bottom:12px; }
 .review-button { font-size:1.5rem; padding-left:24px; padding-right:54px; }
 .review-button::after { right:20px; }
}

/* Paragraph rhythm follows the existing SNS and obstetrics pages:
   continuous text inside a topic; spacing belongs to headings or grouped blocks. */
.review-copy + .review-copy { margin-top:20px; }
.review-content .review-copy p { margin:0; }
.review-content h3 { margin-bottom:12px; }
.review-content .review-inset h3 { margin-top:0; }
.review-content .review-pending p { margin:0; }
.review-content .review-list + .review-list { margin-top:0; }
.review-standard-hero .mv__inner .block .left .review-copy { margin-top:27px; }
.review-standard-hero .mv__inner .block .left .review-copy p { margin:0; }
.review-fees + .review-copy { margin-top:20px; }
@media(max-width:767px) {
 .review-standard-hero .mv__inner .block .left .review-copy { margin-top:22px; }
}

/* One cohesive packing guide, using the obstetrics page's cream/orange panels. */
.review-belongings-guide { border:1px solid #ee8353; border-radius:10px; background:#f9f8f2; padding:32px 36px; }
.review-belongings-guide h3 { color:#ee8353; font-size:2rem; font-weight:400; margin:0 0 16px; }
.review-belongings-common .review-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:38px; margin:0; }
.review-belongings-additions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; margin-top:28px; padding-top:28px; border-top:1px solid #ded8d2; }
.review-belongings-additions .review-list { margin:12px 0 0; }
.review-belongings-guide .review-belongings-note { margin-top:14px; font-size:1.4rem; }
@media(max-width:767px) {
 .review-belongings-guide { padding:24px 20px; border-radius:5px; }
 .review-belongings-guide h3 { font-size:1.8rem; margin-bottom:12px; }
 .review-belongings-common .review-list, .review-belongings-additions { grid-template-columns:1fr; }
 .review-belongings-additions { margin-top:24px; padding-top:24px; gap:24px; }
 .review-belongings-additions > section + section { border-top:1px solid #ded8d2; padding-top:24px; }
}
