@charset "UTF-8";



/* seminar
---------------------------------------------------------*/
#seminar{
	margin-bottom: 150px;
}
#seminar .col3{
	display: flex;
    justify-content: space-between;
	max-width: 1340px;
	margin: 0 auto 120px;
}
#seminar .col3 li{
	width: 32.8%;
}

#seminar .lead{
	font-size:120%;
	margin-bottom: 110px;
}

#seminar table{
	width: 100%;
}
#seminar table th,
#seminar table td{
	border-bottom: 1px solid #bebebe;
	vertical-align: middle;
}
#seminar table tr:first-child th,
#seminar table tr:first-child td{
	border-top: 1px solid #bebebe;
}
#seminar table th{
	width: 76%;
	text-align: right;
	padding: 40px 4% 40px 0;
	box-sizing: border-box;
}
#seminar table th .inbox{
	max-width: 740px;
	margin-left: auto;
	margin-right: 0;
	text-align: left;
}
#seminar table th .title{
	position: relative;
	padding-left: 8.7rem;
	box-sizing: border-box;
}
#seminar table th .title:has(+ dl){
	margin-bottom: 1rem;
}
#seminar table th .title .now{
	position: absolute;
	top:0;
	left: 0;
}

#seminar table th .title .now p{
	background: #b55015;
	color: #fff;
	text-align: center;
	width: 7.5rem;
	font-size:120%;
	line-height: 1em;
	letter-spacing: 0.1em;
	padding: .5em 0;
}
#seminar table th .title .now p.no{
	background: #767f90;
}
#seminar table th .title .sub_t,
#seminar table th .title .sub_b,
#seminar table th dl{
	font-size:115%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
}
#seminar table th .title .sub_t{
	margin-bottom: .4em;
}
#seminar table th .title .main{
	font-size: 160%;
	letter-spacing: 0.1em;
	line-height: 1.6em;
}
#seminar table th .title .sub_b{
	margin-top: .4em;
}
/*日時・会場*/
#seminar table th dl{
	display: flex;
    justify-content: space-between;
}
#seminar table th dl:has(+ dl){
	margin-bottom: .5em;
}
#seminar table th dl dt{
	position: relative;
	padding-left: .7em;
	box-sizing: border-box;
	width: 4.8rem;
	letter-spacing: 0.15em;
}
#seminar table th dl dt::before{
	position: absolute;
	display: block;
	content: "";
	background: #256d96;
	background-size: 100% auto;
	width: .4em;
	height: .4em;
	top:.6em;
	left: 0;
	border-radius: 50%
}
#seminar table th dl dd{
	width: calc(100% - 4.8rem);
	letter-spacing: 0.05em;
}
#seminar table th dl dd .main:has(+ .sub){
	margin-bottom: .3em;
}
#seminar table th dl.venue{
	letter-spacing: normal;
}
#seminar table th dl.venue .main a{
	text-decoration: underline;
}
#seminar table th dl.venue .main a:hover{
	text-decoration: none;
}
#seminar table th dl.venue .sub{
	font-size: 80%;
	line-height: 1.5em;
}

#seminar table td{
	width: 24%;
	background: #fff;
	text-align: center;
	padding: 1em 1%;
	box-sizing: border-box;
}
#seminar table td div{
	margin-bottom: 5px;
}
#seminar table td div:last-child{
	margin-bottom: 0;
}
#seminar table tr.is-closed td div{
	opacity: .4;
	pointer-events: none;
}

#seminar table td div a{
	position: relative;
	display: block;
	text-align: left;
	border:1px solid #c8ccd3;
	border-radius: 50px;
	line-height: 1.5em;
	padding: .85em 1.5em;
	box-sizing: border-box;
	max-width: 12em;
	margin: 0 auto;
}
#seminar table td div.application a{
	border:1px solid #3b4757;
	background: #3b4757;
	color: #fff;
}
#seminar table td div a i{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1.5rem;
}
#seminar table td div.application a i{
	font-size: 78%;
}


/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#seminar{
	margin-bottom: 12%;
}
#seminar .col3{
	margin: 0 auto 8%;
}
#seminar .col3 li{
	width: 32.8%;
}
#seminar .lead{
	margin-bottom: 8%;
}
	
#seminar table{
	letter-spacing: normal!important;
}
#seminar table th dl dt{
	width: 4rem;
}
#seminar table th dl dd{
	width: calc(100% - 4rem);
}
	
#seminar table td div a i{
	right: 1rem;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#seminar{
	margin-bottom: 15%;
}
#seminar .col3{
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto 8%;
}
#seminar .col3 li{
	width: 49.5%;
	margin-right: 1%;
	margin-bottom: 1%;
}
#seminar .col3 li:last-child,
#seminar .col3 li:nth-child(even){
	margin-right: 0;
}
#seminar .lead{
	font-size:110%;
	margin-bottom: 10%;
}

#seminar table{
	width: 100%;
}
#seminar table th,
#seminar table td{
	display: block;
}
#seminar table tr:first-child td{
	border-top:none;
}
#seminar table th{
	width: 100%;
	padding: 8% 0;
	border-bottom: none;
}
#seminar table th .inbox{
	max-width: 100%;
}
#seminar table th .title{
	padding-left: 0;
}
#seminar table th .title:has(+ dl){
	margin-bottom: 1rem;
}
#seminar table th .title .now{
	position: static;
	margin-bottom: .8em;
}
#seminar table th .title .now p{
	width: 7.5rem;
	font-size:110%;
	padding: .4em 0;
}
#seminar table th .title .sub_t,
#seminar table th .title .sub_b,
#seminar table th dl{
	font-size:100%;
	letter-spacing: 0.05em;
}
#seminar table th .title .sub_t{
	margin-bottom: .3em;
}
#seminar table th .title .main{
	font-size: 150%;
	letter-spacing: 0.05em;
}
#seminar table th .title .sub_b{
	margin-top: .3em;
}
/*日時・会場*/
#seminar table th dl{
	display: block;
}
#seminar table th dl dt,
#seminar table th dl dd{
	width: 100%;
}
#seminar table th dl dd{
	letter-spacing: 0.05em;
}
#seminar table th dl.venue .sub{
	line-height: 1.7em;
}

#seminar table td{
	width:100%;
	padding: 8% 0;
}
#seminar table td div a{
	max-width: 14em;
	padding: .7em 1.5em;
}
}