@charset "UTF-8";

/*=======================================
■■■タブレット向けCSS　目次■■■
共通事項
ヘッダー
フッター
エレベーターメニュー
トップ
会長あいさつ
学会WEB発表
演題募集
事前参加申込み
フォーム
=======================================*/

/*──────────────────────────
共通事項
──────────────────────────*/
/*　テキストの基本サイズ　*/
body , .gnav li a {
	font-size: 0.9em;
}

/*　背景固定　*/
body {
	position: relative;
}
body::before {
	content: "";
	position: fixed;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	height: 100vh;
	background: url(../img/body-bg.jpg) no-repeat;
	background-size: cover;
}

/*　サイトカラー　*/
header , 
h1.subpage span , 
.h01::before , 
.h04 , 
.frame dt , 
.gnav li.loc a , 
.sub-banner .count::before , 
footer .wrap , 
#top .eventcount , 
#top .topics ol::before , 
#top .topics ol li::before , 
#rpt .poster ol mark {
	background-color: #09b;
}
.h02 , 
#rpt .poster li b , 
#sub form dd .countup {
	color: #09b;
}
.sub-banner .count::after {
	border-top-color: #09b;
}
.frame , 
#rpt .poster li b { 
	border: 1px solid #09b;
}

/*　ボタンカラー　*/
header .btn02 , 
#top .outline ul a , 
.sub-banner , 
.gnav li {
	background-color: #046;
}
header .btn02:hover , 
#top .outline ul a:hover , 
.sub-banner:hover , 
.gnav li:hover {
	background-color: #0e4e74;
}

/*　申込みカラー　*/
header .btn01 {
	background-color: #d06;
}
header .btn01:hover {
	background-color: #e17;
}

/*　基本レイアウト　*/
.w01 , main , footer { 
	width: 94%;
	margin: 0 auto;
}
article , nav.gnav { 
	background: rgba(255,255,255,0.75);
}

/*　下層ページ共通メインイメージ　*/
h1.subpage {
	position: relative;
	height: 260px;
	margin: 0 0 50px 0;
	background: url(../img/pic-outline04.png) 99% 50% no-repeat ,  url(../img/pic-outline03.jpg) 50% 0 no-repeat;
	background-size: auto 255px , cover;
}
h1.subpage span {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: -20px;
	padding: 25px 30px;
	/*background-colorはサイトカラーで指定済*/
	font-size: 1.3em;
	font-weight: 900;
	color: #fff;
	line-height: 1em;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

/*　基本見出し　*/
h1 , h2 {
	text-align: center;
}

/*　基本見出し（下線）*/
.h01 {
	position: relative;
	z-index: 1;
	padding: 0.1em 1em;
	font-size: 1.4em;
	font-weight: 900;
	line-height: 1.2;
	display: inline-block;
}
.h01::before {
	content: "";
	position: absolute;
	z-index: -1;
	bottom: -0.1em;
	left: -1em;
	right: -1em;
	margin: 0 1em;
	height: 0.5em;
	/*background-colorはサイトカラーで指定済*/
	border-radius: 0.45em;
	opacity: 0.2;
}

/*　基本見出し（文字のみ）*/
.h02 {
	margin: 0;
	padding: 0.1em 1em;
	/*colorはサイトカラーで指定済*/
	font-size: 0.9em;
	line-height: 1.4;
	display: inline-block;
}
.h02 b {
	font-size: 1.4em;
	font-weight: 900;
	display: block;
}
/*　基本見出し（カッコ）*/
.h03 {
	position: relative;
	padding: 0.1em 1.2em;
	font-size: 1.1em;
	font-weight: 900;
	line-height: 1.2em;
	display: inline-block;
}
.h03::before, .h03::after { 
	content: '';
	position: absolute;
	top: 0;
	width: 8px;
	height: 100%;
	display: inline-block;
}
.h03::before {
	left: 0;
	border-left: solid 1px #222;
	border-top: solid 1px #222;
	border-bottom: solid 1px #222;
}
.h03::after {
	content: '';
	right: 0;
	border-top: solid 1px #222;
	border-right: solid 1px #222;
	border-bottom: solid 1px #222;
}

/*　見出し（サイトカラー背景）*/
.h04 {
	margin: 40px 0 0 0;
	padding: 0.5em 0;
	/*background-colorはサイトカラーで指定済*/
	font-weight: 700;
	color: #fff;
	text-align: center;
}

/*　>印　*/
#top .outline ul a , 
#top .report , 
.sub-banner , 
.gnav li a {
	/*background-colorはボタンカラーで指定済*/
	position: relative;
}
#top .outline ul a::after , 
#top .report::after , 
.sub-banner::after , 
.gnav li:nth-child(n+2) a::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 15px;
	width: 5px;
	height: 5px;
	border-right: solid 1px #fff;
	border-bottom: solid 1px #fff;
	-webkit-transform: rotate(-45deg) translate(0, -4px);
	transform: rotate(-45deg) translate(0, -4px);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}

/*　Menuボタン　*/
.tomenu {
	display: none;
}

