@charset "utf-8";

/*-------------------------------
basic
---------------------------------*/
* {
	box-sizing: border-box;
}

html {
	font-size: 16px;
}

body {
	margin: 0;
	padding: 0;
	width: 100%;
	line-height: 1.625;
	color: #000;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	background: #fff;
}

a {
	text-decoration: none;
	color: #6FB2E6;
}

img {
	max-width: 100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

#wrapper {
	position: relative;
	overflow: hidden;
	max-width: 100%;
	height: 100vh;
}

@media screen and (max-width: 1024px) {
	#wrapper {
	  height: auto;
	}
}

/*-------------------------------
header
---------------------------------*/
header {
	position: relative;
}

.logo {
	width: 100%;
	max-width: 180px;
	margin: 0 auto;
	line-height: 0;
}

.logo a,
.logo a img {
	display: block;
}

.logo a {
	text-decoration: none;
}

.logo a img {
	width: 100%;
	height: auto;
	transition: all .4s;
}

.logo a:hover img {
	opacity: .7;
}

@media screen and (min-width: 1025px) {
	header .logo {
		position: absolute;
	  top: 50%;
	  left: 50%;
	  -ms-transform: translate(-50%,-50%);
	  -webkit-transform: translate(-50%,-50%);
	  transform: translate(-50%,-50%);
	}
}

@media screen and (min-width: 1301px) {
	header {
		height: 14vh;
	}
}

@media screen and (max-width: 1300px) {
	header {
		height: 17vh;
	}
}

@media screen and (max-width: 1024px) {
	header {
		height: auto;
		padding: 25px 0;
	}

	.logo {
    max-width: 150px;
	}
}

/*-------------------------------
footer
---------------------------------*/
footer {
	position: relative;
}

footer .copyright {
	font-size: .6875rem;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
}

@media screen and (min-width: 1025px) {
	footer .copyright {
		position: absolute;
	  top: 50%;
	  left: 50%;
	  -ms-transform: translate(-50%,-50%);
	  -webkit-transform: translate(-50%,-50%);
	  transform: translate(-50%,-50%);
	}
}

@media screen and (min-width: 1301px) {
	footer {
		height: 10vh;
	}
}

@media screen and (max-width: 1300px) {
	footer {
		height: 13vh;
	}
}

@media screen and (max-width: 1024px) {
	footer {
		height: auto;
		padding: 25px 0;
	}
}

/*-------------------------------
frontpage
---------------------------------*/
.main-section {
  position: relative;
}

.main-section ul.section-list {
  list-style: none;
  font-size: 0;
	text-align: center;
  margin: 0;
  padding: 0;
  display: inline-block;
  width: 1730px;
	vertical-align: top;
}

.main-section ul.section-list > li {
  font-size: 1rem;
  margin: 0;
	margin-right: -6%;
  display: inline-block;
  vertical-align: top;
	width: 25%;
}

.main-section ul.section-list > li:last-child {
  margin-right: 0;
}

.main-section ul.section-list > li .wrap {
	position: relative;
	width: 100%;
	transition: all .4s;
}

.main-section ul.section-list > li.golf-studio .wrap {
  background: url(../img/top/section-bg_golf-studio.png) no-repeat center center/cover;
}

.open_golf-studio .main-section ul.section-list > li.golf-studio .wrap {
  background: url(../img/top/section-bg_golf-studio_blur.png) no-repeat center center/cover;
}

.main-section ul.section-list > li.golf-range .wrap {
  background: url(../img/top/section-bg_golf-range.png) no-repeat center center/cover;
}

.open_golf-range .main-section ul.section-list > li.golf-range .wrap {
  background: url(../img/top/section-bg_golf-range_blur.png) no-repeat center center/cover;
}

.main-section ul.section-list > li.body-studio .wrap {
  background: url(../img/top/section-bg_body-studio.png) no-repeat center center/cover;
}

.open_body-studio .main-section ul.section-list > li.body-studio .wrap {
  background: url(../img/top/section-bg_body-studio_blur.png) no-repeat center center/cover;
}

.main-section ul.section-list > li.fitness .wrap {
  background: url(../img/top/section-bg_fitness.png) no-repeat center center/cover;
}

.open_fitness .main-section ul.section-list > li.fitness .wrap {
  background: url(../img/top/section-bg_fitness_blur.png) no-repeat center center/cover;
}

.main-section ul.section-list > li .wrap:before {
  content:"";
  display: block;
  padding-top: 121.666667%;
}

.main-section ul.section-list > li .wrap .inner {
	position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
	text-align: center;
	width: 100%;
	z-index: 1;
}

.main-section ul.section-list > li .wrap .inner01 {
	transition: all .4s;
}

.main-section ul.section-list > li .wrap .inner01 h2 {
	position: relative;
	font-size: 1.625rem;
	font-weight: 700;
	color: #fff;
	line-height: 1;
	letter-spacing: .2em;
	margin: 0 auto 1em;
	padding-bottom: .5em;
}

