@charset "UTF-8";
@import url("global.css");
/* ---------- Navi ---------- */
#select_navi {
  margin: 60px auto 120px; }
  #select_navi .selectarea {
    display: flex;
    gap: 0 60px;
    justify-content: center;
    width: 100%;
    border-top: #362929 1px solid;
    border-bottom: #362929 1px solid;
    padding: 25px 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    #select_navi .selectarea dl {
      display: flex;
      align-items: center;
      gap: 0 20px; }
      #select_navi .selectarea dl dt {
        line-height: 1;
        font-family: "Vollkorn", "Zen Old Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-style: italic;
        font-size: 20px; }
      #select_navi .selectarea dl dd form select {
        background-color: #fff;
        border-radius: 2px;
        padding: 15px;
        width: 100%;
        box-sizing: border-box;
        vertical-align: middle;
        box-shadow: none;
        letter-spacing: 1px; }

/* ---------- archive-title ---------- */
#archive_title {
  position: relative;
  z-index: 1;
  padding-top: 160px;
  text-align: center; }
  #archive_title .title {
    display: inline-block;
    margin-bottom: 5px; }
    #archive_title .title .ja {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0 140px;
      line-height: 1;
      position: relative; }
      #archive_title .title .ja::before, #archive_title .title .ja::after {
        content: "";
        position: absolute;
        top: 50%;
        height: 1px;
        width: 120px;
        background-color: #362929; }
      #archive_title .title .ja::before {
        left: 0; }
      #archive_title .title .ja::after {
        right: 0; }
      #archive_title .title .ja img {
        display: inline-block;
        margin-right: 10px;
        width: 106px; }
    #archive_title .title .en_svg {
      display: block;
      margin: 25px auto;
      max-width: 560px;
      line-height: 0; }
    #archive_title .title .text {
      display: block;
      font-size: clamp(16px, 1.8vw, 22px);
      line-height: 1.2; }
  #archive_title .topimg .img1, #archive_title .topimg .img2, #archive_title .topimg .img3 {
    position: absolute;
    z-index: -1; }
  #archive_title .topimg .img1 {
    top: 0;
    right: 0;
    width: 33.28vw; }
  #archive_title .topimg .img2 {
    top: 0;
    left: 20vw;
    width: 15.9%; }
  #archive_title .topimg .img3 {
    top: 10vw;
    /*196px*/
    left: 5.36vw;
    width: 19.32%; }

/* ---------- Category-Page ---------- */
.category_title {
  text-align: center;
  margin-bottom: 60px; }
  .category_title p:not([class]) {
    font-size: clamp(12px, 1.5vw, 18px);
    line-height: 1; }
    .category_title p:not([class]) span {
      display: inline-block;
      margin-right: 15px;
      font-size: clamp(20px, 2.7vw, 30px);
      font-weight: 700; }

/* ---------- Index-Page ---------- */
.index .blog_list ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -30px; }
  .index .blog_list ul li {
    width: 33.33%;
    padding: 30px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .index .blog_list ul li a {
      display: block; }
      .index .blog_list ul li a .thumb {
        width: 100%;
        height: 0;
        padding-top: 66.67%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-border-radius: 8px;
        border-radius: 8px;
        overflow: hidden;
        isolation: isolate;
        position: relative;
        margin-bottom: 25px; }
        .index .blog_list ul li a .thumb img {
          position: absolute;
          left: 0;
          top: 0; }
      .index .blog_list ul li a .text .postdate {
        font-size: .875em;
        line-height: 1;
        margin-bottom: .6em; }
      .index .blog_list ul li a .text .posttitle {
        font-weight: 600;
        font-size: clamp(15px, 1.8vw, 20px);
        line-height: 1.4;
        margin-bottom: .5em; }
      .index .blog_list ul li a .text .excerpt {
        font-weight: 500;
        font-size: .875em; }
      .index .blog_list ul li a .text .cat {
        margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
        gap: 4px; }
        .index .blog_list ul li a .text .cat span {
          display: block;
          font-size: .7em;
          -webkit-border-radius: 66px;
          border-radius: 66px;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          padding: 5px 15px 4px;
          line-height: 1;
          background-color: #FFF; }

/* ---------- Entry-Page ---------- */
@keyframes postinfo {
  0% {
    opacity: 0;
    filter: blur(10px);
    translate: 0 20px; }
  100% {
    opacity: 1;
    filter: none;
    translate: 0; } }
.entry .post-title {
  padding-top: 260px; }
  .entry .post-title .date {
    font-size: .875em;
    line-height: 1;
    margin-bottom: 3px; }
  .entry .post-title .title {
    font-size: clamp(18px, 3vw, 34px);
    font-weight: 700;
    line-height: 1.6;
    --ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
    --ease-in-quad: cubic-bezier(0.11, 0, 0.5, 0);
    --delay: 0.06s; }
    .entry .post-title .title.splitText .char {
      animation: fadein 0.7s var(--ease-in-quad) calc(var(--delay) * var(--index)) 1, enmove 1.4s var(--ease-out-quart) calc(var(--delay) * var(--index)) 1;
      animation-fill-mode: both; }
  .entry .post-title .sub .author {
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 0 10px; }
    .entry .post-title .sub .author .photo {
      flex-shrink: 0;
      width: 45px;
      height: 45px;
      -webkit-border-radius: 100%;
      border-radius: 100%;
      overflow: hidden; }
    .entry .post-title .sub .author .name {
      font-size: .875em; }
  .entry .post-title .sub ul.cat {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px; }
    .entry .post-title .sub ul.cat li a {
      display: block;
      font-size: .875em;
      -webkit-border-radius: 66px;
      border-radius: 66px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding: 5px 15px 6px;
      line-height: 1;
      background-color: #FFF; }
.entry #postbody {
  margin: 60px auto 120px; }
  .entry #postbody .postbody .wp-block-image {
    max-width: 700px;
    height: auto;
    margin-bottom: 1em; }
  .entry #postbody .postbody p {
    margin-bottom: 1em; }