/*　演題募集バナー　*/
.sub-banner {
	position: relative;
	max-width: 590px;
	margin: 20px auto 0 auto;
	padding: 20px 30px;
	background-image: url(../img/pic-subbanner02.png) , url(../img/pic-subbanner01.png);
	background-position: 100% 50% , 75% 50%;
	background-repeat: no-repeat;
	background-size: contain , auto 50px;
	font-size: 1.7em;
	font-weight: 700;
	color: #fff;
	text-align: left;
	overflow: hidden;
	display: block;
}
.sub-banner.js {	/*jsでjs付与*/
	background-position: 285px 50% , 6em 50%;
}
@media screen and (max-width: 740px) {
	.sub-banner.js {
		background-position: 56% 50% , 6em 50%;
	}
}
.sub-banner:hover {
	/*background-colorはボタンカラーで指定済*/
	color: #fff;
	text-decoration: none;
}
/*　演題募集バナー（カウント）*/
.sub-banner .count {
	position: absolute;
	z-index: 1;
	top: 50%;
	right: 0;
	width: 12.5em;
	max-width: 235px;
	min-width: 210px;
	height: 100%;
	padding: 0 0 0 1em;
	font-size: 0.58em;
	font-weight: 300;
	font-style: normal;
	line-height: 1.5em;
	-webkit-transform: translate(0, -1em);
	transform: translate(0, -1em);
	display: inline-block;
}
/*　演題募集バナー（背景）*/
.sub-banner .count::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: -55%;
	right: 0;
	width: 13.5em;
	max-width: 260px;
	min-width: 225px;
	height: 160%;
	/*background-colorはサイトカラーで指定済*/
}
/*　演題募集バナー（▲印）*/
.sub-banner .count::after {
	content: "";
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 0;
	width: 0;
	height: 0;
	/*border-top-colorはサイトカラーで指定済*/
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top-width: 18px;
	border-top-style: solid;
	-webkit-transform: translate(-18px, -30px) rotate(90deg);
	transform: translate(-18px, -30px) rotate(90deg);
	display: block;
}
.sub-banner .count b {
	font-size: 2.5em;
	font-weight: 900;
}

/*　表組みコンテンツ　*/
.tablebox li {
	width: 100%;
	padding: 0 0 30px 0;
	display: table;
}
.tablebox li:nth-last-child(1) {
	padding-bottom: 0;
}
.tablebox li dfn , 
.tablebox li div {
	vertical-align: top;
	display: table-cell;
}
.tablebox li dfn {
	width: 7em;
	font-weight: 700;
}

/*　枠線付きコンテンツ　*/
.frame {
	width: 100%;
	/*boderはサイトカラーで指定済*/
	display: table;
}
.frame dt , .frame dd {
	padding: 1.5em;
	vertical-align: top;
	display: table-cell;
}
.frame dt {
	width: 1em;
	/*background-colorはサイトカラーで指定済*/
	color: #fff;
	line-height: 1.1em;
}

/*　PDFアイコン　*/
.pdf {
	margin: 0.5em 0 0 0;
	padding: 16px 0 16px 35px;
	background: url(../img/icn-pdf.png) 0 50% no-repeat;
	background-size: auto 32px;
	line-height: 1.2em;
	display: inline-block;
}


/*──────────────────────────
ヘッダー
──────────────────────────*/
header {
	margin: 0 0 20px 0;
	/*background-colorはサイトカラーで指定済*/
}
header .w01 {
	position: relative;
	padding: 10px 0;
}
header .logo {
	width: 308px;
	height: 0;
	padding: 64px 0 0 0;
	background: url(../img/pic-logo.png) no-repeat;
	background-size: contain;
	overflow: hidden;
	display: block;
}	
header .btn01 , header .btn02 {
	position: absolute;
	z-index: 2;
	top: 0;
	width: 145px;
	height: 0;
	padding: 55px 15px 0 15px;
	border: 1px solid rgba(255,255,255,0.5);
	border-top: none;
	overflow: hidden;
	display: block;
}
header .btn01 {
	right: 185px;
	/*background-colorは申込みカラーで指定済*/
	background-image: url(../img/head-btn01.png);
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: 145px auto;
}
header .btn02 {
	right: 0;
	/*background-colorはボタンカラーで指定済*/
	background-image: url(../img/head-btn02.png);
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: 145px auto;
}
@media screen and (max-width: 800px) {
	header .btn01 , header .btn02 {
		right: 0;
		width: 130px;
		padding: 35px 40px 0 40px;
		border: 1px solid rgba(255,255,255,0.5);
	}
	header .btn01 {
		top: 3px;
		background-image: url(../img/head-btn01.png);
		background-size: 130px auto;
	}
	header .btn02 {
		top: 43px;
		background-image: url(../img/head-btn02.png);
		background-size: 130px auto;
	}
}


/*──────────────────────────
フッター
──────────────────────────*/
footer .wrap { 
	padding: 20px 40px 30px 40px;
	/*background-colorはサイトカラーで指定済*/
	background-image: url(../img/foot-illust.png);
	background-position: 95% 100%;
	background-repeat: no-repeat;
	background-size: 280px auto;
	color: #fff;
	text-align: center;
}

