@charset "UTF-8";

main {
	width: 720px;
	margin-left: 20px;
}

main .inner {
	width: calc(100% - 2px);
	background: #f2f4f5;
	background: linear-gradient(0deg,rgba(242, 244, 245, 0.78) 0%, rgba(255, 255, 255, 1) 50%, rgba(250, 252, 252, 0.9) 100%);
	opacity: 0.95;
	border-radius: 5px;
	min-height: 700px;
	margin-bottom: 30px;
	padding: 20px;
	box-shadow: 1px 1px 2px #666;
}

main .inner h2 {
	border-bottom: solid 1px #000;
	padding: 3px 0 5px 24px; 
	font-size: 2.3rem;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
	position:relative;
}
main .inner h2::after {
	content:"";
	background: #696969;
	background: radial-gradient(circle,rgba(105, 105, 105, 1) 0%, rgba(0, 0, 0, 0.9) 100%);
	border-radius:50%;
	width: 22px;
	height: 22px;
	position:absolute;
	top:7px;
	left:0;
}
main .inner h3 {
	position: relative;
	padding: 3px 0 2px 25px;
	background: #036eb8;
	color: #fff;
	font-weight:600;
	font-size: 1.7rem;
	font-weight: 300;
	letter-spacing: 0.05em;
}

main .inner h3::before {
	counter-increment: list;
	content: "";
	display: block;
	position: absolute;
	left: 10px;
	height: 9px;
	width: 11px;
	background:url(../img/low/img_h3_title.png);
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


/*会長挨拶
-----------------------------------*/
.greeting .president {
	margin-bottom: 20px;
}

.greeting .president_image {
	margin-right: 20px;
	width: 160px;
}
.greeting .president_profile {
	margin-top: 40px;
}
.greeting .profile_title {
	font-size: 1.8rem;
	font-weight: 600;
	
}

.greeting .profile_name {
	font-size: 1.8rem;
	font-weight: 600;
	margin-top: 20px;
	letter-spacing: 0.05em;
}

.greeting .profile_div {
	font-size: 1.4rem;
}

.greeting .greeting_content {
	font-size: 16px;
	line-height: 3em;
	letter-spacing: 0.05em;
}

.greeting .greeting_content p {
	margin-top: 20px;
	line-height:1.7;
}

/*開催概要
-----------------------------------*/

.outline p {
	font-size: 1.6em;
	margin: 20px 10px 30px 10px;
}

/*アクセス
-----------------------------------*/
.access .btn_access {
	margin-top: 20px;
}
.access .btn_access a {
	display: inline-block;
	font-size: 18px;
	padding: 10px 20px;
	color: #fff;
	background: #147EB9;
	border-radius: 10px;
	transition: 0.3s;
	box-shadow: 2px 2px 3px #aaa;
}
.access .btn_access a:hover {
	opacity: 0.8;
}

.access .sub_nav {
	display: flex;
	justify-content: space-between;
	margin: 20px 50px;
}
.access .sub_nav div {
	font-size: 1.5em;
	border: solid 1px #0090C1;
	border-radius: 3px;
	padding: 3px 20px;
	transition: 0.3s;
}
.access .sub_nav div:hover {
	background:#15ACA9;
}
.access .sub_nav div a {
	color: #15ACA9;
}
.access .sub_nav div:hover a{
	color: #fff;
	font-weight: 600;
}
.access section {
	margin-bottom: 50px;
}
.access h3 {
	margin-bottom: 10px;
}

.access p {
	font-size: 1.6rem;
}

.access li > p {
    font-size: 1.6rem;
    padding-left: 5rem;
}

.access img {
	margin: 0 auto;
}
.access h4 {
	font-size:1.8em;
	color: #2d986b;
	padding-left:2rem;
}
.access h5 {
	font-size: 1.7em;
	padding: 10px 0 10px 5px;
}
.access .bus {
	margin-bottom:20px;
}
.access p.bus_link {
	padding: 5px;
	text-decoration: underline;
}
.access li {
	list-style: none;
	font-size: 1.6em;
	padding-left:30px;
}
.access li span{
	font-weight: 600;
}
.access li.orange span {
	color: orange;
}
.access li.blue span {
	color: blue;
}
.access li.green span {
	color: green;
}
.access #stay a {
	text-decoration: underline;
}
.access #stay span {
	display: block;
	font-size: 0.9em;
}

.access img {
	padding:1rem;
}

/*演題募集
-----------------------------------*/
.abstract h3 {
	margin-top: 30px;
}

.abstract p {
	font-size: 1.6em;
	line-height: 2;
	padding: 5px 10px;
} 

.abstract .finish {
	padding-left:172px;
	color:red;
}

.abstract .absp1 {
	display: block;
	margin: 10px 10px 0 15px;
	font-weight: 700;
	font-size: 1.1em;
}
.abstract .submit {
	text-align: center;
	margin: 30px auto ;
}
.abstract .submit a {
	color: #fff;
	font-size: 1.6em;
	font-weight: 600;
	transition: 0.3s;
}
.abstract .submit a:hover {
	opacity: 0.5;
}
.abstract .submit span {
	display: block;
	background: #0090C1;
	border-radius: 5px;
	width: 200px;
	padding: 20px 30px;
	margin: 0 auto;
}
.abstract h4 {
	font-size: 1.6rem;
	margin: 15px 0 0 5px;
	padding-bottom: 2px;
	border-bottom: solid 1px rgba(59,182,153,0.6);
}

