@charset "utf-8";

/* ================================================================================
common
================================================================================= */

.mfair2018 #contents {
  padding-top:0;
  background:transparent;
}



#contents {
  padding:0;
  background:transparent;
}
.bg_gray,
.bg_white {
  margin-top:10px;
  padding:40px;
  background:#fff;
}
.bg_gray {
  background:#f5f5f5;
}
.bg_gray.notice { padding:10px; }

.ttl_line {
  margin-bottom:15px;
  padding:10px;
  border-top:2px solid #000;
  border-bottom:2px solid #000;
  font-size:24px;
  text-align:center;
}
.pic_shadow {
  display:inline-block;
  box-sizing:border-box;
  padding:9px;
  background:#fff;
  border:1px solid #f4f4f4;
  box-shadow:0px 1px 8px -2px rgba(0,0,0,0.4);
  -moz-box-shadow:0px 1px 8px -2px rgba(0,0,0,0.4);
  -webkit-box-shadow:0px 1px 8px -2px rgba(0,0,0,0.4);
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
.bg_gray, .bg_white {
  padding:10px;
}
.ml20.right { width: 100%; height: auto; margin-bottom: 1em; }
.aligncenter .txt_notice { text-align: left!important; }
#enquete img { width:100%; height: auto; }
}

/* ================================================================================
mv
================================================================================= */
.mv {
  max-width:1280px;
  margin:0 auto 10px;
}
.mv img {
  width:100%;
  height:auto;
}


/* ================================================================================
about
================================================================================= */
#about .md_ttl img {
  max-width:738px;
}
#about .group {
  position:relative;
  /* min-height:274px; */
  margin-top:40px;
}
#about .txt_group {
 /* margin-left:430px; */
}
#about .txt_group p {
  line-height:1.8;
}
#about .group .pic_shadow {
  position:absolute;
  top:0;
  left:0;
  width:410px;
}
#about .group .pic_shadow img {
  width:100%;
  height:auto;
}
#about .group:first-child {
  margin-top:0;
}
#about .group:first-child .txt_group {
  /* margin:0 430px 0 0; */
}
#about .group:first-child .pic_shadow {
  position:absolute;
  left:auto;
  right:0;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#about .group {
  position:relative;
  /* min-height:274px; */
  margin-top:20px;
}
#about .txt_group {
  margin:0;
}
#about .group .pic_shadow,
#about .group:first-child .pic_shadow {
  position:static;
  width:100%;
  margin-top:10px;
}
#about .group:first-child .txt_group {
  margin:0;
}
}


/* ================================================================================
introduce
================================================================================= */
#introduce .md_ttl img {
  max-width:192px;
}
#introduce h3 {
  margin-bottom:20px;
  background:url(../img/bg_ttl.png.html) no-repeat;
  color:#fff;
  font-size:16px;
  font-weight:bold;
  line-height:35px;
  text-align:center;
}
#introduce .box_wrapper .box {
  float:left;
  width:49%;
  min-height:700px;
  padding:30px;
  border:1px solid #f5f5f5;
  box-sizing:border-box;
}
#introduce .box_wrapper .box:nth-child(even){
  float:right;
}
#introduce .box_wrapper .box:nth-child(n+3){
  margin-top:20px;
}
#introduce .map img {
  width:100%;
}
#introduce h4 {
  margin-bottom:10px;
  border-bottom:3px solid #000;
  font-size:16px;
  font-weight:bold;
  line-height:35px;
  text-align:center;
}

#introduce .bt_reserve a {
  display:block;
  margin-top:1em;
  padding:23px 15px;
  font-size:18px;
  background:#eb2035;
  color:#fff;
  border-radius:5px;
  text-align:center;
}
#introduce .bt_reserve a:hover {
  background:#ef4d5d;
}

#introduce .box_wrapper .box .text_desc1 { min-height:130px; }
#introduce .box_wrapper .box .text_desc2 { min-height:60px; }
#introduce .box_wrapper .box .text_desc3 { min-height:80px; }

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#introduce .box_wrapper .box,
#introduce .box_wrapper .box:nth-child(even){
  float:none;
  width:100%;
  min-height:inherit;
  margin-top:20px;
  padding:20px;
  box-sizing:border-box;
}
#introduce .box_wrapper .box .text_desc1,
#introduce .box_wrapper .box .text_desc2,
#introduce .box_wrapper .box .text_desc3 { min-height:inherit; }
#introduce .bt_reserve a { font-size:16px; }
}


/* ================================================================================
system&event
================================================================================= */
#system .box,
#event .box {
  border:1px solid #e6e6e6;
  margin-top:40px;
}
#system .box:first-child,
#event .box:first-child {
  margin-top:0;
}
#system .box h3,
#event .box h3 {
  padding:5px;
  background:#333 url(../../dorapara/img/bg_ttl.png) no-repeat;
  color:#fff;
  text-align:center;
  font-size:16px;
  font-weight:bold;
}
#system .box .box_padding,
#event .box .box_padding { padding:30px; }

