@media only screen and (max-width: 640px){
	
	/*--------------------------------------------------
		共有
	--------------------------------------------------*/
	.dsp_hp, .dsp_hpt { display: none; }
	.w100_sp img { width: 100%; 	height: auto; }

	/* ヘッダ */
	#header {
		margin-bottom: 20px;
	}
	#header h1 {
		font-size: 10px;
		text-align: left;
	}
	#header .in .title {
		font-size: 13px;
	}
	#header .title img {
		width: 225px;
	}
	#menu_link {
		bottom: -55px;
		width: 32px;
		padding: 8px;
	}
	/* コンテナ */
	#wrap, #footer {
		min-width: 360px;
	}

	/* フッター */
	#footer {
		font-size: 12px;
		line-height: 1.3;
	}
	#footer .f_access p img {
		width: 225px;
		height: auto;
	}
	#footer .f_access p.w100 img {
		width: 100%;
	}
	#footer .f_access .f_logo {
		align-items: center;
	}
	#footer .f_access .map {
		flex-direction: column;
	}
	#footer .f_access .map p {
		padding: 0;
	}
	#footer .f_access iframe {
		height: 300px;
	}
	#footer .f_access .sns {
		margin-bottom: 0;
	}
	#footer .f_access .sns p img {
		width: auto;
		}
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	/* スクールニュース */
	#top_news {
		margin-bottom: 40px;
	}
	#top_news h3 img {
		width: 260px;
		height: auto;
	}
	#top_news .box {
		padding: 5px;
	}
	#top_news p.pos_btm {
		margin: 0;
		position: absolute;
		bottom: 0;
		right: 0;
	}
	#top_news .in {
		padding: 15px;
	}
	#top_news dt {
		float: none;
		width: auto;
	}
	#top_news dd {
		margin-left: 0;
	}
	#top_select .select_box {
		display: block;
	}
	#top_select .select_box .select {
		width: 100%;
		padding: 15px 0;
		margin-bottom: 15px;
	}
	#top_step {
		margin-bottom: 30px;
	}
	#top_step .label_box {
		margin-bottom: 20px;
	}
	#top_step .top_step_in {
		flex-direction: column;
	}
	#top_step .step_box .no {
		height: 140px;
	}
	#top_step .step_box .no .in {
		width: 100%;
	}
	#top_step .step_box .no .in p {
		margin: 10px 0;
	}
	#top_step .box_in:before {
		content: none;
	}
	#top_step .box_in:after {
		position: absolute;
		content: "";
		bottom: -40px;
		left: calc(50% - 20px);
		border: 20px solid transparent;
		border-top: 20px solid #00a1e5;
	}
	#top_step #no2.box_in:after {
		border-top: 20px solid #e3528b;
	}
	#top_step #no3.box_in:after {
		border-top: 20px solid #e7681c;
	}
	/* 特徴 */
	#top_select h3 {
		margin-bottom: 12px;
		background:#FFFFFF;
	}
	#top_about {
		margin-bottom: 0;
	}
	#top_about h3 img {
		width: 100%;
		height: auto;
		padding: 0;
	}
	#top_about dt .cen img{
		width: auto;
		height: 50px;
	}
	#top_about dd img {
		width: 100%;
		height: auto;
	}
	#top_about dl dt p.cen {
		font-size: 20px;
		text-shadow: #fff 2px 0px 0px, #fff -2px 0px 0px, #fff 0px -2px 0px, #fff 0px 2px 0px, #fff 2px 2px 0px, #fff -2px 2px 0px, #fff 2px -2px 0px, #fff -2px -2px 0px, #fff 1px 2px 0px, #fff -1px 2px 0px, #fff 1px -2px 0px, #fff -1px -2px 0px, #fff 2px 1px 0px, #fff -2px 1px 0px, #fff 2px -1px 0px, #fff -2px -1px 0px, #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
	}
	#top_about dl dt p.cen.one {
		padding: 15px 0;
	}
	#top_bana.flex {
		flex-direction: column;
	}
	#top_bana.flex p {
		width: 100%;
	}
	#top_gt {
		padding: 15px 10px 10px;
	}
	@media only screen and (max-width: 320px){
		#top_gt .info .txt {
			font-size: 18px;	
		}
	}
	#top_gt .img span {
		padding: 10px;
	}
	#top_gt .info .logo img {
		width: 100%;
	}
	/**/
	#top_cont .box+.box {
		margin-bottom: 10px;
	}
	#top_cont .lesson dt {
		width: 120px;
	}
	#top_cont .lesson dd {
		margin-left: 140px;
	}
	#top_cont .service ul {
		font-size: 110%;
	}
	#top_cont .service p.b {
		font-size: 15px;
	}
	#top_cont .service p.b .red {
		font-size: 18px;
	}
	#top_cont .service p.cen.cf {
		margin-left: calc(35% + 20px);
	}
	#top_cont .service p.cen.cf b {
		font-size: 14px;
	}
	#top_cont .service .service_box {
		display: block;
	}
	#top_cont .service .t_box {
		width: 100%;
	}
	/**/
	#top_menu {
		margin-bottom: 20px;
	}
	#top_menu li {
		float: none !important;
		width: auto;
	}
	/**/
	#top_mv {
		padding: 15px;
	}
	#top_cont img.img_lft {
		width: 35%;
		height: auto;
	}
	.smt_service_img{
		margin-bottom:80px;
	}

	/*--------------------------------------------------
		ごあいさつ
	--------------------------------------------------*/
	#greeting {
		background-image: url(../img/greeting/bg_tl.png), url(../img/greeting/bg_tr.png), url(../img/greeting/bg_bl.png), url(../img/greeting/bg_br.png), url(../img/greeting/bg.jpg), url(../img/greeting/bg_top.jpg);
		background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
		background-position: top 10px left, top 10px right, bottom 10px left 10px, bottom 10px right 10px, bottom center, top center;
		background-size: 50% auto, 50% auto, auto, auto, auto, auto;
	}
	#greeting .box {
		padding: 40px 20px 20px; 
	}
	#greeting .img_rit,
	#greeting .img_lft {
		width: 100%;
		height: auto;
		margin-bottom: 5px;
		clear: both;
	}
	/*--------------------------------------------------
		教室の特徴
	--------------------------------------------------*/
	#step {
		margin-bottom: 60px;
	}
	#step .step_box {
		flex-direction: column;
		align-items: center;
		padding: 10px 15px 20px;
	}
	#step .step_box::before {
		border-bottom: 75px solid transparent;
		border-left: 75px solid #8fd3f3;
	}
	#step #no3 .step_box::before,
	#step #no4 .step_box::before {
		border-left: 75px solid #fedc32;
	}
	#step .label_box .label {
		top: 10px;
		left: 10px;
		font-size: 16px;
	}
	#step .step_box .no {
		margin-bottom: 30px;
	}
	#step .step_box .no .in {
		width: 310px;
	}
	#step .step_box .txt ul li {
		font-size: 16px;
	}
	#school dt img {
		width: auto;
		height: 28px;
	}
	#school dd p.img_rit {
		width: 120px;
	}
	#school dd p.img_rit img {
		width: 100%;
		height: auto;
	}
	#school dt {
		padding: 5px;
		font-size: 20px;
		font-weight: 700;
	}
	#school dt img {
		margin-right: 5px;
	}
	#school dt .in_img {
		margin-left: 5px;
		height: 25px;
	}
	.btn_logo a.btn_ao_a {
		flex-direction: column;
	}
		.btn_logo a.btn_ao_a .a__text {
			font-size: 16px;
			margin-top: 13px;
			padding-right: 20px;
		}
	/*--------------------------------------------------
		クラス・料金案内
	--------------------------------------------------*/
	#price .box ul {
		padding: 5px;
	}
	#price .box li {
		margin-bottom: 10px;
		padding-left: 30px;
		background-position: left 3px;
		background-size: 20px auto;
		-webkit-background-size: 20px auto;
		line-height: 1.5;
	}
	#price .box li b {
		font-size: 18px;
	}
	#price .box dl {
		padding: 5px;
	}
	#price .box dt {
		font-size: 15px;
	}
	#price .box dd {
		text-align: left;
	}
	#price h3 {
		font-size: 17px;
	}
	#price .tbl th, #price .tbl td {
		padding: 3px;
		font-size: 12px;
	}
	/*--------------------------------------------------
		Global Talkとは
	--------------------------------------------------*/
	h3.sub {
		margin-bottom: 20px;
		font-size: 18px;
	}
	h3.txt1 span {
		font-size: 18px;
	}
	#global_talk .note h4 {
		font-size: 17px;
		width: 220px;
		height: 40px;
		top: -18px;
		left: calc(50% - 110px);
	}
	#global_talk .note {
		margin-top: 30px;
		padding: 35px 10px 30px;
	}
		#global_talk .note ul {
			margin-left: 7px;;
		}
	#global_talk .note ul li {
		font-size: 14px;
	}
	#global_talk .note li::before {
		top: -1px;
		left: -5px;
		width: 8px;
		height: 8px;
	}
	#global_talk img {
		width: 100%;
	}
	#feature_faq .faq_box01 h4.headline {
		font-size: 16px;
		line-height: 60px;
		box-sizing: border-box;
		padding-left: 15px;
	}
	#feature_faq .faq_box01 h4.headline span {
		font-size: 26px;
		color: #fbc98e;
		vertical-align: middle;
		margin-right: 10px;
	}
	#feature_faq .faq_box01 img {
		float: none;
		margin: 0;
		width: 80%;
	}
	#feature_faq .faq_box01 p {
		margin: 15px;
	}
	#feature_feature .top_img {
		position: static;
		margin-bottom: 10px;
	}
	#feature_feature .feature_box01 {
		padding: 25px 19px;
	}
	#feature_feature .txt01 {
		text-align: center;
		font-size: 16px;
		font-weight: bold;
	}
	#feature_feature .txt01 span {
		font-size: 14px;
	}
	#feature_feature .feature_box01 .inner {
		margin-bottom: 30px;
	}
	#feature_feature .feature_box01 img {
		width: 70%;
		float: none;
	}
	#feature_feature .feature_box01 img.mb {
		margin-bottom: 30px;
	}
	#feature_feature .feature_box01 .inner .number {
		width: 50px;
		min-width: 50px;
		height: 50px;
		font-size: 16px;
		line-height: 16px;
		margin-right: 10px;
	}
	#feature_feature .feature_box01 .inner .number span {
		margin-top: 2px;
		font-size: 20px;
	}
	#feature_feature .feature_box01 .inner .txt .txt02 {
		font-size: 18px;
	}
	#feature_feature .feature_box01 table td {
		display:block;
	}
	#feature_feature .feature_box01 table td ul {
		width: 100%;
	}
	#feature_feature .feature_box01 table td .tar {
		text-align: right;
		width: 100%;
	}
	#feature_feature .feature_box01 table td .txt06 {
		position: static;
		margin-bottom: 0;
		font-size: 14px;
	}
	#feature_feature .feature_box01 table td.table02 ul {
		display: block;
	}
	/*--------------------------------------------------
		会社概要
	--------------------------------------------------*/
	#company .wrap dl {
		width: 49%;
	}
	#company .wrap dl dd .kosugi {
		font-size: 15px;
	}
/*------------------------------------------------*/
}
