@charset "UTF-8";



/* トップ */
/*------------------------------------------------------------------------------*/
#mainContent #news .clearfix #newsList .newsBox .icon {
	display: flex;
	justify-content: center;
	align-items: center;
}



#sponsor,
#sponsor * {
	box-sizing: border-box;
}
#sponsorContent1 p.banner {
	padding: 10px;
}
#sponsorContent1 a,
#sponsorContent2 a,
#sponsorContent3 a,
#sponsorContent4 a {
	display: flex!important;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
#sponsorContent1 img,
#sponsorContent2 img,
#sponsorContent3 img,
#sponsorContent4 img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}

/*#mainContent #sponsor #sponsorContent2 .box {
	height: 180px;
}
#mainContent #sponsor #sponsorContent3 .box {
	height: 120px;
}
#mainContent #sponsor #sponsorContent4 .box {
	height: 90px;
}*/

#mainContent #sponsor #sponsorContent2 .box a p.pic,
#mainContent #sponsor #sponsorContent3 .box a p.pic,
#mainContent #sponsor #sponsorContent4 .box a p.pic {
	display: block;
	height: 80%;
	margin: 0;
	position: relative;
}
#sponsorContent1 p.banner a {
	display: block;
	height: 100%;
	margin: 0;
	position: relative;
}
#mainContent #sponsor #sponsorContent4 {
	padding: 0;
}
/* screens smaller than 768-------------------- */
@media only screen and (max-width:768px) {

#mainContent #sponsor #sponsorContent1 p.banner {
	height: 0;
	padding-top: 21.6%;
	position: relative;
}
#mainContent #sponsor #sponsorContent1 p.banner a {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
}
#sponsorContent1 img {
	width: auto;
	height: auto;
	max-width: 90%;
	max-height: 90%;
}

#mainContent #sponsor #sponsorContent2 .box {
	height: calc(36vw / 2);
}
#mainContent #sponsor #sponsorContent3 .box {
	height: calc(45vw / 3);
}
#mainContent #sponsor #sponsorContent4 .box {
	height: calc(40vw / 4);
}

}


/*#mainContent #sponsor #sponsorContent2 .box:last-child,
#mainContent #sponsor #sponsorContent3 .box:last-child,
#mainContent #sponsor #sponsorContent4 .box:last-child {
	border-right: none;
}
#mainContent #sponsor #sponsorContent2 .box:nth-of-type(4n),
#mainContent #sponsor #sponsorContent3 .box:nth-of-type(6n),
#mainContent #sponsor #sponsorContent4 .box:nth-of-type(8n) {
	border-right: none;
}
#mainContent #sponsor #sponsorContent2 .box:nth-of-type(n+5),
#mainContent #sponsor #sponsorContent3 .box:nth-of-type(n+7),
#mainContent #sponsor #sponsorContent4 .box:nth-of-type(n+9) {
	border-top: 1px solid #ADC7D6;
}
@media only screen and (max-width:768px) {

#mainContent #sponsor #sponsorContent2 .box:nth-of-type(n+5),
#mainContent #sponsor #sponsorContent3 .box:nth-of-type(n+7),
#mainContent #sponsor #sponsorContent4 .box:nth-of-type(n+9) {
	border-top: none;
}

}*/


#mainFooter #support ul {
	justify-content: center;
}
#mainFooter #support ul li a {
	width: 100%;
	position: relative;
}
#mainFooter #support ul li a > img {
	width: auto;
	height: auto;
	max-width: 90%;
	max-height: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
/* screens smaller than 769-------------------- */
@media only screen and (min-width:769px) {

#mainFooter #support ul li {
	width: calc(100% / 6);
}

}
/* screens smaller than 768-------------------- */
@media only screen and (max-width:768px) {

#mainFooter #support ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#mainFooter #support ul li {
	float: none;
}

}





/* トップ */
/*------------------------------------------------------------------------------*/
#mainContent #exhibitorsList .box p.pic {
	width: 80%;
	position: relative;
}
#mainContent #exhibitorsList .box p.pic img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}





