@charset "UTF-8";
/**
 * 梅子公式サイトCSS
 */
body {
  background-color: #f3f3f1;
  color: #2b2b2b;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", "Meiryo", sans-serif, serif;
  margin: 0;
}
@media (max-width: 1000px) {
  body {
    font-size: 0.9em;
  }
}

body a:hover {
  text-decoration: underline;
}

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
}

h1, h2, h3 {
  color: #2b2b2b;
  margin: 1% 0 1% 0;
}

h1 {
  font-size: 1.7em;
}

h2 {
  font-size: 1.5em;
}

h3 {
  font-size: 1.3em;
}

table {
  border-collapse: collapse;
  width: 100%;
}

table th, td {
  border: solid 1px #ec8531;
  padding: 1%;
}

button {
  cursor: pointer;
}

.txt-left {
  text-align: left;
}

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

.align-center,
.aligncenter {
  text-align: center;
}

.main {
  margin: 1% 10%;
}
@media (max-width: 1000px) {
  .main {
    margin: 1%;
  }
}

.header {
  background-color: #f7fcfe;
  margin: 0 auto;
  text-align: center;
  padding: 5px 0 20px 0;
  font-size: 1.5em;
}
@media (max-width: 1000px) {
  .header {
    font-size: 1.1em;
    padding: 5px 0 0 0;
  }
}

.header a {
  text-decoration: none;
  color: #ec8531;
}

.cms-name img {
  margin: 0 auto;
  width: 100%;
}

.header-icon {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: 1%;
  margin: 0 auto;
  font-size: 0.7em;
}

.header-icon a {
  text-decoration: none;
  color: #2b2b2b;
}

.header-icon img {
  width: 48px;
}

.header-icon span {
  padding-left: 0.5%;
}

.header-navi {
  background-color: #FF9933;
  border-bottom: solid 2px #FF9933;
  padding: 2% 0;
  margin-top: 0;
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  width: 100%;
}
@media (max-width: 1000px) {
  .header-navi {
    flex-wrap: wrap;
  }
}

.header-navi a {
  text-decoration: none;
  color: #f7fcfe;
}

.header-navi a:hover {
  color: #0095d9;
}

.header-navi li {
  list-style: none;
}
@media (max-width: 1000px) {
  .header-navi li {
    margin: 1%;
  }
}

.main-contents {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  margin: 0;
}
@media (max-width: 1000px) {
  .main-contents {
    flex-direction: column;
  }
}

.link_style_none {
  text-decoration: none;
}

.menu {
  width: 35%;
  max-width: 400px;
  height: 100%;
  margin-left: 1%;
  background-color: #f7fcfe;
  border-radius: 5px;
  font-size: 0.9em;
}
@media (max-width: 1000px) {
  .menu {
    width: 100%;
    max-width: 100%;
    margin: 5% 0;
  }
}

.menu ul {
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 1% 5%;
  margin: 0;
}

.menu li {
  margin: 1.5% 0;
  padding: 5% 1%;
  text-align: left;
}
@media (max-width: 1000px) {
  .menu li {
    margin: 1% 0;
    padding: 1% 0;
  }
}

.menu a {
  display: block;
}

.menu h3 {
  font-size: 1.1em;
  font-weight: bold;
  border-bottom: 3px solid #FF9933;
  margin: 5% 5% 0;
}

.sidebar-article-list {
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 3% 2%;
  margin: 2% 2%;
}

.sidebar-article-list h4 {
  margin: 1%;
}

.sidebar-article-list a {
  text-decoration: none;
  color: #2b2b2b;
}

.sidebar-list-icatch {
  text-align: center;
}

.sidebar-list-icatch img {
  width: 100%;
}
@media (max-width: 1000px) {
  .sidebar-list-icatch img {
    max-width: 300px;
  }
}

.sidebar_category li {
  background-color: transparent;
  border: none;
  color: #2b2b2b;
  text-align: left;
  padding: 1%;
}
@media (max-width: 1000px) {
  .sidebar_category li {
    padding: 0 1%;
  }
}

