/*******************************************************
 * for MEMORIAL PAGES ( category: memorial )
 *******************************************************/

/*------------------------------------------------------
  Memorials Hero
-------------------------------------------------------*/
.entry-content > section.hero {
 margin: 0;
 width: 100%;
}
.entry-content .hero div { position: relative; }
.entry-content .hero picture {
 display: block;
 width: 45%;
 max-width: 300px;
 height: calc(45% * 0.985);
 position: absolute;
 top: 0;
 right: -10px;
 z-index: -2;
}
.entry-content .hero h1.memorial {
 margin: 0 0 1rem;
 padding-top: 1.5em;
 max-width: 15em;
 font-size: clamp(1.875rem, 1.648rem + 1.14vw, 2.5rem);
 font-weight: bold;
 text-align: left;
 letter-spacing: 0.1em;
 position: relative;
}
.entry-content .hero h1.memorial span {
 color: #eae6e2;
 font-size: clamp(2rem, 1.045rem + 4.77vw, 4.625rem);
 font-family: "Homemade Apple", cursive;
 font-weight: 400;
 letter-spacing: normal;
 white-space: nowrap;
 display: block;
 position: absolute;
 top: -10px;
 left: 0;
 z-index: -1;
 -webkit-transform: rotate(-8deg);
 transform: rotate(-8deg);
}
.entry-content .hero p.catch_tx {
 margin-bottom: clamp(0.5rem, 3vw, 1.5rem);
 font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);
 letter-spacing: 0.1em;
}
.entry-content .herotx {
 margin: 1.5rem 0 3rem !important;
 max-width: 500px!important;
}
.entry-content .herotx.nosp { margin-bottom: 1rem !important; }
.entry-content .herotx.stx { margin-top: 0 !important; }
.entry-content .herotx.btn { margin-top: 1.5rem; }

.entry-content .herotx:has(+ details){ margin-bottom: 1.5rem; }
.entry-content details.hero-summary {
 margin: 1rem 0 4rem;
	max-width: 420px !important;
 border: 2px solid #a68a64;
 border-radius: 5px;
}
.entry-content details.hero-summary:has(+ details) { margin-bottom: 1rem; }
.entry-content .hero-summary summary {
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: relative;
 padding: 1rem 1.5rem;
 color: #a68a64;
 font-weight: 600;
 cursor: pointer;
	transition: transform .5s, opacity .5s;
}
.entry-content .hero-summary summary::after {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	font-size: 140%;
 font-family: "Material Symbols Outlined";
 content: "\e147";
 font-variation-settings:
  'FILL' 1,
  'wght' 600,
  'GRAD' 0,
  'opsz' 24;
}
.entry-content .hero-summary[open] summary::after { content: "\e644"; }
.entry-content .hero-summary h4 {
 margin: 0;
 padding: 0 1.5rem 0.5rem;
	color: #404040;
	font-size: clamp(0.75rem, 0.682rem + 0.34vw, 0.938rem);
	display: flex;
	align-items: center;
}
.entry-content details.hero-summary  p {
 margin: 0;
 padding: 0 1.5rem 1.5rem;
	color: #404040;
	font-size: 90%;
	font-weight: normal;
}

@media screen and (min-width: 600px) and (max-width: 1000px){
.entry-content .herotx { max-width: 450px!important; }
}
@media screen and (min-width: 768px){
.entry-content .hero h1.memorial br { display: none; }
.entry-content .hero picture {
 width: 55%;
 max-width: 400px;
 height: calc(55% * 1.185);
 right: 0;
}
.entry-content .herotx { margin-bottom: 5rem; }
.entry-content .hero + .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) { margin-top: 8rem; }	
	
}
@media screen and (min-width: 840px){
.entry-content .hero h1.memorial {
 margin: 3.5rem 0 1.4rem;
 padding-top: 2.4em;
}
.entry-content .hero h1.memorial span { left: -0.3em; }
.entry-content .hero p.catch_tx + p { padding-right: 50px; }
 
 
}




