@charset "UTF-8";


/* ========BASIC======== */
html {
	overflow-y:scroll;
}

body {
	margin:0;
	padding:0;
	text-align:center;
	letter-spacing:1px;
	font-size:80%; line-height:150%; font-family:メイリオ, 游ゴシック, 游ゴシック体, Yu Gothic,YuGothic, Verdana, Arial, Helvetica, sans-serif;
	color:#333;
	border-top:10px solid #333132;
	background:#fff url("/2021/img/bg.gif") 50% 50% repeat-y fixed;
}

br {
	letter-spacing:normal;
}

a {
	color:#333;
	text-decoration:none;
}

a:hover {
	color:#ddd;
	text-decoration:none;
}

img {
	border:0;
}

h1,h2,h3,h4,h5,h6 {
	margin:0;
}


/* ========TEMPLATE FRAMEWORK======== */
#top {
	width:780px;
	margin:0 auto;
	text-align:left;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	padding-bottom: 75px;
	position: relative;
}

#header {
	width:780px;
	height:236px;
	padding:0;
	margin-bottom:7px;
	background:#197373;
	border-bottom:1px solid #000066;
}

#header_e {
	width:780px;
	height:236px;
	padding:0;
	margin-bottom:7px;
	background:#197373;
	border-bottom:1px solid #000066;
}

#contents {
	clear:both;
	width:760px;
	height: 100%;
	min-height: 100%;
	margin:0 10px;
}

#main {
	float:right;
	width:550px;
}

#sub {
	float:left;
	width:180px;
}

#footer {
	clear:both;
	width:780px;
	height: 75px;
	margin-top:10px;
	border-top:1px solid #666;
	background:#ffffff;
	position: absolute;
	bottom: 0;
}

/* 回り込み解除 */
#contents:after {
	content:"";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}

.clearfix:after {
	content:"";
	display:block;
	clear:both;
	visibility:hidden;
}

div:after,
p:after {
	content: "";
	display: block;
	clear: both;
}

/* ========HEADER CUSTOMIZE======== */
#header h1 {
	margin:0;
	padding:0;
	font-size:36px;
	line-height:36px;
}
#header p {
	margin:10px 0 0 0;
	padding:0 20px;
	font-size:16px;
	line-height:16px;
}


/* ========MAIN CONTENTS CUSTOMIZE======== */
#main a {
	color:#0080B0;
	text-decoration:underline;
}

#main a:hover {
	color:#0080B0;
	text-decoration:none;
}

#main a.reglink {
	background:url("/2021/img/exit.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
	font-weight:bold;
}

#main a.doc {
	background:url("/2021/img/doc.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
}

#main a.spread {
	background:url("/2021/img/spread.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
}

#main a.ppt {
	background:url("/2021/img/ppt.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
}

#main a.pdf {
	background:url("/2021/img/pdf.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
}

#main a.file {
	background:url("/2021/img/file.gif") center right no-repeat; 
	padding-right: 18px; 
	margin-right:2px; 
}

#main a.exit {
	background:url("/2021/img/exit.gif") center right no-repeat; 
	padding-right: 14px; 
	margin-right:2px; 
}

#main .center {
	margin: 15px auto; 
	text-align: center; 
}

#main .right {
	float: right; 
	clear: both; 
	margin: 0 0 15px 15px; 
}

#main .left {
	float: left; 
	margin: 0 15px 15px 0; 
}

#main .clear {
	clear: both; 
}

#main .italic {
	font-size: 1.1em;
	font-style: italic;
	line-height: 180%;
}

#main .small {
	font-size: 78%;
	line-height: 100%;
}

#main .small2 {
	font-size: 80%;
	line-height: 120%;
}

#main .bold {
	font-weight: bold;
	font-size: 1.1em;
}

#main .underline {
	border-bottom: 1px solid #000000;
}

#main h2 {
	margin:5px 0 10px 0;
	font-weight:bold;
	font-size:18px;
	border-bottom:2px solid #0080B0;
}

#main h3 {
	margin:20px 0 10px 0;
	font-size:15px;
	border-bottom:1px dotted #0080B0;
}

#main h4 {
	margin:25px 0 5px 0;
	padding-left:5px;
	font-size:14px;
	border-left:5px solid #0080B0;
}

#main h5 {
	margin:20px 0 5px 0;
	padding-left:5px;
	font-size:14px;
	background:#ccc;
}

