@charset "utf-8";
/*
theme Name: From70s100
Author: 大隅メディアラボ
Description: 市民企画『100年展』、これまでの100年を振り返り、これからの未来を考える
version： 1.0
*/
/*cssのリセット*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, abbr, address, cite, code, del, dfn, em, img,
ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd,
ol, ul, li, fieldset, form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details,
figcaption, figure, footer, header, hgroup, menu, nav, section,
summary, time, mark, audio, video {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

a {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}

ins {
  text-decoration: none;
  color: #000;
  background-color: #ff9;
}

mark {
  font-weight: bold;
  font-style: italic;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}

/*サイト全体の基準となるCSSを記述*/
html {
  font-size: 16px;
}

body {
  /*フォントの指定*/
  font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', 'Osaka', 'MS Pゴシック', 'MS PGothic', sans-serif;
  /*行間の指定*/
  line-height: 1.4;
  margin: 0;
  padding: 0;
  /*サイトのデフォルトとなる文字の色を指定*/
  color: #333;
}

/*見出しを全て太字で表示 + 文字色を黒に*/
h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  color: #000;
}

img {
  max-width: 100%;
  height: auto;
}

/*コンテンツのサイズ指定*/
.header-inner,
.container,
.footer-inner {
  box-sizing: border-box;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 1.25rem;
}

.container {
  padding: 3rem 1.25rem;
}

.container:after {
  display: block;
  clear: both;
  content: '';
}

.contents {
  float: left;
  width: 70%;
  margin-top: 4rem;
  margin-right: 3%;
}

.contents > h1 {
  font-size: 1.5em;
  margin: 0 0 20px;
}

.sidebar {
  float: left;
  width: 27%;
  margin-top: 3rem;
}

/*---------------------------------------------------------
ヘッダー
---------------------------------------------------------*/
.site-title-wrap {
  text-align: left;
}

/*タイトルを画像と文字列にする場合*/
/*.site-title a {
  font-size: 2rem;
  font-weight: bold;
  color: #330033;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
}

.site-title a img {
  display: inline-block;
  width: auto;
  height: 44px;
}
*/
/*タイトルを文字列にする場合*/
.site-title a {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  text-decoration: none;
  color: #000;
}

/* ヘッダー固定 */
body {
  margin-top: 110px;/*ヘッダーと同じ高さのマージンを追加*/
}

header {
  position: fixed;
  z-index: 9999;
  top: 0px;
  width: 100%;
  height: 170px;
  background-color: rgb(230, 232, 220);
}

.header-cnt {
  position: relative;
  box-sizing: border-box;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 1.25rem;
  background-color: rgb(230, 232, 220);
}

/*
.header-inner {
  position: relative;
}*/

.navbutton {
  display: none;
}

.header-nav-wrap {
  position: absolute;
  top: 50%;
  right: 0;
  margin-left: 230px;
  /*タイトル分の余白をあけておく*/
  transform: translateY(-50%);
}

.header-nav {
  font-size: 0;
}

.header-nav li {
  font-size: 1.2rem;
  display: inline-block;
  margin-right: 1rem;
}

.header-nav li a {
  font-weight: bold;
  display: block;
  text-decoration: none;
  color: #000;
}

.header-nav li a:hover {
  opacity: .6;
}

/*---------------------
    パンくずリスト
-----------------------*/
.clearfix ul {
  position: absolute;
  top: 100%;
  display: flex;
  margin: 30px 10px 0 10px;
  padding: 0;
  list-style-type: none;
}

.clearfix li {
  font-size: .9rem;
}

.clearfix li a {
  padding: 5px 0px;
  color: #415671;
  font-size: .9rem;
  text-decoration: none;
}

.clearfix li a:hover {
  background-color: #EEE;
}

.clearfix li:last-child:after {
  content: none; /* 最後のliの後ろには区切り文字を表示しない */
}

@media (max-width: 550px) {
  .clearfix li:last-child {
    display: none;
  }
}

/*--------------------------------------------------------
スライダー用のデザイン（frontペ－ジ）
----------------------------------------------------------*/
.slides {
  position: relative;
  top: 0;
  left: 50%;
  overflow: hidden;
  width: 100%;
  height: 550px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

#slider-area {
  position: relative;
  margin-bottom: 10px;
}

.slides-inner {
  position: relative;
  top: 0;
  width: 100%;  
}

.slidekiji {
  position: absolute;
  display: block;
  width: 100%;
  height: auto;
  margin-top: 30px;
}

.slidekiji a {
  position: relative;
  display: block;
  overflow: hidden;
  height: 500px;
}

.slidekiji img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background-color: rgb(220, 238, 232);
}

