@charset "UTF-8";

/* ===================================
	File Name   : visit.css
	Description : Visit Page Layout CSS
	Editor      : Bface Hayakawa
	Last Editor : Bface Chiba
	
	Update Description :
	[2024/07/11] Pressページ追加
	[2022/08/29] organizerページ追加
	[2022/08/22] informationページ追加
	[2022/06/22] 新規制作
====================================== */

/*========== Style Contents ==========

	1. Share Elements
		- Aside "visit_links" (Share Document)
	2. Top Page Setting 
		- Section "visit_registration" 
		- Section "visit_covid19" 
		- Section "visit_target" 
		- Section "effective" 
		- Section "visit_info" 
		- Section "visit_aimeet" 
	3. Seminar Page Setting
        - Inner Anchor Seminar 
        - Seminar Map
	4. Lecture Page Setting
	5. Matching Page Setting
	6. Governor Page Setting
	7. Organizer Page Setting
	8. Information Page Setting
	9. Organizer Page Setting
	10. Press page Setting
====================================== */



/*===== ■1. Share Elements  =====*/
a.onebox {
    width: 80%;
    margin: 0 auto;
}

a.box.soon {
    display: block;
    overflow: hidden;
    outline: none;
    position: relative;
    padding: 22px 10px;
    color: #00125e;
    opacity: 0.5;
    font-size: 1.6rem;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    transition: none;
}

/* two button (Share Document) */
ul.twobox {
    display: flex;
	justify-content: space-between;
	width: 100%;
	margin: 15px auto;
}

ul.twobox li {
    width: 49%;
}

ul.twobox span {
    display: block;
    margin-bottom: 5px;
    font-size: 1.4rem;
}

/* note (Share Document) */
p.note {
    font-weight: bold;
    font-size: 1.2rem;
}

p.notice {
  margin-bottom: 10px;
  color: #c00;
  font-weight: bold;
  text-align: center;
}

/* Outer Section */
#main_cont p.intro {
  margin-bottom: 10px;
}
#main_cont dl.caution {
	margin: 0 0 40px;
	background: #f7d9d9;
}

#main_cont dl.caution dt {
	padding: 10px;
	background: #c00;
	font-weight: bold;
	color: #fff;
	font-size: 1.8rem;
}

#main_cont dl.caution dd {
	padding: 10px;
}

#main_cont dl.caution dd p {
	font-weight: bold;
	font-size: 1.6rem;
}

em.emphasis {
  display: inline-block;
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 1.8rem;
  color: #c00;
}

@media screen and (max-width:640px) {
  em.emphasis {
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
}

/* Aside "visit_links" (Share Document) */
aside#visit_links h3 {
	margin-bottom: 15px;
	padding: 15px 0 15px 10px;
	border-left: 5px solid #00125e;
	background: var(--dominant-light01);
	color: #00125e;
	font-weight: bold;
	font-size: 1.8rem;
	font-family: 'Open Sans', 'Noto Sans Japanese';
	line-height: 1;
}

aside#visit_links ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 10px 10px;
}

aside#visit_links ul:after {
		content:"";
		display: block;
		width: 32.5%;
	}
	
aside#visit_links li {
    width: 32.5%;
    margin-bottom: 10px;
}

aside#visit_links li a {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 12px 10px;
  box-sizing: border-box;
  font-size: 1.4rem;
  text-align: left;
}
aside#visit_links li a br.pc_none{
  display: none;
}
aside#visit_links a.soon {
  display: flex;
  align-items: center;
  overflow: hidden;
  outline: none;
  position: relative;
  width: 100%;
  color: #00125e;
  line-height: 1.2;
  text-decoration: none;
  pointer-events: none;
  opacity: .6;
}



@media screen and (max-width:640px) {
	/* single button (Share Document) */
	a.onebox {
		width: 90%;
	}
  
  a.box.soon { 
    width: 90%;
    padding: 10px 15px;
    font-size: 100%;
    box-sizing: border-box;
  }
	
	/* two button (Share Document) */
	ul.twobox {
		flex-wrap: wrap;
		width: 90%;
		margin-bottom: 0;
	}
	
	ul.twobox li {
		width: 100%;
		margin-bottom: 10px;
	}
	
	ul.twobox span {
		font-size: 1.3rem;
	}
	
	/* Outer Section */
	#main_cont dl.caution { margin: 0 0 20px;}

	#main_cont dl.caution dt { font-size: 1.6rem;}

	#main_cont dl.caution dd p {
		margin-bottom: 5px;
		font-size: 1.4rem;
	}
  
  
  /* Aside "visit_links" (Share Document) */
	aside#visit_links {
		margin-top: 40px;
	}
	
	aside#visit_links h3 {
		font-size: 1.4rem;
		padding: 10px 0 10px 10px;
		margin-bottom: 10px;
	}

	aside#visit_links ul {
	    margin: 0 0 10px;
	}

	aside#visit_links ul:after {
		content: none;
	}

	aside#visit_links li {
		width: 49%;
	    margin-bottom: 5px;
	}

	aside#visit_links li a {
    	justify-content: flex-start;
    	padding: 10px;
   		font-size: 1.3rem;
	}
	
	aside#visit_links li a br.sp_none{
		display: none;
	}
}



/*===== ■2. Top Page Setting  =====*/
/* Section "visit_about" */
#visit_about a.box {    
  margin-bottom: 20px;
}
#visit_about p > em {    
  font-weight: bold;
  background: linear-gradient(transparent 50%, #fff57c 50.1%);
}

#visit_about .inner > p {
  margin-bottom: 10px;
}  
#visit_about #about_images {
  margin-bottom: 10px;
}
#visit_about #about_images ul {
 display: flex;
}
#visit_about #about_images li {
  width: 16.67%;
}
#visit_about #about_images > p {
  text-align: right;
}

#visit_about #about_outline dl {
  display: flex;
  background: #ebebeb;
  margin-bottom: 1px;
}
#visit_about #about_outline dt {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  position: relative;
  width: 160px;
  border-right: 1px solid #fff;
  padding: 0 10px 0 20px;
  background: var(--dominant-light01);
  box-sizing: border-box;
  font-weight: bold;
  font-size: 1.6rem;
}

#visit_about #about_outline dd {
  padding: 10px;
}
#visit_about #about_outline dd li:not(:last-child) {
  margin-bottom: 5px;
}
#visit_about #about_outline dd a { 
  display: block;
  position: relative;
  padding-left: 10px;
}

#visit_about #about_outline dd a:before {
  position: absolute;
  top: 50%;
  left: 0;
  border: 4px solid transparent;
  border-left: 5px solid #00125e;
  transform: translateY(-50%);
  content: '';
}

#visit_about #about_outline dd a:hover .icon_blank:before {
  color: #8cb6ba;
}

#visit_about #about_outline dd .inline{
  display: inline-block;
}
#visit_about #about_outline .logo {    
  display: block;
  width: 70%;
  max-width: 320px;
}


#visit_about #about_map {
  margin: 20px 20px 40px;
}

#visit_about #immersive{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#visit_about #immersive > div{
  flex: 1;
}

#visit_about #immersive > figure{
  margin-left: 20px;
  width: 50%;
}

#visit_about #immersive .label {
  display: flex;
  margin-top: 20px;
  font-weight: bold;
}

#visit_about #immersive .label > span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5em;
  margin-right: 10px;
  padding: 5px;
  border-radius: 5px;
  background: #ccc;
  line-height: 1;
}

/* Section "visit_registration" */
#visit_registration .inner div.present { 
  width: 85%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #fff;
  background: #ff8000;
  margin: 10px auto 20px;
  padding: 10px;
  border-radius: 5px;
  position: relative;
}

#visit_registration .inner div.present::after{
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 15px solid #ff8000;
  z-index:2;
}

#visit_registration .inner div.present p{ 
  margin-left: 20px;
  font-size: 18px;
}

#visit_registration .inner div.present span{ 
  min-width: 50px;
  width: 12%;
}

#visit_registration .inner .box { 
  margin-bottom: 30px;
}


/* Section "visit_guide" */ 
#visit_guide .inner > p:first-child {
  margin-bottom: 10px;
  color: #A80000;
  font-size: 1.6rem;
  font-weight: bold;
}
#visit_guide .inner > p:last-of-type {
  margin-bottom: 15px;
}


/* Section "visit_way" */ 

#visit_virtual p {
  margin-bottom: 10px;
}

#visit_virtual .inner > div {
  width: 100%;
  margin-bottom: 20px;
  padding: 10px 15px;
  background: #ededed;
  box-sizing: border-box;
}

#visit_virtual figure {
  width: 50%;
  min-width: 200px;
  margin: 0 auto 20px;
}

