@charset "utf-8";
/*
-------------------------------------------------------*/

.pageTitle {
	width:790px;
	height:39px;
	margin:10px 0 5px 20px;
	padding-left: 20px;
	background: linear-gradient(to right, #6E24EE, #f8ad3b);
	font-size:1.5em;
	font-weight:600;
	line-height:2.0;
	color:#fff;
	border-bottom: #f4901e solid 2px;
}
.pageTitle::before {
    content: "\f0ac";
    font-family: "Font Awesome 5 Free";
    font-size: 0.7em;
    font-weight: 900;
    margin-right: .5em;
    position: relative;
    bottom: 0.12em;
	opacity:0.5;
}

.h3heading {
	font-size:1.2em;
	font-weight:bold;
	color:#120EAE;
	border-bottom:1px solid #ccc;
	padding-bottom:1px;
	margin:10px 0 10px;
}

.h3heading span {
    border-left: solid 5px #F8C402;
    padding-left: .5em;
	color: #120EAE;
}

.h4heading {
	font-size:1.1em;
	font-weight:bold;
	margin:15px 0 5px;
	color:#6F0BCD;
}
	.h4heading span {
		border-bottom:1px solid #ccc;
		margin-bottom:5px;
	}

/*
共通
-------------------------------------------------------*/

.page_top {
    width: 40px;
    height: 40px;
    right: 20px;
    bottom: 20px;
    position: fixed;
    border: 1px solid #cc3927;
    background: #fcd25b;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}
.page_top::before {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-top: 1px solid #cc3927;
    border-right: 1px solid #cc3927;
    transform: rotate(-45deg);
}


p.under_construction {
	text-align:center;
	font-size:1.2em;
	padding:40px;
}


/* ポスターDL */
.poster_dl {
        margin: 10px auto;
    }
.poster_dl li {
        margin: 15px auto;
    }
.poster_dl a:hover {
	display: block;
    transition: all .3s;
    filter: brightness(85%) contrast(120%);
}


	
/*事務局情報*/
		
#contactInfo {
	width:250px;
	margin:138px auto 0px;
}
	#contactInfo .office {
		margin:10px auto 40px;
		line-height:1.3;
		font-family:Open Sans, Avenir, Helvetica, Arial, Verdana, Roboto, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "M PLUS 1p", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
		#contactInfo .office h4 {
			height:32px;
			margin: 0 auto 5px;
			padding:0px 5px 0;
			line-height:2.6;
			font-size:1.0em;
            font-weight: 600;
			color:#fff;
			background: #000038;
		}
		#contactInfo .office h5 {
			font-size:0.9em;
			font-weight:600;
			color:#fff;
			padding:5px;
		}
		#contactInfo .office p {
			font-size:0.9em;
			color: #fff;
            font-weight:500;
			padding:0px 0px 5px 5px;
		}
		#contactInfo .office a {
			color:#00ffff;
		}
	#contactInfo .line {
		padding-bottom:10px;
		margin-bottom:8px;
		border-bottom:1px solid #3c78a0;	
	}
	#contactInfo .dot {
		padding-bottom:10px;
		margin-bottom:8px;
		border-bottom:1px dotted #fff;	
	}


/*
Home
--------------------------*/

/*新着*/
#whatsnewArea {
	width:850px;
	height: auto;
	min-height:210px;
	margin:0px 0 0px 0px;
	padding:0px 0 0px;
}
	#tit_whatsnew {
		width:835px;
		height:32px;
		font-size: 1.1em;
		font-weight: 600;
		line-height: 2.5em;
		color: #fff;
		background:url("../images/bg_tit_new.png") left center no-repeat, #000038;
		padding-left: 15px;
	}
	
	#dl_whatsnew {
		width:850px;
		font-size:1.0em;
		height: auto;
		min-height:200px;
		padding:10px 0;
		overflow: auto;
		background: url("../images/bg_new.png") left top no-repeat, url("../images/bg_new2.png") left top repeat-y, #fff;
	}
	
		#dl_whatsnew dt {
			clear:left;
			float:left;			
			color:#fff;
			padding-top:3px;
			padding-left:20px;
			font-weight: 600;
		}
		#dl_whatsnew dd {
			padding:3px 10px 3px 7em;
			margin-left:50px;			
			color:#000;
            font-weight: 500;
		}
		#dl_whatsnew dd a {
			/* color:#0071FF; */
			color: #0000ff;
		}

