@charset "utf-8";
/* --------------------------------
 * smart phone
 * -------------------------------- */
#pg-search .search-form {
  margin-top: 5%;
}
#pg-search .search-form .search-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
}
#pg-search .search-form .search-box .search-input {
  padding: 0 18px;
  width: 412px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  border: 1px solid #d0d0d0;
  background-color: transparent;
  outline: none;
}
#pg-search .search-form .search-box .button-submit {
  margin-left: 10px;
  padding: 0;
  width: auto;
  min-width: 90px;
  font-size: 1.6rem;
  color: #fff;
  background-color: #333;
}
#pg-search .searchResult-wrapper {
  margin-top: 4.2%;
}
#pg-search .searchResult-wrapper .searchResult-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-bottom: 20px;
  border-bottom: 1px solid #d0d0d0;
  line-height: 1.4;
}
#pg-search .searchResult-wrapper .searchResult-head .title {
  font-size: 2.2rem;
  font-weight: 700;
}
#pg-search .searchResult-wrapper .searchResult-head .total {
  margin-left: 29px;
  font-size: 1.6rem;
  letter-spacing: 0.18em;
}
#pg-search .searchResult-wrapper .searchResult-head .emptiness {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
  padding: 0px 5px;
}
#pg-search .searchResult-wrapper .searchResultLlist-item {
  border-bottom: 1px solid #d0d0d0;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a {
  display: block;
  padding: 40px 0;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper .image {
  min-width: 158px;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-left: 30px;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl dt {
  margin-top: 4px;
  font-size: 2.2rem;
  font-weight: 700;
  color: #c52e2e;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl .description {
  margin-top: 10px;
  font-size: 1.6rem;
  line-height: 1.9;
  letter-spacing: 0.1em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
#pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper:hover dl dt {
  text-decoration: underline;
}
#pg-search .searchResult-wrapper .no-result {
  margin-top: 3.6%;
  font-size: 1.6rem;
}
#pg-search .pager {
  margin: 6.5% auto 0;
}
#pg-search .pager .pagerList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#pg-search .pager .pagerList-item {
  margin: 0 6.5px;
  width: 36px;
  height: 36px;
  text-align: center;
  border: 1px solid #d0d0d0;
  position: relative;
}
#pg-search .pager .pagerList-item.current {
  border: 1px solid #343434;
  background-color: #343434;
}
#pg-search .pager .pagerList-item.current a {
  color: #fff;
}
#pg-search .pager .pagerList-item.ellipsis a, #pg-search .pager .pagerList-item.ellipsis span, #pg-search .pager .pagerList-item.next a, #pg-search .pager .pagerList-item.next span {
  text-indent: -9999em;
  background-position: center;
  background-repeat: no-repeat;
}
#pg-search .pager .pagerList-item.ellipsis {
  width: 14px;
  border: none;
}
#pg-search .pager .pagerList-item.ellipsis span {
  display: block;
  width: inherit;
  height: inherit;
  background-image: url(../images/svg/icon-three-dots.svg);
  background-size: contain;
}
#pg-search .pager .pagerList-item.next a {
  background-image: url(../images/svg/icon-rightArrow-black.svg);
  background-size: 6px 11px;
}
#pg-search .pager .pagerList-item a {
  width: 100%;
  height: 100%;
  font-size: 1.4rem;
  line-height: 36px;
}
/* --------------------------------
 * smart phone
 * -------------------------------- */
