@charset "utf-8";

#event-list {}
#event-list .inner-sct { padding: 50px 0 120px;}
#event-list .ctn-flex { display: flex; justify-content: space-between; width: 88%; max-width: 1280px; margin: 0 auto 90px; flex-wrap: wrap;}
#event-list .box { position: relative; width: 29.5%; max-width: 420px; padding: 30px 0;}
#event-list .box a { display: block; width: 100%; height: 100%; background: #fff; box-shadow: 12px 12px 0 #333; text-decoration: none;}
#event-list .box a dl { width: 100%; height: 100%; background: #fff;}
#event-list .box a dl dt { position: relative; width: 100%; padding-top: 100%; overflow: hidden;}
#event-list .box a dl dt img { position: absolute; left: 50%; top: 50%; width: 100%; transform: translate(-50%,-50%); transition: 0.3s linear;}
#event-list .box a dl dd { font-size: 15px; font-size: min(1.0vw,15px); font-weight: 700;}
#event-list .box a dl dd.type { padding: 6px 25px; background: #fff; font-size: 21px; font-size: min(1.35vw,21px); line-height: 1.2;}
#event-list .box a dl dd.detail { padding: 15px 25px; background: #003C88;}
#event-list .box a dl dd.detail span { position: relative; display: block;}
#event-list .box a dl dd.detail span.tit { margin-bottom: 15px; padding-bottom: 20px; border-bottom: solid 2px #FFB300;
 color: #FFB300;font-size: 21px; font-size: min(1.35vw,21px); line-height: 1.4;
}
#event-list .box a dl dd.detail span.date { padding: 4px 0 4px 30px; color: #fff;}
#event-list .box a dl dd.detail span.date:before { content: ''; display: block; width: 21px; height: 100%;
 background: url('/img/icn-date.svg') no-repeat 50% 50% / 100% auto;
 position: absolute; left: 0; top: 0;
 filter: brightness(0) invert(1);
}
#event-list .box a dl dd.detail span.date em { font-size: 28px; font-size: min(1.6vw,28px); line-height: 1;}
#event-list .box a dl dd.detail span.addr { padding: 4px 0 6px 30px; color: #fff; font-size: 21px; font-size: min(1.35vw,21px);}
#event-list .box a dl dd.detail span.addr:before { content: ''; display: block; width: 21px; height: 100%;
 background: url('/img/icn-pin.svg') no-repeat 50% 50% / 100% auto;
 position: absolute; left: 0; top: 0;
 filter: brightness(0) invert(1);
}
#event-list .box a:hover { box-shadow: 12px 12px 0 #003C88;}
#event-list .box a:hover dl {}
#event-list .box a:hover dl dt img { transform: translate(-50%,-50%) scale(1.04);}
#event-list .box a:hover dl dd.type { background: #003C88; color: #fff;}
#event-list .box a:hover dl dd.detail { background: #fff;}
#event-list .box a:hover dl dd.detail span.date { color: #003C88;}
#event-list .box a:hover dl dd.detail span.addr { color: #003C88;}
#event-list .box a:hover dl dd.detail span.date:before { filter: brightness(1) invert(0);}
#event-list .box a:hover dl dd.detail span.addr:before { filter: brightness(1) invert(0);}

#event-list .btn-more a { margin: 0 auto;}
@media (max-width: 1281px) {
	#event-list .ctn-flex { margin: 0 auto 60px;}
	#event-list .box a { box-shadow: 8px 8px 0 #333;}
	#event-list .box a:hover { box-shadow: 8px 8px 0 #003C88;}
}
@media (max-width: 1001px) {
	#event-list .inner-sct {  padding: 80px 0;}
	#event-list .box a dl dd { font-size: 10px;}
	#event-list .box a dl dd.type { padding: 6px 18px;}
	#event-list .box a dl dd.detail { padding: 10px 18px;}
	#event-list .box a dl dd.detail span.tit { margin-bottom: 10px; padding-bottom: 12px; border-bottom-width: 1px;}
	#event-list .box a dl dd.detail span.date { padding: 4px 0 2px 24px;}
	#event-list .box a dl dd.detail span.date:before { width: 14px;}
	#event-list .box a dl dd.detail span.date em {}
	#event-list .box a dl dd.detail span.addr { padding: 4px 0 6px 24px; font-size: 14px;}
	#event-list .box a dl dd.detail span.addr:before { width: 14px;}
}
@media (max-width: 801px) {
	#event-list .ctn-flex { display: block; margin: 0 auto 40px;}
	#event-list .box { width: 100%; margin: 0 auto; padding: 12px 0; }
	#event-list .box a dl dd { font-size: 14px;}
	#event-list .box a dl dd.type { padding: 4px 15px; font-size: 2.1vw;}
	#event-list .box a dl dd.detail { padding: 8px 15px;}
	#event-list .box a dl dd.detail span.tit { font-size: 2.8vw;}
	#event-list .box a dl dd.detail span.date em { font-size: 2.8vw;}
}
@media (max-width: 481px) {
	#event-list .box a dl dd { font-size: 13px;}
	#event-list .box a dl dd.type { padding: 4px 20px; font-size: 16px;}
	#event-list .box a dl dd.detail { padding: 8px 20px;}
	#event-list .box a dl dd.detail span.tit { font-size: 23px}
	#event-list .box a dl dd.detail span.date em { font-size: 26px;}
}


