:root {
    --color-main: rgb(24, 63, 108);
    --color-sub: rgb(224, 214, 213);
    --color-accent: rgb(105, 86, 83);
    --color-black: rgb(77, 77, 77);
    --color-black-transparent : rgba(77, 77, 77, 0.5);
    --color-main-transparent: rgba(24, 63, 108, 0.6);
    --color-sub-transparent: rgba(224, 214, 213, 0.4);
    --color-grey: rgb(145, 145, 145);
    --color-grey-transparent: rgba(145, 145, 145, 0.5);
    --color-lightgrey: rgb(249, 249, 249);
    --color-white: rgb(255, 255, 255);
    --color-white-transparent: rgba(255, 255, 255, 0.8);
    --color-blue: rgb(140, 158, 179);
    --color-blue-transparent: rgba(140, 158, 179, 0.8);
    --color-pink: rgb(216, 143, 143);
    --color-green: rgb(159, 198, 150);

    --color-grad: linear-gradient(90deg, rgb(217, 243, 254) ,rgb(217, 248, 234) ,rgb(255, 255, 224));
}
body {
    width: 100%;
    background-image: url(../../images/lp/senior/body_back.webp) ;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;

}
.serif {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
}
.noto {
    font-family: "Noto Sans JP", sans-serif;
}
.haruno {
    font-family: "Kaisei HarunoUmi", serif;
    font-weight: 400;
    font-style: normal;
}
.none {
    opacity: 0;
    pointer-events: none;
}

/* wbr */
.wbr {
word-break: keep-all;
overflow-wrap: break-word;
}


/*--------------------------------------------

common

--------------------------------------------*/
/*background*/
.back-main {background: var(--color-main);}
.back-main-transparent{background: var(--color-main-transparent);}
.back-sub {background: var(--color-sub);}
.back-accent {background: var(--color-accent);}
.back-black {background: var(--color-black);}
.back-grey {background: var(--color-grey);}
.back-white {background: var(--color-white);}
.back-white-transparent {background: var(--color-white-transparent);}
.back-lightgrey {background: var(--color-lightgrey);}
.back-blue {background: var(--color-blue);}
.back-pink {background: var(--color-pink);}
.back-green {background: var(--color-green);}
.back-grad {background-image: var(--color-grad);}

/*font-color*/
.text-main {color: var(--color-main);}
.text-sub {color: var(--color-sub);}
.text-accent {color: var(--color-accent);}
.text-black {color: var(--color-black);}
.text-white {color: var(--color-white);}
.text-pink {color: var(--color-pink);}

/*text-align*/
.text-center {text-align: center;}
.text-right {text-align: right;}

