@charset "utf-8";


/*---------------------------------------------------------------------
content
---------------------------------------------------------------------*/
/* content */
#content{
	position:relative;
	margin:0 auto;
	padding-bottom:10px;
	width: 100%;
}

#bread-list { width: 100%; height: 30px; margin-top: 60px; background-color: #f9bfbf; padding: 4px; color: #fff; }
#bread-list li { float: left; font-size: 13px; }
#bread-list li a { color: #fff; text-decoration: underline; }

@media screen and (min-width:481px) and (max-width:768px) {
/* タブレット */
	#content { width: 100%; }
}
@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
#content { width: 100%; background-color: #fff; }
#bread-list { margin-top: 65px; }
}


/*---------------------------------------------------------------------
section common
---------------------------------------------------------------------*/

* { box-sizing: border-box; }

body { font-family: sans-serif; }

.section_group{
	padding-top:90px;
	text-align:center;
	position:relative;
}
.section_group h2{
	padding-bottom:15px;
}
.section_group h3{
	padding-bottom:30px;
}
.desc_group{
	/*border:1px solid #f00;*/
	font-size:13px;
	text-align:left;
	line-height:1.7;
	margin:0 auto;
}
.desc_icon_left{
	position:absolute;
	display:block;
	top:0;
	left:0;
}
.desc_icon_right{
	position:absolute;
	display:block;
	top:0;
	right:0;
}
.linkbtn_wrap{
	padding-bottom:25px;
}
.linkbtn{
	width:401px;
	height:65px;
	margin:0 auto;
}
.section { width: 1100px; text-align: center; }
.section h2 { padding-bottom: 17px; }
.section h3 { padding-bottom: 40px; }

a.opa:hover { 
text-decoration: underline;
}
.opa:hover { 
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.red { color: #fb4771; }

#header_wrap #header_inner h1 { width: 100%; font-weight: normal; padding: ; text-align: center; font-size: 12px; }


@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
.section { width: 100%; }
#header_wrap #header_inner h1 { padding: 0; font-size: 10px; }

}

/*---------------------------------------------------------------------
section01
---------------------------------------------------------------------*/

.section01 { width: 1024px; margin: 0 auto; padding-top: 50px; }


@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
.section01 { width: 100%; padding-top: 30px; }
.section01 h3 { margin-bottom: 15px; }
.section01 h3 img { width: ; }

}
/*---------------------------------------------------------------------
schedule
---------------------------------------------------------------------*/
.section01#schedule h3 { margin-bottom: 30px; }
.section01#schedule h3 img { width: 197px; }
.tab-group{
	display: flex;
    justify-content: center;
    width: 840px;
    height: 120px;
    margin: 0 auto;
}
.tab{
line-height: 1.5em;
    padding:5px;
    list-style:none;
    background: #CCC;
    color: #fff;
    text-align:center;
    cursor:pointer;
    width: 100px;
    height: 100px;
    float: left;
    margin: 0 10px;
    border-radius: 50px;
    padding-top: 30px;
}
.panel-group{
    background:#eee;
}
.panel{
    display:none; padding: 5px 5px 0 10px;
}
.tab.is-active{
    background:#f9bfbf;
    transition: all 0.2s ease-out; 
}
.panel.is-show{
    display:block;
}
.panel .date { width: 100%; text-align: left; margin-bottom: 10px; }

.shedule-wrap .carousel-cell {
  width: 24%;
  position: relative;
  background: #fff;
  margin-right: 1%;
  margin-bottom: 20px;
  border-radius: 5px;
  counter-increment: carousel-cell;
  overflow: hidden;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.4); 
  float: left;
}
.shedule-wrap .carousel-cell .img-sum { width: 100%; height: 250px; }
.shedule-wrap .carousel-cell .img-sum img { width: 100%; height: 100%; object-fit: cover; }
.shedule-wrap .carousel-cell .text-name { width: 100%; text-align: left; line-height: 1.3em; padding: 5px 0 0 5px; }
.shedule-wrap .icons { position: absolute; top: 10px; text-align: left; }
.shedule-wrap .icons img { opacity: .8; }
.shedule-wrap .icons .newface { width: 50px; }
.shedule-wrap .icons .now-ok { width: 82px; }
.shedule-wrap .price span { font-weight: bold; font-size: 16px; }

