@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

img{
	width: 100%;
	vertical-align:bottom; /* img要素にここを指定 */
}

a {
	color: #727171;
}



a:link {
	text-decoration: none;	
}

a:hover img {
    opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

html{background-color: #f6ab00;}


/*================================================
 *  一般・共通設定
 ================================================*/

body {
font-family: 'Noto Sans JP', sans-serif;
    font-family: 'M PLUS 1p', sans-serif;
	color: #727171;
	line-height: 1.6;
	word-wrap: break-word;
    font-size: 100%;
    background-color: #ffffff;
    
	}


/* 小さい画面用の設定-------------- */
@media (max-width:800px){

body {
    font-size: 88%;
	}
	}
/* -------------end------------- */



/*================================================
 *  リンクスタイル
 ================================================*/
a:hover {
	opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}


/*================================================
 *  ヘッダー
 ================================================*/

.header_outside{background-color:#ffffff;
padding-bottom: 20px;
padding-top: 30px;}

.header {
	box-sizing: border-box;
	width: 90%;
    margin-left: auto;
    margin-right: auto;
	max-width: 1380px;

}


.header_list{display: flex;
justify-content: space-between;
align-items: flex-end;}

.header_list > li:first-child{
width: 20%;
}

.header_list > li:last-child{
 width: 76%;
    }




/* 小さい画面用の設定-------------- */
@media (max-width:1000px){
.header_outside{
padding-bottom: 10px;
padding-top: 15px;}


.header_list > li:first-child{
	width: 60%;
}

}
/* -------------end------------- */




/*================================================
 * グロナビ固定
 ================================================*/

.nav_fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    background-color: #ffffff;
    width: 100%;
    background-color: rgba(255,255,255,.80);
    border-bottom: 1px solid #CCCCCC;
}

.nav_fixed .drawer_nav_wrapper{
    margin-left: auto;
    margin-right: auto;
	max-width: 1000px;
padding-top: 10px;
padding-bottom: 10px;}



/* ========================================

    ■ slide

======================================== */
.slide_wrap {position: relative;
margin-bottom: 50px;}

.slide_upper{
position: absolute;
    top:25%;
    left: 4.2%;
    width: 59%;
    filter: drop-shadow(2px 2px 2px #333);
/*top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);*/

}



/* フェードイン(初期値) */
.moveup div {
  opacity: 0; /* 最初は非表示 */
  transform: translateY(230px); /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s; /* 透過率と縦方向の移動を0.8秒 */
}
.moveup div.move {
  opacity: 1; /* 表示領域に入ったら表示 */
  transform: translateY(0); /* 30px上に移動する */
  transition-delay: .5s; /* フェード開始を0.5秒遅らせる */
}






/* ========================================

    ■ common

======================================== */

.contents{
	max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 96%;
    padding-top: 50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}

.contents_zero{
	max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 96%;}

.contents_80{
	max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    padding-top: 50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}




/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.contents{
	width: 90%;
     padding-top: 30px;
    padding-bottom: 30px;
}
    
.contents_zero{
 width: 90%;}

}

.contents_80{
 width: 90%;
}

/* -------------end------------- */

.eng_headline{font-size:540%;
margin-bottom: 30px;
color: #9fa0a0;
line-height: 1.0;
font-family: 'Hind', sans-serif;}

.eng_headline_center{font-size:540%;
margin-bottom: 30px;
color: #9fa0a0;
line-height: 1.0;
font-family: 'Hind', sans-serif;
text-align: center;
}

.about_headline{font-size:188%;
color: #9fa0a0;
margin-bottom: 20px;
}


.about_headline_center{font-size:188%;
color: #9fa0a0;
margin-bottom: 20px;
    text-align: center;
}


.mid_headline{font-size:125%;
    margin-bottom: 10px;
    font-weight: 700;
}

.mid_headline_center{font-size:125%;
    margin-bottom: 10px;
    font-weight: 700;
    text-align: center;
}

.small_headline{font-size:125%;
    margin-bottom: 10px;
    font-weight: 700;
}


.honbun{line-height: 2.25;}




.honbun_center{line-height: 2.25;
text-align: center;}

.common_flex{display: flex;
justify-content: space-between;
}
.common_flex > li{width: 49%;}


/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.eng_headline{font-size:320%;
margin-bottom: 15px;
}
    
.eng_headline_center{font-size:320%;
margin-bottom: 15px;
text-align: left;
}
    
.about_headline{font-size:125%;
margin-bottom: 10px;
}
    
.about_headline_center{font-size:125%;
margin-bottom: 10px;
text-align: left;
}
    
.mid_headline{font-size:113%;

}

.mid_headline_center{font-size:113%;
   text-align: left;
}
    
.honbun{line-height: 2.0;}

.honbun_center{line-height: 2.0;
text-align: left;}
    
    
.common_flex{flex-wrap: wrap;
}
.common_flex > li{width: 100%;}
    
.common_flex > li:first-child{margin-bottom: 20px;}
	}
