@charset "UTF-8";

/*-----------------------------------
	ページごとの設定
-----------------------------------*/

/*----- page_home -----*/
#page_home{
	box-sizing:border-box;
	width:770px;
	background:url(../img/home_illust_01.jpg) center top no-repeat;
	box-shadow:0 0 5px rgba(0,0,0,.3);
	text-align:left;
}
#page_home .meeting_info{
	margin:0;
	min-height:367px;
}
#page_home .meeting_info img{
	vertical-align:bottom;
	line-height:.5rem;
	margin-top: 1rem;
}
#page_home .meeting_info .details{
	margin-top: 0px;
}
#page_home .meeting_info .details_02{
	margin-top: 0px;
	margin-bottom: 1rem;
}
#page_home .term_notice{
	display:flex;
	justify-content:space-between;
	padding:0 35px 20px;
}
#page_home .term_box{
	margin:0 auto;
	padding:8px 10px;
	width:49%;
	background:rgb(255,255,255);
	border:solid 2px rgb(215, 81, 110);
	border-radius:6px;
	color:rgb(215, 81, 110);
	font-weight:700;
	text-align:center;
}
#page_home .term_box .title{
	margin:0 0 3px;
	padding-bottom:3px;
	border-bottom:dotted 1px rgb(215, 81, 110);
	font-size:1.25rem;
	line-height:1.3;
}
#page_home .term_box .term{
	margin:0;
	font-size:1.25rem;
	line-height:1.3;
}
#page_home .term_box .note{
	margin:0;
	font-size:.625rem;
	line-height:1.6;
}

#page_home .term_box02{
	margin:0 auto;
	padding:8px 10px;
	width:100%;
	background:rgb(255,255,255);
	border:solid 2px rgb(215, 81, 110);
	border-radius:6px;
}
#page_home .term_box02 .title{
	margin:0 0 3px;
	padding-bottom:3px;
	border-bottom:dotted 1px rgb(215, 81, 110);
	font-size:1.35rem;
	font-weight:700;
	color:rgb(215, 81, 110);
	text-align:center;
	line-height:1.3;
}
#page_home .term_box02 .heading{
	margin:.3em 0;
	font-size:1.1rem;
	font-weight:700;
	color:rgb(215, 81, 110);
	line-height:1.3;
}
#page_home .term_box02 .heading_small{
	font-size:1rem;
	color:rgb(215, 81, 110);
	line-height:1.3;
}
#page_home .term_box02 .note{
	margin:0;
	font-size:.625rem;
	line-height:1.6;
}
#page_home .term_box02 p{
	margin:0;
	font-size: .87rem;
	line-height:1.6;
}

#change_log{
	box-sizing:border-box;
	margin:0 auto;
	padding:40px 35px 0;
	width:100%;
	background:rgb(108, 108, 108);
}
#change_log h2{
	margin:0;
	padding-bottom:.2em;
	border-bottom:solid 1px rgb(255,255,255);
	font-size:1rem;
	color:rgb(255,255,255);
	font-weight:400;
	line-height:1.5;
}
#change_log .log_outer{
	height:215px;
	overflow-y:scroll;
}
#change_log dl{
	display:flex;
	flex-wrap:wrap;
	margin:0;
	font-size:.937rem;
}
#change_log dl dt,
#change_log dl dd{
	box-sizing:border-box;
	padding-top:.8em;
	padding-bottom:.8em;
	border-bottom:dotted 1px rgb(255,255,255);
	line-height:1.5;
	color:rgb(255,255,255);
}
#change_log dl dt{
	padding-left:6px;
	width:130px;
}
#change_log dl dt::before{
	box-sizing:border-box;
	content:"";
	display:inline-block;
	width:5px;
	height:5px;
	margin-right:8px;
	background:rgb(229, 0, 18);
	border-radius:2.5px;
	vertical-align:10%;
}
#change_log dl dd{
	margin:0;
	width:calc(100% - 130px);
}

#change_log dl dd a{
	color:rgb(255,0,0);
	transition:opacity .2s ease-out;
}

#change_log dl dd a:hover{
	opacity:.5;
}

