body{
	font-family: 'BIZ UDPゴシック';
	color:#434343;
}
.sp_block{
	display: none;
}

/*************************************************************
 time_table
*************************************************************/
#formapplication.deadline .--detail .flex_item .check,
#formapplication.deadline .--detail .flex_item .info .session .session_no{
	background: #787878!important;
	position: relative;
	cursor: initial;
	pointer-events: none;
}
#formapplication.deadline .--detail .flex_item .info{
	background: #f6f6f6!important;
	cursor: initial;
	pointer-events: none;
}
#formapplication.deadline .--detail .flex_item .check:before{
	content:"受付終了";
	width: 100%;
	position: absolute;
	left:0;
	right:0;
	margin: auto;
	text-align: center;
	color:#fff;
	font-size: 16px;
    font-weight: bold;
}
#formapplication.deadline .--detail .flex_item .check input,
#formapplication.deadline .--detail .flex_item .check label,
#formapplication.deadline .--detail .flex_item .check span{
	display: none;
}
.step_text{
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
.participation_check .flex{
	display: flex;
	align-items: center;
	margin-bottom: 30px;
}
.participation_check .flex .flex_item{
	flex: 1;
	padding:30px 0;
	color:#fff;
	background: transparent linear-gradient(90deg, #EFB01B 0%, #FFA200 100%) 0% 0% no-repeat padding-box;
	text-align: center;
	font-size: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.participation_check .flex .flex_item+.flex_item{
	margin-left:30px;
}
.participation_check label{
	width: 32px;
    height: 32px;
    background: #FFF;
    border-radius: 4px;
    position: relative;
    cursor: pointer;
	margin-right:10px;
	border-radius: 100%;
}
.participation_check label:before {
    content: "";
    width: 26px;
    height: 26px;
    position: absolute;
    top: 0;
	bottom:0;
    right: 0;
    left: 0;
	border-radius: 100%;
    margin: auto;
	background: #EFB01B;
}
.participation_check label:after {
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
	bottom:0;
    right: 0;
    left: 0;
	opacity: 0;
	border-radius: 100%;
    margin: auto;
	background: #fff;
}
.participation_check label.checked:after {
    opacity: 1;
}
.participation_check .text{
	text-align: center;
	font-size: 16px;
	margin-bottom: 30px;
}
.participation_check .flex .flex_item.deadline{
	background: #787878;
}
.participation_check .flex .flex_item.deadline label{
	display: none;
}
#modal{
	position: fixed;
	top:-300%;
	right:0;
	bottom:0;
	left:0;
	background: rgba(61,109,144,.7);
	width: 100%;
	height: 100vh;
	z-index: 111111;
	opacity: 0;
	transition: .3s;
}
#modal.show{
	top:0;
	opacity: 1;
}
#modal .modal_container{
	width: 1000px;
	height: fit-content;
	position: absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	margin: auto;
}
#modal .modal_inner{
	background: #fff;
	padding:30px;
	position: relative;
}
#modal .flex_head .time{
	font-size: 20px;
}
#modal .flex_head .session_type{
	font-size: 18px;
	margin-left: 10px;
	font-weight: bold;
}
#modal .close_btn{
	width: 60px;
	height: 60px;
	background: #434343;
	position: absolute;
	top:0;
	right: 0;
	cursor: pointer;
	transition: .3s;
}
#modal .close_btn:hover{
	opacity: .7;
}
#modal .close_btn:before,
#modal .close_btn:after{
	content:"";
	width: 45px;
	height: 4px;
	background: #fff;
	position: absolute;
	top:0;
	right: 0;
	left:0;
	bottom:0;
	margin: auto;
}
#modal .close_btn:before{
	transform: rotate(45deg);
}
#modal .close_btn:after{
	transform: rotate(-45deg);
}
#modal .flex_head{
	display: flex;
	align-items: center;
}
#modal .session_num{
	color:#fff;
	font-size: 14px;
	border-radius: 50px;
	line-height: 1;
	padding: 4px 16px;
	display: inline-block;
	background: #000;
	margin-right:10px;
}
#modal .session_num.roomA{
	background: #903D4B;
}
#modal .session_num.roomB{
	background: #3D9064;
}
#modal .session_num.roomC{
	background: #906F3D;
}
#modal #seminar_info{
	max-height: 550px;
	overflow-y: scroll;
}
#modal .seminar_title{
	font-size: 24px;
	font-weight: bold;
	margin-top: 30px;
}
#modal .sub_title{
	font-size: 20px;
	font-weight: bold;
}
#modal .description{
	margin:20px 0;
	font-weight: bold;
	border-bottom:1px solid #ccc;
	padding-bottom: 20px;
}
#modal .read{
	font-size: 16px;
	line-height: 1.3;
	margin:20px 0;
}
#modal .lecturer_row{
	padding:10px 0;
}
#modal .lecturer_row+.lecturer_row{
	border-top: 1px solid #F8F8F8;
}
#modal .lecturer_row .profile{
	display: flex;
}
#modal .lecturer_row .profile_text{
	margin-left: 10px;
	width: 210px;
}
#modal .lecturer_row .name{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}
#modal .lecturer_row .company{
	font-size: 11px;
}
#modal .lecturer_row .position{
	font-size: 11px;
}
#modal .lecturer_row .profile .text{
	width: 635px;
	font-size: 13px;
	padding:10px 20px;
	background: #F8F8F8;
	margin-left: auto;
}
#modal .company_logo{
	margin:40px 0;
}
#modal .company_logo img{
	display: block;
	margin: 0 auto;
}
#modal .check{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 80px;
}
#modal .check.roomA{
	background: #903D4B;
}
#modal .check.roomB{
	background: #3D9064;
}
#modal .check.roomC{
	background: #906F3D;
}
#modal .check.full{
	background: #787878;
}
#modal .check.full label{
	display: none;
}
#modal .check label{
	width: 32px;
	height: 32px;
	background: #FFF;
	border-radius: 4px;
	position: relative;
	cursor: pointer;
}
#modal .check input{
	display: none;
}
#modal .check label:before{
	content:"";
	width: 10px;
	height: 20px;
	transform: rotate(45deg);
	position: absolute;
	top:4px;
	right:0;
	left:0;
	margin: auto;
	opacity: 0;
}
#modal .check label.checked:before{
	opacity: 1;
}
#modal .check.roomA label.checked:before{
	border: solid #903D4B;
    border-width: 0 3px 3px 0;
}
#modal .check.roomB label.checked:before{
	border: solid #3D9064;
    border-width: 0 3px 3px 0;
}
#modal .check.roomC label.checked:before{
	border: solid #906F3D;
    border-width: 0 3px 3px 0;
}
#modal .check span{
	font-size: 16px;
	display: inline-block;
	margin-left:10px;
	font-weight: bold;
	color:#fff;
}
#time_table .flex_container{
	display: flex;
	justify-content: space-between;
	transition: .5s;
	width: 1200px;
	margin:0 auto;
}
#time_table .js-fix_01,
#time_table .js-fix_02{
	height: 93px;
	margin-bottom: 10px;
}
#time_table .flex_container.is-fixed{
	position: fixed;
	top:80px;
	left:0;
	right:0;
	margin: auto;
	z-index: 111;
}
#time_table .--lead .flex_item{
	padding: 15px 0;
	text-align: center;
	color:#fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
