@charset "utf-8";
/* @import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css); */
html{
  width: 100%;
  height: 100%;
  font-size: 62.5%;
}
body{
width: 100%;
font-family: -apple-system, BlinkMacSystemFont, 'FP-HiraginoUDSansStdN-W4',"Frutiger Neue LT W1G","\30D2\30E9\30AE\30CEUD\2F93\30B4 Std", "Segoe UI",Roboto, "Hiragino Sans", "Noto Sans CJK JP", "Yu Gothic", sans-serif;
line-height: 1.8;
font-weight: 500;
}
main{
  margin-top: 102.859px;
}
h2{
  font-size: 3rem;
  line-height: 1;
  text-align: center;
  display: table;
  padding: 0 4%;
  border-left:5px solid #CC0000;
  border-right:5px solid #CC0000;
  margin: 0 auto;
}
h3{
  font-size: 2.8rem;
  text-align: center;
}
img{
  width: 100%;
}
table{
  width: 100%;
  text-align: center;
  margin-top: 16px;
  margin-bottom: 5px;
}
th{
  font-size: 1.4rem;
  background: #E4E6EC;
  border-right: 3px solid #fff;
  padding: 2px 10px;
}
th:last-child{
  border-right: 3px solid #E4E6EC;
  border-left: 3px solid #E4E6EC;
}
tr{
  border-bottom: 3px solid #E4E6EC;
  border-left: 3px solid #E4E6EC;
  vertical-align: middle;
}
td{
  font-size: 1.4rem;
  background: #fff;
  border-right: 3px solid #E4E6EC;
  border-left: 3px solid #E4E6EC;
  padding: 2px 10px;
  vertical-align: middle;
}
a{
  text-decoration: none;
  color: #000;
}
.dt_br{
  display: block;
}
.sp_br{
  display: none;
}
.scroll_sp{
  display: none;
}
.c_red{
  color: #CC0000;
}
.c_fff{
  color: #fff;
}
.title_area{
  text-align: center;
  margin-bottom: 64px;
}
.txt_center{
  text-align: center;
}
.sec_sp_m{
  margin: 84px auto;
}
.sec_sp_p{
  padding: 84px 0;
}
/* 文字関係 */
.f_27{
  font-size: 2.7rem;
}
.f_24{
  font-size: 2.4rem;
}
.f_20{
  font-size: 2rem;
}
.f_18{
  font-size: 1.8rem;
}
.f_16{
  font-size: 1.6rem;
}
.f_14{
  font-size: 1.4rem;
}
.f_12{
  font-size: 1.2rem;
  letter-spacing: 0.12rem;
}
.f-6w{
  font-weight: 600;
}
.f-9w{
  font-weight: 900;
}
.main_inner{
  max-width: 988px;
  margin: 0 auto;
}
.flex, .sp_flex{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sponliy_flex{
  display: block;
}
.under_bar{
  border-bottom: 3px solid #CC0000;
  padding: 0 5px;
}
/* ヘッダー */
.nav-wrapper{
  display: none;
}
header{
  background: #fff;
  border-bottom: 4px solid #CC0000;
  padding: 18px 0;
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 5;
}
.logo_flax{
  width: 25%;
  margin-right: 5%;
  align-items: center;
}
.logo{
  width:366px;
}
.h1_name{
  text-align: start;
  width: 90%;
  margin-left: 10px;
  font-family: 'Noto Sans JP', sans-serif;
}
.nav_list{
  width:70%;
}
.nav_item{
  text-align: center;
  line-height: 1.4;
}
.nav_item:hover{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color: #CC0000;
}
.nav_active{
  color: #CC0000;
}
.nav_list_sp{
  display: none;
}
.list {
  display: none;
}
/* キーイメージ、エアラインスクール */
.top_kv{
  position: relative;
  width: 100%;
  height: 680px;
  overflow: hidden;
}
.kv_wrap{
  position: absolute;
  left: 0;
  width: 100%;
  z-index: -1;
}
.kv_wrap img{
  object-position: center top;
}
.airlne_school{
  background-color: rgba(204,0,0,0.86);
  z-index: 1;
  position: absolute;
  bottom: 2%;
  left: 13%;
  transform: translateX(20%);
  text-align: right;
  padding: 35px 60px;
  color: #fff;
  transform: translate(-13%, -2%);
  -webkit-transform: translate(-13%, -2%);
  -ms-transform: translate(-13%, -2%);
}
.copy_01{
  font-size: 4rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.32rem;
  margin-bottom: 15px;
}
.copy_02{
  font-size: 2.2rem;
  line-height: 1.4;
  letter-spacing: 0.32rem;
}
/* 固定ボタン */
.link_bt{
  width: 48px;
  background: #CC0000;
  color: #fff;
  position: fixed;
  right: 0;
  text-align: center;
  border-radius: 8px 0 0 8px;
  padding: 10px 0;
  line-height: 1.5;
  z-index: 3;
  box-sizing: border-box;
  border: solid 1px #CC0000;
}
#briefing{
  top: 130px;
  height: 174px;
}
#contact_fix_bt{
  top: 320px;
  height: 198px;
}
#contact_fix_bt a{
  color: #fff;
}
#briefing a{
  display: block;
  height: 100%;
  color: #fff;
}
.briefing_arrow_bk{
  background: #fff;
  width: 28px;
  border-radius: 6px;
  margin: 6px auto 0 auto;
  height: 28px;
  position: relative;
}