.slidekiji .text {
  position: absolute;
  bottom: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 25px 30px 15px;
  background: linear-gradient(top, rgba(255, 255, 255, 0) 2%, #000 100%);
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 2%, #000 100%);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 2%, #000 100%);
  background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 2%, #000 100%);
  text-shadow: 0 0 3px #000;
  -moz-text-shadow: 0 0 3px #000;
  -webkit-text-shadow: 0 0 3px #000;
}

.slidekiji .slider-date {
  font-size: .9em;
  color: #fff;
}

.slidekiji .slider-cat {
  font-size: .9em;
  color: #fff;
  background-color: transparent;
}

.slidekiji h2 {
  font-size: 1.5em;
  line-height: 1.4;
  margin: 0;
  color: #fff;
}

#pager {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#pager .prev, #pager .next {
  line-height: 40px;
  position: absolute;
  top: 0;
  width: 44px;
  height: 40px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: #333;
}

#pager .prev {
  left: 0;
}

#pager .next {
  right: 0;
}

.slides-nav {
  position: absolute;
  bottom: -35px;
  left: 0;
  width: 100%;
  text-align: center;
}

.slides-nav a {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  border-radius: 50%;
  background: #ccc;
}

.slides-nav a.active {
  cursor: default;
  background: #333;
}

@media (max-width: 768px) {
  .slides {
    height: 450px;
  }
  .slidekiji a {
    height: 400px;
    margin-top: 30px;
  }
  .slidekiji h2 {
    font-size: 1.2em;
  }
  .slidekiji .slider-cat, .slidekiji .slider-date {
    font-size: .8em;
  }
  #pager .prev, #pager .next {
    line-height: 8vw;
    width: 8vw;
    height: 8vw;
  }
  .slides-nav a {
    width: 10px;
    height: 10px;
    border-radius: 100%;
  }
}

/*--------------------------------------------------------------
投稿のパソコン表示用（singleペ－ジ）
---------------------------------------------------------------*/
.article-content {
  margin-bottom: 2rem;
}

.article-content .article-info {
  margin-bottom: .5rem;
}

.article-cat {
  display: inline-block;
  font-size: .75rem;
}

.article-content .article-cat a {
  font-size: .75rem;
  margin-right: .1rem;
  padding: .1rem .5rem;
  text-decoration: none;
  color: #fff;
  background-color: #03162f;
}

.article-cat a:hover {
  opacity: .6;
}

.article-tag {
  display: inline-block;
}

.article-tag ul {
  font-size: 0;
  margin-bottom: 0;
}

.article-tag ul li {
  font-size: .75rem;
  display: inline-block;
  margin-right: .5rem;
  vertical-align: middle;
}

.article-tag ul li:last-child {
  margin-right: 0;
}

.article-tag ul li a {
  padding: .1rem .5rem;
  text-decoration: none;
  color: #fff;
  background-color: #305B95;
}

.article-tag ul li a:hover {
  opacity: .6;
}

.article-content .article-info .article-date,
.article-content .article-info .article-author {
  font-size: .8rem;
  display: inline-block;
  margin-right: .5rem;
  color: #888;
}

.article-content .article-info .article-author i {
  margin-right: .3rem;
}

.article-content p,
.article-content b,
.article-content table,
.article-content ul,
.article-content ol {
  font-size: 1rem;
  line-height: 1.7;
  letter-spacing: 1px;
}

.article-content p,
.article-content img,
.article-content table,
.article-content ul,
.article-content ol {
  margin-bottom: 2rem;
}

.article-content h1 {
  font-size: 1.9rem;
  margin: 2rem 0 2rem;
  letter-spacing: 1px;
}

.article-content h2 {
  font-size: 1.7rem;
  margin: 3rem 0 2rem;
  padding: .4rem 0;
  letter-spacing: 1px;
  border-bottom: solid 5px #03162f;
}

.article-content h3 {
  font-size: 1.5rem;
  margin: 2.5rem 0 1.8rem;
  padding: 0 1rem;
  letter-spacing: 1px;
  border-left: solid 7px #415671;
  background: transparent;
}

.article-content h4 {
  font-size: 1.3rem;
  margin: 2rem 0 1rem;
  letter-spacing: 1px;
}

.article-content h5 {
  font-size: 1.1rem;
  margin: 0 0 .3rem;
  letter-spacing: 1px;
}

.article-content .article-img {
  margin-bottom: 2rem;
}

.article-content .article-img img {
  display: block;
  margin: 0 auto;
}

.article-content ul {
  margin-left: 2rem;
  list-style: disc;
}

.article-content ol {
  margin-left: 2rem;
  list-style: decimal;
}

.article-content table {
  border-collapse: collapse;
}

.article-content th,
.article-content td {
  padding: .6rem;
  vertical-align: middle;
  border: 1px solid #ddd;
}

.article-content figure {
  max-width: 100%;
}

/*---------------------------------------------------
記事一覧（archiveペ－ジ）のパソコン表示用のデザイン
----------------------------------------------------*/

