@charset "utf-8";
/* CSS Document */
/**
 * 1.0 - Normalize
 * 2.0 - Common
 * 3.0 - Wrapper
 * 4.0 - Header
 *    4.1 - Nav
 * 5.0 - Contents
 *    5.1 - Main
 *    5.2 - Section
 * 6.0 - Footer
 * 7.0 - Option
 *    7.1 - Index
 *    7.2 - Programme
 *    7.3 - Committee
 * 0.0 - Text
 * 0.1 - Margin
 * 0.2 - Float
 * 0.3 - Letter-spacing
 */



/*---------------------------------------- 
	1.0 - Normalize 
----------------------------------------*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}
img {
	vertical-align: top;
	outline: none;
}
article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}
nav ul, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	background: transparent;
	outline: none;
}
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted #000;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
img {
	margin: 0px;
	padding: 0px;
	border: none;
	max-width: 100%;
	max-heihgt: 100%;
}
sup {
	vertical-align: text-top;
}
.clear {
	clear: both;
}
.clear_fix:after {
	display: block;
	height: 0;
	content: "";
	clear: both;
}
/*---------------------------------------- 
	2.0 - Common 
----------------------------------------*/
html {
	font-size: 62.5%;
	background-color: #230B09;
}
body {
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1.6;
	font-size: 15px;
	font-size: 1.5rem;
	background-image: url(../img/bg_body.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	-webkit-text-size-adjust: 100%;
	height: 100%;
}
a {
	color: #D80000;
}
a:hover {
	color: #3399FF;
	text-decoration: none;
}
.img_hover:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70)";
	opacity: 0.7;
}
a.external:after {
	content: url(../img/ico_extarnal01.gif);
	padding-left: 10px;
}
a.external:hover:after {
	opacity: 0.5;
}
.inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
}
.inner:after {
	clear: both;
	display: block;
	height: 0;
	content: "";
}
/*---------------------------------------- 
	3.0 - Wrapper
----------------------------------------*/
#wrapper {
}
/*---------------------------------------- 
	4.0 - Header
----------------------------------------*/
#top_head {
	margin: 0 30px;
	padding-top: 15px;
}
#top_head p.logo {
	float: left;
	margin-right: 10px;
}
#top_head h1 {
	display: flex;
}
#top_head h1 .sp {
	display: none;
}
#top_head a, #top_head {
	color: #FFF;
	text-decoration: none;
}
/*---------------------------------------- 
	4.1 - Nav
----------------------------------------*/
#global_nav {
	clear: both;
	border-top: 1px solid #FFF;
	margin-top: 20px;
	padding-top: 15px;
	overflow: hidden;
}
#global_nav ul {
	font-size: 18px;
}
#global_nav ul li {
	color: #FFF;
	margin-left: 4%;
	margin-right: 4%;
	margin-bottom: 10px;
	float: left;
}
#global_nav ul li.on a, #global_nav ul li a:hover {
	color: #E4DF53;
	border-bottom: 1px solid #E4DF53;
	padding-bottom: 2px;
}
/* Fixed */

/* Toggle Button */
#nav_toggle {
	display: none;
	position: absolute;
	right: 20px;
	top: 25px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}
