
#index h2 {
    font-size: 22px;
    font-weight: bold;
    border: none;
    border-bottom: 3px solid #000000;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -o-border-radius: 10px;
    -ms-border-radius: 10px;
    color: #000000;
    line-height: 28px;
    margin: 0 auto 40px;
    padding: 10px 15px;
    text-align: center;
    vertical-align: middle;
    width: 60%;
}


/* -----------------------------------------------------
　contents
----------------------------------------------------- */

.top_layout {
	padding: 50px;
}
.top_layout:first-of-type {
	padding: 0;
}
.top_layout:nth-child(2n) {
	background: #efefef;
}
.top_visual {
	margin: 0 auto 20px;
	text-align: center;
}

.topimage {
	text-align: center;
	margin:20px auto;
}

.top_boxsty01 {
	display: inline-block;
	border:1px solid #000;
	padding:2%;
	margin:20px auto;
}


/*  見本市終了バー
----------------------------------------------------- */
.greeting {
	margin: 0 auto 30px;
	text-align: center;
}
.greeting p {
	background: #DA1E1E;
	color: #ffffff;
	display: inline-block;
	padding: 1.2rem;
	width: 60%;
    font-size:125%;
}



/*  リンクボタン
----------------------------------------------------- */

.top_btnsty {
    display: flex;
    justify-content: center;
    margin:20px 0 40px;
}
.top_btnsty .btn01 {
    position: relative;
    display: inline-block;
	color: #333;
	font-size:125%;
    text-decoration: underline;
    text-underline-offset: 8px;
    padding-left:1.5em;
}

.top_btnsty .btn01:before {
    content: '';
    width: 0;
    height: 0;
    border: 10px solid;
    border-color: transparent transparent transparent #DA1E1E;
    position: absolute;
    top: 0.2em;
    left: 0;
    bottom: 0;
    margin: auto;
    animation: blink 2s linear infinite;
}

.top_btnsty .btn01:hover {
    text-decoration: none;
    color: #2F7E71;
}

@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.bnr_type {
    text-align: center;
}
.bnr_type ul li {
    display: inline-block;
    margin:0 10px;
}

.bnr_type img { margin:20px 0;}
.bnr_type img:hover { filter: brightness(0.6)}

.bnr_type .bnr_type_txt1 {
    display: inline-block;
    max-width: 800px;
}

.bnr_type .bnr_type_txt1 p {
    text-align: left;
    text-indent: -1em;
    margin-left:1em;
    font-size:113%;
    line-height: 1.6;
}

@media screen and (max-width:640px){
    
    .top_btnsty .btn01 {
        font-size:113%;
        line-height: 1.8;
    }
    
    .bnr_type img { margin:10px 0;}
    .bnr_type .bnr_type_txt1 p { font-size:100%;}
    
}


/*  上部2カラム（赤／青）
----------------------------------------------------- */

.top .colmn2_btn {
	max-width: 1080px;
	margin: 0 auto;
	text-align: center;
}

.top .colmn2_btn .btn_red,
.top .colmn2_btn .btn_blue {
	float: left;
	width: 49%;
	height: 120px;
	padding: 1.2rem 1.5em 0.5em;
	margin-bottom: 20px;
	border-radius: 5px;
}

.top .colmn2_btn .btn_red span {
	color: #fff;
	font-size:3rem;
	font-weight: bold;
}
.top .colmn2_btn .btn_blue span {
	color: #fff;
	font-size:1.8rem;
	white-space: nowrap;
}

.top .colmn2_btn .btn_red{
	background: #D02427;
	margin-right:2%;
	padding:2rem;
}
.top .colmn2_btn .btn_blue{ background: #243aa9;}


.colmn2_btn .btn_blue:hover,
.colmn2_btn .btn_red:hover{ opacity: 0.8;}

@media screen and (max-width:959px){
	
	.top .colmn2_btn { width: 98%;}

	.top .colmn2_btn .btn_red,
	.top .colmn2_btn .btn_blue {
		padding: 1em 1.3em 0.5em;
		height: 80px;
	}
	
	.top .colmn2_btn .btn_red { padding-top:25px;}
	
	.top .colmn2_btn .btn_red span,
	.top .colmn2_btn .btn_blue span { font-size:1.2rem;}

}

@media screen and (max-width:640px){
	
	.top .colmn2_btn .btn_red,
	.top .colmn2_btn .btn_blue {
		float: none;
		display: inline-block;
		width: 90%;
		height: 120px;
		padding: 1.8rem 1.5em 0.5em;
	}
	
	.top .colmn2_btn .btn_red span {
		font-size:1.6rem;
		line-height: 1.2em;
	}
	.top .colmn2_btn .btn_blue span {
		/* font-size:1.4rem; */
		line-height: 1.2em;
	}
	
	.top .colmn2_btn .btn_red {
		padding:2.5rem;
		margin-right:0;
	}
	
	/* 終了文言
	-------------------------------------------------- */
	.greeting p {
		font-size: 100%;
        width: 100%;
	}
		
}

@media all and (max-width:640px) and (-ms-high-contrast: none) {
	
	.top .colmn2_btn { white-space: normal;}
	.top .colmn2_btn .btn_red span,
	.top .colmn2_btn .btn_blue span {
		font-size:100%;
	  }
	
}


/* =======================================================
	カード式
======================================================= */

#exhibitors { 	
    max-width:1800px; 	
    width:100%; 	
    margin:40px auto;
}