.itiran-list {
margin-bottom: 1rem;
padding: 1rem;
border: 1px solid #ddd;
}

.itiran-list:hover {
background-color: #eee;
}

.itiran-list a {
display: block;
text-decoration: none;
color: #333;
}

.itiran-list a:after {
display: block;
clear: both;
content: '';
}

.itiran-list .img-wrap {
position: relative;
float: left;
line-height: 1;
background-color: blanchedalmond;
}

.itiran-list .img-wrap img {
width: 240px;
height: 160px;
object-fit: contain;
}

.itiran-cat ul {
  display: inline-block;
}

.itiran-cat ul li {
  display: inline-block;
  padding: .3rem .5rem;
  color: #fff;
  background-color: #03162f;
}
.itiran-list .img-wrap .itiran-cat {
font-size: .75rem;
position: absolute;
top: 0;
left: 0;
}

.itiran-list .itiran-text {
margin-left: 260px;
}

.itiran-list .itiran-text h2 {
font-size: 1.15rem;
margin-bottom: .5rem;
}
.itiran-tag ul{
  display: inline-block;
}
.itiran-tag ul li {
  display: inline-block;
  font-size: .75rem;
  background-color: #305B95;
  color: #fff;
  padding: .1rem .5rem;
}

.itiran-list .itiran-text .itiran-date,
.itiran-list .itiran-text .itiran-author {
font-size: .9rem;
font-weight: bold;
display: inline-block;
margin-bottom: .5rem;
color: #888;
}

.itiran-list .itiran-text .itiran-date {
margin-right: .5rem;
}

.itiran-list .itiran-text .itiran-author i {
margin-right: .3rem;
}

.itiran-list .itiran-text p {
font-size: 1rem;
line-height: 1.7;
}

/*---------------------------------------------------------
サイドバ－
---------------------------------------------------------*/
.widget {
  margin-top: 1rem;
  margin-bottom: 2rem;
}

.widget-title {
  font-size: 1.1rem;
  box-sizing: border-box;
  margin: 0 0 1.2rem;
  padding: .5rem;
  color: #000;
  border-bottom: 4px solid #03162f;
}

/*---------------------------------------------------------
ウィジェットサイドバ－
---------------------------------------------------------*/
/*デフォルトウィジェット*/
.widget_recent_entries ul,
.widget_meta ul,
.widget_recent_comments ul,
.widget_pages ul,
.widget_meta ul,
.widget_categories ul,
.widget_archive ul,
.widget_nav_menu ul,
.calendar_wrap,
.tagcloud {
  list-style: none;
}

.widget_recent_entries li,
.widget_meta li,
.widget_recent_comments li,
.widget_pages li,
.widget_meta li,
.widget_archive li,
.widget_nav_menu li {
  position: relative;
  margin-bottom: .5rem;
}

.widget_recent_entries a,
.widget_meta a,
.widget_recent_comments a,
.widget_pages a,
.widget_meta a,
.widget_categories a,
.widget_archive a,
.widget_nav_menu a {
  text-decoration: none;
  color: #333;
}

.sidebar-wrapper a:hover {
  opacity: .6;
}

/*カテゴリウィジェット*/
.widget_categories li {
  display: block;
  margin-bottom: .5rem;
}

.widget_categories li a {
  font-size: .95rem;
  position: relative;
  display: block;
  padding: .9rem .6rem .9rem 2rem;
  color: #fff;
  background-color: #353a39;
}

.widget_categories li a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: .6rem;
  content: '\f152';
  transform: translateY(-50%);
  color: #fff;
}

.widget_categories .children {
  margin-bottom: .5rem;
  padding: 0;
  padding-left: 1rem;
  background-color: #415671;
}

.widget_categories .children li {
  margin-bottom: 0;
}

.widget_categories .children li a {
  font-size: .9rem;
  background-color: transparent;
}

.widget_categories .children li a::before {
  position: absolute;
  top: 50%;
  left: .6rem;
  content: '<<';
  transform: translateY(-50%);
  color: #fff;
}

/*カテゴリウィジェットとアーカイブウィジェットのドロップダウン表示*/
.widget_categories .screen-reader-text {
  display: none;
}

.widget_archive .screen-reader-text {
  position: relative;
  display: block;
  height: 0;
  text-indent: -9999999px;
}

.widget_categories form {
  position: relative;
}

.widget_categories form::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  content: '▼';
  transform: translateY(-50%);
  pointer-events: none;
}

.widget_categories .postform,
.widget_archive select {
  font-size: .95rem;
  width: 100%;
  padding: 4px 10px;
  cursor: pointer;
  border: 1px solid #e0e3ef;
  border-radius: 0;
  background-color: #f4f5f9;
}