#event-article {}
#event-article .inner-sct { padding: 80px 0;}
#event-article .article-ctn { width: 92%; max-width: 1000px; margin: 0 auto 80px;}
#event-article .article-hd { margin-bottom: 12px; text-align: center;}
#event-article .article-hd p { margin-bottom: 20px; font-size: 18px; font-size: min(1.15vw,18px);}
#event-article .article-hd p span { display: block; width: 80%; max-width: 200px; margin: 0 auto; padding: 2px 10px;}
#event-article .article-hd p span.tag { background: #FFB300;}
#event-article .article-hd h2 { margin-bottom: 40px; font-size: 32px; font-size: min(2.2vw,32px); font-weight: 700; letter-spacing: 0.05rem; text-align: left;}
#event-article .article-hd ul { padding: 20px 10px; border-top: solid 1px #000; text-align: left;}
#event-article .article-hd ul li { position: relative; padding: 4px 0 6px 30px; color: #003C88; font-size: 24px; font-size: min(1.45vw,24px); font-weight: 700;}
#event-article .article-hd ul li.date:before { content: ''; display: block; width: 21px; height: 100%;
 background: url('/img/icn-date.svg') no-repeat 50% 40% / 100% auto;
 position: absolute; left: 0; top: 0;
}
#event-article .article-hd ul li.addr:before { content: ''; display: block; width: 21px; height: 100%;
 background: url('/img/icn-pin.svg') no-repeat 50% 50% / 100% auto;
 position: absolute; left: 0; top: 0;
}

#event-article .article-ctn figure { margin-bottom: 40px; text-align: center;}
#event-article .article-ctn figure img { width: 100%;}
#event-article .article-ctn .ctn h3 { font-size: 32px; font-size: min(2.2vw,32px);}
#event-article .article-ctn .ctn hr { width: 100%; height: 1px; margin: 16px auto; border: none; border-top: dashed 1px #333;}
#event-article .article-ctn .ctn p { letter-spacing: 0.05rem;}

@media (max-width: 1001px) {
	#event-article .article-hd p { font-size: 1.8vw;}
	#event-article .article-hd h2 { font-size: 3.2vw;}
	#event-article .article-hd ul li { font-size: 2.4vw;}
}
@media (max-width: 801px) {
	#event-article .article-hd p { font-size: 16px;}
}
@media (max-width: 641px) {
	#event-article .article-hd h2 { font-size: 36px;}
}
@media (max-width: 481px) {
	#event-article .inner-sct { padding: 40px 0;}
	#event-article .article-ctn { margin: 0 auto; padding-bottom: 50px;}
	#event-article .article-hd { margin-bottom: 12px;}
	#event-article .article-hd p { margin-bottom: 12px; font-size: 13px;}
	#event-article .article-hd h2 { margin-bottom: 18px; font-size: 20px; line-height: 1.4;}
	#event-article .article-hd ul { padding: 12px 8px;}
	#event-article .article-hd ul li { font-size: 16px;}

	#event-article .article-ctn figure { margin-bottom: 30px;}
	#event-article .article-ctn .ctn h3 { font-size: 16px;}
	#event-article .article-ctn .ctn hr { margin: 12px auto;}
	#event-article .article-ctn .ctn p { font-size: 13px;}
}