.bt_arrow {
  display: inline-block;
  vertical-align: middle;
  color: #CC0000;
  line-height: 1;
  width: 14px;
  height: 2px;
  background: currentColor;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

.bt_arrow::before {
  content: '';
  width: 8px;
  height: 8px;
  border: 2px solid currentColor;
  border-right: 0;
  border-bottom: 0;
  transform: rotate(-45deg);
  transform-origin: top left;
  position: absolute;
  top: 50%;
  left: -0.05em;
  box-sizing: border-box;
}
.link_bt:hover{
  transition : .4s;
  width: 56px;
  background: #fff;
  color: #CC0000;
}

.link_bt:hover .bt_arrow{
  transition : .4s;
  color: #fff;
}
.link_bt:hover .briefing_arrow_bk{
  transition : .4s;
  background: #CC0000;
}
.link_bt:hover .bt_arrow::before{
  transition : .4s;
  border: 2px solid #fff;
  border-right: 0;
  border-bottom: 0;
}
/* トップに戻るボタン */
#page_top{
  position: fixed;
  z-index: 3;
  cursor: pointer;
  cursor: hand;
  width: 55px;
  height: 55px;
  bottom: -18%;
  right: 3%;
  background-image: url(../img/top_bt.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
#page_top a{
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  border-bottom: none;
}
#page_top:hover{
  width: 58px;
  height: 58px;
}
/* 新着情報 */
.news{
  background: #fff;
  align-items: center;
  justify-content: center;
  box-shadow: 0 3px 24px 0 rgb(0 0 0 / 15%);
  margin-top: 30px;
  margin-bottom: 24px;
  padding: 12px;
}
.news_left{
  width: 22%;
  padding: 70px 0;
  margin-left: 1%;
  background: #CC0000;
  color: #fff;
  text-align: center;
  font-size: 2.4rem;
}
.news_right{
  width: 75%;
  margin: 10px 1% 10px 1%;
}
.news_con.flex{
  align-items: center;
  justify-content: flex-start;
}
.news_con{
  padding: 10px;
  border-bottom: 1px solid #000;
}
.news_time{
  width: 22%;
}
.news_txt{
  width: 76%;
  padding-left: 2%;
}
/* 説明会バナー */
.info_banner{
  padding: 14px;
  background-image: url(../img/info_banner.png);
  background-position: center top;
  background-size: cover;
  margin-bottom: 85px;
}
.info_banner:hover{
  transition-duration: 0.3s;
  opacity: .7;
}
.info_banner02{
  padding: 14px;
  background-image: url(../img/info_banner02.png);
  background-position: center top;
  background-size: cover;
  margin-bottom: 85px;
}
.info_banner02:hover{
  transition-duration: 0.3s;
  opacity: .7;
}
/* .info_banner {
  position: relative;
  overflow: hidden;
  padding: 14px;
  margin-bottom: 85px;
  height: auto;
  }
  .info_banner:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url(../img/info_banner.png) no-repeat center top;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
  }
  .info_banner:hover:after {
  opacity: .8;
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  }
  .info_banner a {
  position: relative;
  z-index: 1;
  height: 100%;
  text-decoration: none;
  color: #fff
  } */
