@charset "UTF-8";
#detail .lower_ttl{
	padding: 30px 0 0;
}
.lower_ttl > .session{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
    bottom: -50px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
.lower_ttl > .session .txt_Box h2{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
    color: #333;
    padding-bottom: 10px;
    border-bottom: var(--gray) 1px solid;
}
.lower_ttl > .special-session{
	position: relative;
	max-width: 90%;
	margin: 30px 0 0 auto;
    bottom: -50px;
}
.lower_ttl > .special-session .sub_ttl{
	display: inline-block;
	background: var(--orange);
	padding: 5px 10px;
	font-size: 20px;
	font-weight: 500;
	color: #fff;
	margin-bottom: 10px;
}
#detail .special-session.keynote01 .ss-txt_Box{
	width: 48%;
	padding: 30px 0 10px 30px;
}
#detail .special-session.keynote02 .ss-txt_Box{
    width: 75%;
}
#detail .special-session.keynote01 .speaker-img{
	width: 50%;
}
#detail .special-session.keynote02 .speaker-img{
    width: 25%;
}
#detail .special-session .speaker-img figure img{
	clip-path: none;
}
#detail .special-session .speaker-img figure::after{
	height: 105%;
    top: -5%;
	left: 0;
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info{
	margin-top: 20px;
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers{
	flex-wrap: wrap;
	align-items: flex-start;
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li{
    width: 49%;
	margin-bottom: 20px;
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li .speaker-name{
	position: relative;
	font-size: 16px;
	line-height: 1;
	padding-left: 1em;
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li .speaker-name::before{
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--orange);
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li .speaker-position{
	font-size: 12px;
	line-height: 1.3;
}
.session-detail_Wrap .white_bg{
	padding: 50px 0 30px;
	background-color: #fff;
}
.session-detail_Wrap .txt{
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
	padding-bottom: 20px;
}
.detail-recommend_con{
	text-align: center;
	width: 90%;
    max-width: 800px;
    margin: 0 auto;
	padding-top: 20px;
	border-top: var(--gray) 1px solid;
}
.detail-recommend_til{
	margin-bottom: 20px;
}
.detail-recommend_til span{
	display: inline-block;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	padding: 8px 10px 5px;
	background: var(--orange);
}
.detail-recommend_li{
	padding-left: 1.4em;
	display: inline-block;
}
.detail-recommend_li li{
	position: relative;
	font-size: 18px;
	line-height: 1;
	margin-bottom: 12px;
	text-align: left;
}
.detail-recommend_li li::before{
	position: absolute;
	content: "";
	background: url(../img/list-head.png) center center no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	top: -1px;
	left: -1.4em;
}
.tokuten{
	margin-top: 30px;
	background: #fff;
	border: solid 2px var(--orange);
}
.tokuten h3{
	background: var(--orange);
	text-align: center;
	color: #fff;
	font-size: 18px;
	padding: 4px 0;
}
.tokuten h4{
    width: 96%;
    margin: 0 auto;
	font-size: 18px;
    text-align: center;
    color: #1a1a1a;
    padding: 16px 10px 13px;
	font-weight: bold;
    line-height: 1.2;
}
.tokuten p{
	width: 96%;
    margin: 0 auto;
	padding: 10px 20px 20px;
	border-top: var(--gray) 1px solid;
}
.btn_flex > a.cv_Btn{
	max-width: none;
}

section.session-movie_Wrap{
	padding: 100px 0 0;
}
.session-movie_Wrap .youtube_Box{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.session-movie_Wrap .youtube_Box iframe{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.session-movie_Wrap .session-Bnr{
	display: block;
	margin-top: 20px;
	transition: 0.3s;
}
.session-movie_Wrap .session-Bnr:hover{
	opacity: 0.7;
}
#detail .detail_btn{
    margin-top: 80px;
}
#detail .detail_btn a{
	margin: auto;
}
#detail .detail-recommend_con .detail_btn{
	margin-top: 20px;
}
#detail .session-detail_Wrap{
    padding-top: 30px;
}
.free{
	display: inline-block;
    background: #fff;
    color: #f4340f;
    font-size: 1.6rem;
    line-height: 1.1;
	padding: 4px 10px 3px 11px;
    margin-right: 5px;
    border-radius: 5px;
	font-weight: 500;
}
.cv_Btn.grad:hover .free{
	background: var(--gradation);
	color: #fff;
}
/* ==============================================================
PC(1600px~)
============================================================== */
@media screen and (min-width: 1600px) {

	.lower_ttl > .special-session{
		max-width: 1400px;
		margin: 30px auto 0;
	}
}

/* ==============================================================
PC(~1290px)
============================================================== */
@media screen and (max-width:1290px) {

}

/* ==============================================================
SP(~768px)
============================================================== */
@media screen and (max-width:768px) {
	#detail .detail_btn{
		width: 100%;
        margin: 60px auto 0;
        max-width: 300px;
	}
	.lower_ttl > .session{
		bottom: -25px;
	}
	.session .txt_Box .sp-Box h2{
        font-size: 16px;
        border-bottom: none;
        padding: 0;
    }
	.lower_ttl > .special-session{
		max-width: 95%;
		margin: 0 0 0 auto;
		bottom: -25px;
	}
	.lower_ttl > .special-session.keynote01 .sub_ttl {
		font-size: 16px;
		line-height: 1.2;
	}
	#detail .special-session.keynote01 .ss-txt_Box,
	#detail .special-session.keynote02 .ss-txt_Box{
		width: 100%;
		padding: 15px 0 0 15px;
	}
	#detail .special-session .ss-txt_Box h4{
		padding: 0 10px 10px 0;
	}
	#detail .special-session .ss-txt_Box .campany-info {
		margin-top: 15px;
	}
	#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers{
		padding-right: 10px;
	}
	#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li {
		margin-bottom: 5px;
	}
	#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li:last-child{
		width: 100%;
	}
	#detail .special-session.keynote01 .ss-txt_Box .campany-info .keynote-speakers li .speaker-name{
		margin-bottom: 5px;
	}
	#detail .special-session.keynote01 .speaker-img{
		width: 100%;
		margin-top: 20px;
	}
	#detail .special-session.keynote02 .speaker-img{
		width: 50%;
	}
	#detail .special-session .speaker-img.sp figure::after {
        position: absolute;
        content: "";
        width: 100%;
        height: 105%;
        clip-path: polygon(15% 0, 100% 0, 100% 100%, 0% 100%);
        background: var(--gradation);
        top: -5%;
        left: 0;
        z-index: -1;
	}
	/* section.session-detail_Wrap {
		padding: 30px 0;
	} */
	.session-detail_Wrap .white_bg {
		padding: 25px 0;
	}
	.detail-recommend_con{
		width: 90%;
		margin: 0 auto;
	}
	.detail-recommend_til span{
		font-size: 16px;
	}
	.detail-recommend_li li{
		width: 100%;
		font-size: 14px;
		line-height: 1.4;
		margin-bottom: 8px;
	}
	.detail-recommend_li li::before {
        width: 14px;
        height: 14px;
		top: 2px;
	}
	.tokuten h3 {
		font-size: 16px;
		line-height: 1;
		padding: 10px 0 8px;
	}
	.tokuten h4 {
		font-size: 16px;
        line-height: 1.3;
        padding: 12px 10px 8px;
        text-align: left;
	}
	.tokuten p {
		padding: 10px 10px 20px;
		font-size: 14px;
		line-height: 1.4;
	}
	section.session-movie_Wrap {
		padding: 50px 0 0;
	}
	.gift_Wrap a.movie{
		width: 100%;
		max-width: none;
	}
}


