@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;700&display=swap');
/*==================================================
cmn
==================================================*/


html {
	overflow: auto;
	font-size: 62.5%;
	background: #0087d4;
}

body {
	overflow: hidden;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	color: #333;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2em;
	letter-spacing: 0px;
	position: relative;
	margin: 0px;
	padding: 0px;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

header,
nav,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd,
img,
table,
tr,
td,
th,
input,
textarea,
select,
a,
figure,
span {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	list-style: none;
	margin: 0px;
	padding: 0px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.8em;
	font-weight: normal;
}

h2 {
	font-size: 28px;
}

p {
	margin-bottom: 1.5em;
}

p:last-child {
	margin: 0;
}

a,
input[type="submit"] {
	text-decoration: none;
	color: inherit;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	color: #ff3769;
	font-weight: 600;
	outline: none;
}

a:hover,
input[type="submit"]:hover {
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}

a:after {
	font-family: "Font Awesome 5 free";
	margin-left: .5em;
}

a[target="_blank"]:after {
	content: '\f35d';
}

a:before {
	font-family: "Font Awesome 5 free";
	margin-right: .25em;
}

a[href^="mailto:"]:before {
	content: '\f0e0';
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

hr {
	border: none;
	margin: 90px 0 0;
	height: 3px;
	background: #a8b1c2;
	border-radius: 3px;
	height: 6px;
}

.wrap {
	margin: 0 auto;
	padding: 0;
	box-shadow: none;
	width: 100%;
	max-width: 1100px;
	overflow: hidden;
}

.sp {
	display: none;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.txt-red {
	color: #cc0000;
	font-weight: bold;
	font-size: 100%;
	text-decoration: underline;
}

.txt-marker {
	background: linear-gradient(transparent 70%, #ffcdcd 70%);
}

.txt-center {
	text-align: center;
}

.txt-left {
	text-align: left;
}

.txt-right {
	text-align: right;
}

.txt80 {
	font-size: 80%;
}

.txt120 {
	font-size: 120%;
}



.txt-normal {
	color: #333;
	font-weight: normal;
}

#PageTopBtn {
	position: fixed;
	/*ボタンの配置場所を固定*/
	bottom: 20px;
	/*下からのボタンの配置場所を指定*/
	right: 20px;
	/*右からのボタンの配置場所を指定*/
	font-size: 75%;
}

#PageTopBtn a {
	display: block;
	/*配置の調整*/
	color: #fff;
	/*文字の色*/
	background: #B60005;
	/*ボタンの背景色*/
	text-align: center;
	/*文字を中央に配置*/
	border-radius: 5px;
	/*ボタンの角を少し丸くする*/
	padding: 10px 10px;
	line-height: 1.5;
	opacity: 0.7;
}

#PageTopBtn a:hover {
	background: #FFF352;
	color: #333;
}

.under-construction {
	text-align: center;
	font-size: 28px;
	min-height: 180px;
	padding-top: 90px;
}

/*==================================================
head
==================================================*/
#side-box {
	float: none;
	top: 0px;
	left: 0px;
	width: 240px;
	max-height: inherit;
	position: fixed;
	z-index: 20;
	background: #0087d4;
}

#side-box.auto {
	position: absolute;
}

.site-header {
	position: relative;
	z-index: 20;
}

.site-header h1 {
	width: 100%;
	line-height: 0em;
	text-align: center;
}

.site-header h1 img {
	padding: 35px 0 30px 0;
	width: 95px;
	height: auto;
}

.site-header h1 a {
	display: block;
}

#gnavi-s,
.button-toggle {
	display: none;
}

.gnavi {
	margin-bottom: 30px;
}

.gnavi ul {
	border-top: 0px solid #E0E0E0;
}

.gnavi li {
	border-bottom: 0px solid #E0E0E0;
	position: relative;
	font-size: 90%;
	text-align: center;
}

