/*===============================================
 * smart_natural.css  画面の横幅が1023pxまで
 * ===============================================*/
html{
	min-width:320px;
}
#centerColumn{
	width:100%;
}
#rightColumn{
	width:100%;
}
#container{
	width:100% !important;
	margin:0;
	margin-top:10px;
}
#header{
	width:100% !important;
	min-width:320px;
	margin:0;
	padding-top:0px;
}
#header .topImage .topImage2{
	width:100%;
	background-size:cover;
}
.headerIn{
	width:100% !important;
}
#header .logoSet{
	padding:40px 0 10px 0;
	/*margin-left:5px;*/
}
.topPage .logoSet{
	width:100%;
}
.logoSet .logo img{
	width:30px !important;
	height:30px !important;
	padding-left:10px;
}
.logoSet h1 {
	width:calc(100vw - 70px);
	padding:0 !important;
	/*line-height:21px !important;*/
	line-height:25px !important;
	letter-spacing:0px;
}
/* 学校名の画像をタブレット／スマートフォン表示サイズにする_ヘッダー */
.logoSet h1 img{
	width:267px !important;
	height:40px !important;
}
/* 学校名の画像をタブレット／スマートフォン表示サイズにする_フッター */
.logoSet .logo_school_name_img img{
	width:200px !important;
	height:30px !important;
}
.subPage .logoSet{
	float:none;
}
.leftColumn .topList h2{
	background-position:0 !important;
}
#SPColumn,#leftColumn{
	float:none;
	margin-right:0px;
	width:auto !important;
}
#SPColumn .box{
	background: url(../images/natural/background_side.png);
	background-size: contain;
}
#SPColumn .boxSlave{
	border: 1px solid #e6ded5;
}
#SPColumn .box.sp_center_content{
	border: 1px solid #d9c9c0;
	background: url(../images/natural/background_box.png);
	background-size: contain;
}
#nav-content .box.mapArea{
	overflow: hidden;
	width: 99%;
}
#rightColumn .box.mapArea .boxIn h2 img{
	display:none;
}
#rightColumn .box.mapArea h2{
	left:0px;
}
#rightColumn .box.mapArea .boxIn h2{
	background: url(../images/natural/h3_map_1024.png) no-repeat 0 0;
	width:100%;
	height:65px;
}
#SPColumn .box.mapArea .boxIn h2{
	background: url(../images/natural/h3_map_1024.png) repeat-x 0 100%;
	/*background-size:cover;*/
	height:65px;
	position:relative;
	left:0px;
	top:-10px;
}
#SPColumn .box.mapArea .boxIn h2 .map_str{
	background: url(../images/natural/h3_map_string.png) no-repeat -12px 50%;
	/*background-size:cover;*/
	height:65px;
}
#rightColumn .box.mapArea.a11y .boxIn h2{
	background: url(../images/natural/h3_map_1024_a11y.png) no-repeat 0 0;
	width:100%;
	height:65px;
}

#SPColumn .box.mapArea.a11y .boxIn h2{
	background: url(../images/natural/h3_map_1024_a11y.png) repeat-x 0 100%;
	/*background-size:cover;*/
	height:65px;
	position:relative;
	left:0px;
	top:-10px;
}
#SPColumn .box.mapArea.a11y .boxIn h2 .map_str {
	background: url(../images/natural/h3_map_string_a11y.png) no-repeat -12px 50%;
	/*background-size:cover;*/
	height:65px;
}
#SPColumn .box.mapArea{
	padding:0px;
}
.mainMenu h2{
	height:47px;
}
.box.mainMenu{
	background: url(../images/natural/background_side.png) repeat-y 0 0;
}
#mainColumn{
	width:100%;
}
.topList h2{
	height:auto !important;
}
.titleBody{
	background-size: contain;
}
.box .infoList{
	margin-top:130px;
}
.box .infoList .titleBody{
	top:-110px;
	width:100%;
}
/*日記ページの検索指定*/
.box div.cateSearchBox{
	top:-5px;
	left:10px;
	right:0px;
	position:relative;
	letter-spacing:0px;
}
.box div.cateSearchBox select{
	margin-right:3px;
}
#sel_cat{
	display: inline-block;
	width: auto;
}
#sel_limit{
	width:4.5em;
}
#footer{
	width:100% !important;
}
#background1{
	min-width:100% !important;
}
.box.mainMenu h2 img{
	object-fit: cover;
	width: 100%;
}
#background3 .box.topPage:not(#navBox) .wa_boxIn{
	display:none;
}
#leftColumn .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;
}
#nav-content .box{
	border: 1px solid #d9c9c0;
	background: url(../images/natural/background_side.png);
}
.footnavi{
	left:0px;
	/*padding:20px 10px 20px 0px;*/
	width:calc(100% - 20px);
}
/*
.footnavi a.next{
	margin-right: 10px;
}
*/
.list h2 a{
	float:right;
	position:relative;
	top:0px;
}
/***********************************************************************/
#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;
}