/*------------------------------------------------------
  Memorial Footer Link
------------------------------------------------------*/
.memorial-sec.fullw {
 padding: 5rem 1rem 4rem !important; 
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/memorial/bg_memorial_sp.jpg);
 background-repeat: no-repeat;
 background-size: cover;
 background-position: center;
 color: #fff;
 text-align: center;
}
.memorial-sec h4 {
 margin: 0;
 color: #fff;
 font-size: clamp(1.75rem, 1.591rem + 0.8vw, 2.188rem);
 font-weight: 400;
}
.memorial-sec h4 + p {
 margin-bottom: 2rem;
 font-size: clamp(0.75rem, 0.727rem + 0.11vw, 0.813rem);
 font-weight: 500;
 letter-spacing: 0.13em;
}
.memorial-sec .btn_w {
 margin: 0 auto 1.5rem;
 max-width: 220px;
}

@media screen and (max-width: 500px){
.entry-content .memorial-sec.fullw + .fullw { padding: 2rem 1rem; }
}
@media screen and (min-width: 580px) and (max-width: 839px) {
.memorial-sec.fullw {
 overflow: hidden;
 max-height: 420px;
}
}
@media screen and (min-width: 840px) {
.memorial-sec.fullw {
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/memorial/bg_memorial.jpg);
 background-position: center;
 text-align: left;
}
.memorial-sec .btn_w { margin-left: 0; }

}


/*------------------------------------------------------
  Memorial Baby Support
------------------------------------------------------*/
.bg-babygray {
 margin-left: 0;
 width: 91.42857vw;
 height: 100%;
 background-color: #f9f8f7;
 border-radius: 0 80px 80px 0;
 position: absolute;
 bottom: 0;   
}
.fullw.baby-sec { margin-bottom: 0!important; }
.fullw.baby-sec + .hasborder { margin-top: 3rem; }
.baby-sec::after{
 content: "";
 z-index: -2;
 width: 150vw;
 height: 100%;
 background-color: #f8f8f8;
 position: absolute;
 left: 0;
 top: 0;
 -webkit-transform: translateX(-20vw);
 transform: translateX(-20vw);
}
.baby-sec .wp-block-column {
 position: relative;
 margin-bottom: 4rem;
 display: flex;
 flex-direction: column;
}
.baby-sec .wp-block-column.baby { margin-bottom: 1.5rem; }
.baby-sec .wp-block-image {
 margin: 0 auto!important;
 overflow-y: visible;
}
.baby-sec .omutsu .wp-block-image img { margin-top: 15px; }

.baby-sec .wp-block-image::before,
.baby-sec .wp-block-column::after {
 display: block;
 width: 100%;
 height: 100%;
 background-position: center;
 content: "";
 position: absolute;
 left: 0;
 z-index: -1;
}
.baby-sec .wp-block-image::before {
 height: 123px;
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/memorial/bg_babytop.svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: cover;
 top: -50px;
}
.baby-sec .wp-block-column div:not(.wp-block-image) {
 margin: 0;
 padding: 0 0 0.5rem;
 width: 100%;
 position: relative;
 flex-grow:1;
}
.baby-sec .wp-block-column div:not(.wp-block-image)::before {
 width: 100%;
 height: 100%;
 content: "";
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/memorial/bg_babymiddle.svg);
 background-position: center;
 background-repeat: repeat-y;
 background-size: initial;
 position: absolute;
 display: block;
 top: 0;
 left: 0;
 z-index: -1;
}
.baby-sec .wp-block-column::after {
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/memorial/bg_babybottom.svg);
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
 height: 25px;
 bottom: -20px;
 z-index: 1;
}
.baby-sec .wp-block-column p {
 margin: 0 auto;
 padding: 1rem 0 0;
 width: 70%;
 max-width: 400px;
 line-height: 1.6;
}
.baby-sec .wp-block-column p + p { padding-top: 0.5rem; }
.baby-sec .wp-block-column p strong {
 font-size: 140%;
 line-height: 1.4rem;
}
.baby-sec > p { margin-bottom: 0; }


@media screen and (min-width: 439px) and (max-width: 782px){
.baby-sec .wp-block-column div:not(.wp-block-image)::before { background-size: 100%; }
}
@media screen and (min-width: 782px) {
.baby-sec .wp-block-column,
.baby-sec .wp-block-column.baby { margin-bottom: 1.5rem;}
.baby-sec .wp-block-column p strong { font-size: 120%; }
.baby-sec .wp-block-image figure { width: calc(55% + 1vw); }

}
@media screen and (min-width: 1040px) {
.baby-sec .wp-block-image figure { width: 100%; }

}