/* -------------end------------- */

/*================================================
 *  con_news
 ================================================*/

.con_news_flex{display: flex;
justify-content: space-between;
margin-bottom: 100px;}

.con_news_flex li:first-child{
width: 40%;
/*padding-left: 5%;
padding-right: 2%;*/
box-sizing: border-box;}

/* 大きい画面用の設定-------------- */
@media (min-width:801px){
.news_inner{max-width: 496px;
margin-right: 0;
margin-left: auto;
padding-right: 5%;
box-sizing: border-box;}
	}
/* -------------end------------- */



.con_news_flex > li:last-child{width: 60%;}

.news_sns_icon {
display: flex;
justify-content: center;
line-height: 1.0;
   width: 46%;
    margin-left: auto;
    margin-right: auto;
    
}
.news_sns_icon a {
color: #9fa0a0;
font-weight: 900;
font-size: 400%;
}



.news_dl dd{
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #EEEEEE;
    position: relative;
    padding-right: 20px;
}

.news_dl dd::after{font-family: "Font Awesome 5 Free";
  content: "\f105";
    font-weight: 900;
    position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -26px;
    
 }

.bt_ichiran{margin-bottom: 20px;
text-align: right;}

.bt_ichiran::after{font-family: "Font Awesome 5 Free";
  content: "\f105";
    font-weight: 900;
    padding-left: .5em;
    padding-right: 10px;
    
 }



/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.con_news_flex{
margin-bottom: 60px;
flex-wrap: wrap;}
    
 .con_news_flex li:first-child{
width: 90%;
     margin-left: auto;
     margin-right: auto;
     margin-bottom: 20px;
}


.con_news_flex > li:last-child{width: 100%;}
    
.news_inner{max-width: 800px;}



}
/* -------------end------------- */


/*================================================
 *  con_about
 ================================================*/

.about_flex{display: flex;
justify-content: space-between;
position: relative;
margin-bottom: 100px;
justify-content: flex-end;}

.about_img img{border-radius: 50%;}



/* 大きい画面用の設定-------------- */
@media (min-width:801px){
.about_img{position: absolute;
left:0;
bottom: -20px;
width: 50%;
box-sizing: border-box;
}




.about_flex > li{width: 47%;
box-sizing: border-box;}
	}
/* -------------end------------- */

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.about_flex{margin-bottom: 60px;
    flex-wrap: wrap;}
    
.about_flex > li{width: 100%;
    margin-bottom: 20px;}

    .about_img{width: 80%;
    margin-left: auto;
    margin-right: auto;}
    
	}
/* -------------end------------- */




/*================================================
 *  con_movie
 ================================================*/
.movie_wrap {
     /*max-width: 853px;*/
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #eeeeee;
    
}
.movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

iframe{
vertical-align:bottom;
}

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.movie_wrap{width: 94%;
     margin-left: auto;
    margin-right: auto;}

}
/* -------------end------------- */

/*================================================
 *  con_program_coach
 ================================================*/
.con_program_coach_flex{display: flex;
justify-content: space-between;
padding-top: 50px;
padding-bottom: 50px;
}

.con_program_coach_flex li{width: 50%;
    position: relative;
}

.con_program_coach_flex li p{position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
font-family: 'Hind', sans-serif;
font-size: 530%;
color: #ffffff;
filter: drop-shadow(3px 3px 3px #333);
}

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
 .con_program_coach_flex{
     padding-top: 30px;
    padding-bottom: 30px;
}
.con_program_coach_flex li p{font-size: 225%;
}
}
/* -------------end------------- */



/*================================================
 * apply
 ================================================*/
.apply_list li{padding-left: 1em;
text-indent: -1em;
line-height: 2.25;}

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
    .apply_list li{
line-height: 1.6;}
    
	}
/* -------------end------------- */


/*================================================
 *  footer
 ================================================*/
.footer_outside{
    background-color: #f6ab00;
    color: #ffffff;
}

.footer{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
	max-width: 1380px;
padding-top: 20px;
	padding-bottom: 10px;
	}

.footer a{
   color: #ffffff;
	}

.footer_flex_box{display: flex;
justify-content: space-between;
    margin-bottom: 30px;
}

.footer_flex_box > li:first-child{width: 60%;}
.footer_flex_box > li:last-child{width: 25%;}

.footer_inner_flex_box{display: flex;
justify-content: space-between;}

.footer_inner_flex_box > li:first-child{width: 20%;}
.footer_inner_flex_box > li:first-child img{width: 80%;}
.footer_inner_flex_box > li:last-child{width: 80%;}

