@charset "UTF-8";
/*----------------------------------------*/
/*less　変数設定                       
/*----------------------------------------*/
/*clearfix*/
/*透過*/
/*インラインボックス*/
@import "reset.css";
.inline_block {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
/*シャドウ*/
/*角丸処理*/
/*アニメーション*/
/* 点滅 */
.blinking {
  -webkit-animation: blink 0.6s ease infinite alternate;
  -moz-animation: blink 0.6s ease infinite alternate;
  animation: blink 0.6s ease infinite alternate;
}
@-webkit-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* 点滅 */
.anime {
  -webkit-animation: colorful 0.9s ease-in-out infinite alternate;
  -moz-animation: colorful 0.9s ease-in-out infinite alternate;
  animation: colorful 0.9s ease-in-out infinite alternate;
}
@-webkit-keyframes colorful {
  0% {
    background-color: orange;
  }
  100% {
    background-color: orangered;
  }
}
@-moz-keyframes colorful {
  0% {
    background-color: orange;
  }
  100% {
    background-color: orangered;
  }
}
@keyframes colorful {
  0% {
    background-color: orange;
  }
  100% {
    background-color: orangered;
  }
}
/*-------------------------------------------------*/
/*Flexbox*/
.flexbox {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
/*-------------------------------------------------*/
/*-------------------*/
/*マージン*/
/*-------------------*/
/*トップ*/
.marginT5 {
  clear: both;
  margin-top: 5px;
}
.marginT10 {
  clear: both;
  margin-top: 10px;
}
.marginT15 {
  clear: both;
  margin-top: 20px;
}
.marginT20 {
  clear: both;
  margin-top: 20px;
}
.marginT30 {
  clear: both;
  margin-top: 30px;
}
.marginT40 {
  clear: both;
  margin-top: 40px;
}
.marginT50 {
  clear: both;
  margin-top: 50px;
}
.marginT60 {
  clear: both;
  margin-top: 60px;
}
/*ボトム*/
.marginB5 {
  clear: both;
  margin-bottom: 5px;
}
.marginB10 {
  clear: both;
  margin-bottom: 10px;
}
.marginB15 {
  clear: both;
  margin-bottom: 15px;
}
.marginB20 {
  clear: both;
  margin-bottom: 20px;
}
.marginB30 {
  clear: both;
  margin-bottom: 30px;
}
.marginB40 {
  clear: both;
  margin-bottom: 40px;
}
.marginB50 {
  clear: both;
  margin-bottom: 50px;
}
.marginB60 {
  clear: both;
  margin-bottom: 60px;
}
/*レフト*/
.marginL5 {
  clear: both;
  margin-left: 5px;
}
.marginL10 {
  clear: both;
  margin-left: 10px;
}
.marginL15 {
  clear: both;
  margin-left: 20px;
}
.marginL20 {
  clear: both;
  margin-left: 20px;
}
.marginL30 {
  clear: both;
  margin-left: 30px;
}
.marginL40 {
  clear: both;
  margin-left: 40px;
}
.marginL50 {
  clear: both;
  margin-left: 50px;
}
/*ライト*/
.marginR5 {
  clear: both;
  margin-right: 5px;
}
.marginR10 {
  clear: both;
  margin-right: 10px;
}
.marginR15 {
  clear: both;
  margin-right: 15px;
}
.marginR20 {
  clear: both;
  margin-right: 20px;
}
.marginR30 {
  clear: both;
  margin-right: 30px;
}
.marginR40 {
  clear: both;
  margin-right: 40px;
}
.marginR50 {
  clear: both;
  margin-right: 50px;
}
.marginR60 {
  clear: both;
  margin-right: 60px;
}
/*トップ&ボトム*/
.marginTB5 {
  clear: both;
  margin: 5px 0px;
}
.marginTB10 {
  clear: both;
  margin: 10px 0px;
}
.marginTB15 {
  clear: both;
  margin: 15px 0px;
}
.marginTB20 {
  clear: both;
  margin: 20px 0px;
}
.marginTB30 {
  clear: both;
  margin: 30px 0px;
}
.marginTB40 {
  clear: both;
  margin: 40px 0px;
}
.marginTB50 {
  clear: both;
  margin: 50px 0px;
}
.marginTB60 {
  clear: both;
  margin: 60px 0px;
}
/*レフト&ライト*/
.marginLR5 {
  clear: both;
  margin: 0px 5px;
}
.marginLR10 {
  clear: both;
  margin: 0px 10px;
}
.marginLR15 {
  clear: both;
  margin: 0px 15px;
}
.marginLR20 {
  clear: both;
  margin: 0px 20px;
}
.marginLR30 {
  clear: both;
  margin: 0px 30px;
}
.marginLR40 {
  clear: both;
  margin: 0px 40px;
}
.marginLR50 {
  clear: both;
  margin: 0px 50px;
}
.marginLR60 {
  clear: both;
  margin: 0px 60px;
}
/*-------------------*/
/*パディング*/
/*-------------------*/
/*トップ*/
.paddingT5 {
  clear: both;
  padding-top: 5px;
}
.paddingT10 {
  clear: both;
  padding-top: 10px;
}
.paddingT15 {
  clear: both;
  padding-top: 20px;
}
.paddingT20 {
  clear: both;
  padding-top: 20px;
}
.paddingT30 {
  clear: both;
  padding-top: 30px;
}
.paddingT40 {
  clear: both;
  padding-top: 40px;
}
.paddingT50 {
  clear: both;
  padding-top: 50px;
}
.paddingT60 {
  clear: both;
  padding-top: 60px;
}
/*ボトム*/
.paddingB5 {
  clear: both;
  padding-bottom: 5px;
}
.paddingB10 {
  clear: both;
  padding-bottom: 10px;
}
.paddingB15 {
  clear: both;
  padding-bottom: 15px;
}
.paddingB20 {
  clear: both;
  padding-bottom: 20px;
}
.paddingB30 {
  clear: both;
  padding-bottom: 30px;
}
.paddingB40 {
  clear: both;
  padding-bottom: 40px;
}
.paddingB50 {
  clear: both;
  padding-bottom: 50px;
}
.paddingB60 {
  clear: both;
  padding-bottom: 60px;
}
/*レフト*/
.paddingL5 {
  clear: both;
  padding-left: 5px;
}
.paddingL10 {
  clear: both;
  padding-left: 10px;
}
.paddingL15 {
  clear: both;
  padding-left: 20px;
}
.paddingL20 {
  clear: both;
  padding-left: 20px;
}
.paddingL30 {
  clear: both;
  padding-left: 30px;
}
.paddingL40 {
  clear: both;
  padding-left: 40px;
}
.paddingL50 {
  clear: both;
  padding-left: 50px;
}
/*ライト*/
.paddingR5 {
  clear: both;
  padding-right: 5px;
}
.paddingR10 {
  clear: both;
  padding-right: 10px;
}
.paddingR15 {
  clear: both;
  padding-right: 15px;
}
.paddingR20 {
  clear: both;
  padding-right: 20px;
}
.paddingR30 {
  clear: both;
  padding-right: 30px;
}
.paddingR40 {
  clear: both;
  padding-right: 40px;
}
.paddingR50 {
  clear: both;
  padding-right: 50px;
}
.paddingR60 {
  clear: both;
  padding-right: 60px;
}
/*トップ&ボトム*/
.paddingTB5 {
  clear: both;
  padding: 5px 0px;
}
.paddingTB10 {
  clear: both;
  padding: 10px 0px;
}
.paddingTB15 {
  clear: both;
  padding: 15px 0px;
}
.paddingTB20 {
  clear: both;
  padding: 20px 0px;
}
.paddingTB30 {
  clear: both;
  padding: 30px 0px;
}
.paddingTB40 {
  clear: both;
  padding: 40px 0px;
}
.paddingTB50 {
  clear: both;
  padding: 50px 0px;
}
.paddingTB60 {
  clear: both;
  padding: 60px 0px;
}
/*レフト&ライト*/
.paddingLR5 {
  clear: both;
  padding: 0px 5px;
}
.paddingLR10 {
  clear: both;
  padding: 0px 10px;
}
.paddingLR15 {
  clear: both;
  padding: 0px 15px;
}
.paddingLR20 {
  clear: both;
  padding: 0px 20px;
}
.paddingLR30 {
  clear: both;
  padding: 0px 30px;
}
.paddingLR40 {
  clear: both;
  padding: 0px 40px;
}
.paddingLR50 {
  clear: both;
  padding: 0px 50px;
}
.paddingLR60 {
  clear: both;
  padding: 0px 60px;
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP Regular"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: bold;
  font-weight: 700;
  src: local("Noto Sans CJK JP Bold"), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}
/********************/
/**** ページ基礎 ****/
/********************/
html {
  scroll-behavior: smooth;
}
body {
  font-family: 'Noto Sans JP', "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.5;
  font-size: 14px;
  color: #333333;
  background: white;
  /* font-feature-settings: "palt"; */
}
a {
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  color: #414b99;
  text-decoration: none;
}
a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.wrapper {
  margin: 0 auto;
  max-width: 980px;
  min-width: 980px;
  overflow: hidden;
  zoom: 1;
}
/* PC表示 */
.smp {
  display: none;
}
.pc {
  display: block;
}
/* ページトップへ */
#page-top {
  position: fixed;
  bottom: 2%;
  right: 2%;
  z-index: 1000 !important;
}
#page-top a {
  display: block;
  color: #333333;
  font-size: 30px;
  text-align: center;
  line-height: 60px;
  width: 60px;
  height: 60px;
  background: #ebd532;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
#page-top a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
/* #page-top */
#bnrarea {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000 !important;
  background: rgba(0, 0, 0, 0.7);
  transition: .5s;
  padding: 15px;
}
#bnrarea ul {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /*
	●水平方向の揃え方
	space-between：初期値。均等に間隔を空ける
	space-around：「space-between」と同じく均等に間隔を空ける。違うのは、左右の端のFlexアイテムにも半分ずつ間隔を空けてるところ。
	flex-start：横配置の場合、「左揃え」、縦配置の場合、「上揃え」になります。
	flex-end：横配置の場合「右揃え」、縦配置の場合「下揃え」になります。
	center：「中央揃え」です。
	*/
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}
#bnrarea ul li {
  width: 23%;
}
#bnrarea ul li img {
  width: 100%;
  height: auto;
}
#bnrarea ul li a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
/******************/
/**** ヘッダー ****/
/******************/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 1085px;
  z-index: 999;
  height: 115px;
  padding: 17px;
  background: white;
  border-bottom: 5px solid #324f99;
  transition: .3s;
  overflow: hidden;
  zoom: 1;
}
header h1 {
  float: left;
  margin-top: 8px;
}
header nav {
  float: right;
}
header nav li {
  margin-left: 1em;
}
header nav li a {
  color: #333333;
  text-decoration: none;
  font-weight: bold;
}
header nav .subNavi,
header nav .globalNavi {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  float: right;
}
header nav .subNavi a,
header nav .globalNavi a {
  font-size: 13px;
}
header nav .globalNavi {
  clear: both;
  margin-top: 20px;
}
header nav .globalNavi li {
  margin-left: 1.3em;
}
header nav .globalNavi li a {
  font-size: 15px;
}
header nav .globalNavi .form a,
header nav .globalNavi .regist a,
header nav .globalNavi .login a {
  background: #414b99;
  color: white;
  padding: 7px 15px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
header nav .globalNavi .form a i,
header nav .globalNavi .regist a i,
header nav .globalNavi .login a i {
  font-size: 1.2em;
  margin-right: 3px;
}
header nav .globalNavi .regist a {
  background: #ebd532;
  color: black;
}
/*header*/
/****************/
/**** メイン ****/
/****************/
main {
  display: block;
  padding-top: 115px;
  /************************/
  /**** 共通コンテンツ ****/
  /************************/
  /* article.cnts */
}
main article {
  /* ページ内ヘッダー */
  /* ページ内メニュー */
  /* コンテンツ共通 */
  /* section.cnt */
}
main article section#head {
  width: 100%;
  height: 144px;
  background: url(../img/common/bg.jpg);
  background-size: cover;
  background-position: 50% 45%;
  background-repeat: no-repeat;
}
main article section#head h1 {
  font-size: 36px;
  line-height: 144px;
  color: #324f99;
  text-shadow: #ffffff 2px 2px 1px, #ffffff -2px 2px 1px, #ffffff 2px -2px 1px, #ffffff -2px -2px 1px;
}
main article section#menu {
  background: #324f99;
}
main article section#menu .wrapper {
  padding: 20px 0;
}
main article section#menu ul {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /* .justify-content; */
}
main article section#menu ul li {
  font-weight: bold;
  font-size: 15px;
  color: white;
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  padding-left: 1em;
  margin-left: 1em;
}
main article section#menu ul li:nth-child(1) {
  margin-left: 0;
  padding-left: 0;
  border: none;
}
main article section#menu ul li a {
  text-decoration: none;
  color: white;
}
main article section.cnt,
main article section.cnt_2 {
  background: #f5f5f4;
  /* h1 */
  /* 準備中 */
}
main article section.cnt .wrapper,
main article section.cnt_2 .wrapper {
  padding: 50px 0;
}
main article section.cnt h1,
main article section.cnt_2 h1 {
  color: rgba(255, 255, 255, 0.9);
  font-size: 24px;
  line-height: 1;
  width: 100%;
  padding: 10px 0 10px 15px;
  margin-bottom: 15px;
  background-image: url("../img/common/bg_title.png");
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
main article section.cnt h2,
main article section.cnt_2 h2 {
  font-size: 24px;
  color: #40498B;
  margin: 30px 0 10px 0;
}
main article section.cnt h2 span.small,
main article section.cnt_2 h2 span.small {
  font-size: 0.7em;
  vertical-align: middle;
}
main article section.cnt h3,
main article section.cnt_2 h3 {
  font-size: 18px;
  margin: 30px 0 5px 0;
}
main article section.cnt i,
main article section.cnt_2 i {
  font-size: 1.2em;
  margin-right: 5px;
  vertical-align: middle;
}
main article section.cnt .yet,
main article section.cnt_2 .yet {
  background: #f5f5f4;
  padding: 90px 0;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
main article section.cnt .yet h2,
main article section.cnt_2 .yet h2,
main article section.cnt .yet h3,
main article section.cnt_2 .yet h3 {
  text-align: center;
  margin: 0;
}
main article section.cnt_2 {
  background: white;
}
/* main */
/******************/
/**** フッター ****/
/******************/
footer {
  background: white;
}
footer ul {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /*
	●水平方向の揃え方
	space-between：初期値。均等に間隔を空ける
	space-around：「space-between」と同じく均等に間隔を空ける。違うのは、左右の端のFlexアイテムにも半分ずつ間隔を空けてるところ。
	flex-start：横配置の場合、「左揃え」、縦配置の場合、「上揃え」になります。
	flex-end：横配置の場合「右揃え」、縦配置の場合「下揃え」になります。
	center：「中央揃え」です。
	*/
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}
footer ul li {
  width: 23%;
}
footer ul li img {
  width: 100%;
  height: auto;
}
footer .wrapper {
  padding: 50px 0;
}
footer h1 {
  font-size: 24px;
}
footer address {
  text-align: center;
  background: #324f99;
  padding: 50px;
  color: rgba(255, 255, 255, 0.5);
}
/*footer*/
/****************************/
/**** 各ページの読み込み ****/
/****************************/
/* 総合ップページ */
/* LESS Document */
/********************/
/**** 総合トップ ****/
/********************/
html#general {
  overflow: hidden;
}
html#general body main {
  background-color: #324f99;
  background: url(../img/common/bg.jpg);
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: 100vw;
  height: 100vh;
  position: relative;
  overflow: hidden;
}
html#general body main section#main {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 870px;
  height: auto;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  text-align: center;
}
html#general body main section#main .logo img {
  width: 100%;
}
html#general body main section#main .date {
  margin: 3% 0;
}
html#general body main section#main .sponsor {
  font-weight: bold;
  text-shadow: #ffffff 2px 2px 1px, #ffffff -2px 2px 1px, #ffffff 2px -2px 1px, #ffffff -2px -2px 1px;
}
html#general body main section#main ul {
  width: 100%;
  margin: 3% auto 0;
}
html#general body main section#main ul li {
  display: inline-block;
}
html#general body main section#main ul li a {
  -webkit-animation: colorful 0.9s ease-in-out infinite alternate;
  -moz-animation: colorful 0.9s ease-in-out infinite alternate;
  animation: colorful 0.9s ease-in-out infinite alternate;
  display: inline-block;
  font-weight: bold;
  font-size: 24px;
  color: white;
  text-decoration: none;
  background: #414b99;
  padding: 10px 0;
  width: 250px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
