/* Shared responsive layer for the preserved static site. Desktop layout stays original. */
.sc-site img { max-width: 100% !important; height: auto !important; object-fit: contain; }
.sc-site :is(video, iframe, object, embed) { max-width: 100% !important; }
.sc-site video { object-fit: contain; }
@media (max-width: 995px) {
  body.sc-site { margin: 0; padding: 0 12px; overflow-wrap: anywhere; }
  .sc-site *, .sc-site *::before, .sc-site *::after { box-sizing: border-box; }
  .sc-site :is(div, section, article, main, header, footer, nav, figure, form, table, pre, blockquote) { max-width: 100%; min-width: 0; }
  .sc-site :is(p, h1, h2, h3, h4, h5, h6, li, td, th, a, span) { overflow-wrap: anywhere; }
  .sc-site :is(img, svg, canvas, video, iframe, object, embed) { max-width: 100% !important; }
  .sc-site img { height: auto !important; object-fit: contain; }
  .sc-site video { width: 100% !important; height: auto !important; object-fit: contain; }
  .sc-site iframe { width: 100% !important; }
  .sc-site :is(iframe[data-supercan-video], iframe.sc-video-frame) { height: auto !important; aspect-ratio: 16 / 9; display: block; }
  .sc-site :is(input, textarea, select, button) { max-width: 100%; }
  .sc-site pre { white-space: pre-wrap; }
  .sc-site .sc-fluid-block { width: 100% !important; height: auto !important; min-width: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
  .sc-site .sc-wrap-block { height: auto !important; white-space: normal !important; }
  .sc-desktop > div { width: 100% !important; max-width: 956px; height: auto !important; margin-inline: auto !important; }
  .sc-site .sc-brand-banner { width: 100% !important; height: auto !important; }
  .sc-site .sc-brand-banner a { display: block; }
  .sc-site img.sc-brand-image { width: 100%; height: 120px !important; object-fit: cover; object-position: left; }

  .sc-site #cssmenu { width: 100% !important; height: auto !important; }
  .sc-site #cssmenu > ul { display: flex; flex-wrap: wrap; }
  .sc-site #cssmenu > ul > li { float: none; min-width: 0; flex: 1 1 0; }
  .sc-site #cssmenu > ul > li > a { min-height: 44px; padding: 14px 8px; font-size: 14px; line-height: 1.3; }
  .sc-site #cssmenu > ul > li > a > span { font-size: inherit; }
  .sc-site #cssmenu > ul > li > ul { top: 100%; left: 0; width: 200px; max-width: calc(100vw - 24px); }
  .sc-site #cssmenu > ul > li:last-child > ul { left: auto; right: 0; }
  .sc-site #cssmenu > ul > li:focus-within > ul { display: block; }
  .sc-site #cssmenu a:focus-visible { outline: 2px solid #fff; outline-offset: -3px; }

  .sc-site #kinMaxShow { height: auto !important; overflow: hidden !important; }
  .sc-site #kinMaxShow .kinMaxShow_image_box { height: auto !important; aspect-ratio: 956 / 400; }
  .sc-site #kinMaxShow .kinMaxShow_image_item,
  .sc-site #kinMaxShow .kinMaxShow_image_item a { height: 100% !important; }
  .sc-site #kinMaxShow .kinMaxShow_image_item { background-size: contain !important; }
  .sc-site #kinMaxShow .kinMaxShow_button { position: static !important; display: flex; justify-content: center; align-items: center; gap: 10px; min-height: 32px; padding: 8px 0 !important; margin: 0 !important; }
  .sc-site #kinMaxShow .kinMaxShow_button li { float: none !important; flex: 0 0 14px; margin: 0 !important; }

  .sc-site :is(#middle, #main, #view_content, #intro_0200_1, .cont) { max-width: 100%; min-width: 0; }
  .sc-site #main.sc-two-column { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(0, 2.8fr); gap: 16px; }
  .sc-site #main.sc-two-column > :is(#c, #b) { float: none !important; width: auto !important; min-width: 0; margin: 0 !important; }
  .sc-site #c > div { width: auto !important; margin: 0 !important; padding: 10px; }
  .sc-site #c > div > div, .sc-site #c > div > div > div { width: auto !important; max-width: 100%; }
  .sc-site #b { padding: 0; }
  .sc-site .Title_DIv { width: auto !important; height: auto !important; margin-left: 0 !important; margin-right: 0 !important; white-space: normal; }
  .sc-site .sc-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin-bottom: 16px !important; padding-bottom: 12px !important; }
  /* Fixed row-break spacers are replaced by grid gaps. */
  .sc-site .sc-card-grid > .sc-fluid-block[style*="height:40px"] { display: none; }
  .sc-site .sc-card-grid > .sc-product-card { width: auto !important; min-width: 0; margin: 0 !important; float: none !important; }
  .sc-site .sc-product-card img { display: block; margin-inline: auto; }
  .sc-site .sc-product-card div[align="center"] { height: auto !important; padding: 6px !important; }

  .sc-site table { width: 100% !important; max-width: 100% !important; table-layout: fixed; }
  .sc-site :is(td, th) { height: auto !important; white-space: normal !important; vertical-align: top; }
  .sc-site .sc-fixed-cell { width: auto !important; }
  .sc-site :is(#zSlider, #picshow, #picshow_img, #picshow_img li) { width: 100% !important; height: auto !important; float: none !important; }
  .sc-site #picshow_img img { width: 100% !important; height: auto !important; object-fit: contain; }
  .sc-site #picshow_tx { position: static !important; width: 100% !important; height: auto !important; }
  .sc-site #picshow_tx li { height: auto !important; padding: 10px; }
  .sc-site #picshow_tx li p { height: auto !important; }
  .sc-site #select_btn { width: 100% !important; height: auto !important; float: none !important; }
  .sc-site #select_btn li { width: 100% !important; height: auto !important; min-height: 72px; }

  .sc-site :is(.footer, .footer .foot, .footer .text, #di_copytight, #di_keywords, #di_outlink, .link, .link .linktit, .link .linkcont) { width: 100% !important; height: auto !important; white-space: normal; }
  .sc-site .footer .foot { min-height: 35px; padding: 8px; line-height: 2.2; overflow: visible; }
  .sc-site :is(#di_copytight, #di_keywords, #di_outlink) { padding: 6px 0; line-height: 1.9; }

  .sc-mobile .container1 { width: 100%; padding-inline: 12px; }
  .sc-mobile .container1 > .row { margin-inline: 0; }
  .sc-mobile :is(.prod_intro, .index_intro, .List_detail, .List_pdf, .cv) { max-width: 100%; height: auto !important; }
  .sc-mobile :is(.List_P_Div, .List_LP_Div, .List_L_Div, .news_list_css) { height: auto !important; min-height: 3.2em; line-height: 1.6; padding-block: 8px; overflow: visible; }
  .sc-mobile .List_P_Div img { max-width: 35% !important; }
  .sc-mobile .gotop { right: 12px; margin-right: 0; }
  .sc-simple { font-size: 16px; line-height: 1.7; }
  .sc-simple h1 { font-size: clamp(24px, 6vw, 32px); line-height: 1.4; }
  .sc-demo :is(.wraper, .footer footer, #piecemaker, .unleash_wrap, #obo_slider) { max-width: 100% !important; width: 100% !important; }
}

@media (max-width: 700px) {
  .sc-site #main.sc-two-column { grid-template-columns: minmax(0, 1fr); }
  .sc-site #main.sc-two-column > #b { order: -1; }
  .sc-site .sc-stack-table,
  .sc-site .sc-stack-table > :is(tbody, thead, tfoot),
  .sc-site .sc-stack-table > :is(tbody, thead, tfoot) > tr,
  .sc-site .sc-stack-table > tr,
  .sc-site .sc-stack-table :is(td, th) { display: block; width: 100% !important; height: auto !important; }
  .sc-site .sc-stack-table tr { margin-bottom: 16px; border: 1px solid #ccc; }
  .sc-site .sc-stack-table :is(td, th) { padding: 8px; border: 0; }
  .sc-site .sc-stack-table .sc-table-header { display: none !important; }
  .sc-site .sc-stack-table td[data-sc-label]::before { content: attr(data-sc-label) "："; display: block; font-weight: bold; color: #365619; }
}

@media (max-width: 480px) {
  .sc-site #cssmenu > ul > li { flex-basis: 50%; }
  .sc-site #cssmenu > ul > li:last-child:nth-child(odd) { flex-basis: 100%; }
  .sc-site #cssmenu > ul > li:nth-child(even) > ul { left: auto; right: 0; }
  .sc-site .sc-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sc-site .sc-card-grid > :not(.sc-product-card) { grid-column: 1 / -1; }
}
