@charset "utf-8";
/* CSS Document */
/* ##################################################################### */
/*	モバイルレ : 480 px およびそれ以下
/* ##################################################################### */
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
@import url(https://fonts.googleapis.com/earlyaccess/kokoro.css);
@import url(https://fonts.googleapis.com/css2?family=Raleway:wght@200&display=swap);
/* ===================================================================== */
/*	基本設定
/* ===================================================================== */
/* ===================================================================== */
/*	フッターキャンペーン部分を隠す
/* ===================================================================== */
footer{
    /*margin-bottom: 44px;*/
    /*margin-bottom: 0px;*/
	/*margin-top: -44px;*/
	z-index: 100!important;
}

.fixed-bottom{
	/*display: none!important;*/
}

.wf_raleway {
  /*font-size: 1.8rem;*/
  font-weight: 200;
  font-family: 'Raleway', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.3em;
}
.slick-main1 .slick-prev {
    left: 15px;
    z-index: 100;
}

.slick-main1 .slick-next
{
    right: 15px;
}

.slick-main1 .slick-prev, .slick-main1 .slick-next {
	display: block;
	width: 50px!important;
	height: 50px!important;
}
.trainerBox {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: 1px solid #ccc;
}
#trainer .url ul{
	font-size: 80%;
	/*font-size: 100%;
	margin-left: 0px;*/
	padding-left: 20px!important;
}
#trainer .sns ul{
	padding-left: 0px!important;
	list-style: none;
}
#trainer .sns li{
	display: inline-block;
	margin-right: 10px;
}
#trainer .sns img{
	width: 30px;
	height: 30px;
}
/* ===================================================================== */
h1, .h1{
  font-size: 1.8rem;
  font-weight: bold;
}
h2, .h2{
  font-size: 1.2rem;
  font-weight: 400;
}

h3, .h3 {
  /*font-size: 180%;*/
  font-size: 1.3rem;
  font-weight: 300;
}
h4, .h4 {
  /*font-size: 150%;*/
  font-size: 1.2rem;
  font-weight: bold;
  padding-top: 30px;
  padding-bottom: 10px;
  /*    text-align: center;
    margin: 0 auto;*/
}
.h1, .h2, .h3, .h4{
    font-weight: bold;
}
.area {
  padding-top: 30px;
  padding-bottom: 30px;
}
.areaT {
  padding-top: 20px;
}
.areaT2 {
  padding-top: 40px;
}
.areaB {
  padding-bottom: 30px;
}
.circle_wrap{
	position: relative;
}
.circle_inn {
    position: absolute;
    right: -3px;
    bottom: -14px;
    width: 25%;
}
.circle_inn2 {
    position: absolute;
    left: 30px;
    top: 10px;
    width: 12%;
}
.circle_inn3 {
    position: absolute;
    right: -5px;
    bottom: -20px;
    width: 20%;
}
.v_box {
  text-align: center;
  margin: 0 auto;
  padding: 30px;
  background-color: rgba(255, 255, 255, 0.4);
}
.bk1 {
  background-color: rgba(255, 255, 255, 0.85);
  /*margin-bottom: 30px;*/
box-shadow: 7px 7px 15px 5px rgba(0, 0, 0, 0.2);
}

p{
    /*font-size: 0.8125rem;*/
    font-size: 80%;
}

*:focus {
  outline: none !important;
}
.linkBox {
    position: relative;
    z-index: 1;
}
.linkBox a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
    z-index: 2;
}
.linkBox a:hover {
    opacity: 0.1!important;
    background-color: #F39800;
}
.box4_inn.linkBox a:hover {
    opacity: 0.1!important;
    background-color: #fff;
	/*box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2);*/
}

