@charset "UTF-8";

:root {
    --card-bg: #ffffff;
    --text-color: #5B5B5B;
    --text-accent: #556BA4;
    --text-strong: #333333;
    --text-small: #696969;
    --link-color: #344267;

    --card-radius: 1.25rem;
    --img-radius: 0.625rem;

    --shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    --cubic: cubic-bezier(.51, .4, .36, 1);

    --cat-01: #ECB1C6;
    --cat-02: #A8B4E3;
    --cat-03: #DDA0DD;
    --cat-04: #ADD8E6;

    --color-accent: #7184B3;
    --color-gray: #F5F7FA;
    --color-blue: #DCEAFF;
    --color-sky: #A8B4E3;
    --color-white: #ffffff;
    --color-yellow: #FFFF83;
    --color-orange: #EB8400;

    --pickup-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    --pickup-radius: 1.2rem;


    --fs-8px: 0.5rem;
    --fs-10px: 0.625rem;
    --fs-12px: 0.75rem;
    --fs-13px: 0.8125rem;
    --fs-14px: 0.875rem;
    --fs-15px: 0.9375rem;
    --fs-16px: 1rem;
    --fs-17px: 1.0625rem;
    --fs-18px: 1.125rem;
    --fs-20px: 1.25rem;
    --fs-22px: 1.375rem;
    --fs-24px: 1.5rem;
    --fs-25px: 1.5625rem;
    --fs-30px: 1.875rem;
    --fs-35px: 2.1875rem;
    --fs-38px: 2.375rem;
    --fs-42px: 2.625rem;
    --fs-50px: 3.125rem;
}

/* ------- PLUS作成記事専用スタイル ------- */
.column-p .article__contents * {
    box-sizing: border-box;
}

.column-p .article__contents .contents p {
    font-size: var(--fs-16px);
    margin: var(--fs-20px) auto;
    line-height: 1.6;
}

.column-p .article__contents ul,
.column-p .article__contents ol {
    padding-left: 0;
}

.column-p .article__contents li {
    list-style-type: none;
}

.column-p .article__contents a {
    transition: .4s;
}

.column-p .article__contents a:hover {
    opacity: .6;
}

.column-p .article__contents .contents #toc {
    background: var(--color-gray);
    padding: 0;
    border-radius: var(--fs-12px);
    margin: var(--fs-30px) 0;
    overflow: hidden;
    transition: all 0.3s var(--cubic);
}

.column-p .article__contents .contents #toc .toc__header {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: none;
    border: none;
    outline: none;
    color: var(--text-color);
    padding: var(--fs-20px);
    overflow: hidden;
    position: relative;
    cursor: pointer;
}

.column-p .article__contents .contents #toc .title {
    font-family: 'Zen Old Mincho', serif;
    font-weight: 400;
    font-size: var(--fs-20px);
    letter-spacing: 0.15em;
    text-align: center;
    line-height: 1;
}

.column-p .article__contents .contents #toc .icon {
    position: absolute;
    right: var(--fs-30px);
}

.column-p .article__contents .contents #toc .icon::before,
.column-p .article__contents .contents #toc .icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--fs-20px);
    height: 1px;
    background-color: var(--text-accent);
    transform: translate(-50%, -50%);
    transition: all 0.3s var(--cubic);
}

.column-p .article__contents .contents #toc .icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.column-p .article__contents .contents #toc.open .icon::after {
    transform: translate(-50%, -50%) rotate(180deg);
}

.column-p .article__contents .contents #toc .toc__list {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s var(--cubic);
    list-style: none;
    padding: 0 var(--fs-16px);
    margin: 0;
    transition: max-height .35s var(--cubic);
    counter-reset: toc-counter;
}

.column-p .article__contents .contents #toc.toc--no-anim .toc__list {
    transition: none !important;
}

.column-p .article__contents .contents #toc.open .toc__list {
    padding: 0 var(--fs-16px) var(--fs-20px);
}

.column-p .article__contents .contents #toc .toc__item {
    position: relative;
    padding-left: 0;
    border-top: 1px solid var(--color-blue);
}

.column-p .article__contents .contents #toc .toc__item::before {
    counter-increment: toc-counter;
    content: counter(toc-counter);

    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);

    width: 30px;
    height: 30px;
    background: var(--color-accent);
    color: #fff;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 15px;
    font-weight: bold;
}

.column-p .article__contents .contents #toc .toc__item:first-child {
    border-top: none;
}

.column-p .article__contents .contents #toc .toc__item a {
    display: block;
    padding: var(--fs-12px) 0 var(--fs-12px) var(--fs-42px);
    text-decoration: none;
    font-size: var(--fs-15px);
    color: var(--text-strong);
    line-height: 1.483;
}

.column-p .article__contents .contents #toc.close .toc__list {
    max-height: 0;
    padding-bottom: 0;
}

.column-p .article__contents .contents #toc.close .toc__toggle {
    transform: rotate(180deg);
}

.column-p .article__contents .reservation {
    background: linear-gradient(to bottom, #7184B3, #8699c6);
    color: #fff;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .reservation {
        padding: 0 24px;
    }
}