.gnavi li a {
	display: block;
	color: #FFF;
}

.gnavi li span {
	padding: 9px 40px;
	display: block;
	margin: 0;
}

.gnavi li.current a,
.gnavi li a:hover {
	background: #ffd900;
	;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	color: #000;
}

.line2 {
	line-height: 1.5;
}

.bnr-nav{
	
}

/*==================================================
foot
==================================================*/

.site-foot {
	margin: 50px 10% 0 10%;
	text-align: center;
}

.site-foot.fixed address {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.site-foot h2 {
	font-size: 16px;
	font-size: 1.6rem;
	margin-bottom: 10px;
	padding-top: 40px;
	font-weight: bold;
}

footer .address-list {
	margin-bottom: 30px;
}

footer .address-list ul {}

footer .address-list li {
	display: inline-block;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8em;
	vertical-align: top;
}

footer .address-list li:first-child {}

footer .address-list li h3 {
	font-size: 100%;
}

footer address {
	clear: both;
	font-size: 80%;
	font-style: normal;
	text-align: center;
	color: #999;
	padding: 5px 0;
}

/*==================================================
content
==================================================*/

#main {
	display: block;
	float: none;
	width: 100%;
	margin-left: 240px;
	width: auto;
	background: #FFF;
	position: relative;
	overflow: hidden;
}

section {
	padding: 40px 0 0;
	position: relative;
	overflow: hidden;
}

.main-content {
	padding: 0 10%;
}

.txt-box p {
	text-indent: 1em;
}

.dl01 {
	margin-bottom: 2em;
	line-height: 1.5;
}

.dl01 dt {
	float: left;
	width: 80px;
	text-align: center;
	background: #999;
	margin-bottom: 5px;
	color: #FFF;
	font-size: 90%;
	padding: 0 0 2px 0;
	border-radius: 15px;
}

.dl01 dd {
	margin-left: 90px;
	padding: 0 0 3px 0;
	margin-bottom: 5px;
}

/*タイトル*/

h3.tit01 {
	background: #2a86f0;
	border-radius: 5px;
	padding: 0 1em;
	color: #FFF;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 1.5;
	margin: 0.3em 0;
}

h3.tit02 {
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 1.5em;
	margin-bottom: 0.5em;
	color: #666;
	border-bottom: 1px solid #ddd;
}

h3.tit03 {
	font-size: 21px;
	font-size: 2.1rem;
	color: #cf0056;
	font-weight: bold;
	margin-bottom: 0.5em;
}

h4.tit01 {
	color: #a82929;
	font-size: 18px;
	font-size: 1.8rem;
	margin-bottom: 0.5em;
	font-weight: bold;
}

h4.tit02 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #0055c5;
}

h5.tit02 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1;
	font-weight: bold;
	color: #000;
	border-left: solid 0.5em #666;
	padding-left: 0.5em;
	padding-bottom: 0.1em;
	margin-bottom: 0.5em;
}

h5.tit03 {
	font-weight: bold;
	font-size: 110%;
	color: #e67373;
	margin-bottom: 0.5em;
}

h5.tit03::before {
	font-family: "Font Awesome 5 free";
	margin-right: .25em;
	content: '\f111';
}

.flex-box {
	display: flex;
	justify-content: space-around;
	text-align: center;
	align-items: center;
	margin-bottom: 1em;
	flex-wrap: wrap;
}

.flex-box img{
	max-width: 180px;
}

.flex-box li {
	width: 50%;
	padding: 0 1em 1em 1em;
}

/*==================================================
index
==================================================*/
.main-img {
	text-align: center;
}

.main-img img {
	max-width: 1100px;
	width: 100%;
}

.event-detail {
	text-align: center;
	background-color: #005bac;
}

.event-detail img {
	padding: 4px 0;
	width: 46%;
	max-width: 380px;
}

.event-detail img:first-child {
	margin-right: 4%;
}

