@charset "utf-8";
body{
	min-width:320px;
	font-size:12px;
}
img{
	max-width:100%;
}
.nodisplaySpInline{
	display:none;
}
.nodisplayPcInline{
	display:inline;
}
.nodisplaySpBlock{
	display:none;
}
.nodisplayPcBlock{
	display:block;
}
#contents{
	width:auto;
	padding:0 5px;;
}
#oneContents{
	padding-top:0px;
}
#primaryContents, #primaryContentsR{
	float:none;
	width:auto;
	min-width:320px;
	padding:0 0 10px 0;
}
#narrowContents{
	padding:0 5px 0 5px;
	width:auto;
	min-width:320px;
}
#secondaryContents, #secondaryContentsL, #firstContents{
	float:none;
	width:auto;
	padding:0 0 30px 0;
	min-width:320px;
	clear:both;
}
#firstContents{
	padding-bottom:10px;
}
div#topImg{
	width:auto;
}
div.rightImg{
	margin-left:0px;
	float:none;
}
div.leftImg{
	margin-right:0px;
	float:none;
}
span.smallText{
	font-size:10px;
}
p.NP{
	padding:0;
}
.colHalfLeft, .colHalfRight{
	width:auto;
	float:none;
}
.colHalfLeftInner, .colHalfRightInner{
	padding:0 0 20px 0;
}
/*************************************/
/* フォーム */
/*************************************/
input[type=text], textarea, input[type=password], input[type=file], select{
	padding: 3px 5px;
}