.column-p .article__contents .reservation__inner {
    width: 1020px;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 4px;
    padding: 50px 58px 54px;
    box-sizing: border-box;
    position: relative;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .reservation__inner {
        padding: 40px 0 40px;
    }
}


.column-p .article__contents .reservation__bnr {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 336px;
}

.column-p .article__contents .reservation__h2,
.column-p .article__contents #reservation .reservation__h2 {
    font-size: 2.6rem;
    font-weight: 500;
    position: relative;
    margin: 0;
    font-weight: normal;
    text-align: center;
    letter-spacing: 3px;
    color: initial;
    border-bottom: none;
    color: #fff;
    font-weight: bold;
    background: none;
    border: none;
}

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

    .column-p .article__contents .reservation__h2,
    .column-p .article__contents #reservation .reservation__h2 {
        font-size: 1.5rem;

    }
}

.column-p .article__contents .reservation__h2::before {
    content: attr(data-en);
    color: #f9f06f;
    font-size: 1.2rem;
    display: block;
    text-align: center;
    margin-bottom: 10px;
    letter-spacing: 1.2px;
    font-family: oswald;
    font-weight: 400;
    line-height: 1;
}

.column-p .article__contents .reservation__txt {
    width: 100%;
    max-width: 682px;
    margin: 32px auto 0;
    line-height: 2;
    text-align: left;
    font-size: 16px;
}

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

    .column-p .article__contents .reservation__h2::before {
        font-size: 1rem;

    }

    .column-p .article__contents .reservation__txt {
        margin-top: 20px;
        font-size: 14px;
    }
}

.column-p .article__contents .reservation__link {
    background: #FFF;
    border-radius: 4px;
    margin: 48px auto 0;
    padding: 24px;
    width: 100%;
    max-width: 740px;
    display: flex;
    flex-wrap: wrap;
    gap: 24px 12px;
}

.column-p .article__contents .reservation__link>div {
    width: calc(50% - 6px);
    display: flex;
    justify-content: center;
}

.column-p .article__contents .reservation__link .rsvBtn {
    width: 100%;
    padding: 22px 0;
}

.column-p .article__contents .reservation__link a::after {
    content: "";
    background-image: url(../img/ico-circlearrow-wh-r_.svg);
    width: 24px;
    height: 24px;
    background-size: 24px;
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
}

.column-p .article__contents .reservation__link .call {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
}

.column-p .article__contents .reservation__link .call .ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0 0 0.5em;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: var(--color-accent);
    border-bottom: 1px solid var(--color-accent);
}

.column-p .article__contents .reservation__link .call .body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.column-p .article__contents .reservation__link .call .body .number {
    font-size: 48px;
}

.column-p .article__contents .reservation__link .call .body .small {
    font-size: 14px;
    text-align: center;
    color: var(--Text);
}


.column-p .article__contents .sns__share {
    display: none;
}



.column-p .article__contents .bnr {
    display: none;
}

.column-p .article__contents .bnr__bottom {
    display: none;
}

.column-p .article__contents img.table__ico {
    width: 32px;
    display: block;
    margin-top: 10px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 0;
}

.column-p .article__contents .contents h2 {
    color: var(--text-color);
    font-size: var(--fs-20px);
    font-weight: 500;
    border-left: 3px solid var(--color-accent);
    background: var(--color-gray);
    padding: var(--fs-12px) var(--fs-8px) var(--fs-12px) var(--fs-15px);
    line-height: 1.483;
    margin: var(--fs-30px) 0 var(--fs-15px);
}

.column-p .article__contents .contents h3 {
    border-top: 2px solid var(--color-accent);
    border-bottom: 2px solid var(--color-accent);
    font-size: var(--fs-18px);
    line-height: 1.483;
    margin: var(--fs-30px) 0 var(--fs-15px);
    padding: var(--fs-12px) var(--fs-8px);
}

.column-p .article__contents .contents h4 {
    font-size: var(--fs-16px);
    line-height: 1.483;
    margin: var(--fs-20px) 0 var(--fs-15px);
}

.column-p .article__contents .contents .subhead {
    font-size: var(--fs-16px);
    font-weight: 700;
    color: var(--color-accent);
    line-height: 1.5;
    letter-spacing: 0.08em;
    padding-left: var(--fs-35px);
    margin-top: var(--fs-20px) !important;
    position: relative;
    border-bottom: 2px solid var(--color-accent);
    padding-top: 2px;
    padding-bottom: var(--fs-8px);
    margin-bottom: var(--fs-16px);
}

.column-p .article__contents .contents .green {
    font-weight: bold;
    color: var(--link-color);
}

.column-p .article__contents .contents .red {
    font-weight: bold;
    color: #FF0000;
}

.column-p .article__contents .contents .caution {
    margin-top: var(--fs-12px);
    display: block;
    line-height: 1.6;
    font-size: var(--fs-12px);
    color: var(--text-small);
}

.column-p .article__contents .contents .b {
    font-weight: 700;
}

.column-p .article__contents .marker__txt {
    border-bottom: dashed 1px var(--color-accent);
    font-weight: 700;
    color: var(--color-accent);
}

.column-p .article__contents .ft24 {
    font-size: 24px;
}

.column-p .article__contents .ft32 {
    font-size: 32px;
}

.column-p .article__contents .ft40 {
    font-size: 40px;
}