/*　主催・事務局　*/
footer address {
	padding: 0 0 30px 0;
	border-bottom: 1px solid rgba(255,255,255,0.5);
}
footer address span {
	min-width: 16em;
	margin: 20px auto 5px auto;
	padding: 0.4em 1em;
	background: #FFF;
	border-radius: 5px;
	font-size: 0.9em;
	color: #222;
	line-height: 1em;
	display: inline-block;
}
footer address a[href^="mailto:"] {
	padding: 0.2em 0 0.2em 25px;
	background: url(../img/icn-mail.png) 0 55% no-repeat;
	background-size: 18px auto;
	color: #fff;
	display: inline-block;
}

/*　フリーバナー　*/
footer .freebanner img {
	margin: 20px 0 0 0;
	width: 234px;
	height: 100px;
}
footer .freebanner + em {
	margin: 0.3em 0 0 0;
	font-size: 0.9em;
	display: block;
}

/*　協賛バナー　*/
footer ul.banner {
	padding: 30px 0 70px 0;
	text-align: center;
	letter-spacing: -0.4em;
}
footer .banner li {
	margin: 5px;
	letter-spacing: normal;
	vertical-align: top;
	display: inline-block;
}
footer .banner li a {
	width: 234px;
	height: 0;
	padding: 60px 0 0 0;
	overflow: hidden;
	display: block;
}
footer li:nth-child(1) a {
	background: url(../img/foot-banner01.png) no-repeat;
	background-size: contain;
}
footer .banner li a:hover {
	opacity: 0.85;
}

/*　著作権　*/
footer small {
	text-align: center;
	display: block;
}
footer small span {
	padding: 3.5em 0;
	display: inline-block;
}
footer small , footer small a , footer small a:hover {
	color: #222;
}
footer small a:hover {
	text-decoration: none;
}


/*──────────────────────────
エレベーターメニュー
──────────────────────────*/
.gnav ul {
	font-size: 0;
	padding: 0 40px 20px 40px;
}
.gnav li {
	margin: 0 1% 1% 0;
	/*background-colorはボタンカラーで指定済*/
	font-size: medium;
	vertical-align: top;
	display: inline-block;
}

@media screen and (min-width: 701px) {
	.gnav li {	/*3列*/
		width: 32%;
	}
	.gnav li:nth-child(3n-1) {
		width: 34%;
	}
	.gnav li:nth-child(3n) {
		margin-right: 0;
	}
	.gnav li:nth-last-child(-n+3) {	/*最後の3つ*/
		margin-bottom: 0;
	}
}
@media screen and (min-width: 641px) and (max-width: 700px) {
	.gnav li {	/*2列*/
		width: 49.5%;
	}
	.gnav li:nth-child(2n) {
		margin-right: 0;
	}
	.gnav li:nth-last-child(-n+2) {	/*最後の2つ*/
		margin-bottom: 0;
	}
}
.gnav li a {
	padding: 1.4em 15px 1.4em 25px;
	color: #fff;
	line-height: 1.2em;
	text-decoration: none;
	display: block;
}
.gnav li a:hover {
	opacity: 0.9;
}
.gnav li.loc a {
	/*background-colorはサイトカラーで指定済*/
	pointer-events: none;
}
.gnav li.loc a::after {
	display: none;
}

/*　トップ　*/
.gnav li:nth-child(1) a {
	background-image: url(../img/icn-home.png);
	background-position: 8px 50%;
	background-repeat: no-repeat;
	background-size: 13px auto;
}

/*　WEB発表　*/
.gnav li:nth-child(5) {
	background-color: #b56;
}
.gnav li:nth-child(5) a:hover {
	background-color: #b67;
}
.gnav li:nth-child(5) a {
	position: relative;
	padding-top: 2.1em;
	padding-bottom: 0.7em;
}
.gnav li:nth-child(5) a span {
	position: absolute;
	top: 0.8em;
	font-size: 0.85em;
	color: #fd9;
}

/*　ポスター　*/
.gnav li.poster {
	width: 125px;
	margin: 10px auto 0 auto;
	background: none;
	display: block;
}
.gnav li.poster a {
	height: 0;
	padding: 180px 0 0 0;
	background: url(../img/pic-poster.jpg) 50% 0 no-repeat;
	background-size: auto 180px;
	overflow: hidden;
	display: block;
}
.gnav li.poster a::after {
	display: none;
}

/*　ポスター（PDFマーク）*/
.gnav li.poster a::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	border-bottom: 2.5em solid transparent;
	border-right: 2.5em solid #b00;
	pointer-events: none;
	display: block;
}
.gnav li.poster a::after {
	content: "PDF";
	position: absolute;
	z-index: 2;
	top: 6px;
	left: 93px;
	right: 0;
	margin: 0 auto;
	border: none;
	font-size: 0.7em;
	line-height: 0.7em;
	color: #fff;
	pointer-events: none;
	-webkit-transform: rotate(45deg) translate(0, 0);
	transform: rotate(45deg) translate(0, 0);
	display: block;
}


/*──────────────────────────
トップ
──────────────────────────*/
/*　重要なお知らせ　*/
#top p.important {
	padding: 25px 5%;
	border: 15px solid #b00;
	text-align: left;
}
#top p.important strong {
	margin: 30px 0;
	font-size: 1.8em;
	font-weight: 900;
	color: #b00;
	line-height: 1.2em;
	text-align: center;
	display: block;
}
#top p.important strong:nth-of-type(n+2) {
	margin: 60px 0 30px 0;
}
#top p.important strong span {
	display: inline-block;
}
#top p.important b {
	margin: 1em 0 0 0;
	font-size: 0.9em;
	font-weight: normal;
	text-align: right;
	display: block;
}