#visit_virtual .inner > div ul {
  margin-bottom: 5px;
}
#visit_virtual .inner > div li {
  position: relative;
  padding: 0 0 0 15px;
  text-indent: 0;
}
#visit_virtual .inner > div li:before{
  top: 6px;
  left: 0;
  position: absolute;
  content:  ""; 
  width:  10px; 
  height:  10px; 
  display:  inline-block; 
  background-color:  #00125e;; 
  border-radius:  50%;  
}

#visit_registration #visit_freebie h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-bottom: 0;
  padding-left: 0;
  font-size: 2.0rem;
  background: url(../img/visit/img-fukidashi.svg) center center / contain no-repeat;
  height: 170px;
  text-align: center;

}

#visit_registration #visit_freebie h3 span{
  display: block;
  font-size: 3rem;
  margin-bottom: 5px;
}

#visit_registration #visit_freebie .pics {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 35px;
  background:repeating-linear-gradient(
    -45deg,
    #ffdfbf,
    #ffdfbf 15px,
    #ffecd9 0,
    #ffecd9 30px
  );
  border-radius: 10px;
  margin-bottom: 10px;
}

#visit_registration #visit_freebie .pics > *{
  width: calc(33% - 25px);
  filter: drop-shadow(5px 5px 2px rgba(255, 128, 0, 0.3));
}

#visit_registration #visit_freebie .pics > * span{
  display: block;
  clip-path: circle(48% at 50% 50%);
}

#visit_registration #visit_freebie .pics img{
  width: 100%;
  height: 100%;
}
#visit_registration #visit_freebie .pics + p {
  margin-bottom: 10px;
  text-align: right;
}


/* Section "visit_target" */
#visit_target .target {
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 15px;
}

#visit_target .target > li {
	box-sizing: border-box;
	width: 23%;
	margin: 0 1% 3px;
	padding: 0;
}

#visit_target em {
	display: block;
	position: relative;
	padding-left: 10px;
	font-weight: bold;
	line-height: 1.3;
}

#visit_target em:before {
	display: block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 8px;
	height: 8px;
	box-sizing: border-box;
	border: 2px solid #00125e;
	border-radius: 50%;
	content:'';
}

#visit_target p {
    padding-bottom: 15px;
}


/* Section "visit_effective" */

#visit_effective #visit_hint { margin-bottom: 30px;}

#visit_effective #visit_hint .inner > div {
    position: relative;
    padding: 1px;
    border: 5px solid #ebebeb;
	margin-bottom: 15px;
}

#visit_effective #visit_hint p{margin-bottom: 15px;}

#visit_effective #visit_hint dl {
    padding: 15px;
    background: #ebebeb;
    font-weight: bold;
}

#visit_effective #visit_hint dt {
    margin-bottom: 15px;
    padding: 5px 7px;
    border-bottom: none;
    border-left: 5px solid #00125e;
    font-weight: bold;
    font-size: 1.8rem;
}

#visit_effective #visit_hint dd{
    display: flex;
    align-items: center;
    margin: 0 12px 10px;
}

#visit_effective #visit_hint dd em {
    display: inline-block;
    padding: 5px;
    background: #00125e;
    border-radius: 3px;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1;
}

#visit_effective #visit_hint dd p {
  margin: 0 0 0 10px;
  padding: 0 0 0 16px;
  text-indent: 0;
  font-size: 1.4rem;
  position: relative;
}

#visit_effective #visit_hint dd p:before{
  top: 6px;
  left: 0;
  position: absolute;
  content:  ""; 
  width:  10px; 
  height:  10px; 
  display:  inline-block; 
  background-color:  #00125e;; 
  border-radius:  50%;  
}

#visit_effective #visit_way .inner{
  margin: 0 10px 40px;
}

#visit_effective #visit_way h4{
	font-weight: bold;
	margin: 0 0 15px;
}
#visit_effective #visit_way h4 + p{margin-bottom: 15px;
}

#visit_effective #visit_way h4 b{
	color: #A80000;
	font-size: 1.6rem;
}

#visit_effective #visit_way dl{
	margin-bottom: 10px;
	padding: 10px 15px;
	background: #ededed;
}
#visit_effective #visit_way dl:last-of-type { margin-bottom: 20px;}

#visit_effective #visit_way dt{
	font-weight: bold;
	font-size: 1.4rem;
    padding-bottom: 5px;
	border-bottom: #ccc 1px dotted;
}

#visit_effective #visit_way dd{
	margin-top: 5px
}

#visit_effective #visit_way dd p {
	margin: 10px 0 0;
}

#visit_effective #visit_way dd span {
	font-weight: bold;
  font-size: 1.2rem;
  display: block;
  padding-left: 1rem;
  text-indent: -1rem;
  margin-top: 5px;
}

#visit_effective #visit_way dd a{
  word-break: break-all;
  display: inline-block;
}

#visit_effective #visit_way a {
    width: 80%;
    margin: 0 auto;
    box-sizing: border-box;
}

#visit_effective #visit_way > .inner:last-child .inner a:first-of-type {
   margin-bottom: 20px;
}

#visit_effective #visit_way a.box:before,
#visit_effective #visit_way a.box:after {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    transition: all .5s;
}

#visit_effective #visit_way a#nolink{
	width: 80%;
	margin: 0 auto;
    pointer-events: none;
    opacity: .6;
}

#visit_effective #visit_way #pre_registration li {
  display: flex;
}

#visit_effective #visit_way #pre_registration .step { 
  display: block;
  position: relative;
  flex:0 0 auto;
  top: 0;
  left: 0;
  width: 50px;
  height: 43px;
  padding: 10px 3px 3px;
  border-radius: 50%;
  background: linear-gradient(to bottom right, #919ac0, #00125e);
  color: #fff;
  font-size: 1.0rem;
  font-family: 'Open Sans', 'Noto Sans Japanese';
  text-align: center;
}
#visit_effective #visit_way #pre_registration .step:after {
  display: block;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 50%;
  content: '';
}
#visit_effective #visit_way #pre_registration .step span {
  display: block;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-align: center;
}


#visit_effective #visit_way #pre_registration li{
  margin-bottom: 10px;
}
#visit_effective #visit_way #pre_registration li > div{
  width: 70%;
  margin-left: 10px;
}

#visit_effective #visit_way #pre_registration li > div h5 {
  margin: 15px 0 5px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #00125e;
}

#visit_effective #visit_way #pre_registration li > div p{
  margin: 10px 0 5px;
  font-size: 1.4rem;
  font-weight: bold;
}
#visit_effective #visit_way #pre_registration li > div > span {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}
#visit_effective #visit_way #pre_registration li > div li{
  position: relative;
  margin-bottom: 5px;
  padding: 0 10px;
  box-sizing: border-box;
}
#visit_effective #visit_way #pre_registration li > div li:before {
  position: absolute;
  top: calc(0.5em + 2px);
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #00125e;
  content: '';
}
#visit_effective #visit_way #pre_registration li > span{
  width: 30%;
  margin-left: 10px;
}
#visit_lecture .innner > p > b{font-weight: bold;}
#visit_lecture ul.label > li {
  display: flex;
  margin-bottom: 5px;
}
#visit_lecture ul.label > li > span {
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5em;
  margin-right:10px;
  padding: 5px;
  border-radius: 5px;
  font-weight: bold;
  background: #ccc;
  line-height: 1;
}
#visit_lecture .inner > p {
  margin-bottom: 10px;
}

#visit_lecture .inner > p > b{
  font-weight: bold;
  background: linear-gradient(transparent 50%, #fff57c 50.1%);
}
#visit_lecture ul.label {
   margin-bottom: 20px;
}
#visit_lecture ul.label p{
  font-weight: bold;
  margin-bottom: 5px;
}
#visit_lecture ul.label ul li {
  position: relative;
  padding: 0 0 0 15px;
  text-indent: 0;
}
#visit_lecture ul.label ul li:before{
  top: 6px;
  left: 0;
  position: absolute;
  content:  ""; 
  width:  10px; 
  height:  10px; 
  display:  inline-block; 
  background-color:  #00125e;; 
  border-radius:  50%;  
}
/* visit_access */
#visit_access p {
  margin-bottom: 10px;
}
#visit_access .indent {
  padding-left: 1em;
  text-indent: -1em;
}
#visit_access a.box {
  margin-bottom: 20px;
}

#visit_access .label{
  display: flex;
  margin-bottom: 20px;
  font-weight: bold;
}