/*------------------------------
	page_message
------------------------------*/
#page_message .text{
	text-indent:1em;
}
#page_message .photo{
	margin:1rem .3rem 0 1rem;
	width:160px;
	box-shadow:0 0 5px rgba(0,0,0,.3);
	float:right;
}
#page_message .photo img{
	display:block;
	width:100%;
	line-height:0;
	vertical-align:bottom;
}
#page_message .title{
	margin:30px 0 0;
	padding-right:1rem;
	font-size:.875rem;
	line-height:1.5;
	text-align:right;
}
#page_message .title_en{
	margin:10px 0 0;
	padding-right:1rem;
	font-size:.875rem;
	line-height:1.5;
	text-align:right;
}
#page_message .name{
	margin:0;
	padding-right:1rem;
	font-size:1.25rem;
	font-weight:700;
	line-height:1.5;
	text-align:right;
}
#page_message .name small{
	font-size:.875rem;
	font-weight:400;
}
#page_message .name_en{
	margin:50px 0 0;
	padding-right:1rem;
	font-size:1.25rem;
	font-weight:700;
	line-height:1.5;
	text-align:right;
}
#page_message .affi{
	margin:0 0 50px;
	padding-right:1rem;
	font-size:.875rem;
	text-align:right;
}
#page_message .main_text{
	text-indent:1em;
}
#page_message .main_text p{
	margin:0;
}




/*------------------------------
	page_overview
------------------------------*/
#page_overview h2{
	margin-bottom:0;
}
#page_overview dl{
	display:flex;
	flex-wrap:wrap;
	margin:0;
	font-size:.937rem;
}
#page_overview dl dt,
#page_overview dl dd{
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	padding:1.3em 0.5em;
	border-bottom:solid 1px rgb(200,200,200);
}
#page_overview dl dt{
	margin:0;
	padding-left:.5em;
	width:140px;
	color:rgb(215, 81, 110);
	font-weight:600;
}
#page_overview dl dd{
	margin:0;
	width:calc(100% - 140px);
}


/*------------------------------
	page_program
------------------------------*/
#page_program h3{
	margin-bottom:.7em;
	padding:.3em .4em .4em 1.6em;
	background:rgb(245,245,245);
	border-left:solid 3px rgb(120,40,0);
	box-shadow:0 0 5px rgba(0,0,0,.2);
	text-indent:-1em;
}
#page_program .date{
	margin-top: 2rem;
	padding-left: .9em;
	font-size:1.3rem;
	font-weight:700;
	line-height:1.5;
	color: rgb(160,80,20);
}
#page_program .venue{
	padding-left: .9em;
	font-size:1.062rem;
	font-weight:700;
	line-height:1.5;
	color: rgb(160,80,20);
}
#page_program .venue .time{
	font-size:.937rem;
}
#page_program .session_theme{
	margin:.8em 0 .8em 1rem;
	padding-bottom:.3em;
	font-size:1.125rem;
	font-weight:700;
	border-bottom:dotted 1px rgb(180,180,180);
	color:rgb(120,40,0);
	line-height:1.5;
}
#page_program .speakers_box{
	margin:0 0 0 1rem;
	line-height:1.6;
}
#page_program .speakers_box dt{
	margin:0;
	width:110px;
	border:solid 1px rgb(60,60,60);
	border-radius:3px;
	font-size:.875em;
	font-weight:700;
	color:rgb(60,60,60);
	text-align:center;
	float:left;
}
#page_program .speakers_box dd{
	margin:0 0 0 125px;
	padding-bottom:.6em;
	font-size:.937em;
	font-weight:700;
}
#page_program  .title{
	display:block;
	margin-top:.5em;
	margin-bottom: 1rem;
	border-bottom: solid 1px rgb(180,180,180);
	font-size:1.1em;
	color:rgb(215, 81, 110);
	line-height:1.4;
}
#page_program .speakers_box dt + dd .title{
	margin-top:-.05em;
}
#page_program .speakers_box dd .affi{
	display:inline-block;
	padding-left:.5em;
	font-size:.9em;
	font-weight:400;
	text-indent:-.5em;
}
#page_program .speakers_box dd + dt,
#page_program .speakers_box dd + dt + dd{
	margin-top:.5em;
}
#page_program .flyer {
	text-align: center;
	font-size:.8em;
	line-height: 1.5;
	font-weight:600;
}
#page_program .flyer img{
    color: rgba(255,255,255,1.00);
		text-decoration: none;
		display: block;
		cursor: pointer;
		width: 120px;
}
#page_program .flyer a:hover{
	background:rgb(255,255,255,1.00);
	color:rgba(247,147,30,1.00);
	border:solid 1px rgba(247,147,30,1.00);
}
#page_program .session_wrap{
	display: flex;
}
#page_program .credit{
	margin:.9em 0 2.5em 1rem;
	padding:.1em .5em;
	border:solid 1px rgb(160,80,20);
	border-radius:3px;
	font-weight:700;
}
#page_program .credit::before{
	content:"";
	box-sizing:border-box;
	display:inline-block;
	margin-right:6px;
	width:8px;
	height:8px;
	border:solid 2px rgb(160,80,20);
	border-radius:4px;
	vertical-align:6%;
}
#page_program .red_box{
	display:inline-block;
	padding:0 5px;
	background:rgb(240,30,30);
	font-size:.937rem;
	color:rgb(255,255,255);
}
#page_program .blue_box{
	display:inline-block;
	padding:0 5px;
	background:rgb(4, 110, 238);
	font-size:.937rem;
	color:rgb(255,255,255);
}


