@charset "UTF-8";

#contents .container { padding: 0 14px; }
.ex_button { display: inline-block; padding: 0.75em 50px; background-color: #fff; border: 1px solid #b3b3b3; font-weight: bold; text-align: center; }
.icon_blank { margin-left: 5px; }
.section_title { margin-bottom: 1em; padding-bottom: 3px; border-bottom: 1px solid #ccc; font-size: 128.5%; font-weight: bold; }
.section_title span { display: inline-block; padding-left: 7px; border-left: 4px solid #e60000; line-height: 1.2; }
.link_button a { display: inline-block; background-color: #fff; border: 1px solid #b6b6b6; padding: 0.75em 5px; text-align: center; font-weight: bold; line-height: 1; }
.arw { background: url(../img/arw.png) no-repeat left 0.35em; padding-left: 12px; }
.col_left { float: left; }
.col_right { float: right; }
.has_float { overflow: hidden; }


.headline .hl_main { margin-top: 0; }
#facompass_info { margin: 30px 0 15px; padding: 2.57em 60px 2.5em; text-align: center; background-color: #fff; border: 1px solid #fad4d4; }
#facompass_info .facompass_info_txt {  font-size: 128.57%; font-weight: bold; color: #cc0001;}
#facompass_info .extbutton { display: inline-block; width: 100%; max-width: 476px; margin: 20px auto 0; padding: 16px 10px 19px; color: #fff; background-color: #595959; font-weight: bold; font-size: 114.28%; }
#facompass_info .extbutton .arw { background: url(../img/arw_white.png) no-repeat left 0.45em ; }
/*#head h1 img { vertical-align: bottom; }*/
#head #keyimg img { vertical-align: bottom; margin-top: 15px; }
#head #summary { margin: 30px 0 30px; padding: 2em 37px; background-color: #fafafa; border: 1px solid #bebcbc; }
#head #summary .catch { font-size:142.8%; font-weight: bold; }
#head #summary .catch + .catch { margin-top: 0.35em; }
#head #summary .text { margin-top: 1em; font-size:114.2%; }
#head #summary .dl_pdf { float: right; margin-top: 1.25em; }
#head #summary .dl_pdf .ex_button { padding-left: 45px; padding-right: 45px; }
#head #summary .dl_pdf .ex_button img { padding: 0 5px 3px 0; vertical-align: middle; }
#head #summary .ex_details { margin-top: 1.25em; }
#head #summary .ex_details dt { position: absolute; padding-top: 1.25em; font-weight: bold; }
#head #summary .ex_details dd { display: block; padding-top: 1.25em; padding-left: 10.5em; }
#head #summary .ex_details dd + dd { padding-top: 0.5em; }
#head #summary .ex_details dd:before { display: inline-block; content: ":"; width: 0.75em; margin-left: -0.75em; font-weight: bold; vertical-align: top; }
#head #summary .ex_details dd.noList:before { display: inline-block; content: ""; width: 0.75em; margin-left: -0.75em; font-weight: bold; vertical-align: top; }
#head .has_icon { display: inline-block; padding-left: 49px; text-indent: -49px; }
#head .catch.has_icon { text-indent: -51px; padding-left: 51px; }
#head .has_icon .icon { width: 44px; margin-right: 5px; margin-top: -0.2em; vertical-align: middle; }
#head .catch.has_icon .icon { margin-right: 7px; }
#head .has_icon .arw { margin-left:5px; }
#head  #ticket_info { margin-top: 2.5em; padding: 1.75em 36px 36px; background-color: #e6e6e6; text-align: center; }
#head  #ticket_info .label { font-size: 142.8%; font-weight: bold; }
#head  #ticket_info .note { margin: 0.5em 0 1.75em; font-size: 100%; }
#head  #ticket_info .col_left,
#head  #ticket_info .col_right { width: 374px; padding: 5px; background-color: #fff; border: 1px solid #b3b3b3; }
#head  #ticket_info .col_left .name,
#head  #ticket_info .col_right .name { padding: 0.2em 5px; background-color: #1da740; font-size: 114.2%; font-weight: bold; color: #fff; }
#head  #ticket_info .col_right .name { background-color: #e2001d; }
#head  #ticket_info .col_left .link,
#head  #ticket_info .col_right .link { margin: 0; padding: 1em 0 0.7em; font-weight: bold; }
#head  .has_banner { float: left; width: 575px; }
#head  #stamp_rally { float: right; width: 268px; margin: 0.2em 0 0 30px; }
#head  #stamp_rally img { width: 100%; vertical-align: bottom; }

#solution,
#booth,
#partners { margin-bottom: 3em; }
#solution .col_left,
#solution .col_right,
#booth .col_left,
#booth .col_right,
#partners .col_left,
#partners .col_right { margin-top: 0.5em; }
#solution .border_label,
#booth .border_label,
#partners .border_label { position: relative; text-align: center; }
#solution .border_label:before,
#booth .border_label:before,
#partners .border_label:before { position: absolute; width: 100%; height: 1px; content: ""; top: 50%; display: block; border-top: solid 1px #1da740; z-index: 1; }
#solution .border_label span,
#booth .border_label span,
#partners .border_label span { position: relative; padding: 0 10px; background-color: #fff; font-size: 114.2%; font-weight: bold; color: #1da740; z-index: 2; }
#solution .col_right .border_label:before,
#booth .second .border_label:before,
#partners .col_right .border_label:before { border-top: solid 1px #e2001d; }
#solution .col_right .border_label span,
#booth .second .border_label span,
#partners .col_right .border_label span { color: #e2001d; }
#solution .link { margin: 1.35em 0 0.5em; font-weight: bold; }
#solution .thumb img { max-width: 100%; vertical-align: bottom; }
#solution .thumb + p { margin-top: 0.75em; }
#booth .first { margin-top: 2em; }
#booth .second { margin-top: 4em; }
#booth .border_label { margin-bottom: 1.35em; }
#booth .thumb { padding: 50px; background-color: #f7f7f7; text-align: center; }
#booth .thumb img { width: 275px; vertical-align: bottom; }
#partners .list_disc { margin-top: 1em; }
#partners .list_disc li { position: relative; margin-top: 0.35em; padding-left: 15px; }
#partners .list_disc li:before { display: inline-block; position: absolute; top: -0.1em; left: 3px; content: url(../img/icon_disc.gif); margin-right: 5px; }
#program,
#program2 { margin-bottom: 50px; }
#program .logo { width: 160px; margin-left: 20px; }
#program2 .logo { width: 270px; margin-left: 20px; }
#program .logo img,
#program2 .logo img { max-width: 100%; vertical-align: bottom; }
#program p,
#program2 p { margin-top: 0; }
#program .link,
#program2 .link { margin-top: 1em; }
.number_list { margin-bottom:0.35em; }
.number_list dt { margin: 1em 0 0.35em; background: no-repeat 0 0.05em; font-weight: bold; line-height: 23px; }
.number_list dt:first-child { margin-top: 0; }
.number_list dd { font-size: 90%;}

#contents #catalog { margin-top: 40px; padding: 35px 50px 40px; background: #ffedee; text-align: center; }
#contents #catalog .head { font-size: 171.4%; font-weight: bold; text-align: center; line-height: 1.3; }
#contents #catalog .head:before { content: ""; display: block; margin-top: 0.6em; margin-bottom: -0.6em; border-top: 1px solid #d9d9d9; }
#contents #catalog .head span { display: inline-block; min-height: 27px; background: url(../img/bg_catalog.png) #ffedee no-repeat 10px top; padding: 0 10px 0 40px; }
#contents #catalog .bold { margin-top: 12px; }
#contents #catalog .ex_button { width: 618px; margin: 22px auto 0; padding: 15px 10px 13px; border: 1px solid #B2B2B2; font-size: 114.3%; }
#contents #catalog .ex_button .arw { padding-left: 12px; background: url(../img/arw.png) no-repeat left 0.45em; }
#contents #catalog .ex_button:hover .arw { text-decoration: underline; }

#contents #mailnews { background: #f5f5f5; padding: 32px 50px 37px; border-top: 1px solid #e0e0e0; }
#contents #mailnews .head { font-size: 171.4%; font-weight: bold; text-align: center; line-height: 1.3; }
#contents #mailnews .head:before { content: ""; display: block; margin-top: 0.6em; margin-bottom: -0.6em; border-top: 1px solid #d9d9d9; }
#contents #mailnews .head span { display: inline-block; min-height: 27px; padding: 0 10px 0 45px; background: url(../img/bg_mailnews.png) #f5f5f5 no-repeat 10px top; }
#contents #mailnews .head + p { margin: 15px 0 30px; text-align: center; }
#contents #mailnews #member { float: left; width: 405px; }
#contents #mailnews #member .label { margin-bottom: 15px; font-size: 142.9%; font-weight: bold; text-align: center; color:#e58a2e; }
#contents #mailnews #member .ex_button { background-color: #f29130; color: #FFF; border: 0; }
#contents #mailnews #regist { float: right; width: 405px; }
#contents #mailnews #regist .label { font-size: 142.9%; font-weight: bold; text-align: center; color:#0d4b9e; margin-bottom: 15px; }
#contents #mailnews #regist .ex_button { background-color: #0d4b9e; color: #FFF; border: 0; }
#contents #mailnews #regist .link { margin-top: 10px; text-align: center; font-weight: bold; }
#contents #mailnews .text { margin-bottom: 18px; }
#contents #mailnews .ex_button { font-size: 128.6%; display: table-cell; vertical-align: middle; width: 415px; line-height: 1; padding: 13px 10px 12px; }
#contents #mailnews .ex_button:hover { opacity: 0.8; filter: alpha(opacity=80); }
#contents #mailnews .ex_button small {font-size: 66.7%; }
#contents #mailnews .ex_button .arw { display: inline-block; padding-left: 12px; background: url(../img/arw_white.png) no-repeat 0 0.35em; }
#contents #mailnews .link .arw { display: inline-block; padding-left: 12px; background: url(../img/arw.png) no-repeat 0 0.45em; }

#program2 .buttonarea { text-align:center; }
#program2 .buttonarea .ex_button { display: inline-block; width: 63%; margin: 22px auto 0; border: 1px solid #B2B2B2; color: #fff; background-color: #595959; font-weight: bold; font-size: 114.28%;}
#program2 .buttonarea .ex_button .arw { background: url(../img/arw_white.png) no-repeat left 0.45em ; }
#program2 .buttonarea .ex_button:hover .arw { text-decoration: underline; }

#link_dms,
#link_mtech { padding:0 14px;}

#link_mtech { margin: 0 0 30px; padding: 2em 37px; background-color:#fde9e9; border: 1px solid #e60012; }
#link_mtech .catch { font-size:142.8%; font-weight: bold; }
#link_mtech .catch + .catch { margin-top: 0.35em; }
#link_mtech .text { margin-top: 1em; font-size:114.2%; }

#link_dms  { margin: 30px 0 30px; padding: 2em 37px; background-color:#e3fbeb; border: 1px solid #009d3b; }
#link_dms .catch { font-size:142.8%; font-weight: bold; }
#link_dms .catch + .catch { margin-top: 0.35em; }
#link_dms .text { margin-top: 1em; font-size:114.2%; }

#partners ul li { margin-top:0.35em; }

/* FOR SMARTPHONE
-------------------------------------------------- */
@media screen and (max-width: 640px) {
	#contents .container { padding: 0; }
	.col_left,
	.col_right { float: none; width: auto; }
	#facompass_info { padding: 35px 10px; }
	#facompass_info  .extbutton { display: block; width: auto; font-size: 100%; }
	#facompass_info  .extbutton  .arw { background: url(../img/arw_white_2x.png) no-repeat left 0.2em ; background-size: 8px auto; }
	
	/*#head h1 img { max-width: 100%; height: auto; }*/
	#head #keyimg img { max-width: 100%; height: auto; }
	#head #summary { margin: 20px 0; padding: 1em 15px; }
	#head #summary .text { float: none; width: 100%; margin-top: 1em; }
	#head #summary .dl_pdf { float: none; margin-top: 1.35em; }
	#head #summary .dl_pdf a { display: block; width: auto; }
	#head #summary .ex_details { font-size: 92.8%; }
	#head #summary .ex_details dt { padding-top: 1em; width: 4.5em; }
	#head #summary .ex_details dd { padding-top: 1em; padding-left: 6em; word-break: break-all !important; }
	#head #summary .ex_details dd + dd { padding-top: 0.5em; }
	#head  #ticket_info { margin-top: 2em; padding: 1.5em 20px 20px; }
	#head  #ticket_info .note { margin: 0.5em 0 1em; }
	#head  #ticket_info .col_left,
	#head  #ticket_info .col_right { width: auto; }
	#head  #ticket_info .col_right { margin-top: 10px; }
	#head  #ticket_info .col_left .name,
	#head  #ticket_info .col_right .name { padding: 0.05em 5px; }
	#head  #ticket_info .col_left .link,
	#head  #ticket_info .col_right .link { padding: 0.7em 0 0.5em; }
	#head  .has_banner { float: none; width: 100%; }
	#head  #stamp_rally { float: none; width: 100%; max-width: 268px;  margin: 1em auto 0; }
	#head  #stamp_rally img { max-width: 100%; vertical-align: bottom; }
	
	#program2,
	#booth,
	#partners { margin-bottom: 2.5em; }
	#solution .col_left,
	#solution .col_right,
	#booth .col_left,
	#booth .col_right,
	#partners .col_left,
	#partners .col_right { width: 100%; }
	#solution .col_right,
	#partners .col_right { margin-top: 1.75em; }
	#booth .first { margin-top: 1em; }
	#booth .second { margin-top: 2.5em; }
	#booth .col_right { margin-top: 1.35em; }
	#booth .border_label { margin-bottom: 1em; }
	#booth .thumb { padding: 20px; }
	#booth .thumb img { width: 100%; max-width: 275px; vertical-align: bottom; }
	#program,
	#solution .logo { margin-bottom: 0; }
	#program .logo,
	#program2 .logo,
	#solution .logo { margin: 0 auto 1em; }
	#program .logo img,
	#program2 .logo img,
	#solution .logo img { max-width: 100%; vertical-align: bottom; }
	#program p,
	#program2 p	 { margin-top: 0; }
	#program .link,
	#program2 .link { margin-top: 1em; }
	.number_list dt { margin: 1em 0 0.2em; }
	.number_list dt.num01 { background-image: url(../img/icon_num_01_2x.png); background-size: 21px auto; }
	.number_list dt.num02 { background-image: url(../img/icon_num_02_2x.png); background-size: 21px auto; }
	.number_list dt.num03 { background-image: url(../img/icon_num_03_2x.png); background-size: 21px auto; }
	.number_list dt.num04 { background-image: url(../img/icon_num_04_2x.png); background-size: 21px auto; }
	.number_list dt.num05 { background-image: url(../img/icon_num_05_2x.png); background-size: 21px auto; }
	.number_list dt.num06 { background-image: url(../img/icon_num_06_2x.png); background-size: 21px auto; }
	
	#contents #catalog { margin: 30px -8px 0; padding: 40px 20px; }
	#contents #catalog .head span { background-image: url(../img/bg_catalog_2x.png); background-size: 24px auto; }
	#contents #catalog .ex_button { display: block; width: auto; font-size: 100%; }
	#contents #catalog .ex_button .arw { background: url(../img/arw_2x.png) no-repeat left 0.2em; background-size: 8px auto; }
	
	#contents #mailnews { margin: 0 -8px; padding: 37px 20px; }
	#contents #mailnews .head span { background-image: url(../img/bg_mailnews_2x.png); background-size: 27px auto; }
	#contents #mailnews .head + p { margin: 13px 0 22px; text-align: center; }
	#contents #mailnews #member { float: none; width:auto; margin-bottom: 30px; }
	#contents #mailnews #member .label { margin-bottom: 12px; font-size: 128.6%; }
	#contents #mailnews #member .text { margin-top: 12px; }
	#contents #mailnews #regist { float: none; width:auto; }
	#contents #mailnews #regist .label { margin-bottom: 12px; font-size: 128.6%; }
	#contents #mailnews .text { margin: 12px 0 10px; }
	#contents #mailnews .ex_button { display: block; font-size: 100%; width: auto; }
	#contents #mailnews .ex_button small {font-size: 78.6%; }
	#contents #mailnews .ex_button .arw { background: url(../img/arw_white_2x.png) no-repeat 0 0.25em; background-size: 8px auto; }
	#contents #mailnews .link .arw { padding-left: 12px; background: url(../img/arw_2x.png) no-repeat 0 0.45em; background-size: 8px auto; }
	
	#contents .pc_icon { display: inline; padding-left: 3px; vertical-align: baseline!important; }
}