.footer_name{font-size: 138%;
    font-weight: 700;
}

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.footer{
padding-bottom: 60px;
}
.footer_flex_box{flex-wrap: wrap;
}

.footer_flex_box > li:first-child{width: 100%;
    margin-bottom: 20px;}
.footer_flex_box > li:last-child{width: 50%;
    margin-left: auto;
    margin-right: auto;}
    
.footer_name{font-size: 125%;
}
    
	}
/* -------------end------------- */

/* ========================================

    ■ SNS

======================================== */

.sns_flex_box > li:first-child {
	text-align: center;
}

/* 大きい画面用の設定-------------- */
@media (min-width:801px) {
.sns_flex_box {
display: flex;
justify-content: space-between;
    align-items: center;


}

.sns_flex_box > li {width: 50%;
}
    
.share_txt{font-family: 'Hind', sans-serif;
    font-size: 125%;
    line-height: 1.2;}
    
}
/* -------------end------------- */

.sns_icon {
display: flex;
font-size: 300%;
justify-content: space-around;
    line-height: 1.0;
}
.sns_icon a {
	color: #ffffff;
}



address{
	color: #ffffff;
	text-align: center;
	font-size: 75%;
      font-family: 'Hind', sans-serif;
    font-weight: 300;
}



/* ====================================================
　pagetop
==================================================== */

.pagetop {
    display: none;
    position: fixed;
    bottom: 5px;
    right: 15px;
	z-index: 1000;
    
}
.pagetop a {
    display: block;
   color: #9fa0a0;
    font-size: 300%;
}
.pagetop a:hover {
display: block;}

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
.pagetop {
    line-height: 1.0;
 bottom: 0px;
    right: 5px;
}
	}
/* -------------end------------- */


/* ====================================================
　page_btm_fixed
==================================================== */
#page_btm_fixed{
position: fixed;
right: 65px;}


.footer_bt_mail {
	background-color: #f6ab00;
	position: relative;
	text-align: center;
	font-family: 'Hind', sans-serif;
	border-top: 2px solid rgba(255,255,255,1.00);
	border-right: 2px solid rgba(255,255,255,1.00);
	border-left: 2px solid rgba(255,255,255,1.00);
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
}

.footer_bt_mail:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0e0";
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -24px;
	color: #fff;
	font-size: 188%;
}


.footer_bt_mail a{
    padding-top: 20px;
    padding-right: 30px;
    padding-left: 60px;
    padding-bottom: 20px;
    display: block;
	color: #fff;
	font-weight: 700;}


/* 小さい画面用の設定-------------- */
@media (max-width:800px){
#page_btm_fixed{
position: fixed;
right: 0;
bottom: 0;
width: 100%;
 }
    
    .footer_bt_mail {
	width: 50%;
        margin-left: auto;
        margin-right: auto;
}

.footer_bt_mail a{
    padding-top: 10px;
    padding-right: 10px;
    padding-left: 30px;
    padding-bottom: 10px;
}

}
/* -------------end------------- */



/* ====================================================
　改行位置
==================================================== */
@media print, screen and (min-width: 768px) {
br.sp { display: none; }
br.pc { display: inline; }
}
@media screen and (max-width: 767px) {
br.sp { display: inline; }
br.pc { display: none; }
}


	 
	 


/* PC向けレイアウトの指定：961px以上では固定レイアウト */
.miniimage { display: none; }  /* miniを非表示 */
.bigimage  { display: block; 
line-height: 0px;} /* bigを表示 */
	
@media only screen and (max-width: 768px) {
.miniimage {
	display: block;
	line-height: 0px;
} /* miniを表示 */
.bigimage  { display: none; }   /* bigを非表示 */
}


/*  PCのみに表示するメニュー*/
.only_smt { display: none; }  /* miniを非表示 */
.only_pc  { display: block; 
} /* bigを表示 */
	
/*  スマホのみに表示するメニュー*/
@media only screen and (max-width: 768px) {
.only_smt {
	display: block;
	
} /* miniを表示 */
.only_pc  { display: none; }   /* bigを非表示 */
}







/* 大きい画面用の設定-------------- */
@media (min-width:801px){
    #news_link,
#about_link{
    padding-top: 50px;
        margin-top:-50px;}
	}
/* -------------end------------- */

/* 小さい画面用の設定-------------- */
@media (max-width:800px){
        #news_link,
#about_link{
    padding-top: 30px;
        margin-top:-30px;}
	}
/* -------------end------------- */

/* フェードイン用のCSS */
.slide-bottom {
   opacity: 0;
   transform: translateY(50px);
   transition: all 1.3s 0s ease-out;
 }







