@charset "UTF-8";
/*-------------------
** reset
-------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*-------------------
** clearfix
-------------------*/
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/*-------------------
** basic design
-------------------*/
body {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 15px;
  color: #333333;
  line-height: 1.8em;
}

table {
  font-size: inherit;
  font: 100%;
}

h1 {
  font-size: 170%;
  font-weight: bold;
}

h2 {
  font-size: 150%;
  font-weight: bold;
}

h3 {
  font-size: 130%;
  font-weight: bold;
  padding-bottom: 10px;	
}

h4 {
  font-size: 120%;
  font-weight: bold;
}

h5 {
  font-size: 110%;
  font-weight: bold;
}

h6 {
  font-size: 100%;
  font-weight: bold;
}

sup {
  vertical-align: super;
}

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

.center {
  text-align: center;
}

.btm1 {
  margin-bottom: 10px;
}

.btm2 {
  margin-bottom: 20px;
}

.btm2_underline {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cccccc;
}

.btm4 {
  margin-bottom: 40px;
}

/*-------------------
** main page
-------------------*/
#first {
	/*background: #DBF0F6 url(../images/bg.jpg)  repeat-y right top;*/
	background: #eeeeee;
	/*background: #D8E1EA; B案*/
}
#first h1 {
  line-height: 0em;
}

#body_wrap {
  width: 1000px;
  margin: 0 auto;
  background: url(../images/content_bg.png) repeat-y;
}

section {
  width: 982px;
  margin: 0 auto;
}
section .inner {
  padding: 30px 45px;
}
section .sponsor_area {
  background: #ffffff;
  border: 1px solid #0086AB;
  padding: 40px;
}
section h2 {
  /*color: #D70C18;*/
color: #043c78;
}

/* table design
--------------------------------------*/
table.outline {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ccc;
  font-size: 0.9em;
}
table.outline td {
  padding: 1em;
  border-bottom: 1px solid #ccc;
  line-height: 1.5em;
  vertical-align: top;
  text-align: left;
}

table.program {
  width: 100%;
  border-collapse: separate;
  border-spacing: 2px;
  margin-bottom: 1em;
}
table.program th {
  width: 150px;
  padding: 10px;
  border: 1px solid #ccc;
  line-height: 1.5em;
  text-align: center;
}
table.program th.time {
  color: #043c78;
  width: 8em;
}
table.program td {
  padding: 10px;
  border: 1px solid #ccc;
  line-height: 1.5em;
  text-align: left;
}
table.program td.mid {
  color: #043c78;
}
table.program td img {
  margin: 10px 0;
}
table.program td .name {
  font-size: 1.3em;
  font-weight: bold;
}
table.program td p {
  margin: 0 !important;
  padding: 0 !important;
}
table.program td p.theme {
  font-size: 22px;
  font-weight: bold;
  color:#043c78;
  padding: 0.5em 0 !important;
  line-height: 1.5em;
}
table.program td p.theme span {
  font-size: 17px;
  font-weight: bold;
  color: #454545;
  padding: 0.5em 0 !important;
  line-height: 1.1em;
}
table.program td p.pad05 {
  padding-bottom: 0.5em !important;
}
table.program td p.pad1 {
  padding-bottom: 1em !important;
}
table.program td ul.pad1 {
  padding-bottom: 1em !important;
}
table.program td .bottom_pad10 {
  padding-bottom: 10px;
}

/* sponsorship
--------------------------------------*/
a h2.sponsorship{
	background:#043c78;
	border-bottom: 1px solid #fff;
}
a:hover h2.sponsorship{
	background: #ccc;
	color:#666;
}

section .inner_sponsorship {
  padding: 10px 45px;
}

a h2.sponsorship p.inner_sponsorship{
	background:url(../images/menu_off_bg_r.png) no-repeat left center;
	padding-left:30px;
	width:950px;
	margin-left:47px;
}

a:hover h2.sponsorship p.inner_sponsorship{
	background:url(../images/menu_hover_bg_r.png) no-repeat left center;
	padding-left:30px;
	width:950px;
	color:#FFF;
	margin-left:47px;
}

a h2.sponsorship p.inner_sponsorship{
	background:url(../images/menu_off_bg_r.png) no-repeat left center;
	padding-left:30px;
	width:950px;
	color:#FFF;
	margin-left:47px;
}

a:hover h2.sponsorship p.inner_sponsorship{
	background:url(../images/menu_hover_bg_r.png) no-repeat left center;
	padding-left:30px;
	width:950px;
	margin-left:47px;
	color:#666666;
}