/* フォーム */
/*------------------------------------------------------------------------------*/
#mainContent #form #overview dt.day1 {
	background: #009DFF;
}
#mainContent #form #overview dt.day2 {
	background: #FF003B;
}
.btn_entry_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-direction: row-reverse;
}
.btn_entry_area > a {
	width: 48%;
	height: 0;
	cursor: pointer;
	background: url(../images/btn_bg01.png) no-repeat center center;
	background-size: cover;
	padding-top: 12.94%;
	position: relative;
	transition: all .2s;
}
.btn_entry_area > a:hover {
	opacity: .8;
}
.btn_entry_area > a > span {
	font-size: 1.1em;
	font-weight: bold;
	color: #fff;
	letter-spacing: .1em;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
/* screens smaller than 768-------------------- */
@media only screen and (max-width:768px) {

.btn_entry_area {
	width: 90%!important;
	margin: 0 auto;
}
.btn_entry_area > a {
	width: 100%;
	padding-top: 25.87%;
}
.btn_entry_area > a:hover {
	opacity: 1;
}
.btn_entry_area > a > span {
	font-size: 4.2vw;
}

}





div.header_emesg {
	padding: 20px;
	border: 2px solid #f00;
	color: #f00;
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	margin: 0 auto 20px;
}

span.must {
	display: inline-block;
	font-size: 14px;
	background: #E20000;
	color: #fff;
	line-height: 1em;
	padding: 5px 8px;
	margin-left: 7px;
	border-radius: 6px 0 6px 0;
}
.btn a img {
	width: 456px;
	height: 108px;
}
p.error {
	font-weight: bold;
	color: red;
	margin: 0;
}
input {
	padding: 0 8px;
}
input.w100 {
	width: 100px;
}
input.w150 {
	width: 150px;
}
input.w200 {
	width: 200px;
}
input.w230 {
	width: 230px;
}
input.w240 {
	width: 240px;
}
input.w250 {
	width: 250px;
}
input.error,
select.error,
textarea.error,
label.error,
span.error {
	background: #fcaeae!important;
}
div.check label.error {
	padding: 8px 10px 10px 10px;
}
#newsList p {
	overflow: hidden;
}
#newsList a {
	text-decoration: none;
}



#mainContent #form #customerInfo #cutomerForm td div.job.confirm:after {
	display: none;
}

span.applicant_age,
span.applicant_sex {
	margin-right: 20px;
}

#mainFooter p.lead+p.lead {
	margin-top: 8px;
}
#mainFooter p.lead > b {
	font-weight: bold;
}
@media only screen and (max-width:768px) {
	#mainFooter p.lead+p.lead {
		margin-top: 15px;
	}
}





#mainContent #community .community_main {
	width: 1058px;
	height: 665px;
	background: url(../img/top/community_pc.png) no-repeat top center;
	margin: 0 auto;
	position: relative;
}
#mainContent #community .community_main > .btn_area {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1058px;
	height: 135px;
	position: absolute;
	bottom: 9px;
	left: 0;
}
#mainContent #community .community_main > .btn_area > a {
	display: inline-block;
}
#mainContent #community .community_main > .btn_area > a:hover {
	opacity: 0.8;
}

@media only screen and (max-width:768px) {

#mainContent #community .community_main {
	width: 100%;
	height: 0;
	background: url(../img/top/community_sp.png) no-repeat top center;
	background-size: cover;
	padding-top: 92.63%;
}
#mainContent #community .community_main > .btn_area {
	width: 100%;
	height: 28%;
	bottom: 2.75%;
}
#mainContent #community .community_main > .btn_area > a:hover {
	opacity: 1;
}

}

.modal__content .modalContent > ul {
	margin-bottom: 1.5em;
	padding-left: 1em;
}

.modal__content .modalContent > ul.num > li {
	list-style-type: decimal;
	list-style-position: inside;
	text-indent: -1em;
	padding-left: 1em;
}

.modal__content .modalContent > ul > li > ul {
	padding-left: 1em;
}
.modal__content .modalContent > ul.num > li > ul {
	padding-left: 0;
}
.modal__content .modalContent > ul > li > ul > li {
	text-indent: -1em;
	padding-left: 1em;
}
.modal__content .modalContent > ul > li > ul > li::before {
	content: " - ";
}

.modal__content .modalContent .redBox dd > ul > li > ul > li {
	text-indent: -1em;
	margin-left: 0;
	padding-left: 1em;
}
.modal__content .modalContent .redBox dd > ul > li > ul > li::before {
	content: "-";
	padding: 0 .3em;
}





/* 20201001 add */
.modal__content .modalLogo {
	padding: 40px 0 60px;
}
.modal__content .modalLogo p span {
	display: inline-block;
	padding-top: .5em;
}

#mainContent h2 {
	margin: 0 auto 20px auto;
}


#mainContent #exhibitorsDetail h3 {
	line-height: 1.2em;
}


#mainContent .listBox .pic {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #353535;
	background-color: #fff;
	/*border: 1px solid #353535;*/
	margin-bottom: 10px;
	position: relative;
}
#mainContent .listBox .pic > a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	position: relative;
}
#mainContent .listBox .pic > a > i {
	display: none;
	font-size: 5em;
	color: #d5302c;
	line-height: 1;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
	z-index: 10;
}





@media only screen and (max-width:768px) {

.modal__content .modalLogo {
	padding: 8% 0 8%;
}

#mainContent h2 {
	margin: 0 auto 3% auto;
}

}
@media only screen and (max-width:690px) {

.modal__content .modalLogo p span {
	font-size: 4vw;
}

}





/* 20201005 add */
#mainContent #archives #archivesInner #searchBox > form {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
}
@media only screen and (max-width:768px) {
#mainContent #archives #archivesInner #searchBox input[type=text] {
	width: 100%;
	text-align: center;
	margin-bottom: 2%;
}
#mainContent #archives #archivesInner #searchBox button {
	width: 35%;
}
#mainContent #archives #archivesInner #searchBox button.btn_search {
	margin-left: 0;
}
}

