@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
/*==================================================
cmn
==================================================*/


html {
	overflow: auto;
	font-size: 62.5%;
	background-image: url(img/cmn/bg.png);
}

body {
	overflow: hidden;
	font-family: 'Noto Sans JP', 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: 1em;
}

p:last-child {
	margin: 0;
}

a,
input[type="submit"] {
	text-decoration: none;
	color: inherit;
	-webkit-transition: opacity 0.3s;
	-moz-transition: opacity 0.3s;
	transition: opacity 0.3s;
	color: #d83333;
	font-weight: 500;
	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: #B80003;
	font-weight: bold;
	font-size: 100%;
}

.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-red {
	color: #ff1e51;
}

.txt-normal {
	color: #333;
	font-weight: normal;
}

#PageTopBtn {
	position: fixed;
	/*ボタンの配置場所を固定*/
	bottom: 20px;
	/*下からのボタンの配置場所を指定*/
	right: 20px;
	/*右からのボタンの配置場所を指定*/
	font-size: 75%;
}

#PageTopBtn a {
	display: block;
	/*配置の調整*/
	color: #fff;
	/*文字の色*/
	background: #968731;
	/*ボタンの背景色*/
	text-align: center;
	/*文字を中央に配置*/
	border-radius: 5px;
	/*ボタンの角を少し丸くする*/
	padding: 10px 10px;
	line-height: 1.5;
	opacity: 0.7;
}

#PageTopBtn a:hover {
	background: #D6006C;
}

.under-construction {
	text-align: center;
	font-size: 28px;
	min-height: 240px;
	padding-top: 120px;
}

.flexbox {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	margin-bottom: 1em;

}

.flexbox li {
	padding: 0 0.75em;
}

/*==================================================
head
==================================================*/
#side-box {
	float: none;
	top: 0px;
	left: 0px;
	width: 240px;
	max-height: inherit;
	position: fixed;
	z-index: 20;
}

#side-box.auto {
	position: absolute;
}

.site-header {
	position: relative;
	z-index: 20;
}

.site-header h1 {
	width: 100%;
	height: 160px;
	line-height: 0em;
	text-align: center;
}

.site-header h1 img {
	padding: 70px 0 65px 0;
	width: 185px;
	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;
	background: #F3F0E6;
	border-radius: 25px;
	margin: 20px 15px;
}

.gnavi li a {
	display: block;
	color: #333;
}

.gnavi li span {
	padding: 7px 10px;
	display: block;
	margin: 0;
}

.gnavi li.current a,
.gnavi li a:hover {
	background: #FFE1D9;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	color: #000;
	border-radius: 25px;
	background: url(img/cmn/navi_c.png) 0 -2px;
}

.line2 {
	font-size: 80% !important;
}

.bnr-nav {

	text-align: center;
	position: relative;
}

.bnr-nav .bnr-space {
	display: block;
	height: 240px;
}

.bnr-nav li {
	margin-top: 0.5em;
}

.bnr-nav li img {
	width: 220px;
}

.bnr-nav a:hover {
	background: rgba(0, 0, 0, 0) !important;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6 !important;
	opacity: 0.6 !important;
}


.bnrlist {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	margin-bottom: 3em;
	align-items: center;
}

.bnrlist li {
	padding: 0.5em;
}

.bnrlist li img {
	width: 220px;
}

@media screen and (max-width: 480px) {

	.bnrlist {
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
}

/*==================================================
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: 15px;
	font-size: 1.5rem;
	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;
	position: relative;
	overflow: hidden;
}

section {
	padding: 0;
	position: relative;
	overflow: hidden;
}

.main-content {
	padding: 0 10%;
}

.txt-box p {
	text-indent: 1em;
}

/*タイトル*/
h2.tit01 {
	font-size: 30px;
	font-size: 3.0rem;
	color: #333;
	margin-bottom: 0.5em;
	font-weight: normal;
	/* for no-flexbox browsers */
}

h2.tit01::before {
	position: relative;
	top: 3px;
	margin-right: 5px;
	content: url(img/cmn/title.png);
}


h3.tit02 {
	margin: 0 0 1em;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 2em;
	font-weight: 500;
	color: #0065ad;
	border-bottom: 1px solid #dce2eb;
}

h4.tit02 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1;
	padding-bottom: 0.15em;
	padding-left: 0.5em;
	font-weight: bold;
	color: #b83b3b;
	border-left: 1em solid #b83b3b;
	margin-bottom: 1em;
}

h5.tit01 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	border-left: 1em solid #036eb8;
	line-height: 1;
	padding-left: 0.5em;
	margin-bottom: 1em;
	color: #036eb8;
}