@media screen and (max-width: 769px) {
  #pg-search .search-form {
    margin-top: 11.4%;
  }
  #pg-search .search-form .search-box {
    height: 35.5px;
  }
  #pg-search .search-form .search-box .search-input {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 14px;
    width: auto;
    font-size: 1.4rem;
  }
  #pg-search .search-form .search-box .button-submit {
    min-width: 80px;
    font-size: 1.4rem;
  }
  #pg-search .searchResult-wrapper {
    margin-top: 8%;
  }
  #pg-search .searchResult-wrapper .searchResult-head {
    padding-bottom: 14px;
  }
  #pg-search .searchResult-wrapper .searchResult-head .title {
    font-size: 1.6rem;
  }
  #pg-search .searchResult-wrapper .searchResult-head .total {
    margin-left: 14px;
    font-size: 1.1rem;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a {
    padding: 25px 0;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper .image {
    min-width: 29%;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl {
    padding-left: 18px;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl dt {
    margin: 0;
    font-size: 1.6rem;
  }
  #pg-search .searchResult-wrapper .searchResultLlist-item a .item-wrapper dl .description {
    margin-top: 5px;
    font-size: 1.2rem;
  }
  #pg-search .searchResult-wrapper .no-result {
    margin-top: 4%;
    font-size: 1.2rem;
  }
  #pg-search .pager {
    margin: 12% auto 0;
  }
}
.wp-block-table {
  margin: 5.4% 0;
  width: 100%;
}
.wp-block-table tr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  border-top: 1px solid #d0d0d0;
  align-items: center;
}
.wp-block-table tr td:first-child {
  width: 30%;
  font-size: 1.6rem;
}
.wp-block-table tr td:last-child {
  width: 70%;
  font-size: 1.6rem;
}
table.wp-block-table a {
  text-decoration: underline;
  padding-right: 6px;
}
table.wp-block-table a:after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: 0 0 0.1em 0.5em;
  border-top: 1px solid #32373c;
  border-right: 1px solid #32373c;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
body.page-id-856 table.wp-block-table a:after {
  content: none;
}
.lead-inner {
  max-width: 960px;
  margin: 5% auto 5%;
  padding: 3%;
}
.lead-inner p {
  line-height: 2;
  font-size: medium;
  line-height: 1.8 !important;
  padding-top: 10px !important;
}
.lead-inner > p {
  padding-top: 6.7%;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.25em;
}
.lead-inner p.sub-title {
  letter-spacing: 0.15em !important;
  text-align: center;
  color: #649634;
  margin: 20px auto;
  font-size: large;
}
@media(max-width: 768px) {
  .contribution article {
    height: auto;
  }
  iframe {
    width: 100%;
    height: 500px;
  }
  #pg-search > div > ul > li > a > div > div > img {
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: center;
  }
  .wp-block-table tr {
    border-top: none;
  }
  .wp-block-table tr:last-child {
    border-bottom: none;
  }
  .wp-block-table tr td:first-child {
    width: 40%;
    font-weight: 700;
  }
  .wp-block-table tr td:last-child {
    padding-left: 6%;
    width: 60%;
  }
}
.wrap-content-0 {
  width: 100%;
  padding: 0;
  margin: 0 auto 100px;
}
.flex-switch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2%;
}
@media screen and (max-width: 768px) {
  .flex-switch {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
  @media screen and (max-width: 768px) {
    .p-switch {
      width: 100%;
      text-align: left;
      padding: 40px 20px;
    }
    .p-switch-width {
      width: 100%;
      text-align: left;
      margin: 30px auto;
    }
    .p-center {
      width: 100%;
      text-align: center;
      margin: 30px auto;
    }
  }
  @media print, screen and (min-width: 769px) {
    .p-switch {
      text-align: center;
    }
    .p-switch-width {
      max-width: 600px;
      text-align: left;
      margin: 30px auto;
    }
    .p-center {
      max-width: 700px;
      text-align: center;
      margin: 30px auto;
      padding: 0 0;
      border-bottom: double 4px #595959;
    }
  }
  .center {
    text-align: center;
    margin: 0 auto !important;
    padding: 40px 0 20px;
  }
  .bottom {
    vertical-align: bottom;
  }
  .p-margin0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .p-margin-middle {
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .space-min {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 20px;
  }
  .space-small {
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    height: 10px;
  }
  /* =======================================================
   Access page
   ======================================================= */
  #access .access-lead {
    margin-top: 8px;
    line-height: 1.7;
  }
  .access-map {
    margin-top: 32px;
  }
  .access-heading {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 12px;
  }
  .access-map-figure {
    margin: 0;
  }
  .access-map-figure img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12);
  }
  .access-map-caption {
    margin-top: 8px;
    font-size: 1.2rem;
    color: #555;
  }
  .access-map-actions {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
  }
  .btn-map {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border-radius: 999px;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    background-color: #fff;
    border: 1px solid #cab59b;
    color: #3c3b87;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, transform .15s ease, box-shadow .15s ease;
    white-space: nowrap;
  }
  .btn-map:hover {
    background-color: #cab59b;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
  }
  /* 見出し前の余白 */
  .access-subtitle {
    margin-top: 28px;
    margin-bottom: 10px;
  }
  .access-list .access-term {
    display: inline-block;
    background: #3c3b87;
    color: #fff;
    padding: 4px 10px;
    border-radius: 6px;
    font-weight: 700;
    margin-right: 8px;
    font-size: 1.2rem;
    white-space: nowrap;
  }
  .access-list li {
    margin-bottom: 8px;
    line-height: 1.6;
  }
  /* --------------------------------------------------------------
   桜香ページ
-------------------------------------------------------------- */
#ouka article.wrap-content{
    margin: 160px 0px;
}  

