@charset "UTF-8";


html,body {
	width: 100%;
}
@keyframes my-fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
body {
	animation-name: my-fade-in;
	animation-duration: .6s;
	width: 100%;
	min-width: 1200px;
	/*font-size: 1rem;*/
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #333;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
a {
	color: #03599e;
	outline: none;
	transition: all 0.2s;
}
a:hover {
	color: #00b7d8;
}
a:hover img {
	opacity: 1;
}
a img {
	transition: all 0.2s;
}
a[href^="tel:"] {
	pointer-events: none;
	color: #333;
	text-decoration: none;
}



img {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

sup {
	font-size: .5em;
}



strong {
	font-weight: bold;
}





#container {
	display: flex;
	justify-content: space-between;
	width: 1200px;
	margin: 0 auto;
	padding: 40px 0 100px 0;
}

#main__contents {
	width: 920px;
}

#side_contents {
	width: 240px;
}
#side_contents > div+div {
	margin-top: 20px;
}


.noLink {
	pointer-events: none;
}



#blank_page_tpl #container {
	display: block;
}
#blank_page_tpl #main__contents {
	width: 100%;
}





/* header */
/*------------------------------------------------------------------------------*/
header {
	width: 100%;
	height: 80px;
	background-color: #fff;
}
#header_main {
	width: 1200px;
	height: 100%;
	margin: 0 auto;
	position: relative;
}
#header_main h1 {
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%) translateX(0%);
	transform: translateY(-50%) translateX(0%);
	z-index: 10;
}
#header_main h1 a {
	display: block;
}
#header_info_area {
	height: 100%;
	position: relative;
}
#header_info_top {
	display: flex;
	align-items: center;
	position: absolute;
	top: 3px;
	right: 3px;
}
#header_info_top .meeting_box {
	display: flex;
	align-items: center;
}
#header_info_top .meeting_box span.title {
	display: block;
	font-size: 1.3em;
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	background-color: #03599e;
	border-radius: .2em;
	margin-right: .5em;
	padding: .15em .5em .2em .5em;
}
#header_info_top .meeting_box a {
	font-size: 1.4em;
	font-weight: bold;
	color: #03599e;
	line-height: 1.2;
}
#header_info_top .meeting_box a:hover {
	color: #039e83;
}
#header_info_top .meeting_box a.noLink {
	color: #ccc;
}
#header_info_top .meeting_box span.icon {
	margin-left: .3em;
}
#header_info_top .lang_box {
	padding: 0 0 0 15px;
}
#header_info_top .lang_box ul {
	display: flex;
	align-items: center;
}
#header_info_top .lang_box ul li+li {
	margin-left: 3px;
}
#header_info_top .lang_box ul li a {
	display: block;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	text-decoration: none;
	background-color: #03599e;
	padding: .4em .7em .5em .7em;
}
#header_info_top .lang_box ul li a:hover {
	background-color: #039e83;
}
#header_info_top .lang_box ul li a.noLink {
	background-color: #ccc;
}
#header_info_bottom {
	display: flex;
	align-items: center;
	position: absolute;
	bottom: 3px;
	right: 3px;
}
#header_info_bottom .mypage_box {
	margin-left: 20px;
}
#header_info_bottom .mypage_box a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.5em;
	font-weight: bold;
	color: #fff;
	line-height: 1;
	text-decoration: none;
	background-color: #009143;
	border-radius: 2em;
	padding: 1em 1.2em;
}
#header_info_bottom .mypage_box a span.icon {
	margin-right: .5em;
}
#header_info_bottom .mypage_box a:hover {
	background-color: #eab411;
}
#header_info_bottom .mypage_box a.noLink {
	background-color: #ccc;
}





/* footer */
/*------------------------------------------------------------------------------*/
footer {
	width: 100%;
	background-color: #009143;
}

footer > .footer_banner_area {
	background-color: #fff;
}
footer > .footer_banner_area > .inner {
	width: 1200px;
	text-align: center;
	margin: 0 auto;
	padding: 30px 0;
}
footer > .footer_banner_area > .inner > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 760px;
	margin: 0 auto;
}
footer > .footer_banner_area > .inner > ul > li {
	width: 190px;
	padding: 5px 10px;
}
footer > .footer_banner_area > .inner > ul > li > a {
	display: block;
}
footer > .footer_banner_area > .inner > ul > li > a:hover {
	opacity: .7;
}
footer > .footer_banner_area > .inner > ul > li > a > img {
	width: 100%;
	height: auto;
}
footer > .footer_banner_area > .inner > ul > li.border > a {
	border: 1px solid #eee;
}

