@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/* 共通 */

.wrap {
  position: relative;
  z-index: 1;
}

.sidebar h3 {
  background-color: inherit;
  padding: 0;
  margin: 15px 0;
  border-radius: inherit;
  border-bottom: solid 4px #5060d7;
}

.article h2 {
  font-size: 20px;
  padding: 0.8em 1em;
  color: #ffffff;
  background-color: #5060d7;
  border-radius: 5px;
  margin-top: 4.5em;
}

.article h3 {
  border-left: 7px solid #5060d7;
  background-color: #eeedff;
  border-right: none;
  border-top: none;
  border-bottom: none;
  font-size: 20px;
  padding: 6px 12px 6px 12px;
  margin-bottom: 1em;
}

.widget-sidebar .textwidget {
  text-align: right;
  font-size: 15px;
  font-weight: bold;
  margin-top: -5px;
  margin-bottom: 35px;
}

.widget-sidebar .textwidget a {
  text-decoration: none;
  position: relative;
  background: #756bff;
  font-weight: normal;
  padding: 0.4em 1.6em 0.4em 0.6em;
  border-radius: 5px;
  font-size: 14px;
  color: #fff;
}

.widget-sidebar .textwidget a:hover {
  color: #e0ddff;
}

.widget-sidebar .textwidget a::after {
  position: absolute;
  content: "";
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
  transform: translateY(-50%) translateX(-50%) rotate(45deg);
  right: 4px;
  -webkit-transition: .4s;
  transition: .4s;
}

.widget-sidebar {
  margin-bottom: 0 !important;
}

.widget-sidebar .widget-entry-cards {
  margin-bottom: 0;
}

.main,
.sidebar {
  background: inherit;
}

#header {
  max-width: 1256px;
  margin: 0 auto;
  padding: 0 15px;
}

.content-top {
  margin: 0;
  position: relative;
  background-position: center;
  height: 390px;
}

.content-top a {
  display: flex;
}

.content-top::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  background-image: url(http://ninjacode.work/magazine/wp-content/themes/cocoon-child-master/images/back.png);
  background-position: center;
  background-color: #f8f4ff;
}

.widget-index-top-title {
  font-size: 28px;
  font-weight: bold;
  border-bottom: solid 4px #5060d7;
}

.logo-image {
  width: 380px;
  margin: 0 auto;
  display: flex;
  padding: 20px 0 16px;
}

@media screen and (max-width: 480px) {
  .logo-image {
    width: 100%;
  }
}

.logo-image span {
  display: flex;
}

.navi {
  background-color: #5060d7;
}

.navi-in a {
  font-size: 15px;
}

.entry-card-snippet {
  display: none;
}

.cl-slim .navi-in>ul li {
  height: 50px;
  line-height: 50px;
  position: relative;
}

.cl-slim .navi-in>ul li+li::before {
  display: block;
  content: "";
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 0;
  width: 1px;
  background: #ffffffb5;
}

.des_text_area {
  margin-bottom: 40px;
}

.des_text_area p {
  font-size: 15px;
  text-align: justify;
}

.navi-in a {
  color: #fff;
}

.fa-fw {
  display: none;
}

.entry-card-meta {
  bottom: 16px;
  right: 22px;
}

.e-card-info {
  justify-content: flex-start;
}

.e-card-info>span {
  margin-right: 0;
  color: #a5a5a5;
}

.pagination-next {
  display: none;
}

.archive-title span {
  display: none;
}

.tagline {
  font-size: 16px;
  font-weight: bold;
  margin: 1.2em 0em 0;
}

.a-wrap {
  padding: 0;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 1px 3px 3px rgba(166, 166, 166, 0.17);
  margin-bottom: 3.5%;
  overflow: hidden;
}

.widget-entry-card {
  display: flex;
}

.widget-entry-cards .a-wrap {
  padding: 0;
  margin-bottom: 18px;
}

.widget-entry-cards figure {
  margin: 0;
  display: flex;
  float: none;
  flex: none;
}

.related-entry-card {
  display: flex;
}

.entry-card-content {
  padding-bottom: 0.4em;
}

.entry-card-thumb {
  float: none;
  margin: 0;
  display: flex;
  flex: none;
}

.widget-entry-card-content {
  margin: 0;
  padding: 12px 10px;
}

.widget-entry-card-content span {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.widget-entry-card-content .card-title {
  font-weight: bold;
}

.cat-label {
  font-size: 13px;
  background-color: #5060d7;
  padding: 2px 10px;
  border-radius: 5px;
}

.card-thumb img {
  object-fit: cover;
}

.entry-card .entry-card-thumb {
  display: flex;
}

.entry-card-title {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.pagination .current {
  background-color: #5060d7;
  color: #fff;
}

.page-numbers {
  background-color: #fff;
  color: #5060d7;
  border-color: inherit;
  border-width: 0;
  border-style: none;
  border: 2px solid #5060d7;
  box-sizing: content-box;
  height: 44px;
  width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.entry-card {
  display: flex;
}

.entry-card-content {
  margin: 0;
  padding: 18px 22px 50px;
}

.pager-post-navi .next-post {
  margin-top: 15px;
}

.pager-post-navi a .iconfont {
  font-size: 1.8em;
  color: #5060d7;
}

.cat-link {
  padding: 4px 12px;
  font-size: 14px;
  border-radius: 4px;
  background-color: #5060d7;
}

.entry-categories-tags .tax-icon {
  display: none;
}

.related-entry-card-thumb {
  margin: 0;
  float: none;
  flex: none;
  display: flex;
}

.related-entry-card-snippet {
  display: none;
}

.related-entry-card-content {
  margin: 0;
}

.related-entry-card-title {
  margin: 0;
  padding: 18px 22px;
}

.footer-bottom-logo img {
  height: auto;
}

.related-entry-heading,
.widget h2 {
  margin: 60px 0 20px;
  font-size: 24px;
  border-bottom: solid 4px #5060d7;
}

.widget-entry-cards figure {
  width: 160px;
}

body.interview-theme #list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

body.interview-theme #list .a-wrap {
  width: calc(93.5%/3) !important;
}

body.interview-theme #list .a-wrap .entry-card {
  flex-direction: column;
}

body.interview-theme #list .a-wrap .entry-card .entry-card-thumb {
  width: 100%;
}