.entry .auth_info {
  margin: 80px 0 130px; }
  .entry .auth_info .auth_main {
    background-color: #FFF;
    border-radius: 6px;
    padding: 40px 50px;
    display: flex;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .entry .auth_info .auth_main .prof_area {
      flex-shrink: 0;
      width: 30%;
      margin-right: 40px; }
      .entry .auth_info .auth_main .prof_area .prof {
        display: flex;
        align-items: center;
        gap: 0 10px; }
        .entry .auth_info .auth_main .prof_area .prof .photo {
          flex-shrink: 0;
          width: 120px;
          height: 120px;
          background-color: #FFF;
          border-radius: 100%;
          overflow: hidden; }
          .entry .auth_info .auth_main .prof_area .prof .photo img {
            width: 100%; }
        .entry .auth_info .auth_main .prof_area .prof .name {
          line-height: 1; }
          .entry .auth_info .auth_main .prof_area .prof .name span {
            display: block; }
          .entry .auth_info .auth_main .prof_area .prof .name .auth_job {
            font-size: .8em;
            font-weight: 500; }
          .entry .auth_info .auth_main .prof_area .prof .name .auth_name {
            margin-top: 10px;
            font-weight: 700;
            font-size: 1.1em; }
      .entry .auth_info .auth_main .prof_area .comment {
        margin-top: 30px;
        text-align: justify;
        font-size: .875em;
        line-height: 1.4; }
    .entry .auth_info .auth_main .posts {
      padding: 5px 0 0 40px;
      border-left: #B09F94 solid 1px;
      width: 100%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .entry .auth_info .auth_main .posts .en {
        line-height: 1;
        font-size: .875em;
        margin-bottom: 20px; }
      .entry .auth_info .auth_main .posts > ul li + li {
        margin-top: 25px; }
      .entry .auth_info .auth_main .posts > ul li a {
        display: flex;
        justify-content: space-between;
        width: 100%;
        line-height: 1.4; }
        @media (any-hover: hover) {
          .entry .auth_info .auth_main .posts > ul li a:hover {
            opacity: .7; } }
        .entry .auth_info .auth_main .posts > ul li a .image {
          position: relative;
          width: 40.7%;
          flex-shrink: 0; }
          .entry .auth_info .auth_main .posts > ul li a .image figure {
            height: 0;
            width: 100%;
            padding-top: 66%;
            position: relative;
            -webkit-border-radius: 3px;
            border-radius: 3px;
            overflow: hidden; }
            .entry .auth_info .auth_main .posts > ul li a .image figure img {
              position: absolute;
              left: 0;
              top: 0; }
              .entry .auth_info .auth_main .posts > ul li a .image figure img.objectfit {
                object-fit: contain; }
        .entry .auth_info .auth_main .posts > ul li a .text {
          width: 100%;
          padding-left: 30px;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          text-align: justify; }
          .entry .auth_info .auth_main .posts > ul li a .text .date {
            display: block;
            line-height: 1;
            letter-spacing: 0;
            font-size: .75em;
            margin-bottom: 10px; }
          .entry .auth_info .auth_main .posts > ul li a .text .title {
            font-size: .875em; }
      .entry .auth_info .auth_main .posts .auth_link {
        margin-top: 25px;
        display: flex;
        align-items: center;
        justify-content: flex-end; }
        .entry .auth_info .auth_main .posts .auth_link a {
          display: inline-block;
          font-size: .75em;
          font-weight: 700;
          border: #362929 1px solid;
          padding: 6px 20px;
          border-radius: 99px;
          line-height: 1.3;
          text-align: center; }

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

 Responsive-Breakpoint-Ex ( 1600px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 1600px) {
  /* ---------- Index-Page ---------- */
  .index .blog_list ul {
    margin: 0 -15px; }
    .index .blog_list ul li {
      padding: 25px 15px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-1 ( 1300px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 1300px) {
  #select_navi .selectarea {
    gap: 0 30px; }
    #select_navi .selectarea dl {
      width: 33.3333333333%;
      flex-direction: column;
      text-align: center; }
      #select_navi .selectarea dl dd {
        padding: 10px 0 0; }

  /* ---------- archive-title ---------- */
  #archive_title {
    padding-top: 160px; }
    #archive_title .title .ja {
      padding: 0 90px; }
      #archive_title .title .ja::before, #archive_title .title .ja::after {
        width: 80px; }
      #archive_title .title .ja img {
        width: 90px; }
    #archive_title .title .en_svg {
      max-width: 420px; }
    #archive_title .topimg .img1 {
      width: 38vw; }
    #archive_title .topimg .img2 {
      left: 22vw;
      width: 18%; }
    #archive_title .topimg .img3 {
      top: 13vw;
      left: 3vw;
      width: 21%; }

  /* ---------- Category-Page ---------- */
  .category_title {
    margin-bottom: 35px; }

  /* ---------- Index-Page ---------- */
  .index .blog_list ul {
    margin: 0 -15px; }
    .index .blog_list ul li {
      padding: 25px 15px; }

  /* ---------- Entry-Page ---------- */
  .entry .post-title .sub ul.cat {
    margin-top: 25px; }
  .entry .auth_info .auth_main {
    padding: 40px; }
    .entry .auth_info .auth_main .prof_area {
      margin-right: 30px; }
    .entry .auth_info .auth_main .posts {
      padding: 5px 0 0 30px; }
      .entry .auth_info .auth_main .posts .en {
        margin-bottom: 15px; }
      .entry .auth_info .auth_main .posts > ul li + li {
        margin-top: 20px; }
      .entry .auth_info .auth_main .posts .auth_link {
        margin-top: 20px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-2 ( 959px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 959px) {
  #select_navi {
    margin: 40px auto 90px; }
    #select_navi .selectarea {
      flex-direction: column;
      gap: 15px;
      padding: 20px 30px; }
      #select_navi .selectarea dl {
        flex-direction: row;
        width: 100%; }
        #select_navi .selectarea dl dt {
          text-align: right;
          width: 140px;
          flex-shrink: 0; }
        #select_navi .selectarea dl dd {
          padding: 0;
          width: 100%;
          box-sizing: border-box; }

  /* ---------- archive-title ---------- */
  #archive_title {
    padding-top: 120px; }
    #archive_title .title .ja {
      padding: 0 70px; }
      #archive_title .title .ja::before, #archive_title .title .ja::after {
        width: 70px; }
      #archive_title .title .ja img {
        margin-right: 5px;
        width: 80px; }
    #archive_title .title .en_svg {
      max-width: 360px; }
    #archive_title .topimg .img1 {
      width: 43vw; }
    #archive_title .topimg .img2 {
      left: 26vw;
      width: 20%; }
    #archive_title .topimg .img3 {
      top: 16vw;
      width: 23%; }

  /* ---------- Category-Page ---------- */
  .category_title {
    margin-bottom: 20px; }
    .category_title p:not([class]) span {
      margin-right: 10px; }

  /* ---------- Index-Page ---------- */
  .index .blog_list ul {
    margin: 0 -20px; }
    .index .blog_list ul li {
      width: 50%;
      padding: 25px 20px; }

  /* ---------- Entry-Page ---------- */
  .entry .post-title {
    padding-top: 200px; }
    .entry .post-title .sub ul.cat {
      margin-top: 20px; }
  .entry #postbody {
    margin: 45px auto 90px; }
  .entry .auth_info {
    margin: 60px 0 100px; }
    .entry .auth_info .auth_main {
      padding: 35px 30px; }
      .entry .auth_info .auth_main .prof_area {
        width: 34%;
        margin-right: 25px; }
        .entry .auth_info .auth_main .prof_area .prof .photo {
          width: 90px;
          height: 90px; }
        .entry .auth_info .auth_main .prof_area .comment {
          margin-top: 25px; }
      .entry .auth_info .auth_main .posts {
        padding: 5px 0 0 25px; }
        .entry .auth_info .auth_main .posts > ul li + li {
          margin-top: 15px; }
        .entry .auth_info .auth_main .posts > ul li a .image {
          width: 36%; }
          .entry .auth_info .auth_main .posts > ul li a .image figure {
            height: 100%;
            width: 100%;
            padding-top: 0;
            position: static; }
            .entry .auth_info .auth_main .posts > ul li a .image figure img {
              position: static; }
        .entry .auth_info .auth_main .posts > ul li a .text {
          padding-left: 20px; }
        .entry .auth_info .auth_main .posts .auth_link a {
          padding: 6px 15px; } }
