@charset "utf-8";
/* CSS Document */
/* PC用スタイルシート */

#head {
  background: transparent;
}

.mainTitle {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  color: #13bfff;
}
.mainTitle span {
  font-size: 85px;
  display: block;
  padding-bottom: 24px;
  font-weight: normal;
}

#topSliderBox01 {
  overflow: hidden;
}
#topSliderBox01 .topSliderBox__slick {
  width: 650px;
  margin: 0 auto;
}
#topSliderBox01 .topSliderBox__slick .slick-slide {
  text-align: center;
  position: relative;
}
#topSliderBox01 .topSliderBox__slick .slick-slide a {
  display: none;
}
#topSliderBox01 .topSliderBox__slick .slick-slide iframe {
  display: block;
  margin: 0 auto;
  border: 1px solid #fff;
}

#topSliderBox01 .slick-arrow {
  text-indent: -9999px;
  padding: 0;
  border: none;
  position: absolute;
  width: 25px;
  height: 30px;
  background: none;
  top: 50%;
  margin-top: -15px;
  cursor: pointer;
  z-index: 1;
}
#topSliderBox01 .slick-arrow:hover {
  opacity: 0.7;
}
#topSliderBox01 .slick-arrow::before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 25px;
  height: 30px;
  text-indent: 0;
}

#topSliderBox01 .slick-prev {
  left: -13px;
}
#topSliderBox01 .slick-next {
  right: -13px;
}
#topSliderBox01 .slick-prev::before {
  content: url(../img/btn_arrow_01.png);
}
#topSliderBox01 .slick-next::before {
  content: url(../img/btn_arrow_02.png);
}

/* ===================================
#topCont
=================================== */
#topCont {
  padding: 170px 0 10px;
  background-image: url(../img/img_topBg_04.png);
  background-position: center top;
  background-repeat: no-repeat;
  margin-top: -66px;
}
#topCont h2 {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  width: 1200px;
  margin: 0 auto;
}
#topCont h2 span {
  font-size: 150px;
  font-weight: bold;
  display: block;
  color: #ff0;
}
#topCont h2 span span {
  font-size: 100px;
  display: inline;
}
#topCont h2 span span:nth-child(2) {
  font-size: 150px;
  letter-spacing: -0.5em;
}
#topCont h3 {
  font-size: 30px;
  color: #fff;
  font-weight: bold;
  width: 1200px;
  margin: 0 auto;
}
#topCont h3 .fontF01 {
  font-size: 35px;
  margin-left: 10px;
  font-weight: normal;
  color: #fff;
}
#topCont h3 span {
  color: #13bfff;
}
#topCont h3 span:nth-child(2) {
  color: #ff0;
}
#topCont .formBtn {
  font-size: 18px;
  width: 1200px;
  margin: 70px auto 170px;
  display: block;
  position: relative;
}
#topCont .formBtn::before {
  content: '';
  width: 200px;
  height: 100%;
  background: #fff;
  border-radius: 30px;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  z-index: 0;
}
#topCont .formBtn a {
  position: relative;
  z-index: 1;
  padding-left: 0;
  padding-right: 0;
  width: 200px;
}
#topCont .campaign {
  font-size: 30px;
  color: #fff;
  text-align: center;
  line-height: 1;
  font-weight: bold;
}
#topCont .campaign .box1 {
  width: 100%;
  font-size: 80px;
  font-weight: bold;
  color: #ff0;
  margin-bottom: 20px;
}
#topCont .campaign .box1 span {
  border-bottom: 2px solid #ff0;
  display: inline-block;
  padding-bottom: 3px;
}
#topCont .campaign .box2 {
  width: 100%;
  line-height: 1.2;
}
#topCont .campaign .box2 span {
  color: #ff0;
}
#topCont .campaign .box2 .note {
  color: #ffffff;
  font-size: 14px;
  display: block;
  font-weight: normal;
}
#topCont .campaign .box3 {
  padding-bottom: 3px;
  line-height: 1.6;
  font-size: 44px;
}

.topInner {
  position: relative;
}

.firstView {
  width: 1200px;
  display: block;
  height: 304px;
  margin: 35px auto 220px;
}

/* ===================================
#topBnr
=================================== */

#topBnr {
  margin: 40px auto 0;
  width: 1100px;
  border-radius: 7px;
}

.nolink {
  margin-top: 20px;
}

#topBnr a {
  margin: 30px 0 0;
  display: block;
  background-color: #fff;
  border-radius: 5px;
}
.topBnr {
  width: 1100px;
  margin: 40px auto;
}

