/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
html {  
  font-size: 87.5%;
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

body {
  background-color: #fff;
  color: #414042;
  
  margin: 0;
  
  font-size: 14px;
  font-size: 1rem;
}

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

header, footer, section, article {
  display: block;
}

body > * > section {
  position: relative;
  width: 100%;
}

body > * > section > article {
  position: relative;
  width: 100%;
  z-index: 5;
}

body > * > section > article > .box {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}a { overflow: hidden; outline: none;}
a:link { color: #5185c5; text-decoration: none; }
a:visited { color: #5185c5; text-decoration: none; }
a:hover { color: #a8c9f2; text-decoration: underline; }
a:active { color: #5185c5; text-decoration: underline; }
a:focus{outline: none;}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
	vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}
a img.linkimg{
background:none!important;
}
a:hover img.linkimg{
opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
background:none!important;
}
.clear {
	clear:both;
}

.br_pc_only {display:block}
.br_sp_only {display:none}

/* -----------------------------------------------
ヘッダー・グローバルナビ部分
----------------------------------------------- */

/* -----------------------------------------------
共通
----------------------------------------------- */
#wrapper {
	margin: 0 auto;
	text-align:left;
	padding: 0;
}
/* -----------------------------------------------
フッター
----------------------------------------------- */
footer{
	width: 100%;
	color: #FFF;
    background: #0f1c50;
    text-align:center;
}
footer .inner{
	font-size:86%;
    width: 100%;
	max-width: 1120px;
	padding:20px 120px;
	margin:0 auto;
	box-sizing:border-box;
	height:auto;
    position: relative;
}
footer .inner .copy{
	margin:0 auto;
	line-height:2.5;
}
footer .inner .copy a:link{color:#FFF;text-decoration:underline;}
footer .inner .copy a:hover{color:#FFF; text-decoration:underline;}
footer .inner .copy a:visited { color:#FFF;}
footer .inner .pagetop {
  position: fixed;
  right: 1%;bottom: 1%;
  display: block;
  padding: 20px;
}
/* -----------------------------------------------
#timetable共通パーツ
----------------------------------------------- */
.go_box,.go_box_timebar{position: absolute;
    width: 100%;
left: 0;
bottom: 0;
    padding: 0.5em;
}
.go_detail {text-align: left;}
.go_detail img{margin-right: 10px;vertical-align: middle;}
.go_detail a:link,#timetable .go_detail a:visited{
    display: block;
    padding: 0.6em 0;
}
.go_detail .oneppoint{
	display: inline-block;
}
.go_entry label {
display: block;
position: relative;
padding: 0.6em;
background-color: #333333;
cursor: pointer;
color: #fff;
    border: solid 1px #333333;
    text-align: left;
}
.go_entry input{
    vertical-align:middle;
}
.go_entry label:hover {
    background-color: #fff;
    cursor: pointer;
    color: #333333;
    transition: all .6s;
}

.remaining_seat{
    width: 5em;
    height:2em;
    text-align: center;
    display:inline-block;
    vertical-align:middle;
    color: #fff;
    padding: .25em 0;
    margin-left:0.5em;
    background: #d0311b;
    font-size:0.9em;
}
.session_box {width:5em; height:2em; display:inline-block;vertical-align:middle;text-align: center;color: #fff;border-radius: 6px;line-height: 2em; margin-right: 0.3em;font-weight: bold; margin-bottom: 0.3em;}
.k_back{background: #e6b600;}
.r_back{background: #6785c1;}
.n_back{background: #6fc7b6;}
.s_back{background: #e6b600;}
.douji_box {width:5em; height:2em; display:inline-block;vertical-align:middle;text-align: center;color: #fff;border-radius: 6px;padding: .25em 0;background: #0f1c50;font-weight: bold;margin-bottom: 0.3em;}
.jirei_box {width:3em; height:2em; display:inline-block;vertical-align:middle;text-align: center;color: #fff;border-radius: 6px;padding: .25em 0;background: #d0311b;font-weight: bold;margin-bottom: 0.3em;}
.session_ver{margin: .5em 0;display: inline-block;color: #6785c1;}
.time_bar {width:100%;display:none;text-align: center;color: #fff;;background: #6785c1;font-weight: bold;padding: 0.5em 0;margin-bottom: 0.3em;}
.panelIcon {width:12em; height:2em; display:inline-block;vertical-align:middle;text-align: center;color: #fff;border-radius: 6px;padding: .25em 0;background: #0080b1;font-weight: bold; margin-bottom: 0.3em;}

.sp_only_text{display: none;}
/* -----------------------------------------------
#timetable
----------------------------------------------- */
#timetable {
	margin: 0 auto;
    width: 100%;
    position: relative;
}
.head_logo {
    position: absolute;
    top:20px;
    left:20px;
}

#timetable_header {
	background: url("../images/timetable_head.jpg") no-repeat;
    background-size: cover;
	background-position: center top;
    height: 62vh;
	margin: 0;
	padding: 0;
    display: flex;
    flex-direction: column; 
    justify-content: center;
    align-items: center;
}
#timetable_header h2 {
    width: 100%;
    max-width: 820px;
}
#timetable_header h2 img{
    width: 100%;
}
#timetable_header .for_pc{display: block;}
#timetable_header .for_sp{display: none;}

#timetable .timetable_inner{
	margin: 0;
	padding: 0 0 20px;
	text-align:center;
}
#timetable .timetable_inner .title {
    margin: 0 auto;
    width: 100%;
    color: #fff;
    background: #6785c1;
    padding: 0.5em;
    text-align: center;
}

#timetable .pre-regist {
    margin: 0 auto 0;
    width: 100%;
    padding: 20px;
}
#timetable .pre-regist p {
    margin: 0 auto 0;
    text-align: left;
    padding: 0 20px 20px 20px;
}
#timetable .pre-regist p span {
    color:#FF0000;
}
#timetable .general {
    margin: 0 auto 0;
    width: 100%;
    border: solid 2px #6785c1;
    padding: 20px 20px 50px;
    background: #f0f5fe;
    position: relative;
}
#timetable .general p {
    text-align: left;
    padding: 0 ;
    font-weight: bold;
}

#timetable .general ul {
	margin:0 auto;
	text-align:left;
	width: 100%;
    display: flex;
    padding: 1em 0;
}
#timetable .general ul li {
	padding:0 20px 0 0;
	list-style:none;
	width:100%;
}
#timetable .general .session_ver{
    margin: .5em 0;
    display: inline-block;
    color: #6785c1;
}

#timetable .general .titlespace {
    margin: 0 auto;
    width: 100%;
    color: #00646e;
    padding: 1em 0 2em;
    text-align: left;
}
#timetable .general .time{
    margin: 0 0 .5em;
    display: block;
    color: #505050;
}
#timetable .general .ph {
	margin:0 0 0.5em;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    max-width: 100px;
}
#timetable .general .title_area {
	font-weight:bold;
    margin: 0.5em 0;
    line-height: 1.4;
}
#timetable .general .name_area {
    display: inline-block;
    margin-right: 1.5em;
}
#timetable .general .company {
    font-size: 100%;
}
#timetable .general .profile {
    font-size: 75%;
}
#timetable .general .name {
    font-size: 100%;
    font-weight: bold;
}
#timetable .general2 {
    margin: 0 auto 0;
    width: 100%;
    border: solid 2px #6785c1;
    padding: 20px 20px 50px;
    background: #f0f5fe;
    font-weight: bold;
    text-align: left;
    position: relative;
}
#timetable .general2 .time2 {
    font-size: 18px;
}
#timetable .general2 .title2 {
    font-size: 42px;
}
#timetable .general2 p {margin: 0 auto 0.5em;
}

