@charset "UTF-8";

body.mapping {
	--bg-palette: rgba(0,0,0,0);
	--bg-checked-label: none;
	--search-color:rgba(224,0,0,0.6);
	--search-color-active:rgba(224,0,0,0.9);
	--remark-color:rgba(5,130,155,0.6);
	--remark-color-active:rgba(5,130,155,0.9);
}
/*****************************************
 * ナビゲーションエリア
 *****************************************/
#mapping_navi{
	margin:0;
	padding:0;
	position:relative;
}
*+html #mapping_navi{
	/*IE7では、positionにrelativeが設定されていると親要素の重なりが優先されるためz-index明示*/
	z-index:1;	
}


/*-----日付タブ-----*/
#dateNavi {
	background:white;
	z-index:10000;
    /*white-space: nowrap;*//*0512*/
    display: inline-block;/*0512*/
    /*padding-right: 40px;*//*0512*/
}
#dateTabSet {
	min-height:30px;
	line-height:1.3;
	margin-bottom:15px;
}
#dateTabSet li {
	box-sizing:border-box;
    margin-top: 2px;
	min-width:95px;
	padding-right:2px;
	display:inline-block;
	min-height:30px;
}
#dateTabSet li a {
	box-sizing:border-box;
	display:block;
	padding:0 10px;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	height:30px;
	line-height:30px;
	background-color:#A1A1A1;
	background-image:url(cssimg/bg_dotted2.png);
	background-repeat:repeat;
	color:#EAEAEA;
	border-top:#CCCCCC 1px solid;
	border-right:#888888 1px solid;
	border-bottom:none;
	border-left:#BBBBBB 1px solid;
	border-radius:3px 3px 0px 0px;
}

/*-----拡縮切替-----*/
#expandSwitch {
	position:absolute;
	bottom:15px;right:15px;
	z-index:10;
	color:#fff;
	border-radius:50%;
	background:rgba(0,0,0,0.5);
	width:80px;
	height:80px;
	cursor:pointer;
	text-align:center;
}
#expandSwitch img {
	transform:translateY(15px);
}
#expandSwitch img:hover{
	opacity:0.7;
}
/*-----フィルターパレット表示切替-----*/

#dispFilterPaletteSwitch {
	position:absolute;
	top:5px;right:32px;
}
#dispFilterPaletteSwitch button {
	width:60px;
	height:25px;
	font-size:95%;
}
/*-----フィルターパレット本体-----*/
#filterPalette {
	position:fixed;
	/*z-index:1000;*/
	z-index:10000;
	padding:8px 20px 20px 20px;
	background:rgba(0,0,0,0.7);
	font-size:11.7px;
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#AA000000,EndColorStr=#AA000000);
    -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#AA000000,EndColorStr=#AA000000)";
}
#filterPalette:not(:target){
    filter: none;
    -ms-filter: none;
}

#paletteCloser {
	text-align:right;
	margin-bottom:3px;
}
#paletteCloser a {
	color:white;
	font-size:13px;
	padding-left:16px;
	text-shadow:1px 1px 1px black;
	background:url(./cssimg/icon_close.png) no-repeat left center;
}
/*-----一般・ポスター切替-----*/
/* active時の背景色はcommon.phpで指定 */

#contents #typeSwitch {
	display:flex;
	position:absolute;
	bottom:15px;
	left:50%;
	transform:translateX(-50%);
	z-index:10000;
	font-size:180%;
	padding:0 20px !important;
	border-radius:40px;
	background:rgba(0,0,0,0.5);
    line-height: 3.15;
}
#contents #typeSwitch li {
	box-sizing:border-box;
	display:inline-block;
	padding:5px;
	min-width:140px;
}
body.en #contents #typeSwitch li {
	min-width:220px;
}

#contents #typeSwitch li a {
	box-sizing:border-box;
	display:block;
	text-align:center;
	/*text-shadow:0 1px 2px #000;*/
	color:#fff;
	border-bottom:3px solid transparent;
}
@media screen and (max-width:1180px) { 
    /*　画面サイズが1180px以下はここを読み込む　*/
    #expandSwitch {
	    width:60px;
	    height:60px;
        right:10px;
    }
    #expandSwitch img {
	    transform:translateY(12px);
        width:60%;
    }
    #contents #typeSwitch{
        left:43%;
        font-size:140%;
    }
    body.en #contents #typeSwitch li {
	    min-width:180px;
    }
}
#contents #typeSwitch li a:hover,
#contents #typeSwitch li.current a {
}