h5.tit02 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	padding-left: 0.5em;
	margin-bottom: 1em;
	color: #036eb8;
}

h5.tit03 {
	font-weight: bold;
	font-size: 110%;
	margin-bottom: 15px;
	color: #263DA8;
}


.gcontents {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 2em;
}

.gcontents iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/*==================================================
index
==================================================*/
.main-img {
	text-align: center;
	background-image: url(img/top/main.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	margin-top: 20px;
}

.sub-img {
	text-align: center;
	background-image: url(img/cmn/sub.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	margin-top: 20px;
}


.main-img img {
	max-width: 1100px;
	width: 100%;
	margin-top: 20px;
}

.sub-img img {
	max-width: 1100px;
	width: 100%;
	margin-top: 20px;
}

.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%;
	min-height: 320px;
}

.news-sec .tit01 {
	font-size: 30px;
	font-size: 3.0rem;
	color: #333;
	margin-bottom: 0.5em;
	font-weight: normal;
	/* for no-flexbox browsers */
}

.news-sec .tit01::before {
	position: relative;
	top: 3px;
	margin-right: 5px;
	content: url(img/cmn/title.png);
}

.news-list {
	width: 100%;
}

.news-list li {
	display: block;
	line-height: 1.8em;
	overflow: hidden;
	padding: 12px 0;
	border-bottom: 0px 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;
}

.page-box {
	margin-top: 1.5em;
}

.table-style01 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 30px;
	line-height: 1.5;
	font-size: 90%;
}

.table-style01 th {
	white-space: nowrap;
	padding: 10px 10px;
	border: 1px solid #dce2eb;
	vertical-align: top;
	font-weight: normal;
}

.table-style01 td {
	padding: 10px 10px;
	border: 1px solid #dce2eb;
	vertical-align: middle;
	width: 50%;
}

.table-style01 tr:nth-child(odd) {
	background-color: rgba(209, 206, 191, 0.3);
}

.table-style02 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 30px;
	line-height: 1.5;
	font-size: 90%;
	text-align: center;
}

.table-style02 th {
	white-space: nowrap;
	padding: 10px 10px;
	border: 1px solid #dce2eb;
	font-weight: normal;
	background-color: rgba(209, 206, 191, 0.3);
}

.table-style02 td {
	padding: 10px 10px;
	border: 1px solid #dce2eb;
	width: 33%;
}

.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;
}

.list-decimal01 {
	counter-reset: my-counter;
	margin-bottom: 1em;
}

.list-decimal01 li {
	padding-left: 1.5em;
	position: relative;
	margin-bottom: 0.5em;
}

.list-decimal01 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: 85%;
	position: absolute;
	top: 0.65em;
	left: 0;
}

.list-decimal02 {
	margin-bottom: 1em;
}

.list-decimal02 li {
	list-style: decimal;
	list-style-position: inside;
	line-height: 1.5;
	text-indent: -1.1em;
	margin-left: 1em;
	margin-bottom: 0.5em;
}

.list-decimal02 li .fas {
	margin-left: 1em;
}

.deadline {
	font-size: 150%;
	font-weight: bold;
	margin-top: 1em;
	color: #CF0000;
}

.li-flex {
	display: flex;
	margin: 2em 0;
}

.li-flex li a {
	display: inline-block;
	background: linear-gradient(330deg, rgba(130, 0, 0, 1) 0%, rgba(160, 0, 0, 1) 100%);
	border-radius: 2em;
	color: #FFF;
	padding: 0.25em 1.5em;
	margin: 0 1em;
}

.word a {
	background: linear-gradient(330deg, rgba(0, 60, 130, 1) 0%, rgba(0, 70, 170, 1) 100%) !important;
}


.dl-style01 {
	margin-bottom: 1em;
}

.dl-style01 dt {
	margin: 0;
	padding: 0;
	margin-top: 5px;
	line-height: 1.8;
	margin-bottom: 1em;
	float: left;
	width: 80px;
	text-align: center;
	background: #00abe5;
	color: #FFF;
	border-radius: 5px;
	font-size: 80%;
}

.dl-style01 dd {
	margin: 0;
	padding: 0;
	line-height: 2;
	margin-bottom: 1em;
	margin-left: 100px;

}

.btn01 a {
	background: #d83333;
	padding: 0.5em;
	color: #FFF;
	display: block;
	text-align: center;
	width: 50%;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}

.btn01 {
	margin: 2em 0;
}

.btn02 a {
	background: #d83333;
	padding: 0.5em;
	color: #FFF;
	display: block;
	margin: 0 15%;
	width: 70%;
	line-height: 3;
	font-weight: bold;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}

.btn02 {
	margin: 4em 0 2em 0;
	text-align: center;
	font-size: 120%;
}

