@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kantumruy+Pro:ital,wght@0,100..700;1,100..700&family=Noto+Sans+JP:wght@100..900&display=swap');
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  /*display: inline-block;*/
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
  vertical-align: -3px;
}
/* Googleアイコン - サイズ */
.material-icons.md-18 { font-size: 18px;}

/* CSS Document */
* {
  margin: 0;
  padding: 0;
}
body {
  background-repeat: repeat;
  background-position: center;
  background-image: url(../images/bg001_10.gif);
  font-size: 14px;
  font-family: 'Kantumruy Pro','Noto Sans JP','Meiryo','Hiragino Kaku Gothic ProN',sans-serif;
  color: #333;
  line-height: 1.8;
  box-sizing: border-box;
}
#warp {
  padding: 0px;
  width: 850px;
  margin-top: 0px;
  margin-right: auto;
  margin-bottom: 0px;
  margin-left: auto;
  height: auto;
  background-color: #fff;
}

/* header */
header {
  background-color: #fff;
  align-items: center;
  justify-content: space-between;
  height: 100px;
  background-image: url(../images/header.png);
  background-repeat: no-repeat;
  margin-bottom: 1rem;
}
header .container {
  display: flex;
  flex-direction: column;
}
header h1, header p {
  color: #494544;
  text-align: center;
  font-weight: bold;
}
header h1 {
  font-size: 30px;
  margin: .4rem 0 0 0;
}
header h1, header p {
  color: #100040;
  text-align: center;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 1.0);
}
header p {
  font-size: 20px;
  margin-top: -10px;
}

@media screen and (max-width: 768px) {
  header {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 10px;
  padding-right: 10px;
}
  header p {
  font-size: 16px;
}
  .site-content h1 {
    font-size: 20px !important;
    margin-bottom: 25px;
    text-align: center;
  }
  .site-content h2 {
    font-size: 18px !important;
  }
}


