@charset 'utf-8';

@media screen and (max-width: 480px) {

* {
	box-sizing: border-box;
}

html {
	width: 100%;
	height: auto;
}

body {
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	font-size: 85%;
}

.hidden-desktop {
	display: inherit !important;
}
.visible-desktop {
	display: none !important;
}
.visible-phone {
	display: inherit !important;
}
.hidden-phone {
	display: none !important;
}

.clear { overflow: hidden; }

.img_responsive {
	max-width: 100%;
	height: auto;
}

.header {
	position: relative;
	width: 100%;
	margin: 0 0 72px;
	padding: 0;
	background: #4D74B7;
	z-index: 9999;
	box-shadow: 0 2px #999;
}

.site_title {
	font-size: 0.6rem;
	color: #FFF;
	font-weight: bold;
	text-align: center;
	letter-spacing: -.06em;
}

.join_box {
	position: absolute;
	left: 0;
	bottom: -62px;
	overflow: hidden;
}

.join, .login {
	float: right;
	width: 125px;
	text-align: center;
	color: #FFF;
	font-size: 1em;
	font-weight: bold;
	text-shadow:
		1px 1px #666,
		1px -1px #666,
		-1px 1px #666,
		-1px -1px #666;
	line-height: 50px;
	border: solid 2px rgba(255, 255, 255, .8);
	letter-spacing: 0.06em;
}

.join {
	margin: 0 4px 0 0;
	background: linear-gradient(to bottom, rgba(255,214,94,1) 0%,rgba(254,191,4,1) 100%);
}

.login {
	background: linear-gradient(to bottom, rgba(122,188,255,1) 0%,rgba(96,171,248,1) 44%,rgba(64,150,238,1) 100%);
}

.join a, .login a {
	display: block;
	width: 100%;
	height: 50px;
	color: #FFF;
	text-decoration: none;
}

.join a:hover, .login a:hover {
	background: linear-gradient(to bottom, rgba(254,187,187,1) 0%,rgba(254,144,144,1) 45%,rgba(255,92,92,1) 100%);
}

.pickup {
	color: #F23365;
	font-size: 1.2rem;
	font-weight: bold;
}

/* ===== global_nav ===== */
.global_nav { display: none; }

#toggle dt{
	position: absolute;
	top: 25px;
	right: 5px;
	display:block;
	width: 50px;
	height: 50px;
	line-height:50px;
	text-align:center;
	border:#666 1px solid;
	cursor:pointer;
}
#toggle dt i { margin: 10px 0 0; }
#toggle dd{
	display: none;
	background: #f2f2f2;
	width: 98%;
	margin: 0 auto;
	line-height: 50px;
	text-align: center;
	border: solid 1px #666;
}
#toggle dd ul {
	padding: 6px;
}
#toggle dd ul li {
	text-align: left;
	border-bottom: solid 1px #999;
}
#toggle dd ul li:last-child { border: none; }
#toggle dd ul li a { display: block; }
#toggle dd ul li a i {
	display: inline-block;
	margin: 0 6px 0 0;
}

/* ===== contents ===== */
.container { width: 100%; }

.section_wrap {
	width: 100%;
	margin: 0 0 20px;
	overflow: hidden;
}

.section_header {
	width: 100%;
	height: 50px;
	margin: 0 0 10px;
	font-size: 1.2em;
	font-weight: bold;
	letter-spacing: 0.1em;
	box-shadow: 0 0 10px rgba(220, 220, 220, 1);
	line-height: 50px;
	text-indent: 6px;
	background: #4D74B7;
	color: #FFF;
}

.about {
	width: 100%;
	margin: 16px 0 0;
	text-align: center;
	overflow: hidden;
}

.about li {
	width: 98%;
	margin: 0 auto 2%;
	padding: 6px 0;
	letter-spacing: -0.06em;
	border: solid 2px #FEAD4F;
	border-radius: 20px;
	box-shadow: 0 0 6px #CCC;
}

.about_point {
	margin: 0;
	color: #000;
	font-size: 1.2em;
	font-weight: bold;
	letter-spacing: -0.06em;
}

.about li p {
	padding: 0 10px 0;
	text-align: left;
	letter-spacing: -.06em;
}

.about_fp_img, .about_fp_text {
	width: 100%;
}

.about_fp_text {
	padding: 5px;
	letter-spacing: -.06em;
}

.about_fp_get {
	font-size: 1.6em;
	font-weight: bold;
	color: #F23365;
	letter-spacing: -0.06em;
}

