@charset "UTF-8";
/*----------------------------------------
	トップページ
----------------------------------------*/


/* 共通
---------------------------------------- */

.h2wrap {
	width: 100%;
	height: 40px;
	background-color: #2a557f;
	color: #fff;
	font-family: "Sawarabi Mincho";
	font-size: 20px;
	text-align: center;
	margin-bottom: 15px;
}

.h2wrap h2 {
	font-family: "Sawarabi Mincho"!important;
	font-size: 18px!important;
	line-height: 18px!important;
	font-weight: normal;
}

/* 右上講師登録ボタン
---------------------------------------- */

#header_sp .btn_regist_lecturer {
	float: right;
	width: 70px;
	margin-right: 1px;
}
#header_sp .btn_regist_lecturer a {
	display: block;
	background-color: #1875ce!important;
	width: 70px;
	padding: 10px 0 10px;
	color: #ffffff;
	text-align: center;
	font-size: small;
}
#header_sp .btn_regist_lecturer a span {
  display: inline-block;
}
#header_sp .btn_request {
  float: right;
	width: 70px;
margin-right: 1px;
}
#header_sp .btn_request a {
	display: block;
	background-color: #FF8800!important;
	width: 70px;
	padding: 10px 0 10px;
	color: #ffffff;
	text-align: center;
	font-size: small;
}
#header_sp .btn_request a span {
  display: inline-block;
}


/* main visual
---------------------------------------- */
.main_visual_sp img{
	width: 100%;
	height: auto;
}




/* 学習コース一覧
---------------------------------------- */

.h2wrap h2.subtitle_course {
	width: 210px;
	height: 40px;
	margin: 0 auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_book.png);
	background-size: 20px 15px;
	background-repeat: no-repeat;
	background-position: 4px 12px;
}
.page_index .courselist {
	margin-bottom: 0px;
}
.page_index .courselist nav {
	width: 320px;
	margin-left: auto;
	margin-right: auto;
}
.page_index .courselist ul {
	margin-bottom: -30px;
}
.page_index .courselist ul li {
	margin-bottom: 5px;
}
.page_index .courselist ul li img{
	width: 100%;
}

/* cvbox
---------------------------------------- */

.cv_box{
	width: 310px;
	margin: 0px auto 20px;
	padding-top: 10px;
	padding-right: 0px;
	padding-left: 0px;
	padding-bottom: 20px;
	border: solid 1px #2a567d;
}
.cv_box h2 {
	font-size: 22px;
	font-family: "Sawarabi Mincho";
	color: #2a567d;
	text-align: center;
	margin-top: 0px;
	margin-bottom: 10px;
}
.cv_box img{
	width: 100%;
}
.cv_box .btn_sp{
	width: 260px;
	margin-left: auto;
	margin-right: auto;
}
.cv_box .btn_sp ul {
	margin-top: 10px;
}

.cv_box .btn_sp ul li {
	float: left;
	width: 120px;
	height: 60px;
	margin-left:5px;
	margin-bottom:5px;
	margin-right:5px;
	font-size: 20px;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 7px;
}
.cv_box .btn_sp ul li.btn_request{
	background-color: #ff8726;
}
.cv_box .btn_sp ul li.btn_entry{
	background-color: #7dc12e;
}
.cv_box .btn_sp ul li a{
	color: #fff;
}


/* 対応エリア
---------------------------------------- */

.service_area {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 40px;
	overflow: hidden;
}

