@charset "UTF-8";

/* spファースト */
.el_lv1Heading::before {
    line-height: 1.3;
}

.bl_section__single {
    padding-top: 60px;
}

.bl_snsListHeader {
    font-weight: bold;
}

.bl_singleWrapper_body {
    min-width: 0;
}

.bl_recentlyHeading {
    line-height: 1.3;
}

.bl_blogBody a[href^=http] {
    position: static;
}

.bl_blogBody a[href^=http]::after {
    display: none;
}

.bl_blogBody a:where(:not(#rtoc a)) {
    color: #1A0DAB;
    word-break: break-all;
}

.bl_blogBody img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 0;
}

.el_lv1Heading {
    font-style: normal;
    font-weight: 300;
}

.bl_blogBody h2 {
    margin-top: 45px;
    padding: 10px 14px;
}

.bl_blogBody h3 {
    margin-top: 40px;
    padding: 10px 14px;
}

.bl_blogBody h2+h3 {
    margin-top: 0;
}

.bl_blogBody h4 {
    padding: 8px 14px;
    font-size: 16px;
}

.bl_blogBody h3+h4 {
    margin-top: 0;
}

.bl_blogBody p {
    margin-bottom: 30px;
}

.bl_blogBody p:where(:has(+p)) {
    margin-bottom: 24px;
}

.pr-label {
    display: inline-block;
    background: #eee;
    border: 1px solid #ccc;
    color: #666;
    font-size: 11px;
    padding: 3px 8px;
    margin-left: 0;
    margin-right: 5px;
}


/* パーツ */
textarea {
    width: 100%;
    height: 200px;
    border: 1px solid #000;
}

.subhead {
    position: relative;
    font-size: 16px;
    font-family: "Shippori Mincho", serif;
    line-height: 1.5;
    padding-left: 1em;
    margin-top: 30px;
    margin-bottom: 16px;
}

.subhead::before {
    position: absolute;
    left: 0;
    top: 0.4em;
    content: "";
    display: block;
    width: 0.7em;
    aspect-ratio: 1 / 1;
    background: #B3907A;
}

.numhead {
    position: relative;
    font-size: 16px;
    font-family: "Shippori Mincho", serif;
    line-height: 1.5;
    padding-left: 2em;
    margin-top: 30px;
    margin-bottom: 16px;
}

.numhead-num {
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.6em;
    aspect-ratio: 1 / 1;
    color: #fff;
    font-size: 15px;
    background: #B3907A;
    border-radius: 50%;
}

.color-01 {
    color: #cf2e2e;
    font-weight: bold;
}

.color-02 {
    color: #ff6900;
    font-weight: bold;
}

.text-small {
    display: inline-block;
    font-size: 11px;
    color: #707070;
}

p .text-small {
    margin-bottom: 0;
}

.bold {
    font-weight: bold;
}

