@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

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

	base

-----------------------------------*/
html {
    overflow-y: auto;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 62.5%;
	overflow-x: hidden;
}
body {
    font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
    font-size: 1.6em;
	color: #4e4e4e;
    line-height: 2;
	letter-spacing:0.05em;
	font-weight: 500;
	font-feature-settings: "palt";
	background: #ffffff;
	margin:0 !important;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
  background: none !important;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.contents_inner{
	max-width: 1100px;
    width: 90%;
	margin: 0 auto;
}
img {
    max-width: 100%;
    height: auto;
}
a:not(.btn), a:not(.btn):link, a:not(.btn):visited {
    color: #231815;
	text-decoration:none;
    cursor: pointer;
}
a:not(.btn):hover {
    opacity: 0.8;
	text-decoration:none;
}
.sp{
	display:none;
}
.pc{
	display:block;
}
.left{
	float: left;
}
.right{
	float: right;
}
.row_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.link_btn{
	max-width:100%;
	width:720px;
	height:80px;
	display:block;
	margin:0 auto;
	font-size: 15px;
	line-height:80px;
	font-weight:bold;
	text-align:center;
	position:relative;
	z-index:1;
	border:2px solid #000;
}
.p_txt {
	color:#eb6ea5;
}
.g_txt {
	color:#45b035;
}
.section {
	margin-top:50px;
}
@media screen and (max-width: 840px) {



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

    .sp{
        display:block;
    }
    .pc{
        display:none;
    }
}

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

	clearfix

-----------------------------------*/
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
/*-----------------------------------

	header

-----------------------------------*/
header {
	position:relative;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
header:before {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    background: url(../images/line.jpg) no-repeat top;
    background-size: cover;
    height: 3px;
}
header h1 {
    text-align: center;
    padding: 20px 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
header h1 a {
  line-height: 2;
}
header h1 img{
	vertical-align:middle;
}

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

	header h1 {
		padding: 10px 0;
	}

}


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

	mainvisual

-----------------------------------*/
/*slick*/
.tab_slider {
	display:none;
}
.pc_slider {
	display:block;
}
.mainvisual .slick-slide .mainvisual_bg {
	width:100%;
}
.mainvisual .slick-slide {
	background:#f8de00;
	/*padding: 40px 0;*/
}
.slick-slide img {
    margin: 0 auto;
}
.system_slider .slick-slide img {
  max-width: 95%;
}
.mainvisual .slick-slide .link_btn {
    width: 350px;
    height: 60px;
    line-height: 60px;
    background: #eb6ea5;
    color: #fff;
    border: none;
    margin: 15px auto;
}
.mainvisual .slick-slide .link_btn:before {
    content: "";
    width: 24px;
    height: 24px;
    background: url(../images/icon_register.svg) no-repeat;
    background-size: contain;
    position: absolute;
    left: 30px;
    top: 20px;
}
.mainvisual .slick-slide .link_btn::after {
    content: "";
    position: absolute;
    top: 25px;
    right: 30px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(
45deg);
    transform: rotate(
45deg);
}
.mainvisual .slick-slide .row_box {
	align-items:center;
}
.mainvisual .slick-slide .mainvisual01_ttl {
	width:444px;
}
.mainvisual .slick-slide .mainvisual01_img {
	margin-top:50px;
	width:296px;
}

@media screen and (max-width: 1200px) {
  .tab_slider {
  	display:block;
  }
  .pc_slider {
  	display:none;
  }
  .mainvisual .slick-slide .mainvisual01_img {
	margin-top:0px;
  }
}

/*form_box*/
.form_box,
.forgotPassword {
	max-width:30%;
	width:320px;
	padding:25px;
	margin:0 auto;
	background:#fff;
	text-align:center;
}
.resetPassword {
	padding:25px;
	margin:0 auto;
	text-align:center;
}
input[type="text"], input[type="password"], input[type="email"] {
    padding: 5px 10px;
}
.form_area,
.forgotPassword .form-group {
	margin-top:15px;
}
.input_group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 40px;
    margin-top: 5px;
    border: 1px solid rgb(225, 225, 225);
}
.form_box input,
.forgotPassword .form-group input {
    width: 100%;
    height: 40px;
	/*height:100%;*/
    border: 1px solid rgb(200, 201, 198);
    box-shadow: rgb(0 0 0 / 8%) 0px 1px 4px;
    border-radius: 3px;
}
.form_box .btn-primary,
.forgotPassword .btn-primary {
	font-size:14px;
	font-weight: bold;
     width: 100%;
    height: 42px;
    line-height: 42px;
   background: #000;
    color: #fff;
    border: none;
    margin-top: 15px;
}
.pass_text {
	font-size: 12px;
	display:block;
	text-decoration:underline !important;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before{
	 color: #eb6ea5 !important;
}
.slick-dots li.slick-active button:before {
    color: #eb6ea5 !important;
	opacity:1 !important;
}

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

	.slick-slide .txt_box {
		width:70%;
	}
	.slick-slide .mainvisual01_img {
		width: 30%;
	}
	.slick-slide .txt_area {
		width:60%;
	}

}
@media screen and (max-width: 1200px) {
  .form_box,
  .forgotPassword {
  	max-width:100%;
  	width:300px;
  }
	.resetPassword {
		padding:0px 25px 25px;
		margin:0 auto;
		text-align:center;
	}
  .slick-slide {
		padding: 30px 0 0 0;
	}
	.mainvisual .slick-slide {
		padding: 0;
	}
	.slick-slide .txt_box {
		width: 100%;
	}
	.slick-slide .mainvisual01_img {
		width:100%;
		margin-top: 20px;
	}
}
@media screen and (max-width: 640px) {
	.tab_slider{
        margin-bottom: 40px;
    }

	/*form_box*/
	.form_box,
  .forgotPassword {
		max-width:100%;
		width:90%;
		padding:0;
		background:none;
	}
	.form_area:first-of-type,
  .forgotPassword .form-group:first-of-type {
		margin-top:0;
	}
	.form_area,
	.form_box .btn-primary,
  .forgotPassword .btn-primary {
		margin-top:20px;
	}
	.pass_text {
		margin-top:5px;
	}

}

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

	about_block

-----------------------------------*/
#about_block {
	padding:50px 0;
}
#about_block h2 {
	width:449px;
	max-width:100%;
	margin-bottom:20px;
}
#about_block .row_box{
	width:900px;
	max-width:90%;
	margin:0 auto;
}
#about_block .txt_box{
	width:61%;
}
#about_block .txt_box p{
	text-align:justify;
}
#about_block .img_box {
	width:35%;
	text-align:center;
	position:relative;
}
#about_block .img_box img{
	width:334px;
}
#about_block .about_txt {
    width: 233px !important;
	max-width:100%;
    position: absolute;
    right: -80px;
    top: -25px;
}
#about_block .saved_box {
	margin-bottom:50px;
}
#about_block .saved_box h3{
	width:542px;
	max-width:100%;
	margin:0 auto 30px;
}
#about_block ul {
	width:900px;
	max-width:100%;
	margin:0 auto;
}
#about_block ul li {
	width:444px;
}
#about_block ul li:first-child{
	position:relative;
}
#about_block ul li:first-child:before {
    content: "";
    /* background: url(../images/plus.svg) no-repeat; */
    position: absolute;
    right: -25px;
    margin: 0 auto;
    width: 40px;
    height: 40px;
    bottom: 50px;
}
#about_block .link_btn::after {
    content: "";
    position: absolute;
	top: 35px;
    right: 30px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    -webkit-transform: rotate(
45deg);
    transform: rotate(
45deg);
}
#about_block .link_btn:before {
    content: "\f3c5";
    width: 24px;
    height: 24px;
    position: absolute;
    left: 30px;
    top: 0;
    font-size: 20px;
    font-family: 'Font Awesome 5 Free';
}

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

	#about_block ul li {
		width:49%;
	}
}
@media screen and (max-width: 1024px) {
  #about_block .txt_box {
		width: 100%;
		margin-top:40px;
	}
	#about_block .txt_box p{
		font-size:14px;
	}
	#about_block .about_txt {
		top:-50px;
		right: -30px;
	}
	#about_block .img_box {
		width: 100%;
		margin-top:40px;
	}
}
@media screen and (max-width: 840px) {

	#about_block h2 {
		margin-bottom: 0;
	}
	#about_block ul li {
		width:100%;
	}
	#about_block ul li:first-child {
		margin-bottom: 15px;
	}
	#about_block ul li:first-child:before {
		right: 0;
		left:0;
		margin:0 auto;
		bottom: -20px;
	}
}
@media screen and (max-width: 640px) {

	#about_block {
		padding:20px 0 40px 0;
	}
	/* #about_block .row_box{

	} */
	#about_block ul li:first-child:before {
		width:29px;
		height:29px;
	}

	#about_block .saved_box {
		margin: 0 calc(50% - 50vw);
		background: #f8de00;
	}
	#about_block .saved_box img {
		max-width: 380px;
		width: 100%;
		padding: 0 10px;
		margin: 0 auto;
	}


	#about_block .link_btn {
		height:55px;
		line-height:55px;
		margin-top:40px;
	}
	#about_block .link_btn::after {
		top: 22px;
	}

}

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

	system_block