/* ===================================
#news
=================================== */
#news {
  background-color: #14bfff;
  padding: 78px 0;
}
#news h2 {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding-bottom: 45px;
}
#news h2 span {
  font-size: 85px;
  display: block;
  margin-bottom: 3px;
  font-weight: normal;
}

#news .newsPC {
  width: 100%;
  margin: auto;
}
#news ul.newsList {
  display: flex;
  justify-content: center;
  margin: 0 auto 54px;
}
.newsList li {
  width: 260px;
  margin-left: 21px;
  background-color: #fff;
}
.newsList li:first-child {
  margin-left: 5px;
}

.newsList a {
  width: 260px;
  height: 536px;
  display: block;
  box-shadow: 0px 0px 2px 0px rgba(51, 51, 51, 0.3);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.newsList a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.newsList li .head {
  padding: 15px 10px 5px;
  max-height: 55px;
}
.newsList li .tag {
  font-size: 12px;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  color: #fff;
  padding: 2px 8px;
  margin-right: 5px;
  margin-bottom: 5px;
  display: inline-block;
}

.newsList li .new {
  margin-right: 9px;
  color: #13bfff;
  background-color: #ffff00;
}
.newsList li .news {
  background-color: #0b6fc3;
}
.newsList li .event {
  background-color: #13bfff;
}
.newsList li .campaign {
  background-color: #e0ab0a;
}
.newsList li .blog {
  background-color: #e0ab0a;
}

.newsList li .title {
  padding: 0 10px;
  width: 100%;
  height: 43px;
  margin-bottom: 17px;
  font-size: 17px;
  font-weight: bold;
  color: #13bfff;
  word-break: break-all;
}
.newsList li img {
  width: 260px;
  height: 260px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  order: -1;
}
.newsList li img:hover {
  opacity: 1;
}
.newsList li .info {
  padding: 0 10px 0;
}
.newsList li .description {
  height: 60px;
  margin-bottom: 8px;
  font-size: 14px;
  word-break: break-all;
  text-align: justify;
  line-height: 20px;
}
.newsList li .date {
  font-size: 12px;
  color: #59525f;
}
.newsList li .more {
  width: 240px;
  text-align: right;
  padding: 10px 0px;
  margin: 10px 0 0;
  border-top: 1px solid #e6e6e6;
  font-size: 14px;
}
.newsMore {
  display: block;
  width: 410px;
  margin: 0px auto;
  text-align: center;
  border-radius: 30px;
  font-size: 16px;
  font-weight: bold;
}
.newsMore a {
  display: block;
  padding: 18px 0;
  border-radius: 30px;
  background-color: #ffff00;
}
.newsMore a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/* ===================================
.media
=================================== */
.media {
  background-color: #14bfff;
  padding: 90px 0 0;
}
.media h2 {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding-bottom: 45px;
}
.media h2 span {
  font-size: 85px;
  display: block;
  margin-bottom: 3px;
  font-weight: normal;
}

.mediaList {
  width: 100%;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto 50px;
}
.mediaItem {
  width: 260px;
  margin-left: 20px;
  background: #fff;
  outline: none;
}
.mediaItem:first-child {
  margin-left: 5px;
}
.mediaItem .mainImg {
  width: 260px;
  height: 260px;
}
.mediaItem .mainImg .mainImgLink {
  position: relative;
  display: block;
}
.mediaItem .mainImg img {
  width: 260px;
  height: 260px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.mediaItem .mainImg .mainImgLink:hover:before {
  content: '';
  width: 260px;
  height: 260px;
  background: url(../media/img/ico_zoom_01.png) center rgba(0, 0, 0, 0.5) no-repeat;
  background-size: 60px auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.mediaItem .detailBox {
  padding: 15px 13px;
}
.mediaItem .info {
  margin-bottom: 10px;
}
.mediaItem .info .date {
  font-size: 16px;
  color: #59535f;
}
.mediaItem .info .new,
.mediaItem .info .cate {
  font-family: メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  margin-left: 10px;
  padding: 2px 14px;
  font-size: 14px;
  color: #fff;
  line-height: 1;
}
.mediaItem .info .new {
  color: #13bfff;
  background: #ffff00;
}
.mediaItem .info .md_cate_01 {
  background: #006dc6;
}
.mediaItem .info .md_cate_02 {
  background: #00beff;
}
.mediaItem .headingTitle {
  height: 62px;
  overflow: hidden;
  font-size: 16px;
  font-weight: 700;
  color: #13bfff;
  line-height: 1.4;
  word-break: break-all;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.mediaItem .headingTitleLink {
  font-size: 16px;
  color: #13bfff;
  line-height: 1.4;
  text-decoration: underline;
}
.mediaItem .headingTitleLink:hover {
  opacity: 0.7;
}

.mediaMore {
  display: block;
  width: 410px;
  margin: 0px auto;
  text-align: center;
  border-radius: 30px;
  font-size: 16px;
  font-weight: bold;
}
.mediaMore a {
  display: block;
  padding: 18px 0;
  border-radius: 30px;
  background-color: #ffff00;
}
.mediaMore a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/* colorbox：コントロールボタンの削除 */
#cboxPrevious,
#cboxNext {
  display: none !important;
}

/* colorbox：画像クリック時にスライドが移動しないように設定 */
.cboxPhoto {
  pointer-events: none !important;
}

/* ===================================
#message
=================================== */
#message {
  padding: 65px 0 80px;
  text-align: center;
}
#message h2 {
  font-size: 44px;
  color: #13bfff;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 22px;
}
#message p {
  font-size: 22px;
  line-height: 2.4;
}
/* ===================================
#balance
=================================== */
#balance {
  padding: 60px 0 120px;
  background-image: url(../img/top02_bg.jpg);
  background-position: center top;
  background-size: cover;
}
#balance .box {
  width: 1100px;
  margin: 0 auto;
}
#balance h2 {
  text-align: center;
  font-size: 38px;
  font-weight: bold;
  color: #fff;
  line-height: 2;
  padding-top: 30px;
}
#balance .txt {
  font-size: 34px;
  color: #15bfff;
  padding: 85px 0 25px;
  text-align: center;
  font-weight: bold;
  line-height: 1.4;
}
#balance .txt span {
  display: block;
  font-size: 19px;
}