/*------------------------------
	page_abstract
------------------------------*/
#page_abstract .period{
	padding:.5em 1em;
	border:solid 2px rgb(255,130,130);
	border-radius:5px;
	color:rgb(255,130,130);
	text-align:center;
	font-size:1.062rem;
	font-weight:700;
}

#page_abstract .period p{
	padding: .5em 1em;
	border: solid 2px rgb(255,130,130);
	border-radius: 5px;
	color: rgb(255,130,130);
	text-align: center;
	font-size: 1.062rem;
	font-weight: 700;
}

#page_abstract table.type01{
	margin:.5em 0;
	width:100%;
	border-collapse:collapse;
	font-size:.937rem;
	line-height:1.5;
	text-align:left;
}

#page_abstract table.type01 th,
#page_abstract table.type01 td{
	padding:.5em .8em;
	border:solid 1px rgb(180,180,180);
}

#page_abstract table.type01 th{
	background:rgb(240,240,240);
	font-weight:700;
}
#page_abstract .flowchart{
	display:flex;
	justify-content:space-between;
	margin:1rem 0;
	padding:0;
	font-size:.937rem;
	line-height:1.5;
	text-align:center;
	list-style:none;
}

#page_abstract .flowchart li{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	margin-right:30px;
}

#page_abstract .flowchart li::after{
	position:absolute;
	top:calc(50% - .3em);
	right:-33px;
	content:"";
	display:block;
	box-sizing:border-box;
	width:1.6rem;
	height:1rem;
	border-style:solid;
	border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) rgba(255,200,100,1);
	border-width:.8rem 0 .8rem 1rem;
	vertical-align:10%;
	transition:.2s ease-out;
	transition-opacity:right,border;
}

#page_abstract .flowchart li:last-child{
	margin-right:0;
}

#page_abstract .flowchart li:last-child::after{
	content:none;
}

#page_abstract .flowchart li .name{
	box-sizing:border-box;
	margin:0;
	padding:.5rem .5rem;
	width:100%;
	background:rgb(150,180,160);
	color:rgb(255,255,255);
	font-weight:500;
}

#page_abstract .flowchart li .description{
	margin:0;
	padding:1rem 1rem 2rem .8rem;
	width:100%;
	min-height:35px;
	background:rgb(210,230,220);
}

#page_abstract .flowchart li .description.end{
	padding-top:30px;
	min-width:170px;
	background:rgb(50,140,80);
	color:rgb(255,255,255);
}
#page_abstract .step_box{
	margin:50px 0 0 15px;
	padding-left:18px;
	border-top:solid 3px rgb(50,140,80);
	border-left:solid 1px rgb(50,140,80);
}
#page_abstract .bg_pink {
	display: inline-block;
	margin: 0 .3em;
	padding: 0 .3em;
	background: rgb(240,130,150);
	border-radius: 3px;
	color: rgb(255,255,255);
	font-weight: 500;
}
/*--テーブル--*/
#page_abstract table.type01{
	margin:.5em 0;
	width:100%;
	border-collapse:collapse;
	line-height:1.5;
	table-layout:fixed;
	font-size: .75rem;
}
#page_abstract table.type01 th,
#page_abstract table.type01 td{
	padding:.5em .8em;
	border:solid 1px rgb(180,180,180);
	vertical-align:top;
	vertical-align:middle;
}
#page_abstract table.type01 th{
	background:rgb(230,240,255);
	font-weight:700;
	text-align:center;
}
#page_abstract table.type01 td{
	background:rgb(255,255,255);
	text-align: center;
}