.event-detail img:last-child {
	margin-left: 4%;
}

.news-sec {
	overflow: hidden;
	margin: 0 0 2%;
}



h2.tit01 {
	font-size: 28px;
	font-size: 2.8rem;
	color: #0076d6;
	line-height: 1em;
	margin-bottom: 20px;
	font-weight: bold;
	padding-left: 0.25em;
	border-left: 0.25em solid #0076d6;
	/* for no-flexbox browsers */
}

/*
.tit01::before {
	position: relative;
	top: 5px;
	margin-right: 10px;
	content: url(img/cmn/title.png);
}
*/
.news-list {
	width: 100%;
	min-height: 240px;
}

.news-list li {
	display: block;
	line-height: 1.8em;
	overflow: hidden;
	padding: 12px 0;
	border-bottom: 1px dotted #eee;
}

.news-list li .data {
	float: left;
	width: 6.5em;
	display: block;
	color: #999;
}

.news-list li .data-en {
	float: left;
	width: 9em;
	display: block;
	color: #999;
}

.news-list li .txt {
	overflow: hidden;
	color: #333;
	display: block;
}

/*==================================================
page
==================================================*/
.main-sub {
	padding: 0;
}

.main-sub .tit {
	background: #61ac45;
	padding: 20px 0;
}

.main-sub .page-tit {
	background: url(../img/cmn/main_sub.jpg) no-repeat center;
	background-size: cover;
	color: #fff;
	padding: 60px 0;
}

.main-sub .page-tit h3 {
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	letter-spacing: 5px;
}

.table-style01 {
	width: 50%;
	border-collapse: collapse;
	line-height: 1.5;
}

.table-style01 th {
	border: 1px solid #dce2eb;
	text-align: left;
	padding: 10px 20px;
}

.table-style01 td {
	border: 1px solid #dce2eb;
	padding: 10px 40px;
	text-align: right;
}

.nowrap {
	white-space: nowrap;
}

.minwidth {
	min-width: 220px !important;
}

.list-disc {
	margin-bottom: 30px;
}

.list-disc li {
	margin-left: 1.5em;
	list-style: disc;
	line-height: 1.8;
	margin-bottom: 0.75em;
}

.list-indent {
	margin-bottom: 30px;
}

.list-indent li {
	text-indent: -1em;
	margin-left: 1em;
	list-style-position: inside;
}

ol {
	margin-bottom: 30px;
}

ol li {
	text-indent: -1em;
	margin-left: 1em;
	line-height: 1.8;
	list-style-type: decimal;
	list-style-position: inside;
	margin-bottom: 0.75em;
}

.deadline {
	font-size: 150%;
	font-weight: bold;
	margin-top: 1em;
	color: #CF0000;
}

.bgred {
	background: #fff1f1;
	padding: 1.5em;
	border-radius: 10px;
	margin-bottom: 1em;
}

/*==================================================
greeting
==================================================*/

.profile {
	font-size: 90%;
	margin: 3em 0 0;
}

.profile li {
	display: block;
	vertical-align: bottom;
	margin-bottom: 1em;
}

.profile span {
	font-weight: bold;
	font-size: 130%;
	margin-left: 1em;
}

.profile .reset {
	margin-left: 0;
}

.profile img {
	margin-right: 2em;
	margin-bottom: 0.5em;
}

/*==================================================
overview
==================================================*/

.table-overview {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 80px;
}

.table-overview th {
	font-weight: normal;
	color: #666;
	border-bottom: 1px solid #f3f3f3;
	vertical-align: top;
	padding: 25px;
	white-space: nowrap;
	letter-spacing: 2px;
}

.table-overview td {
	border-bottom: 1px solid #f3f3f3;
	padding: 25px;
	min-width: 480px;
}

/*==================================================
program
==================================================*/

