@charset "utf-8";
/*プログラム ----------------------------------------------------------------------*/
.pro_lung,.pro_lung2 {
/*  background-color:#20539b;*/
  background-color:#7B4523;
  background-color:#562500;
  color:#FFFFFF;
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 5px;
  text-align: center;
}
.pro_lung2 {
  padding: 10px;

}
#program h3{
  line-height: 1.4;
}
#program table {
  width:100% !important;
  border-collapse:collapse;
  margin-top:20px;
}
#program table td {
  padding:2px 0;
  line-height:17px;
  vertical-align:top;
}
#program table td.c0 {
  vertical-align:top;
  padding-right:15px;
  width:60px;
}
#program table td.c0 img {
  padding-bottom:2px;
  max-width: initial;
}

/*  テーマ  */
.pro_ttl {
  display: flex;
}
dt.c1title {
  color:#555555;
  font-size:13px;
  padding: 0 13px 0 0;
  max-width: fit-content;
  white-space: nowrap;
}
#program table td.c2 {
  padding:5px 0 0 0;
  padding:3px 0 5px 0;
  font-size:15px;
  font-weight:bold;
  vertical-align:top;
  color: #660000;
  height: 24px;
}

/*  S / PD / W 演題名  */
#program table.s_title {
  width:555px;
  padding:0;
  margin-top:0;
}
#program table.s_title th {
  width:30px;
  padding:0 1em 0 0;
  font-size:13px;
  font-weight:bold;
  vertical-align:top;
  white-space: nowrap;
  color:#555555;
  text-align:left;
}
#program table.s_title td {
  padding:0 0 5px 0;
  font-size:15px;
  font-weight:bold;
  vertical-align:top;
}

/*  司会の言葉／公募／日時会場  */
.wrapper_day {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 7px;
  padding-bottom:7px;
}
#program table td.c2_day {
  padding-top:5px;
  padding-bottom:3px;
}
main#program .shikai {
  margin-right: auto;
}
main#program .shikai a {
  width: 185px;
  max-height: 25px;
  padding: 5px 10px 5px 20px;
  font-size: 12px;
  text-align: center;
  text-decoration: none;
  color: #660000;
  border: #660000 2px solid;
  display: block;
  line-height: 1;
  text-decoration: none;
  position: relative;
  box-sizing: border-box;
  white-space: nowrap;
  font-weight: bold;
}
main#program .shikai a::before {
  content: "";
  position: absolute;
  left: 10px;
  top: calc(50% - 4px);
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid #660000;
  display: block;
}
main#program .shikai a:hover {
  color: #660000;
  background: rgba(177, 105, 59, 0.2);
}
.day {
  float: right;
  padding-top:0;
  padding-bottom:7px;
}
.c1_day {
  display: flex;
  align-items: flex-end;
  gap: 7px;
}
.koubo {
  width: fit-content;
  min-height: 25px;
  border: 1px dotted #6CCAF8;
  font-size: 12px;
  padding: 3px 7px;
  text-align: center;
  font-weight: normal;
  background-color: #B8E8FF;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.day2 {
  width: fit-content;
  margin-top: 0;
  min-height: 25px;
  border:1px solid #CCC;
  padding:3px 5px;
  font-size:12px;
  font-weight:normal;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.henkou {
  background-color: #cc0000;
  padding: 0.5em 1em;
  color: #fff;
  line-height: 1.6;
}
.yori {
  background-color: #cc0000;
  padding: 0.2em 0.5em;
  color: #fff;
  font-weight: bold;
  font-size: 90%;
}

/*  司会／chairは特別講演  */
#program table.chair {
  width: 100%;
  border-collapse:collapse;
  margin-top:0;
/*  margin-bottom:20px;*/
}
#program table.chair td {
  padding:2px 0;
  line-height:17px;
}
#program table.chair td.c0 {
  vertical-align:top;
  padding-right:15px;
  width:50px;
}
#program table td.c3, #program table.chair td.c3 {
  width:80px;
  padding:2px 0 0 0;
  font-size:11px;
  color:#555555;
  vertical-align:top;
}

#program table td.c4, #program table.chair td.c4 {
  width:200px;
  padding:2px 0 0 10px;
  font-size:14px;
  font-weight:bold;
  vertical-align:top;
  white-space: nowrap;
}
#program table td.c5, #program table.chair td.c5 {
  font-size: 12px;
  padding-bottom:5px;
}
.c4 div {
  margin-top:3px;
  margin-bottom:3px;
}
#program table td.c4 span, #program table.chair td.c4 span,
#program table td.c4_cv span, #program table.chair td.c4_cv span {
  padding-left:5px;
  padding-right:5px;
  font-weight:bold;
  color:#0071BC;
}

