/* ========================================
   Header
======================================== */
.l-header__inner,
.l-header.-home .l-header__inner {
  padding: 0;
  min-height: auto;
}

.l-header:not(.-home) .l-header__inner {
  height: 15rem;
}

.p-hdFix {
  height: 100px;
  box-sizing: border-box;
}

.p-hdFix__logo,
.p-hd__logo {
  padding: 2rem 0 1rem 0;
  line-height: 0;
}

.p-hdFix__logo img {
  display: block;
  width: 200px;
  max-width: 100%;
  height: auto;
}

.p-hd__logoTxt,
.p-hdFix__logoTxt {
  line-height: 0;
  margin: 0;
}

.p-hd__logo img {
  display: block;
  height: auto;
}

/* ========================================
   ハンバーガーメニュー
======================================== */
.p-hd__menuSP {
  display: block;
  position: fixed;
  right: 0;
  top: 0;
  width: 7vw;
  height: 7vw;
  z-index: 100;
}
.p-hd__menuSP::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  border-bottom-left-radius: 100%;
  filter: drop-shadow(-0.4rem 0.6rem 1.4rem rgba(0, 0, 0, 0.2));
  pointer-events: none;
}
.p-hd__menuSP button {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: none;
  cursor: pointer;
}
.p-hd__menuSP button span {
  display: block;
  position: absolute;
  right: 1.5625vw;
  left: auto;
  width: 2.083vw;
  height: max(2px, 0.13vw);
  background-color: #fff;
  border-radius: 999px;
  transform-origin: center;
  transition: all 0.3s;
}
.p-hd__menuSP button span:nth-child(1) {
  top: calc(3.177vw - 0.885vw);
  transform: translateY(-50%);
}
.p-hd__menuSP button span:nth-child(2) {
  top: 3.177vw;
  transform: translateY(-50%);
}
.p-hd__menuSP button span:nth-child(3) {
  top: calc(3.177vw + 0.885vw);
  transform: translateY(-50%);
}
.p-hd__menuSP button.is-on span:nth-child(1) {
  opacity: 0;
}
.p-hd__menuSP button.is-on span:nth-child(2) {
  top: 3.177vw;
  transform: translateY(-50%) rotate(20deg);
}
.p-hd__menuSP button.is-on span:nth-child(3) {
  top: 3.177vw;
  transform: translateY(-50%) rotate(-20deg);
}

@media screen and (max-width: 768px) {
  .l-header__inner,
  .l-header.-home .l-header__inner,
  .l-header:not(.-home) .l-header__inner {
    height: 60px;
    max-height: 60px;
    min-height: 60px;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.8);
  }
  .p-hdFix {
    height: 60px;
    background-color: rgba(255, 255, 255, 0.8);
  }
  .p-hdFix.is-show {
    background-color: #fff;
  }
  .p-hdFix__logo,
  .p-hd__logo {
    padding: 0;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p-hd__head {
    height: 60px;
    align-items: center;
  }
  .p-hdFix__inner {
    align-items: center;
  }
  .p-hd__head .p-hd__logo img,
  .p-hd__logo img {
    width: auto;
    max-width: calc(100vw - 80px);
    max-height: 40px;
    height: auto;
  }
  .p-hdFix__logo img {
    width: auto;
    max-height: 40px;
  }
  .p-hd__menuSP {
    width: 60px;
    height: 60px;
  }
  .p-hd__menuSP button span {
    right: 15px;
    width: 18px;
    height: 2px;
  }
  .p-hd__menuSP button span:nth-child(1) {
    top: 22px;
    transform: none;
  }
  .p-hd__menuSP button span:nth-child(2) {
    top: 29px;
    transform: none;
  }
  .p-hd__menuSP button span:nth-child(3) {
    top: 36px;
    transform: none;
  }
  .p-hd__menuSP button.is-on span:nth-child(2) {
    top: 29px;
    transform: rotate(20deg);
  }
  .p-hd__menuSP button.is-on span:nth-child(3) {
    top: 29px;
    transform: rotate(-20deg);
  }
}

