@charset "utf-8";

.PCdisplayNone {
	display:none!important;
}
.mt_35{
	margin-top:35px;
}
.page_top_mgn{
	margin-top:50px;
}
.fea_mb0{
	margin-bottom: 0!important;
}
.fea_mb10{
	margin-bottom: 10px;
}
.fea_mb20{
	margin-bottom: 20px;
}
.fea_mb30{
	margin-bottom: 30px;
}
.fea_mb40{
	margin-bottom: 40px;
}
.fea_mb60{
	margin-bottom: 60px!important;
}
.fea_noteL {
    font-size: 0.875rem!important;
    font-weight: normal!important;
    line-height: 1.3rem;
}
.fea_noteM {
    font-size: 0.8rem!important;
    font-weight: normal!important;
    line-height: 1.3rem;
}
.fea_noteS {
    font-size: 0.75rem!important;
    font-weight: normal!important;
    line-height: 1.3rem;
}
.fea_fb{
	font-weight: bold;
}
.fea_tac{
	text-align: center;
}
.lp_wp{
	margin-top: 30px;
}
.lp_wp img{
	max-width: 100%;
	image-rendering: -webkit-optimize-contrast;
}
.lp_hover a{
	opacity: 1;
	transition: 0.3s;
}
.lp_hover a:hover{
	opacity: 0.6;
	transition: 0.3s;
}
.fea_flex{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
}
.swipeText{
	display: none;
}
.lp_wp h1 {
	margin-bottom: 20px;
    font-size: 1.56rem;
    font-weight: bold;
    border-left: 5px #e60027 solid;
    padding-left: 15px;
}
.spr_main_box{
  position: relative;
}
.spr_kvbtn a{
	position: absolute;
	display: block;
	width: 420px;
	height: 71px;
	bottom: 23px;
	left: calc(50% - 210px);
}
.spr_kvbtn a:hover{
	background: #fff;
	opacity: 0.3;
}
.mem_h301{
	text-align: center;
}
.mem_h301{
	margin-bottom: 30px;
}
.mem_h301 p{
	position: relative;
	color: #000;
	font-size: 1.5rem;
	display: inline-block;
}
.mem_h301 p::before{
	content: "";
	position: absolute;
	width: 35px;
	height: 55px;
	left: -55px;
	top: -3px;
	background: url(../img/ico_left_pc.png) no-repeat;
}
.mem_h301 p::after{
	content: "";
	position: absolute;
	width: 35px;
	height: 55px;
	right: -55px;
	top: -3px;
	background: url(../img/ico_right_pc.png) no-repeat;
}
.spr_tit01{
	background: #ff7774;
	padding: 16px 0 5px;
	text-align: center;
	color: #fff;
	font-size: 2rem;
}
.spr_box01{
	border: 4px #ff7774 solid;
	margin-bottom: 40px;
	background: #fefaee;
}
.spr_box01 ul li{
	border-right: 4px #ff7774 solid;
	padding: 20px 30px 40px;
	width: 33%;
	text-align: left;
	font-weight: bold;
}
.spr_box01 ul li:last-child{
	border-right: none;
}
.spr_tan{
	margin-bottom: 40px;
}
.spr_span01{
	position: relative;
	padding: 0 3px;
	z-index: 9;	
	margin-bottom: 5px;
	display: inline-block;
	vertical-align: middle;
	white-space: nowrap;
	line-height: 1.2;
}
.spr_span01::after{
	content: "";
	position: absolute;
	bottom: 0px;
	left: -2px;
	width: 137px;
	height: 10px;
	background: #ffe1c3;
	z-index: -1;
}
.spr_span01.spr_span02::after{
	width: 187px;
}
.spr_span01.spr_span03::after{
	width: 217px;
}
.spr_box01 ul li h4{
	font-size: 1.3rem;
	line-height: 1.8;
	margin-bottom: 20px;
}
.spr_box01 ul li h4 span{
	border: 2px #000 solid;
	padding: 5px 5px 0;
	line-height: 1;
	display: inline-block;
	margin-right: 3px;
}
.spr_btn01{
	background: #F1912A;
	padding: 22px 30px 18px 30px;
	color: #fff!important;
	text-decoration: none!important;
	position: relative;
	font-size: 1.3rem;
	display: block;
	width: 96%;
	font-weight: normal;
	text-align: center;
	margin: 0 auto;
}
.spr_btn01::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 40px;
	width: 9px;
	height: 9px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: translateY(-50%) rotate(45deg);
}
.spr_btn01.spr_btn03{
	background: #fff;
	border: 2px #b8b8b8 solid;
	color: #010101!important;
	padding: 20px 30px 16px 30px;
}
.spr_title_h3{
	background: #ff7774;
	padding: 10px 0 3px 30px;
	color: #fff;
	font-size: 2rem;
	margin-bottom: 25px;
}
.spr_txt_list {
	margin-bottom: 30px;
}
.spr_txt_list li{
	font-size: 1.3rem;
	font-weight: bold;
	margin-left: 0.5em;
	text-indent: -0.5em;
}
.spr_txt_list li span{
	font-weight: normal;
}
.spr_txt_list li a{
	color: #fe5450;
}
.gift_step_item{
	position: relative;
	margin-left: 42px;
	padding-left: 72px;
	padding-bottom: 60px;
	border-left: 16px solid #5ecb41;
}
.gift_step_mark{
	position: absolute;
	left: -58px;
	top: -2px;
	width: 100px;
}
.gift_title_h4{
	margin-bottom: 20px;
	font-size: 1.3rem;
	padding-top: 35px;
}
.gift_step_item_last{
	border-left-color: #fff;
}
.gift_step_bg{
	padding: 25px 30px 30px;
	background: #ffe1c3;
}
.gift_step_bg h5{
	color: #ab2025;
	font-size: 1.3rem;
	font-weight: bold;
	margin-bottom: 15px;
}
.gift_step_bg h5 span{
	font-weight: normal;
}
.gift_step_list{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.gift_step_list li{
	position: relative;
	padding: 10px 10px 15px;
	width: calc((100% - 75px)/4.0001);
	background: #fff;
	border-radius: 10px;
	text-align: center;
}
.gift_step_list li::after{
    content: "";
    position: absolute;
    right: -29px;
	top: calc(50% - 8px);
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-color: #ff7774 transparent transparent transparent;
    border-width: 16px 15px 0 15px;
	transform: rotate(-90deg); 
}
.gift_step_list li:last-child::after{
	display: none;
}
.gift_step_num{
	display: block;
	margin: 0 auto 10px;
	width: 30px;
	height: 30px;
	border-radius: 15px;
	text-align: center;
	color: #fff;
	font-size: 1.3rem;
	line-height: 32px;
	font-weight: bold;
	background: #ff7774;
}
.gift_step_list li>div{
	min-height: 78px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.gift_step_list li a{
	color: #fe5450;
}
.gift_step_list_cols_3 li{
	width: calc((100% - 50px)/3.0001);
}
.gift_text_err{
	margin-bottom: 15px;
	font-size: 1.15rem;
	font-weight: bold;
}
.gift_text_err span{
	display: inline-block;
	margin: 0 10px 0 0;
}
.gift_font_red{
	color: #e73820;
}
.gift_note_box{
	padding: 20px;
}
.lp_bg_box {
	padding: 40px 30px;
	background: #fff8e8;
}

.mem_over {
    padding-top: 30px;
    overflow-y: scroll;
    max-height: 505px;
    font-size: 0.875rem;
}
.mem_over{
	padding-top: 30px;
	overflow-y:scroll;
	max-height: 412px;
	font-size: 0.875rem;
}
.mem_over ul{
	margin-bottom: 20px;
}
.mem_over ul li{
	margin-left: 1.35em;
	text-indent: -1.1em;
}

.mem_contact{
	display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
    font-size: 1.1rem;
}
.mem_col01{
	background: #ff7774;
	color: #fff;
	text-align: center;
	padding: 0 15px;
	width: 18%;
	font-weight: bold;
	vertical-align: middle;
	display: flex;
	align-items: center;
	justify-content: center;
}
.mem_col02{
	border: 1px #ff7774 solid;
	padding: 15px 20px 10px;
	width: 82%;
}
.mem_col02 p {
    line-height: 1.6rem;
}
.mem_col02 p.txt_ti {
	margin-left: 1em;
    text-indent: -1em;
}
.gift_step_list li div p{
	font-weight: bold;
}
.fea_mb50{
	margin-bottom: 50px;
}
.mem_step_list li>div{
	min-height: 40px;
}
.spr_btn02{
	text-align: center;
}
.spr_btn02 a{
	background: #fe5450;
	padding: 30px 150px 25px;
	color: #fff!important;
	text-decoration: none!important;
	position: relative;
	font-size: 1.5rem;
	font-weight: bold;
	display: inline-block;
	border-radius: 40px;
}
.spr_btn02.win_btn01 a{
	border-radius: 0;
}
.spr_btn02 a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 50px;
    width: 9px;
    height: 9px;
    border-top: 3px solid currentColor;
    border-right: 3px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
}
.spr_btn02.win_btn01 a::after{
	content: "";
	top: 50%;
	left: 56.5%;
	width: 10px;
	height: 10px;
	border-top: 4px solid currentColor;
	border-right: 4px solid currentColor;
}
.sum_main_box{
	position: relative;
}
.sum_main_box .sum_btn02{
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 0;
	width: 100%;
	background: #fff;
}
.sum_main_box .sum_btn02 a{
	display: block;
	width: 100%;
	padding: 15px 20px 8px;
}
.sum_title{
	text-align: center;
	color: #000;
}
.sum_title>div{
	position: relative;
	display: inline-block;
	text-align: center;
}
.sum_title>div::before {
    content: "";
    position: absolute;
    width: 41px;
    height: 60px;
    left: -80px;
    top: -3px;
    background: url(../img/ico_left_pc.png) no-repeat;
}
.sum_title>div::after {
    content: "";
    position: absolute;
    width: 41px;
    height: 60px;
    right: -80px;
    top: -3px;
    background: url(../img/ico_right_pc.png) no-repeat;
}
.sum_title p{
	font-size: 1.25rem;
}
.sum_title small{
	display: inline-block;
	vertical-align: middle;
	font-size: 1rem;
	line-height: 1.2;
	font-weight: normal;
}
.sum_tit01{
	margin: 20px auto 15px;
	font-size: 3rem;
	font-weight: bold;
	color: #F1912A;
	text-align: center;
}
.sum_box01{
	border: none;
	background: none;
}
.sum_box01 ul{
	margin-bottom: 60px;
}
.sum_box01 ul li{
	position: relative;
	padding: 20px 40px 40px;
	width: 47.3%;
	border: none;
	background: #eee;
	box-shadow: 2px 5px 7px rgba(201,201,201,0.5);
	border-radius: 30px;
}
.sum_box01 .spr_tan{
	margin-bottom: 30px;
}

.sum_box01 .spr_span01::after{
	width: 100%;
	background: #fff;
}
.sum_box01 ul li h4{
	margin-bottom: 5px;
	line-height: 1.5;
}
.sum_pro_type{
	font-size: 0.875rem;
	font-weight: normal;
	line-height: 1.5;
}
.sum_btn02 a{
	background: #08348b;
}
.sum_title_h3{
	padding-bottom: 5px;
	margin-bottom: 30px;
	font-size: 2rem;
	font-weight: bold;
	color: #F1912A;
	border-bottom: 3px solid currentcolor;
}
.sum_step_box .gift_step_item{
	border-left-color: #e5e5e5;
}
.sum_step_box .gift_step_bg{
	background: #eff2f2;
}
.sum_step_box .gift_step_num{
	background: #F1912A;
}
.sum_step_box .gift_step_list li::after{
	border-color: #F1912A transparent transparent transparent;
}
.sum_step_box .gift_step_list li a{
	color: #3a60c9;
}
.sum_step_box .gift_title_h4{
	font-size: 1.75rem;
}
.sum_step_box .gift_text_err{
	font-size: 1.3rem;
}
.sum_step_box .gift_step_item_last{
	border-left-color: #fff;
}
.sum_scr_bg{
	background: #eff2f2;
}
.sum_contact a{
	color: #3a60c9;
}
.sum_pro_span03{
	margin-right: -0.5em;
	margin-bottom: 22px;
	line-height: 1.1;
}
.sum_pro_span03 .spr_span01:first-child{
	padding-right: 0;
}
.sum_pro_span03 .spr_span01:last-child{
	padding-left: 2px;
}
.sum_pro_logo{
	max-width: 294px;
	margin-bottom: 30px;
}
.sum_links_cr{
	color: #3a60c9 !important;
}
.sum_note_end{
	position: absolute;
	z-index: 11;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background: rgba(87,87,87,0.5);
	border-radius: 30px;
}
.sum_note_end p{
	padding: 10px 20px 7px;
	font-size: 1.3rem;
	font-weight: normal;
	background: #fff;
	border-radius: 8px;
}
.win_txt01{
	font-size: 1.25rem;
	text-align: center;
	display: inline-block;
	margin-bottom: 30px;
	color: #000;
	font-weight: bold;
}
.win_note01{
	text-align: left;
	margin-right: -15px;
}
.sum_pro_box{
	margin-bottom: 25px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-left: 20px;
}
.sum_pro_text{
	width: 59%;
	margin-right: -2%;
}
.spr_sup{
	display: inline-block;
	vertical-align: 0.3em;
	font-size: 0.75rem;
	letter-spacing: -1px;
}

.mem_modal_wp,.mem_modal_over{
	position: fixed;
	z-index: 100;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.mem_modal_wp{
	display: none;
	opacity: 0;
}
.mem_modal_over{
	background: rgba(0,0,0,0.6);
}
.mem_modal_container{
	position: relative;
	z-index: 101;
	max-height: 85vh;
    max-width: 760px;
	width: calc(100% - 30px);
	display: flex;
	flex-direction: column;
}
.mem_modal_s{
	max-width: 500px;
	max-height: 250px;
}
.mem_modal_head{
	margin-bottom: 1em;
	position: relative;
}
.mem_modal_head h4{
	margin: 0;	
}
.mem_modal_close{
	position: absolute;
	z-index: 102;
	right: -0.5em;
	top: -1.5em;
	width: 2em;
	height: 2em;
	font-size: 0.8em;
	cursor: pointer;
}
.mem_modal_close:before,.mem_modal_close:after{
	content: '';
	position: absolute;
	top: 0.9em;
	left: 0.25em;
	width: 75%;
	height: 0.15em;
	background: #fff;
}
.mem_modal_close:before{
	transform: rotate(45deg);
}
.mem_modal_close:after{
	transform: rotate(-45deg);
}
.mem_modal_content{
	display: none;
}
.mem_modal_body{
	padding: 30px;
	overflow-y: auto;
    position: relative;
	background: #fff;
}
.mem_pro_off{
	background: #848484 !important;
	color: #fff;
	display: flex;
	flex-direction: column;
	font-weight: normal !important;
}
.mem_pro_soon{
	padding-bottom: 60px;
	margin: auto;
	text-align: center;
}
.mem_pro_soon_mark{
	max-width: 290px;
	margin: 0 auto 20px;
}

.apply_btn{
	text-align: center;
	margin-bottom: 10px;
}
.apply_btn a{
	background: #e70000;
	border-radius: 50px;
	color: #fff;
	font-size: 1.38rem;
	display: inline-block;
	font-weight: bold;
	padding: 30px 155px 25px;
	text-decoration: none;
	position: relative;
}
.apply_btn a::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 50px;
	width: 9px;
	height: 9px;
	border-top: 3px solid currentColor;
	border-right: 3px solid currentColor;
	transform: translateY(-50%) rotate(45deg);
}
.fea_mb15{
	margin-bottom: 15px;
}
.fea_mb100{
	margin-bottom: 100px;
}
.event_flex{
	justify-content: center;
	margin-bottom: 80px;
}
.event_box{
	width: 37%;
	background: #eef2f3;
	border-radius: 20px;
	padding: 20px 25px;
}
.event_box:first-child{
	margin-right: 30px;
}
.event_tit{
	border-bottom: 2px #F1912A solid;
	padding-bottom: 10px;
	margin-bottom: 20px;
	text-align: center;
	font-size: 1.25rem;
	color: #000;
	font-weight: normal;
	justify-content: center;
	align-items: center;
}
.event_img{
	margin-right: 30px;
}
.event_tit p{
	padding-top: 8px;
}
.event_tit span{
	font-size: 1.1rem;
}
.event_info{
	justify-content: center;
	align-items: flex-start;
}
.event_info span{
	background: #fff;
	margin-right: 30px;
	display: inline-block;
	padding: 5px 10px 0;
	font-weight: bold;
	font-size: 1.1rem;
}
.event_info div{
	font-size: 1.1rem;
	padding-top: 3px;
}
.sum_box01 ul li.event_or{
	font-size: 2.38rem;
	width: 5%;
	background: none;
	box-shadow:none;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}


 @media only screen and (min-width: 768px) and (max-width: 1274px) {


}