#exhibitors ul {
    display: flex;
    justify-content: center;
}

/* ニュース、関連情報 */

#top_pick {
    width:80%;
	margin: 0 auto 20px;
}

#top_pick ul.grid_system {
    margin:1.5rem;
    
    display:flex;
    justify-content:center;
    align-items: flex-start;
    flex-wrap: wrap;
    
}

#top_pick ul.grid_system li {
	margin-bottom: 10px;
	position: relative;
    text-align: left;
}

#top_pick ul.grid_system li img { border-bottom:2px solid #CCC;}

#top_pick ul.grid_system li a,
#top_pick ul.grid_system li .nolink{
	display: block;
	background: #fff;
    position: relative;
    text-decoration: none;
	box-sizing: border-box;
	border:1px solid #CCC;
	overflow: hidden;
	margin-bottom:1em;
}

#top_pick ul.grid_system li a span,
#top_pick ul.grid_system li .nolink span{
    display: block;
	padding: 0.8em 0.8em 1.5em;
	line-height: 1.5em;
	text-align: left;
}

#top_pick ul.grid_system li a img {
    width: 100%;
        -webkit-transform: scale(1);
	transform: scale(1);
        -webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

#top_pick ul.grid_system li a:hover img {
        -webkit-transform: scale(1.1);
	transform: scale(1.1);
}


#top_pick ul.grid_system li a:after {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	border-color: transparent transparent transparent #005dac;
	border-image: none;
	border-style: solid;
	border-width: 15px;
	content: "";
	height: 0;
	position: absolute;
	right: -8px;
	bottom: -8px;
	transform: rotate(45deg);
	width: 0;
}
/*
#top_pick ul.grid_system li a:hover:after {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	border-color: transparent transparent transparent #005dac;
	border-image: none;
	border-style: solid;
	border-width: 22px;
	content: "";
	height: 0;
	position: absolute;
	right: -20px;
	bottom: -20px;
	transform: rotate(45deg);
	width: 0;
}

#top_pick ul.grid_system li a:hover:before {
	content: "";
    border: 8px solid #005dac;
	box-sizing: border-box;
	position: absolute;
	width: 100%;
	height: 100%;
	left:0;
}
*/

/* NEW アイコン */
.pick_icon {
	color: #FFFFFF;
	position: absolute;
	top: 0;
	left: 0;
	padding: 5px 15px;
	text-align: center;
	background: #F01C1C;
}


@media screen and (max-width : 1800px){
    
    #top_pick { width:90%;}
    #top_pick ul.grid_system li { width:32.0%;}
    #top_pick ul.grid_system li:nth-child(3n+1) { margin-left:0;}
    #top_pick ul.grid_system li:nth-child(3n+2),
    #top_pick ul.grid_system li:nth-child(3n+3){ margin-left:2%;}
    
}

@media screen and (max-width : 1200px){
    
    #top_pick { width:100%;}
    #top_pick ul.grid_system { display:block;}
    #top_pick ul.grid_system li { width:49.0%;}
    #top_pick ul.grid_system li:nth-child(2n+1) { margin-left:0;}
    #top_pick ul.grid_system li:nth-child(2n+2){ margin-left:2%;}
    
}

@media screen and (max-width : 640px){
    
    #top_pick ul { display: block;}
    #top_pick ul.grid_system li { width:auto;}
    #top_pick ul.grid_system li:nth-child(2n+2){ margin-left:0;}
    
}



/*  NEWS
----------------------------------------------------- */
#news {
	margin: 0 auto 30px;
	line-height: 1.8;
	max-width: 1080px;
}

#news dt,
#news dd {
    font-size:113%;
}

#news dt {
	float: left;
	padding: 10px 0 5px;
	width: 100%;
}
#news dt:before {
	font-family: "icomoon";
	content: "\ea42";
	padding-right: 0.2em;
}
#news dt:first-of-type {
	border-top: 1px dotted #828282;
	padding:  15px 0 0;
}
#news dd span.new {
	background: #D02427;
	color: #FFFFFF;
	font-size: 77%;
	padding: 3px 5px;
}
#news dd a,
#news dd span.nolink{
	display: block;
    border-bottom: 1px dotted #828282;
    padding: 1.8em 1em 1.8em 0;
}

#news dd a:hover {
	background: #D3D3D3;
}

#news .note {
    background: #fdf0f0;
    padding:0.8em 0 0.3em;
}
#news .note dt,#news .note dd {
    border:0;
    padding-top:0;
}