.service_area h2.subtitle_area {
	width: 315px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_area.png);
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: 5px 9px ;
}
.service_area p.subtitle_area {
	margin:auto;
	width: 90%;
	font-size: 10px;
	text-align: center;
	margin-bottom:20px;
}
.service_area .wrap{
	margin-left: 20px;
}
.service_area .area_map{
	display: none;
}
.service_area .area_map img{
}
.service_area .area_select {
}
.service_area .area_select .area_box h3 {
	text-align: left;
}
.service_area .area_select .area_box h3 img {
	width: 80px;
	height: 29px;
}
.service_area .area_box {
	margin-bottom:15px;
}
.service_area .area_box ul li {
	float: left;
	margin-top: 10px;
	margin-bottom: 3px;
	padding-left: 6px;
	padding-right: 6px;
	font-size: 16px;
	line-height: 16px;
	border-right: solid 1px #000;
	
}
.service_area .area_box li.last{
	border-right: none;
}
.service_area .area_box ul li a{
	text-decoration:none;
	color:#333;
}


/* はじめて家庭教師をご検討の方へ
---------------------------------------- */

.first-time {
	width: 100%;
	margin-top: 0px;
	margin-bottom: 40px;
	overflow: hidden;
}
.first-time h2.subtitle_first-time {
	width: 330px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_beginner.png);
	background-size: 18px 20px;
	background-repeat: no-repeat;
	background-position: 4px 10px ;
}
.first-time p.subtitle_first-time {
	margin:auto;
	width: 90%;
	font-size: 12px;
	text-align: center;
	margin-bottom:20px;
}

.first-time .wrap {
	width: 95%;
	margin: auto;
}

.first-time .wrap p img{
	width:100%;
	margin-top:5px;
}


/* message
---------------------------------------- */
.message {
	clear: both;
	overflow: hidden;
	background-color: #fff;
	margin-bottom:30px;
}


.message .h2wrap h2.subtitle_message {
	width: 200px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_me.png);
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: 4px 9px;
	margin-bottom: 0px;
}
.message .wrap{
    margin-top: -15px;
}

.message img {
	width: 100%;
	height: auto;
}
.message .subtitle {
	padding: 15px 0;
	margin-bottom:10px;
	font-size: 1.0rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	background-color: #006;
}
.message h3 {
	padding: 0 10px;
	margin: 10px 20px 0 20px;
	font-size: 1.0rem;
	font-weight: bold;
	line-height: 1.4;
	border-left-width: 5px;
	border-left-style: solid;
	border-left-color: #006;
}

.message .text {
	font-family: "Sawarabi Mincho";
	font-size: 15px;	
	line-height: 22px;
	line-height: 1.4;
	margin-bottom: 10px;
	padding-top: 6.875%;
	padding-right: 6.875%;
	padding-bottom: 0;
	padding-left: 6.875%;
	overflow: hidden;
}


.banner_middle {
	margin-bottom: 40px;
	
} 
.banner_middle p {
	margin-top: 20px;
	margin-bottom: 20px;
	margin-left: 10px;
	margin-right: 10px;
	
} 
.banner_middle p img{
	width: 100%;
	height: auto;
	
} 


/* 合格体験談
---------------------------------------- */

.taikendan {
	width: 100%;
	margin-top: 0px;
	margin-bottom: 40px;
	overflow: hidden;
}
.taikendan h2.subtitle_taikendan {
	width: 150px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_fukidashi.png);
	background-size: 20px 18px;
	background-repeat: no-repeat;
	background-position: 4px 10px ;
}
.taikendan p.subtitle_taikendan {
	margin:auto;
	width: 90%;
	font-size: 12px;
	text-align: center;
	margin-bottom:20px;
}

.taikendan .wrap {
	width: 95%;
	margin: auto;
}

.taikendan .wrap p img{
	width:100%;
	margin-top:5px;
}




/* お知らせ
---------------------------------------- */
.page_index .news .subtitle.sp{
	font-size:18px;
	font-weight:bold;
	margin-bottom:5px;
	color:#FFF;
	background-color:#006;
	text-align:center;
	padding:10px !important;
}

.news .h2wrap h2.subtitle_info {
	width: 125px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_info.png);
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: 4px 9px ;
}