/*　メインイメージ　*/
#top h1 {
	padding: 68% 3% 0 3%;
	background: url(../img/pic-outline01.jpg) 50% 0 no-repeat;
	background-size: contain;
}

/*　カウント　*/
#top article {
	position: relative;
}
#top .eventcount {
	position: absolute;
	z-index: 1;
	top: -10px;
	right: -10px;
	padding: 25px 20px;
	border-radius: 15px;
	font-size: 1.3em;
	font-weight: 700;
	color: #ffc;
	line-height: 1.6em;
	text-align: center;
	
	display: none;	/*開催中止のため*/
}
#top .eventcount b {
	font-size: 2.1em;
	font-weight: 900;
}

/*　概要　*/
#top .outline {
	padding: 0 3% 100px 3%;
	text-align: center;
}
#top .outline h2 {
	margin: 50px 0;
}
#top .outline .tablebox {
	text-align: left;
	display: inline-block;
}
#top .outline .tablebox li {
	padding-bottom: 20px;
}
#top .outline .tablebox li dfn , 
#top .outline .tablebox li div {
	vertical-align: middle;
}
#top .outline .tablebox li dfn {
	position: relative;
}
#top .outline .tablebox li dfn::after {
	content: "▲";
	position: absolute;
	right: 0;
	font-size: 0.6em;
	-webkit-transform: rotate(90deg) translate(0.5em,1em);
	transform: rotate(90deg) translate(0.5em,1em);
}
#top .outline .tablebox li:nth-child(1) div {
	font-size: 1.7em;
	font-weight: 900;
}
#top .outline .tablebox a {
	padding: 0.4em 10px 0.4em 25px;
	font-size: 0.9em;
	color: #fff;
	line-height: 1em;
	display: inline-block;
}
#top .outline .tablebox a:hover {
	/*background-colorはボタンカラーで指定済*/
	text-decoration: none;
}

/*　概要（枠あり）*/
#top .outline .tablebox li.frame {
	width: 94%;
	padding: 3%;
	/*boderはサイトカラーで指定済*/
}
#top .outline .tablebox li.frame dfn {
	width: 5.5em;
}
#top .outline .tablebox li.frame div span {
	display: inline-block;
}
#top .outline .tablebox li.frame div span.lg {
	padding-top: 0.5em;
}

/*　今後の方針　*/
#top .policy {
	padding: 0 3% 100px 3%;
	text-align: center;
}
#top .policy h2 {
	margin: 50px 0;
	font-size: 1.4em;
	font-weight: 900;
}
#top .policy h2 span {
	display: inline-block;
}
#top .policy h2 + h2 {
	margin: 50px 0 1.2em 0;
	padding: 1em;
	background-color: #d78;
	color: #fff;
}
#top .policy h2 + p , 
#top .policy ul , 
#top .policy ul + strong {
	max-width: 560px;
	margin: 0 auto;
}
#top .policy h2 + p {
	font-weight: bold;
}
#top .policy h2 + p span {
	display: inline-block;
}
#top .policy ul {
	text-align: left;
}
#top .policy li {
	padding: 1.2em 0 0 1em;
	text-indent: -1em;
}
#top .policy li:before {
	content: "・";
}
#top .policy ul + strong {
	margin-top: 1em;
	font-size: 0.9em;
	text-align: right;
	display: block;
}

/*　演題抄録集・ポスターのホームページ上での発表　*/
#top .present {
	position: relative;
	padding: 0 3% 100px 3%;
	text-align: center;
}
#top .present::before {
	content: attr(data-txt);
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 1.7em;
	font-weight: 900;
	color: #c00;
	text-align: center;
}
#top .present .h03 {
	margin-top: 1.5em;
	margin-bottom: 30px;
	font-size: 1.4em;
}
#top .present .h03 span {
	display: inline-block;
}
#top .present .frame {
	max-width: 560px;
	margin: 10px auto 0 auto;
	text-align: left;
	display: block;	/*table→blockへ変更*/
}
#top .present .tablebox {
	padding: 25px;
}
#top .present .tablebox li dfn {
	width: 8em;
	vertical-align: bottom;
}
#top .present .tablebox li div {
	font-size: 1.7em;
	font-weight: 900;
	line-height: 1em;
	vertical-align: bottom;
}
#top .present .tablebox li div b {
	font-size: 0.7em;
}
#top .present .tablebox + p {
	padding: 0 25px 25px 25px;
	font-size: 0.9em;
}
#top .present .report {	/*学会発表ボタン*/
	max-width: 500px;
	margin: 20px auto 0 auto;
	padding: 20px 30px;
	background-color: #b56;
	font-size: 1.6em;
	font-weight: 900;
	color: #fff;
	display: block;
}
#top .report::after {	/*学会発表ボタン>印*/
	left: 20px;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(-45deg) translate(0, -7px);
	transform: rotate(-45deg) translate(0, -7px);
}
#top .present .report span {
	font-size: 0.6em;
	font-weight: normal;
	color: #fd9;
	display: block;
}
#top .present .report:hover {
	background-color: #b67;
	text-decoration: none;
}
#top .present .info {
	max-width: 560px;
	margin: 1em auto 0 auto;
	text-align: left;
}
#top .present .info span {
	padding: 1.2em 0 0 1em;
	text-indent: -1em;
	display: block;
}
#top .present .info span:before {
	content: "・";
}
#top .present .info b {
	margin-top: 1em;
	font-size: 0.9em;
	font-weight: normal;
	text-align: right;
	display: block;
}