#visit_access .label > span{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5em;
  margin-right: 10px;
  padding: 5px;
  border-radius: 5px;
  background: #ccc;
  line-height: 1;
}
#visit_access .shuttle > p:first-child {
  margin-bottom: 10px;
  color: #A80000;
  font-size: 1.6rem;
  font-weight: bold;
}
#visit_access .shuttle .label_wrapper {
  display: flex;
  margin-bottom: 20px;
}
#visit_access .shuttle .label {
  margin: 0 10px;
}
#visit_access .shuttle_table ul {
  margin-bottom: 5px;
}
#visit_access .shuttle_table ul li {
  font-size: 1.4rem;
  text-indent: -1rem;
  padding-left: 1rem;
}

#visit_access .shuttle_table table {
  width: 100%;
  /* table-layout: fixed; */
  margin-bottom: 20px;
}
#visit_access .shuttle_table tr:first-child th {
  padding: 5px;
  background: #00125e;
  font-weight: bold;
  text-align: center;
  color: #fff;
  vertical-align: middle;
}
#visit_access .shuttle_table tr:first-child th:not(:first-child) { 
  border-left: 1px solid #ebebeb;
}
#visit_access .shuttle_table tr:not(:first-child) th { 
  padding: 10px;
  border-style: none dotted dotted dotted;
  border-color: #999;
  border-width: 0 1px 1px 1px;
  vertical-align: middle;
  text-align: center;
}
#visit_access .shuttle_table tr:not(:first-child) td { 
  padding: 10px;
  border-style: none dotted dotted none;
  border-color: #999;
  border-width: 0 1px 1px 1px;
  vertical-align: middle;
  text-align: center;
}

#visit_access #busstop{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#visit_access #busstop dl{
  width: calc(50% - 15px);
}

#visit_access #busstop dt{
  text-align: center;
  padding: 5px;
  background: #00125e;
  color: #fff;
  font-weight: bold;
}

@media screen and (max-width:640px) {
  #visit_access #busstop dl{
    width: 100%;
    margin-bottom: 15px;
  }
}

/* floor_map */
#floor_map figure{
  width: 80%;
  margin: 0 auto;
}

#floor_map a.box{margin: 20px auto 0;}

#floor_map aside {
	margin-top: 30px;
  padding: 1px;
  border: 5px solid #ebebeb;
}

#floor_map dt br{display: none;}

#floor_map dl {
  padding: 15px;
  background: #ebebeb;
  text-align: center;
}

#floor_map dt {
  display: inline-block;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 2rem;
}

#floor_map dd  {
    text-align: left;
}

#floor_map dd div {
	display: flex;
  justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 10px;
}

#floor_map dd li {
  position: relative;
  padding-left: 10px;
	margin-bottom: 2px;
	font-weight: bold;
  line-height: 1.4;
}

#floor_map dd li:before {
    position: absolute;
    top: 9px;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background: #999;
    content: '';
}

#floor_map dd div span {
    min-width: 170px;
	margin-left: 20px;
}

#floor_wifi {margin-top: 40px;}

#floor_wifi span{
  font-weight: bold;
  font-size: 1.2rem;
  display: block;
  margin: 5px 0 0;
}

/* Section "visit_info" */
#visit_info p {
    padding-bottom: 15px;
}

#visit_info a.soon {
    display: block;
    overflow: hidden;
    outline: none;
    position: relative;
    padding: 22px 10px;
    color: #00125e;
    font-size: 1.6rem;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    opacity: .6;
}

#visit_info a {
    width: 80%;
    margin: 0 auto;
}


/* Section "visit_aimeet" */
#visit_aimeet p {
   margin-bottom: 15px;
}

#visit_aimeet > .inner > div{
  width: 60%;
  margin: 20px auto 0;
}

@media screen and (max-width:640px) {
  #visit_aimeet > .inner > div{
    width: 100%;
  }
}

/* Section "visit_webinar" */
.inner_top.mb0 {
  margin-bottom: 0;
}
#visit_webinar  {
  padding-top: 15px;
}

#visit_webinar .archive{
  padding: 20px;
  background: #ededed;
  text-align: center;
  margin-bottom: 20px;
}

#visit_webinar .archive p:first-child {
  color: var(--dominant);
  font-weight: bold;
  font-size: 20px;
}
#visit_webinar .archive a.box:not(.soon){
  background: #fff;
}

#visit_webinar .archive a.box:not(.soon):hover{
  background: var(--dominant);
}
#visit_webinar .label{
  display: flex;
  font-weight: bold;
}
#visit_webinar .label{
  margin-bottom: 10px;
}

#visit_webinar .label > span{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5em;
  margin-right: 10px;
  padding: 5px;
  border-radius: 5px;
  background: #ccc;
  line-height: 1;
}

#visit_webinar .inner a.box {margin-top: 20px;
}

#visit_webinar .inner > p:last-of-type {
  margin-bottom: 10px;
}

#visit_webinar.seminar_schedule div.schedule_date td dt{
  margin-bottom: 5px;
}

#visit_webinar #webinar_notice .inner > p:first-child{
	font-weight: bold;
	margin-bottom: 10px;
}

#visit_webinar #webinar_notice ul{
	margin-bottom: 20px;
}

#visit_webinar #webinar_notice ul li {
	position: relative;
	margin: 0 10px 5px;
	padding: 0 10px;
	box-sizing: border-box;
	line-height: 1.3;
}

#visit_webinar #webinar_notice ul li:before {
	position: absolute;
	top: 6px;
	left: 0;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #00125e;
	content: '';
}

#visit_webinar #webinar_notice dl {
	background: #ebebeb;
}
#visit_webinar #webinar_notice dl dt {
	padding: 10px;
	background: var(--dominant-light01);
	font-weight: bold;
}
#visit_webinar #webinar_notice dl dd {
	padding: 10px;
}
#visit_webinar #webinar_notice dl dd {
	padding: 10px;
}
#visit_webinar #webinar_notice dl dd > p{
	margin-bottom: 10px;
}
#visit_webinar .underline {
  display: inline;
  font-weight: bold;
  background:linear-gradient(transparent 50%, #fff57c 50.1%)
}

#visit_webinar .note{text-align: right;}