.abstract .content_wrap .table_scroll {
	width: 100%;
}
.abstract table{
	font-size: 16px;
	margin: 20px;
	width: calc(100% - 40px);
	border-collapse:  collapse;
}
.abstract table th, .abstract table td{
	border: solid 1px #999;
	padding: 10px 20px;
}
.abstract table th {
	width:30%;
	text-align: left;
	font-weight: 400;
}
.abstract table td {
	width: 70%;
	text-align: center;
}
.abstract table tr.table_title {
	background:#2d986b;
	color: #fff;
	font-weight:600;
	letter-spacing: 0.05em;
}
.abstract table tr.table_title th {
	font-weight:600;
}

.abstract .abstract_submit {
	display:flex;
}

dl.abstract .abstract_submit{
	width:90%;
}

.abstract .abstract_submit > dd{
	width:50%;
	padding:1rem;
}

.abstract .abstract_submit a {
	display: inline-block;
	font-size: 18px;
	padding: 10px 20px;
	color: #fff;
	background: #2d986b;
	border-radius: 10px;
	transition: 0.3s;
	box-shadow: 2px 2px 3px #aaa;
	width:100%;
	text-align:center;
}
.abstract .abstract_submit a:hover {
	opacity: 0.6;
}

.abstract .abstract_submit .disable {
	display: inline-block;
	font-size: 18px;
	padding: 10px 20px;
	color: #fff;
	background: grey;
	border-radius: 10px;
	transition: 0.3s;
	box-shadow: 2px 2px 3px #aaa;
	width:100%;
	text-align:center;
}

.abstract .abstract_submit span {
	line-height:1.0;
}

.abstract ul {
	margin-top:20px;
}

div.address {
	background-color:#F7F6EF;
	padding:1rem;
}

.abstract li {
	font-size: 1.6em;
	line-height: 2;
	padding: 5px 10px;
	margin-left: 2.2rem;
    text-indent: -2.2rem;
}

.abstract .flow {
}

.abstract .flow_ul01 {
  padding-left: 0;
  display: flex;
  align-items: stretch;
  gap:30px;
}

.abstract .flow_ul01 > li {
  list-style-type: none;
  width: 47%;
  padding:1rem;
}

.abstract .flow_ul01 > li dl {
  padding: 1.0rem;
  margin: 0;
  border: 2px solid #2d986b;
  position: relative;
  border-radius:20px;
}

.abstract .flow_ul01 > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #2d986b;
  border-right: 4px solid #2d986b;
  position: absolute;
  top: calc(50% - 14px);
  left: -35px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.abstract .flow_ul01 > li dl dt {
  font-size: 1.8rem;
  font-weight: 600;
  color:#2d986b;
  margin-bottom: 10px;
  text-align: center;
}

.abstract .flow_ul01 > li dl dd {
   font-size:1.5rem;
}

.abstract .flow_ul01 > li {
   text-indent:0rem;
   margin-left:0rem;
   display:flex;
}

.abstract .flow_ul {
  padding-left: 0;
  display: flex;
  align-items: stretch;
  gap:18px;
}

.abstract .flow_ul > li {
  list-style-type: none;
  width: 23%;
  padding:1rem;
}

.abstract .flow_ul > li dl {
  padding: 1.0rem;
  margin: 0;
  border: 2px solid #2d986b;
  position: relative;
  border-radius:20px;
}

.abstract .flow_ul > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #2d986b;
  border-right: 4px solid #2d986b;
  position: absolute;
  top: calc(50% - 14px);
  left: -35px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.abstract .flow_ul > li dl dt {
  font-size: 1.8rem;
  font-weight: 600;
  color:#2d986b;
  margin-bottom: 10px;
  text-align: center;
}

.abstract .flow_ul > li dl dd {
   font-size:1.5rem;
}

.abstract .flow_ul > li {
   text-indent:0rem;
   margin-left:0rem;
   display:flex;
}

.abstract .abstract_submit p {
	font-size: 1.4em;
	line-height: 1.25;
	text-align:center;
	padding:5px;
} 

.abstract .abstract_submit .speechBubble {
  position: relative;
  display: inline-block;
  margin-top: 5px;
  padding: 8px;
  border-radius: 8px;
  background-color: #FFF;
  border:1px solid #2d986b;
  text-align: left;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.25;
  color: #000000;
}

.speechBubble::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  border-style: solid;
  border-width: 0 10px 15px 10px;
  border-color: transparent transparent #2d986b;
  translate: -50% -100%;
}

.speechBubble::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  border-style: solid;
  border-width: 0 8.9px 14.8px 8.9px;
  border-color: transparent transparent #ffffff;
  translate: -50% -100%;
}

@media(max-width: 767px){
	
.abstract .flow_ul01 {
  padding-left: 0;
  align-items: stretch;
  display:block;
}

.abstract .flow_ul01 > li {
  list-style-type: none;
  padding:1rem;
}

.abstract .flow_ul01 > li dl {
  padding: 1.0rem;
  margin: 0;
  border: 2px solid #2d986b;
  position: relative;
  border-radius:20px;
}

.abstract .flow_ul01 > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #2d986b;
  border-right: 4px solid #2d986b;
  position: absolute;
  top: calc(0% - 28px);
  left: 135px;
  -webkit-transform: rotate(45deg);
  transform: rotate(135deg);
}

