@charset "UTF-8";

/*!
Theme Name: soundsleepin
Description: soundsleepin専用の子テーマ
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
body {
  background-color: #f0f8ff;
}

a {
  color: #64a6ff;
}

a:hover {
  color: #328bff;
}

.article h1,
.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
  font-weight: normal;
}

.logo-text {
  padding: 20px 0 0;
  line-height: 1;
}

.site-name-text {
  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 200;
  font-style: normal;
}

.site-name-text {
  font-size: 32px;
}

#header-in {
  position: relative;
}

#header-in blockquote {
  font-family: 'Metal', serif;
  font-weight: 400;
  font-style: normal;

  background: none;
  border: none;
  text-align: center;
  padding: 8px 0 30px;
  font-size: 90%;

  color: #888;
}

#header-in blockquote:before,
#header-in blockquote:after {
  display: none;
}

#header-in .english {
  color: #888;
  font-size: 55%;
  position: absolute;
  top: 8px;
  right: 0;
  border: solid 1px #ddd;
  padding: 1px 5px 0px;
  text-decoration: none;
}

.navi-in a {
  color: #555;
  font-size: 15px;
  transition: all 0.3s ease-in-out;
}

.navi-in a:hover {
  background: none;
  opacity: 0.8;
}

.navi-in a::before {
  background: #64a6ff;
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform 0.5s;
}
.navi-in a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.pager-post-navi a .iconfont {
  font-size: 1em;
}

.related-entry-card-title,
.entry-card-title {
  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-size: 115%;
  line-height: 1.4;
}

.related-entry-card-snippet,
.entry-card-snippet {
  color: #666;
  margin: 8px 0 0;
  padding: 0 0.4em;
}

.navi-footer-in > .menu-footer li {
  border: none !important;
}

.entry-title,
.archive-title {
  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 200 !important;
  font-style: normal;
  font-size: 34px;
  margin: 16px 0 40px;
  line-height: 1.3;
}

.post-date .fa,
.ect-vertical-card .entry-card-wrap .post-date .fa,
.ect-vertical-card .entry-card-wrap .post-update .fa {
  display: none;
}

.entry-title,
.archive-title {
  position: relative;
  padding: 0 0 20px;
}

.entry-title:after,
.archive-title:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 13%;
  height: 5px;
  content: '';
  background-color: #b0d1ff;
}

.entry-content {
  font-size: 18px;
}

.article h2 {
  background: none;
  position: relative;
  padding: 2rem 1rem 1rem;
  border-bottom: 3px solid #64a6ff;
}

.article h2:before {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 20%;
  height: 3px;
  content: '';
  background: #b0d1ff;
}

.article h3 {
  background: none;
  padding: 0.5rem 1rem;
  border: none;
  border-left: solid 3px #64a6ff;
}

.eye-catch-wrap {
  display: flex;
  justify-content: center;
}

.entry-categories {
  text-align: right;
}

.entry-categories .cat-link {
  color: var(--cocoon-text-color);
  border: solid 1px var(--cocoon-text-color);
  background: none;
}

.single #author_info {
  border: solid 14px #f0f0f0;
  padding: 30px 50px;
  font-size: 86%;
}

.single #author_info .ttl {
  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 300 !important;
  font-style: normal;
  font-size: 120%;
  border-bottom: solid 1px #ddd;
  margin: 0 0 20px;
}

.single #author_info p {
  margin: 0;
}

.single #author_info .flex {
  display: flex;
}

.single #author_info .flex .profile {
  width: calc(80% - 30px);
  margin: 0 0 0 30px;
}

.single #author_info .flex .profile .txt {
  font-size: 95%;
  padding: 0 0 20px;
  border-bottom: solid 1px #eee;
}

.single #author_info .flex .profile .links {
  margin: 14px 0 0;
  font-size: 90%;
  text-align: right;
}

.single #author_info .flex .image {
  width: 20%;
}

.related-list {
  row-gap: 0;
}

.related-list a {
  font-size: 90%;
}

.related-entry-heading,
.comment-title {
  margin: 50px 0 22px;
  font-size: 130%;
  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 300 !important;
  font-style: normal;
  background: none;
  padding: 6px 0;
  border-bottom: solid 1px #ccc;
}

.related-entry-heading .sub-caption {
  font-size: 65%;
  margin: 0 0 0 7px;
}

body.page .date-tags {
  display: none;
}

.cat-label,
.entry-categories-tags .tax-icon,
#breadcrumb .fa-home,
#breadcrumb .fa-folder {
  display: none;
}

.sidebar {
  font-size: 90%;
}

.sidebar h2,
.sidebar h3 {
  font-size: 110%;

  font-family: 'Noto Serif JP', serif;
  font-optical-sizing: auto;
  font-weight: 300 !important;
  font-style: normal;

  background: none;
  padding: 6px 0;
  border-bottom: solid 1px #ccc;
}

.a-wrap:hover {
  opacity: 0.9;
}

.widget-entry-card {
  display: flex;
  align-items: center;
  font-size: 15px;
  position: relative;
  margin: 0;
  padding: 4px;
}

.widget-entry-cards .a-wrap {
  padding: 0;
}

.widget-entry-card-content {
  margin: 0 0 0 4px;
  width: calc(70% - 4px);
}

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

.widget-entry-cards:not(.large-thumb-on) .card-title {
  font-size: 85%;
}

#sidebar .search-edit {
  font-size: 90%;
}

.widget_categories ul {
  padding: 0 0 0 1.2em;
  font-size: 90%;
}

.widget_categories ul li {
  list-style: disc;
  margin: 0 0 6px;
}

.widget_categories ul li a {
  padding: 0;
  text-decoration: underline;
}

.widget_categories ul li a:hover {
  background: none;
  opacity: 0.8;
}

.footer-meta {
  display: none;
}

.pagination-next {
  display: none;
}

.page-numbers {
  color: #64a6ff;
  border: solid 1px #c1e2ff;
  border-radius: 46px;
}

a.page-numbers:hover {
  color: #64a6ff !important;
  background: none !important;
  opacity: 0.7;
}

.pagination .current {
  color: #fff;
  background-color: #99c4ff;
}

.page-numbers.prev,
.page-numbers.next {
  color: #64a6ff;
  border: none;
  font-size: 120%;
}

.page-numbers.prev:hover,
.page-numbers.next:hover {
  color: #64a6ff;
  background: none;
  opacity: 0.7;
}

.breadcrumb a {
  text-decoration: underline;
}

.footer-bottom.fnm-text-width .menu-footer li a:hover {
  background: none;
  opacity: 0.8;
}

.footer-bottom.fnm-text-width .menu-footer li a {
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.footer-bottom.fnm-text-width .menu-footer li a::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #64a6ff;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform 0.5s;
}

.footer-bottom.fnm-text-width .menu-footer li a:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

.copyright {
  font-size: 90%;
  margin-top: 40px;
  color: #666;
}

.archive-title span {
  display: none;
}

.display-none {
  display: none !important;
}

table.contact {
  font-size: 90%;
}

table.contact th {
  text-align: left;
}

table.contact th .required {
  color: red;
  font-size: 90%;
}

table.contact td input[name='postal_code1'],
table.contact td input[name='postal_code2'] {
  width: 6em;
}

.wpcf7 .check p:nth-child(2) {
  text-align: center;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px) {
  #navi .navi-in > .menu-mobile {
    padding: 0px 16px;
  }

  #navi .navi-in > .menu-mobile li {
    width: calc(100% / 3);
    height: 40px;
    line-height: 40px;
    padding: 0;
  }

  #navi .navi-in > .menu-mobile li a {
    font-size: 78%;
  }
}

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

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

  #header-in .english {
    right: 8px;
  }

  .related-entry-card-title,
  .entry-card-title {
    font-size: 90%;
  }

  .ect-vertical-card {
    column-gap: 2%;
  }

  main.main,
  div.sidebar {
    margin: 0;
    padding: 20px 16px;
  }

  .content {
    margin-top: 6px;
  }

  .entry-title,
  .archive-title {
    font-size: 25px;
  }

  .entry-content {
    font-size: 16px;
  }

  .navi-footer-in a {
    font-size: 100%;
  }

  .footer-bottom {
    font-size: 80%;
  }

  .single #author_info {
    border: solid 8px #f0f0f0;
    padding: 20px 30px;
    font-size: 85%;
  }

  .single #author_info .flex {
    flex-flow: column;
  }

  .single #author_info .flex .image {
    width: 40%;
    margin: 0 auto;
  }

  .single #author_info .flex .profile {
    width: 100%;
    margin: 0;
  }

  .single #author_info .flex .profile .name {
    display: block;
    font-size: 95%;
  }

  .single #author_info .flex .profile .name p {
    text-align: center;
  }

  .single #author_info .flex .profile .links {
    text-align: center;
  }

  .related-entry-heading,
  .comment-title {
    text-align: center;
  }

  .related-entry-card-thumb {
    width: 30%;
  }

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

  .related-entry-card-title {
    font-size: 105%;
  }

  table.contact {
    font-size: 100%;
  }

  table.contact tr {
    display: block;
    margin: 0 0 20px;
  }

  table.contact th,
  table.contact td {
    display: block;
  }

  table.contact th {
    text-align: center;
  }

  table.contact th p,
  table.contact td p {
    margin: 10px;
  }
}
