@charset "utf-8";


/*ヘッダー
---------------------------------------------------------------------------*/
#header {
	background-image: url(../img/back_slide.jpg);
	width: 100%;
}
.other_title {
	text-align: left;
	padding: 0.5em 1em;
	float: left;
}
.other_topbtn {
	background: #e73562;
	border: 3px solid #fff;
	box-sizing: border-box;
	color: #fff;
	box-shadow: 2px 2px 2px rgba(140,140,140,0.5);
	width: 250px;
	border-radius: 1em;
	margin-right: 1em;
	margin-top: 0.9em;
	margin-bottom: 0.9em;
}
.other_topbtn img {
	height: 60px;
}
.other_topbtn:hover {
	background: #ff3366;
}


/*　メニュー　*/
.bigform {
	padding-top: 1em;
	position: absolute;
	right: 0;
	margin-right: 1em;
}
.bigform_waku {
	display: flex;
	background: rgba(255,255,255,0.9);
	border-radius: 50px;
	width: 800px;
	padding-left: 20px;
	padding-right: 20px;
}
.bigform img {
	width: 60px;
}
.right_text {
	line-height: 60px;
	padding: 0 0.9em;
	font-weight: 800;
	font-size: 92%;
}

.miniform {
	display: none;
}
/* ▼表示領域が1100px以上の場合 */
@media screen and (min-width: 1200px) {
   .miniform { display: none; }  /* miniを非表示 */
   .bigform  { display: block; } /* bigを表示 */
}
/* ▼表示領域が1100px未満の場合 */
@media screen and (max-width: 1199px) {
   .miniform { display: block; } /* miniを表示 */
   .bigform  { display: none; }  /* bigを非表示 */
   .head_mid { width:100%; padding-right:0; text-align:center; }
   .head_mid p { padding:5px 0 5px 0; line-height:1.2; }
}
/* ▼表示領域が340px未満の場合 */
@media screen and (max-width: 339px) {
   .miniform { display: none; }
}


/*　ハンバーガーボタン　*/
.hamburger {
  display : block;
  position: absolute;
  z-index : 5;
  right : 13px;
  top   : 12px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #fff;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}
/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}
.hamburger::after {
	content: "menu";
	display: block;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	margin-top: 85%;
}

nav.globalMenuSp {
  position: fixed;
  z-index : 4;
  top  : 0;
  left : 0;
  color: #fff;
  background: #89c88d;
  text-align: center;
  width: 100%;
  opacity: 0;
  transition: opacity .6s ease, visibility .6s ease;
  visibility: hidden;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
  font-size: 120%;
  font-weight: 800;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#e9e156;
}
nav.globalMenuSp img {
	width: 50%;
	max-width: 260px;
}
nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1.2em 0;
  text-decoration :none;
}
.navicon {
	width: 60px !important;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;
  visibility: visible;
}


/*トップページ以外共通
---------------------------------------------------------------------------*/
.sitemap {
	background: #eeeeee;
	padding: 0.5em;
	font-size: 85%;
}


/*日程
---------------------------------------------------------------------------*/
.search_box {
	display: none;
}
.schedule_flex {
	margin-top: 2%;
	margin-bottom: 5%;
	display: flex;
}
.scf_leftbox {
	width: 30%;
	min-width: 500px;
	text-align: center;
	margin-top: 1em;
}
.scf_rightbox {
	width: 62%;
	padding: 0 4%;
}
.scf_line {
	border: none;
	border-top: 3px dotted #ddd;
	margin: 3em 0;
}
/*上部ボタン*/
.tenji_btnbox {
	display: flex;
	justify-content: space-between;
	margin: 1em 0 4em 0;
}
.tenji_btn {
	width: 45%;
	padding: 2% 1%;
	color: #fff !important;
	text-align: center;
	border-radius: 10px;
	font-weight: 500;
	box-shadow: 2px 2px 3px #ddd;
}
.tbtn_h {
	background: #e50012;
}
.tbtn_h:hover,
.tbtn_h:active {
	background: #f23c48;
}
.tbtn_p {
	background: #4637cc;
}
.tbtn_p:hover,
.tbtn_p:active {
	background: #5e50dc;
}