h3.pro-tit01{
	background: #0061b1;
	border-radius: 5px;
	padding: 0.15em 0.5em;
	color: #FFF;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
	margin: 0.3em 0;
}
h3.pro-tit02{
	color: #0061b1;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	
}
h3.pro-tit03{
	color: #0061b1;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	margin-bottom: 0.5em;
	border-bottom: 2px solid #0061b1;
}

.pro-indent{
	background: #e7f2ff;
	padding: 1em 1.5em;
	border-radius: 5px;
}

h4.pro-tit01{
	color: #cc1b1b;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}

.table-program {
	width: 100%;
	border-collapse: collapse;
}

.table-program th {
	padding: 10px;
	vertical-align: top;
	color: #666;
	border: 1px solid #DDD;
	text-align: center;
	white-space: nowrap;
}

.table-program td {
	padding: 10px;
	vertical-align: middle;
	border: 1px solid #DDD;
}

.dl-program {
	margin-top: 0.5em;
	margin-bottom: 1.5em;
	line-height: 1.5;
}

.dl-program dt {
	float: left;
	width: 80px;
	text-align: center;
	background: #dd5e2c;
	margin-bottom: 5px;
	color: #FFF;
	font-size: 90%;
	padding: 0 0 2px 0;
	border-radius: 15px;
}

.dl-program dd {
	margin-left: 90px;
	padding: 0 0 3px 0;
	margin-bottom: 5px;
}
/*==================================================
slide
==================================================*/

.dl-slide {
	margin-top: 1em;
	margin-bottom: 2em;
	line-height: 1.5;
}

.dl-slide dt {
	float: left;
	width: 130px;
	text-align: center;
	background: #999;
	margin-bottom: 5px;
	color: #FFF;
	font-size: 90%;
	padding: 0 0 2px 0;
	border-radius: 15px;
}

.dl-slide dd {
	margin-left: 140px;
	padding: 0 0 3px 0;
	margin-bottom: 5px;
}

.list-decimal {
	counter-reset: my-counter;
	margin-bottom: 3em;
}

.list-decimal li {
	padding-left: 1.5em;
	position: relative;
	margin-bottom: 0.5em;
}

.list-decimal li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #fff;
	border: 1px solid;
	border-radius: 50%;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 1.2em;
	width: 1.2em;
	color: #333;
	font-size: 90%;
	position: absolute;
	top: 0.6em;
	left: 0;
}

/*==================================================
registration
==================================================*/

.table-reg {
	width: 100%;
	border-collapse: collapse;
}

.table-reg th {
	padding: 20px;
	vertical-align: middle;
	color: #666;
	border: 1px solid #DDD;
	text-align: center;
	white-space: nowrap;
}

.table-reg td {
	padding: 20px;
	vertical-align: middle;
	border: 1px solid #DDD;
}

.dl-reg {
	margin-top: 1em;
	margin-bottom: 1em;
	line-height: 1.5;
	font-weight: bold;
}

.dl-reg dt {
	float: left;
	width: 110px;
	text-align: center;
	background: #c70000;
	margin-bottom: 5px;
	color: #FFF;
	font-size: 90%;
	padding: 0 0 2px 0;
	border-radius: 15px;
}

.dl-reg dd {
	margin-left: 130px;
	padding: 0 0 3px 0;
	margin-bottom: 5px;
}

/*==================================================
nst
==================================================*/

.dl-style01 {
	margin-bottom: 30px;
}

.dl-style01 dt {
	float: left;
	width: 50px;
	margin-bottom: 15px;
	line-height: 1.5;
	text-align: center;
	background: #eee;
	margin-bottom: 5px;
	padding: 0 0 2px 0;
	border-radius: 5px;
}

.dl-style01 dd {
	margin-left: 70px;
	margin-bottom: 15px;
	line-height: 1.5;
}