#main h6 {
	margin: 20px auto 10px auto; 
	text-align: center; 
	font-size:14px;
}

#main p {
	margin:0 0 1em 0;
	text-align:justify;
	text-justify:inter-ideograph;
}

#main dl {
	margin:0;
	padding:0;
}

#main dt {
	font-weight:bold;
}

#main dd {
	margin:0 0 1em 0;
	padding:0;
}

#main ul,
#main ol {
	margin:2em 0 1.5em 30px;
	padding:0;
}

#site_image {
	margin: 25px 0;
}

#cfp_image{
	margin: 0 0 5px 0;
}

/* ========SUB CONTENTS CUSTOMIZE======== */
#sub h2 {
	margin:0;
	padding:5px;
	color:#fff;
	font-weight:bold;
	font-size:15px;
	background:#666;
}


/* ========MENU CUSTOMIZE======== */
#menu ul {
	margin:0;
	padding:0;
}

#menu li {
	margin:0;
	padding:0;
	list-style-type:none;
	border-bottom:1px solid #cccccc;
}

#menu li a {
	display:block;
	width:175px;
	padding:10px 0 10px 5px;
	color:#fff;
	line-height:1.5;
	background:#0c3c78;
}

#menu li a:hover {
	color:#333;
	background:#dbdbdb;
}

#menu li a.here {
	color:#fff;
	background:#4c6be9;
}

.logos {
	margin-top:20px;
	margin-left:15px;
}
/* ========SUBMENU CUSTOMIZE======== */
#subMenu ul {
	margin:0;
	padding:0;
	list-style-type:none;
}

#subMenu li {
	margin:0;
	padding:0;
	list-style-type:none;
	border-top:1px dotted #666666;
	border-bottom:none;
}

#subMenu li a {
	display:block;
	width:165px;
	padding:5px 0 5px 15px;
	color:#330000;
	line-height:1.0;
	background:#dbeafd;
}

#subMenu li a:hover {
	color:#333333;
	background:#dbdbdb;
}

#subMenu li a.here {
	color:#000000;
	background:#4c6be9;
}

/* ========FOOTER CUSTOMIZE======== */
#pageTop {
	padding:10px 10px 0 0;
	text-align:right;
}

#footerMenu {
	padding:10px 0;
}

#footerMenu a {
	color:#333;
}

#footerMenu a:hover {
	color:#333;
	border:0;
	border-bottom:1px solid #333;
}

#footerMenu ul {
	margin:0;
	padding:0;
	list-style:none;
}

#footerMenu li {
	display:inline;
	margin:0 0 0 10px;
	padding-left:8px;
	background:url("/2021/img/arrow.gif") 0 4px no-repeat;
}

.copyright {
	padding:20px 0;
	color:#333;
	text-align:center;
	font-style:normal;
	font-size:11px;
	border-top:2px solid #ddd;
	background:#f1f1f1;
}

/* ========CUSTOMIZE======== */
#main .right-bio {
	float: right; 
	clear: both; 
	margin: 0 25px 15px 15px;
}

#main .right-bio2 {
	float: right; 
	clear: both; 
	margin: 0 25px 0 15px;
}

#main table {
	width:100%;
	border-collapse:collapse;
	margin-bottom: 1rem;
}

#main table th {
	padding:10px;
	font-size: 12px;
	line-height:1.8;
	text-align:left;
	border:1px solid #cccccc;
	background:#EBEADD;
}

#main table td {
	padding:10px;
	font-size: 12px;
	line-height:1.8;
	text-align:left;
	border:1px solid #cccccc;
}

#main table.mini {
	width:auto;
	border-collapse:collapse;
	margin: 7px 0 7px 20px;
}

#main table.mini th {
	padding:10px;
	font-size: 12px;
	line-height:1.5;
	text-align:center;
	border:none;
	background:#EBEADD;
}

#main table.mini td {
	padding:10px;
	font-size: 12px;
	line-height:1.5;
	border:none;
	vertical-align:top;
}

#main table.photo td {
	width:50%;
	padding:5px;
	font-size: 12px;
	line-height:1.5;
	vertical-align:top;
}

#topmain table{
	width:100%;
	border-collapse:collapse;
}

#topmain table td {
	padding:5px 0;
	text-align:center;
	border:0;
}