.marker {
    background: linear-gradient(transparent 64%, #fff99e 0%);
    font-weight: bold;
}

.size-full {
    margin-bottom: 30px;
}

.size-full img {
    width: 100%;
    height: auto;
    margin-bottom: 0;
}

.bl_blogBody table {
    width: 100%;
    border-radius: 0;
    overflow: visible;
}

.table {
    table-layout: fixed;
}

.bl_blogBody .table thead {
    background: #ebdfce;
    color: #232323;
}

.bl_blogBody .table thead th {
    font-weight: bold;
}

.bl_blogBody .table thead a {
    text-decoration: underline;
}

.table tbody th {
    background: #f9f9f9;
    font-weight: bold;
}

.bl_blogBody .table th,
.bl_blogBody .table td {
    padding: 10px 12px;
    border: 1px solid #cacaca;
    text-align: center;
}

.bl_blogBody .table th>:first-child,
.bl_blogBody .table td>:first-child {
    margin-top: 0;
}

.bl_blogBody .table th>:last-child,
.bl_blogBody .table td>:last-child {
    margin-bottom: 0;
}

.bl_blogBody table th:has(.table-logo-wrap),
.bl_blogBody table td:has(.table-logo-wrap) {
    padding: 8px;
}

.bl_blogBody table th:has(.c-btn),
.bl_blogBody table td:has(.c-btn) {
    padding: 8px;
}

.table-logo-wrap {
    width: 100%;
    max-width: 120px;
    margin-left: auto;
    margin-right: auto;
}

table .c-btn {}

table .c-btn a {
    font-size: 13px;
    padding: 12px;
}


table ul:not([class]),
table ol:not([class]),
table .check-list {
    width: fit-content;
    margin-right: auto;
    margin-left: auto;
    text-align-last: left;
}

.borderbox {
    border: 1px solid #cacaca;
    padding: 16px;
    margin-bottom: 30px;
}

[class$="box"]:has(+[class$="box"]) {
    margin-bottom: 10px;
}

[class$="box"]>:last-child {
    margin-bottom: 0;
}

[class$="box"]>:first-child {
    margin-top: 0;
}

.normalbox {
    background: #f9f9f9;
    padding: 16px;
    margin-bottom: 30px;
}

.boxhead {
    font-size: 16px;
    margin-bottom: 12px;
    font-family: "Shippori Mincho", serif;
}

.normalbox[data-box="color"] {
    background: #eaf4f2;
}

.bl_blogBody ul,
.bl_blogBody ol {
    margin-bottom: 30px;
}

.bl_blogBody ol li {
    padding-left: 16px;
}

.bl_blogBody ol li::before {
    top: 0.9em;
}

.bl_blogBody ul li::after {
    display: none;
}

.bl_blogBody ul li::before {
    display: block;
    position: absolute;
    top: 0.9em;
    left: 1px;
    aspect-ratio: 1 / 1;
    width: 6px;
    transform: translateY(-50%);
    border-radius: 50%;
    background-color: var(--wp--preset--color--brandy-rose);
    content: "";

}

.check-list {
    margin-bottom: 24px;
}

.flex {
    margin-bottom: 30px;
}

.flex img {
    margin-bottom: 26px;
}

.float {
    margin-bottom: 30px;
}

.float img {
    margin-bottom: 26px;
}


.bl_blogBody .check-list li {
    position: relative;
    padding-left: 1.6em;
}

.bl_blogBody .check-list li::before {
    position: absolute;
    left: 2px;
    top: 1em;
    content: '';
    width: 1em;
    aspect-ratio: 1 / 1;
    background: url(../img/check-list.png) center center / contain no-repeat;
}

.arrow-down {
    vertical-align: middle;
    color: #708E88;
    line-height: 1;
    width: 0;
    height: 0;
    margin: 30px auto;
    border-style: solid;
    border-color: transparent;
    border-width: 30px;
    border-top-color: currentColor;
    border-bottom: 0;
}

.arrow-down-small {
    vertical-align: middle;
    color: #708E88;
    line-height: 1;
    width: 0;
    height: 0;
    margin: 16px auto;
    border-style: solid;
    border-color: transparent;
    border-width: 16px;
    border-top-color: currentColor;
    border-bottom: 0;
}

.bl_blogBody blockquote,
.quote {
    position: relative;
    margin-bottom: 30px;
    border-radius: 0;
    font-style: italic;
}

.bl_blogBody blockquote::before,
.quote::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 20%;
    max-width: 80px;
    aspect-ratio: 1 / 1;
    border-top: 1px solid #232323;
    border-left: 1px solid #232323;
}

.bl_blogBody blockquote::after,
.quote::after {
    position: absolute;
    bottom: 0;
    right: 0;
    content: "";
    display: block;
    width: 20%;
    max-width: 80px;
    aspect-ratio: 1 / 1;
    border-bottom: 1px solid #232323;
    border-right: 1px solid #232323;
}

.bl_blogBody blockquote>:last-child,
.quote>:last-child {
    margin-bottom: 0;
}

.fukidashi {
    background: #B3907A;
    padding: 10px 14px;
    position: relative;
    width: fit-content;
    min-width: 40%;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    margin: 30px auto 20px;
    text-align: center;
    letter-spacing: .06em;
}


.fukidashi::before {
    background: inherit;
    bottom: -8px;
    content: "";
    width: 18px;
    height: 18px;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%) rotate(45deg);
    transform: translateX(-50%) rotate(45deg);
    visibility: visible;
}

