@charset "utf-8";

@media screen and (max-width:768px){

/* reset
--------------------------------------------------------------------------- */
	html, body, div, span, object, iframe,
	h1, h2, h3, h4, h5, h6, p, blockquote, pre,
	a, abbr, address, cite, code,
	del, dfn, em, img, ins, kbd, q, samp,
	small, strong, sub, sup, var,
	b, i,
	dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td,
	article, aside, canvas, details, figcaption, figure,
	footer, header, hgroup, menu, nav, section, summary,
	time, mark, audio, video {
		font-size: 1.4rem;
	}

	h1{font-size: 3.2rem;}
	h2{font-size: 2.8rem;}
	h3{font-size: 2.4rem;}
	h4{font-size: 2rem;}
	h5{font-size: 1.5rem;}
	h6{font-size: 1.3rem;}


/* 部品設定 START */
	.float_l_bl ,
	.float_r_bl {
		float: none;
		display: block;
		margin: 0px auto 15px;
	}

	.sp_block {display: block;}
	.sp_none {display: none;}


/* body
--------------------------------------------------------------------------- */
	html {
		font-size: 62.5%; /* 10px */
	}
	body {
		min-width: initial;
		min-width: auto; /* For IE11以下 */
	}


/* header
--------------------------------------------------------------------------- */
	header {
		min-width: initial;
		min-width: auto;
	}

	.bs_header_in {
		width: 100%;
		height: 60px;
		padding: 5px 12px;
		display: block;
	}

	.bs_header_title_wrap p {
		font-size: 10px;
		margin: 0;
	}

	header h1 img {
		height: 30px;
	}

	.bs_trigger_open ,
	.bs_trigger_close {
		display: block;
	}

	.bs_trigger_open {
		position: absolute;
		top: 14px;
		right: 12px;
	}
	.bs_trigger_open a {
		display: block;
		width: 32px;
		height: 32px;
		line-height: 32px;
		background-color: #39B54A;
		color: #FFFFFF;
		-webkit-border-radius: 3px;
		border-radius: 3px;
		text-align: center;
		font-size: 2rem;
	}

	.bs_trigger_open a:after {
		content: "\f0c9";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
	}

	.bs_trigger_open a.active:after{
		content: "\f00d";
		font-family: "Font Awesome 5 Free";
	}

	.bs_trigger_open span {
		display: none;
	}

	.bs_acordion_tree {
		width: 100%;
		height: 100%;
		overflow-y: auto;
		overflow-x: hidden;
		position: fixed;
		top: 60px;
		right: 0px;
		padding: 10px 10px 50px;
		z-index: 100;
		background-color: rgba(0,0,0,0.6);
		display: none;
	}

	.bs_gnav > li {
		width: 48%;
		height: 50px;
		margin: 0 4% 10px 0;
		background-color: #FFFFFF;
		-webkit-border-radius: 5px;
		border-radius: 5px;
		display: table;
	}
	.bs_gnav > li:nth-child(2n) {margin: 0 0 10px 0;}

	.bs_gnav > li a {
		display: table-cell;
		vertical-align: middle;
		padding: 0px 10px;
		text-align: center;
		border: none;
	}
	.bs_gnav > li:first-child a {border-left: none;}

	.bs_gnav > li a:after {
		bottom: 3px;
	}

	.bs_hd_call {
		position: static;
		margin: 0 auto;
	}
	.bs_hd_tel {
		position: static;
		text-align: center;
	}

	.bs_trigger_close {
		height: 50px;
		margin-bottom: 50px;
	}
	.bs_trigger_close a {
		display: block;
		width: 100%;
		text-align: center;
	}
	.bs_trigger_close a i {
		font-size: 2.4rem;
		color: #FFFFFF;
	}


/* contents
--------------------------------------------------------------------------- */
	.contents {padding-top: 60px;}


/* pankuzu
------------------------------------- */
	.bs_pankuzu {
		margin: 0 0 25px;
	}


/* block
------------------------------------- */
	.bs_full_wrap {padding: 30px 0;}

	.bs_inner_wrap01 {
		padding: 0px 12px;
	}
	.bs_inner_wrap02 {
		padding: 0px 20px;
	}

/*--- main:side Start ---*/
	.bs_main_col {
		width: 100%;
		float: none;
		display: block;
	}

	.bs_side_col {
		clear: both;
		width: 100%;
		padding: 0 12px;
		float: none;
		display: block;
	}

/*--- column Start ---*/
	.bs_2col > div ,
	.bs_2col > li ,
	.bs_3col > div ,
	.bs_3col > li ,
	.bs_4col > div ,
	.bs_4col > li ,
	.bs_5col > div ,
	.bs_5col > li {
		width: 100%;
		margin: 0 auto 20px;
	}

	.sp_2col > div ,
	.sp_2col > li ,
	.sp_2col > article ,
	.bs_col_full.sp_2col > div ,
	.bs_col_full.sp_2col > li ,
	.bs_col_full.sp_2col > article {
		width: 48%;
		margin: 0 4% 20px 0;
	}
	.sp_2col > div:nth-child(2n) ,
	.sp_2col > li:nth-child(2n) ,
	.sp_2col > article:nth-child(2n) ,
	.bs_col_full.sp_2col > div:nth-child(2n) ,
	.bs_col_full.sp_2col > li:nth-child(2n) ,
	.bs_col_full.sp_2col > article:nth-child(2n) {margin-right: 0;}

	.bs_three_thirds {
		display: block;
	}
	.bs_one_third {
		width: 100%;
		margin: 0 auto 15px;
	}
	.bs_two_thirds {
		width: 100%;
	}

/*--- Flexbox Start ---*/
	.bs_flex img,
	.bs_flex_space img {
		max-width: 768px;
	}

	/* 子要素を逆順で横並び */
	.sp_flex_row_reverse {
		-webkit-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.sp_flex_row_reverse > div,
	.sp_flex_row_reverse > li{
		width: 48%;
	}

	/* 子要素を可変幅で縦並び */
	.bs_flex.sp_block > div ,
	.bs_flex.sp_block > li {
		width: 100%;
	}

	/* 子要素を逆順で縦並び */
	.sp_flex_column_reverse {
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}
	.sp_flex_column_reverse > div ,
	.sp_flex_column_reverse > li {
		width: 100%;
		min-height: 0%;
	}

	/* 子要素を任意の順に並び替え */
	.sp_flex_order1 {order: 1;}
	.sp_flex_order2 {order: 2;}

/*--- Gmap Start ---*/
	.bs_gmap iframe {
		height: 200px;
	}
	.bs_gmap_side {
		max-width: 100%;
		height: auto;
		position: static;
	}
	.bs_gmap_info {
		height: auto;
		display:b lock;
	}
	.bs_gmap_info_inner {
		display: block;
		padding: 20px 0;
	}

/* お問い合わせボックス
------------------------------------- */
	.bs_call_title {
		font-size: 18px;
	}
	.bs_call01 a {
		font-size: 30px;
	}
	.bs_call01 a i {
		font-size: 22px;
	}
	.bs_call01 span {
		font-size: 13px;
		top: -20px;
		right: 2px;
	}

	.bs_call_btn a {
		font-size: 22px;
		padding: 12px 10px;
	}

	.bs_call02 a {
		font-size: 2.6rem;
	}
	.bs_call02 a i {
		font-size: 1.9rem;
	}
	.bs_call02 span {
		font-size: 1.3rem;
		top: -20px;
		right: 0px;
	}

/*--- 縦書き ---*/
	.bs_rl_box{
		width: 100%;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

/* title
------------------------------------ */
	.bs_title01 span {font-size: 2.2rem;}

	.bs_pagetitle {
		height: 90px;
	}

/* article
------------------------------------- */
	.bs_article_list02 article{
		width: 100%;
	}

	.bs_article_list04 article figure {
		width: 100px;
	}
	.bs_article_list04 article figure img {
		max-width: 100%;
	}
	.bs_article_list04 .bs_thumb_txt h3 {
		margin-bottom: 10px;
	}
	.bs_article_list04 .bs_thumb_txt p {
		font-size: 1.4rem;
	}

	.bs_article_3col article {
		width: 100%;
	}

	.bs_article_4col article time {
		font-size: 12px;
	}
	.bs_article_4col article h3 {
		font-size: 1.4rem;
	}
	.sp_2col > article {
		margin: 0 4% 15px 0;
	}

/* form
------------------------------------- */
	p.bs_form_flow01 ,
	p.bs_form_flow01 span {font-size: 14px;}

	p.bs_form_flow01 i {
		font-size: 14px;
		padding:0 2%;
	}


/* btn
------------------------------------- */
	.bs_btn01 ,
	.bs_btn01_02 ,
	.bs_btn01_02s ,
	.bs_btn02 ,
	.bs_btn01_half ,
	.bs_btn02_half ,
	.bs_btn01s ,
	.bs_btn02s ,
	.bs_btn01s_half ,
	.bs_btn02s_half {
		padding: 9px 6px;
		font-size: 1.1em;
	}

	a.bs_btn01 ,
	a.bs_btn01_half ,
	a.bs_btn01s ,
	a.bs_btn01s_half ,
	a.bs_btn02:hover ,
	a.bs_btn02_half:hover ,
	a.bs_btn02s:hover ,
	a.bs_btn02s_half:hover {
		border: 4px solid #FFFFFF;
	}


/* top page
--------------------------------------------------------------------------- */
	.swiper-slide {
		height: 350px;
	}
	.swiper-slide p {
		font-size: 2rem;
	}
	.swiper-slide p span {
		display: inline-block;
		font-size: 2.6rem;
		margin-top: 20px;
	}

	.swiper-slide p span.me_top_main_txt01 {
		clear: both;
		display: table;
		margin: 10px auto 0;
	}

	.swiper-slide img {
		max-width: 320px;
		max-height: 320px;
	}
	img.me_top_main_logo {
		max-width: 120px;
	}


/* Point */
	#me_top_point_wrap h2 {
		font-size: 2.4rem;
	}
	#me_top_point_wrap h2 span {
		font-size: 32px;
	}
	.me_top_point_fuan_list {
		display: block;
	}
	.me_top_point_fuan_list li {
		margin: 0 auto 20px;
	}
	.me_top_point_title01 {
		font-size: 3.2rem;
	}
	h2.me_top_point_title01 span {
		font-size: 4.8rem;
	}
	.me_top_point_list li {
		width: 100%;
		margin: 0 auto 30px;
	}
	.me_top_point_list li h3 {
		font-size: 2.6rem;
	}

/* cycle */
	#me_top_cycle_wrap {
		background-position: 68% 50%;
		-webkit-background-size: 170% auto;
		background-size: 170% auto;

	}

	#me_top_cycle_wrap h2 img {
		max-width: 90%;
	}

	.me_top_cycle01 img {width: 65%;}


