@charset "utf-8";

/*****************************************************************************
.session-heading
*****************************************************************************/
.session-heading {
    padding: 50px 10px 25px 10px;
}
.session-heading > div {
    max-width: 1000px;
    margin: 0 auto;
}

.session-heading h1 {
    font-size: 150%;/*24*/
}
.session-heading p {
    font-size: 81.3%;/*13*/
}



/*****************************************************************************
.session-container
*****************************************************************************/
.session-container {
    padding: 0 10px 75px 10px;
}
.session-container > div {
    max-width: 1000px;
    margin: 0 auto;
}



/*****************************************************************************
ul.session-filter
*****************************************************************************/
/* 全階層共通 ******************/
ul.session-filter li {
    list-style: none;
    font-size: 75%;/*12*/
    line-height: 1.25;
    color: #000;
}
ul.session-filter li.selected {
    color: #999;
}

/* 第一階層 *******************/
ul.session-filter > li {
    float: left;
    margin: 0 10px 10px 0;
    position: relative;
    cursor: pointer;
}
ul.session-filter > li.showall { width: 83px; }
ul.session-filter > li.date    { width: 108px; }
ul.session-filter > li.ch      { width: 97px; }
ul.session-filter > li.track   { width: 121px; }
ul.session-filter > li.tech    { width: 133px; margin-right: 0; }
ul.session-filter > li.purpose { width: 97px; margin-left: 10px; }

ul.session-filter > li > div {
    background-color: #F5F4F4;
    box-sizing: border-box;
    border: solid 1px #DCDBDB;
    padding-left: 10px;
    height: 36px;
    line-height: 34px;
}
ul.session-filter > li > div:hover {
    background-color: #E0E0E0;
}

ul.session-filter > li > div > span {
    background: url("../images/common/session_filter_down.png") no-repeat right center;
    background-size: 10px 7px;
    padding-right: 15px;
}
ul.session-filter > li > div > span.opened {
    background-image: url("../images/common/session_filter_up.png");
}

/* 第二階層 *******************/
ul.session-filter > li > ul {
    display: none;
    background-color: #F5F4F4;
    box-sizing: border-box;
    border: solid 1px #DCDBDB;
    position: absolute;
    top: 35px;
    left: 0;
    z-index: 8;
    width: 100%;
}
ul.session-filter > li > ul > li {
    font-size: 100%;/*12*/
    padding: 10px 0 10px 10px;
}
ul.session-filter > li > ul > li:hover {
    background-color: #EEEEEE;
}

/* カテゴリで選択 */
ul.session-filter > li.track > ul > li {
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 10px 10px;
    padding-left: 25px;
}
ul.session-filter > li.track > ul > li.track1 { background-image: url("../images/common/session_track1.png"); }
ul.session-filter > li.track > ul > li.track2 { background-image: url("../images/common/session_track2.png"); }
ul.session-filter > li.track > ul > li.track3 { background-image: url("../images/common/session_track3.png"); }
ul.session-filter > li.track > ul > li.track4 { background-image: url("../images/common/session_track4.png"); }
ul.session-filter > li.track > ul > li.track5 { background-image: url("../images/common/session_track5.png"); }
ul.session-filter > li.track > ul > li.track6 { background-image: url("../images/common/session_track6.png"); }
ul.session-filter > li.track > ul > li.track7 { background-image: url("../images/common/session_track7.png"); }
ul.session-filter > li.track > ul > li.track8 { background-image: url("../images/common/session_track8.png"); }




/*****************************************************************************
.filter-title
*****************************************************************************/
.filter-title {
    font-weight: 600;
    font-size: 118.8%;/*19*/
    margin: 1em 0;
}
.filter-title span {
    display: none;
}
.filter-title .showall {
    display: inline;
}



/*****************************************************************************
.session-bar
*****************************************************************************/
.session-bar {
    background-color: #EEEDED;
    height: 35px;
    position: relative;
}
.session-bar > div {
    position: absolute;
    top: 9px;
    font-size: 75%;/*12*/
    color: #666;
}
.session-bar .date-time {
    left: 10px;
}
.session-bar .session-track {
    left: 163px;
}
.session-bar .open-close {
    right: 10px;
    color: #000;
}
.session-bar .open-close span:hover {
    cursor: pointer;
    opacity: 0.8;
}
@media screen and (max-width: 700px) {
    .session-bar {
        background-color: #FFF;
    }
    .session-bar .date-time,
    .session-bar .session-track {
        display: none;
    }
}



/*****************************************************************************
.session
*****************************************************************************/
.session {
    border-bottom: solid 1px #CCC;
    padding: 10px 0;
    position: relative;
    transition: background-color 0.5s;
}
.session.opened {
    background-color: #FAFAFA;
    transition: background-color 0.5s;
}

/* .bar ************************/
.session .bar {
    display: none;
}

/* .btn_plus-minus ************************/
.session .btn_plus-minus {
    width: 44px;
    height: 44px;
    position: absolute;
    top: 10px;
    right: 0;
    cursor: pointer;
    background-image: url("../images/common/session_btn_plus.png");
    background-repeat: no-repeat;
    background-position: center center;
}
.session .btn_plus-minus.opened {
    background-image: url("../images/common/session_btn_minus.png");
}