#timetable table{
    margin: 0 auto;
    padding: 0;
    border-collapse:collapse;
    width: 100%;
    background: #fff;
    border-top: solid 1px #6785c1;
    border-left: solid 1px #6785c1;
}
#timetable tr {
	padding:0;
}

#timetable th {
	padding:0;
}
#timetable td {
	padding:10px 10px 100px 10px;
	vertical-align: top;
    border-right: solid 1px #6785c1;
    border-bottom: solid 1px #6785c1;
    position: relative;
    text-align: left;
    background:#f0f5fe;
    background-clip: padding-box;
}
#timetable td.blank {
	background:#eee;
}


#timetable td .time{
    margin: .5em 0;
    text-align: left;
    vertical-align: middle;
    padding: 0;
}

#timetable td .time.s5{
	color:#0080b1;
	font-weight:bold;
}



#timetable td .go_detail {position: absolute;left: 0; bottom: 50px;padding: 0.5em;}

#timetable td .title_area {
	font-weight:bold;
    text-align: left;
    line-height: 1.4;
    margin: 0.5em auto .5em;
}
#timetable td .company {
    font-size: 100%;
}

#timetable td .profile {
    font-size: 75%;
}
#timetable td .name {
    font-size: 100%;
}

#timetable td.orange {
    background: #faf0d2;
    background-clip: padding-box;
}
#timetable td.inner_ver {
    padding: 0;
    width: 66.66%;
}