/*　演題抄録集の掲載・ポスター発表の申請手続き　*/
#top .process {
	padding: 0 40px 100px 40px;
	text-align: center;
}
#top .process h3 {
	margin-bottom: 30px;
}
#top .process h3 span {
	display: inline-block;
}
#top .process .please {
	line-height: 1.3em;
	display: block;
}
#top .process .please br {
	display: none;
}
#top .process a[href$="endaihandle.pdf"]{
	text-align: left;
	display: inline-block;
}
#top .process .tablebox {
	margin: 50px 0 0 0;
	text-align: left;
}
#top .process .tablebox li:nth-child(1) ins {	/*終了しました*/
	margin-left: 1em;
	font-size: 0.6em;
	color: #e00;
	text-decoration: none;
	display: inline-block;
}
#top .process .tablebox li:nth-child(2) a {	/*専用フォーム、PDFリンク*/
	text-decoration: line-through;
	pointer-events: none;
}

/*　演題手続き（期限）*/
#top .process .tablebox li:nth-child(1) div {
	font-size: 1.7em;
	font-weight: 900;
	line-height: 1em;
}
#top .process .frame {
	position: relative;
	width: auto;
	margin: 0.5em 0 48px 0;
	padding: 1em;
	display: block;
}

/*　演題手続き（方法の矢印）*/
#top .process .frame::before , 
#top .process .frame::after {
	content: "";
	position: absolute;
	z-index: 2;
	bottom: -35px;
	left: 3em;
	width: 15px;
	height: 15px;
	border-right: solid 2px #333;
	border-bottom: solid 2px #333;
	-webkit-transform: rotate(45deg) translate(0, 0px);
	transform: rotate(45deg) translate(0, 0px);
}
#top .process .frame::before {
	bottom: -25px;
}

/*　演題手続き（方法の見出し）*/
#top .process h4 {
	padding-left: 1em;
	text-indent: -1em;
}
#top .process h5 {
	max-width: 6.5em;
	margin: 1.5em 0 0.5em 0;
	padding: 0.5em 1em;
	background: rgba(0,153,187,0.2);
	text-align: center;
}
#top .process h5:nth-child(1) {
	margin-top: 0;
}
#top .process .frame + h4 + h5 {
	margin-bottom: -5px;
}
#top .process h5 + p b {
	margin-bottom: -10px;
	font-weight: normal;
	display: block;
}

/*　演題手続き（注意事項）*/
#top .process .warning {
	counter-reset: number 0;
}
#top .process .warning span {
	padding: 1em 0 0 1.5em;
	font-size: 0.9em;
	text-indent: -1.5em;
	line-height: 1.5em;
	display: block;
}
#top .process .warning span:before {
	counter-increment: number 1;
	content: "("counter(number)")";
	padding-right: 0.3em;
}

/*　お知らせ　*/
#top .topics {
	padding: 0 40px 50px 40px;
}
#top .topics ol {
	position: relative;
	margin: 50px 0 30px 0;
	border-bottom: 1px solid #ccc;
	text-align: left;
}
#top .topics ol li {
	position: relative;
	width: 100%;
	padding: 1em 0;
	border-top: 1px solid #ccc;
	display: table;
}
#top .topics ol::before , 
#top .topics ol li::before {
	content: "";
	position: absolute;
	left: 0;
	width: 10em;
	height: 1px;
	/*background-colorはサイトカラーで指定済*/
}
#top .topics ol::before {
	bottom: -1px;
}
#top .topics ol li::before {
	top: -1px;
}
@-moz-document url-prefix() {
	#top .topics ol li::before {
		top: 0;
	}
}
#top .topics ol time , #top .topics ol span {
	vertical-align: top;
	display: table-cell;
}
#top .topics ol time {
	position: relative;
	width: 10em;
}
#top .topics ol strong {
	font-weight: bold;
}

/*　お知らせ（重要）　*/
#top .topics ol li.m1 time , 
#top .topics ol li.m1 span { 
	color: #c00;
}
#top .topics ol li.m1::after {
	content: "重要";
	position: absolute;
	top: 3em;
	left: 0;
	width: 10em;
	padding: 0.4em 0;
	background-color: #c00;
	border-radius: 5px;
	font-size: 0.9em;
	color: #fff;
	line-height: 1em;
	text-align: center;
}


/*──────────────────────────
会長あいさつ
──────────────────────────*/
#mes section {
	padding: 0 40px 90px 40px;
}
#mes section p {
	max-width: 40em;
	margin: 0 auto;
	line-height: 2.5em;
}