-----------------------------------*/
#system_block {
	background-color:rgba(204,204,204,0.3);
	padding:50px 0;
	text-align:center;
}
#system_block h2{
	margin: 0 auto 10px;
	line-height:1;
}
#system_block h2 img{
	width:478px;
}
#system_block .link_btn {
    width: 260px;
    height: 50px;
    line-height: 50px;
    background: #fff;
    color: #000;
    border: none;
    margin-top: 40px;
}

#system_block ul{
	overflow-x: auto;
  overflow-y: hidden;
	white-space: nowrap;
    -webkit-overflow-scrolling: touch;
	margin:30px 0 auto;
}
#system_block ul li{
	width:16%;
}
#system_block .btn_box {
	width: 550px;
	max-width: 100%;
	margin: 40px auto;
}
#system_block a {
	display: block;
	width: 260px;
	max-width: 100%;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	padding: 10px;
	border-radius: 3px;
}
#system_block .more_linkbtn {
	background: #fff;
	margin-right: 2%;
}
#system_block .store_linkbtn {
	border: 2px solid #000;
	position: relative;
}
#system_block .store_linkbtn a {
	padding-left: 40px;
}
#system_block .store_linkbtn:before {
	content: "\f3c5";
	font-family: "Font Awesome 5 Free";
	position: absolute;
	left: 40px;
	top: 10px;
	font-size: 14px;
	font-weight: bold;
}