.main-section ul.section-list > li .wrap .inner01 h2:after {
	position: absolute;
  bottom: 0;
  left: 50%;
  -ms-transform: translate(-50%,0);
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);
	content: "";
	width: 50px;
	height: 2px;
	background: #fff;
}

.main-section ul.section-list > li .wrap .inner01 h2 span {
	font-size: .9375rem;
	font-weight: 400;
	letter-spacing: 0;
	display: block;
	margin-bottom: .5em;
}

.main-section ul.section-list > li .wrap .inner01 .btn {
	font-size: .8125rem;
	color: #fff;
	text-align: center;
	line-height: 41px;
	width: 100%;
	max-width: 150px;
	height: 45px;
	margin: 0 auto;
	display: block;
	border: 2px solid #fff;
	background: rgba(0,0,0,0.6);
	transition: all .4s;
	cursor: pointer;
}

.main-section ul.section-list > li .wrap .inner01 .btn:hover {
	color: #000;
	background: #fff;
}

.main-section ul.section-list > li .wrap .inner02 {
	opacity: 0;
	pointer-events: none;
	transition: all .4s;
}

.main-section ul.section-list > li.golf-studio .wrap .inner02 {
	left: 59.5%;
}

.main-section ul.section-list > li.golf-range .wrap .inner02 {
	left: 50%;
}

.main-section ul.section-list > li.body-studio .wrap .inner02 {
	left: 50%;
}

.main-section ul.section-list > li.fitness .wrap .inner02 {
	left: 50%;
}

.open_golf-studio .main-section ul.section-list > li.golf-studio .wrap .inner01,
.open_golf-range .main-section ul.section-list > li.golf-range .wrap .inner01,
.open_body-studio .main-section ul.section-list > li.body-studio .wrap .inner01,
.open_fitness .main-section ul.section-list > li.fitness .wrap .inner01 {
	opacity: 0;
	pointer-events: none;
}

