@charset "utf-8";
/* CSS Document */

/* ビジュアルスタイル
----------------------------------------------------------- */
#visual {
	width: 1200px;
	height: 335px;
	margin: 0 auto 30px;
	padding: 1px;
	border: 1px solid #FFC63E;
	border-radius: 5px;
}
#visual #visual_inner {
	padding: 20px 80px;
	height: 100%;
	text-align: left;
	background: url(../images/bg_visual.jpg) center bottom no-repeat;
}
#visual #visual_inner dl {
	display: flex;
	margin-bottom: 15px;
}
#visual #visual_inner dl:nth-of-type(1) {
	margin-top: 3%;
}
#visual #visual_inner dl dt {
	margin-right: 20px;
}
#visual #visual_inner dl dd {
	padding-top: 5px;
}



/* メインコンテンツスタイル
----------------------------------------------------------- */
main {
	background: none;
}



/* 見出しスタイル
----------------------------------------------------------- */
h2:not(#title_link):not(#gnavi_title):not(.side_title) {
	margin: 0;
}



/* ページスタイル
----------------------------------------------------------- */
/* 開催御礼ボックス（学会サイトのみ使用） */
main div.thanks_box {
    margin: 0 0 30px;
    padding: 30px 15px 15px;
    border: 5px solid #FFC06B;
    border-top: none;
    border-radius: 0 0 10px 10px;
	background: #FFFFFF;
}

/* 参加者の皆様へ */
main div.participant_box {
	margin: 0 0 30px 0;
	padding: 30px 15px 15px;
	border-radius: 0 0 10px 10px;
	background: #FFFFFF;
}
main div.participant_box p.participant_button {
	text-align: center;
}
main div.participant_box a {
	margin: 0 5px 10px;
}

/* 更新情報 */
main h2 a.news_list_btn {
	float: right;
}
main h2 a.news_list_btn::before { /* 円背景 */
	width: 17px;
  height: 17px;
	top: calc(50% + 1px);
	left: 11px;
}
main h2 a.news_list_btn::after { /* 矢印 */
	background-size: 80%;
	top: calc(50% - 2px);
	left: 15px;
}
main h2 a.news_list_btn span {
	padding: 5px 20px 5px 35px;
	font-size: 1.4rem;
}
main h2 a.news_list_btn span:before {
	width: calc(100% - 15px);
  height: calc(100% - 10px);
}
main div.info_list_box {
	margin: 0 0 30px 0;
	padding: 10px 20px;
	border: 2px solid #FCD4AE;
	border-top: none;
	border-radius: 0 0 10px 10px;
	background: #FFFFFF;
}
main div.info_list_box ul {
	margin-bottom: 0;
}
main div.info_list_box ul li:last-of-type dl.info_list_contents {
	border: none;
}

/* 主要プログラム */
main div.main_program_box {
	margin: 0 0 30px 0;
	padding: 30px 15px 15px;
	border-radius: 0 0 10px 10px;
	background: #FFFFFF;
}

/* お問い合わせ */
main div.secretariat_box {
	margin: 0 0 30px 0;
	padding: 0;
	padding: 15px;
	border-radius: 0 0 10px 10px;
	background: #FFEFDC;
}
main div.secretariat_box div.secretariat_box_inner {
	display: flex;
	flex-wrap: wrap;
}
main div.secretariat_box dl {
	width: 410px;
	margin: 15px 10px 10px 10px;
	text-align: left;
}
main div.secretariat_box dl dt {
	position: relative;
	margin-bottom: 2px;
	padding: 3px 25px;
	color: #FFFFFF;
	font-size: 2.0rem;
	font-weight: bold;
	border-radius: 10px 10px 0 0;
	background: #D28B78;
}
main div.secretariat_box dl dt::before {
	position: absolute;
	display: inline-block;
	top: 6px;
	left: 6px;
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #945858;
}
main div.secretariat_box dl dd {
	padding: 10px 20px 20px 20px;
	background: #FFFFFF;
}
main div.secretariat_box dl dd em {
	font-weight: bold;
}

/* バナー */
h2#title_link {
	position: relative;
	margin-bottom: 15px;
	padding: 1px 25px;
	color: #FFFFFF;
	font-size: 2.0rem;
	font-weight: bold;
	border-bottom: 2px solid #8C6363;
	/*border-radius: 10px 10px 0 0;*/
	background: #C09888;
}
h2#title_link::before,
h2#title_link::after {
	position: absolute;
	display: inline-block;
	top: calc(50% - 3px);
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #946A58;
}
h2#title_link::before {
	left: 8px;
}
h2#title_link::after {
	right: 8px;
}
h2#title_link span {
	font-size: 1.6rem;
}
main div ul.banner_list {
	/*background: #899E6B;*/
}

/* bannerlist（可変グリッドのレイアウトはmasonry.jsを併用） */
main div ul.bannerlist {
	margin: 0 auto;
	overflow: hidden;
}
main div ul.bannerlist li {
	float: left; /*項目数が3つ以上達しない場合、masonry-boxでなくfloatで*/
	margin: 0 26px 15px 26px;
}
main div ul.bannerlist li a {
	display: inline-block;
	width: 234px;
	height: 60px;
	text-align: center;
}
main h2#title_link {
	margin-bottom: 30px;
}
main h2#title_link span {
	font-size: 1.6rem;
}



@media screen and (max-width: 1199px) {	/* PC固定幅からのブレイクポイント */
	
	/* 基本設定
	----------------------------------------------------------- */
	
	/* ★　例）トップページのgnaviのみPC時はメニュー表示する場合　★ */
	/*.hamburger-button {
		display: block;
	}*/
	
	/* ビジュアルスタイル
	----------------------------------------------------------- */
	#visual {
		width: 100%;
		height: auto;
	}
	#visual #visual_inner {
		width: 100%;
		padding: 15px 5% 15px;
	}
	
	/* ページスタイル
	----------------------------------------------------------- */
	main div.secretariat_box {
		text-align: center;
	}
	main div.secretariat_box div.secretariat_box_inner {
		width: 860px;
		margin: 0 auto;
	}
	
	/* bannerlist（可変グリッドのレイアウトはmasonry.jsを併用） */
	main div ul.bannerlist {
		max-width: 890px;
	}
	
}

@media screen and (max-width: 959px) {	/* タブレットからのブレイクポイント */
	
}

@media screen and (max-width: 909px) {
		
	/* ページスタイル
	----------------------------------------------------------- */
	main div.secretariat_box div.secretariat_box_inner {
		width: 100%;
		flex-flow: column;
	}
	main div.secretariat_box div.secretariat_box_inner dl {
		margin: 15px auto 0;
	}
	
}

@media screen and (max-width: 620px) {	/* 620pxからのブレイクポイント */
	
	/* bannerlist（可変グリッドのレイアウトはmasonry.jsを併用） */
	main div ul.bannerlist li {
		text-align: center;
		float: none;
	}
	
}

@media screen and (max-width: 479px) {	/* スマートフォンからのブレイクポイント */
	
	/* ページスタイル
	----------------------------------------------------------- */
	main div.secretariat_box dl {
		width: 100%;
	}
	
}