/*club_btn*/
#system_block .club_btn {
	background:#6ac05e;
	padding:0 40px;
	position:relative;
}
#system_block .club_btn:before {
	content: "";
	width: 130px;
	height: 121px;
	background: url(../images/index/club_btnimg.png) no-repeat;
	background-size: contain;
	position: absolute;
	left: 50px;
	top: 25px;
}
#system_block .club_btn h4 {
	width: 45%;
	margin-left: 170px;
	font-size: 18px;
	font-weight: 900;
	line-height:2;
	text-align: left;
	color: #000;
}
#system_block .club_btn h4 span{
	font-size: 32px;
	font-weight: 700;
	display: block;
}
#system_block .club_btn .row_box {
	align-items: center;
	height: 160px;
}
#system_block .club_btn ul {
	align-items: center;
}
#system_block .club_btn .link_btn {
	padding: 0;
	width: 25%;
	height: 42px;
	line-height: 42px;
	background: #fff;
	color: #000;
	font-weight: 100;
	border: none;
	margin:0 !important;
	border-radius:3px;
}
#system_block ul li .link_btn:hover {
	color: #fff !important;
}
@media screen and (max-width: 1400px) {
	#club_block .club_btn h4 span {
		font-size: 24px;
	}
}
@media screen and (max-width: 840px) {
	#system_block .club_btn {
		margin: 50px calc(50% - 50vw) 0;
		padding: 25px 40px;
	}
	#system_block .club_btn .row_box {
		height: auto;
	}
	#system_block .club_btn h4 {
		width: 100%;
	}
	#system_block .club_btn .link_btn {
		width: 260px;
		margin: 30px auto 0 !important;
	}

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

	/*#system_block h2{
		margin: 0 auto;
	}*/
	#system_block {
		padding:40px 0 0;
	}
	#system_block h2 img {
    	width: 70vw;
	}
	#system_block p {
		font-size:14px;
		text-align:left;
		    margin-bottom: 20px;
	}
	#system_block ul {
		margin: 0 calc(50% - 50vw);
		/*overflow-x: auto;
		white-space: nowrap;*/
		display:block;
	}
	#system_block ul li {
		width: 34%;
		display: inline-block;
	}
	#system_block .btn_box a {
		font-size: 12px;
		margin: 0 auto;
	}
	#system_block .more_linkbtn {
		margin-bottom: 2% !important;
	}
	#system_block .store_linkbtn {
		padding-left: 20px;
	}

	#system_block .club_btn:before {
		width: 100px;
		height: 100px;
		left: 20px;
	}
	#system_block .club_btn:before {
		width: 99px;
		height: 90px;
		top: 13%;
		left: 20px;
	}
	#system_block .club_btn h4 {
		font-size: 12px;
		text-align: right;
		margin-left:0;
	}
	#system_block .club_btn h4 span {
		font-size: 18px;
	}
	#system_block ul li .link_btn {
		width: 260px;
		margin-top: 30px !important;
	}
}
/*-----------------------------------

	benefits_block

-----------------------------------*/
#benefits_block {
	padding:50px 0;
	text-align:center;
}
#benefits_block h2{
	width:360px;
	max-width:100%;
	margin:0 auto;
}
#benefits_block h3{
	padding-bottom:30px;
	position:relative;
}
#benefits_block h3:before {
    content: "";
    position: absolute;
    top: 40px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    background: url(../images/h3_line.png) no-repeat;
    background-size: cover;
    height: 3px;
    z-index: -1;
}
#benefits_block h4{
	max-width: 100%;
	margin: 0 auto 20px;
}



