@charset "utf-8";

/*
 * "Fredericka" is lisenced under the SIL Open Font License 1.1
 * http://fonts.googleapis.com
 * https://www.google.com/fonts/attribution
 * http://scripts.sil.org/OFL
 */

/* *****共通設定***** */

body {
    margin: 0;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
}
main {
    background: #ffffff;
    flex: 1;
}

.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.news-list .item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-bottom: 1px solid #CCC;
  padding: 20px 20px;
}
.news-list .item:first-child a{
  border-top: 1px solid #CCC;
}
.news-list .item .date{
  margin: 0;
  min-width: 140px;
  color: #999;
  padding: 0 20px 0 0;
}
.news-list .item .category{
  margin: 0;
  min-width: 140px;
  padding: 0 20px 0 0;
}
.news-list .item .category span{
  color: #FFF;
  text-align: center;
  display: inline-block;
  padding: 5px 20px;
  font-size: 12px;
  line-height: 1;
}
.news-list .item .title{
  margin: 0;
  width: 100%;
}
.news-list .item a:hover .title{
  color: #00F;
}

.must {
	background: #ffa500;
	color: #FFF;
	border-radius: 5px;
	font-size: 10px;
	margin-left: 5px;
	padding: 1px 3px 2px 3px;
}

a {
  color: #696969;
}

a:hover {
  color: #a9a9a9;
}

.bg-primary,
.btn-primary {
  background-color: #00008b !important;
}

.border-primary {
  border-color: #00008b !important;
}

.bg-maincolor {
  background-color: #f0f8ff !important;
}

.btn-warning:hover {
  color: #212529;
  background-color: #ffa500;
  border-color: #ffa500;
}

.bg-yl-color {
  background-color: #fffaf0 !important;
}

.text-shadow {
  text-shadow: 1px 1px 3px #000;
}

.font-patrick {
  font-family: 'Fredericka the Great', cursive;
}

/* ヘッダー(navbar) */
#nav01 {
  border-bottom: 3px solid #00008b;
}

#nav02 .nav-fill {
  width: 100%;
}

#nav02 .nav-item {
  border-left: 1px solid #dee2e6;
}

#nav02 .last-list-md {
  border-right: 1px solid #dee2e6;
}

/* フッター */
#footer-sns img {
  height: 58px;
  width: auto;
  margin-right: 25px;
}

#footer-index ul ul {
  padding-left: 0.75rem;
  border-left: 1px solid #6c757d;
}

/* *****トップページ***** */
.jumbotron {
  background-image: url("../img/top-image.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}

/* *****下層ページ***** */
.breadcrumb-item + .breadcrumb-item:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: small;
  color: #fff;
}

#page .jumbotron {
  background: #f1efff url("../img/subpage-headding.jpg") no-repeat center center;
  background-size: cover;
  border-radius: initial;
}

h1{
  font-size: 140%;
}
/* メインテーブル */
.topic-tbl {
	border-collapse: collapse;
	width: 100%;
	margin: 1.3em auto;
}
.topic-tbl2 {
	border-collapse: collapse;
	width: 100%;
	margin: 0;
}
.topic-tbl th {
	border: 1px solid #227aae;
	background: #E7E8F2;
	padding: 3px 6px;
	text-align: center;
}
.topic-tbl td {
	border: 1px solid #227aae;
	background: #fff;
	padding: 3px 6px;
	text-align: left;
}
.topic-tbl td a {
	text-decoration: underline !important;
}
#icon-mark {
	margin: 1em auto;
	width: 90%;
	border: 1px solid #227aae;
	background: #fff;
	padding: 6px;
	text-align: center;
	border-radius: 6px;
}
#icon-mark img {
	vertical-align: middle;
	margin-left: 1em;
}

.w2e {
	width: 2em;
}
.w3e {
	width: 3em;
}
.w50p {
	width: 50%;
}
.w12e {
	width: 12em;
}
.w14e {
	width: 14em;
}
.update {
	font-size: 90%;
}
.fw-b {
	white-space: nowrap;
	font-weight: bold;
}
/* 留意事項 */
#note {
	width: 100%;
	background: #fff;
	border: 1px solid #227aae;
	padding: 20px;
	margin: 1em auto;
	text-align: left;
	border-radius: 6px;
}
#note p {
	margin: 6px 0;
}
#note ul {
	margin: 0 0 0 1.5em;
	padding: 0;
}