/* ※
--------------------------------------- */
ul.asterisk1 {
  list-style-type: none !important;
  padding-left: 20px;
}
ul.asterisk1 li {
  text-indent: -1em;
  font-size: 80%;
}
ul.asterisk1 li:before {
  content: "※";
}
ul.asterisk2 {
  list-style-type: none !important;
  padding-left: 20px;
  margin-top: 20px;
    margin-bottom: -20px;
}
ul.asterisk2 li {
  text-indent: -1em;
    text-align: left;
    margin-bottom: 20px;
    /*color: #fff;*/
    font-weight: bold;
}
ul.asterisk2 li:before {
  content: "※";
}
ul.asterisk2.h5{
	font-size: 0.8rem;
}
/* ===================================================================== */
/*	見出し　リボン
/* ===================================================================== */
/*	見出し　リボン h1 */
.h_ribon {
  margin-bottom: 3em;
}
.h_ribon h1 {
  position: relative;
  padding: .10em 1em;
  margin-bottom: 15px;
}
.h_ribon h1::before, .h_ribon h1::after {
  content: '';
  position: absolute;
  border-style: solid;
  border-color: transparent;
}
.h_ribon h1::before {
  top: 100%;
  left: 0;
  border-width: 0 15px 15px 0;
  border-right-color: #ccc;
}
/*	見出し　リボン h2 */
.h_ribon h2 {
  position: relative;
  padding: .40em 1em;
  margin-bottom: 15px;
  font-size: 150%;
}
.h_ribon h2::before, .h_ribon h2::after {
  content: '';
  position: absolute;
  border-style: solid;
  border-color: transparent;
}
.h_ribon h2::before {
  top: 100%;
  left: 0;
  border-width: 0 15px 15px 0;
  border-right-color: #ccc;
}
/*	見出し　リボン h3 */
.h_ribon h3 {
  position: relative;
  padding: .40em 1em;
  margin-bottom: 15px;
  font-size: 130%;
}
.h_ribon h3::before, .h_ribon h3::after {
  content: '';
  position: absolute;
  border-style: solid;
  border-color: transparent;
}
.h_ribon h3::before {
  top: 100%;
  left: 0;
  border-width: 0 15px 15px 0;
  border-right-color: #ccc;
}
/*	見出し　リボン p */
.localTitle .h_ribon {
  margin-bottom: 15px;
}
.localTitle .h_ribon p {
  position: relative;
  padding: .30em 1em;
  margin-bottom: 0px;
  font-size: 120%;
}
.localTitle .h_ribon p::before, .localTitle .h_ribon p::after {
  content: '';
  position: absolute;
  border-style: solid;
  border-color: transparent;
}
.localTitle .h_ribon p::before {
  top: 100%;
  left: 0;
  border-width: 0 15px 15px 0;
  border-right-color: #ccc;
}
/* ===================================================================== */
/*	見出し　フラット
/* ===================================================================== */
.h_flat {
  margin-bottom: 3em;
}
.h_flat h1 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
}
.h_flat h2 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
}
.h_flat h3 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
}
/*	見出し　フラット p */
.localTitle .h_flat {
  margin-bottom: 15px;
}
.localTitle .h_flat p {
  position: relative;
  padding: .30em 1em;
  margin-bottom: 0px;
  font-size: 120%;
}
/* ===================================================================== */
/*	見出し　センター
/* ===================================================================== */
.h_center {
  margin-bottom: 3em;
}
.h_center h1 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
  text-align: center !important;
  /*    margin: 0 auto;*/
}
.h_center h2 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
  text-align: center !important;
  /*    margin: 0 auto;*/
}
.h_center h3 {
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 15px;
  text-align: center !important;
  /* margin: 0 auto;*/
}
/* ===================================================================== */
/* ===================================================================== */
/*	見出し　ud_line
/* ===================================================================== */
.pageTitleArea .t_icon h1 {
/*  padding-top: 40px;
  font-size: 90%;*/
  color: #fff;
}
.pageTitleArea h1 {
  color: #fff;
}
.pageTitleArea .ud_line {
  position: relative;
  display: inline-block;
  margin-bottom: 1.5em;
  margin-bottom: 2em;
}
.pageTitleArea p{
/*	padding-top: 10px;
	padding-bottom: 10px;*/
	font-size: 180%;

}


.pageTitleArea .ud_line:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 2px;
  left: 50%;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 2px;
}
.pageTitleArea .t_icon p {
    color: #fff;
    line-height: 1.4;
}
/*.pageTitleArea p {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 180%;
}*/
/* ===================================================================== */
/*	
/* ===================================================================== */
.t_icon h1 {
  text-align: center !important;
}
.t_icon.fff h2, .t_icon.fff h3 {
  color: #fff;
}
.t_icon.bbb h2, .t_icon.bbb h3 {
  color: #000;
}
.t_icon {
  text-align: center;
}
.t_icon h2 {
  padding: 0;
  margin: 0;
  font-size: 90%;
}
.t_icon .small{
    /*font-size: 1.3rem!important;*/
    font-size: 40%!important;
}

