@charset "UTF-8";
/*
Theme Name: LiM
Author: Joe Hyatt
Description: ミニマルかつスタイリッシュなWordPressテーマ
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gp1-2.0.html
*/
/* colors */
/* mixin */
/* reset */
html {
  box-sizing: border-box;
  font-size: 16px; }

*, *:before, *:after {
  box-sizing: inherit; }

body, h1, h2, h3, h4, h5, h6, p, ol, ul {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-family: "Noto Sans JP"; }

ol, ul {
  list-style: none; }

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

p {
  letter-spacing: 1px; }

a {
  color: #292F33;
  text-decoration: none; }
  a:link, a:visited, a:hover, a:active {
    color: #292F33; }

h1 {
  font-size: 45px;
  font-weight: bold;
  color: #292F33;
  letter-spacing: 1px;
  width: 100%;
  margin: 30px 0 10px;
  line-height: 1.3em;
  padding: 5px;
  margin-top: 0; }

h2 {
  font-size: 32px;
  font-weight: bold;
  color: #292F33;
  letter-spacing: 1px;
  width: 100%;
  margin: 30px 0 10px;
  border-bottom: 5px solid #292F33;
  padding: 5px 0; }

h3 {
  font-size: 24px;
  font-weight: bold;
  color: #292F33;
  letter-spacing: 1px;
  width: 100%;
  margin: 30px 0 10px;
  background-color: #e1e1e1;
  padding: 15px 12.5px; }

h4 {
  font-size: 20px;
  font-weight: bold;
  color: #292F33;
  letter-spacing: 1px;
  width: 100%;
  margin: 30px 0 10px;
  border-left: 7px solid #292F33;
  padding: 5px; }

.clear {
  clear: both; }

/* front-page */
section .wide-container {
  width: 100%;
  height: 300px;
  text-align: center; }
  section .wide-container:first-child {
    margin-top: 49px; }
  section .wide-container p {
    font-weight: bold;
    letter-spacing: 2px; }
    section .wide-container p.title {
      font-size: 40px;
      padding-top: 100px; }
    section .wide-container p.subtitle {
      font-size: 20px; }
section#page {
  margin-top: 49px; }
  section#page .wide-container {
    height: 200px; }
    section#page .wide-container p.title {
      padding-top: 70px; }