#page_abstract .table_note{
	margin-top:.3em;
	font-weight:700;
}
#page_abstract table.type01.va_t th,
#page_abstract table.type01.va_t td{
	vertical-align:top;
}
#page_abstract .item{
	display: flex;
}
#page_abstract ul{
	padding: 0;
}
#page_abstract .item li{
	display: flex;
	list-style: none;
	margin-right: 0.5rem;
	width: 135px;
	text-align: center;
}
#page_abstract .item li.red{
	background: rgb(229, 0, 18);
	color: rgb(255,255,255);
}
#page_abstract .item li.red:hover{
	background: rgb(255, 255, 255);
	color: rgb(229, 0, 18);
}
#page_abstract .item li.green{
	background: rgb(4, 177, 9);
	color: rgb(255,255,255);
}
#page_abstract .item li.green:hover{
	background: rgb(255, 255, 255);
	color: rgb(4, 177, 9);
}
#page_abstract .item li.orange{
	background: rgb(255, 178, 11);
	color: rgb(255,255,255);
}
#page_abstract .item li.orange:hover{
	background: rgb(255, 255, 255);
	color: rgb(255, 178, 11);
}
#page_abstract .item li.pink{
	background: rgb(255, 111, 226);
	color: rgb(255,255,255);
}
#page_abstract .item li.pink:hover{
	background: rgb(255, 255, 255);
	color: rgb(255, 111, 226);
}
#page_abstract .item li.blue{
	background: rgb(29, 25, 255);
	color: rgb(255,255,255);
}
#page_abstract .item li.blue:hover{
	background: rgb(255, 255, 255);
	color: rgb(29, 25, 255);

}
#page_abstract .item li>a{
	padding: 0.5rem;
	border: solid 1px;
	text-decoration: none;
	color: inherit;
}

/*------------------------------
	page_speakers
------------------------------*/


/*------------------------------
	page_participant
------------------------------*/


/*------------------------------
	page_travel
------------------------------*/


/*------------------------------
	page_regist
------------------------------*/
#page_regist .period{
    padding: .5em 1em;
    border: solid 2px rgb(255,130,130);
    border-radius: 5px;
    color: rgb(255,130,130);
    text-align: center;
    font-size: 1.062rem;
    font-weight: 700;
}

#page_regist .period .end_box{
	display:inline-block;
	vertical-align:top;
}

#page_regist .flowchart{
	display:flex;
	justify-content:space-between;
	margin:1rem 0;
	padding:0;
	font-size:.937rem;
	line-height:1.5;
	text-align:center;
	list-style:none;
}

#page_regist .flowchart li{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	margin-right:30px;
}

#page_regist .flowchart li::after{
	position:absolute;
	top:calc(50% - .3em);
	right:-33px;
	content:"";
	display:block;
	box-sizing:border-box;
	width:1.6rem;
	height:1rem;
	border-style:solid;
	border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) rgba(255,200,100,1);
	border-width:.8rem 0 .8rem 1rem;
	vertical-align:10%;
	transition:.2s ease-out;
	transition-opacity:right,border;
}

#page_regist .flowchart li:last-child{
	margin-right:0;
}

#page_regist .flowchart li:last-child::after{
	content:none;
}

#page_regist .flowchart li .name{
	box-sizing:border-box;
	margin:0;
	padding:.5rem .5rem;
	width:100%;
	background:rgb(150,160,180);
	color:rgb(255,255,255);
	font-weight:500;
}

#page_regist .flowchart li .description{
	margin:0;
	padding:1rem .5rem;
	width:100%;
	min-height:35px;
	background:rgb(210,220,230);
}

#page_regist .flowchart li .description.end{
	min-width:170px;
	background:rgb(80,120,180);
	color:rgb(255,255,255);
}

#page_regist .step_box{
	margin:50px 0 0 15px;
	padding-left:18px;
	border-top:solid 3px rgb(80,120,180);
	border-left:solid 1px rgb(80,120,180);
}