#main dl.bio {
	margin:10px 20px 10px 20px;
	padding:0;
}

#main dt.bio {
	font-weight:normal;
}

#main dd.bio {
	margin:0 0 5px 0;
	padding:0;
}

#main p.bio {
	margin:0 0 40px 0;
	padding:0;
}

.submita {
	display:block;
	width:300px;
	margin:20px auto;
	padding: 15px 30px;
	text-align:center;
	border-top: 1px solid #999;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	border-left: 1px solid #999;
	font-size:130%;
	font-weight: bold;
	cursor: pointer;
	color: #333;
}
.submitb {
	display:inline-block;
	width:280px;
	margin:10px auto;
	padding: 10px 15px; 
	text-align:center;
	border-top: 1px solid #099;
	border-right: 1px solid #099;
	border-bottom: 1px solid #099;
	border-left: 1px solid #099;
	font-weight: bold;
	cursor: pointer;
	color: #333;
}
.submitc {
	display:inline-block;
	width:200px;
	margin:10px auto;
	padding: 10px 5px; 
	text-align:center;
	border-top: 1px solid #099;
	border-right: 1px solid #099;
	border-bottom: 1px solid #099;
	border-left: 1px solid #099;
	font-weight: bold;
	cursor: pointer;
	color: #333;
}
.submitd {
	display:block;
	width:320px;
	margin:20px auto;
	padding: 15px 30px;
	text-align:center;
	border-top: 1px solid #999;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	border-left: 1px solid #999;
	font-size:120%;
	font-weight: bold;
	cursor: pointer;
	color: #333;
}

div.box
{
	border-style: solid;
	border-width: 1px;
	border-color: #000000;
}

div.box2
{
	float: center;
	border-style: solid;
	border-width: 1px;
	border-color: #000000;
	margin: 30px 25px;
	padding: 1em;
}

figure {
	padding-top: 4px;
	border: none;
}
 
figcaption {
	display: table;
	width: 160px; /* minimum width */
	width: auto; /* for IE7 and below */
	font-size: 80%;
	margin: 1em 0;
}

#main li.summary {
	margin:0 auto 0.8em auto;
	padding:0;
}
#main ul.reg_category {
	display: block;
	margin: 0 auto;
	width: 350px;
	font-size: 79%;
}

.format35
{
	color:#0000ff;
}

.notice-red
{
	color:#ff0000;
}

img.banner
{
	border:0;
	margin:1rem 0;
}

.photo
{
	display: flex;
    justify-content: center;
    align-items: flex-start;
}

/* keynote more info */
.ac-container{
width: 500px;
margin: 1em auto;
}
.ac-container label{
width: auto;
text-align: right;
margin: auto;
padding: 5px;
position: relative;
display: block;
height: 2em;
cursor: pointer;
color: #333;
}
.ac-container label:hover{
color: rgba(51, 51, 51, 0.7);
-webkit-transition: all .3s;
transition: all .3s;
}
.ac-container label:after{
color: #333;
content:"+";
}
.ac-container input:checked ~ label::after {
color: #333;
content:"-";
}
.ac-container input{
display: none;
}
.ac-container div{
margin-top: -1px;
overflow: hidden;
height: 0px;
position: relative;
z-index: 10;
transition: 
height 0.3s ease-in-out, 
box-shadow 0.6s linear;
}
.ac-container input:checked ~ div{
transition: 
height 0.5s ease-in-out, 
box-shadow 0.1s linear;
}
/* 高さの定義 */
.ac-container input:checked ~ div.ac-small{
height: auto;
}
/* keynote more info end*/

.ribbon_b{
  display: inline-block;
  position: relative;
  height: 20px;/*高さ*/
  line-height: 20px;/*高さ*/
  text-align: center;
  margin-top: 5px;
  padding: 0 20px 0 10px;/*文字の左右の余白*/
  background: #2196F3;/*背景色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon_b:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon_b:after {
  top: 0;
  right: 0;
  border-width: 10px 15px 10px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

.ribbon_y{
  display: inline-block;
  position: relative;
  height: 20px;/*高さ*/
  line-height: 20px;/*高さ*/
  text-align: center;
  margin-top: 5px;
  padding: 0 20px 0 10px;/*文字の左右の余白*/
  background: #ffc668;/*背景色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon_y:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon_y:after {
  top: 0;
  right: 0;
  border-width: 10px 15px 10px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}