/*==================================================
travel
==================================================*/
.btn01 a {
	background: #ffd900;
	padding: 1em;
	color: #333;
	display: block;
	text-align: center;
	width: 100%;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-o-border-radius: 0.5em;
	-ms-border-radius: 0.5em;
}

.btn01 {
	margin: 3em 0;
	text-align: center;
}

.btn02 a {
	background: #ffd900;
	padding: 1em;
	color: #333;
	display: block;
	text-align: center;
	width: 45%;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-o-border-radius: 0.5em;
	-ms-border-radius: 0.5em;
}

.btn02 {
	margin: 1em 0 3em ;
}

.btn03 a {
	background: #ffd900;
	padding: 1em;
	color: #333;
	display: block;
	text-align: center;
	width: 31%;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-o-border-radius: 0.5em;
	-ms-border-radius: 0.5em;
}

.btn03 {
	margin: 1em 0 3em ;
}


.bggreen a {
	background: #7dc000;
}


/*==================================================
performer
==================================================*/


.performer-list li {
	text-indent: -2em;
	margin-left: 2em;
	line-height: 1.5;
	margin-bottom: 0.75em;
}

.performer-list {
	margin-bottom: 30px;
}

.performer-list2 li {
	text-indent: -1em;
	margin-left: 1em;
	line-height: 1.5;
	margin-bottom: 0.5em;
}

.performer-list2 {
	margin-bottom: 30px;
}

table .txtleft {
	text-align: left !important;
}

.poster img {
	float: right;
	margin-bottom: 3em;
}

/*==================================================
abstract
==================================================*/
.list-abstract {
	margin-bottom: 30px;
}

.list-abstract li {
	list-style-type: square;
	list-style-position: inside;
	text-indent: -1.5em;
	margin-left: 1.5em;
}

.table-abstract01 {
	width: 100%;
	border-collapse: collapse;
}

.table-abstract01 td {
	padding: 20px 5px;
	border: 1px solid #dce2eb;
	vertical-align: middle;
	text-align: center;
	min-width: 210px;
}

.tablebg01 {
	background: #e4edf6;
}

.tablebg02 {
	background: #e7e9ee;
}

.table-abstract02 {
	width: 100%;
	border-collapse: collapse;
}

.table-abstract02 th {
	white-space: nowrap;
	padding: 5px;
	border: 1px solid #dce2eb;
	vertical-align: top;
	background: #e4edf6;
}

.table-abstract02 td {
	padding: 20px;
	border: 1px solid #dce2eb;
	vertical-align: middle;
	text-align: left;
}

.table-submission {
	width: 100%;
	font-size: 120%;
	margin-bottom: 1em;
	border: 1px solid #B60005;
	border-collapse: collapse;
}

.table-submission th {
	white-space: nowrap;
	padding: 1em;
	color: #FFF;
	font-size: 100%;
	background: #B60005;
}

.table-submission td {
	padding: 1em 2em;
	color: #B60005;
	font-size: 120%;
	font-weight: bold;
}

.ol-submission {
	border: 10px solid #BFDAFF;
	padding: 1em;
}

.ol-submission li {
	list-style: inside;
	list-style-type: decimal;
	text-indent: -1em;
	margin-left: 1em;
}

.entrybtn {
	width: 100%;
	overflow: hidden;
	border: 3px solid #DDD;
	padding: 1em 1em 1.5em 1em;
	margin-bottom: 1.5em;
}

.entrybtn li {
	text-align: center;
	float: left;
	width: 40%;
	margin: 0 5%;
}

.entrybtn a {
	color: #FFF;
	display: block;
	padding: 1em;
	width: 100%;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-o-border-radius: 0.5em;
	-ms-border-radius: 0.5em;
}

.btnnew {
	background: #0d6fb8;
}

.btnedit {
	background: #296a9b;
}

.btnnewh {
	background: #d83e3e;
}

.btnedith {
	background: #b13333;
}

.btngrey {
	background: #999 !important;
}

