@charset "UTF-8";

/*------------------一日葬プランに含まれるものレイアウト調整------------------*/
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item {
    width: auto !important;
    height: 72px;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    border: 1px solid #ccc;
    padding: 1rem;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item a,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item a {
    width: 50px;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img {
    width: 50px;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img img,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img img {
    height: auto !important;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt {
    margin-top: 0;
}
[id*="direct-funeral_pc"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt p,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt p {
    line-height: 2rem;
}
[id*="direct-funeral_sp"] + div {
    display: none;
}

@media screen and (max-width: 900px) {
[id*="direct-funeral_pc"] + div {
    display: none;
}
[id*="direct-funeral_sp"] + div {
    display: block;
}
#direct-funeral_sp02 + div,#direct-funeral_sp03 + div {
    padding-top: 1rem;
}
[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}
}

@media screen and (max-width: 600px) {
[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item {
    grid-template-columns: 1fr;
    justify-items: center;
}
[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item {
    width: 100%  !important;
    margin-left: 0 !important;
}
#direct-funeral_sp03 + div .content_wrapper .wrapper_item .inner_item.empty {
    display: none;
}
}

/*------------------一日葬プランの追加できるオプションレイアウト調整------------------*/
[id*="option"] + div .content_wrapper .wrapper_item {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item {
    width: auto !important;
    height: 72px;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    border: 1px solid #ccc;
    padding: 1rem;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item a {
    width: 50px;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img {
    width: 50px;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img img,[id*="direct-funeral_sp"] + div .content_wrapper .wrapper_item .inner_item a .inner_item_img img {
    height: auto !important;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt {
    margin-top: 0;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item .inner_item_txt p {
    line-height: 2rem;
}
@media screen and (max-width: 900px) {
[id*="option"] + div .content_wrapper .wrapper_item {
    grid-template-columns: repeat(3, 1fr);
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item {
  margin-left: 0 !important;
}
}
@media screen and (max-width: 600px) {
[id*="option"] + div .content_wrapper .wrapper_item {
    grid-template-columns: 1fr;
    justify-items: center;
}
[id*="option"] + div .content_wrapper .wrapper_item .inner_item {
    width: 100%  !important;
}
[id*="option"] + .composite_box01.block_images_1:not(.col2) .inner_item:nth-of-type(2n-1):nth-last-of-type(2) {
  margin-bottom: 0 !important;
}
}

/*------------------一日葬プラングレードアッププラン画像入れ込み------------------*/
#text_table + section table tr:nth-child(2) td:nth-child(n + 2) {
  position: relative;
  height: 200px;
}
#text_table + section table tr:nth-child(2) td:nth-child(2)::before {
  content: "";
  position: absolute;   
  top: 1%;
  left: 1.25%;
  width: 95%;
  height: 95%;
  margin: 1.25%;
  background-image: url(/common/upload_data/memosa-sougijp/image/20240722185246.jpg);   
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
#text_table + section table tr:nth-child(2) td:nth-child(3)::before {
  content: "";
  position: absolute;   
  top: 1%;
  left: 1.25%;
  width: 95%;
  height: 95%;
  margin: 1.25%;
  background-image: url(/common/upload_data/memosa-sougijp/image/20240722185249.jpg);   
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
#text_table + section table tr:nth-child(2) td:nth-child(4)::before {
  content: "";
  position: absolute;   
  top: 1%;
  left: 1.25%;
  width: 95%;
  height: 95%;
  margin: 1.25%;
  background-image: url(/common/upload_data/memosa-sougijp/image/20240722185253.jpg);   
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}


/*------------------テーブルレイアウト調整------------------*/
#text_table + section .outer {
    overflow: auto;
}
#text_table + section .outer table {
    background: var(--i_bg_color);
    color: var(--i_txt_color);
    table-layout: auto;
    white-space: nowrap;
    width: 100%;
    word-wrap: break-word;
    border-collapse: collapse;
    min-width: 100%;
    border-spacing: 0;
}
#text_table + section .outer table thead {
    background-color: var(--i_sub2_color);
}
#text_table + section .outer table tr:nth-of-type(1)>th:first-child {
    width: 20%;
}
#text_table + section .outer table tr th {
    background-color: var(--i_sub2_color);
    border: 1px solid var(--i_border_color);
    text-align: center;
    vertical-align: middle;
    padding: 6px;
}
#text_table + section .outer table tr:nth-of-type(1)>td:first-child {
    width: 20%;
}
#text_table + section .outer table tr td {
    text-align: center;
    background-color: var(--i_bg_color);
    border: 1px solid var(--i_border_color);
    vertical-align: middle;
    padding: 6px;
}
#text_table + section .outer table .item {
  position: relative;
  padding-top: 3rem;
}
#text_table + section .outer table .item .free {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #da4444;
    border-radius: 6px;
    padding: 5px 10px;
    line-height: 1;
    font-size: 16px;
    color: #fff;
}
#text_table + section .outer table .item .free:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 45%;
    border-top: 6px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    color: #da4444;
}
#text_table + section .outer table .item .member {

}
#text_table + section .outer table .price_block {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
}
#text_table + section .outer table .price_block .price_name {
    border: 1px dotted #999;
    padding: 5px;
    font-size: 1.4rem;
    line-height: 1.2;
    margin-right: 5px;
    font-weight: bold;
}
#text_table + section .outer table .price_block .price {
    color: #da4444;
    font-size: 3rem;
    letter-spacing: 0;
    font-weight: 600;
}
#text_table + section .outer table .price_wrapper {
    display: inline-block;
    font-size: 1.4rem;
}
#text_table + section .outer table .price_wrapper p {
    text-align: center;
}
#text_table + section .outer table .price_block .price span {
    font-size: 2rem;
}
#text_table + section .outer table .price_block .price rt {
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 500;
}
@media screen and (max-width: 1300px) {
#text_table + section .outer table .price_block .price_name {
    font-size: 1rem;
}
#text_table + section .outer table .item .free {
  font-size: 1.4rem;
}
}
@media screen and (max-width: 900px) {
#text_table + section .outer table tr:nth-of-type(1)>td:first-child {
    padding: 0 3rem;
}
}
@media screen and (max-width: 500px) {
#text_table + section .outer table tr:nth-of-type(1)>th:first-child {
    width: inherit !important;
}
#text_table + section .outer table tr:nth-of-type(1)>td:first-child {
    width: inherit !important;
}
}