/*
Theme Name: 学館船橋2017
Description: 東京学館船橋サイト全体の親テーマ。2017年制作。共通で使うパーツなどが入っています。
Author: 有限会社パソヤ
*/

/* ------------------
base
------------------ */
/* reset */
html,body,div,h1,h2,h3,h4,h5,h6,p,blockquote,q,pre,table,caption,colgroup,col,tbody,thead,tfoot,tr,th,td,ul,ol,li,dl,dt,dd,form,fieldset,legend,label,span,a,img,em,ins,del,cite,abbr,sup,sub,dfn,code,var,samp,kbd,object,script,noscript,style,iframe,embed,param,map,area,menu,hr,address,small,strong,i,b,article,aside,figure,footer,header,hgroup,nav,section,figcaption,time,video,audio,mark,ruby,rt,rp,bdo,source,canvas,details,summary,command,datalist,keygen,output,progress,meter{margin:0;padding:0;outline:0;}
address,article,aside,figure,figcaption,footer,header,hgroup,hr,legend,menu,nav,section,summary{display:block;}
h1,h2,h3,h4,h5,h6{font-size:100%;}

/* body */
body{
	line-height:1.7;
	font-size:100%;/*16px*/
	font-family:Meiryo, sans-serif;
	word-break:break-all;
}

@media screen and (orientation:landscape){
body{
	-webkit-text-size-adjust:100%;
}
}

input,textarea,button,select{
	font-family:Meiryo, sans-serif;
	font-size:100%;
}

/* リンク */
a:link{color:#0070ad;text-decoration:underline;}
a:visited{color:#865d86;text-decoration:underline;}
a:hover{color:#1689c7;text-decoration:none;}

/* タグ共通 */
img{border:none;max-width:100%;width:auto;height:auto;}
p{margin:0 0 1.5rem 0;}
hr{border:none;border-top:1px solid #ccc;margin:3rem auto;clear:both;}
table{empty-cells:show;border:none;border-collapse:collapse;max-width:100%;}
select{cursor:pointer;}

/* エフェクト */
.fade:hover{opacity:0.8;transition:0.2s;}

/* アコーディオン */
.trg{
	cursor:pointer;
}

/* ------------------
共通header
------------------ */
/* 4色ライン */
#line01{
	display:none;
}

@media print, screen and (min-width: 1020px){
#line01{
	display:block;
	height:4px;
	width:100%;
	background:url(share/img/line01.gif) repeat-x 0 0;
}
}

/* SPヘッダ */
#sp_header{
	width:100%;
	position:relative;
	top:0;
	left:0;
	background:rgba(255,255,255,0.8);
	line-height:1.0;
}

/*#sp_header.nav_fixed{
	position:fixed;
}*/

#sp_logo01{
	padding:13px 5px;
	max-width:45%;
}

@media print, screen and (min-width: 1020px){
#sp_header{
	display:none;
}
}

/* PCヘッダ */
#pc_header{
	display:none;
}

@media print, screen and (min-width: 1020px){
#pc_header{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	/*overflow:hidden;*/
	align-items: center;
	background-color: #fff;
	z-index: 999;
}
	
#pc_header.nav_fixed{
	position:fixed;
	top:0;
	left:0;
}

#pc_logo01{
	float:left;
	background:rgba(255,255,255,0.8);
	line-height:1.0;
	padding: 10px 0px 10px 16px;
	box-sizing: border-box;
	width: 300px;
}

#pc_header li{
	float:right;
	list-style:none;
	font-size:75%;
	/*margin:22px 8px 0 0;*/
}

#pc_header li.icon-right-dir:before{
	color:#003792;
}
}

/* ------------------
共通nav
------------------ */
/* SPナビボタン */
#sp_nav_bt{
	position:fixed;
	top:0;
	right:0;
	width:50%;
	z-index:98;
}

#sp_nav_bt li{
	list-style:none;
	float:right;
	display:inline-block;
	width:33%;
	max-width:80px;
}

#sp_nav_bt_menu{
	cursor:pointer;
}

/* SPナビ本体 */
#sp_nav_wrap{
	display:none;
	position:fixed;
	top:0;
	z-index:99;
	overflow:auto;
	width:100%;
	height:100%;
	background:#ffc578 url(share/img/bg01.png);
}