body.interview-theme #list:after {
  content: "";
  display: block;
  width: calc(93.5%/3);
  height: 0;
}

body.interview-theme #categories-2 {
  display: flex;
  justify-content: center;
  align-items: center;
}

body.interview-theme #categories-2 .widget-index-top-title {
  font-size: 20px;
  border-bottom: none;
  margin-right: 12px;
}

body.interview-theme #categories-2 ul {
  display: flex;
}

body.interview-theme #categories-2 ul .cat-item {
  line-height: 1em;
}

body.interview-theme #categories-2 ul .cat-item+.cat-item {
  margin-left: 0.6em;
}

body.interview-theme #categories-2 ul .cat-item a {
  background-color: #5060d7;
  padding: 0.6em 1.2em;
  border-radius: 1.6em;
  color: #fff;
  font-size: 14px;
  border: 2px solid #5060d7;
}

body.interview-theme #categories-2 ul .cat-item.current-cat a {
  background-color: #fff;
  color: #5060d7;
}

/* TOP */
body.home #list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

body.home #list .a-wrap:nth-child(1),
body.home #list .a-wrap:nth-child(2) {
  width: 48.5%;
  display: inline-block;
}

body.home #list .a-wrap:nth-child(3),
body.home #list .a-wrap:nth-child(4),
body.home #list .a-wrap:nth-child(5) {
  width: calc(93.5%/3);
  display: inline-block;
}

body.home #list .a-wrap:nth-of-type(-n+5) .entry-card {
  flex-direction: column;
}

body.home #list .a-wrap:nth-child(n+6) {
  width: 100%;
}

body.home #list .a-wrap:nth-child(n+6) article {
  display: flex;
}

body.home #list .a-wraps .entry-card {
  display: flex;
  flex-direction: column;
}

body.home #list .a-wrap .entry-card .entry-card-thumb {
  width: 100%;
  margin: 0;
}

body.home #list .a-wrap:nth-child(n+6) .entry-card-thumb {
  max-width: 234px;
  flex: none;
}

body.home #list .a-wrap .entry-card .entry-card-content {
  margin-left: 0;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px) {

  /*必要ならばここにコードを書く*/
  #header {
    display: none;
  }

  .menu-drawer li+li {
    border-top: 1px solid #5060d7;
  }

  .menu-drawer a {
    color: #004487;
    font-weight: bold;
    padding: 12px 28px 12px 8px;
    position: relative;
  }

  .navi-menu-close-button {
    text-align: left;
  }

  .navi-menu-close-button {
    position: relative;
    margin-left: 28px;
  }

  .menu-drawer a::after {
    position: absolute;
    content: "";
    vertical-align: middle;
    width: 8px;
    height: 8px;
    border-top: 2px solid #5060d7;
    border-right: 2px solid #5060d7;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
    transform: translateY(-50%) translateX(-50%) rotate(45deg);
    right: 0;
    -webkit-transition: .4s;
    transition: .4s;
  }

  .has-logo-button .logo-menu-button {
    display: flex;
    align-items: center;
  }

  body.home #list .a-wrap:nth-child(1),
  body.home #list .a-wrap:nth-child(2) {
    width: 100%;
    display: flex;
  }

  body.home #list .a-wrap:nth-child(3),
  body.home #list .a-wrap:nth-child(4),
  body.home #list .a-wrap:nth-child(5) {
    width: 100%;
    display: flex;
  }

  body.home #list .a-wrap:nth-of-type(-n+5) .entry-card {
    flex-direction: row;
    width: 100%;
  }

  body.home #list .a-wrap .entry-card .entry-card-thumb {
    max-width: 36%;
    flex: none;
  }

  .content-top {
    height: auto;
  }

  .widget-index-top-title {
    font-size: 20px;
  }

  .related-entry-card-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .related-entry-card-content {
    padding: 12px;
  }

  .related-entry-card-title {
    padding: 0;
  }

  .cat-label {
    font-size: 11px;
    padding: 2px 6px;
  }

  #navi-footer {
    display: none;
  }

  .entry-card-meta {
    bottom: 8px;
    right: 10px;
  }

  .widget-entry-cards figure {
    width: 38%;
  }

  .archive-title {
    font-size: 22px;
  }

  .des_text_area p {
    font-size: 14px;
  }

  .entry-card-content {
    padding: 12px 12px 30px;
  }
}

/*834px以下*/
@media screen and (max-width: 834px) {
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px) {
  /*必要ならばここにコードを書く*/

  .rect-entry-card .card-thumb,
  .entry-card .entry-card-thumb {
    margin: 0;
  }
}



.sp_scroll_banner {
  position: fixed;
  bottom: -110px;
  width: 100%;
  z-index: 99;
  display: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media screen and (max-width: 480px) {
  .sp_scroll_banner {
    display: block !important;
  }
}

.sp_scroll_banner.fadeIn {
  bottom: 0;
}

.sp_scroll_banner a {
  display: flex;
}

.sp_scroll_banner a img {
  width: 100%;
}