@charset "UTF-8";

* {
	max-width: 100%;
	height: auto;
	float: none;
}

/* =====================
　デバイス表示関係
===================== */

.pc_only {
	display: none !important;
}
.sp_only {
	display: block !important;
}
.sp-tab_only {
	display: block !important;
}
.sp_none {
	display: none !important;
}

/* =====================
　各要素共通
===================== */

img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	height: auto;
}
.m0sp{
	margin:0;
}

.fl,.fr {
	float: none;
	margin-left: auto;
	margin-right: auto;
}

.mt30 {
    margin-top: 1em;
}

.mt35 {
    margin-top: 2em;
}

.mt40 {
    margin-top: 2em;
}

.mt50 {
    margin-top: 2em;
}

.mt70 {
    margin-top: 3em;
}

.mt80 {
    margin-top: 3em;
}


/* =====================
　コンテンツ部分共通
===================== */

/* 横長のテーブルをスマホでスクロールさせる */
.table_scroll {
width: 100%;
overflow-y: hidden;
overflow-x: auto;
-ms-overflow-style: -ms-autohiding-scrollbar;
/* -webkit-overflow-scrolling: touch; */
margin-bottom: 2em;
padding-bottom: 1em;
}
.table_scroll table{
border-collapse: collapse;
}
.table_scroll th,.table_scroll td{
white-space: nowrap;
}

.table_scroll::-webkit-scrollbar {
height: 8px; /* スクロールバーの高さ */
}
.table_scroll::-webkit-scrollbar-thumb {
background: #aaa; /* スクロールバーの色 */
}
.table_scroll::-webkit-scrollbar-track {
background: #ccc; /* スクロールバーの背景色 */
}
/* end of 横長のテーブルをスマホでスクロールさせる */


/* ===== 見出し ===== */

.post_content .page_head02:first-child {
	margin-top: 40px;
}
.page_head06 {
    padding-left: 2em;
    text-indent: -2em;
}
.page_head07 {
    line-height: 1.5;
    text-align: left;
}


/* =====================
　ヘッダー
===================== */

.header_title_box {
	width: 100%;
	flex-flow: column;
	padding: 0 20px;
}

.header_left img:nth-child(2){
	display: none;
}

.site-header {
    margin: 0 auto;
    height: auto;
}

.header_left{
	margin: 0;
}

.header_title{
	margin: 0;
	padding: 15px 20px;
}

.header_right{
	display: none;
}

/* スマホドロワーメニュー */

.sp_menu_button{
	width: 100%;
	margin: 10px auto;
	padding: 0.5em 0;
    font-size: 13px;
    font-size: 1.3rem;
    font-weight: bold;
    background-color: #fff;
	color: #8c1542;
	border-top: 1px solid #8c1542;
	border-bottom: 1px solid #8c1542;
    text-align: center;
	line-height: 1.4;
	text-decoration: none;
	}

.mm-menu {
   background: #fff !important;
}

.mm-list > li.mm-label {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    font-size: 10px;
    text-transform: uppercase;
    text-indent: 0px;
    line-height: 25px;
    padding-right: 5px;
}
 .mm-menu .mm-list > li > a.mm-subopen:after, .mm-menu .mm-list > li > a.mm-subclose:before {
    border-color: rgba(0, 0, 0, 1) !important;
    }

   .mm-slideout {
    background: #FFF;
}


.content{
	width: 100%;
	 min-height: initial;
}
.site-main{
	width: 100%;
	float: none;
}

.post_content, .post_content_1, .post_content_2, .post_content_3 {
	width: 100%;
	padding: 0 20px;
    margin: 2em auto 0 auto;
}