/* flow */
	#me_top_flow_wrap {padding: 30px 12px;}
	#me_top_flow_wrap h2 {
		top: -30px;
	}
	.me_top_flow_list li{
		margin: 0 auto 10px;
	}
	.me_top_flow_list li:nth-child(even) {
		width: 56px;
		height: 64px;
		background-image: url(../pic/00_arrow_down01.png);
	}
	img.me_top_flow_start {
		width: 32%;
	}
	.me_top_flow_btn img {
		width: 120px;
	}

/* qa */
	#me_top_qa_wrap p {
		font-size: 2rem;
	}

/* school */
	#me_top_qa_wrap {padding: 30px 12px;}
	.me_top_map {
		width: 100%;
		margin: 0 auto 10px;
	}
	.me_top_school_data {
		width: 100%;
		text-align: center;
	}
	.me_top_school_data h3 img {
		max-width: 220px;
	}
	.me_top_school_data p {
		font-size: 1.6rem;
	}
	p.me_top_school_tel {
		font-size: 2rem;
	}
	.me_top_school_tel i {
		font-size: 1.6rem;
	}


/* about
----------------------------------------------------------------------------- */
	.me_about_cycle_wrap {
		padding: 30px 0 60px;
	}
	.me_about_copy01 {
		margin-bottom: 20px;
	}
	.me_about_cycle01 {
		padding: 50px 0;
		-webkit-background-size: 38.4% auto;
		background-size: 38.4% auto;
	}
	.me_about_cycle01_in {
		max-width: 455px;
	}
	.me_about_cycle_ul li{
		font-size: 1.4rem;
		line-height: 1.2;
	}

	.me_about_cycle_ul li:nth-child(1) {
		top: 13%;
		left: 50%;
		transform: translate(30%, 0%);
	}
	.me_about_cycle_ul li:nth-child(2) {
		width: 96px;
		top: 69%;
		right: -2%;
	}
	.me_about_cycle_ul li:nth-child(2) br {display: none;}
	.me_about_cycle_ul li:nth-child(3) {
		left: 40%;
	}
	.me_about_cycle_ul li:nth-child(4) {
		width: 96px;
		top: 69%;
		left: -1.2%;
	}
	.me_about_cycle_ul li:nth-child(4) br {display: none;}
	.me_about_cycle_ul li:nth-child(5) {
		width:88px;
		top: 7%;
	}
	.me_about_cycle_ul li:nth-child(5) br {display: none;}

	/* system */
	.me_about_title {
		font-size: 2.6rem;
	}
	.me_about_point_copy01 ,
	.me_about_point_copy01 span {
		font-size: 2.6rem;
	}
	.me_about_system_title {
		-webkit-background-size: contain;
		background-size:  contain;
	}
	.me_about_system_box {
		width: 100%;
		max-width: 398px;
		position: relative;
	}

	.me_about_system_no {
		width: 48px;
		height: 48px;
		line-height: 48px;
		font-size: 3rem;
		margin-right: 10px;
	}
	.me_about_system_txt {
		width: 78%;
		margin-bottom: 10px;
	}
	.me_about_system_txt h4 ,
	.me_about_system_txt h4 a {
		font-size: 2.2rem;
	}
	.me_about_system_txt p span {
		font-size: 100%;
	}

	.me_about_system_img {
		width: 100%;
		margin: 0 auto 0;
	}
	.me_about_system_img01 {
		text-align: center;
		margin: 0 auto 0;
	}
	.me_about_system_icon03 {position: absolute; top: 0px; right: -30px; bottom: auto;}
	.me_about_system_icon04 {position: absolute; top: auto; right: -30px; bottom: 0px;}

	/* case */
	.me_about_case_ul li {
		width: 280px;
		float: none;
		display: block;
		margin: 0 auto 40px;
	}
	.me_about_case_ul li h4 {
		text-align: left;
	}
	.me_about_case_point {
		position: absolute;
		top: -25px;
		right: -15px;
	}

	/* 違い */
	.me_about_diff_point_icon img {
		width: 80px;
	}

	.me_about_point_ttl_s h4 ,
	.me_about_point_ttl_s h4 span {
		font-size: 2.6rem;
	}
	.me_about_point_ttl_s h4 {width: auto;}
	.me_about_point_ttl_s p {
		font-size: 1.8rem;
	}

	.me_about_point_txt {
		font-size: 1.5rem;
		margin: 0;
	}

	img.me_about_arrow01 {
		width: 120px;
	}

	.me_about_result {
		font-size: 1.6rem;
		line-height: 1.4;
	}
	.me_about_result > span {
		font-size: 1.8rem;
		background: url(../pic/00_line_ye01.png) repeat-x left bottom;
	}
	.me_about_result > span > span {
		font-size: 2rem;
	}
	.me_about_result a {
		font-size: 2.2rem;
		line-height: 1.4;
	}
	.me_about_result a i {
		font-size: 2rem;
		line-height: 1.4;
	}


