#s1 {
  max-width: 1000px;
  width: 100%;
  margin: 40px auto 200px;
}

.heading_ttl_top {
  padding: 30px 0 15px;
}

.heading_ttl {
  padding: 30px 0 30px;
}

.fade {
  width: 800px;
  margin: 0 auto;
  border-width: 0 0 1px;
  border-image: linear-gradient(90deg,
      hsla(0, 0%, 100%, 0),
      hsla(0deg 0% 72% / 50%) 50%,
      hsla(0, 0%, 100%, 0) 100%) 0 0 100%;
  border-style: solid;
}

.news_fb {
  gap: 0 50px;
}

.news_outer {
  width: 100%;
}

.news_outer article {
  border-bottom: 1px solid #ccc;
  display: block;
  position: relative;
  overflow: hidden;
  z-index: 0;
}

.news_outer article::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scaleY(0);
  transform-origin: top center;
  background-color: #f7f7f7;
  content: '';
  transition: .5s;
  transition-property: transform;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  z-index: -1;
}

.news_outer article:hover::before {
  transform: scaleY(1);
  transform-origin: bottom center;
}

.news_list {
  display: flex;
  align-items: center;
  padding: 30px 25px;
}

.news_list_l {
  text-align: center;
  margin-right: 30px;
}

.news_list_date {
  font-size: 2rem;
  font-weight: 500;
}

.news_list_ttl {
  font-size: 2rem;
  margin: 0;
  padding: 0;
  font-weight: normal;
  word-break: break-all;
  color: #323434;
  line-height: 29px;
}

@media (width < 770px) {
  .heading_ttl {
    padding: 0 0 30px;
  }

  #s1,
  #s1_sub {
    margin-top: 170px;
    width: 100%;
    padding: 0 20px;
  }

  #s1.sp_ttl {
    margin-top: 170px;
  }

  .sp_ttl .heading_ttl h2 {
    font-size: 2.5rem;
    text-align: left;
  }

  .news_outer {
    margin-bottom: 50px;
  }

  .news_list {
    flex-wrap: wrap;
  }

  .news_list_l {
    display: flex;
    align-items: center;
    gap: 20px;
  }

  .news_list_ttl {
    margin-top: 20px;
  }
}

/*********** 個別ニュースページ **********/

.heading_date {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 30px;
  gap: 24px;
}

.heading_news_date {
  font-size: 2.1rem;
  font-weight: 500;
  margin-right: 40px;
  letter-spacing: 1px;
}

.heading_btm {
  position: relative;
  padding-left: 40px;
}

.heading_btm::before {
  position: absolute;
  transform: translateX(-50%);
  width: 100px;
  content: '';
  bottom: 0;
  left: 50px;
  height: 100%;
  border-bottom: none;
  border-left: 20px solid #35886e;
}

.news_cont_txt {
  margin-top: 30px;
  word-break: break-all;
}

.news_cont_txt a {
  text-decoration: underline;
  color: #136556;
}

.news_cont_txt a:hover {
  text-decoration: none;
}

.nct2 p {
  margin-top: 20px;
}

.nct2 .ntc_ttl {
  font-size: 2rem;
  font-weight: bold;
}

.news_tbl {
  width: 100%;
  font-size: 1.8rem;
  border-collapse: collapse;
}

.news_tbl th,
.news_tbl td {
  border: 1px solid #666;
  padding: 10px 20px;
  width: 300px;
}

.news_tbl th {
  text-align: left;
  background: #eee;
}

.news_tbl thead th,
.news_tbl td {
  text-align: center;
}

.news_note p {
  font-size: 1.5rem;
}

.news_app,
.news_contact {
  width: 200px;
  border-radius: 4px;
  line-height: 36px;
}

.news_app a,
.news_contact a {
  color: #fff;
  text-decoration: none;
  font-size: 1.8rem;
}

.news_link {
  margin: 40px 0;
  padding: 20px 0;
  text-align: center;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  display: block;
  font-size: 1.8rem;
}

.news_link p {
  margin-top: 0;
  margin-bottom: 10px;
}

.sim_btn {
  margin: 80px 0 0 auto;
  width: 152px;
}

.sim_btn a {
  font-size: 1.8rem;
  padding: 10px 30px;
  border: 1px solid #00aa7c;
  color: #00aa7c;
  border-radius: 30px;
  transition: all .3s ease;
}

.sim_btn:hover a {
  background: #35886e;
  color: white;
}

@media (width < 770px) {
  .news_outer {
    width: 100%;
  }

  .news_tbl th,
  .news_tbl td {
    display: block;
    width: 87vw;
  }

  .news_tbl th {
    text-align: center;
  }

  .news_tbl th.bg {
    background: #000;
    color: #fff;
    border: none;
  }

  .sim_btn {
    margin: 80px auto 0;
  }
}

/* 学会・展示会情報 */
.conf_content h4 {
  text-align: center;
  font-size: 1.5rem;
}

.conf_site {
  margin: -15px 0 45px;
}

.conf_site a {
  padding: 10px 40px;
  font-weight: bold;
  border-radius: 3px;
  border: 1px solid #555;
  color: #555;
  text-decoration: none;
  font-size: 1.6rem;
  transition: all .3s ease-in-out;
}