.page_index .news {
	margin-top: 0px;
	margin-bottom: 50px;
}
.page_index .news .wrap {
	width: 100%;
	margin:0 auto;
}
.page_index .news .news_list {
  margin-top: -1px;
}
.page_index .news .news_list li {
  padding: 20px;
  border-bottom: solid 1px #d2dbed;
	font-size: 13px;
	line-height: 20px;
}
.page_index .news .news_list li .date {
  display: inline-block;
  width: 70px;
  vertical-align: bottom;
  color: #a6a6a6;
}
.page_index .news .news_list li .category_label {
	display: inline-block;
	width: 85px;
	color: #FFF;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-align: center;
	font-size: 12px;
	margin:0 10px 5px 0;
	padding:3px 5px;
	float:left;
}
.page_index .news .news_list li .news {
	background-color: #F93;
}
.page_index .news .news_list li .blog {
	background-color: #39F;
}
.page_index .news .news_list li .title {
  display: inline-block;
  vertical-align: bottom;
}
.page_index .news .news_list li .title a {
  color: #142551;
}
.page_index .link_to_topics {
	text-align: right;
	margin: 20px 0 0;
}
.page_index .link_to_topics a {
	color: #142551;
}

/* 所在地
---------------------------------------- */

.address .h2wrap h2.subtitle_address {
	width: 110px;
	height: 40px;
	margin:auto;
	padding-top: 11px;
	background-image: url(../img_sp/index/sp_icon_co.png);
	background-size: 18px 23px;
	background-repeat: no-repeat;
	background-position: 4px 8px ;
}
.page_index .base_top .address {
	width:100%;
	margin:30px auto 0px;
	clear: both;
	overflow:hidden;
}
.page_index .address .subtitle.sp{
	font-size:18px;
	font-weight:bold;
	margin-bottom:5px;
	color:#FFF;
	background-color:#006;
	text-align:center;
	padding:10px !important;
}
.page_index .address h3{
	font-size:16px;
	font-weight:bold;
	clear:both;
	margin-bottom:10px;
	line-height:1.6;
	border-left:4px solid #000064;
	padding-left:10px;
}
.page_index .address .wrap{
	clear:both;
	width:100%;
	margin:20px auto 30px;
	overflow:hidden;
}
.address .wrap p{
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 10px;
}
.address .wrap p.co_tokyo{
	color:#28557e;
	margin-top:20px;
}
.address .wrap p.co_kansai{
	color:#983839;
	border-top:dotted 1px #000;
	padding-top: 25px;
}
.page_index .address .map_wrap {
	float: none;
	width:90%;
	margin:10px auto 0;
}
.page_index .address .map_wrap iframe{
	height:250px;
	width:100%;
}
.page_index .address .left {
	float: none;
	width:90%;
	margin:0 auto 5px;
}
.page_index .address dl dt{
	font-weight:bold;
	margin: 0 ;
	line-height:1.6;
	background-color:#f2f2f2;
	padding:5px 10px 0;
	font-size: 15px;
	font-weight: bold;
	color:#000;
}
.page_index .address dl dd{
	margin-bottom:10px;
	font-size:14px;
	line-height:1.4;
	background-color:#f2f2f2;
	padding:5px 10px 10px;
}

/* catch
---------------------------------------- */
.catch .container {
	background-color: #FFF;
}
.catch .container .title {
	width: 90%;
	padding-top: 10px;
	color: #142551;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	margin-top: 20px;
}
.catch .container .text {
	width: 90%;
	color: #142551;
	font-size: 90%;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	margin-bottom: 50px;
	line-height: 1.2;
}

/* ページコンテンツ
---------------------------------------- */

