@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Medium"); }
@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Bold"); font-weight: bold; }

html, body {
font-size: clamp(12px, 1.4vw, 16px);
color: #333;
margin: 0;
padding: 0;
min-height: 100%;
height: auto;
scroll-behavior: smooth;
-webkit-text-size-adjust: 100%
}

body {
-webkit-animation: fadeIn 1.5s ease 0s 1 normal;
animation: fadeIn 1.5s ease 0s 1 normal;
}
@keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}

@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
html, body { font-size: 1.4vw; }
}
body{}
* {
box-sizing: border-box;
font-family: "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
a:active, a:hover { outline: 0; }
b, strong { font-weight: bold; }

@media all and (-ms-high-contrast:none){
*::-ms-backdrop, *{ font-family: "メイリオ", Meiryo, Helvetica, Arial, sans-serif; } /* IE11 */
}

#top{ }

#Wrapper{ min-height: calc(100vh - 60px); margin-top: 60px; }

main{ display: flex; flex-wrap: wrap; padding: 0 0 2em 0; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
main{ padding: 5px 0; }
}


.symbolImage{ width: 12vw; height: 12vw; margin: 0; padding: 0; display: inline-block; }
.symbolWord{ width: 82vw; height: 12vw; margin: 0; padding: 0; display: inline-block; }
.symbolImage img,
.symbolWord img{ width: 100%; height: auto; margin: 0; display: block; }
.visuallyhidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
-webkit-clip-path: inset(0px 0px 99.9% 99.9%);
clip-path: inset(0px 0px 99.9% 99.9%);
border: 0;
}

/*系
暗 #0068b7
明 #00afec
*/

