
body.mame-sns-gallery-page .c-pageTitle,
body.mame-sns-gallery-page .p-pageTitle,
body.mame-sns-gallery-page .l-mainTitle,
body.mame-sns-gallery-page .c-pageTitle__main,
body.mame-sns-gallery-page .c-postTitle,
body.mame-sns-gallery-page .c-postTitle__ttl,
body.mame-sns-gallery-page .p-entryTitle,
body.mame-sns-gallery-page .p-entry__title,
body.mame-sns-gallery-page h1.entry-title,
body:has(.mame-sns-gallery) .c-pageTitle,
body:has(.mame-sns-gallery) .p-pageTitle,
body:has(.mame-sns-gallery) .l-mainTitle,
body:has(.mame-sns-gallery) .c-pageTitle__main,
body:has(.mame-sns-gallery) .c-postTitle,
body:has(.mame-sns-gallery) .c-postTitle__ttl,
body:has(.mame-sns-gallery) .p-entryTitle,
body:has(.mame-sns-gallery) .p-entry__title,
body:has(.mame-sns-gallery) h1.entry-title{
  display:none!important;
}
body:has(.mame-sns-gallery) .p-entry__head,
body:has(.mame-sns-gallery) .post_content > h1:first-child,
body:has(.mame-sns-gallery) .post_content > h2:first-child,
body:has(.mame-sns-gallery) .p-entry__body > h1:first-child,
body:has(.mame-sns-gallery) .p-entry__body > h2:first-child{
  display:none!important;
  margin:0!important;
  padding:0!important;
}
body:has(.mame-sns-gallery) .l-mainContent__inner,
body:has(.mame-sns-gallery) .post_content,
body:has(.mame-sns-gallery) .p-entry__body{
  padding-top:0!important;
  margin-top:0!important;
}
body.mame-sns-gallery-page .l-articleTop,
body.mame-sns-gallery-page .p-entry__head,
body.mame-sns-gallery-page .c-pageTitleArea{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
}
body.mame-sns-gallery-page .p-entry__body{
  margin-top:0!important;
}

.mame-sns-gallery{
  --msg-accent:#d59aaa;
  --msg-accent-deep:#bb7f90;
  --msg-text:#342f31;
  --msg-muted:#8a8083;
  --msg-line:#ece6e8;
  --msg-soft:#faf7f8;
  margin:.6rem 0 2.5rem;
  color:var(--msg-text);
}
.msg-gallery-head{
  margin:0 0 2rem;
  padding:1.25rem 0 1.65rem;
  border-bottom:1px solid var(--msg-line);
}
.msg-gallery-head__eyebrow{
  margin:0 0 .48rem;
  color:#b9aeb2;
  font-size:.62rem;
  font-weight:600;
  letter-spacing:.16em;
}
.msg-gallery-head__title{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  color:var(--msg-text)!important;
  font-size:1.48rem!important;
  font-weight:700!important;
  line-height:1.28!important;
  letter-spacing:.015em!important;
}
.msg-gallery-head__title::before,
.msg-gallery-head__title::after{
  display:none!important;
  content:none!important;
}
.msg-gallery-head__lead{
  margin:.55rem 0 0!important;
  color:#625b5e;
  font-size:.84rem;
  line-height:1.7;
}
.msg-gallery-head__desc{
  margin:1rem 0 0;
  color:#81777b;
  font-size:.75rem;
  line-height:1.8;
}
.msg-gallery-head__desc p{
  margin:0!important;
}
.msg-toolbar{margin-bottom:1.8rem}
.msg-work-count{
  margin:0 0 .7rem;
  font-size:.82rem;
  letter-spacing:.025em;
  color:var(--msg-muted);
}
.msg-work-count strong{
  color:var(--msg-accent-deep);
  font-size:1.02rem;
  font-weight:700;
}
.msg-tabs{
  display:flex;
  align-items:flex-end;
  gap:1.2rem;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  border-bottom:1px solid var(--msg-line);
  padding:0 .15rem;
  white-space:nowrap;
}
.msg-tabs::-webkit-scrollbar{display:none}
.msg-tab{
  position:relative;
  flex:0 0 auto;
  appearance:none;
  border:0;
  background:none;
  color:#777075;
  font:inherit;
  font-size:.88rem;
  line-height:1;
  padding:.72rem .05rem .8rem;
  cursor:pointer;
}
.msg-tab::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  border-radius:999px 999px 0 0;
  background:transparent;
}
.msg-tab.is-active{color:var(--msg-accent-deep);font-weight:600}
.msg-tab.is-active::after{background:var(--msg-accent)}
.msg-tag-search-toggle{
  display:inline-flex;
  align-items:center;
  gap:.3rem;
  color:var(--msg-muted);
}
.msg-tag-search-toggle svg{
  width:14px;
  height:14px;
  fill:currentColor;
}
.msg-tag-search{
  margin-top:.8rem;
  padding:.8rem;
  border:1px solid var(--msg-line);
  border-radius:12px;
  background:#fff;
}
.msg-tag-search__input{
  display:flex;
  align-items:center;
  gap:.45rem;
  padding:.5rem .65rem;
  border:1px solid var(--msg-line);
  border-radius:9px;
  background:var(--msg-soft);
}
.msg-tag-search__input svg{
  flex:0 0 auto;
  width:15px;
  height:15px;
  fill:#aaa0a4;
}
.msg-tag-search__input input{
  width:100%;
  min-width:0;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
  font:inherit;
  font-size:.88rem;
}
.msg-tag-search__results{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .75rem;
  max-height:180px;
  overflow:auto;
  margin-top:.7rem;
  padding:.1rem .1rem .15rem;
}
.msg-tag-search__results button{
  appearance:none;
  border:0;
  background:none;
  color:#c58f9e;
  padding:.15rem 0;
  font:inherit;
  font-size:.78rem;
  cursor:pointer;
}
.msg-tag-search__results button[hidden]{display:none!important}