#contents {
  margin: 0px;
  padding: 0px;
  height: auto;
  width: 850px;
  overflow: hidden;
  background-color: #fff;
}
#contents #sidenavi {
  margin: 0px;
  float: left;
  width: 200px;
  padding-top: 1rem;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 10px;
}
#contents #main {
  padding: 0px;
  float: right;
  height: auto;
  width: 630px;
  text-decoration: none;
  margin-top: 0px;
  margin-right: 5px;
  margin-bottom: 20px;
  margin-left: 5px;
}
#contents #main2 {
  float: none;
  height: auto;
  width: 630px;
  text-decoration: none;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 100px;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
}
#footer {
  font-size: 9pt;
  margin: 0px;
  padding: 0px;
  height: 20px;
  width: 850px;
  background-color: #999;
}
/*メニュー部分*/
.navi {
  margin: 0px;
  padding: 0px;
}
#sidenavi ul {
  width: 195px;
  margin: 0px;
  list-style-type: none;
  padding: 0px;
}
#sidenavi ul li a {
  display: block;
  width: 195px;
  vertical-align: middle;
  list-style-type: none;
  text-decoration: none;
  border-top-width: 1px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-top-color: #999;
  border-right-color: #999;
  border-bottom-color: #999;
  border-left-color: #999;
  text-indent: .2rem;
  margin: 0px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: #666;
  font-size: 0.9rem;
}
#sidenavi ul li.menu {
  width: 195px;
  padding: 0;
  margin: 0;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-bottom-style: dotted;
  border-top-color: #333;
  border-right-color: #333;
  border-bottom-color: #333;
  border-left-color: #333;
}
#sidenavi ul li.menu2 {
  width: 195px;
  padding: 0;
  margin: 0;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-bottom-style: dotted;
  border-top-color: #333;
  border-right-color: #333;
  border-bottom-color: #333;
  border-left-color: #333;
  border-top-width: 1px;
  border-top-style: dotted;
}
#sidenavi ul li.menu a.active, #sidenavi ul li.menu a:focus, #sidenavi ul li.menu a:hover {
  color: #F90;
  /*margin-left: 5px;*/
  border-top-color: #999;
  border-right-color: #999;
  border-bottom-color: #999;
  border-left-color: #999;
  background-color: #fff3E8;
  border-top-width: 1px;
}
#sidenavi ul li.menu2 a.active, #sidenavi ul li.menu2 a:focus, #sidenavi ul li.menu2 a:hover {
  color: #F90;
  /*margin-left: 5px;*/
  border-top-color: #999;
  border-right-color: #999;
  border-bottom-color: #999;
  border-left-color: #999;
  background-color: #FEEEDD;
  border-top-width: 1px;
}
/*メイン部分*/
h1 {
  font-size: 1.6rem;
  font-weight: 500;
  margin: 1rem;
  text-align: center;
}
h2 {
  background-repeat: repeat;
  height: 25px;
  padding-left: 10px;
  margin-left: 10px;
  width: 590px;
  padding-top: 5px;
  font-size: 13pt;
  color: #138D1E;
  background-image: url(../images/bg001_04.gif);
  background-color: #BDCE7E;
}
h2 a:hover, .po_title a:active {
  color: #36F;
  text-decoration: none;
}
h3 {
  background-repeat: no-repeat;
  margin-left: 2rem;
  margin-top: .5rem;
  color: #EC7B03;
  background-image: url(../images/arrow067_02.gif);
  background-position: 10px 8px;
  font-weight: 700;
  font-size: 1.0rem;
  text-indent: 2rem;
}
h3 span {
  display: block;
  font-size: 12px;
  color: #EC7B03;
  text-indent: -3px;
  padding-left: 1em;
  padding-top: 8px;
  border-top: 1px solid #FC992A;
}
h4 {
  font-size: 10pt;
  color: #000;
  height: 20px;
  width: 600px;
  margin-left: 10px;
  margin-bottom: 5px;
  padding-right: 20px;
  padding-left: 20px;
}
h4.faq-h4 {
  height: auto;
}
h6 {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
  color: #000;
  text-indent: 20px;
  background-color: #EBEBEB;
  height: 20px;
  width: 600px;
  margin-left: 10px;
  padding-top: 4px;
  margin-bottom: 5px;
}
.wm {
  text-decoration: none;
  height: auto;
  width: 620px;
  padding-top: 5px;
  padding-right: 1rem;
  padding-bottom: 5px;
  padding-left: 2rem;
  text-align: left;
  float: left;
}
.wm_r {
  font-size: 10pt;
  text-decoration: none;
  height: auto;
  width: 385px;
  text-align: left;
  line-height: 15pt;
  float: left;
}
.wm_g {
  font-size: 12pt;
  text-decoration: none;
  height: auto;
  width: 100px;
  text-align: left;
  line-height: 15pt;
  font-weight: bold;
  color: #0F053D;
  float: left;
}
.wm_smallred {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 8pt;
  text-decoration: none;
  height: auto;
  width: 550px;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  color: #F00;
}
/*新着情報部分*/
#contents #main div ul li {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
  color: #333;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: #333;
  padding-bottom: 2px;
  width: 550px;
  list-style-type: none;
  padding-left: 0px;
  text-indent: 10px;
}
/*署名*/
.Signature {
  font-family: Arial, Helvetica, sans-serif;
  width: 400px;
  font-size: 9pt;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 30px;
  color: #666;
}
.red {
  color: #F00;
}
.right {
  text-align: right;
}
.komoku {
  text-indent: 60px;
}
.clear {
  clear: both;
}
.clear hr {
  display: none;
}
/*プログラム*/
.p_day {
  color: #fff;
  font-size: 1.1rem;
  width: 585px;
  background-color: #0D053C;
  padding: 0.5rem 1rem;
  clear: both;
  float: left;
}
.p_session {
  color: #333;
  font-size: 1.0rem;
  font-weight: 600;
  text-decoration: none;
  height: auto;
  width: 586px;
  margin-top: .5rem;
  margin-bottom: .5rem;
  padding: .5rem 1rem .5rem 1rem;
  clear: both;
  float: left;
  border-left-width: 5px;
  border-left-style: solid;
  border-left-color: #0D053C;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: #0D053C;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #0D053C;
  border-right-width: 5px;
  border-right-style: solid;
  border-right-color: #0D053C;
}
.p_chair {
  color: #333;
  text-decoration: none;
  height: auto;
  width: 630px;
  padding-top: 3px;
  padding-right: 5px;
  padding-bottom: 3px;
  padding-left: 30px;
  clear: both;
  float: left;
}
.p_time {
  color: #333;
  text-decoration: none;
  width: 105px;
  float: left;
  clear: right;
  padding-top: 1px;
  padding-right: 5px;
  padding-bottom: 1px;
  padding-left: 5px;
}
.p_time_b {
  color: #333;
  text-decoration: none;
  width: 105px;
  float: left;
  clear: right;
  border-top-width: 1px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-top-style: solid;
  border-top-color: #0D053C;
  border-right-color: #0D053C;
  border-bottom-color: #0D053C;
  border-left-color: #0D053C;
  padding-top: 1px;
  padding-right: 5px;
  padding-bottom: 1px;
  padding-left: 5px;
}
.p_title {
  color: #333;
  text-decoration: none;
  height: auto;
  width: 500px;
  float: right;
  clear: right;
  padding-top: 1px;
  padding-right: 5px;
  padding-bottom: 1px;
  padding-left: 5px;
  position: relative;
}
.p_title img {
  position: absolute;
  left: -20px;
}
.chair {
  float: right;
  font-size: .8rem;
  font-weight: 400;
  padding-top: .2rem;
}
.p_author {
  color: #333;
  text-decoration: none;
  height: auto;
  width: 450px;
  padding-left: 50px;
  float: right;
  clear: right;
  padding-top: 1px;
  padding-right: 5px;
  padding-bottom: 1px;
}
.p_break {
  color: #333;
  text-decoration: none;
  height: auto;
  width: 505px;
  text-align: center;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: #0D053C;
  border-right-color: #0D053C;
  border-bottom-color: #0D053C;
  border-left-color: #0D053C;
  clear: right;
  float: right;
  padding-top: 1px;
  padding-right: 5px;
  padding-bottom: 1px;
  padding-left: 5px;
}
.reg_main {
  color: #333;
  text-decoration: none;
  height: auto;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  line-height: 15pt;
}
.reg_pay {
  color: #333;
  text-decoration: none;
  height: auto;
  padding-top: 5px;
  padding-right: 30px;
  padding-bottom: 5px;
  padding-left: 30px;
  line-height: 15px;
}
.reg_pay p {
  margin: 1.5em 0 -1em;
  padding: 0.5em 0;
  border-top: dotted #777 1px;
  border-bottom: dotted #777 1px;
}
.reg_table {
  text-decoration: none;
  height: auto;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 30px;
  text-align: left;
  line-height: 15pt;
  float: left;
  border-collapse: collapse;
  border: solid 1px #ddd;
}
.reg_table th, .reg_table td {
  border-bottom: solid 1px #eee;
  border-left: solid 1px #eee;
  padding: 15px;
}
.reg_table th {
  background: #eee;
  border-bottom: solid 1px #ddd;
}
.mem_table {
  text-decoration: none;
  height: auto;
  width: 550px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  border-collapse: collapse;
  border: solid 1px #ddd;
}
.mem_table th, .mem_table td {
  border-bottom: solid 1px #ddd;
  border-left: solid 1px #ddd;
  padding: .5rem;
}
.mem_table th {
  background-color: #eee;
  border-bottom: solid 1px #ddd;
  font-weight: 400;
}

