/*
Theme Name: tokubetsu
Description: 山梨大学附属特別支援学校のテーマ
Version: 1.0
Author: Calcinc
Author URI: http://www.calcinc.co.jp
*/

/* ==========================================================================*/
/*【全般設定】*/
/* ==========================================================================*/
html, body, div, span, applet, object, iframe, strong,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption, 
tbody, tfoot, thead, table, label, tr, th, td, * {
	margin:0;
	padding:0;
	border: 0;
}

html {}

body {
	font-size:62.5%;
	color:#303030;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Helvetica,Arial,Verdana,sans-serif;
	text-align:left;
	background-color: #fafafa;
	position: relative;
	overflow-y: scroll;
	line-height:0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, address {
	display: block;
}

p,h1,h2,h3,h4,h5,h6,address {
	line-height:1.6;
	margin:1.4em 0;
}

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;　
}
a img{
	border:none;
}
.hidden{
	display:none;
}
hr{
	margin:40px 0;
	border: 0;
	height: 1px;
	background: #333;
}

/* 横幅 */

body .all-width {
	width: 960px;
	margin-left: auto;
	margin-right: auto;
}

/* 上部背景 */

body:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 205px;
	background-color: #fff;
}

body.home:before {
	height: 270px;
}

/* ==========================================================================*/
/*【リストの設定】*/
/* ==========================================================================*/

ul,ol{
	margin:10px 0;
	padding-left:20px;
}
li{
	margin: 0;
	padding: 0;
}

/* リストスタイル01 記事一覧 */
ul.list01{
	padding: 0;
	font-size: 1.6em;
	list-style:none;
}
ul.list01 li {
	margin: 0;
	padding: 0;
	padding-left: 40px;
	background: url(images/icon01.png) no-repeat 12px center;
	border-bottom: solid 1px #cccccc;
}
ul.list01 li a {
	display: block;
	padding: 20px 0;
}
ul.list01 li p{
	margin: 0;
	margin-bottom: -2px;
	padding: 0;
	line-height: 1;
}
ul.list01 li .date{
	margin: 0 1em 0 0;
	padding: 0;
	color: #303030;
}
ul.list01 li .title{
	margin: 0px;
	padding: 0px;
	font-weight: bold;
	color: #2966CB;
	position: relative;
	display: inline-block;
	max-width: 460px;
	vertical-align: middle;
}

ul.list01 li.new .title:before {
	content: "New";
	display: block;
	position: absolute;top: -3px;right: -50px;
	font-weight: normal;
	font-size: 0.8em;
	color: #ff3f3f;
	padding: 2px 5px 1px;
	border: 1px solid #ff3f3f;
	border-radius: 2px;
}

/* ==========================================================================*/
/*【まとめるタグ】*/
/* ==========================================================================*/

section{
	margin-bottom: 40px;
}

/* ==========================================================================*/
/*【テーブルの設定】*/
/* ==========================================================================*/

table {
	margin:1em 0;
	padding:0;
	width: 100%;
}
th {
	padding:6px;
	font-size:1.4em;
	font-weight:normal;
	white-space:nowrap;
	text-align:left;
	background:#d2e0c1;
	background:#00adb3;
	line-height:1.6;
	border:solid 1px #999999;
	color:#fff;
}
td {
	padding:6px;
	font-size:1.4em;
	line-height:1.6;
	border:solid 1px #999999;
	background:#ffffff;
}
.head{
	background:#e0ebf2;
}

/* ==========================================================================*/
/*【リンクの設定】*/
/* ==========================================================================*/

a {
	color:#2966CB;
	text-decoration:none;
}
a:hover {
	color:#75b1c9;
	text-decoration:none;
}
a:hover img{
	opacity:0.5;
}

/* ==========================================================================*/
/*【見出しの設定】*/
/* ==========================================================================*/