/* flow
--------------------------------------------------------------------------- */
	.bs_full_wrap#me_flow_wrap {
		padding: 30px 0 100px;
	}
	#me_flow_wrap h3 {
		font-size: 3.2rem;
		-webkit-background-size: contain;
		background-size: contain;
	}
	.me_flow_step_intro img {
		width: 180px;
		display: table;
		margin: 0 auto 20px;
	}
	.me_flow_step_intro p {
		font-size: 2rem;
		text-align: center;
	}
	.me_flow_icon_list {
		display: table;
		margin: 0 auto 5px;
	}

	.me_flow_title01 {
		padding: 4px 12px;
		font-size: 2.2rem;
	}

	.me_flow_call_img {
		width: 150px;
		position: static;
		margin: 0 auto 20px;
	}

	.me_flow_step {
		border: 4px solid #F1289A;
		margin: 0 auto 36px;
	}
	.me_flow_step_title {
		border-bottom: 4px solid #F1289A;
		font-size: 2.2rem;
		line-height: 1.8em;
	}
	.me_flow_step_title span {
		width: 80px;
		font-size: 2.2rem;
		margin-right: 10px;
	}
	.me_flow_step_in {
		padding: 20px 15px 6px 28%;
	}

	.me_flow_step_img {
		width: 30%;
		max-width: 130px;
		padding: 0 6px 6px 0;
		top: 30px;
		right: auto;
		left: -17px;
	}

	.me_flow_step_dl dt {
		width: 22%;
		margin-right: 10px;
	}
	.me_flow_step_dl dd {width: 72%;}

	.me_flow_qa_wrap {
		background-position: 0 40px;
		padding: 0 0 30px;
	}
	.me_flow_qa_title {
		width: 90%;
		padding: 6px;
		border: 6px solid #86602E;
	}
	.me_flow_qa_title h3 {
		font-size: 2.4rem;
	}
	.me_flow_qa_title p {
		font-size: 1.4rem;
	}

	.me_flow_qa_dl {
		width: 100%;
	}
	.me_flow_qa_dl dt {
		padding: 8px 12px;
	}
	.me_flow_qa_dl dt span {
		-webkit-background-size: 40px 40px;
		background-size: 40px 40px;
		font-size: 1.6rem;
		padding: 9px 25px 9px 50px;
	}
	.me_flow_qa_dl dt:after {
		top: 38%;
		right: 12px;
	}
	.me_flow_qa_dl dd {
		-webkit-background-size: 40px 40px;
		background-size: 40px 40px;
		background-position: 12px 12px;
		padding: 12px 12px 12px 60px;
		font-size: 1.4rem;
	}