/*ポスタープログラム*/
table .program {
  font-size: 12px;
  line-height: 16px;
}
.program tr .number {
  vertical-align: top;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #CCCCCC;
  width: 30px;
  font-weight: bold;
  padding-top: 1rem;
}
.po_title a {
  color: #1E1289;
  text-decoration: none;
}

.po_title a:hover {
  opacity: 0.5 ;
  transition: .3s;
}

.program tr .po_title {
  vertical-align: top;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #CCCCCC;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: .9rem;
  color: #333;
}
.program tr .po_title a:hover, .po_title a:active {
  color: #F60;
}
.po_author {
  color: #333;
  text-decoration: none;
  text-align: right;
  font-size: .9rem;
  margin-top: 1rem;
}
.p_m1 {
  font-size: 10pt;
  color: #333;
  text-decoration: none;
  text-align: left;
}
.p_m2 {
  font-size: 10pt;
  color: #333;
  text-decoration: none;
  text-align: left;
}
#main div .nai {
  margin-left: 35px;
}
#main div .nai2 {
  margin-left: 35px;
}
.warning {
  font-size: 12px;
  padding: 10px;
  box-sizing: border-box;
  color: #DC080B;
  border: dashed 1px #DC080B;
  margin-bottom: 15px;
  background-color: #fffAFA;
}
.warning a {
  color: #5E4040;
}
.warning a:hover {
  opacity: 0.8;
}
.warning a.download-btn {
  display: inline-block;
  background-color: #1F0D96;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  padding: 0.3em 0.5em;
  margin: 0.5em 0 0;
  border-radius: 5px;
  box-shadow: 0 0 12px -6px rgba(0, 0, 0, 0.5);
}
.form-btn {
  padding: 10px 40px;
  background: #f29100;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  border-radius: 10px;
  box-shadow: 0 3px 5px rgba(10, 10, 10, 0.2);
}
.form-btn.no-active {
  background-color: #C3C3C3;
  pointer-events: none;
}
.form-btn:hover {
  opacity: 0.5;
  transition-duration: 500ms;
}
div.btn-control {
  padding: 2em 0 0.5em;
  margin-left: -8em;
}
div.btn-control a {
  padding: 1em;
  background-color: #1F0D96;
  color: #ffffff;
  font-weight: 600;
  text-decoration: none;
  border-radius: 5px;
  box-shadow: 0px 2px 2px 1px rgba(10, 10, 10, 0.5);
}
div.btn-control a:hover {
  opacity: 0.5;
  transition-duration: 500ms;
}
/*---------------------------
2021年追加
---------------------------*/
/*index.htmlの協賛等のリンク*/
div.frame_box a {
  color: rgba(0, 81, 120, 1.00);
  text-decoration: none;
  line-height: 1.8;
}
div.frame_box a:hover {
  opacity: 0.5;
  transition-duration: 0.3s;
}
/*---------------------------
2023年追加
---------------------------*/
.txt_box {
  margin-bottom: 1rem;
  line-height: 1.8;
}
/* flexbox */
.frame_box {
  display: flex;
  justify-content: space-between;
  border-bottom: #ddd dotted 1px;
}
.frame_box:last-child {
  border-bottom: none;
}
.left_box, .right_box {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.8;
}
.left_box {
  width: 18%;
  padding: .5rem 1rem .5rem .5rem;
  color: #0D053C;
  font-size: .9rem;
  font-weight: 600;
  text-align: right;
}
.right_box {
  padding: .6rem 1rem .5rem .5rem;
  width: 84%;
}
/* flexbox -- program */
.frame_box_p {
  display: flex;
  justify-content: space-between;
  width: 600px;
  clear: both;
  float: left;
}