/* ▼表示領域が1200px未満の場合 */
@media screen and (max-width: 1199px) {
   .search_box { display:block; padding:2em 4% 0 1%; font-weight:bold; }
   .schedule_flex { flex-direction:column; }
   .scf_leftbox { width:100%; min-width:unset; margin-bottom:2em; }
   .scf_rightbox { width:92%; border-top: 5px dotted #7fa6ce; padding-top:2em; }
}

/*　カレンダー　*/
.calendar {
	display: inline-block;
	background: white;
	padding: 20px;
	border-radius: 8px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
#calendarTable {
	border-collapse: collapse;
	width: 100%;
}
#calendarTable th, #calendarTable td {
	padding: 10px;
	text-align: center;
}
#calendarTable th {
	background: #4CAF50;
	color: white;
}
#calendarTable td {
	border: 1px solid #ddd;
	cursor: pointer;
}
#calendarTable td:hover {
	background: #f0f0f0;
}
.today {
	background: #ffeb3b;
	font-weight: bold;
}
.has-event {
	background: #c8e6c9;
	font-weight: bold;
}
.nav-buttons {
	margin-bottom: 10px;
}
.nav-buttons button {
	cursor: pointer;
	font-family: sans-serif;
	font-size: 130%;
	font-weight: 300;
	border: none;
	background: none;
	color: #4CAF50;
	padding: 0 0.4em;
	border-radius: 50%;
}
.event-list {
	margin-top: 15px;
	text-align: left;
	background: #fff;
	padding: 10px;
	border-radius: 5px;
	box-shadow: 0 0 5px rgba(0,0,0,0.1);
}
.event-list a {
	color: #ff7d00;
	text-decoration: none;
}
.event-list a:hover {
	text-decoration: underline;
}

/*　展示会テーブル　*/
.scf_rightbox h2 {
	position: relative;
	padding-left: 25px;
	margin-left: -20px;
	margin-bottom: 1em;
	font-weight: 800;
}
.scf_rightbox h2 span {
	font-size: 120%;
}
.scfr_h2_1:before {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 15px transparent;
	border-bottom: solid 15px #e50012;
}
.scfr_h2_1:after {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 10px;
	width: 100%;
	border-bottom: solid 3px #e50012;
}
.scfr_h2_2:before {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 15px transparent;
	border-bottom: solid 15px #4637cc;
}
.scfr_h2_2:after {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 10px;
	width: 100%;
	border-bottom: solid 3px #4637cc;
}


.tenji_flex {
	display: flex;
	background: #fff;
	border-radius: 10px;
	margin-bottom: 1.8em;
	box-shadow: 0 3px 3px #c8c8c8;
}
.schedulebox01 {
	width: 85%;
}
.schedule_t {
	width: 100%;
}
.schedule_t th {
	width: 20%;
	font-weight: 800;
	font-size: 150%;
	text-align: center;
	color: #fff;
	border-radius: 10px 0 0 0;
}
th.s_t_notseminar {
	border-radius: 10px 0 0 10px;
}
.sc_t_red th {
	background: #e50012;
}
.sc_t_blue th {
	background: #4637cc;
}
.schedule_t td {
	font-weight: 900;
	padding: 0.5em;
	line-height: 1.5;
	text-align: center;
}
.schedule_t td:nth-child(2) {
	font-size: 130%;
	width: 48%;
}
.schedule_t td:last-child {
	font-size: 120%;
	width: 32%;
}
.tenji_small {
	font-weight: 300;
	font-size: 84%;
}
.schedulebox01 p {
	font-size: 82%;
	border-radius: 0 0 0 10px;
	text-indent: -5em;
	padding: 0.6em 1em 0.6em 6em;
}
.sc_t_red p {
	background: #fceef3;
}
.sc_t_blue p {
	background: #f6eefe;
}
.schedulebox01 p span {
	color: #999999;
	font-weight: 600;
}