a.sponsorship_link:hover{
	text-decoration: none;
}

/* pagetop
--------------------------------------*/
#scrolltotop {
  position: fixed;
  right: 30px;
  bottom: -10px;
}

/* footer design
--------------------------------------*/
#footer {
  background: #666;
  color: #fff;
  font-size: 13px;
}

#footer img {
  vertical-align: middle;
  margin-right: 10px;
}

#footer .cfo {
  font-size: 18px;
  font-weight: bold;
}

#footer a {
  color: #fff;
}

#footer a:hover {
  color: #ccc;
}

#footer p.copyright {
  /*padding:10px 0;*/
  font-family: Arial, Helvetica, sans-serif;
}

/*--------------------
IE6メッセージ
---------------------*/
.ieerror {
  color: #FFF;
  background: #000;
  padding: 10px;
  text-align: center;
  /*position:absolute;
  top:0px;
  left:0px;
  z-index:1000;*/
  width: 100%;
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}

.ieerror a {
  color: #FFF;
}

/* tinybox
---------------------------------------*/
.tbox {
  position: absolute;
  display: none;
  padding: 14px 17px;
  z-index: 900;
}

.tinner {
  padding: 15px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background: #fff url(../images/preload.gif) no-repeat 50% 50%;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}

.tmask {
  position: absolute;
  display: none;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  z-index: 800;
}

.tclose {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  background: url(../images/close.png) no-repeat;
}

.tclose:hover {
  background-position: 0 -30px;
}

#error {
  background: #ff6969;
  color: #fff;
  text-shadow: 1px 1px #cf5454;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 0;
}

#error .tcontent {
  padding: 10px 14px 11px;
  border: 1px solid #ffb8b8;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

#success {
  background: #2ea125;
  color: #fff;
  text-shadow: 1px 1px #1b6116;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 10;
  -moz-border-radius: 0;
  border-radius: 0;
}

#bluemask {
  background: #8B9BC4;
}

#frameless {
  padding: 10px;
}

#frameless .tclose {
  left: 6px;
}

/*------------------------------------
/* profile
--------------------------------------*/
body#profile {
  background: none;
  font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
}

#profile #profile_wrapper {
  width: 600px;
  margin: 0 auto;
  border-top: 5px #043c78 solid;
  background: #fff;
}
#profile #profile_head {
  width: 550px;
  margin: 25px auto;
}
#profile #profile_head #photo {
  width: 130px;
  height: 130px;
  background-color: #efefef;
  float: left;
}
#profile #profile_head #name {
  width: 370px;
  margin-left: 20px;
  float: left;
}
#profile #profile_head #name h2 {
  padding: 0;
  margin: 0;
  text-align: left;
}
#profile #profile_head #name p {
  padding: 0;
  margin: 0;
  text-align: left;
  line-height: 1.5;
}
#profile #profile_head #name span {
  font-size: 14px;
}
#profile h3 {
  font-size: 1.2em;
  font-weight: bold;
  margin: 20px 20px 10px 20px;
  padding: 0 0 5px 5px;
  border-bottom: 1px solid #ccc;
  text-align: left;
}
#profile p {
  padding: 0 25px 0.5em;
  text-align: left;
}
#profile table {
  margin: 0 25px;
}
#profile table td {
  padding: 3px;
}
#profile p.pro_print {
  width: 83px;
  margin: 30px auto;
}
#profile #profile_footer {
  margin: 20px 0 5px 0;
  width: 580px;
  height: 40px;
  text-align: center;
}
#profile code {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  display: block;
  text-align: center;
  margin: 40px 0;
  border-top: 1px dotted #ccc;
  padding-top: 10px;
}

#profile h4{
    margin-left: 25px;
}

#profile ul.dot{
    padding: 0 25px 0.5em;
}

.red-mark{
    padding: 2px 6px 0 0;
    margin-bottom: 1em;
    font-weight: bold;
    background: #D70C18;
    color: #fff;
    line-height: 1.8;
}