.matomebox {
    position: relative;
    border: 6px double #708E88;
    margin-top: 40px;
    margin-bottom: 30px;
    padding: 16px;
}

.matomebox>:last-child {
    margin-bottom: 0;
}

.matomebox-ttl {
    position: relative;
    display: block;
    width: fit-content;
    text-align: center;
    margin: 0 auto 20px;
    padding-bottom: 10px;
    font-size: 17px;
    font-weight: bold;
}

.matomebox-ttl::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    height: 2px;
    width: 20%;
    background: #708e88;
}

.matomebox-inner {
    padding: 20px;
}

.surveybox {
    background: #f9f9f9;
    padding: 16px;
    margin-bottom: 30px;
}

.surveybox-inner>:last-child {
    margin-bottom: 0;
}

.surveybox-ttl {
    font-size: 16px;
    text-align: center;
    position: relative;
    margin-bottom: 24px;
    font-weight: bold;
    color: #B3907A;
    padding-bottom: 12px;
    border-bottom: 2px dashed #B3907A;
}

.smalltextbox {
    padding: 0;
    margin-bottom: 30px;
}

.smalltextbox-ttl {
    position: relative;
    width: fit-content;
    font-size: 15px;
    font-weight: bold;
    margin: 0 10px -1em 10px;
    padding: 0 8px;
    background: #fff;
}

.smalltextbox-inner {
    padding: 24px 16px 16px;
    font-size: 13.5px;
    border: 1px solid #333;
}

.smalltextbox-inner>:last-child {
    margin-bottom: 0;
}

.c-btn {
    width: 100%;
    max-width: 400px;
    margin: 30px auto 40px;
}

.c-btn a {
    position: relative;
    display: block;
    width: 100%;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    padding: 14px 20px 15px;
    border-radius: 10px;
    text-align: center;
    background: #ffa661;
    letter-spacing: .08em;
    box-shadow: inset 0 -8px 5px -5px rgba(0, 0, 0, 0.3);
}

.tag {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-content: center;
    margin-bottom: 30px;
}

.bl_blogBody .tag .item {
    background: #f9f9f9;
    border: 1px solid #dadada;
    border-radius: 4px;
    color: #8b9195;
    font-size: 12px;
    letter-spacing: 0;
    display: inline-block;
    padding: 8px 10px;
    margin-bottom: 0;
    line-height: 1.4;
}

.bl_blogBody .tag .item::before {
    display: none;
}

.tag .item.on {
    background: #eaf4f2;
    border: 1px solid #708E88;
}


.scroll-wrap {
    overflow-x: auto;
    margin-bottom: 30px;
    width: 100%;
}

.bl_blogBody .scroll-wrap table {
    min-width: 110%;
    margin-bottom: 4px;
}


.scroll-wrap table thead th {
    width: min(38vw, 180px);
}

.scroll-wrap table thead th:first-of-type {
    width: min(30vw, 160px);
}

table.stickytable-top thead {
    position: sticky;
    top: 54px;
    z-index: 10;
}

table.stickytable-top thead th {
    position: relative;
}

table.stickytable-top thead th::after {
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    background: #cacaca;
}

table.stickytable-top .c-btn a {
    font-size: 12px;
    padding: 8px;
}

.stickytable-left {
    will-change: transform;
}

.bl_blogBody table.stickytable-left thead {
    background: #f9f9f9;
    color: #232323;
}

table.stickytable-left thead th:first-of-type,
table.stickytable-left tbody th {
    position: sticky;
    left: 0;
    background: #ebdfce;
    z-index: 10;
}

.jump {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    font-size: 15px;
    margin-bottom: 30px;
    letter-spacing: .08em;
}

.jump .item {
    text-align: center;
    margin-bottom: 0;
    padding-left: 0;
}

.jump .item::before {
    display: none;
}

.jump a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 10px;
    text-decoration: none;
    color: #232323;
    border: #E8E5E3 solid 1px;
    font-family: "Shippori Mincho", serif;
}

.jump a:hover {
    background: #527770;
    color: #fff;
    opacity: 1;
}

.numbering {}

.bl_blogBody .numbering li {
    margin-bottom: 24px;
    padding-left: 0;
}

.bl_blogBody .numbering li::before {
    display: none;
}