html#general body main section#main .link_new {
  font-weight: bold;
  font-size: 1.2em;
  color: red;
  margin-top: 3%;
}
html#general body main section#main .link_new a {
  display: inline-block;
  border: 2px solid red;
  padding: 5px 10px;
  margin-top: 10px;
  font-weight: bold;
  color: red;
  background: white;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
/* サイトップページ・ダウンロード・アクセス・お問合せ */
/* LESS Document */
/**********************/
/**** サイトトップ ****/
/**********************/
body#top {
  /* #headをスライダーに（とりあえず非表示） */
  /* ページ内ヘッダー */
  /* 感染症対策 */
  /* みる・はかる・未来へつなぐ科学機器展とは？ */
  /* ごあいさつ */
  /* 開催概要 */
}
body#top #image {
  background: black;
}
body#top #image .wrapper {
  position: relative;
}
body#top #image ul.bxslider {
  text-align: center;
  height: 551px;
}
body#top #image ul.bxslider li {
  text-align: center;
  width: 100%;
}
body#top #image ul.bxslider li iframe {
  width: 980px;
  height: 551px;
}
body#top #image ul.custom-thumb {
  position: absolute;
  left: 0;
  top: 115px;
  width: 122px;
}
body#top #image ul.custom-thumb li {
  width: 100%;
}
body#top #image ul.custom-thumb li img {
  width: 100%;
  height: auto;
}
body#top #head {
  width: 100%;
  height: 560px;
  background: url(../img/common/bg.jpg);
  background-size: cover;
  background-position: 50% 80%;
  background-repeat: no-repeat;
  position: relative;
}
body#top #head .wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 870px;
  height: auto;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  text-align: center;
}
body#top #head .wrapper .date {
  margin: 2% 0;
}
body#top #head .wrapper .sponsor {
  font-weight: bold;
  text-shadow: #ffffff 2px 2px 1px, #ffffff -2px 2px 1px, #ffffff 2px -2px 1px, #ffffff -2px -2px 1px;
}
body#top #head .wrapper .link_new {
  font-weight: bold;
  font-size: 1.2em;
  color: red;
  margin-top: 3%;
}
body#top #head .wrapper .link_new a {
  display: inline-block;
  border: 2px solid red;
  padding: 5px 10px;
  margin-top: 10px;
  font-weight: bold;
  color: red;
  background: white;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