@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
.tab-group{
    width: 100%;
    height: 60px;
}
.tab{
    padding:0;
    width: 46px;
    height: 46px;
    margin: 0 1px;
    border-radius: 50%;
    padding-top: 8px; font-size: 11px;
}

.shedule-wrap .carousel-cell {
  width: 47%;
  margin-right: 3%;
}
.shedule-wrap .carousel-cell .img-sum { height: 200px; }

}

/*---------------------------------------------------------------------
trainer
---------------------------------------------------------------------*/
#pageTrainer .section01#schedule h3 { margin-bottom: 10px; }
#pageTrainer .section01#schedule h3 img { width: 154px; }
#pageTrainer .panel-group{ background: none; }
#pageTrainer .panel{ padding-left: 10px; margin-top: 30px; }
.squeeze { padding: 5px;
    background: #eee;
    width: 150px;
    margin: 0 auto;
    border-radius: 20px;
    margin-bottom: 0; border: 1px solid #ccc; cursor: pointer; }
.search-box { display: none; width: 95%; border: 1px solid #ccc; border-radius: 5px; margin: 10px auto; }
#pageTrainer .tag_wrap { background-color: #fff; margin-top: 10px; }
#pageTrainer .search1 { margin-bottom: 15px; }
#pageTrainer .search1 label { font-size: 15px; margin-right: 15px; }

/*---------------------------------------------------------------------
profile
---------------------------------------------------------------------*/
#pageProfile .section01 { width: 1024px; margin: 0 auto; }
#pageProfile .section01 .profile1 { width: 100%; }
#pageProfile .section01 .profile1 .profile-left { width: 50%; float: left; }
#pageProfile .section01 .profile1 .profile-right { width: 50%; float: left; padding-left: 20px; text-align: center; }
#pageProfile .section01 #bxslider01 { display: block; height: 400px; }
#pageProfile .section01 #bxslider01 div img { width: 100%; object-fit: contain; height: 400px; background-color: #f8f8f8; }
#pageProfile .section01 #bx_pager { width: 100%; }
#pageProfile .section01 #bx_pager a { display: block; width: 20%; float: left; height: 100px; overflow: hidden; border: 1px solid #fff; }
#pageProfile .section01 #bx_pager a img { width: 100%; object-fit: contain; height: auto; background-color: #f8f8f8;  }
#pageProfile .section01 .profile1 .profile-right .otsto-name { width: 100%; text-align: left; font-size: 18px; font-weight: bold; padding-left: 60px; line-height: 1.5em; }
#pageProfile .section01 .profile1 .profile-right .otsto-name .otsto-size { font-size: 15px; font-weight: normal; padding-left: 20px; }
#pageProfile .section01 .profile1 .profile-right .otsto-name .otsto-age { font-size: 15px; font-weight: normal; padding-left: 20px; }
#pageProfile .section01 .profile1 .profile-right .otsto-price { width: 100%; text-align: left; padding-left: 62px; }
#pageProfile .section01 .profile1 .profile-right .otsto-price span { font-weight: bold; font-size: 16px; }
#pageProfile .img-icon { width: 52px; height: 52px; overflow: hidden; border-radius: 26px; float: left; }
#pageProfile .img-icon img { width: 100%; height: 100%; object-fit: cover; }
#pageProfile .section01 .profile1 .profile-right h2 { width: 100%; padding: 5px; font-weight: normal; background-color: #f5d3d3; color: #fff; margin-top: 10px; font-size: 16px; }
#pageProfile .section01 .profile1 .profile-right .otsto-comment { text-align: left; padding: 10px 0; }
#pageProfile .section01 .profile1 .profile-right .tag_wrap { margin-top: 10px; padding: 0; background-color: #fff; }
#pageProfile .section01 .profile1 .profile-right .tag_wrap span { display: none; }
#pageProfile .section01 .profile1 .profile-right .tag_wrap span.active { display: block; }
#pageProfile .section02 { width: 1024px; margin: 80px auto 0 auto; }
#pageProfile .section02#schedule h3 img { width: 197px; }
#pageProfile .section02 .notice-text { font-size: 13px; }
#pageProfile .section02 .last-up { font-size: 13px; color: #999; }
#pageProfile .section02 .sche-wrap { width: 100%; border: 1px solid #666; height: 90px; margin-top: 20px; }
#pageProfile .section02 .day-wrap.even { border-right: 1px solid #666; border-left: 1px solid #666; }
#pageProfile .section02 .sche-wrap .day-wrap { width: 14.28%; float: left; }
#pageProfile .section02 .sche-wrap .day-wrap .date { width: 100%; text-align: center; background-color: #eee; padding-top: 2px; height: 30px; border-bottom: 1px solid #666; }
#pageProfile .section02 .sche-wrap .day-wrap .day-sche { width: 100%; text-align: center; height: 60px; padding-top: 2px; }
#pageProfile .section02 .sche-wrap .day-wrap .day-sche a { color: #04c; }

#pageProfile .section03 { width: 1024px; margin: 0 auto; padding-top: 80px; }
#pageProfile .section03 h3 { margin-bottom: 30px; }
#pageProfile .section03 h3 img { width: 156px; }
#pageProfile .tweet-wrap { width: 632px; margin: 0 auto; border-top: 1px solid #ccc; }
#pageProfile .tweet-wrap .tweet-innner { width: 100%; border-bottom: 1px solid #ccc; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header { width: 100%; padding: 10px 10px 0 10px; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .img-icon { width: 52px; height: 52px; overflow: hidden; border-radius: 26px; float: left; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .img-icon img { width: 100%; height: 100%; object-fit: cover; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .name-time { float: left; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .name-time .tweet-name { font-weight: bold; text-align: left; padding-left: 10px; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .tweet-like { float: right; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .tweet-like img { width: 18px; margin-right: 5px; position: relative; top: 3px; }
#pageProfile .tweet-wrap .tweet-innner .tweet-header .tweet-like .like-num.active { color: #f8848a; }
#pageProfile .tweet-wrap .tweet-innner .tweet-body { width: 100%; padding-left: 74px; text-align: left; }
#pageProfile .tweet-wrap .tweet-innner .tweet-body .tweet-img img { width: 100%; }

.career_title {font-weight: 900; color: #E96212; font-size: 18px;}
.career ul {border: solid 0px skyblue; border-radius: 5px; padding: 0.5em 1em 0.5em 2.3em; position: relative;}
.career ul li {line-height: 1.5; padding: 0.5em 0; list-style-type: none!important; border-bottom: dashed 1px #E96212;}

.career ul li:before {font-family: "Font Awesome 5 Free"; content: "\f138";/*アイコンの種類*/ position: absolute; left : 1em;/*左端からのアイコンまでの距離*/ color: #E96212;/*アイコン色*/
}

.text__icon {
  vertical-align: middle;
}
.text__link {
  vertical-align: middle;
	font-size: 12px; font-weight: 100 !important;
	color:#B13200;
}

.text__link:hover {text-decoration: underline;}

#modal{
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.7);
}
#modal_content{
  max-width:500px;
	width: 100%;
  background:#fff;
  margin:25% auto;
  padding:10px;
  position:relative;
  animation:animatetop 0.4s;
	text-align: left;
	font-size: 12px;
}
@keyframes animatetop{
  from{top:-300px;opacity:0}
  to{top:0;opacity:1}
}


@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
#pageProfile .section01 { width: 100%; }
#pageProfile .section01 .profile1 .profile-left { width: 100%; float: none; }
#pageProfile .section01 .profile1 .profile-right { width: 100%; float: none; padding: 30px 5px 0 5px; }
#pageProfile .section01 .profile1 .profile-right .otsto-name .otsto-size { padding-left: 2px; }
#pageProfile .section02 { width: 100%; margin: 50px auto 0 auto; padding: 0 5px; }
#pageProfile .section02 .sche-wrap { width: 100%; border: 1px solid #666; height: 210px; margin-top: 10px; }
#pageProfile .section02 .sche-wrap .day-wrap { width: 100%; float: none; }
#pageProfile .section02 .sche-wrap .day-wrap .date { width: 30%; float: left; text-align: center; padding-top: 5px; height: 30px; border none; }
#pageProfile .section02 .sche-wrap .day-wrap .day-sche { width: 70%; float: left; text-align: center; height: 30px; padding-top: 5px;  border-bottom: 1px solid #666; }
#pageProfile .section02 .sche-wrap .day-wrap .day-sche.last { border-bottom: none; }
#pageProfile .section02 .sche-wrap .day-wrap .day-sche p { width: 50%; float: left; }
#pageProfile .section03 { width: 100%; padding-top: 50px; }
#pageProfile .section03 h3 { margin-bottom: 15px; }
#pageProfile .tweet-wrap { width: 98%; margin: 0 auto; }

.career_title {font-weight: 900; color: #E96212; font-size: 16px; text-align: center;}
	#modal_content{
  margin:45% auto;
}

}