/*-----午前・午後ジャンプ-----*/
/* active時の背景色はcommon.phpで指定 */

#contents #scrollJump {
	position:absolute;
	top:0;
	right:99px;
	font-size:93%;
}
#contents #scrollJump li {
	width:50px;
	float:left;
	padding-right:2px;
	padding-bottom:8px;
}
#contents #scrollJump li a {
	display:block;
	color:#eaeaea;
	background:#a7a7a7;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	padding:3px 0;
	height:20px;
	line-height:20px;
	border-radius:1px;
}

#contents #scrollJump li a:hover,
#contents #scrollJump .currentsj a {
}

/*-----絞込パーツ各種-----*/

select {
    border: 1px solid #cccccc;
}
input[type="text"] {
    border: 1px solid #cccccc;
    margin: 2px 1px 5px 0;
    padding: 1px 1px 1px 5px;
}

#contents #selectMenuWrap {
	clear:both;
	padding:10px 20px 5px 20px;
}

#contents #selectMenuWrap div {
	margin-bottom: 2px
}
#contents #selectMenuWrap div span{
	font-weight:bold;
	padding-right:5px;
}
#contents #selectMenuWrap select option.noBelong {
	color:#aaa;
}

#contents #selectMenuWrap #gakkaiBunruiFilterExec,
#contents .unitFilterWrap #filterClear,
#contents .unitFilterWrapSub #keywordClear{
	cursor:pointer;
	_padding:4px 5px;
	padding:5px 5px;
	width:54px;
	height:23px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:11.5px;
	font-weight: bold;
	margin:0;
	padding:0;
}

#contents .unitFilterWrap,
#contents .unitFilterWrapSub {
	clear:both;
	text-align:right;
	margin-bottom:0px;
	padding:0px 20px 7px 20px;
	min-height:25px;
	color:#444;
}
#contents .unitFilterWrap div.unitFilterInner {
	padding-bottom:1px;
}
#contents .unitFilterWrapSub {
	position:relative;
	height:auto;
}
#contents .unitFilterWrapSub div.unitFilterInner {
	padding-top:3px;
}
#contents div.unitFilterInner {
	position:relative;
	text-align:left;
}

#contents .unitFilterWrap #unitFilter {
	width:150px;
	margin-left:5px;
	margin-right:5px;
}
#contents .divborder {
    border-bottom: 1px solid #ffffff;
    border-top: 1px solid #DDDDDD;
    height: 0;
}

.unittext{
	float:left;
	width:4.3em;
	text-align:left;
	white-space:nowrap;
	padding-top:3px;
	font-weight:bold;
}
.unitbox{
	text-align:left;
	margin-left:4.3em;
	padding-top:3px;
}
.unitbox input{
	vertical-align: middle;
}
.unitbox label{
	margin-right:15px;	
}
#contents #keywordSetLabel,
#contents #sessiconSetLabel,
#contents #colorRemarkSetLabel {
	margin-top:5px;
	margin-bottom:0px;
	font-weight:bold;
}

#contents #keywordSetLabel span,
#contents #sessiconSetLabel span,
#contents #colorRemarkSetLabel span {
	padding-left:25px;
	cursor:pointer;
}
#contents #keywordSetLabel #hasActiveKeyword{
	font-weight:100;
	color:#D00;
	display:none !important;
}

#contents .unitFilterWrapSub span.nodeClosed {
	background:url(./cssimg/node_closed.gif) no-repeat left center;
}
#contents .unitFilterWrapSub span.nodeOpened {
	background:url(./cssimg/node_opened.gif) no-repeat left center;
}



#contents #keywordSet {
	/*margin-right:100px;*/
}
*:first-child + html #contents #keywordSet {
	min-height:1%;
}
#contents .cbSet span,
#contents #keywordSet span {
	display:block;
	margin:3px;
	text-indent:-1.75em;
	padding-left:1.75em;
	word-break:break-all;
}
#contents .cbSet span.sessiconUnit {
	text-indent:-3.5em;
	padding-left:3.5em;
}
#contents .cbSet span.colorRemarkUnit {
	text-indent:-4.125em;
	padding-left:4.125em;
}
#contents .cbSet span input,
#contents #keywordSet span input{
	vertical-align:middle;
}
#contents #mapping_navi label{
	padding:0 2px;
}
#contents #mapping_navi label.active {
	background:var(--bg-checked-label);
}
#contents #mapping_navi label img {
	vertical-align:middle;
}
.target_checkbox {
	margin-left: 3px;
}
.target_checkbox span{
	float: left;
	padding-top:2px;
	/*text-indent:-1.5em;
	padding-left:1.75em;*/
}
#contents #mapping_navi .unitbox .target_checkbox input{
	float: left;
	margin-top: 2px;
}
#contents #mapping_navi .target_checkbox label{
	overflow: hidden;
	display: block;
}
.unitbox input#unitFilter{
	margin-top:-3px;
	display:inline-block;
	display:block;
}

