/* Conversion + readability refinements. Core hero CSS remains intentionally untouched. */
.arrival-disclaimer{margin:10px auto 0;color:#526574;text-align:center;font:500 12px/1.65 var(--gothic)}
.featured-items-section{background:#f6fafb;padding-bottom:84px}
.featured-items-section .featured-intro{font-size:16px;line-height:1.85;color:#4b6372;margin:0 0 28px}
.featured-items-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.featured-item{overflow:hidden;display:block;background:white;border:1px solid #d3e1e6;border-radius:12px;box-shadow:0 4px 14px #1633450b;transition:transform .2s,box-shadow .2s}
.featured-item:hover{transform:translateY(-2px);box-shadow:0 10px 18px #16334517}
.featured-item img{width:100%;aspect-ratio:1.48;object-fit:cover}
.featured-item span{display:flex;min-height:57px;align-items:center;justify-content:center;padding:12px 10px;text-align:center;font:750 clamp(14px,1.5vw,18px)/1.5 var(--gothic);color:#18374a}
.featured-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px;margin-top:28px}
.featured-more,.featured-consult{border:1px solid #94b9c7;border-radius:9px;padding:13px 20px;min-height:50px;display:inline-flex;align-items:center;justify-content:center;font:700 15px/1.4 var(--gothic);transition:background .2s}
.featured-more{color:#143c50;background:white}.featured-more span{margin-left:8px}
.featured-consult{border-color:#e92932;background:#e92932;color:white}
.featured-more:hover{background:#e6f4f8}.featured-consult:hover{background:#ce2733}
.case-action{margin-top:28px;display:flex;gap:18px;justify-content:space-between;align-items:center;background:#fff;padding:18px 23px;border-left:3px solid #c32c36}
.case-action p{margin:0!important;line-height:1.6;font-size:14px!important}
.case-web-link{font-weight:750;color:#0b617f;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.service-benefit-intro{color:#536879;max-width:900px;font-size:16px;margin:0 0 28px}
.all-items-section{padding-top:80px;background:white}
.all-items-section .heading-row{margin-bottom:26px}
.all-items-section .expanded-items{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.all-items-section .item-row{border-radius:9px;box-shadow:0 2px 8px #13334508}
.all-items-section .item-row summary{font-size:15px;line-height:1.45}
.all-items-section .item-row summary .item-name{min-height:58px;padding:11px 23px 11px 10px}
.all-items-section .item-row summary:after{right:9px;bottom:19px;font-size:16px}
.all-items-section .item-row p{font-size:14px;line-height:1.65;padding:8px 15px 16px}
.booking-panel .second-choice{border:1px solid #c8dce1;border-radius:10px;margin:24px 0 14px;padding:20px;background:#f6fbfc;min-width:0}
.booking-panel .second-choice legend{font:700 18px/1.5 var(--gothic);padding:0 8px;color:#163c4a}
.booking-panel .second-choice p{margin:0 0 12px;font-size:13px;line-height:1.6;color:#4f6879}
.booking-panel .second-choice-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.booking-panel .second-choice label{margin:0;min-width:0;display:block}
.booking-panel .second-choice :is(input,select){max-width:100%;width:100%;box-sizing:border-box}
.booking-panel .second-choice .booking-help{color:#ad2432;font-weight:700;margin:7px 0 0}
@media(max-width:1000px){.featured-items-grid{gap:12px}.all-items-section .expanded-items{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
 .arrival-disclaimer{font-size:11px;padding:0 5px;margin-top:7px;line-height:1.5}
 .featured-items-section{padding-bottom:48px}
 .featured-items-section .featured-intro{font-size:14px;line-height:1.75;margin:0 0 16px}
 .featured-items-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 .featured-item{border-radius:10px}
 .featured-item img{aspect-ratio:1.55}
 .featured-item span{font-size:15px;min-height:45px;padding:8px 5px}
 .featured-bottom{display:grid;gap:10px;margin-top:18px}
 .featured-more,.featured-consult{font-size:14px;min-height:48px;width:100%;padding:12px}
 .service-benefit-intro{font-size:14px;line-height:1.8;margin:0 0 20px}
 .case-action{display:block;padding:17px}
 .case-action p{font-size:14px!important;margin-bottom:8px!important}
 .case-web-link{font-size:14px;white-space:normal}
 .all-items-section{padding-top:56px}
 .all-items-section .expanded-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .all-items-section .item-row summary{font-size:13px}
 .all-items-section .item-row summary .item-name{min-height:54px;padding:8px 19px 8px 7px}
 .all-items-section .item-row summary:after{right:5px;bottom:15px;font-size:13px}
 .all-items-section .item-row p{font-size:13px;line-height:1.6;padding:8px 10px 14px}
 .booking-panel .second-choice{padding:15px 12px;margin-top:20px}
 .booking-panel .second-choice legend{font-size:16px}
 .booking-panel .second-choice-fields{grid-template-columns:1fr;gap:12px}
}
@media(prefers-reduced-motion:reduce){.featured-item{transition:none}}

/* 2026-11: inline item listing directly follows featured items; no page jump. */

.featured-expanded .expanded-items{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}

.featured-expanded .item-row summary .item-name{min-height:58px;padding:11px 20px 11px 9px}

.featured-expanded .item-row summary{font-size:14px}

.featured-expanded .item-row p{font-size:13px;line-height:1.7;padding:8px 12px 15px}

@media(max-width:1000px){.featured-expanded .expanded-items{grid-template-columns:repeat(3,minmax(0,1fr))}}

@media(max-width:700px){.featured-expanded .expanded-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.featured-expanded .item-row summary{font-size:13px}.featured-expanded .item-row summary .item-name{min-height:54px;padding:8px 20px 8px 7px}.featured-expanded .item-row p{font-size:13px}}


/* 2026-11-05: annual results center and form layout fixes */
.annual-results {grid-template-columns:minmax(0,1fr);align-items:center;justify-items:center;row-gap:10px;}
.annual-results h2 {grid-area:auto;grid-column:1/-1;text-align:center;width:100%;margin:0;}
.annual-results dl {grid-column:1/-1;width:100%;margin:0;}
.annual-results .annual-period {grid-area:auto;grid-column:1/-1;text-align:center;margin:0;}
/* Real Minato-ku customer example; the room photograph is illustrative. */
#cases .whole-home-example{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);background:#fff;border:1px solid #dbe5e8;border-radius:12px;overflow:hidden;margin-bottom:22px;box-shadow:0 6px 22px #183f5211;}
#cases .whole-home-example img{width:100%;height:100%;min-height:245px;object-fit:cover;display:block;}
#cases .whole-home-example>div{padding:24px 25px;min-width:0;}
#cases .whole-home-example small{display:block;color:#007e95;font-weight:700;letter-spacing:.02em;}
#cases .whole-home-example h3{margin:6px 0 12px;font-size:clamp(20px,2vw,26px);}
#cases .whole-home-example p{margin:8px 0;font-size:15px;line-height:1.8;color:#304c5b;}
#cases .whole-home-example p b{margin-right:.5em;color:#102d49;}
/* Form grid min sizing fixes Safari date controls that otherwise overflow. */
.booking-panel,.booking-panel form,.booking-panel form>*{min-inline-size:0;max-inline-size:100%;box-sizing:border-box;}
.booking-panel form{grid-template-columns:minmax(0,1fr);}
.booking-panel form label{min-inline-size:0;max-inline-size:100%;}
.booking-panel form :is(input, select, textarea){display:block;width:100%;max-width:100%;min-width:0;min-inline-size:0;box-sizing:border-box;font-size:16px;}
.booking-panel form input[type=date]{width:100%;max-width:100%;min-width:0;min-inline-size:0;height:54px;padding:10px 12px;line-height:1.2;-webkit-appearance:none;appearance:none;}
.booking-panel .date-choice,.booking-panel .contact-method{min-width:0;min-inline-size:0;width:100%;max-width:100%;margin:0;padding:18px 18px 17px;border:1px solid #c8dce1;border-radius:12px;background:#f6fbfc;box-sizing:border-box;}
.booking-panel .date-choice legend,.booking-panel .contact-method legend{color:#153c4c;font-size:17px;font-weight:800;line-height:1.45;padding:0 7px;}
.booking-panel .date-choice-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;min-width:0;}
.booking-panel .date-choice-fields label{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0;}
.booking-panel .date-choice-fields :is(input,select){margin-top:auto;min-height:54px;}
.booking-panel .second-choice>p:first-of-type{margin:0 0 14px;}
.booking-panel .contact-method-options{display:flex;gap:12px;flex-wrap:wrap;}
.booking-panel .contact-method-options label{display:flex;align-items:center;gap:8px;flex:1 1 220px;font-size:15px;line-height:1.5;font-weight:700;background:white;padding:12px 10px;border:1px solid #d2e2e5;border-radius:9px;cursor:pointer;}
.booking-panel .contact-method-options input[type=radio]{display:inline-block;width:20px;height:20px;min-width:20px;max-width:20px;margin:0;accent-color:#087e87;}
.booking-panel .field-hint{margin:10px 0 0;color:#506b78;font-size:13px;line-height:1.7;}
.booking-panel #email-field[hidden]{display:none!important;}
@media(max-width:700px){
 .annual-results h2{font-size:15px;text-align:center;}
 #cases .whole-home-example{grid-template-columns:minmax(0,1fr);}
 #cases .whole-home-example img{height:185px;min-height:0;object-fit:cover;object-position:center 30%;}
 #cases .whole-home-example>div{padding:17px;}
 .booking-panel .date-choice,.booking-panel .contact-method{padding:14px 12px;}
 .booking-panel .date-choice-fields{grid-template-columns:minmax(0,1fr);gap:12px;}
 .booking-panel form input[type=date]{min-height:52px;}
 .booking-panel .date-choice-fields :is(input,select){min-height:52px;}
 .booking-panel .contact-method-options{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;}
 .booking-panel .contact-method-options label{flex:none;min-width:0;}
}
@media(max-width:360px){.booking-panel .date-choice,.booking-panel .contact-method{padding:12px 9px;}}

/* iPhone Safari: align the chosen date with the selected time, both starting at the left. */
.booking-panel .date-choice-fields input[type="date"],
.booking-panel .date-choice-fields select {
  box-sizing:border-box;
  padding-inline:12px;
  text-align:left;
  text-align-last:left;
  direction:ltr;
}
.booking-panel .date-choice-fields input[type="date"]::-webkit-date-and-time-value {
  text-align:left;
  min-height:1em;
  width:100%;
  margin:0;
}
.booking-panel .date-choice-fields input[type="date"]::-webkit-datetime-edit {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  text-align:left;
  padding:0;
  width:100%;
}
.booking-panel .date-choice-fields input[type="date"]::-webkit-datetime-edit-fields-wrapper {
  padding:0;
  text-align:left;
}
/* Keep date and time matching heights/widths on small screens. */
@media(max-width:700px){
 .booking-panel .date-choice-fields :is(input[type="date"],select){
   width:100%;min-width:0;max-width:100%;height:52px;line-height:1.3;
 }
 #cases .whole-home-example img{height:218px;object-position:center 55%;}
}


/* 買取品目一覧: 8件の続きに15件を同じグリッドで開く（2026-11-05） */
.featured-items-grid {align-items:start}
.featured-items-grid .featured-item {min-width:0}
.featured-items-grid .featured-item > summary {display:block;list-style:none;cursor:pointer;position:relative;outline-offset:3px}
.featured-items-grid .featured-item > summary::-webkit-details-marker {display:none}
.featured-items-grid .featured-item > summary img {display:block;width:100%;aspect-ratio:1.48;object-fit:cover}
.featured-items-grid .featured-item > summary .item-name {position:relative;padding-right:25px;line-height:1.45}
.featured-items-grid .featured-item > summary .item-name::after {content:'＋';position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:16px;color:#18718d;font-weight:700}
.featured-items-grid .featured-item[open] > summary .item-name::after {content:'−'}
.featured-items-grid .featured-item > p {font:500 13px/1.7 var(--gothic);color:#4b6372;margin:0;padding:0 13px 16px;text-align:left}
.featured-items-grid .featured-item--additional[hidden],#additional-items-note[hidden] {display:none!important}
.featured-items-grid.is-expanded .featured-item--additional {animation:eco-item-appear .28s ease both}
@keyframes eco-item-appear {from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.featured-bottom {margin-top:18px}
.featured-items-section #additional-items-note {margin-top:22px}
@media(max-width:700px){
  .featured-items-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .featured-items-grid .featured-item > summary .item-name {font-size:clamp(12px,3.6vw,15px);min-height:51px;padding:9px 24px 9px 7px}
  .featured-items-grid .featured-item > summary .item-name::after {right:6px;font-size:14px}
  .featured-items-grid .featured-item > p {font-size:12px;padding:0 10px 13px}
  .featured-bottom{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.featured-items-grid.is-expanded .featured-item--additional{animation:none}}