.numbering-ttl {
    position: relative;
    padding-left: 2.3em;
    margin-top: 1.6em;
    margin-bottom: 1em;
    font-size: 17px;
    font-family: "Shippori Mincho", serif;
}

.bl_blogBody .numbering-ttl p {
    margin-bottom: 0;
}

.numbering-num {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.8em;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: #708E88;
    color: #fff;
}


.pickup {
    position: relative;
    margin: 34px 0 10px;
    padding: 10px 14px;
    border-bottom: 2px solid #B3907A;
    font-family: "Shippori Mincho", serif;
}

.pickup::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    display: block;
    height: 2px;
    width: 100px;
    background: #b3907a;
}

.pickup-name {
    font-size: 1.5454545455rem;
    font-weight: bold;
}

.pickup-name>:last-child {
    margin-bottom: 0;
}

.pickup-smalltext {
    font-size: 12px;
}

.pickup>:last-child {
    margin-bottom: 0;
}

.ranking {
    margin-bottom: 24px;
    font-size: 22px;
    font-family: "Shippori Mincho", serif;
}

.ranking-head {
    position: relative;
    margin: 34px 0 10px;
    padding: 10px 14px 10px 55px;
    font-size: 17px;
    font-weight: bold;
    border-bottom: 2px solid #B3907A;
}

.ranking-head::before {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    display: block;
    height: 2px;
    width: 100px;
    background: #b3907a;
}

.ranking-catch {
    display: block;
    font-size: 12px;
    font-weight: normal;
}

.ranking-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    background: url(../img/rank-04.svg) center center / contain no-repeat;
    width: 33px;
    font-size: 12px;
    aspect-ratio: 1 / 1;
}

.ranking-head .ranking-icon_01 {
    background: url(../img/rank-01.svg) center center / contain no-repeat;
}

.ranking-head .ranking-icon_02 {
    background: url(../img/rank-02.svg) center center / contain no-repeat;
}

.ranking-head .ranking-icon_03 {
    background: url(../img/rank-03.svg) center center / contain no-repeat;
}


.step {
    margin-bottom: 24px;
}

.step-ttl {
    display: flex;
    align-items: center;
    gap: 18px;
    font-size: 17px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 16px;
    color: #B3907A;
    font-family: "Marcellus", serif;
}

.step-num {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 50px;
    aspect-ratio: 1 / 1;
    font-size: 20px;
    background: #F5EFE6;
    color: #B3907A;
    font-weight: normal;
}

.step-ttl p {
    margin-bottom: 0;
}

.step-inner>* {
    margin-bottom: 12px;
}

.step-inner {}

.step-inner>:first-child {
    margin-top: 0;
}

.step-inner>:last-child {
    margin-bottom: 0;
}

.relatedpost {
    margin: 40px 0 30px;
}

.relatedpost+.relatedpost {
    margin-top: 20px;
}

.bl_blogBody .relatedpost-ttl {
    background: #767676;
    font-size: 15px;
    text-align: center;
    padding: 10px 14px;
    color: #fff;
    margin-bottom: 14px;
    font-family: "Marcellus", serif;
}

.relatedpost-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 14px;
}

.relatedpost-post .image-wrap {
    width: 100%;
    margin-bottom: 8px;
}

.relatedpost-post .image_wrap img {
    display: block;
    width: 100%;
    height: auto;
}

.bl_blogBody .relatedpost-post-ttl {
    margin-bottom: 0;
    font-size: 13px;
}

.faq-wrap {
    margin-bottom: 30px;
}

.faqQ {
    position: relative;
    padding: 16px 40px;
    cursor: pointer;
    font-size: 14px;
    border-top: 1px solid #b3907a;
}

.faqQ::before,
.faqQ::after {
    position: absolute;
    content: "";
    display: block;
    background: #b3907a;
}

.faqQ::before {
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    width: 16px;
    height: 1px;
}

.faqQ::after {
    top: 50%;
    right: 21px;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    transition: .4s;
}

.faqQ.action::after {
    transform: translateY(-50%) rotate(-90deg);
}

.faqQ-icon {
    position: absolute;
    top: 14px;
    left: 10px;
    font-size: 16px;
    font-family: "Marcellus", serif;
}

