/*===============================================
 * smart_fancy.css  画面の横幅が1023pxまで
 * ===============================================*/
html{
	min-width:320px;
}
#centerColumn{
	width:100%;
	background: url(../images/fancy/background_center_1024.png) repeat-y 0 0;
	background-size:contain;
}
#rightColumn{
	width:100%;
}
#centerColumn .box.topPage {
	background-size: contain;
	padding: 0 0 40px;
	background: url(../images/fancy/background_center_bottom_1024.png) no-repeat 0 100%;
	background-size:100% auto;
}
#centerColumn .box.mapArea{
	/*background-size: contain;*/
	padding: 0 0 40px;
	background: none;
	background-size:100% auto;
}
#header .subPage{
	background: url(../images/fancy/background_header_1024.png) no-repeat 0 100%;
	background-size:100% auto;
	padding:5px 10px 5px 10px;
}
#centerColumn .box.topPage .boxIn {
	background-size: contain;
	padding: 25px 0 0;
	background: url(../images/fancy/background_center_top_1024.png) no-repeat 0 0;
	background-size:contain;
}
#centerColumn .box.mapArea .boxIn {
	/*background-size: contain;*/
	/*padding: 25px 0 0;*/
	background: none;
	background-size:contain;
}
#SPColumn .box.mapArea, #nav-content .box.mapArea, #centerColumn .box.mapArea{
	background: none;
	border: none;
	margin: 0 0 15px;
	/*padding: 79px 0 0 0;*/
	overflow: hidden;
	width: 99%;
}
#container{
	width:100% !important;
	margin:0;
	margin-top:10px;
}
#header{
	width:100% !important;
	margin:0;
	padding-top:0px;
}
#header .topImage {
	position: relative;
	padding: 74px 10px 10px 10px;
}
#header .topImage .topImage2{
	width:100%;
	background-position:center 30px;
	/*
	max-height:270px;
	min-height:100px;
	height:auto;
	*/
	background-size:cover;
}
#header .logoSet {
	padding: 40px 0 10px 0;
}
#header .subPage .logoSet {
	padding: 10px 0 10px 0;
}
#header.topPage .headerIn{
	background: url(../images/fancy/background_header_1024.png) no-repeat 0 100%;
	background-size:100% 100%;
}
.topPage .logoSet{
	width:100%;
}
.logoSet .logo img{
	width:30px !important;
	height:30px !important;
}
.logoSet h1 {
	float:none;
	padding:0 !important;
	/*line-height:25px !important;*/
	width:calc(100vw - 60px);
	letter-spacing:0px;
}
/* 学校名の画像をタブレット／スマートフォン表示サイズにする_ヘッダー */
.logoSet h1 img{
	width:270px !important;
	height:40px !important;
}
/* 学校名の画像をタブレット／スマートフォン表示サイズにする_フッター */
.logoSet .logo_school_name_img img{
	width:200px !important;
	height:30px !important;
}
#nav-content .box{
	background: url(../images/fancy/background_side.png) repeat-y 0 0;
	background-size:100% auto;
}
#nav-content .boxIn{
	background: url(../images/fancy/background_side_bottom.png) no-repeat 0 100%;
	background-size:100% auto;
}
#nav-content .list{
	background: url(../images/fancy/background_side_top.png) no-repeat 0 0;
	padding: 25px 0 25px 0;
	background-size:100% auto;
}
#SPColumn .box,#leftColumn .box,#rightColumn .box{
	background: url(../images/fancy/background_side_1024.png) repeat-y 0 0;
	background-size:100% auto;
}
#SPColumn .boxIn,#leftColumn .boxIn,#rightColumn .boxIn{
	background: url(../images/fancy/background_side_bottom_1024.png) no-repeat 0 100%;
	background-size:100% auto;
}
#SPColumn .list,#leftColumn .list,#rightColumn .list{
	background: url(../images/fancy/background_side_top_1024.png) no-repeat 0 0;
	padding: 25px 0 25px 0;
	background-size:100% auto;
}
.leftColumn .topList h2{
	background-position:0 !important;
}
#SPColumn,#leftColumn{
	float:none;
	margin-right:0px;
	width:auto !important;
}
#mainColumn .boxIn{
	background: url(../images/fancy/background_main_top_1024.png) no-repeat 0 0;
	background-size: contain;
}
#mainColumn .box{
	background: url(../images/fancy/background_main_bottom_1024.png) no-repeat 0 100%;
	background-size: contain;
}
table .fancy{
	border-collapse:collapse !important;
}
#SPColumn .box.mapArea .boxIn p{
	background: url(../images/fancy/background_map.png) repeat 50% 0;
}
#SPColumn .box.mapArea .boxIn .mapAreaSchoolInfo {
	background: url(../images/fancy/background_map.png) repeat 50% 0;
}
#SPColumn .box.mapArea .boxIn h2{
	background: url(../images/fancy/h3_map_1024.png) no-repeat;
	background-size: calc(100% - 34px) 100%;
	height:79px;
	position:relative;
	top:0px;
}
#SPColumn .box.mapArea .boxIn h2 .map_str{
	background: url(../images/fancy/h3_map_string.png), url(../images/fancy/h3_map_string_right.png);
	/*background-size:cover;*/
	background-repeat: no-repeat,no-repeat;
	background-position: 0 50%,100% 50%;
	height:79px;
}
/*
#rightColumn .box.mapArea .boxIn h3 img{
	display:none;
}
#rightColumn .box.mapArea h3{
	left:0px;
}
#rightColumn .box.mapArea .boxIn h3{
	background: url(../images/fancy/h3_map_1024.png) no-repeat 0 0;
	background-size:contain;
	height:79px;
}
*/
#nav-content .box.mainMenu{
	background: url(../images/fancy/background_menu.jpg) repeat-y 0 0;	/*青色画像*/
	background-size: 100%;
	margin-top:50px;
	padding: 40px 0 10px 0;
}
#nav-content .box.mainMenu .boxIn{
	background: url(../images/fancy/background_menu_in.jpg) repeat-y 0 0;	/*薄黄色画像*/
	background-size: 97%;
	margin:0 4px;
	width:100%;
}
#nav-content .box.mainMenu .boxIn h2 img{
	display:none;
}
#nav-content .box.mainMenu .boxIn h2{
	background: url(../images/fancy/h3_menu_375.png) no-repeat 0 0;	/*メニュー画像*/
	background-size:contain;
	width:100%;
	height:90px;
	left:0px;
	margin:0 -4px;
}
#nav-content .box.mainMenu.a11y{
	background: url(../images/fancy/background_menu_a11y.jpg) repeat-y 0 0;	/*青色画像*/
	background-size: 100%;
	margin-top:50px;
	padding: 40px 0 10px 0;
}
#nav-content .box.mainMenu.a11y .boxIn h2 img{
	display:none;
}
#nav-content .box.mainMenu.a11y .boxIn h2{
	background: url(../images/fancy/h3_menu_375_a11y.png) no-repeat 0 0;	/*メニュー画像*/
	background-size:contain;
	width:100%;
	height:90px;
	left:0px;
	margin:0 -4px;
}
.mainMenu h2{
	height:90px;
}
.box.mainMenu{
	background: url(../images/fancy/background_side_1024.png) repeat-y 0 0;
}
#mainColumn{
	width:100%;
	background: url(../images/fancy/background_main_1024.png) repeat-y 0 0;
	background-size:contain;
}
.topList h2{
	height:auto !important;
}
#centerColumn .titleBody{
	background: url(../images/fancy/h2_center_1024.png) no-repeat 50% 100%;
	background-size: contain;
	margin: 0 20px;
}
.titleBody{
	background: url(../images/fancy/h2_center_1024.png) no-repeat 50% 100%;
	background-size: contain;

}
/*日記ページの検索指定*/
.box div.cateSearchBox{
	top:-35px;
	left:15px;
	right:0px;
	position:relative;
	letter-spacing:0px;
}
.box div.cateSearchBox select{
	margin-right:3px;
}
#sel_cat{
	display: inline-block;
	width: auto;
}
#sel_cat::after{
	content:"\A";
	white-space: pre ;
}
#sel_limit{
	width:4.5em;
}
#footer{
	width:100% !important;
}
/*
#footer .footerIn .logoSet p:nth-child(2){
	width:calc(100% - 50px);
}
*/
#background1{
	min-width:100% !important;
}
#background3 .box.topPage:not(#navBox) .wa_boxIn{
	display:none;
}
.box.mainMenu h2 img{
	object-fit: cover;
	width: 100%;
}
#container .box.topPage{
	display:none;
}
#container .box.mainMenu{
	display:none;
}
div.switchDevice{
	float:right;
	top:8px;
	right:8px;
	z-index:100;
	margin-right:32px;
}
div.switchDevice a{
	display: inline-block;
	height:32px;
	width:32px;
}
div.switchDevice a.pc {
	background-size: 32px 32px;
	border-radius:5px 0 0 5px;
	padding-left:5px;
	border-right:0.25px solid white;
}
div.switchDevice a.sp {
	background-size: 32px 32px;
	border-radius: 0 5px 5px 0;
	padding-right:5px;
}
div.switchDevice a.pc.off {
	background:url(../images/baseline_desktop_mac_black_18dp.png) no-repeat center/60% #e5e5e5;
}
div.switchDevice a.pc.on {
	background:url(../images/baseline_desktop_mac_white_18dp.png) no-repeat center/60% #1da1f2;
}
div.switchDevice a.sp.off {
	background:url(../images/baseline_smartphone_black_18dp.png) no-repeat center/60% #e5e5e5;
}
div.switchDevice a.sp.on {
	background:url(../images/baseline_smartphone_white_18dp.png) no-repeat center/60% #1da1f2;
}
.footnavi{
	left:0px;
	/*
	right:15px;
	width:100%;*/
}
/*
.footnavi a.next{
	margin-right: 10px;
}
*/
.list h2 a{
	float:right;
	position:relative;
	top:-5px;
	right:-10px;
}
/***********************************************************************/
#nav-drawer {
	position: relative;
	display: block !important;
	float:right;
	top:15px;
	right:10px;
	z-index:999;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
	display:none;
}
/*アイコンのスペース*/
#nav-open {
	display: inline-block;
	width: 28px;
	height: 28px;
	vertical-align: middle;
	margin-top:-5px;
	background:url("../images/icon_menu_b_64.png") 0 0 no-repeat;
	background-size: contain;
	border: 0px;
	left: 8px;
	position: relative;
}
#nav-open span:before {
	bottom: -8px;
}
#nav-open span:after {
	bottom: -16px;
}
#nav-open-a11y {
	display: inline-block;
	width: 28px;
	height: 28px;
	vertical-align: middle;
	margin-top:-5px;
	background:url("../images/icon_menu_b_64_a11y.png") 0 0 no-repeat;
	background-size: contain;
	border: 0px;
	left: 8px;
	position: relative;
}
#nav-open-a11y span:before {
	bottom: -8px;
}
#nav-open-a11y span:after {
	bottom: -16px;
}
/*閉じる用の薄黒カバー*/
#nav-close {
	display: none;/*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0;/*全体に広がるように*/
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}
/*中身*/
#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;/*最前面に*/
	width: 80%;/*右側に隙間を作る*/
	max-width: 330px;/*最大幅*/
	height: 100%;
	background: #fff;/*背景色*/
	transition: .3s ease-in-out;/*滑らかに表示*/
}
#nav-content.nav-R{
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);/*左に隠しておく*/
}
#nav-content.nav-L{
	-webkit-transform: translateX(calc(100vw + 105%));
	transform: translateX(calc(100vw + 105%));/*右に隠しておく*/
}
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
	display: block;/*カバーを表示*/
	opacity: .5;
}
#nav-input:checked ~ #nav-content.nav-R{
	-webkit-transform: translateX(0%);
	transform: translateX(0%);/*中身を表示*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
#nav-input:checked ~ #nav-content.nav-L{
	-webkit-transform: translateX(calc(100vw - 100%));
	transform: translateX(calc(100vw - 100%));/*中身を表示*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
#nav-content .wa_boxIn{
	float:none;
	text-align:left;
	margin-bottom:5px;
}
#ruby-controls .f_on a img, #ruby-controls .f_off a img{
	margin-left:0px;
	margin-right:0px;
}
#voice-controls{
	margin-left:0px !important;
}
#voice-controls span a img{
	margin-left:0px;
	margin-right:0px;
}
#nav-box{
	position:absolute;
}
#nav-box.position-R{
	right:5px;
}
#nav-box.position-L{
	left:-20px;
}
/* パンくず */
#breadcrumbs{
	width:100%;
	padding:10px 10px 10px 15px;
}
.clImage {
	overflow: auto;
}
#navBox {
	padding-left: 10px;
}
#page_ranking{
	padding-left: 12px;
}