#nav_toggle div {
	position: relative;
}
#nav_toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #FFF;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#nav_toggle span:nth-child(1) {
	top: 0;
}
#nav_toggle span:nth-child(2) {
	top: 11px;
}
#nav_toggle span:nth-child(3) {
	top: 22px;
}
/*---------------------------------------- 
	5.0 - Contents
----------------------------------------*/
#contents {
}
/*---------------------------------------- 
	5.1 - Main
----------------------------------------*/
#main {
	background-color: rgba(255,255,255,0.8);
	box-shadow: 0px 5px 5px #A3A3A3 inset;
	padding-bottom: 40px;
}
h1.section_ttl {
	margin-top: 30px;
	padding: 30px;
	color: #1D6CAA;
	text-align: center;
	font-size: 40px;
	font-size: 4.0rem;
	border-bottom: 2px solid #1D6CAA;
}
/*---------------------------------------- 
	5.2 - Section
----------------------------------------*/
section {
	padding: 30px 20px;
	min-height: 500px;
	font-size: 16px;
	font-size: 1.6rem;
}
section h1 {
	background-color: #F2C51F;
	color: #1D6CAA;
	padding: 10px;
	margin-bottom: 20px;
	line-height: 1.2;
	border: 1px solid rgba(255,255,255,0.8);
	border-radius: 5px;
	margin-top: 50px;
}
section h1:first-child {
	margin-top: 0;
}
section h2 {
	color: #134671;
	border-bottom: 1px dotted #134671;
	margin-bottom: 20px;
}
section p {
	margin-bottom: 20px;
}
/*---------------------------------------- 
	6.0 - Footer
----------------------------------------*/
footer {
	background-color: #251A14;
	color: #FFF;
}
footer dl {
	padding: 40px 10px;
	display: inline-block;
	text-align: left;
}
footer dl dt {
	float: left;
	background-color: #6D503E;
	font-weight: bold;
	padding: 10px 20px;
}
footer dl dd {
	padding-left: 150px;
}
footer .sp {
	display: none;
}
footer .copy {
	background-color: rgba(255,255,255,.8);
	color: #000;
}
.link_top {
	position: fixed;
	bottom: 10px;
	right: 10px;
}
.link_top a {
	position: relative;
	display: inline-block;
	line-height: 1;
	letter-spacing: 0.02em;
	font-family: Verdana, Geneva, sans-serif;
	background-color: #F2C51F;
	color: #17438C;
	width: 55px;
	height: 50px;
	display: block;
	text-decoration: none;
	text-align: center;
	font-size: 18px;
	transition: 0.3s ease-in-out;
	line-height: 50px;
	padding: 0 0px 0 20px;
	border: 2px solid #FFF;
	border-radius: 10%;
}
.link_top a:before {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #17438C;
	border-right: solid 2px #17438C;
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 10px;
	transition: 0.3s ease-in-out;
}
.link_top a:hover {
	background-color: #17438C;
	color: #F0E6B0;
	opacity: 0.8;
}
.link_top a:hover:before {
	border-top-color: #F0E6B0;
	border-right-color: #F0E6B0;
}
@media print {
.link_top a {
	display: none;
}
}
.copy {
	text-align: center;
	height: 100px;
	line-height: 100px;
	text-align: center;
}
/*---------------------------------------- 
	7.0 - Option
----------------------------------------*/


/*---------------------------------------- 
	7.1 - Index
----------------------------------------*/
.main_img {
}
.main_img p {
	text-align: center;
}
.main_img p .sp {
	display: none;
}
.index_info {
	padding: 40px;
}
.index_info h1 {
	font-size: 20px;
	font-size: 2.0rem;
	color: #453126;
	margin-right: 40px;
	padding-top: 8px;
	float: left;
}
.index_info dl {
	min-height: 150px;
	padding-left: 40px;
	border-left: 1px solid #000;
	float: left;
}
.index_info dt, .index_info dd {
	padding-top: 13px;
	padding-bottom: 13px;
}
.index_info dt {
	float: left;
	font-weight: bold;
	color: #251A14;
}
.index_info dd {
	padding-left: 120px;
}
/*---------------------------------------- 
	7.2 - Programme
----------------------------------------*/
.dl_keynote01 {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #1D7C6A;
}
.dl_keynote01 dt.pht {
	padding-right: 20px;
	display: table-cell;
	margin-right: 30px;
	max-width: 180px;
	line-height: 1.2;
	border-bottom: none;
	font-weight: normal;
	width: 170px;
}
.dl_keynote01 dt.pht img {
	padding: 2px;
	background-color: #FFF;
	box-shadow: 0px 0px 4px #999;
}
.dl_keynote01 dd.name strong {
	line-height: 2;
}
.dl_keynote01 dd.name {
	display: table-cell;
	vertical-align: bottom;
	line-height: 1.2;
}
.dl_keynote02 {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #453126;
}
.dl_keynote02 dt {
	font-weight: bold;
	margin-bottom: 5px;
}
/*---------------------------------------- 
	7.3 - Committee
----------------------------------------*/
.tbl_committee th, .tbl_committee td {
	padding-top: 5px;
	padding-bottom: 5px;
}
.tbl_committee th {
	padding-right: 20px;
	font-weight: normal;
	text-align: left;
}
/*---------------------------------------- 
	0.0 - Text
----------------------------------------*/
.tx_C {
	text-align: center;
}
.tx_R {
	text-align: right;
}
.indentback01 {
	text-indent: -1em;
	magin-left: 1em;
}
.tx_indent01 {
	text-indent: 1em;
}
.tx_underline {
	text-decoration: underline;
}
.tx_red {
	color: #F00;
}
.tx_grn {
	color: #378845;
}
.tx13 {
	font-size: 13px;
	font-size: 1.3rem;
}
.tx14 {
	font-size: 14px;
	font-size: 1.4rem;
}
.tx16 {
	font-size: 16px;
	font-size: 1.6rem;
}
.tx18 {
	font-size: 18px;
	font-size: 1.8rem;
}
.tx20 {
	font-size: 20px;
	font-size: 2.0rem;
}
.tx22 {
	font-size: 22px;
	font-size: 2.2rem;
}
/*---------------------------------------- 
	0.1 - Margin
----------------------------------------*/
.mgt10 {
	margin-top: 10px;
}
.mgt20 {
	margin-top: 20px;
}
.mgl15 {
	margin-left: 15px;
}
.mgl20 {
	margin-left: 20px;
}
.mgr20 {
	margin-right: 20px;
}
.mgb0 {
	margin-bottom: 0;
}
.mgb5 {
	margin-bottom: 4px;
}
.mgb10 {
	margin-bottom: 10px;
}
.mgb20 {
	margin-bottom: 20px;
}
.mgb30 {
	margin-bottom: 30px;
}
.mgb-20 {
	margin-bottom: -20px;
}
.mgb-30 {
	margin-bottom: -30px;
}
/*---------------------------------------- 
	0.2 - Float
----------------------------------------*/
.fL {
	float: left;
}
.fR {
	float: right;
}
/*---------------------------------------- 
	0.3 - Letter-spacing
----------------------------------------*/
.lts002 {
	letter-spacing: -0.02em;
}
.lts003 {
	letter-spacing: -0.03em;
}
.lts004 {
	letter-spacing: -0.04em;
}
.lts005 {
	letter-spacing: -0.05em;
}
@media only screen and (max-width: 768px) {
body {
	background-size: 200%;
}
#top_head {
	margin: 0 10px;
}
#top_head p.logo img {
	max-width: 50%;
	margin-bottom: 10px;
}
#top_head h1 {
	display: block;
}
/*ハンバーガー*/
#top_head.open #global_nav {
	margin-top: 50px;
}
#global_nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -550px;
	right: 0px;
	background: rgba(20, 101, 127, .95);
	width: 100%;
	text-align: center;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	border: 1px solid #999;
	border-bottom: 0;
	margin: 0px 0px 0px 0px;
	padding: 0px;
}
#global_nav ul {
	right: 0;
	bottom: 0;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
}
#global_nav ul li {
	float: none;
	border-bottom: 1px solid #999;
	margin: 0;
}
#top_head #global_nav ul li a, #top_head.fixed #global_nav ul li a {
	width: 100%;
	display: block;
	padding: 15px 0;
	border-bottom: none;
}
#top_head #global_nav ul li.on a, #top_head #global_nav ul li a:hover, #top_head.fixed #global_nav ul li a:hover {
	border: none;
	background-color: rgba(30, 148, 187, 0.9);
}
#top_head .pre {
	padding: 15px 0px;
}
#nav_toggle {
	display: block;
}
/* #nav_toggle 切り替えアニメーション */
.open #nav_toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav_toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav_toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #global_nav {
	/* #global_nav top + #mobile_head height */
	-moz-transform: translateY(556px);
	-webkit-transform: translateY(556px);
	transform: translateY(556px);
}
/*ハンバーガーend*/