@media (min-width: 768px) {
    .column-p .article__contents .ft24 {
        font-size: 18px;
    }

    .column-p .article__contents .ft32 {
        font-size: 24px;
    }

    .column-p .article__contents .ft40 {
        font-size: 32px;
    }

}





.column-p .article__contents .contents h4+p {
    margin-top: var(--fs-8px) !important;
}

.column-p .article__contents .contents img {
    margin: var(--fs-15px) auto;
}

.column-p .article__contents .contents a {
    color: var(--color-orange);
    font-size: var(--fs-14px);
    text-decoration: underline;
}

.column-p .article__contents .contents p a:not([class]) {
    color: var(--color-orange);
    font-size: var(--fs-14px);
    font-weight: 600;
    text-decoration: none;
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: repeat-x;
    background-size: 100% 1px;
    transition: background-size 0.3s var(--cubic);
    word-break: break-word;
    display: inline;
}

.column-p .article__contents .contents p a:not([class])::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.3em;
    transition: transform 0.3s var(--cubic);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTAgMEM5LjQ0Njg3IDAgOSAwLjQ0Njg3NSA5IDFDOSAxLjU1MzEzIDkuNDQ2ODcgMiAxMCAySDEyLjU4NDRMNi4yOTA2MiA4LjI5Mzc1QzUuOSA4LjY4NDM3IDUuOSA5LjMxODc1IDYuMjkwNjIgOS43MDkzOEM2LjY4MTI1IDEwLjEgNy4zMTU2MyAxMC4xIDcuNzA2MjUgOS43MDkzOEwxNCAzLjQxNTYzVjZDMTQgNi41NTMxMiAxNC40NDY5IDcgMTUgN0MxNS41NTMxIDcgMTYgNi41NTMxMiAxNiA2VjFDMTYgMC40NDY4NzUgMTUuNTUzMSAwIDE1IDBIMTBaTTIuNSAzQzEuMTE4NzUgMyAwIDQuMTE4NzUgMCA1LjVWMTMuNUMwIDE0Ljg4MTMgMS4xMTg3NSAxNiAyLjUgMTZIMTAuNUMxMS44ODEzIDE2IDEzIDE0Ljg4MTMgMTMgMTMuNVYxMUMxMyAxMC40NDY5IDEyLjU1MzEgMTAgMTIgMTBDMTEuNDQ2OSAxMCAxMSAxMC40NDY5IDExIDExVjEzLjVDMTEgMTMuNzc1IDEwLjc3NSAxNCAxMC41IDE0SDIuNUMyLjIyNSAxNCAyIDEzLjc3NSAyIDEzLjVWNS41QzIgNS4yMjUgMi4yMjUgNSAyLjUgNUg1QzUuNTUzMTIgNSA2IDQuNTUzMTIgNiA0QzYgMy40NDY4OCA1LjU1MzEyIDMgNSAzSDIuNVoiIGZpbGw9IiNFQjg0MDAiLz48L3N2Zz4=");
    background-size: contain;
    background-repeat: no-repeat;
}

.column-p .article__contents .contents p a:not([class]):hover,
.column-p .article__contents .contents p a:not([class]):focus {
    background-size: 100% 3px;
}


.column-p .article__contents .contents .b {
    font-weight: 700;
}

.column-p .article__contents .contents .green {
    font-weight: bold;
    color: var(--link-color);
}

.column-p .article__contents .contents .red {
    font-weight: bold;
    color: #FF0000;
}

.column-p .article__contents .contents .orange {
    font-weight: bold;
    color: var(--color-accent);
}

.marker__txt {
    border-bottom: dashed 1px var(--color-accent);
    font-weight: 700;
    color: var(--color-accent);
}

.column-p .article__contents .contents .c__btn {
    display: flex;
    justify-content: center;
    margin: 20px auto 30px;
}

.column-p .article__contents .contents .causeBtnLink {
    text-align: center;
}

.column-p .article__contents .contents .c__btn a,
.column-p .article__contents .contents .causeBtnLink__btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
    background: var(--color-orange);
    color: var(--color-white);
    font-weight: 500;
    border-radius: 9999px;
    margin: 0 auto;
    padding: var(--fs-24px) var(--fs-16px);
    font-size: var(--fs-15px);
    text-decoration: none;
    text-align: center;
    line-height: 1.4;
    width: 100%;
    max-width: 420px;
    cursor: pointer;
}

.column-p .article__contents .contents .c__btn a span {
    letter-spacing: 0.1em;
}

.column-p .article__contents .contents .c__btn a::before {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
    position: absolute;
    right: 1rem;
    transition: 0.3s var(--cubic);
}

.column-p .article__contents .contents .c__btn a::after {
    content: "";
    display: inline-block;
    position: absolute;
    right: 1.4rem;
    clip-path: polygon(0 7%, 7% 0, 57% 50%, 7% 100%, 0 93%, 43% 50%, 0 7%);
    height: var(--fs-12px);
    aspect-ratio: 1;
    background-color: var(--color-white);
}

.column-p .article__contents .contents .c__btn a:hover::before {
    transform: translateX(3rem);
    border-radius: 1px;
    width: 50rem;
    height: 50rem;
    aspect-ratio: 1;
}