.balanceList {
  width: 1060px;
  margin: 0 auto;
  padding-top: 40px;
  display: flex;
  color: #fff;
  justify-content: space-between;
  position: relative;
}
.balanceList::before,
.balanceList::after {
  content: '';
  height: 50px;
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 1;
}
.balanceList::before {
  border: 5px solid #15bfff;
  width: 760px;
  border-bottom: 0;
  margin-left: -385px;
}
.balanceList::after {
  width: 5px;
  background: #15bfff;
  margin-left: -3px;
}

.balanceList__item {
  width: 280px;
  font-size: 20px;
  color: #fff;
  position: relative;
  z-index: 0;
}
.balanceList__item__tit {
  width: 228px;
  height: 228px;
  margin: 0 auto 50px;
  padding-top: 80px;
  text-align: center;
  border: 4px solid #fff;
  border-radius: 130px;
  box-sizing: border-box;
  background: #15bfff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
}
.balanceList__item__tit::before {
  content: '';
  display: block;
  width: 5px;
  height: 255px;
  position: absolute;
  left: 50%;
  background: #15bfff;
  top: 0;
  margin-left: -2.5px;
}
.balanceList__item__tit > span {
  position: relative;
  z-index: 2;
}
.balanceList__item__tit .fontF01 {
  font-size: 35px;
  font-weight: normal;
  display: block;
}
.balanceList__item__txt01 {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  padding-bottom: 30px;
}
.balanceList__item__txt01 span {
  color: #ff0;
}
.balanceList__item__txt02 {
  line-height: 2;
  font-size: 18px;
  font-weight: bold;
}

/* ===================================
#program
=================================== */
#program {
  background: #15bfff;
  padding: 115px 0 105px;
}
#program header h2 {
  color: #fff;
  font-size: 20px;
  text-align: center;
  font-weight: bold;
}
#program header h2 span {
  font-size: 100px;
  font-weight: normal;
  display: block;
  padding-bottom: 24px;
  font-weight: normal;
}

#program header p {
  font-size: 60px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 80px 0 60px;
  font-feature-settings: "palt";
}
#program header p span {
  font-size: 32px;
  display: block;
}

