@charset "utf-8";

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

/*
########################################################
	ページ全体情報
########################################################
*/
	body {
		background: #ffffff;
		min-width: 0;
	}
	.pc {
		display: none !important;
	}
	.sm {
		display: block !important;
	}
	.sm2 {
		display: inline-block !important;
	}
	.page {
		width: 100%;
	}
	section > p {
		width: 97%;
	}
	.br-pc { display:none; }
	.br-sp { display:block; }

	.pageIn {
		width: 100%;
	}
	.flexBox .item1{order: 1;}
	.flexBox .item2{order: 2;}
	.flexBox .item3{order: 3;}
	.flexBox .item4{order: 4;}

	.white_bg {
		padding: 15px 10px;
	}
	.last_obj {
		margin-bottom: 0 !important;
	}



/*
########################################################
	ヘッダー
########################################################
*/
	#header_logo {
		width: 166px;
		margin: 20px 0 20px 10%;
	}
	header .flexBox {
		align-items: center;
	}



/*
########################################################
	ハンバーガーメニュー
########################################################
*/
	#nav-open {
		display: inline-block;
		width: 33px;
		height: 23px;
		vertical-align: middle;
		margin-right: 20px;
	}

	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		transition: all 0.4s;
		height: 3px;
		width: 25px;
		background: #8fbc41;
		display: block;
		content: '';
		cursor: pointer;
		z-index: 9999;
	}
	#nav-open span:before {
		bottom: -8px;
	}
	#nav-open span:after {
		bottom: -16px;
	}

	/* 中身 */
	#nav-content {
		display: none;
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		transition: .2s ease-in-out;
	}
	#nav-content.open {
		display: block;
		opacity: 1;
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9998;
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 1);/*背景色*/
		overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
	}

	/*:beforeにぼかし効果を設定する*/
	#nav-content.open:before {
		content: '';
		overflow: hidden;
		-webkit-filter: blur(10px);
		-moz-filter: blur(10px);
		-o-filter: blur(10px);
		-ms-filter: blur(10px);
		filter: blur(10px);
		z-index: -1;/*重なり順序を一番下にしておく*/
	}

	/*チェックが入ったら表示する内容*/
	.hamburger-top {
		height: 20px;/*×ボタンと被らないように*/
	}
	.category {
		margin: 2rem 0;
	}
	.category-title {
		position: relative;
		border-bottom: 1px solid #d2d2d2;
	}
	.category-title a {
		padding: 0.8rem 30px;
		display: block;
	}
	.cList {
		background-color: #0165c4;
		color: white;
	}
	.category-title:after {
		/*content: "\f125";*/
		font-family: ionicons;
		position: absolute;
		right: 20px;
		top: 0.8rem;
	}
	.cList a {
		color: white;
	}
	#hamburger_logo {
		margin-left: 17px;
		width: 166px;
	}
	.hamburger_conBlock img {
		width: 167px;
	}
	.hamburger_conBlock > .green_btn a {
		padding: 10px;
	}
	#twitBox {
		position: relative;
		width: 100%;
		height: auto;
		margin-top: 20px;
		padding: 0;
	}
	#twitBox a {
		display: block;
		padding: 10px 0;
		color: white;
	}

	/* 三本線を動かす */
	#nav-open.active span {
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	#nav-open.active span:before {
		-webkit-transform: translateY(-8px) rotate(45deg);/*打ち消す*/
		transform: translateY(-8px) rotate(45deg);/*打ち消す*/
		opacity: 0;
	}
	#nav-open.active span:after {
		-webkit-transform: translateY(-16px) rotate(45deg);
		transform: translateY(-16px) rotate(90deg);
	}