.abstract .flow_ul01 > li dl dt {
  font-size: 1.8rem;
  font-weight: 600;
  color:#2d986b;
  margin-bottom: 10px;
  text-align: center;
}

.abstract .flow_ul01 > li dl dd {
   font-size:1.5rem;
}

.abstract .flow_ul01 > li {
   text-indent:0rem;
   margin-left:0rem;
　 display:block;
   width:100%;
   margin-bottom:20px;
}

.abstract .flow_ul {
  padding-left: 0;
  display: block;
  align-items: stretch;
  gap:18px;
}

.abstract .flow_ul > li {
  list-style-type: none;
  padding:1rem;
}

.abstract .flow_ul > li dl {
  padding: 1.0rem;
  margin: 0;
  border: 2px solid #2d986b;
  position: relative;
  border-radius:20px;
}

.abstract .flow_ul > li:not(:first-child) dl::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 4px solid #2d986b;
  border-right: 4px solid #2d986b;
  position: absolute;
  top: calc(0% - 28px);
  left: 48%;
  -webkit-transform: rotate(45deg);
  transform: rotate(135deg);
}

.abstract .flow_ul > li dl dt {
  font-size: 1.8rem;
  font-weight: 600;
  color:#2d986b;
  margin-bottom: 10px;
  text-align: center;
}

.abstract .flow_ul > li dl dd {
   font-size:1.5rem;
}

.abstract .flow_ul > li {
   text-indent:0rem;
   margin-left:0rem;
   display:block;
   width:100%;
   margin-bottom:20px;
}
	
.abstract .abstract_submit {
	display:block;
}
	
.abstract .abstract_submit > dd {
	width:100%;
	}
 
}

/*プログラム・日程表
-----------------------------------*/
.program {
	
}
.program p {
	font-size:16px;
}

.program .txt01 {
	font-size: 1.4rem;
	color: red;
}
.program h4 {
	font-size: 1.6rem;
    margin: 15px 5px 0 0px;
    padding-bottom: 2px;
    border-bottom: solid 1px rgba(59,182,153,0.6);
}
.program section {
	padding: 0 0 20px;
	border-bottom: dotted 1px #aaa;
	margin-bottom: 20px;
}
.program h5 {
	display: flex;
	align-items: center;
	font-size: 1.6rem;
	margin: 10px 0 5px 0px;
}
.program h5 span {
	display: block;
	background:#A0DDFF;
	margin-right: 10px;
	font-size: 0.9em;
	padding: 2px 5px;
}
.program h5 p {
	font-weight: 500;
	letter-spacing: 0.05em;
}
.program .f-00 {
	margin: 10px 0 10px 30px;
	font-size: 1.5rem;
	font-weight: 600;
}
.program .f-01 {
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	margin: 10px 0 10px 40px;
}
.program .f-01 dl {
	display: flex;
}
.program .f-01 dl dt,.program .f-01 dl dd {
	line-height: 2;
}
.program .f-01 dl dt {
	width: 10%;
}
.program .f-01 dl dd {
	width: 90%;
}
.program .f-02 {
	display: flex;
	font-size: 1.4rem;
	margin: 0 0 20px 40px;
}
.program .f-02 div{
	line-height: 2;
}
.program .f-02 p {
	line-height: 2;
}
.program .f-02 div:first-child {
	width:10%;
}
.program .f-02 div:last-child {
	width: 90%;
}
.program .f-02 div p {
	margin-bottom: 7px;
}
.program h6 {
	margin-left: 40px;
	line-height: 2;
	font-size: 1.5rem;
	color:#006A6C;
}
.program .col_04 div p {
	line-height: 2;
	font-size: 1.4rem;
}
.program .col_04 div p span {
	line-height: 2;
	font-weight: 600;
}

.accordion-001 {
	font-size: 1.4em;
	width: 85%;
	margin: 0 auto 20px;
    background-color: #f0f5f9;
}

.accordion-001:not([open]) {
    margin-bottom: 7px;
}

.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 0.5em 2em;
    border-radius: 1px;
    background-color: #fff;
	border: solid 1px #0090C1;
    color: #15ACA9;
    font-weight: 600;
    cursor: pointer;
}

.accordion-001 summary::-webkit-details-marker {
    display: none;
}

.accordion-001 summary::before,
.accordion-001 summary::after {
    width: 3px;
    height: .9em;
    border-radius: 5px;
    background-color: #15ACA9;
    content: '';
}

.accordion-001 summary::before {
    position: absolute;
    right: 2em;
    rotate: 90deg;
}

.accordion-001 summary::after {
    transition: rotate .3s;
}

.accordion-001[open] summary::after {
    rotate: 90deg;
}

.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1em 2em 2em 2em;
    color: #333333;
    transition: transform .5s, opacity .5s;
	line-height: 1.5;
}
.accordion-001[open] p {
    transform: none;
    opacity: 1;
}
.program .f-03 {
	margin: 0 0 0 40px;
	font-size: 1.4rem;
}
.program .f-03 dl {
	display: flex;
}
.program .f-03 dl dt,.program .f-03 dl dd {
	line-height: 2;
}