.index_info {
	padding: 20px 10px;
}
.index_info h1 {
	float: none;
	border-bottom: 1px solid #000;
	margin-right: 0;
}
.index_info dl {
	border-left: none;
	padding-left: 0;
	margin-top: 20px;
	width: 100%;
}
.index_info dt, .index_info dd {
	float: none;
	padding-top: 5px;
	padding-bottom: 5px;
	display: block;
}
.index_info dt {
	margin-left: 0px;
}
.index_info dd {
	padding-left: 0px;
	border-bottom: 1px dotted #999;
}
footer dl {
	padding: 30px 10px;
	display: block;
	text-align: left;
}
footer dl dt {
	display: inline-block;
	float: none;
	background-color: #6D503E;
	font-weight: bold;
	padding: 5px 10px;
	margin-bottom: 5px;
}
footer dl dd {
	padding-left: 0px;
}
.copy {
	height: 70px;
	line-height: 70px;
}
.main_img {
	padding-bottom: 20px;
}
.main_img p .pc {
	display: none;
}
.main_img p .sp {
	display: block;
}
.link_top a {
	display: none;
}
.dl_keynote01 dt.pht, .dl_keynote01 dd.name {
	display: block;
}
}
@media only screen and (max-width: 480px) {
body {
	background-size: 280%;
}
#top_head p.logo img {
	margin-bottom: 10px;
}
#top_head h1 .pc {
	display: none;
}
#top_head h1 .sp {
	display: block;
}
section {
	padding: 30px 10px;
}
footer .pc {
	display: none;
}
footer .sp {
	display: inline;
}
.dl_keynote01 dt.pht img {
	max-width: 80%;
}
.tbl_committee th, .tbl_committee td {
	display: block;
}
.tbl_committee th {
	padding-bottom: 0;
}
.tbl_committee td {
	padding-top: 0;
}
}
