@charset "UTF-8";
body{
	overflow-x: hidden;
  font-size: 110%;
}

:root{
  --sp1 : 100px;
  --sp2 : 64px;
  --sp3 : 32px;

  --f2 : 1.6rem;
}

header{
  height: 70px;
  padding: var(--sp5);
}
header.follow,
header.follow.fixed{
  height: 70px;
}
nav{
  width: 80%;
}
.hamburger {
  width: 70px;
  height: 70px;
}

/*-----------------------------------------------
__Main
-----------------------------------------------*/
    main {
        padding: 70px 0 var(--sp1);
    }

/*w100*/
#visual .visual_wrap .img_box,
#visual .visual_wrap .txt_box,
#visual .txt_wrap_l,
#service .service_visual .txt_box,
#info .fl_box .txt_box,
#info .fl_box .img_box,
.flow_list dt,
.flow_list dd,
footer .img_box{
  width: 100%;
}


#visual .visual_wrap .txt_box{
  padding: var(--sp3);
}
#visual .txt_wrap{
  align-items: center;
  margin-top: var(--sp4);
}
#visual .txt_wrap_l::before{
  width: 180%;
}
#visual .txt_wrap_r{
  width: 80%;
}

#service .service_visual{
  gap: var(--sp2);
  flex-direction: column-reverse;
}
#service .service_visual .img_box{
  width: 95%;
  margin-right: 0;
  margin-left: auto;
}

.grid{
  display: flex;
  flex-direction: column;
}
.training_wrap{
  gap: var(--sp2);
}
.facility_wrap .sp_br{
  display: inline;
}
.facility_wrap figcaption{
  display: block;
  text-align: center;
}
.pickup::before, .pickup::after{
  width: 20%;
}
.pickup::before{
  background-position: top center;
}
.pickup::after{
  background-size: 80% auto;
}
.pickup dl{
  font-size: var(--f3);
}

.day_wrap .hl{
  min-height: auto;
}
.day_wrap .hl.fl_box{
  align-items: center;
  text-align: center;
}
.day_wrap .schedule .f_min{
  font-size: var(--f3);
}

#info .fl_box{
  gap: var(--sp3) 0;
}
#info section[data-info="1"] div.fl_box:first-of-type{
  flex-direction: column-reverse;
  gap: var(--sp2) 0;
}

.flow_list div{
  flex-direction: column;
  gap: var(--sp5);
}

footer .fl_box{
  align-items: center;
}
footer .txt_box{
  width: 90%;
  max-width: none;
}
footer .txt_box figure{
  width: 90%;
}

iframe{
	width:100%;
	border:none;
}

.fl_box{
	flex-direction:column;
}

.pc_no{
	display:block;
}