/*---------------------------------------------------------------------
system
---------------------------------------------------------------------*/
#pageSystem .section01#schedule h3 { margin-bottom: 10px; }
#pageSystem .section01#schedule h3 img { width: 154px; }
#pageSystem .price { width: 800px; margin: 30px auto; }
#pageSystem .price table { width: 100%; border: 1px solid #666; margin-bottom: 15px; }
#pageSystem .price table th { width: 40%; text-align: left; vertical-align: middle; font-weight: normal; background-color: #666; color: #fff; padding: 10px; border: 1px solid #fff; }
#pageSystem .price table td { width: 60%; text-align: right; vertical-align: middle; padding: 10px; border: 1px solid #666; }
#pageSystem .price .about-price { text-align: left; padding: 10px; background-color: #fbf5f5; }
#pageSystem .price table.table-left td { text-align: left; }
#pageSystem .section02 { margin: 60px auto 0 auto; width: 800px; }
#pageSystem .section02 h3 { font-size: 16px; }
#pageSystem .pay-btn { width: 100%; text-align: left; position: relative; }
#pageSystem .pay-btn:after {content: '';
    position: absolute;
    top: 14px;
    right: 1.3%;
    margin: 0 0 0 -4px;
    width: 0;
    height: 0;
    border-right: 10px solid transparent;
    border-top: 10px solid #efb9b9;
    border-left: 10px solid transparent;}
    
