@charset "utf-8";
/* Google font Icon */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);

h2,
ul,
li,
p {
  margin: 0;
}

ul,
li {
  list-style: none;
  padding: 0;
}

p {
  letter-spacing: 0;
}

.l__main a:hover {
  text-decoration: unset;
  opacity: .8;
}

.l__main {
  padding: 12.5em 0 6.25em;
}

.side__ttl {
  font-size: 1.125em;
  text-align: center;
  margin-bottom: 1em;
  line-height: 1.65;
}

.page__inner {
  max-width: calc(1180px + 2.5em);
  padding: 0 1.25em;
  margin: 0 auto;
}

.page__ttl,
.page__ttl a {
  font-size: 2.125em;
  margin: 0 0 1.625em;
  text-align: center;
}

.page__ttl a[href="/magazine/"] {
  pointer-events: none;
}

.page__text {
  text-align: center;
}

.main__section {
  margin-top: 2.5em;
}

.main__wrap {
  display: grid;
  gap: 3.25em;
  grid-template-columns: 2fr 0.8fr;
}

.blog__top-contents {
  margin-bottom: 2.25em;
  border-bottom: 1px solid #000000;
  padding-bottom: 1.25em;
}

.blog__photo {
  width: fit-content;
  margin: 0 auto 1.875em;
}

.blog__photo img {
  max-width: 100% !important;
  max-height: 100% !important;
}

.blog__ttl {
  font-size: 1.5em;
  margin: 0 0 0.75em;
}

.blog__another-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.313em;
}

.blog__days {
  display: flex;
  align-items: center;
  gap: 1.563em;
}

.blog__up-day {
  font-size: 0.875em;
  color: #000000;
}

.blog__update-day {
  font-size: 0.875em;
  color: #8B8B8B;
  position: relative;
}

.blog__update-day::before {
  content: '';
  background: #000000;
  width: 0.063em;
  height: 0.75em;
  position: absolute;
  top: 50%;
  left: -0.688em;
  transform: translateY(-50%);
}

.blog__other-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top-tag__wrap {
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.category__name {
  width: fit-content;
  background: #F5F5F5;
  padding: 0.188em 0.5em;
  font-size: 0.875em;
}

.top-tag__list {
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.top-tag__item a {
  font-size: 0.875em;
}

.top-share__wrap {
  display: flex;
  align-items: center;
  gap: 0.75em;
}

.top-share__list {
  display: flex;
  align-items: center;
  gap: 0.938em;
}

.share__icon--x {
  width: 1.563em;
}

.share__icon--insta {
  width: 1.813em;
}

.share__icon--line {
  width: 1.813em;
}

.tag__contents {
  margin-top: 6.25em;
}

.tag__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625em 0.5em;
}

.tag__item a {
  display: block;
  width: fit-content;
  height: fit-content;
  padding: 0.25em 1em;
  background: #fff;
  border: 1px solid #000000;
  font-size: 0.875em;
}

.good_button {
  display: inline-flex;
  gap: 0.625em 0.5em;
}

.material-symbols-outlined {
  color: gray;
  cursor: pointer;
}

.like-toggle {
  padding: 1% 0 0;
  transform: scale(1);
  transition: transform 0.2s ease;
}

.like-toggle:hover {
  opacity: 0.7;
}

.like-toggle:active {
  transform: scale(0.9);
}

.liked {
  color: rgb(255, 0, 0) !important;
}

.material-symbols-outlined.liked {
  font-variation-settings:
    'FILL' 1,
    'wght' 400,
    'GRAD' 0,
    'opsz' 60 !important
}

.blog__more {
  margin-top: 2.75em;
}

.blog__more a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 17.5em;
  height: 3.313em;
  margin: 0 auto;
  border: 1px solid #000000;
  border-radius: 1.688em;
  font-size: 1em;
  background: #fff;
}

[class*="side__box"] {
  border-bottom: 1px solid #DEDEDE;
  padding-bottom: 1.25em;
}

.side__box:not(:last-of-type) {
  margin-bottom: 1.625em;
}

.side__contents .side__box--rec {
  padding-bottom: 1em;
  margin-bottom: 1.688em;
}

.recommend__item:not(:last-child) {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px solid #DEDEDE;
}

.recommend__item a {
  display: flex;
  justify-content: flex-start;
  gap: 0.5em;
}

.recommend__img {
  height: 4.5em;
  aspect-ratio: 125 / 86;
}

.recommend__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.recommend__detail {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 15.125em;
}

.recommend__ttl {
  font-size: 0.75em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.recommend__category {
  font-size: 0.75em;
  background: #F5F5F5;
  padding: 0.188em 0.5em;
  width: fit-content;
}

.side__tag-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5em;
}

.side__tag-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: fit-content;
  border: 1px solid #000000;
  background: #fff;
  font-size: 0.75em;
  padding: 0.188em 0.938em;
  letter-spacing: 0.02em;
}

.side__sns-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5em;
}

