/* 共通ガイドの青・黄を継承。梱包手順と箱の断面図を主役にする。 */
.packing-guide { --packing-ink: #1f2937; --packing-blue: #1867c0; --packing-pale: #edf6fc; --packing-yellow: #ffe400; --packing-paper: #fff; }
.packing-guide .erase-content p { line-height: 1.95; }
.packing-guide .erase-content p + p { margin-top: 14px; }
.packing-photo { display: block; width: 100%; max-width: 480px; height: auto; margin: 26px auto 0; border-radius: 8px; }
.packing-materials { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 25px; }
.packing-materials > div { border-top: 4px solid var(--packing-blue); padding-top: 14px; }
.packing-guide h3 { font-size: 18px; font-weight: 700; line-height: 1.7; margin-bottom: 8px; }
.packing-materials p { font-size: 14px; }
.packing-material-image { display: block; width: 120px; height: 120px; object-fit: contain; margin: 0 auto 16px; }
.packing-shipping-figure { margin: 22px 0; }
.packing-shipping-figure img { display: block; width: 100%; max-width: 600px; height: auto; margin: auto; }
.packing-shipping-figure figcaption { text-align: center; font-size: 14px; line-height: 1.8; margin-top: 10px; color: #145da6; }
.packing-steps { list-style: none; counter-reset: packing; padding: 0; margin: 25px 0; }
.packing-steps li { counter-increment: packing; position: relative; padding: 0 0 30px 57px; }
.packing-steps li::before { content: counter(packing); position: absolute; left: 0; top: 1px; width: 37px; height: 37px; display: grid; place-items: center; background: var(--packing-blue); color: #fff; border-radius: 50%; font-weight: 900; }
.packing-steps li:not(:last-child)::after { content: ''; position: absolute; left: 18px; top: 42px; bottom: 5px; border-left: 2px solid #c9deef; }
.packing-figure { margin: 24px 0; padding: 28px; background: var(--packing-pale); }
.packing-cutaway { max-width: 420px; margin: auto; border: 9px solid #967045; background: #fff; padding: 12px; text-align: center; }
.packing-cushion { display: block; background: #dcebf7; border: 2px dashed #638bac; padding: 13px 5px; color: #284b69; }
.packing-middle { display: grid; grid-template-columns: 1fr 3fr 1fr; gap: 10px; margin: 10px 0; }
.packing-middle > span { display: grid; place-content: center; background: #dcebf7; border: 2px dashed #638bac; padding: 10px 0; color: #284b69; }
.packing-middle strong { display: grid; place-content: center; border: 3px solid var(--packing-blue); background: #fff; color: #145da6; padding: 18px 5px; }
.packing-figure figcaption { text-align: center; margin-top: 18px; font-size: 14px; line-height: 1.8; }
.packing-carrier { margin: 24px 0; border-left: 6px solid var(--packing-yellow); background: var(--packing-pale); padding: 22px; }
.packing-fee { margin: 24px 0; padding: 22px; background: #fffbea; border: 1px solid #dfc800; }
@media (max-width: 600px) { .packing-materials { grid-template-columns: 1fr; gap: 20px; } .packing-steps li { padding-left: 49px; } .packing-figure { padding: 20px 12px; } .packing-cutaway { padding: 8px; border-width: 7px; } .packing-middle { gap: 6px; } .packing-middle strong { font-size: 14px; } }