#pageSystem .pay-btn.active:after {    content: '';
    position: absolute;
    top: 3px;
    right: 1.3%;
    margin: 0 0 0 -4px;
    width: 0;
    height: 0;
    border-bottom: 10px solid #efb9b9;
    border-right: 10px solid transparent;
    border-top: 10px solid transparent;
    border-left: 10px solid transparent;}
#pageSystem .squeeze { border-radius: 0; border: none; margin-top: 10px; }
#pageSystem .pay-btn span { display: inline-block; width: 20px; height: 20px; line-height: 20px; background-color: #ef8c8c; border-radius: 100%; color: #FFFFFF; text-align: center; margin-right: 0.5em; font-size: 15px; }
#pageSystem .pay-method { display: none; padding: 0 10px; border-bottom: 1px dotted #ccc; padding-bottom: 10px; }
#pageSystem .section02 .pay-inner-title { width: 100%; text-align: left; font-size: 16px; border-bottom: 1px solid #ccc; margin-top: 20px; }
#pageSystem .section02 .pay-inner-title span { border-bottom: 2px solid #ef8c8c; }
#pageSystem .section02 .pay-text { text-align: left; padding-top: 5px; }
#pageSystem .section02 .card-flow { width: 96%; margin: 0 2%; background-color: #eee; padding: 10px; margin-top: 30px; }
#pageSystem .section02 .card-flow .pay-inner-title { border-bottom: 1px solid #ccc; margin-top: 0; }
#pageSystem .section02 .card-flow .pay-inner-title span { border-bottom: 2px solid #fdc154; }
#pageSystem .section02 .card-flow .bold { font-weight: bold; }
#pageSystem .section02 .btn-pay a { display: block; padding: 15px; margin: 20px auto; background-color: #90d4ab; color: #fff; width: 50%; border-radius: 5px; }
#pageSystem .section02 .paypal { margin: 10px auto 30px auto; }
#pageSystem .section03 { margin: 60px auto 0 auto; width: 800px; }
#pageSystem .section03 h3 { font-size: 16px; }
#pageSystem .section03 h5 { text-align: left; font-size: 16px; font-weight: bold; padding-bottom: 10px; }
#pageSystem .section03 .rule { margin-top: 30px; }
#pageSystem .section03 ul { margin-bottom: 40px; }
#pageSystem .section03 li { border-bottom: #ccc dotted 1px; margin-bottom: 10px; text-align: left; position: relative; padding-left: 1.5em; margin-bottom: 5px; }
#pageSystem .section03 li::before {
    position: absolute;
    top: 1px;
    left: 0;
    content: "×";
    width: 10px;
    height: 10px;
    line-height: 20px;
    border-radius: 100%;
    font-size: 14px;
    font-weight: bolder;
    color: #FF4444;
    text-align: center; }