#contents #selectMenuWrap select option.noBelong {
	color:#aaa;
}

#contents #keywordClearWrap {
	position:absolute;
	bottom:10px;
	right:20px;
}

#contents .unitFilterWrap #filterClear {
	position:absolute;
	top:0;right:0;
}

#contents #highLightCnt {
	padding:5px 0;
}

/*****************************************
 * タイムラインエリア
 *****************************************/
#contents #timeMapping * {margin:0;padding:0;}

#contents #timeMapping {
	position:relative;
	width:100%;
	margin-left:auto;margin-right:auto;
	overflow:hidden;
	border-right:1px solid #333333;
	clear:both;
	background:#444444;
}
/*-----セッション数表示-----*/

#contents #unitCount {
	clear:left;
	padding:10px 0;
	display:none;
}
#contents #unitCount span {
	color:white;
	/*text-shadow:1px 1px 1px black;*/
	padding:3px 8px;
	border-radius:3px;
	background:#555;
	font-size:85%;
}

/*-----画面外ユニット数表示-----*/

#contents #outFrameCountLeft,
#contents #outFrameCountRight {
	position:absolute;
	top:20px;
	width:100px;
	height:50px;
	color:white;
	text-align:center;
	text-shadow:1px 1px 1px black;
	border-radius:4px;
	opacity:0.8;
	z-index:10000;
}

#contents #outFrameCountLeft {
	left:150px;
	background:#555555 url(./cssimg/outframe_left_bg.png) no-repeat center bottom;
}
#contents #outFrameCountRight {
	right:40px;
	background:#555555 url(./cssimg/outframe_right_bg.png) no-repeat center bottom;
}

/*-----時間軸-----*/

#contents #timeMeasureWrap {
	width:100%;
	overflow:hidden;
}

#contents div.timeMeasure {
	position:relative;
	height:15px;
	color:white;
	background:#444444;
}
#contents div.timeMeasure span.measureUnit {
	position:absolute;
	font-size:10px;
}

/*-----タイムライン本体-----*/
#contents #timeMapping #scroller {
	width:100%;
	overflow:hidden;
	cursor:move;
}

#contents #timeMapping #frame {
	position:absolute;
	top:0;
	left:122px;
	width:90%;
	overflow:hidden;
}

*:first-child + html #contents #timeMapping #frame {overflow-x:hidden;overflow-y:hidden;}
* html #contents #timeMapping #frame {overflow-x:hidden;overflow-y:hidden;}

#contents #timeLine {
	position:relative;
	background:url(./cssimg/timeline_120x50px_withline_bg.png) repeat;
}

/*-----会場-----*/

#contents ul#venueList {
	margin-top:15px;
	margin-bottom:1px;
	border-bottom:1px solid black;
	overflow:hidden;
}
#contents ul#venueList li {
	height:30px;
	line-height:1.2;
	margin:0;
	list-style:none;
}

#contents ul#venueList li div {
	padding-top:1px;
}
#contents ul#venueList li em {
	/*display:block;*/
    display:table;
	float:left;
	width:120px;
	height:30px;
	color:#333333;
	font-size:95%;
	font-style:normal;
	border-left:1px solid #333333;
	border-right:1px solid #333333;
	background:#E3F2FB url(./cssimg/place_bg.png) repeat-x top;
	cursor:pointer;
}
#contents ul#venueList li em:hover {
	opacity:0.7;
}

*+html #contents ul#venueList li {vertical-align:bottom;}
*html #contents ul#venueList li {vertical-align:bottom;}

#contents #timeMapping ul#venueList li em.empty {
	background-image:none;
}
*:first-child + html ul#venueList li {height:28px;}
*:first-child + html ul#venueList li em {height:28px;}
* html ul#venueList li {height:28px;}
* html ul#venueList li em {height:28px;}