.about_fp_header {
	display: block;
	margin: 0 0 4px;
	padding: 0 0 2px;
	font-size: 1.2em;
	font-weight: bold;
	border-bottom: solid 2px #4D74B7;
	line-height: 1;
}
.info_txt{
	margin: 0 5px;
}
/* ===== point rank ===== */
#rank .rank_tb {
	width: 100%;
	margin: 0 0 20px;
	border-collapse: collapse;
	border: solid 1px #CCC;
}
#rank .rank_tb th, #rank .rank_tb td {
	padding: 10px 0;
	font-size: .8rem;
	border: solid 1px #CCC;
	text-align: center;
}
#rank .rank_tb th {
	width: 25%;
	font-weight: bold;
	letter-spacing: -.06em;
}
#rank .rank_tb .silver {
	background: #EFEFEF;
	font-weight: bold;
}
#rank .rank_tb .gold {
	background: rgba(255, 255, 0, .4);
	font-weight: bold;
}
#rank .rank_tb .black {
	background: rgba(0, 0, 0, .5);
	color: #FFF;
	font-weight: bold;
}
#rank .rank_tb .pickup {
	color: #F23365;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: -0.1em
}
#rank p {
	margin: 0 5px 20px;
}
/* ===== point use ===== */
.fp_use_description {
	margin: 0 5px 10px;
	line-height: 1.5;
}
.fp_use_description span {
	color: #F23365;
	font-size: 1rem;
	font-weight: bold;
}
.fp_use_pc {
	display: none;
}
.fp_use_sp {
	display: block;
}
.fp_use_pc img {
	margin: 0 0 10px;
}
.about_use {
	width:  auto;
	margin: 0 5px;
}
.about_use dt {
	margin: 0 0 10px;
	padding: 0 0 4px;
	font-size: 1rem;
	font-weight: bold;
	border-bottom: solid 2px #4D74B7;
}
.about_use dd {
	margin: 0 0 20px;
}
.about_use dd .check {
	color: #F23365;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: -.04em;
}
.fp_join_text {
	margin: 0 0 10px;
	text-indent: 10px;
}

.fp_join_step {
	width: 98%;
	margin: 0 auto 2%;
	padding: 6px 0;
	border: solid 1px #999;
	text-align: center;
}

.fp_join_step i { color: rgba(255, 96, 145, 1); }

.fp_join_step_arrow {
	display: none;
}

.fp_join_step h3 {
	font-size: 1.8em;
	font-weight: bold;
}

.fp_join_button {
	width: 100%;
	text-align: center;
}

.fp_join_button button {
	width: 98%;
	margin: 0 auto;
	height: 50px;
	font-size: 1.2em;
	font-weight: bold;
	color: #FFF;
	text-shadow: 1px 1px #000;
	background: linear-gradient(to bottom, rgba(255,168,76,1) 0%,rgba(255,123,13,1) 100%);
}

/* ===== faq ===== */
.faq_title {
	width: 100%;
	margin: 16px 0 10px;
	padding: 0 0 2px 6px;
	font-size: 1.2em;
	font-weight: bold;
	border-left: solid 6px #FEAD4F;
	border-bottom: solid 2px #FEAD4F;
	line-height: 1;
}

.faq_ac_menu {
	width: 98%;
	margin: 0 auto;
}

label {
	width: 100%;
	color: #000;
	padding: 10px;
	display: block;
	margin: 0 0 10px;
	border: solid 1px #999;
}

.faq_menu label span {
	display: inline-block;
	float: right;
}

input[type="checkbox"].on-off {
	display: none;
	clear: both;
}

.faq_menu ul {
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	margin: 0;
	padding: 0;
	list-style: none;
}

.faq_menu li {
	padding: 5px;
}

input[type="checkbox"].on-off + ul {
	height: 0;
	overflow: hidden;
}

input[type="checkbox"].on-off:checked + ul {
	height: 270px;
}

/* ===== page top ===== */
.page_top_btn {
	position: fixed;
	right: 2px;
	bottom: 24px;
	width: 50px;
	height: 40px;
	background: #4D74B7;
	border-radius: 50px;
	line-height: 40px;
}

.page_top_btn a {
	display: block;
	color: #FFF;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}

/* ===== contact ===== */
.contact_box {
	float: none;
	width: 100%;
	margin: 0 1%;
}

.contact_box table {
	width: 100%;
}

.contact_box table th {
	padding: 5px 0;
    font-size: 20px;
}

.required {
	font-size: 0.8em;
	font-weight: bold;
	color: #F00;
}
.contact_box table td div {
	text-align: center;
	overflow: hidden;
}
.contact_box table td div label {
	display: block;
	float: left;
	width: 49% !important;
	margin: 0 1% 0 0;
}
.contact_box table td div label input[type="radio"] {
	display: inline-block;
	margin: 0 2% 0 0;
}
.contact_box input[type="text"], .contact_box input[type="email"] {
		width: 98%;
		height: 33px;
		font-size: 22px;
		border: solid 1px #999;
}

.contact_box select {
    width: 98%;
    height: 33px;
    font-size: 22px;
    border: solid 1px #999;
}

.contact_box textarea {
    width: 98%;
    height: 100px;
    resize: none;
    font-size: 20px;
    border: solid 1px #999;
}

.contact_box input[type="text"]:focus, .contact_box input[type="email"]:focus,
.contact_box select:focus, .contact_box textarea:focus {
	background: #FFFBB1;
}

.contact_box button[type="button"],
.contact_box td input[type="submit"] {
	width: 60%;
    height: 40px;
    margin: 0px 10% 1px 18%;
    background: #FEC20E;
}

.contact_box button[type="reset"] {
	width: 28%;
	height: 30px;
	border: solid 1px #999;
}

.contact_box .join_text {
	color: #F00;
	font-weight: bold;
}

/* ===== footer ===== */

.footer {
	width: 100%;
	padding: 14px 0;
	text-align: center;
	background: #4D74B7;
}

.footer a {
	color: #FFF;
}


.fu_news{
	border: 2px solid #ff0000;
	padding: 10px;
}
.fu_news h4{
	color: #ff0000;
	font-size: 1.2rem;
	font-weight: bold;
	margin-bottom: 10px;
}
.fu_news .bold{
  font-weight: bold;
}


}/* end media query */