/* .date ************************/
.session .date {
    font-size: 81.3%;/*13*/
    position: absolute;
    top: 13px;
    left: 10px;
}
.session .date span {
    font-weight: 600;
    font-size: 115.4%;/*15*/
}

/* .time ************************/
.session .time {
    font-size: 81.3%;/*13*/
    position: absolute;
    top: 13px;
    left: 75px;
}

/* .track ************************/
.session .track {
    font-size: 75%;/*12*/
    line-height: 1.25;
    width: 150px;
    position: absolute;
    top: 25px;
    right: 50px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 12px 12px;
    box-sizing: border-box;
    padding-left: 17px;
}
.session .track.line2 {
    top: 17px;
}
.session.track1 .track { background-image: url("../images/common/session_track1.png"); }
.session.track2 .track { background-image: url("../images/common/session_track2.png"); }
.session.track3 .track { background-image: url("../images/common/session_track3.png"); }
.session.track4 .track { background-image: url("../images/common/session_track4.png"); }
.session.track5 .track { background-image: url("../images/common/session_track5.png"); }
.session.track6 .track { background-image: url("../images/common/session_track6.png"); }
.session.track7 .track { background-image: url("../images/common/session_track7.png"); }
.session.track8 .track { background-image: url("../images/common/session_track8.png"); }

/* .anchor ***********************/
.session .anchor {
	position: absolute;
	top: 0;
}

/* .title *************************/
.session .title {
	font-size: 81.3%;/*13*/
    border-left: solid 3px;
    padding-left: 10px;
    margin: 0 225px 0 150px;
    cursor: pointer;
}
.session.track1 .title { border-color: #FF665A; }
.session.track2 .title { border-color: #FFD426; }
.session.track3 .title { border-color: #2F9FBC; }
.session.track4 .title { border-color: #34C759; }
.session.track5 .title { border-color: #9D70BA; }
.session.track6 .title { border-color: #CBA1E6; }
.session.track7 .title { border-color: #A05A00; }
.session.track8 .title { border-color: #AEAEB2; }

.session .title span.id {
    display: inline-block;
    padding-right: 1em;
}
.session .title span.type {
	display: inline-block;
    font-size: 84.6%;/*11*/
    color: #777;
}
.session .title strong {
	display: inline-block;
    padding-top: 5px;
}

/* .detail *************************/
.session .detail {
    display: none;
    margin: 0 10px 0 163px;
}

.session .detail p {
    font-size: 81.3%;/*13*/
    margin: 1em 0;
}

/* スピーカー */
.session.track1 .detail p.speaker a { color: #993831; }
.session.track2 .detail p.speaker a { color: #A05A00; }
.session.track3 .detail p.speaker a { color: #186A80; }
.session.track4 .detail p.speaker a { color: #208A3D; }
.session.track5 .detail p.speaker a { color: #663E80; }
.session.track6 .detail p.speaker a { color: #663E80; }
.session.track7 .detail p.speaker a { color: #A05A00; }
.session.track8 .detail p.speaker a { color: #6C6C70; }

.session .detail p.speaker a:hover {
	opacity: 0.8;
}

/* タイムテーブル */
.session .detail p.timetable {
    font-size: 68.8%;/*11*/
}

/* ご登録 */
.session .detail p.register {
    font-size: 68.8%;/*11*/
}

/* リスト */
.session .detail ul {
    font-size: 81.3%;/*13*/
    margin: 1em 0;
}
.session .detail ul li {
	margin: 0.25em 0 0 1.5em;
}

/* .share *************************/
.share {
    letter-spacing: -.4em;
    padding-bottom: 10px;
    /*display: none;*/
}
.share a {
    letter-spacing: normal;
    display: inline-block;
    width: 20px;
    height: 20px;
}
a.share_t {
    background: url("../images/common/icon_sns_gray_t_v2.png") no-repeat center center;
    background-size: 20px 20px;
}
a.share_f {
    background: url("../images/common/icon_sns_gray_f.png") no-repeat center center;
    background-size: 20px 20px;
    margin-left: 20px;
}

@media screen and (max-width: 700px) {

.session .bar {
    display: block;
    background-color: #EEEDED;
    width: 100%;
    height: 35px;
    position: absolute;
    top: 0;
}

.session .btn_plus-minus {
    top: 44px;
}

.session .date {
	top: 8px;
}

.session .time {
    top: 48px;
    left: 10px;
}

.session .track {
    width: auto;
    top: 10px !important;
    right: 10px;
}
.session .track br {
    display: none;
}

.session .title {
    margin: 35px 50px 0 75px;
}

.session .detail {
    margin-left: 10px;
}

}



/*****************************************************************************
日付、時間、チャンネルなしの臨時対応
*****************************************************************************/
/*
.session .date.undecided {
	color: #bbb;
}
.session .time {
    color: #bbb;
}
.session .title span.type {
	display: none;
}
*/