.widget_archive label::after {
  position: absolute;
  top: .5rem;
  right: 1rem;
  content: '▼';
  text-indent: 0;
  pointer-events: none;
}

/*タグウィジェット*/
.tagcloud a {
  font-size: .9rem !important;
	display: inline-block;
	margin: 0 .1em .6em 0;
	padding: .6em;
	line-height: 1;
	color: #fff;
	text-decoration: none;
	background-color: #696983;
	border-radius: 2em 0 0 2em;
}
.tagcloud a:before {
	content: '●';
	margin-right: .5em;
	color: #fff;
}


/*メニューウィジェット*/
.widget_nav_menu li a {
  font-size: 1rem;
  font-weight: bold;
  position: relative;
  padding-left: 1.3rem;
  color: #333;
}

.widget_nav_menu li a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 0;
  content: '\f105';
  transform: translateY(-50%);
  color: #03162f;
}

/*最近の投稿*/
.widget_recent_entries li {
  padding-bottom: .5rem;
  border-bottom: 1px solid #ddd;
}

.widget_recent_entries li a:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: bold;
  font-weight: 900;
  position: absolute;
  left: 5px;
  content: '\f303';
  color: #000;
}

.widget_recent_entries li a {
  display: block;
  margin-bottom: .3rem;
  padding-left: 1.6rem;
}

.widget_recent_entries .post-date {
  font-size: .8rem;
  display: block;
}

/*カレンダーウィジェット*/
.calendar_wrap {
  padding: 1rem;
  border: 1px solid #ddd;
}

.calendar_wrap table {
  width: 100%;
}

.calendar_wrap tbody {
  text-align: center;
}

.calendar_wrap caption {
  font-weight: bold;
  margin-bottom: 1rem;
}

.calendar_wrap td {
  padding: .3rem 0;
}

.calendar_wrap tfoot td {
  padding-top: .7rem;
}

.calendar_wrap tfoot td:last-child {
  text-align: right;
}

/*---------------------------------------------------------
フッタ－
---------------------------------------------------------*/
.footer {
  background-color: #23282d;
}

.footer-nav,
.copyright {
  text-align: center;
}

.footer-nav {
  font-size: 0;
  margin-bottom: 3rem;
}

.footer-nav li {
  font-size: 1rem;
  display: inline-block;
  margin-right: 1.5rem;
}

.footer-nav li a {
  text-decoration: none;
  color: #fff;
}

.footer-nav li a:hover {
  opacity: .6;
}

.footbar {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 1.25rem;
  color: #fff;
  text-align: center;
}

.copyright p {
  font-size: 1rem;
  color: #fff;
}

/*---------------------------------------------------------
最近の記事（frontペ－ジ）
---------------------------------------------------------*/
/*固定ページ挿入部分*/
.fronttop {
  width: 1200px;
  padding: auto;
  margin: auto;
}
.fronttop .front-font {
  font-weight: bold;
  margin-bottom: 50px;
}

@media only screen and (max-width: 768px) {/*スマホ用*/
  .fronttop {
   width: 768px;
   max-width: 100%; /* レスポンシブ対応 */
}
}
@media (min-width: 768px) and (max-width: 1023px) {  /* タブレット向けのスタイル */
   .fronttop {
     width: 768px;
   max-width: 100%; /* レスポンシブ対応 */
    }
  }