.program .sem_title {
	justify-content: space-between;
	align-items: center;
	margin: 20px 5px 0 0px;
}
.program .sem_title h5 {
	display: block;
	margin: 0;
}
.program .sem_title p{
	font-size: 1.4rem;
}
.program .sem_title h5 p{
	padding-left: 30px;
	position: relative;
}
.program .sem_title h5 p::before {
	position: absolute;
	top:-3px;
	left: 0;
	content:"";
	width: 25px;
	height: 25px;
	background: #FFCB69;
}
.program h5 span.lb-p {
	background: #FFDEF5;
}
.program .location {
	margin: 10px 0 15px;
	font-weight: 600;
	border: solid 1px #aaa;
	padding:0px 5px;
	background:#efffef;
	}
.program .location div p {
	font-size: 1.4rem;
	line-height: 2;
}
.program .location .date {
	margin-right: 20px;
}
.program .flyer {
	width: 50%;
	margin: 0 auto;
}
.program .btn {
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
	border: 1px solid #aaa;
	border-radius: 5px;
	padding: 20px 0;
}
.program .btn a {
	display: inline-block;
	color: #fff;
    font-size: 18px;
	padding:10px 50px;
    background: #2D986B;
	background: linear-gradient(0deg,rgba(45, 152, 107, 1) 0%, rgba(100, 181, 147, 1) 50%, rgba(45, 152, 107, 1) 100%);
    border-radius: 5px;
    transition: 0.8s;
	font-weight: 700;
}
.program .btn a:hover {
	opacity: 0.8;
}
/*参加者へのご案内
-----------------------------------*/
.participants {
	
}
.participants .content_wrap {
	margin-bottom:30px;
}
.participants .content_wrap p {
	padding: 5px 10px;
	font-size: 16px;
	line-height: 1.5;
}
.participants .content_wrap ul {
	padding: 10px 10px;
}
.participants .content_wrap ul li {
	font-size: 16px;
	line-height: 1.5;
	list-style: none;
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}
.participants .content_wrap ul li:before {
	position:absolute;
	top:0;
	left:0;
	content: "●";
	color:#2d986b;
}
.participants h4 {
	position:relative;
	margin: 1rem 0 0.5rem;
	font-size:16px;
	padding-left:25px;
}
.participants h4::before {
	position:absolute;
	content:"";
	width:10px;
	height:10px;
	top:6px;
	left:10px;
	background:#2d986b;
}
.participants .content_wrap .table_scroll {
	overflow:scroll;
}

.participants .content_wrap .table_scroll table {
    font-size: 16px;
	width: 100%;
    margin: 20px;
    border-collapse: collapse;
}