/* 合格実績 */
	.bs_result_wrap {
		border: 6px solid #FF0000;
		-webkit-border-radius: 10px;
		border-radius: 10px;
		padding: 0 12px;
	}
	.bs_result_wrap h3 {
		margin: -25px auto 25px;
		font-size: 2.8rem;
		padding: 0 15px;
	}
	.bs_result_wrap h4 {
		font-size: 2rem;
	}
	h4.bs_result_h401 {padding-left: 0px;}
	h4.bs_result_h401 span{font-size: 1.3rem;}
	.bs_result_s {margin: 0 auto 30px;}
	.bs_result_s span {
		font-size: 1.8rem;
		margin: 0 10px;
	}
	.bs_result_s span.bs_result_other {
		font-size: 1.5rem;
	}

	p.bs_result_l span {
		font-size: 2.3rem;
		margin: 0 8px;
	}


/* koshu
--------------------------------------------------------------------------- */
	.me_img01 {width: 100%;}
	.me_txt01 {width: 100%;}



/* call
----------------------------------------------------------------------------- */
	.me_call_mail h3 {
		font-size: 1.6rem;
	}
	.me_call_mail h4 {
		font-size: 1.4rem;
	}
	.me_call_mail p {
		font-size: 1.3rem;
	}
	p.me_call_mailadd {
		font-size: 1.6rem;
	}