/*　大会長イメージ　*/
#mes .mes01 div {
	position: relative;
	width: 100%;
	height: 300px;
	background: url(../img/pic-mes-chairman.jpg) 50% 50% no-repeat;
	background-size: cover;
}
#mes .mes01 div strong {
	position: absolute;
	z-index: 1;
	top: 48%;;
	margin: 0 0 0 20px;;
	font-size: 1.5em;
	font-weight: 700;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
#mes .mes01 div span {
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	font-size: 0.7em;
	font-weight: 400;
	border-bottom: 1px solid #222;
	display: inline-block;
}

/*　文章見出し　*/
#mes .mes01 h2 {
	margin: 50px 0 40px 0;
}
#mes .mes02 h2 , 
#mes .mes03 h2 {
	margin-bottom: 40px;
}

/*　署名　*/
#mes .mes03 strong {
	max-width: 44em;
	margin: 50px auto 70px auto;
	font-size: 0.9em;
	line-height: 1.8em;
	display: block;
}
#mes .mes03 strong span {
	font-size: 1.4em;
	line-height: 2em;
}


/*──────────────────────────
学会WEB発表
──────────────────────────*/
#rpt .overview , 
#rpt section {
	padding: 0 40px 90px 40px;
}

/*　大会長イメージ　*/
#rpt .overview figure {
	position: relative;
	width: 100%;
	height: 300px;
	background: url(../img/pic-mes-chairman.jpg) 50% 50% no-repeat;
	background-size: cover;
}
#rpt .overview figure strong {
	position: absolute;
	z-index: 1;
	top: 48%;;
	margin: 0 0 0 20px;;
	font-size: 1.5em;
	font-weight: 700;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}
#rpt .overview figure span {
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	font-size: 0.7em;
	font-weight: 400;
	border-bottom: 1px solid #222;
	display: inline-block;
}

/*　概要説明　*/
#rpt .overview h2 {
	margin: 50px 0 40px 0;
}
#rpt .overview p {
	max-width: 40em;
	margin: 0 auto;
	line-height: 2.5em;
}
#rpt .overview p span {
	margin-bottom: 2em;
	display: block;
}
#rpt .overview p strong {
	font-size: 0.9em;
	line-height: 1.8em;
	display: inline-block;
}
#rpt .overview p strong span {
	font-size: 1.4em;
	line-height: 2em;
}

/*　抄録集・ポスター発表見出し　*/
#rpt .h03 br {
	display: none;
}
#rpt .h03 span {
	display: inline-block;
}

/*　抄録集　*/
#rpt .abstract {
	text-align: center;
}
#rpt .abstract figure {
	width: 160px;
	height: 230px;
	margin: 50px auto 0 auto;
	overflow: hidden;
}
#rpt .abstract figure a {
	width: 160px;
	height: 0;
	padding: 230px 0 0 0;
	background: url(../img/pic-abstract.jpg) no-repeat;
	background-size: contain;
	display: block;
	overflow: hidden;
}
#rpt .abstract figure a:hover {
	-webkit-transform: scale(1.05,1.05);
	transform: scale(1.05,1.05);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}
#rpt .abstract .pdf {
	text-align: left;
}

/*　ポスター発表　*/
#rpt .poster ol {
	max-width: 50em;
	margin: 50px auto;
}
#rpt .poster ol li {
	position: relative;
	min-height: 280px;
	margin: 0 0 80px 0;
	padding: 0 0 0 180px;
}
#rpt .poster ol li:nth-last-child(1) {
	margin-bottom: 0;
}
#rpt .poster ol h3 {
	font-size: 1em;
}
#rpt .poster ol cite {
	font-size: 1.2em;
	font-weight: 900;
	display: block;
}
#rpt .poster ol b {
	margin: 0.8em 0;
	padding: 0.5em 0;
	/*boderはサイトカラーで指定済*/
	border-left: none;
	border-right: none;
	font-size: 0.9em;
	font-weight: normal;
	/*colorはサイトカラーで指定済*/
	display: block;
}
#rpt .poster ol b span {
	display: inline-block;
}
#rpt .poster ol b i {
	font-size: 0.7em;
	font-style: normal;
	-webkit-transform: translate(0, -0.3em);
	transform: translate(0, -0.3em);
	display: inline-block;
}

/*　ポスター画像　*/
#rpt .poster ol figure {
	position: absolute;
	z-index: 1;	/*マウスオーバー時に演題番号に影響ないよう*/
	top: 3.5em;
	left: 0;
	width: 160px;
	height: 230px;
	overflow: hidden;
}
#rpt .poster ol figure img {
	width: 160px;
	height: 230px;
}
#rpt .poster ol figure img:hover {
	-webkit-transform: scale(1.05,1.05);
	transform: scale(1.05,1.05);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}

/*　演題番号　*/
#rpt .poster ol mark {
	position: absolute;
	top: 0.2em;	/*タイトルの位置と同じに調整*/
	left: 0;
	width: 140px;
	padding: 0.5em 10px;
	/*background-colorはサイトカラーで指定済*/
	font-size: 1.3em;
	font-weight: 900;
	color: #fff;
	line-height: 1em;
	text-align: center;
	display: inline-block;
}
#rpt .poster ol mark::before {
	content: attr(data-e);
	font-size: 0.7em;
	font-weight: normal;
} 

