@charset "UTF-8";
/*--------------------------------------------------------------- 
			各ページ固有の指定
--------------------------------------------------------------- */

/* page-welcome
--------------------------------------------------------------- */
#page-welcome .flex_box {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    margin-bottom: 20px;
}
#page-welcome .img-float {
    text-indent: 0;
    margin: 0.2em 2em 0 1em;
}
#page-welcome .pregi{
    font-size: 125%;
    font-weight: bold;
    padding-top: 10px;
}
#page-welcome p{
    padding-top: 1em;
}


/* page-schedule
--------------------------------------------------------------- */
#page-schedule .dl-grid{
	font-size: 135%;
	display: grid;
	grid-template-columns: 120px 1fr; 
	  row-gap: 10px; /* 行間の隙間 */
	}

#page-schedule .dl-grid dt {
	  grid-column: 1; /* 1列目に配置 */
	  font-weight: bold;
		color: #346aa3;
	}

#page-schedule .dl-grid dd {
	  grid-column: 2; /* 2列目に配置 */
	  margin: 0;      /* デフォルトの余白を消す */
	}
#page-schedule .dl-grid.sec{
    font-size: 85%;
    row-gap: 5px;
    margin-top: -0.2em;
    font-weight: normal !important;
}


@media screen and (max-width: 768px){
    #page-schedule .dl-grid dd {
        text-align: left;
        }
    #page-schedule .dl-grid.sec{
        display: block;
    }
    }

/* page-registration
--------------------------------------------------------------- */
#page-registration .dl-grid-r{
	font-size: 115%;
	display: grid;
	grid-template-columns: 17em 1fr; 
	  row-gap: 10px; /* 行間の隙間 */
	}

@media screen and (max-width: 768px){
	#page-registration .dl-grid-r{
		display: block;
	}
}
	

#page-registration .dl-grid-r dt {
	  grid-column: 1; /* 1列目に配置 */
	  font-weight: bold;
		color: #346aa3;
	}

#page-registration .dl-grid-r dd {
	  grid-column: 2; /* 2列目に配置 */
	  margin: 0;      /* デフォルトの余白を消す */
	}

#page-registration table.tbl-01 {
	border-top:1px solid #CBCBCB;
	border-left:1px solid #CBCBCB;
	border-collapse:collapse;
	border-spacing:0;
	background-color:#ffffff;
	empty-cells:show;
	margin: 0.5em;
}
#page-registration .tbl-01 th,
#page-registration .tbl-01 td {
	border-right:1px solid #CBCBCB;
	border-bottom:1px solid #CBCBCB;
	padding: 0.5em 1em;
	text-align: center;
	vertical-align: middle;
}
#page-registration .tbl-01 th {
	color: #333333;
	background-color: #f1ebb8;
	font-weight: bold;
}
#page-registration .tbl-01 td {
	/*padding: 0.3em 5em;*/
}
#page-registration .tbl-01 td.td01{
	background-color: #fdfae3;
}

#page-registration table.tbl-01.narrow{
	width: 70%;
}

@media screen and (max-width: 768px){
	#page-registration table.tbl-01.narrow{
		width: 100%;
		}
}


/* page-committees
--------------------------------------------------------------- */
#page-committees h3{
	margin-top: 50px;
}
#page-committees table{
	margin-top: 30px;
	box-sizing: border-box;
	text-align: left;
	}
#page-committees th{
	font-weight: bold;
	box-sizing: border-box;
}
@media screen and (max-width: 768px){
	#page-committees th{
		width: 40%;
	}	
}
#page-committees th, #page-committees td{
	box-sizing: border-box;
	padding: 2px;
}
#page-committees .chair{
	display: flex;
}
#page-committees .ttl{
	font-weight: bold;
	margin-bottom: 0.5em;
	color: #007FCC;
	font-size: 135%;
	border-left: 10px solid #fbe297;
	padding-left: 10px;
	line-height: 1.2;
}


/* #page-endai
--------------------------------------------------------------- */
#page-endai h5 {
	color: #211B96;
	text-indent: -1.5em;
	padding-left: 1.5em;
	border-bottom: dashed 1px #DFCED2;
	margin-top: 1.7em;
}
#page-endai h5:before {
	border: none;
}

#page-endai.pageInr .count p{ margin:  0 1em 0 2.5em;}
#page-endai.pageInr .count .areaChui p{margin: 0;}
#page-endai.pageInr .count .areaChui h5 {padding-left: 50px !important;}
#page-endai.pageInr .count ul {
	margin: 0.8em 0.8em 0.8em 2.8em;
}

#page #page-endai ul li {
	margin-bottom: 0.2em;
	margin-left: 0;
	list-style-type: none;
}
#page #page-endai ul.list li {
	margin-bottom: 0.5em;
}

#page-endai a.red2{
	color:#d80000;
}