/*------------------------------------------------------
  Memorial Mama Staff
------------------------------------------------------*/
.mamastaff .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) { margin: 0; }
.mamastaff h3 img { width: 80%; }
.mamastaff .acdetail-cont .wp-block-column figure img {
 margin: 0 auto;
 width: 80%;
}
.mamastaff .acdetail-cont .wp-block-column h4 {
 margin: 1rem 0;
 font-size: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
 font-weight: 500;
}
.mamastaff .acdetail-cont .wp-block-column h4 strong { font-size: 140%; }
.mamastaff .acdetail-cont { padding-top: 1rem; }

@media screen and (min-width: 768px) {
.mamastaff { padding-bottom: 2rem; }
.mamastaff .wp-block-column h3 {
 margin: 0 0 1rem;
 padding-top: 0;
}
.mamastaff h3 img { width: 70%; }
.mamastaff .acdetail-cont .wp-block-column figure img { width: 74%; }
.mamastaff .wp-block-column p { margin: 0 2rem 2rem; }
.mamastaff .acdetail-cont { padding-top: 3rem; }

}


/*------------------------------------------------------
  Memorial: Kimono Process
------------------------------------------------------*/
.kimono-process figure {
 margin: 0 auto;
 max-width: 268px;
 text-align: center;
}
.kimono-process h5 {
 margin-top: 1rem;
 font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
 font-weight: normal;
 text-align: center;
 line-height: 1.5;
}
.kimono-process h5 strong {
 display: block;
 margin: 0 auto 0.5rem;
 font-family: "Montserrat", sans-serif;
 color: #d3cdc7;
 font-size: clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);
 font-weight: bold;
}
.entry-content p.box_tx {
 margin: 0 auto 0.8rem!important;
 padding: 20px;
 background-color: #f6f5f3;
}
.entry-content p.box_tx strong {
 font-size: 120%;
 line-height: 2;
}

@media screen and (min-width: 768px) {
.entry-content p.box_tx { padding: 3% 7%; } 
 
}


/*------------------------------------------------------
  Memorial: Bring List
------------------------------------------------------*/
.bring-list { text-align: center; }
.bring-list p strong {
 font-size: 110%;
 line-height: 2;
}
.bring-list ul { margin: 0; }
.bring-list li {
 margin: 0 0 0.5rem;
 padding: 0.8rem 1.5rem 0.8rem 0.5rem;
 background-color: #f8f8f8;
 border-radius: 50px;
 color: #7fa6c3;
 font-size: 105%;
 list-style: none;
 position: relative;
}
.bring-list li a {
 color: #7fa6c3;
 font-weight: bold;
 border-bottom: 1px solid #7fa6c3!important;
}
.bring-list li::after {
 content: "";
 background-image: url(/wp/wp-content/themes/twentytwenty-child/img/common/icon-pdf.svg);
 background-size: contain;
 width: 18px;
 height: 22px;
 position: absolute;
 top: 50%;
 right: 15px;
 transform: translateY(-50%);
}

@media screen and (min-width: 700px) {
.bring-list ul {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}
.bring-list li {
 margin: 0 0.6rem 1.2rem;
 width: calc((100% - 2.4rem) / 2);
 max-width: 320px;
}

}