footer > .footer_main {
	display: flex;
	justify-content: space-between;
	width: 1200px;
	color: #fff;
	line-height: 1.2;
	margin: 0 auto;
	padding: 30px 15px 15px 15px;
}
footer .inner_main h2 {
	font-size: 1.8em;
	font-weight: bold;
	margin-bottom: .9em;
}
footer .inner_main h2 span+span {
	padding-left: 1em;
}
footer .inner_main li {
	font-size: 1.4em;
}
footer .inner_main li+li {
	margin-top: .5em;
}
footer .inner_main li span+span {
	padding-left: 1em;
}
footer .inner_main li a {
	color: #fff;
}
footer .inner_main li a:hover {
	color: #00b7d8;
}
footer .inner_sub {
	display: flex;
	flex-wrap: wrap;
	/*flex-direction: column;*/
	align-content: space-between;
	position: relative;
}
footer .inner_sub > div {
	width: 100%;
	text-align: right;
}
footer .inner_sub .youtube a {
	display: inline-flex;
	align-items: center;
	font-size: 2.2em;
	font-weight: bold;
	color: #fff;
	line-height: 1;
	text-decoration: none;
}
footer .inner_sub .youtube a:hover {
	color: #eff679;
}
footer .inner_sub .youtube a > .icon {
	font-size: 1.6em;
	position: relative;
	margin-right: 7px;
}
footer .inner_sub .youtube a > .icon:before {
	content: "";
	display: block;
	width: 90%;
	height: 0;
	background-color: #e23737;
	padding-top: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
footer .inner_sub .youtube a > .icon i {
	position: relative;
	z-index: 10;
}
footer .inner_sub small {
	display: block;
	font-size: 1.1em;
}


#pagetop {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	font-size: 1.2em;
	color: #fff;
	background-color: #087b3d;
}