@media screen and (max-width:640px) {
  /* Section "visit_about" */
  #visit_webinar .archive{
    padding: 15px;
    margin-bottom: 20px;
  }
  #visit_webinar .archive p:first-child {
    font-size: 18px;
  }
  #visit_webinar .archive .note{
    text-align: left;
    padding-left: 12px;
    text-indent: -12px
  }
  #visit_about a.box {    
    margin-bottom: 15px;
  }
  #visit_about #about_outline dl {
    flex-direction: column;
  }
  #visit_about #about_outline dt {
    justify-content: center;
    width: 100%;
    padding: 5px 0;
    border-right:none;
    font-size: 1.4rem;
  }
  #visit_about #about_outline .logo {   
    margin: 0 auto;
  }
  
  #visit_about #about_images ul {
    flex-wrap: wrap;
  }
  #visit_about #about_images li {
    width: 33.33%;
  }
  #visit_about #about_images li img {
    vertical-align: bottom;
  }

  #visit_about #about_map {
    margin: 20px 0;
  }
  
  #visit_about #immersive > figure{
    margin-left: 0px;
    margin-top: 20px;
    width: 100%;
  }

  /* Section "visit_registration" */
  #visit_registration .inner div.present { 
    width: auto;
    margin: 10px 0 20px ;
    padding: 10px;
  }

  #visit_registration .inner div.present p{ 
    margin-left: 10px;
  }

  #visit_registration .inner div.present span{ 
    width: 20%;
  }

  #visit_registration .inner .box { 
    margin-bottom: 20px;
  }


  /* Section "visit_covid19" */
  #visit_covid19 p { margin-bottom: 10px;}
  
  #visit_covid19 a br{display: block;}
  
  #visit_covid19 a:not(:first-of-type) {
    margin-top: 10px;
}
  
	/* visit visit_target */
	#visit_target .target{
		display: flex;
	}
	#visit_target .target > li {
		width: 42%;
		margin: 0 2% 5px;
	}
	
  /* Section "visit_effective" */
  #visit_effective #visit_hint { margin-bottom: 20px;}

  #visit_effective #visit_hint > div { margin: 0 10px;}
  
  #visit_effective #visit_hint p{margin-bottom: 10px;}

  #visit_effective #visit_hint dt {
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
  #visit_effective #visit_hint dl {
    padding: 10px;
  }
  
	#visit_effective #visit_hint dd {
    	align-items: start;
    	margin: 0 0 10px;
	}

	#visit_effective #visit_hint dd em {
    	display: flex;
    	align-items: center;
    	font-size: 1.3rem;
    	white-space: nowrap;
    	vertical-align: middle;
	}
  
  #visit_effective #visit_way .inner{
    margin: 0 0 20px;
  }
  #visit_effective #visit_way .inner .inner { margin: 0 10px;}
  
  #visit_effective #visit_way a { width: 90%;}
	

  #visit_effective #visit_way > .inner:last-child .inner a:first-of-type {
     margin-bottom: 10px;
  }

  #visit_effective #visit_way #pre_registration .step { 
    width: 35px;
    height: 30px;
    line-height: 1;
    padding: 8px 3px 3px;
  }
  #visit_effective #visit_way #pre_registration .step:after {
    width: 35px;
    height: 35px;
  }
  #visit_effective #visit_way #pre_registration .step span {
    font-size: 1.4rem;
  }

  #visit_effective #visit_way #pre_registration li > div h5 {
    margin: 10px 0 0;
    font-size: 1.4rem;
  }
  #visit_effective #visit_way #pre_registration li > div p {
    margin: 10px 0 0;
    font-size: 1.4rem;
  }
  #visit_effective #visit_way #pre_registration li {
    flex-wrap: wrap;
  }
  #visit_effective #visit_way #pre_registration li > div {
    width: calc(100% - 55px);
    margin-bottom: 10px;
  }
  #visit_effective #visit_way #pre_registration li > span {
    margin: 0 auto;
    width: 100%;
  }

  #visit_effective #visit_way h4 b{
    font-size: 1.4rem;
  }

   #visit_registration #visit_freebie h3 {
    font-size: 1.6rem;
    height: 120px;
  }
  
  #visit_registration #visit_freebie h3 span{
    font-size: 2.6rem;
  }
  #visit_registration #visit_freebie .pics {
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px;
  }
  #visit_registration #visit_freebie .pics figure {
    width: calc(50% - 20px);
    margin: 10px
  }
  #visit_registration #visit_freebie .pics + p {
    text-align: left;
  }
  #visit_effective #visit_virtual figure {
    width: 90%;
  }

  #visit_virtual .inner > div {
    width: auto;
  }

  #visit_lecture ul.label > li > span {
    width: 3em;
  }

  /* visit_access */
 #visit_access .venue .label > span {
  width: 3em;
}
#visit_access .shuttle .label_wrapper {
  flex-wrap: wrap;
  margin-bottom: 10px;
}
#visit_access .shuttle .label {
  margin: 0 10px 10px;
}

  /* floor_map */
  #floor_map figure{
    width: 100%;
  }
  
  #floor_map a.box{
    width: 90%;
    margin: 20px auto;
  }
  
	#floor_map aside:first-of-type {
	    margin-top: 0;
	}

  #floor_map dl {
    padding: 10px;
  }

	#floor_map dt {
		font-size: 1.6rem;
	}
  
  #floor_map dt br{display: block;}
  
	#floor_map dd div {
		flex-wrap: wrap;
		margin: 10px 0 0;
	}

	#floor_map dd div span {
		margin: 10px auto 0;
	}	

	#floor_map dd div span img {
		margin-left: -15px;
	}
  
  #floor_wifi {margin: 20px 0;}

  #floor_wifi .inner {margin: 0 10px;}
  
  /* Section "visit_webinar" */
  #visit_webinar  {
    padding-top: 0;
  }
  #visit_webinar #webinar_notice ul{
		margin-bottom: 10px;
	}	
}

/*===== ■3. Seminar Page Setting  =====*/
.seminar_schedule .onebox {
    box-sizing: border-box;
    margin: 0 auto 30px;
}

.seminar_schedule ul.seminar_icon{
	display: flex;
    margin-bottom: 15px;
	text-align: center;
}

.seminar_schedule ul.seminar_icon li{
  width: 150px;
	margin-right: 5px;
	padding: 5px;
  background: #00125e;
	border-radius: 4px;
	color: #fff;
	font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
}

.seminar_schedule ul.seminar_icon li:first-child{
    background: #9bc144;
}
.seminar_schedule ul.seminar_icon li:nth-child(2){
    background: #d75d66;
}
.seminar_schedule ul.seminar_icon li:nth-child(3){
    background: #5da0d7;
}
.seminar_schedule ul.seminar_icon li:nth-child(4){
    background: #aa5dd7;
}

.seminar_schedule ul.seminar_icon + ul {
  margin-bottom: 10px;
}

.seminar_schedule .seminar_venue{
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.seminar_schedule .seminar_venue dt{
  background: #ccc;
  padding: 0 10px;
  border-radius: 3px;
  margin-right: 10px;
}

.seminar_schedule .seminar_venue dd{flex: 1;}

.seminar_schedule .seminar_venue + figure{margin-bottom: 20px;}
.seminar_schedule div.schedule_date table { 
	width: 100%;
	margin-bottom: 20px;
  margin-top: 10px;
}

.seminar_schedule div.schedule_date th {
	padding: 5px;
	background: #00125e;
	border: 1px solid #00125e;
	font-weight: bold;
	text-align: center;
	font-size: 1.8rem;
	color: #fff;
	vertical-align: middle;
}

.seminar_schedule div.schedule_date [id^="seminar_a"] th{
  background: #1666C7;
  border: 1px solid #1666C7;
}
.seminar_schedule div.schedule_date [id^="seminar_b"] th{
  background: #16AA58;
  border: 1px solid #16AA58;
}
.seminar_schedule div.schedule_date [id^="seminar_c"] th{
  background: #E04889;
  border: 1px solid #E04889;
}

.seminar_schedule div.schedule_date td {
	padding: 10px;
	border-style: none dotted dotted dotted;
	border-color: #999;
	border-width: 0 1px 1px 1px;
	vertical-align: middle;
}

.seminar_schedule div.schedule_date td:first-child {
	width: 15%;
	background: #ebebeb;
	border-style: none dotted dotted dotted;
	border-color: #999;
	border-width: 0 1px 1px 1px;
	text-align: center;
  font-weight: bold;
}

.seminar_schedule div.schedule_date td:last-child {
	position: relative;
}

.seminar_schedule div.schedule_date strong {
    display: inline-block;
    margin-bottom: 5px;
    padding: 2px 6px;
    border: 1px solid #999;
    font-size: 1.2rem;
    font-weight: bold;
}

.seminar_schedule div.schedule_date strong + strong{
    background-color: rgba(204,0,0,1);
    color: #fff;
    border: 1px solid rgba(204,0,0,1);
    margin: 0 0 3px 10px;
}

.seminar_schedule div.schedule_date strong.full{
    background-color: rgba(204,0,0,1);
    color: #fff;
    border: 1px solid rgba(204,0,0,1);
    margin: 0 0 3px;
}

.seminar_schedule div.schedule_date td dt {
    color: #00125e;
    font-size: 1.6rem;
    font-weight: bold;
}
.seminar_schedule div.schedule_date [id^="seminar_a"] td dt{
  color: #1666C7;
}
.seminar_schedule div.schedule_date [id^="seminar_b"] td dt{
  color: #16AA58;
}
.seminar_schedule div.schedule_date [id^="seminar_c"] td dt{
  color: #E04889;
}

.seminar_schedule div.schedule_date td dt > span {
  display: block;
  width: 100px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
}
.seminar_schedule div.schedule_date td dt > span img {
  vertical-align: bottom;
}

.seminar_schedule div.schedule_date td dd {
    font-weight: bold;
}

.seminar_schedule div.schedule_date td > b {
    display: inline-block;
    margin: 0 0 5px 5px;
    padding: 2px 6px;
    background: #c00;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
}

.seminar_schedule div.schedule_date > p {
	display: none;
	padding: 15px;
    border-top: 1px solid #fff;
	background: #ebebeb;
    font-size: 1.3rem;
}

.seminar_schedule div.schedule_date td > div {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  margin: 0 0 10px 0;
  padding: 0;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.3;
}

.seminar_schedule div.schedule_date td > div p {
  flex: 1 0 30%;
  width: 100%;}

.seminar_schedule div.schedule_date td > div b {
	    font-size: 1.2rem;
}

.seminar_schedule div.schedule_date dt br.pc { display: block; }

.seminar_schedule div.schedule_date td dt > em {
  display: inline-block;
  margin-bottom: 10px;
  padding: 0 10px;
  font-size: 1.4rem;
  color: #fff;
}

.seminar_schedule div.schedule_date td dt > em.type {
  background-color: #333;
}

.seminar_schedule div.schedule_date td dt > em.exhibitor {
  background-color: #10c844;
}

.seminar_schedule div.schedule_date td dt > em.organizer {
  background-color: #38a7e3;
}
/* .seminar_schedule div.schedule_date span{
  border-radius: 16px;
  border: #333 1px solid;
  padding: 0px 3px;
  display: inline-block;
  font-size: 0.8rem;
  margin: 0 5px 0 1px;
  vertical-align: top;
} */

.seminar_schedule div.schedule_date dt > span{
  border-radius: 0;
  border: none;
  padding: 0;
  font-size: 1.2rem;
  margin: 0;
  vertical-align: bottom;
}

.seminar_schedule div.schedule_date span.label {
  display: inline-block;
  margin-bottom: 5px;
  padding: 5px 10px;
  background:#00125e;
  color: #fff;
  font-weight: bold;
}

#visit_webinar.seminar_schedule div.schedule_date td dt > b {
  display: block;
  color: #333;
  font-size: 1.4rem;
}