.column-p .article__contents .contents .taglist {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    row-gap: var(--fs-10px);
    column-gap: var(--fs-8px);
    margin: 20px auto;
}

.column-p .article__contents .contents .taglist .tagitem {
    display: inline-block;
    line-height: 1;
    width: auto !important;
    background: #F3F3F3;
    border-radius: 9999px;
    padding: 0.9em 1em;
    font-size: 12px;
    color: var(--link-color);
    transition: background 0.35s var(--cubic), color 0.35s var(--cubic), transform 0.3s var(--cubic);
}

.column-p .article__contents .contents .taglist .tagitem.on {
    background: var(--text-accent);
    color: var(--color-white);
}

.column-p .article__contents .contents .taglist a.tagitem:hover {
    background: var(--text-accent);
    color: var(--color-white);
    transform: translateY(-2px);
}

@media (min-width: 768px) {
    .column-p .article__contents .contents .taglist .tagitem {
        font-size: 12px;
    }
}


.column-p .article__contents .contents .right__link {
    text-align: right;
    display: block;
    line-height: 1.2;
    margin: var(--fs-20px) auto;
}

.column-p .article__contents .contents .right__link a {
    color: var(--color-orange);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: repeat-x;
    background-size: 100% 1px;
    transition: background-size 0.3s var(--cubic);
    word-break: break-word;
    display: inline;
}

.column-p .article__contents .contents .right__link a::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.3em;
    transition: transform 0.3s var(--cubic);
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTAgMEM5LjQ0Njg3IDAgOSAwLjQ0Njg3NSA5IDFDOSAxLjU1MzEzIDkuNDQ2ODcgMiAxMCAySDEyLjU4NDRMNi4yOTA2MiA4LjI5Mzc1QzUuOSA4LjY4NDM3IDUuOSA5LjMxODc1IDYuMjkwNjIgOS43MDkzOEM2LjY4MTI1IDEwLjEgNy4zMTU2MyAxMC4xIDcuNzA2MjUgOS43MDkzOEwxNCAzLjQxNTYzVjZDMTQgNi41NTMxMiAxNC40NDY5IDcgMTUgN0MxNS41NTMxIDcgMTYgNi41NTMxMiAxNiA2VjFDMTYgMC40NDY4NzUgMTUuNTUzMSAwIDE1IDBIMTBaTTIuNSAzQzEuMTE4NzUgMyAwIDQuMTE4NzUgMCA1LjVWMTMuNUMwIDE0Ljg4MTMgMS4xMTg3NSAxNiAyLjUgMTZIMTAuNUMxMS44ODEzIDE2IDEzIDE0Ljg4MTMgMTMgMTMuNVYxMUMxMyAxMC40NDY5IDEyLjU1MzEgMTAgMTIgMTBDMTEuNDQ2OSAxMCAxMSAxMC40NDY5IDExIDExVjEzLjVDMTEgMTMuNzc1IDEwLjc3NSAxNCAxMC41IDE0SDIuNUMyLjIyNSAxNCAyIDEzLjc3NSAyIDEzLjVWNS41QzIgNS4yMjUgMi4yMjUgNSAyLjUgNUg1QzUuNTUzMTIgNSA2IDQuNTUzMTIgNiA0QzYgMy40NDY4OCA1LjU1MzEyIDMgNSAzSDIuNVoiIGZpbGw9IiNFQjg0MDAiLz48L3N2Zz4=");
    background-size: contain;
    background-repeat: no-repeat;
}

.column-p .article__contents .contents .right__link a:hover,
.column-p .article__contents .contents .right__link a:focus {
    background-size: 100% 3px;
}

.column-p .article__contents .contents .right__link+.c__btn {
    margin-top: var(--fs-25px);
}

.column-p .article__contents .contents ul:not(.taglist),
.column-p .article__contents .contents ol:not(.taglist) {
    display: grid;
    row-gap: var(--fs-10px);
}

.column-p .article__contents .contents li:not(.tagitem) {
    position: relative;
    width: 100%;
    padding-left: 18px;
    font-size: var(--fs-16px);
    line-height: 1.6;
}

.column-p .article__contents .contents ul li:not(.tagitem)::before {
    content: "";
    width: var(--fs-8px);
    height: var(--fs-8px);
    display: block;
    border-radius: 100%;
    background-color: var(--color-accent);
    position: absolute;
    left: 0;
    top: var(--fs-8px);
    transform: initial;
}

.column-p .article__contents .contents ol {
    counter-reset: number;
}

.column-p .article__contents .contents ol li:not(.tagitem)::before {
    counter-increment: number 1;
    content: counter(number) ".";
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 0;
}

.column-p .article__contents .contents li:not(.tagitem)>ul {
    margin-top: var(--fs-8px);
}

.column-p .article__contents .contents .table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.column-p .article__contents .contents .table {
    table-layout: fixed;
    border-collapse: collapse;
    border-top: 1px solid #999;
    width: 100%;
    margin-top: var(--fs-12px);
}

.column-p .article__contents .contents .table-wrap .table {
    width: 100%;
    min-width: 160%;
}

.column-p .article__contents .contents .table .has-fixed-layout {
    table-layout: fixed;
    border-collapse: collapse;
    width: 100%;
}