.abstract-txt {
	line-height: 1.8;
	margin-bottom: 40px;
	color: #555;
}

.entrybtn2 {
	width: 100%;
	overflow: hidden;
	padding: 1em 1em 1.5em 1em;
	margin-bottom: 1.5em;
}

.entrybtn2 li {
	text-align: center;
	float: left;
	width: 40%;
	margin: 0 5%;
}

.entrybtn2 a {
	color: #FFF;
	background: #263DA8;
	display: block;
	padding: 1em;
	width: 100%;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-o-border-radius: 0.5em;
	-ms-border-radius: 0.5em;
}

/*==================================================
organizers
==================================================*/
.table-organizers {}

.table-organizers th {
	padding: 5px 10px;
	vertical-align: top;
	text-align: right;
	white-space: nowrap;
}

.table-organizers td {
	padding: 5px 10px;
}

.table-organizers02 {}

.table-organizers02 th {
	text-align: left;
	font-weight: normal;
	border-bottom: 1px solid #036eb8;
	color: #036eb8;
}

.table-organizers02 td {
	min-width: 180px;
	vertical-align: top;
	padding: 10px 0;
}

.org-minwidth {
	min-width: 480px !important;
}

/*==================================================
link
==================================================*/
.list-link {
	margin-bottom: 30px;
}

.list-link li {
	margin-bottom: 0.5em;
	border-bottom: 1px dotted #dce2eb;
	padding-bottom: 0.5em;
}

/*==================================================
sponsor
==================================================*/

.list-sponsor {
	font-size: 90%;
	margin-bottom: 30px;
}

.list-sponsor li {
	text-indent: -1em;
	margin-left: 1em;
	line-height: 1.5;
	margin-bottom: 0.75em;
}

.list-sponsor02 {
	font-size: 90%;
	margin-bottom: 30px;
}

.list-sponsor02 li {
	text-indent: -1.75em;
	margin-left: 1.75em;
	line-height: 1.5;
	margin-bottom: 0.75em;
}

.table-sponsor {
	width: 100%;
	border-collapse: collapse;
	font-size: 90%
}

.table-sponsor th {
	white-space: nowrap;
	padding: 10px;
	border: 1px solid #dce2eb;
	vertical-align: top;
	color: #FFF;
	background: #a8b1c2;
}

.table-sponsor td {
	padding: 10px;
	border: 1px solid #dce2eb;
	vertical-align: middle;
	text-align: center;
}

.table-sponsor td:nth-child(6n+2) {
	text-align: left;
	min-width: 150px
}

.table-sponsor td:nth-child(6n+3) {
	text-align: left;
	min-width: 180px
}

@media screen and (max-width: 1000px) {
	.sp {
		display: block;
	}

	.pc {
		display: none;
	}
	.table-overflow {
		overflow-x: scroll;
	}
	.main-content {
		padding: 0 4%;
	}

	.site-foot {
		margin: 25px 4% 0 4%;
	}

	.site-header h1 {
		width: auto;
		height: auto;
		float: left;
		display: inline-block;
	}

	.site-header h1 a {
		display: block;
		line-height: 0;
		width: auto;
		margin: 0;
	}

	.site-header h1 img {
		height: 50px;
		width: auto;
		padding: 0;
	}

	.site-title a {
		float: left;
	}

	#side-box {
		border: none;
		width: 100%;
		max-height: inherit;
		position: fixed;
		padding: 0 0;
	}

	#side-box .navi-box {
		margin: 0;
		text-align: center;
		height: inherit;
		overflow-y: scroll !important;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 100px;
		display: block;
		position: absolute;
		top: 48px;
		left: 0;
		width: 100%;
		background: #0087d4;
	}

	.gnavi {
		margin-top: 0;
	}

	.gnavi .subnavi a {
		line-height: 2em;

	}

	.gnavi li span {
		padding: 10px 30px;
		margin-bottom: 0;

	}

	.gnavi li.current,
	.gnavi li a:hover {}

	.button-toggle {
		position: absolute;
		top: 12px;
		right: 4%;
		display: block;
		z-index: 100;
		line-height: 1em;
	}

	.css-bar {
		display: inline-block;
		position: relative;
		margin: 0;
		padding: 0;
		background: #002575;
		line-height: 0;
	}

	.css-bar,
	.css-bar:before,
	.css-bar:after {
		width: 30px;
		height: 3px;
	}

	.css-bar:before,
	.css-bar:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		background: #002575;
	}

	.css-bar:before {
		margin-top: -10px;
	}

	.css-bar:after {
		margin-top: 6px;
	}

	.pc {
		display: none !important;
	}

	.sp {
		display: block;
	}
	.bnr-nav{
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	.bnr-nav li{
		margin: 1%;
	}
	.bnr-nav img{
		max-width: 240px;
	}

	#main {
		padding-top: 48px;
		margin-left: 0;
	}

	.main-img img {
		margin-top: 0;
	}

	.wrap,
	.wrap-s {
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

	.event-detail img {
		margin: 0.5% 0;
		width: 45%;
	}

	.btnphoto a {
		height: 55px;
	}
}

