@charset "UTF-8";


/* screens smaller than 1366---------------------------------------------------------- */
@media only screen and (max-width:1366px) {
#main__contents {
	width: 100%;
	padding: 20px 20px 100px;
}
}


/* タイムテーブルページ */
.program__container {
	line-height: 1.4;
}
.program__container .info__section {
	display: flex;
	align-items: center;
	font-size: 2em;
	font-weight: 700;
	margin-bottom: 1em;
}
.program__container .info__section .title {
	font-size: .7em;
	color: #fff;
	background-color: #090966;
	margin-right: .5em;
	padding: .1em .4em;
}
/* screens smaller than 690---------------------------------------------------------- */
@media only screen and (max-width:690px) {
.program__container .info__section {
	flex-direction: column;
	align-items: flex-start;
	grid-gap: .3em;
	font-size: 1.6em;
}
}


.program__container .program__timetable+.program__timetable {
	margin-top: 4em;
}

.program__container .program__timetable .cell {
	border-bottom: 1px solid #666;
	border-right: 1px solid #666;
}

.program__container .program__timetable .date__block {
	font-size: 1.6em;
	font-weight: 700;
	color: #02314d;
	border-top: 4px solid #207cb3;
	padding: .4em 0 .2em .2em;
}

.program__container .program__timetable .timetable__block {
	background-color: #fff;
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}
.program__container .program__timetable .timetable__block .columnSlider {
	width: 100%;
}

.program__container .program__timetable .timetable__block .block__column {
	display: flex;
	flex-direction: column;
	height: auto;
	/*background-color: #ccf;*/
}

.program__container .program__timetable .timetable__block .place__name {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 3em;
	font-weight: 700;
	color: #fff;
	text-align: center;
	background-color: #090966;
}

.program__container .program__timetable .timetable__block .hall__name {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 3em;
	font-weight: 700;
	color: #fff;
	text-align: center;
	background-color: #1d91c1;
}

.program__container .program__timetable .timetable__block .program__main {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	/*background-color: #f00;*/
}
.program__container .program__timetable .timetable__block .program__main__block {
	display: flex;
	flex-direction: column;
	height: 100%;
	/*background-color: #fc0;*/
}
.program__container .program__timetable .timetable__block .program__main__block+.program__main__block {
	border-top: 1px solid #666;
}

.program__container .program__timetable .timetable__block .program__main__block .program__block__time {
	display: flex;
	align-items: center;
	height: 1.8em;
	font-weight: 700;
	background-color: #d2ecf7;
	border-bottom: 1px solid #666;
	padding:  0 .5em;
}

.program__container .program__timetable .timetable__block .program__main__block .program__block__contents {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	/*background-color: #00f;*/
	padding: .5em;
}