.courseArea {
  width: 1102px;
  margin: 0 auto;
}
.courseArea .box {
  box-shadow: 0 0 4px #999;
}
.course01 {
  width: 725px;
  min-height: 224px;
  padding: 20px 30px 0 345px;
  margin: 0 auto 45px;
  background: #fff url('../img/program_img01_2.png') left top no-repeat;
  position: relative;
}
.course01 .price {
  text-indent: -9999px;
  background: url('../img/program_img02.png') no-repeat;
  width: 190px;
  height: 190px;
  position: absolute;
  top: -45px;
  right: 10px;
  border: 0;
}
.course01 dt {
  font-size: 40px;
  font-weight: bold;
  color: #13bfff;
  padding-bottom: 15px;
}
.course01 dd {
  font-size: 18px;
  line-height: 1.4;
}
.course01 dd span {
  color: #13bfff;
  border-bottom: 1px solid #13bfff;
  padding-bottom: 5px;
  margin-bottom: 10px;
  display: block;
  font-weight: bold;
}
.course {
  overflow: hidden;
  margin-left: 4px;
  display: flex;
}

.course li {
  width: 346px;
  background: #fff;
  float: left;
}
.course li:nth-child(2) {
  margin: 0 31px;
}
.course li.box p {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #13bfff;
  padding: 20px 0;
}
.course li.box p span {
  font-size: 36px;
  display: block;
  margin-bottom: 3px;
}
.course li.box table {
  width: 90%;
  margin: 20px auto 10px;
  border-collapse: collapse;
}
.course li.box th,
.course li.box td {
  padding-bottom: 15px;
  font-size: 18px;
  font-weight: bold;
  color: #13bfff;
  text-align: left;
}
.course li.box td {
  text-align: right;
}

.free {
  width: 760px;
  margin: auto;
  padding-left: 260px;
  background: url('../img/program_img06.png') top left no-repeat;
}
.free .balloon1 {
  position: relative;
  display: inline-block;
  margin: 0 0 1.5em;
  padding: 5px 10px;
  width: 720px;
  font-size: 18px;
  font-weight: bold;
  background: #ff0;
  border-radius: 5px;
}

.free .balloon1:before {
  content: '';
  position: absolute;
  top: 30px;
  left: 40px;
  border: 6px solid transparent;
  border-top: 22px solid #ff0;
  transform: rotate(25deg);
}

.free .balloon1 p {
  margin: 0;
  padding: 0;
}
.free .rental {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
}
.free .rental span {
  font-size: 40px;
  vertical-align: middle;
}
#program .formBtn {
  margin: 50px auto;
  font-size: 16px;
  text-align: center;
}
#program .formBtn a {
  padding: 17px 72px 15px;
}

/* ===================================
#trainer
=================================== */
#trainer {
  background-image: url(../img/img_trainer_03.png);
  background-position: left top;
  background-size: cover;
  background-repeat: no-repeat;
}

#trainer .trainerInner {
  height: 0;
  border-width: 0 0 680px 270px;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  border-right-color: rgba(238, 238, 238, 0);
  margin: 0 0 0 38%;
}
#trainer .trainerInner .box {
  width: 400px;
  text-align: center;
}
#trainer .trainerInner p {
  padding-top: 230px;
  font-size: 20px;
  color: #14bfff;
  line-height: 1.2;
  margin-bottom: 50px;
  font-weight: bold;
}
#trainer .trainerInner p span {
  font-size: 80px;
  display: block;
  font-weight: normal;
}
#trainer .formBtn {
  font-size: 16px;
  width: 400px;
  text-align: center;
}
#trainer .formBtn a {
  padding: 17px 0 15px;
  margin: 0;
  background: #14bfff;
  display: block;
  color: #fff;
}

/* ===================================
#studio
=================================== */

#studio {
  margin-top: 80px;
  text-align: center;
}

#studio .studioInner p {
  font-size: 20px;
  color: #14bfff;
  line-height: 1.2;
  margin-bottom: 50px;
  font-weight: bold;
}
#studio .studioInner p span {
  font-size: 80px;
  display: block;
  font-weight: normal;
}

.slick-slider {
  width: 1300px;
}

.slider-2 .stdTit {
  display: block;
  margin-bottom: 10px;
  width: 350px;
  height: 25px;
}

.slider-2 .slick-track li a img {
  width: 350px;
  height: 224px;
}

.slider-2 .slick-track li {
  width: 350px;
  height: 517px;
}

.slider-2 .stdAddress {
  width: 270px;
  text-align: center;
}

.slider-2 .stdAddress {
  margin: 0 auto 15px;
  font-size: 20px;
  line-height: 1.2;
}

.slider-2 .slick-prev:after,
.slider-2 .slick-next:after {
  bottom: -370px;
  width: 10px;
  height: 10px;
}