.ud_line {
  position: relative;
  display: inline-block;
  margin-bottom: 1.3em;
}
.ud_line:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 50px;
  height: 2px;
  left: 50%;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  /*background-color: #23b6ea;
background-color: #ffe400;*/
  border-radius: 2px;
}
/* ===================================================================== */
dl{
    font-size: 0.8125rem;
}


.newsLists dl.row {
  margin-left: 0;
  margin-right: 0;
}
.newsLists dl {
  width: 100%;
  margin-top: 0px;
  padding-top: 0px;
}
.newsLists dt .date {
  padding-top: 5px;
  font-size: 0.8125rem;
}

  .newsLists dt .date {
    margin-right: 16px; 
  }
  .newsLists dt {
    padding: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px !important;
    font-weight: normal;
  }


.newsLists dd {
  width: 100% !important;
  text-indent: 0px;
  line-height: 1.5em;
  padding-top: 5px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 5px;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #CCC;
}
.cat {
  font-family: "a-otf-futo-go-b101-pr6n", sans-serif;
  font-style: normal;
}
.cat {
    display: inline-block;
    width: 120px;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    /*padding-top: 0.3em;*/
    padding-bottom: 0.2em;
    font-size: 65%;
    /*font-weight: bold;*/
    background-color: #3d3838;
    /*border-radius: 12px;*/
	margin-bottom: 20px;
}
.cat {
    font-family: 'Noto Sans JP';
    font-style: normal;
}
.item2 {
  border-radius: 0px;
}
.label {
    display: inline-block;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    padding: 0.1rem 0.4rem 0.2rem;
    font-size: 85%;
    /* font-weight: bold; */
    background-color: #f61d80;
    margin-right: 10px;
    margin-top: 10px;
    /* border-radius: 12px; */
}
.number {
  line-height: 1.0em;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 10px;
  padding-left: 10px;
  background-color: #ffffff;
  display: block;
  color: #D90003 !important;
  font-size: 200%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  width: 40px;
}
.point_number {
  text-align: center;
  font-weight: bolder;
  font-size: 300%;
  line-height: 1.0em;
  margin-bottom: 0px;
  padding-bottom: 0px;
}
.point {
  text-align: center;
}
label.control-label {
  margin-bottom: 2px;
  color: #000000;
  font-weight: bold;
}
/* --------------------------------------------------------------------- */
/*	共通設定 定義リスト  dl dt dd　FAQ
/* --------------------------------------------------------------------- */
.qanda {
  float: left;
  width: 100%;
}
.qanda dl {
  font-size: 100%;
}
.qanda dl dt {
  /*background-color: #F2F2F2;*/
/*  border: 1px solid #CCCCCC;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 5px;
  margin-left: 0px;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 100%;
  line-height: 1.4em;
  font-weight: normal;
  color: #006;
  padding-right: 10px !important;
  padding-left: 25px !important;*/
}
.qanda dl dt{
	min-height: 40px;
	padding-bottom:10px;
	border-bottom: 1px solid #ccc;
	margin-bottom: 10px;
	/*font-size: 1.2rem;*/
	/*font-size: 80%;*/
}
.qanda dl dd,
.qanda dl dt{
	position: relative;
    padding-left: 40px;
	display: flex;
	align-items: center;
}
.qanda dl dd{
	font-weight: normal!important;
padding-bottom:40px;
	font-size: 80%;
}
.qanda dl dt:before {
/*  content: "Q";
  padding-left: 0px !important;
  margin-right: 10px;
  font-family: 'Orbitron', sans-serif;
  font-size: 160%;
  color: #d90003;*/
	position: absolute;
	top:0;
	left: 0; 
    content: "Q";
    padding-left: 0px!important;
    margin-right: 10px;
    font-size:1.2rem;
    /*color: #3d3838;
    color: #91b522;*/
    color: #fff;
	display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fccb00;
  text-align:center;
  line-height: 30px;	
}