table.registrationFee{
    width: 500px;
    border: 1px solid #222;
}
table.registrationFee span{
    color: #D70C18;
}
table.registrationFee thead{
    background: #dcdcdc;
}
table.registrationFee th{
	/*width:56px;*/
	width:156px;
    border-bottom: 1px solid #222;
	background: #dcdcdc;
}
table.registrationFee td{
    /*width: 221px;*/
	width: 121px;
    border-bottom: 1px solid #222;
    border-left: 1px solid #222;
}
table.registrationFee thead td{
    /*width: 221px;*/
	width: 121px;
    text-align: center;
    vertical-align: middle;
}
table.registrationFee tbody th{
    padding-left: 1em;
    background: #dcdcdc;
}
table.registrationFee tbody td{
    text-align: right;
}
.code-l{
    background-color: #cc0000;
    color: #fff;
    display: inline-block;
    margin-top: 0.4em;
    padding: 4px 8px 2px;
    border-top: 1px solid #222;
    border-left: 1px solid #222;
    border-bottom: 1px solid #222;
}
.code-r{
    background: rgba(255, 255, 255, 0.6);
    padding: 4px 10px 2px;
    border-top: 1px solid #222;
    border-right: 1px solid #222;
    border-bottom: 1px solid #222;
}

strong{
    font-weight: bold;
}

p.bt_print{
	margin:0px 0px 25px;
	text-align:right;
}

ul.dot{
    margin-left: 1em;
}

ul.dot li{
    text-indent: -1em;
}

ul.dot li::before{
    content: '・';
}

.mb1{
    margin-bottom: 1em;
}



.button_login {
	display: inline-block;
	position: relative;
	width: 150px  !important;
	height: 40px  !important;
	background-color: #E54B4B !important;
	border-radius: 8px;
	color: #fff;
	font-size:1.1em;
	font-weight:bold;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
  box-shadow: 0 3px 0 #530000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	line-height:40px;
	text-align: center;
	text-decoration: none;
	outline: none;
}

.button_login:hover {
  background-color: #ccc !important;
  box-shadow: 0 3px 0 #999;
  text-decoration: none;
}

.button_pdf {
	display: inline-block;
	position: relative;
	width: 150px;
	height: 40px;
	background-color: #E54B4B;
	border-radius: 8px;
	color: #fff;
	font-size:1em;
	font-weight:bold;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
/*	box-shadow: 0 3px 0 #530000;*/
/*	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);*/
	line-height:40px;
	text-align: center;
	text-decoration: none;
	outline: none;
}


/*------------------------------------
/* invitation
--------------------------------------*/
#invitation #body_wrap {
  background: none;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  width: 980px;
}
#invitation #body_wrap h1 {
  line-height: 0em;
}

/* */
.tm{
    margin-bottom: 1em;
}

/*------------------------------------
/* print setting
--------------------------------------*/
@media print {
  p.pro_print {
    display: none;
  }
}



.bg_color{
	background-color: #eeeeee !important;
}

.button {
	display: inline-block;
	position: relative;
	width: 300px;
	height: 90px;
	background-color: #E54B4B;
	border-radius: 8px;
	color: #fff;
	font-size:1.3em;
	font-weight:bold;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 3px 0 #530000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	line-height:90px;
	text-align: center;
	text-decoration: none;
	outline: none;
}

.button a{
	color: #fff !important;
}

.button:hover {
	background-color: #ccc;
	box-shadow: 0 3px 0 #999;
	text-decoration: none;
}

.bn_link:hover{
	opacity: 0.5;
}


.icon_01{
    float: left;
    margin-left:0 !important;
    padding-bottom:0;
    padding-left:20px;
}

.title_key{
    padding-top:5px;
    padding-bottom:10px;
    padding-left:40px;
    margin-top:0;
    margin-left:0;
    font-size:1.15em;
    font-weight:bold !important;
    color:#007AB7;
    width:100px;
}

.coin{
    padding-top:5px;
}

.title_pro{
    padding-top:10px;
    padding-left:1px;
    padding-bottom:10px;
    margin-top:0;
    margin-left:0;
    font-size:1.15em;
    font-weight:bold !important;
    color:#D12E1F !important;
    width:100px;
}


.button_login_no_link {
  display: inline-block;
  position: relative;
  width: 150px  !important;
  height: 40px  !important;
  background-color: #ccc !important;
  border-radius: 8px;
  color: #fff !important;
  font-size:1.1em;
  font-weight:bold;
  line-height: 52px;
  -webkit-transition: none;
  transition: none;
/*  box-shadow: 0 3px 0 #530000;*/
  /*text-shadow: 0 1px 1px rgba(0, 0, 0, .3);*/
  line-height:40px;
  text-align: center;
  text-decoration: none;
  outline: none;
  text-decoration-line: none !important;
}

.caption_title{
  font-size:0.85em;
  color:#333;
}

p.time {
  margin-bottom:20px;
  color: #043c78;
  text-align: center;
}

p.mid {
  color: #043c78;
  font-weight:700;
}