.participants table{
	font-size: 16px;
	margin: 20px;
	width: calc(100% - 40px);
	border-collapse:  collapse;
}
.participants table th, .participants table td{
	border: solid 1px #999;
	padding: 10px 20px;
}
.participants table th {
	width:60%;
	text-align: left;
	font-weight: 400;
}
.participants table td {
	width: 40%;
	text-align: center;
}
.participants table tr.table_title {
	background:#2d986b;
	color: #fff;
	font-weight:600;
	letter-spacing: 0.05em;
	
}
.participants table tr.table_title th {
	font-weight:600;
	text-align:center;
}
.participants table th {
	background:#2d986b;
	color: #fff;
}
.participants table td ul li {
	text-align:left;
}
.participants ul.notes li{
	font-size:16px;
}
.participants ul.notes li::before {
	content: "※";
	color:#2d986b;
}
.participants ol {
	padding: 1rem;
	counter-reset: listnum;
	list-style:none;
}
.participants ol li {
	font-size:16px;
	line-height:1.5;
	position:relative;
	padding-left:20px;
}
.participants ol li::before {
	position:absolute;
	top:0;
	left:0;
	counter-increment: listnum;
	content: counter(listnum) ".";
}
.participants .btn {
	text-align: center;
}
.participants .btn a {
	display: inline-block;
	color: #fff;
    font-size: 18px;
	margin-top:20px;
    padding: 10px 30px;
    /*background-image: linear-gradient(90deg, #3BB699 0%, #25a4b8 100%);*/
    background-color: #94273A;
    border-radius: 5px;
    transition: 0.8s;
	font-weight: 700;
}
.participants .btn a:hover {
	opacity: 0.8;
}
.participants .flex {
	display: flex;
	justify-content:space-between;
}
.participants .flex p{
	width:75%;
}
.participants .flex p.image {
	width:25%;
}
.participants h3.ivent {
	background:#003072;
	background:linear-gradient(90deg, #002154 0%, #1b458d 100%);
}

.participants dl {
	display:flex;
	flex-wrap:wrap;
}

.participants dt {
	width:20%;
	font-size: 18px;
	padding:1rem;
}

.participants dd {
	width:80%;
	font-size: 18px;
	padding:1rem;
}

/*座長・発表者の方へ
-----------------------------------*/
.speaker{
	
}

.speaker h4 {
	font-size: 1.6em;
	color:#FFF;
    background-color:#2d986b;
	padding-left:15px;
} 

.speaker h5 {
	font-size: 1.6em;
	font-weight:600;
	line-height: 2;
	padding-left:15px;
	border-bottom:1px solid #2d986b;
	margin-top:10px;
} 

.speaker p {
	font-size: 1.6em;
	line-height: 2;
	padding: 5px 10px;
} 

.speaker .content_wrap {
	margin-bottom: 30px;
}
.speaker .text {
	padding: 10px 5px;
	font-size:15px;
}
.speaker .notes {
	font-weight: 600;
}

.speaker ul {
	padding-top:1rem;
}

.speaker li {
	list-style: none;
	position:relative;
	font-size:1.6rem;
	line-height: 1.5;
	margin-bottom: 10px;
	padding-left: 3rem;
}
.speaker li::before {
	position: absolute;
	top: 0;
	left: 1rem;
	content:"●";
	color:#2d986b;;
	margin-right:3px;
}

.speaker .content_wrap .table_scroll {
	overflow:scroll;
}

.speaker .content_wrap .table_scroll table {
    font-size: 16px;
	width: 620px;
    margin: 20px;
    border-collapse: collapse;
}

.speaker .table_wrap {
	width: 100%;
	margin: 20px 0;
}
.speaker table {
	border-collapse: collapse;
	font-size: 16px;
	border: solid 1px #aaa;
	width: 100%;
}
.speaker table tr th,.speaker table tr td {
	border: solid 1px #aaa;
	padding: 5px 10px;
}
.speaker table tr th {
	text-align: left;
	font-weight: 400;
	letter-spacing: 0.05em;
}
.speaker table tr td {
	text-align: center;
}

.speaker table .t_title th, .speaker table .t_title td{
	text-align: center;
	font-weight: 500;
	background:#006A6C;
	color: #fff;
	letter-spacing: 0.05em;
}
.speaker .text p {
	line-height: 2;
}
.speaker .flex {
	justify-content: space-between;
}
.speaker .flex .l_content {
	width:48%;
}
.speaker .flex .r_content {
	width: 49.5%;
}
.speaker .flex.p_speaker {
	justify-content: space-between;
	align-items: center;
}
.speaker .flex.p_speaker .l_content {
	width:59%;
}
.speaker .flex.p_speaker .r_content {
	width: 38%;
}
.speaker .btn_col2 {
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: 1px solid #0090C1;
	border-radius: 5px;
	padding: 20px;
}
.speaker .btn_col2 div {
	width: 45%;
	text-align: center;
}
.speaker .btn_col2 div a {
	display: block;
	color: #fff;
	font-size: 16px;
	padding: 20px;
	background-image: linear-gradient(90deg, #3BB699 0%, #25a4b8 100%);
    background-color: #43b99f;
	border-radius: 5px;
	transition: 0.8s;
}
.speaker .btn_col2 div a:hover {
	opacity: 0.7;
}

.speaker .content_wrap .table_scroll {
	width: 100%;
}
.speaker table{
	font-size: 16px;
	margin: 20px;
	width: calc(100% - 40px);
	border-collapse:  collapse;
}
.speaker table th, .speaker table td{
	border: solid 1px #999;
	padding: 10px 20px;
}
.speaker table th {
	text-align: center;
	font-weight: 400;
}
.speaker table td {
	text-align: center;
}
.speaker table tr.table_title {
	background:#2d986b;
	color: #fff;
	font-weight:600;
	letter-spacing: 0.05em;
	
}
.speaker table tr.table_title th {
	font-weight:600;
	text-align:center;
}
.speaker table th {
	background:#2d986b;
	color: #fff;
}

.speaker ol {
	padding: 1rem;
	counter-reset: listnum;
	list-style:none;
}
.speaker ol li {
	font-size:16px;
	line-height:1.5;
	position:relative;
	padding-left:20px;
}
.speaker ol li::before {
	position:absolute;
	top:0;
	left:0;
	counter-increment: listnum;
	content: counter(listnum) ".";
}

.speaker dl {
	display:flex;
	flex-wrap:wrap;
}

.speaker dt {
	width:20%;
	font-size: 18px;
	padding:1rem;
}

.speaker dd {
	width:70%;
	font-size: 18px;
	padding:1rem;
}

.speaker div.col2 {
	display:flex;
	padding:1rem;
}

.speaker .col2 > div{
	width:50%;
	margin:5px;
}

.speaker .col2 a > img:hover{
	opacity:0.7;
}

.speaker .col2 div > p {
	font-size:1.5rem;
	font-weight:600;
	background-color: #2d986b;
	color:#fff;
	text-align:center;
}

span.date2 {
	padding-left:5.8rem;
}

span.year_sp {
	display:none;
}

span.font {
	font-size:70%;
}


/*協賛募集
-----------------------------------*/
.sponcership {
	position: relative;
}
.sponcership p {
	font-size:16px;
}
.sponcership .content_wrap {
	margin-bottom:20px;
}
.sponcership .sponcership_lead {
	padding: 0 10px;
	font-size: 1.4em;
}
.sponcership .content_wrap h4 {
	font-size:20px;
	padding-bottom:3px;
	margin-bottom:7px;
	border-bottom: 1px solid #036eb8;
}
.sponcership .content_wrap.contact p {
	line-height:1.5;
}
.sponcership .sponcer_title {
	margin-top: 20px;
	text-align: center;
	color: #fff;
	letter-spacing: 0.05em;
}

.sponcership .sponcer_title p {
	display: inline-block;
	padding: 10px 20px;
	background: rgba(148, 39, 58, 0.8);
	border-radius: 5px;
	font-size: 1.8em;
	letter-spacing: 0.05em;
	box-shadow: 2px 2px 2px #aaa;
	transition: 0.8s;
}

.sponcership .sponcer_title a {
	color: #fff;
}

.sponcership .sponcer_title p:hover {
	background: #b93836;
	box-shadow: 0 0 0 #fff;
}

.sponcership .sponcer_contact {
	margin: 20px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4em;
}

.sponcership .sponcer_contact div {
	border: solid 1px #2d986b;
	border-radius: 5px;
	padding: 10px;
}

.sponcership .sponcer_contact .sponcer_contact_title {
	font-weight: 600;
}

.sponcership .sponcer_contact .sponcer_contact_overview {
	
}

.sponcership .sponcer_content_wrap {
	
}

.sponcership .sponcer_content_wrap .sponcer_content {
	display: flex;
	background: rgba(247,246,239,0.8);
	border-radius: 3px;
	box-shadow:1px 1px 1px #aaa;
	margin-bottom: 20px;
	padding: 10px;
	align-items: center;
}

.sponcer_content_wrap .sponcer_content .sponcer_content_title {
	width: calc( 30% - 3px ); 
	font-size: 1.7em;
	font-weight: 600;
}

.sponcer_content_wrap .sponcer_content .sponcer_point {
	position: relative;
	width: calc( 41% - 3px ); 
	border: solid 3px #2d9868;
	border-radius: 3px;
	font-size: 1.4em;
	padding: 5px 10px;
}

.sponcer_content_wrap .sponcer_content .sponcer_point::after {
	position: absolute;
	top: calc(50% - 10px);
	right: -35px;
	content: "";
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 16px solid #999;
}

.sponcer_content_wrap .sponcer_content .sponcer_point li {
	list-style: none;
	margin: 0 auto 10px;
}

.sponcer_content_wrap .sponcer_content .sponcer_application {
	width: calc( 28% - 3px );
	padding-left: 50px;
}

.sponcer_content .sponcer_application p {
	background:#94273a;
	border-radius: 5px;
	color: #fff;
	text-align: center;
	padding: 5px 0;
	font-size: 1.3em;
	font-weight: 600;
	box-shadow: 1px 1px 2px #999;
	transition: 0.8s;
}

.sponcer_content .sponcer_application p:hover {
	background: #b93836;
}
/*会場案内
------------------------------------------*/
.venue {
	
}
.venue h4 {
	font-size:2rem;
	margin: 2rem 0 0.5rem;
	padding-left:20px;
	position:relative;
}
.venue h4::before {
	position:absolute;
	content:"";
	top:50%;
	transform:translatey(-50%);
	left:0;
	width:12px;
	height:12px;
	background:#000;
}
.venue .content_wrap {
	margin-bottom: 30px;
}
.venue p {
	line-height:2;
}
.venue .map {
	padding:1rem 0;
}


/*お問い合わせフォーム
------------------------------------------*/
.contact_lead {
	font-size: 1.4em;
	margin-bottom: 20px;
}

.form_contact {
	
}

.form_inner {
	width: 100%;
	border-top: solid 1px #aaa;
}

.form_contact dl {
	display:flex;
	border-bottom: 1px solid #aaa;
	font-size: 1.6em;
	padding: 20px;
}

.form_contact dl dt {
	color: #15ACA9;
	width: 30%;

}

.form_contact dl dt span{
	font-size:0.8em;
	color: red;
}

.form_contact dl dd {
	
}

.form_contact dl dd input,.form_contact dl dd textarea {
	border: solid 1px #aaa;
	border-radius: 3px;
	padding: 3px 2px;
}

.form_contact .btn_submit {
	text-align: center;
	font-size: 1.8rem;
	margin: 20px 0 30px;
}

.form_contact .btn_submit input {
	background: #0090C1;
	color: #fff;
	padding: 5px 20px;
	border-radius: 15px;
} 
.thanks_lead {
	font-size:1.6em;
	margin: 30px 0 ;
}
.recaptcha {
	text-align: center;
}

/*共催セミナーお申込みフォーム
------------------------------------------------*/
#form_page .main {
	width: 1000px;
	margin: 20px auto 30px;
	list-style: none;
}
#form_page .main .inner {
	background: rgba(255,255,255,0.8);
	border-radius: 5px;
	padding: 30px;
}
#form_page .main .inner h2 {
	background: #2d986b;
	padding: 2rem 0 2rem 8px;
	font-size: 2.4rem;
	letter-spacing: 0.05em;
	color: #fff;
	border-radius: 3px;
	text-align: center;
}
#form_page .main .inner h2 span.date {
	background: #fff;
	color: #666;
	font-size: 0.85em;
	padding: 2px 5px;
	border-radius: 3px;
	margin-left: 20px;
}
.seminar_form .outline li{
	line-height: 1.5em;
}
.seminar_form li {
	list-style: none;
}
.seminar_form .square {
	color: #94273A;
	margin-right: 10px;
}
.seminar_form h3 {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	font-size: 1.6em;
	margin: 20px auto 10px;
}
.seminar_form h3:before {
	content: "●";
	color: #2d986b;
	position: absolute;
	top: 0;
	left: 0;
}
.seminar_form .price {
	font-size: 0.85em;
	margin-left: 20px;
}

