@media screen and (min-width: 768px) {
  .wp-block-table.is-style-underline table {
    border: none;
  }
  .wp-block-table.is-style-underline table tr th {
    border: none;
    background: #1b434d;
    font-size: 18px;
    color: #ffffff;
    font-weight: 500;
  }
  .wp-block-table.is-style-underline table tr td {
    border: none;
    position: relative;
    border-bottom: 1px solid #ffffff;
    padding: 30px 20px 30px 0;
    font-weight: 400;
    letter-spacing: 0.08em;
    font-size: 16px;
    vertical-align: top;
    font-weight: 500;
  }
  .wp-block-table.is-style-underline table tr td::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    inset: auto 0 0 0;
    background: #d9d4ce;
  }
  .wp-block-table.is-style-underline table tr td:nth-of-type(1) {
    width: 140px;
  }
  .wp-block-button.is-style-tag-button a {
    font-size: 15px;
    padding: 0 15px 2px;
    display: flex;
    align-items: center;
    min-width: max-content;
    width: auto;
    height: 32px;
  }
  .wp-block-button.is-style-tag-button a:not([href]) {
    text-decoration: none;
    cursor: auto;
  }
  body:has(.wp-block-details.is-style-faq-detail) {
    counter-reset: number 0;
  }
  .faq_details_wrap {
    counter-reset: number 0;
  }
  .wp-block-details.is-style-faq-detail {
    width: 825px;
    counter-increment: number 1;
    position: relative;
  }
  .wp-block-details.is-style-faq-detail::before {
    content: "Q" counter(number) ".";
    font-size: 20px;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 28px auto auto 40px;
  }
  .wp-block-details.is-style-faq-detail summary {
    border: 1px solid #d9d4ce;
    list-style: none;
    padding: 24px 80px 24px 76px;
    font-size: 18px;
    position: relative;
    font-feature-settings: "palt";
    font-weight: 500;
    font-family: "Noto Serif JP", serif;
    line-height: 1.6;
    letter-spacing: 0.08em;
  }
  .wp-block-details.is-style-faq-detail summary::-webkit-details-marker {
    display: none;
  }
  .wp-block-details.is-style-faq-detail summary::before {
    content: "";
    width: 20px;
    height: 1px;
    background: #1b434d;
    display: block;
    position: absolute;
    inset: 50% 40px auto auto;
    transform: translateY(-50%);
  }
  .wp-block-details.is-style-faq-detail summary::after {
    content: "";
    height: 20px;
    width: 1px;
    background: #1b434d;
    display: block;
    position: absolute;
    inset: 50% 49px 0 auto;
    transform: translateY(-50%);
  }
  .wp-block-details.is-style-faq-detail p {
    border: 1px solid #d9d4ce;
    border-top: none;
    margin: 0;
    font-size: 15px;
    padding: 30px 38px;
    line-height: 2;
    position: relative;
    display: flex;
    gap: 0.5em;
    font-weight: 400;
    font-feature-settings: "palt";
    letter-spacing: 0.08em;
  }
  .wp-block-details.is-style-faq-detail p::before {
    line-height: 1;
    padding-top: 5px;
    content: "A" counter(number) ".";
    font-size: 20px;
    color: #d46a0d;
    font-family: "Cormorant Infant", serif;
  }
  .wp-block-details.is-style-faq-detail[open] summary::after {
    display: none;
  }
  .wp-block-group.is-style-white-bg-group {
    counter-reset: wite_bg_number 0;
    padding: 0;
    margin: 0;
    width: 100%;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group {
    counter-increment: white_bg_number 1;
    position: relative;
    background: #ffffff;
    padding: 55px 110px 60px 110px;
    margin: 0 0 40px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .wp-block-group {
    margin: 0;
    gap: 11px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group::before {
    width: 40px;
    height: 20px;
    content: counter(white_bg_number, decimal-leading-zero);
    background: #d9d4ce;
    border-radius: 100vh;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.08em;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 65px auto auto 48px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .wp-block-columns {
    width: calc(100% + 20px);
    margin: 0 -20px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets .wp-block-heading {
    font-size: 20px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets p {
    font-size: 15px;
    line-height: 2;
    font-feature-settings: "palt";
    font-weight: 400;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group p {
    font-size: 18px;
    line-height: 1.78;
    font-weight: 400;
    font-feature-settings: "palt";
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group p + .is-style-list-style-orange.space_small {
    margin-top: 32px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange {
    padding-left: 27px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange h3 {
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: 500;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange li {
    font-size: 18px;
    line-height: 1.78;
    margin-bottom: 30px;
    font-weight: 400;
    font-feature-settings: "palt";
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange.space_small {
    margin-top: 42px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange.space_small li {
    margin-bottom: 19px;
  }
  .wp-block-group.is-style-grid-square-brackets {
    position: relative;
    padding: 35px 48px;
  }
  .wp-block-group.is-style-grid-square-brackets::before {
    content: "";
    width: 20px;
    height: 100%;
    background: inherit;
    position: absolute;
    inset: 0 auto 0 0;
    margin: 0 auto;
    border: 1px solid #d9d4ce;
    border-right: none;
  }
  .wp-block-group.is-style-grid-square-brackets::after {
    content: "";
    width: 20px;
    height: 100%;
    background: inherit;
    position: absolute;
    inset: auto 0 -1px 0;
    margin: 0 0 0 auto;
    border: 1px solid #d9d4ce;
    border-left: none;
  }
  .wp-block-group.is-style-group-flow {
    counter-reset: flow_number 0;
    padding: 0;
    margin: 0;
    width: 825px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group {
    counter-increment: flow_number 1;
    position: relative;
    padding: 0px 0px 56px 65px;
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group:nth-last-of-type(1) {
    padding-bottom: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group .wp-block-group {
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group .wp-block-heading {
    font-size: 28px;
    font-weight: 500;
    margin: 0 0 16px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group p {
    font-size: 15px;
    line-height: 2;
    font-feature-settings: "palt";
    font-weight: 400;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group::before {
    width: 40px;
    height: 20px;
    content: counter(flow_number, decimal-leading-zero);
    background: #d9d4ce;
    border-radius: 100vh;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 10px auto auto 0px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group::after {
    content: "";
    width: 1px;
    height: calc(100% + 10px);
    background: #d9d4ce;
    position: absolute;
    inset: 25px auto 0 19px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group:nth-last-of-type(1)::after {
    display: none;
  }
  .wp-block-list.is-style-list-style-orange > li::marker {
    color: #d46a0d;
  }
  .wp-block-group.is-style-group-orange-number {
    counter-reset: group_orange_number;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div {
    counter-increment: group_orange_number 1;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div p {
    font-feature-settings: "palt";
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.12em;
    line-height: 1.85;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div > div:nth-of-type(1)::before {
    content: counter(group_orange_number, decimal-leading-zero) ".";
    font-weight: 600;
    font-size: 20px;
    display: block;
    font-family: "Cormorant Infant", serif;
    color: #d46a0d;
    margin: 0 0 16px;
  }
}

@media screen and (max-width: 767.99px) {
  .wp-block-table.is-style-underline table {
    border: none;
  }
  .wp-block-table.is-style-underline table tr th {
    border: none;
    background: #1b434d;
    font-size: 20px;
    color: #ffffff;
    font-weight: 600;
  }
  .wp-block-table.is-style-underline table tr td {
    border: none;
    position: relative;
    border-bottom: 1px solid #ffffff;
    padding: 22px 20px 22px 0;
    font-weight: 500;
    letter-spacing: 0.08em;
    font-size: 14px;
    vertical-align: top;
  }
  .wp-block-table.is-style-underline table tr td::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    inset: auto 0 0 0;
    background: #d9d4ce;
  }
  .wp-block-table.is-style-underline table tr td:nth-of-type(1) {
    width: 140px;
  }
  .wp-block-table.is-style-underline table tr:nth-of-type(1) td {
    border-top: 1px solid #d9d4ce;
    position: relative;
    vertical-align: top;
  }
  .wp-block-table.is-style-underline table tr:nth-of-type(1) td::before {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    inset: 0 0 auto 0;
    background: #ffffff;
  }
  .wp-block-table.is-style-underline.sp_border_top_none table tr:nth-of-type(1) td {
    border-top: none;
  }
  .wp-block-table.is-style-underline.sp_border_top_none table tr:nth-of-type(1) td::before {
    display: none;
  }
  .table_sp_small_td .wp-block-table.is-style-underline table tr td:nth-of-type(1) {
    width: 100px;
  }
  .wp-block-button.is-style-tag-button a {
    font-size: 14px;
    padding: 0 15px 2px;
    display: flex;
    align-items: center;
    min-width: max-content;
    width: auto;
    height: 28px;
  }
  .wp-block-button.is-style-tag-button a:not([href]) {
    text-decoration: none;
    cursor: auto;
  }
  body:has(.wp-block-details.is-style-faq-detail) {
    counter-reset: number 0;
  }
  .faq_details_wrap {
    counter-reset: number 0;
    padding-left: 12px;
    padding-right: 12px;
  }
  .wp-block-details.is-style-faq-detail {
    width: 100%;
    counter-increment: number 1;
    position: relative;
  }
  .wp-block-details.is-style-faq-detail::before {
    content: "Q" counter(number) ".";
    font-size: 18px;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 22px auto auto 23px;
  }
  .wp-block-details.is-style-faq-detail summary {
    border: 1px solid #d9d4ce;
    list-style: none;
    padding: 20px 60px 22px 58px;
    font-size: 15px;
    position: relative;
    font-family: "Noto Serif JP", serif;
    line-height: 1.6;
    font-feature-settings: "palt";
    letter-spacing: 0.08em;
  }
  .wp-block-details.is-style-faq-detail summary::-webkit-details-marker {
    display: none;
  }
  .wp-block-details.is-style-faq-detail summary::before {
    content: "";
    width: 16px;
    height: 1px;
    background: #1b434d;
    display: block;
    position: absolute;
    inset: 50% 20px auto auto;
    transform: translateY(-50%);
  }
  .wp-block-details.is-style-faq-detail summary::after {
    content: "";
    height: 16px;
    width: 1px;
    background: #1b434d;
    display: block;
    position: absolute;
    inset: 50% 27px auto auto;
    transform: translateY(-50%);
  }
  .wp-block-details.is-style-faq-detail p {
    border: 1px solid #d9d4ce;
    border-top: none;
    margin: 0;
    font-size: 13px;
    padding: 22px 23px;
    line-height: 2;
    position: relative;
    display: flex;
    gap: 0.5em;
    font-feature-settings: "palt";
    letter-spacing: 0.08em;
  }
  .wp-block-details.is-style-faq-detail p::before {
    line-height: 1;
    padding-top: 5px;
    content: "A" counter(number) ".";
    font-size: 18px;
    color: #d46a0d;
    font-family: "Cormorant Infant", serif;
  }
  .wp-block-details.is-style-faq-detail[open] summary::after {
    display: none;
  }
  .wp-block-group.is-style-white-bg-group {
    counter-reset: wite_bg_number 0;
    padding: 0;
    width: 100%;
    margin: 0;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group {
    counter-increment: white_bg_number 1;
    position: relative;
    background: #ffffff;
    padding: 81px 30px 60px;
    margin: 0 0 20px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .wp-block-group {
    margin: 0;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group::before {
    width: 40px;
    height: 20px;
    content: counter(white_bg_number, decimal-leading-zero);
    background: #d9d4ce;
    border-radius: 100vh;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 50px auto auto 26px;
    letter-spacing: 0.08em;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets {
    gap: 10px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets .wp-block-heading {
    font-size: 20px;
    font-weight: 500;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets p {
    font-size: 16px;
    line-height: 2;
    font-feature-settings: "palt";
    font-weight: 400;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-grid-square-brackets p:not(.has-serif-font-font-family) {
    font-size: 14px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group p {
    font-size: 16px;
    line-height: 1.78;
    font-weight: 500;
    font-feature-settings: "palt";
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange {
    padding-left: 27px;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange h3 {
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: 500;
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange li {
    font-size: 16px;
    line-height: 1.78;
    margin-bottom: 17px;
    font-weight: 500;
    font-feature-settings: "palt";
  }
  .wp-block-group.is-style-white-bg-group > .wp-block-group .is-style-list-style-orange.space_small li {
    margin-bottom: 10px;
  }
  .wp-block-group.is-style-grid-square-brackets {
    position: relative;
    padding: 30px;
  }
  .wp-block-group.is-style-grid-square-brackets::before {
    content: "";
    width: 20px;
    height: 100%;
    position: absolute;
    inset: 0 auto 0 0;
    margin: 0 auto;
    border: 1px solid #d9d4ce;
    border-right: none;
  }
  .wp-block-group.is-style-grid-square-brackets::after {
    content: "";
    width: 20px;
    height: 100%;
    position: absolute;
    inset: auto 0 -1px 0;
    margin: 0 0 0 auto;
    border: 1px solid #d9d4ce;
    border-left: none;
  }
  .wp-block-group.is-style-group-flow {
    counter-reset: flow_number 0;
    padding: 0;
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group {
    counter-increment: flow_number 1;
    position: relative;
    padding: 2px 10px 33px 76px;
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group .wp-block-group {
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group:nth-last-of-type(1) {
    padding-bottom: 20px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group .wp-block-group {
    margin: 0;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group .wp-block-heading {
    font-size: 20px;
    font-weight: 500;
    margin: 0 0 2px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group p {
    font-size: 13px;
    line-height: 2;
    font-weight: 400;
    font-feature-settings: "palt";
  }
  .wp-block-group.is-style-group-flow > .wp-block-group::before {
    width: 45px;
    height: 20px;
    content: counter(flow_number, decimal-leading-zero);
    background: #d9d4ce;
    border-radius: 100vh;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Cormorant Infant", serif;
    position: absolute;
    inset: 8px auto auto 10px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group::after {
    content: "";
    width: 1px;
    height: calc(100% + 8px);
    background: #d9d4ce;
    position: absolute;
    inset: 25px auto 0 32px;
  }
  .wp-block-group.is-style-group-flow > .wp-block-group:nth-last-of-type(1)::after {
    display: none;
  }
  .wp-block-list.is-style-list-style-orange > li::marker {
    color: #d46a0d;
  }
  .wp-block-group.is-style-group-orange-number {
    counter-reset: group_orange_number;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div {
    counter-increment: group_orange_number 1;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div p {
    font-feature-settings: "palt";
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.12em;
  }
  .wp-block-group.is-style-group-orange-number .wp-block-column > div > div:nth-of-type(1)::before {
    content: counter(group_orange_number, decimal-leading-zero) ".";
    font-weight: 600;
    font-size: 17px;
    display: block;
    font-family: "Cormorant Infant", serif;
    color: #d46a0d;
    margin: 0 0 8px;
  }
}
