
body
{
	
}

main
{
	font-family    : 'Zen Maru Gothic', "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size      : 16pt;
	font-weight    : 500;
	line-height    : 1.8;
	
	min-width      : 1100px;
	
	overflow       : hidden;
}

a
{
	/* color          : #17a1e5; */
}

a:hover
{
	 /* color          : #40bfff; */
}

.page-top
{
	z-index        : 3;
	
	display        : none!important;	
}


/* --------------------------------------- */


.btn_obo a
{
	display        : block;
	
	margin         : 0 auto;
	padding        : 20px 0px;
	
	width          : 630px;
	
	color          : #ff5500;
	font-size      : 130%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
	text-decoration: none;
	
	background     : #fff;
	border         : 4px solid #ff5500;
	box-shadow     : 0px 6px 0px 0px #ff5500;
	border-radius  : 100px;
}

.btn_obo a:hover
{
	background     : #ffff19;
}

.btn_obo_off
{
	display        : block;
	
	margin         : 0 auto;
	padding        : 20px 0px 22px;
	
	width          : 630px;
	
	color          : #666;
	font-size      : 130%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
	text-decoration: none;
	
	background     : #ccc;
	box-shadow     : 0px 0px 0px 4px #666, 0px 6px 0px 4px #666;
	border-radius  : 100px;
}





/*=========================================================================================================

  MAIN_VISUAL

=========================================================================================================*/



#MAIN_VISUAL
{
	position       : relative;
	
	margin         : 65px 0 0;
	
	background     : url(/asset/img/5ch-keyword/2609/present_back.png) top center repeat #599f25;
}

#MAIN_VISUAL .inner
{
	position       : relative;
	
	margin         : 0 auto;
	padding        : 60px 0 60px;
	
	width          : 1100px;

	text-align     : center;
}

#MAIN_VISUAL .main_image
{
	position       : relative;
	
	z-index        : 2;
}

.about_period
{
	text-align     : center;

	background     : #cf351c;
}

.period_belt
{
	display        : flex;
	justify-content: center;
	align-items    : center;
	gap            : 30px;

	padding        : 15px 0;

	background     : #cf351c;
}

.period_belt .period_dt
{
	padding        : 8px 25px 10px;

	color          : #cf351c;
	font-size      : 110%;
	font-weight    : bold;
	line-height    : 1.0;

	background     : #fff;	
}

.period_belt .period_dd
{
	display        : flex;
	align-items    : baseline;

	color          : #fff;
	font-size      : 140%;
	font-weight    : bold;
	line-height    : 1.0;
}

.period_belt .period_dd .t1
{
	font-size      : 100%;
}

.period_belt .period_dd .t2
{
	margin-left    : 2px;
	margin-right   : 5px;

	font-size      : 90%;
}

.period_belt .period_dd .t3
{
	margin         : 0 3px;
	margin-bottom  : 8px;

	font-size      : 160%;
}

.period_belt .period_dd .t4
{
	font-size      : 100%;
}

.period_belt .period_dd .t5
{
	position       : relative;
	top            : -5px;

	margin-left    : 5px;
	padding        : 7px;

	color          : #cf351c;
	font-size      : 90%;

	background     : #fff;
	border-radius  : 50%;
}

.period_belt .period_dd .t6
{
	margin         : 0 10px;
	
	font-size      : 100%;
}




/*=========================================================================================================

  ABOUT

=========================================================================================================*/



#ABOUT
{
	background     : #fff;
}

#ABOUT .inner
{
	margin         : 0 auto;
	padding        : 60px 0 110px;
	
	width          : 1100px;
}

#ABOUT .text_main
{
	color          : #1a1a1a;
	font-size      : 130%;
	text-align     : center;
	line-height    : 2.0;
}

#ABOUT .text_main .text_01
{
	display        : block;

	font-size      : 140%;
	font-weight    : bold; 
}

#ABOUT .text_main .text_02
{
	display        : block;
}