/*
########################################################
	トップページ
########################################################
*/
	/*トップメインイメージ スライダー*/
	.slick-prev:before {
		content: '' !important;
	}
	.slick-next:before{
		content: '' !important;
	}
	.slick-dots {
		bottom: 7px !important;
	}

	/* メインメニュー */
	.top_shudanTtl {
		width: 100%;
		text-align: left;
	}
	.top_shudanBtn {
		margin-bottom: 10px;
	}
	.top_shudanBtn img {
		width: 102px;
		height: 45px;
		margin-right: 0;
	}
	.Mmenu_right {
		background: white url(../img/top_kobetsuBg.svg) no-repeat 95% 15%;
		background-size: 54px 35px;
		margin-bottom: 0 !important;
	}

	/* キャンペーンバナー */
	.cp_bnrArea img {
		margin: 30px auto 50px;
		width: 95%;
	}

	/* お知らせ */
	.info_Block {
		padding-left: 0;
		margin-bottom: 40px;
	}

	/* twitter */
	.twit_Block {
		width: 85%;
		margin-bottom: 80px;
	}

	/* 学協の指導法・学習環境 */
	.topAbout_Block {
		padding-left: 0;
		margin-bottom: 80px;
	}

	/* 各コース */
	.topCourseArea, .campaign_halfBox, .campaignBg_halfBox, .special_halfBox, .specialBg_halfBox {
		width: 95%;
		margin: 0 auto 50px;
	}
	.topCourseArea figure img {
		width: 95vw;
		height: 188px;
	}
	.topCourseBody, .topCourseInner {
		width: 100%;
	}
	.topCourseInner dd {
		width: 80%;
	}