/*section01*/
#benefits_block .section01 {
	margin-bottom:50px;
}
#benefits_block .section01 ul{
	margin:30px 0 auto;
}
#benefits_block .section01 ul li{
	width:20%;
}
/*section02*/
#benefits_block .section02 {
	margin-bottom:50px;
}
#benefits_block .section02 h4 img{
	width: 788px;
}
#benefits_block .section02 ul{
	margin:50px 0 auto;
}
#benefits_block .section02 ul li{
	width:352px;
}
#benefits_block .section02 ul li p{
	font-size:14px;
	text-align:right;
	margin-top:5px;
}
#benefits_block .section02 ul li:nth-child(3n){
	position:relative;
}
#benefits_block .section02 .exercise_img03_txt {
	position:absolute;
	right:0;
	top: -55px;
	width:133px;
}
#benefits_block .section02 .row_box .p_txt {
	color: #eb6ea5;
	text-decoration: underline;
	float:right;
}
/*section_gacha*/
#benefits_block .section_gacha{
	margin-bottom:20px;
}
#benefits_block .section_gacha .benefits_img_gacha{
	margin-bottom:20px;
}

/*section03*/
#benefits_block .section03 .rankup_box {
	width:996px;
	max-width:100%;
	margin:0 auto;
}
#benefits_block .section03 h4 img{
	width: 706px;
}
#benefits_block .section03 .rankup_ttl {
	width:444px;
	margin-top:30px;
}
#benefits_block .section03 .rankup_img {
	margin-top:30px;
}
#benefits_block .section03 .rankup_box p {
	font-size:14px;
	text-align:right;
	margin-top:10px;
}