#timetable table.inner_table{
    margin: 0 auto;
    padding: 0;
    border-collapse:collapse;
    width: 100%;
    background: #fff;
    border-top: none;
    border-left: none;
}
#timetable td.inner_table {
	vertical-align: top;
    border-right: solid 1px #6785c1;
    border-bottom: none;
    position: relative;
    text-align: left;
}
.attention {text-align: left;padding: 0 0 0 2em;}
#nextbt {
	padding:0 0 0 0;
}
#nextbt .bt01 {
	background:#6785c1;
	margin:0 auto;
	line-height:60px;
	width:26em;
	text-align:center;
}

#nextbt .bt01 input,
#nextbt .bt01 a:link ,
#nextbt .bt01 a:visited{
	display:block;
	color: #fff;
	border:solid 1px #6785c1;
	font-weight:bold;
}

#nextbt .bt01 input {
	border-style: none;
	width:26em;
    background: #6785c1;
    line-height:59px;
	border:solid 1px #6785c1;


}



#nextbt .bt01 input:hover,
#nextbt .bt01 a:hover {
	color: #6785c1; text-decoration: none;
    background: #fff;
	border:solid 1px #6785c1;
    -webkit-transition: all .5s;
    transition: all .5s;
}



#backbt .bt01 {
	background:#333;
	margin:0 auto;
	line-height:60px;
	width:13em;
	text-align:center;
}
#backbt .bt01 a:link ,
#backbt .bt01 a:visited{
	display:block;
	color: #fff;
	border:solid 1px #333;
	font-weight:bold;
}
#backbt .bt01 a:hover {
	color: #333; text-decoration: none;
    background: #fff;
	border:solid 1px #333;
    -webkit-transition: all .5s;
    transition: all .5s;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 35em) {
; 	margin: 0px;
	padding: 0px;

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}






/* 共通 */
/*------------------------------------------------------------------------------*/
.pc {
	display: block;
}
.sp {
	display: none;
}

.kome {
	color: #f00;
}
.strong {
	font-weight: bold;
}

select:focus,
input[type="text"]:focus {
	background-color: #fff8da;
	
}

.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}





/* flowArea */
/*------------------------------------------------------------------------------*/
#flowArea {
	margin: 0 0 25px 0;
}
#flowArea h2 {
	font-size: 2em;
	font-weight: bold;
	color: #fff;
	text-align: center;
	background-color: #4B60A1;
	border-bottom: solid 3px #333;
	margin: 0 0 20px 0;
	padding: 0.3em 0;
}
#flowArea ol {
	display: table;
    width: 98%;
    margin: 0 auto 1em auto;
    padding: 0;
}
#flowArea ol li {
	display: table-cell;
	width: 22%;
	width:14%;
	font-size:1.1em;
	text-align: center;
	vertical-align: middle;
}
#flowArea ol li span {
	display: block;
	font-weight: bold;
	color: #fff;
	background-color: #ddd;
	padding: 0.5em 0;
}
#flowArea ol li.current span {
	background-color: #333;
}
#flowArea ol li.arrRight {
	width: 4%;
	font-size: 2.4em!important;
	color: #2b9db6;
}
#flowArea ol li.arrDown {
	display: none;
}
#flowArea > div.flowInfoArea > p {
	font-size: 1.2em;
}
#flowArea > div.flowInfoArea > p.kome {
	text-indent: -1em;
	padding: 0 0 0 1em;
}