.seminar_schedule div.schedule_date #lecture_1015_3-3 td > div p > span {
  display: block;
  margin-bottom: 5px;
}

.seminar_schedule div.schedule_date #lecture_1015_3-3 .logo_wrapper {
  display: flex;
  flex-direction: column;
}
.seminar_schedule div.schedule_date #lecture_1015_3-3 .logo_wrapper .logo {
  height: 100%;
}
.seminar_schedule div.schedule_date #lecture_1015_3-3 .logo_wrapper .logo:not(:last-child){
  margin-bottom: 30px;
}

.seminar_schedule div.schedule_date #lecture_1014_2-2 .logo_wrapper {
  display: flex;
  flex-direction: column;
}
.seminar_schedule div.schedule_date #lecture_1014_2-2 .logo_wrapper .logo {
  height: 100%;
}
.seminar_schedule div.schedule_date #lecture_1014_2-2 .logo_wrapper .logo:not(:last-child){
  margin-bottom: 30px;
}

@media screen and (max-width:640px) {


  .seminar_schedule div.schedule_date th {
    font-size: 1.6rem;
  }
  .seminar_schedule ul.seminar_icon li {
    width: calc(50% - 13px);
    margin: 0 0 5px 0;
    font-size: 1.2rem;
  }
  .seminar_schedule div.schedule_date td dt {
    font-size: 1.4rem;
    line-height: 1.2;
    margin: 0 0 5px;
  }
  .seminar_schedule ul.seminar_icon {
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px;
  }
  .seminar_schedule ul.seminar_icon + p {
    margin-bottom: 5px;
    text-align: left;
    padding-left: 0rem;
    text-indent: 0rem;
  }
  .seminar_schedule ul.seminar_icon + p span {
    display: inline-block;
    text-indent: -1em;
    padding-left: 1em;
  }

  .seminar_schedule div.schedule_date #lecture_1015_3-3 .logo_wrapper{
    align-items: flex-start;
    margin: 30px 0;
  }
  .seminar_schedule div.schedule_date #lecture_1014_2-2 .logo_wrapper{
    align-items: flex-start;
    margin: 30px 0;
  }

}


/* Inner Anchor Seminar */
#inner_anchor_seminar {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #999;
}

#inner_anchor_seminar li { margin: 0 10px 10px 0;}

#inner_anchor_seminar a {
	display: block;
	position: relative;
	padding: 8px 60px 8px 65px;
	border: 1px solid #00125e;
	border-radius: 5px;
	color: #00125e;
	text-decoration: none;
}

#inner_anchor_seminar a:before {
	position: absolute;
	top: 50%;
	left: 10px;
	margin-top: 2px;
	border: 5px solid transparent;
	border-top: 6px solid #00125e;
	transform: translateY(-50%);
	content: '';
}

#inner_anchor_seminar a:hover {
	background: #00125e;
	color: #fff;
}


@media screen and (max-width:640px) {
	#inner_anchor_seminar {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-bottom: 10px;
		padding-bottom: 5px;
		border-bottom: 1px dotted #999;
	}

	#inner_anchor_seminar li {
		width: calc(50% - 5px);
		margin: 0 0 5px;
	}	
	
	#inner_anchor_seminar a {
		padding: 8px 10px 8px 15px;
		font-size: 1.2rem;
		line-height: 1.2;
	}
	
	#inner_anchor_seminar a:before {
		left: 5px;
		margin-top: 2px;
		border: 4px solid transparent;
		border-top: 5px solid #00125e;
	}
	
	#inner_anchor_seminar a:hover {
		background: inherit;
		color: #00125e;
	}
  
}

/*Seminar Map*/
#seminar_map figure {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

#seminar_map figure span:first-child{
  width: 65%;
}

#seminar_map figure span:last-child{
  width: calc(35% - 20px);
  margin-left: 20px;
}

#seminar_map figure span em {
  font-weight: bold;
  font-size: 1.2rem;
  padding-left: 1rem;
  text-indent: -1rem;
  display: inline-block;
}

@media screen and (max-width:640px) {
  #seminar_map figure {
    flex-direction: column;
  }

  #seminar_map figure span:first-child{
    width: 100%;
    margin-bottom: 10px;
  }

  #seminar_map figure span:last-child{
    width: 100%;
    margin-left: 0;
  }

}



/*===== ■4. Lecture Page Setting  =====*/
a.box.red {
  background: #00125e;
  color: #fff;
  border: 1px solid #00125e;
}
a.box.red .icon_blank:before {
  color: #fff;
}
a.box.red i.icon_arrow {
  border-left: 8px solid #fff;
}
a.box.red:hover {
  background-color: #fff;
  border: 1px solid #00125e;
  color: #00125e;
}
a.box.red:hover .icon_blank:before {
  color: #00125e;
}
a.box.red:hover i.icon_arrow {
  border-left: 8px solid #00125e;
}

#lecture_howto > p {
  margin-bottom: 10px;
}

#lecture_howto a.box{
  width: 80%;
  margin: 0 auto 20px;
}

.schedule_soon {
  font-weight: bold;
  font-size: 2rem;
  background: #ebebeb;
  margin-bottom: 20px;
  padding: 10px;
  text-align: center;
}

.mb10 {
  margin-bottom: 10px;
}

.seminar_schedule div.schedule_date table { 
	width: 100%;
/*  table-layout: fixed;*/
	margin-bottom: 20px;
}

.seminar_schedule div.schedule_date td.theme{
	padding: 5px;
  border-bottom: 1px dotted #999;
  text-align: center;
  background: #f6e8d0;
  font-weight: bold;
}

.seminar_schedule div.schedule_date td.lecture_space {
  width: 100%;
  background: none;
  border-style: none dotted dotted none;
  border-color: #999;
  border-width: 0 1px 1px 0;
  text-align: left;
  font-weight: inherit;
  position: relative;
}

.seminar_schedule div.schedule_date td.lecture_space a {
	margin: 15px auto 0;
	padding: 10px;
	width: 100%;
}

.seminar_schedule div.schedule_date td.lecture_space > div > p:first-of-type {
 margin-top: 15px;
}
.seminar_schedule div.schedule_date td.lecture_space a.box.red {
 margin-top: 10px;
}

#lecture div.schedule_date td.lecture_space a {
	width: auto;
}

#lecture div.schedule_date td.lecture_space .sp_session {
  color: var(--dominant02);
}

#lecture div.schedule_date td.lecture_space .sp_session em{
  background: var(--dominant02);
  display: inline-block;
  color: #fff;
  font-size: 14px;
  padding: 0 5px;
  margin-bottom: 5px;
}

#lecture div.schedule_date p.close {
  padding: 10px;
	background: var(--dominant-light01);
  font-weight: bold;
  color: #00125e;
}

#lecture div.schedule_date td.lecture_space p.cancel em{
  text-decoration: line-through;
}

#lecture div.schedule_date td.lecture_space p.cancel b{
  color: rgba(204,0,0,1);
  display: block;
}

.seminar_schedule div.schedule_date td.discontinued:before {
  position: absolute;
  content: "講演会は中止になりました";
  color: #FFF;
  font-size: 3.0rem;
  font-weight: bold;
  text-align: center;
  background-color: rgba(153, 153, 153, 0.8);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:20;
  line-height: 8;
}



.seminar_schedule ul#lecture_theme{
	margin: 10px 0;
	border-top: #666666 dotted 1px;
	padding: 10px 0 0 5px;
}

.seminar_schedule ul#lecture_theme li{
	display: flex;
	font-weight: bold;
	margin-bottom: 5px
	}
	
.seminar_schedule ul#lecture_theme li em{
  display: inline-block;
	background-color: #00125e;
	padding: 5px;
	border-radius: 3px;
	margin-right: 10px;
	color: #fff;
	line-height: 1;
}

.seminar_schedule ul#lecture_icon{
	margin-top: 15px;
}
/* .seminar_schedule ul#lecture_icon li{
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.3;
	width: 140px;
} */

#lecture > div > dl#measures{
  margin-top: 15px;
  margin-bottom: 20px;
	border: 1px solid #00125e;
}

