@charset "UTF-8";
/* CSS Document */
html, body {
  margin: 0 auto;
  padding: 0;
  overflow-x: hidden;
}
* {
  box-sizing: border-box;
}
.bodycolor {
  background: #ffffff;
}
.body_width {
  max-width: 960px;
  margin: 0 auto;
  padding: 10px;
}


/*ニュース////////////////////////////////////////////////////////////////*/
.news_area {
  background-color: #ffffff;
}
.news_inner {
  margin: 0 auto;
  max-width: 420px;
}
.news_inner_container {
  display: inline-block;
  max-width: 420px;
  width: 100%;
  height: 607px;
  padding: 1em;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32); /*影*/
  overflow: scroll;
}
.unit {
  width: 100%;
}
/*コンテンツメーカーのスタイル変更　*/
div#news dl {
  border: #000000;
  margin-bottom: 1em;
}
div#news dt {
  font-size: 1.3rem;
  font-weight: 500;
  text-align: left;
  padding: 0.2em 0.2em 0.2em 1em;
  color: #707070;
  background-color: #f2f7e8;
}
div#news dl dd {
  text-align: left;
  font-size: 1.5rem;
  font-weight: 300;
  padding: 0.5em 0.5rem 0.5rem 1rem;
  border-bottom: solid 0.5px #A7A6A6;
  background: #ffffff;
  word-wrap: break-word;
}
/*活動レポートエリア//////////////////////////////////////////////////////////*/
.report_inner {
  margin: 0 auto;
  max-width: 420px;
}
.fb_info {
  width: 100%;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32); /*影*/
}
.fb_info iframe {
  width: 100%;
}
/*Activity///////////////////////////////////////////////////////////////*/
h1#activity {
  margin-top: 3em;
}
.activity_area {
  max-width: 900px;
  margin: 0 auto;
}
.activity_area_description {
  margin: 2.5em 0.5em 5em;
  line-height: 2.6rem;
}
/*Coach/////////////////////////////////////////////////////////////////*/
.concept_lead {
  font-size: 2rem;
  font-weight: 700;
  color: #00c000;
  text-align: left;
  margin: 1.8em 0em 1em;
  padding-left: 0.5em;
}
.secondary_lead {
  font-weight: 600;
  color: #707070;
  text-align: left;
  margin-bottom: 0.3em;
  padding: 0em 0.5em;
}
.description_h5 {
  padding: 0.5em;
  margin-bottom: 2em;
  line-height: normal;
}
.description {
  margin: 2.5em 0em 1em;
  line-height: 2.6rem;
}
.description_wrap {
  margin: 1em 0em 2em;
  padding: 1.5em;
  background-color: #f2f7e8;
  box-shadow: 0em 0.3em 0em 0em rgba(0, 0, 0, 0.1);
}
.coach_information_unit {
  padding: 1em;
  max-width: 500px;
  width: 100%;
  display: inline-block;
}
.coach_information_unit a {
  display: flex;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #ffffff;
  line-height: 2.6rem;
}
.coach_area_flex_wrap {
  margin: 5em 0 0;
}
.coach_area_p {
  padding: 1em;
  line-height: 1.8em;
  max-width: 500px;
  margin: 0 auto;
}
/*名前とアイコンの調整----------*/
.name_icon_flex_wrap {
  display: inline-block;
  width: 100%;
  padding-bottom: 1em;
}
.name_icon_flex {
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center
}
.neme_flex_left {
  overflow-wrap: break-word;
  padding-right: 1em;
}
.neme_flex_left h2 {
  text-align: center;
  font-weight: 500;
}
.neme_flex_right {
  min-width: 30px;
  transition: all 0.5s;
}
.neme_flex_right img {
  max-width: 30px;
  width: 100%;
  display: inline-block;
}
.neme_flex_right:hover {
  transform: translate(0, -10px);
}
/*-----------------------------*/
/*スポンサーリンクのホ--------------*/
.coach_information_unit a:hover {
  color: #707070;
}
.result {
  font-weight: 500;
  padding: 1em;
}
.result_timeline {
  border-top: solid 0.5px #777777;
  border-right: solid 0.5px #777777;
  line-height: 2.6rem;
  margin-bottom: 2em;
}
.result_timeline table {
  display: inline-block;
  padding-top: 2em;
}
.result_timeline tr {
  text-align: left;
}
.result_timeline table th {
  font-weight: 300;
  word-break: break-all;
  font-size: 1.6rem;
  line-height: 3.2rem;
  display: inline-block;
}
.result_timeline p {
  font-weight: 500;
  text-align: center;
  padding-left: 10px;
  word-break: break-all;
  font-size: 1.6rem;
  line-height: 3.2rem;
}
/*スポンサーリストの装飾-------------------*/
.coach_information_unit ul {
  max-width: 300px;
  width: 100%;
  display: inline-block;
  padding: 5px;
}
.coach_information_unit ul li {
  display: flex;
  position: relative;
  list-style-type: none !important; /*ポチ消す*/
  padding: 0.2em 0.2em 0.2em 0.2em;
  margin-bottom: 5px;
  line-height: 1.5;
  background: #90949cb3;
  vertical-align: middle;
  text-align: left;
}
.coach_information_unit ul li p {
  vertical-align: middle;
}
.list_mark {
  display: inline-block;
  margin: 10Px;
  /*以下白丸つくる*/
  content: '';
  width: 0.6em;
  height: 0.6em;
  background: #fff;
  border-radius: 50%;
}
.coach_information_unit ul li:before:hover {
  color: #707070;
}
/*スポンサーリンクのホバー*/
.coach_information_unit ul li :hover {
  color: #707070;
}
.coach_information_unit ul :hover {
  background-color: #8E8E8E;
}
/*レッスンプログラム//////////////////////////////////////////////////////////*/
.lessonprogram_h1 h1 {
  margin-top: 100px;
}
.lessonprogram_h4 {
  margin-bottom: 6em;
}
.programlist_flex {
  display: flex;
  flex-direction: row;
  margin: 0 auto 3em;
  max-width: 760px;
  justify-content: center;
}
.programlist_flex_wrap {
  display: inline-block;
  width: 100%;
  margin-bottom: 3em;
}
.programlist_flex_01 {
  display: flex;
  align-items: stretch;
}
.athlete_headline, .skillup_headline, .athlete, .skillup, .athlete_span, .skillup_span {
  width: 50%;
}
.athlete_headline {
  background-color: #FFD859;
}
.skillup_headline {
  background-color: #009BE2;
}
.athlete_headline, .skillup_headline, li {
  margin: 2px;
  border-radius: 0.3em;
}
.athlete {
  background-color: #FFF7DC;
}
.skillup {
  background-color: #E8EDF7;
}
.athlete, .skillup {
  padding: 5px;
  display: flex;
  align-items: center;
}
.centerlist {
  margin: 0 auto;
  padding: 10px;
}
.programlist_flex h2 {
  color: #ffffff;
  text-align: center;
}
.lessonprogram_description {
  margin: 0 0.5em 1em;
  line-height: 2.6rem;
}
/*レッスンプログラムの三角形レスポンシブ---------*/
.triangle04 {
  width: 0;
  height: 0;
  border-right: 10vw solid transparent;
  border-bottom: 4vw solid #FFF7DC;
  border-left: 10vw solid transparent;
  margin: 0 auto;
}
.triangle05 {
  width: 0;
  height: 0;
  border-right: 10vw solid transparent;
  border-bottom: 4vw solid #E8EDF7;
  border-left: 10vw solid transparent;
  margin: 0 auto;
}
/*----------------------------------------*/
/*Price//////////////////////////////////////////////////////////////*/
h1#price {
  margin-top: 3em;
  padding-left: 0.5em;
}
.price_area {
  display: inline-block;
  max-width: 760px;
  width: 100%;
}
.price_area_h2 {
  padding-left: 1.5em;
}
.price_area p {
  margin: 0.5px 0;
}
.price_table_p {
  font-weight: 600;
  font-size: 1.3rem;
  text-align: center;
}
.price_table th, .price_table td {
  border-radius: 5px;
  text-align: center;
  padding: 10px 0;
  vertical-align: middle;
  word-break: break-all;
}
.Platinum_headline {
  background-color: #FFD859;
}
.Standard_headline {
  background-color: #009BE2;
}
.headline_triangle_wrap {
  padding: 0px;
  height: 35%;
}
.triangle_wrap {
  padding: 0px;
}
.item_headline_main, .item_headline, .item_detail {
  background-color: #f7f2e7;
  color: #707070;
}
.item_headline_left {
  text-align: left;
  font-weight: 300;
  padding: 0 1em;
}
.Platinum_orange, .Standard_blue, .online_green {
  color: #707070;
  font-weight: 600;
}
.price_title {
  border-left: solid 5px #d7d4d4;
  margin: 15px 0px 3px 3px;
  padding-left: 10px;
}
/*priceテーブル幅の調整-------------------*/
.price_table_wrap {
  display: inline-block;
  width: 100%;
}
.price_table {
  border-collapse: separate;
  border-spacing: 2px;
  width: 100%;
}
.price_table_main {
  width: 100%;
}
.white_space {
  color: #ffffff;
  width: 30%;
}
.Platinum_headline, .Standard_headline {
  color: white;
  border-bottom: solid 5px;
  width: 35%;
}
.item_headline_main {
  width: 30%;
}
.item_headline {
  width: 10%;
}
.item_detail {
  width: 15%;
}
.Platinum_orange {
  width: 35%;
  background-color: #FFF7DC;
}
.Standard_blue {
  background-color: #E8EDF7;
  width: 35%;
}
.online_green {
  background-color: #eaf7ea;
  width: 70%;
}
/*------------------------------------*/
/*空白の調整*----------------------------*/
/*-------------------------------------*/
/*priceの三角形レスポンシブ-----------------*/
.triangle01 {
  width: 0;
  height: 0;
  border-right: 8vw solid transparent;
  border-top: 25px solid #FFD859;
  border-left: 8vw solid transparent;
  margin: 0 auto;
}
.triangle02 {
  width: 0;
  height: 0;
  border-right: 8vw solid transparent;
  border-top: 25px solid #009BE2;
  border-left: 8vw solid transparent;
  margin: 0 auto;
}
.triangle03 {
  width: 0;
  height: 0;
  border-top: 9vh solid transparent;
  border-left: 4vw solid #b4b5b8;
  border-bottom: 9vh solid transparent;
}
/*--------------------------------   --*/
/*スケジュールエリア////////////////////////////////////////////////////*/
h1#schedule {
  margin-top: 3em;
}
.schedule_area {
  display: inline-block;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 300;
  border-radius: 0.2em;
  padding: 3%;
}
.schedule_area_inner {
  margin-top: 2em;
  max-width: 660px;
  width: 100%;
  display: inline-block;
}
.schedule_title_wrap {
  max-width: 660px;
  width: 100%;
  padding: 3em 0.5em;
}
.schedule_title_wrap h2 {
  padding: 0;
}
.schedule_title_caption {
  background-color: #ffffffff;
  color: #707070;
  margin-top: 0.5em;
  border-radius: 0.1em;
}
.schedule_title_caption p {
  color: #707070;
  font-weight: 300;
}
.txt_clr_wh {
  text-align: left;
  padding-left: 10px;
  color: #707070;
}
.googlecalendar {
  margin-top: 0.3em;
  padding: 1em;
  background-color: #ffffff;
  box-shadow: 0 3px 4px rgb(0 0 0 / 32%);
}
.googlecalendar iframe {
  width: 100%;
  height: 400px;
  display: inline-block;
}
.schedule_description {
  margin: 2.5em 0em 1em;
  line-height: 2.6rem;
}
.googlecalendar p {
  margin-bottom: 2em;
}
/*スケジュールエリアのレッスンテーブル幅調整----*/
.schedule_table_wrap {
  max-width: 900px;
  width: 100%;
  display: inline-block;
}
.schedule_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 2px;
}
.schedule_table td {
  background-color: #f2f7e8;
  border:solid 0.05px #f2f2f2;
  width: 80%;
  padding: 10px;
  word-break: break-all;
}
.oneday_headline {
  width: 20%;
  background-color: #Ffe7ab;
}
.others_headline {
  width: 20%;
  background-color: #B4B5B8;
}
/*------------------------------------*/
.oneday_headline, .others_headline {
  vertical-align: middle;
  word-break: break-all;
  padding: 0.2em;
}
.schedule_detail {
  font-weight: 500;
}
.schedule_detail_small {
  font-weight: 300;
}
.schedule_detail_online_wrap {
  width: 80%;
  margin: 0 auto;
}
.schedule_detail_online {
  text-align: left;
  font-weight: 300;
  padding: 10px;
}
.online_small {
  padding: 1em;
}
/*Member Entry////////////////////////////////////////////////////*/
h1#memberentry {
  margin-top: 3em;
}
.memberentry_detail_wrap {
  font-weight: 600;
  color: #707070;
  background-color: #f2f7e8;
  padding: 2em 1em;
}
.memberentry_detail {
  text-align: center;
  font-weight: 400;
}
.memberentry_detail ul li {
  padding: 1em 0;
  text-align: center;
}
.memberentry_detail_triangle_wrap {
  display: inline-block;
  max-width: 3em;
}
.triangle06 {
  width: 0;
  height: 0;
  border-right: 20px solid transparent;
  border-top: 20px solid #ffffff;
  border-left: 20px solid transparent;
  margin: 0 auto;
  display: inline-block;
}
/*Q&A////////////////////////////////////////////////////////////*/
h1#qa {
  margin-top: 3em;
}
.qa_dt, .qa_dd {
  font-size: 1.4rem;
  padding: 15px;
  text-align: left;
  width: 100%;
  height: auto;
  border: solid 1px #7070707a;
}
.qa_dt {
  background-color: #FFF9EB;
  margin-bottom: 5px;
}
.qa_dd {
  margin-bottom: 15px;
}
/* QAアイコン ---------------------*/
.cp_qa dl {
  margin: 0;
}
.cp_qa dt {
  margin-bottom: 1.5em;
  padding: 0.5em 2.5em 0.5em 1em;
  border-radius: 0.2em;
  background: #f2f7e8;
}
.cp_qa dd {
  margin-bottom: 2em;
  margin-left: 0;
  padding: 0.5em 1em 1.5em 3em;
  box-shadow: 0px 3px 0px 0 rgba(0, 0, 0, 0.2);
  word-break: break-all;
}
.cp_qa dd::before {
  margin: 0 0.5em 0 -2em;
  padding: 0.2em 0.4em;
  content: 'A.';
}
/*dekirukana*/
.qa_dt {
  position: relative;
  cursor: pointer;
  transition: all .5s ease;
}
/*アイコンの＋と×*/
.qa_dt::before, .qa_dt::after {
  position: absolute;
  content: '';
  width: 15px;
  height: 2px;
  background-color: #707070;
}
.qa_dt::before {
  top: 48%;
  right: 15px;
  transform: rotate(0deg);
}
.qa_dt::after {
  top: 48%;
  right: 15px;
  transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.qa_dt.close::before {
  transform: rotate(45deg);
}
.qa_dt.close::after {
  transform: rotate(-45deg);
}
/*アコーディオンで現れるエリア*/
.qa_dd {
  display: none; /*はじめは非表示*/
  background: #f3f3f3;
  margin: 0 3% 3% 3%;
  padding: 3%;
}
/*コンタクト//////////////////////////////////////////////////////////*/
h1#contact {
  margin-top: 3em;
}
/*footer///////////////////////////////////////////////////////////*/
.icom_wrap ul {
  background-color: #f2f7e8;
}
/*プライバシーポリシー（PP）////////////////////////////////////////////////////////*/
.main_wrap {
  max-width: 960px;
  width: 100%;
  padding: 50px 30px;
  margin: 0 auto;
  text-align: left;
}
.pp h1 {
  font-size: 2rem;
  font-weight: 700;
  padding: 5px 0 20px;
  ;
}
.pp h2 {
  font-weight: 600;
  padding: 10px 0px 3px;
}
.pp_table {
  margin-top: 10px;
}
.pp_table th, .pp_table td {
  font-weight: 300;
  padding: 5px 10px;
}
.pp_table_span {
  font-size: 1.2rem;
}
.pp_table th {
  width: 30%;
}
.pp_p {
  padding-left: 10px;
}
.pp_ol li {
  padding-left: 20px;
}
.pp_ul li {
  padding-left: 30px;
}
.fitty_wrap {
  text-align: left;
}
@media (min-width: 960px) {
  body {
    margin: 0 auto;
  }
  /*headder/////////////////////////////////////////////////////////*/
  .nav_wrap {
    display: none;
  }
  .header {
    position: fixed;
    background-color: #ffffff;
    opacity: 0.99;
    z-index: 999999;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1)
  }
  /*header_nav/////////////////////////////////////////////////////////*/
  /* 1段目のlogoとnav---------------------*/
  .header_logo_nav_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }
  .header_logo_nav_wrap ul {
    margin-top: 0.5em;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    width: calc(100% - 200px)
  }
  .header_logo_nav_wrap li:not(:last-child) {
    margin-right: 30px;
    transition: all 0.3s;
  }
  .header_logo_nav_wrap a {
    text-decoration: none;
    font-size: 1.3rem;
    font-weight: 300;
    display: inherit;
  }
  .lesson_button_wrap {
    padding: 0.2em;
    border: 1.5px solid #888888;
    border-radius: 0.5em;
  }
  .lesson_button_wrap a {
    color: #707070;
    padding: 0.5em 1em;
  }
  /*ボタンホバー---------------------------*/
  .lesson_button_wrap:hover {
    border-radius: 5em;
    background-color: #6F6F6F;
  }
  .lesson_button_wrap li:hover {
    background-color: #6F6F6F;
    opacity: 0.5;
    border-radius: 5em;
  }
  .lesson_button_wrap a:hover {
    color: #ffffff;
  }
  /*2段目のnav---------------------------*/
  .header_nav_2nd_wrap {
    display: inline-block;
  }
  .header_nav_2nd_wrap ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0.5em;
    width: 100%;
    height: 100%;
  }
  .header_nav_2nd_wrap li a:hover {
    opacity: 0.5;
    transform: translate(0, -10px);
  }
  .header_nav_2nd_wrap li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 1.2em;
    font-size: 1.2rem;
    font-weight: 300;
    text-align: center;
    vertical-align: middle;
    transition: all 0.5s;
  }
  #page-link li {
    display: inherit;
    border-left: 1px solid #aaaaaa;
    border-radius: 0;
    height: 100%;
  }
  
  .swiper-container {
    padding-top: 110px;
  }
  /*NEWS と活動レポート///////////////////////////////////////////////*/
  .heading_news {
  margin-top: 100px;
}
  .news_report_flexbox, .flexbox01, .flexbox02 {
    width: 900px;
    display: flex;
    justify-content: space-around;
    margin: 2em auto;
  }
  .news_area, .report_area, .flexbox_inner_right, .flexbox_inner_left {
    max-width: 390px;
    width: 100%;
  }
  .feature {
    display: inline-block;
    width: 100%;
  }
  .fb_info iframe {
    width: inherit;
  }
  /*コーチエリア///////////////////////////////////////////////////////*/
  .coach_area_p {
    max-width: 390px;
    margin: 0 auto;
  }
  .coach_area_flex_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 10em;
    margin-bottom: 10em;
  }
  .coach_area_flex_wrap_left, .coach_area_flex_wrap_right {
    width: 50%;
  }
  /*footer////////////////////////*/
  .footer-nav_wrap {
    display: none;
  }
  .footer_a {
    display: block;
  }
  .footer_a a {
    display: inherit;
    text-decoration: none;
    color: #707070;
    font-size: 0.5em;
    padding-left: 1em;
  }
  .footer_a a:hover {
    color: #ffffff;
  }
  .footer_nav_icon_wrap {
    display: flex;
    justify-content: space-between;
  }
  .sns_icon {
    width: 43px;
    height: auto;
  }
  .sns_icon a img {
    width: 100%;
  }
  .icom_wrap ul {
    background-color: #ffffff;
  }
  /*プライバシーポリシー（PP）////////////////////////////////////////////////////////*/
  .main_wrap {
    margin-top: 200px;
  }
}