#contents #timeMapping .place_name {
	/*margin:2px;*/
    padding: 2px;
    display: table-cell;
    vertical-align: middle;
}

/*-----セッションユニット-----*/

div.sessUnit {
	position:absolute;
	margin: 0;
	font-size:95%;
	border:1px solid #333333;
	background:#9cf;
	cursor:pointer;
	overflow:hidden;
	box-sizing:border-box;
	
	-moz-user-select: none;
	-khtml-user-select: none;
	user-select: none;
}
div.sessUnit.HasBookmark {
	border:2px solid #e00;
}
div.sessUnit p {
	line-height:1.2 !important;
}
div.sessUnit p.time {
	float:left;
	margin-bottom:5px !important;
}
div.sessUnit p.time span {
	color:white;
	padding:0 2px !important;
	background:#666666;
}
div.sessUnit p.iconSet {
	float:left;
	padding:0 3px !important;
	opacity:0.8;
	margin-bottom: 5px !important;
}
div.sessUnit p.iconSet img {
	margin-right:1px !important;
	margin-top:1px !important;
}
div.sessUnit p.sessCode {
	color:white;
	background:black;
}
div.sessUnit p.searchStr,
div.sessUnit p.keywords {
	display:none;
}
div.sessUnit p.sess_name {
	font-weight:bold;
}
/*
div.sessUnit p.sess_name,
div.sessUnit cosponsor,
div.sessUnit p.participant {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}
div.sessUnit p.sess_name {
	-webkit-line-clamp: 3;
}
div.sessUnit p.cosponsor {
	-webkit-line-clamp: 1;
}
div.sessUnit p.participant {
	margin-top:5px !important;
	-webkit-line-clamp: 4;
}
*/
div.unitContainer {
	margin:0;
	margin-left:100px;
}

#contents #timeMapping .ses_box{
	clear:both;
	color:#333;
	margin:2px;
}

/*-----凡例-----*/

#legend{
	margin-top:8px;
	float:right;
	}
#iconRemarks {
	margin:10px 0;
}
#iconRemarksInner {
	box-sizing:border-box;
	/*border:2px solid #999;*/
	background:#EFEFEF;
    border-radius:2px;
}
#iconRemarks a {
	box-sizing:border-box;
	display:inline-block;
	/*white-space:nowrap;*/
	padding:5px;
}
#iconRemarks img {
	width:16px;
	padding:0 5px;
	vertical-align:middle;
}

/*-----色凡例-----*/

#colorRemarks {
	margin:10px 0;
}
#colorRemarksInner {
	box-sizing:border-box;
	background:#EFEFEF;
	border-radius:2px;
}
#colorRemarks span.ColorTip,
#filterPalette em.ColorTip {
	display:inline-block;
	box-sizing:border-box;
	vertical-align:middle;
	border:1px solid #aaa;
}
#colorRemarks span.ColorTip {
	width:1.5em;
	height:1em;
	margin:0 5px;
}
#filterPalette em.ColorTip {
	width:2.1em;
	height:1.4em;
	margin-right:5px;
}
#colorRemarks a {
	box-sizing:border-box;
	display:inline-block;
	padding:5px;
}


/*-----その他-----*/

.clear{ clear:both;}

.unMatchedMsg {
	clear:both;
	color:red;
	padding:10px 0;
}

#contents #timeLine{
/*-- winタッチパネルのIEで日程表が動かせないため対策 --*/
	touch-action: none;

}

/*-----現在時刻位置ボーダー-----*/

#NowBorder {
	position:absolute;
	z-index:1000;
	top:1px;
	width:0;
/*	border-left:1px solid red;*/
	border-left:2px solid #fa3d00;
}

/*-----十字スクロールハンドル-----*/

#scrollHandleSet {
	position:absolute;
	bottom:15px;
	right:15px;
	z-index:100;
}
#scrollHandle {
	position:relative;
	width:75px;
	height:75px;
	border:1px solid white;
	border-radius:50%;
	background:rgba(0,0,0,0.5);
	overflow:hidden;
}
#scrollHandle li {
	position:absolute;
	width:25px;
	height:25px;
	color:white;
	text-align:center;
	cursor:pointer;
}
#scrollHandle li.up {
	top:0;left:25px;
}
#scrollHandle li.down {
	bottom:0;left:25px;
}
#scrollHandle li.left {
	top:25px;left:0;
}
#scrollHandle li.right {
	top:25px;right:0;
}