#page_regist .step_summary{
	margin-bottom:18px;
	padding-bottom:18px;
	border-bottom:solid 1px rgb(80,120,180);
}

#page_regist .c2c > tbody > tr > td:nth-child(2){
	text-align:center;
}

#page_regist .c3c > tbody > tr > td:nth-child(3){
	text-align:center;
}

#page_regist img{
	display:block;
}

#page_regist .square {
    border: solid 1px rgb(180,180,180);
    padding: 1em 1em;
    margin: 1.2em 0;
}


/*------------------------------
	page_seminar
------------------------------*/

/*------------------------------
	page_venue
------------------------------*/
#page_venue p{
	text-indent:0;
}

#page_venue .venuename{
	font-size:1.25rem;
	font-weight:700;
}

#page_venue .googlemap{
	margin:1.5em 0;
	width:100%;
	height:400px;
	box-shadow:0 0 5px rgba(0,0,0,.2);
}


/*------------------------------
	page_links
------------------------------*/
#page_links dl dt::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 2px;
	display: block;
	width: 4px;
	height: 4px;
	background: rgb(239,57,74);
}
#page_links dl dt{
	box-sizing:border-box;
	font-weight:700;
	padding-left:1em;
	position:relative;
}
#page_links dl dd{
	box-sizing:border-box;
	margin:0 0 25px 18px;
	font-weight:700;
}
#page_links dl dd a{
	display:block;
	box-sizing:border-box;
	width:100%;
	position: relative;
	border-bottom:1px rgba(60,60,60,0) dotted;
	color:rgb(0,100,160);
	text-decoration:none;
	transition:.2s ease-out;
	transition-property:background,color,border-radius,padding-left;
}
#page_links dl a:hover{
	display:inline-block;
	padding-left:10px;
	border-bottom:1px rgb(0,100,160) dotted;
	transition:.2s ease-out;
	transition-property:background,color,border-radius,padding-left;
}
#page_links dl a::after{
	content: "";
	position: absolute;
	right: 0;
	width:10px;
	height: 0px;
	margin: auto;
	border-left: 10px solid rgb(234,85,50);
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	transition:.2s ease-out;
}
#page_links dl a:hover::after{
	content: "";
	position: absolute;
	right:10px;
	width:10px;
	height: 0px;
	margin: auto;
	border-left: 10px solid rgb(234,85,50);
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
}

/*------------------------------
	page_contact
------------------------------*/
#page_contact .name,
#page_contact .info{
	box-sizing:border-box;
	margin:0 0 0 1rem;
}

#page_contact .name{
	font-size:1.25rem;
	font-weight:500;
}

#page_contact .name small{
	font-size:.85em;
}

#page_contact .info{
	font-size:.875rem;
}

#page_contact .info + .name{
	margin-top:.6em;
}


/*------------------------------
	page_sponsors
------------------------------*/
#page_sponsors .flowchart{
	display:flex;
	justify-content:space-between;
	margin:1rem 0;
	padding:0;
	list-style:none;
}
#page_sponsors .flowchart li{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	width:30%;
}
#page_sponsors .flowchart li::after{
	position:absolute;
	top:calc(50% - .3em);
	right:-33px;
	content:"";
	display:block;
	box-sizing:border-box;
	width:1.6rem;
	height:1rem;
	border-style:solid;
	border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) rgba(255,200,100,1);
	border-width:.8rem 0 .8rem 1rem;
	vertical-align:10%;
	transition:.2s ease-out;
	transition-opacity:right,border;
}
#page_sponsors .flowchart li:last-child::after{
	content:none;
}
#page_sponsors .flowchart li .name{
	box-sizing:border-box;
	display:flex;
	align-items:center;
	margin:0;
	padding:1rem 1rem;
	padding-left:calc(1rem + 1.1em);
	width:100%;
	height:60px;
	background:rgb(180,180,180);
	font-size:.937rem;
	color:rgb(255,255,255);
	font-weight:500;
	line-height:1.4;
	text-indent:-1.1em;
}
#page_sponsors .flowchart li .description{
	margin:0;
	padding:1rem 1rem;
	width:100%;
	min-height:160px;
	background:rgb(230,230,230);
	font-size:.9rem;
}