.slider-2 .slick-prev:after {
  right: -490px;
}

.slider-2 .slick-next:after {
  left: -490px;
}

.lineLink {
  position: absolute;
  bottom: 70px;
}

.slider-2 .slick-track .lineLink .tenpoLine {
  height: 66px !important;
  width: 350px;
  background: url(../img/icon_line.png) no-repeat 0 0;
  background-repeat: no-repeat;
  margin: 0 auto;
  background-position: center;
  display: block;
  padding-top: 20px;
}

.slick-dots {
  margin-top: 23px;
}

.slick-dots button {
  width: 11px;
  height: 11px;
}

.studioLink {
  width: 400px;
  height: 60px;
  background-color: #15bfff;
  color: #fff;
  display: flex;
  font-size: 16px;
  font-weight: bold;
  justify-content: center;
  margin: 0 auto 70px;
  align-items: center;
  border-radius: 35px;
}

.studioLink:hover {
  text-decoration: none;
  opacity: 0.8;
}

/* ===================================
#line
=================================== */
#line a {
  display: block;
  width: 1100px;
  margin: 95px auto 0;
  text-indent: -9999px;
  height: 160px;
  background: url(../img/bnr_line_01.png) no-repeat 0 0;
}
#line a:hover {
  opacity: 0.7;
}

/* ===================================
#linebtn
=================================== */
#linebtn {
  width: 1100px;
  margin: 95px auto 95px;
  text-indent: -9999px;
  height: 160px;
  background: url(../img/bnr_line_05.png) no-repeat 0 0;
  position: relative;
}
#linebtn a {
  display: block;
  width: 170px;
  height: 62px;
  border-radius: 8px;
  position: absolute;
}
#linebtn a.tenpo01 {
  top: 14px;
  right: 362px;
}
#linebtn a.tenpo02 {
  top: 15px;
  right: 181px;
}
#linebtn a.tenpo03 {
  top: 85px;
  right: 363px;
}
#linebtn a.tenpo04 {
  top: 85px;
  right: 181px;
}
#linebtn a.tenpo05 {
  top: 14px;
  right: 24px;
  width: 143px;
  height: 131px;
}
#linebtn a:hover {
  opacity: 0.3;
  background: #fff;
}

/* ===================================
#sns
=================================== */
#sns {
  /* padding: 85px 0  150px; */
  overflow: hidden;
}
#sns .mainTitle {
  padding: 90px 0 20px;
}
#sns .atSign {
  font-size: 30px;
  font-weight: bold;
  color: #13bfff;
  padding-bottom: 40px;
  text-align: center;
}
#sns iframe {
  /* height: 20vw!important; */
  display: block;
  margin: 0 auto;
}
#sns .timeLine {
  background-image: url(../img/top07_bg.png);
  background-position: center top;
  background-size: cover;
  height: 321px;
  width: 100%;
}

#sns .content {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
#sns .title {
  margin: 20px 0;
  font-size: 20px;
  text-align: center;
}
#sns .list {
  display: block;
  margin: 0 auto;
  vertical-align: top;
  width: auto;
}
#sns .item {
  /*! margin: 10px 0; */
  width: 280px;
  box-sizing: border-box;
  padding: 0 5px;
  margin: 0 10px;
}
#sns .item__link {
  display: inline-block;
  position: relative;
}
#sns .item__link:hover {
  opacity: 0.7;
}
#sns .item__img {
  /*! width: 500px; */
  /*! height: 500px; */
  object-fit: cover;
  width: 280px;
  height: 280px;
}
#sns .item__description {
  display: none;
  width: 280px;
  height: 280px;
  position: absolute;
  top: 0;
  color: #fff;
  font-size: 15px;
  box-sizing: border-box;
  padding: 5px;
}
#sns .item__description span {
  position: absolute;
  left: 5px;
  bottom: 5px;
}
#sns .item__link:hover .item__description {
  display: block;
}
#sns .slick-arrow {
  text-indent: -9999px;
  padding: 0;
  border: none;
  position: absolute;
  width: 25px;
  height: 30px;
  background: none;
  top: -35px;
  margin-top: -15px;
  cursor: pointer;
  z-index: 1;
}
#sns .slick-arrow:hover {
  opacity: 0.7;
}
#sns .slick-arrow::before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 25px;
  height: 30px;
  text-indent: 0;
}