.regPtn01 {
	margin:20px auto;
	background:#ffdd82;
	color:#333;
	width:600px;
	padding:0.5em 2em;
	font-size:1.2em;
	font-weight:bold;
}

.btnTop2 {
	padding:1em 0;
	text-align:center;
	background:#0f1c50;
	color:#fff;
	cursor:pointer;
	width:600px;
	font-size:1.3em;
}

#nttAlt {
	width:100%;
	background:#eee;
	color:#333;
	padding:2em;
	text-align:left;
	margin:20px auto;
}
#nttAlt h5 {
	font-size:1.2em;
}

#policyArea {
	width:100%;
	background:#eee;
	color:#333;
	padding:1em;
	text-align:left;
	margin:20px auto;
	height:300px;
	overflow:auto;
}
#policyArea h6 {
	font-size:1.2em;
}




ul.btn2Col {
	width:602px;
	margin:20px auto;
	list-style:none;
}
ul.btn2Col li.left {
	float:left;
}
ul.btn2Col li.right {
	float:right;
}
ul.btn2Col li .btnBack {
	padding:15px 20px;
	background:#eee;
	width:180px;
}

/* フォームテーブル */
.atention {
	width:100%;
	margin:auto;
	text-align:left;
}

#timetable .tblForm,
.tblForm {
	width:100%;
	margin:0 auto 20px auto;
	border-collapse: collapse;
}


body#entry .formArea {
	max-width:1280px;
	margin:auto;
}

#timetable .tblForm td,
.tblForm  td{
	border:solid 1px #9FA0A0;
}

#timetable .tblForm .table_left,
.tblForm .table_left{
	width:30%;
	vertical-align: middle;
	background-color: #EEEEEE;
	padding: 8px;
	font-weight: bold;
}

#timetable .tblForm .table_left span,
.tblForm .table_left span{
	display:inline-block;
	color:#f00;
	margin-left:0.5em;
}

#timetable .tblForm .table_up span,
.tblForm .table_up span{
	color:#f00;
}
#timetable .tblForm .table_right,
.tblForm .table_right{
	padding: 8px;
	vertical-align: top;
	background:#fff;
}

#timetable .tblForm .table_right .comment,
.tblForm .table_right .comment{
	display:block;
	clear: both;
	margin:0.2em 0;
}

#timetable .tblForm .table_up,
.tblForm .table_up{
	width:100%;
	vertical-align: middle;
	background-color: #EEEEEE;
	padding: 8px;
	font-weight: bold;
	text-align:left;
}
#timetable .tblForm .table_btm,
.tblForm .table_btm{
	width:100%;
	vertical-align: middle;
	background-color: #fff;
	padding: 8px;
}


.err-fld {
	background:#FCAEAE!important;
}
.err {
	width:100%;
	border:solid 3px #c00;
	color:#c00;
	font-weight:bold;
	margin:1em auto;
	text-align:left;
	padding:1.5em;
}
.err h5 {
	font-size:1.2em;
	margin-bottom:0.5em;
}

#timetable table.colum4 td {
	width:25%;
}
#timetable table.colum5 td {
	width:20%;
}
#timetable table.colum6 td {
	width:16.666%;
}
#timetable table.colum7 td {
	width:14.285%;
}
#timetable table.colum8 td {
	width:12.5%;
}
#timetable table.colum9 td {
	width:11.111%;
}

.mt20 { margin-top:20px!important; }


h4.subTtl {
	background-color: #FFE196;
    padding: 5px 20px;
    font-weight: bold;
    margin: 20px 0;
}