.seminar_form .sponser_content {
	display: flex;
    background: rgba(247,246,239,0.9);
    border-radius: 5px;
    margin-bottom: 20px;
    padding: 20px 9px 9px 10px;
	flex-flow: column;
	box-shadow:1px 1px 1px #cecece;
}
.seminar_form .seminar_plece {
	align-items: center;
}
.seminar_form .sponser_content .plece {
	padding-left: 20px;
}
.seminar_form .sponser_content > dl {
	display: flex;
	align-items:center;
	justify-content: flex-start;
	width: 100%;
	font-size: 1.5em;
	margin-bottom: 2rem;
	border-bottom: dotted 1px #aaa;
}
.seminar_form .sponser_content.seminar_plece > dl {
	justify-content:space-between;
}
.seminar_form .sponser_content > dl > dt {
	font-weight: 400;
	/*margin-right: 20px;*/
	font-size: 1.8rem;
	line-height: 29px;
	padding-bottom:1rem;
}
.seminar_form .sponser_content > dl > dd {
	padding-bottom:1rem;
	
}
.seminar_form .lecture > dl > dd {
	margin-top: 5px;
	padding-bottom: 15px;
	border-bottom: dotted 1px #0090C1;
}
.seminar_form dl dt.dt_title {
	width: 20%;
}