#sns .slick-prev {
  left: 40vw;
}
#sns .slick-next {
  right: 40vw;
}
#sns .slick-prev::before {
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  border-top: 3px solid #13bfff;
  border-right: 3px solid #13bfff;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0;
  margin: auto;
}
#sns .slick-next::before {
  content: '';
  width: 15px;
  height: 15px;
  border-top: 3px solid #13bfff;
  border-right: 3px solid #13bfff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0;
  margin: auto;
}

/* ===================================
#footFormBtn
=================================== */
#footFormBtn {
  padding: 115px 0 100px;
  text-align: center;
  background-image: url(../img/top09_bg.png);
  background-position: center top;
  background-size: cover;
  color: #fff;
}
#footFormBtn h2 {
  font-size: 50px;
  font-weight: bold;
  margin-bottom: 40px;
}
#footFormBtn .formBtn {
  font-size: 18px;
  margin: 30px 0;
  background: #fff;
  display: inline-block;
  border-radius: 40px;
}
#footFormBtn .formBtn a {
  font-size: 25px;
  border-radius: 50px;
  padding: 20px 38px;
}

#footFormBtn .tel p {
  font-weight: bold;
  font-size: 16px;
  padding: 20px 0 5px;
}
#footFormBtn .tel div {
  font-size: 32px;
  font-weight: bold;
  display: inline-block;
  padding-left: 35px;
  background: url('../img/ico_foot_tel.png') left center no-repeat;
}

.newTag {
  background: #ff0;
  font-weight: bold;
  color: #13bfff;
  padding: 8px;
  font-size: 16px;
  display: inline-block;
  line-height: 8px;
  vertical-align: middle;
}

/* instagram バナー */
.instaBnrLink {
  width: 470px;
  display: block;
  margin: 0 auto;
}
.instaBnr {
  width: 470px;
}

/* IEのみ */
@media all and (-ms-high-contrast: none) {
  #topCont h2 span {
    line-height: 215px;
    height: 170px;
  }
  .free .balloon1 p {
    margin: 6px 0 0;
  }
}

.sp-previous-arrow {
  color: #000;
  border-color: #000;
}

#topSliderBox .sp-slide {
  background-color: #fff;
  display: block;
  box-sizing: border-box;
  border: 1px solid #fff;
}

/* ニュース記事崩れのため */
@media screen and (max-width: 1130px) {
  .newsList li,
  .mediaList li {
    margin-left: 0.5vw;
  }
}

/* ===================================
#report ボディメイク体験レポート
=================================== */
#report {
  padding: 100px 0 130px;
  color: #322c38;
  overflow: hidden;
}

.report__txt {
  padding: 30px 0 55px;
  text-align: center;
  font-size: 20px;
  line-height: 2;
}

.report__item {
  height: 535px;
  margin-top: 80px;
  background: #7b7b7b;
  position: relative;
}
.report__item::before {
  content: '';
  height: 535px;
  display: block;
  position: absolute;
  width: 50%;
  background: #17befc;
  left: 50%;
  top: 0;
}
.report__item01 {
  margin-top: 0;
}

.report__item04 {
  margin-bottom: 80px;
}

.report__item__wrap {
  width: 1200px;
  margin: 0 auto;
  padding-left: 309px;
  position: relative;
  box-sizing: border-box;
}
.report__item__wrap img {
  position: relative;
  z-index: 1;
}
.report__item__wrap::before {
  content: '';
  width: 1200px;
  height: 535px;
  display: block;
  position: absolute;
  background: 0 0 no-repeat;
  left: -72px;
  z-index: 0;
}
.report__item01 .report__item__wrap::before {
  background-image: url('../img/bg_report01_01.jpg');
}
.report__item02 .report__item__wrap::before {
  background-image: url('../img/bg_report02_01.jpg');
}
.report__item03 .report__item__wrap::before {
  background-image: url('../img/bg_report03_01.jpg');
}
.report__item04 .report__item__wrap::before {
  background-image: url('../img/bg_report04_01.png');
}

.report__item03_2 .report__item__wrap::before {
  background-image: url('../img/bg_report03_2.jpg');
}
.report__item04_2 .report__item__wrap::before {
  background-image: url('../img/bg_report04_2.jpg');
}

/*他社比較*/

#comparison {
  background: #15bfff;
  padding-bottom: 120px;
  padding-top: 110px;
}

#comparison .mainTitle,
#comparison .mainTitle span {
  color: #fff;
}

#comparison .mainTitle {
  margin-bottom: 70px;
}

table {
  width: 1100px;
  height: 325px;
  border: transparent 1px solid;
  margin: 0 auto;
}