.msg-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.2rem .62rem;
}
.msg-card{min-width:0}
.msg-card__visual{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:10px;
  background:#f2eff0;
  isolation:isolate;
}
.msg-card__thumb-link{
  display:block;
  width:100%;
  height:100%;
  color:inherit;
  text-decoration:none!important;
}
.msg-card__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:var(--msg-focus-x,50%) var(--msg-focus-y,50%);
  transition:filter .2s ease,transform .2s ease,opacity .2s ease;
}
.msg-card__thumb-link:hover .msg-card__image{transform:scale(1.018)}
.msg-card__noimage{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  color:#b3abad;
  font-size:.75rem;
  letter-spacing:.04em;
}
.msg-card__pages{
  position:absolute;
  top:7px;
  left:7px;
  z-index:4;
  display:inline-flex;
  align-items:center;
  gap:3px;
  min-height:23px;
  padding:3px 7px;
  border-radius:6px;
  background:rgba(35,31,33,.67);
  color:#fff;
  font-size:.72rem;
  line-height:1;
  pointer-events:none;
  backdrop-filter:blur(3px);
}
.msg-card__pages svg{
  width:12px;
  height:12px;
  fill:currentColor;
}
.msg-card__like{
  position:absolute;
  right:6px;
  bottom:6px;
  z-index:5;
  display:flex;
  align-items:center;
  min-height:24px;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.msg-card__like .wpulike,
.msg-card__like .wp_ulike_general_class,
.msg-card__like .wp_ulike_put_image{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
}
.msg-card__like .wp_ulike_put_image{
  display:flex!important;
  align-items:center!important;
}
.msg-card__like .wp_ulike_btn{
  position:relative!important;
  display:block!important;
  min-width:24px!important;
  min-height:24px!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  background-image:none!important;
}
.msg-card__like .wp_ulike_btn > *{
  opacity:0!important;
  visibility:hidden!important;
}
.msg-card__like .wp_ulike_btn::before{
  content:""!important;
  position:absolute!important;
  left:3px!important;
  top:3px!important;
  width:18px!important;
  height:18px!important;
  display:block!important;
  background:#d4bcc4!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.1-4.35-9.4-8.52C.55 8.76 2.32 4.5 6.3 4.5c2.2 0 3.52 1.28 4.28 2.42C11.34 5.78 12.66 4.5 14.86 4.5c3.98 0 5.75 4.26 3.7 7.98C16.25 16.65 12 21 12 21Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7.1-4.35-9.4-8.52C.55 8.76 2.32 4.5 6.3 4.5c2.2 0 3.52 1.28 4.28 2.42C11.34 5.78 12.66 4.5 14.86 4.5c3.98 0 5.75 4.26 3.7 7.98C16.25 16.65 12 21 12 21Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
.msg-card__like .wp_ulike_btn.wp_ulike_btn_is_active::before,
.msg-card__like .wp_ulike_btn[aria-pressed="true"]::before{
  background:#c9879a!important;
}
.msg-card__like .count-box{
  min-width:auto!important;
  margin:0 0 0 1px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#8a7d82!important;
  font-size:.66rem!important;
  line-height:24px!important;
}
.msg-card__like .count-box:before,
.msg-card__like .count-box:after{
  display:none!important;
  content:none!important;
}

.msg-card__visual.is-spoiler:not(.is-revealed) .msg-card__image{
  filter:blur(18px);
  transform:scale(1.08);
}
.msg-card__visual.is-spoiler:not(.is-revealed)::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:rgba(250,247,248,.28);
  pointer-events:none;
}
.msg-card__spoiler{
  position:absolute;
  left:50%;
  top:50%;
  z-index:6;
  transform:translate(-50%,-50%);
  display:inline-flex;
  align-items:center;
  gap:.28rem;
  appearance:none;
  border:0;
  background:rgba(255,255,255,.62);
  color:#897d81;
  border-radius:999px;
  padding:.34rem .52rem;
  font:inherit;
  font-size:.68rem;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(3px);
}
.msg-card__spoiler svg{
  width:12px;
  height:12px;
  fill:currentColor;
}
.msg-card__visual.is-revealed .msg-card__spoiler{display:none}

.msg-card__body{padding:.55rem .08rem 0}
.msg-card__title{
  display:block;
  overflow:hidden;
  color:var(--msg-text)!important;
  text-decoration:none!important;
  font-size:.88rem;
  font-weight:600;
  line-height:1.45;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.msg-card__tags{
  display:flex;
  align-items:center;
  gap:.42rem;
  overflow:hidden;
  min-height:1.35em;
  margin-top:.23rem;
  color:#cf98a7;
  font-size:.72rem;
  line-height:1.35;
  white-space:nowrap;
}
.msg-card__tags span{overflow:hidden;text-overflow:ellipsis}
.msg-card__tags .msg-card__tag-more{flex:0 0 auto;color:#aaa0a4}
.msg-card__date{
  display:block;
  margin-top:.2rem;
  color:#aaa2a5;
  font-size:.67rem;
  line-height:1.4;
}
.msg-more-wrap{
  display:flex;
  justify-content:center;
  margin-top:1.9rem;
}
.msg-more{
  appearance:none;
  min-width:150px;
  border:0;
  border-bottom:1px solid #d8c9ce;
  background:none;
  color:#756b6f;
  padding:.6rem 1.1rem;
  font:inherit;
  font-size:.82rem;
  cursor:pointer;
}
.msg-more:hover{color:var(--msg-accent-deep);border-color:var(--msg-accent)}
.msg-more.is-loading{opacity:.45;pointer-events:none}
.msg-empty{
  grid-column:1/-1;
  padding:3rem 1rem;
  text-align:center;
  color:var(--msg-muted);
  font-size:.85rem;
}

/* 小説：画像ギャラリーとは分けた文字主体の一覧 */
.msg-novel-section{
  margin-top:3.2rem;
  padding-top:2rem;
  border-top:1px solid var(--msg-line);
}
.msg-novel-section[hidden]{display:none!important}
.msg-novel-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
}
.msg-novel-head__eyebrow{
  margin-bottom:.28rem;
  color:#b9aeb2;
  font-size:.6rem;
  font-weight:600;
  letter-spacing:.15em;
}
.msg-novel-head__title{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  color:var(--msg-text)!important;
  font-size:1.08rem!important;
  font-weight:700!important;
  line-height:1.35!important;
}
.msg-novel-head__title::before,
.msg-novel-head__title::after{
  display:none!important;
  content:none!important;
}
.msg-novel-count{
  color:var(--msg-muted);
  font-size:.82rem;
  letter-spacing:.025em;
  white-space:nowrap;
}
.msg-novel-count strong{
  color:var(--msg-accent-deep);
  font-size:1.02rem;
  font-weight:700;
}
.msg-novel-list{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border-top:1px solid var(--msg-line);
}
.msg-novel{
  padding:1rem .15rem 1.05rem;
  border-bottom:1px solid var(--msg-line);
}
.msg-novel__title{
  display:inline-block;
  color:var(--msg-text)!important;
  text-decoration:none!important;
  font-size:.91rem;
  font-weight:600;
  line-height:1.55;
}
.msg-novel__excerpt{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  margin:.38rem 0 0!important;
  color:#777074;
  font-size:.76rem;
  line-height:1.72;
}
.msg-novel__spoiler{
  display:inline-flex;
  align-items:center;
  gap:.25rem;
  margin-top:.42rem;
  color:#95898d;
  font-size:.68rem;
}
.msg-novel__spoiler svg{
  width:11px;
  height:11px;
  fill:currentColor;
}
.msg-novel__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-top:.48rem;
}
.msg-novel__tags{
  display:flex;
  min-width:0;
  gap:.42rem;
  overflow:hidden;
  color:#cf98a7;
  font-size:.68rem;
  white-space:nowrap;
}
.msg-novel__tags span{
  overflow:hidden;
  text-overflow:ellipsis;
}
.msg-novel__tag-more{
  flex:0 0 auto;
  color:#aaa0a4;
}
.msg-novel__date{
  flex:0 0 auto;
  color:#aaa2a5;
  font-size:.65rem;
}
.msg-novel-more-wrap{
  display:flex;
  justify-content:center;
  margin-top:1.2rem;
}
.msg-novel-more-wrap[hidden]{display:none!important}
.msg-novel-more{
  appearance:none;
  min-width:130px;
  border:0;
  border-bottom:1px solid #d8c9ce;
  background:none;
  color:#756b6f;
  padding:.55rem 1rem;
  font:inherit;
  font-size:.78rem;
  cursor:pointer;
}
.msg-novel-more:hover{
  color:var(--msg-accent-deep);
  border-color:var(--msg-accent);
}
.msg-novel-more.is-loading{
  opacity:.45;
  pointer-events:none;
}

@media (min-width:620px){
  .msg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.55rem 1.05rem}
}
@media (min-width:960px){
  .msg-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.8rem 1.2rem}
  .msg-card__title{font-size:.92rem}
  .msg-novel-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}
}
@media (prefers-reduced-motion:reduce){
  .msg-card__image{transition:none}
}