.faqQ>:last-child,
.faqA>:last-child {
    margin-bottom: 0;
}

.faqQ p {
    font-weight: bold;
}

.faqA {
    position: relative;
    padding: 0 0 16px 40px;
    font-size: 14px;
    display: none;
}

.faqA-icon {
    position: absolute;
    top: -1px;
    left: 10px;
    font-size: 16px;
    font-family: "Marcellus", serif;
}

.search-container table {
    max-width: 100%;
    word-break: break-all;
}

.search-container table thead th:nth-child(2) {
    width: 15%;
}


.right-link,
.right-link-icon {
    width: fit-content;
    font-size: 13px;
    margin: auto 0 auto auto;
    margin-bottom: 30px;
    text-align: right;
}

.right-link-icon a {
    position: relative;
    padding-left: 1.2em;
}

.right-link-icon a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0px;
    display: block;
    background: url(../img/icon-link-arrow.svg) center center / contain no-repeat;
    width: 1em;
    aspect-ratio: 1 / 1;
}

.right-link:has(+.right-link),
.right-link:has(+.right-link-icon),
.right-link-icon:has(+.right-link),
.right-link-icon:has(+.right-link-icon) {
    margin-bottom: 8px;
}

.imgscrollbox {
    width: 100%;
    background: #f7f7f7;
    padding: 20px;
    overflow-x: auto;
    white-space: nowrap;
    margin-bottom: 30px;
}

.imgscrollbox-wrap {
    width: fit-content;
    display: flex;
    justify-content: center;
}

.bl_blogBody .imgscrollbox-list {
    display: flex;
    padding: 0;
    margin: 0;
    list-style: none;
    margin-bottom: 0;
}

.bl_blogBody .imgscrollbox-list li {
    flex: 0 0 calc(50% - 16px);
    max-width: calc(50% - 16px);
    margin: 0 8px;
    padding-left: 0;
    text-align: center;
    position: relative;
}

.bl_blogBody .imgscrollbox-list li::before {
    display: none;
}


.bl_blogBody .imgscrollbox-list li:last-of-type::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 100%;
    height: 1px;
    width: 26px;
    background-color: transparent;
}

.imgscrollbox-list img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 8px;
}

.imgscrollbox-list .caption {
    display: block;
    max-width: 100%;
    font-size: 12px;
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: break-word;
    text-align: left;
}


@media screen and (min-width: 768px) {
    .bl_blogBody .imgscrollbox-list li {
        flex: 0 0 calc(33.33% - 16px);
        max-width: calc(33.33% - 16px);
    }
}

.imgscrollbox.center li {
    width: 33.33%;
}

.imgscrollbox.center {
    overflow-x: hidden;
}

.imgscrollbox.center .imgscrollbox-list {
    justify-content: center;
    gap: 4px;

}

.tabarea {
    margin-bottom: 30px;
}

.bl_blogBody .tab-list {
    display: flex;
    gap: 4px;
    margin-bottom: 0;
}

.bl_blogBody .tab-list .tab.active {
    position: relative;
    background-color: #708E88;
    border: 2px solid #708E88;
    border-bottom: none;
    position: relative;
    color: #fff;
}

.bl_blogBody .tab-list .tab {
    border-radius: 5px 5px 0 0;
    flex: auto;
    text-align: center;
    border: 2px solid #d4d4d4;
    border-bottom: none;
    cursor: pointer;
    width: 100%;
    min-height: 50px;
    padding: 4px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 12px;
    background: #f7f7f7;
    line-height: 1.4;
    margin-bottom: 0;
}

.bl_blogBody .tab::before {
    display: none;
}

.tab-inner {
    display: none;
    padding: 12px;
    border: 2px solid #d4d4d4;
    border-top: none;
}

.tab-inner.show {
    display: block;
}

.tab-inner>:last-child {
    margin-bottom: 0;
}


.meritdemerit {
    margin-bottom: 30px;
}

.meritdemerit:has(+.meritdemerit) {
    margin-bottom: 10px;
}

.meritdemerit[data-type="merit"] {
    border: 2px solid #ffa661;
}