/*日付とタイトルと記事の抜粋*/
.frontpage {
  padding: 0px;
  margin: 0px;
  text-align: left; /*記事エリアを左揃え*/
}
.frontpage h2 {
  position: relative;
  color: black;
  background: #d0ecff;
  line-height: 1.4;
  padding: 0.25em 0.5em;
  margin: 2em 0 0.5em;
  border-radius: 0 5px 5px 5px;
}
.frontpage h2:after {
  /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 Free",'Quicksand','Avenir','Arial',sans-serif;
  font-weight: 900;
  content: '\f00c Check';
  background: #2196F3;
  color: #fff;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 3px 7px 1px;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em;
}
  .news_list {
  margin: 20px 0;
  border-top: 1px dashed #8dcdf8;
  }
  .news_list li {
  padding: 15px 5px;
  border-bottom: 1px dashed #8dcdf8;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  }
  .news_list li a {
    text-decoration: none;
    }
  .news_date {
  font-size: 0.9em;
  margin-right: 10px;
  }
  .news_category {
  display: inline-block;
  color: #fff;
  width: 80px;
  font-size: 0.9em;
  text-align: center;
  margin-right: 10px;
  padding: 2px 10px;
  background-color: #2196F3;
  }
  .news_text h3 {
  font-size: 0.9em;  
  color: #434141;
  display: inline-block;
  }
  
  @media screen and (max-width: 550px) {
  .news_text h3 {
  display: block;
  margin-top: 10px;
  text-overflow: ellipsis;
  overflow: hidden;
  }
  }

@media only screen and (max-width: 550px) {/*スマホ用*/
  .frontpage-list a {
    width: 120px;
    height: 80px;
  }
  .frontpage-list-text { /*記事タイトル*/
    font-size: 10px;
  }
  }

/*タイル状に並べる*/
.frontkiji {
  padding: 0px;
  margin: 0px;
  text-align: center; /*記事エリアを中央揃え*/
}
.frontkiji h2 {
  font-size: 1.2rem;
  margin-top: .5rem;
  margin-bottom: .5rem;
  text-align: left;
  background: #c2e4f4;/*背景色*/
  border-left: solid 5px #3e86de;/*左線（実線 太さ 色）*/
  border-width: 20px;
}
.frontkiji a {
  transition: all ease-in-out .3s;
  display: block;
  text-decoration: none;
  color: #333;
  background-color: #fff;
  border: 1px solid #F1F2F4;
  box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
  width: 240px;/*各自で調節してもOK*/
  height: 160px;/*各自で調節してもOK*/
  padding: 10px;
  border-radius: 5px;
  overflow: hidden;
}
.frontkiji a:hover {
  cursor: pointer;
  box-shadow: 0 10px 20px -5px rgba(0,0,0,0.2);
  -moz-transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.frontkiji ul {
  padding: 0px;
  margin: 0px;
  display: inline-block;/*横並びでブロック配置*/
}
.frontkiji li {
  float: left;
  position: relative;
  list-style: none;
  margin-bottom: 20px;
}
.frontkiji li:last-child { /*記事の間隔*/
  margin-right: 10px;
  margin-bottom: 0px;
  margin-top: 0px;
}
.frontkiji-text {
  width: 100%;
  height: 125px;
  font-size: .9rem;
  line-height: 1.4em;
  text-align: left;
  margin-top: 0.1em;
  margin-left: 0%;
  padding-bottom: 2rem;
  color: #494949;  
}
.frontkiji-img img {
  width: 100%;/*画像幅*/
  height: 160px;/*画像の高さ*/
  object-fit: contain;
  background-color: blanchedalmond;
}
.frontkiji-text h3 {
  font-size: .9rem;
  margin-bottom: .3rem;
}
.frontkiji-author,
.frontkiji-date {
  display: block;
  margin-bottom: .3rem;
  margin-right: 1rem;
  color: #333;
}

@media only screen and (max-width: 550px) {/*スマホ用*/
.frontkiji a {
  width: 140px;
  height: 110px;
}
.frontkiji li img {  /*アイキャッチ画像*/
  width: 100%;/*画像幅*/
  height: 110px;/*画像の高さ*/
  object-fit: cover;
}
.frontkiji-text { /*記事タイトル*/
  font-size: 11px;
}
}



/*-----------------------------------------------
ページネーション用のデザイン
-------------------------------------------------*/
.pagination {
  margin: 2rem 0;
  text-align: center;
}

.pagination ul {
  font-size: 0;
}

.pagination ul li {
  font-size: 1rem;
  display: inline-block;
  margin-right: .5rem;
}

.pagination ul li:last-child {
  border: 0;
}

.pagination ul li a,
.pagination .current {
  display: block;
  padding: .5rem .8rem;
  border: 1px solid #ccc;
}

.pagination ul li .prev,
.pagination ul li .next {
  border: 0;
}

.pagination ul li a {
  text-decoration: none;
  color: #333;
}

.pagination ul li a:hover {
  opacity: .6;
}

.pagination .current {
  color: #fff;
  background-color: #03162f;
}

/*---------------------------------------------------------
タブレット対応
---------------------------------------------------------*/
@media(max-width: 800px) {
  .contents,
  .sidebar {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .contents {
    margin-bottom: 1.5rem;
  }

  /*----ヘッダー---------*/
  .site-title a img {
    height: 40px;
  }

  .navbutton {
    font-size: 1.5rem;
    position: absolute;
    z-index: 999;
    top: 50%;
    right: 1.25rem;
    display: block;
    cursor: pointer;
    transform: translateY(-50%);
    border: 0;
    background-color: transparent;
  }

  .navbutton:focus {
    outline: 0;
  }

  .header-nav-wrap {
    z-index: 999;
    top: 86px;
    /*ヘッダーの高さと合わせる*/
    right: auto;
    left: 0;
    display: none;
    width: 100%;
    margin-left: 0;
    transform: none;
    background-color: #03162f;
  }

  .header-nav li {
    display: block;
    margin-right: 0;
  }

  .header-nav li a {
    position: relative;
    padding: .8rem 1.25rem;
    color: #fff;
    border-bottom: 1px solid #888;
  }

  .header-nav li a:after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 1.25rem;
    display: block;
    content: '\f105';
    transform: translateY(-50%);
  }

  /*----フッタ－ー---------*/
  .footer-nav {
    margin-bottom: 1.5rem;
  }

  .footer-nav ul {
    text-align: left;
    color: #fff;
  }

  .footer-nav li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 1rem;
  }

  .footer-nav li:nth-of-type(2n) {
    margin-right: 0;
  }
}

/*---------------------------------------------------------
スマホ対応
---------------------------------------------------------*/
@media(max-width: 550px) {
  html {
    font-size: 15px;
  }

  .header-inner,
  .container,
  .footer-inner {
    padding: .8rem;
  }

  .contents {
    margin-bottom: 1rem;
  }

  /*-----ヘッダー---------*/
  .site-title a {
    font-size: 1.5rem;
  }

  .site-title a img {
    height: 32px;
  }

  .navbutton {
    right: .8rem;
  }

  .header-nav-wrap {
    top: 62px;
  }

  .header-nav li a {
    padding: .8rem;
  }

  .header-nav li a:after {
    right: .8rem;
  }
  /*記事一覧のスマホ表示用デザイン*/
  .itiran-list {
    padding: .5rem;
  }

  .itiran-list .img-wrap img {
    width: 132px;
    height: 88px;
  }

  .itiran-list .img-wrap .itiran-cat {
    font-size: .6rem;
  }

  .itiran-list .itiran-text {
    margin-left: 160px;
    padding: 0;
  }

  .itiran-list .itiran-text h2 {
    font-size: 1rem;
    margin-bottom: 0;
  }

  .itiran-list .itiran-text p {
    display: none;
  }

  .itiran-list .itiran-text .itiran-date,
  .itiran-list .itiran-text .itiran-author {
    font-size: .625rem;
    margin-bottom: 0;
  }

  .itiran-list .itiran-text .itiran-date {
    margin-right: .2rem;
  }

  /*投稿一覧のスマホ表示用デザイン*/
  .itiran-content h1 {
    font-size: 1.6rem;
  }

  .itiran-content h2 {
    font-size: 1.4rem;
  }

  .itiran-content h3 {
    font-size: 1.3rem;
  }

  .itiran-content h4 {
    font-size: 1.2rem;
  }
}
/*---------------------
    Youtubeの動画を速攻レスポンシブ対応/
-----------------------*/
.youtube {
position: relative;
width: 100%;
padding-top: 56.25%;
}
.youtube iframe{
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
}

/*-----------------------------
ギャラリー
------------------------------*/
.gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
}