.tableItem {
  width: 280px;
  height: 50px;
  white-space: nowrap;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  border-bottom: 1px solid #15bfff;
  background-color: #fff;
}

.inHouse {
  width: 340px;
  height: 53px;
  white-space: nowrap;
  background-color: #fff;
  text-align: center;
}

.otherCompany {
  width: 160px;
  height: 53px;
  text-align: center;
  font-size: 20px;
  border-bottom: 1px solid #15bfff;
  background-color: #fff;
  border-right: 1px solid #15bfff;
}

.inHouseItem {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  border: none;
  border-bottom: solid 1px #f04d56;
  background-color: #f04d56;
}

.otherCompanyItem {
  background-color: #dddddd;
}

.inHousePrice {
  border-bottom: solid 2px #f04d56;
  font-size: 35px;
  font-weight: bold;
  color: #f04d56;
  border-left: solid 3px #f04d56;
  border-right: solid 3px #f04d56;
}

.priceUnit {
  font-size: 24px;
}

.remarks {
  font-size: 11px;
  color: #000;
  font-weight: normal;
}

.remarksFlex {
  display: flex;
  justify-content: center;
}

.bargain {
  width: 945px;
  height: 90px;
  background-color: #ffff00;
  font-size: 40px;
  box-sizing: border-box;
  padding-top: 6px;
  letter-spacing: 1px;
  font-weight: bold;
  color: #000;
  margin: 40px auto;
  text-align: center;
  position: relative;
}

.bargain::before {
  content: '';
  position: absolute;
  top: -48px;
  left: 350px;
  width: 0px;
  border-color: #ffff00;
  border-style: solid;
  border-width: 30px;
  border-left-color: transparent;
  border-top-color: transparent;
  border-right-color: transparent;
}

.smallTxt {
  font-size: 36px;
  margin-left: -2px;
}

.largeTxt {
  font-size: 50px;
  font-weight: bold;
}

.largeTxt span {
  font-size: 30px;
}

.bargainTxt {
  font-size: 26px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  margin-bottom: 30px;
}

.bragainFlex {
  display: flex;
  justify-content: center;
}

.bragainRemarks {
  font-size: 11px;
  color: #000;
  margin-top: 11px;
  font-weight: normal;
}

.bragainItem {
  width: 210px;
  height: 210px;
  display: flex;
  background-color: #fff;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0px 15px;
  line-height: 1.2;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  border-radius: 10px;
  position: relative;
}

.bragainItem::after {
  content: '';
  position: absolute;
  width: 100px;
  height: 100px;
  background-image: url(../img/free_icon.png);
  background-repeat: no-repeat;
  top: -25px;
  left: -0;
}

.remarksItem {
  margin: 50px 20px 0;
}

.bragainItem img {
  z-index: 999;
  margin-bottom: 10px;
}

/* ===================================
#faq よくある質問
=================================== */
#faq {
  background: #f4f4f4;
  padding-bottom: 160px;
}
#faq .mainTitle {
  padding: 110px 0 60px;
}
.faqList {
  width: 1100px;
  margin: 0 auto;
}
.faqList dt {
  height: 60px;
  margin-top: 20px;
  padding-left: 70px;
  font-size: 20px;
  background: #fff;
  color: #13bfff;
  font-weight: bold;
  border-radius: 30px;
  line-height: 1.2;
  display: table;
  position: relative;
  width: 100%;
  box-sizing: border-box;
  cursor: pointer;
}
.faqList dt:hover {
  opacity: 0.7;
}
.faqList dd {
  display: none;
}
.faqList dd div {
  line-height: 1.6;
  padding: 25px 50px 30px 125px;
  font-size: 18px;
  color: #322c38;
  position: relative;
  display: table;
}

.faqList dt::before,
.faqList dd div::before {
  font-style: italic;
  color: #13bfff;
  font-size: 30px;
  font-weight: bold;
  position: absolute;
}
.faqList dt::before {
  content: 'Q.';
  line-height: 60px;
  left: 30px;
}
.faqList dd div::before {
  content: 'A.';
  left: 80px;
  line-height: 28.8px;
  top: 20px;
}

.faqList dt::after {
  content: '';
  width: 10px;
  height: 10px;
  border: 2px solid;
  border-color: transparent transparent #13bfff #13bfff;
  transform: rotate(-45deg);
  display: block;
  box-sizing: border-box;
  position: absolute;
  right: 40px;
  top: 40%;
}
.faqList dt.active::after {
  border-color: #13bfff #13bfff transparent transparent;
  top: 50%;
}