/*==================================================
greeting
==================================================*/

.profile {
	font-size: 90%;
	margin: 3em 0 0;
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	text-align: right;
}

.profile li {
	display: block;
	vertical-align: bottom;
	margin-bottom: 1em;
}

.profile .name {
	font-weight: bold;
	font-size: 130%;
	margin-left: 1em;
}

.profile .reset {
	margin-left: 0;
}

.profile img {
	margin-left: 2em;
	margin-bottom: 0.5em;
	width: 180px;

}

/*==================================================
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
==================================================*/

.cat01 {
	background: #2f7bba;
	color: #FFF;
	border-radius: 15px;
	font-size: 90%;
	margin-left: 1em;
	padding: 0 1em 0.1em 1em;
}

.cat02 {
	background: #d13c26;
	color: #FFF;
	border-radius: 15px;
	font-size: 90%;
	margin-left: 1em;
	padding: 0 1em 0.1em 1em;
}

.cat03 {
	background: #ee8b00;
	color: #FFF;
	border-radius: 15px;
	font-size: 90%;
	margin-left: 1em;
	padding: 0 1em 0.1em 1em;
}

.protit00 {
	color: #333;
	font-size: 120%;
	border-bottom: 1px solid #CCC;
	margin-bottom: 1em;
}

.protit01 {
	font-size: 21px;
	font-size: 2.1rem;
	color: #0065ad;
}

.protit01 span {
	color: #666;
	margin-left: 1.5em;
	font-size: 95%;
}

.protit02 {
	font-size: 21px;
	font-size: 2.1rem;
	font-weight: bold;
	color: #d40083;
	margin-bottom: 0.25em;
}

.protit03 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #d35959;
	margin-bottom: 0.25em;
}

.dl-ws {
	margin-bottom: 2em;
	border-bottom: 1px dotted #DDD;
	padding-bottom: 1em;
}

.dl-ws dt {
	margin: 0;
	padding: 0;
	margin-top: 5px;
	line-height: 1.8;
	margin-bottom: 1em;
	float: left;
	width: 80px;
	text-align: center;
	background: #00abe5;
	color: #FFF;
	border-radius: 5px;
	font-size: 80%;

}

.dl-ws dd {
	margin: 0;
	padding: 0;
	line-height: 2;
	margin-bottom: 1em;
	margin-left: 100px;

}

/*==================================================
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-abstract {
	width: 100%;
	font-size: 120%;
	margin-bottom: 1em;
	border: 1px solid #DDD;
	border-collapse: collapse;
}

.table-abstract th {
	white-space: nowrap;
	padding: 1em 2em;
	background-color: rgba(209, 206, 191, 0.3);
	font-weight: 500;
}

.table-abstract td {
	padding: 1em 2em;
	font-weight: 500;
}

.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 #0d6fb8;
	border-collapse: collapse;
}

.table-submission th {
	white-space: nowrap;
	padding: 1em;
	color: #FFF;
	font-size: 100%;
	background: #0d6fb8;
}

.table-submission td {
	padding: 1em 2em;
	color: #0d6fb8;
	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 {
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 3em 0;
}

.entrybtn li a {
	background: #d83333;
	padding: 0.5em 4em;
	color: #FFF;
	display: block;
	text-align: center;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}


.abstract-txt {
	line-height: 1.8;
	margin-bottom: 40px;
	color: #555;
}

/*==================================================
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 {
	list-style: disc;
	list-style-position: inside;
	margin-bottom: 1em;
	border-bottom: 1px dotted #dce2eb;
	padding-bottom: 1em;
}

/*==================================================
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;
	}

	.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: rgba(256, 256, 256, 0.95);
	}

	.gnavi {
		margin-top: 0;
	}

	.gnavi .subnavi a {
		line-height: 2em;

	}

	.gnavi li span {
		padding: 10px 30px;
		margin-bottom: 0;

	}

	.gnavi li.current a,
	.gnavi li a:hover {
		background: none !important;
		background: #FFE1D9 !important;
	}

	.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: #822890;
		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: #822890;
	}

	.css-bar:before {
		margin-top: -10px;
	}

	.css-bar:after {
		margin-top: 6px;
	}

	.bnr-nav.pc {
		display: none;
	}

	.bnr-nav.sp {
		display: block;
	}

	#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%;
	}


}

@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;
	}

	.btn01 a {
		width: 100%;
	}

	/*==================================================
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 {
		flex-direction: column-reverse;
		justify-content: space-around;
	}

	.table-organizers02 td {
		min-width: 150px;
	}

	.entrybtn {
		display: block;
	}

	.entrybtn li a {
		margin: 2em 0;
	}
}

@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%;
	}
}