#pageSystem .section03 a { color: #09f; }

@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
#pageSystem .price { width: 96%; margin: 10px auto; }
#pageSystem .section02 { margin-top: 30px; }
#pageSystem .section02 { margin: 30px auto 0 auto; width: 96%; }
#pageSystem .section02 .btn-pay a { width: 90%; }
#pageSystem .section03 { margin: 30px auto 0 auto; width: 96%; }
}

/*---------------------------------------------------------------------
mypage
---------------------------------------------------------------------*/
#pageMypage .section01#schedule h3 { margin-bottom: 10px; }
#pageMypage .section01#schedule h3 img { width: 154px; }
#pageMypage .profile { width: 100%; }
#pageMypage .profile .prof-photo { width: 100px; height: 100px; margin: 0 auto; overflow: hidden; border-radius: 50px; object-fit: cover; }
#pageMypage .profile .prof-photo img { width: 100%; }
#pageMypage .profile .edit-wrap { width: 100px; margin: 0 auto; }
#pageMypage .profile .icon-edit { position: relative; width: 30px; height: 30px; border-radius: 15px; left: 70px; top: -20px; cursor: pointer; }
#pageMypage .profile .icon-edit img { width: 100%; }
#pageMypage .profile .nickname { font-weight: bold; position: relative; top: -15px; }
#pageMypage .section02 { width: 800px; margin: 0 auto; }
#pageMypage .section02 .mycontents { display: block; width: 48%; float: left; position: relative; border-bottom: 1px dotted #ccc; text-align: left; display: flex; align-items: center; padding: 10px 0; margin-right: 2%; }
#pageMypage .section02 .mycontents img { width: 26px; }
#pageMypage .section02 .mycontents span { padding-left: 10px; }
#pageMypage .section02 .mycontents .myarrow { float: right; text-align: right; position: absolute; right: 10px;}

@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
#pageMypage .section02 { width: 96%; margin: 0 auto; }
#pageMypage .section02 .mycontents { width: 100%; }

}

/*---------------------------------------------------------------------
recruit
---------------------------------------------------------------------*/
#pageRecruit .section01 { width: 1024px; padding-top: 0; }
#pageRecruit .section01 img { width: 100%; vertical-align: top; }

@media screen and (min-width:0px) and (max-width: 480px) {
/* スマホ */
#pageRecruit .section01 { width: 100%; }
}