#sp_nav{
	margin:0 0.3rem;
	padding:1.3rem 0 1.5rem 0;
}

.sp_nav_cancel{
	color:#fff;
	text-align:center;
	cursor:pointer;
}

#sp_nav_cancel_top{
	background:rgba(255,255,255,0.4);
	font-size:200%;
	width:2em;
	height:1.8em;
	position:absolute;
	top:0;
	right:0;
}

#sp_nav_cancel_top .icon-cancel{
	display:block;
	padding-top:0.1em;
}

#sp_nav_cancel_bottom{
	min-height:8rem;
}

#sp_nav_cancel_bottom div{
	background:rgba(255,255,255,0.4);
	width:60%;
	padding:0.5rem 0;
	margin:0 auto;
}

.sp_nav_block{
	margin-bottom:0.3rem;
}

.sp_nav_block a, .sp_nav_cat{
	display:block;
	background:#fff;
	text-decoration:none;
	padding:0.8rem 1.2rem 0.8rem 0.5rem;
	position:relative;
	border:3px solid #f6f3eb;
}

.sp_nav_block a:before, .sp_nav_cat:before{
	color:#003792;
	position:absolute;
	top:40%;
	right:0.5rem;
}

.sp_nav_block ul{
	margin-top:-3px;
	border-bottom:3px solid #f6f3eb;
}

.sp_nav_block li{
	list-style:none;
}

.sp_nav_block ul a{
	padding:0.8rem 1.2rem 0.8rem 2.5rem;
	border-bottom:none;
	border-top:1px dashed #dadada;
	background:#fbfaf7;
}

@media print, screen and (min-width: 1020px){
#sp_nav_bt, #sp_nav_wrap{
	display:none;
}
/*#pc_header li.icon-right-dir{
	padding-top:5px;
}*/
}

@media print, screen and (min-width: 1300px){
	/*#pc_header li.icon-right-dir{
		padding-top:14px;
	}*/
}

/* PCナビ */
.nav_fixed{
	width:100%;
	position:fixed;
	top:0;
	left:0;
	background:url(share/img/line01.gif) repeat-x 0 0;
	padding-top:4px;
}

#pc_nav_wrap{
	display:none;
}

@media print, screen and (min-width: 1020px){
#pc_nav_wrap{
	display:block;
	z-index:999;
}

/* PCナビ1 */
#pc_nav01{
	background:#fff;
	overflow:hidden;
	font-size:75%;
	padding: 0 1rem;
	flex: 1;
}

a#pc_nav01_home{
	float:left;
	color:#333;
	display:none;
}

.nav_fixed #pc_nav01_home{
	display:inline;
}
	
#pc_nav01 ul{	
	display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-flow: row-reverse;
}


#pc_nav01 li{
	list-style:none;
	float:right;
	margin-right:1rem;
}

#pc_nav01 li.nav_img{
	display: none;
}

#pc_nav01 li img{
	vertical-align: top;
}

#pc_nav01 li:before{
	color:#003792;
}


/* PCナビ2 */
#pc_nav02{
	background:#f6f3eb;
	text-align:center;
	line-height:1.0;
	width: 100%;
}

#pc_nav02_list{
	width:1020px;
	margin:0 auto;
	background:url(share/img/line02.png) no-repeat 100% 50%;
}

#pc_nav02_list:after{
	content:"";
	width:0;
	height:0;
	display:block;
	clear:both;
}

#pc_nav02_list li{
	list-style:none;
	font-size:87.5%;
}

#pc_nav02_list > li{
	cursor:pointer;
	float:left;
	position:relative;
	width:20%;
	background:url(share/img/line02.png) no-repeat 0 50%;
}

#pc_nav02_list > li div{
	transition:0.5s;
}

#pc_nav02_list > li div > a{
	color: #333;
	text-decoration: none;
	display: block;
	padding:1.2rem 0;
}

#pc_nav02_list > li:hover div{
	background:#003792;
}

#pc_nav02_list > li:hover div > a{
	color:#fff;
}