body#top #number table {
  width: 100%;
  margin-bottom: 5px;
}
body#top #number table td,
body#top #number table th {
  border: 1px solid #ccc;
  vertical-align: middle;
  text-align: center;
  padding: 5px 0;
  background: rgba(255, 255, 255, 0.5);
}
body#top #number table th {
  background: #ebd532;
}
body#top #number h2 {
  text-align: center;
  font-size: 1.6em;
  margin: 1em 0 0 0;
}
body#top #number .btn {
  margin: 1em 0 0 0;
  text-align: center;
}
body#top #number .btn a {
  display: inline-block;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: white;
  text-decoration: none;
  background: #414b99;
  padding: 10px 0;
  width: 250px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
body#top #number .btn a i {
  font-size: 1.2em;
  vertical-align: middle;
}
body#top #counterplan {
  background: #ebd532;
}
body#top #counterplan .wrapper {
  padding: 20px 0;
}
body#top #counterplan h1 {
  font-size: 1.2em;
}
body#top #features {
  background-color: #324f99;
  background-image: url(../img/top/bg_features.png);
  background-size: 500px;
  background-position: 113% 10%;
  background-repeat: no-repeat;
}
body#top #features .wrapper {
  padding: 40px 0 0;
}
body#top #features img {
  width: 100%;
  height: auto;
}
body#top .greeting {
  background: white;
}
body#top .greeting p {
  color: #333333;
  margin-top: 1.5em;
}
body#top .greeting .name {
  text-align: right;
  font-weight: bold;
}
body#top .outline table {
  width: 100%;
}
body#top .outline table td,
body#top .outline table th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 15px;
  vertical-align: middle;
}
body#top .outline table th {
  width: 20%;
  text-align: center;
  background: #e0e5f0;
}
/* サイトトップ */
/**********************/
/**** ダウンロード ****/
/**********************/
body#download {
  /* プレスリリース */
  /* ロゴ・バナー */
}
body#download .press ul {
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  padding: 30px;
}
body#download .press ul li {
  border-top: 2px dotted #ccc;
  padding-top: 20px;
  margin-top: 20px;
}
body#download .press ul li dl {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  font-size: 1.1em;
}
body#download .press ul li dl dt {
  width: 18%;
  font-weight: bold;
}
body#download .press ul li:first-child {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}
body#download .logo .list {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /*
	●水平方向の揃え方
	space-between：初期値。均等に間隔を空ける
	space-around：「space-between」と同じく均等に間隔を空ける。違うのは、左右の端のFlexアイテムにも半分ずつ間隔を空けてるところ。
	flex-start：横配置の場合、「左揃え」、縦配置の場合、「上揃え」になります。
	flex-end：横配置の場合「右揃え」、縦配置の場合「下揃え」になります。
	center：「中央揃え」です。
	*/
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  /*
	●子要素の折り返し設定
	wrap:初期値。折り返しを許可、「複数行」。
	nowrap:折り返しなし、つまり「単一行」。
	wrap-reverse:「wrap」と同じで、ただ、折り返し地点が逆になります。
	*/
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
body#download .logo .list li {
  width: 48%;
  text-align: center;
}
body#download .logo .list li div {
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  width: 100%;
  height: 200px;
  position: relative;
}
body#download .logo .list li div img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
body#download .logo .list li .detail {
  text-align: center;
  margin-top: 5px;
  font-weight: bold;
  font-size: 1.2em;
}
body#download .logo .list li a {
  display: inline-block;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: white;
  text-decoration: none;
  background: #414b99;
  padding: 10px 0;
  margin: 20px 0 5px;
  width: 200px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