/*section04*/
#benefits_block .section04 {
	margin-bottom:50px;
}
#benefits_block .section04 ul{
	margin:50px 0 auto;
}
#benefits_block .section04 ul li{
	width:49%;
}
#benefits_block .section04 ul li:first-child h4{
	width:310px;
}
#benefits_block .section04 ul li:last-child h4{
	width:280px;
}
#benefits_block .section04 ul li p{
	width:70%;
	margin:0 auto;
	text-align:left;
}
#benefits_block .section04 ul li p span{
	display:block;
	font-size:12px;
}
#benefits_block .section04 .link_btn {
    width: 260px;
    height: 42px;
    line-height: 42px;
    background: #fff;
	border: 1px solid black;
    color: #000;
    margin: 30px auto 0;
    border-radius: 3px;
	font-weight: 500;
}
@media screen and (max-width: 640px) {
	#benefits_block .section04 .link_btn {
		font-size: 14px;
	}
}
/*section05*/
#benefits_block .section05 {
	background:#eb6ea5;
	padding:0 40px;
	position:relative;
}
#benefits_block .section05:before {
	content: "";
    width: 40px;
    height: 70px;
    background: url(../images/icon_faq.svg) no-repeat;
    background-size: contain;
    position: absolute;
    left: 70px;
    top: 45px;
}
#benefits_block .section05 h4 {
    width: 186px;
    margin-left: 100px;
    margin-bottom: 0;
	line-height:1;
}
#benefits_block .section05 .row_box {
	align-items: center;
    height: 160px;
}
#benefits_block .section05 ul {
	align-items: center;
}
#benefits_block .section05 .link_btn {
    width: 260px;
    height: 42px;
    line-height: 42px;
    background: #fff;
    color: #000;
    border: none;
    margin:0;
	border-radius:3px;
}
.benefits_img05,
.benefits_img06,
.benefits_img_gacha {
	width:76px;
}
@media screen and (max-width: 1400px) {

	#benefits_block .section02 ul li {
		width: 32%;
	}

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

	#benefits_block .section02 ul li {
		width: 48%;
		margin-bottom:80px;
	}
	#benefits_block .section02 ul li:nth-child(3n) {
		margin-bottom:0;
	}

	/*section05*/
	#benefits_block .section05 {
		padding: 40px;
	}
	#benefits_block .section05 .row_box {
		display:block;
		margin-top: 90px;
		height: auto;
	}
	#benefits_block .section05:before {
		left: 0;
		right:0;
		margin:0 auto;
	}
	#benefits_block .section05 .link_btn {
		margin:0 auto;
	}
	#benefits_block .section05 h4 {
		margin-left: auto;
		margin-bottom: 20px;
	}

}

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

	#benefits_block {
    	padding: 40px 0;
	}
	#benefits_block h2 {
    	width: 60vw;
	}
	#benefits_block h3 {
		margin: 0 calc(50% - 50vw);
	}
	#benefits_block p {
		font-size:14px;
		text-align:left;
	}

	#benefits_block .section01 ul li {
		width: 48%;
		margin-bottom: 20px;
	}
	/*section01*/
	#benefits_block .section01 {
		margin-bottom:20px;
	}
	#benefits_block .section01 ul {
    	margin: 20px 0 auto;
	}
	#benefits_block .section01 ul li:last-child {
    	margin: 0 auto;
	}
	/*section02*/
	#benefits_block .section02 h4 img{
		width: 60vw;
	}
	#benefits_block .section02 ul {
		margin: 20px 5% auto;
	}
	#benefits_block .section02 ul li {
		width: 100%;
		margin-bottom:40px;
	}
	#benefits_block .section02 ul li:nth-child(3n) {
		margin-bottom:0;
	}
	#benefits_block .section02 ul li:nth-child(3n) img {
		display: block;
		text-align: center;
		margin: 0 auto;
	}
	#benefits_block .section02 .exercise_img03_txt {
		top: 0;
		width: 20vw;
	}
	#benefits_block .section02 .row_box .p_txt {
		float: none;
		padding-top: 10px;
		display: block;
	}
	/*section_gacha*/
	#benefits_block .section_gacha .benefits_img_gacha{
		margin-bottom:40px;
	}
	/*section03*/
	#benefits_block .section03 h4 img{
		width: 55vw;
	}
	/*section04*/
	#benefits_block .section04 {
		margin-bottom: 0;
	}
	#benefits_block .section04 ul li:first-child h4 {
		width: 55vw;
	}
	#benefits_block .section04 ul li:last-child h4 {
		width: 53vw;
	}
	#benefits_block .section04 ul li {
		width: 100%;
		margin-bottom:40px;
	}
	#benefits_block .section04 ul li p {
    	width: 100%;
	}
	/*section05*/
	#benefits_block .section05 {
		margin: 0 calc(50% - 50vw);
	}
	#benefits_block .section05 h4 {
    	width: 30vw;
	}
	#benefits_block .section05 .row_box {
		margin-top: 45px;
	}
	#benefits_block .section05:before {
		width: 22px;
		height: 40px;
		top: 30px;
	}

}

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

	flow_block

-----------------------------------*/
#flow_block {
	padding:0 0 70px 0;
	text-align:center;
}
#flow_block h2{
	width:360px;
	max-width:100%;
	margin:0 auto;
}
#flow_block ul{
	width:900px;
	max-width:100%;
	margin:20px auto 0;
}
#flow_block ul li{
	width:444px;
}

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

	/*#flow_block ul li{*/
	/*	width:49%;*/
	/*}*/
	#flow_block ul li{
		width:49.8%;
	}

}

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

	#flow_block {
		padding: 0 0 50px 0;
	}
	#flow_block h2 {
    	width: 55vw;
	}
	#flow_block ul li {
		width: 100%;
	}

}

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

	register_block