#program table td.maru {
  padding-top:15px;
  padding-left:25px;
  padding-bottom:7px;
  font-weight:bold;
  position: relative;
  font-size:105%;
}
#program table td.maru::before {
  position: absolute;
  left: 10px;
  top: 18px;
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #dc667a;
}

#program a:visited, #program a:link {
  text-decoration:underline;
}
#program a:hover {
  color: #777;
  text-decoration: none;
}
#program a:visited.cv, #program a:link.cv {
  color: #0071BC;
  text-decoration:underline;
}
#program a:hover.cv {
  color: #777;
  text-decoration: none;
}

/*各学会リスト*/
#program div.list{
  margin-bottom:20px;
  padding:5px 15px;
  border:2px solid #DDD;
  line-height:1.4em;
}
#program div.list a:hover {
  text-decoration:underline;
}
#program div.list a:visited.red, #program div.list a:link.red {
  color: #C50019;
  text-decoration: none;
}
#program div.list a:hover.red {
  text-decoration:underline;
}
#program ul.list{
  width:100%;
  margin-left:0;
  display: flex;
  flex-wrap: wrap;
}
#program ul.list li {
  list-style:none;
  padding: 3px 2em 3px 13px;
  font-size:13px;
}
#program ul.list li:nth-child(3){
  padding-right: 3em;
}
#program ul.list a {
  position: relative;
  padding-left: 1em;
}
#program ul.list a::before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: solid 1px #333333;
  border-right: solid 1px #333333;
  transform-origin: center;
  transform: rotate(135deg);
  position: absolute;
  position: absolute;
  top: 0;
  left: -5px;
}

.pro_icon_list ul {
  margin-left: 0;
  display: flex;
  flex-direction: column;
}
.pro_icon_list li {
  list-style: none;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  font-weight: bold;
}
.pro_icon_list li span {
  min-width: 60px;
  margin-right: 10px;
  padding: 5px 0;
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
  color: #FFFFFF;
  display: flex;
  justify-content: center;
  background: #7fc21b;
  box-sizing: border-box;
}
.pro_icon_list li:nth-child(2) span {
  background: #33bbee;
}
.pro_icon_list li:nth-child(3) span {
  background: #ee6699;
}
.pro_icon_list li:nth-child(4) span {
  background: #f7c600;
}
.pro_icon_list li:nth-child(5) span {
  background: #ee6633;
}
.pro_icon_list li:nth-child(6) span {
  background: #bb77ee;
}
span.pro_icon {
  padding: 5px 0;
  margin-bottom: 2px;
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
  color: #FFFFFF;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
span.pro_icon.color_jsge {
  background: #7fc21b;
}
span.pro_icon.color_jges {
  background: #33bbee;
}
span.pro_icon.color_jsh {
  background: #ee6699;
}
span.pro_icon.color_jsgs {
  background: #f7c600;
}
span.pro_icon.color_jsgcs {
  background: #ee6633;
}
span.pro_icon.color_jddw {
  background: #bb77ee;
}

table.travel_list{
  border-collapse:collapse;
  margin:20px 0 25px;
}
#program table.list2 td {
  font-size:14px;
  font-weight:bold;
  vertical-align: middle;
}
#program table.list2 td.icon {
  padding-right:10px;
  width:50px;
}

.pro_kei{
  padding: 0;
  margin: 0 0 2.5em;
  border-bottom:4px dotted #999;
}

/* スポンサード */
#program table.spo-tb1 {
  width: 100%;
  margin: 1em 0 2em;
}
#program table.spo-tb1 td {
  border: 1px solid #666666;
  padding: 0.8em 0.5em;
  text-align: center;
}
#program table.spo-tb1 td.left {
  background-color: #f0f0f0;
  text-align: left;
}
#program table.spo-tb1 th {
  border: 1px solid #666666;
  background-color: #ffeff7;
  background-color: #e8f8fd;
  padding: 0.5em;
  font-weight:normal;
}

#program table td.sp_c2 {
  padding:0 0 5px 0;
  font-size:15px;
  font-weight:bold;
  vertical-align:top;
  color: #660000;
  line-height: 1.5;
}
span.c1title {
  color:#555555;
  font-size:13px;
}

#program table.sponsor {
  width:100% !important;
  border-collapse:collapse;
  margin-bottom:30px;
}
#program table.sponsor td {
  padding:2px 0;
  line-height:17px;
  vertical-align:top;
}
#program table.sponsor td.c0 {
  vertical-align:top;
  padding-right:15px;
  width:50px;
}
#program table.sponsor td.sp_c3 {
  width:80px;
  padding:2px 0 0 0;
  font-size:11px;
  color:#555555;
  vertical-align:top;
  white-space: nowrap;
}
#program table.sponsor td.c6 {
  padding:0 0 0 2px;
  font-size:14px;
  font-weight:bold;
  vertical-align:top;
}
#program table.chair + table.sponsor {
/*  margin-top:-15px; */
  margin-top: 5px;
}

