@charset "UTF-8";

@font-face {
  font-family: "impactreg";
	src: url('./font/impactreg.eot') format('eot'),
		 url("./font/impactreg.woff") format("woff");	
}

html {
  height: 100%;
}
body{
	height: 100%;
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size: 14px;
	vertical-align:baseline;
	font-weight: normal;
	font-family: "メイリオ",  Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "Hiragino kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, sans-serif;
	overflow-x: hidden;
	color: #000;
	background-attachment: fixed;
    background-size: cover;
	-webkit-text-size-adjust: none;
	overflow-wrap: break-word;
	word-wrap: break-word;
	background-image: url("IMG/body-bg.jpg");
}

::selection {
    background: #ff0;
    color: #000;
}

h1,h2,h3,p{
	margin: 0px;
	padding: 0px;
}

ul{
	list-style-type: none;
}

ul{
list-style:none;
}

img {
	border: none;
	vertical-align: bottom;
 }

a:link { 
	color: #000;
	text-decoration: none;
} 

a:active { 
	color: #0f0
 } 

a:hover { 
	color: #f00;
	text-decoration: none;
 }

a:hover img {
	opacity: 0.5;
	transition: 0.5s;
}

a.link-yelllow  { 
	color: #ff0;
	text-decoration: underline;
} 

a.link-yelllow:hover { 
	color: #f00;
} 

.red {
	color: #f00!important;
}

.green {
	color: #0f0!important;
}

.white {
	color: #fff!important;
}

.bold {
	font-weight: bold;
}

.error {
	text-align: center;
	font-weight: bold;
	margin: 20px auto;
}

/*next*/
ul.next {
	list-style-type: none;
	padding-left: 0;
	text-align: center;
	margin: 30px auto;
	clear: both;
}

.next li {
	margin: 10px;
	display: inline-block;
}

.next-btn {
	text-align: center;
}

/*wrapper*/
.wrapper {
	display: block;
	width: 100%;
}
.wrapper-box {
	display: block;
	padding: 0;
	width: 100%;
}
.wrapper-left {
	position: relative;
	z-index: 1;
}
.wrapper-right {
	position: relative;
	z-index: 2;	

/*	animation: body-bg 20s infinite linear;*/
}
/*
@keyframes body-bg {
	0% {
	background-position: 0 0;
	}
	100% {
	background-position: 360px -360px;
	}
}
*/
.wrapper-left-inner {
	height: 100vh;
	position: static;
	width: 100%;
}
.wrapper-right-inner {
	height: auto;
	padding-top: 20px;
}

/*wrapper-left*/

.wrapper-left-bg {
	overflow: hidden;
	z-index: 1;
}
.wrapper-left-bg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.wrapper-left-box {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}
.horse {
	position: absolute;
	top: -2vh;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 2;
}
.horse img {
	width: 90vw;
	max-width: 450px;
}
.logo {
	position: absolute;
	top: 12vh;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
}
.logo img {
	width: 85vw;
	max-width: 400px;
}
.top-week {
	position: absolute;
	top: 48vh;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
	text-align: center;
}
.top-week-title img{
	width: 65vw;
	max-width: 350px;
}
.top-week-day {
	font-size: 18px;
	font-weight: bold;
	text-shadow: 
	1px 1px 1px #fff,
	-1px -1px 1px #fff,
	-1px 1px 1px #fff,
	1px -1px 1px #fff;	
}
.top-week-race {
	font-size: 22px;
	font-weight: bold;
	line-height: 130%;
	text-shadow: 
	1px 1px 1px #fff,
	-1px -1px 1px #fff,
	-1px 1px 1px #fff,
	1px -1px 1px #fff;	
}
.top-week-text-01 {
	font-size: 18px;
	font-weight: bold;
	color: #ff0;
	text-shadow: 
	1px 1px 1px #000,
	-1px -1px 1px #000,
	-1px 1px 1px #000,
	1px -1px 1px #000;
	line-height: 130%;	
	padding-top: 5px;
}
.top-week-text-02 {
	font-size: 25px;
	font-weight: bold;
	color: #f00;
	text-shadow: 
	1px 1px 1px #fff,
	-1px -1px 1px #fff,
	-1px 1px 1px #fff,
	1px -1px 1px #fff;
	line-height: 130%;
}
.form-input {
	display: none;
	position: absolute;
	top: 70vh;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	z-index: 3;	
}
.day60 {
	position: absolute;
	top: 70vh;
	left: 2vw;
	z-index: 4;	
}
.day60 img {
	width: 18vw;
	max-width: 154px;
}
@media screen and (min-width: 1440px) {
	.day60 {
		position: absolute;
		top: 75vh;
		left: 4vw;
		z-index: 4;	
	}
}

