@charset "utf-8";

::-webkit-scrollbar {
      display: none;
      -webkit-appearance: none;
}

h1{
	height:0px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

.list_cont ul {
  width: 65%;
  margin: 3% auto;
}
.list_cont ul li {
  display: flex;
  border-bottom: solid 0.5px #C0C0C0;
  padding: 2% 0;
}
.list_cont ul li p {
  line-height: 45px;
}
.list_cont ul li p:first-child {
  width: 20%;
}
.list_cont ul li p:last-child {
  width: 80%;
}





/*--keyvisual--*/
#keyvisual {
  position: relative;
  z-index: 0;
}
#keyvisual:before{
  position: absolute;
  top: 8%;
  right: 5%;
  content: 'Commit!!';
  font-size: 100px;
  z-index: 1;
  font-family: 'canvas';
  font-weight: bold;
}
#keyvisual .keytext{
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70%;
  transform: translate(-50%,-50%);
  font-size: 23px;
  z-index: 1;
  font-weight: bold;
}
#keyvisual .keytext p{
  display: inline-block;
  background-color: #ffe400;
  padding: 0 3%;
}
#keyvisual .keytext p:last-child {
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 10px auto 0;
}
#keyvisual .keytext p:last-child b {
  margin-right: 5px;
}
#keyvisual .keytext span{
  font-size: 49px;
}
#keyvisual ul {
  overflow: hidden;
}
#keyvisual ul li {

}
#keyvisual ul li a {

}
#keyvisual ul li a img {
  vertical-align: bottom;
}

/*--keyvisual--*/








#cont {
  padding: 3% 15%;
}

.price {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1% 0 3%;
}
.price p {
  color: #d2ae5d;
}
.price p:first-child {
  font-weight: bold;
}
.price p:nth-child(2){
  font-size: 92px;
  font-family: serif;
  padding: 0 1% 0 3%;
}
.price p:last-child {
  font-size: 23px;
  line-height: 40px;
}
.price p:last-child span {
  font-size: 46px;
  font-weight: bold;
}


.menu {
  display: flex;
  justify-content: space-between;
}
.menu li {
  width: 31%;
}
.menu li .img_block {
  background-size: cover;
  background-position: center;
  height: 350px;
}
.menu li .img_block p {
  position: relative;
  text-align: center;
  padding-top: 2%;
  background-color: #5c7469;
  font-weight: bold;
  color: #fff;
  line-height: 40px;
}
.menu li:nth-child(2) .img_block p{
  line-height: 20px;
}
.menu li .img_block p b {
  position: absolute;
  border-top: 25px solid #5c7469;
  border-right: 140px solid transparent;
  border-left: 145px solid transparent;
  bottom: -25px;
  left: 0;
  width: -webkit-fill-available;
}
.menu li .comment {
  padding: 4% 0;
  color: #5c7469;
}




.link_btn {
  width: 30%;
  display: block;
  margin: 5% auto;
  background-color: #9a9a9a;
  text-align: center;
  font-weight: bold;
  padding: 1% 6% 1% 3%;
  color: #fff;
  border-radius: 1000px;
  font-size: 19px;
}




.result_cont{
  padding: 3% 10% !important;
  background-color:#5c7469;
}
.result_cont .ttl_set {
  font-size: 39px;
  color: #fff;
}
.result_cont .ttl_set span {
  display: block;
  font-size: 19px;
  font-weight: normal;
  color: #fff;
}
.result_cont .ttl_set b {
  font-size: 27px;
  display: inline-block;
  font-weight: normal;
  font-family: serif;
  border-bottom: solid 1px;
}