h1.title{
	font-size:2.4em;
	line-height: 1;
	margin: 0 0 20px;
	padding:19px 20px 16px;
	background-color: #ffffff;
	color:#303030;
	font-weight:bold;
	border: 1px solid #F0F0F0;
	border-radius: 8px;
}

#post h1.title{
	font-size:2.4em;
	line-height: 1;
	margin: 0 0 20px;
	padding:19px 10px 16px;
	color:#303030;
	font-weight:bold;
	border:none;
	border-radius:0px;
	border-bottom: 1px solid #F0F0F0;
}

h2.top{
	margin:0;
	padding:0;
	line-height:0;
	border-top: solid 2px #855c98;
	border-bottom:solid 2px #855c98;
}

#post h2{
	overflow: hidden;
	margin:40px 0 20px;
	padding:13px 14px 10px;
	font-size:2em;
	color: #505050;
	background-color: #F0F0F0;
	border-radius: 8px;
}

#post h3 {
	overflow: hidden;
	margin:30px 10px 20px;
	padding:0 0 0 10px;
	font-size:1.8em;
	font-weight:bold;
	line-height:1.2;
	color:#505050;
	border-left: solid 5px #505050;
}

#post h4{
	overflow: hidden;
	margin:20px 0 10px;
	padding:0 0 10px 0;
	font-size:1.6em;
	color:#505050;
	font-weight:bold;
	line-height:1.2;
}

/* ==========================================================================*/
/*【ヘッダーの設定】*/
/* ==========================================================================*/

header{
	margin:0 auto;
	overflow: hidden;
}

header .logo {
	margin:0;
	padding:0;
	border: none;
	line-height:0;
}

div.metaslider div.flexslider {
	margin: 0;
}

/* ==========================================================================*/
/*【ヘッダーサブメニュー】*/
/* ==========================================================================*/

#menu {
	margin-top: 60px;
}

/* ==========================================================================*/
/*【検索の設定】*/
/* ==========================================================================*/


#search{
	float:right;
	margin:12px 0 0 0;
	padding:0;
	text-align:right;
}

#s  {
	width: 170px;
	height:23px;
	color: #333;
	background: #fff;
	font-size: 14px;
	margin:0;
	border:0;
	border:solid 1px #ccc;
} 

#searchsubmit {
	margin:0;
	padding:3px;
	border:solid 1px #ccc;
}  

/* ==========================================================================*/
/*【グローバルメニューの設定】*/
/* ==========================================================================*/


/*--------------------------------
メニュー
---------------------------------*/
nav#navbar{
	margin: 0 0 20px;
	padding: 0;
	color: #ffffff;
	border-top: 5px solid #580f7b;
}

nav#navbar ul{
	margin:0;
	padding:0;
	display: flex;
	justify-content: space-between;
	border: none;
	line-height: 0;
	list-style: none;
}

nav#navbar li {
	width: 100%;
	line-height: 1;
	text-align: center;
}

nav#navbar li a{
	display: block;
	padding: 21px 0;
	border-bottom: 5px solid #e0e0e0;
	transition: border-bottom ease-out .1s;
}

nav#navbar li:hover a,nav#navbar li.act a {
	border-bottom: 5px solid #7276d7;
}

nav#navbar li a:hover img {
	opacity:1;
}


/* ==========================================================================*/
/*【サイドメニューの設定】*/
/* ==========================================================================*/

#sidebar {
	margin:52px 0 40px 0px;
	padding:0;
	width: 240px;
}

.home #sidebar {
	margin:0 0 40px 0px;
}

/* 画像バナーBox */

#sidebar .banner {
	display: block;
	margin: 0 0 20px;
}

#sidebar .banner a {
	display: block;
	margin: 0 0 10px;
}

/* SideBox */

.sidebox {
	margin: 0 0 20px;
	padding: 0;
	background-color: #ffffff;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
	line-height: 1;
}