/* 
.page_index .contents .bg_round_white {
  margin-bottom: 20px;
}
.page_index .news_wrap {
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	clear: both;
	width: 100%;
	margin-top: 30px;
}
.page_index .news_wrap .block.news {
	background-color: #FFF;
	padding: 10px 20px 30px 20px;
}
.page_index .news_wrap .block.news .block_head {
	width: 100%;
	color: #142551;
	font-size: 20px;
	font-weight: bold;
	background-color: #FFF;
	padding: 5px;
	margin-top: 20px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
.page_index .news_wrap .block.news .block_body {
  overflow: hidden;
}
.page_index .news_wrap .block.news .news_list {
  margin-top: -1px;
}
.page_index .news_wrap .block.news .news_list li {
  padding: 20px 10px;
  border-top: solid 1px #d2dbed;
}
.page_index .news_wrap .block.news .news_list li .date {
  display: inline-block;
  width: 85px;
  vertical-align: bottom;
  color: #a6a6a6;
}
.page_index .news_wrap .block.news .news_list li .category_label {
  display: inline-block;
  padding: 3px 10px;
  color:#FFF;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  text-align:center;
  font-size:11px;
}

.page_index .news_wrap .block.news .news_list li .news {
	background-color: #F93;
}
.page_index .news_wrap .block.news .news_list li .blog {
	background-color: #39F;
}


.page_index .news_wrap .block.news .news_list li .title {
  display: inline-block;
  vertical-align: bottom;
  line-height:1.5;
}
.page_index .news_wrap .block.news .news_list li .title a {
  color: #142551;
}
.page_index .link_to_topics {
	text-align: right;
	margin-bottom: 30px;
}
.page_index .link_to_topics a {
	color: #142551;
	display: block;
	text-align: center;
	padding: 5px;
	margin-top: 10px;
	margin-bottom: 30px;
	background-color: #ffcd00;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
*/

/*　講師登録ボタンCVBOX内
*/
/*.cvbox .koushi_touroku {
	clear:both;
	width: 86.25%;
	margin-left:auto;
	margin-right:auto;
}
.cvbox .koushi_touroku a {
	border: 1px solid #FF3300;
	border-radius: 6px;
	display: block;
	color: #142551;
	background-color: #FF6600;
	_text-shadow: 0px 1px 0px #fff;
	text-align: center;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	padding-top: 9px;
	padding-right: 0;
	padding-bottom: 9px;
	padding-left: 0;
}

.chuju_banner_sp {
    overflow: hidden;
    background-color: #fff;
	margin-top:10px;
    margin-bottom: 10px;
}

.chuju_banner_sp img {
    width: 100%;
    height: auto;
}
/* -----------------------------------------------
top page
----------------------------------------------- */

/* slider */

#slideArea {
	line-height: 0;
}

/* nav */