.result_list {
  display: flex;
  justify-content: space-between;
  padding: 5% 0;
}
.result_list .imgblock {
  width: 54%;
  display: flex;
  justify-content: space-between;
}
.result_list .imgblock div {
  width: 49%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.result_list .imgblock div:last-child b {
  position: absolute;
  display: block;
  top: 50%;
  text-align: center;
  vertical-align: middle;
  right: -65px;
  width: 130px;
  height: 130px;
  background-color: #d2ae5d;
  border-radius: 1000px;
  color: #fff;
}
.result_list .imgblock div:last-child b span {
  line-height: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  font-size: 8px;
}
.result_list .imgblock div:last-child b span span {
  line-height: 140%;
  font-family: serif;
  letter-spacing: -3px;
  font-size: 50px;
  position: initial;
}
.result_list .imgblock div p {
  color: #fff;
  text-align: center;
  padding-top: 3%;
  text-align: center;
  width: 100%;
  letter-spacing: 3px;
}
.result_list .profile {
  width: 39%;
  color: #fff;
}
.result_list .profile b {
  background-color: #fff;
  color: #5c7469;
  padding: 2% 4%;
  border-radius: 1000px;
}

.result_list .profile .name {
  padding: 5% 1%;
}
.result_list .profile .name p {
  vertical-align: middle;
}
.result_list .profile .name p:first-child {
  display: inline-block;
  font-size: 33px;
}
.result_list .profile .name p:last-child {
  display: inline-block;
  font-size: 12px;
  padding-left: 3%;
}

.result_list .profile .result {
  padding: 2% 1%;
  display: flex;
}
.result_list .profile .result p {
  display: block;
  width: 25%;
  line-height: 40px;
}
.result_list .profile .result p:first-child{
  letter-spacing: 2px;
}
.result_list .profile .result p:last-child{
  font-family: serif;
  font-size: 25px;
}

.result_list .profile .result_set1 {
  border-bottom: solid 1px #f8f8f8;
}

.resultarrow1,
.resultarrow2 {
  width: 40px;
  height: 40px;
  /* border: solid 2px #fff; */
  position: absolute;
  border-right: solid 2px #fff;
  border-bottom: solid 2px #fff;
  top: 50%;
}
.resultarrow1 {
  left: -5%;
  transform: rotate(135deg);
}
.resultarrow2 {
  right: -5%;
  transform: rotate(-45deg);
}







.promise1 {
  position: relative;
  padding-top: 5%;
  margin-top: 8%;
}
.promise1 img {
  width: 57%;
}
.promise1 div {
  position: absolute;
  width: 34%;
  padding: 8% 4% 4% 8%;
  top: 0;
  right: 0;
  background-color: rgba(92, 116, 105, .5);
}
.promise1 div:after {
  position: absolute;
  content: 'Training';
  font-family: 'canvas';
  font-size: 70px;
  top: 0;
  right: 5%;
  line-height: 0px;
  color: #5c7469;
}
.promise1 div b {
  font-size: 28px;
  font-weight: normal;
}
.promise1 div p{
  display: block;
}



.promise2 {
  position: relative;
  padding-bottom: 5%;
  margin-top: 8%;
}
.promise2 img {
  width: 57%;
  margin-left: auto;
  display: block;
}
.promise2 div {
  position: absolute;
  width: 34%;
  padding: 8% 8% 4% 4%;
  bottom: 0;
  left: 0;
  background-color: rgba(92, 116, 105, .5);
}
.promise2 div:after {
  position: absolute;
  content: 'Esthe';
  font-family: 'canvas';
  font-size: 70px;
  top: 0;
  left: -15%;
  line-height: 0px;
  color: #5c7469;
}
.promise2 div b {
  font-size: 28px;
  font-weight: normal;
}
.promise2 div p{
  display: block;
}



.promise3 {
  position: relative;
  padding-bottom: 5%;
  margin-top: 8%;
}
.promise3 img {
  width: 57%;
}
.promise3 div {
  position: absolute;
  width: 34%;
  padding: 8% 4% 4% 8%;
  bottom: 0;
  right: 0;
  background-color: rgba(92, 116, 105, .5);
}
.promise3 div:after {
  position: absolute;
  content: 'Health';
  font-family: 'canvas';
  font-size: 70px;
  top: 0;
  right: 5%;
  line-height: 0px;
  color: #5c7469;
}
.promise3 div b {
  font-size: 28px;
  font-weight: normal;
}
.promise3 div p{
  display: block;
}



.select_cont {
  padding: 3% 0 0!important;
}
.select_cont h2 {
  justify-content: center;
  font-size: 39px;
  align-items: center;
  display: flex;
}
.select_cont h2 b {
  font-size: 130px;
  line-height: 130px;
  color: #5c7469;
  font-family: 'canvas';
  padding: 0 2%;
}
.select_cont h2 p:first-child {
  position: relative;
}
.select_cont h2 p:first-child:before{
  content: 'POINT';
  letter-spacing: 2px;
  position: absolute;
  line-height: 12px;
  color: #5c7469;
  top: -25%;
  right: -2%;
  font-size: 12px;
}


.select_list {
  display: flex;
  flex-wrap: wrap;
}
.select_list li {
  width: 25%;
  background-size: cover;
  background-position: center;
}
.select_list li div {
  background-color: rgba(92, 116, 105, .7);
  color: #fff;
  text-align: center;
  padding: 10% 0;
}
.select_list li div b {
  background-color: #fff;
  color: #5c7469;
  padding: 2% 7%;
  border-radius: 1000px;
  font-size: 12px;
}
.select_list li div img {
  width: 13%;
  display: block;
  margin: 15px auto;
}
.select_list li div p {
  font-size: 12px;
}
.select_list li div p span {
  font-size: 25px;
  font-weight: bold;
}









.free_cont {
  background-color: #e1eee8;
  padding: 5% 15% !important;
}
.free_cont h4 {
  color: #5c7469;
  text-align: center;
  font-size: 25px;
}
.free_cont h4 span {
  display: block;
  text-align: center;
  font-size: 33px;
}
.free_cont h4 b {
  display: block;
  text-align: center;
  font-size: 70px;
  color: #d2ae5d;
}

.free_cont h3 {
  color: #5c7469;
  text-align: center;
  font-size: 25px;
}
.free_cont h3 b {
  display: block;
  text-align: center;
  font-size: 33px;
  color: #d2ae5d;
}

.free_list {
  display: flex;
  justify-content: space-between;
  margin: 5% 0;
}
.free_list li {
  width: 15%;
}
.free_list li b {
  display: block;
  width: 100%;
  height: 130px;
  border-radius: 1000px;
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
  border: solid 2px #889891;
  background-color: #fff;
}
.free_list li p {
  text-align: center;
  color: #5c7469;
  padding-top: 5%;
}







.navi_cont {
  padding: 7% !important;
}
.navi_cont ul {
  display: flex;
  justify-content: space-between;
  margin-top: 5%;
}
.navi_cont ul li {
  width: 48%;
}
.navi_cont ul li p {
  padding-top: 3%;
  color: #5c7469;
}
.navi_cont ul li p b {
  display: block;
  font-size: 27px;
  color: #c4b856;
}
.navi_cont ul li p span {
  font-size: 22px;
  font-family: 'Noto Sans', sans-serif;
  margin-top: 10px;
  display: inline-block;
}












.picup_cont {
  padding: 7% 3% !important;
  background-image: url('../img/top/bk.png');
  background-size: cover;
  background-position: center;
}
.picup_cont .ttl_set {
  font-size: 39px;
  color: #fff;
}
.picup_cont .ttl_set span {
  display: block;
  font-size: 19px;
  font-weight: normal;
  color: #fff;
}
.picup_cont .ttl_set b {
  font-size: 27px;
  display: inline-block;
  font-weight: normal;
  font-family: 'canvas';
  border-bottom: solid 1px;
}

.picup_cont ul {
  background-color: rgba(92, 116, 105, .5);
  margin-top: 3%;
}
.picup_cont ul li {
  display: flex;
}
.picup_cont ul li p {
  width: 10.875%;
  text-align: center;
  font-size: 12px;
  padding: 2% 0;
  color: #fff;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
}
.picup_cont ul li p:first-child {
  width: 13%;
  font-size: 16px;
  position: relative;
}
.picup_cont ul li p:first-child b {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  font-weight: normal;
}
.picup_cont ul li p:last-child {
  border-right: none;
}
.picup_cont ul li:last-child p {
  border-bottom: none;
}
.picup_cont ul li p img {
  width: 35%;
  display: block;
  margin: 0 auto 10px;
}





.flow_cont {
  padding: 7% !important;
}
.flow_cont ul {
  display: flex;
  margin-top: 7%;
  align-items: center;
}
.flow_cont li:first-child,
.flow_cont li:nth-child(3),
.flow_cont li:last-child {
  width: 26%;
}
.flow_cont li:nth-child(2),
.flow_cont li:nth-child(4) {
  width: 11%;
  position: relative;
}

.flow_cont li:nth-child(2) b,
.flow_cont li:nth-child(4) b{
  position: absolute;
  width: 30%;
  border-right: solid 2px #5c7469;
  border-bottom: solid 2px #5c7469;
  display: block;
  margin: 0 auto;
  top: 50%;
  left: 40%;
  transform: translate(-50%,-50%) rotate(-45deg);
}


.flow_cont li {
  position: relative;
}
.flow_cont li div {
  position: absolute;
  display: block;
  line-height: 22px;
  text-align: center;
  top: -13px;
  width: 100%;
}
.flow_cont li div b {
  display: inline-block;
  background-color: #5c7469;
  color: #fff;
  font-size: 20px;
  letter-spacing: 2px;
  padding: 3% 6%;
  border-radius: 8px;
}
.flow_cont li p {
  color: #5c7469;
}
.flow_cont li p span {
  display: block;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 3%;
}

@media  (max-width: 768px) {
.btn-wrap-pc {
    position: absolute;
    bottom: -24%;
}
#keyvisual .keytext {
    font-size: 18px;
}
#keyvisual .keytext span {
    font-size: 24px;
}
#keyvisual:before {
    font-size: 28px;
}
a.btn-c {
    font-size: 1rem;
    padding: 0 4rem 1rem 4rem;
}
a.btn-c span {
    font-size: .5rem;
    position: absolute;
    top: -10px;
    left: calc(50% - 100px);
    display: block;
    width: 200px;
    padding: 0.2rem 0;
    color: #e6767e;
    border: 2px solid #e6767e;
    background: #fff;
}
@media (max-width: 480px) {

#cont {padding: 8%;}

.list_cont ul {
    width: 100%;
    margin: 5% auto;
}
.list_cont ul li {padding: 4% 0;}
.list_cont ul li p {line-height: 30px;}
.list_cont ul li p:first-child {width: 25%;}
.list_cont ul li p:last-child {width: 75%;}

main#top_setting {overflow: auto;}
.special_cont {padding: 0 !important;}
.special_cont h2 {padding: 8% 8% 0;}
.special_cont .price {padding: 0 8%;}
#keyvisual .keytext {
    width: 98%;
}
#keyvisual:before {display: none;}
#keyvisual .keytext p {
    display: inline-block;
    background-color: #ffe400;
    padding: 0 3%;
    font-size: 15px;
}
#keyvisual .keytext p:last-child {
    margin: 3px auto 0;
}
#keyvisual .keytext span {
    font-size: 23px;
}
.price p:nth-child(2) {font-size: 50px;}
.price p:last-child {
    font-size: 10px;
    line-height: 20px;
}
.price p:last-child span {font-size: 22px;}

