@charset "utf-8";


/*----------------------------------------
	mainvisual
-----------------------------------------*/

.mainvisual h2 {
	margin: 0 auto;
	text-align: center;
}

.pilates_btn {
	margin: 0 auto;
	text-align: center;
	padding:60px 7%;
}
/*----------------------------------------
	main_cp
-----------------------------------------*/
.main_cp {
	background:url("../../images/00_index/01_main_cp_bg_sp.jpg") no-repeat top left #2ad5db;
	margin:0 auto;
	text-align: center;
	padding:10% 0;
	position: relative;
}
.main_cp .main_cp_in {
	margin:0 auto;
	text-align: center;
	padding:7% 5% 7% 5%;
	box-sizing: border-box;
	border-radius: 5px;
}
.main_cp .main_cp_in p{
	/*--margin:-7% -5% 0-5%;--*/
}
.main_cp_btn{
	display: block;
	margin:0 auto;
	text-align: center;
	padding:5% 5% 3% 5%;
}
.main_cp_re{
	display: block;
	margin:0 auto;
	text-align: center;
	padding:0 5%;
}
.main_cp .day{
	margin:0 auto;
	text-align: center;
	padding:5%;
}

/*----------------------------------------
	main_mov
-----------------------------------------*/
.main_mov {
	background:url("../../images/00_index/01_movie_bg_sp.png") no-repeat top center;
	background-size: 100%;
	margin:0 auto;
	text-align: center;
	padding:40% 30px;
	position: relative;
}
.main_mov .iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
	margin-top: 20%;
}

.main_mov .iframe-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*----------------------------------------
	studio
-----------------------------------------*/
.studio {
	margin:10% 5% 0 5%;
	text-align: center;
}
/*----------------------------------------
	pickup
-----------------------------------------*/
.pickup {
	margin:15% auto 0 auto;
}
.pickup dt{
	width: 40%;
	text-align: center;
	margin:0 auto;
}
.pickup dl{
	margin:0 auto;
	text-align: center;
}
.pickup .center_sp{
	position: relative;
	padding-top:5%;
	margin:0 auto;
	width: 92%;
}
.pickup .center_sp ul{
	display: flex;
	margin:0 auto;
	justify-content: space-between;
	padding:0 ;
}
.pickup .center_sp li{
	margin:0 auto;
	text-align: center;
	width: 48%;
}
.slick-prev,
.slick-next
{
    width: 30px!important;
    height: 30px!important;
	top:auto!important;
	bottom:-20%;
	z-index: 50!important;
}
.slick-prev{
    background:url("../../images/00_index/02pick_left_arrow.png") no-repeat center center!important;
	background-size: 30px!important;
	left: -2%!important;
}
.slick-next{
    background:url("../../images/00_index/02pick_right_arrow.png") no-repeat center center!important;
	background-size: 30px!important;
	right: -2%!important;
}

/*----------------------------------------
	topics
-----------------------------------------*/
.topics {
	margin:10% auto 0 auto;
	padding: 0 8%;
}
.topics .campaign{
	background: #ff9600;
	border-radius: 20px;
	padding:20px;
	font-weight: 700;
	text-align: left;
	display: flex;
	justify-content: space-between;
}
.topics .campaign .title_inner{
	width: 65%;
}
.topics .campaign .title{
	color: #ff9600;
	background: #fff;
	border-radius: 30px;
	font-size: 13px;
	text-align: center;
	margin-bottom: 5%;
}
.topics .campaign p{
	font-size: 11px;
	line-height: 1.5;
}
.topics .campaign .fee{
	font-size: 18px;
	line-height: 1.5;
}
.topics .campaign .price{
	width: 30%;
	font-size: 18px;
}
.topics .campaign .price span{
	font-size: 13vh;
	line-height: 0.7;
}
.topics .topics_news{
	padding:10% 0 0 0px;
}
.topics .topics_news dl{
	display: flex;
	margin-bottom: 5%;
}
.topics .topics_news dt{
	padding-right: 20px;
	width: 30%;
}
.topics .topics_news dd{
	font-weight: 700;
}
.topics .topics_news span{
	color:#ffe900;
	font-weight: 700;
}
.topics .topics_news li{
	padding: 15px 0;
	border-bottom: 1px #666 solid;
}
.topics .topics_news li:last-of-type{
	padding: 15px 0 0 0;
	border-bottom:none;
}