.info_con{
  color: #fff;
  text-align: center;
  border: 2px solid #fff;
}
.inner_line{
  padding: 24px;
}
.info_title, .info_data{
  font-size: 2.8rem;
  font-weight: 600;
}
.info_data{
  margin: 3px auto;
}
.info_kome{
  font-size: 1.6rem;
}
.info_bt{
  font-size: 2rem;
  font-weight: 600;
  padding: 14px;
  background: #fff;
  color: #7F7F83;
  width: 36%;
  margin: 16px auto 0 auto;
}
/* こんなお悩み */
#worries{
  position: relative;
}
#worries::before{
	position: absolute;
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	border-top-color: #fff;
	border-width: 30px;
	margin-left: -30px;
}
.fukidashi{
  position: relative;
  border: none;
  padding: 0 40px;
}
.fukidashi .fukidashi_line::before,
.fukidashi .fukidashi_line::after{
  content: "";
  display: inline-block;
  background: #CC0000;
  width: 4px;
  position: absolute;
  height: 32px;
  bottom: -10px;
}
.fukidashi .fukidashi_line::before{
  left: 0;
  transform: rotate(-30deg);
}
.fukidashi .fukidashi_line::after{
  right: 0;
  transform: rotate(30deg);
}
.tx_big{
  font-size: 3.6rem;
}
.wor_wrap{
  margin-top: 50px;
  position: relative;
}
.wor_bk{
  width: 409px;
  margin: 0 auto;
}
.wor_txt_con{
  width: 356px;
  height: 126px;
  background: #fff;
  border-radius: 25px;
  padding: 25px;
  box-shadow: -2px 0px 6px rgb(0 0 0 / 26%), 5px 5px #cc0000;
  display: table;
  box-sizing: border-box;
}
.table_cell{
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.wor_txt_con p{
  display: inline-block;
  text-align: left;
}
.wor_fukidashi_wrap{
  position: absolute;
  width: 100%;
  top: 0;
  height: 100%;
}
.wor_fukidashi_wrap .flex:last-child{
  position: absolute;
  width: 100%;
  bottom: 0;
}
/* スクールの特徴 */
#feature{
  background: #F3F4F5;
  padding: 84px 0;
}
#feature .title_area, #course .title_area, #voice .title_area{
  color: #CC0000;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}
#feature h2{
  padding: 0 1%;
}
#course .title_area{
  margin-bottom: 15px;
}
.course_link_wrap{
  flex: 1;
  position: relative;
  overflow: hidden;
  max-width: 394px;
}
.course_img{
  text-align: center;
}
.course_img img{
  vertical-align: top;
}
.course_img_left{
  margin-right: 5%;
}
.course_link_wrap:hover img{
  -moz-transform: scale(1.04);
  -webkit-transform: scale(1.04);
  -ms-transform: scale(1.04);
  transform: scale(1.04);
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
}
.course_link_wrap:hover.course_img_left .course_img_txt_box
.course_link_wrap:hover.course_img_right .course_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
}
.course_link_wrap:hover.course_img_left .course_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:rgba(248,113,138,1);
}
.course_link_wrap:hover.course_img_right .course_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:rgba(140,181,45,1);
}
.course_img_txt_box{
  position: absolute;
  bottom: 0;
  width: 100%;
  background:rgba(248,113,138,0.87);
}
.course_img_right .course_img_txt_box{
  background:rgba(140,181,45,0.87);
}
.course_img_txt_box .sp_flex{
  padding: 0 9%;
  color: #fff;
}
.course_img_title{
  padding: 10px 0;
}
.course_img_title div{
  line-height: 1.5;
}

.course_arrow_bk{
  width: 30px;
  height: 30px;
  background: #fff;
  padding: 7px;
  box-sizing: border-box;
}
.course_arrow {
  display: inline-block;
  vertical-align: middle;
  color: #F8718A;
  line-height: 1;
  position: relative;
  width: 14px;
  height: 2px;
  background: currentColor;
}

