@charset "utf-8";

.clearfix:before,
.clearfix:after {
    content:"";
    display:table;
}
 
.clearfix:after {
    clear:both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.clearfix {
    zoom:1;
}


/****************************************
 * Definition List (dl)
 ****************************************/
/*dl-layout1*/
#main dl.dl-layout1{
    margin-top: 0;
    margin-right: 0px;
    margin-bottom: 30px;
    margin-left: 0px;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}

#main dl.dl-layout1 dt{
    float: left;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    text-align: left;
	line-height: 1.3;
    font-weight: normal;
    width: 140px !important;
    padding-top: 10px;
    padding-right: 0;
    padding-bottom: 10px;
    padding-left: 20px;
    background-image : url(../images/point01.png);
    background-position: 5px 11px;
    background-repeat: no-repeat;
}

#main dl.dl-layout1 dd{
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	text-align: left;
	line-height: 1.3;
	padding-left: 165px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999999;
}


/*dl-layout2*/
#main dl.dl-layout2{
    margin-top: 0;
    margin-right: 0px;
    margin-bottom: 30px;
    margin-left: 0px;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}

#main dl.dl-layout2 dt{
    float: left;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
    text-align: left;
	line-height: 1.3;
    font-weight: bold;
    width: 5.0em !important;
    padding-top: 10px;
    padding-right: 0;
    padding-bottom: 10px;
    padding-left: 0px;
	 color: #073190;
}

#main dl.dl-layout2 dd{
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	text-align: left;
	line-height: 1.3;
	padding-left: 6.0em;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999999;
}


#main dl.dl-layout1::after,
#main dl.dl-layout2::after{
    content: ".";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

@media screen and (max-width: 960px) {
/*dl-layout1*/
	#main dl.dl-layout1 dt{
	float: none;
	line-height: 1.4;

	padding-bottom: 0;
	}
	#main dl.dl-layout1 dd{
		line-height: 1.4;
		padding-top: 5px;
		padding-left: 20px;
		padding-right: 0;
	}

/*dl-layout2*/
	#main dl.dl-layout2 dt{
	float: none;
	line-height: 1.4;

	padding-bottom: 0;
	}
	#main dl.dl-layout2 dd{
		line-height: 1.4;
		padding-top: 5px;
		padding-left: 0;
		padding-right: 0;
	}

}



/****************************************
 * table
 ****************************************/
@media screen and (max-width: 480px) {
/*tbl-layout1*/
  table.tbl-layout1 {
		border-top:none;
  }
  table.tbl-layout1 td {
    display: block;
    text-align: center;
		border-bottom: none;
 		border-left: none;
		border-right: none;
	}
  table.tbl-layout1 th {
    display: block;
		border-bottom: none;
 		border-left: none;
		border-right: none;
		text-align: center;
	 }


/*tbl-layout2*/
	table.tbl-layout2 {
	border: none;
  }
  table.tbl-layout2 thead {
    display: none;
  }
  table.tbl-layout2 tr {
		border-top: 1px solid #cccccc;
    display: block;
    margin-bottom: 20px;
  }
  table.tbl-layout2 td {
    display: block;
    padding: 10px;
    text-align: right;
		border-right: 1px solid #cccccc;
		border-bottom: 1px solid #cccccc;
 		border-top: none;
 }
  table.tbl-layout2 td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
  }
	
/*tbl-layout3*/
  table.tbl-layout3 {
    display: block;
		border-left:none;
		border-bottom:none;
	  border-spacing: 0;
	  
}
  table.tbl-layout3 thead {
    display: block;
    float: left;
  }
  table.tbl-layout3 tbody {
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
  }
  table.tbl-layout3 tr {
    display: block;
	width: 100%;
  }

table.tbl-layout3 th,
table.tbl-layout3 td {
	display: block;
	border-top:none;
	border-right:none;
	text-align: center;
	
}
	table.tbl-layout3 th {
		border-right: 1px solid #cccccc;
	}
	table.tbl-layout3 tbody tr:first-child td {
		border-left:none;
	}

table.tbl-layout3 th br,
table.tbl-layout3 td br {
	display: none;
}

	
}

/*====================================================================*/


/*--------------------------------------------------------
	  greeting
--------------------------------------------------------*/

#main #contents p img.img-greeting{
	border: 10px solid #ffffff;
	box-shadow: 0px 5px 5px 3px rgba(0, 0, 0, 0.35);
}




/*--------------------------------------------------------
	 participant
--------------------------------------------------------*/
#main #contents span.txt-banquet{
	display: inline-block;
	border-bottom: 1px solid #333;
	border-top: 1px solid #333;
	margin-top: 5px;
	padding: 5px 0;
}

#main #contents p.txt-important {
	color: #F91F00;
	font-weight: bold;
	border: 2px solid #F91F00;
	padding: 10px;
}
#main #contents p.txt-important2 {
	color: #2020b3;
	font-weight: bold;
	border: 2px solid #2020b3;
	padding: 10px;
}


#main #contents table.tbl-pay {
	margin-top: 20px;
}

#main #contents table.tbl-pay th {
	text-align: center;
}


/*--------------------------------------------------------
	 speakers
--------------------------------------------------------*/

#main #contents ol.list-kakko {
	margin-left: 30px;
}
#main #contents ol.list-kakko li{
	list-style-type: none;
  	counter-increment: cnt;
	position: relative;
	margin-left: 0px;
}
#main #contents ol.list-kakko li:before {
	content: "（" counter(cnt) "）";
	text-align: right;
	position: absolute;
	top: 0;
	left: -40px; /* 好みで位置の調整 */
}

