@charset "utf-8";





/* pagetop170 */
/*--------------------------------------------------*/
.pagetop170 {
  font-size: 28px;
  position: fixed;
  z-index: 2147483647;
  right: 25px;
  bottom: 25px;
  display: none;
  width: 1.75em;
  height: 1.75em;
  padding: 0;
  color: #fafafa;
  border: none;
  border-radius: 50%;
  background-color: #888;
}
@media (max-width: 575px) {
  .pagetop170 {
    right: 10px;
    bottom: 40px;
  }
}
.pagetop170 i {
  line-height: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 1em;
  height: 1em;
  margin: auto;
}
.pagetop170 i::before {
  margin: 0;
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px);
}
.ua-ie .pagetop170 i::before {
  animation: pagetop170-fix-ie 10ms infinite;

  animation-fill-mode: both;
}
@keyframes pagetop170-fix-ie {
  0% {
    margin: .1px;
  }
  100% {
    margin: 0;
  }
}
.pagetop170:hover i {
  -webkit-animation: pagetop170 1000ms;
          animation: pagetop170 1000ms;
}
.pagetop170-text {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
@-webkit-keyframes pagetop170 {
  15% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
}
@keyframes pagetop170 {
  15% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
}



/* breadcrumbs168 */
/*--------------------------------------------------*/
.breadcrumbs168 .breadcrumbs {
  font-size: 14px;
  line-height: 1.3;
  margin: 5px -5px 0;
}
.breadcrumbs168 .breadcrumbs > span {
  margin: 0 5px;
  vertical-align: middle;
}
.breadcrumbs168 .breadcrumbs a {
  -webkit-transition: color 100ms;
          transition: color 100ms;
}
.ua-nontouch .breadcrumbs168 .breadcrumbs a:hover {
  color: #00a9c7;
}
@media (max-width: 575px) {
  .breadcrumbs168 .breadcrumbs {
    display: none;
  }
}




/* subvisual224 */
/*--------------------------------------------------*/
.subvisual224 {
  height: 350px;
  background-position: center;
  background-size: cover;
}
@media (max-width: 767px) {
  .subvisual224 {
    height: 120px;
  }
}




/* title204 */
/*--------------------------------------------------*/
.title204-text {
  font-size: 26px;
  line-height: 1.3;
  padding: 10px 0;
  text-align: center;
}
.title204-text > span {
  position: relative;
  display: inline-block;
  padding: 0 .5em;
}
.title204-text > span::before,
.title204-text > span::after {
  position: absolute;
  top: 50%;
  width: 2500%;
  content: '';
}
.title204-text > span::before {
  right: 100%;
}
.title204-text > span::after {
  left: 100%;
}
@media (max-width: 767px) {
  .title204-text {
    font-size: 22px;
  }
}
.title204-text {
  overflow: hidden;
}
.title204-text > span::before,
.title204-text > span::after {
  border-top: 1px solid #aaa;
}
@media (max-width: 767px) {
  .title204 .container-fluid {
    padding: 0;
  }
  .title204-text {
    padding: 10px;
  }
}







/* sidebar */
/*--------------------------------------------------*/
.widget {
  border: 1px solid #CCC;
  margin-bottom: 15px;
}
.widget-title {
  text-align: center;
  padding: 10px 15px;
  border-bottom: 1px solid #CCC;
  font-weight: bold;
}

.widget > ul {}
.widget > ul > li > a {
  display: block;
  padding: 10px 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}
.widget > ul > li:hover > a {
  background-color: #EFEFEF;
}
.widget > ul > li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 15px;
}
.widget > ul > li:hover > a:after {
  right: 10px;
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}
.widget > ul > li:not(:last-child) {
  border-bottom: 1px dashed #CCC;
}
.widget select {
  margin: 10px 5%;
  width: 90%;
}
.widget_categories select {
  margin-top: 0px;
}
.screen-reader-text {
  display: block;
  margin: 15px auto 0 auto;
  width: 88%;
}

/* カレンダー */
.widget_calendar table {
  width: 100%;
}
.widget_calendar td, .widget_calendar th {
  text-align: center;
  padding: 3px 7px;
}
.widget_calendar thead {
  border-top: 1px solid #CCC;
}
.widget_calendar thead th,
.widget_calendar tbody td {
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
}
.widget_calendar caption {
  text-align: center;
  font-size: 16px;
  padding: 7px 0;
}
.widget_calendar a {
  color: blue;
  text-decoration: underline;
}
.widget_calendar tfoot td {
  padding: 7px 0;
}
/* 検索 */
.widget_search {
  border: none;
}
.widget_search .widget-title {
  border: 1px solid #CCC;
  border-bottom: none;
}

.widget ul.children {
  border-top: 1px dotted #CCC;
}
.widget ul.children li {
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}
.widget ul.children li a:before { content: '├ ';}
.widget ul.children li:last-child a:before { content: '└ ';}
.widget ul.children li a {
  display: block;
  padding: 13px 15px 7px 10px;
}
.widget ul.children li:hover > a {
  background-color: #EFEFEF;
}
.widget ul.children li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 30px;
}
.widget ul.children li:hover > a:after {
  right: 25px;
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}




.searchform {
  position: relative;
}
.searchform input[type="search"] {
  width: 100%;
}
.searchfield {
  font-size: 14px;
  padding: 7px;
}
.searchsubmit {
  font-size: 20px;
  width: 35px;
  height: 30px;
  background: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
  position: absolute;
  right: 10px;
  top: 5px;
}
/* カスタムメニュー */
.widget_nav_menu li > a {
  display: block;
  padding: 10px 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}
.widget_nav_menu li:hover > a {
  background-color: #EFEFEF;
}
.widget_nav_menu li > a:after {
  font-family: 'fontello';
  content: '\e802';
  position: absolute;
  right: 15px;
}
.widget_nav_menu li:hover > a:after {
  right: 10px;
  -webkit-transition: all .25s linear;
     -moz-transition: all .25s linear;
      -ms-transition: all .25s linear;
       -o-transition: all .25s linear;
          transition: all .25s linear;
}
.widget_nav_menu li:not(:last-child) {
  border-bottom: 1px dashed #CCC;
}
/* タグクラウド */
.widget_tag_cloud .tagcloud {
  padding: 10px 15px;
}

/* タイトル */
.single-title {
  border-bottom: 1px solid #CCC;
  font-size: 20px;
  padding-bottom: 10px;
}
/* カテゴリー名 */
.news-cat-tag {
  background-color: #CCC;
  padding: 2px 10px;
  margin-right: 3px;
}
/* 次の記事 */
.single-arrow-next {
  text-align: right;
}
/* アーカイブのページネーション */
.pagenation {
  text-align: center;
}
.page-numbers {
  background-color: #333;
  color: #FFF;
  padding: 5px 10px;
}
.page-numbers.current {
  background-color: #FFF;
  border: 1px solid #333;
  color: #333;
}
/* 最近のコメント */
.widget_recent_comments .recentcomments {
  padding: 10px 15px;
}
.widget_recent_comments .recentcomments a {
  text-decoration: underline;
}
.widget_recent_comments .recentcomments a:after {
  content: none;
}
.widget_recent_comments .recentcomments:hover > a {
  background: none;
}




/* oEmbedをレスポンシブ化 */
/*--------------------------------------------------*/

.wp-embedded-content {
  max-width: 100%;
}