.course_arrow::before {
  content: '';
  width: 9px;
  height: 9px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
}
.course_img_right .course_arrow{
  color: #8CB52D;
}
.course_img a{
  display: block;
  height: 100%;
}
.feat_bk{
  background: #fff;
}
.bk_img{
  background: url(../img/info_bk.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position-y: 0;
}
.feat_con{
  padding: 36px 0 76px 0;
}
.feat_title{
  display: table;
  margin: 0 auto;
  padding-top: 30px;
}
.feat_title h3{
  position: relative;
  padding-left: 22px;
}
.feat_title h3::before{
  content: "";
  background: url(../img/feat_point.png);
  width: 30px;
  height: 30px;
  display: inline-block;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: -5px;
  left: 0;
}
.feat_title h3::after{
  content: "";
  background: url(../img/feat_ub.png);
  width: 100%;
  height: 23px;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
}
.feat_sub_title{
  text-align: center;
}
.category_wrap{
  width: 90%;
  margin: 30px auto 0 auto;
}
.ca01_left{
  width: 40%;
  margin-right: 7%;
  position: absolute;
  left: 20%;
  transform: translateX(-20%);
  -webkit-transform: translateX(-20%);
  -ms-transform: translateX(-20%);
}
.ca01_right{
  width: 30%;
  position: absolute;
  right: 20%;
  transform: translate(20%);
  -webkit-transform: translateX(20%);
  -ms-transform: translate(20%);
}
.category01.flex{
  justify-content:center;
  position: relative;
  height: 268px;
}
.category02,.category03{
  margin-top: 94px;
}
.ca_point_title{
  display: table;
  margin: 0 auto;
}
.ca02_con{
  margin-top: 52px;
}
.ca_point_title h3{
  position: relative;
  padding: 0 60px 7px 60px;
  border-left: solid 2px #000;
  border-bottom: solid 2px #000;
  font-size: 2rem;
}
.ca_point_title h3::before{
  content: "";
  background: url(../img/point_icon.png);
  width: 65px;
  height: 59px;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: -40px;
  top: -24px;
}
.ca_point_title h3::after{
  content: "";
  background: url(../img/point_arrow.png);
  width: 37px;
  height: 27px;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  right: 0;
  bottom: -13px;
}
.ca02_left, .ca02_right{
  flex: 1;
}
.ca02_left{
  margin-right: 5%;
}
.ca02_text_box{
  text-align: center;
  margin-top: 10px;
}
.ca02_img_box img{
  box-shadow: 1px 1px 4px rgb(0 0 0 / 32%);
}
.category03 .ca_point_title h3::before{
  content: "";
  background: url(../img/point_icon.png);
  width: 65px;
  height: 59px;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: -40px;
  top: -1px;
}
.ub_yellow{
  background: linear-gradient(transparent 50%, #ffff7f 50%);
}
.category03 .ca_point_title h3{
  padding-bottom: 14px;
}
.ca03_con{
  margin-top: 108px;
}
.step{
  /* box-shadow:0px 0px 2px rgb(0 0 0 / 18%); */
  margin-bottom: 134px;
  position: relative;
  width: -webkit-calc(100% - 34px);
  width: calc(100% - 34px);
  margin-left: 34px;
  border: solid 2px rgb(0 0 0 / 66%);
}
.step::before{
  content: "";
  width: 110px;
  height: 110px;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: -28px;
  top: -50px;
}
.step01::before{
  background: url(../img/step_num_1.png);
}
.step02::before{
  background: url(../img/step_num_2.png);
}
.step03::before{
  background: url(../img/step_num_3.png);
}
.step:last-child{
  margin-bottom: 0;
}
.step .flex{
  align-items: flex-start;
}
.step_left h4{
  text-align: center;
  font-size: 2.2rem;
}
.step_left, .step_right{
  flex: 1;
}
.step_left{
  padding: 28px 3%;
}
.step_left p{
  margin-top: 30px;
}
.step_right{
  overflow: hidden;
  height: 291px;
}
.step_right img{
  display: block;
  width: auto;
  height: 100%;
  object-fit: cover;
}
.step_txt_box{
  padding: 10px 3%;
  background: #CC0000;
}
/* コース紹介 */
#course{
  margin: 84px 0 120px 0;
}
.course_sub_title{
  text-align: center;
  margin-bottom: 64px;
}

.course_bk{
  background: #F3F4F5;
  z-index: -1;
  padding: 100px 0;
}
.course_con{
  width: 84%;
  padding-bottom: 74px;
  margin: 0 auto;
}
.course_con:last-child{
  padding-bottom: 0;
}
.course_title{
  background: #fff;
  padding: 5px 0 5px 20px;
  margin-bottom:30px;
  border-left: 12px solid #CC0000;
}
.course_txt{
  margin-bottom: 18px;
}
/* 受講生の声 */
#voice{
  background: #F2F2F2;
}
#voice .title_area{
  margin: 0 auto 15px auto;
}
.vo_box{
  padding: 20px 13%;
  background: #fff;
  box-shadow: 1px 1px 4px rgb(0 0 0 / 32%);
  margin-bottom: 28px;
}
.vo_box:last-child{
  margin-bottom: 0;
}
.vo_txt{
  width: 70%;
  margin-right: 4%;
}
.vo_img{
  width: 26%;
}
.vo_img p{
  text-align: center;
}
#voice .contact_bt{
  height: 72px;
  width: 434px;
  margin: 64px auto 0 auto;
}
#voice .contact_img_txt_box{
  border: solid 4px #3B3838;
  background:#3B3838;
  border-radius: 10px;
}
#voice .contact_img_txt_box .sp_flex:hover{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color: #3B3838;
}
#voice .contact_img_txt_box:hover.contact_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#fff;
}
#voice .contact_img_txt_box:hover .contact_arrow_bk{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#3B3838;
}
/* #voice .contact_img_txt_box:hover .contact_arrow{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color:#fff;
} */
#voice .material-icons::before{
  /* content: "\E90D"; */
  content: "\e3e0";
}
.material-icons{
  transform: rotate(180deg);
}
/* メディア紹介 */
#media .title_area{
  margin-bottom: 15px;
}
#media .course_sub_title{
  margin-bottom: 42px;
}
.slider{
  width: 65%;
  margin: 0 auto;
  text-align: center;
}
#js-slider-1.slider-1:hover#js-slider-1.slider-1 li{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  opacity: .7;
}
.medium{
  margin-top: 10px;
}
.medium_title{
  margin-bottom: 10px;
}
/* コースを詳しく見る */
#course_link{
  margin-bottom: 116px;
  margin-top: 106px;
}
#course_link .course_link_wrap{
  margin-right: 1%;
}
#course_link .course_link_wrap:last-child{
  margin-right: 0;
}
#course_link .course_link_wrap a{
  z-index: 1;
}

