@charset "UTF-8";
/*################################################################

新着情報ページレイアウト設定

################################################################*/
/*@import "mixin/component";*/
#posts {
  width: 94.6666666667vw;
  margin: 0 auto;
  padding-bottom: 80px;
  display: flex;
  flex-direction: column-reverse;
}
#posts #main .inner {
  overflow: hidden;
}
#posts .single .info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#posts .single .info .category .label {
  width: 26.6666666667vw;
  height: 5.3333333333vw;
  background: #67beb5;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
#posts .single .info .category .label a {
  color: #fff;
  font-size: 2.6666666667vw;
}
#posts .single .info .category {
  margin-right: 1.3333333333vw;
}
#posts .single .info .date {
  font-size: 2.6666666667vw;
}
#posts .single > h3 {
  margin-top: 2.6666666667vw;
  color: #004d86;
  font-weight: bold;
  font-size: 4.5333333333vw;
  line-height: 1.33;
  border-bottom: 0.2666666667vw solid #ccc;
  padding-bottom: 1.3333333333vw;
}
#posts .single .post_detail {
  padding-top: 4vw;
}
#posts .single .post_detail .alignleft {
  float: left;
}
#posts .single .post_detail .aligncenter {
  text-align: center;
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#posts .single .post_detail .alignright {
  float: right;
}
#posts .single .post_detail img {
  width: auto;
  height: auto;
}
#posts .single .post_detail img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#posts .single .post_detail img.alignright {
  padding: 4px;
  margin: 0 0 2px 7px;
  display: inline;
}
#posts .single .post_detail img.alignleft {
  padding: 4px;
  margin: 0 7px 2px 0;
  display: inline;
}
#posts .single .post_detail img {
  width: auto;
  max-width: 100%;
  height: auto;
}
#posts .single .post_detail figure {
  margin: 0 0 2vw 0;
}
#posts .single .post_detail ol,
#posts .single .post_detail ul {
  margin-bottom: 4vw;
  padding-left: 1.5em;
}
#posts .single .post_detail ol {
  list-style: decimal;
}
#posts .single .post_detail ul {
  list-style: circle;
}
#posts .single .post_detail p {
  font-size: 3.7333333333vw;
  margin-bottom: 3.3333333333vw;
  line-height: 1.57;
}
#posts .single .post_detail p img.alignright {
  text-align: right;
}
#posts .single .post_detail h1 {
  color: #004d86;
  padding-top: 0.8vw;
  padding-bottom: 2.6666666667vw;
  font-size: 4.5333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
  font-weight: bold;
  margin: 4vw 0;
}
#posts .single .post_detail h2 {
  padding-left: 1.6vw;
  padding-top: 1.6vw;
  padding-bottom: 1.6vw;
  vertical-align: middle;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: vww(28);
  background: #e4f0f9;
  border-radius: 0.2666666667vw;
  font-weight: bold;
}
#posts .single .post_detail h3 {
  background: #fff;
  padding-left: 4vw;
  padding-bottom: 1.6vw;
  display: block;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
  font-weight: bold;
}
#posts .single .post_detail h3:before {
  position: absolute;
  left: 0;
  top: 0%;
  content: "";
  display: block;
  width: 0.6666666667vw;
  transform: translateY(0%);
  height: calc(100% - 1.6vw);
  background-color: #004d86;
}
#posts .single .post_detail h4 {
  background: #fff;
  padding-left: 4vw;
  display: block;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  font-weight: bold;
}
#posts .single .post_detail h4:before {
  position: absolute;
  left: 0;
  top: 0%;
  content: "";
  display: block;
  width: 0.6666666667vw;
  transform: translateY(0%);
  height: calc(100% - 0vw);
  background-color: #004d86;
}
#posts .single .post_detail h5 {
  padding-left: 2.6666666667vw;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.2vw;
  padding-right: 3.7333333333vw;
  background-image: url(../img/common/icon-dot.png);
  background-size: 2.9333333333vw;
  background-position: left center;
  background-repeat: no-repeat;
  font-weight: bold;
}
#posts .single .post_detail h6 {
  background: #fff;
  -js-display: flex;
  display: flex;
  display: -webkit-flex;
  line-height: 1;
  vertical-align: middle;
  align-items: center;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.2vw;
  font-weight: bold;
}
#posts .single .post_detail a {
  color: #0044cc;
  text-decoration: underline;
}
#posts .single .post_detail a:hover {
  color: #0044cc;
  text-decoration: none;
}
#posts .single .post_detail table {
  max-width: 100%;
  table-layout: fixed;
  border-top: 0.2666666667vw solid #c2c2c2;
  border-right: 0.2666666667vw solid #c2c2c2;
  border-collapse: collapse;
}
#posts .single .post_detail table th {
  padding: 1.3333333333vw;
  min-width: 20vw;
  text-align: center;
  background: #f3f3f3;
  border-left: 0.2666666667vw solid #c2c2c2;
  border-bottom: 0.2666666667vw solid #c2c2c2;
}
#posts .single .post_detail table td {
  padding: 1.3333333333vw;
  min-width: 20vw;
  text-align: center;
  border-left: 0.2666666667vw solid #c2c2c2;
  border-bottom: 0.2666666667vw solid #c2c2c2;
}
#posts .single .post_detail em {
  font-style: italic;
}
#posts .post:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
#posts .post:first-child {
  border-top: 0.2666666667vw solid #cccccc;
}
#posts .post .contents {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: 0.2666666667vw solid #cccccc;
  padding: 2.6666666667vw 0;
}
#posts .post .contents .category .label {
  width: 26.6666666667vw;
  height: 5.3333333333vw;
  background: #67beb5;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