#lecture > div > dl#measures dt{
  background: #f6e8d0;
  padding: 5px 10px;
  font-size: 16px;
  font-weight: bold;
	justify-content: center;
}

#lecture > div > dl#measures dd{
	padding: 10px 15px;
}

#lecture > div > dl#measures li{
	display: flex;
}

#lecture > div > dl#measures li:not(:last-child){
  margin-bottom: 5px;
}

#lecture > div > dl#measures ul li span{
	display: inline-block;
  margin-right: 5px;
  color: #fff;
  background: #00baee;
  font-weight: bold;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  text-align:center;
  line-height: 20px;
}

#lecture > div > dl#measures ul li:nth-child(2) span{background: #1db565;}
#lecture > div > dl#measures ul li:nth-child(3) span{background: #e68f41;}
#lecture > div > dl#measures ul li:nth-child(4) span{background: #e762a7;}

#lecture > div > dl#measures li p{
	flex: 1;
}


#lecture > div > #lecture_map {
  width: 60%;
  margin: auto;
}


#lecture > div > #lecture_map + p{
  text-align: right;
  font-weight: bold;
  font-size: 1.2rem;
  margin: 10px;
}


#lecture .lecture_space > p:first-of-type,
#lecture .lecture_space > p.title {
  color: #00125e;
  font-size: 1.6rem;
  font-weight: bold;
}


#lecture .lecture_space > span.sessions {
  display: block;
 margin-top: 15px;
}

#lecture .lecture_space ul.target{
  position: absolute;
  content: "";
  top: 10px;
  right: 10px;
  display: flex;
}

#lecture .lecture_space ul.target li{
  color: #fff;
  background: #00baee;
  font-weight: bold;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  text-align: center;
  line-height: 25px;
}
#lecture .lecture_space ul.target li:not(:last-child){margin-right: 5px;}
#lecture .lecture_space ul.target .target_b{background: #1db565;}
#lecture .lecture_space ul.target .target_c{background: #e68f41;}
#lecture .lecture_space ul.target .target_d{background: #e762a7;}

#lecture div.schedule_date div.seminar_detail {
  margin-top: 0;
  border-left: none;
  padding: 15px;
  font-size: 1.4rem;
  line-height: 1.3;
  color: inherit;
}

#lecture div.schedule_date > p {
	display: block;
	padding: 0;
  text-align: right;
  margin-bottom: 5px;
    border-top: none;
	background: none;
    font-size: 1.3rem;
}

#lecture div.seminar_detail p {margin-bottom: 10px;}

#lecture .schedule_date td img.speaker {
  right: auto;
  width: 25%;
  border: 4px solid #fff;
  box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
}

#lecture .schedule_date td .logo {
  width: 50%;
  margin-right: 10px;
}


#lecture div.schedule_date td dd {margin: 0 0 10px 10px;}

#lecture div.schedule_date td > div > div { 
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex: 1 0 25%;
}

/* howto dorpdown */
#lecture_howto .howto_registration a.registration_btn {
  display: block;
  position: relative;
  padding: 10px 10px 10px 25px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #00125e;
  text-decoration: none;
  background: var(--dominant-light01);
  transition: all 0.6s;
  cursor: pointer;
}
#lecture_howto .howto_registration a.registration_btn:not(:last-child) {
  margin-bottom: 15px;
}
#lecture_howto .howto_registration a.registration_btn:hover {
  color: #fff;
  background: #00125e;
}

#lecture_howto .howto_registration a.registration_btn::before {
  position: absolute;
  top: 50%;
  left: 8px;
  margin-top: 4px;
  border: 7px solid transparent;
  border-top: 9px solid #00125e;
  transform: translateY(-50%);
  content: '';
  transition: all 0.6s;
}

#lecture_howto .howto_registration a.registration_btn:hover::before {
  border-top: 9px solid #fff;
}

#lecture_howto .howto_registration div.registration_detail {
  display: none;
  margin: 10px 10px 20px;
}

#lecture_howto .howto_registration li {
  display: flex;
}

#lecture_howto .howto_registration .step { 
  display: block;
  position: relative;
  flex:0 0 auto;
  top: 0;
  left: 0;
  width: 50px;
  height: 43px;
  padding: 10px 3px 3px;
  border-radius: 50%;
  background: linear-gradient(to bottom right, #919ac0, #00125e);
  color: #fff;
  font-size: 1.0rem;
  font-family: 'Open Sans', 'Noto Sans Japanese';
  text-align: center;
}
#lecture_howto .howto_registration .step:after {
  display: block;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 50%;
  content: '';
}
#lecture_howto .howto_registration .step span {
  display: block;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-align: center;
}

#lecture_howto .howto_registration li{
  margin-bottom: 10px;
}
#lecture_howto .howto_registration li > div{
  width: 70%;
  margin-left: 10px;
}

#lecture_howto .howto_registration li > div >b{
  margin: 15px 0 5px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #00125e;
  display: block;
}

#lecture_howto .howto_registration li > div p{
  margin: 15px 0 5px;
  font-size: 1.4rem;
  font-weight: bold;
}
#lecture_howto .howto_registration li > div li{
  position: relative;
  margin-bottom: 5px;
  padding: 0 10px;
  box-sizing: border-box;
}
#lecture_howto .howto_registration li > div li:before {
  position: absolute;
  top: calc(0.5em + 2px);
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #00125e;
  content: '';
}

#lecture_howto .howto_registration li > span{
  width: 30%;
  margin-left: 10px;
}

#lecture_howto .howto_registration p {
  margin-bottom: 10px;
}

#lecture_howto .howto_registration figure {
  width: 40%;
  min-width: 200px;
  margin: 0 auto 10px;
}


@media screen and (max-width:640px) {
  #lecture_howto .howto_registration .step { 
    width: 35px;
    height: 30px;
    line-height: 1;
    padding: 8px 3px 3px;
  }
  #lecture_howto .howto_registration .step:after {
    width: 35px;
    height: 35px;
  }
  #lecture_howto .howto_registration .step span {
    font-size: 1.4rem;
  }
  #lecture_howto .howto_registration li > div >b{
  font-size: 1.4rem;
    margin: 10px 0 0;}
  #lecture_howto .howto_registration li > div p {
    margin: 10px 0 0;}
  #lecture_howto .howto_registration li {
    flex-wrap: wrap;
  }
  #lecture_howto .howto_registration li > div {
    width: calc(100% - 55px);
    margin-bottom: 10px;
  }
  #lecture_howto .howto_registration li > span {
    margin: 0 auto;
    width: 100%;
  }

}






/* seminar dropdown */
#visit_webinar td a.seminar_btn,
#lecture td a.seminar_btn {
  display: block;
  position: relative;
  width: calc(100% - 20px);
  margin-top: 5px;
  padding: 2px 0 2px 20px;
  color: #00125e;
  background: #ebebeb;
  cursor: pointer;
}

#visit_webinar .seminar_detail,
#lecture .seminar_detail {
    display: none;
    padding: 15px;
    border-top: 1px solid #fff;
    background: #ebebeb;
    font-size: 1.3rem;
    font-weight: normal;
}

#visit_webinar p.seminar_detail > em,
#lecture p.seminar_detail > em {
    display: block;
    font-weight: bold;
    background: #ccc;
    padding: 3px 6px;
    margin-bottom: 5px;
}

#visit_webinar p.seminar_detail > em:not(:first-child),
#lecture p.seminar_detail > em:not(:first-child) {margin-top: 10px;}

#lecture p.seminar_detail span{display: block;}
#lecture p.seminar_detail span + span{
  margin-top: 10px;
}

#visit_webinar a.seminar_btn:before,
#lecture a.seminar_btn:before {
    position: absolute;
    top: 50%;
    left: 8px;
    margin-top: 2px;
    border: 5px solid transparent;
    border-top: 6px solid #00125e;
    transform: translateY(-50%);
    content: '';
}

/* .seminar_schedule div.schedule_date td > div:last-child {
  display: block;
  border-left: 10px solid rgba(204,0,0,1);
  background: rgba(204,0,0,.1);
  margin: 10px 0 0;
  padding: 5px;
  color: rgba(204,0,0,.8);
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.3;
}

.seminar_schedule div.schedule_date td > div:last-child b {
    font-size: 1.2rem;
} */

#lecture div.schedule_date dt br { display: block; }

#lecture a.box.soon {
  pointer-events: none;
}
#lecture .note_deadline {
  margin-top: 5px;
  font-weight: bold;
}



