/* 詳細ページ専用のレイアウト調整 */
        .main-wrapper { display: flex; max-width: 95%; margin: 30px auto; padding: 0 20px; gap: 25px; }
        #main_contents { flex: 1; min-width: 0; background: #fff; padding: 20px; border: 1px solid #eee; }

        .detail-container { display: flex; gap: 30px; align-items: flex-start; }
        .detail-visual { width: 55%; flex-shrink: 0; }

        .main-image-wrapper {
            width: 100%; height: 600px; border: 1px solid #eee; background: #fff; 
            margin-bottom: 15px; overflow: hidden; position: relative; cursor: zoom-in;
        }
        .main-image-wrapper img {
            width: 100%; height: 100%; object-fit: contain;
            transition: transform 0.1s ease-out; transform-origin: 0 0;
        }

        .thumbnail-wrapper { display: flex; gap: 10px; }
        .thumbnail {
            width: calc(25% - 8px); height: 80px; border: 1px solid #ccc;
            cursor: pointer; object-fit: contain; background: #fff; transition: 0.2s;
        }
        .thumbnail:hover { border-color: DeepSkyBlue; opacity: 0.8; }

        .detail-info { flex: 1; }
        .item-name { font-size: 22px; line-height: 1.4; border-bottom: 2px solid DeepSkyBlue; padding-bottom: 10px; margin-bottom: 20px; color: #333; }

        .contact-button {
            display: block; background: #FF9900; color: #fff; text-align: center;
            padding: 15px; text-decoration: none; font-weight: bold; border-radius: 5px;
            margin-bottom: 20px; transition: 0.3s;
        }
        .contact-button:hover { background: #e68a00; }
        .back-button { color: #666; text-decoration: none; font-size: 14px; }