#page-endai .endai_kouza {
	background-color: #F0F4F7;
	border: solid 2px #CBDDE4;
	width: 50%;
	margin:  1em 2em;
	padding: 0 1em;
}
#page-endai .endai_kouza dt {
	margin-bottom: 0.3em;
}
#page-endai .endai_kouza dd {
	line-height: 1.7;
	margin-left: 0.5em;
	margin-bottom: 0;
}

@media screen and (max-width: 768px){
	#page-endai .endai_kouza,
	#page-endai .areaChui{
		width: auto;
		margin: 1em;
	}
	#page-endai .encyo{
		display: block;
		padding-left: 9.6em;
	}
}

#page-endai .kikan {
	font-weight: bold;
	margin: 0.8em;
	font-size: 120%;
	color: #E43F3F;
}
#page-endai .kikan dt {
	font-size: 90%;
	color: #000000;
}
#page-endai .kikan dd {
	padding-left: 2em; 
}

/**/


/* #page-sanka
--------------------------------------------------------------- */
#page-sanka .kikan {
	font-weight: bold;
	margin: 0.8em;
	color: #E43F3F;
	font-size: 118%;
}
#page-sanka .tbl-ptn1 th {
	/*text-align: left;*/
	font-weight: bold;
}
/** 角丸テキストボタン：box **/
#page-sanka .areaBtn-rc-box {
	width: 60%;
	text-align: center;
	padding: 1em;
	margin: auto;
}
#page-sanka .areaBtn-rc-box a {
	display: block;
	font-size: 110%;
	line-height: 140%;
	color: #FFF !important;
	text-decoration: none;
	background-color: #ef763d;
	border-radius: 5px;
	border: 3px solid #ffcc62;
	/* box-shadow */
/*box-shadow:0px 1px 1px 1px #222222;
-moz-box-shadow:0px 1px 1px 1px #222222;
-webkit-box-shadow:0px 1px 1px 1px #222222;*/
	margin: 5px;
	padding: 0.8em 1.5em;
}

@media screen and (max-width: 768px){
	#page-sanka .areaBtn-rc-box  {
		width: 90%;
	}
}

#page-sanka .areaBtn-rc-box a:hover {/*---透明度の変更は、3行の数値をそれぞれ変更すること*/
 filter:alpha(opacity=80);
 -moz-opacity: 0.8;
 opacity: 0.8;
	transition: 0.5s ease-in-out;
}


/* #page-program
--------------------------------------------------------------- */
#page-program .track-header{
    display: flex;
    align-items: center;
    margin-top: 20px;
}
#page-program .track {
    margin: 0 20px 0 0;
    padding-left: 25px;

}
#page-program .track::before{
    left: 10px;
}
#page-program .ttl{
	font-size: 125%;
	font-weight: bold;
    text-align: left;

}

#page-program .venue {
    text-align: right;
    border-top: 1px solid #d96d00;
}

#page-program h3 {
	margin-top: 2em;
	position: relative;
	letter-spacing: 0;
	margin-bottom: 0.1em;
    margin-left: -20px;
}
#page-program p.date {
    font-size: 150%;
    margin-top: 40px;
    padding :10px 20px 10px 20px;
    background-color: #1587a0;
    color: #ffffff;
    border-left: 20px solid #d1f554;
    margin-left: -20px;
    font-weight: bold;
}
#page-program h3.date::before{
    content: none;
}
#page-program h3.two {height: 2.7em;}
#page-program .place{
	padding: 0.3em 0.9em;
	border-bottom: dotted 3px #D6EAF7;
	text-align: right;
}
#page-program h3.ad202609{
    border-bottom: 2px solid;
    margin-left: -10px;
}
#page-program h3.ad202609::before{
    content: none;
}
#page-program h3.ad202609 span{
    color: #000;
    margin-left: 10px;
    font-size: 18px;
}
#page-program h4 {
	margin-top: 40px;
    line-height: 150%;
    font-size: 150%;
    margin-left: 0px;
}
#page-program h5 {
	border-bottom: none;
}

/* dl左右2段 */
#page-program dl {
	overflow: hidden; /* 回り込み(float)の解除 + 内部要素の高さを自動補正 */
	zoom: 1; /* for IE6 */
	margin:  0.5em;
}
#page-program dl dt,
#page-program dl dd {
	display: block;
	margin: 0 0 0.5em;
	padding: 0.05em 0.3em;
}
#page-program dl dt {
	width: 80px;
	clear: left; /* 環境別での表示崩れを防ぐ */
	float: left;
/*	background: #D1DFE8;
	text-align: center;
	margin-right: 0.5em;*/
    font-weight: normal;
    background-color: #fbf1e3;
    margin-right: 20px;
    color: #696969;
    text-align: center;
}
#page-program dl dt.ad01{
    background-color: #eefbe8;
}
#page-program dl dd {
	width: calc(100% - 100px);
	float: left;
	text-align: left;
}
#page-program dl.wide dd {width: 85%;}

#page-program .flex_box{
	display: flex;
	flex-wrap: nowrap;
}