#form .inner-sct { width: 88%; max-width: 1000px; margin: 0 auto; padding-bottom: 120px;}
#form .tit { padding: 8px 0; background: #003C88;}
#form .tit h3 { color: #fff; font-size: 25px; font-size: min(2.2vw,25px); text-align: center; letter-spacing:5px;}
#form ul { margin-bottom: 40px;}
#form ul li { padding: 20px 0; border-bottom: dashed 1px #333;}
#form ul li dl { display: table; width: 100%;}
#form ul li dl dt,
#form ul li dl dd { display: table-cell; vertical-align: top;}
#form ul li dl dt { width: 320px; padding-right: 30px; font-size: 24px; font-size: min(1.45vw,24px);}
#form ul li dl dt.security { font-size: 21px; font-size: min(1.25vw,21px);}
#form ul li dl dd { width: auto; font-size: 21px; font-size: min(1.25vw,21px);}
#form ul li dl dt span.must { display: inline-block; margin-right: 20px; padding: 0 10px; background: #FFB300;
 color: #fff; font-size: 16px; font-size: min(1.15vw,16px); font-weight: 700; vertical-align: text-top;
}
#form ul li dl dt span.free { display: inline-block; margin-right: 20px; padding: 0 10px; background: #888888;
 color: #fff; font-size: 16px; font-size: min(1.15vw,16px); font-weight: 700; vertical-align: text-top;
}
#form ul li dl dd span.wpcf7-form-control-wrap { position: relative; display: block; width: 100%;}
#form ul li dl dd.select span.wpcf7-form-control-wrap { max-width: 300px; background: #EBEBEB;}
#form ul li dl dd.select span.wpcf7-form-control-wrap:before { content: ''; display: block; width: 0; height: 0; position: absolute; right: 10px; top: 35%;
 border: solid 8px transparent; border-top: solid 12px #003C88; z-index: 1;
}
#form ul li dl dd span.wpcf7-form-control-wrap select { position: relative; width: 100%; padding: 8px; background: none; appearance: none; -webkit-appearance: none; outline: none; z-index: 2;}
#form ul li dl dd input[type="text"],
#form ul li dl dd input[type="tel"],
#form ul li dl dd input[type="email"]  { width: 100%; padding: 8px; background: #EBEBEB;}

#form ul li dl dd.radio input[type="radio"] { opacity: 0; visibility: hidden; position: absolute;}
#form ul li dl dd .wpcf7-list-item { position: relative; display: inline-block; margin-right: 20px;}
#form ul li dl dd .wpcf7-list-item.last { margin-right: 0;}
#form ul li dl dd.radio span.wpcf7-list-item-label { position: relative; display: flex; align-items: center; cursor: pointer; padding-left: 32px;}
#form ul li dl dd.radio span.wpcf7-list-item-label::before { content: ""; display: block; width: 24px; height: 24px; background: #ebebeb; border: solid 1px #333; border-radius: 50%;
 position: absolute; left: 0; top: 50%; transform: translateY(-50%);
}
#form ul li dl dd.radio span.wpcf7-list-item-label::after { content: ""; display: block; width: 14px; height: 14px; background-color: #003C88; border-radius: 50%;
 position: absolute; left: 5px;top: 50%; transform: translateY(-50%); display: none;
}
#form ul li dl dd.radio input[type="radio"]:checked + span.wpcf7-list-item-label::after { display: block;}


#form ul li dl dd.check input[type="checkbox"] { position: absolute; left: 5px; top: 50%;}
#form ul li dl dd.check span.wpcf7-list-item-label { position: relative; display: flex; align-items: center; cursor: pointer; padding: 5px 0; padding-left: 32px;}
#form ul li dl dd.check span.wpcf7-list-item-label::before { content: ""; display: block; width: 24px; height: 24px; background: #ebebeb; border: solid 1px #333;
 position: absolute; left: 0; top: 50%; transform: translateY(-50%);
}
#form ul li dl dd.check span.wpcf7-list-item-label::after { content: ""; display: block; width: 14px; height: 14px; background-color: #003C88;
 position: absolute; left: 5px;top: 50%; transform: translateY(-50%); display: none;
}
#form ul li dl dd.check input[type="checkbox"]:checked + span.wpcf7-list-item-label::after { display: block;}


#form ul li dl dd textarea { width: 100%; height: 120px; padding: 8px; background: #EBEBEB;}
#form ul li dl dd span.memo { display: block; padding: 8px 0; color: #333; font-size: 18px; letter-spacing: 0.05rem;}