#posts .post .contents .category .label a {
  color: #fff;
  font-size: 2.6666666667vw;
}
#posts .post .contents .date {
  font-size: 2.6666666667vw;
  margin-left: 2.1333333333vw;
}
#posts .post .contents .title {
  width: 100%;
  font-size: 3.7333333333vw;
  margin-top: 2.1333333333vw;
  padding: 0;
}
#posts .post .contents .title a {
  color: #333333;
}

/*-----------------------------------------------------------------
検索結果
-----------------------------------------------------------------*/
.item_notfound {
  font-size: 150%;
  margin: 20px 0px 20px 20px;
}

/*-----------------------------------------------------------------
設定
-----------------------------------------------------------------*/
/*-----------------------------------------------------------------
サイドバー
-----------------------------------------------------------------*/
#sidebar {
  margin-top: 17.3333333333vw;
  width: 100%;
  padding: 0 0;
}
#sidebar h2.widgettitle {
  font-size: 3.7333333333vw;
  text-align: left;
  margin: 0 0 10px;
}
#sidebar .widget {
  margin-bottom: 4vw;
}
#sidebar .widget li:before {
  content: "・ ";
}
#sidebar .widget_archive h2,
#sidebar .widget_categories h2,
#sidebar .widget_recent_entries h2 {
  font-size: 3.7333333333vw;
  text-align: left;
  color: #004d86;
  font-weight: bold;
  padding-bottom: 1.3333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
}
#sidebar .widget_archive ul,
#sidebar .widget_categories ul,
#sidebar .widget_recent_entries ul {
  margin-top: 3.2vw;
}
#sidebar .widget_archive ul li,
#sidebar .widget_categories ul li,
#sidebar .widget_recent_entries ul li {
  font-size: 3.7333333333vw;
  line-height: 1.7;
  text-align: left;
}
#sidebar .widget_archive ul li + li,
#sidebar .widget_categories ul li + li,
#sidebar .widget_recent_entries ul li + li {
  margin-top: 1.3333333333vw;
}
#sidebar .widget_archive ul li a,
#sidebar .widget_categories ul li a,
#sidebar .widget_recent_entries ul li a {
  color: #333;
}
#sidebar .widget_accordion_archive_widget h2 {
  font-size: 3.7333333333vw;
  text-align: left;
  color: #004d86;
  font-weight: bold;
  padding-bottom: 1.3333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__years > li {
  background: url(../img/common/icon-plus.png) left 6px no-repeat;
  padding-left: 4.5333333333vw;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__years > li:before {
  display: none;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__months {
  margin-top: 1.3333333333vw;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__months li:before {
  display: none;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__months li > a {
  color: #333333;
  font-size: 3.7333333333vw;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__months li .child {
  display: none;
}
#sidebar .widget_accordion_archive_widget .accordion-archive__months li .child li:before {
  display: none;
}
#sidebar {
  /*
  カレンダー
  */
}
#sidebar .widget_calendar {
  width: 75.3333333333vw;
  margin: 0 auto 4vw;
  background: #e4f0f9;
}
#sidebar .widget_calendar h2 {
  background: #0068b6;
  color: #fff;
  text-align: left;
  font-size: 5.9333333333vw;
  height: 11.4666666667vw;
  line-height: 11.4666666667vw;
  padding-left: 2.6666666667vw;
}
#sidebar .widget_calendar #wp-calendar {
  border: 0.2666666667vw solid #e4f0f9;
  font-size: 3.9333333333vw;
  width: 85%;
  border-collapse: collapse;
  margin: 0 auto;
}
#sidebar .widget_calendar #wp-calendar caption {
  font-weight: bold;
  font-size: 5.2vw;
  margin-bottom: 1.3333333333vw;
}
#sidebar .widget_calendar #wp-calendar td {
  text-align: center;
  background: #fff;
  border: 0.2666666667vw solid #e4f0f9;
  height: 6.6666666667vw;
  font-size: 3.9333333333vw;
}
#sidebar .widget_calendar #wp-calendar thead th {
  background: #8cbbde;
  font-weight: bold;
  text-align: center;
}
#sidebar .widget_calendar #wp-calendar thead th:nth-of-type(6) {
  color: #0068b6;
}
#sidebar .widget_calendar #wp-calendar thead th:nth-of-type(7) {
  color: #e60012;
}
#sidebar .widget_calendar #wp-calendar tfoot td {
  border: 0;
  background: transparent;
}
#sidebar .widget_calendar #wp-calendar tfoot #prev {
  text-align: left;
}
#sidebar .widget_calendar #wp-calendar tfoot #next {
  text-align: right;
}