#ABOUT .text_main .text_03
{
	display        : block;
	
	color          : #cf351c;
}

#ABOUT .btn_box
{
	display        : flex;
	justify-content: center;
	align-items    : center;
	gap            : 60px;

	margin-top     : 60px;
}

#ABOUT .btn_present,
#ABOUT .btn_howto
{
	text-align     : center;
}

#ABOUT .btn_present a
{
	display        : inline-block;
	
	background     : #ed3c19;
	box-shadow     : 0px 5px 0px 0px #bf3013;
	border-radius  : 15px;
}

#ABOUT .btn_howto a
{
	display        : inline-block;
	
	background     : #4c9d91;
	box-shadow     : 0px 5px 0px 0px #337369;
	border-radius  : 15px;
}

#ABOUT .btn_present a:hover,
#ABOUT .btn_howto a:hover
{
	background     : #ffac07;
	box-shadow     : 0px 5px 0px 0px #d28c00;
}

#ABOUT .program_box
{
	margin-top     : 100px;
	
	background     : #fffa99;
}

#ABOUT .program_box .text_box
{
	color          : #fff;
	font-size      : 220%;
	font-weight    : bold;
	text-align     : center;
	letter-spacing : 0.1em;
	
	background     : #ff7f00;
}

#ABOUT .program_box .text_box p
{
	margin         : 0 auto;
}

#ABOUT .program_box .logo_box
{
	display        : flex;
	justify-content: center;
	
	padding        : 50px 0;
	
	width          : 100%;
}

#ABOUT .program_box .logo_box li
{
	margin         : 0 20px;
}





/*=========================================================================================================

  HOWTO

=========================================================================================================*/



#HOWTO
{
	background     : #fffa99;
}

#HOWTO .inner
{
	margin         : 0 auto;
	padding        : 80px 0 80px;
	
	width          : 1100px;
}

#HOWTO h2
{
	text-align     : center;
}

#HOWTO .text_main
{
	margin-top     : 50px;
	
	color          : #1a1a1a;
	font-size      : 115%;
	text-align     : center;
	line-height    : 2.2;
}

#HOWTO .text_main + .text_main
{
	margin-top     : 30px;
}

#HOWTO .text_limit
{
	margin         : 40px auto 0;
	padding        : 10px 0;
	
	width          : 720px;
	
	text-align     : center;
	
	background     : #cf351c;
}

#HOWTO .limit_box,
#PRESENT .limit_box
{
	display        : flex;
	justify-content: center;
	align-items    : center;
	gap            : 30px;

	margin         : 0 auto;
	padding        : 10px 0;
	
	width          : 100%;
	
	text-align     : center;
	
	background     : #cf351c;
}

#HOWTO .limit_box
{
	margin-top     : 50px;
	
	width          : 720px;
}

#HOWTO .limit_box .limit_dt,
#PRESENT .limit_box .limit_dt
{
	padding        : 8px 15px 10px;

	color          : #cf351c;
	font-size      : 120%;
	font-weight    : bold;
	line-height    : 1.0;

	background     : #fff;
}

#HOWTO .limit_box .limit_dd,
#PRESENT .limit_box .limit_dd
{
	display        : flex;
	align-items    : center;

	color          : #fff;
	font-size      : 140%;
	font-weight    : bold;
	line-height    : 1.0;
}

#HOWTO .limit_box .limit_dd .num,
#PRESENT .limit_box .limit_dd .num
{
	margin         : 0 5px;
	margin-bottom  : 3px;

	font-size      : 140%;
}


/* --------------------------------------- */


#HOWTO .obo_box
{
	margin-top     : 70px;
	padding        : 60px 0;
	
	border-top     : 5px dotted #8b5b2c;
	border-bottom  : 5px dotted #8b5b2c;
}

#HOWTO .obo_box .step_box
{
	display        : flex;
	gap            : 100px;
}

#HOWTO .obo_box .step_box li
{
	position       : relative;

	width          : 300px;
}