.meritdemerit[data-type="merit"] .meritdemerit-ttl {
    background: #fefce0;
    border-bottom: 2px solid #ffa661;
}

.meritdemerit[data-type="demerit"] {
    border: 2px solid #bfbbbe;
}

.meritdemerit[data-type="demerit"] .meritdemerit-ttl {
    background: #f7f7f7;
    border-bottom: 2px solid #bfbbbe;
}

.meritdemerit-ttl {
    padding: 10px 20px;
    line-height: 1.6;
    font-size: 17px;
    font-family: "Shippori Mincho", serif;
}

.meritdemerit-inner {
    padding: 16px 20px;
}

.meritdemerit-inner>:last-child {
    margin-bottom: 0;
}

.meritdemerit-list {
    position: relative;
    margin: 0;
    margin-bottom: 16px;
}

.meritdemerit-list li {
    padding-left: 16px;
    position: relative;
    margin-bottom: 8px;
}

.meritdemerit-list li:last-child {
    margin-bottom: 0;
}

.meritdemerit[data-type="merit"] .meritdemerit-list li:before {
    background-color: #ffa661;
}

.meritdemerit[data-type="demerit"] .meritdemerit-list li:before {
    background-color: #45303e;
}

.review {
    overflow-x: scroll;
    display: flex;
    gap: 16px;
    margin-bottom: 24px;
}

.review-wrap {
    width: 100%;
    min-width: 86%;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    align-items: center;
    -webkit-align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #f7f7f7;
    padding: 20px;
    border: 1px solid #e9e2d2;
    white-space: normal;
    overflow: hidden;
    scroll-snap-align: center;
}

.review-top {
    width: 100%;
    margin-bottom: 0;
}

.review-name {
    font-weight: 700;
    margin-bottom: 20px;
    font-size: 17px;
}

.bl_blogBody .review-label {
    width: 100%;
    list-style: none;
    margin-left: 0;
    padding-left: 0;
    margin-bottom: 20px;
}

.bl_blogBody .review-label li {
    padding-left: 0;
    font-size: 14px;
}

.bl_blogBody .review-label li::before {
    display: none;
}

.review-label span {
    display: inline-block;
    padding: 4px 6px;
    border-radius: 10px;
    margin-right: 8px;
    background: #708E88;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    letter-spacing: .08em;
}

.review-bottom img {
    margin-bottom: 20px;
}

.map {
    margin-bottom: 30px;
}

.map-ttl {
    position: relative;
    padding: 10px 14px;
    margin: 30px auto 28px;
    width: fit-content;
    min-width: 40%;
    font-weight: bold;
    text-align: center;
    letter-spacing: .06em;
    border: 1px solid #232323;
    background: transparent;
}

.map-ttl::before {
    position: absolute;
    content: "";
    border-top: 15px solid #232323;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    left: 50%;
    transform: translateX(-50%);
    bottom: -14px;
    z-index: 1;
}

.map-ttl::after {
    position: absolute;
    content: "";
    border-top: 14px solid #fff;
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
    left: 50%;
    transform: translateX(-50%);
    bottom: -13px;
    z-index: 2;
}

.acco {
    margin-bottom: 30px;
}

.acco:has(+.acco) {
    margin-bottom: 8px;
}

.acco-ttl {
    position: relative;
    cursor: pointer;
    border: 1px solid #232323;
    margin: 0;
    padding: 12px 40px 12px 16px;
    position: relative;
    background: #fff;
    font-weight: bold;
}

.acco-ttl.action {
    background: #F5EFE6;
}

.acco-ttl::before,
.acco-ttl::after {
    position: absolute;
    content: "";
    display: block;
    background: #b3907a;
}

.acco-ttl::before {
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    width: 16px;
    height: 1px;
}

.acco-ttl::after {
    top: 50%;
    right: 21px;
    transform: translateY(-50%);
    width: 1px;
    height: 16px;
    transition: .4s;
}

.acco-ttl.action::after {
    transform: translateY(-50%) rotate(-90deg);
}

.acco-inner {
    display: none;
    padding: 16px;
}

.acco-inner>:last-child {
    margin-bottom: 0;
}

.acco-flex {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.acco-subttl {
    flex-shrink: 0;
    font-weight: bold;
}