#pc_nav02_list li ul{
	position:absolute;
	top:100%;
	left:0;
	text-align:left;
	width:97%;
	visibility:hidden;
	opacity:0;
	transition:0.25s;
	border:3px solid #6586be;
	border-top:none;
	background:#faf8f3;
}

#pc_nav02_list li:hover ul{
	visibility:visible;
	opacity:1;
	z-index:20;
}

#pc_nav02_list li ul li{
	width: 100%;
	border-bottom:1px dashed #dadada;
}

#pc_nav02_list li ul li:last-child{
	border:none;
}

#pc_nav02_list li ul li a{
	display:block;
	line-height:1.2;
	padding:1rem 0.5rem 1rem 1.6rem;
	text-decoration:none;
	transition:0.2s;
}

#pc_nav02_list li ul li a:before{
	color:#003792;
	margin-left: -1rem;
}

#pc_nav02_list li ul li a:hover{
	background:#fff;
}
}


@media print, screen and (min-width: 1300px){
	
	#pc_nav01 li.nav_img{
		width: 11vw;
		display: block;
	}
}


@media print, screen and (min-width: 1480px){
	
	#pc_nav01 li.nav_img{
		width:auto;
	}
}



/* ------------------
共通footer
------------------ */
/* footer01（フッタリンク ＋ 共通ページトップ） */
#footer01{
	background:#c5e171 url(share/img/bg02.png) no-repeat 50% 0;
	background-size:100%;
	padding:3rem 0;
	position:relative;
}

a#footer_pt{
	text-decoration:none;
	font-size:240%;
	position:absolute;
	top:0.2rem;
	right:0.2rem;
	color:#e9f5c6;
}

.footer01_link{
	font-size:87.5%;
	border-bottom:1px dashed #96a95d;
	padding:0.5rem 1rem;
}

.footer01_link:last-child{
	border-bottom:none;
}

.footer01_link ul{
	font-size:85.71%;
	list-style:none;
}

.footer01_link:before, .footer01_link_cat:before{
	color:#003792;
}

.footer01_link li{
	display:inline-block;
}

.footer01_link li:after{
	content:"　/　";
	color:#666;
}

.footer01_link li:last-child:after{
	display:none;
}

@media print, screen and (min-width: 1020px){
#footer01{
	padding:130px 0 1.5rem 0;
}

a#footer_pt{
	font-size:300%;
	top:1rem;
	right:1rem;
}

#footer01_body{
	width:1020px;
	margin:0 auto;
}

.footer01_link{
	border-bottom:none;
	padding:0;
	margin-bottom:2rem;
	display:inline-block;
	width:24%;
	vertical-align:top;
}

.footer01_link:first-child{
	display:block;
	width:100%;
}

.footer01_link_cat{
	margin-bottom:0.4rem;
}

.footer01_link ul{
	margin-left:1em;
}

.footer01_link li{
	display:block;
	margin-bottom:0.2rem;
}

.footer01_link li:before{
	content:"・ ";
	color:#666;
}

.footer01_link li:after{
	display:none;
}
}

/* footer02（SPフッタボタン） */
#footer02{
	overflow:hidden;
	line-height:0;
}

#footer02 li{
	list-style:none;
	float:left;
	width:33.3%;
}

@media print, screen and (min-width: 1020px){
#footer02{
	display:none;
}
}

/* footer03（学校名など） */
#footer03{
	background:#f6f3eb url(share/img/line01.gif) repeat-x;
	background-size:80%;
	text-align:center;
	padding:2rem 1rem;
}

#f_info_name{
	font-size:112.5%;
	margin-bottom:1rem;
}

#f_info_name span{
	display:block;
	font-size:66.67%;
}

#footer03 p{
	font-size:75%;
}

#footer03 ul{
	display:none;
}

@media print, screen and (min-width: 1020px){
#footer03{
	background:#f6f3eb url(share/img/line01.gif) repeat-x;
	background-size:auto;
	text-align:left;
	padding:0;
	overflow:hidden;
}

#f_info{
	float:left;
	padding:3rem 0 2rem 3rem;
}

#footer03 p{
	font-size:87.5%;
}

#footer03 ul{
	display:block;
	float:right;
	list-style:none;
	padding:3rem 3rem 2rem 0;
}
}