#HOWTO .obo_box .step_box li:not(:last-child)::after
{
	content        : "";

	position       : absolute;
	top            : 150px;
	right          : -58px;
	
	width          : 26px;
	height         : 26px;
	
	border-top     : 8px solid #ff7f00;
	border-right   : 8px solid #ff7f00;
	
	transform      : translateY(-50%) rotate(45deg);
}

#HOWTO .obo_box .step_box .txt_step
{
	position       : absolute;
	top            : 30px;
	z-index        : 1;
	
	width          : 300px;

	font-family    : "Roboto", "ヒラギノ角ゴ Pro W3", sans-serif;
	color          : #ff7f00;
	font-size      : 150%;
	font-weight    : 800;
	text-align     : center;
	line-height    : 1.0;
}

#HOWTO .obo_box .step_box .img_box
{
	padding        : 15px;
	
	background     : #fff;
	border-radius  : 50%;

	overflow       : hidden;
}

#HOWTO .obo_box .step_box .img_box img
{
	position       : relative;
	top            : 25px;

	padding        : 35px 0;
	width          : 270px;
}

#HOWTO .obo_box .step_box li:nth-child(2) .img_box img
{
	top            : 15px;
}

#HOWTO .obo_box .step_box .txt_detail
{
	margin-top     : 15px;
	font-size      : 80%;
}

#HOWTO .obo_box .note_box
{
	margin-top     : 40px;
	padding        : 20px 30px;
	
	background     : #f1e97d;
}

#HOWTO .obo_box .note_box ul li
{
	margin-left    : 1em;
	text-indent    : -1em;
	
	font-size      : 80%;
}

#HOWTO .btn_obo,
#HOWTO .btn_obo_off
{
	margin-top     : 60px;
	
	text-align     : center;
}


/* --------------------------------------- */


#HOWTO .ap_box
{
	position       : relative;
	
	margin-top     : 80px;
	padding        : 40px;
	
	background     : #fff034;
}

#HOWTO .ap_box .text_box
{
	width          : 740px;
}

#HOWTO .ap_box .text_box .ap_text
{
	line-height    : 1.6;
}

#HOWTO .ap_box .text_box .ap_text strong
{
	display        : block;
	
	margin-bottom  : 15px;
	
	color          : #cf351c;
	font-size      : 160%;
	font-weight    : bold;
	text-align     : left;
	line-height    : 1.0;
}

#HOWTO .ap_box .text_box .btn_ap
{
	margin-top     : 30px;
}

#HOWTO .ap_box .text_box .btn_ap a
{
	display        : block;
	
	margin         : 0 auto;
	padding        : 15px 0px;
	
	width          : 630px;
	
	color          : #fff;
	font-size      : 100%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
	text-decoration: none;
	
	background     : #cf351c;
	border-radius  : 100px;
}

#HOWTO .ap_box .text_box .btn_ap a:hover
{
	color          : #cf351c;
	
	background     : #fff;
}

#HOWTO .ap_box .ap_illust
{
	position       : absolute;
	bottom         : 0;
	right          : 40px;
}

#HOWTO .ap_box .ap_icon
{
	position       : absolute;
	top            : 0;
	bottom         : 0;
	right          : 50px;
	margin         : auto;

	width          : 180px;
	border-radius  : 20%;
	
	box-shadow     : 0 1px 2px 0 rgba(60, 60, 60, 0.3), 0 1px 3px 1px rgba(60, 60, 60, 0.15);
}





/*=========================================================================================================

  PRESENT

=========================================================================================================*/



#PRESENT
{
	position       : relative;
}

#PRESENT h2
{
	text-align     : center;
}

#PRESENT .text_title_sub
{
	margin-top     : 10px;
	margin-bottom  : 60px;
	
	text-align     : center;
}

#PRESENT .inner_01
{
	padding        : 100px 0 120px;
	
	background     : url(/asset/img/5ch-keyword/2609/present_back.png) top center repeat #599f25;
}