/* menu -----------------------*/
/* HEADER -----------------------*/
#header { box-shadow: 0px 5px 10px rgba(255,255,255,0.4); z-index: 99; width: 100%; position: fixed; top: 0; left: 0; background: #0068b7; }
#gNav a { color: #ddd; text-decoration: none; }
#gNav a:hover { color: #fff !important; }
nav li a { font-size: 13px; letter-spacing: 0.2em; }
nav .sub-menu,.mean-container .mean-nav ul ul { background: #fff; background-image: linear-gradient(to top, #eeeeee 0%, #a0dcff 100%); }

@media only screen and ( max-width : 768px ) {
#header { padding: 0 10px; height: 60px; }
.h_logo { position: absolute; top: 10px; z-index: 100; }
#gNav .nav { overflow-y: auto; height: 100vh; }
.mean-nav .container { padding: 0; }
nav li .fa { display: none; }
}

@media print, screen and ( min-width : 769px ) {
#header { padding: 0 10px; height: 60px; }
.h_logo { width: 25%; height: 100%; padding: 0; margin: 0; }
.h_logo a { display: flex; align-items: center; }
.h_logo a img { width: 100%; max-width: 400px; height: auto; display: block; }
#h_top { display: flex; justify-content: space-between; align-items: center; }
#gNav ul { position: relative; display: flex; list-style: none; }
#gNav li { position: relative; margin-right: 2em; }
#gNav li:last-child { margin-right: 0; }
#gNav li i { font-size: 16px; margin-left: 5px; }
#gNav li a { position: relative; display: block; text-align: center; line-height: 60px; }
#gNav .sub-menu { visibility: hidden; opacity: 0; z-index: 1; display: block; position: absolute; top: 50px; left: 50%; margin-left: -120px; width: 240px; -webkit-transition: all .2s ease; transition: all .2s ease; }
#gNav .sub-menu a { padding: 20px; display: block; border-bottom: none; line-height: 1.2em; }
#gNav .sub-menu a:hover:after { content: none; }
#gNav .sub-menu li { display: block; font-size: 16px; padding: 0; margin: 0; }
#gNav .sub-menu li:last-child { border-bottom: none; }
#gNav ul > li:hover { -webkit-transition: all .5s; transition: all .5s; }
#gNav ul > li:hover a,#gNav .current-menu-item a,#gNav .current-menu-parent a { color: #ddd; }
#gNav li:hover ul.sub-menu { top: 60px; visibility: visible; opacity: 1; z-index: 9999; }
#gNav li ul li:after { content: none; }
#gNav li:hover ul.sub-menu a { color: #111 !important; }
#gNav .sub-menu li a:hover { background: #fff; }
#gNav .contact_btn a:hover { color: #fff; }
}


/* section -----------------------*/
section{ }
section.contents{ width: 100%; max-width: 1024px; margin: 0 auto; padding: 2em; background-color: #fff; }
#Wrapper > section.contents:last-of-type{ padding-bottom: 4em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
section.contents{ width: 100%; padding: 3rem; }
#Wrapper > section.contents:last-of-type{ padding-bottom: 5rem; }
}

/* footer -----------------------*/
#Wrapper > footer {
position: sticky;
top: 100vh;
}
footer{ display: block; width: 100%; background-color: #666; text-align: center; font-size: 0.7em; color:#ddd; margin: auto 0 0 0; padding: 2.5em 0; }
footer img{ display: block; width: 60%; height: auto; margin: 0 auto 2em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
footer{ font-size: 2.2rem; padding: 4rem 0; }
footer img{ width: 90%; height: auto; }
}

/* only -----------------------*/
.pc{ display: inline-block !important; }
.sp{ display: none !important; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.pc{ display: none !important; }
.sp{ display: inline-block !important; }
}

/* basic -----------------------*/
h1{ }
h2{ font-size: 1.8em; font-weight: bold; color: #fff; padding: 0.2em 0.5em; margin-bottom: 1rem; background: linear-gradient(-15deg, rgba(31,164,219,1) 0%, rgba(0,104,183,1) 100%); }
h3{ font-size: 1.4em; font-weight: bold; color: #002562; }
h4{ font-size: 1.2em; font-weight: bold; }
p{ font-size: 1em; line-height: 1.5em; overflow-wrap: break-word; word-wrap: break-word; text-align: justify; }
hr{ background-color: #fff; border: none; border-top: 0.6em dotted #8baacc; margin-bottom: 3em; }
.preWord{ height: calc(100vh - 280px);  display: flex; flex-direction: column; justify-content: center; align-items: center; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
h1{ }
h2{ font-size: 4rem; margin-bottom: 3rem; line-height: 1.3; padding: 0.4em 0.5em; }
h3{ font-size: 3.5rem; }
h4{ font-size: 3rem; }
p{ font-size: 3rem; }
hr{ margin: 6em 0; border-top-width: 1.2em; }
}

/* インデント -----------------------*/
.indent1{ display: inline-block; padding-left: 1em; text-indent: -1em; word-break: break-all; }
.indent2{ display: inline-block; padding-left: 2em; text-indent: -2em; word-break: break-all; }
.indent3{ display: inline-block; padding-left: 3em; text-indent: -3em; word-break: break-all; }
.indent4{ display: inline-block; padding-left: 4em; text-indent: -4em; word-break: break-all; }
.indent5{ display: inline-block; padding-left: 5em; text-indent: -5em; word-break: break-all; }
.indent6{ display: inline-block; padding-left: 6em; text-indent: -6em; word-break: break-all; }

/* scroll2top -----------------------*/
.scroll2top { display: table-cell; text-decoration: none; position: fixed; bottom: 10px; right: 10px; overflow: hidden; width: 50px; height: 50px; border: medium none; text-indent: 100%; background-color: #0088CD; background-image: url(../img/backtotop.svg); background-repeat: repeat; background-position: 0px 0px; border-radius: 5px 5px 5px 5px; transition: all 0.4s ease 0s; z-index: 10000; }
.scroll2top:hover { background-color: #1199de; background-image: url(../img/backtotop.svg); background-position: 0px -50px; }
.scroll2top:active, .scroll2top:focus { outline: medium none; }


/* トップページ -----------------------*/
#poster{ display: block; width: 100%; background-image: url("../img/index/main-img.webp"); background-size: contain; background-position: top center; background-repeat: no-repeat; background-color: #0068b7; }
/*#poster::after{ content: " "; height: 6vw; display: block; }*/

/*
height: 104vw; display: flex; justify-content: space-between;
*/
.poster1{ width: 100%; margin: 0 auto; padding-top: 3%; }
.main-catch{ width: 10vw; margin: 0 20vw 0 auto; filter: drop-shadow(0px 0px 2px #efefef) drop-shadow(0px 0px 2px #efefef) drop-shadow(0px 0px 2px #efefef) drop-shadow(0px 0px 2px #efefef); /*safari対策にsvg内にもfilter: drop-shadow()*/ }
.poster2{ width: 70%; margin: 0 auto; padding-top: 10%; padding-bottom: 2%; }
.main-title{ width:100%; margin: 0 auto; filter: drop-shadow(0px 0px 3px rgba(239, 239, 239, 1.0)) drop-shadow(0px 0px 3px rgba(239, 239, 239, 1.0)) drop-shadow(0px 0px 3px rgba(239, 239, 239, 1.0)) drop-shadow(0px 0px 3px rgba(239, 239, 239, 1.0)); /*safari対策にsvg内にもfilter: drop-shadow()*/ }

.poster1 img,
.poster2 img,
.poster3 img,
.poster4 img{ display: block; }

.co-sponsored-wrap{ width: 50%; margin: 0 auto; padding: 0; border: 2px solid #fff; border-radius: 4px; }
.co-sponsored-title{ background-color: #fff; margin: 0; padding: 1%; }
.co-sponsored-title img{ width: 100%; margin: 0 auto; display: block; }
.co-spo2{ width: 90%; height: auto; margin: 2% auto 0; display: block; }
.co-sponsored{ display: flex; justify-content: space-between; flex-wrap: nowrap; align-items: center; padding: 0; margin:  2% auto 0; width: 96%; }
.co-sponsored img{ width: auto; height: 5vw; }
.co-sponsored-bnr{ padding: 0; margin: 2% auto ; width: 96%; text-align: center; }
.co-sponsored-bnr img{ width: auto; height: 5vw; }
.co-sponsored-bnr img + img{ margin-left: 1.5vw; }

.main-logo{ width: 100%; margin: 2% auto 0; padding: 2% 0; display: block; background-color: #fff; }
.main-logo img{ width: 50%; margin: 0 auto; display: block; }

.main-badge{ width:30%;}
.main-placedate{ width:100%; margin: 2% auto 0; }
.snapPh{ display: flex; flex-wrap: wrap; align-items: stretch; margin: 3rem 0 0; }
.snapPh img{ flex: 1 1 20%; width: 20%; height: auto; }

.oncli{ cursor: pointer; }

@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
#poster{ /*height: 104vw;*/ }
.poster { flex: 0 1 100%; width: 100%; margin: 3rem !important; padding: 0 !important; }
.co-sponsored-wrap{ width: 80%; }
.co-sponsored img{ height: 7.6vw; }
.co-sponsored-bnr img{ height: 7.6vw; }
.main-logo img{ width: 90%; }
}
/* トップページ チラシ版 -----------------------*/
#leaflet{ padding: 0; margin: 0 auto; width: 86%; }
#leaflet img{ width: 70%; height: auto; margin: 0 auto; display: block; }
#leaflet img.wFull{ width: 100% !important; height: auto; margin: 2rem auto; display: block; }
#leaflet .main-btn{ display: flex; justify-content: space-between; width: 70%; margin: 2rem auto; }
#leaflet .main-btn a{ width: 40% !important; height: auto; }
#leaflet .main-btn a img{ width: 100%; height: auto; }
#leaflet .main-btn a img{ width: 100%; height: auto; }
#leaflet .giftPhWrap{ display: flex; justify-content: space-between; width: 100%; margin: 0 auto 0.5em; }
#leaflet .giftPhWrap img{ display: block; width: calc((100% - 36px) / 4); height: auto; margin: 0; }
#leaflet .pgminfoWrap{ width: 90%; margin: 2rem auto; padding: 0; display: block; }
#leaflet .pgminfoWrap img.wFull{ width: 100% !important; margin: 0; height: auto; display: block !important; }
#leaflet .pgminfoWrap img.wHalf{ width: 50% !important; height: auto; display: inline-block !important; margin: 0; }
#leaflet .evntinfoWrap{ width: 90%; margin: 2rem auto; padding: 0; display: block; }
#leaflet .evntinfoWrap img.wFull{ width: 100% !important; margin: 0; height: auto; display: block !important; }
#leaflet .pgmWrap{ width: 60%; margin: 2rem auto; padding: 0; display: block; }
#leaflet .pgmWrap img{ width: 100%; height: auto; }
#leaflet .pgmWrap a{ width: 80%; display: block; margin: 2rem auto; padding: 0; }

@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
#leaflet{ width: 94%; }
#leaflet img,
#leaflet img.wFull{ width: 96%; height: auto; }
#leaflet .main-btn{ width: 90%; margin: 0 auto 4rem; }
#leaflet .main-btn a{ width: 45% !important; height: auto; }
#leaflet .gift-wrap{ width: 100%; }
#leaflet .pgminfoWrap{ width: 100%; margin: 3rem auto; }
#leaflet .pgminfoWrap img.wFull{ width: 100% !important; display: block !important; margin: 0; }
#leaflet .pgminfoWrap img.wHalf{ width: 80% !important; display: block !important; margin: 0 auto; }
#leaflet .evntinfoWrap{ width: 100%; margin: 3rem auto; }
#leaflet .pgmWrap{ width: 100%; height: auto; display: block; margin: 3rem auto; }
}
/* トップページ 終了告知 -----------------------*/
.topComment{ margin-top: 60px; padding: 1em; background-color: #fff; text-align: center; font-size: 1.1em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.topComment{ padding: 1.6rem; }
.topComment,
.topComment a{ font-size: 3.4vw !important; }
}

/* トップページ whatsnew -----------------------*/
.whatsnew { width: 100%; margin: 0 auto 0; padding: 1em; position: relative; background-color: #deefff; }
.whatsnew h3 {
margin: 0 0 0;
padding: 0.4rem 0;
font-size: 1.3rem;
color: #555;
text-align: center;
border-radius: 0.2rem;
}
.whatsnew dl {
width: 60%;
margin: 0 auto;
padding: 10px;
line-height: 150%;
font-size: 1rem;
/*display: table;
table-layout: fixed;
*/
overflow-y: auto;
display: table;
-webkit-overflow-scrolling: touch;
}
.whatsnew dt { width: 7em; display: block; float: left;
margin: 5px 0 0 0;
color: #111;
font-weight: 700;
}
.whatsnew dt img {
margin: 5px 0 0 0;
vertical-align: middle;
}
.whatsnew dd { width: calc(100% - 7em); display: block; float: right;
padding: 5px 0 0 0;
}
.whatsnew dd.multiDD{
padding: 5px 0 5px 2px;
}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.whatsnew { flex: 0 1 100%; margin: 0 0 0; padding: 3rem; }
.whatsnew dl,
.whatsnew dt,
.whatsnew dd { width: 100% }
.whatsnew h3 { font-size: 4rem; }
.whatsnew dl { font-size: 3rem; }
}

/* トップページ主催・共催section -----------------------*/
.organization { width: 100%;  margin: 3% auto 0; padding: 1em 1.5em; position: relative; background-color: #fff; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.organization { flex: 0 1 100%; margin: 3rem; padding: 3rem; }
}


/* スライド表示トグル -----------------------*/
h3.toggleBox {
font-size: 1em;
font-weight: normal;
margin: 1em 0 0;
padding: 0.8em;
background-color: #def;
color: #333;
/*border-radius: 0.2rem 0.2rem 0px 0px;*/
}
.mRow {
display: none;
}
.mClick { /*clearfix*/ overflow: hidden; *zoom: 1; }
.mClick div {
background-image: url(../img/acc-open.svg);
background-repeat: no-repeat !important;
background-position: right center;
cursor: pointer;
background-size: contain;
}
.mClick.active div {
background-image: url(../img/acc-close.svg);
}
.mClick div span {
/*display: none !important;*/
}
.answer{ font-size: 1rem; padding: 0.8em; border: 2px solid #def; border-radius: 0px 0px 0.2rem 0.2rem; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
h3.toggleBox { font-size: 3rem;}
.mClick div { background-size: 2rem 2rem; padding-right: 2rem; }
.answer{ font-size: 3rem; }
}



/* 共通見出しありtable -----------------------*/
table.textTable{ border-collapse: collapse; border: none; margin: 0; width: 100%; }
table.textTable tr{ vertical-align: top; border-bottom: 1px solid #e5e5e5; }
table.textTable tr:first-child{ border-top: 1px solid #e5e5e5; }
table.textTable th{ text-align: justify; text-align-last: justify; text-justify: inter-ideograph; padding: 1em 1em 1em 0; white-space: nowrap; line-height: 1.5em; }
table.textTable td{ padding: 1em 0; line-height: 1.5em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.textTable{ font-size: 3rem; }
}

/*共通見出しなしUL*/
.textTable2{ display: block; position: relative; }
.textTable2::after{ /*clearfix*/ overflow: hidden; *zoom: 1; }
.textTable2 ul {
list-style: none;
display: block;
}
.textTable2 li {
float: left;
width: calc(50% - 0.5em);
display: block;
margin: 0 0.5em 0 0;
padding: 0 5px 5px 0;
}
.textTable2 li.w {
width: 100%;
}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.textTable2{ font-size: 3rem; }
.textTable2 li,
.textTable2 li.w { width: 100%; margin-bottom: 0.5em; }
}

/* コメント -----------------------*/
.commentBLK{ text-align: right; font-size: 1rem; margin: 0.5em 0 0; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.commentBLK{ font-size: 3em; }
}

/* トップページ -----------------------*/
table.textTable.indexTable{ font-size: 0.94em; }
table.textTable.indexTable th{ width: 4em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.textTable.indexTable{ font-size: 3rem; }
table.textTable.indexTable th{ display: block; padding:1em 0 0.5em 0; text-align: left; text-align-last: left; }
table.textTable.indexTable td{ display: block; padding:0 0 1em 0; }
}
/* トップページ共催後援 -----------------------*/
table.indexTable ul {
list-style: none;
display: block;
}
table.indexTable li {
float: left;
width: 28vw;
max-width: calc((100% / 3) - 0.5em);
display: block;
margin: 0 0.5em 0 0;
padding: 0 0 5px;
}
table.indexTable li.w {
width: 56vw;
max-width: calc(((100% / 3) * 2) - 0.5em);
margin: 0 1em 0 0;
}
@media screen and (min-width: 1481px) {/* 1481px以上の幅の場合に適応される */
table.indexTable li.w { width: 28vw; max-width: calc((100% / 3) - 0.5em); margin: 0 0.5em 0 0; }
}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.indexTable li,
table.indexTable li.w { width: 100%; max-width: 100%; }
}

/* 開催趣旨 -----------------------*/
p.purpose{ line-height: 2em; }
table.textTable.outlineTable th{ width: 10em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.textTable.outlineTable th{ display: block; padding:1em 0 0.5em 0; text-align: left; text-align-last: left; }
table.textTable.outlineTable td{ display: block; padding:0 0 1em 0; }
p.purpose{ font-size: 3rem; }
}
/* 開催概要共催後援 -----------------------*/
table.outlineTable ul {
list-style: none;
display: block;
}
table.outlineTable li {
float: left;
/*width: 38vw;*/width: calc((100% - 10em - 0.5em) / 2);
/*max-width: calc(50% - 0.5em);*/
display: block;
margin: 0 0.5em 0 0;
padding: 0 0 5px;
}
table.outlineTable li.w {
/*width: 76vw;*/width: calc(100% - 10em - 0.5em);
/*max-width: calc(100% - 1em);*/
margin: 0 1em 0 0;
}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.outlineTable li,
table.outlineTable li.w { width: 100%; max-width: 100%; }
}

/* マップ -----------------------*/
.mapImg{ margin: 2rem 0; padding: 0; text-align: center; }
.mapImg img{ width: 60%; height: auto; margin: 0 auto; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.mapImg img{ width: 100%; height: auto; }
}

/* 会場案内 -----------------------*/
table.textTable.accessTable1,
table.textTable.accessTable2{ margin: 1em auto; width: 44em; }
table.textTable.accessTable1 td:nth-child(1){ width: 26em; }
table.textTable.accessTable2 td:nth-child(1){ width: 10em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.textTable.accessTable1,
table.textTable.accessTable2{ margin: 1em auto; width: 100%; }
table.textTable.accessTable1 td:nth-child(1),
table.textTable.accessTable2 td:nth-child(1){ width: 100%; display: block; padding:1em 0 0.5em 0; }
table.textTable.accessTable1 td,
table.textTable.accessTable2 td{ display: block; padding:0 0 1em 0; }
}



/* 次テキストリンク -----------------------*/
.gotoSCH{ text-align:center; padding-top: 1em; }
a.textLinkNext { text-decoration: none; color: #004C8B; display: inline-block; font-size: 1em; margin: 0 auto; }
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
a.textLinkNext { font-size: 3rem; }
}
a.textLinkNext:hover { color: #990000; }
a.textLinkNext::after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f138"; margin-left: 0.5em; }
a.textLinkNext { position: relative; }
a.textLinkNext::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background-color: #ee0000;
transform-origin: bottom right;
transform: scaleX(0);
transition: transform 0.5s ease;
}
a.textLinkNext:hover::before {
transform-origin: bottom left;
transform: scaleX(1);
}




/* ボタンM -----------------------*/
.btnMwrap{ text-align:center; position: relative; margin: 1em auto 3em; }
.btnMshadow{ position: relative; display: inline-block; }
.btnMshadow:before {
content: "";
height: 1em;
display: inline-block;
position: absolute;
left: 5%;
right: 5%;
bottom: -0.5em;
/*z-index: -1;*/
border-radius: 1rem;
opacity: .5;
filter: blur(0.7em);
transform-style: preserve-3d;
transition: all .3s ease-out;
background: #000;
}
.btnMshadow:hover::before {
bottom: 0;
filter: blur(0.5em);
}
a.btnM {
display: inline-block;
position: relative;
font-size: 1.6em;
font-weight: bold;
margin: 0;
padding: 0.5em 0;
width: 22em;
text-decoration: none;
color: #fff;
background: linear-gradient(-15deg, rgba(0,104,183,1) 0%, rgba(31,164,219,1) 100%);
z-index: 2;
will-change: transform, filter;
transform-style: preserve-3d;
transition: all .3s ease-out;
}
a.btnM:hover { transform: scale(0.98); }
a.icoPDF:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f1c1"; margin-left: 0.5em; }
a.icoZIP:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f1c6"; margin-left: 0.5em; }
a.icoXLS:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f1c3"; margin-left: 0.5em; }
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.btnMwrap{ margin: 3em auto 6em; }
a.btnM { width: 66vw; font-size: 3em; padding: 0.5em; }
}




/* ボタンL -----------------------*/
.btnLwrap{  text-align:center; position: relative; margin: 5% auto 0; }
.btnLshadow{  position: relative; display: inline-block; }
.btnLshadow:before {
content: "";
height: 4em;
display: inline-block;
position: absolute;
left: 5%;
right: 5%;
bottom: -0.5em;
/*z-index: -1;*/
border-radius: 2rem;
opacity: .5;
filter: blur(1.5em);
transform-style: preserve-3d;
transition: all .3s ease-out;
background: #000;
}
.btnLshadow:hover::before {
bottom: 0;
filter: blur(1em);
}
a.btnL,
a.btnLnoicon {
display: inline-block;
position: relative;
font-size: 2em;
font-weight: bold;
margin: 0;
padding: 0.5em 2em 0.5em 2.5em;
text-decoration: none;
border-radius: 0.8rem;
color: #ffffff;
background: linear-gradient(45deg, #002f2e 0%, #007875 100%);
z-index: 2;
will-change: transform, filter;
transform-style: preserve-3d;
transition: all .3s ease-out;
}
a.btnL:hover,
a.btnLnoicon:hover { transform: scale(0.98); }
a.btnL:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f1c1"; margin-left: 0.5em; }
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.btnLwrap{  margin: 5% auto 10%; }
a.btnL,a.btnLnoicon { font-size: 4em; padding: 0.5em 1em 0.5em 1.5em; border-radius: 1rem; }
}



/* 申し込みフォーム -----------------------*/
/* → mailformpro.css */


/* 出展者専用ページ -----------------------*/
.exhibitorsInfo{ margin: 0 0 3rem; border: 2px solid #c00; border-radius: 0.2rem; padding: 1rem; }
.exhibitorsInfo h4{ color: #900; margin-bottom: 0.2em; }
.exhibitorsInfo p{ margin-bottom: 1em;; }
.exhibitorsInfo p:last-child{ margin-bottom: 0; }
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.exhibitorsInfo { padding: 2rem; }
}


/* フロアレイアウト -----------------------*/
.floorImage{ margin: 0 0 3em; }
.floorImage img{ width: 100%; height: auto; border: none; margin: 0; }


/* プログラム -----------------------*/
table.textTable.programTable { margin: 1em 0 3em; }
table.textTable.programTable th { color: #fff; background-color: #008d8a; text-align: center; text-align-last: center; padding: 1em 0; width: 5em; }
table.textTable.programTable td { padding: 1.2em 1em 1em 1em; }
.programCatch { font-size: 1.1em; line-height: 1em; font-weight: bold; color: #008d8a; margin-bottom: 0.5em; }
.programWord { float: left; font-size: 1em; line-height: 1.5em; overflow-wrap: break-word; word-wrap: break-word; text-align: justify; }
img.programPhoto { width: 15vw; height: auto; display: block; margin: 0 0 0 1em; float: right; }
.etcBox {background-color: #b1dcde; border-radius: .5em; padding: 1.5em; margin: 2em 0 1em;}
.logoImg { width: 50%; height: auto; display: block; margin: 0 auto 1em;}
.etcBox h4 { font-size: 1em; }
.etcBox p { font-size: 0.8em; margin-bottom: 1em; }
.etcBox ul { font-size: 0.8em; margin: 0 0 0 1.5em;}
.etcBox ul li { margin-bottom: 0.3em;}
#leaflet .flyerImage { margin: 2em auto 0; }
#leaflet .flyerImage img { width: 50%; height: auto; border: none; margin: 0 auto; }
#leaflet .paperImage { margin: 2em auto 0; }
#leaflet .paperImage img { width: 30% !important; height: auto; border: none; margin: 0 auto; }
.flyerImage { margin: 2em auto 0; }
.flyerImage img { width: 50%; height: auto; border: none; margin: 0 auto; }
.paperImage { margin: 2em auto 0; }
.paperImage img { width: 30% !important; height: auto; border: none; margin: 0 auto; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
table.textTable.programTable th { display: block; padding:0.5em; }
table.textTable.programTable th:empty { display: none; }
table.textTable.programTable td { display: block; margin-top: 0.5em; padding:0 0 1em 0; }
.programWord { float: none; font-size: 3rem; }
img.programPhoto { width: 60%; height: auto; display: block; margin: 0.5em auto 1em; float: none; }
.etcBox { font-size: 3rem; padding: 1em; margin: 2em 0 1em; }
.logoImg { width: 70%; height: auto; }
#leaflet .flyerImage img { width: 100%; height: auto; }
#leaflet .paperImage img { width: 70% !important; height: auto; }
.flyerImage img { width: 100%; height: auto; }
.paperImage img { width: 70% !important; height: auto; }
}


/* トップページ緊急告知 -----------------------*/
section.attention{ border: 4px solid #e00; background-color: #fff; padding: 0; margin:2em 2em 0; }
section.attention h2{ font-size: 1.5em; font-weight: bold; color:#fff; padding: 0.2em 0.5em 0.3em; margin: 0; border-radius: 0; background: #e00; }
section.attention div.word{ padding: 1em; }
section.attention div.word ul{ margin: 0 0 0 1em;}
section.attention div.word ul li{ margin-bottom: 0.3em;}
.topMoreBox{text-align:right; margin-top:-1.1em;}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
section.attention h2{ font-size: 3.2rem; padding: 0.2em 0.2em 0.5em; text-align: center; }
section.attention div.word{ font-size: 3rem; }
section.attention div.word a.textLinkNext { font-size: 3rem !important; }
.topMoreBox{ margin-top:0.5em;}
}


/* トップページ告知 -----------------------*/
section.info{ border: 4px solid rgb(0,141,138); background-color: #fff; padding: 0; margin:2em 2em 0; }/*rgb(0,141,138)*//*rgb(0,47,46)*/
section.info h2{ font-size: 1.5em; font-weight: bold; color:#fff; padding: 0.2em 0.5em 0.3em; margin: 0; border-radius: 0; background: rgb(0,141,138); }
section.info div.word{ padding: 1em; }
section.info div.word ul{ margin: 0 0 0 1em;}
section.info div.word ul li{ margin-bottom: 0.3em;}
.topMoreBox{text-align:right; margin-top:-1.1em;}
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
section.info h2{ font-size: 3.2rem; padding: 0.2em 0.2em 0.5em; text-align: center; }
section.info div.word{ font-size: 3rem; }
section.info div.word a.textLinkNext { font-size: 3rem !important; }
.topMoreBox{ margin-top:0.5em;}
}


/* オンライン -----------------------*/
.faseTable { width: 100%; margin: 1em 0 0 0; border-collapse: separate; border-spacing: 0 1em; }
.faseTable th { font-size: 1.8em; font-weight: bold; vertical-align: top; padding: 0.2em; background-color:#006d9e; color: #fff;  border-radius: 0.1em; text-shadow: 1px 1px 2px rgba(0,0,80,0.5);}
.faseTable td{ padding: 0.5em; }
.pImg { margin:1em 0 0 0; padding: 0; text-align: center; }
.pImg img { width: 80%; height: auto; }
.faseComment { text-indent: -1em; padding-left: 1em; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.faseTable { font-size: 3rem; margin-top: 0; }
.pImg img { width: 100%; height: auto; }
}


/* 出展者一覧 個別 -----------------------*/
.corpBtn h3{ color: #fff; padding:3px 0.5em; margin-bottom: 0.3em; display: block; float: none; }
.corpBtn li a{ text-decoration: none; display: block; padding: 2px 2px 2px 5px; }
.corpBtn.category1 h3{ background-color:#1f659f; }
.corpBtn.category1 li a{ color:#555; border: 1px solid #1f659f; background-color: #fff; border-left: 10px solid #1f659f; }
.corpBtn.category1 li a:hover{ color: #fff; border: 1px solid #1f659f; background-color: #1f659f; border-left: 10px solid #1f659f; }
.corpBtn.category2 h3{ background-color:#00a079; }
.corpBtn.category2 li a{ color:#555; border: 1px solid #00a079; background-color: #fff; border-left: 10px solid #00a079; }
.corpBtn.category2 li a:hover{ color: #fff; border: 1px solid #00a079; background-color: #00a079; border-left: 10px solid #00a079; }
.corpBtn.category3 h3{ background-color:#f1b13b; }
.corpBtn.category3 li a{ color:#555; border: 1px solid #f1b13b; background-color: #fff; border-left: 10px solid #f1b13b; }
.corpBtn.category3 li a:hover{ color: #fff; border: 1px solid #f1b13b; background-color: #f1b13b; border-left: 10px solid #f1b13b; }
.corpBtn.category4 h3{ background-color:#e37140; }
.corpBtn.category4 li a{ color:#555; border: 1px solid #e37140; background-color: #fff; border-left: 10px solid #e37140; }
.corpBtn.category4 li a:hover{ color: #fff; border: 1px solid #e37140; background-color: #e37140; border-left: 10px solid #e37140; }
.corpBtn.category5 h3{ background-color:#694485; }
.corpBtn.category5 li a{ color:#555; border: 1px solid #694485; background-color: #fff; border-left: 10px solid #694485; }
.corpBtn.category5 li a:hover{ color: #fff; border: 1px solid #694485; background-color: #694485; border-left: 10px solid #694485; }
.corpBtn.category6 h3{ background-color:#85bd58; }
.corpBtn.category6 li a{ color:#555; border: 1px solid #85bd58; background-color: #fff; border-left: 10px solid #85bd58; }
.corpBtn.category6 li a:hover{ color: #fff; border: 1px solid #85bd58; background-color: #85bd58; border-left: 10px solid #85bd58; }
.corpBtn.category7 h3{ background-color:#c53431; }
.corpBtn.category7 li a{ color:#555; border: 1px solid #c53431; background-color: #fff; border-left: 10px solid #c53431; }
.corpBtn.category7 li a:hover{ color: #fff; border: 1px solid #c53431; background-color: #c53431; border-left: 10px solid #c53431; }

.corpBtn.category0 h3 { /*background: linear-gradient(15deg, rgba(0,71,69,1) 0%, rgba(0,141,138,1) 49%, rgba(0,162,159,1) 100%); */background-color:#6e4400;}
.corpBtn.category0 li a { color:#555; border: 1px solid #ab6638; background-color: #fff; border-left: 10px solid #6e4400; }
.corpBtn.category0 li a:hover { color: #fff; border: 1px solid #ab6638; background-color: #ab6638; border-left: 10px solid #ab6638; }

.corpBtn{ display: block; position: relative; width: 100%; margin-bottom: 1em; padding: 0; }
.corpBtn ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; }
.corpBtn ul li { flex: 0 1 50%; width: 50%; display: block; margin: 0 0 0.1em 0; padding: 0 5px 5px 0;}
.corpBtn ul li.w { flex: 0 1 100%; width: 100%;}
.h3icon { height:1em; margin: 0 0.3em -0.15em 0;  }
.jumpMenu { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; list-style: none; }
.jumpMenu li { /*flex: 0 1 12%;*/flex: 0 1 9%; text-align: center; font-size: 1vw; font-weight: bold; border-radius: 0.5em; }
.jumpMenu li a { text-decoration: none; color: #fff; display: block; padding: 0.5em; }
.jumpMenu li a img{ display: block; margin: 0 auto 0.2em; height: 3em; width: auto; }
.jumpMenu li.category1 { background-color:#1f659f; }
.jumpMenu li.category2 { background-color:#00a079; }
.jumpMenu li.category3 { background-color:#f1b13b; }
.jumpMenu li.category4 { background-color:#e37140; }
.jumpMenu li.category5 { background-color:#694485; }
.jumpMenu li.category6 { background-color:#85bd58; }
.jumpMenu li.category7 { background-color:#c53431; }
.jumpMenu li.categoryguidebook { background-color:#999999; }
.jumpMenu li.category0 { background-color:#ab6638; font-size: 100% }
.guideBook { text-align: center; margin: 2em 0 0; }
.guideBook img{ width: 20%; height: auto; box-shadow: 0 0 3px rgba(0,0,0,0.3); }
.pdfMenu { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; list-style: none; margin: 2em 0; }
.pdfMenu li { flex: 0 1 12%; text-align: center; font-size: 1.2vw; border-radius: 0.5em; }

@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.corpBtn { font-size: 3rem; }
.corpBtn ul li,.corpBtn ul li.w { flex: 0 1 100%; width: 100%; }
.jumpMenu{ font-size: 3rem; justify-content: center; }
.jumpMenu li { /*flex: 0 1 22%;*/flex: 0 1 18%; margin: 0 1% 2%; font-size: 2.6vw; }
.jumpMenu li a img { margin: 0 auto 0.7em; }
.guideBook img { width: 70%; height: auto; }
.pdfMenu { justify-content: center; margin: 3em 0 2em; }
.pdfMenu li{ flex: 0 1 22%; margin: 0 1% 4%; }
.pdfMenu li a.textLinkNext { font-size: 3.6vw; }
}


/* 出展者 個別 -----------------------*/
.exhibitorHead{ display: flex; align-items: center; position: relative; }
.categoryNum { display: inline-block; color: #fff; padding:0 0.5em; font-size: 2em; font-weight: bold; border-radius: 5px; white-space: nowrap; }
body.category1 .exhibitorHead .categoryNum { background-color:#1f659f; }
body.category2 .exhibitorHead .categoryNum { background-color:#00a079; }
body.category3 .exhibitorHead .categoryNum { background-color:#f1b13b; }
body.category4 .exhibitorHead .categoryNum { background-color:#e37140; }
body.category5 .exhibitorHead .categoryNum { background-color:#694485; }
body.category6 .exhibitorHead .categoryNum { background-color:#85bd58; }
body.category7 .exhibitorHead .categoryNum { background-color:#c53431; }
img.corpLogo{ height: calc(2em + 12px); width: auto; margin: 2px 0.5em 0;}
.corpNum{font-size: 2em; line-height: 1.2; font-weight: bold;}
body.category1 .exhibitorHead .corpNum { /*color:#1f659f;*/ }
body.category2 .exhibitorHead .corpNum { /*color:#00a079;*/ }
body.category3 .exhibitorHead .corpNum { /*color:#f1b13b;*/ }
body.category4 .exhibitorHead .corpNum { /*color:#e37140;*/ }
body.category5 .exhibitorHead .corpNum { /*color:#694485;*/ }
body.category6 .exhibitorHead .corpNum { /*color:#85bd58;*/ }
body.category7 .exhibitorHead .corpNum { /*color:#c53431;*/ }

.exhibitorData{ padding: 0.2em 0.5em; margin: 0.5em 0 0 0; border-width: 1px; border-style: solid; }
body.category1 .exhibitorData { border-color:#1f659f; }
body.category2 .exhibitorData { border-color:#00a079; }
body.category3 .exhibitorData { border-color:#f1b13b; }
body.category4 .exhibitorData { border-color:#e37140; }
body.category5 .exhibitorData { border-color:#694485; }
body.category6 .exhibitorData { border-color:#85bd58; }
body.category7 .exhibitorData { border-color:#c53431; }
.exhibitorData ul{ list-style: none; display: flex; justify-content: space-between; align-items: center; font-size: 85%; }

.exhibitorUrl{ padding: 0.2em 0.5em; display: flex;}
.exhibitorUrl a{ display: inline-block; text-decoration: none; color: #fff; }
.exhibitorUrl span{ display: inline-block; text-align: right; margin: 0 0 0 auto; color: #fff; }
body.category1 .exhibitorUrl { background-color:#1f659f; }
body.category2 .exhibitorUrl { background-color:#00a079; }
body.category3 .exhibitorUrl { background-color:#f1b13b; }
body.category4 .exhibitorUrl { background-color:#e37140; }
body.category5 .exhibitorUrl { background-color:#694485; }
body.category6 .exhibitorUrl { background-color:#85bd58; }
body.category7 .exhibitorUrl { background-color:#c53431; }

.serviceImg{  width: 100%; height: auto; display: block; margin: 0; }
.pcbrR{ text-align: right; display: block;}

@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.exhibitorHead{ font-size: 1.5rem; }
.categoryNum { padding:0.1em 0.3em; font-size: 1.8em; border-radius: 0.2em; }
img.corpLogo{ height: calc(1em + 12px); width: auto; }
.exhibitorData ul{ flex-wrap: wrap; font-size: 2em; }
.exhibitorData ul li{ flex: 0 1 100%; }
.exhibitorUrl{ display: block;}
.prevName{ font-size: 2em; }
.pcbrR{ text-align: left; display: inline;}
}

/* 動画 -----------------------*/
.videoWrap{ width: 60%; margin: 2em auto 0; padding: 0; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.videoWrap{ width: 96%; }
}
.video-container {
 position: relative;
 width: 100%;
 padding-top: 56.25%;
 margin-bottom: 2.5rem; }
.video-container iframe {
 position: absolute;
 top: 0;
 right: 0;
 width: 100% !important;
 height: 100% !important; }

/* 出展の皆さまへ / 来場をご希望の方 -----------------------*/
.pageMenu { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; list-style: none; margin-bottom: 2rem; }
.pageMenu li { flex: 0 1 23%; margin: 1%; height: 4em; }
.pageMenu li a { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 1em 0; color: #fff; text-decoration: none; text-align: center; line-height: 1.2; }
.pageMenu li a:hover { color: #ff0; }
.pageMenu li a.nolink{ opacity: 0.5; background-color: #666; }
.pageMenu li a.nolink:hover { color: #fff; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.pageMenu li { flex: 0 1 48%; margin: 1%; height: 4em; font-size: 3rem; }
}
/* 出展の皆さまへ -----------------------*/
.for-exhibitors li a { background-color: #2A61E8; }
/* 出展の皆さまへ -----------------------*/
.pageMenu.for-exhibitors2 { margin-bottom: 0 !important; }
.pageMenu.for-exhibitors2 li { flex: 0 1 31% !important; height: auto; }
.for-exhibitors2 li a { color: #2A61E8; }
.for-exhibitors2 li a:hover { color: #193198;  }
.for-exhibitors2 li a img { width:50%; height: auto; border: 1px solid #ccc; margin-bottom: 1em; }
/* 来場をご希望の方 -----------------------*/
.for-visitors li a { /*background-color: #0089ce;*/ background: linear-gradient(-15deg, rgba(0, 137, 206,1) 0%, rgba(160,220,255,1) 100%); }
.pageMenu.for-visitors { margin-bottom: 0 !important; justify-content: center; }
.pageMenu.for-visitors li { flex: 0 1 31% !important; height: auto; }
/*.pageMenu.for-visitors li { flex: 0 1 48% !important; height: auto; }*/
.pageMenu.for-visitors li a span:after { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f054"; margin-left: 0.3em; }
.for-visitors-placedate{ display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: stretch; align-content: center; list-style: none; margin-bottom: 2rem; width: 100%; }
.for-visitors-placedate img{ flex: 0 1 auto; width: 100%; height: auto; display: inline-block; }
/*.for-visitors-placedate a{ flex: 0 1 auto; width: 50%; height: auto; display: inline-block; }*/
/*.for-visitors-placedate a img{ width: 100%; height: auto; display: inline-block; }*/
.for-visitors-txt{ margin-bottom: 2rem; }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.pageMenu.for-visitors li { flex: 0 1 98% !important; }
/*.pageMenu.for-visitors li { flex: 0 1 48% !important; }*/
/*.pageMenu.for-visitors li:nth-child(1){ flex: 0 1 98% !important; }*/
/*.pageMenu.for-visitors li:nth-child(6){ flex: 0 1 98% !important; }*/
.for-visitors-placedate{ flex-direction: column; }
.for-visitors-placedate img{ width: 98%; height: auto; display: block; margin: 4% auto 0; }
.for-visitors-placedate a{ width: 100%; display: block; margin: 4% auto 0 }
.for-visitors-placedate a img{ width: 100%; height: auto; display: block; margin: 0 }

.for-visitors-txt{ font-size: 2.4rem; }
}

/* 講演､セミナー･プログラム -----------------------*/
.stage-program-title{ background-color: #0089ce; padding: 10px 0; width: 100%; margin: 0; display: block; }
.stage-program-title img{ display: block; height: 1.5em; margin: 0 auto; }
.stage-program-title-day1{ border: 2px solid #0089ce; padding: 10px 0; width: 100%; margin: 0; display: block; }
.stage-program-title-day1 img{ display: block; height: 1.8em; margin: 0 auto; }
.stage-program-title-day2{ border: 2px solid #0089ce; padding: 10px 0; width: 100%; margin: 0; display: block; }
.stage-program-title-day2 img{ display: block; height: 1.8em; margin: 0 auto; }
/*.stTitle{ width: 100%; height: auto; margin: 0 auto; }*/
ul.stWrapMain{ list-style: none; display: flex; justify-content: space-between; }
ul.stWrapMain > li{ margin: 1em 0; flex: 0 1 48%; }
ul.stWrapPart{ list-style: none; display: block; height: 100%; }
ul.stWrapPart li{ }
ul.stWrapPart li.stageA,
ul.stWrapPart li.stageB{ display: block; width: 100%; }
ul.stWrapPart li.stageA img,
ul.stWrapPart li.stageB img{ display: block; width: 100%; height: auto; margin:0 auto 1.5rem; }
ul.stWrapPart li:nth-child(2){ padding: 0; width: 100%; }
ul.stWrapPart li:nth-child(2) div{ padding: 0 0 1em; margin-bottom: 1em; border-bottom: 2px solid #ddd; }
/*ul.stWrapPart li:nth-child(2) div:not(:last-child){ padding: 0 0 1em; margin-bottom: 1em; border-bottom: 2px solid #ddd; }*/
ul.stWrapPart li h6{ font-size: 1em; }
ul.stWrapPart li h5{ font-size: 1em; }
ul.stWrapPart li h5 strong{ font-size: 1.5em; }
ul.stWrapPart li p{ font-size: 0.9em; }
ul.stWrapPart li:nth-child(2) ul.phWrap{ list-style: none; display: flex; align-content: space-between; width: 100%; align-items: center; }
ul.stWrapPart li:nth-child(2) ul.phWrap li:nth-child(1){ width: calc(100% - 100px); padding: 0 1em; display: flex; flex-direction: column; line-height: 1.2; }
ul.stWrapPart li:nth-child(2) ul.phWrap li:nth-child(2){ width: 100px; padding: 0 !important; }
ul.stWrapPart li:nth-child(2) ul.eventWrap{ list-style: none; display: flex; align-content: space-between; width: 100%; align-items: center; }
ul.stWrapPart li:nth-child(2) ul.eventWrap li{ width: 100%; padding: 0.5em 1em; display: flex; flex-direction: column; line-height: 1.2; }
img.playerImg{ width: 100px; height: 100px; display: block; }
.phCap{font-size: 0.6em; line-height: 1.1; margin-top: 5px; display: inline-block; }
.cateColor1,
.cateColor2,
.cateColor3,
.cateColor4,
.cateColor5{ color: #fff; padding: 2px 0 2px 0.5em; }/* margin-bottom: 0.5em;*/
.cateColor1{ background-color: #fff100; color: #111; }
.cateColor2{ background-color: #efefef; color: #111; }
.cateColor3{ background-color: #9f9f9f; }
.cateColor4{ background-color: #00A6BA; }
.cateColor5{ background-color: #0089CE; }
.cateBgColor1{ background-color: #0089ce; color: #fff;  }
@media screen and (max-width: 768px) {/* 768pxまでの幅の場合に適応される */
.stage-program-title img{ height: 3.5em; }
.stage-program-title-day1 img{ height: 5em; }
.stage-program-title-day2 img{ height: 5em; }
ul.stWrapMain{ display: block; }
ul.stWrapMain > li{ flex: 0 1 100%; font-size: 2.25rem; }/* font-size: 2.5rem;*/
ul.stWrapPart li.stageA{  }
ul.stWrapPart li.stageB{ margin-top: 6rem; }
ul.stWrapPart li:nth-child(2) ul.phWrap li:nth-child(1){ width: calc(100% - 20vw); padding: 0.5em; }
ul.stWrapPart li:nth-child(2) ul.phWrap li:nth-child(2){ width: 20vw; }
img.playerImg{ width: 20vw; height: 20vw; }
ul.eventWrap li .co-sponsored-bnr img{ width: 40%; height: auto; }
}

/*タイマー（timers.js）*/
.timerOn { display: none; }
.timerOn.timerBefore { display: block; }