.gallery br {display: none;} /** 自動で挿入される clearfix の余白解除 **/

.gallery-item { /** 画像共通のスタイル **/
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: center;
}

.gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 10px !important;
}

.gallery-caption { /** キャプション **/
    color: #222;
    font-size: 12px;
    margin: 0 0 10px;
    text-align: center;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
    margin-right: 0;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 23%;
    margin: 0 1%;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 18%;
    margin: 0 1%;
}

@media screen and (max-width: 550px) {
/* 640px以下用の記述 */
.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
width: 48%;
margin: 0 1%;
}
.gallery-columns-5 .gallery-item {
width: 31.33333%;
margin: 0 1%;
 }
}

/*----------------------------------
関連記事一覧
------------------------------------*/

.relatedkiji {
  margin: 40px 0 0;
  padding: 10px;
}

.relatedkiji h4 {
  font-size: 1.25em;
  padding: 3px 5px;
  border-bottom: solid 1px #999;
}

.relatedkiji ul {
  font-size: 0;
  margin: 10px 0;
  padding: 0;
}

.relatedkiji li {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 25%;
  padding: 10px 5px;
  list-style: none;
  vertical-align: top;
}

.relatedkiji li a {
  display: block;
  text-decoration: none;
  color: #000;
  border: 1px solid #000;
}

.relatedkiji li a:hover {
  color: #000070;
  background-color: #eee;
}

.relatedkiji img {
  height: 120px;
  object-fit: cover;
}

.relatedkiji .text {
  font-size: 16px;
  font-weight: bold;
}