@media screen and (min-width: 1780px) {
	.day60 {
		position: absolute;
		top: 75vh;
		left: 6vw;
		z-index: 4;	
	}
}

.form-input input {
	width: 480px;
	height: 36px;
	text-align: center;
	font-size: 18px;
	border: 1px solid #939393;
	padding: 10px;
	border-radius: 5px;
}

.entry-btn {
	position: absolute;
	top: 72vh;	
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
}
.entry-btn input[type='image'] {
	width: 85vw;
	max-width: 300px;
}
.kaime-open {
	position: absolute;
	top: 80vh;	
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
}

.kaime-open img {
	width: 80vw;
	max-width: 400px;
}
.entry-domain {
	position: absolute;
	top: 86vh;	
	left: 0;
	right: 0;	
	margin: 0 auto;
	text-align: center;	
	z-index: 3;	
	font-size: 13px;
	color: #fff;
	text-shadow: 
	1px 1px 1px #000,
	-1px -1px 1px #000,
	-1px 1px 1px #000,
	1px -1px 1px #000;
	line-height: 130%;
}
/*wrapper-right*/
.header {
	text-align: right;
	margin-top: 20px;
	margin-bottom: 20px;	
	margin-right: 30px;
}


/*　hamburger　*/
.hamburger {
	display : block;
	position: absolute;
	z-index : 3;
	right : 20px;
	top   : 20px;
	width : 50px;
	height: 50px;
	cursor: pointer;
	text-align: center;
	background: #fc0;
	border-radius: 90px;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 24px;
  height  : 4px ;
  left    : 13px;
  background : #333;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 14px;
}
.hamburger span:nth-child(2) {
  top: 23px;
}
.hamburger span:nth-child(3) {
  top: 32px;
}

/*
.hamburger_menu {
	width   : 40px;
	height  : 4px ;
	font-size: 12px;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 6px;
	margin: 0 auto;
	color: #fff;
}
*/
/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 23px;
  left: 13px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 23px;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalmenu {
  position: fixed;
  z-index : 2;
  top  : 0;
  right : 0;
  color: #fff;
  text-align: center;
  transform: translateX(100%);
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  transition: all 0.6s;
  -webkit-transition: all 0.6s;
  -moz-transition: all 0.6s;
}

nav.globalmenu.active {
  transform: translateX(0%);
}

.globa_side {
	background: #1b9100;
 	width: 100vw;
	height: 100vh;
	color: #fff;
}

.side_in {
	padding-top: 90px;
 	text-align: center;
}

ul.side_menu {
	width: 100%;
	list-style-type: none;
	padding-left: 0;
	margin: 0 auto;
}

.side_menu li {
	width: 100%;
	height: 46px;
	line-height: 46px;
	margin: 0 auto;
	display: block;
	font-size: 14px;
	text-align: left;
	padding-left: 50px;
	position: relative;
}

.side_menu li a{
    display: block;
    height: 100%;
    width: 100%;
	color: #fff;
}

.side_menu li:before {
	content: "\f105";
	color: #fff;
	font-size: 14px;
	font-family:"Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	top: 0px;
	left: 30px;
}

.side_menu li img {
	width: 30px;
	display: inline;
	vertical-align: text-bottom;
	margin-right: 5px;
}

.header_top {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100px;
	margin: 0 auto;
	padding: 0;
	z-index: 99;
}

.user-id {
	color: #000;
	display: inline;
}
.user-pw {
	color: #000;
	display: inline;
	margin-left: 6px;	
}

.user-input {
	width: 120px;
	height: 20px;
	padding: 3px;
	margin: 0;
	color: #000;
	font-size: 14px;
	text-align: left;
	border: 1px solid #ccc;
	background: #fff;
}

.user-id input,
.user-pw input
{
	margin-left: 6px;
}
.user-btn {
	display: inline;
	margin-left: 6px;	
	vertical-align: top;
}
.user-btn input[type='image']{
	width: 122px;
}

.user-forget {
	margin-top: 10px;
}
.bar {
	margin: 0 auto 10px;
	text-align: center;
}
.bar img {
	width: 90vw;
	max-width: 500px;
}
ul.benefits {
	list-style-type: none;
	padding: 0;
	text-align: center;
}

ul.benefits li {
	padding: 0;
	margin: 0 3px;
	display: inline-block;
}

ul.benefits img {
	width: 45vw;
	max-width: 300px;
}