/*----------------------------------------
	202306対応 member_type
-----------------------------------------*/
#member_type{
	margin: 10% 5%;
	background: #3cb7f5;
	border:5px solid #fff;
	border-radius: 15px;
	padding: 10% 7%;
}
#member_type .member_inner{
	margin: 0  auto;
	text-align: center;
}
#member_type .member_inner p{
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
}
#member_type .member_inner h3{
	font-size: 40px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 5px;
} 
#member_type .member_inner .att{
	font-weight: bold;
	margin:30px 0 0 0;
	font-size: 10px;
} 
#member_type .member_inner .gym{
	font-size: 13px;
	font-weight: bold;
	line-height: 1.5;
	border-radius: 20px;
	background: #fff;
	color: #3cb7f5;
	padding: 5%;
	margin: 10% 0;
} 
#member_type .member_inner .gym span{
	background: #fff604;
} 
#member_type .member_inner .regular{
	font-size: 13px;
	font-weight: bold;
	line-height: 1.5;
	border-radius: 20px;
	background: #fff604;
	color: #3cb7f5;
	padding: 5%;
	margin: 20% 0 10% 0;
}
#member_type .price_table{
	border-top:2px #fff solid;
	margin: 25% 0 0 0;
	padding: 15% 0 0 0;
} 
#member_type .price_table dt{
	font-size:16px;
	font-weight: bold;
	line-height: 1.5;
	margin:0 0 50px 0;
	} 
#member_type .price_table span{
	font-size:40px;
	font-weight: bold;
	color: #fff604;
	} 
#member_type .price_table dd{
	 width: 100%;
 overflow-x: auto!important;
	margin:0 0 0 0;
}
#member_type .price_table .over_in{
	width: 1200px;
	margin: 20px 0 10px 0;
}
/*----------------------------------------
	special
-----------------------------------------*/
.special_title {
	margin:20% auto 0 auto;
	padding: 0 5%;
	text-align: center;
}
.special {
	background:url("../../images/00_index/03special_bg_new.png") no-repeat top center;
	margin: 0 auto 20% auto;
	text-align: center;
	background-size:cover;
	padding:0 0 30% 0;
}
.special h3{
	padding:5% 7% 0 7%;
}
.special h3 p{
	font-weight: 700;
	font-size:17px;
	padding:10% 0 2% 0;
}
.special dl{
	padding: 6% 5% 0 5%;
	font-weight: 700;
	line-height: 1.6;
	
}
.special .attend{
	padding: 0% 5% 10% 5%;
	text-align: right;
}
.special dt{
		font-size:14px;
}
.special dt em{
	font-size:20px;
}
.special dt span{
	font-size: 30px;
	color: #fff604;
}
.special dd{
	 width: 100%;
 overflow-x: auto!important;
	margin:0 0 0 0;
}
.special .over_in{
	 width: 1200px;
	margin: 20px 0 10px 0;
}
.special .btn{
	position:relative;
	padding:10% 5% 0 5%;
	margin: 0 auto;
	justify-content: space-between;
	display: flex;
	background-size:cover;
}
.special .btn ul{
	width: 50%;
}
.special .btn li{
	padding-bottom: 10%;
}
.special .btn .right{
	margin-top: 23%;
}