@media (max-width: 550px) {
  .relatedkiji ul {
    margin: 0;
  }
  .relatedkiji li {
    display: block;
    width: 100%;
  }
  .relatedkiji li a:after {
    display: block;
    clear: both;
    content: '';
  }
  .relatedkiji img {
    float: left;
    width: 90px;
    height: 70px;
  }
  .relatedkiji .text {
    width: auto;
    margin-top: 5px;
    margin-left: 100px;
  }
}
/*カスタムフィ－ルド（昭和ログ、インフォメーション）*/
.customfield dl {
  display: flex;
  flex-wrap: wrap;
  font-weight: bold;
  text-align: center;
}
.customfield dl dt {
  width: 20%;
  padding: 3px;
  background-color: #d1d2cf;
  margin: 3px 0 3px 10px;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.customfield dl dd {
  width: 75%;
  padding: 10px;
  background-color: #e5e3e3;
  margin: 3px 0 3px 0;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
iframe {
  width: 100%;
  aspect-ratio: 16/9; /*アスペクト比（縦横比）を指定(レスポンシブ対応)*/
}
/*スマホ対応電話番号*/
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}
/*single-osumitownif.phpの電話のcss*/
.btn-tel{
  position: relative;
  display: block;
  border-radius: 50px;
  color: white;
  font-weight: bold;
  text-align: center;
  background: #5495f0;
  padding: 5px 0;
  margin: auto;
  max-width: 200px;
}
.btn-tel::after{
  content: "";  
  background-size: contain;
  width: 24px;
  height: 24px;
  position: absolute;
  top: calc(50% - 12px);
  left: 15px;
}

/*======================================
新着記事に一定期間だけ「NEW!」を表示する
========================================*/
/* 新着記事のNEW!---------------------------------------------- */
.new-txt{
  color: #ff0000;/*文字色*/
  margin-right:5px;/*NEW！右側の余白*/
  }
/* 点滅 */
.new-txt {
	animation: blinking 1s ease-in-out infinite alternate;
} 
@keyframes blinking {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

/*-------------------
絞り込み検索フォーム
---------------------*/
.form{
  width: 100%;
  margin:10px auto;
  border: 1px solid #858582;
  padding: 10px;
  box-sizing: border-box;
  background-color: #e6ecbc;
  text-align: center;
}
.form label{
  display: flex;
  justify-content: center;
}
.form input{
  display: flex;
  justify-content: center;
}
.dai{
  display: flex;
  justify-content: center;
  font-size: 1.2rem;
  font-weight: bold;
  padding-bottom: 10px;
  margin-top: 8px;
}
.dai2{
  display: inline-block;  
  font-size: 1.2rem;
  padding-bottom: 8px;
  margin-top: 15px;
}
.puldown{
  width: 220px;
  display: inline-block;
  justify-content: center;
  font-size: 1rem;
  font-weight: bold;
  padding: 6px;
  margin: 6px;
  background-color: #69a4db;
  border-radius: 10px;
}
.submit{
  display: flex;
  justify-content: center;
  font-size: 1.2rem;
  padding: 6px;
  margin: 6px auto;
}
.form select{
  font-size: 1rem;
}
.search-shiryou{  /*search-shiryouの検索結果*/
  display: flex;
  justify-content: center;
  font-size: 1.1rem;
  padding: 5px;
}
/*チェックボタン*/
.checkbox {
  display: inline-block;
  padding: 8px 10px;
}


/*=====================
searchのページネーション
=======================*/
.pagination{
  margin:25px 0 40px 0;
}
.nav-links{
  display:flex;
  justify-content: center;
}
.pagination .page-numbers{
  display:inline-block;
  margin-right:20px;
  padding:10px 15px;
  color:#333;
  border-radius:3px;
  box-shadow:0 3px 3px #999;
  background:#fff;
}
.pagination .current{
  padding:10px 15px;
  background:#69a4db;
  color:#fff;
}
.pagination .prev,
.pagination .next{
  background:transparent;
  box-shadow:none;
  color:#69a4db;
}
.pagination .dots{
  background:transparent;
  box-shadow:none;
}

/*==================
ライブラリページ
====================*/
/*タイル状に並べる*/
.library {
  padding: 0px;
  margin: 0px;
  text-align: center; /*記事エリアを中央揃え*/
}
.library h2 {
  font-size: 1.2rem;
  margin-top: .5rem;
  margin-bottom: .5rem;
  text-align: left;
  background: #c2e4f4;/*背景色*/
  border-left: solid 5px #3e86de;/*左線（実線 太さ 色）*/
  border-width: 20px;
}
.library a {
  transition: all ease-in-out .3s;
  display: block;
  text-decoration: none;
  color: #333;
  background-color: #fff;
  border: 1px solid #F1F2F4;
  box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
  width: 240px;/*各自で調節してもOK*/
  height: 160px;/*各自で調節してもOK*/
  padding: 10px;
  border-radius: 5px;
  overflow: hidden;
}
.library a:hover {
  cursor: pointer;
  box-shadow: 0 10px 20px -5px rgba(0,0,0,0.2);
  -moz-transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
.library ul {
  padding: 0px;
  margin: 0px;
  display: inline-block;/*横並びでブロック配置*/
}
.library li {
  float: left;
  position: relative;
  list-style: none;
  margin-bottom: 20px;
}
.library li:last-child { /*記事の間隔*/
  margin-right: 10px;
  margin-bottom: 0px;
  margin-top: 0px;
}
.library-text {
  width: 100%;
  height: 125px;
  font-size: .9rem;
  line-height: 1.4em;
  text-align: left;
  margin-top: 0.1em;
  margin-left: 0%;
  padding-bottom: 2rem;
  color: #494949;  
}
.library-img img {
  width: 100%;/*画像幅*/
  height: 160px;/*画像の高さ*/
  object-fit: cover;
}
.library-text h3 {
  font-size: .9rem;
  margin-bottom: .3rem;
}
.library-author,
.library-date {
  display: block;
  margin-bottom: .3rem;
  margin-right: 1rem;
  color: #333;
}

@media only screen and (max-width: 550px) {/*スマホ用*/
.library a {
  width: 120px;
  height: 80px;
}
.library li img {  /*アイキャッチ画像*/
  width: 100%;/*画像幅*/
  height: 80px;/*画像の高さ*/
  object-fit: cover;
}
.library-text { /*記事タイトル*/
  font-size: 10px;
}
}

/*=====================
お問合せページ
=======================*/
/* Contact Page
-----------------------------------------------------------------*/
*{
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
.toiawase { 
  width: 70%;
  font-family: Arial, Helvetica, sans-serif;
  background-color: #d6e0ec;  
  text-align: center;
  margin: auto;
  padding: 0;
}
.toiawase h2 {
  margin-top: 50px;
  padding: 10px;
  font-size: 1.6rem;
}
.toiawase p {
  font-size: 1.2rem;
  margin-top: 10px;
}
.toiawase .entry-error {
  font-size: 1.2rem;
  margin-top: 10px;
}
.toiawase form {
  padding: 20px;
  margin: auto;
  text-align: left;
}
.toiawase label {
  display: block;
  margin-top: 20px;
  font-weight: bold;
  font-size: 1.2rem;
}
.toiawase input,textarea {
  width: 100%;
  padding: 10px;
  margin-top: 5px;
  font-size: 1.1rem;
}
.toiawase textarea {
  resize: vertical;
  height: 300px;
}
.toiawase .button {
  background-color: #4f4ae6;
  display: block;
  margin-left: auto;
  margin-right: auto; 
  margin-top: 10px;
  width: 200px;
  font-weight: bold;
  color: #fff;
}
.toiawase .button:hover {
  background-color: #2196F3;
}
.toiawase .complete {
  padding-top: 50px; 
  padding-bottom: 100px;
}

/*---------------------------------------------------
資料室記事一覧（archiveペ－ジ）のパソコン表示用のデザイン
----------------------------------------------------*/

.shiryou-list {
  padding: 0px;
  margin: 20px 10px;  
  display: inline-block;  
  }
  
  .shiryou-list a {
    transition: all ease-in-out .3s;
    display: block;
    text-decoration: none;
    color: #333;
    background-color: #fff;
    border: 1px solid #F1F2F4;
    box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
    width: 240px;/*各自で調節してもOK*/
    height: 350px;/*各自で調節してもOK*/
    padding: 0px;
    border-radius: 5px;
    overflow: hidden;
  }
  
  .shiryou-list a:hover {
    cursor: pointer;
    box-shadow: 0 10px 20px -5px rgba(0,0,0,0.2);
    -moz-transform: translateY(-2px);
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  .shiryou-img img {
    width: 100%;/*画像幅*/
    height: 160px;/*画像の高さ*/
    object-fit: cover;
  }

  .shiryou-text {
    width: 100%;    
    font-size: .9rem;
    line-height: 1.4em;
    text-align: left;
    margin-top: 0.1em;
    margin-left: 0%;
    padding-bottom: 2rem;
    color: #494949;  
  }

  .shiryou-text h2 {
    font-size: 1rem;
    margin-bottom: .3rem;
  }
  .shiryou-cat {
    display: flex;
  }
  .shiryou-cat ul li {
    display: inline-block;
    margin-bottom: .3rem;
    padding: .3rem .5rem;
    color: #fff;
    background-color: #03162f;
  }
  .shiryou-tag {
    display: flex;
  }
  .shiryou-tag ul li {
    display: inline-block;
    padding: .3rem .5rem;
    color: #fff;
    background-color: #305B95;
  }
  .shiryou-customfield dl {
    display: flex;
    flex-wrap: wrap;
    font-weight: bold;
  }
  .shiryou-customfield dl dt {
    width: 40%;
    padding: 3px;
    background-color: #d1d2cf;
    margin: 3px 0 3px 0;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    text-align: center;
  }
  .shiryou-customfield dl dd {
    width: 60%;
    padding: 4px;
    background-color: #e5e3e3;
    margin: 3px 0 3px 0;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  @media(max-width: 550px) {
    .shiryou-list {
      padding: 0px;
      margin: 20px 0px;
      }
    .shiryou-list a {
        width: 220px;/*各自で調節してもOK*/
        height: 350px;/*各自で調節してもOK*/
        padding: 0px;
        border-radius: 5px;
        overflow: hidden;
      }
    }