/*-----------------------------------------------------------------
ページナビ
-----------------------------------------------------------------*/
#single_otherpost,
.single_prev {
  border-top: 0.2666666667vw dotted #999;
  margin-top: 4vw;
  padding-top: 2.6666666667vw;
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  gap: 2.6666666667vw;
}
#single_otherpost a,
.single_prev a {
  text-align: center;
  width: 9.0666666667vw;
  height: 9.0666666667vw;
  line-height: 9.0666666667vw;
  display: inline-block;
  text-decoration: none;
  font-size: 2.8666666667vw;
  background: #eeeeee;
  color: #333333;
}
#single_otherpost a:hover,
.single_prev a:hover {
  color: #fff;
  background: #0068b6;
}
#single_otherpost .list a,
.single_prev .list a {
  width: 26.6666666667vw;
}

.tablenav {
  margin: 0 auto;
  text-align: left;
  padding-top: 8vw;
}
.tablenav a.page-numbers {
  color: #0068b6;
  background: #eeeeee;
}
.tablenav a.page-numbers,
.tablenav .current {
  text-align: center;
  width: 9.0666666667vw;
  height: 9.0666666667vw;
  line-height: 9.0666666667vw;
  display: inline-block;
  text-decoration: none;
  font-size: 3.2vw;
  color: #333333;
}
.tablenav a.page-numbers:hover,
.tablenav .current:hover {
  color: #fff;
  background: #0068b6;
}
.tablenav .current {
  color: #fff;
  background: #0068b6;
  font-weight: bold;
}

/*-----------------------------------------------------------------
FEED
-----------------------------------------------------------------*/
.feed {
  padding-top: 20px;
}

.feed_icon {
  vertical-align: middle;
  margin-right: 3px;
}

/*-----------------------------------------------------------------------------------
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
------------------------------------------------------------------------------------*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img {
  max-width: 100%; /* When images are too wide for containing element, force them to fit. */
  height: auto; /* Override height to match resized width for correct aspect ratio. */
}

.alignleft,
img.alignleft {
  display: inline;
  float: left;
  margin-right: 24px;
  margin-top: 4px;
}

.alignright,
img.alignright {
  display: inline;
  float: right;
  margin-left: 24px;
  margin-top: 4px;
}

.aligncenter,
img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 12px;
}

.wp-caption {
  /*  background: #f1f1f1;*/
  line-height: 18px;
  margin-bottom: 20px;
  max-width: 632px !important; /* prevent too-wide images from breaking layout */
  padding: 4px;
  text-align: center;
}

.wp-caption img {
  margin: 5px 5px 0;
}

.wp-caption p.wp-caption-text {
  color: #000;
  font-size: 110%;
  margin: 5px;
}

.wp-smiley {
  margin: 0;
}

.gallery {
  margin: 0 auto 18px;
}

.gallery .gallery-item {
  float: left;
  margin-top: 0;
  text-align: center;
  width: 33%;
}

.gallery-columns-2 .gallery-item {
  width: 50%;
}

.gallery-columns-4 .gallery-item {
  width: 25%;
}

.gallery img {
  border: 2px solid #cfcfcf;
}

.gallery-columns-2 .attachment-medium {
  max-width: 92%;
  height: auto;
}

.gallery-columns-4 .attachment-thumbnail {
  max-width: 84%;
  height: auto;
}

.gallery .gallery-caption {
  color: #000;
  font-size: 12px;
  margin: 0 0 12px;
}

.gallery dl {
  margin: 0;
}

.gallery img {
  border: 10px solid #f1f1f1;
}

.gallery br + br {
  display: none;
}

#content .attachment img {
  /* single attachment images should be centered */
  display: block;
  margin: 0 auto;
}