.other_detail{
	padding: 50px 0;
}
.session {
    display: block;
    position: relative;
    width: 100%;
    padding: 20px;
    background: #fff;
    transition: 0.3s;
}
.Wrap_ttl {
    text-align: center;
}
.Wrap_ttl h2.jp_ttl {
    color: #1a1a1a;
    font-weight: normal;
    font-size: 2.4rem;
    font-family: inherit;
    position: relative;
    margin-bottom: 30px;
    border-bottom: 3px solid #1a1a1a;
    padding-bottom: 10px;
	display: inline-block;
}
.session_list {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}
.session_list .session_list_con {
    width: 31.5%;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0px 1px 7px 2px rgba(119, 124, 142, 0.15);
    margin-bottom: 30px;
    margin: 9px;
}
.session_list .session {
    position: relative;
    height: 100%;
    margin: 0;
    padding: 20px 20px 26px;
    border-radius: 5px;
}
.other_detail .session.keynote .keynote {
    display: block;
    position: absolute;
    background: #1a1a1a;
    color: #fff;
    top: -20px;
    left: -8px;
    padding: 7px 6px 5px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 500;
    font-family: "Palatino", sans-serif;
    line-height: 1;
}
.other_detail .session.keynote .keynote .ic {
    display: inline-block;
    width: 15px;
    margin-right: 5px;
}
.session_list .session .category-time_flex {
    margin-bottom: 12px;
}
.session .category-time_flex {
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 8px;
}
.flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.session_list .session .category-time_flex .date {
    font-size: 1.8rem;
    font-weight: 400;
    font-family: "Poppins", serif;
    margin-right: 10px;
    background-color: #1a1a1a;
    color: #fff;
    padding: 3px 5px;
}
.session_list .session h3 {
    font-size: 1.6rem;
    padding-left: 0px;
    border: none;
	font-weight: bold;
    line-height: 1.4;
    margin-bottom: 20px;
}
.session_list .speaker {
    align-items: flex-start;
    flex-wrap: nowrap;
    margin-bottom: 0;
}
.session_list .session .speaker .speaker-img {
    width: 140px;
    flex-shrink: 0;
	height: 20%;
	flex: none;
}
.session .speaker .speaker-img {
    position: relative;
    overflow: hidden;
}
.session_list .session_r {
    width: 100%;
    margin-left: 20px;
}
.session_list .session .speaker .logo-img {
    width: 70%;
    margin: 0 0 20px 0;
	max-width: 140px;
}
.session_list .session .speaker-detail {
    margin: 0;
}
.session_list .session .name {
    font-size: 1.6rem;
}
.session .speaker-detail .name {
    line-height: 1;
    font-weight: bold;
    margin-bottom: 10px;
}
.session .speaker-detail .name small {
    font-size: 80%;
}
.other_detail .session .speaker-detail .company {
    font-size: 1.3rem;
	line-height: 1.4;
}
.session_list a.session:hover {
    transform: unset;
    transform: scale(1.05, 1.05);
}
a.session {
    cursor: pointer;
}
.other_detail .btn_flex{
	width: 70%;
	margin: auto;
}
@media screen and (max-width: 1000px) {
    .other_detail .session_list {
        justify-content: center;
    }
	.other_detail .session_list .session_list_con {
        width: 46%;
    }
}
@media screen and (max-width: 768px) {
	.other_detail .session_list .session_list_con {
        width: 100%;
    }
	.other_detail .btn_flex{
		width: 95%;
	}
}

main#detail_01 .other_detail .session_list_con.detail01,
main#detail_02 .other_detail .session_list_con.detail02,
main#detail_03 .other_detail .session_list_con.detail03,
main#detail_04 .other_detail .session_list_con.detail04,
main#detail_05 .other_detail .session_list_con.detail05,
main#detail_06 .other_detail .session_list_con.detail06,
main#detail_07 .other_detail .session_list_con.detail07{
    display: none;
}
.session-att{
	font-size: 1.4rem;
    font-weight: 600;
    color: #818188;
}