/* footer
--------------------------------------------------------------------------- */
	.bs_footer_in {
		padding: 30px 12px 10px;
	}

	.bs_gotop {
		width: 46px;
	}

	.bs_float_bn01 {
		width: 80px;
	}
	.bs_float_bn02 {
		width: 86px;
	}

	.bs_footer_logo {
		font-size: 1.6rem;
	}
	.bs_footer_logo img {max-width: 120px;}

	.bs_ft_menu > ul > li > a {
		font-size: 14px ;
	}
	.bs_ft_menu > ul > li > ul > li > a {
		font-size: 12px;
		font-weight: 500;
	}


/* Instagram
----------------------------------------------------------------------------- */
	ul.bs_instagram {
		display: table;
		text-align: center;
		margin: 0 auto;
	}
	ul.bs_instagram > li ,
	ul.bs_instagram > li:nth-child(3n) {
		width: 140px;
		height: 140px;
		margin: 0 5px 10px 0;
	}
	.bs_insta_box {
		width: 140px;
	}


/* video
----------------------------------------------------------------------------- */
	#bs_video_wrap01 video {
		width: 100%;
		height: 390px;
		object-fit: cover;
		object-position: center center;
	}

	#bs_mute {
		position: absolute;
		bottom: 5%;
		right: 5%;
	}


/* 
--------------------------------------------------------------------------- */

/* Facebook
----------------------------------------------------------------------------- */
	.bs_fb_bg {
		left: 0px;
	}


/* swiper slide
------------------------------------- */

/* ticker
------------------------------------- */
	.bs_ticker_wrap {
		position: static;
		padding: 0 10px;
	}

	.bs_ticker_box article a {
		font-size: 12px;
		padding: 10px 0;
	}

	.bs_ticker_box article time {
		display: block;
	}

/* infiniteslide
------------------------------------- */
	.me_infiniteslide_ul01 li{max-width:150px;}


/* layout
----------------------------------------------------------------------------- */
	.bs_layout01 {
		max-width: 100%;
		margin: 0 auto 30px;
	}
	.bs_layout01_txt {
		width: 100%;
	}
	.bs_layout01_txt.float_r_bl ,
	.bs_layout01_txt.float_l_bl {
		margin: 0;
		padding:40px 20px 40px 20px;
	}
	.bs_layout01_txt h3 span {
		font-size: 22px;
		padding-left: 20px;
	}
	.bs_layout01_txt h4 {
		font-size: 18px;
	}

	.bs_layout01_img_l ,
	.bs_layout01_img_r {
		position: static;
		width: 100%;
		max-width: 100%;
	}
	.bs_layout01 .bs_btn {
		width: 280px;
		margin: 0 auto;
	}

	.bs_layout02_txt_l {
		position :static;
		width: 100%;
		padding: 20px 12px;
	}
	.bs_layout02_txt_r {
		position :static;
		width: 100%;
		padding: 20px 12px;
	}
	.bs_layout02 .bs_btn {
		width: 280px;
		margin: 0 auto;
	}

}


@media all and (-ms-high-contrast: none) {
	#bs_video_wrap01 video {
		height: auto;
	}
}