#main #contents div.abst-area{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main #contents div.abst-area div.abst-txt{
	width: 50%;
}
#main #contents div.abst-area div.abst-txt p{
	padding-right: 0;
}
#main #contents div.abst-area div.abst-image{
	width: 49%;
	text-align: center;
}
#main #contents div.abst-area div.abst-image img{
	width: 100%;
	max-width: 600px;
}

#main #contents div.abst-area span.img-format{
	display: inline-block;
	width: 50%;
	text-align: center;
}
#main #contents div.abst-area span.img-format img{
	width: 90%;
	max-width: 600px;
}


/*--------------------------------------------------------
	 schedule
--------------------------------------------------------*/

#main #contents div.tbl-schedule {
    overflow: auto;
    margin-bottom: 30px;
    padding-bottom: 10px;
}
#main #contents div.tbl-schedule table {
	width: 660px;
	margin-bottom: 0;
}
#main #contents div.tbl-schedule table tr:first-of-type th{
	text-align: center;
}
#main #contents div.tbl-schedule table tr:first-of-type th:first-of-type {
	width: 20%;
}
#main #contents div.tbl-schedule table tr:first-of-type th:not(:first-of-type) {
	width: 26%;
}
#main #contents div.tbl-schedule table tr td:first-of-type{
	background-color: #e1f0fd;
}

#main #contents p.p-txt{
	padding-left: 1em;
	text-indent: -1em;
	display: none;
}


/*--------------------------------------------------------
	public
--------------------------------------------------------*/
#main ul.list-sns{
    margin-left: 0;
    list-style: none !important;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}
#main ul.list-sns li{
    background: none;
	width: 115px;
	text-align: center;
	padding-left: 0;
}
#main ul.list-sns li span{
	display: inline-block;
	font-weight: bold;
	width: 100px;
	background-color: #f8dc9a;
}


/*--------------------------------------------------------
	symposium
--------------------------------------------------------*/
#main p.p-symp a img{
	border: 1px solid #bbbbbb;
}
#main p.p-symp a img:hover{
	opacity: 0.7;
}


/*--------------------------------------------------------
	  ボタン関連
--------------------------------------------------------*/

#main #contents div.btn-area {
	width: 80%;
	margin: 40px auto;
	text-align: center;
	background: #fffeae;
	border: 3px solid #f7c02b;
	padding: 30px 15px;
}


a.btn,
a.btn_gray,
a.btn2,
a.btn_gray2{
    display: inline-block;
    margin: 0 auto;
    padding: 0.8rem 2.0rem;
    border-radius: 8px;
    box-sizing: border-box;
    text-decoration: none;
    transition: 0.3s;
    color: #fff;
    font-weight: bold;
    font-size: 1.2em;
	text-align: center;
}

a.btn,
a.btn2{
    background-color: #0074bd;
    border: 2px solid #06598d;
}

a.btn2,
a.btn_gray2{
	width: 220px;
}


a.btn,
a.btn_gray{
      padding-left: 1.5em;
      padding-right: 1.5em;
}
a.btn:hover,
a.btn2:hover{
    background-color: #3994cd;
	
}


a.btn_gray,
a.btn_gray2{
    background-color: #888888;
    border: 2px solid #555555;
}

a.btn3{
	width: 260px;
}



div#aside div.sub-menu ul {
	padding-left: 0;
	
}
div#aside div.sub-menu ul li{
	background-image: none !important;
	list-style-type: none;
	text-align: center;
	margin-bottom: 15px;
}
div#aside div.sub-menu ul li a.btn-menu{
	display: inline-block;
	padding: 15px 10px;
	width: 190px;
	text-align: center;
	background-color: #1e5bbd;
	color: #ffffff;
	font-weight: bold;
	font-size: 16px;
	text-decoration: none;
	border-radius: 5px;
}
div#aside div.sub-menu ul li a.btn-menu:hover{
	background-color: #2f6ed4;
}



@media screen and (max-width: 960px) {
	
	div#aside div.sub-menu2 {
		margin: 50px auto 25px auto;
		width: 90%;
		padding: 15px;
		background-color: #d1e3ff;
	}
		
	/*--------------------------------------------------------
		  greeting
	--------------------------------------------------------*/
	#main #contents .greeting_photo {
		float: none;
		margin: 0 auto 1em;
	}
	#main #contents .greeting_chair {
		margin: 0 0 1.5em 0;
		font-weight: bold;
		text-align: center;
	}
	#main #contents .greeting_chair span.chair_name {
		font-size: 121.4%;
	}

}

@media screen and (max-width: 701px) {
	/*--------------------------------------------------------
	  schedule
	--------------------------------------------------------*/
	#main #contents p.p-txt{
        display:block;
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 680px) {
	#main #contents div.abst-area {
		flex-direction: column;
	}
	#main #contents div.abst-area div.abst-txt{
		width: 100%;
	}
	#main #contents div.abst-area div.abst-image{
		width: 100%;
	}
	#main #contents div.abst-area div.abst-image img{
		max-width: 400px;
	}
	#main #contents div.abst-area span.img-format{
		width: 100%;
		margin: 0 auto;
	}
	#main #contents div.abst-area span.img-format img{
		width: 100%;
		max-width: 400px;
	}
	/*--------------------------------------------------------
		public
-	-------------------------------------------------------*/

	#main ul.list-sns:after{
		content:"";
		display: block;
		width:115px;
	}

}


@media screen and (max-width: 451px) {
	/*--------------------------------------------------------
	  	greeting
	--------------------------------------------------------*/

	#main #contents p img.img-greeting{
		width: 85% !important;
	}
	
	/*--------------------------------------------------------
		public
	--------------------------------------------------------*/
	#main ul.list-sns{
		justify-content: space-around;
	}

}


@media screen and (max-width: 370px) {
}