-----------------------------------*/
#register_block {
	background: #f8de00;
	padding:20px 0 0 0;
	text-align:center;
}
#register_block .row_box{
	align-items:center;
}
#register_block .img_box img{
	width:524px;
}
#register_block .link_btn {
    width: 430px;
    height: 60px;
    line-height: 60px;
    background: #eb6ea5;
    color: #fff;
    border: none;
    margin-top: 35px;
}
#register_block .link_btn:before {
    content: "";
    width: 24px;
    height: 24px;
    background: url(../images/icon_register.svg) no-repeat;
    background-size: contain;
    position: absolute;
    left: 30px;
    top: 20px;
}
#register_block .link_btn::after {
    content: "";
    position: absolute;
    top: 25px;
    right: 30px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(
45deg);
    transform: rotate(
45deg);
}

/*sns_box*/
.sns_box {
    background: #000;
}
.sns_box .contents_inner{
    width: 400px;
    max-width: 90%;
    margin: 0 auto;
    padding: 20px 0;
}
.sns_box .sns_ttl {
	width:125px;
}
.sns_box ul li {
	padding-right:20px;
}
.sns_box ul li:last-child {
	padding-right:0;
}
.sns_box ul li img {
	vertical-align:middle;
}
.sns_box .rowicon_box {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.sns_box .rowicon_box {
  margin-bottom: 0 !important;
}

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

	#register_block .img_box{
		width:48%;
	}
	#register_block .txt_box{
		width:50%;
	}

}

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

	#register_block .img_box{
		width:100%;
		margin-top:20px;
	}
	#register_block .txt_box{
		width:100%;
	}

}

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

	#register_block .row_box {
		flex-flow: column;
	}
	.sns_box .rowicon_box {
		margin-top:10px;
	}

}


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

	signup

-----------------------------------*/
#signup{
	width: 190px;
    position: fixed;
    right: 20px;
    bottom: 50px;
    z-index: 999;
}
@media screen and (max-width: 640px) {

	#signup{
		width:100%;
		right: 0;
		left:0;
		margin:0 auto;
		bottom: 0;
		z-index: 999;
	}
	.signup_btn {
		text-align: center;
		padding: 25px 0;
		background: #eb6ea5;
		color: #fff !important;
		display: block;
		position: relative;
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 0.3rem;
		line-height: 1;
		/*padding-left: 20px;*/
	}
	.signup_btn::after {
		content: "";
		position: absolute;
		top: 30px;
		right: 30px;
		width: 10px;
		height: 10px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		-webkit-transform: rotate(
	45deg);
		transform: rotate(
	45deg);
	}
	.signup_img {
		position: absolute;
		left: 20px;
		bottom: 5px;
	}
}
@media screen and (max-width: 430px) {

	.signup_btn {
		font-size: 16px;
	}

}
/*-----------------------------------

	footer

-----------------------------------*/
footer {
	position:relative;
	padding:50px 0;
	text-align:center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
}
footer h1 {
  margin: 0 !important;
}
footer .ft_nav{
	padding:40px 0 10px 0;
}
footer .ft_nav ul {
	margin:0 auto;
  -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
footer .ft_nav ul li {
   color: #666666;
    font-size: 12px;
	position:relative;
  line-height: 2;
}
footer .ft_nav ul li:not(:last-of-type) {
  margin-right: 22px;
  padding-right: 22px;
}
footer .ft_nav ul li:not(:last-of-type)::before {
    content: "";
    position: absolute;
    right: 0;
    top: 5px;
    width: 1px;
    height: 70%;
    background: #666666;
}
footer small {
	color:#666666;
	font-size: 10px;
}
footer .ft_nav ul li a,
footer .ft_nav ul li span {
  color: #231815 !important;
}

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

	footer {
		padding:50px 0 100px 0;
	}
  footer .ft_nav ul {
    -webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
  }
  footer .ft_nav ul li:not(:last-of-type) {
    margin-right: 0;
    padding-right:0;
    margin-bottom: 5px;
  }
  footer .ft_nav ul li:not(:last-of-type)::before {
      content: none;
  }

}


/* 干渉する部分をオーバーライドで対策 */
div.ccm-notification-help-launcher a {
  color: #fff !important;
}
#logout a {
  color: #337ab7;
  text-decoration: none;
}
#logout a:hover {
  color: #23527c;
  text-decoration: underline;
}