.conf_site a:hover {
  background: #666;
  color: #fff;
}

.conf_cont div {
  margin: -10px 0 10px 0
}

.clearfix:after {
  height: 0;
  visibility: hidden;
  display: block;
  clear: both;
  content: "";
  overflow: hidden;
}

p a.hosp_on_booth {
  display: block;
  font-size: 1.6rem;
  margin: 50px auto 10px auto;
  border: #ac443c 2px solid;
  border-radius: 5px;
  text-align: center;
  text-decoration: none;
  color: #ac443c;
  background: #F8EDE8;
  transition: all .3s ease-in-out;
}

p a.hosp_on_booth:hover {
  background: #F5D7CF
}

ul.conf_3day span {
  color: #fff
}

@media screen and (max-width: 769px) {
  .conf_content {
    margin: 0 0 20px 0
  }

  .conf_content h4 {
    margin: 20px 0 15px 0;
    padding: 0 0 0 45px;
    height: 34px;
    line-height: 34px;
    text-align: left
  }

  .conf_content li {
    margin: 0 0 10px 0
  }

  h4.conf_h4_01 {
    background: url(../news/2024/img/conf_01.png) #e4e4e4 no-repeat left top;
    margin-top: -30px;
  }

  h4.conf_h4_02 {
    background: url(../news/2024/img/conf_02.png) #e4e4e4 no-repeat left top
  }

  h4.conf_h4_03 {
    background: url(../news/2024/img/conf_03.png) #e4e4e4 no-repeat left top
  }

  .conf_cont p {
    font-size: 1.6rem;
  }

  .conf_site {
    margin-top: 30px;
  }

  .conf_site a{
    width: 100%;
    display: block;
    padding: 10px 20px;
    text-align: center;
  }

  .conf_site a span {
    display: none;
  }

  p a.hosp_on_booth {
    padding: 15px 0;
  }
}

@media print,
screen and (min-width: 770px) {
  .conf_content {
    margin: 0 0 50px 0
  }

  .conf_content h4 {
    margin: 0 15px 0 0;
    width: 65px;
    background: #e4e4e4;
    float: left
  }

  .conf_content p,
  .conf_content li {
    font-size: 1.6rem;
    letter-spacing: 0.3px
  }

  .conf_content p br {
    display: none
  }

  .conf_date,
  .conf_date2 {
    width: 320px;
    float: left
  }

  .conf_date {
    height: 85px
  }

  .conf_date2 {
    height: 38px
  }

  .conf_date h4 {
    height: 85px;
    line-height: 85px
  }

  .conf_date2 h4,
  .conf_date2 li {
    height: 38px;
    line-height: 38px
  }

  .conf_date ul,
  .conf_date2 ul,
  .conf_date li,
  .conf_date2 li {
    padding: 0
  }

  .conf_date li {
    margin: 0 0 10px 0
  }

  ul.conf_4day {
    margin: 0;
    padding: 0
  }

  ul.conf_4day li {
    padding: 0;
    margin: 0;
    line-height: 155%
  }

  ul.conf_3day {
    margin: 0
  }

  ul.conf_2day {
    margin: 15px 0 0 0
  }

  ul.conf_1day {
    margin: 30px 0 0 0
  }

  .conf_cont h4 {
    float: left
  }

  .conf_cont p,
  .conf_cont h4 {
    line-height: 38px
  }

  .conf_cont div,
  .conf_cont p,
  .conf_cont h4 {
    height: 38px
  }

  p a.hosp_on_booth {
    width: 70%;
    padding: 15px
  }
}

/* TOP無し */
#no_nav #ham_nav {
  margin-top: 0;
}


@media (width < 770px) {
  .heading_date.no_nav_heading {
    flex-wrap: wrap;
    gap: 10px 24px;
  }

  #s1.sp_ttl.no_nav_sp_ttl {
    margin-top: 110px;
  }

  ul.conf_3day {
    font-size: 1.6rem;
  }
}

/* 個別記事 20250714 */
.dmc_plan {margin: 20px 0 40px;font-size: 1.8rem;}
.dmc_plan dl{margin-bottom: 20px;}
.dmc_plan .dmc_ul{margin-top: 10px;}
.dmc_plan .dmc_ul li,.dmc_ul2 li{margin-bottom: 10px;}
.dmc_plan dt{font-weight: bold;}
.dmc_ul2{margin-top: 20px;}
.dmc_ul2 li{font-weight: bold;font-size: 1.8rem;}

.dmc_p_tbl tr:first-of-type th{text-align: center;}
.dmc_p_tbl tr:first-of-type th:last-of-type,
.dmc_p_tbl tr:nth-of-type(n + 2) th,
.dmc_p_tbl td:last-child{font-weight: bold;}
p.mt50{margin-top: 50px;}
@media print, screen and (min-width: 770px){
.dmc_plan dl{display: flex;}
.dmc_plan dt{width: 150px;}
.dmc_plan dd{width: calc(100% - 150px);}
}

@media screen and (max-width: 769px) {
  .dmc_p_tbl tr:first-of-type{display: none;}
  table.dmc_p_tbl th{text-align: center;}
  table.dmc_p_tbl td{padding: 10px;}
  .dmc_p_tbl td::before {content: attr(data-label);padding: 0 10px;display: inline;text-align: left;display: block;}
}