.open_golf-studio .main-section ul.section-list > li.golf-studio .wrap .inner02,
.open_golf-range .main-section ul.section-list > li.golf-range .wrap .inner02,
.open_body-studio .main-section ul.section-list > li.body-studio .wrap .inner02,
.open_fitness .main-section ul.section-list > li.fitness .wrap .inner02 {
	opacity: 1;
	pointer-events: auto;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list {
	padding: 0;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list,
.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li {
	display: block;
	margin: 0;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li {
	margin-bottom: 10px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(2) {
	margin-left: -23px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(3) {
	margin-left: -46px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(4) {
	margin-left: -69px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(5) {
	margin-left: -92px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(6) {
	margin-left: -115px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(7) {
	margin-left: -138px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(8) {
	margin-left: -161px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(9) {
	margin-left: -184px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:last-child {
	margin-bottom: 0;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
	position: relative;
	color: #000;
	text-decoration: none;
	display: block;
	width: 100%;
	max-width: 250px;
	height: 45px;
	background: #fff;
	margin: 0 auto;
	transition: all .4s;
	-ms-transform: skew(-13deg);
  -webkit-transform: skew(-13deg);
  transform: skew(-13deg);
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a:hover {
	opacity: .8;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner {
	position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%) skew(13deg);
  -webkit-transform: translate(-50%,-50%) skew(13deg);
  transform: translate(-50%,-50%) skew(13deg);
	display: block;
	width: 75%;
	padding-left: 100px;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner img {
	position: absolute;
  top: 50%;
  left: 0;
  -ms-transform: translate(0,-50%);
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
	display: block;
	width: 90px;
	height: auto;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner .text {
	font-size: .8125rem;
	text-align: center;
	display: inline-block;
}

.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .new-label {
	position: absolute;
	top: -5px;
	right: 10px;
	font-size: 10px;
	color: #fff;
	text-align: center;
	line-height: 35px;
	display: block;
	width: 35px;
	height: 35px;
	background: #bd0000;
	border-radius: 50%;
	-ms-transform: skew(13deg);
  -webkit-transform: skew(13deg);
  transform: skew(13deg);
}

@media screen and (min-width: 1025px) {
	.main-section ul.section-list {
		position: absolute;
	  top: 0;
	  left: 50%;
		bottom: 0;
	  -ms-transform: translate(-50%,0);
	  -webkit-transform: translate(-50%,0);
	  transform: translate(-50%,0);
	}
}

@media screen and (min-width: 1301px) {
	.main-section,
	.main-section ul.section-list > li .wrap {
	  height: 76vh;
	}
}

@media screen and (min-width: 1441px) {
	.main-section ul.section-list {
	  width: 1800px;
	}
}

@media screen and (min-width: 1501px) {
	.main-section ul.section-list {
	  width: 1900px;
	}
}

@media screen and (min-width: 1551px) {
	.main-section ul.section-list {
	  width: 2000px;
	}
}

@media screen and (min-width: 1601px) {
	.main-section ul.section-list {
	  width: 2100px;
	}
}

@media screen and (min-width: 1651px) {
	.main-section ul.section-list {
	  width: 2200px;
	}
}

@media screen and (min-width: 1701px) {
	.main-section ul.section-list {
	  width: 2300px;
	}
}

@media screen and (min-width: 1751px) {
	.main-section ul.section-list {
	  width: 2350px;
	}
}

@media screen and (min-width: 1801px) {
	.main-section ul.section-list {
	  width: 2400px;
	}
}

@media screen and (min-width: 1851px) {
	.main-section ul.section-list {
	  width: 2450px;
	}
}

@media screen and (min-width: 1901px) {
	.main-section ul.section-list {
	  width: 2500px;
	}
}

@media screen and (min-width: 1951px) {
	.main-section ul.section-list {
	  width: 2550px;
	}
}

@media screen and (min-width: 2001px) {
	.main-section ul.section-list {
	  width: 2600px;
	}
}

@media screen and (min-width: 2051px) {
	.main-section ul.section-list {
	  width: 2650px;
	}
}

@media screen and (min-width: 2101px) {
	.main-section ul.section-list {
	  width: 2700px;
	}
}

@media screen and (max-width: 1300px) {
	.main-section,
	.main-section ul.section-list > li .wrap {
    height: 70vh;
	}

	.main-section ul.section-list {
	  width: 1590px;
	}

	.main-section ul.section-list > li .wrap .inner01 h2 {
    font-size: 1.375rem;
	}

	.main-section ul.section-list > li.golf-studio .wrap .inner02 {
		left: 59.5%;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(2) {
		margin-left: -21px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(3) {
		margin-left: -42px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(4) {
		margin-left: -63px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(5) {
		margin-left: -84px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(6) {
		margin-left: -105px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(7) {
		margin-left: -126px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(8) {
		margin-left: -147px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li:nth-child(9) {
		margin-left: -168px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
		height: 40px;
	}
}

@media screen and (max-width: 1250px) {
	.main-section ul.section-list {
    width: 100%;
	}

	.main-section ul.section-list > li {
    margin-right: 0;
	}

	.main-section ul.section-list > li.golf-studio .wrap {
	  background: url(../img/top/section-bg_golf-studio_sp.png) no-repeat center center/cover;
	}

	.open_golf-studio .main-section ul.section-list > li.golf-studio .wrap {
	  background: url(../img/top/section-bg_golf-studio_sp_blur.png) no-repeat center center/cover;
	}

	.main-section ul.section-list > li.golf-range .wrap {
	  background: url(../img/top/section-bg_golf-range_sp.png) no-repeat center center/cover;
	}

	.open_golf-range .main-section ul.section-list > li.golf-range .wrap {
	  background: url(../img/top/section-bg_golf-range_sp_blur.png) no-repeat center center/cover;
	}

	.main-section ul.section-list > li.body-studio .wrap {
	  background: url(../img/top/section-bg_body-studio_sp.png) no-repeat center center/cover;
	}

	.open_body-studio .main-section ul.section-list > li.body-studio .wrap {
	  background: url(../img/top/section-bg_body-studio_sp_blur.png) no-repeat center center/cover;
	}

	.main-section ul.section-list > li.fitness .wrap {
	  background: url(../img/top/section-bg_fitness_sp.png) no-repeat center center/cover;
	}

	.open_fitness .main-section ul.section-list > li.fitness .wrap {
	  background: url(../img/top/section-bg_fitness_sp_blur.png) no-repeat center center/cover;
	}

	.main-section ul.section-list > li .wrap .inner02 {
		left: 50% !important;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li {
		margin-left: 0 !important;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
		-ms-transform: skew(0deg);
	  -webkit-transform: skew(0deg);
	  transform: skew(0deg);
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner {
		-ms-transform: translate(-50%,-50%) skew(0deg);
	  -webkit-transform: translate(-50%,-50%) skew(0deg);
	  transform: translate(-50%,-50%) skew(0deg);
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .new-label {
		right: -5px;
		-ms-transform: skew(-13deg);
	  -webkit-transform: skew(-13deg);
	  transform: skew(-13deg);
	}
}

@media screen and (max-width: 1150px) {
	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
    max-width: 230px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner img {
		width: 85px;
	}
}

@media screen and (max-width: 1024px) {
	.main-section {
    height: auto;
	}

	.main-section ul.section-list > li {
    width: 50%;
	}

	.main-section ul.section-list > li .wrap {
    height: 550px;
	}

	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
    max-width: 80%;
	}
}

@media screen and (max-width: 768px) {
	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a {
    max-width: 90%;
	}
}

@media screen and (max-width: 600px) {
	.main-section ul.section-list > li {
    width: 100%;
	}
}

@media screen and (max-width: 375px) {
	.main-section ul.section-list > li .wrap .inner02 ul.btn-list > li a .inner {
		padding-left: 85px;
	}
}