/* ------------------
PCのみサイドに固定バナー
------------------ */
#side_fix{
	display:none;
}

@media print, screen and (min-width: 1020px){
#side_fix{
	display:block;
}

#side_fix ul{
	display:none;
	line-height:0;
	position:fixed;
	top:25%;
	right:0;
	z-index:10;
}

#side_fix li{
	list-style:none;
}
}

/* ------------------
パンくずリスト
------------------ */
#path{
	font-size:75%;
	color:#666;
	padding:70px 0.5rem 0.5rem 0.5rem;
}

@media screen and (min-width: 480px){
#path{
	padding-top:80px;
}
}

@media print, screen and (min-width: 1020px){
#path{
	width:1020px;
	margin:0 auto;
	padding:0.5rem 0;
}
}

/* ------------------
コンテンツ
------------------ */
/* レイアウト */
@media print, screen and (min-width: 1020px){
.column_wrap{
	overflow:hidden;
	width:1020px;
	margin:0 auto;
}
}

/* サイドナビ */
#sub_nav{
	margin-bottom:2rem;
}

#sub_nav dt{
	border-top:4px solid #003792;
	border-bottom:1px solid #dadada;
	text-align:center;
	font-weight:bold;
	color:#003792;
	padding:1rem 0;
	margin-bottom:1px;
}

#sub_nav dd{
	font-size:87.5%;
	border-bottom:1px solid #dadada;
	margin-bottom:1px;
}

#sub_nav a{
	display:block;
	padding:0.8rem 0.5rem;
	background:#eff4fa;
	text-decoration:none;
}

#sub_nav a:before{
	color:#003792;
}

#sub_nav li{
	list-style:none;
	border-top:1px dashed #b4bfcf;
}

#sub_nav li a{
	background:#e0e6f0;
}

#sub_nav li a:before{
	content:"　―　";
	color:#8c9ebb;
}

/* サイドバナー */
.side_banner{
	list-style:none;
	margin-bottom:2rem;
}

/* タブ */
.panels{
	transition:0.2s;
}

.panels .panel{
	display:none;
}

.panels .active{
	display:block;
}

/* ------------------
ブログ
------------------ */
/* ブログレイアウト */
#blog_main{
	margin:0 1rem 4rem 1rem;
	overflow:hidden;
}

#blog_side{
	margin:0 1rem 4rem 1rem;
}

@media print, screen and (min-width: 1020px){
#blog_main{
	width:780px;
	float:left;
	margin:0 0 4rem 0;
}

#blog_side{
	width:210px;
	float:right;
	margin:0 0 4rem 0;
}
}

/* ブログタイトル */
#blog_title{
	margin-bottom:2.5rem;
	background:url(share/img/bg01.png);
	padding:3px 0;
	line-height:1.0;
}

#blog_title a{
	display:block;
	color:#444;
	text-decoration:none;
	font-size:137.5%;
	background:rgba(255,255,255,0.8);
	padding:1.5rem 1.2rem 1.4rem 1.2rem;
	position:relative;
}

#blog_title a:before{
	position:absolute;
	right:0;
	top:30%;
	color:#335fa8;
	font-size:30px;
}

#blog_title a .en{
	font-size:50%;
	font-weight:normal;
	color:rgba(0,0,0,0.4);
	padding:0.3rem 0 0 0;
}

.blog_sub_h{
	font-weight:bold;
	font-size:125%;
	margin-bottom:1.5rem;
}

@media print, screen and (min-width: 1020px){
#blog_title a{
	font-size:187.5%;
	padding:2.5rem 0 2.4rem 0;
}

#blog_title a h1{
	width:1020px;
	margin-left:auto;
	margin-right:auto;
}

#blog_title a:before{
	top:32%;
	right:3rem;
	font-size:40px;
}

#blog_title a .en{
	width:1020px;
	margin-left:auto;
	margin-right:auto;
}
}

/* ブログ一覧表示・個別共通 */
.post_wrap{
	border-bottom:1px dashed #ccc;
	margin-bottom:1rem;
}

.post_header{
	margin-bottom:1rem;
}

.post_date{
	font-size:87.5%;
	float:left;
	margin:0.2rem 0;
}

.post_header .post_category{
	float:right;
	margin-bottom:0.4rem;
}