#page-program .areaBtn-rc a{
	width: 20%;
}
#page-program .bio{
    margin-left: 105px;
    background-color: #3f5b67;
    padding: 1px 20px 1px;
    border-radius: 5px;
    color: #ffffff;
}

.bio-ttl {
  cursor: pointer;
  list-style: none;
  display: inline-block;
  text-decoration: none;
  transition: color 0.25s ease;
    font-size: 125%;
    font-weight: bold;
    color: #ffffff;    
}
.bio-toggle-input {
  display: none;
}

.bio-ttl {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.25s ease;
}
.bio-ttl:hover {
  color:#A4E7FF;
  text-decoration: none;
}

/* 矢印 */
.bio-arrow {
  display: inline-block;
    font-size: 200%;
  transition: transform 0.3s ease;
  text-decoration: none; /* 下線がラベルにかかっても矢印には付けない場合 */
}

/* チェック時に矢印を90度回転 */
.bio-toggle-input:checked ~ .bio-ttl .bio-arrow {
  transform: rotate(90deg);
  text-decoration: none;     
}

/* 開閉アニメーション本体 */
.bio-dtl-wrap {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease;
}
.bio-dtl-wrap > .bio-dtl {
  overflow: hidden;
  margin: 0;
}

.bio-toggle-input:checked ~ .bio-dtl-wrap {
  grid-template-rows: 1fr;
}

@media screen and (max-width: 768px){
	#page-program h3{
		height: 2.2em;
        margin-left: 0;
	}
	#page-program h3 .date {
		font-size: 70%;
	}
	#page-program h3.two01 {
		height: 3.2em;
	}
    #page-program h3.two02 {
		height: 4.4em;
	}
	#page-program .idx ul li{
		width: 40%;
		margin-bottom: 0.8em;
	}
	#page-program .areaBtn-rc a{
		width: 50%;
	}
    #page-program .bio{
    margin-left: 5px;
}




/*---*/
#page-program .session{
	display: flex;
	justify-content: center;
	align-items:stretch;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
#page-program .session div{
	width: 42%;
	margin: 0.5em 1em 0.8em 0;
}
#page-program .session a{
	display: inline-block;
	font-family: Arial, Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans Japanese", "游ゴシック", YuGothic, Osaka, sans-serif;
	/*line-height: 120%;*/
	color: #FFF !important;
	text-decoration: none;
	text-align: center;
	letter-spacing: 0.1em;
	background: #419AA7;
	border: 3px solid #BEDBDE;
	border-radius: 5px;
	padding: 0.5em 0.8em;
}
#page-program .session a.pdf:after {
	content: "";
	background: url(../img/icon_pdf_w.svg) no-repeat bottom right;
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	margin-left: 7px;
}
#page-program .session div a{ width: 85%;}
#page-program .session a:hover {/*---透明度の変更は、3行の数値をそれぞれ変更すること*/
 filter:alpha(opacity=80);
 -moz-opacity: 0.8;
 opacity: 0.8;
}

@media screen and (max-width: 768px){
	#page-program .session div.wide{
		width: 30%;
	}
}


/* #page-papers
--------------------------------------------------------------- */
#page-papers .track-l{
	margin-left: 10px;
	width: 99%;
	text-align: left;
	}
#page-papers .track-l th{
	font-weight: bold;
	width: 30%;
	color: #4598d7;
}
#page-papers .track-l td{
	padding: 4px 3px;
}
#page-papers .track-l td:first-of-type{
	width: 25%;
}



/* #page-syukuhaku
--------------------------------------------------------------- */
#page #page-syukuhaku ul {
	margin: 1.5em 0;
}
#page #page-syukuhaku ul li {
	list-style-type: none;
	padding: 0 20px;
	font-size: 105%;
	margin-bottom: 1em;
	position: relative;
}
#page #page-syukuhaku ul li:before {
    border: solid 3px #597DBF;
    content: "";
    height: 3px;
    width: 3px;
    left: 0;
    position: absolute;
    top: 6px;
}
#page-syukuhaku img{
	margin-left: 0.5em;
}

@media screen and (max-width: 768px){
	#page-syukuhaku img {
		width: 80%;
	}
}


/* link
--------------------------------------------------------------- */
#page #page-link ul {
	margin: 0;
}
#page #page-link ul li {
	/*background-image: url(../img/icon_dot_list.jpg);
	background-repeat: no-repeat;
	background-position: left center;*/
	list-style-type: none;
	padding: 0 20px;
	font-size: 105%;
	margin-bottom: 1em;
	position: relative;
}
#page-link ul li:before {
    border: solid 3px #597DBF;
    content: "";
    height: 3px;
    width: 3px;
    left: 0;
    position: absolute;
    top: 6px;
}


/* 
--------------------------------------------------------------- */
.list-ptn2 li{
	list-style-type:none !important;
	text-indent: -1.5em;
	margin-bottom: 1em;
}