/*
########################################################
	ページ
########################################################
*/
	.hamburger_conBlock, .pankz, .gel_block, .imgTxt_Box, .enkaku_Box, .address_Box,
	.address_Block img, #infoBox, #topAboutBox, .topAboutArea, .privacyTxt_Block p,
	#fotInfo, .campaign_fullBlock p, .campaignBg_fullBox, .special_fullBlock p, .specialBg_fullBox,
	.contact_formBlock p, #formWrap p, .basicTxt_Block p {
		width: 95%;
		margin: 0 auto;
	}
	.bgHttl {
		padding: 10px 20px;
	}

	
	/* 各コース共通 */
		/* メインイメージ・タイトル */
	h2.Cmain_ttl {
		line-height: 78px;
		margin: 0 auto;
	}
	.Cmain_img {
		padding-left: 0;
		margin-top: 30px;
	}
	.Cmain_img img {
		width: 100%;
		height: 240px;
	}

		/* サブメニュー */
	.subMenu_list {
		height: auto;
	}
	.subMenu_list li {
		width: 49.5%;
		line-height: 1;
	}
	.subMenu_list li a {
		padding: 20px 0;
	}
	.subMenu_syou .subMenu_list li {
		border-bottom: 1px solid #fed7d7;
	}
	.subMenu_tyuu .subMenu_list li {
		border-bottom: 1px solid #d9ecff;
	}
	.subMenu_list li a {
		padding: 8px 0;
	}
	.subMenu_list li:last-child {
		border-right: none;
	}
	.subMenu_syou .subMenu_list li:last-child a, .subMenu_tyuu .subMenu_list li:last-child a,
	.subMenu_educe .subMenu_list li:first-child a {
		padding: 19px 0;
	}
	.subMenu_educe .subMenu_list {
		height: 60px;
	}
	.subMenu_educe .subMenu_list a {
		line-height: 1.6;
	}

		/* 各学年 */
	.Syear_Block {
		margin-bottom: 100px;
	}
	h2.Syear_ttl {
		font-size: 28px;
		margin-bottom: 10px;
	}
	.timeSche th, .timeSche td, #time {
		padding-left: 8px !important;
		padding-right: 8px !important;
	}
	.course_remarks {
		margin-bottom: 0;
	}
	.remRight {
		width: 25%;
	}
	.course_comList li {
		margin: 0 10px 10px;
	}
	.comList_B {
		padding-left: 15px;
	}
	.course_comList li dd {
		width: 100%;
		padding-top: 0;
	}

		/* 年間スケジュール */
	.yearSche_Block h3 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	.yearSche_Block h3:before, .yearSche_Block h3:after {
		top: 50%;
		transform: translateY(-50%);
		-webkit- transform: translateY(-50%);
		width: 15%;
	}
	.yearScheBox {
		padding: 15px 10px;
	}
	.yearScheBox .white_bg {
		padding: 15px;
	}
	.yearScheList_con li {
		padding: 10px 5px;
	}
	.yearScheList_con li:last-child {
		padding-bottom: 10px;
	}
	.yearScheList_con dt {
		width: 40%;
	}

	/* 個別指導 */
	#educe1 {
		margin-top: 60px;
	}
	.course_remarksBox, p.mainP {
		width: 95%;
		margin: 0 auto 30px;
	}
	#course_regBlock {
		padding: 10px;
	}
	.course_regList li.white_bg {
		padding: 0 0 20px;
		width: 100%;
		margin: 20px auto;
	}
	.educeTime th {
		width: 20%;
	}
	.Mmenu_left, .Mmenu_right, h3.bgHttl {
		width: 95%;
		margin: 0 auto 20px;
	}
	.kobetsuD_area .course_remarksBox td {
		padding: 8px 20px;
	}
	h2.Syear_ttl {
		line-height: 150%;
	}
	.gel_block {
		padding: 30px 15px;
	}
	.gel_block img {
		width: 100%;
		margin-top: 30px;
	}
	.gel_block_left {
		width: 100%;
	}

	/* 学協について */
	h2.pageBlue_ttl {
		font-size: 24px;
	}
	.imgTxt_Box p {
		width: 100%;
	}
	.imgTxt_Box img {
		width: 100%;
		margin-bottom: 20px; 
	}
	.topAboutArea, .yearSche_Block, .enkaku_Block {
		margin-bottom: 50px;
	}
	.enkaku_Box ul li {
		padding: 20px 0;
	}
	.enkaku_Box ul {
		margin: 0;
	}
	.enkaku_Box .top_day, .address_Box .top_day {
		display: block;
	}
	.about_Block {
		margin-bottom: 100px;
	}
		/* アコーディオン */
	.acd-check{
 	   display: none;
	}
	.acd-label{
	    display: block;
	}
	.acd-content{
	    height: 0;
	    opacity: 0;
	    transition: .5s;
	    visibility: hidden;
	    margin-bottom: 20px;
	}
	.acd-check:checked + .acd-label + .acd-content{
	    height: 100%;
	    opacity: 1;
	    visibility: visible;
	}
	.material-icons {
		display: inline-block !important;
		vertical-align: bottom;
	}



	/* キャンペーン・特設ページ フォーマット */
	.topCourseBody h3, .campaign_mainBlock p, .campaign_fullImg_Block p,
	.special_mainBlock p, .special_fullImg_Block p, img.wideImg {
		width: 95%;
	}
	.campaign_quarterBox, .special_quarterBox {
		width: 45%;
		margin: 0 2.5% 50px;
	}
	.campaignBg_fullBox li, .specialBg_fullBox li {
		padding: 20px 10px;
	}
	.campaign_halfBox h3, .campaignBg_fullBox .top_day, .campaignBg_halfBox .top_day,
	.campaignBg_fullBox p, .campaignBg_halfBox p,
	.special_halfBox h3, .specialBg_fullBox .top_day, .specialBg_halfBox .top_day,
	.specialBg_fullBox p, .specialBg_halfBox p,
	.contact_formArea .top_day, .formTable th, .formTable td {
		width: 100%;
	}
	.mb0 {
		margin-bottom: 0;
	}

	/* 191229追記 */
	.campaign_quarterImg_Block {
		margin-bottom: 30px;
	}

	/* アクセス */
	.map_Block, .address_Box {
		margin-bottom: 30px;
	}
	.map_Block iframe {
		margin-bottom: 30px;
		height: 580px;
	}

	/* 個人情報保護方針 */
	ul.privacyTxt_Box li {
		margin-right: 10px;
		text-align: justify;
	}

	/* お問い合わせ */
	.contact_formArea li, .formTable th, .formTable td {
		padding: 20px 0;
	}
	.contact_formBox {
		padding: 15px;
	}
	.contact_formArea .top_day {
		margin-bottom: 10px;
		padding-left: 5px;
	}
	.contact_formArea input, .contact_formArea textarea {
		width: 90%;
	}
	.cp_ipselect.cp_sl01::before {
		right: 5%;
	}
	.formTable th, .formTable td {
		display: block;
	}
	.formTable th {
		border: 0 !important;
		padding-bottom: 0 !important;
	}

	/* 高校受験BASIC */
	.basic_mainP {
		margin: 40px auto;
		width: 95%;
		text-align: justify;
	}



	/* 404 */
	.block404 {
		padding: 100px 0 !important;
		text-align: center;
		line-height: 200%;
		text-align: center !important;
	}
	.block404 p {
		margin-bottom: 45px;
	}


/*
########################################################
	フッター
########################################################
*/
	#fotInfo img {
		width: 150px;
		margin-bottom: 30px;
	}
	.fotLink li:first-child {
		padding-left: 0;
	}

	#copy {
	    text-align: center;
	    margin-bottom: 50px;
	}
}
/** レスポンシブの終了 **/