.news_more {
    display: flex;
    justify-content: center;
}

.news_more a {
    color: #333;
    font-size: 100%;
    background: transparent;
    padding: 18px 30px;
    border: 2px solid #333;
    border-radius: 6px;
    position: relative;
    z-index: 1;
    transition: .3s;
}

.news_more a:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #333;
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform ease .3s;
}
.news_more a:hover {
    color: #FFF;
}
.news_more a:hover:before {
    transform-origin: 0% 50%;
    transform: scaleX(1);
}

/* アイコン（出展社向け） */
.icon_exhibitor {
	background: #1089CE;
	color: #FFFFFF;
	font-size: 77%;
	padding: 3px 8px;
}

/* アイコン（来場者向け） */
.icon_visitor {
	background: #3d9937;
	color: #FFFFFF;
	font-size: 77%;
	padding: 3px 8px;
}


/*  次回予告
----------------------------------------------------- */
#nextarea {
	margin: 0 auto;
	width:60%;
}

#nextarea .next_box li {
    margin-bottom:1em;
	background: #FFF;
	border: 1px solid #ababab;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
        -moz-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
        -webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
        -o-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
        -ms-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
}

#nextarea .next_box li a {
    position: relative;
    clear: both;
    display: block;
	background: #fff;
    text-decoration: none;
	box-sizing: border-box;
	border:1px solid #CCC;
	overflow: hidden;
}

#nextarea .next_box li a:after {
        -moz-border-bottom-colors: none;
        -moz-border-left-colors: none;
        -moz-border-right-colors: none;
        -moz-border-top-colors: none;
	border-color: transparent transparent transparent #005dac;
	border-image: none;
	border-style: solid;
	border-width: 15px;
	content: "";
	height: 0;
	position: absolute;
	right: -8px;
	bottom: -8px;
	transform: rotate(45deg);
	width: 0;
}

#nextarea .next_box li a span {
    display: block;
    padding: 2em;
}

#nextarea .next_box li img {
	float: left;
	overflow: hidden;
    margin-right:1.2rem;
    width:32.0%;
}

#nextarea .next_box li a img {
        -webkit-transform: scale(1);
	transform: scale(1);
        -webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

#nextarea .next_box li a:hover img {
        -webkit-transform: scale(1.1);
	transform: scale(1.1);
}


@media screen and (max-width:1200px){

	#nextarea { width:90%;}

}



@media screen and (max-width:640px){

	#nextarea .next_box li img { width:auto;}

}




/*===============================================
▼▼▼来場サイト用スタイル▼▼▼
===============================================*/


/*  リンクボタン
----------------------------------------------------- */

.btnsty01 {}
.btnsty01 a {
	border: 1px solid #ffffff;
	border-radius: 8px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		-ms-border-radius: 8px;
	color: #ffffff;
	display: inline-block;
	padding: 15px 20px;
	text-align: center;
	width: 40%;
	position: relative;
	background: #018ED5;
	font-size:20px;
}

.btnsty01 a:after {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	border-color: transparent transparent transparent #FFF;
	border-image: none;
	border-style: solid;
	border-width: 15px;
	content: "";
	height: 0;
	position: absolute;
	right: -8px;
	bottom: -8px;
	transform: rotate(45deg);
	width: 0;
}

.btnsty01 a:hover { background: #199ee1;}

@media screen and (max-width:640px){

	.btnsty01 a { width:95%;}

}



/*===============================================
●タブレット  画面の横幅が959pxまで
===============================================*/

@media screen and (max-width:959px) {
    
    .top_layout {
        padding: 50px 20px;
    }
    .top_btnsty a {
        width: 95%;
    }
    
	/* -----------------------------------------------
	 news 	
	----------------------------------------------- */
	#news {
		width: 100%;
	}
	#news dd a {
		text-decoration: none;
		width: 100%;
	}
	#news dd a {
		padding: 0 16px 8px 0;
		font-size: 90%;
	}
    
	/* -----------------------------------------------
	 次回予告
	----------------------------------------------- */
	
    #nextarea {
        width:100%;
    }
    
}


/* ===============================================
●スマートフォン  画面の横幅が640pxまで
=============================================== */

@media screen and (max-width:640px) {
    
    /* =======================================================
		カード式
	======================================================= */
    .top_layout {
        padding: 20px 10px;
    }
    .list-box {
        margin: 0 0 20px;
    }
    /* 文字数が多い場合の調整用*/
    .t2 dd {
        padding-bottom: 0;
    }
    .t3 dd {
        padding-bottom: 0;
    }
    
	/* -----------------------------------------------
	 次回予告
	----------------------------------------------- */
	
    #nextarea {
        width:90%;
    }
    #nextarea .next_box li span {
        padding:0 10px 30px;
        display: block;
    }
    #nextarea .next_box li img {
        float: none;
        display: block;
        margin-right:0;
    }
}