.frame_box_p a {
  color: #1E1289;
  text-decoration: none;
}

.frame_box_p a:hover {
  opacity: 0.5 ;
  transition: .3s;
}

.frame_box_p:last-child {
  border-bottom: none;
}
.left_box_p, .right_box {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.8;
}
.left_box_p {
  width: 20%;
  padding: .5rem;
  color: #0D053C;
  font-size: .9rem;
  font-weight: 400;
  text-align: right;
}
.right_box_p {
  padding: .5rem;
  width: 100%;
}
.p_ss {
  font-size: .9rem;
  font-weight: 500;
}
.mg-1 {
  margin-bottom: 1rem;
}
.mg-2 {
  margin-bottom: 2rem;
}
.mt--1 {
  margin-top: -1.0rem;
}
.mt-1 {
  margin-top: 1rem;
}
.mt-2 {
  margin-top: 2rem;
}
.ct {
  text-align: center;
}
.rt {
  text-align: right;
}
.tit_border {
  color: #f29100;
  border-bottom: dashed 1px #f29100;
  font-weight: 600;
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
.tit_center {
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
}
.underline {
  border-bottom: double;
  border-color: #4682b4;
}
.b_ss {
  font-size: 1.0rem;
  font-weight: 600;
}
/* FAQ */
.qa-008 dt {
  margin-bottom: 1em;
  color: #333333;
  font-weight: 600;
}
.qa-008 dt::before, .qa-008 dd::before {
  margin-right: .4em;
}
.qa-008 dt::before {
  content: "Q.";
}
.qa-008 dd {
  margin: 0 0 2.5em;
  padding: 1em 1.5em;
  background-color: #f2f2f2;
  color: #333333;
}
.qa-008 dd::before {
  content: "A.";
}

/* インデント */
.indent {
  text-indent: -1em;
  padding-left: 1em;
  padding-bottom: .5em;
}

/* reg.html 特別参加企業 */
.list-001 {
  list-style-type: disc;
  padding: 1em 1em 1em 4em;
}
.list-001 li {
  padding: .3em .3em .3em 0;
}
.list-001 li::marker {
  color: #788187;
  font-size: 1.1em;
}

/* PO_Plogram.html 小見出し テキスト装飾 */
.po_tit {
	position: relative;
	padding-left: 1.4rem;
  margin-top: 1rem;
  font-size: 1.1rem;
}
.po_tit:before {
	position: absolute;
	font-family: "Material Icons";
	content: "\e86c";
	left: 0;
	top: 0;
	font-weight: 900;
	font-size: 1.2rem;
	color: #27acd9;
}
.po_date {
  margin: 1rem 0 2rem 1rem;
}

/* PO_Plogram.html ボタン */
.po_button {
  background-color: #e1ecf4;
  border-radius: 3px;
  border: 1px solid #7aa7c7;
  box-shadow: rgba(255, 255, 255, .7) 0 1px 0 0 inset;
  box-sizing: border-box;
  color: #0D053C;
  cursor: pointer;
  display: inline-block;
  line-height: 1.15385;
  margin: 0;
  outline: none;
  padding: 8px .8em;
  position: relative;
  text-align: center;
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  vertical-align: baseline;
  white-space: nowrap;
}

.po_button:hover,
.po_button:focus {
  background-color: #b3d3ea;
  color: #0D053C;
}
.po_button:focus {
  box-shadow: 0 0 0 4px rgba(0, 149, 255, .15);
}
.po_button:active {
  background-color: #a0c7e4;
  box-shadow: none;
  color: #0D053C;
}

/* past.html 左寄せ中央配置 */
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, 120px);
  /*justify-content: center;*/
  place-items: center;
  grid-gap: 1rem;
}
.past_item {
  margin: 1rem auto;
  width: 15%;
}