.schedulebox02 {
	width: 15%;
	border-left: 4px dotted #ddd;
	display: flex;
	justify-content: center;
	align-items: center;
}
.schedulebtn {
	position: relative;
	width: 80%;
	font-weight: 900;
	text-align: center;
	padding: 0.8em 0;
	background-color: #f26414;
	border: 2px solid #e1500d;
	border-radius: 30px;
	color: #fff;
	border-radius: 100vh;
}
.schedulebtn:hover {
	color: #fff;
	background-color: #fa711e;
}
.scbtn_gray {
	background-color: #999999 !important;
	border-color: #808080;
}

/* ▼表示領域が1400px～1200pxの場合 */
@media screen and (min-width: 1199px) and (max-width: 1399px) {
   .tenji_flex { flex-direction:column; }
   .schedulebox01 { width:100%; }
   .schedulebox01 p { border-radius:0; padding:1em 1em 1em 6em; }
   .schedulebox02 { width:100%; border-left:none; border-top:4px dotted #ddd; border-radius: 0 0 10px 10px; padding:0.8em 0;}
   .schedulebtn { width:50%; }
}
/* ▼表示領域が800px未満の場合 */
@media screen and (max-width: 799px) {
   .tenji_flex { flex-direction:column; }
   .tenji_btn { padding:5% 1%; }
   .schedulebox01 { width:100%; }
   .schedulebox01 p { border-radius:0; padding:1em 1em 1em 6em; }
   .schedulebox02 { width:100%; border-left:none; border-top:4px dotted #ddd; border-radius: 0 0 10px 10px; padding:0.8em 0;}
   .schedule_t th { font-size:115%; width:5em;}
   th.s_t_notseminar { border-radius:10px 0 0 0; }
   .schedule_t td:nth-child(2), .schedule_t td:last-child { display:block; width:95%; padding:0.2em;}
   .schedule_t td:nth-child(2) { font-size:120%; padding:0.5em 0.3em 0 0.3em;}
   .schedule_t td:last-child { font-size:108%; padding:0.5em 0.3em 0.5em 0.3em;}
   .schedulebtn { width:50%; }
}
/* ▼表示領域が400px未満の場合 */
@media screen and (max-width: 399px) {
   .scf_rightbox h2 { font-size:18px; }
}



/*出展商品
---------------------------------------------------------------------------*/
.flyer_back {
	background: #808080;
}
.flyer_flex {
	display: flex;
	padding: 1em 0;
	justify-content: space-between;
}
.flyerbox {
	width: 48%;
	border: 2px solid #fff;
}
.flyerbtn {
	display: block;
	width: 450px;
	margin: 0 auto;
	font-weight: 900;
	text-align: center;
	padding: 0.8em 0;
	background-color: #f26414;
	border: 2px solid #e1500d;
	border-radius: 30px;
	color: #fff;
	border-radius: 100vh;
	margin-top: 2em;
	margin-bottom: 0.5em;
}
.flyerbtn:hover {
	color: #fff;
	background-color: #fa711e;
}


.list_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.listbox {
	width: 18%;
	background: #fff;
	box-shadow: 1px 2px 2px #ddd;
	border-radius: 10px;
	text-align: center;
	padding: 1% 0;
	margin-bottom: 2%;
}
.lb_photo {
	width: 90%;
}
.listbox p {
	margin-top: 0.8em;
	font-weight: 600;
	border-bottom: 1px solid #ddd;
}
.list_btn {
	display: block;
	width: 75%;
	margin: 0 auto;
	font-weight: 900;
	padding: 0.6em 0;
	border-radius: 30px;
	color: #fff;
	margin-top: 0.8em;
}
.lbtn_f {
	background-color: #f48e00;
}
.lbtn_f:hover {
	color: #fff;
	background-color: #fa9e1e;
}
.lbtn_s {
	background-color: #0092d8;
}
.lbtn_s:hover {
	color: #fff;
	background-color: #0aa0e0;
}

/* ▼表示領域が1300px未満の場合 */
@media screen and (max-width: 1299px) {
   .listbox { width:23%; }
}
/* ▼表示領域が1000px未満の場合 */
@media screen and (max-width: 999px) {
   .listbox { width:31%; padding:2% 0; }
   .list_btn { padding:0.4em 0; }
}
/* ▼表示領域が800px未満の場合 */
@media screen and (max-width: 799px) {
   .list_btn img { width:70px; }
}
/* ▼表示領域が700px未満の場合 */
@media screen and (max-width: 699px) {
   .listbox { width:48%; padding:3% 0; margin-bottom:3.5%; }
}
/* ▼表示領域が600px未満の場合 */
@media screen and (max-width: 599px) {
   .flyerbtn { width:80%; }
}



/*セミナー
---------------------------------------------------------------------------*/
.seminar_title {
	position: relative;
	padding-left: 25px;
	margin-left: -10px;
	margin-bottom: 1em;
	font-weight: 800;
	margin-top: 2em;
}
.seminar_title span {
	font-size: 120%;
}
.seminar_title:before {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 0;
	width: 0;
	height: 0;
	border: none;
	border-left: solid 15px transparent;
	border-bottom: solid 15px #69c232;
}
.seminar_title:after {
	position: absolute;
	content: '';
	bottom: -3px;
	left: 10px;
	width: 100%;
	border-bottom: solid 3px #69c232;
}

.seminar_flex {
	display: flex;
	background: #fff;
	border-radius: 10px;
	margin-bottom: 1.8em;
	box-shadow: 0 3px 3px #c8c8c8;
}
.seminarbox01 {
	width: 77%;
}
.seminar_t th {
	background: #97c957;
	padding: 0.4em 1em;
	font-weight: 800;
	font-size: 150%;
	text-align: center;
	color: #fff;
	border-radius: 10px 0 0 10px;
}
.seminar_t td {
	font-size: 140%;
	font-weight: 900;
	padding: 1.2em 0.5em;
	line-height: 1.5;
}
.seminarbox02 {
	width: 23%;
	border-left: 4px dotted #69c232;
	background: #caecb4;
	border-radius: 0 10px 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.seminarbtn {
	position: relative;
	width: 80%;
	font-weight: 900;
	text-align: center;
	padding: 0.8em 0;
	background-color: #f26414;
	border: 2px solid #e1500d;
	border-radius: 30px;
	color: #fff;
	border-radius: 100vh;
}
.seminarbtn:before {
	font-family: 'Font Awesome 5 Free';
	content: '\f138';
	color: #fff;
	font-weight: 900;
	position: absolute;
	top: calc(50% - .8rem);
	right: 0.5rem;
	margin: 0;
	padding: 0;
}
.seminarbtn:hover {
	color: #fff;
	background-color: #fa711e;
}
/* ▼表示領域が800px未満の場合 */
@media screen and (max-width: 799px) {
   .seminar_flex { flex-direction:column; }
   .seminarbox01 { width:100%; }
   .seminar_t th { border-radius:10px 0 0 0; padding:0.7em;}
   .seminar_t td { font-size:128%; padding:0.7em 0.5em; }
   .seminarbox02 { width:100%; border-left:none; border-top:4px dotted #69c232; border-radius: 0 0 10px 10px; padding:0.8em 0; background-color:#dff4ce; }
   .seminarbtn { width:50%; }
}





/*---------------------------------------------------------------------------*/

/* ▼表示領域が960px未満の場合 */
@media screen and (max-width: 959px) {
   .t_cpb_t tr, .t_cpb_t th, .t_cpb_t td { display:block; }
   .t_cpb_t th { width:100%; }
   .t_cpb_t p { line-height:1.8; }
}

/* ▼表示領域が600px未満の場合 */
@media screen and (max-width: 599px) {
   .other_title {  }
   .other_title img {  }
   .other_topbtn img { height:40px; }
   .other_topbtn { width:45%; margin-top:0em; margin-left:2.5%; margin-right:2.5%; }
}