.program__container .program__timetable .timetable__block .program__main__block .program__box {
	display: grid;
	grid-template-columns: 5em 1fr;
	grid-gap: .3em .5em;
	width: 100%;
	/*background-color: #ccc;*/
}
.program__container .program__timetable .timetable__block .program__main__block .program__box+.program__box {
	border-top: 1px dashed #666;
	margin-top: .5em;
	padding-top: .5em;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .logo img {
	width: 100%;
	height: auto;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .contents {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail {
	grid-column: 1 / span 2;
	margin-top: .5em;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50%;
	font-size: .8em;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	background-color: #083ba0;
	border-radius: .3em;
	padding: .25em 0;
	transition: .3s;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail:hover {
	opacity: .8;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail .icon {
	margin-left: .25em;
}

/* screens smaller than 1000---------------------------------------------------------- */
@media only screen and (max-width:1000px) {
.program__container {
	font-size: .9em;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail {
	font-size: .9em;
}
}
/* screens smaller than 768---------------------------------------------------------- */
@media only screen and (max-width:768px) {
.program__container .program__timetable .timetable__block .program__main__block .program__box {
	grid-template-columns: 4em 1fr;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail {
	width: 70%;
	font-size: .8em;
}
}
/* screens smaller than 690---------------------------------------------------------- */
@media only screen and (max-width:690px) {
.program__container {
	font-size: 1.1em;
}
.program__container .program__timetable .timetable__block {
	font-size: 1.3em;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box {
	grid-template-columns: 5.5em 1fr;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail {
	width: 60%;
	padding: .5em 0;
}
.program__container .program__timetable .timetable__block .program__main__block .program__box .detail .brn__detail:hover {
	opacity: 1;
}
}





/* 詳細ページ */
.program__container .back__page {
	display: flex;
	margin-bottom: 1.3em;
}
.program__container .back__page.bottom {
	margin-bottom: 0;
	margin-top: 1.3em;
}
.program__container .back__page > a {
	display: flex;
	align-items: center;
	font-size: 1em;
	font-weight: 700;
	color: #2b3b48;
	text-decoration: none;
	background-color: #e4f3ff;
	border: 1px solid #02569b;
	padding: .5em 1em;
	border-radius: .3em;
}
.program__container .back__page > a:hover {
	opacity: .8;
}
.program__container .back__page > a .icon {
	margin-right: .4em;
}

.program__detail__section {
	position: relative;
}

.program__detail__section .anchor {
	height: 0;
	position: absolute;
	top: -90px;
	left: 0;
}
/* screens smaller than 1440---------------------------------------------------------- */
@media only screen and (max-width:1440px) {
.program__detail__section .anchor {
	top: -80px;
}
}
/* screens smaller than 1366---------------------------------------------------------- */
@media only screen and (max-width:1366px) {
.program__detail__section .anchor {
	top: -70px;
}
}
/* screens smaller than 690---------------------------------------------------------- */
@media only screen and (max-width:690px) {
.program__detail__section .anchor {
	top: -50px;
}
}

.program__detail__section+.program__detail__section {
	margin-top: 80px;
}
.program__detail__section .detail__section__info .detail__info {
	/*display: grid;
	grid-template-columns: 10em 10em 1fr;*/
	display: flex;
	flex-wrap: wrap;
	font-size: 1.3em;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
	background-color: #00569b;
	/*margin-bottom: .8em;*/
	padding: .5em 1em;
}
.program__detail__section.area .detail__section__info .detail__info {
	background-color: #009b6d;
}
.program__detail__section.poster .detail__section__info .detail__info {
	background-color: #d17500;
}
.program__detail__section .detail__section__info .detail__info > div+div {
	border-left: 2px solid rgba(255, 255, 255, .7);
	margin-left: 1em;
	padding-left: 1em;
}
.program__detail__section .detail__section__info .detail__info .location {
	display: flex;
	gap: 0 .5em;
	width: 100%;
	border-left: 0;
	margin-left: 0;
	padding-left: 0;
	margin-top: .4em;
}
.program__detail__section .detail__section__info .detail__info .location > div+div {
	border-left: 2px solid rgba(255, 255, 255, .7);
	margin-left: 1em;
	padding-left: 1em;
}

.program__detail__section .detail__section__info .detail__category {
	padding: 1em .5em;
}
.program__detail__section .detail__section__info .detail__category .category__name {
	display: flex;
	flex-direction: column;
	font-size: 1.6em;
	font-weight: 700;
}

.program__detail__section .detail__section__list {
	position: relative;
}
.program__detail__section .detail__section__list+.detail__section__list {
	border-top: 3px dashed #333;
	margin-top: 40px;
	padding-top: 40px;
}
.program__detail__section .detail__section__list .program__detail {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.program__detail__section .detail__section__list .program__detail+.program__detail {
	margin-top: 1em;
}

.program__detail__section .detail__section__list .program__detail__info {
	display: flex;
	align-items: center;
	/*font-size: 1.2em;*/
	font-weight: 700;
	line-height: 1.2;
	background-color: #2e8bd8;
	padding: .4em .8em .4em .4em;
}
.program__detail__section .detail__section__list .breaktime .program__detail__info,
.program__detail__section .detail__section__list .stage__change .program__detail__info {
	width: 100%;
	background-color: #4b4b4b;
	padding: .7em .8em .7em .4em;
}

.program__detail__section .detail__section__list .program__detail__info .program__detail__time {
	font-size: .9em;
	background-color: #fff;
	border-radius: 100vh;
	padding: .1em .5em;
}
.program__detail__section .detail__section__list .program__detail__info .program__detail__category {
	color: #fff;
	margin-left: .8em;
}


.program__detail__section .detail__section__list .program__detail__contents {
	width: 100%;
	background-color: #f4f4f4;
	border: 2px solid #2e8bd8;
	padding: .5em;
}

.program__detail__section .detail__section__list .program__detail__contents .detail__contents__block+.detail__contents__block {
	border-top: 2px dashed #83888e;
	margin-top: .5em;
	padding-top: .5em;
}

.program__detail__section .detail__section__list .program__detail__contents .contents__title {
	display: flex;
	font-size: 1.2em;
	font-weight: 700;
	color: #00457e;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__title::before {
	content: "\25C9";
	margin-right: .3em;
}

.program__detail__section .detail__section__list .program__detail__contents .contents__speaker {
	padding: .5em 0 0 1.3em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .list__item+.list__item {
	border-top: 1px dashed #666;
	margin-top: .3em;
	padding-top: .3em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .list__item .speaker__box {
	display: flex;
	gap: .7em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .id__num {
	font-size: .9em;
	color: #00457e;
	background-color: #fff;
	border: 1px solid #00457e;
	border-radius: 100vh;
	padding: .05em .4em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .country {
	font-size: .9em;
	background-color: #ccc;
	padding: .05em .4em;
}



.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .profile__popup {
	display: flex;
	margin-top: .5em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .profile__popup .click__here {
	font-size: .9em;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
	text-decoration: none;
	background-color: #eb4747;
	border-radius: .3em;
	padding: .3em .6em;
}
.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .profile__popup .click__here:hover {
	opacity: .8;
}

.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .profile__popup .click__here.noLink {
	pointer-events: none;
	color: #848484;
	background-color: #eb4747;
}



/* screens smaller than 850---------------------------------------------------------- */
@media only screen and (max-width:850px) {
.program__detail__section .detail__section__info .detail__info {
	font-size: 1.25em;
	padding: .5em;
}
.program__detail__section .detail__section__info .detail__info > div+div {
	border-left: 1px solid rgba(255, 255, 255, .7);
	margin-left: .6em;
	padding-left: .6em;
}
.program__detail__section .detail__section__info .detail__info .location > div+div {
	border-left: 1px solid rgba(255, 255, 255, .7);
	margin-left: .6em;
	padding-left: .6em;
}
}
/* screens smaller than 768---------------------------------------------------------- */
@media only screen and (max-width:768px) {
.program__detail__section .detail__section__info .detail__info {
	/*flex-wrap: wrap;
	gap: .4em 0;*/
}
.program__detail__section .detail__section__info .detail__info .location {
	flex-direction: column;
	gap: .4em 0;
	width: 100%;
	border: 0;
	margin-left: 0;
	padding-left: 0;
}
.program__detail__section .detail__section__info .detail__info .location > div+div {
	border-left: 0;
	margin-left: 0;
	padding-left: 0;
}
}
/* screens smaller than 690---------------------------------------------------------- */
@media only screen and (max-width:690px) {
.program__detail__section+.program__detail__section {
	margin-top: 50px;
}

.program__detail__section .detail__section__list .program__detail__contents .contents__speaker .list__item .speaker__box {
	flex-wrap: wrap;
	gap: .15em;
}
}