/*　掲載終了メッセージ　*/
#rpt .end {
	padding: 100px 40px 150px 40px;
	text-align: center;
}
#rpt .end span {
	display: inline-block;
}


/*──────────────────────────
演題募集
──────────────────────────*/
/*　タイトル、メインイメージ　*/
#sub h1.subpage span {
	letter-spacing: 0.2em;
}

/*　概要説明　*/
#sub .overview {
	padding: 0 40px 100px 40px;
}
#sub .overview p {
	margin: 0 0 40px 0;
}
#sub .overview .frame {
	margin: 20px 0 0 0;
}
#sub .overview .frame .small {
	font-size: 0.9em;
}

/*　締め切りメッセージ　*/
#sub .mailform .end {
	padding: 100px 0 60px 0;
	text-align: center;
}
#sub .mailform .end span {
	display: inline-block;
}


/*──────────────────────────
事前参加申込み
──────────────────────────*/
/*　概要説明　*/
#ent .overview {
	padding: 0 40px 100px 40px;
}
#ent .tablebox ins {
	color: #c00;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
}
#ent .overview .frame {
	margin: 20px 0 0 0;
}
#ent .overview .frame ul {
	margin: 20px 0 0 0;
}
#ent .overview .frame li {
	margin: 0 0 0.5em 0;
	padding: 0 0 0 1em;
	line-height: 1.2em;
	text-indent: -1em;
	box-sizing: border-box;
	display: block;
}
#ent .overview .frame .small {
	font-size: 0.9em;
}
#ent .overview .paypal {
	margin: 30px 0 0 0;
	display: block;
}
#ent .overview .paypal a {
	margin: 0.5em 0 0 0;
    border: 0;
	display: inline-block;
}
#ent .overview .paypal a:hover {
	opacity: 0.7;
}

/*　申込み受付終了メッセージ　*/
#ent .mailform .end {
	padding: 100px 0 60px 0;
	text-align: center;
}
#ent .mailform .end span {
	display: inline-block;
}


/*──────────────────────────
フォーム
──────────────────────────*/
#sub .mailform , #ent .mailform {
	padding: 0 40px 100px 40px;
}
#sub form dl {
	margin: 20px 0 30px 0;
	letter-spacing: -0.4em;
}
#ent form dl {
	margin: 40px 0 0 0;
	letter-spacing: -0.4em;
}
#sub form dt , 
#ent form dt {
	width: 25%;
	padding: 2em 1% 2em 0;
	border-top: 1px solid #ccc;
	font-weight: bold;
	letter-spacing: normal;
	vertical-align: top;
	display: inline-block;
}
#sub form dd , 
#ent form dd {
	width: 74%;
	padding: 1em 0;
	border-top: 1px solid #ccc;
	letter-spacing: normal;
	vertical-align: top;
	display: inline-block;
}
#sub form dd li , 
#ent form dd li {
	padding: 1em 0 1em 1em;
	text-indent: -1em;
	display: inline-block;
}
#sub form dd .radio-list li {
	margin-bottom: 0.5em;
	padding: 0 0 0 1em;
	text-indent: -1em;
	display: block;
}
#sub form dd .radio-list li:nth-last-child(1) {
	margin-bottom: 0;
}
#sub form dd input[type="text"] , 
#sub form dd input[type="tel"] , 
#sub form dd input[type="email"] , 
#sub form dd textarea , 
#ent form dd input[type="text"] , 
#ent form dd input[type="tel"] , 
#ent form dd input[type="email"] , 
#ent form dd textarea {
	width: 98%;
	padding: 1em 1%;
	border: solid 1px #ccc;
	font-size: 1.12em;
	box-sizing: border-box;
}
#sub form dd textarea , 
#ent form dd textarea {
	min-height: 7.5em;
	line-height: 1.5em;
}
#sub form dd input[type="text"].w01 , 
#sub form dd input[type="tel"].w01 , 
#sub form dd input[type="email"].w01 , 
#ent form dd input[type="text"].w01 , 
#ent form dd input[type="tel"].w01 , 
#ent form dd input[type="email"].w01 {
	width: 7em;
	margin: 0 0 10px 0;
}
#sub form dd input[type="text"].w02 , 
#sub form dd input[type="tel"].w02 , 
#sub form dd input[type="email"].w02 , 
#ent form dd input[type="text"].w02 , 
#ent form dd input[type="tel"].w02 , 
#ent form dd input[type="email"].w02 {
	width: 43%;
	margin: 0 2.5% 0 0;
}
#sub form dd input::-webkit-input-placeholder , 
#ent form dd input::-webkit-input-placeholder {
	line-height: 1.286;	/*中央寄せの調整*/
}
#sub form dd select , 
#ent form dd select {
	height: 3.5em;
	border: 1px solid #999;
	border-radius: 5px;
	font-size: 1.12em;
	vertical-align: middle;
	text-align: left;
}

/*　全角の句読点を使用　*/
#sub form dt i {
	font-size: 0.8em;
	font-weight: normal;
	font-style: normal;
	display: block;
}

