@charset "UTF-8";

/* ---- お知らせ一覧・詳細（サブページ styles.css とは分離） ---- */

#news,
#news_single {
  --section-color: var(--medix-blue-deep);
  --line-color: var(--medix-blue-deep);
}

/* sub_title_box の負マージン重ねを下側コンテンツが上回る */
#news .news_filter,
#news .news_archive_area,
#news .news_list_empty {
  position: relative;
  z-index: 2;
}

/* ---- カテゴリフィルタ ---- */

#news .news_filter {
  margin: 3.5em auto 3em;
}

#news .news_filter_list {
  gap: 0.75em;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

#news .news_filter_list li a {
  display: inline-block;
  padding: 0.55em 1.15em;
  border: 1px solid var(--medix-blue-deep);
  border-radius: 99px;
  color: var(--medix-blue-deep);
  font-size: 0.9em;
  line-height: 1.3;
  text-decoration: none;
  -webkit-transition: background 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, color 0.2s ease;
}

#news .news_filter_list li.active a,
#news .news_filter_list li a:hover,
#news .news_filter_list li a:focus-visible {
  background: var(--medix-blue-deep);
  color: #fff;
}

/* ---- 一覧 ---- */

#news .news_archive_list {
  border-top: 1px solid #ccc;
}

#news .news_archive_item {
  border-bottom: 1px solid #ccc;
}

#news .news_archive_item[hidden] {
  display: none;
}

#news .news_archive_link {
  gap: 1.5em;
  padding: 1.5em 0;
  color: inherit;
  text-decoration: none;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

#news .news_archive_link:hover,
#news .news_archive_link:focus-visible {
  opacity: 0.75;
}

#news .news_archive_link .img_box {
  position: relative;
  -webkit-flex: 0 0 180px;
  flex: 0 0 180px;
  width: 180px;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #d8e4f2;
}

#news .news_archive_link .img_box img,
#news .news_archive_link .img_box .img_placeholder:not(.is_logo) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#news .news_archive_link .img_box .img_placeholder.is_logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #eef2f7;
}
#news .news_archive_link .img_box .img_placeholder.is_logo img {
  width: 30%;
  max-width: 5.5em;
  height: auto;
  min-height: 0;
  object-fit: contain;
}

#news .news_archive_link .news_cat {
  position: absolute;
  left: 0;
  bottom: 0.75em;
  z-index: 1;
  padding: 0.45em 1em 0.45em 0.75em;
  border-radius: 0 99px 99px 0;
  color: #fff;
  font-size: 0.72em;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
}

#news .news_archive_link .news_cat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--medix-footer-accent);
  z-index: -2;
}

#news .news_archive_link .news_cat::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--medix-blue-deep);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left center;
  transform-origin: left center;
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
  z-index: -1;
}

#news .news_archive_link:hover .news_cat::after,
#news .news_archive_link:focus-visible .news_cat::after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

#news .news_archive_body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
}

#news .news_archive_body time {
  display: block;
  margin: 0 0 0.5em;
  color: var(--medix-footer-accent);
  font-size: 0.85em;
}

#news .news_archive_body .title {
  display: block;
  font-weight: 600;
  line-height: 1.7;
}

/* ---- 0件・該当なし ---- */

#news .news_list_empty {
  padding: 3.5em 1.5em;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  text-align: center;
  color: #888;
  font-size: 0.95em;
  line-height: 1.8;
}

#news .news_archive_area .news_list_empty {
  border-top: none;
}

#news .news_list_empty[hidden] {
  display: none;
}

/* ---- 詳細（一般的な WordPress 投稿レイアウト） ---- */

#news_single {
  padding-top: calc(var(--header-height) + 3em);
  padding-bottom: 5em;
}

#news_single .entry_wrap {
  max-width: 800px;
}

#news_single #breadcrumbs {
  margin: 0 0 1.5em;
}

#news_single .entry_header {
  margin: 0 0 2em;
  text-align: left;
}

#news_single .entry_meta {
  margin: 0 0 0.85em;
  font-size: 0.9em;
  line-height: 1.6;
  color: #666;
}

#news_single .entry_meta time {
  color: #666;
}

#news_single .entry_meta .meta_sep {
  margin: 0 0.5em;
  color: #bbb;
}

#news_single .entry_meta .entry_cat {
  color: var(--medix-blue-deep);
  text-decoration: none;
}

#news_single .entry_meta .entry_cat:hover,
#news_single .entry_meta .entry_cat:focus-visible {
  text-decoration: underline;
}

#news_single .entry_title {
  padding-bottom: 0.85em;
  border-bottom: 1px solid #ddd;
  font-size: clamp(1.45rem, 3.6vw, 1.9rem);
  font-weight: 700;
  line-height: 1.55;
  color: #333;
}

#news_single .entry_eyecatch {
  margin: 0 0 2em;
}

#news_single .entry_eyecatch img {
  display: block;
  width: 100%;
  height: auto;
}