#PRESENT .inner_02
{
	padding        : 10px 0 80px;
	
	background     : #a0e9eb;
}

#PRESENT .present_box
{
	margin         : 0 auto;
	margin-top     : 90px;
	
	width          : 1100px;
}

#PRESENT .present_box + .present_box
{
	margin-top     : 120px;
}


/* --------------------------------------- */


#PRESENT .present_container
{
	background     : #fff;
	border-radius  : 35px 35px 40px 40px;
	box-shadow     : rgba(50, 50, 93, 0.15) 0px 50px 50px -20px, rgba(0, 0, 0, 0.3) 0px 30px 50px -30px;
}


#PRESENT .present_period
{
	position       : relative;
	
	margin         : 0 0px;
	
	height         : 80px;
	
	text-align     : center;
	
	background     : #cf351c;
	border-radius  : 30px 30px 0px 0px;
}

#PRESENT .present_period p
{
	display        : inline-block;
	
	margin-top     : -4px;
	
	color          : #fff;
	font-size      : 160%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
	line-height    : 80px;
}

#PRESENT .present_period p .t01
{
	margin-right   : 5px;
	
	font-size      : 140%;
}

#PRESENT .present_period p .t02
{
	font-size      : 90%;
}

#PRESENT .present_period p .t03
{
	font-size      : 120%;
}

#PRESENT .present_period .present_baln
{
	position       : absolute;
	top            : -55px;
	left           : -5px;
}


/* --------------------------------------- */


#PRESENT .present_list
{
	display        : flex;
	flex-wrap      : wrap;
}

#PRESENT .present_list .p01
{
	width          : 550px;
}

#PRESENT .present_list .p02
{
	width          : 550px;
	
	border-left    : 5px dotted #cf351c;
	box-sizing     : border-box;
}

#PRESENT .present_list .p03
{
	width          : 100%;
	
	border-top     : 5px dotted #cf351c;
}

#PRESENT .present_list li
{
	display        : flex;
	align-items    : center;
	flex-direction : column;
	
	padding        : 40px 20px 20px 20px;

	box-sizing     : border-box;
}


#PRESENT .present_list .p_catch
{
	font-size      : 110%;
	line-height    : 1.0;
}

#PRESENT .present_list .p_catch .num
{
	color          : #cf351c;
	font-size      : 150%;
	font-weight    : bold;
}


#PRESENT .present_list .p_title
{
	position       : relative;
		
	margin-top     : 15px;
	padding        : 17px 45px 20px;

	width          : 460px;
		
	color          : #fff;
	font-size      : 150%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
		
	box-sizing     : border-box;
	
	clip-path      : polygon(0% 0%, 20px 50%, 0% 100%, 100% 100%, calc(100% - 20px) 50%, 100% 0%);
}

#PRESENT .present_list .p_title .num
{
	margin         : 0 3px;

	font-size      : 120%;
	line-height    : 0;
}

#PRESENT .present_list .p01 .p_title{ background: #43a6ca; }
#PRESENT .present_list .p02 .p_title{ background: #d6a924; }
#PRESENT .present_list .p03 .p_title{ background: #ff5470; }

#PRESENT .present_list .p_title::before
{
	content        : "";

	position       : absolute;
	top            : 5px;
	bottom         : 5px;
	left           : 0;
	right          : 0;

	border-top     : 2px dashed #ffffff;
	border-bottom  : 2px dashed #ffffff;

	opacity        : 0.8;
}


#PRESENT .present_list .p_detail
{
	margin-top     : 50px;
}


#PRESENT .present_list .p_image
{
	margin         : 0 auto;

	width          : 430px;
}

#PRESENT .present_list .p_image img
{
	width          : 100%;
}


#PRESENT .present_list .p_name
{
	margin-top     : 20px;
}

#PRESENT .present_list .p_name p
{
	font-size      : 110%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.7;
}

#PRESENT .present_list .p_name p .brand
{
	font-size      : 80%;
}