.column-p .article__contents .contents .table+p {
    margin-top: var(--fs-8px) !important;
}

.column-p .article__contents .contents .table thead th {
    font-size: 13px;
    font-weight: normal;
    line-height: 1.33;
    text-align: center;
    background: var(--color-accent);
    color: #fff;
    border-bottom: 1px #999;
    padding: 12px;
}

.column-p .article__contents .contents .table thead th:nth-child(n + 2) {
    border-left: 1px solid #999;
}

.column-p .article__contents .contents .table thead th:first-child {
    border-left: 1px solid #999;
    width: 20%;
}

.column-p .article__contents .contents .table thead th:last-child {
    border-right: 1px solid #999;
}

.column-p .article__contents .contents .table tbody th {
    font-size: 15px;
    line-height: 1.7;
    font-weight: bold;
    color: var(--color-accent);
    text-align: center;
    border-bottom: 1px solid #999;
    background: var(--color-gray);
    padding: 0 4px;
}

.column-p .article__contents .contents .table td {
    font-size: 15px;
    line-height: 1.7;
    text-align: left;
    border-bottom: 1px solid #999;
    padding: 12px;
    vertical-align: middle;
}

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

    .column-p .article__contents .contents .table tbody th,
    .column-p .article__contents .contents .table td {
        font-size: 14px;
    }

}

.column-p .article__contents .contents .table td:nth-child(n + 2),
.column-p .article__contents .contents .table tbody th:nth-child(n + 2) {
    border-left: 1px solid #999;
}

.column-p .article__contents .contents .table td:first-child,
.column-p .article__contents .contents .table tbody th:first-child {
    border-left: 1px solid #999;
}

.column-p .article__contents .contents .table td:last-child,
.column-p .article__contents .contents .table tbody th:last-child {
    border-right: 1px solid #999;
}

.column-p .article__contents .contents .table thead th a {
    color: #fff;
}

.column-p .article__contents .contents .caution {
    margin-top: var(--fs-12px);
    display: block;
    line-height: 1.6;
    font-size: var(--fs-12px);
    color: var(--text-small);
}

.column-p .article__contents .contents .table .taglist {
    margin: 0;
}

.column-p .article__contents .contents ul.jump {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-top: 16px;
    justify-content: center;
}

@media (min-width: 768px) {
    .column-p .article__contents .contents ul.jump {
        grid-template-columns: repeat(3, 1fr);
    }
}

.column-p .article__contents .contents ul li.jump-item {
    border: 1px solid #7184B3;
    border-radius: 4px;
    list-style: none;
    margin-top: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 63px;
    background-color: #F5F7FA;
    text-align: center;
    width: 100%;
    border-radius: 8px;
    font-weight: bold;
    padding-left: 0;
    transition: .2s;
}

.column-p .article__contents .contents ul li.jump-item:hover {
    transform: translateY(3px);
    opacity: .6;
}

.column-p .article__contents .contents ul li.jump-item::after {
    content: "";
    background-size: 14px;
    background-repeat: no-repeat;
    width: 14px;
    height: 14px;
    background-image: url(../img/ico-arrow-bl-r.svg);
    display: block;
    position: relative;
    right: 10px;
}

.column-p .article__contents .contents ul li.jump-item a {
    text-decoration: none;
    color: #7184B3;
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.column-p .article__contents .contents ul li.jump-item::before {
    display: none;
}

.column-p .article__contents .thumbnail {
    display: flex;
    justify-content: center;
    margin-bottom: var(--fs-12px);
    width: 100%;
}

.column-p .article__contents .thumbnail img {
    object-fit: contain;
}

.column-p .article__contents .info {
    display: flex;
    align-items: center;
    margin-bottom: var(--fs-16px);
    width: 100%;
    line-height: 1;
}

.column-p .article__contents .info>.tag,
.column-p .article__contents .info>.date {
    width: 50%;
}

.column-p .article__contents .info .date {
    text-align: right;
    font-size: var(--fs-14px);
}

@media (min-width: 768px) {
    .column-p .article__contents {
        padding: var(--fs-35px) var(--fs-42px);
    }
}



.column-p .article__contents .contents .subhead {
    font-size: var(--fs-16px);
    font-weight: 700;
    color: var(--color-accent);
    line-height: 1.5;
    letter-spacing: 0.08em;
    padding-left: var(--fs-35px);
    margin-top: var(--fs-20px) !important;
    position: relative;
    border-bottom: 2px solid var(--color-accent);
    padding-top: 2px;
    padding-bottom: var(--fs-8px);
    margin-bottom: var(--fs-16px);
}

.column-p .article__contents .contents .simplebox .subhead {
    margin-top: 0px !important;
}

.column-p .article__contents .contents .subhead::before {
    content: "";
    display: inline-block;
    background: url("../img/ibiki/ico-check-circle-bl-r.svg") no-repeat center / 20px auto;
    width: var(--fs-30px);
    height: var(--fs-30px);
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
}

.column-p .article__contents .contents .subhead+p {
    margin-top: var(--fs-8px) !important;
}


.column-p .article__contents .contents .simplebox,
.column-p .article__contents .contents .surveybox,
.column-p .article__contents .contents .introbox {
    background: var(--color-gray);
    border-radius: var(--fs-20px);
    padding: var(--fs-24px);
    margin: var(--fs-25px) 0;
}

.column-p .article__contents .contents .simplebox p:first-child {
    margin-top: 0;
}

.column-p .article__contents .contents .simplebox>*:first-child {
    margin-top: 0;
}

.column-p .article__contents .contents .simplebox>ul:only-child,
.column-p .article__contents .contents .simplebox>ol:only-child {
    margin: 0;
}

.column-p .article__contents .contents .matomebox>*:last-child,
.column-p .article__contents .contents .simplebox>*:last-child,
.column-p .article__contents .contents .surveybox>*:last-child,
.column-p .article__contents .contents .introbox>*:last-child {
    margin-bottom: 0;
}

.column-p .article__contents .contents .simplebox[data-type="bg"] {
    background: var(--color-white);
    border: 1px solid var(--color-accent);
}

.column-p .article__contents .contents .surveybox li {
    font-size: var(--fs-13px);
}

.column-p .article__contents .contents .surveybox__ttl {
    font-size: var(--fs-13px);
    text-align: center;
    font-weight: 700;
    margin-bottom: 1.2em;
}

.column-p .article__contents .contents .introbox {
    font-size: var(--fs-13px);
}

.column-p .article__contents .contents .introbox__ttl {
    font-weight: 700;
}

.column-p .article__contents .profile {
    background-color: var(--color-gray);
    border-radius: var(--card-radius);
    margin-top: var(--fs-50px);
    padding: var(--fs-20px);
}

.column-p .article__contents .profile__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    max-width: 1020px;
    width: 100%;
    margin: 0 auto;
    gap: var(--fs-18px);
}