#news_single .entry_lead {
  margin: 0 0 2em;
  font-size: 1.05em;
  line-height: 1.9;
  color: #444;
}

#news_single .entry_content {
  margin: 0 0 2.5em;
}

#news_single .entry_files {
  margin: 0 0 2em;
  padding: 1.25em 1.5em;
  background: #f7f7f7;
  border: 1px solid #e5e5e5;
}

#news_single .entry_files_title {
  margin: 0 0 0.75em;
  font-size: 1em;
  font-weight: 700;
  color: #333;
}

#news_single .entry_notice {
  margin: 0 0 2em;
  padding: 1.25em 1.5em;
  border: 1px solid #e5e5e5;
  border-left: 4px solid var(--medix-footer-accent);
  background: #f7f7f7;
  line-height: 1.8;
}

#news_single.news_cat_safety .entry_notice,
#news_single.news_cat_recall .entry_notice {
  border-left-color: #c0392b;
  background: #fff8f8;
}

/* ---- 安全情報一覧（旧 /company/anzen/ 相当） ---- */

#news.news_cat_safety .safety_intro,
#news.news_cat_safety .safety_table {
  max-width: 46em;
  margin-left: auto;
  margin-right: auto;
}

#news.news_cat_safety .safety_intro {
  margin-bottom: 2.5em;
}

#news.news_cat_safety .safety_intro h2 {
  margin: 0 0 0.85em;
  padding: 0.15em 0 0.45em 0.85em;
  border-left: 4px solid var(--medix-blue-deep);
  border-bottom: 1px solid #d5dde8;
  font-size: 1.2em;
  font-weight: 700;
  line-height: 1.45;
  color: var(--medix-title-en, #3453C3);
}

#news.news_cat_safety .safety_intro p {
  margin: 0;
  line-height: 1.9;
}

#news.news_cat_safety .safety_table {
  margin-bottom: 3em;
}

#news.news_cat_safety .safety_table table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

#news.news_cat_safety .safety_table th,
#news.news_cat_safety .safety_table td {
  padding: 0.7em 0.9em;
  font-size: 0.95em;
}

#news.news_cat_safety .safety_table thead th:first-child,
#news.news_cat_safety .safety_table td:first-child {
  width: auto;
  text-align: left;
}

#news.news_cat_safety .safety_table th:last-child,
#news.news_cat_safety .safety_table td:last-child {
  width: 6.25em;
  text-align: center;
  white-space: nowrap;
}

#news.news_cat_safety .safety_table a {
  color: var(--medix-blue-deep);
  font-weight: 700;
  text-decoration: none;
}

#news.news_cat_safety .safety_table a:hover,
#news.news_cat_safety .safety_table a:focus-visible {
  text-decoration: underline;
}

/* ---- 安全情報・回収情報 詳細 ---- */

#news_single.news_cat_safety,
#news_single.news_cat_recall {
  --detail-blue: #8094DD;
  --detail-blue: var(--medix-blue-deep, #8094DD);
  --detail-title: #3453C3;
  --detail-title: var(--medix-title-en, #3453C3);
  --detail-pink: #e86162;
  --detail-pink: var(--medix-footer-accent, #e86162);
}

#news_single.news_cat_safety .entry_wrap,
#news_single.news_cat_recall .entry_wrap {
  max-width: 960px;
}

#news_single.news_cat_safety .sub_title_box,
#news_single.news_cat_recall .sub_title_box {
  margin-bottom: 1.5em;
}

#news_single.news_cat_safety .detail_contents .content > h2,
#news_single.news_cat_recall .detail_contents .content > h2 {
  margin: 0 0 1.25em;
  padding: 0.15em 0 0.55em 0.85em;
  border-left: 4px solid var(--detail-blue);
  border-bottom: 1px solid #d5dde8;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.45;
  color: var(--detail-title);
}

#news_single.news_cat_safety .detail_contents .content > h2 .pink_deco,
#news_single.news_cat_recall .detail_contents .content > h2 .pink_deco {
  display: none;
}

#news_single.news_cat_safety .detail_contents .box > p,
#news_single.news_cat_recall .detail_contents .box > p {
  margin: 0 0 1.1em;
  line-height: 1.9;
}

#news_single.news_cat_safety .detail_contents .box > p.tac,
#news_single.news_cat_recall .detail_contents .box > p.tac {
  text-align: right;
  margin: 1.5em 0 1.75em;
}

#news_single.news_cat_safety .detail_contents .box > ul.list,
#news_single.news_cat_recall .detail_contents .box > ul.list {
  margin: 0 0 1.5em;
  padding: 0 0 0 1.25em;
  line-height: 1.85;
}

#news_single.news_cat_safety .detail_contents .box > ul.list a,
#news_single.news_cat_recall .detail_contents .box > ul.list a {
  color: var(--detail-blue);
}

#news_single.news_cat_safety .entry_content.wp_content,
#news_single.news_cat_recall .entry_content.wp_content {
  display: block;
}