.sidebox .menulist-title,.sidebox .widgettitle {
	font-size: 1.4em;
	font-weight: bold;
	border-bottom: 1px solid #F0F0F0;
	margin: 0;
	padding: 24px 15px 20px;
	line-height: 0;
}

.sidebox ul {
	margin: 0;
	padding: 15px;
	font-size: 1.2em;
}

.sidebox ul li {
	line-height: 1.2;
	font-size: 1.2em;
	list-style: none;
	padding: 5px 0;
	border-bottom: 1px solid #F0F0F0;
	
}

/* ==========================================================================*/
/*【フッターの設定】*/
/* ==========================================================================*/

footer {
	position: relative;
	margin-top: 40px;
	border-top: 2px solid #580f7b;
	border-bottom: 6px solid #580f7b;
}

footer div.topbutton {
	position: absolute;top: 20px;right: 0;
}

footer div.topbutton a {
	display: block;
	color: #fff;
	line-height: 1;
	font-size: 1.2em;
	text-align: center;
	width: 220px;
	background-color: #855C98;
	padding: 10px 10px 8px;
	font-weight: bold;
	border-radius: 2px;
}

footer div.topbutton a:hover{
	opacity:0.5;
}

footer p {
	color: #580f7b;
	font-weight: bold;
	font-size: 1.4em;
}

footer p span {
	font-size: 1.2em;
}

footer address {
	font-size: 1.2em;
	font-style: normal;
	line-height: 1.2;
}

footer p.copyright{
	margin-top: 110px;
	color: #303030;
	font-size: 1.2em;
	font-weight: normal;
}

/* ==========================================================================*/
/*【バナーの設定】*/
/* ==========================================================================*/

.sisetsu {
	margin-top:20px;
	color:#124763;
	font-size:18px;
	font-weight:bold;
}

.sisetsu_list img{
	margin-top:15px;
}

/* ==========================================================================*/
/*【パンくずリストの設定】*/
/* ==========================================================================*/

.breadcrumbs{
	text-align:left;
	line-height: 1;
	margin: 20px 0;
	padding: 0 10px;
	font-size: 1.2em;
}
/* ==========================================================================*/
/*【containerの設定】*/
/* ==========================================================================*/

#container{
	text-align:left;
	font-size:1.4em;
	overflow:hidden;
}

/* ==========================================================================*/
/*【ページ送りの設定】*/
/* ==========================================================================*/

.nav-below {
	width:700px;
	padding:0;
	font-size:1.2em;
	margin-top:20px;
}

.nav-below a {
	display: inline-block;
	background-color: #ffffff;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
	line-height: 1.6;
	padding: 5px 10px;
}

.nav-below .nav-previous{
	width:350px;
}
.nav-below .nav-next{
	text-align: right;
	width:350px;
}

/* ==========================================================================*/
/*【wp-pagenaviの設定】*/
/* ==========================================================================*/

.wp-pagenavi {
	clear: both;
	margin:20px 0;
	text-align:center;
	font-size:1.2em;
	line-height: 1;
}

.wp-pagenavi span {
	text-decoration: none;
	background-color: #ffffff;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
	padding: 5px 10px;
	margin: 2px;
}
.wp-pagenavi a{
	text-decoration: none;
	background-color: #ffffff;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
	padding: 5px 10px;
	margin: 2px;
	color:#303030;
}
.wp-pagenavi a:hover{
	background:#F0F0F0;
}

.wp-pagenavi span.current {
	background-color: #F0F0F0;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
	color:#303030;
	font-weight: bold;
}

/* ==========================================================================*/
/*【画像配置の設定】*/
/* ==========================================================================*/

.alignleft{
	float:left;
	overflow: hidden;
	margin-right:20px;
	margin-bottom:20px;
}

.alignright{
	float:right;
	overflow: hidden;
	margin-left:20px;
	margin-bottom:20px;
}

.aligncenter{
	margin:0 auto;
	margin-bottom:20px;
}