/*----------------------------------------
	feature
-----------------------------------------*/
#feature section:nth-child(odd) .contents .pic{
	padding:0 5% 0 0;
}
#feature section:nth-child(odd) .contents .copy{
	padding:5% 5%;
}
#feature section:nth-child(odd) .contents .copy h4 dl{
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	color: #3cb7f5;
	display: flex;
	align-items: center;
	line-height: 1;
}
#feature section:nth-child(even){
 margin:20% 0;
}

#feature section:nth-child(even) .contents .pic{
	padding:0 0 0 5%;
}
#feature section:nth-child(even) .contents .copy{
	padding:5% 5%;
}
#feature section:nth-child(even) .contents .copy h4 dl{
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	color: #55c5cf;
	display: flex;
	align-items: center;
	line-height: 1;
}
#feature .contents .copy h4 dt{
	font-family: 'Montserrat', sans-serif;
	font-size: 70px;
	font-style: italic;
	font-weight: 900;
	padding-right: 5%;
}
#feature .contents .copy h4 p{
	font-size:20px;
	padding: 5% 0;
}


#feature .second{
	padding-top:15%;
}

#feature section:nth-child(odd) .contents .ex_lead span{
	font-size:15px;
	font-family: 'Montserrat', sans-serif;
	color: #3cb7f5;
}
#feature section:nth-child(even) .contents .ex_lead span{
	font-size:15px;
	font-family: 'Montserrat', sans-serif;
	color: #55c5cf;
}

#feature .program_btn{
	background:#ffff00;
	border-radius: 50px;
	position: relative;
	text-align: center;
	display: block;
	width:auto;
	padding: 15px 0;
	font-weight:700;
	margin:30px auto 0 auto;
	color: #000;
}
#feature .program_btn::after{
  content: '';
  width: 8px;
  height: 8px;
  border: 0px;
  border-top: solid 1px #000;
  border-right: solid 1px #000;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
}

#freeweight .machine_list {
	margin: 20px 5% 0 5%;
}
#freeweight .machine_list ul{
	padding:5%;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border: 1px #aaa solid;
}
#freeweight .machine_list li:nth-child(odd){
	width: 53%;
	font-weight: 700;
	font-size: 10px;
}
#freeweight .machine_list .txt{
	letter-spacing: -1px;
}
#freeweight .machine_list li:nth-child(even){
	width: 45%;
	font-weight: 700;
	font-size: 10px;
}
#freeweight .loop_wrap {
width:100%;
	margin-top: 20px;
	height:120px;
	position: relative;
	background:url(../../images/00_index/04feature01_machine_sp.png);
	animation: topmove 50s linear infinite;
	-webkit-animation: topmove 50s linear infinite;
	-moz-animation: topmove 50s linear infinite;
}

@keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -1600px 0; }
}
@-webkit-keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -1600px 0; }
}
@-moz-keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -1600px 0; }
}

#feature #program .program_wrap{
	
background:url(../../images/00_index/04feature02_bg_sp02.png) no-repeat center top;
}
#program .program_wrap_bg{
background:url(../../images/00_index/04feature02_bg_sp.png) no-repeat center bottom;
	background-size:135%;
}


#program .lesson {
margin:20% auto 0 auto;
	padding: 0 8%;
}
#program .lesson .lesson_ditail{
margin:20% auto 0 auto;
}
#program .lesson .pic{
	margin:0 auto 10px auto;
	text-align: center;
}
#program .lesson dt{
	font-family: 'Montserrat', sans-serif;
	font-size: 25px;
	background:url(../../images/00_index/04feature02_line.png) no-repeat center bottom;
	padding-bottom: 0;
	margin-bottom: 5px;
	text-align: center;
}
#program .lesson dd{
	font-size: 18px;
	text-align: center;
}
#program .lesson p{
	margin-top: 10px;
}

#program .live {
margin:20% auto 0 auto;
	display:block;
	box-sizing: border-box;
	justify-content: space-between;
	padding: 0 8%;
}

