@charset "utf-8";

.page_wrap--campaign_coin{
	color:#1f1f1f;
	line-height:1.5;
}
.page_wrap--campaign_coin .page_breadcrumbs_2{
	border:none;
	padding:0;
}
.page_wrap--campaign_coin .sec_campaign_coin .main_img_area {
	position: relative;
	margin: -30px -10px 0px;
	border-radius: 5px 5px 0 0;
}
.page_wrap--campaign_coin .sec_campaign_coin .main_img_area img{
	display:block;
}
.page_wrap--campaign_coin .sec_campaign_coin .content_area {
	padding:20px 10px;

}
.page_wrap--campaign_coin .sec_campaign_coin .sec_ttl {
	width: 960px;
	color:#fff;
	background:#004986;
	font-size:24px;
	font-size: 2.4rem;
	margin-left: -11px;
	height: 66px;
	height: 6.6rem;
	line-height: 66px;
	line-height: 6.6rem;
	text-align: center
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner {
	padding:0 70px;
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .d_table{
	width:auto;
	margin:0 auto;
	font-size:19px;
	font-size:1.9rem;
}
/*----------------------------------------*/
/* sns share box
/*----------------------------------------*/
.campaign_share_box {
	padding: 0px 20px;
	margin-top: 30px;
}
.campaign_share_box .campaign_sns_btn_list {
	display: flex;
	align-items: center;
	justify-content: center;
}
.campaign_share_box .campaign_sns_btn_list > li {
	margin: 0;
	padding: 0 10px;
}
.campaign_share_box .campaign_sns_btn_list > li > a {
	display: block;
	width: 48px;
}
.campaign_share_box .campaign_sns_btn_list > li > a > img {
	display: block;
	width: 100%;
}
/*----------------------------------------*/
/* campaign_home_study
/*----------------------------------------*/
/*app download button flex box*/
.page_wrap--campaign_limited_time .instructor_list_wrap_2{
	width: 800px;
}
.page_wrap--campaign_limited_time .sec .btn_style.btn_pink {
	min-width: 40px;
	height: 42px;
	line-height: 42px;
	background: #e8716c;
	text-shadow: none;
	box-shadow: none;
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .icon_coin{
	margin: 0 20px;
}

.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .usage_step{
	font-size:0;
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .usage_step li{
	width: 218px;
	display:inline-block;
	margin:0 24px 30px;
	font-size:14px;
	font-size:1.4rem;
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .usage_step li figure img{
	border: 1px solid #ccc;
	border-radius: 5px;
}
.page_wrap--campaign_coin .sec_campaign_coin .sec_inner .usage_step li figure span{
	font-size:13px;
	font-size:1.3rem;
	font-weight:bold;
	background:#ebf5ff;
	border-radius:23px;
	display:inline-block;
	padding:4px 8px;
}
.page_wrap--campaign_coin .campaign_menu{
	width: 700px;
	margin: 0 auto;
}
.page_wrap--campaign_coin .campaign_menu li{
	list-style: none;
	position: relative;
}
.page_wrap--campaign_coin .campaign_menu li .campaign_period_txt{
	position: absolute;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	top: 5px;
	top: 0.5rem;
	left: -20px;
	left: -2.0rem;
	padding: 0 12px;
	padding: 0 1.2rem;
	line-height: 1.5;
	color: #fff;
	background: #ffa436;
	transform: rotate(-30deg);
	z-index: 10;
	min-width: 3.5em;
	text-align: center;
}
.page_wrap--campaign_coin .campaign_menu li .campaign_period_txt.new_campign{
	background: #f84f63;
}
.page_wrap--campaign_coin .campaign_menu li a{
	min-height:100px;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}
.page_wrap--campaign_coin .campaign_menu li + li{
	margin-top: 10px;
	margin-top: 1rem;
}
.page_wrap--campaign_coin .campaign_menu li .menu_green{
	color:#fff;
	display:block;
	background:#03c9a9;
	padding:15px 15px 15px 50px;
	padding:1.5rem 1.5rem 1.5rem 5.0rem;
	box-sizing: border-box;
	position:relative;
	display: flex;
}
.page_wrap--campaign_coin .campaign_menu li .menu_green:hover{
	background: #22d6b8;
}
.page_wrap--campaign_coin .campaign_menu li a .text{
	display: flex;
	justify-content: center;
	flex-direction: column;
	-ms-flex-direction: column;

}
.page_wrap--campaign_coin .campaign_menu li .menu_orange{
	color:#fff;
	display:block;
	background:#f1890e;
	padding:15px 15px 15px 50px;
	padding:1.5rem 1.5rem 1.5rem 5.0rem;
	box-sizing: border-box;
	position:relative;
	display: flex;
}
.page_wrap--campaign_coin .campaign_menu li .menu_orange:hover{
	background: #ffa436;
}
.page_wrap--campaign_coin .campaign_menu li .menu_orange:after,
.page_wrap--campaign_coin .campaign_menu li .menu_green:after{
	content:"\f105";
	font-family: "FontAwesome";
	position:absolute;
	right:1.5rem;
	top:50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size:40px;
	font-size:4rem;
}
.page_wrap--campaign_coin .campaign_menu li .menu_style:before{
	font-family: "FontAwesome";
	position:absolute;
	top:50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size:28px;
	font-size:2.8rem;
}
/*---------------------------------------*/
/* feedback android
/*---------------------------------------*/
.page_wrap--campaign_coinback{
	color:#1f1f1f;
	line-height:1.5;
}
.page_wrap--campaign_coinback .page_breadcrumbs_2{
	border:none;
	padding:0;
}
.page_wrap--campaign_coinback .sec_ttl {
	box-sizing: border-box;
	/*width: 960px;*/
	color:#fff;
	background:#004986;
	font-size:24px;
	font-size: 2.4rem;
	height: 66px;
	height: 6.6rem;
	line-height: 66px;
	line-height: 6.6rem;
	text-align: center;
	margin: 0 -1rem;
}
.page_wrap--campaign_coinback .sec_inner {
	padding:0 70px;
}
.page_wrap--campaign_coinback .sec_inner dl dt{
	text-indent: -1em;
	padding-left: 1em;
}
/*---------------------------------------*/
/* feedback android
/*---------------------------------------*/
.page_wrap--feedback_android{
	color:#1f1f1f;
	line-height:1.5;
}
.page_wrap--feedback_android .page_breadcrumbs_2{
	border:none;
	padding:0;
}
.page_wrap--feedback_android .sec_feedback_android .main_img_area {
	position: relative;
	margin: -30px -10px 0px;
	border-radius: 5px 5px 0 0;
}
.page_wrap--feedback_android .sec_feedback_android .main_img_area img{
	display:block;
}
.page_wrap--feedback_android .sec_feedback_android .content_area {
	padding:20px 10px;

}
.page_wrap--feedback_android .sec_feedback_android .sec_ttl {
	width: 960px;
	color:#fff;
	background:#004986;
	font-size:24px;
	font-size: 2.4rem;
	margin-left: -11px;
	height: 66px;
	height: 6.6rem;
	line-height: 66px;
	line-height: 6.6rem;
	text-align: center
}
.page_wrap--feedback_android .sec_feedback_android .sec_inner {
	padding:0 70px;
}
/*---------------------------------------*/
/* review
/*---------------------------------------*/
.page_wrap--review_google,
.page_wrap--review_app{
	color:#1f1f1f;
	line-height:1.5;
}
.page_wrap--review_google .page_breadcrumbs_2,
.page_wrap--review_app .page_breadcrumbs_2{
	border:none;
	padding:0;
}
.page_wrap--review_google .sec_review_google .main_img_area,
.page_wrap--review_app .sec_review_app .main_img_area {
	position: relative;
	margin: -30px -10px 0px;
	border-radius: 5px 5px 0 0;
}
.page_wrap--review_google .sec_review_google .main_img_area img,
.page_wrap--review_app .sec_review_app .main_img_area img{
	display:block;
}
.page_wrap--review_google .sec_review_google .content_area ,
.page_wrap--review_app .sec_review_app .content_area {
	padding:20px 10px;

}
.page_wrap--review_google .sec_review_google .sec_ttl ,
.page_wrap--review_app .sec_review_app .sec_ttl {
	width: 960px;
	color:#fff;
	background:#004986;
	font-size:24px;
	font-size: 2.4rem;
	margin-left: -11px;
	height: 66px;
	height: 6.6rem;
	line-height: 66px;
	line-height: 6.6rem;
	text-align: center
}
.page_wrap--review_google .sec_review_google .sec_inner ,
.page_wrap--review_app .sec_review_app .sec_inner {
	padding:0 70px;
}
.page_wrap--review_google .sec_review_google .sec_inner dl dt,
.page_wrap--review_app .sec_review_app .sec_inner dl dt{
	text-indent: -1em;
	padding-left: 1em;
}
.page_wrap--campaign_coinback .ex_form{
	background: #f4f4f4;
	padding: 15px;
	border-radius: 5px;
	border: 1px solid #ccc;
}
.page_wrap--campaign_coinback .ex_form.func_copy {
	position: relative;
}
.page_wrap--campaign_coinback .ex_form.func_copy:hover {
	cursor: pointer;
}
.page_wrap--campaign_coinback .ex_form.func_copy:after {
	content: '\f0ea';
	font-family: 'fontAwesome';
	display: block;
	position: absolute;
	font-size: 3rem;
	color: #ccc;
	bottom: 1rem;
	right: 1rem;
	transition: all .2s linear;
}
.page_wrap--campaign_coinback .ex_form.func_copy.success:after {
	content: '\f00c';
	font-size: 3rem;
	color: #03c9a9;
}
/*-------------------------------------------------------*/
/* campaign_limited_time
/*-------------------------------------------------------*/
/* common */
.page_wrap--campaign_limited_time .page_inner {
}
.page_wrap--campaign_limited_time p{
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
}
.page_wrap--campaign_limited_time .container{
	padding: 79px 79px 65px;
	z-index: 0;
}
.page_wrap--campaign_limited_time .main_img_area{
	position: relative;
	margin: -79px -79px 0;
	overflow: hidden;
	border-radius: 4px 4px 0 0;
}
.page_wrap--campaign_limited_time .main_img_area .main_img{
	display: block;
	width: 100%;
}
.page_wrap--campaign_limited_time .sec{
	padding: 40px 0 40px;
}
.page_wrap--campaign_limited_time .sec:last-child{
	padding-bottom: 0;
}
.page_wrap--campaign_limited_time .present_count{
	background: #fff;
	color: #004986;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	padding: 10px 20px 8px;
	border-radius: 20px;
	line-height: 1;
	display: inline-block;
	vertical-align: middle;
}
.page_wrap--campaign_limited_time .heading_bar{
	text-align: center;
	padding: 20px 0;
	background: #004986;
	color: #fff;
	margin: 0 -80px;
}
.page_wrap--campaign_limited_time .heading_bar h3 p{
	display: inline-block;
	font-size: 25px;
	font-size: 2.5rem;
	vertical-align: middle;
	line-height: 1;
}
.page_wrap--campaign_limited_time .heading_bar h3 .present_count{
	margin-right: 20px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc dt{
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 15px;
	color: #004986;
}
.page_wrap--campaign_limited_time .sec .campaign_desc p + p{
	margin-top: 20px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .notice_box{
	border-radius: 7px;
	border: 1px solid #ccc;
	margin-top: 25px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .notice_box > p + p{
	margin-top: 0;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .ui_notice_list{
	margin-top: 20px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .ui_notice_list ul li{
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.5;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .ui_notice_list ul li + li{
	margin-top: 0;
}
.page_wrap--campaign_limited_time .sec .campaign_desc + .campaign_desc{
	padding-top: 40px;
	margin-top: 30px;
	border-top: 2px solid #ccc;
}
.page_wrap--campaign_limited_time .sec .btn_wrap{
	margin-top: 40px;
	z-index:1;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign{
	font-size: 25px;
	font-size: 2.5rem;
	padding: 25px 30px;
	line-height: 1.3;
	height: 80px;
	box-sizing: border-box;
	border-radius: 7px;
	box-shadow: 0 3px 0 0 #032a0a;
	min-width: 420px;
	text-shadow: none;
	border: none !important;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign:hover{
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	transition: all 0.2s linear;
	opacity: 0.8;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_orange{
	white-space: nowrap;
	box-shadow: 0px 6px 0px 0px #c16e0b;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .sec .btn_wrap.btn_double{
	width: 880px;
	margin-left: -40px;
	border-collapse: separate;
	border-spacing: 40px 0px;
}
.page_wrap--campaign_limited_time .sec .btn_wrap.btn_double .btn_style{
	min-width: 380px;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_blue_2{
	background: #00acee;
	box-shadow: 0 3px 0 0 #0093bf !important;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_yellow{
	background: #f1890e;
	box-shadow: 0 6px 0 0 #c46a26;
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_red{
	box-shadow: 0 6px 0 0 #ad4237;
}
.page_wrap--campaign_limited_time .sec .teacher_search_form .btn_saved_search_conditions_wrap{
	top: 74%;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap{
	width: 420px;
	margin: auto;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap .btn_reserve_search{
	width: 100%;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap .btn_style{
	font-size: 1.5rem;
	width: 100%;
	padding: 0;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap .btn_style.btn_settings_save{
	min-width: auto;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap.btn_saves > ul{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap.btn_saves > ul > li:first-child{
	width: 52%;
}
.page_wrap--campaign_limited_time .teacher_search_form .btn_wrap.btn_saves > ul > li:nth-child(2){
	width: 45%;
}
/* sec_top */
.page_wrap--campaign_limited_time .sec_top .content_list{
	position: relative;
	margin-bottom: 40px;
}
.page_wrap--campaign_limited_time .sec_top .content_list ul{
	font-size: 0;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box{
	position: relative;
	background: #03c9a9;
	width: 700px;
	margin: 30px auto 0;
	border-radius: 7px;
	box-shadow: 0 5px 0 0 #21a086;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box:hover{
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	transition: all 0.2s linear;
	opacity: 0.8;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box a{
	color: #fff;
	font-weight: bold;
	padding: 15px 20px;
	display: block;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box .content_box_heading{
	margin-bottom: 15px;
	color: #03c9a9;
	text-align: center;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box .content_box_inner p{
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.5;
	text-align: center;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box .content_box_inner .present_icon{
	line-height: 1;
	margin-top: 15px;
}
.page_wrap--campaign_limited_time .sec_top .content_list .content_box .content_box_inner .present_icon i{
	color: #fff;
	vertical-align: middle;
	transform: scale(4);
}

/* sec_sns_post */
.page_wrap--campaign_limited_time .sec_sns_post .btn_wrap{
	margin-top: 35px;
}
.page_wrap--campaign_limited_time .sec_sns_post .btn_wrap .d_table{
	width: 800px;
	margin-left: -25px;
	border-collapse: separate;
	border-spacing: 25px 0px;
}
.page_wrap--campaign_limited_time .sec_sns_post .btn_wrap .d_table .btn_style.style_campaign{
	min-width: 250px;
}
.page_wrap--campaign_limited_time .btn_style.style_campaign.btn_twitter{
	background: #50abf1;
	box-shadow: 0 6px 0 0 #4087bd !important;

}
.page_wrap--campaign_limited_time .btn_style.style_campaign.btn_instagram{
	background: #da2f74;
	box-shadow: 0 6px 0 0 #a12356 !important;

}
.page_wrap--campaign_limited_time .btn_style.style_campaign.btn_facebook{
	background: #3b5998;
	box-shadow: 0 6px 0 0 #263962 !important;
}
.page_wrap--campaign_limited_time .btn_style.style_campaign i{
	font-size: 32px;
	font-size: 3.2rem;
	vertical-align: middle;
}
.page_wrap--campaign_limited_time .sec_sns_post .campaign_desc + .campaign_desc{
	margin-top: 40px;
}

/*---------------------------------------*/
/* campaign_quest
/*---------------------------------------*/
.campaign_quest_wrap .notice_box{
	width: 800px;
	margin: 30px auto 50px;
}
.campaign_quest_wrap .quest_form{
	border: none;
	margin-top: 15px;
}
.campaign_quest_wrap .box_ttl{
	color: #092846;
	font-size: 25px;
	font-size: 2.5rem;
	font-weight: bold;
	background: #EBF5FF;
	text-align: center;
	padding: 25px 0;
	border-bottom: solid 1px #d6e3f0;
	border-top: solid 1px #d6e3f0;
}
.campaign_quest_wrap .ui_mark.required:after{
	background: transparent;
	color: #f05253;
	font-size: 1.6rem;
	font-weight: normal;
}
.campaign_quest_wrap .quest_form .quest_form_item .quest_form_item_ttl{
	padding-bottom: 10px;
	line-height: 1.6;
}
.campaign_quest_wrap .quest_form .quest_form_item .quest_form_item_ttl .q_num{
	box-sizing: border-box;
	color: #555555;
	font-size: 1.4rem;
}
.campaign_quest_wrap .quest_form .quest_form_item h5{
	font-size: 1.6rem;
	margin-bottom: 5px;
}
.campaign_quest_wrap .quest_form .quest_form_item textarea{
	height: 12rem;
}
.campaign_quest_wrap .quest_form .quest_form_item .questant_list textarea{
	height: 6rem;
}
.campaign_quest_wrap .ui_msg_style_1{
	margin: 0 0 10px;
}


/*-------------------------------------------------------*/
/* campaign_new_year_holidays
/*-------------------------------------------------------*/
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_green{
	box-shadow: 0 6px 0 0 #03a98e;
}
/*---------------------------------------*/
/* campaign_re_register
/*---------------------------------------*/
.page_wrap--campaign_re_register .container{
	overflow: hidden;
}
.page_wrap--campaign_re_register .page_inner .container .main_img{
	margin: -30px -10px;
}
.page_wrap--campaign_re_register .page_inner .container .benefits_box{
	display: -webkit-flex;
	justify-content: space-evenly;
	align-items: center;
}
.page_wrap--campaign_re_register .page_inner .container .triangle{
	width: 0;
	margin: auto;
	border: 40px solid transparent;
	border-top: 40px solid #999999;
}
.page_wrap--campaign_re_register .page_inner .container .shape-circle{
	border-radius: 5px;
}
.page_wrap--campaign_re_register .page_inner .container .c_pink{
	color:#ea6094;
}
.page_wrap--campaign_re_register .page_inner .container .c_light_green{
	color:#28c2a2;
}

.page_wrap--campaign_re_register .page_inner .container .headline{
	font-weight: normal;
}

.page_wrap--campaign_re_register .page_inner .container .ex_form_02{
	padding: 20px;
	width: 65%;
	margin: auto;
}

/* page_wrap--free-popular_teacher */
.page_wrap--free-popular_teacher .sec{
	padding: 50px 0 60px;
}
.page_wrap--free-popular_teacher .sec.sec_top{
	padding: 0;
	margin: 5rem auto;
}
.page_wrap--free-popular_teacher .sec .campaign_desc + .campaign_desc{
	border: none;
}
.page_wrap--free-popular_teacher .sec_ttl{
	font-size: 2.4rem;
}
.page_wrap--free-popular_teacher .instructor_list_wrap_2{
	width: auto;
}
.page_wrap--free-popular_teacher .user_list_style-box.switch_tile{
	text-align: center;
}
.page_wrap--free-popular_teacher .user_list_style_2 .user_list_item .name_area .name{
	margin-left: 0;
}
.page_wrap--free-popular_teacher .lesson_status_circle{
	display: none;
}
.page_wrap--free-popular_teacher .user_list_style_2 .user_list_item.closed {
	background: #f9f9f9;
}
.page_wrap--free-popular_teacher .user_list_style_2 .user_list_item .closed_area{
	font-size: 1.2rem;
	padding: 2px 10px 1px;
	background: #004986;
	color: #fff;
	position: absolute;
	top: -5px;
	left: -1px;
	border-radius: 2px;
	z-index: 11;
}
.page_wrap--free-popular_teacher .user_list_style_2 .user_list_item .closed_area .closed_txt{
	font-size: 1.2rem;
}
.page_wrap--free-popular_teacher .campaign_desc .ex_contents{
	background: #fdfbe4;
	padding: 2rem;
	margin: 2rem 0 0;
}
.page_wrap--free-popular_teacher .sec .btn_wrap .btn_style.style_campaign.btn_green{
	width: 400px;
	height: 60px;
	line-height: 60px;
	padding: 2px 0 0;
}
.page_wrap--free-popular_teacher .period_box-red{
	border: #F84F63 solid 1px;
	border-radius: 8px;
	overflow: hidden;
	text-align: center;
	width: 750px;
	margin: auto;
}
.page_wrap--free-popular_teacher .period_box-red .box_top{
	background: #F84F63;
	color: #fff;
	padding: 1.5rem 0;
	font-size: 1.8rem;
}
.page_wrap--free-popular_teacher .period_box-red .box_btm{
	padding: 3rem;
	font-size: 2.0rem;
	font-weight: bold;
}
/* callan_campaign */
.page_wrap--campaign_limited_time .text_centre{
	width: 70%;
	margin: 0 auto;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .campaign_callan_desc{
	margin-bottom: 30px;
	text-align: center;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .campaign_callan_desc figure{
	display: inline-block;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .campaign_callan_desc figure{
	position: relative;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .campaign_callan_desc figure + figure{
	margin-left: 30px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc .campaign_callan_desc figure + figure::before{
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-right: 0;
	border-left: 15px solid #bbb;
	position: absolute;
	top: 120px;
	left: -25px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc.campaign_desc_flow dt .step{
	color: #fff;
	border-radius: 40px;
	background: #004986;
	padding: 5px 20px;
	margin-right: 15px;
}
.page_wrap--campaign_limited_time .sec .campaign_desc.campaign_desc_flow dd{
	/*margin-top: 30px;*/
}
.page_wrap--campaign_limited_time .sec .campaign_desc.campaign_desc_flow dd + dt::before{
	content: '';
	display: block;
	text-align: center;
	width: 0;
	margin:50px auto;
	height: 0;
	border: 80px solid transparent;
	border-bottom: 0;
	border-top: 40px solid #bbb;
}
/* callan campaign modal */
.modal_window.dialog.dialog_apply_callan{
	border: 2px #ccc solid;
	padding: 5rem;
}
.modal_window.dialog.dialog_apply_callan h3.title_bar{
	background: #004986;
	color: #fff;
	font-weight: bold;
	border-radius: 30px;
	padding: 0.6rem 10rem;
}
.modal_window.dialog.dialog_apply_callan .bg-light_blue{
	background: #e5f6ff;
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 2rem 3rem;
}
.modal_window.dialog.dialog_apply_callan .btn_style.btn_green{
	font-size: 25px;
    font-size: 2.5rem;
    padding: 25px 30px;
    line-height: 1.3;
    height: 80px;
    box-sizing: border-box;
    border-radius: 7px;
    box-shadow: 0 3px 0 0 #03a98e;
    min-width: 420px;
    text-shadow: none;
    border: none !important;
}
.page_wrap--campaign_limited_time .instagram_hashtags{
	border: 1px solid #da2f74;
	margin: 50px auto;
	text-align: center;
	max-width: 650px;
	width: auto;
}
.page_wrap--campaign_limited_time .instagram_hashtags h4{
	color: #fff;
	background: #da2f74;
	padding: 15px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .instagram_hashtags ul{
	padding: 25px;
}
.page_wrap--campaign_limited_time .instagram_hashtags ul li{
	display: inline;
	font-weight: bold;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.5;
	white-space: nowrap;
}
.page_wrap--campaign_limited_time .instagram_hashtags ul li + li{
	margin-left: 10px;
}
.page_wrap--campaign_limited_time .instagram_hashtags ul li::before{
	content: '#';
}
.page_wrap--campaign_limited_time .sec .img_table{
	margin: 0 auto;
	width: 100%;
	text-align: center;
}
.page_wrap--campaign_limited_time .sec .img_table tr{
	width: 100%;
}
.page_wrap--campaign_limited_time .sec .img_table tr td img{
	max-width: 85%;
}

/*ribbon*/
.ttl_ribbon {
	font-size: 16px !important;
	width: 35%;
	position: relative;
	background: #f1890e;
	color: #fff;
	text-align: center;
	padding: 1rem 2rem;
	margin: 0 auto;
}
.ttl_ribbon:before, .ttl_ribbon:after {
	content: "";
	position: absolute;
	display: block;
	bottom: -1rem;
	border: 1.5rem solid #de7f0f;
	z-index: -1;
}
.ttl_ribbon:before {
	left: -3rem;
	border-right-width: 4.5rem;
	border-left-color: transparent;
}
.ttl_ribbon:after {
	right: -3rem;
	border-left-width: 4.5rem;
	border-right-color: transparent;
}
.ttl_ribbon .ttl_ribbon_content:before, .ttl_ribbon .ttl_ribbon_content:after {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #bb6c0f transparent transparent transparent;
	bottom: -1rem;
}
.ttl_ribbon .ttl_ribbon_content:before {
	left: 0;
	border-width: 1rem 0 0 3rem;
}
.ttl_ribbon .ttl_ribbon_content:after {
	right: 0;
	border-width: 1rem 3rem 0 0;
}
/*ttl_oval*/
.ttl_oval{
	background-color: #004986;
	max-width: 15rem;
	margin: 0 auto;
	padding: 7px 0;
	border-radius: 50px;
}
.ttl_oval p{
	color: #fff;
	text-align: center;
}
/*campaign_summary*/
.page_wrap--campaign_limited_time .campaign_summary{
	border: 3px solid #f1890e;
	margin: 25px auto;
	text-align: center;
	max-width: 650px;
	width: auto;
}
.page_wrap--campaign_limited_time .campaign_summary h4{
	color: #fff;
	background: #f1890e;
	padding: 15px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .campaign_summary .campaign_summary_desc{
	padding: 3rem;
}
.page_wrap--campaign_limited_time .campaign_summary .campaign_summary_desc .campaign_summary_detail{
	line-height: 1.5;
	margin-top: 3rem;
	background: #fff1e0;
	text-align: left;
	padding: 1.5rem;
}

/*campaign-3*/
.page_wrap--campaign_limited_time .sec .coin_desc{
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	position: relative;
}
.page_wrap--campaign_limited_time .sec .coin_desc:before{
	position: absolute;
	display: block;
	content: '\f0da';
	font-family: 'fontAwesome';
	text-align: center;
	font-size: 80px;
	font-size: 8rem;
	line-height: 0;
	height: 0;
	width: auto;
	margin: auto;
	color: #999999;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.page_wrap--campaign_limited_time .sec .coin_desc p{
	text-align: center;
	font-size: 25px;
	font-size: 2.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}
.page_wrap--campaign_limited_time .sec .coin_desc img{
	display: block;
	width: 100%;
}
.page_wrap--campaign_limited_time .sec .coin_desc .c_pink{
	color: #d22852;
}
.page_wrap--campaign_limited_time .sec .coin_desc .ic_down:after{
	font-size: 12rem;
	line-height: 4.5rem;
	margin-top: 1rem;
	margin-bottom: 2rem;
	color: #999999;
}

/*--------------------------------------------------------*/
/* details campaign_callan_ebook_free
/*--------------------------------------------------------*/
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec{
	padding: 30px 0 50px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .btn_style.size_8{
	width: 400px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec.sec_1 + .btn_wrap .btn_style.size_8{
	width: 500px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc dt{
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: normal;
	color: #555;
	text-align: center;
	margin-bottom: 20px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap{
	position: relative;
	margin: 0 -79px 25px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap .usage_list{
	display: table;
	table-layout: fixed;
	width: 100%;
	border-spacing: 30px 0;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap .usage_list .list_box{
	display: table-cell;
	vertical-align: top;
	border-radius: 10px;
	border: 2px solid #ccc;
	padding: 15px;
	box-sizing: border-box;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap .usage_list .list_box .step{
	background: #0b4c83;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	padding: 10px 10px 8px;
	text-align: center;
	box-sizing: border-box;
	border-radius: 40px;
	width: 180px;
	margin: 0 auto 15px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap .usage_list .list_box .title{
	font-size: 20px;
	font-size: 2.0rem;
	text-align: center;
	font-weight: bold;
	color: #0b4c83;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .usage_list_wrap .usage_list .list_box p + p{
	margin-top: 10px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .notice_box.ui_notice_list{
	padding: 30px;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .notice_box.ui_notice_list ul li{
	font-size: 14px;
	font-size: 1.4rem;
}
.page_wrap--campaign_limited_time.campaign_callan_ebook_free .sec .campaign_desc .notice_box.ui_notice_list ul li + li{
	margin-top: 10px;
}

.stamp_rally {
	background: #8FCEFD;
	padding: 4rem 5rem;
	max-width: 60rem;
	margin: 0 auto;
}
.stamp_rally .heading {
	color: #fff;
	font-weight: bold;
	margin-bottom: 2rem;
	text-align: center;
	padding: 1rem;
	background-color: #002077;
}
.stamp_rally .heading_logo{
	width: 40%;
	margin: 0 auto;
}
.stamp_rally .heading_logo img{
	width: 100%;
}
.stamp_rally .heading2{
	color: #002077;
	font-weight: bold;
	width: fit-content;
	margin: 3rem auto;
	border-bottom: 3px solid #002077;
}
.stamp_rally .period {
	font-size: 1.8rem !important;
	text-align: center;
	font-weight: bold;
	margin-bottom: 2rem;
}
.stamp_rally .period span {
	color: #D92A28;
	font-size: 2.6rem !important;
	margin: 0 0.4rem;
}
.stamp_rally .progress {
	margin-bottom: 3.4rem;
	background: #fff;
	border-radius: 5px;
}
.stamp_rally .progress p {
	font-size: 1.8rem !important;
	font-weight: bold;
	text-align: center;
}
.stamp_rally .progress p span {
	color: #D92A28;
	font-size: 3.6rem;
	margin: 0 0.8rem;
}
.stamp_rally .cource {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.stamp_rally .cource:nth-child(even) {
	flex-direction: row-reverse;
}
.stamp_rally .cource + .cource {
	margin-top: 1.5rem;
}
.stamp_rally .cource + .cource .cource-item:first-child::before {
	content: "";
	display: block;
	width: 1rem;
	height: 1.5rem;
	background: #002077;
	position: absolute;
	top: -1.5rem;
	left: 50%;
	margin-left: -0.5rem;
}
.stamp_rally .cource .cource-item {
	width: 100%;
	position: relative;
}
.stamp_rally .cource .img_box {
	width: 100%;
	margin: 0 auto;
	display: block;
}
.stamp_rally .cource .img_box img {
	display: block;
	width: 8rem;
	height: 8rem;
	margin: 0 auto;
}
.stamp_rally .cource .cource-item.two_col {
	width: 200%;
}
.stamp_rally .cource .cource-item.two_col .lesson_box {
	width: 95%;
}
.stamp_rally .cource .cource-item .lesson_box {
	width: 90%;
	margin: 0 auto;
	border: solid 2px #002077;
	box-sizing: border-box;
}
.stamp_rally .cource .cource-item + .cource-item .lesson_box::before {
	content: "";
	display: block;
	width: 10%;
	height: 1rem;
	background: #002077;
	position: absolute;
	top: 50%;
	right: auto;
	left: -5%;
}
.stamp_rally .cource:nth-child(even) .cource-item + .cource-item .lesson_box::before {
	content: "";
	display: block;
	width: 10%;
	height: 1rem;
	background: #002077;
	position: absolute;
	top: 50%;
	left: auto;
	right: -5%;
}
.stamp_rally .cource:nth-child(even) .cource-item + .cource-item.two_col .lesson_box::before {
	width: 10%;
}
.stamp_rally .cource .cource-item .lesson_box .box_head {
	color: #fff;
	background: #002077;
	text-align: center;
	padding: 0.4rem;
	font-size: 1.5rem;
}
.stamp_rally .cource .cource-item .lesson_box .box_body {
	font-size: 1.4rem;
	padding: 1rem 0;
	background: #fff;
	position: relative;
	z-index: 5;
}
.stamp_rally .cource .cource-item .lesson_box .box_body.off::after {
	content: '100コイン\AGET!';
	white-space: pre;
	line-height: 1.5;
	display: block;
	color: #CCCCCC;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
}
.stamp_rally .cource .cource-item .lesson_box .box_body.on::before {
	content: '';
	display: block;
	max-width: 100%;
	width: 4.2rem;
	height: 4.2rem;
	background-image: url(../images/campaign/coin_stamp/coin.png);
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0 auto;
}
.stamp_rally .cource .cource-item .lesson_box .box_body img {
	display: block;
	max-width: 100%;
	width: 4.2rem;
	height: 4.2rem;
	margin: 0 auto;
}
.stamp_rally .cource .cource-item .lesson_box .box_body.goal {
	display: flex;
	align-items: center;
	justify-content: center;
}
.stamp_rally .cource .cource-item .lesson_box .box_body.goal.off::before {
	content: '';
	display: block;
	max-width: 100%;
	width: 4.2rem;
	height: 4.2rem;
	background-image: url(../images/campaign/coin_stamp/goal.png);
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0 2rem 0 0;
}
.stamp_rally .cource .cource-item .lesson_box .box_body.goal.off::after {
	content: '500コイン\AGET!';
}
.stamp_rally .cource .cource-item .lesson_box .box_body.goal.on::before {
	background-image: url(../images/campaign/coin_stamp/finish.png);
	width: 11.2rem;
}
.modal_window  #alert_agreement{
	text-align: center;
    margin-top: 10px;
}
/*--------------------------------------------------------*/
/* campaign_halloween
/*--------------------------------------------------------*/
.page_wrap--campaign_halloween {
	font-family: Noto Sans JP, sans-serif;
}
.page_wrap--campaign_halloween .action{
    display: flex;
    align-items: center;
    justify-content: center;
}
.page_wrap--campaign_halloween .action .button_trial{
    display: block;
    font-size: 2.4rem;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: #f1890e;
    width: 50rem;
    height: 3em;
    line-height: 3em;
    border-radius: 3em;
    box-shadow: 0px 6px 0px 0px #c16e0b;
    box-sizing: border-box;
}
.page_wrap--campaign_halloween .sec.halloween_result{
	padding: 4rem 0 0;
}
.page_wrap--campaign_halloween .sec.halloween_result .page_header{
	margin-bottom: 4rem;
}
.page_wrap--campaign_halloween .sec.halloween_result .page_header .page_ttl{
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 2.4rem;
}
.page_wrap--campaign_halloween .sec.halloween_result .page_header .page_desc{
	font-size: 1.8rem;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: flex-start;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item{
	width: calc(50% - 1.2rem );
	border: solid 2px #F9A31C;
	padding: 2rem;
	border-radius: 1rem;
	margin-bottom: 2.4rem;
	box-sizing: border-box;
	position: relative;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking.final .ranking_list .list-item{
	width: calc(33% - 1.2rem );
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking.final .ranking_list.first .list-item:nth-child(odd){
	color: #000;
	background: #fff;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking.final .ranking_list.first .list-item:nth-child(even){
	color: #fff;
	background: #0A0404;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item:nth-child(odd){
	color: #fff;
	background: #0A0404;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .ribbon{
	position: absolute;
	top: 0;
	right: 0;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: 1.4rem;
	/* padding-bottom: 1.4rem;
	border-bottom: solid 2px #F9A31C; */
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .rank{
	font-size: 2.5rem;
	flex-shrink: 0;
	text-align: center;
	position: absolute;
	top: -20px;
	left: -20px;
	padding: 0.9rem 1.6rem 0.9rem;
	border-radius: 50%;
	border: solid 2px #F9A31C;
	background: #fff;
	color: #555555;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .rank.first{
	background: #e6b422;
	color: #fff;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .rank.second{
	background: #C0C0C0;
	color: #fff;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .rank.third{
	background: #C47022;
	color: #fff;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .thumbnail{
	width: 6rem;
	height: 6rem;
	border-radius: 50%;
	border:solid 2px #F9A31C;
	box-sizing: border-box;
	margin-right: 2rem;
	overflow: hidden;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .thumbnail img{
	display: block;
	width: 100%;
	max-width: 100%;
	object-fit: contain;;
	margin:0 auto;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .profile{
	/* padding-left: 2rem; */
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .profile .name{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1rem;
	width: 15rem;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .teacher .profile .ruby{
	font-size:1.4rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 15rem;
	display: none;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .post .comment{
	font-size: 1.8rem;
    margin-bottom: 2.4rem;
    width: 100%;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .post .comment p + p{
	margin-top: 1em;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .post .image{
    width: 100%;
    flex-shrink: 0;
    margin-right: 2rem;
    border: solid 2px #F9A31C;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list .list-item .post .image img{
    max-width: 100%;
    display: block;
    margin: 0 auto;
    object-fit: contain;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list.first {
	flex-direction: column;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list.first .list-item{
	width: 100%;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list.first .list-item .post{
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
.page_wrap--campaign_halloween .sec.halloween_result .ranking .ranking_list.first .list-item .image{
	width: 40%
}
.page_wrap--campaign_halloween .sec .notice {
    width: 100%;
    padding: 2rem;
    background: #f5f5f5;
    box-sizing: border-box;
}
.page_wrap--campaign_halloween .sec .notice .notice_ttl{
    font-weight: bold;
    margin-bottom: 0.8rem;
}
.page_wrap--campaign_halloween .sec .notice .notice_list .list-item{
    padding-left: 1em;
    text-indent: -1em;
}

.page_wrap--campaign_halloween .sec .step .detail{
    width: 100%;
}
.page_wrap--campaign_halloween .sec p.t_color-red{
    color: #ED1212;
    font-size: 1.6rem;
}

.page_wrap--campaign_halloween .sec .action{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2rem 0 0rem;
}
.page_wrap--campaign_halloween .sec .flow_mechanics_wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2rem 0 0rem;
}
.page_wrap--campaign_halloween .sec .flow_mechanics_wrap .flow_box{
	text-align: center;
	position: relative;
}
.page_wrap--campaign_halloween .sec .flow_mechanics_wrap li:not(:last-child)::after{
	background-image: url(/images/campaign/halloween/arrow.svg);
    background-size: 16px 32px;
    display: inline-block;
    width: 16px;
    height: 32px;
    content: "";
    position: absolute;
    left: 97%;
    top: 40%;
}
.page_wrap--campaign_halloween .sec .flow_mechanics_wrap .flow_box .flow_inner{
	border: 1px #FFC581 solid;
    background: #FFF5E9;
    padding: 3rem 6rem;
    margin-bottom: 1rem;
    min-width: 227px;
    font-size: 2rem;
    font-weight: bold;
    color: #F1890E;
    box-sizing: border-box;
}
.page_wrap--campaign_halloween .sec .flow_mechanics_wrap .flow_box .flow_text{
   text-align: center;
   font-size: 1.6rem;
   font-weight: bold;
}
.page_wrap--campaign_halloween .action .button_instagram{
    color: #fff;
    background: #da2f74;
    font-size: 2.4rem;
    font-weight: bold;
    width: 42rem;
    height: 3em;
    line-height: 3em;
    border-radius: 0.8rem;
    box-sizing: border-box;
    box-shadow: 0 6px 0 0 #a12356;
    border: none;
    text-align: center;
}

.page_wrap--campaign_halloween .detail .method_list .list-item p{
	margin: 2rem 0rem;
    font-size: 2rem;
}

.page_wrap--campaign_halloween .detail .hashtag{
    width: 50rem;
    margin: 4rem auto 4rem;
    padding: 2.4rem;
    border: 1px solid #CCCCCC;
	color: #707070;
}
.page_wrap--campaign_halloween .detail .hashtag .tag_list{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    margin-bottom: 2.4rem;
}
.page_wrap--campaign_halloween .detail .hashtag .tag_list .list-item{
	color: #555555;
    font-size: 1.8rem;
    font-weight: bold;
    width: 32rem;
}
.page_wrap--campaign_halloween .detail .hashtag .tag_list .list-item + .list-item{
    margin-top: 1rem;
}

.page_wrap--campaign_halloween .detail .hashtag .button_copy{
    color: #fff;
    background: #f1890e;
    font-size: 2rem;
    font-weight: bold;
    width: 32rem;
    height: 3em;
    line-height: 3em;
    border-radius: 0.8rem;
    box-sizing: border-box;
    box-shadow: 0 6px 0 0 #c16e0b;
    border: none;
    text-align: center;
}
.page_wrap--campaign_halloween .step .action .button_orange{
    color: #fff;
    background: #f1890e;
    font-size: 2.4rem;
    font-weight: bold;
    width: 42rem;
    height: 3em;
    line-height: 3em;
    border-radius: 0.8rem;
    box-sizing: border-box;
    box-shadow: 0 6px 0 0 #c16e0b;
    border: none;
    text-align: center;
}
.page_wrap--campaign_halloween .step .detail .apply{
    font-size: 2rem;
}
.page_wrap--campaign_halloween .step .action .button_apply{
    color: #fff;
    background: #03c9a9;
    font-size: 2.4rem;
    font-weight: bold;
    margin-top: 4rem;
    width: 42rem;
    height: 3em;
    line-height: 3em;
    border-radius: 0.8rem;
    box-sizing: border-box;
    box-shadow: 0 6px 0 0 #03a98e;
    border: none;
    text-align: center;
}

.page_wrap--campaign_halloween .page_inner .container .sec .instawidget {
	background-color: #0a0404;
    border-bottom: 0.3rem solid #0a0404;
    width: 99%;
    margin: 0 auto;
    display: block;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail,
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail + .instawidget_thumbnail {
	border: 0.5rem solid #0a0404;
	/*margin-right: 1rem;*/
	/*margin-bottom: 1rem;*/
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail img{
	width: 25rem;
	display: block;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result {
	padding: 2rem;
	border-radius: 1rem;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result .teacher {
	border: #bebebe 2px solid;
	border-radius: 7px;
	display: flex;
	justify-content: space-around;
	padding: 3rem;
	width: 90%;
	margin: 0 auto;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result .teacher .teacher_thumbnail {
	border-right: #bebebe 2px solid;
	padding-right: 3rem;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result .teacher .teacher_thumbnail .thumbnail img {
	width: 10rem;
	height: 10rem;
	border: #bebebe 2px solid;
	border-radius: 50%;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result .teacher .comment {
	border-right: #bebebe 2px solid;
	padding-right: 3rem;
	padding-left: 3rem;
}
.page_wrap--campaign_halloween .page_inner .container .sec .instawidget .instawidget_area_result .teacher .instawidget_thumbnail {
	padding-left: 3rem;
}
.page_wrap--campaign_halloween .ranking_wrap{
    display: flex;
    justify-content: space-between;
}
.page_wrap--campaign_halloween .ranking{
    width: 100%;
    border: 1px solid #F1890E;
    border-bottom-color: #F1890E;
    margin-top: 4rem;
}
.page_wrap--campaign_halloween .ranking.top_ranking{
    display: none;
    margin-top: 10rem;
}
.page_wrap--campaign_halloween .ranking .ranking_head{
    color: #FFFFFF;
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 28px;
    padding: 1.2rem;
    background-color: #F1890E;
}
.page_wrap--campaign_halloween .ranking:nth-child(2) .ranking_head{
    background-color: #B4C1CD;
}
.page_wrap--campaign_halloween .ranking .ranking_head .coin_icon{
    width: 28px;
    height: 25px;
    display: inline-block;
    margin: -5px 15px;
    background-image: url('/images/campaign/sixth_anniv_3/coin.png');
    background-repeat: no-repeat;
    background-size: contain;
}
.page_wrap--campaign_halloween .ranking .ranking_body .c_orange{
    color: #FFAC2F !important;
}
.page_wrap--campaign_halloween .ranking .ranking_body .c_gray{
    color: #999999 !important;
}
.page_wrap--campaign_halloween .ranking .ranking_body .c_brown{
    color: #B1602E !important;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table {
    width: 100%;
    text-align: center;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_head{
    display: flex;
    align-items: center;
    border-bottom: 1px solid #F1890E;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_head .table_ttl {
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    color: #555555;
    padding: 0.8rem;
    box-sizing: border-box;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_head .table_ttl.th_rank{
    position: relative;
    width: 40%;
	padding-left: 5rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_head .table_ttl.th_coin{
    width: 50%;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body{
    display: flex;
    align-items: center;
    padding: 2rem 0 2rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body + .table_body {
    border-top-width: 0;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body {
    font-size: 1.6rem;
    font-weight: bold;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body.first {
    color: #FDAC2F;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body.second {
    color: #999999;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body.third {
    color: #B1602E;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body.lead {
    padding: 3rem 0;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank{
    display: flex;
    align-items: center;
    justify-content: space-around;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank,
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_coin{
    width: 40%;
    font-size: 1.6rem;
	padding-left: 2rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank .target_date{
    width: 9rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank .team{
    font-size: 1.4rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank .away{
    background:#999999;
    color: #fff;
    padding: 0 1rem;
    font-size: 1.4rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank .home{
    background:#555555;
    color: #fff;
    padding: 0 1rem;
    font-size: 1.4rem;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank figure img{
    height: 44px;
    width: 30px;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body:nth-child(odd){
    background: #FBFBFB;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body:last-child{
    border-bottom-color: #FFAC2F
}
.page_wrap--campaign_halloween .ranking:nth-child(2) .ranking_body .ranking_table .table_body:last-child{
    border-bottom-color: #B4C1CD
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body.selected{
    color: #fff;
    background: #699CF3;
}
.page_wrap--campaign_halloween .ranking .ranking_body .ranking_table .table_body .td_rank .gray_shaded{
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #555555;
    box-sizing: border-box;
    position: relative;
}
.page_wrap--campaign_limited_time .heading_bar.halloween {
	background: #0a0404;
	color: #f9a31c;
}
.page_wrap--campaign_limited_time .ttl.halloween {
	background: #0a0404;
	color: #f9a31c;
	width: 100%;
	padding: 1.3rem 0 1rem;
	display: flex;
	justify-content: center;
}
.page_wrap--campaign_limited_time .ttl.halloween img{
	display: block;
	width: 2.4rem;
	height: 2.4rem;
}
.page_wrap--campaign_limited_time .ttl.halloween .t_center{
	margin-right: 1rem;
	margin-left: 1rem;
}
.page_wrap--campaign_limited_time .heading_bar.purple{
	background: #3c1e6b;
}
.page_wrap--campaign_limited_time .sec .campaign_desc.campaign_desc_flow dt .step.purple{
	background: #3c1e6b;
}
.page_wrap--campaign_limited_time .sec .campaign_desc.campaign_desc_flow .purple{
	color: #3c1e6b;
}
.page_wrap--campaign_halloween .accordion-wrap{
	border-radius: 22px;
}
.page_wrap--campaign_halloween .accordion-wrap .bar-title{
	position: relative;
	color: #FFF;
	font-size: 2rem;
	font-weight: bold;
	background: #DA2F74;
	box-shadow: 0px 5px 0px #a31949;
	width: 100%;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border-radius: 50px;
	box-sizing: border-box;
}
.page_wrap--campaign_halloween .accordion-wrap.on{
	max-width: 100%;
	width: 800px;
}
.page_wrap--campaign_halloween .accordion-wrap.on .bar-title{
	border-radius: 22px 22px 0 0;
	box-shadow: none;
}
.page_wrap--campaign_halloween .accordion-wrap .bar-title .title-text:after {
	content: '';
	width: 23px;
	height: 13px;
	background: url('/images/campaign/halloween/chevron-white-down-solid.svg');
	position: absolute;
	right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.page_wrap--campaign_halloween .accordion-wrap.on .bar-title .title-text:after{
	transform: translateY(-60%) scale(1, -1);
}
.page_wrap--campaign_halloween .accordion-wrap .accordion-contents{
	display: none;
	border-radius: 0 0 22px 22px;
	padding: 30px 20px;
	background: #F5F5F5;
	color: #555555;
}
.page_wrap--campaign_halloween .copy-done{
	width: 26px;
}
/*campaign_halloween modal */
.modal_window.dialog.dialog_apply_halloween {
	border: none;
	width: 66rem;
	height: 66rem;
	background: #0a0404;
}
.modal_window.dialog.dialog_apply_halloween .lh_15{
	display: flex;
    justify-content: center;
}
.modal_window.dialog.dialog_apply_halloween img{
	width: 100%;
	margin: 0 auto;
	display: block;
}
.modal_window .btn_close.halloween{
    position: absolute;
    top: -18px;
    right: -18px;
    display: block;
    width: 46px;
    height: 46px;
    background: url(../images/icon/modal_close2.png) no-repeat 0 0;
    cursor: pointer;
}
/*halloween_report*/
.page_wrap--campaign_halloween .halloween_report .sec.halloween_result .insta_ttl{
	position: relative;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	margin-top: 4rem;
}
.page_wrap--campaign_halloween .halloween_report .insta_ttl::before{
    background-image: url('/images/campaign/halloween/bar_before.svg');
    background-size: 16px 32px;
    display: inline-block;
    width: 16px;
    height: 32px;
    content: "";
    position: absolute;
    top: -25%;
    left: 29%;
}
.page_wrap--campaign_halloween .halloween_report .insta_ttl::after{
    background-image: url('/images/campaign/halloween/bar_after.svg');
    background-size: 16px 32px;
    display: inline-block;
    width: 16px;
    height: 32px;
    content: "";
    position: absolute;
    top: -25%;
    right: 29%;
}
.c_black_h{
	color: #0a0404;
}
.page_wrap--campaign_halloween .halloween_report .ranking{
    border: 0px;
}
.page_wrap--campaign_halloween_report .halloween_report{
	background: #0a0404;
	color:#fff;
}
.page_wrap--campaign_halloween_report .page_inner .container .sec .instawidget {
	color: #fff;
}
.page_wrap--campaign_halloween_report .page_inner .container .sec .instawidget .instawidget_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.page_wrap--campaign_halloween_report .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail,
.page_wrap--campaign_halloween_report .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail + .instawidget_thumbnail {
	margin-bottom: 2rem;
	border: #F9A31C 2px solid;
	width: calc(100% / 3 - 20px);
}
.page_wrap--campaign_halloween_report .page_inner .container .sec .instawidget .instawidget_area .instawidget_thumbnail img{
	width: 100%;
	display: block;
}



.page_wrap--campaign_halloween .sec-div {
	display: flex;
	row-gap: 20px;
	flex-wrap: wrap;
	margin: 40px auto 80px;
}

.page_wrap--campaign_halloween .sec-div a {
	position: relative;
	width: 800px;
	max-width: 100%;
	border: 2px solid #333333;
	font-size: 1.8rem;
	font-weight: 700;
	color: #000000;
	line-height: 26px;
	padding: 12px 20px;
}

.page_wrap--campaign_halloween .sec-div a span::after {
	content: '';
	width: 23px;
	height: 13px;
	background: url('/images/campaign/halloween/chevron-down-solid.svg') no-repeat center;
	position: absolute;
	right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

.page_wrap--campaign_halloween .about-sect h3 {
	font-size: 2.4rem;
	line-height: 34px;
	font-weight: 700;
	border-left: 6px solid #3C1D6B;
	padding-left: 8px;
	color: #3C1D6B;
}

.page_wrap--campaign_limited_time.page_wrap--campaign_halloween .campaign_desc.campaign_desc_flow dt .step.purple {
	background: #3c1e6b;
    padding: 8px 15px;
    border-radius: 50px;
    width: 120px;
    height: 51px;
    display: flex;
    justify-content: center;
    align-items: center;
	font-size: 2.4rem;
	box-sizing: border-box;
}

.page_wrap--campaign_halloween .desc.step3 p {
	margin-bottom: 10px;
	line-height: 23px;
	margin-top: 0 !important;
}

.page_wrap--campaign_halloween p.ui_notice.listmark_1.f_red {
	color: #FF0000;
}

.page_wrap--campaign_halloween .p_18 p{
    font-weight: 700;
}
.page_wrap--campaign_halloween .p_18 ul li {
    font-size: 15px;
}

.page_wrap--campaign_halloween .bottom-cont {
    border: 1px solid #DDDDDD;
    border-radius: 4px;
    padding: 40px;
    position: relative;
    margin-top: 53px;
}

.page_wrap--campaign_halloween .bottom-cont .img-cont {
    display: flex;
    justify-content: center;
    column-gap: 40px;
}

.page_wrap--campaign_halloween .bottom-cont h3 {
    background: #FFFFFF;
    display: block;
    width: max-content;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -9px;
    padding: 0 20px;
}

.page_wrap--campaign_halloween .bottom-cont .info-cont {
    margin: 0 auto;
	text-align: center;
}

/*--------------------------------------------------------*/
/* campaign_christmas2018
/*--------------------------------------------------------*/
.page_wrap--campaign_christmas .heading_bar{
	background: #0e6a33;
}
.page_wrap--campaign_christmas .container .campaign_desc .d_cell{
	text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 10px;
}
.page_wrap--campaign_christmas .container .campaign_desc .d_cell img{
	display: block;
    width: 100%;
}
.page_wrap--campaign_christmas .sec .coin_desc {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    position: relative;
}
.page_wrap--campaign_christmas .sec .coin_desc:before {
    position: absolute;
    display: block;
    content: '\f0da';
    font-family: 'fontAwesome';
    text-align: center;
    font-size: 80px;
    font-size: 8rem;
    line-height: 0;
    height: 0;
    width: auto;
    margin: auto;
    color: #999999;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.page_wrap--campaign_christmas .container .christmas_card{
    background: url(../images/campaign/christmas/2018/luckynumber_card.png) no-repeat;
    background-size: cover;
    width: 640px;
    height: 420px;
    position: relative;
    margin: 0 auto;
}
.page_wrap--campaign_christmas .container .christmas_card .lesson{
	background: #fff;
    position: absolute;
    top: 71.5%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.page_wrap--campaign_christmas .container .christmas_card .lesson dt{
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    border-bottom: solid 1px #555;
    margin-bottom: 10px;
    width: 270px;
    margin: 0 auto 24px;
    padding: 0 0 3px;
}
.page_wrap--campaign_christmas .container .christmas_card .lesson dd{
	font-size: 25px;
    line-height: 1;
    text-align: center;
    font-weight: bold;
}
.page_wrap--campaign_christmas .container .christmas_card .lesson dd .length{
    font-size: 55px;
    font-weight: bold;
    margin-right: 10px;
    color: #0e6a33;
}
.page_wrap--campaign_christmas .container .transition{
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 80px;
    padding: 0 80px;
}
/* color */
.page_wrap--campaign_christmas .christmas_red{
    color: #a00605;
}
.page_wrap--campaign_christmas .christmas_green{
    color: #0e6a33;
}
.page_wrap--campaign_christmas .btn_style.btn_christmas_red{
    background: #a00605;
    padding: 0 3rem;
    font-size: 25px;
    height: 80px;
    line-height: 80px;
    border-radius: 5px;
    box-shadow: 0px 2px 1px 0 #720100;
    text-shadow: unset;
    border: none;
}
.page_wrap--campaign_christmas .btn_style.btn_christmas_red:hover{
    background: #be3e3e;
}
/*--------------------------------------------------------*/
/* campaign_img
/*--------------------------------------------------------*/
.campaign_img{
	max-width: 50rem;
	margin: 50px auto;
}
.campaign_img img{
	width: 100%;
}
/*--------------------------------------------------------*/
/* campaign_caption
/*--------------------------------------------------------*/
.campaign_caption{
	margin: 0 auto;
	line-height: 1.5;
	width: 75%;
}
.campaign_caption + .campaign_caption{
	margin-top: 25px;
}
.campaign_caption dt{
	display: inline-block;
	background-color: #004986;
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	width: 190px;
	padding: 10px 5px;
	margin-right: 3%;
	text-align: center;
}
.campaign_caption dd{
	display: inline-block;
	color: #000;
	font-weight: bold;
	font-size: 20px;
	font-size: 2.0rem;
	vertical-align: middle;
}
.page_wrap--campaign_limited_time .discount_code_wrap{
	border: 1px solid #000;
	width: 750px;
	margin: 0 auto;
	padding: 35px 0;
}
.page_wrap--campaign_limited_time .discount_code_wrap .discount_code{
	width: max-content;
	margin: 0 auto;
}
/*campaign_home_study faq */
.page_wrap--campaign_limited_time .sec_faq dl {
	margin-bottom: 30px;
}
.page_wrap--campaign_limited_time .sec_faq dl dt {
	text-indent: -2rem;
	padding-left: 2rem;
	line-height: 1.5;
	margin-bottom: 10px;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .sec_faq dl dt:before {
	content: 'Q. ';
	display: inline;
	color: #00ACEE;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .sec_faq dl dd {
	text-indent: -2rem;
	padding-left: 2rem;
	margin-bottom: 10px;
	line-height: 1.5;
}
.page_wrap--campaign_limited_time .sec_faq dl dd:before {
	content: 'A. ';
	display: inline;
	color: #F14444;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .sec_faq dl dd .fa{
	text-indent:0;
}
.page_wrap--campaign_limited_time .sec_faq dl dd p{
	text-indent: 0;
	display: inline-block;
	vertical-align: top;
}
.page_wrap--campaign_limited_time .sec_faq dl dd .notice_msg{
	text-indent: -1.5rem;
	padding-left: 1.5rem;
}

/*--------------------------------------------------------*/
/* invite_friend copy
/*--------------------------------------------------------*/
.page_wrap--campaign_limited_time .flow_inner{
	margin: 30px 30px;
}

.page_wrap--campaign_limited_time .flow_inner dl{
	border: 1px solid #000;
	margin-bottom:60px;
	width: 650px;
	margin: 0 auto 60px;
}
.page_wrap--campaign_limited_time .flow_inner dl:last-child{
	margin-bottom: 40px;
}
.page_wrap--campaign_limited_time .flow_inner dl dt,
.page_wrap--campaign_limited_time .flow_inner dl dd{
	display: table-cell;
	vertical-align: middle;
}
.page_wrap--campaign_limited_time .flow_inner dl dt{
	width: 100px;
	background: #333333;
	color: #FFFFFF;
	text-align: center;
	font-weight: bold;
}
.page_wrap--campaign_limited_time .flow_inner dl dd{
	text-align: center;
	width: 545px;
	padding: 25px 0;
	font-size: 16px;
}
.page_wrap--campaign_limited_time .flow_inner dl dd h3{
	font-size: 24px;
	font-weight: bold;
	margin-bottom:25px;
}
.page_wrap--campaign_limited_time .flow_inner dl dd .step_desc{
	margin: 0 45px;
	text-align: left;
	margin-bottom: 20px;
	line-height: 1.5;
	font-size: 16px;
}
.page_wrap--campaign_limited_time .flow_inner dl dd .sns_btn_wrap li{
	display: inline-block;
}
.page_wrap--campaign_limited_time .flow_inner dl dd .sns_btn_wrap li+li{
	margin-left: 50px;
}
.page_wrap--campaign_limited_time .flow_inner dl.step_1 dd input{
	width: 310px;
	background: #fff;
	border: #333 1px solid;
}
.page_wrap--campaign_limited_time .flow_inner dl.flow_arrow{
	position: relative;
}
.page_wrap--campaign_limited_time .flow_inner dl.flow_arrow:after{
	position: absolute;
	bottom: -45px;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 30px solid #737373;
	border-left: 45px solid transparent;
	border-right: 45px solid transparent;
	left: 0;
	right: 0;
	margin: auto;
}
/* btn style */
.page_wrap--campaign_limited_time .flow_inner .btn_pink{
	min-width: 40px;
	height: 42px;
	line-height: 42px;
	background: #e8716c;
	text-shadow: none;
	box-shadow: none;
}
/* solo step */
.page_wrap--campaign_limited_time .flow_inner .flow_contents{
	border: 1px solid #000;
	margin-bottom:60px;
	width: 650px;
	margin: 0 auto 60px;
	text-align: center;
	padding: 35px 0;
}
.page_wrap--campaign_limited_time .flow_inner .flow_contents input{
	width: 310px;
	background: #fff;
	border: #333 1px solid;
	text-align: center;
}
.page_wrap--campaign_limited_time .sns_btn_wrap li{
	display: inline-block;
}
.page_wrap--campaign_limited_time .sns_btn_wrap li+li{
	margin-left: 50px;
}
/*trial_present_box*/
.page_wrap--campaign_limited_time .trial_present{
	border: solid 2px #F14444;
}
.page_wrap--campaign_limited_time .trial_present .trial_present_heading{
	color: #fff;
	background: #F14444;
	padding: 2rem;
	line-height: 1.5;
	text-align: center;
	font-size: 2.5rem;
}
.page_wrap--campaign_limited_time .trial_present .trial_present_content{
	padding: 4rem;
}
/*flow_triangle*/
.page_wrap--campaign_limited_time .flow_triangle_before{
	position: relative;
}
.page_wrap--campaign_limited_time .flow_triangle_before::before{
	content: '';
	display: block;
	text-align: center;
	width: 0;
	margin: 40px auto;
	height: 0;
	border: 35px solid transparent;
	border-bottom: 0;
	border-top: 40px solid #bbb;
}
.page_wrap--campaign_limited_time .campaign_end{
    padding: 2rem;
    background: #fff8f9;
    text-align: center;
    border: solid 2px #ffd6d6;
    border-radius: 5px;
    margin-bottom: 3rem;
}
/*c_navy*/
.page_wrap--campaign_limited_time .c_navy { color: #004986 !important; }
.page_wrap--campaign_limited_time .c_purple { color: #3C1D6B !important; }
/*--------------------------------------------------------*/
/* campaign_new_year
/*--------------------------------------------------------*/
/* common */
.page_wrap--campaign_new_year .red {
	color: #E83936;
}

.page_wrap--campaign_new_year .red2 {
	color: #EA5865;
}

.page_wrap--campaign_new_year .gold {
	color: #D2A857;
}
.page_wrap--campaign_new_year .blue {
	color: #004986;
}
.page_wrap--campaign_new_year .btn_style.btn_gold {
	background: #D2A857; /* #16a9b2 */
	border: none !important;
	color: #fff !important;
	/* text-shadow: none; */
}
.page_wrap--campaign_limited_time .sec .btn_wrap .btn_style.style_campaign.btn_gold{
	box-shadow: 0 8px 0 0 #A58037;
}
.campaign_new_year .btn_style.btn_gold:hover {
	opacity: 0.8;
}
/* // */
.page_wrap--campaign_new_year{
	background-image: url('../images/campaign/new_year/background.png') !important;
	background-color: #F5F3E9 !important;
}
.page_wrap--campaign_new_year .sec {
    padding: 40px 0 40px;
}
.page_wrap--campaign_new_year .new_year2021_sub{
	padding: 30px 79px 65px;
}
.page_wrap--campaign_new_year .campaign_heading{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.6;
	color: #E83936;
	border-left: 2px solid #E83936;
	border-right: 2px solid #E83936;
	padding: 60px 20px;
	box-sizing: border-box;
	position: relative;
}
.page_wrap--campaign_new_year .campaign_heading::before{
	content: '';
	display: block;
	background-size: auto auto;
	background-color: rgba(232, 57, 54, 1);
	background-image: repeating-linear-gradient(90deg, transparent, transparent 35px, rgba(210, 168, 87, 1) 35px, rgba(210, 168, 87, 1) 70px );
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 30px;
}
.page_wrap--campaign_new_year .campaign_heading::after{
	content: '';
	display: block;
	background-size: auto auto;
	background-color: rgba(232, 57, 54, 1);
	background-image: repeating-linear-gradient(90deg, transparent, transparent 35px, rgba(210, 168, 87, 1) 35px, rgba(210, 168, 87, 1) 70px );
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 30px;
}
.page_wrap--campaign_new_year .campaign_heading img{
	display: block;
	width: 124px;
	height: 124px;
	margin-right: 30px;
}
.page_wrap--campaign_new_year .heading_bar{
	color: #fff;
	text-align: center;
	padding: 15px 0;
	background: linear-gradient(
		45deg , #d19d3b 25%, transparent 25%, transparent 75%, #d19d3b 75%), linear-gradient(
		45deg , #d19d3b 25%, transparent 25%, transparent 75%, #d19d3b 75%);
	background-size: 40px 40px;
	background-position: 0 0, 20px 20px;
	background-color: #D2A957;
	border-top: 8px solid #E83936;
	border-bottom: 8px solid #E83936;
	margin: 0 -80px;
}
.page_wrap--campaign_new_year .sec_invite_friends .desc_box .desc_box_heading {
	background: #D2A857;
	color: #fff;
	padding: 10px 40px;
	border-radius: 20px;
	line-height: 1;
	display: inline-block;
}
.page_wrap--campaign_new_year .sec_invite_friends .desc_box {
	border: 2px solid #D2A857;
	border-radius: 10px;
	padding: 20px;
	vertical-align: unset;
}
.page_wrap--campaign_new_year .sec .campaign_desc.campaign_desc_flow dt .step {
	color: #fff;
	border-radius: 40px;
	background: #D2A857;
	padding: 5px 20px;
	margin-right: 15px;
}
.page_wrap--campaign_new_year .sec .campaign_desc dt {
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 15px;
	color: #555555;
}

/*-------------------------*/
/*Campaign: Christmas 2021 */
/*-------------------------*/
.page_wrap--campaign_limited_time.page_wrap--campaign_christmas .c_christmas{
	color: #106A33;
}
.page_wrap--campaign_limited_time.page_wrap--campaign_christmas .sec .campaign_desc .notice_box{
    border: none;
}
.page_wrap--campaign_limited_time.page_wrap--campaign_christmas dt{
    font-size: 2.4rem;
}
.page_wrap--campaign_limited_time.page_wrap--campaign_christmas .sec .campaign_desc.campaign_desc_flow dt .step{
	background: #106A33;
}

/*-------------------------------*/
/*Campaign: Signup February 2022 */
/*-------------------------------*/

.page_wrap--campaign_limited_time.signup_present{
	margin: -90px auto -40px;
}
.page_wrap--campaign_limited_time.signup_present .c_navy{ color: #092846 !important; }
.page_wrap--campaign_limited_time.signup_present .page_width_color{
	background: #95CAFA;
	margin: 0 -80px;
	margin-top: -10px;
}
.page_wrap--campaign_limited_time.signup_present .main_img_area_signup .main_img{
	display: block;
	margin: 0 auto;
}
.page_wrap--campaign_limited_time.signup_present .sec.sec_img{
   margin: 0 -80px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1{
	margin-bottom: 30px;
	text-align: center;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1 figure{
	display: inline-block;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1 figure{
	position: relative;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1 figure + figure{
	margin-left: 225px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1 figure + figure::before{
	content: "+";
	display: inline-block;
	width: 0;
	height: 0;
	position: absolute;
	top: 85px;
	left: -140px;
	font-size: 10rem;
	font-weight: bold;
	color: #f14444;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_1 figure img{
	max-width: 470px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2{
	margin-bottom: 30px;
	text-align: center;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2 figure{
	display: inline-block;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2 figure{
	position: relative;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2 figure + figure{
	margin-left: 110px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2 figure + figure::before{
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border: 23px solid transparent;
	border-right: 0;
	border-left: 23px solid #004986;
	position: absolute;
	top: 125px;
	left: -65px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_2 figure img{
	max-width: 305px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_3{
	margin-bottom: 30px;
	text-align: center;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_3 figure{
	display: inline-block;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_3 figure{
	position: relative;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_3 figure + figure{
	margin-top: 20px;
	margin-left: 100px;
}
.page_wrap--campaign_limited_time.signup_present .sec .campaign_desc .campaign_signup_3 figure img{
	max-width: 30rem;
}
.page_wrap--campaign_limited_time.signup_present .sec .tg {
    line-height: 2.3rem;
    margin: 0 auto;
}
.page_wrap--campaign_limited_time.signup_present .sec .tg .tg-left{
	font-weight:bold;
	text-align:left;
	vertical-align:top;
	padding-left: 5rem;
}
.page_wrap--campaign_limited_time.signup_present .sec .tg .tg-right{
	text-align:left;
	vertical-align:top;
	padding-left: 3rem;
	padding-bottom: 20px;
}
.page_wrap--campaign_limited_time.signup_present .sec.sec_sign_up .notice_box.box_style_1 {
    width: 970px;
    margin: 0 auto;
    padding-top: 40px;
    padding-bottom: 40px;
}


/*Campaign: Christmas 2022 */

.page_wrap--campaign_christmas .sec p.ttl_ribbon_content  {
    color: #fff;
}
.page_wrap--campaign_christmas .sec .campaign_desc.campaign_desc_flow dt .step {
	padding: 1rem 2rem;
	margin: 1rem auto;
	display: inline-block;
}
.page_wrap--campaign_christmas dt.bl_2{
    border-left: 0.6rem solid #106A33;
    padding: 0.2rem 0.7rem;
	margin-bottom: 2rem;
}
.page_wrap--campaign_christmas.sec .campaign_desc dt {
	margin-bottom: 2rem;
}
.page_wrap--campaign_christmas .sec .campaign_desc.campaign_desc_flow dd .campaign_img_full {
	max-width: 100%;
	margin: 5rem auto;
}
.page_wrap--campaign_christmas .sec .campaign_desc.campaign_desc_flow dd .campaign_img_full img {
	width: 100%;
	height: auto;
}
.page_wrap--campaign_christmas .campaign_desc_flow dd .detail {
	margin-top: 3rem;
}
.page_wrap--campaign_christmas .stamp_basket_wrap{
    margin-top: 2rem;
}
.page_wrap--campaign_christmas .stamp_basket_wrap .stamp_basket_image img{
    display: block;
    width: 100%;
    object-fit: cover;
}
.page_wrap--campaign_christmas .stamp_basket{
    border: 4px solid #A90312;
    border-top: 0;
    padding: 3rem 6rem 6rem;
	background: #fff;
	position: relative;
}
.page_wrap--campaign_christmas .stamp_basket::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	background: url('/images/campaign/christmas/2022/bg.png') bottom center/contain no-repeat;
	opacity: .4;
}
.page_wrap--campaign_christmas .stamp_basket_title {
    font-size: 2.4rem;
    font-weight: bold;
    color: #80D4F9;
    text-align: center;
}
.page_wrap--campaign_christmas .stamp_basket_header {
    position: relative;
    max-width: 450px;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    margin: 0 auto 1rem;
	color: #555;
}
.page_wrap--campaign_christmas .stamp_basket_num {
    color: #A90312;
    font-size: 5.3rem;
    font-weight: bold;
    text-align: center;
    margin: 0 0.5rem;
}
.page_wrap--campaign_christmas .stamp_list {
    display: flex;
    justify-content: center;
    align-items: center;
}
.page_wrap--campaign_christmas .stamp_list .list-item{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 8.5rem;
    height: 4.5rem;
    margin: 1.5rem;
    position: relative;
    border: 3px solid transparent;
	background: #fff;
}
.page_wrap--campaign_christmas .stamp_list .list-item.border-box{
    border: 2px dashed #E899A0;
}
.page_wrap--campaign_christmas .stamp_list .list-item p{
    font-size: 2.4rem;
    font-weight: bold;
    color: #E899A0;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped {
	border: 2px dashed transparent;
	position: relative;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped p {
	display: none;
	font-size: 0;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped img {
    width: 100%;
	border: 1px solid #cccccc;
	cursor: pointer;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped .flag-tooltip {
	display: none;
	position: absolute;
    bottom: 125%;
    width: 160%;
	/* height: 100%; */
    display: flex;
    justify-content: center;
    align-items: end;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped .flag-tooltip span {
	background-color: #4c4c4c;
	color: #fff;
	text-align: center;
	padding: 0.6rem 1.2rem;
	border-radius: 2rem;
	display: block;
	z-index: 2;
	line-height: 100%;
}
.page_wrap--campaign_christmas .stamp_list .list-item.list-stamped .flag-tooltip span::after {
	content: "";
    width: 13px;
    height: 13px;
    transform: rotate(360deg) translateX(-50%);
    position: absolute;
    bottom: -7px;
    z-index: -1;
    left: 49%;
    width: 0;
    height: 0;
    border-left: 0.7rem solid transparent;
    border-right: 0.7rem solid transparent;
    border-top: 0.7rem solid #4c4c4c;
}
.page_wrap--campaign_christmas .ranking_wrap{
    display: flex;
    justify-content: space-between;
}
.page_wrap--campaign_christmas .ranking{
    width: 100%;
    border: 1px solid #F1890E;
    border-bottom-color: #F1890E;
    margin-top: 4rem;
}
.page_wrap--campaign_christmas .ranking.top_ranking{
    display: none;
    margin-top: 10rem;
}
.page_wrap--campaign_christmas .ranking .ranking_head{
    color: #FFFFFF;
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 28px;
    padding: 1.2rem;
    background-color: #F1890E;
}
.page_wrap--campaign_christmas .ranking:nth-child(2) .ranking_head{
    background-color: #B4C1CD;
}
.page_wrap--campaign_christmas .ranking .ranking_head .coin_icon{
    width: 28px;
    height: 25px;
    display: inline-block;
    margin: -5px 15px;
    background-image: url('/images/campaign/christmas/2022/coin.png');
    background-repeat: no-repeat;
    background-size: contain;
}
.page_wrap--campaign_christmas .ranking .ranking_body .c_orange{
    color: #FFAC2F !important;
}
.page_wrap--campaign_christmas .ranking .ranking_body .c_gray{
    color: #999999 !important;
}
.page_wrap--campaign_christmas .ranking .ranking_body .c_brown{
    color: #B1602E !important;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table {
    width: 100%;
    text-align: center;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_head{
    display: flex;
    align-items: center;
    border-bottom: 1px solid #F1890E;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_head .table_ttl {
    width: 100%;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    color: #555555;
    padding: 0.8rem;
    box-sizing: border-box;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_head .table_ttl.th_rank{
    position: relative;
    width: 50%;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_head .table_ttl.th_coin{
    width: 50%;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body{
    display: flex;
    align-items: center;
    padding: 2rem 0 2rem;
	color: #555;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body + .table_body {
    border-top-width: 0;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body {
    font-size: 1.6rem;
    font-weight: bold;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank{
    display: flex;
    align-items: center;
    justify-content: space-around;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank,
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_coin{
    width: 50%;
    font-size: 1.6rem;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank .target_date{
    width: 9rem;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank .team{
    font-size: 1.4rem;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank .away{
    background:#999999;
    color: #fff;
    padding: 0 1rem;
    font-size: 1.4rem;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank .home{
    background:#555555;
    color: #fff;
    padding: 0 1rem;
    font-size: 1.4rem;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_coin span.result_win{
    color: #FF0000;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body:nth-child(odd){
    background: #FBFBFB;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body:last-child{
    border-bottom-color: #FFAC2F
}
.page_wrap--campaign_christmas .ranking:nth-child(2) .ranking_body .ranking_table .table_body:last-child{
    border-bottom-color: #B4C1CD
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body.selected{
    color: #fff;
    background: #699CF3;
}
.page_wrap--campaign_christmas .ranking .ranking_body .ranking_table .table_body .td_rank .gray_shaded{
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #555555;
    box-sizing: border-box;
    position: relative;
}
.page_wrap--campaign_christmas .ui_notice_list ul li {
	font-size: 1.5rem;
	color: #555;
}
.page_wrap--campaign_christmas .trial_area .balloon{
    color: #f1890e;
    font-size: 2.4rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}
.page_wrap--campaign_christmas .trial_area .balloon:before {
    display: inline-block;
    vertical-align: middle;
    margin-right: 30px;
    content: url(../images/index/ver_3/balloon_l.png);
    transform: scale(0.8);
}
.page_wrap--campaign_christmas .trial_area .balloon:after {
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    content: url(../images/index/ver_3/balloon_r.png);
    transform: scale(0.8);
}
.page_wrap--campaign_christmas .trial_area .action{
    display: flex;
    align-items: center;
    justify-content: center;
}
.page_wrap--campaign_christmas .trial_area .action .button_trial{
    display: block;
    font-size: 2.4rem;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: #f1890e;
    width: 50rem;
    height: 3em;
    line-height: 3em;
    border-radius: 3em;
    box-shadow: 0px 6px 0px 0px #c16e0b;
    box-sizing: border-box;
}
.page_wrap--campaign_christmas .trial_area .action .button_trial:hover {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    transition: all 0.2s linear;
    opacity: 0.8;
}


.page_wrap--campaign_christmas .sec_top .t_center p,
.page_wrap--campaign_christmas .sec p {
    color: #707070;
}


.page_wrap--campaign_christmas .sec .campaign_desc p + p {
    margin-top: .8rem;
}

.page_wrap--campaign_christmas .sec .campaign_desc.campaign_desc_flow dd + dt::before {
    content: '';
    display: block;
    text-align: center;
    width: 0;
    margin: 4rem auto;
    height: 0;
    border: 8rem solid transparent;
    border-bottom: 0;
    border-top: 4rem solid #bbb;
}

.page_wrap--campaign_christmas .sec .btn_wrap .btn_style.style_campaign {
    padding: 20px 30px;
    height: auto;
    max-width: 55rem;
	min-width: unset;
    margin-bottom: 1rem;
    width: 100%;
}


/*Campaign: Christmas 2022 */

/* NJ-74340 */
.coinback-guarantee-note {
	margin: 4rem auto;
}
.coinback-guarantee-note div.title_1 {
	background: #F84F63;
	color: #fff;
	font-size: 2rem;
	min-height: 5.2rem;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
	border-radius: 1rem 1rem 0 0;
	font-weight: 700;
	text-align: center;
	padding: 0.8rem 1.4rem;
	box-sizing: border-box;
}

.coinback-guarantee-note .info {
	font-size: 1.8rem;
	padding: 1.6rem 2.4rem 2.4rem;
	line-height: 180%;
	border: 0.2rem solid #F84F63;
	border-radius: 0 0 1rem 1rem;
    box-sizing: border-box;
}

.coinback-guarantee-note .info div.title_2 {
	font-size: 1.8rem;
	margin-top: 1.6rem;
	font-weight: 700;
}

.coinback-guarantee-note .info p {
	line-height: 180%;
}

.coinback-guarantee-note .info ul.red {
	margin: 1.6rem auto;
	color: #D91C0B;
	font-weight: 700;
}

.coinback-guarantee-note .info ul li {
	padding: 0 .2rem;
	line-height: normal;
    list-style-type: disc;
	margin-left: 2rem
}

.coinback-guarantee-note .info ul li::marker {
	font-size: 1.8rem;
}

.coinback-guarantee-note .info ul li:not(:last-child) {
	margin-bottom: 0.8rem;
}

/* NJ-96717: Re-enrollment Floating CTA (Figma: 23-435 PC / 10-156 mobile / 27-43 hover) */

.cta-re-enrollment-wrap {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9998;
    width: fit-content;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
    padding: 1.2rem 2rem calc(1.6rem + env(safe-area-inset-bottom));
}
.cta-re-enrollment-label {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 1.2rem;
    color: #F1890E;
    white-space: nowrap;
    line-height: 1;
}
.cta-re-enrollment-label-slash {
    display: inline-block;
    font-family: 'Arial', sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    color: #F1890E;
    letter-spacing: 0.1em;
    line-height: 1;
}
.cta-re-enrollment-label-slash--left {
    transform: rotate(-12deg);
}
.cta-re-enrollment-label-slash--right {
    transform: rotate(12deg);
}
.cta-re-enrollment-label-text {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #F1890E;
    letter-spacing: 0.16em;
}
.cta-re-enrollment-label-text span {
    font-size: 2.8rem;
    font-weight: 700;
    letter-spacing: 0.16em;
}

.cta-re-enrollment {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 40rem;
    max-width: 100%;
    padding: 2rem;
    box-sizing: border-box;
    border-radius: 99999px;
    border: none;
    background: linear-gradient(90deg, #FF6B35 0%, #EEB633 100%);
    box-shadow: inset 0 0 0 0.2rem rgba(255, 255, 255, 0.4), 0 0 1rem rgba(241, 137, 14, 0.6);
    text-decoration: none;
    color: #fff;
    transition: background 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.cta-re-enrollment:visited,
.cta-re-enrollment:hover {
    color: #fff;
}

.cta-re-enrollment-left,
.cta-re-enrollment-right {
    display: flex;
    align-items: center;
    width: 4rem;
    flex-shrink: 0;
    align-self: stretch;
}
.cta-re-enrollment-right {
    justify-content: flex-end;
}

.cta-re-enrollment-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    flex-shrink: 0;
}

.cta-re-enrollment-sub {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 1rem;
}
.cta-coin-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.4rem;
    height: 2.4rem;
    flex-shrink: 0;
    overflow: hidden;
}
.cta-coin-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.cta-re-enrollment-sub-text {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 0.2rem;
    padding-bottom: 0.4rem;
    color: #fff;
    white-space: nowrap;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
}
.cta-re-enrollment-sub-text span {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1;
}
.cta-re-enrollment-sub-text b {
    font-weight: 700;
}

.cta-re-enrollment-main {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
    text-align: center;
    letter-spacing: 0.04em;
    white-space: nowrap;
}
.cta-re-enrollment-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 99999px;
    background: #fff;
    overflow: hidden;
    flex-shrink: 0;
}
.cta-re-enrollment-arrow img {
    width: 1.8rem;
    height: 1.8rem;
    object-fit: contain;
}

.cta-re-enrollment:hover {
    background: linear-gradient(90deg, #ff9a72 0%, #f5cc5c 100%);
    box-shadow: 0 0.2rem 1.2rem rgba(241, 137, 14, 0.85);
    border-color: rgba(255, 255, 255, 0.20);
}

/* Hover — Figma node 27:43, all viewports >= 360px */
.cta-re-enrollment-wrap.sp .cta-re-enrollment:hover {
    background: linear-gradient(90deg, #ff9a72 0%, #f5cc5c 100%);
    box-shadow: 0 0.2rem 1.2rem rgba(241, 137, 14, 0.85);
    border-color: rgba(255, 255, 255, 0.20);
}

.cta-re-enrollment:focus-visible {
    outline: 0.3rem solid #F1890E;
    outline-offset: 0.4rem;
}

/* Mobile — .sp targets mobile view only (Figma node 10:156) */
.cta-re-enrollment-wrap.sp {
    width: 100%;
    max-width: 100vw;
    height: auto;
    min-height: 14.7rem;
    box-sizing: border-box;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    padding: 1.2rem 1.6rem;
    gap: 1.2rem;
    background: #FFFAF5;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment {
    padding: 1.4rem 1.8rem;
    width: 100%;
    max-width: 35.1rem;
    border: none;
    box-shadow: inset 0 0 0 0.2rem rgba(255, 255, 255, 0.4), 0 0 1rem rgba(241, 137, 14, 0.6);
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-left,
.cta-re-enrollment-wrap.sp .cta-re-enrollment-right {
    width: 3.2rem;
}
.cta-re-enrollment-wrap.sp .cta-coin-icon {
    width: 2rem;
    height: 2rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-sub-text {
    font-size: 1.4rem;
    padding-bottom: 0.2rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-sub-text span {
    font-size: 1.8rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-main {
    font-size: 2.2rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-label-text {
    font-size: 1.6rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-label-text span {
    font-size: 2.6rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-label-slash {
    font-size: 2.2rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-arrow {
    width: 2rem;
    height: 2rem;
}
.cta-re-enrollment-wrap.sp .cta-re-enrollment-arrow img {
    width: 1.2rem;
    height: 1.2rem;
}

.page_wrap--campaign_re_register {
    padding-bottom: 7.25rem;
}
.page_wrap--campaign_re_register.sp {
    padding-bottom: 6.25rem;
}