.column-p .article__contents .profile__imgs {
    width: 100%;
    display: flex;
    gap: var(--fs-15px);
    align-items: center;
}

.column-p .article__contents .profile__img {
    margin: 0 !important;
    width: 108px;
    height: 108px;
    border-radius: 50%;
    object-fit: cover;
    background-color: var(--color-white);
}

.column-p .article__contents .profile__imgs div {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.column-p .article__contents .profile__detail {
    border-top: 2px solid var(--color-accent);
}

.column-p .article__contents .profile__detail-title {
    font-size: var(--fs-14px);
    color: var(--text-color);
}

.column-p .article__contents .profile__detail-name {
    font-size: var(--fs-16px);
    color: var(--color-accent);
    font-weight: 700;
}

.column-p .article__contents .profile__detail-desc {
    margin: 0 !important;
    padding-top: var(--fs-14px) !important;
}

.column-p .article__contents .profile .forPC {
    display: none;
}

@media (min-width: 768px) {
    .column-p .article__contents .profile .forSP {
        display: none;
    }

    .column-p .article__contents .profile .forPC {
        display: block;
    }

    .column-p .article__contents .profile {
        padding: var(--fs-30px) var(--fs-25px);
    }

    .column-p .article__contents .profile__inner {
        flex-direction: row;
    }

    .column-p .article__contents .profile__imgs {
        display: block;
    }

    .column-p .article__contents .profile__detail {
        border-top: none;
        border-left: 2px solid var(--color-accent);
        padding-left: var(--fs-24px);
    }
}



.column-p .article__contents .contents .fukidashi__ttl {
    text-align: center;
    font-size: var(--fs-16px);
    color: var(--color-white);
    background-color: var(--color-accent);
    font-weight: 700;
    padding: var(--fs-10px);
    line-height: 1.6;
    position: relative;
    margin-top: var(--fs-25px);
}

.column-p .article__contents .contents .fukidashi__ttl::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 10px solid var(--color-accent);
}

.column-p .article__contents .contents .matomebox {
    border: 2px solid var(--color-accent);
    background: var(--color-blue);
    border-radius: var(--fs-20px);
    padding: var(--fs-24px);
    margin: var(--fs-25px) 0;
}

.column-p .article__contents .contents .matomebox__ttl {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--color-accent);
    position: relative;
}

.column-p .article__contents .contents .arrow_down {
    background: url("../img/flow_ico.svg") no-repeat center / 62px auto;
    background-color: var(--color-white);
    width: 62px;
    height: 62px;
    margin: 20px auto;
    transform: rotate(90deg);
}

.column-p .article__contents .contents .arrow_down+* {
    margin-top: 0 !important;
}

.column-p .article__contents .contents .txt_img__keep {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-top: 20px;
}

.column-p .article__contents .contents .txt_img__keep img {
    max-width: 45%;
}

.column-p .article__contents .contents .txt_img__keep img,
.column-p .article__contents .contents .txt_img_box img {
    margin-top: 0;
}

.column-p .article__contents .contents .txt_img__keep img+p,
.column-p .article__contents .contents .txt_img_box img+p {
    margin-top: 0 !important;
}

.column-p .article__contents .contents .txt__flex p:first-child {
    margin-top: 0;
}

.column-p .article__contents .contents .txt_img_box {
    margin-top: 20px;
}

.column-p .article__contents .contents .left_img {
    float: left;
    margin-right: 10px;
    max-width: 48%;
}

.column-p .article__contents .quote,
.column-p .article__contents blockquote {
    border-left: 2px solid #817e7e;
    padding-left: 29px;
    margin-left: 0;
    position: relative;
    margin-top: 64px !important;
    margin-right: 0;
    padding-left: 20px;
    padding-right: 20px;
}