/* ------------------------------------------------------------------------------------------------------------------------

 Responsive-Breakpoint-3 ( 644px )
 
------------------------------------------------------------------------------------------------------------------------ */
@media only screen and (max-width: 644px) {
  #select_navi {
    margin: 30px auto 50px; }
    #select_navi .selectarea {
      gap: 12px;
      padding: 15px; }
      #select_navi .selectarea dl {
        gap: 10px; }
        #select_navi .selectarea dl dt {
          letter-spacing: 0;
          width: 100px; }

  /* ---------- archive-title ---------- */
  #archive_title {
    padding-top: 120px; }
    #archive_title .title .ja {
      padding: 0 30px; }
      #archive_title .title .ja::before, #archive_title .title .ja::after {
        width: 30px; }
      #archive_title .title .ja img {
        width: 60px; }
    #archive_title .title .en_svg {
      margin: 12px auto;
      max-width: 260px; }
    #archive_title .topimg .img1 {
      width: 46vw; }
    #archive_title .topimg .img2 {
      left: 16vw;
      width: 28%; }
    #archive_title .topimg .img3 {
      top: auto;
      bottom: -80px;
      left: -3vw;
      width: 35%; }

  /* ---------- Category-Page ---------- */
  .category_title {
    margin-bottom: 15px; }
    .category_title p:not([class]) span {
      margin-right: 6px; }

  /* ---------- Index-Page ---------- */
  .index .blog_list ul {
    margin: 0 -10px; }
    .index .blog_list ul li {
      padding: 20px 10px; }
      .index .blog_list ul li a .thumb {
        -webkit-border-radius: 4px;
        border-radius: 4px;
        margin-bottom: 15px; }
      .index .blog_list ul li a .text .posttitle {
        margin-bottom: .7em; }
      .index .blog_list ul li a .text .excerpt {
        line-height: 1.4; }
      .index .blog_list ul li a .text .cat {
        margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
        gap: 4px; }
        .index .blog_list ul li a .text .cat span {
          padding: 3px 10px 2px; }

  /* ---------- Entry-Page ---------- */
  .entry .post-title {
    padding-top: 0; }
    .entry .post-title .sub .author {
      margin-top: 10px;
      gap: 0 6px; }
      .entry .post-title .sub .author .photo {
        width: 40px;
        height: 40px; }
    .entry .post-title .sub ul.cat {
      gap: 4px; }
      .entry .post-title .sub ul.cat li a {
        padding: 4px 10px 5px; }
  .entry #postbody {
    margin: 35px auto 60px; }
  .entry .auth_info {
    margin: 50px 0 80px; }
    .entry .auth_info .auth_main {
      border-radius: 4px;
      padding: 30px 20px;
      flex-wrap: wrap;
      flex-direction: column;
      justify-content: center; }
      .entry .auth_info .auth_main .prof_area {
        width: 100%;
        margin: 0 0 20px;
        text-align: center; }
        .entry .auth_info .auth_main .prof_area .prof {
          justify-content: center;
          gap: 0 7px; }
          .entry .auth_info .auth_main .prof_area .prof .photo {
            width: 80px;
            height: 80px; }
          .entry .auth_info .auth_main .prof_area .prof .name {
            text-align: left; }
        .entry .auth_info .auth_main .prof_area .comment {
          margin-top: 10px; }
      .entry .auth_info .auth_main .posts {
        padding: 15px 10px 0;
        border-top: #B09F94 solid 1px;
        border-left: none; }
        .entry .auth_info .auth_main .posts .en {
          margin-bottom: 10px; }
        .entry .auth_info .auth_main .posts > ul li a .image {
          width: 40.7%; }
        .entry .auth_info .auth_main .posts > ul li a .text {
          padding-left: 15px; }
        .entry .auth_info .auth_main .posts .auth_link {
          justify-content: center; }
          .entry .auth_info .auth_main .posts .auth_link a {
            padding: 4px 10px; } }
