.products-page *, .products-page *::before, .products-page *::after {
  box-sizing: border-box;
  letter-spacing: 0;
}
.products-page .renewal-main { padding-bottom: 64px; }
.products-utility { border-bottom: 1px solid #d6e0e7; background: #fff; }
.products-utility .renewal-inner { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.products-utility a {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 64px; padding: 12px; border-bottom: 3px solid transparent;
  color: #425466; text-align: center; font-weight: 700;
}
.products-utility a:hover { background: #edf5f7; }
.products-utility a[aria-current] { color: #fff; background: #1a4671; border-color: #49aab0; }
.products-breadcrumb { display: flex; flex-wrap: wrap; gap: 6px 10px; padding: 24px 0; font-size: 1.3rem; }
.products-breadcrumb a { color: #1a4671; text-decoration: underline; text-underline-offset: 3px; }
.products-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 40px; align-items: start; }
.products-sidebar { min-width: 0; font-size: 1.4rem; }
.products-sidebar details { border-top: 3px solid #23889a; }
.products-sidebar summary { padding: 16px 0; color: #1a4671; font-size: 1.7rem; font-weight: 700; cursor: pointer; }
.products-sidebar summary i { float: right; padding-top: 5px; }
.products-sidebar details[open] summary i { transform: rotate(180deg); }
.products-category-nav li { border-bottom: 1px solid #d6e0e7; padding: 12px; overflow-wrap: anywhere; }
.products-category-nav a { display: block; color: #1a4671; }
.products-category-nav a:hover { color: #167582; text-decoration: underline; }
.products-category-nav a:focus-visible { outline: 2px solid #23889a; outline-offset: -2px; }
.products-category-nav br { display: none; }
.products-category-nav :is(.top, .top_f2) { background: #edf1f4; border-left: 3px solid transparent; color: #1a4671; font-weight: 700; }
.products-category-nav :is(.top, .top_f2) > a { margin: -12px; padding: 12px; }
.products-category-nav .top_f2 { background: #e6f1f2; border-left: 3px solid #23889a; font-weight: 700; }
.products-category-nav .sub1 { margin-left: 12px; border-left: 2px solid #d6e0e7; padding: 8px 12px 8px 16px; background: #fff; color: #425466; font-size: 1.3rem; }
.products-category-nav .sub1 > a { margin: -8px -12px -8px -16px; padding: 8px 12px 8px 16px; color: inherit; }
.products-category-nav .sub1:not(:has(a)) { color: #172331; font-weight: 700; background: #f1f5f7; border-left-color: #23889a; }
.products-category-nav li:has(> a:is(:hover, :focus-visible)) { background: #dcebef; }
.products-category-nav .top_f2:has(> a:is(:hover, :focus-visible)) { background: #cee4e7; }
.products-account { display: grid; gap: 12px; margin-top: 24px; padding: 20px 0; border-top: 1px solid #d6e0e7; }
.products-account p { flex-basis: 100%; color: #526471; font-size: 1.3rem; }
.products-account a { color: #1a4671; text-decoration: underline; text-underline-offset: 4px; }
.products-account a[aria-current] { font-weight: 700; }
.products-contact { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 16px 12px; background: #1a4671; color: #fff; }
.products-content { min-width: 0; overflow-wrap: anywhere; }
.products-page-heading { margin: 0 0 24px; padding-bottom: 16px; border-bottom: 2px solid #23889a; color: #1a4671; font-size: 2.6rem; font-weight: 700; line-height: 1.5; scroll-margin-top: 24px; }
.products-content img { max-width: 100%; height: auto; }
.products-content p { margin-bottom: 16px; }
.products-content a { color: #1a4671; text-decoration: underline; text-underline-offset: 3px; }
.products-content a:hover { color: #167582; }
.products-content .l35, .products-content .l35tit { margin: 0 0 28px; }
.products-content .l35t12 { margin: 20px 0; }
.products-content .tit_series { margin-bottom: 12px; color: #1a4671; font-size: 2.2rem; font-weight: 700; line-height: 1.6; }
.products-content .tit_category { color: #526471; margin-bottom: 16px; }
.products-content .l35tit > br[clear] { display: none; }
.products-content .tit_series font { color: inherit; }
.products-content p:empty, .products-content p:has(> br:only-child) { margin: 0; }
.products-section-heading { margin: 32px 0 16px; font-size: 2rem; font-weight: 700; color: #1a4671; }
.products-home-body #l35i ul { border-top: 1px solid #d6e0e7; }
.products-home-body #l35i li { padding: 16px 0; border-bottom: 1px solid #d6e0e7; }
.products-content .thumb { display: flex; align-items: center; justify-content: center; min-height: 140px; margin-bottom: 16px; }
.products-content .thumb img { max-height: 140px; object-fit: contain; }
.products-content .sir1_tit { color: #526471; font-size: 1.3rem; }
.products-content .co_table, .products-listing-body .l35 > table { display: block; width: 100%; }
.products-content .co_table > tbody, .products-listing-body .l35 > table > tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.products-content .co_table tr, .products-listing-body .l35 > table > tbody > tr { display: contents; }
.products-content :is(.co_table_td, .co_table_td2, .thum_l, .thum_r) { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 20px; border: 1px solid #d6e0e7; border-radius: 4px; }
.products-content :is(.co_table_td, .co_table_td2, .thum_l, .thum_r) .thumb { align-self: stretch; }
.products-content .products-detail-link { display: inline-flex; align-items: center; gap: 12px; margin-top: auto; padding-top: 12px; font-weight: 700; }
.products-content img[alt="new"] { margin-top: 8px; }
.products-detail-body .item_img { float: right; max-width: 45%; margin: 0 0 24px 24px; }
.products-detail-body .l35 { display: flow-root; }
.products-video { margin: 0 0 24px; max-width: 800px; }
.products-video figcaption { margin-bottom: 8px; font-weight: 700; }
.products-video video { display: block; width: 100%; aspect-ratio: 16 / 9; background: #111; object-fit: contain; margin-bottom: 8px; }
.products-detail-body table { display: block; max-width: 100%; overflow-x: auto; }
.products-detail-body :is(ul, ol) { padding-left: 24px; list-style: revert; }
.products-detail-body #tit_category { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; }
.products-detail-body #tit_category a { display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px; border: 1px solid #1a4671; text-decoration: none; font-weight: 700; }
.products-downloads-body > .l35 { margin: 0; border-bottom: 1px solid #d6e0e7; }
.products-downloads-body > .l35 .tit_series { margin: 0; font-size: 1.7rem; }
.products-downloads-body > .l35 .tit_series a { display: block; padding: 18px 4px; text-decoration: none; }
.products-downloads-body > .l35 > br { display: none; }
.products-downloads-body > .l35 .tit_series a::after { content: '\2192'; float: right; }
.products-content #l35t12dl > table { display: block; width: 100%; }
.products-content #l35t12dl > table > tbody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.products-content #l35t12dl tr { display: contents; }
.products-content #l35t12dl td { display: block; min-width: 0; padding: 0 0 20px; border-bottom: 1px solid #d6e0e7; }
.products-content .dwl_name { padding: 12px 0; color: #1a4671; font-size: 1.8rem; font-weight: 700; }
.products-content .dwl_name a { scroll-margin-top: 24px; text-decoration: none; }
.products-content #l35t12dl li { margin: 10px 0; color: #526471; font-size: 1.4rem; }
.products-content #l35t12dl li a { font-size: 1.5rem; }
.products-network-body > :is(.l35, .l35t12):has(.net_body) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 20px 28px; padding: 24px 0; margin: 0; border-bottom: 1px solid #d6e0e7; }
.products-network-body :is(.net_name, .net_name1) { color: #1a4671; font-weight: 700; }
.products-network-body :is(.net_name, .net_name1) img { vertical-align: middle; margin: 0 8px 0 0; }
.products-network-body :is(.net_name, .net_name1) br { display: none; }
.products-network-body .net_body1 { grid-column: 2; }
.products-network-body br[clear] { display: none; }
.products-network-body li { margin-bottom: 6px; }
.products-form-body { max-width: 820px; }
.products-cad-login { max-width: 480px; }
.products-cad-login form > div { margin-bottom: 18px; }
.products-cad-login label { display: block; }
.products-form-body .tit_series { font: inherit; color: inherit; }
.products-form-body table { width: 100%; max-width: 100%; border: 0; margin: 0; border-collapse: collapse; background: #fff; }
.products-form-body td { padding: 0; height: auto; background: #fff; white-space: normal; }
.products-form-body .user_register3 td { padding: 18px 12px; border: 0; border-bottom: 1px solid #d6e0e7; vertical-align: top; }
.products-form-body .user_register3 td.doc3 { width: 34% !important; background: #f1f5f7; }
.products-form-body .user_register3 td.input { width: 66% !important; background: #fff; }
.products-form-body .user_register3 td.main { width: 100% !important; padding: 0 0 16px; background: #fff; }
.products-form-body .user_register3 p { margin: 0; }
.products-form-body .main_form_b { display: inline-block; color: #a2333a; font: inherit; font-size: 1.2rem; }
.products-form-body :is(input, select, textarea, button) { font: inherit; }
.products-form-body input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="reset"]),
.products-form-body :is(select, textarea) { width: 100%; max-width: 100%; padding: 10px 12px; border: 1px solid #899aa5; border-radius: 3px; background: #fff; color: #172331; }
.products-form-body input[name="zip"] { max-width: 180px !important; }
.products-form-body .products-zip-control { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.products-form-body .products-zip-control button { margin: 0; }
.products-form-body #zip-status { font-size: 1.3rem; line-height: 1.6; margin-top: 8px; }
.products-form-body textarea { min-height: 160px; resize: vertical; }
.products-form-body :is(input, select, textarea, button):focus-visible { outline: 2px solid #23889a; outline-offset: 2px; }
.products-form-body :is(input[type="submit"], input[type="reset"], button) { max-width: 100%; min-height: 44px; margin: 8px 4px 8px 0; padding: 10px 20px; border: 1px solid #1a4671; border-radius: 3px; background: #1a4671; color: #fff; white-space: normal; cursor: pointer; }
.products-form-body :is(input[name="reset"], input[name="edit"]) { background: #fff; color: #1a4671; }
.products-form-body :is(input, button):disabled { opacity: .45; cursor: not-allowed; }
.products-form-body :is(input[type="radio"], input[type="checkbox"]) { width: 20px; height: 20px; flex-shrink: 0; accent-color: #1a4671; vertical-align: middle; }
.products-form-body label { display: inline-block; max-width: 100%; padding: 6px 0; }
.products-form-body .products-privacy { padding: 24px 0; text-align: center; }
.products-form-body .products-privacy label { display: inline-flex; align-items: center; gap: 10px; margin-top: 12px; }
.products-form-body .products-privacy input { margin: 0; }
.products-form-body .products-privacy a { text-decoration: underline; text-underline-offset: 3px; }
.products-form-body .reminder td { border: 0; padding: 12px 0; }
.products-form-body .reminder td.doc3:first-child { width: 30%; padding-right: 12px; }
.products-form-body [role="alert"] { padding: 20px; border-left: 3px solid #a2333a; background: #fbf0f1; }
.products-page #pagetop { bottom: -500px; transition: bottom .3s; }
.products-page #pagetop.is-visible { bottom: 90px; }
@media (max-width: 900px) {
  .products-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .products-sidebar details { border-bottom: 1px solid #d6e0e7; }
  .products-sidebar summary { display: block; }
  .products-account { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0; padding: 16px 0; border: 0; }
  .products-page-heading { font-size: 2.4rem; scroll-margin-top: 72px; }
}
@media (min-width: 901px) {
  .products-sidebar summary { list-style: none; cursor: default; }
  .products-sidebar summary i { display: none; }
}
@media (max-width: 600px) {
  .products-content .dwl_name a { scroll-margin-top: 72px; }
  .products-utility .renewal-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
  .products-utility a { min-height: 54px; font-size: 1.4rem; }
  .products-content .co_table > tbody, .products-listing-body .l35 > table > tbody,
  .products-content #l35t12dl > table > tbody { grid-template-columns: minmax(0, 1fr); }
  .products-detail-body .item_img { float: none; max-width: 100%; margin: 0 0 24px; text-align: center; }
  .products-network-body > :is(.l35, .l35t12):has(.net_body) { grid-template-columns: minmax(0, 1fr); }
  .products-network-body .net_body1 { grid-column: 1; }
  .products-form-body .user_register3, .products-form-body .user_register3 tbody,
  .products-form-body .user_register3 tr, .products-form-body .user_register3 td,
  .products-form-body .reminder, .products-form-body .reminder tbody,
  .products-form-body .reminder tr, .products-form-body .reminder td { display: block; width: 100% !important; }
  .products-form-body .user_register3 td.doc3 { width: 100% !important; padding: 12px 0 6px; border: 0; background: #fff; }
  .products-form-body .user_register3 td.input { width: 100% !important; padding: 0 0 18px; border-bottom: 1px solid #d6e0e7; }
  .products-form-body :is(input[type="submit"], input[type="reset"], button) { padding: 10px 12px; }
}