.qanda dd {
/*  background-color: #FFFFFF;
  border: 1px solid #CCCCCC;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 20px;
  padding-top: 5px;
  padding-bottom: 8px;
  width: 100%;
  line-height: 1.8em;
  color: #333;
  padding-right: 10px !important;
  padding-left: 25px !important;*/
}
.qanda dl dd:before {
/*  content: "A";
  padding-left: 0px !important;
  margin-right: 10px;
  font-family: 'Orbitron', sans-serif;
  font-size: 160%;
  color: #00AB38;*/
	position: absolute;
	top:0;
	left: 0; 
    content: "A";
    padding-left: 0px!important;
    margin-right: 10px;
    font-size: 1.2rem;
    /*color: #fccb00;*/
    color: #fff;
    /*color: #b3155d;*/
	display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  /*background:#3d3838;*/
  background:#91b522;
  /*background:#fff;*/
  text-align:center;
  line-height: 30px;	
}
.basic dl {}
.basic dl dt {}
.basic dl dd {
  padding-left: 20px;
}
.adLists dt, .profList dt {
  margin-right: 16px;
  display: block;
  float: none;
}
.adLists dd, .profList dd {
  width: auto;
  padding-left: 0px;
  clear: none;
  padding-bottom: 10px;
  line-height: 1.5em;
  font-size: 110%;
  margin-bottom: 10px;
  padding-top: 0px;
	 border-bottom:solid 1px rgba(0,0,0,0.1);;
}
.jumbotron {
  padding-bottom: 1.0em;
  padding-top: 2.0em;
  font-size: 120%;
}
.signature {
  font-size: 140%;
  font-family: 'Kokoro' !important;
  line-height: 1em;
}
.frame {
  padding: 1em;
  border: 1px solid #DCDCDC;
  margin-bottom: 2em;
}
.caption {
  margin-top: 5px;
  margin-bottom: 0px;
  background-color: #F3F3F3;
  padding-top: 2px;
  padding-bottom: 0px;
  paddinb-left: 10px;
  paddinb-right: 10px;
  font-size: 84%;
}
.caption p {
  paddinb-left: 10px;
  margin-bottom: 0px;
}
.subImage .card-body {
  font-size: 84%;
}
.contact {
  width: 100%;
  display: inline-block;
}
.contact dl {}
.contact dt {
  float: left;
  clear: both;
  font-size: 100%;
  line-height: 1em;
  width: 3em;
}
.contact dd {
  font-size: 100%;
  float: left;
  line-height: 1em;
}
.bnrArea {
  margin-bottom: 50px;
}
.bnrArea ul {
  list-style-type: none !important;
  margin-left: 0px;
  margin-right: 0px;
  padding-left: 0px;
  padding-right: 0px;
  margin: 0px;
}
.bnrArea li {
  list-style-type: none !important;
  display: inline-block;
  width: 48.0%;
  padding-left: 0px;
  padding-right: 0px;
  margin-left: 1px !important;
  margin-right: 2px !important;
  margin-bottom: 15px;
}
.bnrArea li:nth-child(4n) {
  margin-right: 0px !important;
}
.spec {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}
.spec .spec-item {
  margin-right: 10px;
}

.entryBtnZ {
  margin: 60px auto;
  text-align: center;
}

.entryBtnZ a {
  width: 100%;
  display: block;
  cursor: pointer;
  margin: 0 auto;
  color: #fff!important;
  border: 2px solid #fccb00;
  font-size: 18px;
  font-weight: bold;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
/*  border-left-radius: 50%;
  border-radius: 50px;*/
  line-height: 56px;
  /*background-color: #3d3838;*/
  background-color: #fccb00;
  /*background-color: #F39800;*/
}

.entryBtnZ, .entryBtnZ a {
  height: 60px;
  max-width: 500px;
  width: 100%;
}
.entryBtnZ .material-icons {
  line-height: 2 !important;
}


.entryBtnZno {
  text-align: center;
  height: 60px;
  max-width: 500px;
  width: 100%;
  display: block;
  margin: 60px auto;
  color: #fff;
  border: 2px solid #555;
  font-size: 18px;
  font-weight: bold;
  border-left-radius: 50%;
  /*border-radius: 50px;*/
  line-height: 56px;
  background-color: #555;
}

.v_box ul {
  text-align: left;
}
.topline{
  /*border-top: 1px solid #f1f4f6;*/
  border-top: 1px solid #eee;
}
.lineBox {
  /*border: 1px solid #555;*/
  border: 1px solid #ccc;
  /*border: 1px solid #f61d80;*/
  padding: 10px 10px 0px;
}