body#download .logo li:nth-child(3) {
  width: 100%;
  margin-top: 30px;
}
body#download .logo li:nth-child(3) div {
  height: 260px;
}
body#download .logo .check {
  font-size: 1.1em;
  margin-top: 40px;
  text-align: center;
}
/* ダウンロード */
/******************/
/**** アクセス ****/
/******************/
body#access {
  /* アクセス */
}
body#access .traffic .box {
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  width: 100%;
  height: 600px;
  position: relative;
}
body#access .traffic .box img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
body#access .traffic ul {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /*
	●水平方向の揃え方
	space-between：初期値。均等に間隔を空ける
	space-around：「space-between」と同じく均等に間隔を空ける。違うのは、左右の端のFlexアイテムにも半分ずつ間隔を空けてるところ。
	flex-start：横配置の場合、「左揃え」、縦配置の場合、「上揃え」になります。
	flex-end：横配置の場合「右揃え」、縦配置の場合「下揃え」になります。
	center：「中央揃え」です。
	*/
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}
body#access .traffic ul li {
  width: 48%;
}
body#access .traffic ul li .box {
  height: 250px;
}
body#access .traffic ul li .txt {
  margin-left: 1.2em;
  text-indent: -1.2em;
}
body#access .traffic ul li i {
  color: #40498B;
}
body#access .bus .box {
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  width: 100%;
}
body#access .bus .box img {
  width: 100%;
  height: auto;
}
/* アクセス */
/******************/
/**** お問合せ ****/
/******************/
body#inquiry h2 {
  font-size: 16px;
  margin-bottom: 0 !important;
}
body#inquiry h3 {
  margin-top: 0 !important;
}
/* お問合せ */
/* 出展のご案内 */
/* LESS Document */
/**********************/
/**** 出展のご案内 ****/
/**********************/
body#exhibit {
  /* メニューselected */
  /************************/
  /**** 出展・来場対象 ****/
  /************************/
  /******************/
  /**** 出展要項 ****/
  /******************/
  /**************************/
  /**** 最新技術セミナー ****/
  /**************************/
  /**********************/
  /**** 前回レポート ****/
  /**********************/
  /**************************/
  /**** お申込・お問合せ ****/
  /**************************/
}
body#exhibit .conduct #menu li:nth-child(1) a {
  color: #ebd532;
  cursor: default;
}
body#exhibit .conduct #menu li:nth-child(1) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#exhibit .guideline #menu li:nth-child(2) a {
  color: #ebd532;
  cursor: default;
}
body#exhibit .guideline #menu li:nth-child(2) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#exhibit .option #menu li:nth-child(3) a {
  color: #ebd532;
  cursor: default;
}
body#exhibit .option #menu li:nth-child(3) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#exhibit .report #menu li:nth-child(4) a {
  color: #ebd532;
  cursor: default;
}
body#exhibit .report #menu li:nth-child(4) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#exhibit .application #menu li:nth-child(5) a {
  color: #ebd532;
  cursor: default;
}
body#exhibit .application #menu li:nth-child(5) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#exhibit .conduct h1 {
  position: relative;
}
body#exhibit .conduct h1 span {
  position: absolute;
  right: 0;
  top: 0;
  color: red;
  -webkit-animation: blink 0.6s ease infinite alternate;
  -moz-animation: blink 0.6s ease infinite alternate;
  animation: blink 0.6s ease infinite alternate;
}
body#exhibit .conduct ul.list {
  -js-display: flex;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  /*
	●水平方向の揃え方
	space-between：初期値。均等に間隔を空ける
	space-around：「space-between」と同じく均等に間隔を空ける。違うのは、左右の端のFlexアイテムにも半分ずつ間隔を空けてるところ。
	flex-start：横配置の場合、「左揃え」、縦配置の場合、「上揃え」になります。
	flex-end：横配置の場合「右揃え」、縦配置の場合「下揃え」になります。
	center：「中央揃え」です。
	*/
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
  /*
	●子要素の折り返し設定
	wrap:初期値。折り返しを許可、「複数行」。
	nowrap:折り返しなし、つまり「単一行」。
	wrap-reverse:「wrap」と同じで、ただ、折り返し地点が逆になります。
	*/
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  margin: 20px 0;
}
body#exhibit .conduct ul.list li {
  font-size: 1.2em;
  width: 25%;
  background: white;
  padding: 10px 0 10px 10px;
  margin-bottom: 1%;
}
body#exhibit .conduct ul.list li.wide {
  width: 48%;
  margin-left: 1%;
  margin-right: 1%;
}
body#exhibit .conduct ul.list li:before {
  content: "■ ";
  color: #324f99;
}
body#exhibit .guideline .image {
  float: right;
  margin: 30px 0 0 30px;
}
body#exhibit .guideline .image p {
  clear: both;
  width: 385px;
  margin-top: 15px;
}
body#exhibit .guideline table.fee {
  width: 55%;
  margin: 0 0 5px 0;
}
body#exhibit .guideline table.fee td,
body#exhibit .guideline table.fee th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 15px;
  vertical-align: middle;
  text-align: center;
  font-size: 1.2em;
}
body#exhibit .guideline table.fee td .price,
body#exhibit .guideline table.fee th .price {
  color: red;
  font-weight: bold;
}
body#exhibit .guideline table.fee th {
  width: 45%;
  background: #e0e5f0;
  font-weight: bold;
}
body#exhibit .guideline table.form {
  width: 100%;
  margin: 0 0 5px 0;
}
body#exhibit .guideline table.form td,
body#exhibit .guideline table.form th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 10px 15px;
  vertical-align: middle;
}
body#exhibit .guideline table.form th {
  width: 25%;
  background: #e0e5f0;
  text-align: center;
}
body#exhibit .guideline .package h1 {
  position: relative;
}
body#exhibit .guideline .package h1 span {
  position: absolute;
  right: 0;
  top: 0;
  color: #324f99;
}
body#exhibit .guideline .package table.fee {
  width: 62%;
  margin: 10px 0 5px;
}
body#exhibit .guideline .package table.fee td .small,
body#exhibit .guideline .package table.fee th .small {
  font-weight: normal;
  font-size: 0.8em;
}
body#exhibit .guideline .package table.fee th {
  width: 55%;
  background: #e0e5f0;
}
body#exhibit .guideline .deadline {
  background: red;
}
body#exhibit .guideline .deadline h2 {
  color: white;
  margin: 0;
  text-align: center;
}
body#exhibit .guideline .deadline h2 span {
  border: 1px solid white;
  padding: 5px 10px;
}
body#exhibit .option dl dt {
  float: left;
  font-weight: bold;
  margin-right: 1em;
}
body#exhibit .option table {
  width: 100%;
  margin-bottom: 5px;
}
body#exhibit .option table td,
body#exhibit .option table th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 10px 15px;
  vertical-align: middle;
}
body#exhibit .option table th {
  width: 20%;
  background: #e0e5f0;
  text-align: center;
}
body#exhibit .option table .title {
  background: #ebd532;
  font-weight: bold;
  text-align: center;
}
body#exhibit .option table .subtitle {
  background: #f5f5f4;
  text-align: center;
  font-weight: bold;
}
body#exhibit .option table .sub {
  text-align: center;
}
body#exhibit .report .image {
  float: right;
  margin-top: 20px;
}
body#exhibit .report table {
  width: 100%;
}
body#exhibit .report table td,
body#exhibit .report table th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 15px 20px;
  vertical-align: middle;
}
body#exhibit .report table th {
  width: 20%;
  background: #e0e5f0;
  text-align: center;
}
body#exhibit .report .outline {
  width: 55%;
}
body#exhibit .report .data td,
body#exhibit .report .data th {
  text-align: center;
}
body#exhibit .report .data tbody th {
  background: #f5f5f4;
}
body#exhibit .report .data .total {
  color: #ebd532;
  font-weight: bold;
  font-size: 1.2em;
}
body#exhibit .report .exhibitor h2 {
  margin-top: 0;
}
body#exhibit .report .exhibitor ul {
  float: left;
  margin-left: 2em;
}
body#exhibit .report .exhibitor ul li {
  font-size: 13px;
  border-bottom: 2px dotted #ccc;
  padding-bottom: 5px;
  margin-bottom: 5px;
  margin-left: 2em;
}
body#exhibit .report .exhibitor ul li span {
  font-weight: bold;
  color: white;
  background: #40498B;
  line-height: 1;
  padding: 2px 4px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  margin-left: -2em;
  margin-right: 0.5em;
}
body#exhibit .report .exhibitor ul .iag {
  font-size: 16px;
  font-weight: bold;
  padding-top: 28px;
  color: #324f99;
  margin-left: 1.6em;
}
body#exhibit .application .box {
  padding: 30px;
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
body#exhibit .application .box dl {
  overflow: hidden;
  zoom: 1;
}
body#exhibit .application .box dl dt {
  float: left;
}
body#exhibit .application .box dl dd {
  float: right;
}
body#exhibit .application .box dl dd a {
  display: inline-block;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  color: white;
  text-decoration: none;
  background: #414b99;
  padding: 10px 0;
  width: 200px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