/*************************************/
/* ヘッダー */
/*************************************/
img#headerLogo{
	position:static;
	margin-left:20px;
}
h1#headerTitle, div#headerTitle{
	top:15px;
	left:60px;
	font-size:10px;
}
div#headerWrap{
	position:relative;
	width:100%;
	min-width:320px;
}
div#header{
	width:auto;
	min-width:320px;
	margin:0;
	height:30px;
}
#headerLogo{
	left:0px;
}
#headerLogo img{
	height:30px;
}
#headerLogout{
	top:5px;
	right:5px;
}
#headerWishlist{
	display:none;
}
#headerBg1,#headerBg2,#headerWrapBackL,#headerWrapBackR{
	display:none;
}
/*************************************/
/* 下部メニュー */
/*************************************/
#gnaviSp{
	position:fixed;
	display:block;
	bottom:0;
	right:0;
	z-index:99;
	width:600px;
}
#gnaviSpM{
	background-image: url("../img/sp_gmenu.png");
	background-size:cover;
	position:absolute;
	bottom:0;
	right:0px;
	width:470px;
	height:55px;
	z-index:101;
	padding-left:130px;
}
#gnaviSpM .gnaviSpM{
	display:inline-block;
	z-index:101;
	width:120px;
	height:45px;
	float:left;
	font-size:18px;
	color:#fff;
	text-align:center;
	padding-top:10px;
	cursor:pointer;
}
#gnaviSpSearch{
	position:absolute;
	left:0px;
	bottom:6px;
	width:150px;
	cursor:pointer;
	z-index:102;
}
#gnaviSpSearch:hover{
	opacity:0.9;
}
#gnaviSpSubWrap{
	background-image: url("../img/sp_gsmenu.png");
	background-size:cover;
	position:absolute;
	bottom:0;//55px;
	right:0;
	z-index:99;
	width:540px;
	height:65px;
}
#gnaviSpClose{
	position:absolute;
	bottom:15px;
	left:40px;
	background-image: url("../img/sp_gsmenu_close.png");
	background-size:cover;
	display:block;
	width:25px;
	height:25px;
	cursor:pointer;
}
#gnaviSpSubWrap form{
	position:absolute;
	bottom:12px;
	left:100px;
}
#gnaviSpWishlist{
	position:absolute;
	bottom:12px;
	left:280px;
	color:#333;
	font-size:15px;
}
#gnaviSpDbWrap{
	width:400px;
	margin-left:80px;
}
#gnaviSpDbWrap a{
	display:inline-block;
	width:110px;
	height:45px;
	float:left;
	font-size:18px;
	color:#333;
	text-align:center;
	padding-top:20px;
	margin-top:10px;
	cursor:pointer;
	line-height:1;
}
/*
#gnaviSpDbWrap a:nth-child(2){
	padding-top:10px;
}
*/
#gnaviSpHome{
	position:absolute;
	right:0px;
	bottom:4px;
	width:20%;
	z-index:102;
}
#gnaviSpHome img{
	display:block;
	width:100%;
}
#globalNaviWrap, #globalNaviBack, #simpleSearch{
	display:none;
}
@media only screen and (max-width: 600px) {
	#gnaviSp{
		width:450px;
	}
	#gnaviSpM{
		width:370px;
		height:42px;
		padding-left:80px;
	}
	#gnaviSpSearch{
		width:100px;
	}
	#gnaviSpHome{
		width:70px;
	}
	#gnaviSpM .gnaviSpM{
		width:100px;
		font-size:14px;
	}
	#gnaviSpSubWrap{
		width:410px;
		height:49px;
	}
	#gnaviSpDbWrap{
		margin-left:60px;
	}
	#gnaviSpDbWrap a{
		font-size:14px;
		padding-top:12px;
		width:90px;
	}
	/*
	#gnaviSpDbWrap a:nth-child(2){
		padding-top:5px;
	}
	*/
	#gnaviSpClose{
		bottom:11px;
		width:20px;
		height:20px;
	}
	#gnaviSpSubWrap form{
		bottom:6px;
		left:90px;
	}
	#gnaviSpWishlist{
		bottom:6px;
		left:230px;
		font-size:13px;
	}
	#gnaviSpSubWrap input[type=text]{
		font-size:12px;
	}
}
@media only screen and (max-width: 450px) {
	#gnaviSp{
		width:320px;
	}
	#gnaviSpM{
		width:260px;
		height:30px;
		padding-left:60px;
	}
	#gnaviSpSearch{
		width:65px;
	}
	#gnaviSpHome{
		width:50px;
	}
	#gnaviSpM .gnaviSpM{
		width:70px;
		font-size:10px;
		padding-top:7px;
		height:23px;
	}
	#gnaviSpSubWrap{
		width:300px;
		height:36px;
	}
	#gnaviSpDbWrap{
		margin-left:40px;
	}
	#gnaviSpDbWrap a{
		font-size:10px;
		padding-top:8px;
		width:70px;
	}
	/*
	#gnaviSpDbWrap a:nth-child(2){
		padding-top:3px;
	}
	*/
	#gnaviSpClose{
		bottom:8px;
		width:15px;
		height:15px;
		left:28px;
	}
	#gnaviSpSubWrap form{
		bottom:4px;
		left:55px;
	}
	#gnaviSpWishlist{
		bottom:4px;
		left:165px;
		font-size:10px;
	}
	#gnaviSpSubWrap input[type=text]{
		font-size:10px;
		padding:3px;
	}
}
/*************************************/
/* パンくず */
/*************************************/
#breadCrumbWrap{
	padding:2px 0 3px 5px;
}
/*************************************/
/* ページネート */
/*************************************/
.paging{
	padding:4px 5px;
}
.paging span a, .paging span.current{
	margin:0;
	padding:4px 10px 2px 10px;

}
/*************************************/
/* フッター */
/*************************************/
#footerWrap{
	width:auto;
	min-width:320px;
	margin-bottom:70px;
}
#footer{
	width:auto;
	margin:0 10px 0 10px;;
	padding:30px 0 20px 0;
}
#footerR, #footerL{
	float:left;
}
/*************************************/
/* レイアウト */
/*************************************/
input[type=text].long{
	width:90%;
}
table th.pcth{
	width:150px;
}
/*************************************/
/* カルーセル */
/*************************************/
.flickity-prev-next-button{
	display:none;
}
.topWrap .flickity-prev-next-button{
	display:inline;
	border-radius: 1px;
	width: 20px;
	max-width:20px;
	min-width:20px;
	height: 30px;
	background: #fff;
	box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.3);
	margin-top: 5px;
}
.topWrap .flickity-prev-next-button svg{
	width:12px;
}
.topWrap .flickity-prev-next-button.previous {
	left:-10px;
}
/*************************************/
/* トップページ */
/*************************************/
#carouselCell{
	margin-right:0px;
	margin-bottom:10px;
	margin-left:0px;
}
.carousel{
	font-size:12px;
}
.carousel a{
	font-size:14px;
}
#topRankingWrap{
	position:relative;
	float:none;
	margin:0 auto;
}
.campaignWrap{
	padding:5px 5px 0px 5px;
}
.carouselWrap{
	height:auto;
	padding:0 5px;
}
.flickity-page-dots{
	display:block;
	bottom: -0px;
	width:80%;
}
.flickity-page-dots .dot {
  height: 4px;
  width: 40px;
  margin: 0;
  border-radius: 0;
}
.topWrap{
	padding:0px;
}
.topWrapCenter{
	padding: 0px 5px 0px 5px;
}
.columnList {
	margin: 0px 5px;
}
#topInfo{
	padding: 15px 10px;
}
h2.topTitle03, h2.topTitle02, h2.topTitle01, h2.topTitle04{
	height:25px;
	color:#fff;
	font-size:14px;
	margin:0px 94px 5px 0;
	background-color:#D64431;
	background-image:none;
	position:relative;
	padding:3px 10px 0 10px;
	font-weight:normal;
	display:inline-block;
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
}
h2.topTitle02{
	background-color:#ed731c;
}
h2.topTitle01{
	background-color:#4CB458;
}
h2.topTitle04{
	background-color:#1A3740;
}
h2.topTitle03:after, h2.topTitle02:after, h2.topTitle01:after, h2.topTitle04:after{
  content:"";
	position:absolute;
	top:0;
	right:-94px;
	background-image: url("../img/title_red.png");
	background-position: left top;
	background-repeat:no-repeat;
	height:28px;
	width:94px;
}
h2.topTitle02:after{
	background-image: url("../img/title_orange.png");
}
h2.topTitle01:after{
	background-image: url("../img/title_green.png");
}
h2.topTitle04:after{
	background-image: url("../img/title_deepblue.png");
}
.topWrap{
	clear:both;
	margin: 0 0 0px 10px;
}
.tab li a{
	font-size:11px;
	padding:5px 5px 2px 5px;
	line-height:1.2;
	height:24px;
}
/*************************************/
/* 講師ランキング */
/*************************************/
#topRankingWrap{
	width:auto;
	margin:0 5px;
	height:400px;
}
#topRankingTabPanel1{
	width:100%;
	box-sizing:border-box;
	height:300px;
}
.topRankingTabPanel2{
	height:10px;
	padding:0;
}
.topRankingTabPanel2, .topRankingTabPanel2 li{
	width:100%;
	box-sizing:border-box;
}
.topRankingTabPanel2 li{
	padding:0 15px;
	left:0;
}
#topRankingTab1 li a, #topRankingTab2 li a{
	padding:1px 4px 0px 4px;
}
.topRankingColRank span{
	display:inline;
}
.topRankingColRank, .topRankingColImg, .topRankingColName{
	height:30px;
}
.topRankingCol1 .topRankingColRank, .topRankingCol1 .topRankingColImg, .topRankingCol1 .topRankingColName{
	height:45px;
}
.topRankingColName a{
	font-size:12px;
}
.topRankingCol1 .topRankingColName a{
	font-size:14px;
}
.topRankingCol img{
	width:30px;
}
.topRankingCol1 .topRankingColImg img{
	width:40px;
}
.topRankingColImgCourse img{
	width:40px;
}
.topRankingCol1 .topRankingColImgCourse img{
	width:60px;
}
.topRankingColImgCourse{
	width:60px;
}
.topRankingCol1 .topRankingColImgCourse{
	width:80px;
}
.topRankingCol .topRankingIcon1, .topRankingCol .topRankingIcon2{
	width:15px;
	left:62px;

}
.topRankingIcon2{
	top:60px;
}
.topRankingColRank{
	width:45px;
	text-align:left;
}
.topRankingCol1 .topRankingColName a{
	font-size:12px;
}
#topLecPointRank{
	padding:5px 10px;
}
#topLecPointRank .topRankingIcon1{
	top:13px;
	left:65px;
}
#topLecPointRank .topRankingIcon2{
	top:70px;
	left:65px;
}
/*************************************/
/* マイページランキング */
/*************************************/
#mypageRankingWrap{
	width:auto;
	margin:0 5px;
	height:425px;
}
#mypageRankingWrap #topRankingTabPanel1{
	width:100%;
	box-sizing:border-box;
	height:300px;
}
#mypageRankingWrap .topRankingTabPanel2{
	height:10px;
	padding:0;
}
#mypageRankingWrap .topRankingTabPanel2, #mypageRankingWrap .topRankingTabPanel2 li{
 	width:100%;
	box-sizing:border-box;
}
#mypageRankingWrap .topRankingTabPanel2 li{
	padding:0 15px;
	left:0;
}
#mypageRankingWrap #topRankingTab1 li a, #mypageRankingWrap #topRankingTab2 li a{
	padding:1px 4px 0px 4px;
}
#mypageRankingWrap .topRankingColRank span{
	display:inline;
}
#mypageRankingWrap .topRankingColRank, #mypageRankingWrap .topRankingColImg, #mypageRankingWrap .topRankingColName{
	height:30px;
}
#mypageRankingWrap .topRankingCol1 .topRankingColRank, .topRankingCol1 .topRankingColImg, #mypageRankingWrap .topRankingCol1 .topRankingColName{
	height:45px;
}
#mypageRankingWrap .topRankingColName a{
	font-size:12px;
}
#mypageRankingWrap .topRankingCol1 .topRankingColName a{
	font-size:14px;
}
#mypageRankingWrap .topRankingCol img{
	width:30px;
}
#mypageRankingWrap .topRankingCol1 .topRankingColImg img{
	width:40px;
}
#mypageRankingWrap .topRankingColImgCourse img{
	width:40px;
}
#mypageRankingWrap .topRankingCol1 .topRankingColImgCourse img{
	width:60px;
}
#mypageRankingWrap .topRankingColImgCourse{
	width:60px;
}
#mypageRankingWrap .topRankingCol1 .topRankingColImgCourse{
	width:80px;
}
#mypageRankingWrap .topRankingCol .topRankingIcon1, #mypageRankingWrap .topRankingCol .topRankingIcon2{
	width:15px;
	left:45px;

}
#mypageRankingWrap .topRankingIcon2{
	top:60px;
}
.topRankingColRank{
	width:45px;
	text-align:left;
}
#mypageRankingWrap .topRankingCol1 .topRankingColName a{
	font-size:12px;
}
#mypageRankingWrap #topLecPointRank{
	padding:5px 10px;
}
#mypageRankingWrap #topLecPointRank .topRankingIcon1{
	top:13px;
	left:65px;
}
#mypageRankingWrap #topLecPointRank .topRankingIcon2{
	top:70px;
	left:65px;
}
/*************************************/
/* TOP動画 */
/*************************************/
@media screen and (max-width:600px) {
	#topMovieOverLayer{
		width:100%;
		left:0px;
		margin-left:0px;
		box-sizing:border-box;
	}
}
/*************************************/
/* 講座購入 */
/*************************************/
.courseContensL{
	width:auto;
	float:none;
}
.courseContensR{
	width:auto;
	float:none;
}
#planCartSelect{
	height:auto;
}
#planScroll{
	position:fixed;
	bottom:70px;
	left:50%;
	z-index:49;
	width:60%;
	margin-left:-30%;
}
@media only screen and (max-width: 600px) {
	#planScroll{
		bottom:50px;
	}
}
@media only screen and (max-width: 450px) {
	#planScroll{
		bottom:40px;
	}
}
.courseWrap{
	text-align:center;
}
#courseImg{
	width:auto;
	float:none;
}
#courseInfo{
	width:auto;
	float:none;
	padding:10px 15px;
	min-height:auto;
}
.curPanel{
	padding:10px 10px;
}
.lecmovieCol{
	padding: 5px 5px 5px 10px;
}
.lecmovieTitle{
	width:auto;
	float:none;
}
#courseSearch{
	text-align:left;
}
#courseSearch input[type=submit]{
	padding: 2px 20px 0px 20px;
}
.lecmovieLength{
	width: 50px;
}
.lecmovieSample{
	width:110px;
}
.lecmovieFormat{
	width:110px;
}
.lecturerListImg{
	width:100px;
}
.lecturerListImg img{
	width:90px;
}
.lecturerListInfo{
	height:auto;
	margin-left:100px;
	padding-bottom:20px;
}
/*************************************/
/* マイページその他 */
/*************************************/
#maypageMenu a{
	padding:3px 0 1px 0;
}
/*************************************/
/* 動画ページ */
/*************************************/
#movieController{
	padding:7px 5px 10px 5px;
}
#movieController a{
	padding:2px 10px 0 10px;
	margin:0 1px;
}
#movieController #movieControllerTop{
	float:none;
}
/*************************************/
/* ランディングページ */
/*************************************/
.lpageRegiWrap{
	width:auto;
	min-width:300px;
	border:1px solid #ccc;
	padding:10px 10px;
	background:#fafafa;
	margin:0 auto;
	text-align:center;
}
/*************************************/
/* 講師ページ */
/*************************************/
.lecturerImg{
	width:auto;
	float:none;
}
.lecturerBody{
	width:auto;
	float:none;
}
/*************************************/
/* ランキングページ */
/*************************************/
#rankingPageTab1 li a, #rankingPageTab2 li a{
	font-size:13px;
	padding: 1px 7px 0px 7px;
}
#rankingPageTab2 li a{
	font-size:12px;
	padding: 1px 5px 0px 5px;
}
.rankingPageColRank{
	padding-left:5px;
}
.rankingPageColName{
	clear:both;
	width:auto;
	float:none;
	padding:10px 5px;
}
.rankingPageColImg img{
	width:100px;
}
.rankingPageColName a{
	font-size:14px;
}
/*************************************/
/* 答案添削 */
/*************************************/
.corpostSpBtn{
	display:inline;
}
.corpostPcBtn{
	display:none;
}