/* 問い合わせ */
#contact{
  background: #F2F2F2;
  padding-bottom: 74px;
}
.con_icon{
  width: 250px;
  /* width: 288px; */
  margin: 0 auto;
  position: relative;
  top: -64px;
}
.contact_con{
  margin-top: -52px;
}
.contact_info{
  text-align: center;
  margin-bottom: 30px;
}
.contact_left, .contact_right{
  flex: 1;
}
.contact_left{
  margin-right: 8%;
  margin-left: 2%;
}
.contact_right{
  margin-right: 2%;
}
.contact_txt{
  margin-bottom: 10px;
  text-align: center;
}
.contact_img_txt_box{
  width: 100%;
  border: 2px solid #fff;
  box-shadow: 0px 0px 3px rgb(0 0 0 / 32%);
  height: 100%;
  box-sizing: border-box;
}
.contact_left .contact_img_txt_box{
  border: solid 4px #3B3838;
  background:#3B3838;
  border-radius: 10px;
}
.contact_right .contact_img_txt_box{
  border: solid 4px #F36028;
  background:#F36028;
  border-radius: 10px;
}
.contact_img_txt_box .sp_flex{
  padding: 0 16%;
  color: #fff;
  height: 100%;
}
.contact_img_txt_box:hover .contact_arrow::before{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  border: 2px solid #fff;
  border-left: 0;
  border-bottom: 0;
}
.contact_img_title{
  margin: 0 auto;
  padding: 10px 0;
  text-align: center;
}
.contact_img_title div{
  line-height: 1.5;
}
.contact_arrow_bk{
  width: 30px;
  height: 30px;
  background: #fff;
  padding: 7px;
  box-sizing: border-box;
}
.contact_arrow {
  display: inline-block;
  vertical-align: middle;
  color: #3B3838;
  line-height: 1;
  position: relative;
  width: 16px;
  height: 2px;
  background: currentColor;
  top: -1px;
}
.contact_arrow::before {
  content: '';
  width: 9px;
  height: 9px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
}
.contact_right .contact_arrow{
  color: #F36028;
}
.contact_left .contact_img_txt_box .sp_flex:hover{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color: #3B3838;
}
.contact_left .contact_img_txt_box:hover.contact_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#fff;
}
.contact_left .contact_img_txt_box:hover .contact_arrow_bk{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#3B3838;
}
.contact_left .contact_img_txt_box:hover .contact_arrow{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color:#fff;
}

.contact_right .contact_img_txt_box .sp_flex:hover{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color: #F36028;
}
.contact_right .contact_img_txt_box:hover.contact_img_txt_box{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#fff;
}
.contact_right .contact_img_txt_box:hover .contact_arrow_bk{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  background:#F36028;
}
.contact_right .contact_img_txt_box:hover .contact_arrow{
  -webkit-transition: all .4s ease-out;
  -moz-transition: all .4s ease-out;
  -ms-transition: all .4s ease-out;
  transition: all .4s ease-out;
  color:#fff;
}
.contact_img a{
  display: block;
  height: 100%;
}
.contact_bt{
  height: 72px;
}

/* 問い合わせボタン */
.contact{
  width: 46%;
}
.contact02{
  width: 65%;
  margin:0 auto;
}
.contact_flex{
  text-align: center;
  margin-bottom: 20px;
}
.bt_link{
  color: #fff;
}
.bt_flex{
  background: #cc0000;
  border: 1px solid #CC0000;
  padding: 13px 0;
  margin-top: 12px;
  justify-content: center;
}
.bt_flex:hover{
  background: #fff;
}
.bt_txt{
  margin-left: 15px;
}
.arrow_ico{
  width: 9px;
  padding-bottom: 3px;
  margin-left: 15px;
}