/*.topNav {
	font-size: 62.5%;	}
.topNav ul {
	border-bottom: 1px #dfdfdf solid;
}
.topNav ul li {
	border-top: 1px #dfdfdf solid;
	float: left;
	width: 50%;
	background-color: #fff;
}
.topNav ul li a {
	padding: 7px 0 7px 13px;
	position: relative;
	display: block;
	height: 40px;
	line-height: 40px;
	color: #142551;
	font-size: 1.0rem;
	font-weight: bold;
}
.topNav ul li:nth-child(2n) a {
	border-left: 1px #dfdfdf solid;
}
.topNav ul li a:after {
	position: absolute;
	top: 7px;
	right: 13px;
	content: "";
	width: 14px;
	height: 40px;
	background: url(/sp/common/images/icon_arrow02.png) top left no-repeat;
	background-size: 14px 40px;
}
.topNav ul li:nth-child(1) a:after {
	background: url(/sp/common/images/icon_arrow05.png) top left no-repeat;
	background-size: 14px 40px;
}
.topNav ul li:nth-child(2) a:after {
	background: url(/sp/common/images/icon_arrow06.png) top left no-repeat;
	background-size: 14px 40px;
}
.topNav ul li:nth-child(3) a:after {
	background: url(/sp/common/images/icon_arrow07.png) top left no-repeat;
	background-size: 14px 40px;
}
.topNav ul li:nth-child(4) a:after {
	background: url(/sp/common/images/icon_arrow08.png) top left no-repeat;
	background-size: 14px 40px;
}
#overlay {
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 10000;
	opacity: 0.3;
}
#topNavBody {
	padding: 0 6.875%;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
	width: 86.25%;
	z-index: 10010;
}
#topNavBody #topNavInner {
}
#topNavBody .courseBox {
	margin: 100px 0;
	border-radius: 6px;
	display: none;
	width: 100%;
	background-color: #142551;
}
#topNavBody .courseBox ul {
}
#topNavBody .courseBox ul li {
	border-bottom: 1px #314066 solid;
}
#topNavBody .courseBox ul li a {
	padding: 15px 0 15px 20px;
	position: relative;
	display: block;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}
#topNavBody .courseBox ul li a:after {
	position: absolute;
	top: 19px;
	right: 12px;
	content: "";
	width: 8px;
	height: 15px;
	background: url(/sp/common/images/icon_arrow01.png) top left no-repeat;
	background-size: 8px 15px;
}
#topNavBody .courseBox .menuOff {
	padding: 15px 0 13px 0;
	text-align: center;
}
#topNavBody .courseBox .menuOff a {
	margin: 0;
	padding: 0 0 0 17px;
	position: relative;
	display: inline-block;
	line-height: 12px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}
#topNavBody .courseBox .menuOff a:before {
	position: absolute;
	top: 1px;
	left: 0;
	content: "";
	width: 12px;
	height: 12px;
	background: url(/sp/common/images/icon_close.png) top left no-repeat;
	background-size: 12px 12px;
}
#topNavBody .courseBox .menuOff a span {
	border-bottom: 1px #fff solid;
	font-size: 1.4rem;
}



.topPage .topLead {
	background-color: #fff;
	line-height: 1.4;
	margin-bottom: 30px;
	padding-top: 6.875%;
	padding-right: 6.875%;
	padding-bottom: 0;
	padding-left: 6.875%;
	overflow: hidden;
}
.topPage .topLead:after {
	content: "";
	display: block;
	clear: both;
}
.topPage .topLead .illust {
	float: right;
	width: 38%;
}
.topPage .topLead .illust img{
	width:100%;
}

.topPage .topLead h2 {
	margin-bottom: 10px;
	font-size: 1.0rem;
	font-weight:bold;
}
.topPage .topLead .button {
	margin-top: 15px;
	clear: both;
}


.topPage .topLead .button {
	border: 1px #c2c7d2 solid;
	border-radius: 6px;
}
.topPage .topLead .button a {
	padding: 12px 20px 12px 15px;
	border-radius: 6px;
	position: relative;
	display: block;
	color: #142551;
	background-color: #f0f5fc;
	font-size: 1.0rem;
	font-weight: bold;
}
.topPage .topLead .button a:after {
	position: absolute;
	top: 15px;
	right: 12px;
	content: "";
	width: 8px;
	height: 15px;
	display: block;
	background: url(/sp/common/images/icon_arrow03.png) top left no-repeat;
	background-size: 8px 15px;
}
 */
/* message
---------------------------------------- */
/* .message_sp{
	overflow: hidden;
	background-color: #fff;
	margin-bottom:30px;
}

.message_sp img{
	width: 100%;
	height: auto;
}
.message_sp .subtitle {
	padding: 15px 0;
	margin-bottom:10px;
	font-size: 1.0rem;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	background-color: #006;
}
.message_sp h3{
	padding: 0 10px;
	margin: 10px 20px 0 20px;
	font-size: 1.0rem;
	font-weight: bold;
	line-height: 1.4;
	border-left-width: 5px;
	border-left-style: solid;
	border-left-color: #006;
}

.message_sp .text {
	line-height: 1.4;
	margin-bottom: 10px;
	padding-top: 6.875%;
	padding-right: 6.875%;
	padding-bottom: 0;
	padding-left: 6.875%;
	overflow: hidden;
}

 */