#news_single.news_cat_safety .detail_contents,
#news_single.news_cat_recall .detail_contents {
  position: relative;
  z-index: 2;
}

#news_single.news_cat_safety .detail_contents .box:has(.safety_num_item),
#news_single.news_cat_recall .detail_contents .box:has(.safety_num_item),
#news_single.news_cat_safety .detail_contents .box:has(.env_circle_heading),
#news_single.news_cat_recall .detail_contents .box:has(.env_circle_heading) {
  display: block;
  width: 100%;
  margin: 0 0 0.85em;
  padding: 0;
  background: transparent;
}

#news_single.news_cat_safety .safety_num_item,
#news_single.news_cat_recall .safety_num_item {
  display: grid;
  grid-template-columns: 2.1em minmax(0, 1fr);
  gap: 0.85em 1em;
  width: 100%;
  box-sizing: border-box;
  padding: 1.15em 1.25em 1.2em;
  border: 1px solid #d9e1ee;
  border-radius: 6px;
  background: #fff;
  color: #222;
}

#news_single.news_cat_safety .safety_num_item .circle_badge,
#news_single.news_cat_recall .safety_num_item .circle_badge {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  margin-top: 0.15em;
  border-radius: 50%;
  background: var(--detail-pink);
  color: #fff;
  font-size: 0.95em;
  font-weight: 700;
  line-height: 1;
}

#news_single.news_cat_safety .safety_num_item p,
#news_single.news_cat_recall .safety_num_item p {
  margin: 0;
  color: #222;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.85;
  overflow-wrap: break-word;
  word-break: break-word;
}

#news_single.news_cat_safety .env_circle_heading,
#news_single.news_cat_recall .env_circle_heading {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  gap: 0.75em;
  width: 100%;
  max-width: 100%;
  margin: 0 0 1.35em;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.4;
  color: var(--detail-pink);
}

#news_single.news_cat_safety .env_circle_heading:last-child,
#news_single.news_cat_recall .env_circle_heading:last-child {
  margin-bottom: 0;
}

#news_single.news_cat_safety .env_circle_heading .circle_title,
#news_single.news_cat_recall .env_circle_heading .circle_title {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
  font-weight: 400;
  font-size: 1em;
  color: #333;
  line-height: 1.85;
}

#news_single.news_cat_safety .env_circle_heading .circle_badge,
#news_single.news_cat_recall .env_circle_heading .circle_badge {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  width: 1.85em;
  height: 1.85em;
  border-radius: 50%;
  background: var(--detail-pink);
  color: #fff;
  font-size: 0.95em;
  font-weight: 700;
  line-height: 1;
  margin-top: 0.2em;
}

#news_single.news_cat_safety .env_pdf_box,
#news_single.news_cat_recall .env_pdf_box {
  margin: 1.5em 0 0;
}

#news_single.news_cat_safety .env_pdf_btn,
#news_single.news_cat_recall .env_pdf_btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  gap: 0.4em;
  min-height: 2.6em;
  padding: 0.55em 1.15em;
  border: 1px solid var(--detail-blue);
  border-radius: 4px;
  background: #fff;
  color: var(--detail-blue);
  font-weight: 700;
  text-decoration: none;
  line-height: 1.35;
}

#news_single.news_cat_safety .env_pdf_btn .pdf_mark,
#news_single.news_cat_recall .env_pdf_btn .pdf_mark {
  color: var(--detail-pink);
  font-size: 0.85em;
}

#news_single.news_cat_safety .env_pdf_btn:hover,
#news_single.news_cat_safety .env_pdf_btn:focus-visible,
#news_single.news_cat_recall .env_pdf_btn:hover,
#news_single.news_cat_recall .env_pdf_btn:focus-visible {
  background: var(--detail-blue);
  color: #fff;
}

#news_single.news_cat_safety .env_pdf_btn:hover .pdf_mark,
#news_single.news_cat_safety .env_pdf_btn:focus-visible .pdf_mark,
#news_single.news_cat_recall .env_pdf_btn:hover .pdf_mark,
#news_single.news_cat_recall .env_pdf_btn:focus-visible .pdf_mark {
  color: #fff;
}

#news_single .entry_nav {
  margin: 3em 0 0;
  padding: 1.5em 0 0;
  border-top: 1px solid #ddd;
}

#news_single .back_link {
  display: inline-block;
  color: var(--medix-blue-deep);
  font-size: 0.95em;
  text-decoration: none;
}

#news_single .back_link:hover,
#news_single .back_link:focus-visible {
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  #news .news_filter_list {
    gap: 0.5em;
  }

  #news .news_filter_list li a {
    padding: 0.45em 0.85em;
    font-size: 0.82em;
  }

  #news .news_archive_link {
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    flex-direction: column;
    gap: 1em;
  }

  #news .news_archive_link .img_box {
    width: 100%;
    -webkit-flex-basis: auto;
    flex-basis: auto;
  }
}
