@charset "utf-8";
.specialContentWrap{
	border-top: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
    background-color: #FFF;
	position: relative;
	width: 100%;
}

.contestDetailList{
	text-indent: -0.5em;
	padding-left: 0.5em;
}
.contestDetailList.-kome{
	text-indent: -1em;
	padding-left: 1em;
}


.page_title{
	font-size: min(calc(26 / var(--vw-min) * 100vw), 26px);
	text-align: center;
	line-height: 1;
	font-weight: 700;
}
.page_title--large{
	display: inline-block;
	font-size: 125%;
	margin-bottom: 0.75em;
}
.page_title--large.-mb{
	margin-bottom: 1em;
}
@media screen and (max-width:768px){
	.page_title{
		font-size: calc(32 / var(--vw-min) * 100vw);
	}
}

.-c_orange{
	color: var(--color-orange);
}
.-c_blue{
	color: var(--color-blue);
}
.-w600{
	font-weight: 600;
}

.contest__headText{
	padding-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
	padding-bottom: 0;
}

/*-----------------------------------------------
 * SPECIAL - cd_event TOP
-------------------------------------------------*/
.contest__listsWrap{
	display: flex;
	justify-content: center;
	padding-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
	padding-bottom: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
@media screen and (max-width:768px){
	.contest__listsWrap{
		padding-top: calc(64 / var(--vw-min) * 100vw);
		padding-bottom: calc(64 / var(--vw-min) * 100vw);
	}
}

.contest__listsWrap .contest__lists{
	display: block;
	padding-top: unset;
	padding-bottom: unset;
}
.contest__listsWrap .contest__lists > .contest__list{
	justify-content: unset;
}

.contest__list:not(:last-child) {
    margin-bottom: min(calc(8 / var(--vw-min) * 100vw), calc(8px * var(--max-percent)));
}
.contest__list.-mt{
	margin-top: min(calc(20 / var(--vw-min) * 100vw), calc(20px * var(--max-percent)));
}



.contest__h4.-mt{
	margin-top: min(calc(48 / var(--vw-min) * 100vw), calc(48px * var(--max-percent)));
}


.event__footCaution{
	margin-top: min(calc(64 / var(--vw-min) * 100vw), calc(64px * var(--max-percent)));
}

/*-----------------------------------------------
 * SPECIAL - cd_event FORM
-------------------------------------------------*/
.formArticle{
	padding-top: 0;
}
.contest__txt.-odai{
	padding-top: 0;
}


/**
* FORM
**/
.formArea{
	width: 100%;
	max-width: 816px;
	margin: 0 auto;
	padding: min(calc(48 / var(--vw-min) * 100vw), calc(48px * var(--max-percent)));
	position: relative;
	background-color: rgba(0, 0, 0, 2%);
	border: 1px solid #000;
}
.formArea__head{
	font-size: 112.5%;
	text-align: center;
	font-weight: 600;
}
@media screen and (max-width:768px){
	.formArea{
		border-width: var(--sp-size-2);
		padding: calc(32 / var(--vw-min) * 100vw) calc(24 / var(--vw-min) * 100vw);
	}
}

.formArea.-mt {
    margin-top: min(calc(64 / var(--vw-min) * 100vw), 64px);
}



/* eventLists */
.fonmLists{
	padding-top: min(calc(40 / var(--vw-min) * 100vw), calc(40px * var(--max-percent)));
}
.formList:not(:last-child){
	padding-bottom: 1.5em;
}
.formList.--listflex{
	display: flex;
}
.formList.--listflex dt{
	flex-shrink: 0;
	padding-right: 1em;
}

.formList__dt{
	margin-bottom: 0.75em;
	color: var(--color-orange);
	font-weight: 600;
	line-height: 1;
}
.formList:nth-of-type(even) .formList__dt{
	color: var(--color-blue);
}

.formList.--listflex .formList__dt{
	margin-bottom: 0;
}

.formList input,
.formList textarea,
.form_confirmTxt{
	width: 100%;
	max-width: 100%;
	padding: 1em;
    background-color: #fcfcfc;
    outline: none;
    border-radius: 0;
	border: 1px solid rgba(0,0,0,.4);
}
.formList input{
    height: 3em;
    line-height: 1;
}
.form_confirmTxt{
	border: 1px solid rgba(0,0,0,.2);
}

input[type="submit"]{
	cursor: pointer;
}

.formList__dd_notice{
	padding: 0.5em 0;
	font-size: 75%;
	font-weight: 700;
	color: #ff000b;
}

.formBtn.-submit{
	min-width: min(calc(220 / var(--vw-min) * 100vw), 220px);
}
.news_link.-back{
	min-width: min(calc(220 / var(--vw-min) * 100vw), 220px);
	color: var(--color-black);
    background-color: #FFF;
}
@media screen and (hover:hover) and (pointer: fine){
	.news_link.-back:hover{
		background-color: var(--color-black);
		color: #FFF;
	}
}



@media screen and (max-width:768px){
	.formList__dt.-s_line2{
		line-height: 1.6667;
	}
}


@media screen and (hover:hover) and (pointer: fine){
	.news_link.-back:hover{
		background-color: var(--color-black);
		color: #FFF;
	}
}

.formList__inputFlex{
	display: flex;
	align-items: center;
}
.formList__inputFlexElement{
	width: min(calc(280 / var(--vw-min) * 100vw), 280px);
}
.formList__inputFlexElement.-mr{
	margin-right: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.formList__inputFlexElement.-ml{
	margin-left: min(calc(24 / var(--vw-min) * 100vw), 24px);
}
.formList__inputFlexElement.-flex{
	display: inline-flex;
	align-items: center;
}
.formList__inputFlexElement_label{
	padding-right: 0.75em;
}

@media screen and (max-width:768px){
	.formList__inputFlexElement{
		width: calc(264 / var(--vw-min) * 100vw);
	}
	.formList__inputFlexElement.-mr{
		margin-right: 1.5em;
	}
	.formList__inputFlexElement.-ml{
		margin-left: 1.5em;
	}
}


/* ZIP */
.formList__inputFlexElement.zip1{
	width: 6em;
	margin-right: 0.5em;
}
.formList__inputFlexElement.zip2{
	width: 8em;
	margin-left: 0.5em;
}




/* SELECT */
.c-formSelectItem{
	position: relative;
}
.c-formSelectItem:before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: min(calc(16 / var(--vw-min) * 100vw), 16px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: min(calc(9.5 / var(--vw-min) * 100vw), 9.5px) min(calc(5.5 / var(--vw-min) * 100vw), 5.5px) 0 min(calc(5.5 / var(--vw-min) * 100vw), 5.5px);
	border-color: var(--color-black) transparent transparent transparent;
	margin: auto 0;
}
.formList select{
	min-width: min(calc(240 / var(--vw-min) * 100vw), 240px);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	line-height: 1;
	padding: 0.5em 1em;
	padding-left: min(calc(48 / var(--vw-min) * 100vw), 48px);
    outline: none;
    border-radius: 0;
	outline: none;
	border-radius: 0;
	height: 3em;
	border: unset;
	color: var(--color-black);
	background-color: #fcfcfc;
    border-radius: 0;
	border: 1px solid rgba(0,0,0,.4);
}
@media screen and (max-width:768px){
	.c-formSelectItem:before{
		left: calc(24 / var(--vw-min) * 100vw);
		border-width: calc(19 / var(--vw-min) * 100vw) calc(11 / var(--vw-min) * 100vw) 0 calc(11 / var(--vw-min) * 100vw);
	}
	.formList select{
		padding-left: calc(64 / var(--vw-min) * 100vw);
	}
}


/* CHECKBOX */
.c-formCheckbox{
	display: inline-flex;
	align-items: center;
	gap: min(calc(8 / var(--vw-min) * 100vw), 8px);
	line-height: 1;
	cursor: pointer;
}
input.elem_check {
	appearance: none;
	position: relative;
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(20 / var(--vw-min) * 100vw), 20px);
	border: 1px solid rgba(0,0,0,.4);
	border-radius: 2px;
	background-color: #ffffff;
	cursor: pointer;
	padding: 0;
}
  
input.elem_check:checked {
	background-color: transparent;
}
  
input.elem_check:checked::after {
	content: "";
	position: absolute;
	top: max(calc(-4 / var(--vw-min) * 100vw), -4px);
	left: min(calc(2 / var(--vw-min) * 100vw), 2px);
	width: min(calc(20 / var(--vw-min) * 100vw), 20px);
	height: min(calc(10 / var(--vw-min) * 100vw), 10px);
	border-bottom: min(calc(3 / var(--vw-min) * 100vw), 3px) solid var(--color-orange);
	border-left: min(calc(3 / var(--vw-min) * 100vw), 3px) solid var(--color-orange);
	transform: rotate(-45deg);
}
.c-formCheckbox__text{
	font-weight: 700;
}


.form_thanks{
	border: unset;
	background-color: rgba(0, 0, 0, 1%);
}
.form_thanks > h3{
	font-size: 150%;
	font-weight: 700;
	text-align: center;
	color: var(--color-orange);
}
.form_thanks--notice{
	padding-top: min(calc(26 / var(--vw-min) * 100vw), calc(26px * var(--max-percent)));
	font-size: 112.5%;
	font-weight: 600;
}

@media screen and (max-width:768px){
	.form_thanks--notice{
		font-size: 100%;
		padding-top: calc(24 / var(--vw-min) * 100vw);
	}
}


/* Label */
.form_labelLists{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: min(calc(12 / var(--vw-min) * 100vw), calc(12px * var(--max-percent)));
}
.form_labelList{
	line-height: 1;
}
.form_labelList input[type="radio"]{
	display: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	margin: 0;
}
.form_label{
	display: inline-block;
	position: relative;
	cursor: pointer;
	transition: color .2s ease, opacity .2s ease, font-size .2s ease, backdround-color .2s ease;
	padding: 0.75em 0.5em 0.75em 0.75em;
	border-radius: 6px;
	overflow: hidden;
	background-color: #fcfcfc;
}
.form_label:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 1px solid rgba(0,0,0,.4);
	background-color: rgba(255,255,255,25%);
	border-radius: 6px;
}
.form_labelText{
	position: relative;
}
.form_labelList input[type="radio"]:checked + .form_label{
	color: #FFF;
	background-color: var(--color-orange);
	font-weight: 600;
	font-size: 102.5%;
}