@media screen and (max-width: 640px){
  #lecture_howto a.box{
    width: 90%;
  }
	.seminar_schedule ul#lecture_theme li em{
		display: flex;
    	align-items: center;
    	font-size: 1.3rem;
    	white-space: nowrap;
    	vertical-align: middle;
	}

  .schedule_soon {
    font-size: 1.8rem;
    padding: 10px;
  }

	#lecture > div > dl#measures{
    	display: block;
    	margin-bottom: 10px;
	}
	
	#lecture > div > dl#measures dt{
		width: auto;
    	padding: 5px;
	}
	#lecture > div > dl#measures dd{
		padding: 10px;
	}

  #lecture > div > #lecture_map {
    width: 100%;
  }

  #lecture .schedule_date td img {
    width: 25%;
  }

  #lecture .schedule_date td picture.logo img {
    width: 100%;
  }
  
  #lecture .schedule_date td img.speaker {
    width: 35%;
  }

  #lecture .schedule_date td.lecture_space a {
    width: 100%;
    padding: 10px 5px;
    font-size: 1.3rem;
    text-align: left;
  }  
  
   #lecture div.schedule_date td.lecture_space a {
     margin: 5px auto 0;
     padding-left: 10px;
  }
     
  #visit_webinar a.seminar_btn ,
  #lecture .schedule_date td.lecture_space a.seminar_btn { 
    width: calc(100% - 30px);
    padding: 5px 5px 5px 25px;
  }  
  
  #visit_webinar .seminar_detail,
  #lecture .seminar_detail {padding: 10px;}
  
  #lecture div.schedule_date td dd {margin-bottom: 5px;}
  
  #lecture div.schedule_date td > div > div {
    flex-direction: row-reverse;
    flex: none;
    width: 100%;
    max-width:300px;
    margin-top: 10px;
  }
  
  #lecture div.schedule_date td > div > p {
    flex: none;
  }
  
  #lecture .schedule_date td > div {flex-direction: column;}
  
  #lecture .schedule_date td > div {align-items: flex-start;}
  
  #lecture div.schedule_date td > div > div {justify-content: space-between;}
  #lecture div.schedule_date td > div > div.single {justify-content: flex-end;}
  
  .seminar_schedule div.schedule_date td.discontinued:before {
    font-size: 1.8rem;
    line-height: 16;
  }
}




/*===== ■5. Matching Page Setting  =====*/
#matiching_registration p { margin-bottom: 15px;}

#matching_about .inner .inner > div {
	padding: 1px;
	border:  #ebebeb 4px solid;
	margin: 15px 0;
}

#matching_about ul{
	padding: 10px 20px;
	background: #ebebeb;
}

#matching_about li{
	position: relative;
	margin-bottom: 10px;
	padding: 6px 0 0px 65px;
}

#matching_about li:not(:last-child) {	
	border-bottom: 1px dotted #ccc;
	padding-bottom: 15px;
	}

#matching_about li b{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 43px;
	padding: 10px 3px 3px;
	border-radius: 50%;
	background: linear-gradient(to bottom right, #e3c077, #00125e);
	color: #fff;
	font-size: 1.0rem;
	font-family: 'Open Sans', 'Noto Sans Japanese';
	text-align: center;
}
#matching_about li b:after{
	display: block;
	position: absolute;
	top: 2px;
	left: 2px;
	width: 50px;
	height: 50px;
	border: 1px solid rgba(255,255,255,.5);
	border-radius: 50%;
	content: '';
}

#matching_about li b span{
	display: block;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.3;
	letter-spacing: 0.1em;
	text-align: center;
}

#matching_about li > dl dt{
	font-weight: bold;
	font-size: 1.6rem;
}

#matching_about .inner .inner > div + p {
  font-weight: bold;
  font-size: 1.2rem;
  margin: 10px 0 0;
}

#matching_about .inner .inner > p {
	margin-bottom: 12px;
}

#matching_flow .inner > dl {
	display: flex;
	position: relative;
	margin-bottom: 10px;
	border: 2px solid #00125e;
	border-radius: 5px;
}

#matching_flow .inner > dl:not(:last-of-type):after {
		position: absolute;
		bottom: -18px;
		left: 50%;
		margin: 0px 0px -20px -20px;
		border: 20px solid transparent;
		border-top: 12px solid #00125e;
		content:'';
	}
	
#matching_flow .inner > dl:not(:last-of-type) {margin-bottom: 20px;}

#matching_flow .inner > dl > dt {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	width: 200px;
	padding: 20px;
	box-sizing: border-box;
	background: #00125e;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
}

#matching_flow .inner > dl > dt:before {
	position: absolute;
	top: 0;
	right: 3px;
	color: #fff;
	font-weight: normal;
	font-size: 1.2rem;
	font-family: Arial, Helvetica, "sans-serif";
	opacity: 0.5;
}
#matching_flow .inner > dl:nth-of-type(1) > dt:before {content:'STEP01';}
#matching_flow .inner > dl:nth-of-type(2) > dt:before {content:'STEP02';}
#matching_flow .inner > dl:nth-of-type(3) > dt:before {content:'STEP03';}
#matching_flow .inner > dl:nth-of-type(4) > dt:before {content:'STEP04';}

#matching_flow .inner > dl > dd {
	padding: 20px;
	flex: 1;
}

@media screen and (max-width:640px) {
  #matiching_registration p { margin-bottom: 10px;}

	/* matching_about */
	#matching_about ul{
	padding: 10px 9px;
	background: #ebebeb;
	}
	
	/* matching_flow */
	#matching_flow .inner > dl {
		flex-direction: column;
		margin: 0 5px 10px;
		border: 1px solid #00125e;
	}
	#matching_flow.inner > dl:not(:last-of-type) {margin-bottom: 25px;}
	
	#matching_flow .inner > dl:not(:last-of-type):after {
		position: absolute;
		bottom: -18px;
		left: 50%;
		margin: 0px 0px -20px -20px;
		border: 20px solid transparent;
		border-top: 12px solid #00125e;
		content:'';
	}
	
	#matching_flow .inner > dl > dt {
		width: auto;
		padding: 10px;
		font-size: 1.4rem;
	}

	#matching_flow .inner > dl > dd { padding: 10px;}
}

/*under_construction*/
.under_construction .inner p{
  font-weight: bold;
  margin: 100px 0;
  font-size: 1.8rem;
  text-align: center;
}


/*===== ■7. Organizer Page Setting  =====*/
#organizer_truck h2 em {
  line-height: 1.5;
}

#organizer_truck h2 em {
  margin-right: 10px;
  padding: 5px 10px;
  background: #00125e;
  color: #fff;
  font-size: 2.0rem;
}
#organizer_truck h2 span{
  line-height: 1.5;
}

#organizer_truck .inner > p {
  margin-bottom: 20px;
}
#organizer_truck .label {
  margin-right: 5px;
  padding: 5px 10px;
  background: #ebebeb;
  font-weight: bold;
}
#organizer_truck .label.red {
  background: #fff;
  border: 1px solid #00125e;
  color: #00125e;
  font-weight: bold;
}

#organizer_truck .flex {
  display: flex;
  justify-content: space-between;
}

#organizer_truck .flex > p {
  width: 60%;
}

#organizer_truck .flex > figure {
  width: calc(40% - 20px);
}

#organizer_truck .empasis {
  padding: 10px;
  background: #00008b;
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
}

@media screen and (max-width:640px) {
  #organizer_truck h2 em {
    padding: 0;
    font-size: 1.6rem;
  }
  #organizer_truck .inner > p {
    margin-bottom: 10px;
  }
  #organizer_truck .inner > p:first-child {
    margin-bottom: 10px;
  }
  #organizer_truck .flex {
    flex-direction: column;
  }

  #organizer_truck .flex > p {
    width: 100%;
    margin-bottom: 10px;
  }

  #organizer_truck .flex > figure {
    width: 100%;
  }
  #organizer_truck .label.red {
    display: inline-block;
    margin-bottom: 5px;
  }

  #organizer_truck .empasis {
    font-size: 1.4rem;
  }

}


/*===== ■8. Information Page Setting  =====*/
#information dl#measures{
	display: flex;
    margin-bottom: 20px;
	border: 1px solid #00125e;
}

#information dl#measures dt{
  background: #f6e8d0;
  font-size: 1.5rem;
  font-weight: bold;
	text-align: center;
	width: 15%;
	justify-content: center;
  align-items: center;
	display: flex;
}

#information dl#measures dd{
	padding: 10px 15px;
}

#information .seminar_schedule ul.seminar_icon li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  margin-right: 5px;
  padding: 5px;
  border-radius: 4px;
  color: #fff;
  font-weight: bold;
}