#form p.txt { margin-bottom: 10px; font-size: 21px; font-size: min(1.35vw,21px); text-align: center;}
#form .confirm { width: 100%; max-width: 140px; margin: 0 auto 30px; font-size: 21px; font-size: min(1.35vw,21px);}
#form .confirm span.wpcf7-list-item-label { position: relative; display: flex; align-items: center; cursor: pointer; padding-left: 32px;}
#form .confirm span.wpcf7-list-item-label::before { content: ""; display: block; width: 24px; height: 24px; background: #ebebeb; border: solid 1px #333;
 position: absolute; left: 0; top: 50%; transform: translateY(-50%);
}
#form .confirm span.wpcf7-list-item-label::after { content: ""; display: block; width: 14px; height: 14px; background-color: #003C88;
 position: absolute; left: 5px; top: 50%; transform: translateY(-50%); display: none;
}
#form .confirm label { position: relative;}
#form .confirm input[type="checkbox"] { position: absolute; left: 5px; top: 50%;}
#form .confirm input[type="checkbox"]:checked + span.wpcf7-list-item-label::after { display: block;}

#form .btn-submit { width: 72%; max-width: 420px; margin: 0 auto;}
#form .btn-submit input[type="submit"] { display: block; width: 100%; padding: 10px; background: #FFB300; border-radius: 5px; box-shadow: 5px 5px 0 #333;
 color: #333;  font-size: 21px; font-size: min(1.35vw,21px); font-weight: 700; text-align: center;
}
#form .btn-submit input[type="submit"]:hover { opacity: 0.8;}
@media (max-width: 801px) {
	#form .tit p { font-size: 2.1vw;}
	#form ul li dl dt { width: 220px; font-size: 2.4vw;}
	#form ul li dl dt.security { font-size: 2.1vw;}
	#form ul li dl dd { font-size: 2.1vw;}
	#form ul li dl dd span.memo { font-size: 14px;}
	#form p.txt { font-size: 16px;}
	#form .confirm { font-size: 16px;}
	#form .btn-submit input[type="submit"] { font-size: 18px;}
}
@media (max-width: 641px) {
	#form .tit h3 { font-size: 3.2vw;}
	#form ul li dl dt,
	#form ul li dl dd { display: block;}
	#form ul li dl dt { width: 100%; margin-bottom: 8px; font-size: 16px;}
	#form ul li dl dt.security { font-size: 15px;}
	#form ul li dl dd { width: 100%; font-size: 16px;	}
	#form ul li dl dt span.must { font-size: 14px;}
	#form ul li dl dt span.free { font-size: 14px;}
	#form ul li dl dd span.memo { padding: 4px 0;}
	#form p.txt { text-align: left;}
	#form .confirm { margin: 0 0 20px;}
	#form .btn-submit input[type="submit"] { padding: 6px; font-size: 18px;}
}
@media (max-width: 481px) {
	#form .inner-sct { padding: 60px 0 80px;}
	#form .tit { margin-bottom: 12px;}
	#form .tit h3 { font-size: 18px;}
	#form ul li { padding: 12px 0;}
	#form ul li dl dt { font-size: 16px; font-weight: 700;}
	#form ul li dl dt span.must { font-size: 12px;}
	#form ul li dl dt span.free { font-size: 12px;}
	#form ul li dl dd { font-size: 14px;}
	#form ul li dl dd .wpcf7-list-item { width: 100%; margin: 0 auto 8px;}
	#form ul li dl dd.check .wpcf7-list-item { width: 48%; margin: 0 auto 8px;}
	#form ul li dl dd .wpcf7-list-item.last { margin-bottom: 0;}
	#form ul li dl dd span.wpcf7-list-item-label { padding-left: 28px;}
	#form ul li dl dd span.wpcf7-list-item-label::before { width: 20px; height: 20px;}
	#form ul li dl dd span.wpcf7-list-item-label::after { width: 12px; height: 12px; left: 4px;}
	#form ul li dl dd span.memo { font-size: 12px;}

	#form p.txt { font-size: 14px;}
	#form .confirm { font-size: 14px;}
	#form .confirm span.wpcf7-list-item-label { padding-left: 32px;}
	#form .confirm span.wpcf7-list-item-label::before { width: 20px; height: 20px;}
	#form .confirm span.wpcf7-list-item-label::after { width: 12px; height: 12px; left: 4px;}

	#form .btn-submit input[type="submit"] { font-size: 16px;}
}





#event-article .ctn p{
    margin-bottom:1em;
}
#event-article table{
    border:1px solid #333;
    margin-bottom:3em;
}
#event-article td{
    border:1px solid #333;
    padding:1em 2em;
}
.emoji{
    width: 1em;
    vertical-align: -2px;
    margin-right: 8px;
}
#form li dt p{
	font-size:90%;
}
#form ul li dl dd input[type="date"] {
    padding: 8px;
    background: #EBEBEB;
}