/* ##################################################################### */
/*	タブレット小
/* ##################################################################### */
@media (min-width: 480px) {
  /* ===================================================================== */
  /*	タブレット小　共通基本設定
/* ===================================================================== */
/*footer{
    margin-bottom: 0px;
}*/	
/*.qanda dl dd{
	font-size: 1.2rem;
}*/
	
.qanda dl dt{
	font-size: 1.2rem;
}	
.qanda dl dd{
	font-size: 100%;
}
	.br480{
		display: none;
	}	
	
h2, .h2{
  /*font-size: 2rem;*/
  font-size: 1.5rem;
}  

dl{
    font-size: 1rem;
}    
.area {
  padding-top: 100px;
  padding-bottom: 100px;
}
.areaB {
  padding-bottom: 80px;
}
.areaT {
  padding-top: 40px;
}
.areaT2 {
  padding-top: 60px;
}	
  /*.newsLists dd {
    padding-left: 90px!important;
    }*/
  .point_number {
    text-align: center;
    font-weight: bolder;
    font-size: 600% !important;
    line-height: 1.0em;
  }
  .bnrArea li {
    width: 23.0%;
    margin-bottom: 25px;
  }
  .entryBtnB, .entryBtn {
    width: 260px;
  }
}
/* ##################################################################### */
/*	タブレット大
/* ##################################################################### */
@media (min-width: 768px) {
  /* ===================================================================== */
  /*	タブレット大　共通基本設定
/* ===================================================================== */
#trainer .url ul{
	font-size: 100%;
}	
h1, .h1{
        font-size: 2.8rem;
    }      
 p{
    font-size:100%;
} 
	
	
.pageTitleArea h1 {
    font-size: 2.1rem;
}    
    
    
  .entryBtnB, .entryBtn {
    width: 400px;
    font-size: 24px;
  }
  .adLists dt, .profList dt {
    float: left;
    /*border-bottom: none;*/
  }
  .adLists dd, .profList dd {
    width: auto;
    padding-left: 70px;
    /*border-bottom: none;*/
  }
  .entryBtn a {
    top: 7px;
  }
  .entryBtnB a {
    top: 7px;
  }
  .h_center {
    margin-bottom: 3em;
  }
  .h_center h1 {
    padding-bottom: 10px;
    padding-top: 10px;
    padding-left: 15px;
  }
  .h_center h2 {
    /*	padding-bottom: 10px;*/
    padding-top: 10px;
    padding-left: 15px;
  }
  .h_center h3 {
    padding-bottom: 10px;
    /*	padding-top: 10px;*/
    padding-left: 15px;
  }
  h3, .h3 {
    font-size: 1.8rem;
  }
  .bnrArea li {
    width: 23.45%;
    margin-bottom: 25px;
  }
  .bnrArea {
    margin-bottom: 150px;
  }
.entryBtnZno,    
.entryBtnZ, .entryBtnZ a {
    font-size: 24px;
    line-height: 66px;
    height: 70px;
    max-width: 600px;
}    
    
}
/* ##################################################################### */
/*	タブレット大
/* ##################################################################### */
@media (min-width: 993px) {
  /* ===================================================================== */
  /*	タブレット大　共通基本設定
/* ===================================================================== */
  .bnrArea li {
    width: 24.5%;
    margin-bottom: 25px;
  }
h2, .h2{
  font-size: 2rem;
}  
ul.asterisk2.h5{
	font-size: 1.3rem;
}
}
/* ##################################################################### */
/*	PC
/* ##################################################################### */
@media (min-width: 1200px) {
  /* ===================================================================== */
  /*	PC　　共通基本設定
/* ===================================================================== */
h1, .h1{
        font-size: 3.5rem;
    }    
.pageTitleArea p{
/*	padding-top: 20px;
	padding-bottom: 15px;*/
	font-size: 200%;
}    
  .newsLists dt {
    clear: both;
    float: left;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #CCC;
    padding-bottom: 10px;
    margin-bottom: 10px !important;
    color: #fff;
  }
  .newsLists dd {
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #CCC;
    padding-bottom: 10px;
    margin-bottom: 10px !important;
    line-height: 1.5em;
    font-size: 100%;
    color: #fff;
  }
  .adLists dt {
    margin-right: 16px;
    display: block;
    float: left;
  }
  .adLists dd {
    width: auto;
    /*border-bottom-style: none;*/
   
    padding-left: 90px !important;
    padding-bottom: 10px;
    margin-bottom: 10px !important;
    line-height: 1.5em;
    font-size: 110%;
  }
  .subImage .card {
    max-width: 33%;
  }
}