.column-p .article__contents .quote::before,
.column-p .article__contents blockquote::before {
    content: "";
    display: block;
    background-image: url("https://sleep-medical.net/wp/wp-content/uploads/ico-quote.png");
    width: 40px;
    height: 30px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -46px;
    left: 0;
}

.column-p .article__contents .quotefrom {
    position: relative;
    left: 20px;
    text-align: right;
    font-size: 12px;
}

.column-p .article__contents .quotefrom a {
    font-size: 12px;
}

.column-p .article__contents .quote__img img {
    margin-top: 0;
}



.column-p .article__contents .contents .fukidashi {
    display: flex;
    gap: var(--fs-20px);
    align-items: center;
    margin-top: var(--fs-25px);
}

.column-p .article__contents .contents .fukidashi__img {
    width: 100px;
}

.column-p .article__contents .contents .fukidashi__title {
    font-size: var(--fs-13px);
    color: var(--color-accent);
    text-align: center;
    line-height: 1;
    margin-top: var(--fs-10px);
}

.column-p .article__contents .contents .fukidashi__name {
    text-align: center;
    font-size: var(--fs-14px);
}

.column-p .article__contents .contents .fukidashi__desc {
    width: calc(100% - 100px);
    background-color: var(--color-gray);
    border-radius: 4px;
    padding: var(--fs-20px) var(--fs-16px);
    position: relative;
}

.column-p .article__contents .contents .fukidashi__desc p {
    margin: 0;
}

.column-p .article__contents .contents .fukidashi__desc::before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 30px;
    content: '';
    left: -15px;
    border-radius: 0 0 0 15px;
    box-shadow: -3px -15px 0 -7px var(--color-gray) inset;
}

.column-p .article__contents .contents .--imgright .fukidashi__desc::before {
    left: initial;
    right: -15px;
    border-radius: 0 0 15px 0;
    box-shadow: 3px -15px 0 -7px var(--color-gray) inset;
}

@media (min-width: 768px) {
    .column-p .article__contents .contents .fukidashi__img {
        width: 120px;
    }

    .column-p .article__contents .contents .fukidashi__desc {
        width: calc(100% - 120px);
    }
}

.column-p .article__contents .bnr__bottom {
    margin-top: var(--fs-42px);
    margin-bottom: var(--fs-22px);
    width: 100%;
    background: var(--color-white);
    text-align: center;
}

.column-p .article__contents .keyword {
    margin: var(--fs-30px) 0;
}

.column-p .article__contents .contents #toc {
    background: var(--color-gray);
    padding: 0;
    border-radius: var(--fs-12px);
    margin: var(--fs-30px) 0;
    overflow: hidden;
    transition: all 0.3s var(--cubic);
}

.column-p .article__contents .contents #toc .toc__header {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: none;
    border: none;
    outline: none;
    color: var(--text-color);
    padding: var(--fs-20px);
    overflow: hidden;
    position: relative;
    cursor: pointer;
}

.column-p .article__contents .contents #toc .title {
    font-family: 'Zen Old Mincho', serif;
    font-weight: 400;
    font-size: var(--fs-20px);
    letter-spacing: 0.15em;
    text-align: center;
    line-height: 1;
}

.column-p .article__contents .contents #toc .icon {
    position: absolute;
    right: var(--fs-30px);
}

.column-p .article__contents .contents #toc .icon::before,
.column-p .article__contents .contents #toc .icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--fs-20px);
    height: 1px;
    background-color: var(--text-accent);
    transform: translate(-50%, -50%);
    transition: all 0.3s var(--cubic);
}

.column-p .article__contents .contents #toc .icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.column-p .article__contents .contents #toc.open .icon::after {
    transform: translate(-50%, -50%) rotate(180deg);
}

.column-p .article__contents .contents #toc .toc__list {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s var(--cubic);
    list-style: none;
    padding: 0 var(--fs-16px);
    margin: 0;
    transition: max-height .35s var(--cubic);
    counter-reset: toc-counter;
}

.column-p .article__contents .contents #toc.toc--no-anim .toc__list {
    transition: none !important;
}

.column-p .article__contents .contents #toc.open .toc__list {
    padding: 0 var(--fs-16px) var(--fs-20px);
}

.column-p .article__contents .contents #toc .toc__item {
    position: relative;
    padding-left: 0;
    border-top: 1px solid var(--color-blue);
}

.column-p .article__contents .contents #toc .toc__item::before {
    counter-increment: toc-counter;
    content: counter(toc-counter);

    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);

    width: 30px;
    height: 30px;
    background: var(--color-accent);
    color: #fff;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 15px;
    font-weight: bold;
}

.column-p .article__contents .contents #toc .toc__item:first-child {
    border-top: none;
}

.column-p .article__contents .contents #toc .toc__item a {
    display: block;
    padding: var(--fs-12px) 0 var(--fs-12px) var(--fs-42px);
    text-decoration: none;
    font-size: var(--fs-15px);
    color: var(--text-strong);
    line-height: 1.483;
}

.column-p .article__contents .contents #toc.close .toc__list {
    max-height: 0;
    padding-bottom: 0;
}