.bt_link:hover, .icon-arrow-right:hover{
  color: #CC0000 !important;
}
/* バナー */
.banner{
  background: #CC0000;
  padding: 70px 0;
}
.banner_area{
  width: 768px;
  margin: 0 auto;
}
/* フッター */
.link_area{
  align-items: flex-start;
  justify-content: flex-start;
  margin: 40px auto 20px;
}
.link_title{
  font-size: 16px;
  font-weight: 550;
}
main a:hover {
  border-bottom: 0;
}
.link_area a{
  color: #666666;
  border-bottom: 0;
}
.link_area a:hover{
  border-bottom: 1px solid #666666;
}
.link_list{
  font-size: 12px;
  margin-top: 8px;
  letter-spacing: 0.12rem;
}
.copy{
  font-size: 12px;
  padding-bottom: 22px;
}
.copy_txt{
  text-align: right;
}
@media screen and (min-width: 767.5px){
html{
  min-width: 1024px;
  overflow-x: hidden;
  overflow-y: scroll;
  outline: 0 !important;
  background: #fff;
  line-break: strict;
}
}

@media screen and (min-width: 320px) and (max-width: 767.499px){
h2{
  font-size: 2.4rem;
  padding: 0 2%;
  width: 96%;
  box-sizing: border-box;
}
h3{
  font-size: 2rem;
}
.dt_br{
  display: none;
}
.sp_br{
  display: block;
}
.scroll_sp{
  display: block;
  font-size: 1.1rem;
  margin-top: 5px;
}
.price table, .kyakushitu_sche table{
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
#accordion .scroll_sp{
  padding-top: 30px;
  text-align: left;
  padding-left: 2%;
  margin-top: 0;
}
.kyakushitu_sche{
  padding-top: 0;
  margin-top: 4px;
}
.main_inner{
  max-width: none;
  width: 96%;
  margin: 0 auto;
}
.flex{
  display: block;
  width: 94%;
  box-sizing: border-box;
}
.flex_sp{
  display: flex;
}
.sponliy_flex{
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.f_27 {
  font-size: 2.2rem;
}
.f_24{
  font-size: 1.8rem;
}
.f_20{
  font-size: 1.6rem;
}
.f_12 {
  font-size: 1.4rem;
}
  /* 以下、ハンバーガーメニュー */
.nav-wrapper{
  display: block;
  visibility: hidden;
  opacity: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  transition: all .5s;
  z-index: 4;
}
.header-nav{
  width: 100%;
  height: 100%;
  background-color:rgba(249,249,249,.9);
  z-index: 20;
}
.nav-list{
  display: block;
  position: absolute;
  top: 56%;
  left: 50%;
  transform: translate(-50%,-56%);
  text-align: center;
  width: 100%;
  height: auto;
}
.nav-item{
  margin-right: 0;
  margin-bottom: 30px;
  line-height: 1.4;
}
.nav-item a{
  text-decoration: none;
  color: #000;
  font-size: 2rem;
  font-weight: 600;
}

/* メニューオープン時 */
.nav-wrapper.fade {
  visibility: visible;
  opacity: 1;
}
#wrap{
  margin-top: 0;
}
/* ヘッダー */
header{
  padding: 8px 0;
}
.header_flex{
  align-items: flex-start;
}
.logo_flax{
  width: 78%;
  align-items: flex-end;
  margin-top: 7px;
}
.logo{
  width:75%;
}
.h1_name{
  width:75%;
}
.top_kv{
  /* height: 368px; */
  height: 318px;
}
.kv_wrap{
  top: 0;
  height: 100%;
  width: auto;
  position: relative;
}
.link_bt_wrap{
  width: 100%;
  height: 72px;
  background: rgba(204,0,0,0.8);
  position: fixed;
  bottom: 0;
  z-index: 4;
}
.kv_wrap img{
  height: 100%;
  width: auto;
  position: absolute;
  right: -16%;
}
main {
  margin-top: 64px;
}
.nav_list{
  display: none;
}
.list {
  display: block;
}
.item {
  position: relative;
  width: 33.33334%;
  height: 200px;
  padding-top: 80px;
  text-align: center;
  box-sizing: border-box;
  counter-increment: item;
}
.item:after {
  position: absolute;
  top: 1.5em;
  left: 1.5em;
  width: 40px;
  height: 40px;
  border: 1px solid #fff;
  content: counter(item);
  color: #fff;
  font-size: 20px;
  text-align: center;
  line-height: 40px;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 46px;
  height: 48px;
  background: none;
  border: none;
  appearance: none;
  cursor: pointer;
}
.menu-trigger span {
  position: absolute;
  left: 0;
}
.menu-trigger span.dis_none{
  display: none;
}
.nav_bar{
  background-color: #222222;
  border-radius: 4px;
  height: 2px;
  width: 32px;
  margin: 0 6px;
}
.sec_sp_m{
  margin: 54px auto;
}
.sec_sp_p{
  padding: 54px 0;
}
.menu-trigger .nav_bar:nth-of-type(1) {
  top: 8px;
}
.menu-trigger .nav_bar:nth-of-type(2) {
  top: 14px;
}
.menu-trigger .nav_bar:nth-of-type(3) {
  top: 20px;
}
#menu02.active .nav_bar:nth-of-type(1) {
  transform: translateY(6px) rotate(-335deg);
}
#menu02.active span.nav_bar:nth-of-type(2) {
  opacity: 0;
}
#menu02.active span.nav_bar:nth-of-type(3) {
  transform: translateY(-6px) rotate(335deg);
}