.post_header .post_category a{
	color:#fff;
	text-decoration:none;
	font-size:75%;
	background:#94928d;
	text-align:center;
	display:inline-block;
	min-width:7em;
	padding:0 1rem;
}

.post_title{
	clear:both;
}

@media print, screen and (min-width: 1020px){
.post_header{
	overflow:hidden;
}

.post_date{
	margin:0.2rem 0.5rem 0 0;
}
	
.post_header .post_category{
	float:left;
	margin:0;
}

.post_title{
	clear:none;
	width:480px;
	float:right;
}
}

/* ブログ個別記事表示 */
.post_title_single{
	font-size:137.5%;
	font-weight:bold;
	float:none!important;
	word-break: break-all;
}

.post_wrap .post_body{
	margin-bottom:3rem;
	overflow:hidden;
}

.post_footer{
	font-size:87.5%;
	text-align:right;
	padding-bottom:1rem;
}

@media print, screen and (min-width: 1020px){
.post_title_single{
	width: 100%;
	font-size:150%;
	word-break: break-all;
	clear:both;
	padding-top:0.5rem;
	
}
}

/* ページ送り（個別ページ） */
.pager{
	text-align:center;
	font-size:87.5%;
}

.pager div{
	display:inline-block;
	width:30%;
	vertical-align:middle;
}

.pager a{
	display:block;
	text-decoration:none;
	border:1px solid #e0e0d2;
	padding:0.8rem 0;
	background:#fbfaf7;
	transition:0.2s;
}

.pager a:hover{
	background:#fff;
}

.pager .single_pager_next a{
	border-radius:10px 0 0 10px;
}

.pager .single_pager_prev a{
	border-radius:0 10px 10px 0;
}

/* ページ送り（WP-PageNavi） */
.wp-pagenavi{
	clear:both;
	text-align:center;
	margin:5em 0 1rem 0;
	font-size:87.5%;
}

.wp-pagenavi a, .wp-pagenavi span{
	color:#666;
	background-color:#fff;
	border:solid 1px #e0e0d2;
	padding:0.5rem 1rem;
	margin:0 2px;
	white-space:nowrap;
	border-radius:3px;
	transition:0.2s;
	text-align:center;
	text-decoration:none;
}

.wp-pagenavi a:hover{
	color:#fff; 
	background-color:#dadada; 
	border-color:#dadada;
}

.wp-pagenavi span.current{
	color:#fff;
	background-color:#66cccc;
	border-color:#66cccc;
	font-weight:bold;
}

.wp-pagenavi span.pages{
	display:block;
	border:none;
	margin-bottom:1rem;
}

/* ブログサイド中身 */
.blog_side{
	margin-bottom:2rem;
	background:#faf8f3 url(share/img/line01.gif) repeat-x 0 0;
	background-size:60%;
}

.blog_side h2{
	background:url(share/img/i01.png) no-repeat 0.7rem 55%;
	padding:1rem 0.5rem 0.5rem 1.8rem;
}

.blog_side li{
	list-style:none;
}

.blog_side_body{
	font-size:87.5%;
	padding:0 1rem 1rem 1rem;
}

/* ブログサイド：最新の投稿 */
.blog_side_latest li{
	padding:0.5rem 0;
	border-bottom:1px dashed #ccc;
}

.blog_side_latest_date{
	font-size:75%;
}

/* ブログサイド：カテゴリー */
.blog_side_category li{
	display:inline-block;
	vertical-align:top;
	width:48%;
	border-bottom:1px dashed #ccc;
}

.blog_side_category li a{
	display:block;
	padding:0.5rem;
	transition:0.2s;
}

.blog_side_category li a:hover{
	background:#fdfdfb;
}

@media print, screen and (min-width: 1020px){
.blog_side_category li{
	display:block;
	width:100%;
}
}

/* ブログサイド：タグ */
.blog_side_tag li{
	display:inline;
}

.blog_side_tag li:not(:last-child):after{
	content:"　/　";
	color:#aaa;
}

@media print, screen and (min-width: 1020px){
.blog_side_tag li{
	display:block;
}

.blog_side_tag li:not(:last-child):after{
	display:none;
}
}

/*eof*/