.column-p .article__contents .contents #toc.close .toc__toggle {
    transform: rotate(180deg);
}



/* 診断パーツ */
.column-p .article__contents .shindan {
    background: var(--color-gray);
    border: 1px solid var(--color-accent);
    padding: 30px;
    margin-top: 24px;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .shindan {
        padding: 20px;
    }
}

.column-p .article__contents .shindan-top {
    width: 100%;
}

.column-p .article__contents .shindan-wrap {
    margin-top: 20px;
}

.column-p .article__contents .contents .shindan-ttl {
    font-size: 22px;
    text-align: center;
    font-weight: 700;
    margin: 0 auto;
    width: fit-content;
    background: linear-gradient(transparent 66%, #c5dcff 60%);
}

.column-p .article__contents .contents .shindan-txt {
    text-align: center;
    margin: 10px auto 30px;
    font-size: 14px;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .contents .shindan-ttl {
        font-size: 20px;
    }

    .column-p .article__contents .contents .shindan-txt {
        font-size: 12px;
    }
}

.column-p .article__contents .shindan .btn-wrap {
    width: fit-content;
    margin: 36px auto 0;
}

.column-p .article__contents .shindan .btn-wrap button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #e57941;
    width: 200px;
    height: 74px;
    border-radius: 2px;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    cursor: pointer;
    border: none;
}

.column-p .article__contents .shindan .btn-wrap button.finish {
    background-color: #5c5e65;
}

.column-p .article__contents .shindan .btn-wrap button:hover {
    opacity: 0.6;
}

.column-p .article__contents .shindan .btn-wrap button:disabled,
.column-p .article__contents .shindan .btn-wrap button:disabled:hover {
    background: #9e9898;
    opacity: 1;
    cursor: default;
}

.column-p .article__contents .faq-q .shindan-faq-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    line-height: 1.4;
}

.column-p .article__contents .faq-q .shindan-faq-box+.shindan-faq-box {
    margin-top: 10px;
}

.column-p .article__contents .shindan-faq-box .ttl {
    margin: 0;
    font-size: 16px;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .shindan-faq-box .ttl {
        font-size: 15px;
    }
}

.column-p .article__contents .shindan-faq-box .ttl .num {
    font-weight: 700;
    color: var(--color-accent);
}

.column-p .article__contents .shindan-faq-box .select-wrap {
    flex-shrink: 0;
}

.column-p .article__contents .shindan-faq-box .select-wrap .select {
    padding: 8px 10px;
    background: #fff;
    border: 2px solid #d2d2d2;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
}

.column-p .article__contents .shindan-faq-box .select-wrap .select.yes {
    color: #e57941;
}

.column-p .article__contents .shindan-faq-box .select.yes.is-active {
    background-color: #ffe8dc;
    border: 2px solid #e57941;
}

.column-p .article__contents .shindan-faq-box .select-wrap .select.no {
    color: var(--color-accent);
}

.column-p .article__contents .shindan-faq-box .select.no.is-active {
    background-color: var(--color-blue);
    border: 2px solid var(--color-accent);
}

.column-p .article__contents .shindan-faq-box.result .ttl {
    font-size: 22px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .shindan-faq-box.result .ttl {
        font-size: 20px;
    }

    .column-p .article__contents .shindan-faq-box.result .a-txt {
        font-size: 14px;
    }
}

.column-p .article__contents .contents .shindan .faq-a {
    display: none;
}

.column-p .article__contents .contents .tabarea {
    margin-top: 24px;
}

.column-p .article__contents .contents ul.tab-list {
    display: flex;
    gap: 4px;
    margin: 0;
}

.column-p .article__contents .contents .tab-nav {
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
    gap: 5px;
    border-bottom: 2px solid var(--color-accent);
    padding: 0 20px;
    margin: 24px 0 10px;
}

.column-p .article__contents .contents .tabarea ul.tab-list li.tab.active {
    color: var(--color-accent);
    background-color: #fff;
    position: relative;
}

.column-p .article__contents .contents .tabarea ul.tab-list li.tab {
    border-radius: 5px 5px 0 0;
    flex: auto;
    text-align: center;
    border: 2px solid var(--color-accent);
    border-bottom: none;
    cursor: pointer;
    width: 100%;
    padding: 4px;
    margin-top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.4;
    font-size: 14px;
    min-height: 50px;
    background: #f0f4f8;
}

.column-p .article__contents .contents .tabarea ul.tab-list li.tab::before {
    display: none;
}

.column-p .article__contents .contents .tab-item {
    padding: 20px;
    border: 2px solid var(--color-accent);
    border-top: none;
    background: #fff;
}

.column-p .article__contents .contents .tab-wrap {
    display: none;
}

.column-p .article__contents .contents .tab-wrap.show {
    display: block;
}

.column-p .article__contents .contents .tab-item .tab-wrap>:last-child {
    margin-bottom: 0;
}

.column-p .article__contents .contents .tab-item .tab-wrap>:first-child {
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    .column-p .article__contents .contents .tab-item {
        padding: 14px;
    }

    .column-p .article__contents .contents .tabarea ul.tab-list li.tab {
        font-size: clamp(12px, 2.2vw, 14px);
    }
}