/*------------------------------------------------------
  Memorial: Omairi
------------------------------------------------------*/
.omairi { position: relative; margin-bottom: 1.5rem; }
.omairi picture {
 margin: 0 calc(-50vw + 50%);
 padding: 0;
 width: 100vw !important;
 display: block;
}
.omairi .white-box { margin-top: -80px; margin-bottom: 0; }
.omairi .white-box h4 {
 font-size: clamp(1.125rem, 0.761rem + 1.82vw, 2.125rem);
 font-weight: 400;
}
.omairi .white-box h5 {
 padding: 10px 10px 12px;
 background-color: #d6cdc7;
 border-radius: 40px;
 font-size: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);
 font-weight: 400;
 text-align: center;
 letter-spacing: 0.1em;
 line-height: 1;
}
.omairi .white-box .wp-block-heading + .wp-block-columns {
 padding: 10px;
 justify-content: space-between;
}
.omairi .white-box p {
 margin: 0 0.2rem 0.5rem 0.25rem;
 display: flex;
}
.omairi .white-box p::before {
 margin-top: -5px;
 width: 1.2rem;
 height: 1.2rem;
 font-size: 1.2rem;
 font-family: "Material Symbols Outlined";
 content: "\e0c8";
 font-variation-settings:
  'FILL' 1,
  'wght' 400,
  'GRAD' 200,
  'opsz' 24;
}
.deliphoto p {
 font-size: clamp(0.813rem, 0.767rem + 0.23vw, 0.938rem);
 font-weight: bold;
 text-align: center;
}
.deliphoto p strong {
 display: block;
 margin-top: 0.3rem;
 font-size: 140%;
 line-height: 1.5;
}
.deliphoto .btn a { margin: 0 auto; }

@media screen and (min-width: 840px){
.omairi .white-box { margin-top: -150px; }
.omairi .white-box p { margin-bottom: 1rem; }
.deliphoto { align-items: center!important; }
.deliphoto p { margin-left: 1rem; text-align: left; }
.deliphoto p strong { font-size: 160%; }
.deliphoto .btn a {
 margin: 0;
 padding: 1.8rem;
 font-size: 110%;
} 
 
 
}

/*************************************************************
 MEMORIAL PAGE
------------------------------------------------------------ */
.memorial .entry-content h1 {
 font-size: 0.75rem;
 letter-spacing: 0.13em;
 font-weight: 400;
 text-align: left;
 line-height: 1.4;
}
.memorial .entry-content h1 strong {
 display: block;
 margin-bottom: 7px;
 font-size: clamp(1.875rem, 1.58rem + 1.48vw, 2.688rem);
 font-weight: bold;
 letter-spacing: 0.06em;
}
.memorial .entry-content h1 span { display: initial; }


/*-------------------------------------------------------------
 Memorial Page: mvLoopSlide
------------------------------------------------------------ */
.mv-specialWrap {
 width: 100vw !important;
 margin: 0 calc(-50vw + 50%) 6rem !important;
 position: relative;
}
.mv-specialWrap .mv-specialTxt {
 content: "";
 padding: 10px 10px 10px 20px;
 background-color: #d6cdc7;
 border-radius: 0 10px 10px 0;
 color: #fff;
 font-weight: 500;
 letter-spacing: 0.04em;
 position: absolute;
 bottom: -22px;
 z-index: 1;
}

.mvLoopSlide {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
}
.mvLoopSlideItem {
 display: inline-block;
 margin-right: 5px;
 margin-left: 5px;
 min-height: 249px; 
 background-size: cover;
 border-radius: 20px;
 overflow: hidden;
}
@media (min-width: 840px) {
.mv-specialWrap .mv-specialTxt {
 padding: 10px 20px 10px 60px;
 bottom: 30px;
 }
.mvLoopSlideItem {
 margin-right: 15px;
 margin-left: 15px;
 min-height: 540px;
}
}

.mvLoopSlideItem img {
 display: block;
 width: 100%;
 height: auto;
}
.mvLoopSlideItemList {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
}
.mvLoopSlide .item01 { background-image: url("../img/memorial/mv/mv-img01.jpg"); }
.mvLoopSlide .item02 { background-image: url("../img/memorial/mv/mv-img02.jpg"); }
.mvLoopSlide .item03 { background-image: url("../img/memorial/mv/mv-img03.jpg"); }
.mvLoopSlide .item04 { background-image: url("../img/memorial/mv/mv-img04.jpg"); }
.mvLoopSlide .item05 { background-image: url("../img/memorial/mv/mv-img05.jpg"); }
.mvLoopSlide .item06 { background-image: url("../img/memorial/mv/mv-img06.jpg"); }
.mvLoopSlide .mvLoopSlideItem.pc_w800 { width: 800px; }
.mvLoopSlide .mvLoopSlideItem.pc_w660 { width: 660px; }
.mvLoopSlide .mvLoopSlideItem.pc_w836 { width: 836px; }