/* ========================================
   ドロワーメニュー
======================================== */
.p-hd__navBackdrop {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 98;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}
.p-hd__navBackdrop.is-show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.p-hd__nav {
  position: fixed;
  right: 0;
  top: 0;
  width: 30rem;
  max-width: 100%;
  min-width: 40rem;
  height: 100vh;
  overflow-y: auto;
  z-index: 99;
  margin-bottom: 0;
  padding: 5rem 3rem 4rem;
  background-color: #fff;
  transform: translateX(100%);
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  pointer-events: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.p-hd__nav.is-show {
  transform: translateX(0);
  pointer-events: auto;
}
.l-header:not(.-home) .p-hd__nav {
  display: flex;
}
.p-hd__navLogoSP {
  width: 100%;
  margin-bottom: 0;
  text-align: center;
}
.p-hd__navLogoSP a {
  display: inline-block;
}
.p-hd__navLogoSP img {
  display: block;
  width: 348px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.p-hd__nav ul {
  display: block;
  width: 100%;
  margin-top: 4rem;
  text-align: center;
}
.p-hd__nav ul li {
  margin-bottom: 1rem;
  text-align: center;
}
.p-hd__nav ul li a {
  display: block;
  color: #000;
  font-size: 1.5rem;
  text-align: center;
}
.p-hdFix__nav {
  display: none;
}
.p-hdFix__inner {
  justify-content: center;
  align-items: flex-start;
  height: 100%;
}
@media screen and (max-width: 991px) {
  .p-hd__nav {
    left: auto;
  }
}
@media screen and (max-width: 768px) {
  .p-hd__nav {
    background-color: rgba(255, 255, 255, 0.8);
  }
}

/* ========================================
   ヘッダー：ロゴ
======================================== */
.p-hd__head {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  max-width: 1780px;
  width: 100%;
  margin: 0 auto;
  padding: 0 90px;
}
.p-hd__head .p-hd__logo {
  text-align: center;
}
.p-hd__newsLink {
  display: inline-flex;
  align-items: baseline;
  gap: 1em;
  max-width: 350px;
  font-weight: bold;
  border-bottom: 1px solid #000;
  line-height: 1.6;
}
@media screen and (min-width: 992px) {
  .p-hd__head .p-hd__logo img {
    width: 18.113484vw;
    max-width: 348px;
    height: auto;
  }
  .p-hd__newsLink {
    font-size: clamp(12px, 0.78vw, 15px);
  }
}
.p-hd__newsDate,
.p-hd__newsTtl {
  display: block;
  font-weight: bold;
}
@media screen and (max-width: 1200px) {
  .p-hd__newsLink {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.3em;
  }
}
@media screen and (max-width: 991px) {
  .p-hd__head {
    width: calc(100vw - 50px);
    max-width: none;
    padding: 0;
  }
  .p-hd__head .p-hd__logo {
    text-align: center;
  }
  .p-hd__newsLink {
    font-size: 12px;
  }
}

/* ========================================
   TOP：KVお知らせ（スライド左上に合わせる）
======================================== */
.home-kvNews {
  position: relative;
  z-index: 2;
  width: 83.333333vw;
  max-width: 178rem;
  margin: -2em auto 0;
  box-sizing: border-box;
  padding: 0 7rem;
}
@media screen and (max-width: 991px) {
  .home-kvNews {
    width: calc(100vw - 50px);
    max-width: none;
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  .home-kvNews {
    margin-top: 0;
    width: 100%;
    padding: 0 2rem;
  }
}

/* ========================================
   TOP：リード文
======================================== */
.home-lead {
  margin-bottom: 5rem;
}

/* ========================================
   TOP：KVスライダー
======================================== */
.home-kv__slide {
  max-width: 178rem;
  width: 83.333333vw;
  margin: 2rem auto 0;
  padding: 0 7rem;
}
.home-kv__slide .home-kv__slideImg img {
  width: 100%;
}
.home-kv__slider {
  padding-bottom: 6rem;
}
.home-kv__slider .slick-prev {
  left: calc(50% - 42.5vw);
  background-image: url(../img/new/home/new_icon-arrow-prev.svg);
}
.home-kv__slider .slick-next {
  right: calc(50% - 42.5vw);
  background-image: url(../img/new/home/new_icon-arrow-next.svg);
}
.home-kv__slider .slick-prev,
.home-kv__slider .slick-next {
  width: clamp(4rem, 4.1666666667vw, 8rem);
  height: clamp(4rem, 4.1666666667vw, 8rem);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 991px) {
  .home-kv__slide {
    max-width: none;
    width: calc(100vw - 50px);
  }
  .home-kv__slider .slick-prev {
    left: 5px;
  }
  .home-kv__slider .slick-next {
    right: 5px;
  }
  .home-kv__slider .slick-prev,
  .home-kv__slider .slick-next {
    width: clamp(2.6rem, 6.9333333333vw, 4rem);
    height: clamp(2.6rem, 6.9333333333vw, 4rem);
  }
  .home-kv__icon {
    right: 25px;
    bottom: 10px;
    width: clamp(8rem, 26.6666666667vw, 10rem);
    max-width: none;
  }
}
.home-kv__inner {
  position: relative;
}
.home-kv__icon {
  position: absolute;
  right: calc(50% - 40vw);
  bottom: clamp(1rem, 1.5625vw, 3rem);
  width: clamp(10rem, 10.4166666667vw, 20rem);
  height: auto;
  z-index: 1;
  pointer-events: none;
}
.home-kv__iconImg,
.home-kv__iconImg img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .home-kv__slide {
    width: 100%;
    padding: 0 2rem;
    margin: 1.5rem auto 0;
    box-sizing: border-box;
  }
  .home-kv__slider {
    padding-bottom: 4rem;
  }
  .home-kv__slider .slick-prev,
  .home-kv__slider .slick-next {
    width: 2.6rem;
    height: 2.6rem;
  }
  .home-kv__slider .slick-prev {
    left: 0.5rem;
  }
  .home-kv__slider .slick-next {
    right: 0.5rem;
  }
  .home-kv__icon {
    right: 2rem;
    bottom: 0.5rem;
    width: 7rem;
    max-width: none;
  }
}

/* ========================================
   TOP：特集
======================================== */
.home-feature {
  padding: 5rem 0 17rem;
  overflow-x: clip;
}
.home-feature.-summer,
.home-gallery.-summer {
  background: rgba(62, 176, 102, 0.3);
}
.home-feature .l-container {
  max-width: 121.4rem;
  padding-left: 7.02rem;
  padding-right: 7.02rem;
  overflow: visible;
}
.home-feature .c-ttl {
  margin-top: 0;
}
.home-feature__inner {
  margin-bottom: 0;
  overflow: visible;
}
.home-feature__pickups {
  margin-top: 4rem;
  overflow: visible;
}
.home-feature__ttl + .home-feature__cards {
  margin-top: 4rem;
}
.home-feature__pickup + .home-feature__pickup {
  margin-top: 7rem;
}
.home-feature__pickups + .home-feature__cards,
.home-feature__pickups + .home-feature__btn {
  margin-top: 16.2rem;
}
.home-feature__cards + .home-feature__btn {
  margin-top: 8.5rem;
}
.home-feature__ttl + .home-feature__btn {
  margin-top: 4rem;
}
.home-feature__pickupLink {
  position: relative;
  display: flex;
  align-items: stretch;
  color: #000;
}
.home-feature__pickup.-reverse .home-feature__pickupLink {
  flex-direction: row-reverse;
}
.home-feature__pickupImg {
  position: relative;
  z-index: 1;
  width: 60.631694%;
  flex-shrink: 0;
}
.home-feature__pickupImg img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.5rem;
}
.home-feature__pickupBody {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 2rem 0;
  overflow: visible;
}
.home-feature__pickup:not(.-reverse) .home-feature__pickupBody::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 60.631694%;
  right: calc(50% - 50vw);
  height: 62.980209%;
  transform: translateY(-50%);
  background-image: radial-gradient(circle, rgba(255, 255, 255, 0.5) 0.3rem, transparent 0.3rem);
  background-size: 1.3rem 1.3rem;
  opacity: 0.9;
  pointer-events: none;
}
.home-feature__pickup.-reverse .home-feature__pickupBody::before {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(50% - 50vw);
  right: 60.631694%;
  height: 62.980209%;
  transform: translateY(-50%);
  background-image: radial-gradient(circle, rgba(255, 255, 255, 0.5) 0.3rem, transparent 0.3rem);
  background-size: 1.3rem 1.3rem;
  opacity: 0.9;
  pointer-events: none;
  z-index: 0;
}
.home-feature__pickupBodyInner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 2rem 3rem 2rem 4rem;
}
.home-feature__pickup.-reverse .home-feature__pickupBodyInner {
  padding: 2rem 4rem 2rem 3rem;
}
.home-feature__pickupBadge {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 10.1rem;
  height: 10.1rem;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
  line-height: 1.2;
}
.home-feature__pickupBadgeEn {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  color: #3eb066;
  letter-spacing: -0.04em;
}
.home-feature__pickupBadgeNum {
  display: block;
  margin-top: 0.2em;
  font-size: 1.8rem;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.04em;
}
.home-feature__pickupTtlWrap {
  margin-top: 1.5rem;
}
.home-feature__pickupTtl {
  margin: 0;
  padding: 0;
}
.home-feature__pickupTtlLine {
  display: block;
  width: fit-content;
  padding: 0.1em 0.5em;
  background-color: #000;
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.2;
}
.home-feature__pickupTtlLine + .home-feature__pickupTtlLine {
  margin-top: 0.5em;
}
.home-feature__pickupTtl + .home-feature__pickupCatch {
  margin-top: 0.8em;
}
.home-feature__pickupCatch {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5;
  color: #000;
}
.home-feature__pickupTxt {
  margin-top: 1.5rem;
  max-width: 28em;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.8;
}
.home-feature__pickupArrow {
  position: absolute;
  top: 50%;
  left: 100%;
  width: 6.72rem;
  height: 10.09778rem;
  transform: translate(0, -50%);
  background-image: url(../img/new/common/new_icon-arrow-topfeature.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 2;
}
.home-feature__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.6rem;
}
.home-feature__cardLink {
  display: block;
  color: #000;
}
.home-feature__cardImg {
  margin: 0;
}
.home-feature__cardImg img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 2rem;
  aspect-ratio: 680 / 428;
  object-fit: cover;
}
.home-feature__cardImg.-noImg {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 2rem;
  aspect-ratio: 680 / 428;
}
.home-feature__cardImg.-noImg img {
  width: auto;
  height: auto;
  max-width: 55%;
  max-height: 45%;
  aspect-ratio: auto;
  object-fit: contain;
}
.home-feature__cardMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
}
.home-feature__cardCat {
  display: inline-block;
  padding: 0.25em 1.2em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  width: 13.70079rem;
  letter-spacing: 0;
  text-align: center;
}
.home-feature__cardPublish {
  flex: 1;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.home-feature__cardTtl {
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
}
.home-feature__cardTxt {
  margin-top: 0.6rem;
  font-size: 1.3rem;
  font-weight: normal;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-feature__btn {
  text-align: center;
}
.home-feature__btn .c-btn a {
  background-color: #000;
  color: #fff;
  border-color: #fff;
  width: 28.45rem;
}
.home-feature__btn .c-btn a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (max-width: 991px) {
  .home-feature.-summer {
    padding: 3rem 0 4rem;
  }
  .home-feature__pickups {
    margin-top: 2.5rem;
  }
  .home-feature__ttl + .home-feature__cards,
  .home-feature__ttl + .home-feature__btn {
    margin-top: 2.5rem;
  }
  .home-feature__pickup + .home-feature__pickup {
    margin-top: 3rem;
  }
  .home-feature__pickups + .home-feature__cards,
  .home-feature__pickups + .home-feature__btn {
    margin-top: 3rem;
  }
  .home-feature__cards + .home-feature__btn {
    margin-top: 3rem;
  }
  .home-feature__pickupLink,
  .home-feature__pickup.-reverse .home-feature__pickupLink {
    flex-direction: column;
  }
  .home-feature__pickupImg {
    width: 100%;
  }
  .home-feature__pickupBody {
    margin-top: 1.5rem;
    padding: 0;
    overflow: visible;
  }
  .home-feature__pickup:not(.-reverse) .home-feature__pickupBody::before,
  .home-feature__pickup.-reverse .home-feature__pickupBody::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
    top: 50%;
    height: 62.980209%;
    transform: translateY(-50%);
  }
  .home-feature__pickupBodyInner,
  .home-feature__pickup.-reverse .home-feature__pickupBodyInner {
    padding: 0 0 4rem;
  }
  .home-feature__pickupTtlLine {
    font-size: 24px;
  }
  .home-feature__pickupCatch {
    font-size: 15px;
  }
  .home-feature__pickupTxt {
    font-size: 1.2rem;
  }
  .home-feature__pickupArrow {
    top: 50%;
    left: 100%;
    width: 5rem;
    height: 7.4rem;
    transform: translate(-25%, -50%);
  }
  .home-feature__cards {
    gap: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .home-feature .l-container {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .home-feature__pickupTtlLine {
    font-size: 18px;
  }
  .home-feature__pickupBadge {
    width: 8rem;
    height: 8rem;
  }
  .home-feature__pickupBadgeNum,
  .home-feature__pickupBadgeEn {
    font-size: 13px;
  }
  .home-feature__pickupArrow {
    top: 60%;
    right: -5%;
    left: auto;
    width: clamp(3rem, 16vw, 5rem);
    height: clamp(4.44rem, 23.7333333333vw, 7.4rem);
    transform: translateY(-50%);
  }
}

/* ========================================
   TOP：連載
======================================== */
.home-series,
.home-season,
.home-kidsSmile,
.home-comic {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5)),
    url(../img/home/series-bg.png);
  background-repeat: repeat;
  background-position: 0 0;
  background-attachment: fixed;
  background-size: 8px 8px;
}
@media screen and (max-width: 991px) {
  .home-series,
  .home-season,
  .home-kidsSmile,
  .home-comic {
    background-attachment: scroll;
    background-size: 7px 7px;
  }
}

.home-series__ttl + .home-series__items {
  margin-top: 4rem;
}
.home-series__items + .home-series__btn {
  margin-top: 7.5rem;
}
.home-series__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.6rem;
  border-radius: 0;
  overflow: visible;
  margin-bottom: 0;
}
.home-series__item {
  width: auto;
}
.home-series__itemLink {
  display: block;
  color: #000;
}
.home-series__itemImg {
  position: static;
  padding-top: 0;
}
.home-series__itemImg img {
  position: static;
  width: 100%;
  height: auto;
  display: block;
  border-radius: 2rem;
  aspect-ratio: 680 / 428;
  object-fit: cover;
}
.home-series__itemImg.-noImg {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 2rem;
  aspect-ratio: 680 / 428;
}
.home-series__itemImg.-noImg img {
  width: auto;
  height: auto;
  max-width: 80%;
  max-height: 60%;
  aspect-ratio: auto;
  object-fit: contain;
}
.home-series__itemMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
}
.home-series__itemCat {
  display: inline-block;
  padding: 0.25em 1.2em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  white-space: nowrap;
}
.home-series__itemPublish {
  flex: 1;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  line-height: 1.5;
  letter-spacing: 0;
  font-feature-settings: "palt";
}
.home-series__itemTtl {
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
}
.home-series__itemTxt {
  margin-top: 0.6rem;
  font-size: 1.3rem;
  font-weight: normal;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-series__btn {
  text-align: center;
}
.home-series__btn .c-btn a {
  background-color: #000;
  color: #fff;
  border-color: #fff;
  width: 28.45rem;
}
.home-series__btn .c-btn a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (max-width: 991px) {
  .home-series__ttl + .home-series__items {
    margin-top: 2.5rem;
  }
  .home-series__items + .home-series__btn {
    margin-top: 3rem;
  }
  .home-series__items {
    row-gap: 2.5rem;
  }
}

/* ========================================
   TOP：しまねの旬をしまねの器で
======================================== */
.home-season {
  padding: 5rem 2rem 6rem;
}
.home-season__body {
  max-width: 108rem;
  margin: 0 auto;
  background-color: #c4af96;
  padding: 7.5rem 4.5rem 7rem;
}
.home-season__ttl .c-ttl {
  margin-top: 0;
  margin-bottom: 6.5rem;
}
.home-season__ttl + .home-season__recipe {
  margin-top: 4rem;
}
.home-season__recipe {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  max-width: 108rem;
  margin: 0 auto;
}
.home-season__recipeImg {
  max-width: 58.1rem;
  width: 53.796296%;
  flex-shrink: 0;
}
.home-season__recipeImg img {
  width: 100%;
  height: auto;
  display: block;
}
.home-season__recipeBody {
  flex: 1;
}
.home-season__recipePublish {
  font-size: 1.2rem;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.home-season__recipeTtl {
  margin-top: 1.5rem;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.46666667;
}
.home-season__recipeLine {
  margin-top: 1.3rem;
  border: 0;
  border-top: 1px solid #fff;
}
.home-season__recipeDetails {
  margin-top: 1.3rem;
  display: flex;
  gap: 3rem;
}
.home-season__recipeDetail {
  flex: 1;
  padding-bottom: 1rem;
  text-align: center;
}
.home-season__recipeDetail + .home-season__recipeDetail {
  padding-left: 1rem;
  border-left: 1px solid #fff;
}
.home-season__recipeDetailTtl {
  margin-top: 2rem;
}
.home-season__recipeDetailTtl img {
  display: block;
  width: auto;
  height: 2rem;
  margin-inline: auto;
}
.home-season__recipeDetailTxt {
  margin-top: 1.2rem;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.5;
}
.home-season__recipeDetailTxt ruby rt {
  font-size: 0.55em;
  font-weight: normal;
  letter-spacing: 0;
}
.home-season__recipeDetailTxt small {
  font-size: 0.75em;
  font-weight: normal;
}
.home-season__recipeDetailTtl + .home-season__recipeDetailArea {
  margin-top: 1.2rem;
}
.home-season__recipeDetailArea {
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1;
}
.home-season__recipeLine + .home-season__recipeBtns {
  margin-top: 2rem;
}
.home-season__recipeBtns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2.5rem;
}
.home-season__recipeBtns .c-btn a {
  width: 19rem;
  background-color: #fff;
  color: #000;
  border-color: #000;
}
.home-season__recipeBtns .c-btn a i {
  background-image: url(../img/common/icon-arrow.svg);
}
.home-season__recipeBtns .c-btn.-c a {
  background-color: #000;
  color: #fff;
  border-color: #fff;
}
.home-season__recipeBtns .c-btn.-c a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (max-width: 991px) {
  .home-season {
    padding: 3rem 1.5rem 4rem;
  }
  .home-season__body {
    padding: 3rem 2rem 4rem;
  }
  .home-season__ttl + .home-season__recipe {
    margin-top: 2.5rem;
  }
  .home-season__recipe {
    gap: 2rem;
  }
  .home-season__recipeImg {
    width: 45rem;
  }
  .home-season__recipeTtl {
    font-size: 1.8rem;
  }
  .home-season__recipeDetails {
    gap: 0.5rem;
  }
  .home-season__recipeLine + .home-season__recipeBtns {
    margin-top: 1.5rem;
  }
  .home-season__recipeBtns {
    gap: 1.5rem;
  }
  .home-season__recipeBtns .c-btn a {
    width: 18.2rem;
  }
  .home-season__recipeDetailTxt,
  .home-season__recipeDetailArea {
    font-size: 1.7rem;
  }
  .home-season__recipeDetailTtl img {
    height: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .home-season {
    padding: 2.5rem 1.5rem 4rem;
  }
  .home-season__body {
    padding: 2.5rem 1.5rem 3rem;
  }
  .home-season__ttl .c-ttl {
    margin-bottom: 0;
  }
  .home-season__ttl + .home-season__recipe {
    margin-top: 2rem;
  }
  .home-season__recipe {
    flex-direction: column;
    gap: 2rem;
  }
  .home-season__recipeImg {
    width: 100%;
    max-width: none;
  }
  .home-season__recipePublish {
    font-size: 1.1rem;
  }
  .home-season__recipeTtl {
    margin-top: 1rem;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .home-season__recipeLine {
    margin-top: 1rem;
  }
  .home-season__recipeDetails {
    flex-direction: column;
    gap: 0;
    margin-top: 1rem;
  }
  .home-season__recipeDetail {
    padding-bottom: 1.5rem;
  }
  .home-season__recipeDetail + .home-season__recipeDetail {
    padding-top: 1.5rem;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid #fff;
  }
  .home-season__recipeDetailTtl {
    margin-top: 0;
  }
  .home-season__recipeDetailTxt,
  .home-season__recipeDetailArea {
    margin-top: 0.8rem;
    font-size: 1.4rem;
  }
  .home-season__recipeDetailTtl img {
    height: 1.4rem;
  }
  .home-season__recipeLine + .home-season__recipeBtns {
    margin-top: 1.5rem;
  }
  .home-season__recipeBtns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  .home-season__recipeBtns .c-btn {
    width: auto;
    flex: 1 1 calc(50% - 0.5rem);
    min-width: 0;
  }
  .home-season__recipeBtns .c-btn a {
    max-width: none;
    height: 4.7rem;
    font-size: 12px;
    margin-inline: 0;
  }
}

/* ========================================
   TOP：FOR KIDS SMILE
======================================== */
.home-kidsSmile {
  padding: 6rem 2rem 6rem;
}
.home-kidsSmile__body {
  position: relative;
  max-width: 108rem;
  margin: 0 auto;
  background-color: #fff;
  padding: 7.5rem 10rem 6rem;
  overflow: hidden;
}
.home-kidsSmile__body::before,
.home-kidsSmile__body::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  z-index: 1;
}
.home-kidsSmile__body::before {
  top: 0;
  right: 0;
  border-style: solid;
  border-width: 0 5.6rem 5.6rem 0;
  border-color: transparent #e75381 transparent transparent;
}
.home-kidsSmile__body::after {
  bottom: 0;
  left: 0;
  border-style: solid;
  border-width: 5.6rem 0 0 5.6rem;
  border-color: transparent transparent transparent #8cc11f;
}
.home-kidsSmile__ttl {
  text-align: center;
}
.home-kidsSmile__ttlImg {
  margin: 0;
}
.home-kidsSmile__ttlImg img {
  width: min(100%, 45.37907rem);
  height: auto;
  display: inline-block;
  vertical-align: top;
}
.home-kidsSmile__line {
  margin-top: 1.6rem;
  border: 0;
  border-top: 1px solid #000;
}
.home-kidsSmile__line + .home-kidsSmile__content {
  margin-top: 3.5rem;
}
.home-kidsSmile__content {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  max-width: 108rem;
  margin: 0 auto;
}
.home-kidsSmile__detail {
  flex: 1;
  min-width: 0;
  margin-left: 4rem;
}
.home-kidsSmile__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 1.5rem 2rem;
}
.home-kidsSmile__name {
  margin: 0;
  font-size: 3rem;
  font-weight: 900;
  line-height: 1.46666667;
  letter-spacing: 0;
}
.home-kidsSmile__area {
  margin: 0;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.home-kidsSmile__head + .home-kidsSmile__meta {
  margin-top: 1.5rem;
}
.home-kidsSmile__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem 2.4rem;
}
.home-kidsSmile__metaItem {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0;

}
.home-kidsSmile__metaIcon {
  flex-shrink: 0;
  width: 3rem;
}
.home-kidsSmile__metaIcon img {
  width: 100%;
  height: auto;
  display: block;
}
.home-kidsSmile__meta + .home-kidsSmile__comment {
  margin-top: 2.9rem;
}
.home-kidsSmile__comment {
  display: flex;
  align-items: flex-start;
  gap: 0;
}
.home-kidsSmile__commentChar {
  flex-shrink: 0;
  width: 9.39624rem;
  margin: 0;
  position: relative;
  z-index: 2;
  margin-right: 2rem;
}
.home-kidsSmile__commentChar img {
  width: 100%;
  height: auto;
  display: block;
}
.home-kidsSmile__commentBox {
  position: relative;
  flex: 1;
  min-width: 0;
  max-width: 37.68225rem;
  margin-bottom: 0.4rem;
  background: #fff;
  border: 1px solid #000;
  border-radius: 3rem;
}
.home-kidsSmile__commentBox::before {
  content: "";
  position: absolute;
  left: -1.8rem;
  top: 30%;
  width: 3.32327rem;
  aspect-ratio: 33.2327 / 22.6429;
  background: url(../img/new/home/kids_fuki-deco.svg) no-repeat center / contain;
  pointer-events: none;
  z-index: 99;
}
.home-kidsSmile__commentBody {
  position: relative;
  padding: 3rem 2.8rem 3rem;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
.home-kidsSmile__commentLabel {
  margin: 0;
  font-size: 2.1495rem;
  font-weight: bold;
  line-height: 1.5;
  color: #e85298;
  letter-spacing: 0.05em;
  text-align: center;
}
.home-kidsSmile__commentLabel + .home-kidsSmile__commentTxt {
  margin-top: 1rem;
  font-size: 1.6rem;
  margin-inline: auto;
}
.home-kidsSmile__commentTxt {
  margin: 0;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}
.home-kidsSmile__img {
  flex-shrink: 0;
  width: 50%;
  max-width: 48.56667rem;
  margin-right: 3rem;
}
.home-kidsSmile__imgFrame {
  margin: 0;
}
.home-kidsSmile__imgInner {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 485.6667 / 336.389;
  overflow: hidden;
}
.home-kidsSmile__imgPhotoWrap {
  position: absolute;
  top: 4%;
  right: 5.149%;
  bottom: 7.303%;
  left: 2%;
  z-index: 1;
  overflow: hidden;
}
.home-kidsSmile__imgPhoto {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
.home-kidsSmile__imgBorder {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: fill;
  pointer-events: none;
}
.home-kidsSmile__content + .home-kidsSmile__btns {
  margin-top: 4rem;
}
.home-kidsSmile__btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2.5rem;
}
.home-kidsSmile__btns .c-btn a {
  width: 20.45rem;
  border-radius: 999px;
  background-color: #fff;
  color: #000;
  border-color: #000;
}
.home-kidsSmile__btns .c-btn a i {
  background-image: url(../img/common/icon-arrow.svg);
}
.home-kidsSmile__btns .c-btn.-c a {
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.home-kidsSmile__btns .c-btn.-c a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (min-width: 992px) {
  .home-kidsSmile__line + .home-kidsSmile__content {
    margin-top: clamp(2rem, 1.8229166667vw, 3.5rem);
  }
  .home-kidsSmile__content {
    gap: clamp(2rem, 2.0833333333vw, 4rem);
  }
  .home-kidsSmile__detail {
    margin-left: clamp(2rem, 2.0833333333vw, 4rem);
  }
  .home-kidsSmile__head {
    gap: clamp(1rem, 0.78125vw, 1.5rem) clamp(1rem, 1.0416666667vw, 2rem);
  }
  .home-kidsSmile__name {
    font-size: clamp(2rem, 1.5625vw, 3rem);
  }
  .home-kidsSmile__area {
    font-size: clamp(1.4rem, 1.09375vw, 2.1rem);
  }
  .home-kidsSmile__head + .home-kidsSmile__meta {
    margin-top: clamp(1rem, 0.78125vw, 1.5rem);
  }
  .home-kidsSmile__meta {
    gap: clamp(1rem, 0.78125vw, 1.5rem) clamp(1.2rem, 1.25vw, 2.4rem);
  }
  .home-kidsSmile__metaItem {
    gap: clamp(0.5rem, 0.4166666667vw, 0.8rem);
    font-size: clamp(1.2rem, 0.8333333333vw, 1.6rem);
  }
  .home-kidsSmile__metaIcon {
    width: clamp(2rem, 1.5625vw, 3rem);
  }
  .home-kidsSmile__meta + .home-kidsSmile__comment {
    margin-top: clamp(1.5rem, 1.5104166667vw, 2.9rem);
  }
  .home-kidsSmile__commentChar {
    width: clamp(5rem, 4.893875vw, 9.39624rem);
  }
  .home-kidsSmile__commentBox {
    max-width: clamp(20rem, 19.626174479vw, 37.68225rem);
    margin-bottom: clamp(0.2rem, 0.2083333333vw, 0.4rem);
  }
  .home-kidsSmile__commentBox::before {
    width: clamp(2.4rem, 1.8229166667vw, 3.478rem);
  }
  .home-kidsSmile__commentBody {
    padding: clamp(1.5rem, 1.5625vw, 3rem) clamp(1.4rem, 1.4583333333vw, 2.8rem) clamp(1.5rem, 1.5625vw, 3rem);
  }
  .home-kidsSmile__commentLabel {
    font-size: clamp(1.4rem, 1.11953125vw, 2.1495rem);
  }
  .home-kidsSmile__commentLabel + .home-kidsSmile__commentTxt {
    margin-top: clamp(0.6rem, 0.5208333333vw, 1rem);
    font-size: clamp(1.2rem, 0.8333333333vw, 1.6rem);
  }
  .home-kidsSmile__img {
    max-width: clamp(25rem, 25.2955578125vw, 48.56667rem);
    margin-right: clamp(1.5rem, 1.5625vw, 3rem);
  }
}
@media screen and (max-width: 991px) {
  .home-kidsSmile {
    padding: 3rem 1.5rem 4rem;
  }
  .home-kidsSmile__body {
    padding: 3rem 2rem 4rem;
  }
  .home-kidsSmile__body::before {
    border-width: 0 3.6rem 3.6rem 0;
  }
  .home-kidsSmile__body::after {
    border-width: 3.6rem 0 0 3.6rem;
  }
  .home-kidsSmile__line {
    margin-top: 2.5rem;
  }
  .home-kidsSmile__line + .home-kidsSmile__content {
    margin-top: 2.5rem;
  }
  .home-kidsSmile__content {
    flex-direction: column-reverse;
    gap: 2.5rem;
  }
  .home-kidsSmile__img {
    width: 100%;
    max-width: none;
  }
  .home-kidsSmile__name {
    font-size: 1.6rem;
  }
  .home-kidsSmile__area {
    font-size: 1.4rem;
  }
  .home-kidsSmile__metaItem {
    font-size: 1.4rem;
  }
  .home-kidsSmile__comment {
    align-items: flex-end;
    gap: 0;
  }
  .home-kidsSmile__commentChar {
    width: 7rem;
  }
  .home-kidsSmile__commentBox {
    margin-bottom: 0.2rem;
  }
  .home-kidsSmile__commentBox::before {
    width: 2.4rem;
  }
  .home-kidsSmile__commentBody {
    padding: 1.8rem 2rem 1.6rem;
  }
  .home-kidsSmile__commentLabel {
    font-size: 1.6rem;
  }
  .home-kidsSmile__commentLabel + .home-kidsSmile__commentTxt {
    font-size: 1.2rem;
  }
  .home-kidsSmile__commentTxt {
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .home-kidsSmile__content + .home-kidsSmile__btns {
    margin-top: 2.5rem;
  }
  .home-kidsSmile__btns {
    gap: 1.5rem;
  }
  .home-kidsSmile__btns .c-btn a {
    width: 18.2rem;
  }
  .home-kidsSmile__detail {
    margin: 0 auto;
  }
}

/* ========================================
   TOP：とある家族のしまね暮らし
======================================== */
.home-comic {
  padding: 6rem 2rem 20rem;
}
@media screen and (max-width: 991px) {
  .home-comic {
    padding: 4rem 2rem 10rem;
  }
}
.home-comic__body {
  max-width: 93rem;
  margin: 0 auto;
}
.home-comic__ttl .c-ttl {
  margin-top: 0;
  margin-bottom: 0;
}
.home-comic__ttl + .home-comic__img {
  margin-top: 4.5rem;
}
.home-comic__img {
  text-align: center;
}
.home-comic__imgLink {
  display: inline-block;
  max-width: 100%;
}
.home-comic__imgLink img {
  width: 100%;
  height: auto;
  display: block;
}
.home-comic__img + .home-comic__subBtns {
  margin-top: 5rem;
}
.home-comic__subBtns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.home-comic__subBtns .c-btn {
  justify-content: center;
}
.home-comic__subBtns .c-btn a {
  width: 43.65rem;
  border-radius: 999px;
}
@media screen and (max-width: 991px) {
  .home-comic__subBtns .c-btn a {
    width: 35rem;
  }
}
.home-comic__subBtns + .home-comic__btns {
  margin-top: 4rem;
}
.home-comic__btns {
  display: flex;
  justify-content: center;
}
.home-comic__btns .c-btn a {
  width: 28rem;
  border-radius: 999px;
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.home-comic__btns .c-btn a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (max-width: 768px) {
  .home-comic {
    padding: 4rem 2rem 4.5rem;
  }
  .home-comic__ttl + .home-comic__img {
    margin-top: 3rem;
  }
  .home-comic__img + .home-comic__subBtns {
    margin-top: 2.5rem;
  }
  .home-comic__subBtns {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .home-comic__subBtns .c-btn a,
  .home-comic__btns .c-btn a {
    width: 100%;
    max-width: 32rem;
  }
  .home-comic__subBtns + .home-comic__btns {
    margin-top: 2rem;
  }
  .home-comic__btns .c-btn {
    width: 100%;
    max-width: 32rem;
    justify-content: center;
  }
}

/* ========================================
   TOP：人気の記事
======================================== */
.home-popular {
  padding: 18rem 0 27rem;
  background-color: #fff;
}
.home-popular__ttl .c-ttl {
  margin-top: 0;
  margin-bottom: 0;
}
.home-popular__ttl + .home-popular__cards {
  margin-top: 4.5rem;
}
.home-popular__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3.6rem;
  row-gap: 4rem;
}
.home-popular__cardLink {
  display: block;
  color: #000;
}
.home-popular__cardImg {
  position: relative;
  margin: 0;
}
.home-popular__cardImg > img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 2rem;
  aspect-ratio: 485.6667 / 336.389;
  object-fit: cover;
}
.home-popular__cardImg.-noImg {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 2rem;
  aspect-ratio: 485.6667 / 336.389;
}
.home-popular__cardImg.-noImg > img {
  width: auto;
  height: auto;
  max-width: 90%;
  max-height: 45%;
  aspect-ratio: auto;
  object-fit: contain;
}
.home-popular__cardBadge {
  position: absolute;
  top: -0.3rem;
  right: 1.5rem;
  width: 3.9229rem;
  z-index: 1;
  pointer-events: none;
}
.home-popular__cardBadge img {
  width: 100%;
  height: auto;
  display: block;
}
.home-popular__cardMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
}
.home-popular__cardCat {
  display: inline-block;
  padding: 0.25em 1.2em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  min-width: 13.70079rem;
  letter-spacing: 0;
  text-align: center;
}
.home-popular__cardPublish {
  flex: 1;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  line-height: 1.5;
  font-feature-settings: "palt";
}
.home-popular__cardTtl {
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.3;
}
.home-popular__cardTxt {
  margin-top: 0.6rem;
  font-size: 1.3rem;
  font-weight: normal;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 991px) {
  .home-popular {
    padding: 7rem 0 10rem;
  }
  .home-popular__ttl + .home-popular__cards {
    margin-top: 3rem;
  }
  .home-popular__cards {
    gap: 4rem 2.5rem;
  }
  .home-popular__cardBadge {
    width: 39.229px;
  }
}

/* ========================================
   とある家族のしまね暮らし：詳細
======================================== */
.single-comic__inner {
  max-width: 1080px;
  margin: 0 auto;
}
.single-comic__img {
  text-align: center;
}
.single-comic__imgFrame {
  margin: 0;
}
.single-comic__imgFrame img {
  width: 100%;
  height: auto;
  display: block;
}
.single-comic__img + .single-comic__body {
  margin-top: 40px;
}
.single-comic__img + .single-comic__subBtns {
  margin-top: 80px;
}
.single-comic__body + .single-comic__subBtns {
  margin-top: 80px;
}
.single-comic__subBtns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.single-comic__subBtns .c-btn a {
  width: 36rem;
  border-radius: 999px;
}
@media screen and (max-width: 767px) {
  .single-comic__img + .single-comic__body {
    margin-top: 3rem;
  }
  .single-comic__img + .single-comic__subBtns {
    margin-top: 80px;
  }
  .single-comic__body + .single-comic__subBtns {
    margin-top: 80px;
  }
  .single-comic__subBtns {
    flex-direction: column;
    gap: 1.5rem;
  }
  .single-comic__subBtns .c-btn a {
    width: 100%;
    max-width: 32rem;
  }
}

/* ========================================
   とある家族の紹介
======================================== */
.l-main.-comicFamily {
  background-color: #fff;
}
.comicFamily {
  padding: 50px 0 80px;
}
.comicFamily__inner {
  max-width: 1080px;
  margin: 0 auto;
}
.comicFamily__ttl .c-ttl {
  margin-top: 0;
  margin-bottom: 0;
}
.comicFamily__ttl + .comicFamily__hero {
  margin-top: 10px;
}
.comicFamily__heroImg {
  margin: 0;
  text-align: center;
}
.comicFamily__heroImg img {
  width: 100%;
  max-width: 980px;
  height: auto;
  display: block;
  margin: 0 auto;
}
.comicFamily__lead {
  text-align: center;
  font-size: 13px;
  line-height: 2;
}
.comicFamily__lead p + p {
  margin-top: 5px;
}
.comicFamily__membersTtl .c-ttl {
  margin-top: 0;
  margin-bottom: 0;
}
.comicFamily__hero + .comicFamily__membersTtl {
  margin-top: 150px;
}
.comicFamily__membersTtl + .comicFamily__members {
  margin-top: 50px;
}
.comicFamily__members {
  display: grid;
  grid-template-columns: repeat(3, 275px);
  column-gap: 125px;
  row-gap: 70px;
}
.comicFamily__member {
  text-align: left;
}
.comicFamily__memberImg {
  margin: 0;
  min-height: 220px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.comicFamily__memberImg img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
}
.comicFamily__memberName {
  margin-top: 15px;
  padding-top: 14px;
  border-top: 1px solid #000;
  line-height: 1.5;
  letter-spacing: 0;
}
.comicFamily__memberNameMain {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0;
}
.comicFamily__memberNameSuffix {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0;
}
.comicFamily__memberTxt {
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.86666667;
  letter-spacing: 0;
  text-align: left;
  font-weight: 500;
}
.comicFamily__members + .comicFamily__btns {
  margin-top: 150px;
}
.comicFamily__btns {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
.comicFamily__btns .c-btn:first-child a {
  width: 436.5px;
  border-radius: 999px;
}
.comicFamily__btns .c-btn.-archive a {
  width: 284.5px;
  border-radius: 999px;
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.comicFamily__btns .c-btn.-archive a i {
  background-image: url(../img/common/icon-arrow-wt.svg);
}
@media screen and (max-width: 991px) {
  .comicFamily {
    padding: 4rem 0 6rem;
  }
  .comicFamily__hero + .comicFamily__membersTtl {
    margin-top: 4rem;
  }
  .comicFamily__members {
    grid-template-columns: 1fr;
    gap: 3.5rem;
  }
  .comicFamily__memberImg {
    min-height: auto;
  }
  .comicFamily__members + .comicFamily__btns {
    margin-top: 4rem;
  }
  .comicFamily__btns .c-btn:first-child a {
    width: 100%;
    max-width: 43.65rem;
  }
  .comicFamily__btns .c-btn.-archive a {
    width: 18.2rem;
    max-width: none;
  }
}
@media screen and (max-width: 768px) {
  .comicFamily__members {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2rem;
    row-gap: 3.5rem;
  }
  .comicFamily__btns .c-btn:first-child a {
    width: 30rem;
    max-width: 100%;
  }
  .comicFamily__memberTxt {
    font-size: 14px;
  }
}

/* ========================================
   固定ページ：記事一覧
======================================== */
.l-main.-articles {
  background-color: #fff;
}
.l-main.-articles .c-ttl span {
  border-bottom-color: #000;
  color: #000;
}
.l-main.-articles .c-ttl span::before {
  filter: none;
}
.articles {
  padding: 100px 0 80px;
}
.articles__ttl .c-ttl {
  margin-top: 0;
  margin-bottom: 0;
}
.articles__ttl + .articles__tabs {
  margin-top: 95px;
}
.articles__tabsList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-items: start;
  align-items: center;
  gap: 9px;
}
.articles__tabLink {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 0 0.4em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  color: #000;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  min-height: 22px;
  letter-spacing: 0;
  white-space: nowrap;
}
.articles__tabLink.-w87 {
  max-width: 87px;
  width: 8rem;
}
.articles__tabLink.-w137 {
  min-width: 137px;
  width: auto;
  padding: 0 0.5em;
}
@media screen and (min-width: 992px) {
  .articles__tabsList {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 9px;
  }
  .articles__tabLink {
    min-width: 0;
    max-width: none;
    padding: 0 0.35em;
  }
}
.articles__tabLink.-active {
  background-color: #000;
  color: #fff;
  border-color: #000;
}
.articles__tabs + .articles__cards {
  margin-top: 42px;
}
.articles__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 36px;
  row-gap: 40px;
}
.articles__cardLink {
  display: block;
  color: #000;
}
.articles__cardImg {
  margin: 0;
}
.articles__cardImg img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 20px;
  aspect-ratio: 485.6667 / 336.389;
  object-fit: cover;
}
.articles__cardImg.-noImg {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 20px;
  aspect-ratio: 485.6667 / 336.389;
}
.articles__cardImg.-noImg img {
  width: auto;
  height: auto;
  max-width: 55%;
  max-height: 45%;
  aspect-ratio: auto;
  object-fit: contain;
}
.articles__cardMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 16px;
}
.articles__cardCat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 140px;
  padding: 0.2em 1em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  color: #000;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
}
.articles__cardPublish {
  flex: 1;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  line-height: 1.5;
  font-feature-settings: "palt";
  color: #000;
  letter-spacing: 0;
}
.articles__cardTtl {
  margin-top: 1rem;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
}
.articles__cardTxt {
  margin-top: 6px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  opacity: 0.9;
}
.articles__cards + .articles__pager {
  margin-top: 100px;
}
.articles__pager {
  display: flex;
  justify-content: center;
}
.articles__pagerNav .page-numbers {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.articles__pagerNav .page-numbers li {
  margin: 0;
  padding: 0;
}
.articles__pagerNav .page-numbers > li > a,
.articles__pagerNav .page-numbers > li > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 45px;
  background-color: #f1f1f1;
  color: #000;
  font-size: 15px;
  line-height: 1;
  text-decoration: none;
  font-weight: 400;
}
.articles__pagerNav .page-numbers > li > a.prev,
.articles__pagerNav .page-numbers > li > a.next,
.articles__pagerNav .page-numbers > li > span.prev,
.articles__pagerNav .page-numbers > li > span.next {
  background-color: transparent;
}
.articles__pagerArrow {
  display: block;
  width: 15px;
  height: 21px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 15px 21px;
}
.articles__pagerArrow.-prev {
  background-image: url(../img/new/common/icon-pager-arrow-prev.svg);
}
.articles__pagerArrow.-next {
  background-image: url(../img/new/common/icon-pager-arrow-next.svg);
}
.articles__pagerLabel {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.articles__pagerNav .page-numbers span.current {
  font-weight: 900;
}
@media screen and (max-width: 991px) {
  .articles {
    padding: 4rem 0 6rem;
  }
  .articles__tabs + .articles__cards {
    margin-top: 3rem;
  }
  .articles__cards {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.5rem;
    row-gap: 2.5rem;
  }
  .articles__cards + .articles__pager {
    margin-top: 3.5rem;
  }
}

/* ========================================
   SP（768px以下）：記事グリッド1カラム
======================================== */
@media screen and (max-width: 768px) {
  .home-feature__cards,
  .home-series__items,
  .home-popular__cards,
  .articles__cards {
    grid-template-columns: 1fr;
  }
  .home-popular__card:nth-child(n + 6) {
    display: none;
  }
}

/* ========================================
   しまねCOLORS アーカイブ：タイトル
======================================== */
.page-colors__ttl img {
  width: 231.04px;
  height: auto;
  display: inline-block;
  vertical-align: top;
}
.l-main__inner.-colors,
.l-main__inner.-photo {
  padding-top: 50px;
}
.page-ttl.-photo.-new .c-ttl {
  margin-bottom: 0;
}
.page-ttl.-photo.-new .c-ttl span {
  font-size: 45px;
  letter-spacing: 0;
  text-indent: 0;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  border-bottom: none;
  padding-bottom: 0;
}
.page-ttl.-photo.-new .c-ttl span::before {
  content: none;
}
.colors-kv__inner {
  text-align: center;
}
.colors-kv__imgWrap {
  display: inline-block;
  max-width: 100%;
}
.colors-kv__imgWrap .colors-kv__img img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
.colors-kv__note {
  font-size: 14px;
  line-height: 1.5;
  text-align: right;
  white-space: pre-line;
  margin-top: 0.5em;
  font-weight: 400;
}

/* ========================================
   記事詳細
======================================== */
.page-ttl.-new .c-ttl span {
  padding-left: 2em;
  padding-right: 2em;
}
.single-kv__img.-new {
  margin-top: 30px;
  width: 100%;
  /* aspect-ratio: 680 / 517; */
  overflow: hidden;
}
.single-kv__img.-new img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.single-kv--series .single-kv__img.-new {
  margin-top: 0;
}
.single-kv__inner--series {
  display: flex;
  align-items: flex-start;
  gap: 30px;
}
.single-kv__seriesBody {
  flex: 0 0 365px;
  max-width: 365px;
}
.single-kv__seriesImg {
  flex: 1;
  min-width: 0;
}
.single-kv__inner--seriesHealth {
  display: block;
}
.single-kv--seriesHealth .single-kv__seriesBody {
  flex: none;
  max-width: none;
  width: 100%;
}
.single-kv--seriesHealth .single-kv__cat {
  text-align: left;
}
.single-kv--seriesHealth .single-kv__seriesLead {
  text-align: center;
}
.single-kv__seriesLead {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
}
.single-kv--series .single-kv__cat {
  text-align: center;
  margin-bottom: 0;
}

.single-kv--series .single-kv__cat.-n1.-new img {
  width: 230px;
  height: auto;
  display: block;
}
.single-kv--series .single-kv__cat.-n2.-new img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}
.single-kv--series .single-kv__cat.-n3.-new img {
  width: 250px;
  height: auto;
  display: block;
}
.single-kv__seriesLead + .single-kv__cat {
  margin-top: 25px;
}
.single-kv__cat + .single-kv__seriesMeta {
  margin-top: 40px;
}
.single-kv__seriesMeta {
  margin-top: 0;
}
.single-kv__seriesCat {
  display: inline-block;
  padding: 0.25em 1.2em;
  border: 1px solid #000;
  border-radius: 999px;
  background-color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
}
.single-kv__seriesCat + .single-kv__seriesPublish {
  margin-top: 8px;
}
.single-kv__seriesPublish {
  font-size: 12px;
  line-height: 1.5;
  font-feature-settings: "palt";
  font-weight: 500;
}
.single-kv__seriesKatagaki {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  font-weight: 500;
}
.single-kv__seriesKatagaki ruby rt {
  font-size: 0.45em;
  font-weight: normal;
}
.single-kv__seriesMeta + .single-kv__seriesKatagaki,
.single-kv__cat + .single-kv__seriesKatagaki,
.single-kv__seriesLead + .single-kv__seriesKatagaki {
  margin-top: 30px;
}
.single-kv__seriesKatagaki + .single-kv__seriesName {
  margin-top: 10px;
}
.single-kv__seriesMeta + .single-kv__seriesName {
  margin-top: 30px;
}
.single-kv__seriesName {
  font-weight: bold;
  line-height: 1.4;
}
.single-kv__seriesNameTxt {
  font-size: 30px;
  letter-spacing: 0;
}
.single-kv__seriesNameSuffix {
  font-size: 14px;
  letter-spacing: 0;
}
.single-kv__seriesNameTxt ruby rt {
  font-size: 0.45em;
  font-weight: normal;
}
.single-kv--series .single-kv__cap.-new {
  margin-top: 1em;
  font-size: 12px;
  text-align: right;
}
@media screen and (max-width: 991px) {
  .single-kv__inner--series {
    flex-direction: column;
    gap: 2.5rem;
  }
  .single-kv__seriesBody {
    flex: none;
    max-width: none;
    width: 100%;
  }
  .single-kv__seriesImg {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .single-kv__inner--series {
    gap: 2rem;
  }
  .single-kv__seriesLead {
    font-size: 14px;
    line-height: 1.7;
    text-align: center;
  }
  .single-kv__seriesLead + .single-kv__cat {
    margin-top: 2rem;
  }
  .single-kv--series .single-kv__cat.-n1.-new img {
    width: 180px;
    margin-inline: auto;
  }
  .single-kv--series .single-kv__cat.-n2.-new img {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
  }
  .single-kv--series .single-kv__cat.-n3.-new img {
    width: 195px;
    margin-inline: auto;
  }
  .single-kv__cat + .single-kv__seriesMeta {
    margin-top: 2rem;
  }
  .single-kv__seriesMeta,
  .single-kv__seriesKatagaki,
  .single-kv__seriesName {
    text-align: center;
  }
  .single-kv__seriesMeta + .single-kv__seriesKatagaki,
  .single-kv__cat + .single-kv__seriesKatagaki,
  .single-kv__seriesLead + .single-kv__seriesKatagaki {
    margin-top: 2rem;
  }
  .single-kv__seriesKatagaki {
    font-size: 13px;
  }
  .single-kv__seriesMeta + .single-kv__seriesName {
    margin-top: 2rem;
  }
  .single-kv__seriesNameTxt {
    font-size: 24px;
  }
}
.single-seriesProfile.-new {
  margin-top: 80px;
}
.single-seriesProfile__inner {
  padding: 35px 30px;
  background-color: #efefef;
  border-radius: 10px;
}
.single-seriesProfile__cols {
  display: flex;
  align-items: flex-start;
  gap: 57px;
}
.single-seriesProfile__body {
  flex: 1;
  min-width: 0;
  text-align: left;
}
.single-seriesProfile__katagaki {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: left;
}
.single-seriesProfile__katagaki ruby rt {
  font-size: 0.45em;
  font-weight: normal;
}
.single-seriesProfile__katagaki + .single-seriesProfile__name {
  margin-top: 10px;
}
.single-seriesProfile__name {
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
}
.single-seriesProfile__nameTxt {
  font-size: 22px;
  letter-spacing: 0;
}
.single-seriesProfile__nameSuffix {
  font-size: 14px;
  letter-spacing: 0;
}
.single-seriesProfile__nameTxt ruby rt {
  font-size: 0.45em;
  font-weight: normal;
}
.single-seriesProfile__name + .single-seriesProfile__txt {
  margin-top: 30px;
}
.single-seriesProfile__txt {
  font-size: 15px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0;
  font-feature-settings: "palt";
  text-align: left;
}
.single-seriesProfile__txt p + p {
  margin-top: 1em;
}
.single-seriesProfile__txt + .single-seriesProfile__links {
  margin-top: 1em;
}
.single-seriesProfile__link {
  margin: 0;
}
.single-seriesProfile__link a {
  color: #00a0e9;
  text-decoration: underline;
}
.single-seriesProfile__side {
  flex-shrink: 0;
  width: 190px;
}
.single-seriesProfile__img {
  margin: 0;
  width: 190px;
  aspect-ratio: 190 / 240;
  overflow: hidden;
}
.single-seriesProfile__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.single-seriesProfile.-new + .single-pager.-new {
  margin-top: 70px;
}
@media screen and (max-width: 991px) {
  .single-seriesProfile__inner {
    padding: 2.5rem 2rem;
  }
  .single-seriesProfile__cols {
    flex-direction: column;
    gap: 2rem;
  }
  .single-seriesProfile__nameTxt {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .single-seriesProfile.-new {
    margin-top: 4rem;
  }
  .single-seriesProfile__inner {
    padding: 2rem 1.5rem;
  }
  .single-seriesProfile__cols {
    gap: 2rem;
  }
  .single-seriesProfile__katagaki {
    font-size: 14px;
  }
  .single-seriesProfile__nameTxt {
    font-size: 2.2rem;
  }
  .single-seriesProfile__name + .single-seriesProfile__txt {
    margin-top: 2rem;
  }
  .single-seriesProfile__txt {
    font-size: 14px;
    line-height: 1.9;
  }
  .single-seriesProfile__side {
    width: 100%;
    max-width: 19rem;
    margin: 0 auto;
  }
  .single-seriesProfile__img {
    width: 100%;
    max-width: 19rem;
    margin: 0 auto;
  }
}
.single-con.-new {
  margin-top: 180px;
}
@media screen and (max-width: 768px) {
  .single-con.-new {
    margin-top: 70px;
  }
}
.single-con.-new .p-format h3 {
  margin-bottom: 0.5em;
}
.single-con.-new .p-format hr {
  margin: 0 0 2em;
  border-top: 2px solid #c7c7c7;
}
.single-con.-new .p-format p {
  font-size: 16px;
}
.single-con__btn .c-btn.-c a {
  width: auto;
  padding: 0 3em;
}
.single-con__btn.-new .c-btn.-c.-new a {
  min-height: 58px;
  height: auto;
}
.single-con__btn.-new {
  margin-top: 100px;
  margin-bottom: 20px;
}
.single-pager__back.-new .c-btn.-c.-new a {
  width: 313px;
  background-color: #000;
  color: #fff;
  border-color: #000;
  font-size: 16px;
  letter-spacing: 0.056em;
}
.single-pager__back.-new .c-btn.-c.-new a i {
  display: none;
}
.single-con__imgFig {
  display: inline-block;
  max-width: 100%;
}
.single-con__imgWrap {
  margin: 0;
}
.single-con__imgWrap + .single-con__imgCaption {
  margin-top: -1.5em;
}
.single-con__imgCaption {
  font-size: 14px;
  text-align: left;
}

/* ========================================
   レシピ詳細（2026/6/1以降）
======================================== */
.l-main.-recipe {
  margin-top: 130px;
}
.post-type-archive-recipe .l-main.-recipe {
  background-color: transparent;
}
.l-main.-recipeNew {
  background-color: transparent;
}
.l-main.-recipeNew .l-main__inner {
  padding-bottom: 80px;
}
.recipe-new__inner {
  max-width: 760px;
  margin: 0 auto;
}
.recipe-new__head .c-ttl {
  margin-top: 0;
}
.recipe-new__catch {
  text-align: center;
}
.recipe-new__catch + .recipe-new__kv {
  margin-top: 60px;
}
.recipe-new__catch img {
  width: min(100%, 748px);
  height: auto;
  display: inline-block;
}
.recipe-new__kvImg img {
  width: 100%;
  height: auto;
  display: block;
}
.recipe-new__publish {
  margin-top: 30px;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.recipe-new__kv + .recipe-new__titleBlock {
  margin-top: 30px;
}
.recipe-new__titleBlock {
  display: flex;
  align-items: center;
  gap: 30px;
}
.recipe-new__vol {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em 2em;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
}
.recipe-new__vol b {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0;
  font-family: Helvetica, sans-serif;
}
.recipe-new__titleBody {
  flex: 1;
  min-width: 0;
}
.recipe-new__titleLabel {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.056em;
  padding-left: 0.3em;
}
.recipe-new__titleLabel + .recipe-new__title {
  margin-top: 4px;
}
.recipe-new__title {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.056em;
}
.recipe-new__titleBlock + .recipe-new__ingredients {
  margin-top: 40px;
}
.recipe-new__ingredients .recipe-con__txts {
  margin-bottom: 0;
}
.l-main.-recipeNew .recipe-con__txts p {
  font-size: 17px;
  line-height: 1.8;
}
.recipe-new__sectionTtl {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
}
.recipe-new__sectionTtl + .recipe-new__stepsTxt {
  margin-top: 15px;
}
.recipe-new__ingredients + .recipe-new__steps {
  margin-top: 40px;
}
.recipe-new__stepsTxt {
  font-size: 17px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.recipe-new__stepsTxt img {
  max-width: 100%;
  height: auto;
  display: inline-block;
  vertical-align: top;
}
.recipe-new__stepsTxt p + p {
  margin-top: 1em;
}
.recipe-new__steps + .recipe-new__point {
  margin-top: 46px;
}
.recipe-new__point {
  display: block;
}
.recipe-new__pointLabel {
  display: block;
  width: 100%;
  padding: 0.5em 1.5em;
  border-radius: 20px;
  background-color: #b5834d;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.081em;
}
.recipe-new__pointLabel + .recipe-new__pointTxt {
  margin-top: 1em;
}
.recipe-new__pointTxt {
  font-size: 17px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.recipe-new__point + .recipe-new__food,
.recipe-new__food + .recipe-new__dish {
  margin-top: 40px;
}
.recipe-new__point + .recipe-new__food {
  margin-top: 45px;
}
.recipe-new__food {
  display: flex;
  align-items: flex-start;
  padding: 30px 30px 20px 30px ;
  background-color: #fff6e1;
}
.recipe-new__foodBody {
  flex: 1;
}
.recipe-new__foodTtl {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0.056em;
}
.recipe-new__foodTtl + .recipe-new__foodTxt {
  margin-top: 1em;
}
.recipe-new__foodTxt {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0;
  font-feature-settings: "palt";
}
.recipe-new__foodImg {
  flex-shrink: 0;
  width: 210.4347px;
  max-width: 42%;
}
.recipe-new__foodImg img {
  width: 100%;
  height: auto;
  display: block;
}
.recipe-new__supervise {
  font-size: 16px;
  line-height: 1.8;
  margin-top: 1.5em;
  font-weight: 500;
}
.recipe-new__dish {
  margin-top: 58px;
  position: relative;
  padding: 30px 24px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}
.recipe-new__dish::before,
.recipe-new__dish::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 1px;
  height: calc(100% - 5rem);
  background-color: #000;
  transform: translateY(-50%);
}
.recipe-new__dish::before {
  left: 0;
}
.recipe-new__dish::after {
  right: 0;
}
.recipe-new__dishInner {
  display: flex;
  align-items: center;
  gap: 30px;
  padding: 0 16px;
}
.recipe-new__dishBody {
  flex: 1;
  min-width: 0;
}
.recipe-new__dishTtl {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
}
.recipe-new__dishTtl + .recipe-new__dishHead {
  margin-top: 15px;
}
.recipe-new__dishHead {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0;
}
.recipe-new__dishHeadName ruby rt {
  font-size: 9px;
  font-weight: normal;
  letter-spacing: 0;
}
.recipe-new__dishHeadArea {
  font-weight: normal;
  font-size: 17px;
  letter-spacing: 0;
  font-feature-settings: "palt";
}
.recipe-new__dishTtl + .recipe-new__dishTxt {
  margin-top: 15px;
}
.recipe-new__dishTxt {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0;
  font-feature-settings: "palt";
  font-weight: 500;
}
.recipe-new__dishTxt a {
  color: #00a0e9;
  text-decoration: underline;
}
.recipe-new__dishImg {
  flex-shrink: 0;
  width: 240px;
  max-width: 42%;
  margin: 0;
}
.recipe-new__dishImg img {
  width: 100%;
  height: auto;
  display: block;
}
.recipe-new__voice {
  padding: 35px 30px;
  background-color: #f4f6e1;
  margin-top: 64px;
}
.recipe-new__voiceHead + .recipe-new__voiceCols {
  margin-top: 10px;
}
.recipe-new__voiceCols {
  display: flex;
  align-items: flex-start;
  gap: 28px;
}
.recipe-new__voiceBody {
  flex: 1;
  min-width: 0;
}
.recipe-new__voiceTtl {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.056em;
}
.recipe-new__voiceTtl + .recipe-new__voiceKatagaki {
  margin-top: 15px;
}
.recipe-new__voiceKatagaki {
  font-size: 17px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
.recipe-new__voiceName {
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 0;
}
.recipe-new__voiceNameTxt {
  font-size: 22px;
  letter-spacing: 0.056em;
}
.recipe-new__voiceNameSuffix {
  font-size: 22px;
}
.recipe-new__voiceName ruby {
  letter-spacing: 0;
}
.recipe-new__voiceName ruby rt {
  font-size: 0.40909091em;
  font-weight: normal;
  letter-spacing: 0;
  padding-bottom: 0.3em;
}
.recipe-new__voiceTxt {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0;
  font-feature-settings: "palt";
}
.recipe-new__voiceTxt p + p {
  margin-top: 1em;
}
.recipe-new__voiceSide {
  flex-shrink: 0;
  width: 180px;
  max-width: 27%;
  text-align: center;
}
.recipe-new__voiceImg img {
  width: 100%;
  height: auto;
  display: block;
}
.recipe-new__voiceImg + .recipe-new__voiceBadge {
  margin-top: 15px;
}
.recipe-new__voiceBadge {
  width: 112px;
  margin-left: auto;
  margin-right: auto;
}
.recipe-new__voiceBadge img {
  width: 100%;
  height: auto;
  display: inline-block;
}
.recipe-new__voiceBadge + .recipe-new__voiceCert {
  margin-top: 10px;
}
.recipe-new__voiceCert {
  font-size: 12px;
  line-height: 1.6;
}
.recipe-new__voice + .recipe-new__btn {
  margin-top: 80px;
}
.recipe-new__btn {
  text-align: center;
}
.recipe-new__btn .c-btn a {
  width: 224.5px;
}
@media screen and (max-width: 991px) {
  .recipe-new__catch + .recipe-new__kv {
    margin-top: 2.5rem;
  }
  .recipe-new__titleBlock {
    gap: 1.5rem;
  }
  .recipe-new__vol {
    padding: 0 1.5rem;
  }
  .recipe-new__vol b {
    font-size: 2.1rem;
  }
  .recipe-new__title {
    font-size: 1.8rem;
  }
  .recipe-new__food {
    flex-direction: column;
    padding: 2rem;
  }
  .recipe-new__voice {
    padding: 2rem;
  }
  .recipe-new__voiceCols {
    flex-direction: column;
    gap: 2rem;
  }
  .recipe-new__dish {
    padding: 2rem 1.6rem;
  }
  .recipe-new__dish::before,
  .recipe-new__dish::after {
    height: calc(100% - 1.6rem);
  }
  .recipe-new__dishInner {
    flex-direction: column;
    align-items: stretch;
    gap: 2rem;
    padding: 0 0.8rem;
  }
  .recipe-new__foodImg,
  .recipe-new__dishImg,
  .recipe-new__voiceSide {
    width: 100%;
    max-width: none;
  }
  .recipe-new__voiceNameTxt {
    font-size: 2.4rem;
  }
}

/* ========================================
   FOR KIDS SMILE 詳細
======================================== */
.l-main.-forKidsSmile .l-main__inner {
  padding-bottom: 80px;
}
.l-main.-forKidsSmile .page-ttl__inner {
  padding-bottom: 0;
}
.page-forKidsSmile__ttl {
  margin-top: 100px;
  margin-bottom: 44px;
}
.page-forKidsSmile__ttl img {
  width: 524.9355px;
  max-width: 100%;
  height: auto;
  display: inline-block;
  vertical-align: top;
}
.forKidsSmile-lead {
  font-size: 17px;
  line-height: 1.76470588;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 6rem;
}
.forKidsSmile__inner {
  max-width: 760px;
  margin: 0 auto;
}
.forKidsSmile__kvImg img {
  width: 100%;
  height: auto;
  display: block;
}
.forKidsSmile__kv + .forKidsSmile__head {
  margin-top: 30px;
}
.forKidsSmile__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}
.forKidsSmile__headBody {
  flex: 1;
  min-width: 0;
}
.forKidsSmile__publish {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.forKidsSmile__publish + .forKidsSmile__headTitle {
  margin-top: 15px;
}
.forKidsSmile__headTitle {
  display: flex;
  align-items: center;
  gap: 20px;
}
.forKidsSmile__vol {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.3em 1.6em;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  margin: 0;
}
.forKidsSmile__vol b {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0;
  font-family: Helvetica, sans-serif;
  white-space: nowrap;
}
.forKidsSmile__ttl {
  flex: 1;
  min-width: 0;
  margin: 0;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.forKidsSmile__map {
  flex-shrink: 0;
  width: 9rem;
  margin: 0;
}
.forKidsSmile__map img {
  width: 100%;
  height: auto;
  display: block;
}
.forKidsSmile__head + .forKidsSmile__txt {
  margin-top: 30px;
}
.forKidsSmile__txt {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0;
}
.forKidsSmile__txt + .forKidsSmile__info {
  margin-top: 47px;
}
.forKidsSmile__info {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0;
  font-feature-settings: "palt";
}
.forKidsSmile__info + .forKidsSmile__meta {
  margin-top: 30px;
}
.forKidsSmile__metaItems {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px 30px;
}
.forKidsSmile__metaItem {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  font-size: 17px;
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 0.5;
}
.forKidsSmile__metaIcon {
  flex-shrink: 0;
  width: 23.5704px;
}
.forKidsSmile__metaIcon img {
  width: 100%;
  height: auto;
  display: block;
}
.forKidsSmile__metaLink {
  margin: 0;
}
.forKidsSmile__metaItems + .forKidsSmile__metaLink {
  margin-top: 40px;
}
.forKidsSmile__metaLink a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 224px;
  height: 58px;
  border: 1px solid #000;
  border-radius: 58px;
  background-color: #fff;
  color: #000;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-decoration: none;
  position: relative;
}
.forKidsSmile__metaLink a i {
  display: block;
  position: absolute;
  right: 20px;
  top: calc(50% - 9px);
  width: 13px;
  height: 19px;
  border: none;
  transform: none;
  background-image: url(../img/common/icon-arrow.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media screen and (min-width: 992px) {
  .forKidsSmile__metaLink a {
    transition: opacity 0.3s;
  }
  .forKidsSmile__metaLink a:hover {
    opacity: 0.7;
    color: #000;
  }
}
@media screen and (max-width: 991px) {
  .forKidsSmile__metaLink a {
    font-size: 12px;
    width: 182px;
    height: 47px;
  }
  .forKidsSmile__metaLink a i {
    right: 15px;
    top: calc(50% - 7px);
    width: 10px;
    height: 15px;
  }
}
.forKidsSmile__meta + .forKidsSmile__gallery {
  margin-top: 40px;
}
.forKidsSmile__gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.forKidsSmile__galleryItem {
  margin: 0;
}
.forKidsSmile__galleryItem img {
  width: 100%;
  height: auto;
  display: block;
}
.forKidsSmile__gallery + .forKidsSmile__btn {
  margin-top: 60px;
}
.forKidsSmile__btn {
  margin-top: 60px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .forKidsSmile-lead {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .forKidsSmile {
    margin-top: 3rem;
  }
  .forKidsSmile__head {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 2rem;
  }
  .forKidsSmile__headBody {
    flex: 1 1 100%;
  }
  .forKidsSmile__headTitle {
    flex-wrap: wrap;
    gap: 1.5rem;
  }
  .forKidsSmile__ttl {
    font-size: 2rem;
  }
  .forKidsSmile__map {
    width: 9rem;
    margin-left: auto;
  }
  .forKidsSmile__gallery {
    grid-template-columns: 1fr;
  }
}

/* ========================================
   お知らせ詳細
======================================== */
.single-news .single-con__btn {
  margin-bottom: 0;
}
.single-news .single-con__btn .c-btn {
  justify-content: flex-start;
}

.single-pager__back + .single-pager__back {
  margin-top: 20px;
}