body#exhibit .application .box .bottom {
  border-top: 2px dotted #ccc;
  margin-top: 20px;
  padding-top: 20px;
}
body#exhibit .application .box h2 {
  color: #333333;
  margin: 0;
}
body#exhibit .application .box h2 span {
  font-size: 0.8em;
}
/* body#exhibit */
/* 来場のご案内 */
/* LESS Document */
/**********************/
/**** 来場のご案内 ****/
/**********************/
body#visit {
  /* メニューselected */
  /**********************************/
  /**** 会場内プレゼンテーション ****/
  /**********************************/
  /********************************/
  /**** ファミリーイベント紹介 ****/
  /********************************/
  /****************/
  /**** 会場図 ****/
  /****************/
}
body#visit .presentation #menu li:nth-child(4) a {
  color: #ebd532;
  cursor: default;
}
body#visit .presentation #menu li:nth-child(4) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#visit .events #menu li:nth-child(5) a {
  color: #ebd532;
  cursor: default;
}
body#visit .events #menu li:nth-child(5) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#visit .layout #menu li:nth-child(6) a {
  color: #ebd532;
  cursor: default;
}
body#visit .layout #menu li:nth-child(6) a:hover {
  opacity: 100;
  filter: alpha(opacity=10000);
}
body#visit .presentation .maintxt {
  font-size: 20px;
  margin-bottom: 30px;
}
body#visit .presentation table {
  width: 100%;
  margin-bottom: 5px;
}
body#visit .presentation table td,
body#visit .presentation table th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 15px;
}
body#visit .presentation table th {
  width: 15%;
  background: #e0e5f0;
  text-align: center;
  font-weight: normal;
  vertical-align: middle;
}
body#visit .presentation table thead td,
body#visit .presentation table thead th {
  background: #324f99;
  color: white;
  font-weight: bold;
  text-align: center;
}
body#visit .presentation table thead td {
  width: 42.5%;
}
body#visit .presentation table .title {
  font-weight: bold;
  font-size: 16px;
}
body#visit .events h2 {
  margin: 0;
  border-bottom: 1px solid #324f99;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