.quizList:nth-of-type(even) input[type="radio"]:checked + .form_label{
	background-color: var(--color-blue);
}

@media screen and (max-width:768px){
	.form_labelLists.-s_column{
		flex-direction: column;
		align-items: flex-start;
	}
	.form_label:before{
		border-radius: calc(8 / var(--vw-min) * 100vw);
	}
}


/**
* confirmLists
**/
@media screen and (min-width:769px){
	.confirmLists .formList{
		display: flex;
		align-items: center;
	}
	.confirmLists .formList .formList__dt{
		padding-right: 0.75em;
		margin-bottom: 0;
		flex-shrink: 0;
	}
}
.form_confirmTxt{
	font-size: 110%;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	font-weight: 700;
	background: rgba(255,255,255,60%);
	border: unset;
}
@media screen and (max-width:768px){
	.form_confirmTxt{
		padding-left: 0.5em;
		padding-right: 0.5em;
	}
}



/**
* Error
**/
.error{
	margin: 2em 0 0;
	font-weight: 700;
    color: #ff000b;
	line-height: 2;
}


small.formNoticeText{
	font-size: 75%;
	display: inline-block;
}



.validationModal_text{
	font-size: 93.75%;
	line-height: 2;
	padding-top: 2.5em;
}
@media screen and (max-width:768px){
	.validationModalCont > .formArea{
		padding-top: calc(48 / var(--vw-min) * 100vw);
		padding-bottom: calc(48 / var(--vw-min) * 100vw);
	}	
}