/* 案内表記 */
.bbs-navi {
	text-align: left;
	margin: 10px;
}
/* 個別記事 */
.art-head, .art-body, .res-body {
	width: 100%;
	text-align: left;
	padding: 6px;
	margin: 0 auto;
}
.art-info {
	border-collapse: collapse;
}
.art-info a {
  text-decoration:underline
}
.art-info td {
	background: #fff;
	padding: 1px;
}
.art-head {
	font-size: 170%;
}
.art-body {
	border: 1px solid #8080c0;
	background: #fff;
	margin-bottom: 0.5em;
}
.art-body a {
  text-decoration:underline
}
.res-body {
	border: 1px solid #8080c0;
	background: #fff;
	margin-bottom: 0.5em;
}
.art-head img, img.capt {
	vertical-align: middle;
}
.art-body img, .res-body img, .edit img {
	vertical-align: middle;
	border: none;
}
.comment {
	margin: 10px auto;
	width: 95%;
}
.edit {
	text-align: right;
}

/* 返信フォーム */
.bbsform {
	border-collapse: collapse;
	margin: 1em auto;
	width: 100%;
}
.bbsform th, .bbsform td {
	border: 1px solid #8080c0;
	background: #fff;
	padding: 5px;
	white-space: nowrap;
}
.bbsform th {
	width: 110px;
}
.small {
	font-size: 75%;
	color: green;
}
div.submit-btn {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
div.submit-btn input {
	height: 30px;
}
p.red {
	color: #dd0000;
}

/* 完了メッセージ */
#msg-box {
	margin: 2.5em auto;
	border: 1px solid #227aae;
	background: #fff;
	width: 100%;
	padding: 1em;
	text-align: center;
	border-radius: 6px;
}
input.msg-btn {
	margin: 1.5em;
}

/* --------------------------------------------------

 レスポンシブ

--------------------------------------------------　*/

@media (max-width: 991.98px) {
  /* md タブレット・スマートフォン向け */

  #nav02 .nav-item {
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #dee2e6;
    letter-spacing: 0.25rem;
  }
}

  @media (max-width: 575.98px) {
    /* xs スマートフォン向け */
    
	#ent-msg, #enter-box {
		width: 100%;
		padding: 3px;
	}
	#icon-mark {
		width: 100%;
		padding: 3px;
	}
	#icon-mark img {
		margin-left: 2px;
	}
	/* TOPIC */
	.topic-tbl {
		width: 100% !important;
		margin: 1.3em auto;
	}
	.topic-tbl .thead {
		display: none;
	}
	.topic-tbl tr {
		width: 100%;
	}
	.topic-tbl th, .topic-tbl td {
		display: block;
		width: 100%;
		padding: 0;
		white-space: normal !important;
	}
	.topic-tbl td:first-child {
		background: #E7E8F2;
		color: #000;
		font-weight: bold;
	}
	.topic-tbl td:before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		margin-right: 10px;
	}
	.topic-tbl td a {
		text-decoration: underline !important;
	}
	/* 記事 */
	.art-body, .art-head, .res-body {
		width: 100%;
		padding: 2px;
	}
	/* 返信フォーム */
	.bbsform {
		width: 100%;
	}
	.bbsform th, .bbsform td {
		width: 100% !important;
		display: block;
		white-space: normal;
		padding: 2px;
	}
	.bbsform th {
		background: #ccc;
	}
	textarea {
		width: 90%;
	}
	.comment {
		width: 100%;
		margin: 3px 0;
	}
	#note {
		width: 100%;
		padding: 10px;
	}
	#note ul {
		margin: 0;
		padding: 0;
	}
	#msg-box, #err-box, #comment {
		width: 100%;
		padding: 2px;
	}
	
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}

    /* フッター */
    #footer-sns img {
      height: 29px;
      margin-right: 15px;
    }
}