/* link-btn */
.link-btn {
    font-size: 115%;
    min-width: 15em;
    width: fit-content;
    text-align: center;
    letter-spacing: 0.1em;
    display: block !important;
    padding: 0.75em 1em;
    padding-right: 3.5em;
    position: relative;
    border-radius: 100px;
    margin: 0 auto;
    transition: all 0.3s;
}
.link-btn .circle-arrow {
    width: 1.75em;
    height: 1.75em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.link-btn .circle-arrow__item__wrap {
    width: 70%;
}

.link-btn.main {
    color: var(--color-sub);
    background: var(--color-main);
}
.link-btn.main .circle-arrow {
    border: solid 2px var(--color-sub);
}
.link-btn.main .circle-arrow__item {
    fill: var(--color-sub);
}
.link-btn.sub {
    color: var(--color-main);
    background: var(--color-sub);
}
.link-btn.sub .circle-arrow {
    border: solid 2px var(--color-main);
}
.link-btn.sub .circle-arrow__item {
    fill: var(--color-main);
}
.link-btn.green {
    color: var(--color-white);
    background: var(--color-green);
}
.link-btn.green .circle-arrow {
    border: solid 2px var(--color-white);
}
.link-btn.green .circle-arrow__item {
    fill: var(--color-white);
}
.link-btn.blue {
    color: var(--color-white);
    background: var(--color-blue);
    border: none;
}
.link-btn.blue .circle-arrow {
    border: solid 2px var(--color-white);
}
.link-btn.blue .circle-arrow__item {
    fill: var(--color-white);
}
.link-btn:hover {
    transform: scale(1.1);
}

/*link-arrow*/
.link-arrow {
    width: 0.8em;
    height: 0.8em;
    display: block;
    border-top: solid 2px var(--color-white);
    border-right: solid 2px var(--color-white);
    transform: rotate(45deg);
}
.link-arrow.main {
    border-top: solid 2px var(--color-main);
    border-right: solid 2px var(--color-main);
}

/*bubble*/
.bubble {
    width: fit-content;
    padding: 0.5em 1em;
    margin: 0 auto;
    border-radius: 100px;
    position: relative;
}
.bubble::before {
    content: "";
    width: 1em;
    height: 0.7em;
    display: block;
    clip-path: polygon(0 0, 100% 0, 25% 100%);
    position: absolute;
    bottom: -0.7em;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
/*bubble-small*/
.bubble-small {
    width: fit-content;
    padding: 0.5em 1em;
    margin: 0 auto;
    border-radius: 0.5em;
    position: relative;
}
.bubble-small::before {
    content: "";
    width: 20px;
    height: 10px;
    display: block;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    position: absolute;
    bottom: -9px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
/*circle-bubble*/
.circle-bubble {
    font-size: 90%;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    width: 3em;
    height: 3em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    position: relative;
    background: var(--color-black);
    color: var(--color-white);
}
.circle-bubble::before {
    content: "";
    width: 15px;
    height: 20px;
    background: var(--color-black);
    clip-path: polygon(0 0, 100% 75%, 0 100%);
    position: absolute;
    right: -5px;
    bottom: 9px;
    transform: rotate(13deg);
}

/* arrow-bottom */
.arrow-bottom {
    width: 2em;
    height: 2em;
    position: relative;
    display: block;
    transform: rotate(135deg);
    margin: 0 auto;
}
.arrow-bottom::before {
    content: "";
    width: 30%;
    height: 30%;
    border-top: solid 2px var(--color-main);
    border-right: solid 2px var(--color-main);
    position: absolute;
    top: 0;
    right: 0;
}
.arrow-bottom::after {
    content: "";
    width: calc(100% * 1.4);
    height: 2px;
    transform-origin: center;
    position: absolute;
    top: 55%;
    left: 45%;
    transform: translate(-50%, -50%) rotate(-45deg);
    background: var(--color-main);
    display: block;
}

img {
    display: block;
    width: 100%;
}

/*--------------------------------------------

wrap article section

--------------------------------------------*/
.wrap {
    font-size: 1rem;
}

.wrap article:not(.article-view) {
    max-width: 570px;
    width: 100%;
    margin: 0 auto;
    padding: 5em 5%;
}



/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {

}
/*--------------------------------------------
min-width 570
--------------------------------------------*/
@media (min-width: 570px) {

}

/*--------------------------------------------

article-view

--------------------------------------------*/
.article-view {
    background: var(--color-sub-transparent);
    background-blend-mode: multiply;
    box-shadow: 20px 0 20px var(--color-grey-transparent);
    position: relative;
    z-index: 2;
}

/* article-view__first */
.article-view__first {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    height: 100vh;
    height: 100lvh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 60px 5%;
    overflow: hidden;
}
.article-view__first h1 {
    font-size: 300%;
    text-align: center;
    line-height: 1.25em;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0 auto 0 0;
    position: relative;
    z-index: 2;
}
.article-view__first p {
    text-align: center;
    letter-spacing: 0.15em;
    line-height: 1.8em;
    position: relative;
    z-index: 2;

}
.article-view__first p span {
    display: block;
}

/* mask */
.mask{
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 450px;
    height: 450px;
    margin: 0 auto;
    text-align:center;
    z-index: 0;
}
.mask-clip{
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    inset: 0;
    z-index: 2;
    clip-path: url("#mask-clip-path");
}
.mask-clip::after{
    content: "";
    background: linear-gradient(rgba(255, 255, 255, 0.7) 0,rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.7) 100%);
    opacity: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
}
.mask-clip img{
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: left;
}
.mask-svg path{
    transform:scale(1.85);
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {
    /* article-view__first */
    .article-view__first {
        justify-content: center;
        gap: 5em;
        padding-top: 90px;
    }
    .article-view__first h1 {
        font-size: 500%;
    }
    .article-view__first p {
        text-align: left;
        margin: 0 auto 0 0;
    }

    /* mask */
    .mask {
        width: 600px;
        height: 700px;
        top: 50%;
        left: auto;
        right: 0;
        transform: translateY(-50%);
    }
    .mask-svg path{
        transform:scale(2.8);
    }
}

/*--------------------------------------------
min-width 1200
--------------------------------------------*/
@media (min-width: 1200px) {
    /* mask */
    .mask {
        width: 700px;
    }
}

/*--------------------------------------------

article common

--------------------------------------------*/
/* article-title */
.article-title hgroup {
    display: flex;
    flex-direction: column-reverse;
    gap: 0.5em;
}
.article-title hgroup h2 {
    font-weight: 300;
}
.article-title hgroup p {
    font-weight: 600;
}
.article-title > p {
    padding-top: 1em;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {
/* article-title */
}

/*--------------------------------------------

article-flow

--------------------------------------------*/
.article-flow section {
    display: flex;
    flex-direction: column;
    gap: 2em;
}
.article-flow h2 {
    font-size: 200%;
    text-align: center;
}

/* flow-day */
.flow-day h2, .flow-day__img {
    transform: rotate(-5deg);
}
.flow-day__img {
    border-radius: 1em;
    box-shadow: 2.5px 2.5px 5px var(--color-grey-transparent);
    padding: 1em;
}
.flow-day__text {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1em;
    margin-top: 1em;
}
.flow-day__text span {
    width: 7em;
    text-align: center;
    flex-shrink: 0;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0.5em;
}
.flow-day__text span small {
    display: block;
}

/* flow-feature */
.flow-feature {
    margin-top: 5em;
}
.flow-feature h2, .flow-feature .flow-day__img {
    transform: rotate(5deg);
}
.flow-feature .flow-day__img {
    padding: 0;
    overflow: hidden;
}

/* flow-free */
.flow-free {
    margin-top: 5em;
}
.flow-free h2 {
    transform: rotate(-5deg);
}
.flow-free__content {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 1em;
}
.flow-free__img {
    display: flex;
    align-items: flex-start;
}
.flow-free__img img {
    width: 55%;
    height: auto;
    border-radius: 0.5em;
}
.flow-free__img img:first-child {
    transform: rotate(2.5deg);
}
.flow-free__img img:last-child {
    transform: rotate(-2.5deg);
    margin: 2em 0 0 -1em;
}
.flow-free > p {
    text-align: center;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {

/* flow-day */

/* flow-free */

}

/*--------------------------------------------

article-worry

--------------------------------------------*/

/* article-worry__section */
.article-worry__section h2 {
    width: fit-content;
    text-align: center;
    margin: 0 auto;
    position: relative;
}
.article-worry__section h2 svg {
    width: 1.5em;
    position: absolute;
    right: -1.75em;
    top: 0;
}
.article-worry__section h2 svg path {
    fill: var(--color-white);
}

.article-worry__section p {
    text-align: center;
    padding: 1em 0;
}

.worry-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 1em;
}
.worry-list li {
    width: fit-content;
    text-align: center;
    font-weight: 700;
    padding: 0.5em 1em;
}
.worry-list li:nth-child(1) {
    transform: rotate(-2deg);
}
.worry-list li:nth-child(2) {
    transform: rotate(3deg);
}
.worry-list li:nth-child(4) {
    transform: rotate(3deg);
}
.worry-list li:nth-child(5) {
    transform: rotate(-2deg);
}

.worry-dots {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5em;
    margin: 2em 0;
}
.worry-dots li {
    width: 0.5em;
    height: 0.5em;
    border-radius: 50%;
}

.article-worry__section dl {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
    position: relative;
    margin: 6em 0;
    z-index: 2;
}
.article-worry__section dl::before {
    content: "";
    width: 350px;
    aspect-ratio: 1 / 1;
    background-image: var(--color-grad);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.article-worry__section dt {
    font-size: 170%;
    text-align: center;
}
.article-worry__section dd {
    text-align: center;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {

/* article-worry__section */

}

/*--------------------------------------------

article-use

--------------------------------------------*/
.article-use {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3em;
}
/* use-case */
.use-case {
    display: flex;
    flex-direction: column;
}
.use-case img {
    border-radius: 500px;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.use-case h3 {
    width: fit-content;
    padding: 0.5em 1em;
    margin-top: -1em;
}
.use-case:nth-of-type(odd) h3 {
    transform: rotate(5deg);
    margin: 0 0 0 auto;
    margin-top: -1em;
}
.use-case:nth-of-type(even) h3 {
    transform: rotate(-5deg);
}
.use-case p {
    padding-top: 2em;
}
.use-case p span {
    width: fit-content;
    display: block;
    padding: 0.25em 1em;
    border-radius: 100px;
    margin-top: 1em;
}

/* use-detail */
.use-detail {
    width: fit-content;
    display: flex;
    flex-direction: column;
    gap: 1em;
    border-top: dotted 4px var(--color-main);
    padding-top: 1.5em;
}
.use-detail h2 {
    font-size: 200%;
    text-align: center;
}
.use-detail p {
    text-align: center;
    line-height: 1.8em;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {

/* use-case */

/* use-detail */

}

/*--------------------------------------------

article-plan

--------------------------------------------*/
.article-plan {
    display: flex;
    flex-direction: column;
    gap: 2em;
}

/* plan-list */
.plan-list {
    display: flex;
    flex-direction: column;
    gap: 1.5em;
    padding: 1.5em;
}
.plan-list h3 {
    font-size: 125%;
    border-bottom: dotted 4px var(--color-main);
    padding-bottom: 0.5em;
}
.plan-list h3 span {
    font-size: 70%;
    width: fit-content;
    display: block;
    padding: 0.25em 1em;
    border-radius: 100px;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    margin-bottom: 0.5em;
}
.plan-list img {
    border-radius: 2em;
}

.plan-list ul {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 0 1em;
}
.plan-list ul li.limit-price__title {
    width: 100%;
    text-align: center;
}
.plan-list ul li.limit-price__title::before {
    background: var(--color-main);
    bottom: -0.6em;
}
.plan-list ul li.link-arrow {
    margin: auto 0;
}
.plan-list dl {
    height: 100%;
    display: flex;
    flex-direction: column-reverse;
    gap: 0.5em;
}
.plan-list dt {
    font-size: 90%;
    padding: 0.25em 1em;
    border-radius: 100px;
    text-align: center;
}
.plan-list dd {
    font-size: 120%;
    text-align: center;
}
.plan-list dd span {
    font-size: 50%;
}
.plan-list dd.limit-price {
    font-size: 250%;
    font-weight: 700;
}

.plan-list.price-list ul {
    align-items: center;
}
.plan-list.price-list dl {
    flex-direction: column;
    border: solid 2px var(--color-main);
    padding: 0.75em;
    border-radius: 1em;
}
.plan-list.price-list dd {
    font-size: 180%;
    font-weight: 700;
    line-height: 1em;
}
.plan-list.price-list dd small {
    font-size: 40%;
    font-weight: 500;
}

/* plan-list__gap */
.plan-list__gap p {
    width: fit-content;
    text-align: center;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
    border-radius: 100px;
    padding: 0.5em 1em;
    margin: 0 auto;
    margin-bottom: 1em;
}
.plan-list__gap span {
    font-size: 150%;
}

/*shop-list*/
.shop-list {
    display: flex;
    flex-direction: column;
    gap: 1em;
    margin: 3em 0;
}
.shop-list h2 {
    font-size: 180%;
    text-align: center;
}
.shop-list > p {
    font-size: 90%;
}
/*slider-nav*/
.slider-nav {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*shop-slider*/
.shop-slider {
    width: 100%;
    height: min-content;
    padding-bottom: 3em;
}
.shop-slider img {
    width: 100%;
    aspect-ratio: 1.91 / 1;
    object-fit: cover;
    border-radius: 1em;
}

/*slide-description*/
.slide-description {
    font-size: 120%;
    line-height: 1em;
}
/*slider-btn*/
.slider-btn-prev, .slider-btn-next {
    width: 1em;
    height: 1em;
    border-top: solid 2px var(--color-black);
    border-right: solid 2px var(--color-black);
}
.slider-btn-prev {
    transform: rotate(-135deg);
}
.slider-btn-next {
    transform: rotate(45deg);
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {

/*shop-list*/
}

/*--------------------------------------------

article-contact

--------------------------------------------*/
.article-contact {
    display: flex;
    flex-direction: column;
    gap: 3em;
}
.article-contact .article-title {
    text-align: center;
}

/* contact-connect */
.contact-connect {
    width: 18em;
    text-align: center;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
    padding: 1em;
    margin: 0 auto;
    position: relative;
}
.contact-connect::before {
    content: "";
    width: 2px;
    height: 5em;
    background: var(--color-main);
    position: absolute;
    bottom: -3em;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
}
.contact-connect::after {
    content: "";
    width: 0.75em;
    height: 0.75em;
    border-top: solid 2px var(--color-main);
    border-right: solid 2px var(--color-main);
    position: absolute;
    bottom: -3em;
    left: 50%;
    transform: translateX(-50%) rotate(135deg);
    z-index: 2;
}
.contact-connect h2 {
    font-weight: 300;
}
.contact-connect p {
    padding-top: 1em;
    position: relative;
}
.contact-connect p::before {
    content: "";
    width: 3em;
    height: 0.25em;
    border-radius: 100px;
    background: var(--color-main);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

/* contact-tab */
.contact-tab {
    margin: 0 auto;
}

.contact-tab__buttons {
    width: 90%;
    display: flex;
    gap: 0.5em;
    margin: 0 auto;
}
.contact-tab__btn {
    letter-spacing: 0.1em;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
    border: none;
    cursor: pointer;
    border-radius: 0.5em 0.5em 0 0;
    padding: 1em 0.5em;
    opacity: 0.6;
    transition: all 0.3s;
}
.contact-tab__btn.active {
    opacity: 1;
}
.contact-tab__btn svg {
    height: 2.5em;
}
.contact-tab__btn svg path {
    fill: var(--color-white);
}

.contact-tab__section {
    border-radius: 0.5em;
    display: none;
    padding: 1em;
}
.contact-tab__section.active {
    display: block;
}
.contact-tab__section h2 {
    font-size: 130%;
    font-weight: 300;
    position: relative;
}
.contact-tab__section h2 span {
    font-size: 70%;
    display: block;
}
.contact-tab__section > p {
    font-weight: 300;
}

.contact-tab__content {
    display: flex;
    flex-direction: column;
    gap: 1em;
    padding: 1em;
    border-radius: 0.5em;
    margin-top: 1em;
}
.contact-tab__content img {
    border-radius: 0.5em;
}

/* line */
.line-content p {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
}
.line-content p small {
    border: solid 2px var(--color-green);
}
.line-content p small::before {
    background: var(--color-green);
}
.line-content span {
    font-size: 80%;
}

/* tel */
.tel-content a {
    font-size: 150%;
    padding: 0.5em;
    border-radius: 0.5em;
    text-align: center;
}
.tel-content a span {
    width: 100%;
    font-size: 60%;
    display: block;
    padding: 0.25em 0.5em;
    border-radius: 100px;
}
.tel-content a small {
    font-size: 50%;
    padding-right: 0.5em;
}
.tel-content p small {
    display: block;
}

/* form */
.form-content p {
    font-size: 80%;
}
.form-content dl {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    border-bottom: solid 1px var(--color-blue);
    padding-bottom: 1em;
}
.form-content dt span {
    border-radius: 0.25em;
    padding: 0 0.5em;
    display: inline-block;
    margin-left: 0.5em;
}
.form-content dd {

}
.form-content input, .form-content textarea {
    padding: 0.25em;
}
.form-content dl:not(.zip-wrap) dd:not(.gender) input,.form-content dd textarea {
    width: 100%;
}
.form-content dl.zip-wrap dd input {
    width: 10em;
}
.form-content dd textarea {
    height: 10em;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {
}

/*--------------------------------------------

pc-l-wrap & pc-r-wrap

--------------------------------------------*/
.pc-l-wrap, .pc-r-wrap {
    width: calc((100% - 570px) / 2);
    display: none;
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transition: all 0.3s;
}

/*--------------------------------------------
min-width 1250
--------------------------------------------*/
@media (min-width: 1250px) {
    .pc-l-wrap, .pc-r-wrap {
        display: flex;
    }
}

/*--------------------------------------------
pc-l-wrap
--------------------------------------------*/
.pc-l-wrap {
    left: 0;
}
.pc-l-wrap ul {
    width: 90%;
    max-width: 450px;
    display: flex;
    flex-direction: column;
    gap: 1.5em;
    padding: 3em 1.5em;
    margin: 0 auto;
    border-radius: 1em;
}
.pc-l-wrap ul > li {
    border-bottom: solid 1px var(--color-beige);
    padding-bottom: 1.5em;
}
.pc-l-wrap ul > li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.pc-l-wrap ul li a {
    font-size: 120%;
    display: flex;
    align-items: center;
    gap: 0.25em;
    transition: all 0.3s;
}
.pc-l-wrap ul li a:hover {
    opacity: 0.5;
}
.pc-l-wrap ol {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    border-left: solid 5px var(--color-beige);
    padding: 0.25em 0;
    padding-left: 1em;
    margin-top: 0.5em;
}
.nav-arrow {
    width: 0.75em;
    height: 0.75em;
    display: block;
    border-top: solid 2px var(--color-beige);
    border-right: solid 2px var(--color-beige);
    transform: rotate(45deg);
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {
}


/*--------------------------------------------
pc-r-wrap
--------------------------------------------*/
.pc-r-wrap {
    right: 0;
}
.pc-r-wrap ul {
    width: 90%;
    max-width: 450px;
    display: flex;
    flex-direction: column;
    gap: 1.5em;
    margin: 0 auto;
}
.pc-r-wrap a {
    font-size: 160%;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
    border-radius: 1em;
    padding: 1em;
    display: block;
    transition: all 0.3s;
}
.pc-r-wrap a:hover {
    transform: scale(1.1);
}
.pc-r-wrap a small {
    font-size: 70%;
    display: block;
    margin-bottom: 0.25em;
}
.pc-r-wrap a > span {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.25em;
}
.pc-r-wrap a img {
    width: auto;
    height: 1.5em;
}

/*--------------------------------------------
min-width 810
--------------------------------------------*/
@media (min-width: 810px) {
}

footer {
    position: relative;
    z-index: 2;
}