.sidebar_category li a {
  color: #2b2b2b;
  -webkit-text-decoration: 0.5px underline;
          text-decoration: 0.5px underline;
}

.sidebar_profile {
  text-align: center;
}

.sidebar_profile img {
  max-width: 200px;
}

.sidebar_profile_text {
  margin: 5%;
}

.sidebar_profile_text a {
  color: #0095d9;
  text-decoration: none;
}

.sidebar_profile_text ul {
  margin: 1% 3%;
  padding: 1%;
}

.sidebar_profile_text li {
  margin: 0;
  padding: 0.5% 2%;
  list-style: disc;
}

.sidebar-archive-list li {
  padding: 0;
}

.sidebar-archive-list a {
  color: #2b2b2b;
}

.top-contents {
  width: 100%;
}

.top-contents h3 {
  font-size: 1.1em;
  border-bottom: none;
  max-width: 600px;
}

.top-contents a {
  text-decoration: none;
  color: #2b2b2b;
}

.top-main {
  margin: 1%;
}

.top-contents-area {
  width: 100%;
  max-width: 1500px;
  border-radius: 5px;
  background-color: #f7fcfe;
}
@media (max-width: 1000px) {
  .top-contents-area {
    width: 100%;
  }
}

.top-contents-area h2 {
  text-align: center;
  font-size: 2em;
  color: #ec8531;
}