#program .live .pic img{
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
#program .live .copy{
	width:auto;
	background:url(../../images/00_index/04feature02_live_ico.png) no-repeat center top 50px #2da1e3;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	margin: 0 0 0 0;
	padding:180px 8% 8% 8%;
	box-sizing: border-box;
}
#program .live .copy dt{
	font-size: 17px;
	line-height: 1.5;
	padding-bottom: 10px;
}

#virtual .loop_wrap {
width:100%;
	margin-top: 20px;
	height:100px;
	position: relative;
	background:url(../../images/00_index/04feature03_virtual_sp.png);
	animation: topmove 50s linear infinite;
	-webkit-animation: topmove 50s linear infinite;
	-moz-animation: topmove 50s linear infinite;
}

@keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -2091px 0; }
}
@-webkit-keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -2091px 0; }
}
@-moz-keyframes topmove {
	from { background-position: 0 0; }
    to { background-position: -2091px 0; }
}

/*----------------------------------------
	option
-----------------------------------------*/
.option{
	background: #3cb7f5;
	padding:20% 0;
	text-align: center;
	font-weight: 500;
	margin-top: 20%;
}
.option dl{
	line-height: 1.5;
	padding-bottom: 10px;
}
.option dd{
	font-family: 'Montserrat', sans-serif;
	font-size: 40px;
	font-weight: 300;
}
.option p{
	padding:0 8%;
}
.option ul{
	margin:20px 5% 0 5%;
}
.option li{
	padding: 0 0 3% 0;
	box-sizing: border-box;
}


/*----------------------------------------
	202209追加分
-----------------------------------------*/
.member_ico {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 20px;
}
.member_ico li{
	margin-bottom: 10px;
	width: 48%;
}
.member_ico li:last-of-type{
	margin-right: 0px;
}

#freeweight .point {
	margin: 10% auto 0 auto;
	padding: 0 5%;
}
#freeweight .point .point_txt{
	position: relative;
  padding: 7px 20px 20px 20px;
  color: #fff000;
	font-weight: bold;
	border-radius: 10px;
  font-size: 17px;
  background: #3cb7f5;
	width:auto;
	margin:0 0% 30px 0;
}
#freeweight .point .point_txt:before {
 content: "";
  position: absolute;
  top: 100%;
  left: 50%;
margin-top: 0px;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #3cb7f5;
}
#freeweight .point .point_pic{
	width:auto;
	text-align: center;
}
.instructor {
	margin: 20% auto 0 auto;
	padding: 0 7%;
}
.instructor h5{
	font-size: 25px;
	font-weight: bold;
	text-align: center;
}
.instructor p{
	padding: 5% 0 10% 0;
}
.instructor ul{
	display: flex;
	justify-content:space-between;
	flex-wrap: wrap;
}
.instructor li{
	text-align: center;
	width:45%;
	margin-bottom: 10%;
}
.instructor dt{
	font-weight: bold;
	font-size: 17px;
	padding: 10px 0 5px 0;
}
.instructor dd{
	font-size: 12px;
	line-height: 1.5;
}


#private .point .point_txt{
	position: relative;
  padding: 7px 20px 20px 20px;
  color: #fff000;
	font-weight: bold;
	border-radius: 10px;
  font-size: 17px;
  background: #55c5cf;
	line-height: 1.8;
	margin:40px 0 20px 0;
	text-align: center;
}
#private .point .point_txt:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #55c5cf;
}

#spa .point .point_txt{
	position: relative;
  padding: 7px 20px 20px 20px;
  color: #fff000;
	font-weight: bold;
	border-radius: 10px;
  font-size: 17px;
  background: #3cb7f5;
	line-height: 1.8;
	margin:40px 0 20px 0;
	text-align: center;
}
#spa .point .point_txt:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #3cb7f5;
}

#spa .point dl {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#spa .point dl dt{
	width: 47%;
}
#spa .point dl dd{
	width: 47%;
}