#system .box ul,
#event .box ul {
  padding:30px;
  line-height:1.8;
}
#system .box li,
#event .box li  {
  position:relative;
  padding-left:9em;
  word-break:break-all;
}
#system .box li > span,
#event .box li > span {
  display:block;
  position:absolute;
  top:0;
  left:0;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#system .box:first-child,
#event .box:first-child {
  margin-top:0;
}
#system .box .box_padding,
#system .box ul,
#event .box .box_padding,
#event .box ul {
  padding:15px;
}
#system .box li,
#event .box li {
  position:relative;
  padding-left:0;
}
#system .box li > span,
#event .box li > span {
  display:block;
  position:static;
  margin-top:1em;
  font-weight:bold;
}
#system .box li:first-child > span,
#event .box li:first-child > span {
  margin-top:0;
}
#system .box li > span span,
#event .box li > span span {
  display:none;
}
#system .mlr_margin { margin-left:5%; margin-right:5%; }

#event .disp_table_cell { display:block; }
#event .w120 { width:auto!important; }
}



/* ================================================================================
area
================================================================================= */
#area .md_ttl img {
  max-width:179px;
}
#area .bg_white {
  display:table;
  margin: auto;
}
#area .area_map {
  box-sizing:boder-box;
  display:table-cell;
  position:relative;
  width:50%;
  vertical-align:top;
}
#area .area_map img {
  width:100%;
  height:auto;
}
#area .area_map:after {
  content:"";
  display:block;
  position:absolute;
  top:10px;
  right:0;
  width:217px;
  height:86px;
  background:url(../img/bg_area_arrow.png.html) no-repeat;
}
#area .group {
  box-sizing:border-box;
  display:table-cell;
  width:50%;
  min-height:568px;
  border:1px solid #333;
  vertical-align:top;
}
#area .bg_area {
  background:#333 url(../img/bg_area.png.html);
  line-height:36px;
  color:#fff;
  text-align:center;
  font-size:16px;
}
#area .logo_tgs {
  display:block;
  max-width:194px;
  margin:15px auto;
}
#area .txt_detail {
  padding:0 15px 15px;
  line-height:1.75;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#area .bg_white {
  display:block;
}
#area .area_map,
#area .group {
  display:block;
  position:relative;
  width:100%;
  padding:0;
}
#area .area_map:after {
  display:none;
}
#area .group {
  min-height:auto;
}
}



/* ================================================================================
exhibitors
================================================================================= */
.exhibitors_header h4 span {display: inline-block;
position: relative;
padding-left: 13px;  }
.exhibitors_header h4 span:after {
	content:"";
  display:block;
  position:absolute;
  left:0;
  top:6px;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:5px solid #fff;
}

#exhibitors .md_ttl img {
  max-width:272px;
}
#exhibitors .ttl_blue {
  margin-bottom:20px;
}
#exhibitors .group {
  margin-bottom:40px;
}
#exhibitors .group:last-child {
  margin-bottom:0;
}
#exhibitors .box {
  float:left;
  width:23.5%;
  margin:20px 0 0 2%;
  border:1px solid #e0e0e0;
  box-sizing:border-box;
}
#exhibitors .box:nth-child(4n+1) {
  clear:both;
  margin-left:0;
}
#exhibitors .box:nth-child(-n+4) {
  margin-top:0;
}
#exhibitors .exhibitors_header {
  background:#424179 url(../img/bg_exhibitors.png.html);
  background-size:cover;
  color:#fff;
}
#exhibitors .exhibitors_header a {
  display:block;
  padding:15px 20px;
  color:#fff;
}
#exhibitors .exhibitors_header a:hover {
  text-decoration:underline;
}

#exhibitors .ttl_header,
.link_official {
	font-size: 16px;
}
.link_official { width:100%; margin-bottom:0.6em; font-weight:bold; }
.link_official a { text-decoration:underline; }
.link_official:before { content:"・"; }

#exhibitors .ttl_body { color:#666; }

#exhibitors .exhibitors_body {
  padding:15px 20px;
}
#exhibitors .txt_body {
  margin-top:10px;
}
#exhibitors .txt_body img {
  display:block;
  width:100%;
  max-width:170px;
  margin:10px auto 20px;
  height:auto;
}
#exhibitors .txt_body img.logo_small { max-width:130px; }
#exhibitors .txt_body img.logo_xsmall { max-width:100px; }
#exhibitors .txt_body a:hover img {
  opacity:.7;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#exhibitors .group {
  margin-bottom:20px;
}
#exhibitors .box {
  float:none;
  width:100%;
  margin:20px 0 0 0;
  border:1px solid #e0e0e0;
  box-sizing:border-box;
}
#exhibitors .box:nth-child(-n+4) {
  margin-top:20px;
}
#exhibitors .box:first-child {
  margin-top:0;
}
}