#PRESENT .present_list .p_name p .num
{
	margin         : 0 3px;

	font-size      : 120%;
	line-height    : 0;
}


#PRESENT .present_list .p_winner
{
	margin-top     : 35px;
	margin-bottom  : 40px;
	padding        : 5px 0 10px;

	width          : 430px;

	border-radius  : 100px;
	box-sizing     : border-box;
}

#PRESENT .present_list .p01 .p_winner{ background: #43a6ca; }
#PRESENT .present_list .p02 .p_winner{ background: #d6a924; }
#PRESENT .present_list .p03 .p_winner{ background: #ff5470; }

#PRESENT .present_list .p_winner p
{
	color          : #fff;
	text-align     : center;
	line-height    : 1.0;
	
}

#PRESENT .present_list .p_winner p .num
{
	margin         : 0 5px;

	font-size      : 180%;
	font-weight    : bold;
}

#PRESENT .present_list .p_winner p .slash
{
	font-size      : 150%;
}


#PRESENT .present_list .p_note
{
	margin-top     : auto;

	width          : 100%;
}

#PRESENT .present_list .p_note p
{
	text-indent    : -1em;
	padding-left   : 1em;

	font-size      : 75%;
	line-height    : 1.7;
}


#PRESENT .present_list li[data-type="dream"]
{
	padding        : 60px 40px 30px;
}

#PRESENT .present_list li[data-type="dream"] .p_catch
{
	color          : #ff5470;
	font-size      : 140%;
	font-weight    : bold;
}

#PRESENT .present_list li[data-type="dream"] .p_catch .num
{
	color          : #ff5470;
	font-size      : 115%;
}

#PRESENT .present_list li[data-type="dream"] .p_title
{
	margin-top     : 20px;

	width          : 640px;

	font-size      : 180%;
}

#PRESENT .present_list li[data-type="dream"] .p_detail
{
	display        : flex;
	justify-content: center;
	align-items    : center;
	gap            : 60px;

	margin-bottom  : 40px;
}

#PRESENT .present_list li[data-type="dream"] .p_image
{
	flex-shrink    : 0;

	width          : 500px;
}

#PRESENT .present_list li[data-type="dream"] .p_name
{
	margin-top     : 0px;
}

#PRESENT .present_list li[data-type="dream"] .p_name p
{
	font-size      : 150%;
	text-align     : left;
}