.airlne_school{
  width: 100%;
  height: auto;
  bottom: 0;
  right: 0;
  left: 0;
  box-sizing: border-box;
  transform: none;
  -webkit-transform: none;
  -ms-transform: none;
  text-align:center;
  padding: 15px 5px;
}
.copy_01, .copy_02{
  width: 98%;
  margin: 0 auto;
  letter-spacing: 0.07rem;
}
.copy_01{
  font-size: 2rem;
  margin-bottom: 8px;
}
.copy_02{
  font-size: 1.5rem;
}
.nav_sp_title{
  position: absolute;
  bottom: 22px;
  width: 100%;
}
.menu-trigger .open{
  display: block;
  font-size: 9px;
  left: 2px;
}
.menu-trigger .close{
  left: 6px;
}
.menu-trigger span.close{
  font-size: 9px;
}
#briefing, #contact_fix_bt{
  width: 46%;
  height: 52px;
  border-radius: 6px;
  background: #fff;
  color: #CC0000;
  position: fixed;
  top: unset;
  bottom: 10px;
}
#briefing{
  left: 2%;
}
#contact_fix_bt{
  right: 2%;
}
.briefing_arrow_bk{
  background: #CC0000;
  margin: 0;
}
.bt_arrow{
  color: #fff;
}
.bt_arrow::before{
  border: 2px solid #fff;
  border-left: 0;
  border-top: 0;
  right: -0.03em;
  left: auto;
}
.link_bt{
  padding: 10px 0;
  border: solid 2px #CC0000;
  box-sizing: border-box;
}
/* 新着情報 */
.news_left{
  font-size: 2rem;
  padding: 16px 0;
}
.news{
  top:0;
  margin:40px auto 62px auto;
  padding: 12px 0;
}
.news_left, .news_right{
  width: 90%;
  margin: 0 auto;
}
.news_time, .news_txt{
  width: 100%;
}
.news_txt{
  padding-left: 0;
}
/* 説明会バナー */
.info_banner{
  width: 88%;
  margin-bottom: 62px;
}
.info_banner02{
  width: 88%;
  margin-bottom: 62px;
}
.inner_line{
  padding: 12px;
}
.info_title, .info_data{
  font-size: 1.8rem;
}
.info_data{
  line-height: 1.4;
  margin: 5px auto 12px auto;
}
.info_kome{
font-size: 1.3rem;
font-weight: 600;
}
.info_bt{
  width: 84%;
  font-size: 1.8rem;
}
/* こんなお悩みありませんか */
.tx_big{
  font-size: 2.8rem;
}
.table_cell{
  text-align: left;
}
.fukidashi{
  padding: 0;
  width: 100%;
}
.fukidashi .fukidashi_line{
  display: inline-block;
  padding: 0 5px;
}
.fukidashi .fukidashi_line::before, .fukidashi .fukidashi_line::after{
  width: 3px;
}
.fukidashi .fukidashi_line::before,
.fukidashi .fukidashi_line::after{
  height: 20px;
  bottom: -6px;
}
.fukidashi .fukidashi_line::before{
  left: 7px;
  transform: rotate(-30deg);
}
.fukidashi .fukidashi_line::after{
  right: 7px;
  transform: rotate(30deg);
}
.wor_bk{
  width: 74%;
  margin: 0 auto;
}
.wor_fukidashi_wrap, .wor_fukidashi_wrap .flex:last-child{
  position: static;
}
.wor_fukidashi_wrap .flex{
  margin: 0 auto;
}
.wor_txt_con{
  width: 100%;
  height: auto;
  font-size: 1.8rem;
  padding: 20px;
}
.wor_txt_con:nth-child(even){
  margin: 30px auto;
}
.wor_fukidashi_wrap{
  margin-top: 40px;
}
.wor_fukidashi_wrap .flex:last-child{
  width: 94%;
}
.wor_wrap{
  margin-top: 28px;
}
#feature {
  padding: 74px 0 54px 0;
}
#feature .title_area{
  margin: 0 0 34px 0;
}
.feat_title{
  padding-top:0;
  width: 98%;
}
.feat_title h3{
  text-align: center;
  padding-left: 0;
  display: block;
}
.feat_title h3::before{
    width: 20px;
    height: 20px;
}
.feat_title h3::after{
  height: 15px;
}
.feat_con{
  padding: 42px 0 54px 0;
}
.category_wrap{
  width: 94%;
  margin-top: 20px;
}
.category01.flex{
  width: 100%;
  height: auto;
}
.ca01_left, .ca01_right{
  position: static;
  transform:none;
  -webkit-transform:none;
  -ms-transform:none;
}
.ca01_right{
  width: 74%;
  margin: 0 auto 16px auto;
}
.ca01_left{
  width: 100%;
}
.category02, .category03 {
    margin-top: 70px;
}
.ca_point_title h3{
  padding: 0 0 4px 20px;
}
.ca_point_title h3::before{
  background: url(../img/point_icon_sp.png);
  width: 44px;
  height: 44px;
  background-size: cover;
  left: -5px;
  top: -13px;
}
.ca_point_title{
  width: 100%;
}
.ca_point_title h3{
  padding: 0;
  font-size: 1.8rem;
  padding-left: 20px;
  border-left: none;
  border-bottom: solid 2px #000;
}
.ca_point_title h3::after{
  width: 22px;
  height: 17px;
  bottom: -9px;
}
.ca02_con{
  width: 100%;
}
.ca02_left{
  margin: 0;
  margin-bottom: 32px;
}
.category03 .ca_point_title h3::before{
  background: url(../img/point_icon_sp.png);
  width: 44px;
  height: 44px;
  background-size: cover;
  left: -5px;
  top: 17px;
}
.category03 .ca_point_title h3{
  padding-bottom: 6px;
  text-align: left;
  padding-left: 52px;
}
.ca03_con {
  width: 96%;
  margin: 74px auto 0 auto;
}
.step::before{
  width: 72px;
  height: 72px;
  background-size: cover;
  top: -35px;
  left: -10px;
}
.step{
  width: 100%;
  margin-left: 0;
  margin-bottom: 84px;
}
.step .flex{
  width: 100%;
}
.step_left{
  padding: 20px 3% 12px 3%;
}
.step_left h4{
  line-height: 1.6;
}
.step_left p{
  margin-top: 10px;
}
.step_right{
  height: auto;
}
.step_right img{
  width: 100%;
  height: auto;
}
/* コース紹介 */
#course{
  margin: 54px 0;
}
#course .title_area{
  margin-bottom: 8px;
}
.course_sub_title{
  font-size: 1.6rem;
  margin-bottom: 34px;
}
.course_bk{
  padding: 2px 0;
  width: 96%;
  margin: 0 auto;
}
.course_con .flex{
  width: 100%;
}
.course_img_left{
  margin-right: 0;
}
.flex_tanki, .course_txt, .course_img{
  width: 100%;
}
.course_txt {
    margin-bottom: 12px;
}
.course_link_wrap{
  margin-top: 28px;
}
.course_link_wrap:first-child{
  margin-top: 0px;
}
.course_con {
  width: 94%;
  margin: 68px auto;
  padding-bottom: 0;
}
.course_con:first-child{
  margin-top: 48px;
}
.course_con:last-child{
  margin-top: 0;
}
/* メディア */
#media .course_sub_title{
  margin-bottom: 30px;
}
.medium_title{
  text-align: left;
}

