@charset "utf-8";
/*プログラム ----------------------------------------------------------------------*/

#program h3{
  line-height: 1.4;
}
#program table {
  width:100%;
  border-collapse:collapse;
}
#program table td {
  padding:2px 0;
  line-height:17px;
  vertical-align:top;
}
#program table td.c0 {
  vertical-align:text-top;;
  padding-right:15px;
  width:50px;
}
#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;
}

/*  司会の言葉／公募／日時会場  */
.wrapper_day {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding-bottom:7px;
}
#program table td.c2_day {
  padding-top:5px;
  padding-bottom:3px;
}
main#program .shikai {
  margin-right: auto;
}
main#program .shikai a {
  min-width: 100px;
  max-height: 25px;
  padding: 5px 10px 5px 20px;
  font-size: 13px;
  text-align: center;
  text-decoration: none;
  color: #473091;
  border: #473091 2px solid;
  display: block;
  line-height: 1;
  text-decoration: none;
  position: relative;
  box-sizing: border-box;
}
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 #473091;
  display: block;
}
main#program .shikai a:hover {
  color: #473091;
  background: rgba(71, 48, 145, 0.2);
}
.day {
  padding-top:0;
}
.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;
  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:615px;
  border-collapse:collapse;
  margin-bottom:20px;
}
#program table.chair td {
  padding:2px 0;
  line-height:17px;
}
#program table.chair td.c0 {
  width:50px;
  vertical-align:top;
  padding-right:15px;
}
#program table td.c3, #program table.chair td.c3 {
  width:2em;
  padding:2px 15px 0 10px;
  font-size:11px;
  color:#555555;
  vertical-align:top;
  white-space: nowrap;
}