#PRESENT .present_list li[data-type="dream"] .p_winner
{
	margin-bottom  : 0px;

	width          : 230px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d01"] .p_image
{
	margin         : -40px -40px -30px -40px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d01"] .right_box
{
	position       : relative;
    top            : -10px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d02"] .p_image
{
	margin         : -20px -50px -10px -80px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d02"] .right_box
{
	position       : relative;
    top            : 0px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d03"] .p_image
{
	margin         : 20px 0px 20px 0px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d03"] .right_box
{
	position       : relative;
    top            : 0px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d04"] .p_image
{
	margin         : -20px -50px -10px -80px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d04"] .right_box
{
	position       : relative;
    top            : 0px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d05"] .p_image
{
	margin         : -10px -100px -10px -150px;
	width          : 560px;
}

#PRESENT .present_list li[data-type="dream"] .p_detail[data-num="d05"] .right_box
{
	position       : relative;
    top            : -20px;
}




/* --------------------------------------- */


#PRESENT .text_note
{
	margin-top     : 20px;
}

#PRESENT .text_note li
{
	margin-left    : 1em;
	text-indent    : -1em;
	
	font-size      : 70%;
	line-height    : 1.4;
}


/* --------------------------------------- */


#PRESENT .btn_obo,
#PRESENT .btn_obo_off
{
	margin-top     : 70px;
	
	text-align     : center;
}


/* --------------------------------------- */


#PRESENT .present_bnr
{
	margin         : 0 auto;
	margin-top     : 120px;

	width          : 1100px;
}

#PRESENT .present_bnr a
{
	display        : block;
	
	background     : #ed3c19;
	box-shadow     : 0px 5px 0px 0px #bf3013;
	border-radius  : 15px;
}

#PRESENT .present_bnr a:hover
{
	background     : #ffac07;
	box-shadow     : 0px 5px 0px 0px #d28c00;
}

#PRESENT .present_bnr a img
{
	width          : 100%;
}


/* --------------------------------------- */


#PRESENT .ex_box
{
	margin         : 0 auto;
	margin-top     : 120px;

	width          : 1100px;
}


#PRESENT .text_limit
{
	padding        : 15px 0;
	
	text-align     : center;
	
	background     : #cf351c;
}

#PRESENT .limit_box
{
	margin-top     : 100px;

	width          : 100%;
}


#PRESENT .text_note_02
{
	/*margin-top     : 100px;*/
	padding        : 40px;

	color          : #cf351c;

	background     : #fff;
	border-left    : 5px solid #cf351c;
	border-right   : 5px solid #cf351c;
	border-bottom  : 5px solid #cf351c;
}

#PRESENT .text_note_02 strong
{
	display        : block;
	margin-top     : -5px;

	font-size      : 140%;
	font-weight    : bold;
}

#PRESENT .text_note_02 ul
{
	margin-top     : 20px;
}

#PRESENT .text_note_02 li
{
	margin-left    : 1em;
	text-indent    : -1em;
	
	font-size      : 80%;
	line-height    : 1.4;
}

#PRESENT .text_note_02 li + li
{
	margin-top     : 8px;
}


#PRESENT .text_note .marker_text,
#PRESENT .text_note_02 .marker_text
{
	line-height    : 1.8;

	background     : #ff0;
}


/* --------------------------------------- */


#PRESENT .present_comingsoon
{
	position       : relative;
	
	margin-top     : 80px;
}

#PRESENT .present_comingsoon .present_baln
{
	position       : absolute;
	top            : -50px;
	left           : 30px;
}


/* --------------------------------------- */


/* --------------------------------------- */


#PRESENT[data-type="second"]
{
	margin         : 65px 0 0;
}

#PRESENT[data-type="second"] .btn_area
{
	padding        : 60px 0;
}

#PRESENT[data-type="second"] .btn_area .btn_obo
{
	margin         : 0;
}

















/*=========================================================================================================

  説明・注意事項

=========================================================================================================*/



#foot_area
{
	padding        : 80px 0;

	background     : #fff;
}

#foot_area .inner
{
	margin         : 0 auto;

	width          : 1100px;
}

#foot_area .h3_text
{
	margin-bottom  : 50px;
	padding        : 10px 0;

	color          : #fff;
	font-size      : 140%;
	text-align     : center;

	background     : #518c4d;
}

#foot_area .h4_text
{
	margin-top     : 60px;
	margin-bottom  : 20px;

	color          : #518c4d;
	font-size      : 120%;
}

#foot_area .text_list
{
	
}

#foot_area .text_list li
{
	list-style-type: disc;
	margin-left    : 1.2em;

	font-size      : 95%;
	line-height    : 1.4;
}

#foot_area .text_list li + li
{
	margin-top     : 15px;
}

#foot_area .text_list li .paddent
{
	margin-top     : 10px;

	font-size      : 80%;
}

#foot_area .text_list li .paddent + .paddent
{
	margin-top     : 5px;
}





/*=======================================================================================================*/



.foot_btn_area
{
	padding        : 60px 0;

	text-align     : center;

	background     : #79a115;
}

.foot_btn_area a
{
	display        : block;
	
	margin         : 0 auto;
	padding        : 20px 0px;

	width          : 630px;

	color          : #ff5500;
	font-size      : 130%;
	font-weight    : bold;
	text-align     : center;
	line-height    : 1.0;
	text-decoration: none;

	background     : #fff;
	border-radius  : 100px;
}

.foot_btn_area a:hover
{
	background     : #ffff19;
}



/*=======================================================================================================*/