/* nav */
/*------------------------------------------------------------------------------*/
nav {
	height: 40px;
	background-color: #f2faf6;
}
nav > ul {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1200px;
	height: 100%;
	margin: 0 auto;
}
nav > ul > li {
	width: 200px;
	height: 100%;
	position: relative;
}
nav > ul > li+li:before {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background-color: #b7ccc1;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 10;
	-webkit-transform: translateY(-50%) translateX(0%);
	transform: translateY(-50%) translateX(0%);
}
nav > ul > li > a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	font-size: 1.4em;
	font-weight: bold;
	color: #222;
	line-height: 1;
	text-decoration: none;
	position: relative;
}
nav > ul > li > a:after {
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background-color: #eee;
	opacity: 0;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: all .2s;
}
nav > ul > li.about > a:after { background-color: #f2a266; }
nav > ul > li.event > a:after { background-color: #009143; }
nav > ul > li.company > a:after { background-color: #0888d1; }
nav > ul > li.program > a:after { background-color: #d3a840; }
nav > ul > li.business > a:after { background-color: #e4679f; }
nav > ul > li > a span.icon {
	font-size: 1.4em;
	margin-right: .3em;
}
nav > ul > li.about > a > span.icon { color: #f2a266; }
nav > ul > li.event > a > span.icon { color: #009143; }
nav > ul > li.company > a > span.icon { color: #0888d1; }
nav > ul > li.program > a > span.icon { color: #d3a840; }
nav > ul > li.business > a > span.icon { color: #e4679f; }
nav > ul > li > a:hover {
	color: #222;
}
nav > ul > li.about:hover > a { background-color: #fff0e4; }
nav > ul > li.event:hover > a { background-color: #d6f3e3; }
nav > ul > li.company:hover > a { background-color: #e2f4ff; }
nav > ul > li.program:hover > a { background-color: #fff5de; }
nav > ul > li.business:hover > a { background-color: #ffe8f2; }
nav > ul > li:hover > a:after {
	opacity: 1;
}
nav > ul > li > a.noLink.noDrop {
	color: #ccc;
}
nav > ul > li > a.noLink.noDrop > span.icon {
	color: #ccc;
}
nav > ul > li:hover > a.noLink.noDrop {
	background-color: #f2faf6;
}
nav > ul > li:hover > a.noLink.noDrop:after {
	opacity: 0;
}

nav > ul > li > ul {
	width: 100%;
	background-color: #f2faf6;
	border-bottom-right-radius : .5em;
	-webkit-border-bottom-right-radius: .5em;
	-moz-border-radius-bottomright: .5em;
	border-bottom-left-radius : .5em;
	-webkit-border-bottom-left-radius: .5em;
	-moz-border-radius-bottomleft: .5em;
	box-shadow: 0 2px 2px rgba(0,0,0,.2);
	padding: 0 5px;
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 30px;
	left: 0;
	z-index: 1;
	transition: all .2s ease;
}
nav > ul > li.drop_nav:hover > ul {
	top: 40px;
	visibility: visible;
	opacity: 1;
}
nav > ul > li > ul li {
	padding: 5px 0;
}
nav > ul > li > ul li+li {
	border-top: 1px solid #c5d2cb;
}
nav > ul > li > ul a {
	display: flex;
	align-items: center;
	font-size: 1.3em;
	font-weight: bold;
	color: #222;
	line-height: 1.2;
	text-decoration: none;
	border-radius: .3em;
	padding: .6em 0 .6em .5em;
}
nav > ul > li > ul a > span {
	display: inline-flex;
	align-items: center;
}
nav > ul > li > ul a > span:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	background-color: #009143;
	margin-right: .3em;
}
nav > ul > li > ul a:hover {
	color: #222;
	background-color: #cce4d8;
}

nav > ul > li > ul a.noLink {
	color: #ccc;
}
nav > ul > li > ul a.noLink > span:before {
	background-color: #ccc;
}


nav > ul > li.myPage {
	display: none;
}


.nav_sp_sub_btn {
	display: none;
}





#sp_lang {
	display: none;
}





/* side_exhibit_area */
/*------------------------------------------------------------------------------*/
#side_exhibit_area {
	background: url(../images/side_exhibit_bg.jpg) no-repeat center center #ddf6fe;
	border: 2px solid #72c4db;
	cursor: pointer;
	padding: 18px;
	transition: all .2s;
}
#side_exhibit_area h2 {
	font-size: 2.4em;
	font-weight: bold;
	color: #06123d;
	line-height: 1.2;
	text-align: center;
	margin-bottom: .5em;
}
#side_exhibit_area p {
	font-size: 1.4em;
	color: #454545;
	line-height: 1.4;
	text-align: center;
	margin-bottom: .5em;
}
#side_exhibit_area p {
	font-size: 1.4em;
	color: #454545;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 1em;
}
#side_exhibit_area a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4em;
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	text-decoration: none;
	background-color: #e52525;
	border: 2px solid #e52525;
	border-radius: 2em;
	padding: .8em 0;
}
#side_exhibit_area a span.icon {
	margin-right: .4em;
}
#side_exhibit_area:hover {
	opacity: .7;
}
#side_exhibit_area:hover a {
	color: #e52525;
	background-color: #fff;
}





/* side_youtube_area */
/*------------------------------------------------------------------------------*/
#side_youtube_area a {
	display: block;
	color: #fff;
	text-decoration: none;
	background-color: #139373;
	background:repeating-linear-gradient(-45deg, #068666 0, #068666 3px, #139373 3px, #139373 6px);
	border-radius: .6em;
	padding: 15px 0 10px 0;
}
#side_youtube_area a > span {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
#side_youtube_area a > .icon_box {
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}
#side_youtube_area a > .icon_box > .icon {
	font-size: 1.6em;
	position: relative;
	margin-right: 7px;
}
#side_youtube_area a > .icon_box > .icon:before {
	content: "";
	display: block;
	width: 90%;
	height: 0;
	background-color: #e23737;
	padding-top: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
#side_youtube_area a > .icon_box > .icon i {
	position: relative;
	z-index: 10;
}
#side_youtube_area a > .text_box {
	font-size: 1.4em;
	line-height: 1.4;
}
#side_youtube_area a:hover {
	opacity: .8;
}





/* side_movie_area */
/*------------------------------------------------------------------------------*/
#side_movie_area > div+div {
	margin-top: 20px;
}
#side_movie_area > div > a {
	display: block;
	background-color: #000;
	position: relative;
}
#side_movie_area > div > a > img {
	width: 100%;
	height: auto;
	opacity: .4;
}
#side_movie_area > div > a > span.icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
	z-index: 1;
}
.featherlight .featherlight-close-icon {
	font-size: 2em;
	position: absolute;
	z-index: 9999;
	top: 0;
	right: 0;
	line-height: 25px;
	width: 15px;
	cursor: pointer;
	text-align: center;
	font-family: Arial, sans-serif;
	background: #fff;
	background: rgba(255, 255, 255, 1)!important;
	color: #000;
	border: none;
	padding: 0;
	outline: none;
}
.featherlight .featherlight-content {
	padding: 15px 15px 0!important;
	border-bottom: 15px solid transparent!important;
	margin-left: 5%;
	margin-right: 5%;
	max-height: 95%;
}
#side_movie_area .movie_main {
	display: none;
}
.featherlight .featherlight-content .movie_main {
	position:relative;
	width: 800px;
	padding-top:56.25%;
}
.featherlight .featherlight-content .movie_main iframe {
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}
#side_movie_area > div > a:hover img {
	opacity: .7;
}
/* side_movie_area_sp */
/*------------------------------------------------------------------------------*/
#side_movie_area_sp {
	display: none;
}