/*開催概要
------------------------------------------------------*/

.dl_overview {
	margin:30px 1em 20px;
}
	.dl_overview dt {
		width: 7em;
		padding-left: 1em;
		clear:left;
		float:left;
		text-align: left;
		color: #142556;
		font-weight: bold;
	}
	.dl_overview dd {
		padding-left:8em;
		padding-bottom:20px;
		margin-bottom:20px;
		border-bottom:1px solid #F2E1FD;
	}

/* リンク
--------------------------*/
.ul_link {
	width: 100%;
	margin: 10px auto 50px;
}
.ul_link li {
	clear:left;
	line-height:180%;
	font-size:1.2em;
	padding:20px 0 20px 0em;
	border-bottom:1px solid #F2E1FD;
}
.ul_link li a{
	color:#1A4B9E;
}
.ul_link li::before {
	content: '\f138';
	font-family: FontAwesome;
	font-size:17px;
	margin-right: 1em;
	color:#B7A0F3;
}

/* リスト
--------------------------*/
.ul_dot {
	margin: 1em 0;
}
	.ul_dot li {
		position: relative;
		padding-left: 1.5em;
		margin-bottom: 0.5em;
	}
	.ul_dot li::after {
		display: block;
		content: '';
		position: absolute;
		top: .5em;
		left: 0.5em;
		width: 6px;
		height: 6px;
		background-color: #666;
		border-radius: 100%;
	}

/*演題登録
------------------------------------------------------*/
.txt_period {
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.8;
	margin: 5px auto;
	text-align: left;
	display: table;
}
	.txt_period span {
		/*display: table-cell;*/
		text-align: right;
		white-space: nowrap;
	}
	.txt_period span.end {
		text-align: left;
		padding-left: 5px;
	}
	.txt_period span.end strong {
		font-weight: 700;
		color: #333;
	}
	.txt_period del {
		color: #ee0000;
	}
	.txt_period .end i {
		color: #dd0000;
	}

/* ボタン */
.btn_call {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}

.btn_call {
    flex-direction: row;
}

.btn_call li {
    display: flex;
    justify-content: center;
}

.btn_call li a {
    width: 100%;
    min-width: 300px;
	margin: auto;
    font-size: clamp(0.875rem, 0.79rem + 0.364vw, 1.063rem);
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    font-weight: bold;
    padding: 0.7em 0.5em;
    border: 2px solid #784AB0;
    border-radius: 2px;
    position: relative;
    text-decoration: none;
    transition: 0.3s ease all;
    z-index: 1;
}

.btn_call li a:before {
    transition: 0.5s all ease;
    position: absolute;
    top: 0;
    left: 50%;
    right: 50%;
    bottom: 0;
    opacity: 0;
    content: '';
    background-color: #7C2AC4;
    z-index: -1;
}

.btn_call li a:hover, .btn_call li a:focus {
    color: white;
}

.btn_call li a:hover:before, .btn_call li a:focus:before {
    transition: 0.5s all ease;
    left: 0;
    right: 0;
    opacity: 1;
}

.btn_call li a:active {
    transform: scale(0.9);
}

.btn_call.wid_auto li a {
    width: auto;
}

.btn_call.disabled li a {
    border-color: #999;
    color: #999;
    pointer-events: none;
}

.btn_call.disabled li a:before {
    background-color: #999;
}

/* 過去の開催記録 */
.archive {
    width: 500px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    font-feature-settings: "palt";
	padding-top: 20px;
}

.archive figure a {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: rgba(238, 238, 238, 0.5);
    box-shadow: 0 0 10px #ccc;
    transition: background .5s, color .5s, box-shadow .5s;
    padding: 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    color: #2A034C;
	margin-bottom: 20px;
}
.archive figure a:hover {
    background: rgba(238, 238, 238, 1);
    box-shadow: 0 0 3px #ccc;
    transition: background 1s, color 1s, box-shadow .5s;
    color: rgba(42, 3, 76, 0.5);
}
.pdf:after {
  content: "\f1c1";
  font-family: FontAwesome;
  margin-left: 0.5em;
}