.seminar_form dl dd {
	/*font-size: 1.1em;*/
}
.seminar_form .chairperson_division {
	margin-left: 20px;
}

.seminar_form dl dd.pdf_check {
	font-size: 0.9em;
}

.seminar_form dl dd input,.seminar_form select,.seminar_form textarea {
	padding: 2px 3px;
	border-radius: 3px;
	border: solid 1px #aaa;
	
}
.seminar_form .textarea {
	font-size: 1.6em;
}
.seminar_form .sponser_content h4{
	font-size: 1.4em;
	margin-bottom: 10px;
}
.seminar_form .lecture dl > dd {
	display: flex;
}

.seminar_form .btn_submit {
	text-align: center;
	font-size: 1.8rem;
	margin: 20px 0 30px;
	display: flex;
	justify-content: center;
}
.seminar_form .btn_submit input{
	background: #94273a;
	color: #fff;
	padding: 5px 20px;
	border-radius: 15px;
	transition: 0.5s;
	margin: 0 20px;
}
.seminar_form .btn_submit button {
	background: #fff;
	border: solid 1px #0090C1;
	color: #15ACA9;
	padding: 5px 20px;
	border-radius: 15px;
	transition: 0.5s;
	margin: 0 20px;
}

.seminar_form .btn_submit input:hover {
	background: #b93836;
}
.thanks {
	text-align: center;
	padding: 30px 0;
}
.thanks h3 {
	font-size: 2em;
	margin: 20px 0 30px;
}
.thanks p {
	font-size: 1.6em;
	margin-bottom: 10px;
	line-height: 1.8em;
}

/*機器展示出展お申込みフォーム*/
.seminar_form .outline {
	font-size: 1.4em;
}
.seminar_form .outline .outline_dt {
	position: relative;
    padding: 0px 0px 0px 1em;
    list-style: none;
	line-height: 1.6em;
}
.seminar_form .outline .outline_dt::before {
	position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%) rotate(45deg);
    width: 0.5em;
    height: 0.5em;
    background-color: #0090C1;
    content: "";
}
.seminar_form .outline dt {
	width: 15%;
}

.seminar_form dl dd.fax,.seminar_form dl dd span.pref {
	margin-left: 10px;
}