/*this-week*/
.this-week {
	background: url("IMG/this-week.png");
	background-size: cover;
	width: 100vw;
	margin: 20px auto;
	text-align: center;	
	padding-bottom: 10px;
}
.this-week-title {
	padding-top: 10px;
}
.this-week-title img {
	width: 75vw;
	max-width: 350px;
}
.this-week-day {
	font-size: 18px;
	color: #fff;	
}
.this-week-race {
	font-size: 25px;
	color: #fff;
}
.this-week-btn {
	padding-top: 10px;
}
.this-week-btn img {
	width: 85vw;
	max-width: 300px;
}
.this-week-text-01 {
	font-size: 16px;
	color: #f00;
	padding-top: 10px;	
	font-weight: bold;
	line-height: 130%;	
}
.this-week-text-02 {
	font-size: 18px;
	color: #ff0;
	font-weight: bold;
	line-height: 130%;
	padding-top: 10px;		
}

/*site*/
.site {
	margin: 20px auto;
}

.site-box-01 {
	background: -webkit-linear-gradient(0deg, #000, #111, #000);
	background: -o-linear-gradient(0deg, #000, #111, #000);
	background: linear-gradient(0deg, #000, #111, #000);
	margin-top: 60px;
	padding-bottom: 20px;
}

.site-box-02,
.site-box-03,
.site-box-04
{
	background: -webkit-linear-gradient(0deg, #000, #111, #000);
	background: -o-linear-gradient(0deg, #000, #111, #000);
	background: linear-gradient(0deg, #000, #111, #000);
	margin-top: 60px;
	padding-bottom: 20px;
}

.site-photo {
	position: relative;
	top: -50px;
	text-align: center;
}
.site-photo img {
	width: 70vw;
	max-width: 300px;
}
.site-sub {
	position: relative;
	top: -30px;	
	font-size: 20px;
	color: #ff0;
	font-weight: bold;
	text-align: center;
}
.site-text {
	width: 90%;
	margin: -20px auto 0;
	font-size: 14px;
	color: #fff;
	text-align: left;
	padding: 0;
	line-height: 180%;
}
.site-btn {
	text-align: right;
	margin-top: 10px;
	margin-right: 20px;
	cursor: pointer;
}
.site-bold-white {
	font-size: 20px;
	color: #fff;
	font-weight: bold;
}
.site-bold-green {
	font-size: 26px;
	color: #0f0;
	font-weight: bold;
	text-align: center;	
}
.site-bold-red {
	font-size: 20px;
	color: #f00;
	font-weight: bold;
	text-decoration: underline;
	text-align: center;	
}
.site-bn {
	margin: 10px 0;
	text-align: center;
}
.site-bn img {
	width: 300px;
}
.site-entry {
	text-align: center;
	margin-top: 50px;
}
.site-entry img {
	width: 90vw;
}
.site-form {
	background: url("IMG/mid-form.png");
	background-size: cover;
	width: 100vw;
	height: 340px;
	margin: 20px auto 60px;
	position: relative;
}

/*mid-form*/
.mid-form {
	background: url("IMG/mid-form.png");
	background-size: cover;
	width: 100vw;
	height: 280px;
	margin: 20px auto 10px;
	position: relative;
}
.mid-logo {
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	z-index: 3;
}
.mid-logo img {
	width: 80vw;
	max-width: 400px;
}
.mid-form-input {
	position: absolute;
	top: 200px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	z-index: 3;	
	display: none;
}
.mid-day60 {
	position: absolute;
	top: 140px;
	left: 2vw;
	z-index: 4;	
}
.mid-day60 img {
	width: 18vw;
	max-width: 154px;
}
.mid-form-input input {
	width: 480px;
	height: 36px;
	text-align: center;
	font-size: 18px;
	border: 1px solid #939393;
	padding: 10px;
	border-radius: 5px;
}

.mid-entry-btn {
	position: absolute;
	top: 160px;	
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;	
	z-index: 3;
}

.mid-kaime-open {
	position: absolute;
	top: 220px;	
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;	
	z-index: 3;
}
.mid-kaime-open img {
	width: 80vw;
	max-width: 400px;
}

/*free-btn*/
.free-btn {
	text-align: center;
	cursor: pointer;
}
.free-btn img {
	width: 85vw;
	max-width: 400px;
}
.free-btn-kaime-open {
	text-align: center;
	margin: 20px auto 10px;
}
.free-btn-kaime-open img {
	width: 80vw;
	max-width: 400px;
}
.free-btn-text {
	text-align: center;
	font-size: 14px;
	color: #000;
	margin: 0 auto 20px;	
}

/*hit*/
.hit {
	margin: 20px auto;
}

.race {
	width: 300px;
	height: 360px;
	background: #f8f5e7;
	border: 2px solid #000;
	border-radius: 10px;
}
.race-detail { 
	background: #000;
	color: #fff;
	text-align: center;
}
.race-icon{
	position: relative;
	top: 15px;
	width: 80px;
	text-align: center;
	margin: 0 auto;
}
.race-icon img{
	width: 80px;
}
.race-camp {
	font-size: 16px;
	color: #00ff12;
	padding: 8px 0;
}
.race-name {
	background: -webkit-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: -o-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	font-size: 14px;
	width: 300px;
	padding-top: 5px;
	margin: 0 auto;

}
.race-money {
	background: -webkit-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: -o-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	font-size: 30px;
	color: #ff0;
	font-family: impactreg;
	width: 300px;
	padding-bottom: 5px;
	margin: 0 auto;	
	line-height: 100%;	
}
.race-day {
	padding-top: 10px;	
	font-size: 14px;
}
.race-kinds {
	padding-bottom: 25px;	
	font-size: 14px;
}
.race-kaime {
	width: 200px;
	height: 30px;
	background: linear-gradient(90deg, #ff7800, #ffae00);
	color: #fff;
	text-align: center;
	line-height: 30px;
	margin: -18px auto 0;
	font-size: 14px;
	border-radius: 18px;
}
.race-kaime-detail {
	font-size: 14px;
	margin: 0 auto 50px;	
	padding: 15px;
	text-align: center;	
}

.race-kaime-detail p {
    display: inline-block;
    text-align: left;
	line-height: 160%;
}

/*slider*/
.slider { 
    margin: -20px auto;
	width: 100vw;
	height: 100%;	
	text-align: center;	
	padding: 0;
}

.slider li {
	width: 300px;
	height: 100%;
	text-align: center;
	display: inline-block;
	margin: 20px;	
}

.slick-dots li button:before{
	font-size: 14px!important;
	text-align: center;
}

.slick-dots li{
	width: 20px!important;
}
.slick-dots{
	bottom: -20px!important;
}

/*user*/
.user {
	margin: 20px auto;
}
.user-box {
	width: 300px;
	height: 400px;
	background: #fff;
	box-shadow: 0px 5px 5px #aaa;
	border-radius: 10px;
}
.user-top {
	width: 300px;
	height: 56px;
	background: #000;
	color: #fff;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	position: relative;
}
.user-top:before {
	content: "CUSTOMER'S VOICE";
	color: #2e2e2e;
	font-size: 25px;
	font-family: impactreg;
	position: absolute;
	top: 14px;
	right: 20px;
}
.user-icon{
	position: absolute;
	top: -10px;
	left: 14px;	
}
.user-icon img{
	width: 60px;
}
.user-day {
	position: absolute;
	top: 8px;
	left: 90px;	
	font-size: 12px;
	text-align: left;
}
.user-name {
	position: absolute;
	top: 26px;
	left: 90px;		
	font-size: 14px;
	text-align: left;
}
.user-rank {
	background: #fc0;
	color: #000;
	font-size: 12px;
	padding: 1px 10px;
	margin-left: 5px;
	border-radius: 20px;
}
.user-text{
	font-size: 14px;
	padding: 15px 30px;
	text-align: left
}

/*kansha*/
.kansha-box {
	width: 90%;
	background: #fff;
	box-shadow: 0px 5px 5px #aaa;
	border-radius: 10px;
	margin: 30px auto;
}
.kansha-top {
	width: 100%;
	height: 56px;
	background: #000;
	color: #fff;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	position: relative;
}
.kansha-top:before {
	content: "CUSTOMER'S VOICE";
	color: #2e2e2e;
	font-size: 25px;
	font-family: impactreg;
	position: absolute;
	top: 14px;
	right: 20px;
}

/*slider-user*/
.slider-user { 
    margin: 0 auto 100px;
	width: 100vw;
	height: 100%;	
	text-align: center;	
	padding: 0;
}

.slider-user li {
	width: 300px;
	height: 100%;	
	text-align: center;
	display: inline-block;
	margin: 0 20px;	
	padding: 20px 0;
}

/*content*/
.content {
	margin: 20px auto;
}
.content-box {
	width: 300px;
	background: -webkit-linear-gradient(90deg, #b79671, #fff3dc, #b79671);
	background: -o-linear-gradient(90deg, #b79671, #fff3dc, #b79671);
	background: linear-gradient(90deg, #b79671, #fff3dc, #b79671);
/*	box-shadow: 0px 5px 5px #aaa;*/
	border-radius: 10px;
	border: 2px solid #000;

}
.content-bn{
	width: 250px;
	text-align: center;
	margin: 20px auto 10px;
}
.content-bn img{
	width: 250px;
}
.content-day {
	color: #bc0000;
	font-size: 20px;
	margin: 15px auto 10px;
	width: 280px;
	line-height: 120%;
	font-weight: bold;
}
.content-text {
	width: 250px;
	margin: 10px auto 15px;
	font-size: 14px;
	text-align: left;
}
.content-line {
	height: 1px;
	border: none;
	border-top: 1px #000000 solid;
	width: 250px;
	margin: 0 auto;	
}

/*slider-content*/
.slider-content { 
    margin: 0 auto 100px;
	width: 100vw;
	height: 100%;	
	text-align: center;	
	padding: 0;
}

.slider-content li {
	width: 300px;
	height: 100%;	
	text-align: center;
	display: inline-block;
	margin: 0 20px;	
	padding: 0px 0 20px;
}


/*bot-entry*/
.bot-entry {
	margin: 50px auto 20px;
	height: 260px;
	background: -webkit-linear-gradient(0deg, #000, #111, #000);
	background: -o-linear-gradient(0deg, #000, #111, #000);
	background: linear-gradient(0deg, #000, #111, #000);
	position: relative;
}
.bot-entry-text {
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	z-index: 3;
}
.bot-entry-text img{
	width: 95vw;
	max-width: 500px;
}
.bot-entry-img {
	position: absolute;
	top: -34px;
	right: 3vw;
	z-index: 2;
}
.bot-entry-img img{
	width: 200px;
}
.bot-entry-btn {
	position: absolute;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	z-index: 3;
	cursor: pointer;
}
.bot-entry-btn img{
	width: 85vw;
	max-width: 300px;
}

/*free*/
.free {
	margin: 20px auto;
}
.free-form {
	width: 100vw;
	height: auto;
	background: #000;
	margin: 20px auto;
	padding-bottom: 10px;
}
.free-form-bg {
	margin: 0 auto;
	text-align: center;
	background-image: url("IMG/free-form-bg.png");
	background-repeat: no-repeat;
	background-position: top center;	
}

.free-day {
	padding-top: 20px;
	margin: 0 auto;
	text-align: center;	
	font-size: 18px;
	color: #fff;
}
.free-race {
	margin: 0 auto;
	text-align: center;	
	font-size: 25px;
	color: #fff;
	z-index: 5;	
}
.free-text-01 {
	margin: 0 auto;
	text-align: center;	
	font-size: 18px;
	color: #f00;
	padding-top: 10px;	
	font-weight: bold;
}
.free-text-02 {
	padding-top: 10px;	
	margin: 0 auto;
	text-align: center;		
	font-size: 18px;
	color: #ff0;
	font-weight: bold;
	z-index: 5;	
}
.free-text-03 {
	padding-top: 10px;
	margin: 0 auto;
	text-align: center;		
	font-size: 16px;
	color: #24ff00;
	font-weight: bold;
}
.free-text-04 {
	padding-top: 10px;
	margin: 0 auto;
	text-align: center;		
	font-size: 18px;
	color: #fff;
	font-weight: bold;
}
.free-form-input {
	margin: 0 auto;
	text-align: center;
	display: none;
}
.free-day60 {
	position: absolute;
	top: 0;
}
.free-day60 img {
	width: 18vw;
	max-width: 154px;
}
.free-form-input input {
	width: 480px;
	height: 36px;
	text-align: center;
	font-size: 18px;
	border: 1px solid #939393;
	padding: 10px;
	border-radius: 5px;
}

.free-entry-btn {
	padding-top: 10px;
	margin: 0 auto;
	text-align: center;	
	position: relative;
}

.free-kaime-open {
	padding-top: 10px;	
	margin: 0 auto;
	text-align: center;	
}
.free-kaime-open img {
	width: 80vw;
	max-width: 400px;
}

.free-domain {
	padding-top: 10px;
	padding-bottom: 10px;	
	margin: 0 auto;
	text-align: center;	
	font-size: 14px;
	color: #fff;
}
.free-sns {
	padding: 0;
	margin: 0 auto 20px;
	text-align: center;	
	list-style-type: none;
}

.free-sns li {
	width: 130px;
	text-align: center;
	display: inline-block;
	margin: 0 10px;	
	padding: 0;
}

.free-sns li img {
	width: 130px;
}

/*page-box*/
.page-box {
	width: 74%;
	margin: 30px auto 80px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 5px 5px #aaa;
	padding: 30px;
	font-size: 14px;
	line-height: 180%;
}

.page-box h2 {
	text-align: center;
	margin: 20px auto;
	font-size: 20px;
	color: #060;
}

.page-wide {
	width: 96%;
	margin: 0 auto 30px;
	padding: 0;
	font-size: 14px;
}

/*faq*/
.page-box-faq {
	width: 74%;
	margin: 30px auto 80px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 5px 5px #aaa;
	padding: 30px;
	font-size: 14px;
	line-height: 180%;
}

.faq {
	width: 90%;
	background: #fff;
	box-shadow: 0px 5px 5px #aaa;
	border-radius: 10px;
	margin: 30px auto;
}
.faq-question {
	width: 100%;
	background: #060;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	position: relative;
}

.faq-question:before {
	content: "QUESTION";
	color: #080;
	font-size: 25px;
	font-family: impactreg;
	position: absolute;
	top: 12px;
	right: 20px;
	z-index: 1;
}

.faq-question p {
	color: #fff;
	font-size: 14px;
	padding: 15px 30px;
	z-index: 2;	
	position: relative;
}

.faq-answer {
	font-size: 14px;
	padding: 15px 30px;
	text-align: left
}


/*footer*/
footer {
	background: -webkit-linear-gradient(0deg, #000, #111, #000);
	background: -o-linear-gradient(0deg, #000, #111, #000);
	background: linear-gradient(0deg, #000, #111, #000);
	text-align: center;
	padding: 30px 0;
}

.footer-logo img{
	width: 250px;
}

.footer-menu {
	margin: 40px auto;
	text-align: center;	
	list-style-type: none;
	padding: 0;	
	display: none;
}

.footer-menu li {
	width: 300px;
	height: 58px;
	text-align: center;
	display: inline-block;
	margin: 10px;	
	padding: 0;
	cursor: pointer;
}

.copy {
	color: #fff;
	font-size: 14px;
	padding-top: 30px;
}

/*tekichu*/
.tekichu { 
    margin: 0 auto;
	width: 100%;
	text-align: center;	
	padding: 0;
}

.tekichu li {
	width: 300px;
	height: 160px;
	text-align: center;
	display: inline-block;
	margin: 0 0 50px;	
}

.tekichu-race {
	width: 300px;
	height: 160px;
	background: #000;
	border: 2px solid #000;
	border-radius: 10px;
}
.tekichu-race-detail { 
	color: #fff;
	text-align: center;
}
.tekichu-race-icon{
	position: relative;
	top: 15px;
	width: 125px;
	text-align: center;
	margin: 0 auto;
}
.tekichu-race-icon img{
	width: 80px;
}
.tekichu-race-camp {
	font-size: 16px;
	color: #00ff12;
	padding: 8px 0;
}
.tekichu-race-name {
	background: -webkit-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: -o-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	font-size: 14px;
	width: 300px;
	padding-top: 5px;
	margin: 0 auto;

}
.tekichu-race-money {
	background: -webkit-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: -o-linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	background: linear-gradient(90deg, #a90d0d, #f00, #a90d0d);
	font-size: 30px;
	color: #ff0;
	font-family: impactreg;
	width: 300px;
	padding-bottom: 5px;
	margin: 0 auto;	
	line-height: 100%;	
}
.tekichu-race-day {
	padding-top: 10px;	
	font-size: 14px;
}
.tekichu-race-kinds {
	font-size: 14px;
	line-height: 100%;	
}

/*login*/
.login-id {
	text-align: center;
}
.login-pw {
	text-align: center;
	margin-top: 6px;	
}
.login-form{
	text-align: center;
}
.login-btn {
	text-align: center;
	margin-top: 10px;
}
.login-text {
	text-align: center;
	text-decoration: underline;
}
.login-input {
	width: 200px;
	height: 20px;
	padding: 3px;
	margin: 0;
	color: #000;
	font-size: 14px;
	text-align: left;
	border: 1px solid #ccc;
	background: #fff;
}

/*info*/
.info-title {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.info-form {
	text-align: center;
	margin-bottom: 15px;
}
.info-mail {
	width: 90%;
	padding: 5px;
	font-size: 14px;
}
.info-name {
	width: 90%;
	padding: 5px;
	font-size: 14px;
}
.index_info_01 {
    padding-left: 62px;
}
.info-textarea {
	width: 90%;
	height: 300px;
	padding: 5px;
	font-size: 14px;
}
.info-bt {
	text-align: center;
}
.info-check {
	text-align: left;
	margin-bottom: 15px;
}

/*member*/
.member-btn {
	text-align: center;
}
.info p {
	line-height: 150%;
	margin-bottom: 10px;
}
/*touroku*/
.touroku {
	width: 100%;
	height: 100%;
	z-index: 900;
	background-image: url("IMG/body-bg.jpg");
/*	animation: body-bg 20s infinite linear;*/
	position: relative;
}
.touroku-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform:translate(-50%,-50%);
	width: 90vw;
	padding: 0;
}
.touroku-title {
	text-align: center;
}
.touroku-title img {
	width: 90vw;
	max-width: 500px;
}
.touroku-sub {
	text-align: center;
	font-weight: bold;
	color: #f00;
	font-size: 20px;
	margin: 10px auto;
	text-decoration: underline;
}
.touroku-text {
	text-align: left;	
	font-weight: bold;
	font-size: 14px;
}
.touroku-btn {
	text-align: center;
	margin: 20px auto;
}
.touroku-btn img {
	width: 80vw;
}
.touroku-logo {
	text-align: center;
}
.touroku-logo img {
	width: 80vw;
}

/* modal */
.modal {
	display: none;
	position: fixed;
	z-index: 900; 
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modalBg {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.9);
	z-index: 999; 	
}

.modalWrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform:translate(-50%,-50%);
	width: 100vw;
	padding: 0;
}

.modalcontents {
	position: relative;
	width: 90vw;
	margin: 0 auto;
}

.modal-entry-text-01 {
	margin: 0 auto;
	text-align: center;		
	font-size: 16px;
	color: #24ff00;
	font-weight: bold;
	z-index: 5;	
	/* display: none; */
}
.modal-entry-text-02 {
	margin: 10px auto;
	text-align: center;		
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	z-index: 5;	
}
.modal-entry-form-input {
	margin: 0 auto;
	text-align: center;
	z-index: 3;	
	position: relative;
}
.modal-entry-day60 {
	z-index: 4;	
	position: absolute;
	top: 200px;
	left: 0;
}
.modal-entry-day60 img {
	width: 18vw;
	max-width: 154px;
}
.modal-entry-form-input input {
	width: 480px;
	height: 36px;
	text-align: center;
	font-size: 18px;
	border: 1px solid #939393;
	padding: 10px;
	border-radius: 5px;
	display: none;
}

.modal-entry-entry-btn {
	margin: 15px auto;
	text-align: center;	
	z-index: 3;
}

.modal-entry-kaime-open {
	margin: 0 auto;
	text-align: center;	
	z-index: 3;
}

.modal-entry-kaime-open img {
	width: 80vw;
	max-width: 400px;
}
.modal-entry-domain {
	margin: 15px auto;
	text-align: left;	
	z-index: 3;	
	font-size: 14px;
	color: #fff;
	/* display: none; */
}
.modal-entry-sns {
	margin: 0 auto;
	text-align: center;	
	list-style-type: none;
	padding: 0;	
	z-index: 3;	
}

.modal-entry-sns li {
	width: 130px;
	text-align: center;
	display: inline-block;
	margin: 0 10px;	
	padding: 0;
}

.modal-entry-sns li img {
	width: 130px;
}

.closemodal {
	position: relative;
	bottom: 0;
	right: 0;
	left: 0;
	margin: 20px auto 0;
	cursor: pointer;
	color: #fff;
	text-align: center;
	padding: 6px;
	width: 100px;
	display: block;
	border: 1px solid #fff;
	font-size: 14px;
}

.closemodal:hover {
	color: #ff0;
	border: 1px solid #ff0;	
}

/* page_top */
#page-top{
	font-size: 30px;
	padding-top: 10px;
}
#page-top a{
	color: #fff;
}
#page-top span{
	display: block;
	font-size: 14px;
	line-height: 14px;
}

/* loader */
#loader-bg {
	height: 100%;
	left: 0px;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 900;
	background-image: url("IMG/body-bg.jpg");
	animation: body-bg 20s infinite linear;
}

.loader-img  {
	left: 50%;
	position: fixed;
	top: 45%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 100;
	text-align: center;
}

.loader-logo img {
	width: 80vw;
	max-width: 300px;
}

.loader-logo {
	animation: loader-logo 1.0s both 0.4s;	
}

@keyframes loader-logo {
  0% { 
	  transform: translate(0,50px);
	  opacity: 0;
	}
  100% { 
	  transform: translate(0,0);
	  opacity: 1;
	}
}


/*animation*/
.page-box-animation {
	animation: page-box-animation 1s both 0s;
}

@keyframes page-box-animation {
  0% { 
	  transform: translate(0,50px);
	  opacity: 0;
	}
  100% { 
	  transform: translate(0,0);
	  opacity: 1;
	}
}


.benefits-01-animation {
	animation: benefits-01-animation 3.0s infinite 0s;
}

@keyframes benefits-01-animation {
  0%   { transform: scale(1.0, 1.0)  }
  40%   { transform: scale(1.0, 1.0)  }
  50%  { transform: scale(1.0, 1.0) }
  60%  { transform: scale(1.0, 0.9)  }
  70%  { transform: scale(1.0, 1.0)}
  80%  { transform: scale(1.0, 0.95) }
  90%  { transform: scale(1.0, 1.0) }
  100% { transform: scale(1.0, 1.0) }
}

.benefits-02-animation {
	animation: benefits-02-animation 3.0s infinite 1s;
}

@keyframes benefits-02-animation {
  0%   { transform: scale(1.0, 1.0)  }
  40%   { transform: scale(1.0, 1.0)  }
  50%  { transform: scale(1.0, 1.0) }
  60%  { transform: scale(1.0, 0.9)  }
  70%  { transform: scale(1.0, 1.0)}
  80%  { transform: scale(1.0, 0.95) }
  90%  { transform: scale(1.0, 1.0) }
  100% { transform: scale(1.0, 1.0) }
}

.logo-animation {
	animation: logo-animation 2.0s infinite 0s;
}

@keyframes logo-animation {
  0% { 
	transform: translateY(0px);
	}
  50% { 
	transform: translateY(-20px);
	}
  100% { 
	transform: translateY(0px);
	}
}

.entry-btn-animation {
animation: entry-btn-animation 1.5s infinite 0s;
} 
@keyframes entry-btn-animation {
  0% { 
	transform: translateY(0px);
	}
  50% { 
	transform: translateY(-10px);
	}
  100% { 
	transform: translateY(0px);
	}
}

.kaime-open-animation {
animation: kaime-open-animation 1s infinite 0s;
} 
@keyframes kaime-open-animation {
  0% { 
	  opacity: 1;
	}
  50% { 
	  opacity: 0;
	}	
  100% { 
	  opacity: 1;
	}	
}

.day60-animation {
animation: day60-animation 2.0s infinite 0s;
} 
@keyframes day60-animation {
  0% { 
	  transform:rotate(0deg); 
	}
  30% { 
	  transform:rotate(-10deg); 
	}	
  80% { 
	  transform:rotate(10deg); 
	}		
  100% { 
	  transform:rotate(0deg); 
	}	
}

.this-week-btn-animation {
animation: this-week-btn-animation 1.5s infinite 0s;
} 
@keyframes this-week-btn-animation {
  0% { 
	transform: translateY(0px);
	}
  50% { 
	transform: translateY(-10px);
	}
  100% { 
	transform: translateY(0px);
	}
}

.free-btn-animation {
animation: free-btn-animation 2.0s infinite 0s;
} 
@keyframes free-btn-animation {
  0% { 
	  transform: translateY(0px);
	}
  80% { 
	  transform: translateY(0px);
	}
  90% { 
	  transform: translateY(10px);
	}
  94% { 
	  transform: translateY(0px);
	}
  98% { 
	  transform: translateY(10px);
	}	
  100% { 
	  transform: translateY(0px);
	}
}

.site-entry-animation {
animation: site-entry-animation 1s infinite 0s;
} 
@keyframes site-entry-animation {
  0% { 
	  transform: translateY(0px);
	}
  50% { 
	  transform: translateY(10px);
	}	
  100% { 
	  transform: translateY(0px);
	}	
}

.slide-in-01,
.slide-in-02,
.slide-in-03,
.slide-in-04
{
	transition-duration:1s;
	-moz-transition-duration:1s;
	-webkit-transition-duration:1s;
	transition-delay: 0.1s;
	transform: translateY(60px) ;
	opacity: 0;
}

.slide-in-01.active,
.slide-in-02.active,
.slide-in-03.active,
.slide-in-04.active
{
	opacity: 1.0;
	transform: translateY(0);
}

.site-photo-01,
.site-photo-02,
.site-photo-03,
.site-photo-04
{
	transition-duration:1s;
	-moz-transition-duration:1s;
	-webkit-transition-duration:1s;
	transition-delay: 0.1s;
	transform: rotateX(180deg); 
	opacity: 0;
}

.site-photo-01.active,
.site-photo-02.active,
.site-photo-03.active,
.site-photo-04.active
{
	opacity: 1.0;
	transform: rotateX(0deg); 
}


/*tokushoho*/
.tokushoho{
	width: 96%;
	margin: 0 auto;
	border-collapse: collapse;
	color: #000;
	font-size: 14px;
}

.tokushoho td,th {
	padding: 15px;
/*	border: 1px solid #000;*/
	border-bottom: 1px dotted #000;
}

.tokushoho td,th:first-child {
	border-top: 1px dotted #000;
}

.tokushoho th {
	width: 180px;
	background: #fff;
	font-weight: normal;
}

.tokushoho td {
	background: #fff;
	font-weight: normal;
}

/*pass*/
.pass-title {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin-top: 15px;
}
.pass-form {
	text-align: center;
	margin-bottom: 15px;
}
.pass-mail {
	width: 90%;
	padding: 5px;
	font-size: 14px;
}
.pass-textarea {
	width: 90%;
	height: 100px;
	padding: 5px;
	font-size: 14px;
}
.pass-bt {
	text-align: center;
}




.entry-btn-line {
	position: absolute;
	top: 32vh;	
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
}

.entry-btn-line img {
	width: 300px;
}

.entry-btn-line-modal {
	position: absolute;
	top: 10vh;	
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 3;
}


.entry-btn-line-modal img {
	width: 300px;
}

.entry-btn-line-foot  {
	margin: 0 auto;
}

.entry-btn-line-foot img {
	width: 300px;
}