@media screen and (max-width: 800px) {

	/*==================================================
cmn
==================================================*/
	html {
		overflow: auto;
		font-size: 45%;
	}

	body {
		font-size: 13px;
		letter-spacing: 0;
		line-height: 1.8em;
	}

	.button-toggle {
		position: absolute;
		top: 15px;
	}

	.site-header h1 {
		padding: 10px 0 10px 2.5%;
	}

	.site-header h1 img {
		height: 30px;
	}

	.btn02 a {
		width: 100%;
		margin: 30px 0;
	}
	.btn03 a{
		width: 100%;
		margin: 0.5em;
	}

	/*==================================================
foot
==================================================*/

	footer address {
		line-height: 1.4em;
	}

	.overflow-wrap {
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}

	/*==================================================
content
==================================================*/
	#main {}

	section {
		padding: 30px 0 0;
	}

	.txt-center {
		text-align: center;
	}

	/*==================================================
index
==================================================*/
	.main-img {}

	.news-list {
		min-height: 120px;
		width: 100%;
	}

	.news-sec hr {
		width: 65px;
	}

	.news-list li {
		padding: 10px 0;
	}

	.news-list li:last-child {
		border: none;
	}

	.news-list li .data {
		float: none;
		width: 100%;
		margin: 0 0 0.2em;
	}

	.news-list li .data-en {
		float: none;
		width: 100%;
		margin: 0 0 0.2em;
	}

	.bnr-box {
		margin: 20px 0;
	}

	/*==================================================
page
==================================================*/
	.main-sub .tit {
		padding: 15px 0;
	}

	.main-sub .tit .wrap {
		padding: 0 3.5%;
	}

	.main-sub .tit h2 {
		line-height: 0;
	}

	.main-sub .page-tit {
		padding: 30px 0;
	}

	.main-sub .page-tit h3 {
		font-size: 20px;
		letter-spacing: 1px;
	}

	.table-style01 th,
	.table-style01 td {
		padding: 1.5em 10px;
	}

	/*==================================================
greeting
==================================================*/

	.profile {
		text-align: center;
	}

	.profile img {
		margin-right: 0;
	}

	.table-organizers02 td {
		min-width: 150px;
	}
}

@media screen and (max-width: 480px) {
	.event-detail img:first-child {
		margin-right: 0;
	}

	.event-detail img:last-child {
		margin-left: 0;
	}

	.event-detail img {
		padding: 0.5% 0;
		width: 75%;
		max-width: 100%;
	}

	footer .address-list li {
		display: inline-block;
		width: 100%;
		padding: 0%;
	}
	.flex-box img{
		max-width: 100%;
	}
	
}