/* ==========================================================================*/
/*【アーカイブページの設定】*/
/* ==========================================================================*/
article{
	margin-bottom:20px;
}

article.post h2.archive{
	line-height: 1;
	font-size: 2em;
	margin: 0 0 10px;
	padding: 10px;
	border-bottom: 1px solid #F0F0F0;
}

/* ==========================================================================*/
/*【続きを読むの設定】*/
/* ==========================================================================*/

.more a{
	display:block;
	margin:0;
	padding:18px;
	background:#f0f0f0;
	font-size:1.4em;
	border-radius:4px;
	text-align: center;
	color: #303030;
}
.more a:hover{
	background:#dddddd;
	color:#000;
}

/* ==========================================================================*/
/*【検索の設定】*/
/* ==========================================================================*/

section.search{
	margin:0;
	padding:10px 0;
	border-bottom:dotted 1px #ccc;
	overflow:hidden;
}

section.search img{
	width:80px;
	height:80px;
	float:left;
	margin-right:20px;
}
section.search h2{
	background:none;
	border:none;
	color:#303030;
	margin:0;
}
section.search p{
	margin:0;
}

section.search h2 a{
	color:#157fab;
}

section.search h2 a:hover {
	color:#75b1c9;
}

/* ==========================================================================*/
/*【clearfixの設定】*/
/* ==========================================================================*/

/* For modern browsers */
.cf:before,.cf:after{content: " ";display: table;}
.cf:after{clear: both;}
/* For IE 6/7 only */
.cf{*zoom: 1;}

.fl{float:left;}
.fr{float:right;}

/* ==========================================================================*/
/*【サブメニュー】*/
/* ==========================================================================*/
.sab-menu {
	margin: 20px 0;
}

.sab-menu a {
	display: inline-block;
	width: 300px;
}

.sab-menu a.b1 img {
	background-color: #e27e8f;
}

.sab-menu a.b2 img {
	background-color: #a1bd20;
}

.sab-menu a.b3 img {
	background-color: #36aae9;
}

.sab-menu a.b2 {
	margin: 0 30px;
}

/* ==========================================================================*/
/*【コンテンツ】*/
/* ==========================================================================*/

#contents {
	width: 700px;
}

/* --記事エリア-- */

#post span {
	line-height: 1.6;
}

#post,.post {
	padding: 10px 20px;
	background-color: #ffffff;
	border-radius: 8px;
	border: 1px solid #F0F0F0;
}

#post .datetime,.post .datetime {
	font-size: 1.2em;
	line-height: 1;
	text-align: right;
}

#post .datetime a,.post .datetime a {
	display: inline-block;
	padding-left: 10px;
}

#post p,.post p {
	padding: 0 10px;
	font-size: 1.6em;
}


#post td p,.post td p {
	font-size:1em;
	margin: 0 auto;
	padding: 0;
}

#post ul,.post ul,#post ol,.post ol {
	padding: 0 30px;
	font-size: 1.6em;
}

#post table ul,.post table ul,#post table ol,.post table ol {
	padding: 0 0 0 14px;
	font-size: 1.0em;
}

#post li,.post li {
	line-height: 1.6;
	margin: 10px 0;
}

/* ==========================================================================*/
/*【ギャラリークラス設定】*/
/* ==========================================================================*/

img.attachment-thumbnail {
	width: 100px;
	height: 100px;
}

img.attachment-medium {
	max-width: 150px;
	height: auto;
}

img.attachment-large {
	max-width: 250px;
	height: auto;
}

img.attachment-full {
	max-width: 600px;
	height: auto;
}

dd.gallery-caption {
	padding: 6px 0;
	line-height: 1.6;
	font-size: 1.2em;
}

/* ==========================================================================*/
/*【お問い合わせフォームのテーブル設定】*/
/* ==========================================================================*/
table.contact {
	margin: 0 10px;
}

table.contact tr:hover {
	background-color: #fafafa;
}