/* クリックして表示する */
.sDetail {
  margin: 0 0 20px 65px;
}
.sDetail p.btn {
  background-color: #7c563b;
  padding: 0.3em 0.5em 0.2em 0;
  margin: 10px auto 0.5em;
  font-size: 110%;
  font-weight: bold;
  text-align: center;
  color: #fff;
  position: relative;
  width:170px;
  cursor: pointer;
}
.sDetail_icon::after {
  border-right: 3px solid #fff;
  border-top: 3px solid #fff;
  content: "";
  display: inline-block;
  height: 5px;
  width: 5px;
  position: absolute;
  right: 12px;
  top: 12px;
  transform: rotate(135deg);
}
.sDetail_icon:hover,
.sDetail_icon.active {
  opacity: 0.6;
}
.sDetail.active::after {
  top: 15px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.sDetail_icon.active:after {
  top:15px;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
  transform-origin: center;
}
.session_detail {
  padding-bottom: 0.5em;
  display: none;
}
.session_detail .box {
  background-color: #F7EBE6;
  border-left: 3px solid #7C563B;
  padding:0.5em 1em;
  margin:20px 0;
}
.session_detail dl {
  margin-top:20px;
}
.session_detail dl.title dt {
  width: 160px;
  padding: 1px 0;
  text-align: center;
  float: left;
  clear: left;
  background-color: #473091;
  color: #fff;
  font-size:80%;
}
.session_detail dl.title dd {
  padding: 4px 0 15px 170px;
  line-height:1.4;
  color: #660000;
}
/*.ya-icon {
  padding: 2px 5px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  background-color: #ff6c00;
  border-radius: 5px;
}
.ta-icon {
  padding: 2px 5px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  background-color: #006796;
  border-radius: 5px;
}*/

.young_icon, .travel_icon {
  width: 87px;
  height: 18px;
}

/*------------------------------------------*/
/* タブレット用 */
/*------------------------------------------*/
@media screen and (max-width:959px){

  /*  司会／chairは特別講演  */
  #program table.chair td.c0 {
    width:14%;
  }
  #program table td.c3, #program table.chair td.c3 {
    width: 8%;
  }
  #program table td.c4, #program table.chair td.c4 {
    width: 36%;
  }
  #program table td.c5, #program table.chair td.c5 {
    width: 42%;
  }

  /* 下記は削除しない */
}

/*------------------------------------------*/
/* スマホ用 767px  320px */
/*------------------------------------------*/
@media screen and (max-width:767px){

  /*プログラム ----------------------------------------------------------------------*/
  /*  テーマ  */
  span.c1title {
    display:block;
  }

  /*  司会／chairは特別講演  */
  #program table.chair td.c0 {
    width:50px;
  }
  #program table td.c3, #program table.chair td.c3 {
    width: 100%;
    display: block;
    text-align: left;
  }
  #program table td.c4, #program table.chair td.c4 {
    width: 100%;
    display: block;
    padding:3px 0 3px 10px;
  }
  #program table td.c5, #program table.chair td.c5 {
    width: 100%;
    padding:2px 0 10px 10px;
    display: block;
  }
  #program table td.c2_day {
    padding-top:5px;
    padding-bottom:0;
  }
  .c1_day {
    flex-direction: column;
  }
  .day2-2 {
    margin-left: -50%;
  }
  #program table.s_title th {
    width: 100%;
    display: block;
  }
  #program table.s_title td {
    width: 100%;
    display: block;
  }

  .session_detail dl {
    margin-top:10px;
  }
  .session_detail dl.title dt {
  float: none;
  clear: none;
}
.session_detail dl.title dd {
  padding: 4px 0 5px 0px;
}

  /* スポンサード */
/*  #program table.chair + table {
    margin-top:-20px;
  }*/
  #program table.sponsor td {
    padding:0;
  }
  #program table.sponsor td.sp_c3 {
    width: 100%;
    padding:0;
    display: block;
  }
  #program table.sponsor td.c6 {
    width: 100%;
    display: block;
    padding:3px 0 0 10px;
  }
  span.c1title {
    padding-top:3px;
  }
/*  #program table.chair + table {
    margin-top:-20px;
  }*/

  /*各学会リスト*/
  #program ul.list li {
    text-indent: -1em;
  }
  #program table.list2 td {
    font-size:12px;
  }
  #program table.list2 td strong {
    display: none;
  }

  .pro_icon_list li {
    font-size: 13px;
    line-height: 1.3;
    margin-bottom: 8px;
  }

  

  /* 下記は削除しない */
}