/* side_banner_area */
/*------------------------------------------------------------------------------*/
#side_banner_area li+li {
	margin-top: 20px;
}
#side_banner_area li a:hover img {
	opacity: .8;
}





/* common_exhibit_area */
/*------------------------------------------------------------------------------*/
#common_exhibit_area {
	width: 100%;
	background: url(../images/common_exhibit_bg.jpg) no-repeat bottom center #ddf6fe;
	background-size: cover;
	border: 2px solid #72c4db;
	cursor: pointer;
	margin: 0 auto;
	padding: 18px 18px 10px 18px;
	transition: all .2s;
}
#common_exhibit_area h2 {
	font-size: 2.4em;
	font-weight: bold;
	color: #06123d;
	line-height: 1.2;
	text-align: center;
	margin-bottom: .5em;
}
#common_exhibit_area p {
	font-size: 1.4em;
	color: #454545;
	line-height: 1.4;
	text-align: center;
	margin-bottom: .5em;
}
#common_exhibit_area p {
	font-size: 1.4em;
	color: #454545;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 1em;
}
#common_exhibit_area a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4em;
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	text-decoration: none;
	background-color: #e52525;
	border: 2px solid #e52525;
	border-radius: 2em;
	padding: .8em 0;
}
#common_exhibit_area a span.icon {
	margin-right: .4em;
}
#common_exhibit_area:hover {
	opacity: .7;
}
#common_exhibit_area:hover a {
	color: #e52525;
	background-color: #fff;
}


#common_exhibit_area02 .inner {
	background-color: #f7f6f6;
	margin-bottom: 20px;
	padding: 2em;
}
#common_exhibit_area02 .inner > p {
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
}
#common_exhibit_area02 .btn_box {
	text-align: center;
	padding-top: 2em;
}
#common_exhibit_area02 a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4em;
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	text-decoration: none;
	background-color: #e52525;
	border: 2px solid #e52525;
	border-radius: 2em;
	padding: .8em 5em;
}
#common_exhibit_area02 a span.icon {
	margin-right: .4em;
}
#common_exhibit_area02 a:hover {
	color: #e52525;
	background-color: #fff;
}





/* common_contents_banner */
/*------------------------------------------------------------------------------*/
.common_contents_banner {
	display: none;
}





/* common__page__title */
/*------------------------------------------------------------------------------*/
#common__page__title {
	background: url(../images/pagetitle_area_bg.jpg) no-repeat 50% 80%;
	background-size: cover;
	padding: 40px 0;
}
#common__page__title h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1200px;
	font-size: 2.8em;
	font-weight: bold;
	color: #fff;
	margin: 0 auto;
}
#common__page__title h1 > span {
	display: inline-block;
	line-height: 1;
	text-align: center;
	background-color: rgba(255,255,255,.2);
	background-color: rgba(0, 55, 125, .3);
	border-radius: .2em;
	box-shadow: 0 2px 6px rgba(0,0,0,.1);
	padding: 1em 2em;
}
#common__page__title h1 > span > span {
	display: block;
	font-size: .6em;
	padding-top: .5em;
}





/* subtitle */
/*------------------------------------------------------------------------------*/
.subtitle01 {
	font-size: 2em;
	font-weight: bold;
	color: #fff;
	line-height: 1.2;
	background: url(../images/icon01.png) no-repeat .5em 50% #03599e;
	background-size: 1.5em;
	border-radius: .3em;
	margin-bottom: 20px;
	padding: .5em 0 .5em 2.5em;
}
.subtitle01 > span {
	display: inline-block;
	font-size: .7em;
	padding-left: 1em;
}

.subtitle02 {
	font-size: 1.8em;
	font-weight: bold;
	color: #03599e;
	line-height: 1.2;
	border-left: 2px solid #03599e;
	margin-bottom: 15px;
	padding: .5em 0 .5em .5em;
}

.subtitle03 {
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.2;
}
.subtitle03 > span {
	display: inline-block;
	color: #034579;
	background: linear-gradient(transparent 60%, #c1ecdc 60%);
}





.section+.section {
	margin-top: 60px;
}
.section_main {
	line-height: 1.8;
	padding: 0 1em;
}
.section_main > p {
	font-size: 1.4em;
}
.section_main > p+p {
	margin-top: 1em;
}





.table_type01 {
	width: 100%;
}
.table_type01 th,
.table_type01 td {
	padding: 1em;
}
.table_type01 th {
	font-weight: bold;
	border-bottom: 2px solid #03599e;
}
.table_type01 td {
	border-bottom: 2px solid #ccc;
}