#mainContent #archives #archivesInner .archiveBox p.pic {
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1px;
	background-color: #353535;
	background-color: #fff;
	position: relative;
}
#mainContent #archives #archivesInner .archiveBox p.pic a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	text-decoration: none;
	position: relative;
}






.mt10 {
	margin-top: 10px;
}
#mainContent #archives #archivesInner .archiveBox .textBox {
    border: 1px solid #A0A0A0;
}




/* 20201009 add 後で消す可能性あり */
#community #mainContent {
    width: 100%;
    max-width: 1040px;
    text-align: center;
    margin: 0 auto;
    padding: 50px 0 100px;
    position: relative;
}
#community #mainContent #community #collection {
    background: rgba(255,255,255,0);
    padding: 0;
}
#community #mainContent #community #collection .contestBox .textBox p.contestTitle {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
}
#community #mainContent #community #collection .contestBox.red p.contestTitle {
	color: #FF003B;
}
#community .modal_pink .modal__content .modalTitle {
	background: #FF003B;
}
#community .modal_pink .modal__content .modalTitle {
	color: #fff;
}
#community .modal_pink .modal__content .modalTitle p.text {
	color: #fff;
}

@media screen and (max-width: 768px) {


#community #mainContent {
    padding: 60px 0 50px;
}
#community #mainContent #community #collection {
    padding: 0 5% 50px;
}
#community #mainContent #community #collection .contestBox {
    width: 100%;
    max-width: 1040px;
    display: block;
    border-radius: 24px 6px 24px 6px;
    margin: 0 auto 30px;
}
#community #mainContent #community #collection .contestBox .linkBox {
    width: 100%;
    /*display: block;*/
    vertical-align: middle;
    border-radius: 0 3px 22px 0;
}
#community #mainContent #community #collection .contestBox .linkBox a {
    display: block;
    width: 70%;
    height: auto;
    margin: 0 auto;
    padding: 10px 0 0;
}
#community #mainContent #community #collection .contestBox .textBox p.contestTitle {
    font-size: 18px;
}

}
.modal__content .modalContent > ul.num > li.no_num {
	padding-left: 0;
	text-indent: 0;
	list-style: none;
}
#mainContent #community #collection p.contestTitle {
	line-height: 1.2;
}





/* 20201016 add */
#mainContent #sponsor #sponsorContent1 .sponsorContent1_title {
	text-align: center;
}
#mainContent #sponsor #sponsorContent1 .sponsorContent1_title img {
	vertical-align: top;
	position: static;
	-webkit-transform: translateY(0%) translateX(0%);
	transform: translateY(0%) translateX(0%);
}
#mainContent #sponsor #sponsorContent1 .contents_inner {
	margin: 3px;
	padding: 35px 0 0 0;
	background: rgba(255,255,255,0.5);
	border: 1px solid #C4DBFF;
	border-radius: 24px 6px 24px 6px;
}
#mainContent #sponsor #sponsorContent1 .contents_inner .clearfix {
	margin: 0;
	padding: 20px 200px 30px 210px;
	background: rgba(255,255,255,0);
	border: 0;
	border-radius: 0;
}

#mainContent #form #overview dt {
	display: none;
}
#mainContent #form #overview dd {
	width: 100%;
	float: none;
}
#mainContent #form #overview dd p.time {
	display: none;
}
#mainContent #form #overview dd p.logo img {
	vertical-align: top;
}
#mainContent #form #overview dd p.title {
	width: auto;
	font-size: 1.3em;
	text-align: center;
}
#mainContent #form #overview dd .textBox {
	width: 100%;
}
#mainContent #form #overview dd p.text {
	width: auto;
	font-size: 1.1em;
	text-align: center;
}
#mainContent #form #overview dd p.text > span {
	font-weight: bold;
}


@media screen and (max-width: 768px) {
#mainContent #sponsor #sponsorContent1 {
	padding: 0;
}
#mainContent #sponsor #sponsorContent1 .contents_inner {
	margin: 3px;
	padding: 3% 0 0 0;
}
#mainContent #sponsor #sponsorContent1 .sponsorContent1_title img {
	width: 100%;
	height: auto;
}
#mainContent #sponsor #sponsorContent1 .contents_inner .clearfix {
	margin: 0 1%;
	padding: 1% 3% 3% 3%;
}

#mainContent #form #overview dd .textBox {
	display: flex;
	flex-wrap: wrap;
	font-size: 3.2vw;
}
#mainContent #form #overview dd .textBox > p {
	display: block;
}
#mainContent #form #overview dd p.title {
	display: flex;
	align-items: center;
	width: calc(100% - 90px);
	font-size: 1.4em;
	padding-right: 0;
}
#mainContent #form #overview dd p.text {
	width: 100%;
}
}