.faqList dt span {
  display: table-cell;
  vertical-align: middle;
}

/* ===================================
#voice
=================================== */
/* ===================================
#voice
=================================== */
.voiceList,
.voiceDetail {
  width: 1100px;
  margin: 0 auto;
}
.voiceList {
  margin-top: 30px;
  padding-bottom: 50px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.voiceDetail {
}

.voiceItem {
  margin-top: 50px;
  box-sizing: border-box;
}
.voiceList .voiceItem {
  border: 1px solid #14bfff;
  width: 532px;
  padding: 20px 30px 0;
}
.voiceDetail .voiceItem {
}

.voiceItem__pic {
  width: 103px;
  height: 103px;
  margin-right: 25px;
  float: left;
  background: #eee url(../voice/img/icon_voice_01.png) no-repeat 50% 50%;
  overflow: hidden;
  border-radius: 52px;
  float: left;
}
.voiceItem__pic.voiceItem__pic--female {
  background-image: url(../voice/img/icon_voice_02.png);
}
.voiceItem__pic.voiceItem__pic--pic {
  background-image: none;
}
.voiceItem__pic img {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  width: 100%;
  height: 100%;
}
.voiceItem__name {
  padding: 10px 0 15px;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  color: #13bfff;
}

.voiceItem__course {
  font-size: 20px;
  font-weight: bold;
  color: #13bfff;
}
.voiceItem__course span {
  height: 26px;
  line-height: 26px;
  font-size: 16px;
  padding: 0 10px;
  margin-right: 10px;
  color: #fff;
  background: #13bfff;
  display: inline-block;
  border-radius: 13px;
}

.voiceItem__score {
  clear: both;
}
.voiceList .voiceItem__score {
  padding-top: 30px;
}
.voiceDetail .voiceItem__score {
  padding-top: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.voiceItem__score__wrap {
  height: 54px;
  line-height: 54px;
  border: 1px solid #14bfff;
}
.voiceList .voiceItem__score__wrap {
  margin-top: 15px;
}
.voiceDetail .voiceItem__score__wrap {
  width: 525px;
  margin-top: 25px;
}
.voiceItem__score__name {
  width: 140px;
  padding: 0 0 0 30px;
  color: #13bfff;
  font-size: 16px;
  box-sizing: border-box;
  float: left;
}
.voiceItem__score__name01 {
  letter-spacing: 2em;
}
.voiceItem__score__name04 {
  letter-spacing: 0.5em;
}
.voiceItem__score dd {
  display: flex;
  justify-content: space-between;
}
.voiceItem__score__text01 {
  font-size: 24px;
  font-weight: bold;
  margin-left: -25px;
  display: flex;
}
.voiceItem__score__text01 div {
  width: 90px;
  text-align: center;
}
.voiceItem__score__text01 div span {
  font-size: 20px;
  font-weight: normal;
}
.voiceItem__score__text01 .voiceItem__score__text01__arrow {
  width: auto;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: bold;
  color: #13bfff;
}
.voiceItem__score__text02 {
  text-align: center;
  height: 54px;
  background: #ff0;
  font-size: 42px;
  font-family: '游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  font-style: italic;
}
.voiceList .voiceItem__score__text02 {
  width: 146px;
}
.voiceDetail .voiceItem__score__text02 {
  width: 170px;
}

.voiceItem__score__text02 span {
  font-size: 24px;
}

.voiceItem__text {
  border-bottom: 1px solid #e6e6e6;
  font-size: 18px;
  line-height: 1.6;
  color: #322c38;
  word-break: break-all;
}
.voiceList .voiceItem__text {
  padding: 20px 0 0;
  min-height: 109px;
}
.voiceDetail .voiceItem__text {
  padding: 40px 0 65px;
}

.voiceItem__link {
  text-align: right;
  font-size: 16px;
  padding: 20px 10px;
  display: block;
  color: #322c38;
}
.voiceItem__link:hover {
  text-decoration: none;
  opacity: 0.7;
}

.voice__link a {
  width: 400px;
  height: 60px;
  line-height: 60px;
  margin: 0 auto 50px;
  text-align: center;
  color: #fff;
  background: #15bfff;
  display: block;
  border-radius: 30px;
  font-size: 16px;
}
.voice__link a:hover {
  text-decoration: none;
  opacity: 0.7;
}