#program table td.c4, #program table.chair td.c4 {
  width:80px;
  padding:2px 20px 0 5px;
  font-size:14px;
  font-weight:bold;
  vertical-align:top;
  white-space: nowrap;
}
#program table td.c5, #program table.chair td.c5 {
/*  width:395px;*/
  font-size:12px;
  padding-bottom:5px;
}
#program table td.c3_cv, #program table.chair td.c3_cv {
  width:45px;
  padding:2px 0 0 2px;
  font-size:11px;
  color:#555555;
  vertical-align:top;
  text-align:right;
}
#program table td.c4_cv, #program table.chair td.c4_cv {
  width:120px;
  padding:2px 0 0 10px;
  font-size:14px;
  font-weight:bold;
  vertical-align:top;
  white-space: nowrap;
}
#program table td.c5_cv, #program table.chair td.c5_cv {
/*  width:365px;*/
  font-size:12px;
}
#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: #d0093b;
  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 dt {
  width: 6em;
  float: left;
  font-weight: bold;
}
.pro_icon_list dd {
  margin-left: 6em;
}
.pro_icon_list dd ul {
  margin-left: 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.pro_icon_list dd li {
  width: 50%;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  font-weight: bold;
}
.pro_icon_list dd li span {
  width: 60px;
  margin-right: 10px;
  padding: 5px 0;
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  display: flex;
  justify-content: center;
  background: #7fc21b;
}
.pro_icon_list dd li:nth-child(2) span {
  background: #33bbee;
}
.pro_icon_list dd li:nth-child(3) span {
  background: #ee6699;
}
.pro_icon_list dd li:nth-child(4) span {
  background: #f7c600;
}
.pro_icon_list dd li:nth-child(5) span {
  background: #ee6633;
}
.pro_icon_list dd 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_syoka {
  background: #7fc21b;
}
span.pro_icon.color_naishi {
  background: #33bbee;
}
span.pro_icon.color_kanzo {
  background: #ee6699;
}
span.pro_icon.color_geka {
  background: #f7c600;
}
span.pro_icon.color_kenshin {
  background: #ee6633;
}
span.pro_icon.color_jddw {
  background: #bb77ee;
}

table.travel_list{
  border-collapse:collapse;
  border:1px solid #999;
  margin:0 auto 1em;
}
table.travel_list td{
  border:1px solid #999;
  padding:0.3em;
}
table.travel_list td.num{
  white-space: nowrap;
  width:20px;
  text-align:center;
}
table.travel_list td.name{
  white-space: nowrap;
  border-bottom:1px dotted #999;
  width:130px;
}
table.travel_list td.endai_num{
  border-top:1px dotted #999;
  white-space: nowrap;
}
table.travel_list td.title{
  border-top:1px dotted #999;
}
table.travel_list td.affi{
  border-bottom:1px dotted #999;
}
table.travel_list td.e_num{
  white-space: nowrap;
  width:50px;
}
table.travel_list th{
  background-color: #fff7ef;
  border:1px solid #999;
  padding:0.3em;
}

.bg_shokaki {
  background-color: #dbf8db;
  padding:3px;
}
.bg_kanzo {
  background-color: #ffe7e9;
  padding:3px;
}
.bg_kyushu {
  background-color: #b6cdf1;
  padding:3px;
}
.bg_naishikyo {
  background-color: #c9f9fa;
  padding:3px;
}
.bg_kenshin {
  background-color: #FFBF6F;
  padding:3px;
}
.bg_shougeka{
  background-color: #FFDE6B;
  padding:3px;
}
.bg_ddw {
  background-color: #e0b4fa;
  padding:3px;
}
.pro_kei{
  padding: 0;
  margin: 0 0 2.5em;
  border-bottom:4px dotted #999;
}
/* スポンサード */
#program table.spo-tb1 {
  width: 100%;
  margin: 1em 0;
}
#program table.spo-tb1 td {
  border: 1px solid #666666;
  padding: 0.8em 0.5em;
  text-align: center;
  vertical-align: middle;
}
#program table.spo-tb1 td.left {
  text-align: left;
}
#program table.spo-tb1 td.bg_gray {
  background-color: #f0f0f0;
}
#program table.spo-tb1 th {
  border: 1px solid #666666;
  background-color: #ffeff7;
  background-color: #e8f8fd;
  padding: 0.5em;
  font-weight:normal;
  vertical-align: middle;
}
#program table td.sp_title {
  color: #660000;
  font-size: 15px;
  padding:10px 0 7px 10px;
  line-height: 1.5;
}
#program table td.c3_kyosai {
  width:2em;
  padding:12px 15px 0 10px;
  font-size:11px;
  color:#555555;
  vertical-align:top;
  white-space: nowrap;
}
#program table td.sp_kyosai {
  font-size: 15px;
  padding:10px 0 5px 5px;
}
#program table td.sp_gakkai {
  font-size: 15px;
  padding:10px 0 5px 10px;
  font-weight: bold;
}
#program table td.sp_c2 {
  padding:0 0 5px 0;
  font-size:15px;
  font-weight:bold;
  vertical-align:top;
  color: #660000;
  line-height: 1.6;
}
span.c1title {
  color:#555555;
  font-size:13px;
  padding:3px 13px 0 0;
}

/*------------------------------------------*/
/* タブレット用 */
/*------------------------------------------*/
@media screen and (max-width:959px){


  /* 下記は削除しない */
}

/*------------------------------------------*/
/* スマホ用 767px  320px */
/*------------------------------------------*/
@media screen and (max-width:767px){

  /*プログラム ----------------------------------------------------------------------*/
  .pro_icon_list dt {
    float: none;
  }
  .pro_icon_list dd {
    margin-left: 0;
  }
  .pro_icon_list dd li {
    font-size: 12px;
  }
  .pro_icon_list dd li span {
    width: 50px;
    margin-right: 5px;
    font-size: 12px;
  }

  /*  テーマ  */
  span.c1title {
    display:block;
    padding-top:0;
    padding-bottom:3px;
  }
  #program table td.c2 {
    padding-top:0;
  }

  dl.pro_ttl {
    display: block;
  }
  .c1_day {
    flex-direction: column;
  }
  .day2-2 {
    margin-left: -50%;
  }
  #program table td.c4,
  #program table.chair td.c4 {
    width: 100%;
    display: block;
    padding:2px 0 2px 0;
  }
  #program table td.c5, #program table.chair td.c5 {
    width: 100%;
    padding:2px 0 10px 0;
    display: block;
  }

  /*各学会リスト*/
  #program ul.list li {
    text-indent: -1em;
  }
  #program table.list2 td {
    font-size:12px;
  }
  #program table.list2 td strong {
    display: none;
  }

  /* 下記は削除しない */
}