/*プログラム抄録広告お申込みフォーム
-----------------------------------------------------*/
.seminar_form .sponser_content .outline dd span {
	
}
span.req {
	font-size: 0.8em;
	color: red;
}
/*link*/
.link section {
	padding:2rem;
}
.link p{
	font-size:1.8rem;
}
.link p {
	margin-bottom: 15px;
}
.link a {
	color: #003670;
	text-decoration: underline;
}
/*ポスターチラシダウンロード*/
.download {
	
}
.download .flex_box{
	display:flex;
	justify-content: space-around;
	margin: 20px 0 30px;
}
.download .flex_box a {
	display: block;
	background-image: linear-gradient(90deg, #3BB699 0%, #25a4b8 100%);
	background-color: #43b99f;
	color: #fff;
	padding: 15px 20px;
	border-radius: 5px;
	font-size: 1.5em;
	transition: 0.3s;
}
.download .flex_box a:hover {
	opacity: 0.8;
}
.download > p {
	font-size: 1.4em;
}

@media screen and (max-width: 999px) {
	/* 999px以下に適用されるCSS（スモールPC用） */
	main {
        min-height: 800px;
        width: calc(100% - 290px);
		margin-right: 10px;
		margin-left: 0px;
    }
	/*会長挨拶
	 * -----------------------------------*/
	.greeting .president_profile {
		margin-top: 30px;
	}
	.greeting .profile_div {
		font-size: 1.2rem;
	}
}

@media screen and (max-width: 680px) {
	/* 680px以下に適用されるCSS（タブレット用） */
	main {
		padding:60px 10px 0;
		z-index:0;
		margin-left: 0;
	}
}

@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
		.container {
		display: flex;
		flex-flow: column-reverse;
		/*min-height: 1500px;*/
	}
	.form_contact dl {
		flex-flow: column;
	}
	.form_contact dl dt {
		width: 100%;
	}
	.form_contact dl dd {
		width: 100%;
	}
	sidebar {
		
	}
	/*プログラム・日程表*/
	.program h5 {
		margin: 10px 5px 5px;
	}
	.program h6 {
		margin-left: 10px;
	}
	.program .f-01 {
		margin: 10px 10px 20px;
	}
	.program .f-01 dl {
		flex-flow: column;
	}
	.program .f-02 {
		width: 100%;
		margin: 0 10px 20px;
		flex-flow: column;
	}
	.program .f-02 div:first-child{
		width: 100%;
	}
	.program .f-01 dl dt,.program .f-03 dl dt {
		flex-basis: 19%;
	}
	.program .f-01 dl dd,.program .f-03 dl dd {
		flex-basis: 81%;
	}
	.program .f-01 dl dt {
		width: 100%;
	}
	.program .f-03 {
		margin: 10px 10px 20px;
	}
	.program .f-03 dl {
		flex-flow: column;
	}
	.program .sem_title {
		flex-flow: column;
		align-items: start;
	}
	.program .sem_title > p {
		
	}
	.program .location {
		flex-flow: column;
		padding: 0 2px;
	}
	.program .location .date {
	margin-right: 0px;
	}
	.program .flyer {
	width: 100%;
	}

	/*座長・演者の方へ*/
	.speaker .flex {
		flex-flow: column;
	}
	.speaker .flex .l_content {
		width:100%;
	}
	.speaker .flex .r_content {
		width: 100%;
	}
	.speaker .flex.p_speaker {
		flex-flow: column;
	}
	.speaker .flex.p_speaker .l_content {
		width:100%;
	}
	.speaker .flex.p_speaker .r_content {
		width: 100%;
	}
	.speaker .btn_col2 {
		flex-flow: column;
	}
	.speaker .btn_col2 div {
		width: 100%;
	}
	.speaker .btn_col2 div:first-child {
		margin-bottom: 20px;
	}
	
	.speaker div.col2 {
    display:block;
    padding: 1rem;
	}
	
	.speaker .col2 > div {
    width: 100%;
    margin: 5px;
	}
	
	.speaker dl dt {
	width:100%;
	}
	
	.speaker dd{
	width:100%;
	}
	
	.speaker dt dd{
	font-size:1.5rem;
	}
	
	.speaker th td {
	display:table-cell
	width:100%;
	}
	
	span.year_pc {
	display:none;
	}
	
	span.year_sp {
	display:block;
	}
	
	span.date2 {
	padding-left:0;
	}
	
	span.font {
	font-size:100%;
	}
	
	/*バーチャルスライドカフェ*/
	.virtual_slide_cafe .col2 {
	display:block;
    }

	.virtual_slide_cafe .col2 > div{
	width:100%;
	padding:0.5rem;
	}
	
	.virtual_slide_cafe dl dt {
	width:100%;
	}
	
	.virtual_slide_cafe dd {
	width:100%;
	}
	
	/*参加者へのご案内*/
	.participants .flex {
	flex-flow:column;
	}
	.participants .flex p{
		width:100%;
	}
	.participants .flex p.image {
		width:122px;
		margin:0 auto;
	}

	/*協賛募集*/
	.sponcership .sponcer_content_wrap .sponcer_content {
		flex-flow: column;
	}
	.sponcer_content_wrap .sponcer_content .sponcer_content_title {
		width: 100%;
		text-align: center;
		margin-bottom: 5px;
	}
	.sponcer_content_wrap .sponcer_content .sponcer_point {
		width: 100%;
	}
	.sponcer_content_wrap .sponcer_content .sponcer_application {
		width: 70%;
		margin-top:15px;
		padding-left: 0;
	}
	.sponcer_content_wrap .sponcer_content .sponcer_point::after {
		border: none;
	}
	.seminar_form .lecture dl > dd {
		flex-flow: column;
	}
	.seminar_form .price {
		margin-left: 30px;
	}
	/*お申込みフォーム*/
	#form_page .main {
		width: 100%;
		margin: 0;
	}
	#form_page .main .inner {
		padding: 10px;
	}
	#form_page .main .inner h2 {
		padding: 5px;
	}
	#form_page .main .inner h2 span.date{
		display: block;
		margin: 10px auto;
		width: 70%;
	}
	.seminar_form h3 {
		font-size: 1.5em;
	}
	.seminar_form dl {
		flex-flow: column;
	}
	.seminar_form dl dt.dt_title {
		width: 100%;
	}
	.seminar_form dl dd {
		width: 100%;
	}
	.seminar_form dl dd input, .seminar_form dl dd select, .seminar_form textarea {
		max-width: 100%;
	}
	.seminar_form dl dd input.tel,.seminar_form dl dd input.fax {
		width: 25%;
	}
	.seminar_form .outline dt {
		width: 100%;
	}
	.seminar_form .chairperson_division {
		margin-left: 0;
		margin-top: 10px;
	}
	.seminar_form dl dd span.pref {
		display: block;
		margin-top: 10px;
		margin-left: 0;
	}
	.seminar_form dl dd.fax {
		display: block;
		margin-top: 10px;
		margin-left: 0;
	}
	/*ポスターチラシダウンロード*/
	.download .flex_box{
		flex-flow: column;
	}
	.download .flex_box a {
		text-align: center;
	}
}