body#visit .events h3 {
  margin: 0;
  font-size: 24px;
}
body#visit .events h4 {
  margin: 15px 0 5px;
}
body#visit .events .maintxt {
  font-size: 20px;
  margin-bottom: 30px;
}
body#visit .events .maintxt span {
  font-weight: bold;
}
body#visit .events .wrap {
  overflow: hidden;
  zoom: 1;
}
body#visit .events .wrap .contents {
  float: left;
  width: 60%;
}
body#visit .events .wrap .image {
  float: right;
  width: 35%;
}
body#visit .events .wrap .image img {
  width: 100%;
  height: auto;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  background: white;
}
body#visit .events .wrap .image p {
  margin-top: 5px;
}
body#visit .events table {
  width: 100%;
}
body#visit .events table td,
body#visit .events table th {
  border: 1px solid #ccc;
  background: rgba(255, 255, 255, 0.5);
  padding: 5px;
  text-align: center;
}
body#visit .events table th {
  width: 15%;
  background: #e0e5f0;
  font-weight: normal;
}
body#visit .events .wakuwaku {
  margin-top: 50px;
  padding: 30px;
  border: 2px solid #00b9ef;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
}
body#visit .events .wakuwaku h2 {
  color: #00b9ef;
  border-bottom: none;
  padding-bottom: 5px;
  margin-bottom: 0;
}
body#visit .events .wakuwaku .image img {
  padding: 0;
  border: none;
}
body#visit .layout .image img {
  width: 100%;
  height: auto;
}
body#visit .layout .txt {
  margin-top: 15px;
}
/* body#visit */