.side__sns-item:first-child a {
  display: block;
  width: 2.125em;
}

.side__sns-item:last-child a {
  display: block;
  width: 2.5em;
}

/****************************** 本文 ******************************/
.mz-h2 {
  font-size: 20px;
  line-height: 1.3;
  border-left: 5px solid #ccc;
  padding: 3px 10px;
}

blockquote {
  background-color: rgb(238, 238, 238);
  padding: 5px 10px;
}

.mz-paragraph {
  margin: 0;
}

.mz-bold {
  font-weight: bold;
}

.mz-italic {
  font-style: italic;
}

.mz-underline {
  text-decoration: underline;
}

.mz-strikethrough {
  text-decoration: line-through;
}

.mz-underline.mz-strikethrough {
  text-decoration: underline line-through;
}

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

.mz-center {
  text-align: center;
}

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

.mz-toc {
  border: 1px solid #8c8c8c;
  background-color: #f9f9f9;
  padding: 20px;
  margin: 10px 0;
}

.mz-toc .mz-ul {
  list-style: none;
}

.mz-toc .mz-li {
  margin: 0;
}

.mz-toc strong {
  padding: 3px;
  font-size: small;
  white-space: pre-wrap;
}

.mz-toc a span {
  color: rgb(7, 81, 154);
  font-size: small;
  line-height: 2;
}

.mz-lh-2 {
  line-height: 2
}

.mz-a {
  text-decoration: none;
}

.mz-disp-center {
  display: flex;
  justify-content: center;
}

.mz-disp-left {
  display: flex;
  justify-content: start;
}

.mz-disp-right {
  display: flex;
  justify-content: end;
}

.mz-ol li {
  padding: 0;
  margin: 0;
  list-style: decimal !important;
}

.mz-ul li {
  list-style: disc;
}

.mz-ul {
  padding: 0;
  margin: 0;
}

.mz-li {
  margin: 0 40px;
  font-family: var(--listitem-marker-font-family);
  font-size: var(--listitem-marker-font-size);
  background-color: var(--listitem-marker-background-color);
}

.mz-toc .mz-ul li {
  list-style: none;
  word-break: break-all;
}

.mz-toc .mz-li {
  margin: 0;
  font-family: var(--listitem-marker-font-family);
  font-size: var(--listitem-marker-font-size);
  background-color: var(--listitem-marker-background-color);
}

/** スライド画像　ここから */
.slide-image-container {
  margin: 0 auto;
  max-width: 100%;
  position: relative;
  padding: 30px;
}

.swiper {
  overflow: hidden;
  position: unset;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0;
  color: #333;
}

.swiper-button-prev {
  left: -20px;
}

.swiper-button-next {
  right: -20px
}

.swiper-pagination {
  position: absolute;
  bottom: -20px !important;
}

.swiper-pagination-bullet {
  width: 12px !important;
  height: 12px !important;
  margin: 0 0 0 10px !important;
  background: #000 !important;
  border-radius: 0;
}

.swiper-slide {
  display: flex;
  justify-content: center;
  max-height: inherit;
  align-self: center;
  user-select: none;
}

.swiper-slide img {
  align-self: center;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}
/** スライド画像　ここまで */

a {
  text-decoration: none;
  color: #1F1F1F;
}

.mz-blogcard-contents {
    width: 644px;
    max-width: 100%; 
    display: inline-block; 
    border: 1px solid rgba(8,19,26,0.2);
    text-align: left
}

.mz-blogcard-title {
  font-size: small;
  font-weight: bold;
  margin: 10px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2; 
}

.mz-blogcard-description {
    font-size: x-small;
    margin: 0 10px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;  /*サイト側のSP版なら1にする*/
    line-clamp: 2; /*サイト側のSP版なら1にする*/
}

.mz-blogcard-host {
    margin: 10px 10px 0 10px;
    font-size: x-small !important;
}

.mz-blogcard-contents img {
    width: 100%;
    object-fit: contain;
    aspect-ratio: 125 / 86;
}

.mz-youtube-contents {
  width: 600px;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  display: inline-block;
}

.mz-google-map-contents {
  max-width: 100%;
  display: inline-block;
  aspect-ratio: 16 / 9;
}

.mz-google-map-contents iframe {
  width: 100%;
  height: 100%;
}