/* 横幅1170pxのコンテナ */
.container {
  width: 1170px;
  margin: 0 auto;
  /* 4記事表示の見出し */
  /* 記事一覧表示 */
  /* 更に見るボタン */ }
  .container p {
    display: inline-block;
    font-size: 18px;
    margin-left: 20px;
    font-style: italic; }
    .container p.title {
      font-size: 32px;
      font-weight: bold;
      letter-spacing: 1px;
      margin: 50px 0 20px;
      font-style: normal; }
    .container p i {
      margin-right: 10px; }
  .container .posts {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    /* 記事ボックス */
    /* ページング */ }
    .container .posts .post {
      width: 25%;
      padding: 0 10px;
      margin-bottom: 40px; }
      .container .posts .post .title {
        font-size: 16px;
        margin: 0;
        line-height: 1.2em;
        letter-spacing: 1px; }
      .container .posts .post .date {
        display: block;
        font-size: 12px;
        margin: 0;
        letter-spacing: 2px; }
    .container .posts nav {
      display: block;
      width: 100%;
      margin: 0 auto 50px; }
      .container .posts nav h2 {
        display: none; }
      .container .posts nav .nav-links {
        text-align: center;
        margin: 20px; }
        .container .posts nav .nav-links .page-numbers {
          display: inline-block;
          text-align: center;
          width: 40px;
          padding: 5px;
          font-size: 16px;
          font-weight: bold;
          color: #292F33;
          border: 1px solid #292F33; }
          .container .posts nav .nav-links .page-numbers:hover {
            background-color: #f5f5f5; }
        .container .posts nav .nav-links .dots {
          border: none; }
          .container .posts nav .nav-links .dots:hover {
            background-color: #fff; }
        .container .posts nav .nav-links .current {
          color: #e1e1e1;
          background-color: #292F33; }
          .container .posts nav .nav-links .current:hover {
            background-color: #292F33; }
  .container .more {
    display: block;
    width: 350px;
    text-align: center;
    font-size: 18px;
    letter-spacing: 1px;
    color: #292F33;
    transition: 0.3s;
    padding: 10px 20px;
    margin: 0 auto 60px;
    border: 1px solid #292F33;
    border-radius: 5px; }
    .container .more .fa-chevron-circle-right {
      margin-left: 5px; }
    .container .more:hover {
      background-color: #292F33;
      color: #e1e1e1;
      border: 1px solid #e1e1e1; }

/* プロフィールウィジェット */
.profile {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  .profile .image {
    flex: auto;
    width: 50%;
    padding-left: 10%; }
    .profile .image img {
      border-radius: 50%;
      width: 120px;
      height: 120px; }
  .profile .info {
    flex: auto;
    width: 50%;
    letter-spacing: 2px;
    text-align: center;
    padding-top: 12px;
    padding-right: 10%; }
    .profile .info .author {
      font-size: 24px;
      margin-bottom: 3px; }
    .profile .info .roll {
      font-size: 14px;
      margin-bottom: 7px; }
    .profile .info .contact {
      font-size: 18px; }
  .profile .biography {
    flex: auto;
    width: 100%;
    font-size: 16px;
    letter-spacing: 1px;
    padding: 20px; }

/* 固定ヘッダー */
header {
  width: 100%;
  top: 0;
  background-color: #292F33;
  font-size: 20px;
  letter-spacing: 2px;
  position: fixed;
  z-index: 10; }
  header .wrapper {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    flex-wrap: wrap; }
    header .wrapper .logo {
      flex: auto;
      width: 30%;
      text-align: left;
      color: #e1e1e1;
      padding: 10px 0; }
    header .wrapper .nav {
      flex: auto;
      width: 70%; }
      header .wrapper .nav .menu {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        color: #e1e1e1; }
        header .wrapper .nav .menu .menu-item {
          flex: auto;
          text-align: center;
          position: relative;
          padding: 10px 0; }
          header .wrapper .nav .menu .menu-item a {
            display: block;
            color: #e1e1e1; }
          header .wrapper .nav .menu .menu-item ul {
            position: absolute;
            display: none;
            top: 49px;
            left: 0;
            right: 0;
            font-size: 15px; }
            header .wrapper .nav .menu .menu-item ul li {
              background-color: #292F33;
              padding: 10px 20px;
              width: auto;
              text-align: center; }
          header .wrapper .nav .menu .menu-item:hover {
            background-color: #4b565d; }
            header .wrapper .nav .menu .menu-item:hover ul {
              display: block; }
    header .wrapper .hamburger {
      display: none; }
  header .modal-wrapper {
    display: none; }

/* Singularページのメイン */
main {
  max-width: 1170px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 100px auto 0;
  /* 記事エリア */
  /* サイドバーエリア */ }
  main article {
    width: 65%;
    flex: auto;
    /***** 記事ヘッダー *****/
    /* 記事本文 */ }
    main article .wide-wrapper {
      width: 750px;
      margin: 0 auto; }
      main article .wide-wrapper .info {
        width: 100%;
        font-size: 14px;
        letter-spacing: 1px;
        margin: 15px 0 25px;
        padding: 0 5px;
        display: flex;
        justify-content: space-between; }
        main article .wide-wrapper .info .breadcrumb {
          width: 30%;
          flex: auto;
          text-align: left; }
          main article .wide-wrapper .info .breadcrumb .fa-home,
          main article .wide-wrapper .info .breadcrumb .fa-folder {
            margin-right: 2px; }
          main article .wide-wrapper .info .breadcrumb a {
            color: #292F33; }
        main article .wide-wrapper .info .date-information {
          width: 40%;
          flex: auto;
          text-align: center; }
          main article .wide-wrapper .info .date-information .fa-pen-nib,
          main article .wide-wrapper .info .date-information .fa-redo-alt {
            margin-right: 5px; }
        main article .wide-wrapper .info .social {
          width: 30%;
          flex: auto;
          text-align: right; }
          main article .wide-wrapper .info .social .fa-twitter-square {
            color: #1da1f2;
            font-size: 16px; }
          main article .wide-wrapper .info .social .fa-facebook-square {
            color: #3b5998;
            font-size: 16px; }
          main article .wide-wrapper .info .social .fa-line {
            color: #00b900;
            font-size: 16px; }
    main article .wrapper {
      width: 700px;
      margin: 0 auto; }
      main article .wrapper .article-body {
        /*** 通常段落 ***/
        /*** ギャラリー ***/
        /*** ブログカード ***/ }
        main article .wrapper .article-body p {
          font-size: 17px;
          line-height: 2em;
          padding: 10px 0;
          margin: 10px 0; }
        main article .wrapper .article-body figure {
          width: 100%;
          margin: 0 auto; }
          main article .wrapper .article-body figure .blocks-gallery-grid {
            position: relative; }
            main article .wrapper .article-body figure .blocks-gallery-grid .fa-chevron-left,
            main article .wrapper .article-body figure .blocks-gallery-grid .fa-chevron-right {
              position: absolute;
              top: 45%;
              font-size: 45px;
              color: #e1e1e1;
              text-shadow: 0 0 2px rgba(0, 0, 0, 0.3), 0 0 5px rgba(0, 0, 0, 0.3), 0 0 8px rgba(0, 0, 0, 0.3); }
            main article .wrapper .article-body figure .blocks-gallery-grid .fa-chevron-left {
              left: 20px; }
            main article .wrapper .article-body figure .blocks-gallery-grid .fa-chevron-right {
              right: 20px; }
            main article .wrapper .article-body figure .blocks-gallery-grid .blocks-gallery-item {
              display: none; }
              main article .wrapper .article-body figure .blocks-gallery-grid .blocks-gallery-item.active {
                display: block; }
              main article .wrapper .article-body figure .blocks-gallery-grid .blocks-gallery-item figcaption {
                bottom: -30px;
                color: #e1e1e1; }
          main article .wrapper .article-body figure figcaption {
            margin: 0 auto 30px;
            font-size: 12px;
            font-style: italic;
            letter-spacing: 1px; }
        main article .wrapper .article-body .blog-card {
          border: 1px solid #292F33;
          display: flex; }
          main article .wrapper .article-body .blog-card .blog-card-thumbnail {
            width: 25%;
            flex: auto;
            padding: 5px 10px; }
            main article .wrapper .article-body .blog-card .blog-card-thumbnail img {
              max-width: none; }
          main article .wrapper .article-body .blog-card .blog-card-content {
            width: 75%;
            flex: auto;
            padding: 5px; }
            main article .wrapper .article-body .blog-card .blog-card-content .blog-card-upper {
              font-size: 20px;
              font-weight: bold;
              letter-spacing: 2px; }
            main article .wrapper .article-body .blog-card .blog-card-content .blog-card-lower {
              display: flex; }
              main article .wrapper .article-body .blog-card .blog-card-content .blog-card-lower p {
                flex: auto;
                font-size: 14px;
                letter-spacing: 2px;
                line-height: none;
                margin: 0;
                padding: 5px 0 0; }
                main article .wrapper .article-body .blog-card .blog-card-content .blog-card-lower p.readmore {
                  text-align: center;
                  font-size: 18px;
                  background-color: #292F33;
                  color: #e1e1e1;
                  padding: 0; }
  main aside {
    width: 35%;
    flex: auto; }
    main aside .wrapper {
      width: 350px;
      margin: 0 auto; }
      main aside .wrapper .widget {
        margin-top: 10px;
        margin-bottom: 30px;
        background-color: #f5f5f5;
        padding: 10px 0; }
        main aside .wrapper .widget .widget-title {
          font-size: 20px;
          letter-spacing: 2px;
          font-weight: bold;
          text-align: center;
          padding: 10px;
          background-color: #e1e1e1;
          margin: 10px 20px 20px; }
        main aside .wrapper .widget ul {
          padding: 0 20px 10px; }
          main aside .wrapper .widget ul li {
            padding: 15px 0;
            border-bottom: 1px dotted #e1e1e1; }
            main aside .wrapper .widget ul li:last-child {
              border: none; }
            main aside .wrapper .widget ul li a {
              color: #292F33; }
        main aside .wrapper .widget .latest-article {
          margin-bottom: 15px; }
          main aside .wrapper .widget .latest-article img {
            padding: 0 20px; }
          main aside .wrapper .widget .latest-article .biography {
            padding: 0 20px 5px;
            font-size: 17px;
            letter-spacing: 2px; }

/* フッター */
footer {
  background-color: #292F33;
  color: #e1e1e1; }
  footer .wrapper {
    max-width: 1170px;
    margin: 0 auto; }
    footer .wrapper .copywrite {
      width: 100%;
      text-align: center;
      font-size: 12px;
      letter-spacing: 2px;
      padding: 15px 0; }
      footer .wrapper .copywrite a {
        text-decoration: none;
        color: #e1e1e1; }
        footer .wrapper .copywrite a:hover {
          text-decoration: underline; }

@media screen and (max-width: 1170px) {
  /* header */
  header .wrapper {
    width: 100%;
    position: relative; }
    header .wrapper .logo {
      width: 300px;
      text-align: center;
      padding: 10px 0; }
    header .wrapper .nav {
      display: none; }
    header .wrapper .hamburger {
      display: block;
      position: absolute;
      top: 10px;
      right: 20px;
      color: #e1e1e1;
      font-size: 20px; }
      header .wrapper .hamburger .close {
        display: none; }
  header .modal-wrapper {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 75%;
    background-color: rgba(0, 0, 0, 0.6); }
    header .modal-wrapper .modal {
      width: 100%; }
      header .modal-wrapper .modal .menu {
        position: absolute;
        top: 70px;
        left: 0;
        right: 0; }
        header .modal-wrapper .modal .menu .menu-item {
          width: 100%;
          text-align: center;
          padding: 20px 0; }
          header .modal-wrapper .modal .menu .menu-item ul {
            display: none; }
      header .modal-wrapper .modal .close {
        position: absolute;
        top: 10px;
        right: 20px; }

  /* frame */
  main article {
    width: 100%; }
  main aside {
    width: 100%; }
    main aside .wrapper {
      width: 750px;
      display: flex;
      flex-wrap: wrap; }
      main aside .wrapper .widget {
        flex: auto;
        width: 45%;
        margin: 10px; }

  section .wide-container {
    height: 200px; }
    section .wide-container p.title {
      font-size: 32px;
      padding-top: 65px; }
    section .wide-container p.subtitle {
      font-size: 16px; }
  section .container {
    width: 100%; }
    section .container p {
      display: block;
      text-align: center; }
      section .container p.title {
        font-size: 30px;
        margin: 30px 0 5px; }
      section .container p.subtitle {
        font-size: 15px;
        margin-bottom: 30px;
        font-style: italic; }
    section .container .posts .post {
      width: 50%;
      padding: 0 20px;
      margin-bottom: 20px; } }
@media screen and (max-width: 750px) {
  h1 {
    font-size: 28px;
    font-weight: bold;
    color: #292F33;
    letter-spacing: 1px;
    width: 100%;
    margin: 30px 0 10px;
    line-height: 1.2em;
    padding: 5px;
    margin-top: 0; }

  h2 {
    font-size: 24px;
    font-weight: bold;
    color: #292F33;
    letter-spacing: 1px;
    width: 100%;
    margin: 30px 0 10px;
    border-bottom: 5px solid #292F33;
    padding: 5px;
    width: 97%;
    margin: 30px auto 15px; }

  h3 {
    font-size: 20px;
    font-weight: bold;
    color: #292F33;
    letter-spacing: 1px;
    width: 100%;
    margin: 30px 0 10px;
    background-color: #e1e1e1;
    padding: 10px;
    width: 97%;
    margin: 30px auto 15px; }

  h4 {
    font-size: 18px;
    font-weight: bold;
    color: #292F33;
    letter-spacing: 1px;
    width: 100%;
    margin: 30px 0 10px;
    border-left: 7px solid #292F33;
    padding: 5px 10px;
    width: 97%;
    margin: 30px auto 15px; }

  section .wide-container {
    height: 125px; }
    section .wide-container p.title {
      font-size: 24px;
      padding-top: 35px; }
    section .wide-container p.subtitle {
      font-size: 14px; }
  section .container {
    padding: 0 20px; }
    section .container .posts .post {
      width: 100%;
      padding: 0; }
    section .container .more {
      width: 100%; }

  main article .wide-wrapper {
    width: 100%; }
    main article .wide-wrapper .article-header .info .breadcrumb {
      width: 50%; }
    main article .wide-wrapper .article-header .info .date-information {
      width: 35%;
      text-align: right; }
      main article .wide-wrapper .article-header .info .date-information span {
        display: none; }
    main article .wide-wrapper .article-header .info .social {
      width: 15%; }
  main article .wrapper {
    width: 100%; }
    main article .wrapper .article-body p {
      font-size: 15px;
      color: #292F33;
      letter-spacing: 1px;
      line-height: 1.8em;
      padding: 10px;
      margin: 10px 0; }
  main aside .wrapper {
    width: 100%; }
    main aside .wrapper .widget {
      width: 100%;
      margin: 0;
      padding: 0 0 20px; }
      main aside .wrapper .widget .widget-title {
        margin: 0 0 15px; } }

/*# sourceMappingURL=style.css.map */