table.contact th {
	width: 48%;
	padding: 10px 8px;
	background-color: inherit;
	color: #303030;
	border: none;
	border-bottom: #cecece solid 1px;
}

table.contact td {
	padding: 10px 30px;
	color: #303030;
	border: none;
	background-color: inherit;
}

table.contact td input {
	border: 1px solid #cecece;
	border-radius: 8px;
	padding:10px;
}


/* スタイル2 */

.mwform-newstyle table.contact {
	margin: 0;
	color: #303030;
}

.mwform-newstyle table.contact tr {
	display: block;
	margin: 0 ;
	overflow: hidden;
	border-top: #efe6f0 solid 1px;
}

.mwform-newstyle table.contact tr:hover {
	background-color: #f8f8f8;
}

.mwform-newstyle table.contact th {
	display: block;
	float: left;
	width: 40%;
	padding: 20px 0;
	vertical-align: top;
	background-color: inherit;
	color: inherit;
	border: none;
}

.mwform-newstyle table.contact td {
	display: block;
	float: left;
	width: 60%;
	padding: 20px 0;
	color: inherit;
	border: none;
	background-color: inherit;
}

.mwform-newstyle table.contact td input {
	border: 1px solid #cecece;
	border-radius: 3px;
	padding:5px 5px;
}
.mwform-newstyle table.contact td select {
	border: 1px solid #cecece;
	border-radius: 3px;
	padding:5px 5px;
}

.mwform-newstyle table.contact span {
	display: inline-block;
	margin: 0;
	margin-right: 10px;
}

.mwform-newstyle table.contact td span,.mwform-newstyle table.contact td input {
	/*margin-bottom: 10px;*/
}

.mwform-newstyle table.contact td .error {
	margin-left: 5px;
}

.mwform-newstyle table.contact td[align="center"]{
	float: inherit;
	width: inherit;
}

.mwform-newstyle table.contact td[align="center"] input[type="submit"]{
	cursor: pointer;
}
select{
	border: 1px solid #cecece;
	border-radius: 3px;
	padding:5px 5px;
}

/* パスワード保護 */
.post-password-form label {
  background: #fbf1ff;
  padding: 10px;
}

input[type="password"] {
  border: solid 1px #555;
  border-radius: .25rem;
  font-size: 14px;
  padding: 5px 10px;
}

.post-password-form input[type="submit"] {
  background: linear-gradient(#eee, #ccc);
  border-radius: .25rem;
  padding: 7px 15px;
  line-height: 1.2;
}


/* ==========================================================================*/
/*【ボタン設定】*/
/* ==========================================================================*/

.button2 {
	display: block;
	height: auto;
	width: 12em;
	margin: 0px auto;
	padding: 20px 30px 16px;;
	border: 0px none;
	background-color: #505050;
	color: #FFF;
	font-size: 1em;
	text-align: center;
	border-radius: 8px
}

.button2:hover {
	background-color: #f0f0f0;
	color: #303030;
}


/* ==========================================================================*/
/*【お知らせ一覧ページ】*/
/* ==========================================================================*/

#newslist dd{
	border-bottom: 1px solid #ccc;
	font-weight: bold;
	color: #2966CB;
	font-size: 1.6em;
	padding-bottom:15px;
}

#newslist dt{
	margin-top:20px;
	font-size: 1.5em;
}

#newslist .new{
	font-size: 0.7em;
	vertical-align:middle;
}


/* ==========================================================================*/
/*【covid-19対応マニュアル】*/
/* ==========================================================================*/

ol.k-list {
  margin-left: 1em;
}

ol.k-list li {
  list-style-type: none;
  counter-increment: cnt;
}

ol.k-list li::before {
  content: "(" counter(cnt) ")";
  display:inline-block;
  margin-left:-2em;
  width: 2em; 
}

.line-waku {
  display: inline-block;
  border: solid 1px #303030;
  margin: 0 .2rem;
  padding: 0 .2rem;
}