/* ================================================================================
tgs_radio
================================================================================= */
#tgs_radio .md_ttl img {
  max-width:375px;
}
#tgs_radio .group {
  position:relative;
  min-height:274px;
  margin-top:40px;
}
#tgs_radio .txt_group {
  margin-left:430px;
}
#tgs_radio .txt_group p {
  line-height:1.8;
}
#tgs_radio .group .pic_shadow {
  position:absolute;
  top:0;
  left:0;
  width:410px;
}
#tgs_radio .group .pic_shadow img {
  width:100%;
  height:auto;
}
#tgs_radio .group:first-child {
  margin-top:0;
}
#tgs_radio .group:first-child .txt_group {
  margin:0 430px 0 0;
}
#tgs_radio .group:first-child .pic_shadow {
  position:absolute;
  left:auto;
  right:0;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#tgs_radio .group {
  position:relative;
  min-height:274px;
  margin-top:20px;
}
#tgs_radio .txt_group {
  margin:0;
}
#tgs_radio .group .pic_shadow,
#tgs_radio .group:first-child .pic_shadow {
  position:static;
  width:100%;
  margin-top:10px;
}
#tgs_radio .group:first-child .txt_group {
  margin:0;
}
}

/* ================================================================================
web
================================================================================= */
#web .md_ttl img {
  max-width:326px;
}
#web .bnr_lists {
  margin-bottom:40px;
  text-align:center;
}
#web .bnr_lists img {
  width:100%;
  max-width:600px;
  height:auto;
}
#web .group {
  box-sizing:border-box;
  display:table;
  width:100%;
}
#web .box {
  display:table-cell;
  width:50%;
}
#web .box:nth-child(odd) .sns_header,
#web .box:nth-child(odd) .sns_body {
  margin-right:20px;
}
#web .box:nth-child(even) .sns_header,
#web .box:nth-child(even) .sns_body {
  margin-left:20px;
}
#web .sns_header {
  position:relative;
  line-height:36px;
  color:#fff;
  font-weight:bold;
}
#web .sns_header h3 {
  text-align:center;
  font-size:16px;
}
#web .sns_header ul {
  position:absolute;
  top:0;
  right:10px;
}
#web .sns_header ul a {
  color:#fff;
}
#web .sns_header ul a:hover {
  text-decoration:underline;
}
#web .sns_header ul a:after {
  content:"";
  display:inline-block;
  margin-left:8px;
  width:0;
  height:0;
  border-style:solid;
  border-width:3.5px 0 3.5px 4px;
  border-color:transparent transparent transparent #fff;
}
#web .sns_body {
  border:1px solid #ebebeb;
  min-height:500px;
}
#web .facebook .sns_body {
  margin-right:20px;
}

/* facebook */
#web .facebook .sns_header {
  background:#3d599c url(../img/bg_facebook.png.html);
  background-size:cover;
}
#web .facebook .sns_header:before {
  content:"";
  display:block;
  position:absolute;
  top:4px;
  left:21px;
  width:16px;
  height:27px;
  background:url(../img/icon_facebook.png.html);
}

/* twitter */
#web .twitter .sns_header {
  background:#55a4e1 url(../img/bg_twitter.png.html);
  background-size:cover;
}
#web .twitter .sns_header:before {
  content:"";
  display:block;
  position:absolute;
  top:4px;
  left:20px;
  width:29px;
  height:29px;
  background:url(../img/icon_twitter.png.html);
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#web .md_ttl_category img {
  max-width:80%;
  height:auto;
}
#web .bnr_lists {
  margin-bottom:20px;
}
#web .group {
  display:block;
}
#web .box {
  display:block;
  width:100%;
  margin-top:20px;
}
#web .box:nth-child(odd) .sns_header,
#web .box:nth-child(odd) .sns_body,
#web .box:nth-child(even) .sns_header,
#web .box:nth-child(even) .sns_body {
  margin:0;
}
#web .sns_header h3 {
  margin-left:55px;
  text-align:left;
}
}

/* ================================================================================
contact
================================================================================= */
#contact .md_ttl img {
  max-width:268px;
}
#contact .bg_white {
  text-align:center;
}
#contact .txt_read {
  margin-bottom:25px;
  padding-bottom:30px;
  border-bottom:2px solid #000;
  font-size:20px;
  font-weight:bold;
}
#contact .contact_add {
  font-size:16px;
  line-height:1.8;
}

/* スマホサイズ調整----------------------------　*/
@media only screen and (max-width:750px) {
#contact .box_reserve {
  padding:20px;
}
#contact .bt_reserve a {
  margin-top:15px;
}
}

/* ================================================================================
clearfix
================================================================================= */
.page_nav:after,
#exhibitors .group:after {
  content: "";
  clear: both;
  display: block;
}

.btn_reserve.coming a { max-width:550px; margin:30px auto; background-color:#999; font-size:12px; }