/* =====================
　トップページ
===================== */
.top_slider,.flexslider,.flexslider .slides,.flexslider .slides li,.flexslider .slides img{
	height: 60vh !important;
	min-height: 60vh !important;
}
.flexslider .slides li:nth-child(1){
	background-position: 55% 35%;
}
.flexslider .slides li:nth-child(2){
	background-position: 55% 40%;
}
.flexslider .slides li:nth-child(3){
	background-position: 45% 40%;
}
.flexslider .slides li:nth-child(4){
	background-position: 50% 60%;
}
.flexslider .slides li:nth-child(5){
	background-position: 55% 35%;
}

.top_policy01 {
    position: absolute;
    top: 10%;
    width: 40%;
}
.top_policy02 {
	position: absolute;
	padding: 0 20px;
	bottom: 20px !important;
}
.top_policy02 p{
	font-size: 1.4rem;
}
.top_policy02 a {
    display: none;
}
.top_pagelink {
	position: static;
	margin-top: 20px;
    padding: 0 20px;
}

.top_pagelink > div > div {
    width: 47%;
}
.top_pagelink > div h2 {
    font-size: 1.1rem;
}
.top_pagelink > div span {
    font-size: 1.4rem;
}

.top_news {
    width: 100%;
	margin: 3em auto 0;
	padding: 0 20px;
    text-align: center;
}

.top_news p{
	text-align: left;
}

.top_news img:first-child{
	max-width: 80%;
}

div.flexcroll {
    margin: 2em auto;
    padding: 16px;
    width: 100%;
    height: 300px;
}

.top_access {
    margin: 4em auto 14px;
}

.top_access img:first-child{
    max-width: 40%;
}

.top_access iframe{
    height: 300px;
}

.top_banner {
    width: 100%;
    margin: 4em auto 0;
}

.top_banner_inner {
    flex-flow: column;
}

.top_banner_inner img{
	display: block;
	margin: 0 auto 20px;
    max-width: 80%;
}
.top_banner p {
	margin-top: 2em;
	padding: 0 20px;
    text-align: left;
}
.top_footer {
    display: none;
}
/* =====================
　サイドバー
===================== */
.sidebar{
	width: 90%;
	float: none;
	margin: 2em auto 0;
}
.side_menu{
	margin-bottom: 2em;
}
.side_menu h2{
	margin-bottom: 5px;
	padding: 7px 10px 7px 11px;
	line-height: 20px;
}
.side_banner li img{
	width: 80%;
}

/* =====================
　フッター
===================== */
footer{
	height: auto;
	padding: 1em 20px;

}
.footer_address {
	position: static;
	text-align: center;
}
.footer_copy {
	position: static;
	margin-top: 2em;
	text-align: center;
	font-size: 1.2rem;
}
.totop{
	padding: 0 20px 0 0;
	text-align: right;
}

.totop a{
	display: inline-block;
	padding: 4px 4px 3px;
	line-height: 1;
	background-color: #A0A0A0;
	color: #fff;
}

/* =====================
　各ページ
===================== */

/* access アクセス・お問い合わせ　*/
.access_box{
	margin: 0 0 0;
	flex-flow: column;
}

.access_right{
	margin-top: 20px;
}


/* 　junior 中学生のみなさんへ */
.junior_h1{
	margin-top: 40px;
}

.junior_main{
	color: #8c1542;
	width: 650px;
	margin: 38px auto 38px auto;
}

.junior_main_text{
text-align: justify;
}

.junior p{
	text-align: justify;
}

.junior_container .container{
	margin:0 auto 20px;
}
.junior_container .container {
    width: 90%;
    text-align: center;
}

/* school 学校紹介 */
/* ごあいさつ */
.school_introduction_top{
	margin-top: 30px;
	flex-flow: column;
	text-align: center;
}

.introduction_left{
	margin-right: 0px;
}

.introduction_right{
	flex-flow: column;
}

.introduction_right_2{
	margin: 0 auto;
}

.right_heading{
	margin: 20px 0 10px;
	font-size: 1.8rem;
	font-weight: bold;
}

.introduction_honbun{
	margin-top: 40px;
}