@media (max-width: 767.9px) {
  .l__main {
    padding: 32.533vw 0 26.667vw;
  }

  .side__ttl {
    font-size: 5.867vw;
    text-align: center;
    line-height: 1.65;
    margin-bottom: 5.333vw;
  }

  .page__inner {
    padding: 0 8.533vw;
  }

  .page__ttl {
    font-size: 9.067vw;
    margin: 0 0 6.933vw;
    text-align: center;
  }

  .page__text {
    text-align: center;
  }

  .main__section {
    margin-top: 0;
  }

  .main__wrap {
    display: block;
  }

  .blog__top-contents {
    margin-bottom: 9.6vw;
    border-bottom: 1px solid #000000;
    padding-bottom: 4.267vw;
  }

  .blog__photo {
    margin-bottom: 5.333vw;
  }

  .blog__photo img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: 100%;
    height: 100%;
  }

  .blog__ttl {
    font-size: 4.267vw;
    line-height: 1.5;
    margin: 0 0 4.267vw;
  }

  .blog__days {
    display: flex;
    align-items: center;
    gap: 6.667vw;
    margin-bottom: 1.333vw;
  }

  .blog__up-day {
    font-size: 3.2vw;
    color: #000000;
  }

  .blog__update-day {
    font-size: 3.2vw;
    color: #8B8B8B;
    position: relative;
  }

  .blog__update-day::before {
    content: '';
    background: #000000;
    width: 0.267vw;
    height: 3.2vw;
    position: absolute;
    top: 50%;
    left: -2.933vw;
    transform: translateY(-50%);
  }

  .blog__other-wrap {
    display: block;
  }

  .top-tag__wrap {
    margin-bottom: 4.267vw;
    display: flex;
    align-items: flex-start;
  }

  .category__name {
    width: fit-content;
    background: #F5F5F5;
    padding: 0.8vw 1.6vw;
    font-size: 3.2vw;
    float: left;
    white-space: nowrap;
  }

  .top-tag__list {
    flex-wrap: wrap;
    gap: 0;
    margin-top: 0.533vw;
  }

  .top-tag__item {
    width: fit-content;
    line-height: 1.6;
  }

  .top-tag__item:not(:last-child) {
    margin-right: 2.133vw;
  }

  .top-tag__item a {
    font-size: 3.2vw;
  }

  .share__text {
    font-size: 3.2vw;
    font-weight: 600;
    line-height: 2;
  }

  .top-share__wrap {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 3.2vw;
  }

  .top-share__list {
    display: flex;
    align-items: center;
    gap: 3.2vw;
  }

  .share__icon--x {
    width: 5.333vw;
  }

  .share__icon--x a {
    display: flex;
  }

  .share__icon--insta {
    width: 6.933vw;
  }

  .share__icon--line {
    width: 6.933vw;
  }

  .blog__main-contents div {
    font-size: 3.467vw;
    max-width: 100%;
  }

  .tag__contents {
    margin-top: 8.533vw;
  }

  .tag__list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2.667vw 2.133vw;
  }

  .tag__item a {
    display: block;
    width: fit-content;
    height: fit-content;
    padding: 1.067vw 4.267vw;
    background: #fff;
    border: 1px solid #000000;
    font-size: 3.733vw;
  }

  .blog__more {
    margin-top: 8.533vw;
  }

  .blog__more a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 74.667vw;
    height: 14.133vw;
    margin: 0 auto;
    border: 1px solid #000000;
    border-radius: 7.2vw;
    font-size: 4.267vw;
    background: #fff;
  }

  .side__contents {
    margin-top: 16vw;
  }

  [class*="side__box"] {
    border-bottom: 1px solid #DEDEDE;
    padding-bottom: 6.4vw;
  }

  .side__box:not(:last-of-type) {
    margin-bottom: 6.4vw;
  }

  .side__contents .side__box--rec {
    padding-bottom: 4.267vw;
    margin-bottom: 7.2vw;
  }

  .recommend__item:not(:last-child) {
    padding-bottom: 4.267vw;
    margin-bottom: 4.267vw;
    border-bottom: 1px solid #DEDEDE;
  }

  .recommend__item a {
    display: flex;
    gap: 2.133vw;
  }

  .recommend__img {
    height: 18.667vw;
    aspect-ratio: 125 / 86;
  }

  .recommend__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .recommend__detail {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 60.533vw;
  }

  .recommend__ttl {
    font-size: 3.2vw;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }

  .recommend__category {
    font-size: 3.2vw;
    background: #F5F5F5;
    padding: 0.8vw 2.133vw;
    width: fit-content;
  }

  .side__tag-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2.133vw;
  }

  .side__tag-item a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    height: fit-content;
    border: 1px solid #000000;
    background: #fff;
    font-size: 3.733vw;
    padding: 0.8vw 4.267vw;
    letter-spacing: 0.02em;
  }

  .side__sns-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6.4vw;
  }

  .side__sns-item:first-child a {
    display: block;
    width: 6.4vw;
  }

  .side__sns-item:last-child a {
    display: block;
    width: 8.533vw;
  }

  .blog__main-contents h2 {
    border-bottom: 1px solid #ccc;
    font-size: 4.267vw !important;
  }

  .blog-index ul li a {
    font-size: 4vw;
  }

  .mz-blogcard-title {
    margin: 3px 5px;
    -webkit-line-clamp: 1;
    line-clamp: 1;
  }

  .mz-blogcard-description {
    margin: 0 5px;
    -webkit-line-clamp: 1;
    line-clamp: 1;
  }

  .mz-blogcard-host {
    margin: 0 5px;
  }
}