/*　記載例を見る　*/
#sub form label.sample {
	position: relative;
	width: 7em;
	margin: 0.5em 0 0 0;
	padding: 0.2em 0.2em 0.2em 2em;
	background: #000 url(../img/icon-arrow.png) 10px center no-repeat;
	background-size: 10px auto;
	font-size: 0.9em;
	color: #fff;
	cursor: pointer;
	display: block;
}
#sub form label.sample:hover {
	background-color: #666;
}
#sub form label.sample + input , 
#sub form label.sample + input + .balloon {
   display: none; 
}
#sub form label.sample + input:checked + .balloon {
	position: absolute;
	margin: 0 3% 0 0;
	padding: 1.5em;
	background: rgba(250,250,250,0.9);
	border: 1px solid #888;
	font-weight: normal;
	color: #222;
	display: block;
}
#sub form label.sample+ input:checked + .balloon label {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 0;
	padding: 30px 0 0 0;
	background: #000 url(../img/icon-close.png) center center no-repeat;
	background-size: 10px auto;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	overflow: hidden;
}

/*　テキストエリア現在の字数　*/
#sub form dd .countup {	/*jsでcountup生成*/
	font-size: 1.3em;
	font-weight: bold;
	/*colorはサイトカラーで指定済*/
	display: block;
}
#sub form dd .countup::before {
	content: "現在の字数：";
	font-size: 0.75em;
	font-weight: normal;
	color: #222;
}

/*　自己チェック　*/
#sub form dl.check dt {
	width: 36%;
}
#sub form dl.check dd {
	width: 63%;
}

/*　利益相反の補足　*/
#sub form .epexegesis {
	margin: -20px 0 15px 0;
	padding-left: 1em;
	font-size: 0.9em;
	text-indent: -1em;
}
#sub form .epexegesis li {
	margin: 0 0 0.5em 0;
}
#sub form .epexegesis li::before {
	content: "※";
}

/*　必須マーク　*/
#ent form .need::after {
	content: "必須";
	position: relative;
	top: -0.1em;
	margin: 0 0 0 0.5em;
	padding: 0.2em 0.8em;
	background: #c00;
	border-radius: 3px;
	font-size: 0.7em;
	color: #fff;
	line-height: 1em;
	display: inline-block;
}

/*　個人情報の取り扱い　*/
#sub form .btn , #ent form .btn {
	padding: 20px 0 50px 0;
	border-top: 1px solid #ccc;
	text-align: center;
}
#sub form .btn .pdf , #ent form .btn .pdf {
	margin: 0 0 1em 0;
}

/*　募集細則に同意する　*/
#sub form .btn div {
	margin: 0 0 2em 0;
}

/*　送信ボタン　*/
#sub form .send01 , 
#ent form .send01 {
	min-width: 240px;
	margin: 0 5px;
	padding: 25px 1em;
	background: #ee6100;
	border-style: none;
	border-radius: 0;
	font-weight: bold;
	color: #fff;
}
#sub form .send01:hover , 
#ent form .send01:hover {
	text-decoration: none;
	opacity: 0.8;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
}

/*　注意書き　*/
#sub .caution , 
#ent .caution {
	font-size: 0.9em;
}
#sub .caution span , 
#ent .caution span {
	color: #c00;
	display: block;
}

/*　────　フォーム入力エラー　────　*/
/*　エラーメッセージ　*/
form .form-error {
	margin: 40px 0 20px 0;
	padding: 3%;
	border: 3px solid #c66;
	color: #c33;
}
form .form-error span {
	margin: 0 0 0.5em 0;
	font-size: 1.1em;
	font-weight: bold;
	display: inline-block;
}
form .form-error li {
	padding-left: 1em;
	text-indent: -1em;
}
form .form-error li:before {
	content: "・";
}

/*　エラー箇所　*/
form dd.err select , 
form dd.err input[type="text"] , 
form dd.err input[type="tel"] , 
form dd.err input[type="email"] , 
form dd.err textarea {
	background: #fdd;
	border: solid 1px #c33;
}
form dd.err ul {
	padding: 0 1em;
	background: #fdd;
}
form dd.err .radio-list {
	padding: 1em;
}
form .btn.err div {
	padding: 1em;
	background: #fdd;
}


/*　────　フォーム内容確認　────　*/
form .form-review {
	margin: 30px 0 10px 0;
	font-weight: bold;
	font-size: 1.1em;
	color: #5a0;
	text-align: center;
}
form dd.check span , form div.check span {
	font-weight: bold;
	color: #5a0;
	display: inline-block;
}
form dd.check span {
	padding: 1em 0;
}

/*　入力に戻るボタン　*/
form .send02 {
	min-width: 240px;
	margin: 0 5px;
	padding: 25px 1em;
	background: #999;
	border-style: none;
	border-radius: 0;
	font-weight: bold;
	color: #fff;
}
form .send02:hover {
	text-decoration: none;
	opacity: 0.8;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
}

/*　────　フォーム送信完了　────　*/
#sub .thanks , #ent .thanks {
	max-width: 620px;
	margin: 0 auto;
	padding: 30px 40px 100px 40px;
}
#sub .thanks h2 , #ent .thanks h2 {
	font-weight: 900;
}
#sub .thanks h2 span , #ent .thanks h2 span {
	display: inline-block;
}
#sub .thanks p , #ent .thanks p {
	margin-top: 30px;
	line-height: 2em;
}