#information #measures + p {
  text-align: right;
  margin-bottom: 5px;
  font-size: 1.3rem;
}
@media screen and (max-width:640px) {
  #information dl#measures{
    display: block;
    margin-bottom: 10px;
  }
  #information dl#measures dt{
    width: auto;
      padding: 5px;
  }
  #information dl#measures dd{
    padding: 10px;
  }
  
  #information .seminar_schedule ul.seminar_icon li {
    width: calc(50% - 13px);
    margin: 0 0 5px 0;
    font-size: 1.2rem;
  }
}



/*===== ■9. Organizer Page Setting  =====*/

#organizer #entirety:before,
#organizer #entirety:after {
  height: 430px;
}
#organizer h1 > span {
  font-size: 3rem;
}
#organizer_intro {
  margin: 20px 0;
}
#organizer_intro > p{
  margin-bottom: 10px;
}
#organizer_intro > figure {
  width: 80%;
  margin: auto;
}

#organizer_list div.organizer_table table { 
	width: 100%;
	margin-bottom: 20px;
}

#organizer_list div.organizer_table tr:first-child th {
	padding: 5px;
	background: #00125e;
	border: 1px solid #00125e;
	font-weight: bold;
	text-align: center;
	font-size: 1.8rem;
	color: #fff;
	vertical-align: middle;
}

#organizer_list div.organizer_table td {
	padding: 10px;
	border-style: none dotted dotted dotted;
	border-color: #999;
	border-width: 0 1px 1px 1px;
	vertical-align: middle;
}

#organizer_list div.organizer_table tr:not(:first-child) th {
	width: 30%;
  padding: 10px;
	background: #ebebeb;
	border-style: none none dotted dotted;
	border-color: #999;
	border-width: 0 1px 1px 1px;
	text-align: center;
  font-weight: bold;
  vertical-align: middle;
  text-align: left;
}


#organizer_outline dl {
	display: flex;
	position: relative;
	border-bottom: 1px solid #999;
}

#organizer_outline dl:last-of-type {
  margin-bottom: 30px;
}

#organizer_outline dl:before,
#organizer_outline dl:after {
	position: absolute;
	bottom: 0;
	width: 5px;
	height: 20px;
	background: #999;
	content: '';
}
#organizer_outline dl:before { left: 0;}
#organizer_outline dl:after { right: 0;}

#organizer_outline dt {
	display: flex;
	align-items: center;
	position: relative;
	width: 160px;
	padding: 0 10px 0 20px;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 1.6rem;
}

#organizer_outline dt:after {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 1px;
	height: 20px;
	background: #999;
	content: '';
}

#organizer_outline dt > span > span {
	font-size: 1.4rem;
}

#organizer_outline dd {
  flex: 1;
  padding: 20px;
}

#organizer_outline dd p {
	margin: 5px 0 0;
	padding-left: 1em;
	text-indent: -1em;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1.3;
}

#organizer_outline dd li {
	position: relative;
	margin-bottom: 10px;
	padding-left: 10px;
	line-height: 1.4;
}

#organizer_outline dd li:before {
	position: absolute;
	top: 9px;
	left: 0;
	width: 4px;
	height: 4px;
	border-radius: 2px;
	background: #999;
	content: '';
}
#organizer_outline dl.twocolumn dd {
  display: flex;
}
#organizer_outline dl.twocolumn dd > div{
  width: 170px;
}
#organizer_outline dl.twocolumn dd > figure{
  width: calc(100% - 170px);
  margin-left: 40px;
}



@media screen and (max-width:768px) {
  #organizer #entirety:before,
  #organizer #entirety:after {
    height: 500px;
  }
}
@media screen and (max-width:640px) {
  #organizer #entirety:before,
  #organizer #entirety:after {
    height: 300px;
  }
  #organizer h1 > span {
    font-size: 1.8rem;
  }
  #organizer_intro > figure {
    width: 100%;
  }
  #organizer_list div.organizer_table tr:first-child th {
    font-size: 1.6rem;
  }
  #organizer_list div.organizer_table th {
    font-size: 1.4rem;
  }
  #organizer_list div.organizer_table tr:not(:first-child) th {
    width: 25%;
    min-width: 8rem;
    padding: 5px;
  }
  
	#organizer_outline dl {
		display: block;
		margin-bottom: 10px;
		padding-bottom: 10px;
		border-bottom: 1px dotted #999;
	}
	#organizer_outline dl:last-of-type {
		padding: 0;
		border: none;
	}

	#organizer_outline dl:before,
	#organizer_outline dl:after { display: none;}

	#organizer_outline dt {
		display: block;
		width: auto;
		margin-bottom: 5px;
		padding: 5px;
		border-left: 5px solid #999;
		font-size: 1.4rem;
		line-height: 1;
	}
  #organizer_outline dt:after {
    content: none;
  }

	#organizer_outline dd {
		margin: 0 10px;
		padding: 0;
	}  
  #organizer_outline dl.twocolumn dd {
    flex-direction: column;
  }
  #organizer_outline dl.twocolumn dd > div{
    width: 100%;
  }
  #organizer_outline dl.twocolumn dd > figure{
    width: 100%;
    margin: 10px 0 0;
  }
  
}



/*===== ■10. press page Setting =====*/
#press_release ul,
#press_release_organizer ul{
	overflow: auto;
	margin: 0 10px;
	max-height: 350px;
}

#press_release li,
#press_release_organizer li{
	display: flex;
	align-content: flex-start;
	margin-bottom: 15px;
	padding-bottom: 12px;
	border-bottom: 1px dotted #ccc;
}

#press_release li time,
#press_release_organizer li time{
	flex: 0 0 auto;
}
#press_release li div,
#press_release_organizer li div{
	margin-left: 10px;
}
#press_release li div b,
#press_release_organizer li div b{
	display: inline-block;
	min-width: 120px;
	margin-bottom: 5px;
	padding: 3px 5px;
	border-radius: 4px;
	color: #fff;
	font-size: 1.2rem;
	line-height: 1;
	text-align: center;
}

#press_release li div b.info,
#press_release_organizer li div b.info{ 
	background: #2c9999;
}
#press_release li div b.press,
#press_release_organizer li div b.press{ 
	background: #73a808;
}

#press_inquiry dl {
	margin-bottom: 10px;
  padding: 15px;
  background: #ebebeb;
}

#press_inquiry dt {
  margin-bottom: 15px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #fff;
  color: #00125e;
  font-weight: bold;
  font-size: 1.8rem;
  text-align: center;
}

#press_inquiry dd {
  text-align: center;
  font-weight: bold;
}

#press_inquiry ul {
  display: flex;
  justify-content: center;
	margin-top: 10px;
}

#press_inquiry li {
  margin: 0 5px;
  font-family: Arial, Helvetica, "sans-serif";
}

#press_inquiry li b {
  display: inline-block;
  min-width: 54px;
  margin: 0 10px;
  padding: 5px;
  border-radius: 5px;
  background: #ccc;
  line-height: 1;
  text-align: center;
}

#press_register p {
	margin-bottom: 10px;
}

#press_room li {
    display: flex;
	margin-bottom: 10px;
    font-weight: bold;
}

#press_room li b {
  display: flex;
	justify-content: center;
	align-items: center;
  width: 60px;
  margin-right: 5px;
  padding: 5px;
  border-radius: 5px;
  background: #ccc;
  line-height: 1;
}

#press_room li br {
  display: none;
}

@media screen and (max-width:640px) {
	#press_release ul { max-height: 500px;}
	
	#press_release li {
		display: block;
		margin-bottom: 10px;
		padding-bottom: 5px;
	}

	#press_release li time {
		min-width: 80px;
		font-size: 1.1rem;
	}
	
	#press_release li div { display: inline;}
	
	#press_release li div b {
		display: inline-block;
		min-width: 100px;
		margin-bottom: 0;
		font-size: 1.0rem;
	}
	
	#press_release li div p a {
		padding: 10px 0;
	}

	#press_inquiry dl {
		margin-bottom: 15px;
		padding: 0;
		border: none;
		background: none;
	}

	#press_inquiry dt {
		font-size: 1.4rem;
		margin-bottom: 10px;
		padding-bottom: 0;
		border-bottom: none;
	}

	#press_inquiry dd {
		text-align: left;
	}

	#press_inquiry ul {
		display: block;
    	border: 1px solid #ccc;
		background: #fff;
	}

	#press_inquiry li {
		margin: 0;
    border-bottom: 1px solid #ccc;
	}
	
	#press_inquiry li:last-child {
		border: none;
	}

	#press_inquiry li b {
		display: inline-block;
		margin: 0 10px 0 0;
		padding: 10px;
		border-radius: 0;
	}

	#press_inquiry li:not(:last-child) b {
		border-bottom: 1px solid #fff;
	}

	#press_room li br {
		display: inline-block;
	}
}