#ouka .list-about {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 40px auto 0;
    flex-direction: row;
    flex-wrap: wrap;
  }
  #ouka .list-about .width-about {
    width: 99%;
  }
  #ouka .list-about dt, .list-about dd {
    text-align: center;
  }
  #ouka .list-about dd {
    margin-left: 0;
  }
  #ouka .list-about dd .title-middle {
    margin-top: 8px;
    margin-bottom: 5px;
  }
  #ouka dl.item-sr {
    width: 30%;
    padding: 20px;
    background: linear-gradient(left, #8f6B29, #FDE08D, #DF9F28);
    margin: 1%;
  }
  #ouka dl.item-sr img {
    width: 64px;
    padding: 10px;
    background: -webkit-linear-gradient(left, #d1a554, #f5d281, #c89948);
    background: linear-gradient(left, #8f6B29, #FDE08D, #DF9F28);
    border-radius: 10px;
  }
.item.item-goods img {
    width: 316px;
}
  @media screen and (max-width: 768px) {
    #ouka dl.item-sr .list-about {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      width: 100%;
    }
    #ouka dl.item-sr {
      width: 48%;
      padding: 20px;
      margin: 1%;
    }
  }
  #ouka .list-kigan {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  #ouka ul.list-kigan li {
    width: 30%;
    padding: 20px;
    font-size: initial;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #ouka ul.list-kigan li {
    width: 30%;
    padding: 20px;
    font-size: initial;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  @media screen and (max-width: 768px) {
    #ouka ul.list-kigan li {
      width: 46%;
      padding: 16px;
      display: flex;
    }
  }
  #ouka dl.item-sf {
    width: 48%;
    padding: 20px;
    margin: 1%;
  }
  #ouka dl.item-sf img {
    width: 128px;
    padding: 10px;
  }
  .arrow {
    margin: 0 auto 50px;
	  text-align: center;
    padding-top: 15px;
    position: relative;
  }
  .arrow:before {
    width: 100px;
    height: 80px;
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#FFFFFF), to(#dbace1));
    background-image: -webkit-linear-gradient(#FFFFFF, #dbace1);
    background-image: linear-gradient(#FFFFFF, #dbace1);
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -50px;
    z-index: 2;
  }
  .arrow:after {
    border-top: 35px solid #dbace1;
    border-left: 70px solid transparent;
    border-right: 70px solid transparent;
    content: "";
    position: absolute;
    top: 80px;
    left: 50%;
    margin-left: -70px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    z-index: 1;
  }
  .arrow p {
    text-align: center;
    z-index: 5;
    position: relative;
  }
	
p.hosoku {
  padding: 0.5em 1em;
  margin: 1em 0;
  background: #f4f4f4;
  border-left: solid 6px #dbace1;
  box-shadow: 0px 2px 3px rgb(0 0 0 / 33%);
  display: block;
  width: -webkit-fill-available;
}

/*GRID*/
.grid_2 {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  align-items: center;
  align-content: space-between;
}
.grid_2 p:first-child {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  background-color: #edf;
  text-align: center;
}
.grid_2_1 {
  display: grid;
  gap: 10;
  grid-template-columns: repeat(auto-fit, minmax(150px, 2fr));
  grid-gap: 10px 1.8%;
}
.set_naiyo .grid_2_1 li {
  background: #eeddff;
  background: url(../images/common/bg.jpg);
  text-align: center;
  font-size: small;
  font-family: sans-serif;
  color: #333;
}
.grid_2_1 li {
  padding: 10px;
}
.grid_2_1 p {
  text-align: center;
}
.grid_3 {
  display: flex;
  grid-template-columns: repeat(auto-fit, minmax(24%, 3fr));
  grid-gap: 10px 2%;
  justify-items: center;
}
.grid_3 .item_o {
  /* padding: 10px; */
}
.grid_3 img {
  max-width: 100%;
  height: auto;
}
.grid_3 p {
  text-align: center;
  font-size: small;
}
/*info*/
dl.list-plan dt {
  font-weight: bold;
}
dl.list-plan dd {
  font-weight: 400;
  margin: 0 0 20px 0;
}
dl.list-plan dt:before {
  content: '●';
  display: inline-block;
  width: 1em;
  text-indent: 0;
}


/*--- Price Table ---*/
.table-price {
  border-collapse: collapse;
  width: 100%;
}
.table-price tr {
  border-bottom: 1px dotted #ddd;
}
.table-price tr:nth-last-child(2) {
}
.table-price tr:last-child {
}
.table-price tr td {
  vertical-align: top;
  padding: 10px 5px 10px 15px;
}
.table-price tr td.h-table {
  min-width: 4em;
}
.table-price tr td.right {
  white-space: nowrap;
}
.table-price tr td.text-middle {
  padding-top: 14px;
}
.table-price tr td.pricetext-table, .table-price tr td.pricenum-table {
  vertical-align: bottom !important;
}
.table-price tr td:first-child, .table-price tr td:last-child {
  padding-top: 17px;
}
.pricenum-table {
  font-size: 3.5rem;
  line-height: 1;
  letter-spacing: 0.1rem;
}
.pricetext-table {
  font-size: 0.87rem;
  line-height: 1.87;
}
@media print, screen and (min-width: 769px) {
  .pricenum-table {
    margin-left: 0.4em;
  }
}
ul.notes li:before {
  color: #B22222;
  padding-right: 0.3em;
}
.item-price {
  border: 1px solid #ddd;
}
@media screen and (max-width: 768px) {
  .item-price {
    padding: 40px 20px;
  }
  .item-price:nth-child(even) {
    margin-bottom: 0 !important;
  }
}
@media print, screen and (min-width: 769px) {
  .item-price {
    padding: 40px;
  }
  .item-price:nth-child(even) {
    margin-right: 0 !important;
  }
}
.wrap-pricenum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.title-price-min {
  font-size: 0.87rem;
  line-height: 1.87;
  letter-spacing: 0.1rem;
  margin-top: 0;
  margin-bottom: 7px;
}
.circle {
  display: inline-block;
  width: 65px;
  height: 65px;
  line-height: 65px;
  text-align: center;
  vertical-align: middle;
  border-radius: 50%;
  border: solid 2px #73AD3A;
  color: #649634;
  font-weight: 700;
  margin-right: 20px;
}


/*--- Basic Table ---*/
.wp-block-table table, .table-basic, .table-min {
  border-collapse: collapse;
  border-spacing: 0 !important;
  width: 100%;
  font-size: 0.97rem;
}
.wp-block-table table td, .table-basic td, .table-min td {
  padding: 10px 20px;
}
.wp-block-table table td:first-child, .table-basic td:first-child, .table-min td:first-child {
  background-color: #f8f8f8;
}
.wp-block-table table td:last-child, .table-basic td:last-child, .table-min td:last-child {
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .wp-block-table table td, .table-basic td, .table-min td {
    padding: 10px 10px !important;
  }
  .wp-block-table:not(.table-min), .table-basic {
    margin: 0;
  }
  .wp-block-table:not(.table-min) tr, .table-basic tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-bottom: 1px solid #dcdcdc;
  }
  .wp-block-table:not(.table-min) tr:first-child, .table-basic tr:first-child {
    border-top: 1px solid #dcdcdc;
  }
  .table-min {
    border-top: 1px solid #dcdcdc;
    margin: 0 auto;
  }
  .table-min tr {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .table-min td {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    vertical-align: top;
    border-bottom: 1px solid #dcdcdc;
  }
  .table-min td:first-child {
    width: 35%;
  }
}
@media print, screen and (min-width: 769px) {
  .wp-block-table, .table-basic, .table-min {
    margin: 0 auto;
  }
  .wp-block-table tr, .table-basic tr, .table-min tr {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .wp-block-table td, .table-basic td, .table-min td {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    vertical-align: top;
  }
  .wp-block-table td:first-child, .table-basic td:first-child, .table-min td:first-child {
    width: 35%;
  }
}

div#price {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: space-evenly;
  margin-top: 40px;
}
#price div {
  width: 46%;
  padding: 10px;
}
#price h3 span:nth-child(1) {
  background: #be8b3a;
  color: #fff;
  padding: 4px 6px;
  margin-right: 10px;
}
#price h3 span:nth-child(2) {
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .wrap-ouka {
    margin: 10px auto;
  }
  div#price {
    display: block;
  }
  #price div {
    width: 100%;
    padding: 10px;
  }
}