/* past.html table */
.past_div {
  border-collapse: collapse;
  padding-left: 20px;
  margin-bottom: 2rem;
}
.past_table02 {
 width: 95%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
 background-image: radial-gradient( circle 343px at 46.3% 47.5%,  rgba(242,242,242,1) 0%, rgba(241,241,241,1) 72.9% );
 color: #1b1b1b;
}
.past_table02 th,
.past_table02 td {
 padding: 10px;
 border: solid 1px #fff;
 text-align: center;
}
.past_table02 th a,
.past_table02 td a {
  text-decoration: none;
  color: rgba(0, 81, 120, 1.00);
  display: block;
}
.past_table02 th a:hover,
.past_table02 td a:hover {
  opacity: 0.7;
  color: #fff;
  background-color: #F90;
}


/* reg.html ボタン横並び */
*, *:before, *:after {
    box-sizing: border-box;
}
.col_2{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.col_2 > *{
    width: calc( 50% - 6px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.col_2 > *:nth-child(2n){
    margin-right: auto;
}
.col_2 > * > *{
    /*background: #ff0000;*/
    height: 120px;
    position: relative;
    overflow: hidden
}
@media screen and (max-width: 960px) {
    .col_2 > *{
        width: 100%;
        margin-right: auto;
    }
}

/* 20250509追加 - index.html */
.box_notice {
  padding: 0.5em 1em;
  margin: 2em 0;
  font-weight: bold;
  border: solid 1px #666;
}
.box_notice p {
  font-weight: 400;
  padding: 0.4rem;
}
.box_notice h1 {
  border-bottom: solid 1px #CA191B;
  position: relative;
  font-size: 1.0rem;
  text-align: left;
  color: #CA191C;
  margin: 0.4rem !important;
}

hr {
  border: 0.5px #666 solid;
  margin: 1.5rem 0 0 0 ;
}