.font-gothic {
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
.sp_scroll {
  overflow-x: scroll;
  padding: 4% 0 0 8%;
}
.menu {
    width: 300%;
    justify-content: flex-start;
}
.menu li {
    width: 27%;
    margin-right: 3%;
}
.menu li .img_block p {
    font-size: 16px;
}
.menu li .img_block {
    height: 300px;
}
.link_btn {
    width: 60%;
    padding: 2% 6% 2% 3%;
    font-size: 11px;
}

.result_list .imgblock div {
  flex-direction: column-reverse;
}


.result_cont {padding: 8% 10% 3% 10% !important;}
.result_cont .ttl_set span {font-size: 12px;}
.result_cont .ttl_set {font-size: 22px;}
.result_cont .ttl_set b {font-size: 16px;}
.result_list {display: block;}
.result_list .imgblock {width: 100%;}
.result_list .imgblock div:last-child b {
    right: 0px;
    width: 70px;
    height: 70px;
    top: inherit;
    bottom: 0;
}
.result_list .imgblock div:last-child b span {font-size: 8px;}
.result_list .imgblock div:last-child b span span {
    font-size: 27px;
    letter-spacing: -2px;
}
.result_list .profile {
  width: 100%;
  margin-top: 5%;
}
.result_list .profile b {font-size: 11px;}
.result_list .profile .name p:first-child {font-size: 25px;}
.result_list .profile .name p:last-child {font-size: 10px;}
.result_list .profile .result {
  padding: 0;
  display: inline-block;
  width: 44%;
}
.result_list .profile .result p:first-child {
    display: block;
    width: 100%;
}
.result_list .profile .result p {
    display: inline-block;
    width: 47%;
}
.result_list .profile .result p:last-child {font-size: 15px;}
.result_list .profile .result_set1 {
    border-right: solid 0.5px #e0e0e0;
    border-bottom: none;
    padding-right: 3%;
}
.result_list .profile .result_set2 {
    padding-left: 5%;
}

.resultarrow1, .resultarrow2 {
    width: 25px;
    height: 25px;
    top: 30%;
}
.resultarrow1 {left: -8%;}
.resultarrow2 {right: -8%;}


.promise1 {
    padding-bottom: 40%;
    margin-top: 8%;
}
.promise1 div {
    bottom: 0;
    right: 0;
    top: auto;
    padding: 15% 5% 5%;
}
.promise2 {
    padding-bottom: 40%;
    margin-top: 8%;
}
.promise2 div {
    bottom: 0;
    right: 0;
    top: auto;
    padding: 15% 5% 5%;
}

.promise3 {
    padding-bottom: 40%;
    margin-top: 8%;
}
.promise3 div {
    bottom: 0;
    right: 0;
    top: auto;
    padding: 15% 5% 5%;
}

.promise1 img,
.promise2 img,
.promise3 img {
    width: 85%;
    margin-bottom: 4%;
}

.promise1 div,
.promise2 div,
.promise3 div {
    width: 80%;
}

.promise1 div{
    bottom: 0;
    right: 0;
}
.promise2 div{
}
.promise3 div{
}

.promise1 div:after,
.promise2 div:after,
.promise3 div:after {
    font-size: 50px;
    top: 0px;
}

.promise2 div:after {
    left: 5%;
}

.promise1 div b,
.promise2 div b,
.promise3 div b {
    font-size: 16px;
}



.select_cont h2 p {
    font-size: 20px;
}
.select_cont h2 b {
    font-family: auto;
    display: flex;
    justify-content: center;
}
.select_cont h2 span {
    display: inline-block;
    font-size: 20px;
    line-height: 70px;
    color: #000;
}
.select_cont h2 span.eight{
    display: inline-block;
    font-size: 64px;
    font-family: 'canvas';
    color: #5c7469;
    position: relative;
}
.select_cont h2 span.eight:before{
    content: 'POINT';
    letter-spacing: 2px;
    position: absolute;
    line-height: 12px;
    color: #5c7469;
    top: 10%;
    left: -100%;
    font-size: 7px;
    font-family: Hiragino Kaku Gothic ProN;
}
.select_cont h2 p:first-child:before {
    display: none;
}





.select_list {
    margin-top: 3%;
}
.select_list li {
    width: 50%;
}
.select_list li div img {
    width: 20%;
    display: block;
    margin: 10px auto;
}
.select_list li div p {
    font-size: 10px;
}
.select_list li div p span {
    font-size: 15px;
}




.free_cont {
    background-color: #e1eee8;
    padding: 5% 8% !important;
}
.free_cont h4 {
    font-size: 12px;
}
.free_cont h4 span {
    font-size: 16px;
}
.free_cont h4 b {
    font-size: 35px;
}

.free_list {
    flex-wrap: wrap;
    justify-content: center;
}

.free_list li {
    width: 23%;
    margin: 0 5%;
}
.free_cont h3 {
    font-size: 12px;
}
.free_cont h3 b {
    font-size: 19px;
}









.navi_cont ul {
    display: block;
}
.navi_cont ul li {
    width: 100%;
    padding: 5% 0;
}
.navi_cont ul li:last-child{
    border-top: solid 1px #ddd;
}
.navi_cont ul li p {
    font-size: 11px;
}
.navi_cont ul li p b {
    font-size: 18px;
}
.navi_cont ul li p span {
    margin-top: 5px;
}






.picup_cont {
    padding: 0 !important;
}
.picup_cont .ttl_set {
    font-size: 20px;
    padding: 7% 3% 0;
}
.picup_cont .ttl_set span {
    font-size: 12px;
}
.picup_cont .sp_scroll {
    overflow-x: scroll;
    padding: 4% 0 10% 8%;
}
.picup_cont ul {
    width: 220%;
}
.picup_cont ul li p {
    font-size: 10px;
}
.picup_cont ul li p:first-child {
    font-size: 14px;
}
.picup_cont ul li p img {
    width: 35%;
    margin: 0 auto 10px;
}
	
.flow_cont .sponly {
    margin-bottom: 8%;
}
.flow_cont li:first-child,
.flow_cont li:last-child {
  width: 43%;
}
.flow_cont li:nth-child(2) {
  width: 14%;
}
.flow_cont li:nth-child(2) b, .flow_cont li:nth-child(4) b {
  height: 22px !important;
  width: 50%;
  left: 35%;
}
.flow_cont li p span {
    font-size: 12px;
}
.flow_cont li p {
    font-size: 10px;
}
.flow_cont li div b {
    font-size: 10px;
}








}