/*--- Funeral Price ---*/
.wrap-price-funeral {
  margin: 40px auto 0 !important;
}
.item-price-funeral {
  background-color: #fff;
  border: 1px solid #C4A253;
  padding: 40px 20px;
}
.title-price-funeral {
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1.6;
  letter-spacing: 0.15em;
  color: #0a0a0a;
  color: #BE8B3A;
}
.colortext-funeral {
  color: #BE8B3A;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .item-price-funeral:nth-child(even) {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media print, screen and (min-width: 1519px) {
  .item-price-funeral:nth-child(even) {
    margin-left: 40px;
    margin-right: 40px;
  }
}
/*--- Archive News ---*/
@media screen and (max-width: 768px) {
  .archive-news, .archive-book {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media print, screen and (min-width: 769px) {
  .archive-news, .archive-book {
    margin: 20px auto;
  }
}
@media screen and (max-width: 768px) {
  .list-history {
    padding-bottom: 30px;
  }
}
@media print, screen and (min-width: 769px) {
  .list-history dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.photo-history {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .wrap-img-left, .wrap-img-right, .item-img-center {
    width: 150px;
  }
  .photo-history {
    height: 110px;
  }
}
@media print, screen and (min-width: 769px) {
  .wrap-img-left, .wrap-img-right, .item-img-center {
    width: 250px;
  }
  .photo-history {
    height: 160px;
  }
}
.bg-piccard {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: url("../images/bg-dark_wall.png");
}
@media screen and (max-width: 768px) {
  .bg-piccard {
    padding: 90px 20px 40px !important;
  }
}
@media print, screen and (min-width: 769px) {
  .bg-piccard {
    padding: 90px 40px 20px !important;
  }
}
.first-piccard {
  margin-top: 40px !important;
}
.item-piccard {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  padding: 0;
}
.item-piccard .img-sannai-flex, .item-piccard .img-piccard {
  margin-bottom: 40px;
}
.item-piccard .text-piccard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.item-piccard .text-piccard .wrap-sannai-center {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 320px;
  text-align: center;
  margin: 0 auto -5px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.item-piccard .text-piccard p:last-child {
  padding-bottom: 20px !important;
}
.photo-sannai-center {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 220px;
  margin-bottom: 15px;
}
.caption-sannai {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.7;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .wrap-sannai-center {
    width: 85% !important;
  }
  .item-piccard {
    width: 100%;
    margin: 0 auto 40px;
  }
  .item-piccard .img-sannai-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .item-piccard .img-sannai-flex .photo-sannai-half {
    height: 370px;
  }
  .item-piccard .img-sannai-flex .photo-sannai-half-min {
    height: 250px;
  }
  .item-piccard .img-piccard .photo-piccard-min {
    width: 100%;
    height: 250px;
  }
  .item-piccard .img-piccard .photo-piccard-large {
    width: 100%;
    height: 370px;
  }
  .text-piccard {
    padding: 0 20px;
  }
}
@media print, screen and (min-width: 769px) {
  .item-picgrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
  .item-piccard {
    max-width: 1030px;
    margin: 0 auto 70px;
  }
  .item-piccard .img-sannai-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
  }
  .item-piccard .img-sannai-flex .photo-sannai-half {
    width: 50%;
    height: 370px;
  }
  .item-piccard .img-sannai-flex .photo-sannai-half-min {
    width: 50%;
    height: 250px;
  }
  .item-piccard .img-piccard .photo-piccard-min {
    width: 100%;
    height: 250px;
  }
  .item-piccard .img-piccard .photo-piccard-large {
    width: 100%;
    height: 370px;
  }
  .text-piccard {
    padding: 0 40px;
  }
}
@media print, screen and (min-width: 768px) {
  .f_plan ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.f_plan ul li {
  background-color: #ffffff;
  border: 1px solid #CCCCCC;
  border-bottom: none;
  -webkit-box-shadow: 0 2px 6px rgb(0 0 0 / 20%);
  box-shadow: 0 2px 6px rgb(0 0 0 / 20%);
  -webkit-box-shadow: 0 2px 6px rgb(0 0 0 / 20%);
  box-shadow: 0 2px 6px rgb(0 0 0 / 20%);
  margin-bottom: 32px;
}
@media print, screen and (min-width: 768px) {
  .f_plan ul li {
    width: 250px;
  }
}
.list_two_f {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.list_two_f li {
  width: 43%;
  padding: 8px;
  margin: 8px;
  border:
    solid 1px green;
}
.wrap-ouka {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 770px;
  background-color: #fff;
  padding: 10px 40px 30px;
  margin: 40px auto 40px;
}
.fa-arrow-down, .fa-arrow-right {
  font-size: 2rem;
  color: #ccc;
  margin: 0 auto;
}
/*--- Member ---*/
.wrap-membership {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 850px;
  background-color: #fff;
  border: 1px solid #C4A253;
  padding: 0px 10px 50px;
  margin: 40px auto 40px;
}
h3.h2-sub {
  border-bottom: dotted 1px #ddd;
  padding: 10px;
  margin-bottom: 20px;
}
.wrap-membership .h3-gold {
  margin-bottom: 40px;
  text-align: center;
}
.wrap-memorial {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 770px;
  background-color: #fff;
  /* border: 1px solid #C4A253; */
  padding: 10px 40px 30px;
  margin: 10px auto 10px;
}
@media screen and (max-width: 769px) {
  .wrap-memorial {
    /* padding: 10px 20px 30px; */
    margin-top: 20px;
  }
}
.circle-membership {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  vertical-align: middle;
  border-radius: 50%;
  color: #fff;
  background-color: #C4A253;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .item-membership dt {
    margin-right: 7px;
  }
}
/* =========================
   Access Map Section
   ========================= */

.access-map {
  margin: 40px auto 56px;
  padding: 32px 24px;
  max-width: 960px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  box-sizing: border-box;
}

/* 見出し */
.access-map .access-heading {
  margin-bottom: 20px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.08em;
  color: #3c3b87;
}

/* 地図画像 */
.access-map-figure {
  margin: 0 auto 20px;
  text-align: center;
}

.access-map-figure img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

/* キャプション */
.access-map-caption {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #555;
}

/* ボタンエリア */
.access-map-actions {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

/* 共通ボタン */
.btn-map {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  padding: 14px 20px;
  font-size: 1.5rem;
  font-weight: 700;
  text-decoration: none;
  border-radius: 999px;
  line-height: 1.4;
  transition: background-color 0.2s ease,
              color 0.2s ease,
              box-shadow 0.2s ease,
              transform 0.15s ease;
  box-sizing: border-box;
}

/* PDFボタン */
.btn-map-pdf {
  background-color: #ffffff;
  color: #3c3b87;
  border: 2px solid #3c3b87;
}

.btn-map-pdf:hover {
  background-color: #3c3b87;
  color: #ffffff;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
  transform: translateY(-1px);
}

/* Googleマップボタン */
.btn-map-google {
  background-color: #3c3b87;
  color: #ffffff;
  border: 2px solid #3c3b87;
}

.btn-map-google:hover {
  background-color: #2e2d6f;
  border-color: #2e2d6f;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
  transform: translateY(-1px);
}

/* -------------------------
   Smartphone
   ------------------------- */
@media screen and (max-width: 768px) {

  .access-map {
    padding: 24px 16px;
    margin: 32px 0 48px;
  }

  .access-map .access-heading {
    font-size: 1.8rem;
  }

  .access-map-caption {
    font-size: 1.3rem;
  }

  .access-map-actions {
    gap: 12px;
  }

  .btn-map {
    width: 100%;
    min-width: auto;
    font-size: 1.6rem;
    padding: 16px;
  }
}

/* 年末年始：用語（時間）をアイコン風に */
.access-block-newyear .access-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 0;
}

.access-block-newyear .access-list .term {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  padding: 2px 10px;
  border-radius: 999px;
  background: rgba(190, 139, 58, 0.15);
  border: 1px solid rgba(190, 139, 58, 0.35);
  color: #3c3b87;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.6;
  white-space: nowrap;
}

.access-block-newyear .access-list .desc {
  flex: 1;
  font-size: 1.5rem;
  line-height: 1.8;
}

.access-block-newyear .access-note {
  margin-top: 8px;
  line-height: 1.9;
}