@media (max-width: 839px) {
.mvLoopSlide .mvLoopSlideItem.sp_w335 { width: 335px; }
.mvLoopSlide .mvLoopSlideItem.sp_w220 { width: 220px; }
}
.mvLoopSlideItemList:first-child {
  -webkit-animation: loop 90s linear infinite;
          animation: loop 90s linear infinite;
}
.mvLoopSlideItemList:nth-child(2) {
  -webkit-animation: loop2 90s -60s linear infinite;
          animation: loop2 90s -60s linear infinite;
}
.mvLoopSlideItemList:last-child {
  -webkit-animation: loop3 90s -30s linear infinite;
          animation: loop3 90s -30s linear infinite;
}

@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(200%);
            transform: translateX(200%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(200%);
            transform: translateX(200%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@-webkit-keyframes loop3 {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  to {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
}
@keyframes loop3 {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  to {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
}

.titleLevelMemorialTop {
 font-weight: bold;
 font-size: 30px;
 line-height: 1.4;
 letter-spacing: 0.06em;
}
@media (min-width: 840px) {
.titleLevelMemorialTop { font-size: 43px; }
.titleLevelMemorialTop-catch {
 margin-left: 40px;
 margin-top: 5px;
}
}

.titleLevelMemorialTop-sub {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
}
.memorialMvSection { margin-bottom: 13.5px; }
.memorialMvSection .titleWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.memorialSection { position: relative; }
.memorialSection .txtWrap {
 position: absolute;
 top: 50%;
 -webkit-transform: translateY(-50%) translateX(0);
         transform: translateY(-50%) translateX(0);
 left: calc((100vw - 1000px)/2);
}

@media screen and (min-width: 580px) and (max-width: 839px) {
  .memorialSection {
    width: 100vw;
    position: relative;
    -webkit-transform: translate(calc((-100vw - -580px)/2));
            transform: translate(calc((-100vw - -580px)/2));
  }

 .memorialSection figure img { width: 100%; }
 .memorialSection figure {
   overflow: hidden;
   max-height: 420px;
  }
}

@media (max-width: 839px) {
 .memorialMvSection .titleWrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
 .memorialSection .txtWrap {
   -webkit-transform: translateY(-50%) translateX(-50%);
           transform: translateY(-50%) translateX(-50%);
   left: 50%;
   padding-left: 20px;
   padding-right: 20px;
   width: 100%;
   text-align: center;
 }
 .memorialSection .txtWrap .buttonWrap {
   margin: 0 auto;
   max-width: 210px;
 }
}

/*-------------------------------------------------------------
 Memorial Page: Feature
------------------------------------------------------------ */
.memorial .wp-block-columns.feature01,
.memorial .wp-block-columns.feature02 { margin-bottom: clamp(3rem, 14vw, 8rem); }
.memorial .wp-block-columns.feature03 { margin-bottom: clamp(5rem, 20vw, 12rem); }
.memorial .feature01 .wp-block-column:first-of-type,
.memorial .feature01 .wp-block-column:last-of-type,
.memorial .feature02 .wp-block-column:first-of-type,
.memorial .feature02 .wp-block-column:last-of-type { position: relative; }
.memorial .feature01 .wp-block-column:first-of-type::before,
.memorial .feature02 .wp-block-column:first-of-type::before {
 display: block;
 content: "";
 width: 199px;
 height: 139px;
 background-color: #eaeaea;
 border-radius: 10px;
 position: absolute;
 bottom: -76px;
 opacity: .4;
 z-index: 1;
}
.memorial .feature01 .wp-block-column:first-of-type::before { left: -20px; }
.memorial .feature02 .wp-block-column:first-of-type::before { right: 0; }
.memorial .feature01 .wp-block-column:first-of-type::after,
.memorial .feature02 .wp-block-column:first-of-type::after {
 display: block;
 content: "";
 width: 242px;
 height: 215px;
 background-image: url("/wp/wp-content/themes/twentytwenty-child/img/memorial/graydot.svg");
 position: absolute;
 bottom: -26px;
 z-index: 2;
}
.memorial .feature01 .wp-block-column:first-of-type::after { left: 0; }
.memorial .feature02 .wp-block-column:first-of-type::after { right: -20px; }
.memorial .feature01 .wp-block-column:first-of-type figure,
.memorial .feature02 .wp-block-column:first-of-type figure { position: relative; z-index: 3; }
.memorial .feature01 .wp-block-column:first-of-type figure img {
 margin-left: 20px;
 border-radius: 10px;
}
.memorial .feature02 .wp-block-column:first-of-type figure img {
 margin-left: -20px;
 border-radius: 10px;
}

.memorial .feature01 .wp-block-column:last-of-type,
.memorial .feature02 .wp-block-column:last-of-type { padding-top: 95px; }
.memorial .feature01 .wp-block-column:last-of-type::before,
.memorial .feature02 .wp-block-column:last-of-type::before {
 content: "point 01";
 font-size: clamp(2.938rem, 2.415rem + 2.61vw, 4.375rem);
 letter-spacing: 0.02em;
 color: #404040;
 font-family: "Homemade Apple", cursive;
 transform: rotate(-8deg);
 position: absolute;
 top: 5px;
 left: 0;
 z-index: 4;
}
.memorial .feature02 .wp-block-column:last-of-type::before { content: "point 02"; }
.memorial .feature03 .wp-block-column:last-of-type::before { content: "point 03"; }

.memorial .feature01 .wp-block-column h3,
.memorial .feature02 .wp-block-column h3 {
 padding-left: 0;
 border-left: 0;
 font-size: clamp(2.375rem, 2.33rem + 0.23vw, 2.5rem);
 font-weight: normal;
}
.memorial .white-box {
 margin-top: 3rem;
 position: relative;
 z-index: 6;
}


@media screen and (min-width: 782px){
.memorial .wp-block-columns.feature01,
.memorial .wp-block-columns.feature02 { gap: 4rem; }
.memorial .feature02 { flex-direction: row-reverse; }

.memorial .feature01 .wp-block-column:first-of-type::before,
.memorial .feature02 .wp-block-column:first-of-type::before {
 width: 346px;
 height: 242px;
 bottom: -120px;
}
.memorial .feature01 .wp-block-column:first-of-type::before { left: -100px; }
.memorial .feature02 .wp-block-column:first-of-type::before { right: -140px; }
.memorial .feature01 .wp-block-column:first-of-type::after,
.memorial .feature02 .wp-block-column:first-of-type::after {
 width: 451px;
 height: 251px;
}
.memorial .feature01 .wp-block-column:first-of-type::after { left: -40px; }
.memorial .feature02 .wp-block-column:first-of-type::after { right: -70px; }
.memorial .feature01 .wp-block-column:last-of-type::before,
.memorial .feature02 .wp-block-column:last-of-type::before { left: -55px; }
.memorial .feature01 .wp-block-column:first-of-type figure img { margin-left: 0; }
.memorial .feature02 .wp-block-column:first-of-type figure img {
 margin-left: 0;
 margin-right: -20px;
}
 
}

/*-------------------------------------------------------------
 Memorial Page: Services
------------------------------------------------------------ */
@media screen and (min-width: 960px){
.memorial .feature-box dl {
 display: flex;
 justify-content: space-between;
}
.memorial .feature-box dt { display: block; }
.memorial .feature-box dt,
.memorial .feature-box dt div,
.memorial .feature-box dd { padding-left: 0; }
.memorial .feature-box dt picture {
 position: initial;
 width: 100%;
 height: auto;
}
.memorial .feature-box dl > div {
 margin: 0;
 padding: 0;
 width: calc((100% - 60px) / 3);
 min-height: initial;
 box-shadow: 2px 2px 10px rgba(10, 10, 10, 0.2);
}
.memorial .feature-box dt img { border-radius: 10px 10px 0 0; }
.memorial .feature-box dt div {
 padding: 25px 25px 0;
 font-weight: bold;
 text-align: center;
}
.memorial .feature-box dt div span::after { height: 0; }
.memorial .feature-box dd { padding: 15px 25px 25px; }
.memorial .feature-box dd p { padding: 0; }

}


/*-------------------------------------------------------------
 Memorial Page: Staff introduce
------------------------------------------------------------ */
.memorial .tab-wrap {
 display: flex;
 flex-wrap: wrap;
 margin: 1rem auto 0;
}
.memorial .tab-label {
 margin: 0 0 10px;
 padding: 18px;
 width: 100%;
 background: #ededed;
 border-radius: 50px;
 color: #404040;
 font-size: 95%;
 font-weight: bold;
 text-align: center;
 line-height: 1;
 box-shadow: 1px 2px 5px rgba(20, 20, 20, 0.2);
 order: -1;
 position: relative;
}
.memorial .tab-label::after {
 display: block;
 position: absolute;
 top: 50%;
 right: 20px;
 transform: translateY(-50%);
 font-size: 140%;
 font-family: "Material Symbols Outlined";
 content: "\e313";
 font-variation-settings:
  'FILL' 0,
  'wght' 700,
  'GRAD' 0,
  'opsz' 24
}
.memorial .tab-content {
 margin: 2rem 0 0;
 width: 100%;
 display: none;
}
.memorial .tab-switch:checked+.tab-label {
 color: #fff;
 background: #404040;
}
.memorial .tab-switch:checked+.tab-label+.tab-content { display: block; }
.memorial .tab-switch { display: none; }

.memorial .tab-content ul {
 display: flex;
 flex-wrap: wrap;
 margin: 0;
 padding: 0;
}
.memorial .tab-content li {
 margin: 0 10px 30px;
 padding: 0;
 width: calc((100% - 40px) / 2);
 font-size: 110%;
 line-height: 1.6;
 list-style: none;
}
.memorial .tab-content li figure { margin-bottom: 10px; }
.memorial .tab-content li span { font-size: 80%; }
.memorial .tab-content li span,
.memorial .tab-content li strong {
 display: block;
 margin-top: 0.5rem;
 color: #878a8d;
}
.memorial .tab-content li span + strong { margin-top: 0; }

@media screen and (min-width: 840px){
.memorial .tab-label {
 margin: 0 15px 40px;
 width: calc((100% - 90px) / 3);
 }
.memorial .tab-content li {
 margin: 0 15px 40px;
 padding: 0;
 width: calc((100% - 90px) / 3);
}
 
}

/*-------------------------------------------------------------
 Memorial Page: Studio Slider
------------------------------------------------------------ */
.memorial .instudio .wp-block-visual-portfolio.alignwide {
 margin-top: 2rem;
 margin-bottom: 2rem;
 width: 94% !important;
}
.memorial .instudio .swiper-pagination-bullets.swiper-pagination-horizontal { bottom: -1px; }


/*-------------------------------------------------------------
 Memorial Page: Banners & Links
------------------------------------------------------------ */
@media screen and (max-width: 400px){
.memorial .wp-block-pgcsimplygalleryblock-slider + p { margin-top: -1rem; }
}

ul.planlist {
 margin: 0 auto 3rem;
 padding: 1rem 0;
 border: 20px solid #ededed;
 display: flex;
 flex-wrap: wrap;
}
.planlist li {
 margin: 0 0.5rem 1rem;
 padding: 0;
 width: calc((100% - 3rem) / 3);
 font-size: 90%;
 font-weight: bold;
 text-align: center;
 line-height: 1.4;
 list-style: none;
}
.planlist li figure { margin-bottom: 8px; }
.planlist li a { color: #404040; }
.planlist li a:hover { opacity: .8; }

.memorial-fix{
  width: 75px;
position: fixed;
  bottom: clamp(10px, 4vw, 20px);
  right: 26%;
  transition: all .3s;
  visibility: visible;
  display: flex;
  justify-content: flex-end;
  z-index: 9999;

}

.memorial-fix img{
  width: clamp(75px, 17vw, 150px);
   margin: 0 0 0.5rem 0;
}


@media screen and (min-width: 768px){
ul.planlist {
 margin-bottom: 4rem;
 padding: 2rem 1rem;
}
.planlist li {
 margin: 0 1rem 2rem;
 width: calc((100% - 10rem) / 5);
 font-size: 110%;
}

.memorial-fix{
  /*width: 150px!important;*/
  position: fixed;
  bottom: clamp(10px, 4vw, 20px);
  right: 230px;
  z-index: 9999;
}
.memorial-fix img{
    width: clamp(75px, 17vw, 150px);
  height: auto;
}
}