.formArea {
	width:98%;
	margin:auto;
}

.ulenq2Col {
	width:100%;
}

.ulenq2Col li {
	float:left;
	width:48%;
	margin:0 0.2em 0.2em 0;
}
.ulenq2Col:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;

}

.ulenq2Col {
  min-height: 1px;
}

* html .ulenq2Col {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

span.label {
	display:inline;
	padding:0.2em 0.6em 0.3em;
	font-size:12px;
	font-weight:bold;
	background:#333;
	line-height:1;
	color:#fff;
	border-radius:0.25em;
	white-space:nowrap;
	margin:0 5px;
}

.explain_blc {
	display:block;
	margin:5px 0;
}

.red { color:#f00; }
.policy p {
	text-align:center;
	font-weight:bold;
	font-size:1.2em;
}
.policy p span {
	font-weight:normal;
}

#timetable table.tblSemi {
	width:100%;
}
#timetable table.tblSemi th,
#timetable table.tblSemi td {
	border:solid 1px #ccc;
	padding:0.3em 1em;
	background:#fff;
}
#timetable table.tblSemi th {
	text-align:center;
	background:#666;
	color:#fff;
	font-weight:normal;
	padding:0.3em 0;
}

#timetable table.tblSemi th.ttlDate {
	background:#6785c1;
	color:#fff;
}


#timetable table.tblSemi th.col01
#timetable table.tblSemi td.col01 {
	width:20%;
}
#timetable table.tblSemi th.col02,
#timetable table.tblSemi td.col02 {
	width:80%;
}
#timetable table.tblSemi td.col02 span.idBox {
	display:inline-block;
	border:solid 1px #333;
	padding:0.3em 1em;
	font-size:0.9em;
	margin-right:0.5em;
}


/* OI-1 */

.vertical-tbl {
	width:100%;
}
.vertical-tbl div.session_box,
.vertical-tbl div.time,
.vertical-tbl div.atdArea {
	float:left;
	margin-right:1em;
}

.general2 div.atdArea {
	background:#fff;
	color:#052e91;
	padding:0.5em 1em;
	margin-right:0;
}

.general2 .title_area {
	font-weight:bold;
	font-size:1.3em;
	margin-bottom:1em!important;
}

/*
.general2 .r_back {
    background:#fff;
	color:#052e91;
}
*/

/*
.general2 .time {
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    border-radius: 6px;
    line-height: 2em;
    margin-right: 1em;
    font-weight: bold;
    padding: 0 1em;
    background:#fff;
    color:#052e91;
}
*/

/*
.general2 .go_detail a:link,
#timetable .general2 .go_detail a:visited {
	color:#fff;
}
*/

.general2 .mb20 {
	margin-bottom:20px;
}
.general2 p {
	font-weight:normal;
}


.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.fs12 {
	font-size:1.2em;
}

.go_box_timebar .full {
    background-color: #f00;
    color: #fff;
    padding:0.5em;
    border: solid 1px #f00;
}

.speaker {
	margin-bottom:1em;
}

#inlinebox .session_ver {
	font-weight:bold;
	color:#fff;
}


td.orange .session_ver {
	background: #e6b600;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    border-radius: 6px;
    line-height: 2em;
    margin-right: 0.3em;
    font-weight: bold;
    padding:0 1em;
}

#dtl_8 #inlinebox .session_ver,
#dtl_14 #inlinebox .session_ver,
#dtl_19 #inlinebox .session_ver,
#dtl_30 #inlinebox .session_ver,
#dtl_29 #inlinebox .session_ver {
	background: #e6b600;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    color: #fff;
    border-radius: 6px;
    line-height: 2em;
    margin-right: 0.3em;
    font-weight: bold;
    padding:0 1em;

}
#timetable .general2 .time {
	font-weight:normal;
	margin-bottom:1em;
}
#timetable .general2 .douji_box {
	float:left;
	margin-right:1em;
}
#timetable .general2 .mb20 {
	margin-bottom:20px!important;
}