@charset "UTF-8";

body {
background: url("../img/wrap_bg.jpg") no-repeat center top #e9f2f5;
background-size: 100%;
}

.pc{
	display:block;
}
.sp{
	display:none;
}
.sp-only{
	display:none;
}
/*----------------------------------------
	title
-----------------------------------------*/
.cmn_ttl_en{
	font-family: "Poppins", sans-serif;
	font-size: 2.0rem;
	line-height: 1.5;
	letter-spacing: 0.4rem;
	background: url("../img/cmn_ttl_ico.png")no-repeat center top;
	padding: 100px 0 30px 0;
	font-weight: 700;
	text-align: center;
}
.cmn_ttl{
	font-size: calc(22px + 10 * (100vw - 360px) / 840); 
	line-height: 1.5;
	letter-spacing: 0.4rem;
	background: url("../img/cmn_ttl_line.png")no-repeat center bottom;
	padding: 0 0 40px 0;
	text-align: center;
	margin-bottom: 10%;
}
/*----------------------------------------
	cmn
-----------------------------------------*/
.cmn_inner_pt01 {
	position: relative;
	margin: 0 auto;
	padding:0 7%;
}
.cmn_inner_pt02 {
	position: relative;
	margin: 0 auto;
	padding:0 40px;
	max-width: 1200px;
}
/*----------------------------------------
	fixed-banner
-----------------------------------------*/
.fixed-banner-sp {
	display: none;
}
.fixed-banner {
	position: fixed;
	z-index: 999;
	right: 0;
	top: 50%;
	cursor: pointer;
  transition: .3s;
	/*デフォルトで非表示にする*/
  opacity: 0;
  visibility: hidden;
	animation: slidebn 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes slidebn {
  0% {
    transform: translate(0,-50%);
	  opacity: 1;
  }
  100% {
    transform: translate(100px,-50%);
    opacity: 0;
  }
  40%,100% {
    opacity: 0;
  }
}

/*このクラスが付与されると表示する*/
.is-active{
  opacity: 1;
  visibility: visible;
	animation: slidebn-active 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes slidebn-active {
  0% {
    transform: translate(100px,-50%);
    opacity: 0;
  }
  100% {
    transform: translate(0,-50%);
  }
  40%,100% {
    opacity: 1;
  }
}
.fixed-banner ul{
	background: #c7977c;
	padding:30px 15px;
}
.fixed-banner a{
	display: block;
	writing-mode:vertical-rl;
-ms-writing-mode:tb-rl;
-moz-writing-mode:vertical-rl;
-webkit-writing-mode:vertical-rl;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
}
.fixed-banner .chirashi{
	background: url("../img/fixed_bn_ico04.png")no-repeat top center;
	padding:40px 0 20px 0;
	margin-bottom: 20px;
	border-bottom: 1px #fff solid;
}
.fixed-banner .reserve{
	background: url("../img/fixed_bn_ico01.png")no-repeat top center;
	padding:40px 0 20px 0;
	margin-bottom: 20px;
	border-bottom: 1px #fff solid;
}
.fixed-banner .inquiry{
	background: url("../img/fixed_bn_ico02.png")no-repeat top center;
	padding:30px 0 20px 0;
	margin-bottom: 20px;
	border-bottom: 1px #fff solid;
}
.fixed-banner .sch{
	background: url("../img/fixed_bn_ico03.png")no-repeat top center;
	padding:35px 0 0 0;
}
/*----------------------------------------
	main_visual
-----------------------------------------*/
.main_visual{
	margin:0 auto;
	background: url("../img/main_pic.png")no-repeat top right;
	background-size: 70%;
	position: relative;
	padding:2% 0 7% 5%;
}
.main_visual .main_copy{
	padding:0 7% 0 0 ;
}
.main_visual .main_ttl{
	animation: slideIn01 2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
	margin:0 auto;
	padding:3% 45% 2% 0;
}
@keyframes slideIn01 {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
  }
  40%,100% {
    opacity: 1;
  }
}
@keyframes slideIn02 {
  0% {
    transform: translateY(60px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
  }
  40%,100% {
    opacity: 1;
  }
}


.main_visual p{
	font-family: "Shippori Mincho", serif;
	font-size: calc(12px + 7 * (100vw - 360px) / 840); 
	font-weight: 400;
	letter-spacing: 0.3em;
	line-height: 1.7;
	margin-bottom: 5%;
	font-style: italic;
}
.main_visual .copy_set{
	display: flex;
	animation: slideIn02 4s cubic-bezier(0.25, 1, 0.5, 1) forwards;
	margin:0 auto;
}
.main_visual .aswell_logo{
	width: 40%;
}
.main_visual h1{	
	width: 80%;
}
.main_visual h2{
	padding: 0 20% 0 0;
	width: 70%;
}
.main_visual .scroll{
	padding: 8% 0 0 0;
}
	
/*----------------------------------------
	about
-----------------------------------------*/
.about{
	margin:0 auto;
	position: relative;
	padding:0 0 10% 0;
}
.about .cmn_inner_pt01 {
	display: flex;
	justify-content: space-between;
}
.about .about_pic {
	width: 55%;
	padding-top: 2%;
}
.about .about_pic p{
	margin-top: 10px;
	font-size:12px; 
}
.about dl{
	width: 40%;
}
.about dd{
	padding: 5% 0 0 5%;
	font-family: "Shippori Mincho", serif;
	font-size: calc(12px + 7 * (100vw - 360px) / 840); 
	letter-spacing: 0.5rem;
	line-height: 1.5;
	font-style: italic;
}
.about_pic .small{
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: right;
	margin-top: 10px;
}
/*----------------------------------------
	campaign
-----------------------------------------*/
.campaign{
	margin:0 auto ;
	text-align: center;
	position: relative;
	padding:7%;
	background: url("../img/cp_bg.jpg")no-repeat center center;
}

/*----------------------------------------
	pilates_ex
-----------------------------------------*/
.pilates_ex{
	margin:0 auto;
	position: relative;
	padding:6% 0 10% 0;
	background: url("../img/pilates_ex_bg.jpg")no-repeat center center;
}
.pilates_ex h3 {
	font-family: "Shippori Mincho", serif;
	font-size: calc(26px + 7 * (100vw - 360px) / 840); 
	font-weight: 500;
	letter-spacing: 0.3em;
	line-height: 1.7;
	margin-bottom: 5%;
	text-align: center;
	font-style: italic;
}
.pilates_ex ul {
	display: flex;
	justify-content: space-between;
	background: url("../img/pilates_ex_pic.png")no-repeat center center;
	background-size: 50%;
	flex-wrap: wrap;
}
.pilates_ex li{
	width: 50%;
}
.pilates_ex li:nth-child(1),.pilates_ex li:nth-child(2){
	margin-bottom: 5%;
}
.pilates_ex .r_contents{
	display: flex;
	justify-content: flex-end;
}
.pilates_ex dt{
	font-family: "Shippori Mincho", serif;
	font-size: calc(6px + 10 * (100vw - 360px) / 840); 
	font-weight: 500;
	line-height: 1.3;
	margin-bottom: 5%;
	font-style: italic;
	border-bottom: 1px #000 solid;
	padding:0 0 20px 40px;
}
.pilates_ex .pilates_no01{
	background: url("../img/pilates_ex_no01.png")no-repeat top left;
}
.pilates_ex .pilates_no02{
	background: url("../img/pilates_ex_no02.png")no-repeat top left;
}
.pilates_ex .pilates_no03{
	background: url("../img/pilates_ex_no03.png")no-repeat top left;
}
.pilates_ex .pilates_no04{
	background: url("../img/pilates_ex_no04.png")no-repeat top left;
}
.pilates_ex dl{
	width: 45%;
}

/*----------------------------------------
	reason
-----------------------------------------*/
.reason{
	margin:0 auto;
	position: relative;
	padding:6% 0 10% 0;
	background: url("../img/reason_bg.png")no-repeat top center;
}
.reason h3 {
	font-family: "Shippori Mincho", serif;
	font-size: calc(26px + 7 * (100vw - 360px) / 840); 
	font-weight: 500;
	letter-spacing: 0.3em;
	line-height: 1.7;
	margin-bottom: 15%;
	text-align: center;
	font-style: italic;
}
.reason .reason_ttl {
	padding: 5% 0;
	text-align: center;
	margin: 0 auto;
}
.reason .reason-box {
	display: flex;
	justify-content: space-between;
}
.reason .even {
	flex-direction: row-reverse;
	margin:15% 0;
}
.reason .rbox-left{
	width: 44%;
}
.reason .rbox-right{
	width: 47%;
}
.reason .reason-cap{
	font-family: "Poppins", sans-serif;
	font-size: 1.3rem;
	line-height: 1.5;
	letter-spacing: 0.2rem;
	background: url("../img/reason_line.png")no-repeat top left 10px;
	padding: 65px 0 0 0;
}
.reason .reason-cap em{
	font-weight: 700;
	display: block;
	padding: 6px 0 0 2px;
}
.reason .reason-cap span{
	display: block;
	writing-mode:vertical-rl;
-ms-writing-mode:tb-rl;
-moz-writing-mode:vertical-rl;
-webkit-writing-mode:vertical-rl;
}

.reason .rbox-right dt{
	font-size: calc(18px + 7 * (100vw - 360px) / 840); 
	font-weight: 600;
	letter-spacing: 0.3em;
	margin: 3% 0;
	line-height: 1.5;
}
.reason .rbox-right dd{
	font-feature-settings: "palt";
	letter-spacing: 0.3rem;
}
.reason .small{
	font-size: 1.3rem;
	line-height: 1.7;
	display: block;
	margin-top: 40px;
}
.reason .rbox-right.boxbg01{
	background: url("../img/reason_boxbg01.png")no-repeat top center;
}
.reason .rbox-right.boxbg02{
	background: url("../img/reason_boxbg02.png")no-repeat top center;
}
.reason .rbox-right.boxbg03{
	background: url("../img/reason_boxbg03.png")no-repeat top center;
}
.reason .rbox-right.boxbg04{
	background: url("../img/reason_boxbg04.png")no-repeat top center;
}
.reason .rbox-right.boxbg05{
	background: url("../img/reason_boxbg05.png")no-repeat top center;
}
/*----------------------------------------
	worries
-----------------------------------------*/
.worries{
	padding: 10% 0;
}

/*----------------------------------------
	price
-----------------------------------------*/
.price{
	margin:0 auto;
	position: relative;
	background: #fff;
	padding:10% 0;
}
.price .price-box{
	margin:0 auto;
	background: #ebd8d0;
	padding:6% 10%;
}
.price .price-box dd{
	line-height: 1.3;
}
.price .price-box dd span{
	font-size:1.3rem; 
}
.price .price_cap{
	display: flex;
	background: url("../img/price_line01.png")no-repeat left center;
	padding: 0 0 0 25px;
	margin-bottom: 20px;
	font-family: "Poppins", sans-serif;
}
.price .price_cap span{
	display: block;
	letter-spacing: 0.2em;
	font-size: 1.4rem;
}
.price .price_cap em{
	display: block;
	margin-left: 20px;
	letter-spacing: 0.2em;
	font-size: 1.4rem;
}
.price dl{
	display: flex;
	align-items: center;
	border-bottom: 1px #000 solid;
	padding-bottom: 15px;
	margin-bottom: 20px;
}
.price dt{
	color: #cf8264;
	background: url("../img/price_line02.png")no-repeat right center;
	font-weight: 500;
	font-size:2.8rem; 
	padding: 0 20px 0 0;
	margin-right: 20px;
}
.price dd{
	font-weight: 500;
	font-size:2.0rem; 
}

.price .course{
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}
.price .course .times{
	background: #cf8264;
	line-height: 1;
	padding: 20px;
	color: #fff;
	font-weight: 700;
	margin-right: 25px;
	border-radius: 15px;
	font-size:2.2rem; 
}
.price .course .price-txt em{
	font-family: "Poppins", sans-serif;
	font-size: calc(30px + 20 * (100vw - 360px) / 840); 
	font-weight: 700;
	line-height: 1.3;
}
.price .course .price-txt{
	font-size: 1.8rem; 
	font-weight: 700;
}
.price .att-box{
	border:1px solid #000;
	background: #fff;
	padding: 25px;
	font-feature-settings: "palt";
	margin-top: 30px;
}
/*----------------------------------------
	schedule
-----------------------------------------*/
.schedule{
	margin:0 auto;
	position: relative;
	padding:20% 0 10% 0;
	background: url("../img/sch_bg.jpg")no-repeat top center;
}
.schedule .class{
	display: flex;
	justify-content: space-between;
	margin-top: 30%;
}
.schedule .class li{
	padding:25px 35px;
	background: #fff;
	width: 30%;
	box-sizing: border-box;
}
.schedule .class .ttl{
	border-bottom: 1px solid #000;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.schedule .class .ttl em{
	font-size: 14px;
	font-family: "Poppins", sans-serif;
	display: block;
	font-weight: 700;
	line-height: 1.5;
}
.schedule .class .ttl p{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.8;
}
.schedule .class dl{
	display: flex;
	font-weight: 700;
}
.schedule .class dt{
	width: 72px;
}
.schedule .class dd{
	flex: 1;
}
.schedule .class dd span{
	color: #cf8264;
}
.schedule .class .class_txt{
	border-top: 1px solid #000;
	padding-top: 20px;
	margin-top: 20px;
}
.schedule .agency{
	border: 5px solid #fff;
	padding: 25px 35px;
	margin-top: 5%;
}
.schedule .agency dt{
	font-weight: 700;
}
.schedule .agency dd{
	line-height: 1.7;
	margin-top: 10px;
}

.schedule .sch{
	margin-top: 5%;
}
.schedule .sch .ttl{
	font-weight: 700;
	margin-bottom: 30px;
}

.schedule .table_pic{
	width: 100%;
	border:1px solid #aaa;
}
.schedule .table_pic_hol{
	margin:30px auto 0 auto;
}
.schedule .table_pic_hol img{
	border:1px solid #aaa;
	width: 500px;
}

.schedule .table-slider table{
	background: #fff;
	border:5px solid #fff;
	width: 100%;
	table-layout: fixed;
}
.schedule .table-slider th,
.schedule .table-slider td{
	text-align: center;
	border: 1px #cacaca solid;
	padding: 10px;
	vertical-align: middle;
}
.schedule .table-slider a{
	color: #6fa8b9;
	text-decoration: underline;
}
.schedule .table-slider thead th{
	background:#ececec;
}
.schedule .table-slider tbody th{
	background:#f6f6f6;
}
.schedule .sch_btn_box{
	display: flex;
	justify-content: center;
}
.schedule .sch_btn{
	margin: 0 auto;
	text-align: center;
	background:url("../img/sch_btn_arrow.png")no-repeat center right 20px #cf8264;
	width: 400px;
	font-size: 22px;
	padding:25px 10px;
	display: block;
	color: #fff;
	line-height: 1;
	font-weight: 700;
	margin: 3% 10px 0 10px;
	border-radius: 50px;
}
.schedule .sch_st{
	font-weight: 700;
	font-size: 22px;
	text-align: center;
	margin: 70px 0 0 0;
	background: #fff;
	padding: 30px;
	color: #cf8264;
}

.schedule .sch_link{
	margin:0 auto;
	position: relative;
	padding:30px 20px;
	background:#cf8264;
	margin-top: 50px;
}

.sch_link .ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.sch_link .ttl dd{
	color: #fff;
	font-size:2.2rem; 
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	padding: 5px 0 0 15px;
}
.sch_link ul{
	display: grid;
  grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.sch_link ul a{
	display: block;
	background:url("../img/sch_bn_ico.png")no-repeat right 20px center #fff;
	color: #cf8264;
	border-radius: 10px;
	text-align: center;
	font-weight: 700;
	padding: 20px;
}
/*----------------------------------------
	instructor
-----------------------------------------*/
.instructor{
	margin:0 auto;
	position: relative;
	background: #fff;
	padding:10% 0;
}
.instructor ul{
	display: grid;
  grid-template-columns: repeat(4, 1fr);
	gap: 40px;
}
.instructor li{
	box-sizing: border-box;
	background: #e9f2f5;
	padding: 20px;
	text-align: center;
}
.instructor li p{
	padding: 10px 10px 0 10px;
	text-align: center;
	font-weight: 700;
	font-size: 20px;
}
/*----------------------------------------
	instagram
-----------------------------------------*/
.instagram{
	margin:0 auto;
	position: relative;
	background: #ebd8d0;
	padding:3% 0;
}
.instagram dl{
	display: flex;
	justify-content: center;
	align-items: center;
}
.instagram dt{
	font-weight: 700;
	font-size: 20px;
	font-family: "Poppins", sans-serif;
	margin-right: 30px;
}
/*----------------------------------------
	footer
-----------------------------------------*/

footer{
	padding:4% 0;
	margin: 0 auto;
	background: #333;
	color: #fff;
}
footer .footer_inner{
	margin: 0 auto;
	max-width:1200px;
	padding:0 60px;
}
footer .footer_inner .footer_info{
	display: flex;
	justify-content: space-between;
}
footer .footer_inner .footer_map{
	width: 60%;
}
footer .footer_inner .footer_txt{
	width: 35%;
}
footer .footer_inner .footer_txt dt{
	font-weight: 700;
	font-size: 25px;
}
footer .footer_inner .footer_txt p{
	font-size: 13px;
	margin-top:25px;
}
footer .footer_inner .footer_txt p{
	font-size: 13px;
	margin-top:25px;
}
footer .footer_inner .footer_link{
	font-size: 13px;
	margin-top:25px;
	display: flex;
	justify-content: space-between;
}
footer .footer_inner .footer_link ul{
	display: flex;
}

footer .footer_inner .footer_link a{
	color: #fff;
	line-height: 1;
	padding-right: 20px;
	margin-right: 20px;
	border-right: 1px #fff solid;
}
footer .footer_inner .footer_link li:last-of-type a{
	padding-right: 0px;
	margin-right: 0px;
	border-right: none;
}
/*ページトップボタン*/
.page-top{
	display: block;
	position: fixed;
	right: 7px;
	bottom: 30px;
	z-index: 999;
}


/*media Queries スマートフォンサイズ（1300px以下）で適応したいCSS - 中間調整
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 1300px) {

/*----------------------------------------
	pilates_ex
-----------------------------------------*/

.pilates_ex ul {
	background: url("../img/pilates_ex_pic.png")no-repeat center top;
	background-size: 70%;
	padding: 50% 0 0 0;
}
.pilates_ex dt{
	font-size: 20px; 
}
.pilates_ex li{
	width: 47%;
}
.pilates_ex .r_contents{
	display: block;
}
.pilates_ex dl{
	width: auto;
}

}
	
/*media Queries スマートフォンサイズ（950px以下）で適応したいCSS - スマホ
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 950px) {


body {
background: url("../img/wrap_bg_sp.jpg") no-repeat center top #e9f2f5;
	background-size: 100%;
line-height:2.3;
font-size:  1.4rem;
}
.pc{
	display:none;
}
.sp{
	display:block;
}
.sp-only{
	display:none;
}
/*----------------------------------------
	cmn
-----------------------------------------*/
.cmn_inner_pt02 {
	padding:0 10%;
}
/*----------------------------------------
	fixed-banner-sp
-----------------------------------------*/
.fixed-banner {
	display: none;
}
.fixed-banner-sp {
	position: fixed;
	z-index: 999;
	bottom: 0;
	width: 100%;
	display: block;
}
.fixed-banner-sp ul{
	background: #c7977c;
	padding:10px 0;
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 70px;
	box-sizing: border-box;
}

.fixed-banner-sp li{
	width: calc(100% / 3);
	border-right: 1px #fff solid;
}
	
/*------- 2つのバナー時	
.fixed-banner-sp li{
	width: calc(100% / 2);
	border-right: 1px #fff solid;
}-----------*/
	
.fixed-banner-sp li:last-of-type{
	border-right: none;
}
.fixed-banner-sp a{
	display: block;
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	text-align: center;
	line-height: 1.2;
}
.fixed-banner-sp .chirashi{
	background: url("../img/fixed_bn_ico04.png")no-repeat top center;
	background-size: 20px;
	padding:27px 0 0 0;
}
.fixed-banner-sp .reserve{
	background: url("../img/fixed_bn_ico01.png")no-repeat top center;
	background-size: 15px;
	padding:27px 0 0 0;
}
.fixed-banner-sp .inquiry{
	background: url("../img/fixed_bn_ico02.png")no-repeat top center;
	padding:27px 0 0 0;
	background-size: 24px;
}
.fixed-banner-sp .sch{
	background: url("../img/fixed_bn_ico03.png")no-repeat top center;
	background-size: 17px;
	padding:20px 0 0 0;
}
	
/*----------------------------------------
	main_visual
-----------------------------------------*/
.main_visual{
	margin:0 auto;
	background: url("../img/main_pic_sp.jpg")no-repeat top center;
	background-size: 100%;
	position: relative;
	padding: 0 0 10% 0;
}
.main_visual .aswell_logo{
	width: auto;
	margin: 0 auto;
	text-align: center;
	padding: 35% 0 20% 0;
}
.main_visual h1{
	margin: 0 auto;
	text-align: center;
	width: 60%;
}
.main_visual p{
	font-family: "Shippori Mincho", serif;
	font-size: calc(12px + 15 * (100vw - 360px) / 840); 
	font-weight: 300;
	letter-spacing: 0.2em;
	margin:3% 0 0 0;
}
.main_visual .main_wrap{
	margin:0 auto;
	background-size: 100%;
	position: relative;
	padding:0;
}

.main_visual .main_ttl{
	margin:0 auto;
	padding:5% 47% 7% 5%;
}

@keyframes slideInsp {
  0% {
    transform: translateY(20px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
  }
  40%,100% {
    opacity: 1;
  }
}

.main_visual h2{
	animation: slideInsp 2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
	padding: 0 7%;
	width: auto;
	text-align: center;
}
.main_visual .scroll{
	padding: 10% 0 0 15%;
	width: 4%;
}
	

/*----------------------------------------
	about
-----------------------------------------*/
.about{
	margin:0 auto;
	position: relative;
	padding:10% 0 20% 0;
}
.about .cmn_inner_pt01 {
	display: block;
}
.about .about_pic {
	width: auto;
}
.about dl{
	width: auto;
	padding: 5% 0 0 0;
}
.about dd{
	padding: 7% 0 0 3%;
	font-family: "Shippori Mincho", serif;
	font-size: calc(15px + 15 * (100vw - 360px) / 840); 
	letter-spacing: 0.5rem;
	line-height: 2;
	font-style: italic;
}
	
/*----------------------------------------
	campaign
-----------------------------------------*/
.campaign{
	margin:0 auto;
	padding:0;
	background: none;
}
/*----------------------------------------
	pilates_ex
-----------------------------------------*/
.pilates_ex{
	margin:0 auto;
	position: relative;
	padding:15% 0 15% 0;
}
.pilates_ex h3 {
	font-size: calc(22px + 20 * (100vw - 360px) / 840); 
	letter-spacing: 0.1em;
}	

/*----------------------------------------
	reason
-----------------------------------------*/
.reason{
	margin:0 auto;
	position: relative;
	padding:15% 0 15% 0;
}
.reason h3 {
	font-size: calc(22px + 20 * (100vw - 360px) / 840); 
	letter-spacing: 0.1em;
}
/*----------------------------------------
	price
-----------------------------------------*/
.price{
	padding:15% 0;
}
.price dl{
	display: block;
}
.price dt{
	line-height: 1.5;
	background:none;
	padding: 0;
	margin-right: 0px;
}

.price .course .times{
	background: #cf8264;
	line-height: 1;
	padding: 15px;
	color: #fff;
	font-weight: 700;
	margin-right: 25px;
	border-radius: 15px;
}
.price .course .price-txt em{
	font-family: "Poppins", sans-serif;
	font-size: calc(30px + 20 * (100vw - 360px) / 840); 
	font-weight: 700;
}
.price .course .price-txt{
	font-size: 1.8rem; 
	font-weight: 700;
}
/*----------------------------------------
	schedule
-----------------------------------------*/
.schedule{
	padding:15% 0 15% 0;
	background-size: 150%;
}
.schedule .class{
	display: block;
	margin-top: 30%;
}
.schedule .class li{
	padding:5% 7%;
	margin-bottom: 20px;
	width: auto;
}
.schedule .class .ttl{
	border-bottom: 1px solid #000;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.schedule .sch{
	margin-top: 7%;
}
.schedule .sch .ttl{
	margin-bottom: 20px;
}
.schedule .table-slider th,
.schedule .table-slider td{
	padding: 7px;
}
.schedule .table_pic{
	width: 100%;
}

.sch_link .ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.sch_link .ttl dd{
	color: #fff;
	font-size:1.6rem; 
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	padding: 5px 0 0 10px;
}
.sch_link ul{
	display: block;
}
.sch_link ul a{
	display: block;
	background:url("../img/sch_bn_ico.png")no-repeat right 15px center #fff;
	background-size: 20px;
	padding: 15px;
}
.sch_link ul li{
	margin-bottom: 10px;
}
	.sch_link ul li:last-of-type{
	margin-bottom: 0px;
}
/*----------------------------------------
	instructor
-----------------------------------------*/
.instructor{
	padding:15% 0;
}
.instructor ul{
	display: grid;
  grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}
/*----------------------------------------
	footer
-----------------------------------------*/
footer{
	padding:7% 5% 100px 5%;
}
footer .footer_inner{
	padding:0;
}
footer .footer_inner .footer_info{
	display: block;
}
footer .footer_inner .footer_map{
	width: auto;
}
footer .footer_inner .footer_txt{
	width: auto;
	margin-top: 10%;
}
footer .footer_inner .footer_link{
	font-size: 13px;
	margin-top:25px;
	display: block;
}
footer .footer_inner .footer_link ul{
	display: block;
	margin-bottom:25px;
}

footer .footer_inner .footer_link a{
	display: block;
	padding:0 0 15px 0;
	margin:0 0 15px 0;
	border-right: none;
	border-bottom: 1px #fff solid;
}
footer .footer_inner .footer_link li:first-of-type a{
	padding:15px 0 15px 0;
	border-right: none;
	border-top: 1px #fff solid;
}

/*ページトップボタン*/
.page-top{
	display: block;
	position: fixed;
	right: 15px;
	bottom: 85px;
	z-index: 999;
}
.page-top img{
	width: 40px;
}
	
}/*解像度950px以下*/


/*media Queries スマートフォンサイズ（768px以下）で適応したいCSS - スマホ調整
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
	
.sp-only{
	display:block;
}
/*----------------------------------------
	title
-----------------------------------------*/
.cmn_ttl_en{
	font-size: 1.7rem;
	line-height: 1.5;
	letter-spacing: 0.3rem;
	background-size: 30px;
	padding: 60px 0 20px 0;
}
	
/*----------------------------------------
	main_visual
-----------------------------------------*/
.main_visual .main_ttl{
	margin:0 auto;
	padding:0 50% 7% 5%;
}
	
.main_visual .scroll{
	padding: 10% 0 0 15%;
	width: 8px;
}

/*----------------------------------------
	pilates_ex
-----------------------------------------*/

.pilates_ex ul {
	display: block;
	background: url("../img/pilates_ex_pic.png")no-repeat center top;
	background-size: 90%;
	padding: 70% 0 0 0;
}
.pilates_ex li{
	width: auto;
	margin-bottom: 10%!important;
}
.pilates_ex .r_contents{
	display: block;
}
.pilates_ex dl{
	width: auto;
}
.pilates_ex dt{
	font-size: 18px; 
	padding:0 0 20px 30px;
}
.pilates_ex .pilates_no01,
.pilates_ex .pilates_no02,
.pilates_ex .pilates_no03,
.pilates_ex .pilates_no04{
	background-size: 22px;
}
.pilates_ex dd{
	line-height: 1.8;
}

/*----------------------------------------
	reason
-----------------------------------------*/
.reason{
	margin:0 auto;
	position: relative;
	padding:12% 0 10% 0;
	background: url("../img/reason_bg.png")no-repeat top center;
}
.reason h3 {
	font-size: calc(22px + 20 * (100vw - 360px) / 840); 
}
.reason .reason_ttl {
	padding: 5% 0;
	text-align: center;
	margin: 0 auto;
}
.reason .reason-box {
	display: block;
}
.reason .rbox-left{
	width: auto;
	margin: 0 auto;
	text-align: center;
}
.reason .rbox-left img{
	width: 80%;
	margin: 0 auto;
	text-align: center;
}
.reason .rbox-right{
	width: auto;
}
.reason .even {
	margin:25% 0;
}
.reason .reason-cap{
	font-family: "Poppins", sans-serif;
	font-size: 1.2rem;
	letter-spacing: 0.2rem;
	background: url("../img/reason_line_sp.png")no-repeat center left;
	padding:20px 0 25px 65px;
	margin-top: 10px;
}
.reason .reason-cap em{
	font-weight: 700;
	display: inline-block;
	padding: 6px 0 0 2px;
}
.reason .reason-cap span{
	writing-mode:horizontal-tb;
	display: inline-block;
}

.reason .rbox-right dt{
	font-size: calc(18px + 7 * (100vw - 360px) / 840); 
	font-weight: 600;
	letter-spacing: 0.3em;
	margin: 3% 0;
	line-height: 1.5;
}
.reason .small{
	font-size: 1.1rem;
	margin-top: 20px;
}	
	
/*----------------------------------------
	price
-----------------------------------------*/
.price{
	padding:15% 0 20% 0;
}
.price .price-box{
	padding:10%;
}
.price .price-box{
	margin:0 auto;
	background: #ebd8d0;
	padding:10% 10%;
}
.price .price_cap{
	margin-bottom: 15px;
}
.price .price_cap span{
	letter-spacing: 0.1em;
	font-size: 1.2rem;
}
.price .price_cap em{
	margin-left: 10px;
	letter-spacing: 0.1em;
	font-size: 1.2rem;
}
.price dl{
	padding-bottom: 20px;
}
.price dt{
	font-size:2.0rem; 
	padding: 0;
	margin-right: 0;
	line-height: 2;
}
.price dd{
	line-height: 1.7;
	font-size:1.5rem; 
}
.price .course{
	margin-top: 20px;
}
.price .course .times{
	line-height: 1.5;
	padding: 10px 12px;
	margin-right: 20px;
	border-radius: 10px;
	font-size:1.5rem; 
}
.price .course .price-txt em{
	line-height: 1;
	font-size: calc(38px + 20 * (100vw - 360px) / 840); 
}
.price .course .price-txt{
	font-size: 1.4rem; 
	line-height: 1.5;
}

/*----------------------------------------
	schedule
-----------------------------------------*/
.schedule .class li{
	padding:7%;
}
.schedule .class .ttl{
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.schedule .class .ttl em{
	font-size: 13px;
	line-height: 1.2;
}
.schedule .class .ttl p{
	font-size: 20px;
}
.schedule .class dt{
	width: 65px;
}
.schedule .class .class_txt{
	padding-top: 10px;
	margin-top: 10px;
}	
.schedule .agency{
	padding: 20px 30px;
	margin-top: 7%;
}
.schedule .agency dd{
	font-size: 13px;
}
.schedule .table-slider{
	width: 100%;
 overflow-x: auto!important;
	margin:0;
}
.schedule .table-slider table{
	width: 900px;
}
.schedule .sch{
	margin-top: 13%;
}
.schedule .sch .ttl{
	margin-bottom: 15px;
}
.schedule .sch_btn_box{
	display: block;
}
.schedule .sch_btn{
	width: 90%;
	font-size: 16px;
	padding:20px 10px;
	margin-top: 7%;
}
.schedule .sch_st{
	font-size: 16px;
	line-height: 1.6;
	margin: 10% 0;
	padding: 20px;
}
/*----------------------------------------
	instructor
-----------------------------------------*/
.instructor{
	padding:15% 0 20% 0;
}
.instructor ul{
	display: block;
}
.instructor li{
	display: flex;
	align-items: center;
	padding: 0px;
	text-align: left;
	width: auto;
	margin-bottom: 10px;
}
.instructor .pic{
	width: 40%;
	padding: 15px;
}
.instructor li p{
	width: 60%;
	text-align: left;
	font-size: 15px;
}
	
/*----------------------------------------
	instagram
-----------------------------------------*/
.instagram{
	padding:5% 10%;
}
.instagram dt{
	font-size: 15px;
	margin-right: 20px;
}
.instagram dd{
	width: 40%;
}	
}/*解像度736px以下*/