/* ご紹介 */
.guide_h1{
	margin-top: 40px;
	font-size: 2.2rem;
}

.guide_h2{
	font-size: 1.8rem;
}

.guide_rinen{
	margin-top: 60px;
}

.guide_rinen p{
	font-size: 1.5rem;
	font-weight: normal;
}

.guide_houshin p{
	font-size: 1.5rem;
	font-weight: normal;
	margin-left: 0px;
}

.guide_manabi > ul > li{
	padding-left: 1em;
	text-indent: -1em;
}

.guide_manabi_1{
	padding-left: 0em;
	text-indent: -1em;
}

.guide_manabi_1 li:before{
	margin-left: 0em;
}

.miryoku_p{
	margin-left: 0px;
}

.page_head03{
	margin:50px 0 15px;
}

.guide_miryoku_table{
	flex-flow: column;
	margin: 0 auto;
	width: 70%;
}

.miryoku_table{
	text-align: left;
	margin-top: 25px;
}

.miryoku_top_37px{
	margin-top: 40px;
}

.guide_miryoku_dl{
	margin-left: 0px;
}

.guide_miryoku_1,.guide_miryoku_2,.guide_miryoku_3,.guide_miryoku_4{
	margin-top: 2em;
}

/* 沿革 */
.history_top p{
	margin-top: 30px;
}

.history_pic2{
	margin-top: 30px;
}

/* 校歌 */

.song_head p{
	margin-top: 5px;
	text-align: left;
}
.song_main{
	font-size: 1.5rem;
	font-weight: normal;
}

.song_1{
	width:100%;
	margin: 50px auto 0;
}

.song_2{
	width:100%;
	margin: 50px auto 0;
}

.song_3{
	width:100%;
	margin: 50px auto 100px;
}

.song_lyric{
	margin-top: 20px;
}

/* SCHOOL GALLERY　*/
.gallery_box{
		margin-top: 30px;
}

.gallery_box div{
	width:50%;
}

/* club クラブ活動　*/
.club_index_sports {
	font-size: 1.3rem;
}

 .club_index_sports td{
	 	padding:2px;
		line-height: 1.4;
		vertical-align: top;
 }

 .club_index_culture {
 	font-size: 1.3rem;
	vertical-align: top;
 }

 .club_index_culture tr td:nth-child(2){
	width: 33%;
}

 .club_sports{
 	margin-top: 50px;
 }

 .club_sports_box img{
    width: 100%;
}

.club_sports_box {
    width: 100%;
}

 /* carrier 進路 */
 /* 進路状況 */
 .carrier_01 > div{
	 margin: 0 auto;
 }

 .carrier_02_box h3{
 	margin-top: 30px;
 }

 .carrier_03_box h3{
	 margin-top: 30px;
 }

 /* carrier 進路 */
.guidance_inner {
    padding-left: 0;
}
.guidance_circle{
	margin-bottom: 2em;
}

.seminar_link dd{
	margin-bottom: 1em;
	padding-left: 1em;
}

/* alumnus　卒業生 */
.alumnus_table {
    width: 500px;
    margin: 20px 0 0 0;
}

/* 卒業後の調査書の発行について */
.survey_table01{
	border: solid 1px #000;
	border-top: none;
}
.survey_table01 > tbody > tr > th, .survey_table01 > tbody > tr > td{
	display: block;
	border: none;
	border-top: solid 1px #000;
}
.survey_table01 > tbody > tr > th{
	padding: 7px 20px;
}
.survey_table02{
	max-width: 300px;
	overflow: hidden;
}

/* current　在校生 */
.current_blog li{
	margin-bottom: 1em;
}
.current_blog img {
    width: 80%;
}
#alarm dt{
	width: 100%;
	padding-bottom: 0;
	border-bottom: none;
}
#alarm dd{
	width: 100%;
	padding-top: 0;
}

/* 寝屋高の100冊 */
.library_01{
	width: 100%;
	margin-top: 2em;
}