.top-article-area {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
@media (max-width: 1000px) {
  .top-article-area {
    flex-wrap: column;
  }
}

.category-top {
  text-align: center;
}

.contents {
  width: 80%;
  max-width: 1000px;
  border-radius: 5px;
  background-color: #f7fcfe;
}
@media (max-width: 1000px) {
  .contents {
    width: 100%;
  }
}

.contents-area {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.article-contents img {
  max-width: 100%;
}

.article-contents a {
  color: #0095d9;
}

.article-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  padding: 1%;
  margin: 1%;
  border: 0.5px dotted #FF9933;
  border-radius: 5px;
  width: 45%;
}
@media (max-width: 1000px) {
  .article-list {
    flex-direction: column;
    width: 100%;
  }
}

.post_date {
  text-align: right;
  font-size: 0.8em;
  margin: 0.5%;
  padding-right: 3px;
}

.ad {
  max-width: 100%;
  text-align: center;
  margin: 1%;
}
@media (max-width: 1000px) {
  .ad {
    margin: 1.5% 0;
    text-align: left;
  }
}

.list-icatch img {
  max-width: 480px;
  min-width: 480px;
  height: 380px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1000px) {
  .list-icatch img {
    max-width: 100%;
    min-width: 100%;
    height: auto;
  }
}

.article-area {
  padding: 1.5%;
}

.article-area h1 {
  border-bottom: 5px solid #FFCC66;
  position: relative;
}

.article-area h2 {
  border-bottom: 5px solid #FFCC66;
  position: relative;
}

.article-area h3,
.article-area h4,
.article-area h5 {
  border-bottom: 3px solid #FFCC66;
  position: relative;
}

.article-area h1:after,
.article-area h2:after,
.article-area h3:after,
.article-area h4:after,
.article-area h5:after {
  content: "";
  display: block;
  overflow: hidden;
  width: 30%;
  border-collapse: collapse;
  position: absolute;
}

.article-area h1:after,
.article-area h2:after {
  border-bottom: 5px solid #FF9933;
}

.article-area h3:after,
.article-area h4:after,
.article-area h5:after {
  border-bottom: 3px solid #FF9966;
}

.table-of-contents h2,
.table-of-contents h2:after {
  border: none;
}

.article_title {
  font-size: 2em;
}
@media (max-width: 1000px) {
  .article_title {
    font-size: 1.5em;
  }
}

.article_title > a {
  color: #2b2b2b;
}

.article_post {
  font-size: 0.9em;
  text-align: right;
}

.article_icatch {
  text-align: center;
  margin: 5%;
}

.article_icatch img {
  max-width: 100%;
}

.article_category {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding: 0;
  margin: 0.5%;
}

.article_category > li {
  list-style: none;
  margin: 0.5%;
  padding: 0.5% 1%;
  font-size: 0.7em;
  border: 1px solid #ec8531;
  border-radius: 5%;
  background-color: #ec8531;
}

.article_category > li > a {
  color: #FFFFFE;
}

.article_contents img {
  width: 100%;
}

.author_data {
  text-align: right;
  font-size: 0.9em;
}

.article_pager {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media (max-width: 1000px) {
  .article_pager {
    flex-wrap: wrap;
  }
}

.article_pager a {
  color: #2b2b2b;
}

.article_pager > div {
  margin: 1%;
  width: 50%;
}
@media (max-width: 1000px) {
  .article_pager > div {
    width: 100%;
  }
}

.article_pager_box {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-around;
}

.article_pager_box a {
  color: #2b2b2b;
}

.article_pager_box > div {
  width: 50%;
  margin: 0.5%;
  font-size: 0.9em;
}

.pager_icatch,
.related_icatch {
  max-width: 100%;
}

.article_related {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: start;
  align-items: flex-start;
  padding: 0;
}
@media (max-width: 1000px) {
  .article_related {
    text-align: center;
  }
}

.article_related a {
  text-decoration: none;
  color: #2b2b2b;
  font-size: 0.9em;
}

.article_related > li {
  list-style: none;
  width: 30.3%;
  padding: 1.5%;
}
@media (max-width: 1000px) {
  .article_related > li {
    width: 100%;
    margin-top: 5%;
  }
}

/**
 * Pager
 */
.pagination {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.pagination > li {
  list-style: none;
  margin: 0 0.5%;
  font-size: 1.1em;
}

.pagination > li:not(.pagerbtn) {
  border: 1.5px #f7fcfe solid;
}

.pagination > li > a {
  background-color: #f7fcfe;
  color: #2b2b2b;
  display: block;
  padding: 10px;
  text-decoration: none;
}

.pagination > .active,
.pagination > .disabled {
  padding: 10px;
}

.pagination > .active {
  border: 1.5px #FF9933 solid;
  border-radius: 5px;
  background-color: #FF9933;
  color: #FFFFFE;
}

/**
 * footer
 */
.footer-area {
  background-color: #FF9933;
  padding: 1% 1% 3% 1%;
  color: #f7fcfe;
}

.footer-area a {
  text-decoration: none;
  color: #f7fcfe;
}

.footer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 1% 3%;
  padding: 0;
  font-size: 0.9em;
}

.footer ul {
  padding: 0;
  margin-bottom: 5%;
}

.footer li {
  list-style: none;
  margin: 1%;
}

.footer-child {
  padding: 1%;
  margin-left: 20%;
  font-size: 0.9em;
  width: 100%;
  word-break: keep-all;
}

.copyright {
  text-align: center;
  font-size: 0.8em;
}

.sns-btn > a img {
  width: 80%;
}

/**
 * 目次
 */
.table-of-contents {
  border: 3px dashed rgba(236, 133, 49, 0.7);
  background-color: rgba(236, 133, 49, 0.1);
  border-radius: 5px;
  padding: 2% 5%;
}
@media (max-width: 1000px) {
  .table-of-contents {
    padding: 2%;
  }
}

.table-of-contents > ul {
  list-style: none;
  padding-inline-start: 1%;
  font-size: 0.9em;
}

.lv-2 {
  margin-top: 1%;
}

.lv-3 {
  text-indent: 1em;
}

.lv-4 {
  text-indent: 2em;
}

/**
 * Preview
 */
.preview-row {
  font-size: 2em;
  color: #FFFFFE;
  background-color: #e2041b;
  text-align: center;
}