/* 受講生の声 */
.vo_txt{
  width: 100%;
}
#voice .title_area{
  margin-bottom: 8px;
}
#voice .contact_bt{
  width: 94%;
  margin-top: 34px;
}
.vo_box{
  width: 96%;
  padding: 24px 4%;
  margin: 0 auto;
}
.vo_box:nth-child(2){
  margin: 28px auto;
}
.vo_img{
  width: 40%;
  margin: 0 auto;
}

/* コースを詳しく見る */
#course_link{
  margin-top: 94px;
}
#course_link .title_area{
  margin-bottom: 28px;
}
#course_link .flex{
  width: 96%;
  margin: 0 auto;
}
#course_link .course_link_wrap{
  height: 188px;
}
/* コンタクト */
#contact{
padding-bottom: 48px;
}
.con_icon{
  width: 52%;
}
.contact_con .flex{
  margin: 0 auto;
}
.contact_left{
  margin-top: 18px;
  margin: 0 auto 20px auto;
}
.contact_right{
  margin-top: 18px;
  margin: 12px auto 0 auto;
}

.contact_flex, .contact{
  width: 100%;
}
.bt_flex{
  width: 100%;
}
.banner{
  padding: 28px 0;
}
.banner_area{
  width: 94%;
}
.link_area{
  width: 100%;
}
.link_box, .foo_contact{
  width: 100%;
  text-align: center;
}
.foo_contact{
  margin-top: 24px;
}
.link_list{
  margin-top: 3px;
}
.copy{
  padding-bottom: 92px;
}
.copy_txt{
  text-align: center;
  padding-top: 15px;
  font-weight: 400;
  font-size: 8px;
}
}