#time_table .--lead .flex_item:nth-child(1){
	width: 111px;
	background: #434343;
}
#time_table .--lead .flex_item:nth-child(1) p{
	font-size: 26px;
}
#time_table .--lead .flex_item:nth-child(1) span{
	font-size: 16px;
	display: block;
}
#time_table .--lead .flex_item:nth-child(2),
#time_table .--lead .flex_item:nth-child(3),
#time_table .--lead .flex_item:nth-child(4){
	width: 354px;
}
#time_table .--lead .flex_item:nth-child(2) p,
#time_table .--lead .flex_item:nth-child(3) p,
#time_table .--lead .flex_item:nth-child(4) p{
	font-size: 16px;
}
#time_table .--lead .flex_item:nth-child(2) span,
#time_table .--lead .flex_item:nth-child(3) span,
#time_table .--lead .flex_item:nth-child(4) span{
	font-size: 20px;
	display: block;
	width: 100%;
}
#time_table .--lead .flex_item:nth-child(2){
	background: #903D4B;
}
#time_table .--lead .flex_item:nth-child(3){
	background: #3D9064;
}
#time_table .--lead .flex_item:nth-child(4){
	background: #906F3D;
}
#time_table .--detail{
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #ccc;
}
#time_table .--detail:last-child{
	margin-bottom: 50px;
	border-bottom: none;
}
#time_table .--detail .flex_item{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#time_table .--detail .flex_item:nth-child(1){
	width: 111px;
	font-size: 22px;
	font-weight: bold;
	position: relative;
	line-height: 1;
}
#time_table .--detail .flex_item:nth-child(1):before{
	content:"";
	width: 1px;
	height: 80%;
	position: absolute;
	top:0;
	right:0;
	left:0;
	bottom:0;
	margin:auto;
	background: #ccc;
}
#time_table .--detail .flex_item:nth-child(1) p{
	font-size: 22px;
	font-weight: bold;
	position: absolute;
	top:0;
	width: 100%;
	text-align: center;
}
#time_table .--detail .flex_item:nth-child(1) span{
	font-size: 14px;
	position: absolute;
	bottom:0;
	width: 100%;
	text-align: center;
}
#time_table .--detail .flex_item:nth-child(2),
#time_table .--detail .flex_item:nth-child(3),
#time_table .--detail .flex_item:nth-child(4){
	width: 354px;
}
#time_table .--detail .flex_item.--full{
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100% - 121px);
	height: 120px;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	background: #F6F6F6;
}
#time_table .--detail .flex_item.--break:nth-child(1):before{
	content:"";
	width: 1px;
	height: 50%;
}
#time_table .--detail .hidden_text{
	display: none;
}
#time_table .--detail .flex_item .check{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	color:#fff;
	height: 72px;
}
#time_table .--detail .flex_item .check label{
	width: 32px;
	height: 32px;
	background: #FFF;
	border-radius: 4px;
	position: relative;
	cursor: pointer;
}
#time_table .--detail .flex_item .check input{
	display: none;
}
#time_table .--detail .flex_item .check label:before{
	content:"";
	width: 10px;
	height: 20px;
	transform: rotate(45deg);
	position: absolute;
	top:4px;
	right:0;
	left:0;
	margin: auto;
	opacity: 0;
}
#time_table .--detail .flex_item .check input:checked+label:before{
	opacity: 1;
}
#time_table .--detail .flex_item .check span{
	font-size: 16px;
	display: inline-block;
	margin-left:10px;
	font-weight: bold;
}
#time_table .--detail .flex_item .info{
	padding:20px;
	background: #999;
	width: 100%;
	height: calc(100% - 72px);
	box-sizing: border-box;
	transition: .3s;
	cursor: pointer;
}
#time_table .--detail .flex_item .info:hover{
	opacity: .7;
}
#time_table .--detail .flex_item .info .session{
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	line-height: 1;
}
#time_table .--detail .flex_item .info .seminar_detail{
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #fff;
}
#time_table .--detail .flex_item .info .seminar_detail:last-child{
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}
#time_table .--detail .flex_item .info .session .session_no{
	padding:4px 16px;
	background: #000;
	color:#fff;
	border-radius: 50px;
	font-size: 14px;
	display: inline-block;
}
#time_table .--detail .flex_item .info .session .session_type{
	margin-left: 10px;
	font-size: 14px;
	font-weight: bold;
}
#time_table .--detail .flex_item .info .session .session_name{
	font-size: 14px;
	font-weight: bold;
	margin-left: 10px;
}
#time_table .--detail .flex_item .info .seminar_title{
	font-size: 18px;
	line-height: 1.2;
	font-weight: bold;
}
#time_table .--detail .flex_item .info .sub_title{
	font-size: 12px;
	display: block;
}
#time_table .--detail .flex_item .info .lecturer_row{
	margin-top: 10px;
}
#time_table .--detail .flex_item .info .profile{
	display: flex;
	align-items: flex-start;
}
#time_table .--detail .flex_item .info .profile+.profile{
	margin-top:10px;
}
#time_table .--detail .flex_item .info .profile_text{
	line-height: 1;
	margin-left: 10px;
	width: calc(100% - 80px);
}
#time_table .--detail .flex_item .info .profile_text .name{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}
#time_table .--detail .flex_item .info .profile_text .name span{
	font-size: 12px;
}
#time_table .--detail .flex_item .info .profile_text .position{
	font-size: 11px;
	line-height: 1.3;
}
#time_table .--detail .flex_item .info .company_logo{
	display: none;
}
/* ROOM-Aの色 */
#time_table .--detail .flex_item:nth-child(2) .check{
	background: #ae717b;
}
#time_table .--detail .flex_item:nth-child(2) .check label:before{
	border:solid #903D4B;
	border-width: 0 3px 3px 0;
}
#time_table .--detail .flex_item:nth-child(2) .info{
	background: #f4ebec;
}
#time_table .--detail .flex_item:nth-child(2) .info .session .session_no{
	background: #903D4B;
}
/* ROOM-Bの色 */
#time_table .--detail .flex_item:nth-child(3) .check{
	background: #71ae8d;
}
#time_table .--detail .flex_item:nth-child(3) .check label:before{
	border:solid #3D9064;
	border-width: 0 3px 3px 0;
}
#time_table .--detail .flex_item:nth-child(3) .info{
	background: #ebf4ef;
}
#time_table .--detail .flex_item:nth-child(3) .info .session .session_no{
	background: #3D9064;
}
/* ROOM-Cの色 */
#time_table .--detail .flex_item:nth-child(4) .check{
	background: #ae9671;
}
#time_table .--detail .flex_item:nth-child(4) .check label:before{
	border:solid #906F3D;
	border-width: 0 3px 3px 0;
}
#time_table .--detail .flex_item:nth-child(4) .info{
	background: #f5f0eb;
}
#time_table .--detail .flex_item:nth-child(4) .info .session .session_no{
	background: #906F3D;
}
/*満席時、排他の色 */
#time_table .--detail .flex_item.checked .check,
#time_table .--detail .flex_item.full .check{
	background: #787878;
}
#time_table .--detail .flex_item.checked .check span.close,
#time_table .--detail .flex_item.full .check span.close{
	font-size: 30px;
	font-weight: bold;
	margin:0;
}
#time_table .--detail .flex_item.full .check label{
	display: none;
}
#time_table .--detail .flex_item.checked .info,
#time_table .--detail .flex_item.full .info{
	background: #f6f6f6;
}
#time_table .--detail .flex_item.checked .info .session .session_no,
#time_table .--detail .flex_item.full .info .session .session_no{
	background: #787878;
}
#thanks{
	display: none;
}
#thanks h3{
	font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
}
#thanks p{
	font-size: 18px;
    text-align: center;
}
.H08-001-01.err_list{
	border:2px solid #c8143d;
	margin-bottom: 50px;
}
#error-box{
border: 2px solid #c8143d;
color: #c8143d;
background-color: #ffdfdf;
font-size: 18px;
text-align: center;
padding:30px 0;
margin-bottom: 50px;
display: none;
}
.end_text{
border: 2px solid #c8143d;
color: #c8143d;
font-size: 18px;
text-align: center;
padding:30px 0;
margin-bottom: 50px;
}
.input_area{
	width: 900px;
	margin:0 auto;
}
.input--error {
  border: 2px solid #c8143d;
  color: #c8143d;
  background-color: #ffdfdf;
}
.error-text, .error-text_referral {
  font-size: 14px;
  color: #cc0000;
  margin-top: 5px;
  padding-left:0;
}
.error-text.session{
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: bold;
}
.L01-001-item+.L01-001-item{
  margin-top:30px;
}
.L01-001-item__inner{
  min-width: auto;
}
.L01-001-item__inner.L01-001-item__inner_type_small{
  padding: 0;
  max-width: 100%;
}
.form-submit{
  margin-top:75px;
}
.form-submit-button {
  background: transparent linear-gradient(90deg, #EFB01B 0%, #FFA200 100%) 0% 0% no-repeat padding-box;
  width: 543px;
  height: 86px;
  margin:0 auto;
  color:#fff;
  cursor: pointer;
  font-size: 27px;
  position: relative;
  display: block;
  font-family: 'BIZ UDPゴシック';
  border:3px solid transparent;
  transition: .3s;
}
.form-submit-button.deadline {
  background: #ccc;
  box-shadow:none;
  cursor: none;
  pointer-events: none;
}
.form-submit-button:hover {
	background: #fff;
	color:#EFB01B;
	border: 3px solid #EFB01B;
}
.form-submit-button.deadline:hover {
  background: #ccc;
  box-shadow:none;
  cursor: auto;
  transform:none;
}
.form-submit-button::after {
  content: '';
  width: 20px;
  background: url(../image/H04-005-001-arrow.svg) no-repeat;
  background-size: contain;
  background-position: center center;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
}
.form-submit-button span {
  width: 156px;
  height: 44px;
  background: #1D2087 0% 0% no-repeat padding-box;
  border-radius: 22px;
  color: #fff;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  right: 0;
  top: -22px;
  margin: auto;
}
.form-submit-button span::after {
  content: "";
  width: 0px;
  border: 10px solid transparent;
  border-top: 10px solid #1D2087;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -16px;
  margin: auto;
}

.form-submit-button.deadline span,
.form-submit-button.deadline span:after{
  display: none;
}

.form-submit .H08-001-01{
  margin-bottom: 30px;
}

#form_sending {
  padding: 15px;
  margin-top: 0px;
  text-align: center;
  display: none;
}
.txt_sending {
  font-size: 1.4rem;
}
.dot-spin {
  margin: 40px auto 60px;
  position: relative;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: transparent;
  color: transparent;
  -webkit-box-shadow: 0 -18px 0 0 #008d8e, 12.72984px -12.72984px 0 0 #008d8e, 18px 0 0 0 #008d8e, 12.72984px 12.72984px 0 0 #008d8e, 0 18px 0 0 #008d8e, -12.72984px 12.72984px 0 0 #008d8e,
    -18px 0 0 0 #008d8e, -12.72984px -12.72984px 0 0 #008d8e;
  box-shadow: 0 -18px 0 0 #008d8e, 12.72984px -12.72984px 0 0 #008d8e, 18px 0 0 0 #008d8e, 12.72984px 12.72984px 0 0 #008d8e, 0 18px 0 0 #008d8e, -12.72984px 12.72984px 0 0 #008d8e,
    -18px 0 0 0 #008d8e, -12.72984px -12.72984px 0 0 #008d8e;
  -webkit-animation: dotSpin 1.5s infinite linear;
  animation: dotSpin 1.5s infinite linear;
}
#chat-bot-frame{
  display: none;
}
.seminar-form{
  text-align: center;
}
.table_head{
	background: transparent linear-gradient(90deg, #348AAD 0%, #206E9E 100%) 0% 0% no-repeat padding-box;
	color:#fff;
	font-size: 30px;
	text-align: center;
	padding:25px 0;
	margin-bottom: 30px;
}
.table_head span{
	font-size: 20px;
}

@media screen and (max-width: 768px) {
  .sp_block{
    display: block;
  }
  .form-submit {
    margin-top: 30px;
  }
  .form-submit-button {
    width: 100%;
    height: 70px;
    font-size: 20px;
    margin: 0 auto 0;
  }
  .H05-003-01-description{
	padding: 0 15px;
  }
  .form-submit-button span {
    width: 50px;
    height: 50px;
    background: #1D2087 0% 0% no-repeat padding-box;
    border-radius: 50%;
    color: #fff;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 0;
    right: auto;
    top: 0;
    left: 4px;
    margin: auto;
    line-height: 1.2;
  }
  .form-submit-button span::after{
    display: none;
  }
}