@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
/* ---------------------------------------------
*   l-breadcrumb
--------------------------------------------- */
.l-breadcrumb {
    margin: 0 auto;
    padding: 8px;
    background-color: #F6F4EF;
    max-width: none;
}
@media screen and (max-width: 767px) {
    .l-breadcrumb {
        max-width: initial;
        width: 100%;
        margin: 6px auto 0;
        padding-inline: 20px;
        overflow: scroll;
        /* for Firefox */
        scrollbar-width: none;
    }
    .l-breadcrumb::-webkit-scrollbar {
        display: none;
    }
}
.l-breadcrumb__list {
    display: flex;
    max-width: 1130px;
    margin: 0 auto;
}
.l-breadcrumb__item {
    flex-shrink: 0;
}
.l-breadcrumb__item:not(:first-of-type)::before {
    content: ">";
    margin-right: 0.5em;
    margin-left: 0.5em;
}
@media screen and (max-width: 767px) {
    .l-breadcrumb__item:not(:first-of-type)::before {
        font-size: 14px;
        margin-right: 0;
        margin-left: 6px;
        line-height: 0;
    }
}
@media screen and (max-width: 767px) {
    .l-breadcrumb__item:last-of-type {
        padding-right: 20px;
    }
}
.l-breadcrumb__txt {
    font-weight: 300;
    font-size: 1.2rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .l-breadcrumb__txt {
        font-size: 12px;
    }
}
.l-breadcrumb__txt[href]:hover {
    text-decoration: underline;
}

/* ---------------------------------------------
*   l-contents
--------------------------------------------- */
.l-contents {
    overflow: hidden;
    font-family: "Zen Kaku Gothic New", sans-serif;
}
.page-nikko .l-contents {
    background-color: #FFF1E2;
    position: relative;
    z-index: 1;
}
.page-skytree .l-contents {
    background-color: #DEEEFF;
    position: relative;
    z-index: 1;
}
.page-urban .l-contents {
    background-color: #ECFFD6;
    position: relative;
    z-index: 1;
}
.page-kitakanto .l-contents {
    background-color: #FFE4E4;
    position: relative;
    z-index: 1;
}
.page-aizu .l-contents {
    background-color: #FFF2E5;
    position: relative;
    z-index: 1;
}
.page-tojo .l-contents {
    background-color: #EFEFFF;
    position: relative;
    z-index: 1;
}

.l-contents--search {
    overflow: initial;
}
.l-contents #magazine_detail,
.l-contents #magazine_list {
    background-color: #fff !important;
}
.bg_spring {
    position: relative;
    background-color: transparent !important;
    z-index: 1;
}
.bg_spring::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background-image: 
        url("/odekake/assets/img/img_spring_bg_left.png"),  /* 左側の画像パス */
        url("/odekake/assets/img/img_spring_bg_right.png"); /* 右側の画像パス */
    background-color: #FFE8E4;
    background-position: 
        left 0 top 0, 
        right 0 top 0;
    background-repeat: 
        repeat-y, 
        repeat-y;
    background-size: 
        390px auto, 
        372px auto;
    z-index: -1;
    pointer-events: none;
}
@media screen and (max-width: 767px) {
    .bg_spring::before {
        /* スマホ用にサイズを調整（例：横幅を40pxにするなど） */
        background-size: 200px auto, 200px auto;
    }
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
/* ---------------------------------------------
*   c-block
--------------------------------------------- */
/* ---------------------------------------------
*   c-box
--------------------------------------------- */
/* ---------------------------------------------
*   c-btn
--------------------------------------------- */
.c-btn {
    position: relative;
    display: inline-block;
    padding: 16px 130px;
    border-radius: 100px;
    background-color: #00458f;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0.01em;
    color: #fff;
    font-feature-settings: "palt" 1;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-btn {
        border-radius: 3px;
        padding: 7px 44px;
        font-size: 11px;
    }
    .safari .c-btn {
        padding: 8px 44px 7px 44px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-btn {
        transition: opacity 300ms;
    }
    .c-btn:hover {
        opacity: 0.8;
    }
}
.c-btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    translate: 0 -50%;
    background: url("/odekake/assets/img/icon_arrow.png") 0 0 no-repeat;
    background-size: contain;
    width: 9px;
    height: 12px;
}
@media screen and (max-width: 767px) {
    .c-btn::before {
        right: 5px;
        width: 6px;
        height: 8px;
    }
}
.c-btn--more::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    translate: 0 -50%;
    background: url("/odekake/assets/img/enjoy/icon_more.png") 0 0 no-repeat;
    background-size: contain;
    width: 14px;
    height: 14px;
}
@media screen and (max-width: 767px) {
    .c-btn--more::before {
        right: 5px;
        width: 8px;
        height: 8px;
    }
}
.c-btn--l {
    width: 360px;
    padding: 16px 0 16px 0;
    font-size: 1.8rem;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-btn--l {
        width: 100%;
        padding: 12px 0;
        font-size: 16px;
        border-radius: 40px;
    }
    .safari .c-btn--l {
        padding: 16px 0;
        border-radius: 50px;
    }
    .c-btn--l::before {
        right: 10px;
        width: 9px;
        height: 12px;
    }
}
.c-btn--ll {
    width: 380px;
}
@media screen and (max-width: 767px) {
    .c-btn--ll {
        width: 100%;
    }
}
.c-btn--lll {
    display: block;
    width: 380px;
    margin: 0 auto 20px;
    font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
    .c-btn--lll {
        width: 100%;
        padding: 10px 44px 11px;
        margin: 0 auto 10px;
        font-size: 16px;
    }
    .c-btn--lll::before {
        right: 8px;
        width: 10px;
        height: 12px;
    }
}
.windows .c-btn--lll {
    padding: 13px 13px 11px;
}
@media screen and (max-width: 767px) {
    .windows .c-btn--lll {
        padding: 11px 11px 10px;
    }
}

.c-btn--pdf::before {
    background-image: url("/odekake/assets/img/icon_pdf.png");
    width: 16px;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-btn--pdf::before {
        width: 13px;
        height: 16px;
    }
}
.windows .c-btn--pdf {
    padding: 14px 76px 11px;
}
@media screen and (max-width: 767px) {
    .windows .c-btn--pdf {
        padding: 12px 44px 10px;
    }
}

@media (hover: hover) and (pointer: fine) {
    .c-btn:hover {
        color: #fff !important;
    }
}

/* ---------------------------------------------
*   c-card
--------------------------------------------- */
.c-card01 {
    padding: 40px 40px 35px 40px;
    border-radius: 10px;
    background-color: #e5eff9;
}
@media screen and (max-width: 767px) {
    .c-card01 {
        padding: 20px 15px 15px 16px;
    }
}
.c-card01:nth-of-type(n+2) {
    margin-top: 20px;
}
.c-card01__ttl-privilege {
    display: inline-block;
    width: 100px;
    height: 36px;
    padding-left: 4px;
    padding-block: 5px 6px;
    background-color: #00458f;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: -0.04em;
    color: #ffffff;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-card01__ttl-privilege {
        flex-shrink: 0;
        width: 60px;
        height: auto;
        padding-left: 2px;
        padding-block: 3px;
        font-size: 14px;
    }
}
.windows .c-card01__ttl-privilege {
    padding-block: 9px 6px;
}
@media screen and (max-width: 767px) {
    .windows .c-card01__ttl-privilege {
        padding-block: 5px 3px;
    }
}

.safari .c-card01__ttl-privilege {
    padding-block: 7px 6px;
}
@media screen and (max-width: 767px) {
    .safari .c-card01__ttl-privilege {
        padding-block: 6px 3px;
    }
}

@media screen and (max-width: 767px) {
    .iphone .c-card01__ttl-privilege {
        padding-block: 4px 3px;
    }
}

.c-card01__ttl {
    display: flex;
    align-items: baseline;
}
.c-card01__ttl-ttl {
    padding-left: 15px;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-card01__ttl-ttl {
        font-size: 16px;
        padding-left: 10px;
        line-height: 1.5;
    }
}
.c-card01__body {
    padding: 18px;
    margin-top: 30px;
    background-color: #fff;
}
.c-card01__body.mt0 {
    margin-top: 0 !important;
}
@media screen and (max-width: 767px) {
    .c-card01__body {
        padding: 6px 10px 10px 10px;
        margin-top: 18px;
        border-radius: 5px;
    }
}
.c-card01__area:nth-of-type(n+2) {
    margin-top: 22px;
}
@media screen and (max-width: 767px) {
    .c-card01__area:nth-of-type(n+2) {
        margin-top: 18px;
    }
}
.c-card01__area-ttl {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0.01em;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-card01__area-ttl {
        display: block;
        margin-left: 4px;
        font-size: 14px;
    }
}
.c-card01__area-list {
    display: block;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-card01__area-list {
        font-size: 12px;
        text-indent: -1em;
        padding-left: 1em;
    }
}
.c-card01__anno {
    display: block;
    font-weight: 300;
    font-size: 1.4rem;
    letter-spacing: 0.01em;
    text-indent: -0.9em;
    padding-left: 0.9em;
}
@media screen and (max-width: 767px) {
    .c-card01__anno {
        font-size: 10px;
        text-indent: -1em;
        padding-left: 1em;
    }
}
.c-card01__anno--red {
    color: #cc0000;
}
.c-card01__anno--mt01 {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .c-card01__anno--mt01 {
        margin-top: 7px;
    }
}
@media screen and (max-width: 767px) {
    .c-card01__anno:nth-of-type(n+2) {
        margin-top: 5px;
    }
}
.c-card01__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 40px auto;
}
@media screen and (max-width: 767px) {
    .c-card01__btn {
        width: 100%;
        margin: 20px auto;
    }
}

/* ---------------------------------------------
*   c-card02
--------------------------------------------- */
.c-card02 {
    display: flex;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-card02 {
        display: block;
        border-radius: 5px;
    }
}
.c-card02__img {
    display: block;
    width: 346px;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .c-card02__img {
        width: 100%;
        height: 214px;
    }
}
.c-card02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px 0 0 10px;
}
@media screen and (max-width: 767px) {
    .c-card02__img img {
        border-radius: 5px 5px 0 0;
    }
}
.c-card02__inner {
    display: flex;
    align-items: center;
    padding-inline: 40px;
    background-color: #fff;
    border-radius: 0 10px 10px 0;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-card02__inner {
        display: block;
        padding: 17px 18px 15px 20px;
        border-radius: 0 0 5px 5px;
    }
}
.c-card02__ttl {
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-card02__ttl {
        font-size: 14px;
    }
}
.c-card02__txt {
    display: block;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-card02__txt {
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-cassette
--------------------------------------------- */
/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form
--------------------------------------------- */
/* ---------------------------------------------
*   c-img
--------------------------------------------- */
/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.c-kv {
    position: relative;
    width: 100%;
    padding-block: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 767px) {
    .c-kv {
        min-height: 155px;
        height: auto;
    }
}
.c-kv__img {
    display: block;
    width: 100%;
    z-index: 1;
    line-height: 0;
}

.c-kv__img img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

.c-kv__content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
    width: 100%;
}
.c-kv__ttl {
    font-weight: 600;
    font-size: 3.6rem;
    letter-spacing: 0.01em;
    color: #00458f;
    margin: 0;
}
@media screen and (max-width: 767px) {
    .c-kv__ttl {
        font-size: 24px;
    }
}
.c-kv__ttl--magazine {
    position: relative;
    position: relative;
    padding-top: 20px;
}
.c-kv__ttl--magazine::before {
    content: "";
    position: absolute;
    background: url("/odekake/assets/img/ico_magazine_white.svg") 0 0 no-repeat;
    background-size: contain;
    width: 40px;
    height: 50px;
    top: -30px;
    left: 50%;
    translate: -50% 0;
}
@media screen and (max-width: 767px) {
    .c-kv__ttl--magazine::before {
        width: 30px;
        height: 30px;
        top: -12px;
    }
}

/* ---------------------------------------------
*   c-kv-02
--------------------------------------------- */
.c-kv-02 {
    position: relative;
    height: 400px;
    padding-block: 130px 138px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-kv-02 {
        height: auto;
        padding-block: 40px 44px;
    }
}

.c-kv-02__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.c-kv-02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-kv-02__ttl {
    position: relative;
    font-size: 3.6rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #fff;
    display: inline-block;
    padding: 10px 40px;
    border-radius: 100px;
    line-height: 1.2;
}
.page-nikko .c-kv-02__ttl {
    background-color: #ff7e00;
}
.page-skytree .c-kv-02__ttl {
    background-color: #0057B8;
}
.page-urban .c-kv-02__ttl {
    background-color: #65B901;
}
.page-kitakanto .c-kv-02__ttl {
    background-color: #EC2721;
}
.page-aizu .c-kv-02__ttl {
    background-color: #D27A18;
}
.page-tojo .c-kv-02__ttl {
    background-color: #1E22AA;
}
@media screen and (max-width: 767px) {
    .c-kv-02__ttl {
        font-size: 24px;
        padding: 5px 20px;
    }
}
.c-kv-02__lead {
    position: relative;
    display: block;
    margin-top: 24px;
    font-size: 1.8rem;
    letter-spacing: 0.03em;
    color: #fff;
}
@media screen and (max-width: 767px) {
    .c-kv-02__lead {
        margin-top: 8px;
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-kv-ticket-detail
--------------------------------------------- */
.c-kv-ticket-detail {
    position: relative;
    background-color: #e5eff9;
}
@media screen and (max-width: 767px) {
    .c-kv-ticket-detail::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 5px;
        background-color: #ff7e00;
        z-index: 2;
    }
}
.c-kv-ticket-detail__container {
    display: flex;
    align-items: center;
    width: 1120px;
    height: 400px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-kv-ticket-detail__container {
        align-items: center;
        justify-content: center;
        text-align: center;
        width: 100%;
        height: 200px;
    }
}
.c-kv-ticket-detail__ttl {
    display: block;
    font-weight: 600;
    font-size: 3.6rem;
    letter-spacing: 0.01em;
    color: #00458f;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
    .c-kv-ticket-detail__ttl {
        position: relative;
        font-size: 24px;
        z-index: 2;
        color: white;
    }
}
.c-kv-ticket-detail__img {
    position: absolute;
    right: 0;
    width: 53.8%;
    height: 100%;
}
@media screen and (min-width: 768px) {
    .c-kv-ticket-detail__img {
        -webkit-clip-path: polygon(14.5% 0, 100% 0, 100% 100%, 0% 100%);
                clip-path: polygon(14.5% 0, 100% 0, 100% 100%, 0% 100%);
    }
}
@media screen and (max-width: 767px) {
    .c-kv-ticket-detail__img {
        inset: 0;
        width: 100%;
    }
    .c-kv-ticket-detail__img::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: rgba(0, 0, 0, 0.3);
        width: 100%;
        height: 100%;
    }
}
.c-kv-ticket-detail__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-link
--------------------------------------------- */
.c-link {
    text-decoration: underline;
    color: #007bff;
}
@media (hover: hover) and (pointer: fine) {
    .c-link:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   c-list-slider
--------------------------------------------- */
.c-list-slider__img {
    display: block;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-list-slider__img {
        border-radius: 0;
    }
}
.c-list-slider__img img {
    border-radius: 10px;
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
@media screen and (max-width: 767px) {
    .c-list-slider__img img {
        border-radius: 0;
    }
}
.c-list-slider__link {
    display: block;
    width: 100%;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-slider__link {
        transition: opacity 300ms;
    }
    .c-list-slider__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 767px) {
    .c-list-slider__txt {
        display: block;
        padding-inline: 20px;
    }
}
.c-list-slider__ttl, .c-list-slider__desc {
    display: block;
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-slider__ttl, .c-list-slider__desc {
        font-size: 14px;
    }
}
.c-list-slider__ttl {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .c-list-slider__ttl {
        margin-top: 12px;
    }
}

/* ---------------------------------------------
*   c-list-area
--------------------------------------------- */
.c-list-area {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
    padding: 0 0 80px;
}
@media screen and (max-width: 959px) {
    .c-list-area {
        gap: 20px;
        padding: 0 0 40px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-area {
        display: block;
    }
}
.c-list-area__item {
    display: block;
    position: relative;
    width: 345px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
    padding: 10px 10px 20px 10px;
    background-color: #fff;
    overflow: hidden;
}
@media screen and (max-width: 959px) {
    .c-list-area__item {
        width: calc(50% - 10px);
    }
}
@media screen and (max-width: 767px) {
    .c-list-area__item {
        width: 100%;
        padding-bottom: 20px;
        border-radius: 5px;
    }
    .c-list-area__item:nth-of-type(n+2) {
        margin-top: 20px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-area__item {
        transition: opacity 300ms;
    }
    .c-list-area__item:hover {
        opacity: 0.8;
    }
}
.c-list-area__item::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: transparent;
}

.c-list-area__img {
    width: 100%;
    height: 230px;
    border-radius: 10px 10px 0 0;
    position: relative;
    margin: 0 auto;
    text-align: center;
}
@media screen and (max-width: 959px) {
    .c-list-area__img {
        height: 360px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-area__img {
        height: 232px;
        border-radius: 5px 5px 0 0;
    }
}
.c-list-area__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 5px;
}
.c-list-area__ttl {
    position: absolute;
    top: 72%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -ms-transform: translate(-50%, -50%);
    width: max-content;
    padding: 4px 24px;
    border-radius: 20px;
    margin: 0 auto;
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
    color: #ffffff;
    text-align: center;
}
.c-list-area__item--area01 .c-list-area__ttl {
    background-color: #FE7E00;
}
.c-list-area__item--area02 .c-list-area__ttl {
    background-color: #0057B8;
}
.c-list-area__item--area03 .c-list-area__ttl {
    background-color: #65B901;
}
.c-list-area__item--area04 .c-list-area__ttl {
    background-color: #EC2721;
}
.c-list-area__item--area05 .c-list-area__ttl {
    background-color: #D27A18;
}
.c-list-area__item--area06 .c-list-area__ttl {
    background-color: #1E22AA;
}
@media screen and (max-width: 767px) {
    .c-list-area__ttl {
        /* margin-block: 16px 8px; */
        padding-inline: 18px;
        font-size: 18px;
    }
}
.c-list-area__txt {
    display: block;
    padding-inline: 20px;
    font-weight: 500;
    font-size: 1.4rem;
    letter-spacing: 0.01em;
    color: #545454;
    text-align: center;
    padding: 30px 0 0;
}
@media screen and (max-width: 767px) {
    .c-list-area__txt {
        padding-inline: 20px;
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-list-search
--------------------------------------------- */
.c-list-search {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 24px;
    margin-top: 36px;
}
@media screen and (max-width: 959px) {
    .c-list-search {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-search {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 30px;
    }
}
.c-list-search--category .c-list-search__item {
    grid-row: span 4;
}
.c-list-search--category .c-list-search__ttl {
    margin-block: 11px 19px;
}
@media screen and (max-width: 767px) {
    .c-list-search--category .c-list-search__ttl {
        margin-block: 4px 10px;
    }
}
.c-list-search__item {
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    gap: 0;
    position: relative;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
    padding-bottom: 17px;
    background-color: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
@media screen and (max-width: 767px) {
    .c-list-search__item {
        border-radius: 5px;
        padding-bottom: 7px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-search__item {
        transition: opacity 300ms;
    }
    .c-list-search__item:hover {
        opacity: 0.8;
    }
}
.c-list-search__img {
    width: 100%;
    height: 167px;
    border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 959px) {
    .c-list-search__img {
        height: 360px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-search__img {
        height: 110px;
        border-radius: 5px 5px 0 0;
    }
}
.c-list-search__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 767px) {
    .c-list-search__img img {
        border-radius: 5px 5px 0 0;
    }
}
.c-list-search__ttl {
    display: block;
    margin-block: 18px 20px;
    padding-inline: 20px;
    font-weight: 700;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #333;
}
@media screen and (max-width: 767px) {
    .c-list-search__ttl {
        margin-block: 7px 9px;
        padding-inline: 10px;
        font-size: 12px;
        letter-spacing: 0.02em;
    }
}
.c-list-search__area {
    margin: 12px 0;
    padding-inline: 20px;
    font-size: 1.4rem;
    font-weight: 500;
    color: #333;
    display: flex;
    align-items: flex-start;
    line-height: 1.2;
}
.c-list-search__area::before {
    content: "";
    flex-shrink: 0;
    width: 1.2em;
    height: 1.2em;
    background: url(/odekake/assets/img/img_tab_location_on_blue.png) no-repeat;
    background-size: contain;
    margin-right: 4px;
    margin-top: 0.1em;
}
@media screen and (max-width: 767px) {
    .c-list-search__area {
        margin: 6px 0;
        padding-inline: 10px;
        font-size: 1rem;
        line-height: 1.2;
    }
    .c-list-search__area::before {
        content: "";
        width: 1em;
        height: 1em;
    }
}

/* ---------------------------------------------
*   c-list-magazine
--------------------------------------------- */
.c-list-magazine {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 40px;
    margin-top: 38px;
}
@media screen and (max-width: 959px) {
    .c-list-magazine {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-magazine {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        margin-top: 30px;
    }
}
.c-list-magazine__item {
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
    gap: 0;
    position: relative;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    border-radius: 10px;
    padding-bottom: 17px;
    background-color: #fff;
}
@media screen and (max-width: 767px) {
    .c-list-magazine__item {
        border-radius: 5px;
        padding-bottom: 7px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-magazine__item {
        transition: opacity 300ms;
    }
    .c-list-magazine__item:hover {
        opacity: 0.8;
    }
}
.c-list-magazine__img {
    width: 100%;
    height: 220px;
    border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 959px) {
    .c-list-magazine__img {
        height: 360px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-magazine__img {
        height: 170px;
        border-radius: 5px 5px 0 0;
    }
}
.c-list-magazine__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 767px) {
    .c-list-magazine__img img {
        border-radius: 5px 5px 0 0;
    }
}
.c-list-magazine__ttl {
    display: block;
    margin-block: 18px 20px;
    padding-inline: 20px;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-list-magazine__ttl {
        margin-block: 7px 9px;
        padding-inline: 10px;
        font-size: 12px;
        letter-spacing: 0.02em;
    }
}

/* ---------------------------------------------
*   c-list-category
--------------------------------------------- */
.c-list-category {
    padding-inline: 20px;
}
@media screen and (max-width: 767px) {
    .c-list-category {
        display: flex;
        flex-wrap: wrap;
        gap: 0 5px;
        padding-inline: 10px;
    }
}
.c-list-category__item {
    display: inline;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.01em;
    color: #00458F;
}
@media screen and (max-width: 767px) {
    .c-list-category__item {
        display: block;
        font-size: 10px;
        line-height: 1.514286;
    }
}

/* ---------------------------------------------
*   c-list-insta
--------------------------------------------- */
.c-list-insta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.c-list-insta__item {
    width: 370px;
    aspect-ratio: 1/1;
}
@media screen and (max-width: 959px) {
    .c-list-insta__item {
        width: calc(50% - 3px);
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-insta__item {
        transition: opacity 300ms;
    }
    .c-list-insta__item:hover {
        opacity: 0.8;
    }
}
.c-list-insta__link {
    display: block;
    width: 100%;
    height: 100%;
}
.c-list-insta__link img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   c-list-slider-02
--------------------------------------------- */
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-slider-02__item {
        transition: opacity 300ms;
    }
    .c-list-slider-02__item:hover {
        opacity: 0.8;
    }
}
.c-list-slider-02__txt {
    display: block;
    margin-top: 15px;
    font-weight: 500;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
    color: #545454;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-list-slider-02__txt {
        margin-top: 7px;
        font-size: 14px;
    }
}

/* ---------------------------------------------
* c-list-anchor
--------------------------------------------- */
.c-list-anchor {
    display: flex;
    justify-content: center;
    gap: 20px;
    max-width: 1000px;
    margin: 40px auto 0;
    padding-inline: 20px;
}

@media screen and (max-width: 767px) {
    .c-list-anchor {
        gap: 10px;
        padding-inline: 10px;
        margin-top: 25px;
    }
}

.c-list-anchor__item {
    position: relative;
    flex: 1;
    max-width: 320px;
    border-left: none;
    background: #fff;
    border-radius: 100px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transition: opacity 0.3s;
}

.c-list-anchor__item:last-of-type {
    border-right: none;
}

/* ホバー時の挙動 */
@media (hover: hover) {
    .c-list-anchor__item:hover {
        opacity: 0.75;
    }
}

.c-list-anchor__link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 20px 10px;
    height: 100%;
    text-decoration: none;
}

@media screen and (max-width: 767px) {
    .c-list-anchor__link {
        padding: 12px 5px;
        gap: 5px;
    }
}

.c-list-anchor__img {
    height: 30px;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .c-list-anchor__img {
        height: 20px;
    }
    .c-list-anchor__img img {
        width: auto;
        height: 100%;
    }
}

.c-list-anchor__txt {
    display: block;
    margin: 0;
    font-weight: 700;
    font-size: 1.8rem;
    color: #333;
}

@media screen and (max-width: 767px) {
    .c-list-anchor__txt {
        font-size: 11px;
        letter-spacing: -0.05em;
    }
}

/* 下のオレンジ矢印ボタン */
.c-list-anchor__item::before {
    content: "";
    position: absolute;
    bottom: -45px;
    left: 45%;
    transform: translateX(-50%);
    width: 40px;
    height: 40px;
    background-color: #ff7e00;
    border-radius: 50%;
    background-image: url("/odekake/assets/img/icon_arrow.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 10px auto;
    rotate: 90deg;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    z-index: 2;
    -webkit-mask: none;
    mask: none;
}

@media screen and (max-width: 767px) {
    .c-list-anchor__item::before {
        width: 24px;
        height: 24px;
        bottom: -26px;
        background-size: 6px auto;
    }
}

/* ---------------------------------------------
*   c-list-area02
--------------------------------------------- */
.c-list-area02 {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
@media screen and (max-width: 959px) {
    .c-list-area02 {
        gap: 10px;
    }
}
.c-list-area02--blue .c-list-area02__num {
    background-color: #0057b8;
}
.c-list-area02--othre .c-list-area02__num {
    background-color: #0057b8;
}
.c-list-area02--kitakanto .c-list-area02__num {
    background-color: #ec2620;
}
.c-list-area02--tojo .c-list-area02__num {
    background-color: #1e22aa;
}
.c-list-area02--urban .c-list-area02__num {
    background-color: #65b900;
}
.c-list-area02--aizu .c-list-area02__num {
    background-color: #d17a17;
}
.c-list-area02--aizu .c-list-area02__num {
    background-color: #d17a17;
}
.c-list-area02__item {
    max-width: 262px;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    z-index: 1;
}
@media screen and (max-width: 959px) {
    .c-list-area02__item {
        border-radius: 5px;
        max-width: initial;
        width: calc(50% - 10px);
    }
}
.c-list-area02__img {
    position: relative;
    border-radius: 10px;
    padding: 10px;
}
@media screen and (max-width: 959px) {
    .c-list-area02__img {
        height: 370px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-area02__img {
        height: 110px;
        border-radius: 5px 5px 0 0;
    }
}
.c-list-area02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-list-area02__img img {
        border-radius: 5px 5px 0 0;
    }
}
.c-list-area02__num {
    position: absolute;
    bottom: -20px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    font-family: 'Dela Gothic One';
    font-size: 16px;
    border-radius: 50px;
    color: #fff;
    background-color: #ff7e00;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
    .c-list-area02__num {
        font-size: 13px;
        width: 24px;
        height: 24px;
    }
}

.c-list-area02__link {
    display: block;
    width: 100%;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-area02__link {
        transition: opacity 300ms;
    }
    .c-list-area02__link:hover {
        opacity: 0.8;
    }
}
.c-list-area02__txt {
    display: block;
    padding: 15px 20px 17px;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #545454;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-list-area02__txt {
        padding: 7px 10px 8px 10px;
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-list-ticket
--------------------------------------------- */
.c-list-ticket {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
@media screen and (max-width: 959px) {
    .c-list-ticket {
        gap: 20px;
    }
}
.c-list-ticket--02 .c-list-ticket__digital-txt {
    font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
    .c-list-ticket--02 .c-list-ticket__digital-txt {
        font-size: 8px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-ticket--02 .c-list-ticket__digital {
        padding: 3px 5px 3px 6px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-ticket--02 .c-list-ticket__digital-icon {
        width: 8px;
    }
}
.c-list-ticket--03 .c-list-ticket__item {
    position: relative;
}
.c-list-ticket--03 .c-list-ticket__inner {
    padding: 15px 20px 15px 20px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket--03 .c-list-ticket__inner {
        padding: 6px 11px 7px 11px;
    }
}
.c-list-ticket--03 .c-list-ticket__digital {
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px 10px 5px 10px;
    background-color: #00458f;
    color: #fff;
    border-radius: 10px 0 0 0;
}
@media screen and (max-width: 767px) {
    .c-list-ticket--03 .c-list-ticket__digital {
        padding: 3px 4px 3px 5px;
        border-radius: 5px 0 0 0;
        gap: 3px;
    }
}
.c-list-ticket--03 .c-list-ticket__digital-txt {
    padding-top: 0;
    font-size: 12px;
    color: #fff;
}
@media screen and (max-width: 767px) {
    .c-list-ticket--03 .c-list-ticket__digital-txt {
        font-size: 8px;
    }
}
.c-list-ticket--03 .c-list-ticket__txt {
    margin-top: 0;
}
.c-list-ticket__item {
    width: 22.3214285714%;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 959px) {
    .c-list-ticket__item {
        border-radius: 5px;
        width: calc(50% - 10px);
    }
}
.c-list-ticket__link {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px 10px 0 0;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-list-ticket__link {
        transition: opacity 300ms;
    }
    .c-list-ticket__link:hover {
        opacity: 0.8;
    }
}
.c-list-ticket__img {
    height: 135px;
}
@media screen and (max-width: 959px) {
    .c-list-ticket__img {
        height: 300px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-ticket__img {
        height: 90px;
    }
}
.c-list-ticket__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__img img {
        border-radius: 5px 5px 0 0;
    }
}
.c-list-ticket__inner {
    padding: 20px 20px 15px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__inner {
        padding: 10px 10px 5px;
    }
}
.c-list-ticket__digital {
    display: flex;
    align-items: center;
    gap: 4px;
    width: -moz-fit-content;
    width: fit-content;
    padding: 3px 9px 5px 10px;
    border-radius: 3px;
    background-color: #e5eff9;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__digital {
        gap: 5px;
        padding: 3px 9px 3px 10px;
    }
}
.c-list-ticket__digital-category {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.c-list-ticket__digital-icon {
    width: 12px;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__digital-icon {
        width: 9px;
    }
}
.c-list-ticket__digital-icon img {
    display: block;
    width: 100%;
    height: 100%;
}
.c-list-ticket__digital-txt {
    padding-top: 3px;
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 1.4rem;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__digital-txt {
        padding-top: 0;
        font-size: 10px;
    }
}
.c-list-ticket__txt {
    display: block;
    margin-top: 7px;
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket__txt {
        margin-top: 8px;
        font-size: 12px;
    }
}

/* ---------------------------------------------
*   c-list-area-category
--------------------------------------------- */
.c-list-area-category {
    display: flex;
    flex-wrap: wrap;
    margin-top: 17px;
    gap: 0 13px;
    padding-inline: 20px;
}
@media screen and (max-width: 767px) {
    .c-list-area-category {
        margin-top: 9px;
        gap: 0 3px;
        padding-inline: 11px;
    }
}
.c-list-area-category__item {
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.614286;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-area-category__item {
        font-size: 10px;
        line-height: 1.4;
    }
}
.windows .c-list-area-category__item {
    letter-spacing: 0;
}

.c-list-area-category__item--all {
    color: #00458f;
}
.c-list-area-category__item--areas {
    color: #00b5f1;
}
.c-list-area-category__item--nikko {
    color: #ff7e00;
}
.c-list-area-category__item--kitakanto {
    color: #ec2620;
}
.c-list-area-category__item--skytree {
    color: #0057b8;
}
.c-list-area-category__item--tobu {
    color: #65b900;
}
.c-list-area-category__item--aizu {
    color: #d17a17;
}
.c-list-area-category__item--tojyo {
    color: #1e22aa;
}

/* ---------------------------------------------
*   c-list-ticket-detail
--------------------------------------------- */
.c-list-ticket-detail {
    display: flex;
    justify-content: center;
    gap: 80px;
    margin-top: 37px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail {
        display: block;
        margin-top: 27px;
    }
}
.c-list-ticket-detail__item {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 2px;
    width: 320px;
    padding: 10px 10px;
    border-radius: 10px;
    background-color: #e5eff9;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail__item {
        gap: 5px;
        width: 100%;
        padding: 20px 10px;
        border-radius: 5px;
    }
    .c-list-ticket-detail__item:nth-of-type(n+2) {
        margin-top: 20px;
    }
}
.c-list-ticket-detail__item:nth-of-type(n+2)::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -50px;
    translate: 0 -50%;
    background: url("/odekake/assets/img/ticket/marugoto-nikko-kinugawa/icon_plus.png") 0 0 no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail__item:nth-of-type(n+2)::before {
        width: 10px;
        height: 10px;
        top: -15px;
        left: 50%;
        translate: -50% 0;
    }
}
.c-list-ticket-detail__ttl {
    display: block;
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
    color: #00458f;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail__ttl {
        font-size: 12px;
    }
}
.c-list-ticket-detail__txt {
    display: block;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: 0.01em;
    color: #00458f;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail__txt {
        font-size: 16px;
    }
}
.c-list-ticket-detail__txt-anno {
    display: block;
    font-weight: 300;
    font-size: 1rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail__txt-anno {
        font-size: 10px;
    }
}

/* ---------------------------------------------
*   c-list-ticket-detail02
--------------------------------------------- */
.c-list-ticket-detail02 {
    margin-top: 11px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail02 {
        margin-top: 13px;
    }
}
.c-list-ticket-detail02__item:nth-of-type(n+2) {
    margin-top: 10px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail02__item:nth-of-type(n+2) {
        margin-top: 12px;
    }
}
.c-list-ticket-detail02__ttl {
    display: block;
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail02__ttl {
        font-size: 14px;
    }
}
.c-list-ticket-detail02__txt {
    display: block;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail02__txt {
        font-size: 12px;
    }
}
.c-list-ticket-detail02__txt--indent {
    color: #cc0000;
    padding-left: 0.5em;
}
.c-list-ticket-detail02__txt--red {
    color: #cc0000;
}

/* ---------------------------------------------
*   c-list-table
--------------------------------------------- */
.c-list-table {
    display: flex;
    margin-top: 10px;
    border-top: 1px solid #00458f;
    border-bottom: 1px solid #00458f;
}
.c-list-table__item {
    padding-block: 23px;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0;
    color: #00458f;
    text-align: center;
    background-color: #f2f6f9;
}
@media screen and (max-width: 767px) {
    .c-list-table__item {
        padding-block: 8px;
        font-size: 12px;
    }
}
.c-list-table__item:nth-of-type(1) {
    width: 50%;
}
@media screen and (max-width: 767px) {
    .c-list-table__item:nth-of-type(1) {
        width: 45.5882352941%;
    }
}
.c-list-table__item:nth-of-type(n+2) {
    width: 25%;
    border-left: 1px solid #dddddd;
}
.c-list-table__item.colSpan3 {
    width: 100% !important;
}
@media screen and (max-width: 767px) {
    .c-list-table__item:nth-of-type(n+2) {
        width: 27.2058823529%;
    }
}
.c-list-table__item--l {
    width: 50% !important;
}

/* ---------------------------------------------
*   c-list-table02
--------------------------------------------- */
.c-list-table02--flex {
    display: flex;
    max-width: 1100px;
}
.c-list-table02--flex .c-list-table02__price {
    width: 25%;
}
@media screen and (max-width: 767px) {
    .c-list-table02--flex .c-list-table02__price {
        padding: 4px;
        font-size: 10px;
    }
}
.c-list-table02--flex .c-list-table02__price--add {
    width: 18.6%;
    justify-content: center;
    border-bottom: 1px solid #00458f;
}
@media screen and (max-width: 767px) {
    .c-list-table02--flex .c-list-table02__price--add {
        width: 20.8%;
    }
}
.c-list-table02__container {
    width: 100%;
}
.c-list-table02__item {
    display: flex;
    border-bottom: 1px solid #00458f;
}
.c-list-table02__price {
    display: flex;
    align-items: center;
    justify-content: end;
    width: 25%;
    padding: 36px;
    border-left: 1px solid #dddddd;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-list-table02__price {
        width: 27.2058823529%;
        padding: 9px;
        font-size: 12px;
    }
}
.c-list-table02__price--l {
    width: 50%;
    text-align: center;
    justify-content: center;
}
.c-list-table02__inner {
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #dddddd;
}

/* ---------------------------------------------
*   c-list-table03
--------------------------------------------- */
.c-list-table03 {
    width: 50%;
    display: flex;
    justify-content: center;
    flex-flow: wrap column;
}
@media screen and (max-width: 767px) {
    .c-list-table03 {
        width: 45.5882352941%;
    }
}
.c-list-table02--flex .c-list-table03 {
    width: 50%;
    max-width: 366px;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .c-list-table02--flex .c-list-table03 {
        width: 35.7%;
    }
}

.c-list-table03__item {
    padding: 18px 40px 17px;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-list-table03__item {
        padding: 7px 3px 4px 8px;
        font-size: 12px;
    }
    .windows .c-list-table03__item {
        padding: 6px 10px 5px;
    }
}
@media screen and (max-width: 767px) {
    .c-list-table02--flex .c-list-table03__item {
        font-size: 10px;
    }
}

.c-list-table03__item:nth-of-type(n+2) {
    border-top: 1px solid #dddddd;
}
.c-list-table03__item--center {
    display: flex;
    align-items: center;
    height: 100%;
}

/* ---------------------------------------------
*   c-list-ticket-detail03
--------------------------------------------- */
.c-list-ticket-detail03 {
    color: #545454;
    margin-left: 7px;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail03 {
        margin-left: 4px;
    }
}
.c-list-ticket-detail03__item--indent {
    padding-left: 10px;
}
.c-list-ticket-detail03__ttl {
    display: block;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0.01em;
    text-indent: -1em;
    padding-left: 1em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail03__ttl {
        font-size: 14px;
    }
}
.c-list-ticket-detail03__ttl--red {
    color: #cc0000;
}
.c-list-ticket-detail03__txt {
    display: block;
    margin-left: 10px;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-list-ticket-detail03__txt {
        font-size: 12px;
        margin-left: 8px;
    }
}
.windows .c-list-ticket-detail03__txt {
    margin-left: 21px;
}
@media screen and (max-width: 767px) {
    .windows .c-list-ticket-detail03__txt {
        margin-left: 16px;
    }
}

.safari .c-list-ticket-detail03__txt {
    margin-left: 20px;
}
@media screen and (max-width: 767px) {
    .safari .c-list-ticket-detail03__txt {
        margin-left: 14px;
    }
}

@media screen and (max-width: 767px) {
    .iphone .c-list-ticket-detail03__txt {
        margin-left: 15px;
    }
}

/* ---------------------------------------------
*   c-list-time
--------------------------------------------- */
.c-list-time {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px 98px;
}
@media screen and (max-width: 767px) {
    .c-list-time {
        gap: 0px 0px;
    }
}
.c-list-time__item {
    display: block;
    font-weight: 300;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-list-time__item {
        width: 50%;
        font-size: 14px;
    }
}
.c-list-time__link {
    position: relative;
    text-decoration: underline;
    text-underline-offset: 6px;
    color: #00458f;
}
.c-list-time__link__txt {
    position: relative;
    text-decoration: underline;
    text-underline-offset: 6px;
    color: #00458f;
    padding-right: 1.5em;
    margin: 0;
}
@media screen and (max-width: 767px) {
    .c-list-time__link {
        text-underline-offset: 2px;
    }
    .c-list-time__link__txt {
        text-underline-offset: 2px;
        margin: 0 0 0 16px;
    }
}
.c-list-time__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: -18px;
    background: url("/odekake/assets/img/icon_link.png") 0 0 no-repeat;
    background-size: 100% auto;
    width: 10px;
    height: 10px;
    translate: 0 -50%;
}.c-list-time__link__txt::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    background: url("/odekake/assets/img/icon_link.png") 0 0 no-repeat;
    background-size: 100% auto;
    width: 10px;
    height: 10px;
    translate: 0 -50%;
}
@media screen and (max-width: 767px) {
    .c-list-time__link::before {
        right: -14px;
    }
    .c-list-time__link__txt::before {
        right: 2px;
    }
}

/* ---------------------------------------------
*   c-section-01
--------------------------------------------- */
.c-section-01 {
    position: relative;
    padding-bottom: 55px;
    margin: 120px 0 80px;
}
@media screen and (max-width: 767px) {
    .c-section-01 {
        padding-bottom: 35px;
    }
}

.page-nikko .c-section-01{
    margin: 200px 0;
}
.page-skytree .c-section-01{
    margin: 200px 0;
}
.page-urban .c-section-01{
    margin: 200px 0;
}
.page-kitakanto .c-section-01{
    margin: 200px 0;
}
.page-aizu .c-section-01{
    margin: 200px 0;
}
.page-tojo .c-section-01{
    margin: 200px 0;
}
@media screen and (max-width: 767px) {
    .page-nikko .c-section-01{
        margin: 100px 0;
    }
    .page-skytree .c-section-01{
        margin: 100px 0;
    }
    .page-urban .c-section-01{
        margin: 100px 0;
    }
    .page-kitakanto .c-section-01{
        margin: 100px 0;
    }
    .page-aizu .c-section-01{
        margin: 100px 0;
    }
    .page-tojo .c-section-01{
        margin: 100px 0;
    }
}

.c-section-01::before {
    content: '';
    background: #FFFFFF;
    width: 95%;
    height: 100%;
    border-radius: 20px 0 0 20px;
    position: absolute;
    top: 0;
    bottom: unset;
    left: unset;
    z-index: -1;
    right: 0;
}
@media screen and (max-width: 767px) {
    .c-section-01::before {
        /* height: 370px; */
    }
}
.c-section-01__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1120px;
    margin: 120px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-01__head {
        max-width: initial;
        width: 100%;
        margin: 45px auto 0;
        padding-inline: 20px;
    }
}
.c-section-01__head--02 {
    margin: 52px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-01__head--02 {
        margin: 39px auto 0;
    }
}

.c-section-01__ttl_box {
    margin: 24px 0 48px;
}
.c-section-01__ttl_a {
    display: block;
    text-align: center;
    margin: 24px 0 0;
}
@media screen and (max-width: 767px) {
    .c-section-01__ttl_a {
        margin: 12px 0 0;
    }
}

.c-section-01__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-01__ttl {
        font-size: 20px;
    }
}
.c-section-01__ttl_en {
    text-align: center;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #B4B4B4;
    color: transparent;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 0;
}
@media screen and (max-width: 767px) {
    .c-section-01__ttl_en {
        font-size: 64px;
    }
}
.page-nikko .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #FEE2C5;
}
.page-skytree .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #BBDBFF;
}
.page-urban .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #D9F2BA;
}
.page-kitakanto .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #FED4D3;
}
.page-aizu .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #F0E0CF;
}
.page-tojo .c-section-01__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #DFE0F5;
}

.c-section-01__ttl_img {
    position: absolute;
    top: -5px;
    left: 20%;
}
@media screen and (max-width: 767px) {
    .c-section-01__ttl_img {
        width: 25%;
        left: 10%;
    }
}
.c-section-01__body {
    overflow: hidden;
    padding-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-01__body {
        padding-top: 0px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-01__btn {
        /* margin-top: 30px; */
        padding-inline: 60px;
    }
}

/* ---------------------------------------------
*   c-section-02
--------------------------------------------- */
.c-section-02 {
    position: relative;
    padding-block: 100px 140px;
}
@media screen and (max-width: 767px) {
    .c-section-02 {
        padding-block: 60px 80px;
    }
}
.c-section-02__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
.c-section-02__container::before {
    content: "";
    position: absolute;
    bottom: -190px;
    left: 50%;
    translate: -50% 0;
    background: url("/odekake/assets/img/bg_top01.png") 0 0 no-repeat;
    background-size: 100% auto;
    width: 1620px;
    height: 265px;
}
@media screen and (max-width: 767px) {
    .c-section-02__container::before {
        bottom: -90px;
        background-image: url("/odekake/assets/img/bg_top_sp01.png");
        background-size: 100% 100%;
        width: 100%;
        height: 70px;
    }
}
.c-section-02__img {
    display: block;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-02__img {
        transition: opacity 300ms;
    }
    .c-section-02__img:hover {
        opacity: 0.8;
    }
}
.c-section-02__img img {
    width: 100%;
    height: 100%;
}
.c-section-02__body {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-02__body {
        margin-top: 16px;
    }
}

/* ---------------------------------------------
*   c-section-03
--------------------------------------------- */
.c-section-03 {
    padding-block: unset;
    width: 95%;
    margin: 120px auto;
    background-color: #FEF3C8;
    border-radius: 20px;
}
@media screen and (max-width: 767px) {
    .c-section-03 {
        margin: 120px auto 48px;
    }
}
.c-section-03__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-03__container {
        max-width: initial;
    }
}
.c-section-03__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-03__ttl {
        font-size: 20px;
    }
}
.c-section-03__ttl_en {
    text-align: center;
    color: #FEE489;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-03__ttl_en {
        font-size: 64px;
    }
}
.c-section-03__ttl_img {
    position: absolute;
    top: -30px;
    right: 26%;
    z-index: 3;
}
.page-skytree .c-section-03__ttl_img {
        position: absolute;
        top: -30px;
        right: 20%;
        z-index: 3;
    }
@media screen and (max-width: 767px) {
    .c-section-03__ttl_img {
        width: 12%;
        top: -12px;
        right: 14%;
    }
    .page-nikko .c-section-03__ttl_img {
        width: 12%;
        top: 10px;
        right: 2%;
    }
}
.c-section-03__ttl_img02 {
    position: absolute;
    bottom: -80px;
    right: 15%;
    z-index: 6;
}
@media screen and (max-width: 767px) {
    .c-section-03__ttl_img02 {
        width: 14%;
        bottom: -40px;
        z-index: 6;
    }
}
.c-section-03__body {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-03__body {
        margin-top: 30px;
    }
}
.c-section-03__map {
    margin: 120px 0 36px;
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-section-03__map {
        margin-bottom: 33px;
    }
}
.c-section-03__map img {
    border-radius: 10px;
    width: 100%;
    height: 100%;
    margin: 120px 0 36px;
}
@media screen and (max-width: 767px) {
    .c-section-03__map img {
        margin: 60px 0 0;
    }
}


/* ---------------------------------------------
*   sec_wave
--------------------------------------------- */
.sec_wave {
    position: relative;
    width: 100%;
    height: 120px;
    background-color: transparent !important;
    margin: 0;
    z-index: 5;
    margin-bottom: -60px;
}
@media screen and (max-width: 767px) {
    .sec_wave {
        height: 40px;
        margin-bottom: -40px;
    }
}
.sec_wave_bottom {
    margin-bottom: -160px;
}
@media screen and (max-width: 767px) {
    .page-nikko .sec_wave_bottom {
    margin-bottom: -100px;
    }
    .page-skytree .sec_wave_bottom {
        margin-bottom: -100px;
    }
    .page-urban .sec_wave_bottom {
        margin-bottom: -100px;
    }
    .page-kitakanto .sec_wave_bottom {
        margin-bottom: -100px;
    }
    .page-aizu .sec_wave_bottom {
        margin-bottom: -100px;
    }
    .page-tojo .sec_wave_bottom {
        margin-bottom: -100px;
    }
}
.waves {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* 波の動き */
.parallax > use {
    animation: move-forever 10s cubic-bezier(.55,.5,.45,.5) infinite;
}
@keyframes move-forever {
    0% { transform: translate3d(-90px, 0, 0); }
    100% { transform: translate3d(85px, 0, 0); }
}
@media screen and (max-width: 767px) {
    .sec_wave {
        height: 80px;
    }
}


/* ---------------------------------------------
*   c-section-04
--------------------------------------------- */
.c-section-04 {
    position: relative;
    margin-top: -120px;
    padding-block: 110px 160px;
    background-image: url('/odekake/assets/img/bg_hte.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-04 {
        margin-top: -80px;
        background-attachment: scroll !important;
    }
}


.page-nikko .c-section-04 {
    background-image: url('/odekake/assets/img/area/nikko-kinugawa/bg_hte_nikko.webp');
}
.page-skytree .c-section-04 {
    background-image: url('/odekake/assets/img/area/skytree-line/bg_hte_skytree.webp');
}
.page-urban .c-section-04 {
    background-image: url('/odekake/assets/img/area/urbanpark-line/bg_hte_urban.webp');
}
.page-kitakanto .c-section-04 {
    background-image: url('/odekake/assets/img/area/kitakanto/bg_hte_kitakanto.webp');
}
.page-aizu .c-section-04 {
    background-image: url('/odekake/assets/img/area/aizu/bg_hte_aizu.webp');
}
.page-tojo .c-section-04 {
    background-image: url('/odekake/assets/img/area/tojo-line/bg_hte_tojo.webp');
}


.c-section-04__ttl_box {
    display: block;
    margin: 24px 0;
    padding: 0 0 56px 0;
}
@media screen and (max-width: 767px) {
    .c-section-04__ttl_box {
        padding: 0 0 36px 0;
    }
}
.c-section-04__ttl_en {
    text-align: center;
    color: #ffffff;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: max-content;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 0;
    opacity: 0.4;
}
@media screen and (max-width: 767px) {
    .c-section-04__ttl_en {
        font-size: 50px;
    }
}
.c-section-04__ttl_img {
    position: absolute;
    top: -100px;
    left: 3%;
}
@media screen and (max-width: 767px) {
    .c-section-04__ttl_img {
        width: 14%;
        top: -60px;
    }
}

.c-section-04--bg01 {
    background-color: #FBF3E8;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg01 {
        padding-block: 70px 89px;
    }
    .page-nikko .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
    .page-skytree .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
    .page-urban .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
    .page-kitakanto .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
    .page-aizu .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
    .page-tojo .c-section-04--bg01 {
        padding-block: 120px 89px;
    }
}

.c-section-04--bg01::before {
    background-image: url("/odekake/assets/img/area/nikko-kinugawa//bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg01::before {
        background-image: url("/odekake/assets/img/area/nikko-kinugawa//bg_01_sp.jpg");
    }
}
.c-section-04--bg01::after {
    background-image: url("/odekake/assets/img/area/nikko-kinugawa//bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg01::after {
        background-image: url("/odekake/assets/img/area/nikko-kinugawa//bg_02_sp.jpg");
    }
}

.c-section-04--bg01 .c-section-04__container::before {
    content: none;
}
.c-section-04--bg02 {
    background-color: #E6F7FD;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg02 {
        padding-block: 70px 89px;
    }
}
.c-section-04--bg02::before {
    background-image: url("/odekake/assets/img/area/skytree-line/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg02::before {
        background-image: url("/odekake/assets/img/area/skytree-line/bg_01_sp.jpg");
    }
}
.c-section-04--bg02::after {
    background-image: url("/odekake/assets/img/area/skytree-line/bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg02::after {
        background-image: url("/odekake/assets/img/area/skytree-line/bg_02_sp.jpg");
    }
}
.c-section-04--bg02 .c-section-04__container::before {
    content: none;
}
.c-section-04--bg03 {
    background-color: #eaf6de;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg03 {
        padding-block: 70px 89px;
    }
}
.c-section-04--bg03::before {
    background-image: url("/odekake/assets/img/area/urbanpark-line/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg03::before {
        background-image: url("/odekake/assets/img/area/urbanpark-line/bg_01_sp.jpg");
    }
}
.c-section-04--bg03::after {
    background-image: url("/odekake/assets/img/area/urbanpark-line/bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg03::after {
        background-image: url("/odekake/assets/img/area/urbanpark-line/bg_02_sp.jpg");
    }
}
.c-section-04--bg03 .c-section-04__container::before {
    content: none;
}
.c-section-04--bg04 {
    background-color: #FDE9E8;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg04 {
        padding-block: 70px 89px;
    }
}
.c-section-04--bg04::before {
    background-image: url("/odekake/assets/img/area/kitakanto/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg04::before {
        background-image: url("/odekake/assets/img/area/kitakanto/bg_01_sp.jpg");
    }
}
.c-section-04--bg04::after {
    background-image: url("/odekake/assets/img/area/kitakanto/bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg04::after {
        background-image: url("/odekake/assets/img/area/kitakanto/bg_02_sp.jpg");
    }
}
.c-section-04--bg04 .c-section-04__container::before {
    content: none;
}
.c-section-04--bg05 {
    background-color: #FBF3E8;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg05 {
        padding-block: 70px 89px;
    }
}
.c-section-04--bg05::before {
    background-image: url("/odekake/assets/img/area/aizu/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg05::before {
        background-image: url("/odekake/assets/img/area/aizu/bg_01_sp.jpg");
    }
}
.c-section-04--bg05::after {
    background-image: url("/odekake/assets/img/area/aizu/bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg05::after {
        background-image: url("/odekake/assets/img/area/aizu/bg_02_sp.jpg");
    }
}
.c-section-04--bg05 .c-section-04__container::before {
    content: none;
}
.c-section-04--bg06 {
    background-color: #E9EAF7;
    padding-block: 150px 157px;
}
@media screen and (max-width: 767px) {
    .c-section-04--bg06 {
        padding-block: 70px 89px;
    }
}
.c-section-04--bg06::before {
    background-image: url("/odekake/assets/img/area/tojo-line/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg06::before {
        background-image: url("/odekake/assets/img/area/tojo-line/bg_01_sp.jpg");
    }
}
.c-section-04--bg06::after {
    background-image: url("/odekake/assets/img/area/tojo-line/bg_02.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--bg06::after {
        background-image: url("/odekake/assets/img/area/tojo-line/bg_02_sp.jpg");
    }
}
.c-section-04--bg06 .c-section-04__container::before {
    content: none;
}
.c-section-04--detail {
    padding-block: 125px 90px;
    background-color: #E5F6FC;
}
@media screen and (max-width: 767px) {
    .c-section-04--detail {
        padding-block: 60px 75px;
    }
}
.c-section-04--detail::before {
    background-image: url("/odekake/assets/img/enjoy/detail/bg_01.jpg");
}
@media screen and (max-width: 767px) {
    .c-section-04--detail::before {
        background-image: url("/odekake/assets/img/enjoy/detail/bg_01_sp.jpg");
    }
}
.c-section-04--detail::after {
    content: none;
}
.c-section-04--detail .c-section-04__container::before {
    content: none;
}
.c-section-04__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    padding-bottom: 80px;
    margin: 120px auto 0;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-04__container {
        margin: 32px auto 0;
        padding-bottom: 48px;
    }
}
.c-section-04__body {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .c-section-04__body {
        margin-top: 0px;
    }
}
.c-section-04__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 52px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-04__btn {
        width: 100%;
        margin: 40px auto 0;
    }
}
@media screen and (max-width: 767px) {
    .c-section-04__icon {
        width: 345px;
        margin: 20px auto 0;
    }
}


/* ---------------------------------------------
*   c-section-05
--------------------------------------------- */
.c-section-05__ttl_img {
    position: absolute;
    top:-10px;
    right: 15%;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-05__ttl_img {
        width: 20%;
        right: 8%;
    }
}
.c-section-05 {
    position: relative;
    padding-block: 100px 140px;
    background-color: #DFF8FD;
    z-index: 3;
}
@media screen and (max-width: 767px) {
    .c-section-05 {
        padding-block: 50px 82px;
    }
}
.c-section-05__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
.c-section-05__container::before {
    content: "";
    position: absolute;
    bottom: -140px;
    left: 50%;
    translate: -50% 0;
    background: url(/odekake/assets/img/bg_top03.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 1645px;
    height: 210px;
}
@media screen and (max-width: 767px) {
    .c-section-05__container::before {
        bottom: -82px;
        background-image: url(/odekake/assets/img/bg_top_sp03.png);
        background-size: 100% 100%;
        width: 100%;
        height: 70px;
    }
}
.c-section-05__body {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .c-section-05__body {
        margin-top: 23px;
    }
}
.c-section-05__img {
    position: relative;
    display: block;
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-section-05__img {
        border-radius: 5px;
    }
}
.c-section-05__img img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
}
@media screen and (max-width: 767px) {
    .c-section-05__img img {
        border-radius: 5px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-05__img {
        transition: opacity 300ms;
    }
    .c-section-05__img:hover {
        opacity: 0.8;
    }
}
.c-section-05__img::before {
    content: "";
    position: absolute;
    top: -66px;
    right: -48px;
    background: url(/odekake/assets/img/icon_top01.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 200px;
    height: 100px;
}
@media screen and (max-width: 767px) {
    .c-section-05__img::before {
        top: -30px;
        right: -25px;
        background-image: url(/odekake/assets/img/icon_top01_sp.png);
        width: 98px;
        height: 75px;
    }
}
.c-section-05__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-05__btn {
        width: 100%;
        margin: 40px auto 0;
    }
}

/* ---------------------------------------------
*   c-section-06
--------------------------------------------- */
.c-section-06 {
    margin-top: 19px;
    padding-block: 96px 86px;
    background-color: #E4F6EB;
}
@media screen and (max-width: 767px) {
    .c-section-06 {
        margin-top: 10px;
        padding-block: 61px 54px;
    }
}
.c-section-06__head {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-06__head {
        max-width: initial;
    }
}
.c-section-06__img {
    display: block;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-06__img {
        transition: opacity 300ms;
    }
    .c-section-06__img:hover {
        opacity: 0.8;
    }
}
.c-section-06__img img {
    width: 100%;
    height: 100%;
}
.c-section-06__body {
    max-width: 1190px;
    padding-inline: 20px;
    margin: 40px auto 0;
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-06__body {
        max-width: initial;
        margin-top: 30px;
        padding-inline: 12px;
    }
}

/* ---------------------------------------------
*   c-section-07
--------------------------------------------- */
.c-section-07 {
    padding-block: 80px 100px;
}
@media screen and (max-width: 767px) {
    .c-section-07 {
        padding-block: 8px 60px;
    }
}
.c-section-07--bg02 {
    padding-block: 24px 100px;
}
@media screen and (max-width: 767px) {
    .c-section-07--bg02 {
        padding-block: 0px 80px;
    }
}
.page-nikko .c-section-07--bg02 {
    background-color: #FFF1E4;
}
.page-tojo .c-section-07--bg02 {
    background-color: #EFEFFF;
}

.c-section-07__ttl_box {
    margin: 24px 0 48px;
}
.c-section-07__ttl_a {
    display: block;
    text-align: center;
    margin: 24px 0 0;
}
@media screen and (max-width: 767px) {
    .c-section-07__ttl_a {
        margin: 12px 0 0;
    }
}

.c-section-07__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-07__ttl {
        font-size: 20px;
        white-space: nowrap;
    }
}
.c-section-07__ttl_en {
    text-align: center;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #B4B4B4;
    color: transparent;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 0;
}

@media screen and (max-width: 767px) {
    .c-section-07__ttl_en {
        font-size: 48px;
    }
}
.page-nikko .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #FEE2C5;
}
.page-skytree .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #BBDBFF;
}
.page-urban .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #D9F2BA;
}
.page-kitakanto .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #FED4D3;
}
.page-aizu .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #F0E0CF;
}
.page-tojo .c-section-07__ttl_en {
    -webkit-text-stroke-width: 0px;
    color: #DFE0F5;
}

.c-section-07__ttl_img {
    position: absolute;
    top:-110px;
    left: 15%;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-07__ttl_img {
        width: 16%;
        left: 3%;
        top: -80px;
    }
}
.c-section-07__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-07__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-07__head {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1120px;
    margin: 120px auto 0;
    min-height: 80px;
}
@media screen and (max-width: 767px) {
    .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 100px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-nikko .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-skytree .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-urban .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-kitakanto .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-aizu .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
    .page-tojo .c-section-07__head {
        display: block;
        max-width: initial;
        width: 100%;
        margin: 20px auto 24px;
        padding-inline: 20px;
        min-height: 20px;
        padding-bottom: 0px;
    }
}
.c-section-07__body {
    margin-top: 24px;
}
@media screen and (max-width: 767px) {
    .c-section-07__body {
        margin-top: 12px;
    }
}
.c-section-07__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-07__btn {
        width: 100%;
        margin: 40px auto 0;
    }
}

/* ---------------------------------------------
*   c-section-08
--------------------------------------------- */
.c-section-08 {
    padding-block: 160px;
    background-color: #E4F6EB;
    position: relative;
}
@media screen and (max-width: 767px) {
    .c-section-08 {
        padding-block: 80px 140px;
    }
}
.c-section-08::after {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0;
    background: url(/odekake/assets/img/img_grass.png) 0 0 repeat-x;
    background-size: auto 20px; 
    width: 100%;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-section-08::after {

    }
}
.c-section-08__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-08__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-08__container::before {
    content: '';
    background: #FFFFFF;
    width: 95%;
    height: 62%;
    border-radius: 0 20px 20px 0;
    position: absolute;
    top: 190px;
    z-index: 1;
    left: 0;
}
@media screen and (max-width: 767px) {
    .c-section-08__container::before {
        height: 380px;
        top: 95px;
    }
}
.c-section-08__ttl_box {
    position: relative;
    display: block;
    margin: 24px 0 48px;
    min-height: 10px;
}
.c-section-08__ttl_a {
    display: block;
    text-align: center;
    margin: 24px 0 0;
}

.c-section-08__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-08__ttl {
        font-size: 20px;
    }
}
.c-section-08__ttl_en {
    text-align: center;
    color: #D0EEDC;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-08__ttl_en {
        font-size: 52px;
    }
}
.c-section-08__ttl_img {
    position: absolute;
    top: -120px;
    right: 5%;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-08__ttl_img {
        width: 25%;
        top: -70px;
        right: 2%;
    }
}
.c-section-08-01__ttl_img {
    position: absolute;
    bottom: 100px;
    left: 24%;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-08-01__ttl_img {
        width: 20%;
        bottom: 80px;
        right: 10%;
        left: unset;
    }
}

/* アニメーション全体を包む枠 */
.train-animation-wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 200px;
    pointer-events: none;
    z-index: 10;
}

/* 電車が走るコンテナ */
.train-container {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    z-index: 1; /* 駅より下 */
}

/* 走る電車の設定 */
.moving-train {
    position: absolute;
    bottom: 10px;
    width: 300px;
    animation: run 10s linear infinite;
}
@media screen and (max-width: 767px) {
    .moving-train {
        width: 40%;
        bottom: 0px;
    }
}

/* 前面に配置する駅の設定 */
.station-front-img {
    position: absolute;
    bottom: 0;
    left: 11%;
    z-index: 2;
    height: auto;
    width: auto;
}
@media screen and (max-width: 767px) {
    .station-front-img {
        width: 30%;
    }
}

/* アニメーション命令 */
@keyframes run {
    0% { transform: translateX(100vw); }
    100% { transform: translateX(-100%); }
}

.c-section-08__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto 20px;
}
@media screen and (max-width: 767px) {
    .c-section-08__btn {
        width: 80%;
        margin: 8px auto 0;
    }
}
.c-section-08__btn .c-btn--l {
    z-index: 2;
}

/* ---------------------------------------------
*   c-section-09
--------------------------------------------- */
.c-section-09 {
    padding-block: 120px 80px;
    background-color: #BFDDC1;
}
@media screen and (max-width: 767px) {
    .c-section-09 {
        padding-block: 80px;
    }
}
.c-section-09__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-09__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-09__body {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-09__body {
        margin-top: 0px;
    }
}

.c-section-09__ttl_box {
    position: relative;
    display: block;
    margin: 24px 0 48px;
    min-height: 48px;
}
@media screen and (max-width: 767px) {
    .c-section-09__ttl_box {
        margin: 24px 0 12px;
    }
}
.c-section-09__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-09__ttl {
        font-size: 20px;
        white-space: nowrap;
    }
}
.c-section-09__ttl_en {
    text-align: center;
    color: #D5E9D7;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-section-09__ttl_en {
        font-size: 64px;
    }
}
.c-section-09__ttl_img {
    position: absolute;
    top: -110px;
    left: 23%;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-section-09__ttl_img {
        width: 10%;
        top: -60px;
        left: 4%;
    }
}

.c-section-09__img {
    display: block;
}
.c-section-09__img img {
    width: 100%;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-09__img {
        transition: opacity 300ms;
    }
    .c-section-09__img:hover {
        opacity: 0.8;
    }
}

/* ---------------------------------------------
*   c-section-10
--------------------------------------------- */
.c-section-10 {
    position: relative;
    padding-block: 100px 64px;
}
@media screen and (max-width: 767px) {
    .c-section-10 {
        padding-block: 20px 60px;
    }
}
.c-section-10__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-10__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-10__container::before {
    content: '';
    background: #FFFFFF;
    width: 95%;
    height: auto;
    border-radius: 0 20px 20px 0;
    position: absolute;
    top: 10px;
    bottom: 0;
    left: 0;
}

.c-section-10__ttl_box {
    margin: 24px 0 48px;
}
.c-section-10__ttl {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-section-10__ttl {
        font-size: 20px;
        white-space: nowrap;
    }
}
.c-section-10__ttl_en {
    text-align: center;
    font-family: "Dela Gothic One";
    font-size: 128px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
     position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
.page-nikko .c-section-10__ttl_en {
    color: #FEE2C5;
}
.page-skytree .c-section-10__ttl_en {
    color: #BBDBFF;
}
.page-urban .c-section-10__ttl_en {
    color: #D9F2BA;
}
.page-kitakanto .c-section-10__ttl_en {
    color: #FED4D3;
}
.page-aizu .c-section-10__ttl_en {
    color: #F0E0CF;
}
.page-tojo .c-section-10__ttl_en {
    color: #DFE0F5;
}
@media screen and (max-width: 767px) {
    .c-section-10__ttl_en {
        font-size: 64px;
    }
}
.c-section-10__ttl_img {
    position: absolute;
    top: -30px;
    right: 26%;
    z-index: 3;
}

.c-section-10__body {
    margin-top: 54px;
}
@media screen and (max-width: 767px) {
    .c-section-10__body {
        margin-top: 26px;
    }
}

/* ---------------------------------------------
*   c-section-11
--------------------------------------------- */
.c-section-11 {
    padding-block: 60px;
}
@media screen and (max-width: 767px) {
    .c-section-11 {
        padding-block: 67px 85px;
    }
}
.c-section-11__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-11__container {
        max-width: initial;
        padding-inline: 20px;
    }
}

.c-section-11__body {
    margin-top: 36px;
}
@media screen and (max-width: 767px) {
    .c-section-11__body {
        margin-top: 26px;
    }
}
.c-section-11__card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 75px;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 767px) {
    .c-section-11__card {
        gap: 17px;
        border-radius: 10px;
        padding-right: 15px;
    }
}
.windows .c-section-11__card {
    gap: 55px;
}
@media screen and (max-width: 767px) {
    .windows .c-section-11__card {
        gap: 17px;
    }
}

.c-section-11__card::before {
    content: "";
    position: absolute;
    top: -114px;
    right: -48px;
    background: url(/odekake/assets/img/icon_top01.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 200px;
    height: 100px;
}
@media screen and (max-width: 767px) {
    .c-section-11__card::before {
        top: -137px;
        right: -18px;
        background-image: url(/odekake/assets/img/icon_top01_sp.png);
        width: 98px;
        height: 75px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-section-11__card {
        transition: opacity 300ms;
    }
    .c-section-11__card:hover {
        opacity: 0.8;
    }
}
.c-section-11__img {
    width: 360px;
    flex-shrink: 0;
    border-radius: 10px 0 0 10px;
}
@media screen and (max-width: 767px) {
    .c-section-11__img {
        width: 180px;
        height: 97px;
        border-radius: 5px 0 0 5px;
    }
}
.c-section-11__img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 10px 0 0 10px;
}
@media screen and (max-width: 767px) {
    .c-section-11__img img {
        border-radius: 5px 0 0 5px;
    }
}
.c-section-11__txt {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-section-11__txt {
        font-size: 14px;
    }
}

/* ---------------------------------------------
*   c-section-12
--------------------------------------------- */
.c-section-12 {
    padding-block: 100px 146px;
    border-top: 2px solid #e5eff9;
}
@media screen and (max-width: 767px) {
    .c-section-12 {
        padding-block: 63px 82px;
    }
}
.c-section-12__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-12__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-12__body {
    margin-top: 57px;
}
@media screen and (max-width: 767px) {
    .c-section-12__body {
        margin-top: 24px;
    }
}

/* ---------------------------------------------
*   c-section-detail
--------------------------------------------- */
.c-section-recommended__head {
    position: relative;
    max-width: 1000px;
    display: block;
    margin: 0 auto;
}
.c-section-recommended__ttl_box {
    margin: 24px 0 48px;
}
.c-section-recommended__ttl {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    color: #333333;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
}
.c-section-recommended__ttl_en {
    color: #EBEDEF;
    text-align: center;
    font-family: "Dela Gothic One";
    font-size: 68px;
    white-space: nowrap;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1;
}
.c-section-recommended-01__ttl_img {
    position: absolute;
    top: -30px;
    left: -5%;
    z-index: 3;
}
.c-section-recommended-02__ttl_img {
    position: absolute;
    top: -60px;
    right: 10%;
    z-index: 3;
}


.c-section-detail {
    margin-top: 100px;
    padding-bottom: 140px;
    background-color: #EBEDEF;
}
@media screen and (max-width: 767px) {
    .c-section-detail {
        margin-top: 60px;
        padding-bottom: 63px;
    }
}
.c-section-detail__container {
    width: 1200px;
    margin: 24px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-detail__container {
        width: 100%;
        padding-inline: 20px;
    }
}
.c-section-detail__head {
    margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__head {
        margin-bottom: 50px;
    }
}
.c-section-detail_ttl {
    padding: 0 70px 36px 70px;
    border-radius: 0 0 50px 50px;
    background-color: #ffffff;
}
@media screen and (max-width: 767px) {
    .c-section-detail_ttl {
        padding: 0 20px 18px 20px;
        border-radius: 0 0 25px 25px;
        background-color: #ffffff;
    }
}
.c-section-detail_ttl .c-list-search__area {
    margin: 16px 0 !important;
    padding: 0;
}
.c-section-detail__kvttl {
    display: block;
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 3.6rem;
    letter-spacing: 0.01em;
    color: #333333;
}
@media screen and (max-width: 767px) {
    .c-section-detail__kvttl {
        font-size: 20px;
    }
}
.c-section-detail__img img {
    width: 100%;
    border-radius: 20px;
}
.c-section-detail__caption {
    display: block;
    text-align: right;
}
.c-section-detail__category {
    display: flex;
    align-items: center;
    gap: 36px;
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__category {
        gap: 12px;
        margin-top: 15px;
    }
}
.c-section-detail__category-inner {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    gap: 19px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__category-inner {
        align-items: start;
        gap: 5px;
    }
}
.c-section-detail__category-ttl {
    flex-shrink: 0;
    font-weight: 600;
    font-size: 14px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__category-ttl {
        font-size: 10px;
    }
}
.c-section-detail__category-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__category-list {
        gap: 3px;
    }
}
.c-section-detail__category-item {
    color: #00458F;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.01em;
    padding: 2px 8px;
    border: 1px solid #00458F;
    border-radius: 50px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__category-item {
        font-size: 10px;
    }
}
.c-section-detail__ttl {
    color: #333333;
    position: relative;
    display: block;
    margin: 64px auto 24px;
    padding: 17px 4px 16px 4px;
    border-bottom: 1px solid #999999;
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__ttl {
        margin-top: 51px;
        padding-top: 13px;
        font-size: 18px;
    }
}

.c-section-detail__ttl02 {
    position: relative;
    display: block;
    margin-top: 55px;
    padding-left: 25px;
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-section-detail__ttl02 {
        margin-top: 39px;
        padding-left: 14px;
        font-size: 16px;
    }
}
.c-section-detail__ttl02::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    background: url("/odekake/assets/img/campaign/icon_ttl.png") 0 0 no-repeat;
    background-size: contain;
    width: 14px;
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__ttl02::before {
        width: 11px;
        height: 16px;
    }
}
.c-section-detail__img {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__img {
        margin-top: 15px;
    }
}
.c-section-detail__body {
    max-width: 1000px;
    display: block;
    margin: 0 auto;
}
.c-section-detail__txt {
    color: #333333;
    display: block;
    margin-top: 40px;
    font-feature-settings: "palt" 1;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.73;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__txt {
        margin-top: 15px;
        font-size: 14px;
        line-height: 1.75;
    }
}
.c-section-detail__txt--red {
    color: #cc0000;
}
.notice p{
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-indent: -1em;
    padding-left: 1em;
}
.c-section-detail__txt--link {
    display: inline;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-detail__txt--link:hover {
        text-decoration: underline;
    }
}
.c-section-detail__txt02 {
    display: block;
    margin-top: 10px;
    font-feature-settings: "palt" 1;
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__txt02 {
        margin-top: 5px;
        font-size: 14px;
        line-height: 1.75;
    }
}
.c-section-detail__list {
    margin-top: 70px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__list {
        margin-top: 42px;
    }
}
.c-section-detail__list-item {
    font-feature-settings: "palt" 1;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    line-height: 1.7;
    text-indent: -0.6em;
    padding-left: 0.9em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__list-item {
        font-size: 14px;
    }
}
.c-section-detail__card {
    margin-top: 24px;
    padding: 15px 20px 20px;
    background-color: #f2f6f9;
}
@media screen and (max-width: 767px) {
    .c-section-detail__card {
        margin-top: 45px;
        padding: 5px 10px 10px;
    }
}
.c-section-detail__card-head {
    padding-bottom: 17px;
    margin-bottom: 15px;
    border-bottom: 1px solid #fff;
}
@media screen and (max-width: 767px) {
    .c-section-detail__card-head {
        padding-bottom: 7px;
        margin-bottom: 9px;
    }
}
.c-section-detail__card-ttl {
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 2rem;
    list-style: 1.2;
    letter-spacing: 0.01em;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-section-detail__card-ttl {
        font-size: 14px;
    }
}

/* --- ラベル（出っ張り）型の行程表デザイン --- */

/* カード本体 */
.c-section-detail__card--itinerary {
    position: relative;
    margin-top: 100px;
    background: #fff;
    border-radius: 0 20px 20px 20px;
    padding: 36px 48px;
}

/* 出っ張りラベルの親要素 */
.c-section-detail__card--itinerary .c-section-detail__card-head {
    position: absolute;
    top: -36px;
    left: 0;
    margin: 0;
    padding: 0;
    border: none;
}

/* ラベル（行程表）の文字部分 */
.c-section-detail__card--itinerary .c-section-detail__card-ttl {
    background: #fff;
    color: #333;
    padding: 10px 48px;
    font-size: 2rem;
    font-weight: bold;
    border-radius: 20px 20px 0 0;
    display: inline-block;
    line-height: 1.8;
}

/* 行程表リストの中身 */
.c-section-detail__card--itinerary .c-section-detail__toc {
    counter-reset: step; /* 自動連番リセット */
}

.c-section-detail__toc-item {
    position: relative;
    padding: 24px 0 24px 72px;
    border-bottom: 1px solid #999999;
}

.c-section-detail__toc-item:last-child {
    margin-bottom: 0;
}

.c-section-detail__toc-item::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateX(-50%);
    width: 24px;
    height: 24px;
    background-color: #A1AFBE;
    border-radius: 50%;
    background-image: url(/odekake/assets/img/icon_arrow.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 10px auto;
    rotate: 90deg;
    z-index: 2;
    -webkit-mask: none;
    mask: none;
}

/* 自動連番 (1, 2, 3...) */
.c-section-detail__toc-item::before {
    counter-increment: step;
    content: counter(step, decimal-leading-zero);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #A1AFBE;
    font-family: "Dela Gothic One", sans-serif;
    font-size: 24px;
    text-align: center;
    line-height: 26px;
}

/* テキスト */
.c-section-detail__card--itinerary .c-section-detail__toc-link {
    font-size: 1.8rem;
    color: #333;
    text-decoration: none;
    font-weight: 500;
    margin-top: 0 !important;
}

/* スマホ対応 */
@media screen and (max-width: 767px) {
    .c-section-detail__card--itinerary {
        margin-top: 40px;
        padding: 25px 15px 15px !important;
    }
    .c-section-detail__card--itinerary .c-section-detail__card-head {
        top: -32px;
    }
    .c-section-detail__card--itinerary .c-section-detail__card-ttl {
        font-size: 14px;
        padding: 4px 15px;
    }
    .c-section-detail__card--itinerary .c-section-detail__toc-link {
        font-size: 14px;
    }
}

.c-section-detail__toc:nth-of-type(n+2) {

}
@media screen and (max-width: 767px) {
    .c-section-detail__toc:nth-of-type(n+2) {

    }
}
@media (hover: hover) and (pointer: fine) {
    .c-section-detail__toc a:hover {
        text-decoration: underline;
    }
}
.c-section-detail__toc-ttl {
    display: block;
    font-feature-settings: "palt" 1;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__toc-ttl {
        font-size: 12px;
    }
}
.c-section-detail__toc-txt {
    display: block;
    font-feature-settings: "palt" 1;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__toc-txt {
        font-size: 12px;
    }
}
.c-section-detail__toc-link {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: 600;
    font-feature-settings: "palt" 1;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-section-detail__toc-link {
        font-size: 12px;
    }
}
.c-section-detail__toc-link:nth-of-type(n+2) {
    margin-top: 10px;
}
.c-section-detail__toc-arrow {
    display: block;
    margin-top: 5px;
    padding-left: 50px;
    font-size: 2.2rem;
}
@media screen and (max-width: 750px) {
    .c-section-detail__toc-arrow {
        font-size: 18px;
        padding-left: 30px;
    }
}
.c-section-detail__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 40px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-detail__btn {
        width: 100%;
        margin: 25px auto 0;
    }
}
.c-section-detail__btn--mt {
    margin: 75px auto 0;
}
@media screen and (max-width: 767px) {
    .c-section-detail__btn--mt {
        margin: 55px auto 0;
    }
}
.c-section-detail__backlink {
    position: relative;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 80px;
    padding-left: 17px;
    font-feature-settings: "palt" 1;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #00458f;
    text-decoration: underline;
    text-underline-offset: 3px;
}
@media screen and (max-width: 767px) {
    .c-section-detail__backlink {
        margin-top: 55px;
        padding-left: 17px;
        font-size: 14px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-section-detail__backlink:hover {
        text-decoration: none;
    }
}
.c-section-detail__backlink::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    background: url("/odekake/assets/img/campaign/icon_arrow.png") 0 0 no-repeat;
    background-size: contain;
    width: 9px;
    height: 12px;
}

/* ---------------------------------------------
*   c-section-search
--------------------------------------------- */
.c-section-search {
    position: relative;
    padding-block: 25px 158px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-section-search {
        padding-block: 28px 110px;
    }
}
.c-section-search::before {
    content: "";
    position: absolute;
    bottom: -40px;
    left: 50%;
    translate: -50% 0;
    background: url("/odekake/assets/img/bg_top01.png") 0 0 no-repeat;
    background-size: 100% auto;
    width: 1620px;
    height: 265px;
    pointer-events: none;
    z-index: -1;
}
@media screen and (max-width: 767px) {
    .c-section-search::before {
        bottom: -7px;
        background-image: url("/odekake/assets/img/bg_top_sp01.png");
        background-size: 100% 100%;
        width: 100%;
        height: 70px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-search--02 {
        padding-block: 28px 85px;
    }
}
.c-section-search--02::before {
    content: "";
    position: absolute;
    bottom: 4px;
    left: 50%;
    translate: -50% 0;
    background: url(/odekake/assets/img/bg_top03.png) 0 0 no-repeat;
    background-size: 100% auto;
    width: 1645px;
    height: 210px;
}
@media screen and (max-width: 767px) {
    .c-section-search--02::before {
        bottom: 3px;
        background-image: url(/odekake/assets/img/bg_top_sp03.png);
        background-size: 100% 100%;
        width: 100%;
        height: 70px;
    }
}
.c-section-search__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
.c-section-search__body {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-search__body {
        margin-top: 16px;
    }
}

/* ---------------------------------------------
*   c-section-magazine
--------------------------------------------- */
.c-section-magazine {
    position: relative;
    padding-block: 25px 158px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-section-magazine {
        padding-block: 28px 110px;
    }
}
.c-section-magazine__container {
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
.c-section-magazine__body {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .c-section-magazine__body {
        margin-top: 16px;
    }
}

/* ---------------------------------------------
*   c-section-ticket
--------------------------------------------- */
.c-section-ticket {
    padding-block: 100px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket {
        padding-block: 60px;
    }
}
.c-section-ticket:nth-of-type(n+2) {
    border-top: 2px solid #e5eff9;
}
.c-section-ticket--last {
    padding-block: 100px 150px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket--last {
        padding-block: 60px 100px;
    }
}
.c-section-ticket__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-ticket__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-ticket__body {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket__body {
        margin-top: 31px;
    }
}

/* ---------------------------------------------
*   c-section-ticket-detail01
--------------------------------------------- */
.c-section-ticket-detail01 {
    padding-block: 60px 90px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01 {
        padding-block: 50px 60px;
    }
}
.c-section-ticket-detail01__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-ticket-detail01__limit {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    width: -moz-fit-content;
    width: fit-content;
    padding: 25px 49px;
    margin: 36px auto 14px;
    border: 4px solid #00458f;
    border-radius: 10px;
    letter-spacing: 0.01em;
    color: #00458f;
}
.c-section-ticket-detail01__limit.under {
    display: flex;
    justify-content: center;
    flex-flow: column;
    align-items: start;
    gap: 0;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__limit {
        gap: 7px;
        width: 100%;
        padding: 10px 15px;
        margin: 20px auto 4px;
        border-radius: 5px;
        border: 2px solid #00458f;
    }
}
.c-section-ticket-detail01__limit-ttl {
    padding-top: 2px;
    flex-shrink: 0;
    font-weight: 600;
    font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__limit-ttl {
        padding-top: 2px;
        font-size: 16px;
    }
}
.c-section-ticket-detail01__limit-ttl--wrap {
    flex-shrink: 1;
}
.c-section-ticket-detail01__limit-day {
    font-weight: 600;
    font-size: 3.6rem;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__limit-day {
        font-size: 24px;
    }
}
.c-section-ticket-detail01__limit-day--s {
    display: inline;
    font-size: 3rem;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__limit-day--s {
        font-size: 20px;
    }
}
.c-section-ticket-detail01__ticket {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 40px;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__ticket {
        margin-top: 20px;
        flex-direction: column;
        gap: 5px;
    }
}
.c-section-ticket-detail01__ticket-txtarea {
    border: 4px solid #00458f;
    border-radius: 10px;
    padding: 10px 20px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__ticket-txtarea {
        width: 100%;
        border-radius: 5px;
        border: 2px solid #00458f;
    }
}
.c-section-ticket-detail01__ticket-ttl {
    display: block;
    font-weight: 700;
    font-size: 25px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__ticket-ttl {
        font-size: 16px;
    }
}
.c-section-ticket-detail01__ticket-txt {
    display: block;
    font-size: 16px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__ticket-txt {
        font-size: 14px;
    }
}
.c-section-ticket-detail01__limit-anno {
    display: block;
    text-align: center;
    margin-bottom: 20px;
    font-size: 12px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__limit-anno {
        font-size: 10px;
    }
}
.c-section-ticket-detail01__txt {
    display: block;
    margin-top: 14px;
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.01em;
    color: #545454;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__txt {
        font-size: 12px;
        text-align: left;
    }
}
.c-section-ticket-detail01__txt--bold {
    display: inline;
    font-weight: 700;
}
.c-section-ticket-detail01__txt--s {
    display: inline;
    font-weight: 400;
}
.c-section-ticket-detail01__txt--ss {
    display: inline;
    font-weight: 400;
    font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__txt--ss {
        font-size: 11px;
    }
}
.c-section-ticket-detail01__txt--sss {
    display: inline;
    font-weight: 400;
    font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail01__txt--sss {
        font-size: 10px;
    }
}
.c-section-ticket-detail01__txt--red {
    color: #cc0000;
}
.c-section-ticket-detail01__txt a {
    color: #00458f;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-section-ticket-detail01__txt a:hover {
        text-decoration: none;
    }
}
.c-section-ticket-detail01__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
}

/* ---------------------------------------------
*   c-section-ticket-detail02
--------------------------------------------- */
.c-section-ticket-detail02 {
    padding-block: 100px 90px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02 {
        padding-block: 60px 50px;
    }
}
.c-section-ticket-detail02:nth-of-type(even) {
    background-color: #f2f6f9;
}
.c-section-ticket-detail02__container {
    position: relative;
    max-width: 1160px;
    padding-inline: 20px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__container {
        max-width: initial;
        padding-inline: 20px;
    }
}
.c-section-ticket-detail02__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__btn {
        width: 100%;
    }
}
.c-section-ticket-detail02__anno {
    margin-block: 10px 30px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__anno {
        margin-block: 5px 12px;
    }
}
.c-section-ticket-detail02__anno--02 {
    margin-block: 20px 0;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__anno--02 {
        margin-block: 6px 0;
    }
}
.c-section-ticket-detail02__anno-ttl {
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: 0.01em;
    color: #cc0000;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__anno-ttl {
        font-size: 12px;
    }
}
.c-section-ticket-detail02__anno-txt {
    display: block;
    font-weight: 300;
    font-size: 1.2rem;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__anno-txt {
        font-size: 10px;
    }
}
.c-section-ticket-detail02__body {
    margin-top: 34px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body {
        margin-top: 45px;
    }
}
.c-section-ticket-detail02__body--tab {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--tab {
        margin-top: 25px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--spmt01 {
        margin-top: 25px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--spmt02 {
        margin-top: 31px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--spmt03 {
        margin-top: 27px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--spmt04 {
        margin-top: 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__body--spmt05 {
        margin-top: 35px;
    }
}
.c-section-ticket-detail02__btn {
    margin-top: 60px;
}
@media screen and (max-width: 767px) {
    .c-section-ticket-detail02__btn {
        margin-top: 30px;
    }
}
.c-section-ticket-detail02__txt--bold {
    font-weight: 700;
}
.c-section-ticket-detail02__txt--s {
    font-size: 15px;
}
.c-section-ticket-detail02__img {
    text-align: center;
}
.c-section-ticket-detail02__img img {
    height: auto;
}
.c-section-ticket-detail02__body .c-section-11__card::before {
    content: none;
}

/* ---------------------------------------------
*   c-slider
--------------------------------------------- */
@media screen and (max-width: 767px) {
    .c-slider {
        padding-bottom: 20px;
    }
}
.c-slider__wrapper {
    position: relative;
    padding-inline: 80px;
}
.c-slider .splide__slide {
    width: 354px !important;
    transform: translate3d(0, 0, 0);
    transition: opacity 0.3s;
    opacity: 0.3;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__slide {
        width: 100vw !important;
        opacity: 1;
    }
}
.c-slider .is-visible,
.c-slider .is-next {
    transition: opacity 0.3s;
    opacity: 1;
}
@media screen and (max-width: 767px) {
    .c-slider .is-visible,
    .c-slider .is-next {
        opacity: 1;
    }
}
@media screen and (max-width: 767px) {
    .c-slider .is-active {
        opacity: 1;
    }
}
.c-slider .splide__track {
    max-width: 1150px;
    margin: 0 auto;
    position: relative;
    overflow: visible;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__track {
        position: relative;
        max-width: 280px;
    }
}
.c-slider__pagination {
    max-width: 1310px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-slider__pagination {
        position: relative;
        width: -moz-fit-content;
        width: fit-content;
        margin: 0 auto;
    }
}
.c-slider .splide__arrow {
    position: absolute;
    top: 34%;
    z-index: 10;
    translate: 0 -50%;
    width: 70px;
    height: 70px;
    border: 1px solid #00458f;
    background-color: #fff;
    border-radius: 50%;
    box-sizing: border-box;
    touch-action: manipulation;
    cursor: pointer;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__arrow {
        top: 50%;
        width: 35px;
        height: 35px;
        border: none;
        background-color: unset;
    }
}
.c-slider .splide__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: url("/odekake/assets/img/img_arrow_slide.png") 0 0 no-repeat;
    background-size: contain;
    width: 20px;
    height: 24px;
    translate: -50% -50%;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__arrow::before {
        width: 10px;
        height: 11px;
    }
}
.c-slider .splide__arrow:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
.c-slider .splide__arrow--prev {
    left: -80px;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__arrow--prev {
        left: -50px;
    }
}
.c-slider .splide__arrow--next {
    right: -80px;
    rotate: 180deg;
}
@media screen and (max-width: 767px) {
    .c-slider .splide__arrow--next {
        right: -50px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-slider .splide__arrow {
        transition: opacity 0.3s;
    }
    .c-slider .splide__arrow:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 767px) {
    .c-slider .splide__pagination {
        margin-top: 20px;
        gap: 10px;
    }
    .c-slider .splide__pagination li {
        font-size: 0;
    }
}
@media screen and (max-width: 767px) {
    .c-slider .splide__pagination__page {
        width: 7px;
        height: 7px;
        background-color: #fff;
        border: 1px solid #00458f;
        border-radius: 50%;
        touch-action: manipulation;
        cursor: pointer;
    }
    .c-slider .splide__pagination__page.is-active {
        background-color: #00458f;
    }
    .c-slider .splide__pagination__page:focus-visible {
        outline: 3px solid #b4e900;
        outline-offset: 3px;
    }
}
.c-slider a {
    display: block;
}

/* ---------------------------------------------
*   c-slider-2
--------------------------------------------- */
.c-slider-2 {
    width: 100%;           /* 1120px固定から100%に変更して画面端まで表示 */
    max-width: 100%;
    overflow: visible;    /* ★重要：枠外のチラ見えを表示させる */
    background-color: transparent; /* 背景色があるとチラ見え部分が白く隠れるため */
    padding-block: 40px;
}
@media screen and (max-width: 767px) {
    .c-slider-2 {
        width: 100%;
        margin: 30px auto 0;
        border-radius: 5px;
        padding-block: 10px;
    }
}
.c-slider-2__wrapper {
    position: relative;
    z-index: 1;
}
.c-slider-2 .splide__track {
   max-width: 1120px;    /* 元々のスライダーの幅をここで維持 */
    margin: 0 auto;
    overflow: visible;    /* ★重要 */
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__track {
        margin-inline: 14px;
    }
}
.c-slider-2 .splide__slide {
    width: 254px !important;
    transform: translate3d(0, 0, 0);
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__slide {
        width: 50% !important;
    }
}
.c-slider-2 .splide__arrow {
    position: absolute;
    top: 50%;
    z-index: 1;
    translate: 0 -50%;
    width: 60px;
    height: 60px;
    border: 1px solid #00458f;
    background-color: #fff;
    border-radius: 50%;
    box-sizing: border-box;
    touch-action: manipulation;
    cursor: pointer;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__arrow {
        top: 47%;
        width: 30px;
        height: 30px;
    }
}
.c-slider-2 .splide__arrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: url("/odekake/assets/img/img_arrow_slide.png") 0 0 no-repeat;
    background-size: contain;
    width: 20px;
    height: 24px;
    translate: -50% -50%;
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__arrow::before {
        width: 8px;
        height: 11px;
    }
}
.c-slider-2 .splide__arrow:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
.c-slider-2 .splide__arrow--prev {
    left: -80px;      /* 外側に配置 */
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__arrow--prev {
        left: -14px;
    }
}
.c-slider-2 .splide__arrow--next {
    right: -80px;
    rotate: 180deg;
}
@media screen and (max-width: 767px) {
    .c-slider-2 .splide__arrow--next {
        right: -14px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-slider-2 .splide__arrow {
        transition: opacity 0.3s;
    }
    .c-slider-2 .splide__arrow:hover {
        opacity: 0.8;
    }
}
.c-slider-2 img {
    display: block;
    height: 200px;
    margin: 0 auto;
    vertical-align: bottom;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 767px) {
    .c-slider-2 img {
        height: 150px;
    }
}
.c-slider-2 a {
    display: block;
}

/* 1. 全てのスライドをあらかじめ少し薄くしておく */
.js-slider-02 .splide__slide {
    opacity: 0.3; /* 透明度（0.3〜0.5くらいがお好み） */
    transition: opacity 0.3s; /* ふわっと切り替わるように */
}

/* 2. アクティブなスライド（現在しっかり表示されている4つ）を不透明にする */
.js-slider-02 .splide__slide.is-visible {
    opacity: 1;
}

/*  .c-slider-detail
--------------------------------------------- */
.c-slider-detail {
    margin-block: 20px;
}
.c-slider-detail__wrapper {
    position: relative;
}
.c-slider-detail .splide__arrow {
    display: none;
}
.c-slider-detail .splide__pagination {
    margin-top: 20px;
    gap: 10px;
}
.c-slider-detail .splide__pagination li {
    font-size: 0;
}
.c-slider-detail .splide__pagination__page {
    width: 10px;
    height: 10px;
    background-color: lightgray;
    border-radius: 50%;
    touch-action: manipulation;
    cursor: pointer;
}
.c-slider-detail .splide__pagination__page.is-active {
    background-color: #b4e900;
}
.c-slider-detail .splide__pagination__page:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
@media (hover: hover) and (pointer: fine) {
    .c-slider-detail .splide__pagination__page {
        transition: opacity 0.3s;
    }
    .c-slider-detail .splide__pagination__page:hover {
        opacity: 0.8;
    }
}
.c-slider-detail__img img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    border-radius: 20px;
}

/* ---------------------------------------------
*   c-table
--------------------------------------------- */
/* ---------------------------------------------
*   c-tile
--------------------------------------------- */
/* ---------------------------------------------
*   c-ttl
--------------------------------------------- */
.c-ttl {
    display: flex;
    align-items: center;
    letter-spacing: 0.01em;
    gap: 19px;
}
@media screen and (max-width: 767px) {
    .c-ttl {
        gap: 10px;
    }
}
.c-ttl--l {
    align-items: flex-start;
}
.c-ttl--l .c-ttl__ttl {
    padding-top: 4px;
}
@media screen and (max-width: 767px) {
    .c-ttl--l .c-ttl__ttl {
        padding-top: 5px;
    }
}
.c-ttl--02 {
    align-items: flex-start;
}
.c-ttl--icon03 {
    position: relative;
}
.c-ttl--icon03::before {
    content: "";
    position: absolute;
    top: -13px;
    right: -59px;
    background: url("/odekake/assets/img/icon_category_sp01.png") 0 0 no-repeat;
    background-size: contain;
    width: 124px;
    height: 110px;
}
@media screen and (max-width: 767px) {
    .c-ttl--icon03::before {
        top: -57px;
        right: -11px;
        width: 64px;
        height: 60px;
    }
}
.c-ttl--orange .c-ttl__ttl {
    color: #ff7e00;
}
.c-ttl--sky .c-ttl__ttl {
    color: #0057b8;
}
.c-ttl--kitakanto .c-ttl__ttl {
    color: #ec2620;
}
.c-ttl--tojo .c-ttl__ttl {
    color: #1e22aa;
}
.c-ttl--urban .c-ttl__ttl {
    color: #65b900;
}
.c-ttl--aizu .c-ttl__ttl {
    color: #d17a17;
}
.c-ttl--aizu .c-ttl__ttl {
    color: #d17a17;
}
@media screen and (max-width: 767px) {
    .c-ttl--spcol2 {
        align-items: flex-start;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl--spcol2 .c-ttl__ttl {
        padding-top: 5px;
    }
}
.c-ttl__img {
    width: 60px;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .c-ttl__img {
        width: 45px;
    }
}
.c-ttl__img img {
    display: block;
    width: 100%;
    height: 100%;
}
.c-ttl__txtarea {
    margin-top: 6px;
}
.c-ttl__ttl {
    font-weight: 600;
    font-size: 3.6rem;
    color: #00458f;
}
@media screen and (max-width: 767px) {
    .c-ttl__ttl {
        font-size: 24px;
        letter-spacing: -0.01em;
    }
}
@media screen and (min-width: 961px) {
    .windows .c-ttl__ttl {
        padding-top: 6px;
    }
}

.c-ttl__txt {
    display: block;
    margin-top: 10px;
    font-weight: 600;
    font-size: 1.6rem;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-ttl__txt {
        font-size: 12px;
        margin-top: 5px;
    }
}
@media screen and (max-width: 767px) {
    .c-ttl__txt--l {
        font-size: 14px;
    }
}
.c-ttl__flex {
    display: flex;
    align-items: center;
    gap: 36px;
}
@media screen and (max-width: 767px) {
    .c-ttl__flex {
        display: block;
        padding-top: 5px;
    }
}
.c-ttl__acount {
    padding-top: 5px;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-ttl__acount {
        display: block;
        font-size: 10px;
        padding-top: 5px;
    }
}
.c-ttl__acount--s {
    padding-top: 0;
    padding-left: 8px;
    font-size: 1.2rem;
    line-height: 2;
    letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
    .c-ttl__acount--s {
        display: inline;
        padding-left: 10px;
        font-size: 7px;
    }
}

/* ---------------------------------------------
*   c-txt
--------------------------------------------- */
/* ---------------------------------------------
*   c-tabs
--------------------------------------------- */
.c-tabs__tab-list {
    display: flex;
    align-items: center;
    gap: 3px;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab-list {
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 10px 0;
        width: 95%;
        margin: 0 auto;
    }
}
.c-tabs__body {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .c-tabs__body {
        margin-top: 10px;
    }
}
.c-tabs__body--02 {
    margin-top: 24px;
}
@media screen and (max-width: 767px) {
    .c-tabs__body--02 {
        margin-top: 12px;
    }
}
.c-tabs__tab {
    display: block;
    width: 100%;
    border-radius: 50px;
    border: 1px solid #00458F;
    opacity: 0.8;
    background: #ffffff;
    box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.15);
    font-size: 2rem;
    font-weight: 700;
    padding: 16px 0;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab {
        width: 50% !important;
        /* border-bottom: none; */
        margin-bottom: 0;
        font-size: 1.4rem;
        padding: 8px 0;
        line-height: 1.2;
    }
}
.c-tabs__tab.is-current {
position: relative;
  display: inline-block;
  margin-bottom: 20px;
  padding: 20px;
  border: 2px solid #ffffff;
  border-radius: 50px;
  background-color: #00458f;
  text-align: center;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.5;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab.is-current {
        width: 50% !important;
        margin-bottom: 0;
        font-size: 1.6rem;
        padding: 12px;
        line-height: 1.2;
    }
}
.c-tabs__tab.is-current::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}
.c-tabs__tab.is-current::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 15.5px 7.8px 0 7.8px;
  border-color: #00458f transparent transparent;
  translate: -50% 100%;
}
@media (hover: hover) and (pointer: fine) {
    .c-tabs__tab:hover {
        opacity: 0.75;
    }
}
.c-tabs__tab--s {
    display: block;
    font-size: 1.2rem;
    line-height: 2;
    border-bottom: unset;
    padding: 0;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab--s {
        padding-top: 3px;
        font-size: 7px;
        line-height: 1.7142857143;
        letter-spacing: 0.01em;
    }
}
.is-current .c-tabs__tab--s {
    font-weight: 600;
    color: #ffffff;
}

.tab_img {
    display: inline-block;
    width: 38px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin: 0 16px 0 0;
}
@media screen and (max-width: 767px) {
    .tab_img {
    margin: 0 8px 0 0;
}
}

.c-tabs__tab:nth-of-type(1) .tab_img {
    background: url("/odekake/assets/img/img_tag_model.png");
}
@media screen and (max-width: 767px) {
    .c-tabs__tab:nth-of-type(1) .tab_img {
        background: url(/odekake/assets/img/img_tag_model.png);
        height: 14px;
        width: auto;
        background-size: cover;
        aspect-ratio: 38 / 20;
    }
}
.c-tabs__tab:nth-of-type(2) .tab_img {
    background: url("/odekake/assets/img/img_tag_watch.png");
    width: 31px; 
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab:nth-of-type(2) .tab_img {
        background: url("/odekake/assets/img/img_tag_watch.png");
        height: 14px;
        width: auto;
        background-size: cover;
        aspect-ratio: 31 / 20;
    }
}
.c-tabs__tab:nth-of-type(3) .tab_img {
    background: url("/odekake/assets/img/img_tag_eat.png");
    width: 27px; 
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab:nth-of-type(3) .tab_img {
        background: url("/odekake/assets/img/img_tag_eat.png");
        height: 14px;
        width: auto;
        background-size: cover;
        aspect-ratio: 27 / 20;
    }
}
.c-tabs__tab:nth-of-type(4) .tab_img {
    background: url("/odekake/assets/img/img_tag_play.png");
    width: 23px; 
    height: 20px;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab:nth-of-type(4) .tab_img {
        background: url("/odekake/assets/img/img_tag_play.png");
        height: 14px;
        width: auto;
        background-size: cover;
        aspect-ratio: 23 / 20;
    }
}

.c-tabs__tab--2 {
    position: relative;
    font-weight: 600;
}
.c-tabs__tab--2.is-current::after {
    content: "";
    position: absolute;
    bottom: -9px;
    left: 50%;
    translate: -50% 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 4.5px 0 4.5px;
    border-color: #00458F transparent transparent transparent;
}
@media screen and (max-width: 767px) {
    .c-tabs__tab--2.is-current::after {
        bottom: -8px;
    }
}
.c-tabs__btn {
    width: -moz-fit-content;
    width: fit-content;
    margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
    .c-tabs__btn {
        width: 100%;
        margin: 40px auto 0;
    }
}

/* ---------------------------------------------
*   c-search-box
--------------------------------------------- */
.c-search-box {
    padding-block: 20px;
    /* background-color: #f1f1f1; */
    border-radius: 20px;
    background-color: rgba(241, 241, 241, 0.5);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}
@media screen and (max-width: 767px) {
    .c-search-box {
        padding-block: 10px;
        border-radius: 10px;
    }
}
.c-search-box__search {
    display: block;
}
@media screen and (max-width: 767px) {
    .c-search-box__search {
        gap: 2px;
    }
}
.c-search-box__search--02 {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px solid #fff;
}
@media screen and (max-width: 767px) {
    .c-search-box__search--02 {
        margin-top: 10px;
        padding-bottom: 0;
        border-top: 1px solid #fff;
    }
}
.c-search-box__search--02 .c-search-box__input:checked + .c-search-box__txt {
    font-weight: 600;
    background-color: #ff7e00;
    color: #fff;
}
@media screen and (max-width: 767px) {
    .c-search-box__search--02 .c-search-box__checkarea {
        gap: 6px 10px;
    }
}
.c-search-box__search--02 .c-search-box__txt {
    padding: 2px 18px 1px 17px;
}
@media screen and (max-width: 767px) {
    .c-search-box__search--02 .c-search-box__txt {
        padding: 1px 14px 0px 11px;
    }
    .safari .c-search-box__search--02 .c-search-box__txt {
        padding: 3px 13px 0px 12px;
    }
    .iphone .c-search-box__search--02 .c-search-box__txt {
        padding: 2px 13px 2px 12px;
    }
    .edge .c-search-box__search--02 .c-search-box__txt {
        padding: 2px 11px 0px 12px;
    }
}
@media screen and (min-width: 768px) {
    .windows .c-search-box__search--02 .c-search-box__txt {
        padding: 3px 15px 1px 14px;
    }
}
.c-search-box__search--color .c-search-box__input:checked + .c-search-box__txt {
    font-weight: 600;
    background-color: #00458f;
    color: #fff;
}
.c-search-box__container {
    width: 1080px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .c-search-box__container {
        width: 100%;
        padding-inline: 10px;
    }
}
.c-search-box__label {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-bottom: 12px;
    flex-shrink: 0;
    font-weight: 700;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.01em;
    color: #333333;
    width: unset;
}
@media screen and (max-width: 767px) {
    .c-search-box__label {
        font-size: 1rem;
        padding-bottom: 6px;
    }
}
.c-search-box__label img {
    width: 1.2em;
    height: auto;
    flex-shrink: 0;
}
.c-search-box__checkarea {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
@media screen and (max-width: 767px) {
    .c-search-box__checkarea {
        gap: 5px 10px;
    }
}
.c-search-box__check {
    display: block;
    position: relative;
    cursor: pointer;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-search-box__check {
        transition: opacity 300ms;
    }
    .c-search-box__check:hover {
        opacity: 0.8;
    }
}
.c-search-box__input {
    position: absolute;
    inset: 0;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline-offset: 8px;
    border-radius: 4px;
    cursor: pointer;
}
.c-search-box__input:checked + .c-search-box__txt {
    font-weight: 600;
    background-color: #00458f;
    color: #fff;
}
.c-search-box__txt {
    display: block;
    padding: 2px 20px 1px 19px;
    border-radius: 15px;
    border: 1px solid #00458F;
    color: #333;
    background-color: #fff;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.7142857143;
    letter-spacing: 0.01em;
    cursor: pointer;
}
@media screen and (max-width: 767px) {
    .c-search-box__txt {
        padding: 1px 13px 1px 13px;
        border-radius: 20px;
        border: 1px solid #dddddd;
        font-size: 10px;
    }
    .safari .c-search-box__txt {
        padding: 3px 13px 0px 12px;
    }
    .iphone .c-search-box__txt {
        padding: 2px 13px 2px 12px;
    }
    .android .c-search-box__txt {
        padding: 2px 13px 1px 13px;
    }
    .edge .c-search-box__txt {
        padding: 2px 12px 1px 10px;
    }
}
.c-hashtag {
    color: #00458f;
    font-weight: 500;
    padding: 0 4px 0 0;
}
.c-search-box__input:checked + .c-search-box__txt .c-hashtag {
    color: #fff;
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: #fff !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

/* ---------------------------------------------
*  .js-tab-target
--------------------------------------------- */
.js-tab-target {
    display: none;
}
.js-tab-target.is-current {
    display: block;
}

/* ---------------------------------------------
*   is-hide
--------------------------------------------- */
.is-hide {
    display: none;
}

/* ---------------------------------------------
*
--------------------------------------------- */
.js-acc-target {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target {
    animation: closeAccAnim 0.5s forwards;
}

.js-acc-scope.is-open .js-acc-target {
    animation: openAccAnim 0.5s forwards;
}

@keyframes openAccAnim {
    0% {
        height: 0px;
        visibility: hidden;
    }
    99% {
        height: var(--acc-body-height);
        visibility: visible;
    }
    100% {
        height: auto;
    }
}
@keyframes closeAccAnim {
    0% {
        height: var(--acc-body-height);
    }
    99% {
        visibility: visible;
    }
    100% {
        height: 0px;
        visibility: hidden;
    }
}

.c-acc {
    position: relative;
    margin-top: 80px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    padding: 10px;
    z-index: 1;
}
@media screen and (max-width: 767px) {
    .c-acc {
        margin-top: 40px;
        border-radius: 5px;
        padding: 5px;
    }
}
.c-acc__head {
    position: relative;
    width: 100%;
    background-color: #f1f1f1;
    padding: 20px 40px;
    color: inherit;
    text-align: left;
    touch-action: manipulation;
    cursor: pointer;
}
@media screen and (max-width: 767px) {
    .c-acc__head {
        padding: 12px 9px;
    }
}
.c-acc__head::before, .c-acc__head::after {
    content: "";
    position: absolute;
    right: 50px;
    top: 50%;
    translate: 0 -50%;
    width: 2px;
    height: 20px;
    background-color: #707070;
    transition: rotate 0.3s;
    rotate: 90deg;
}
@media screen and (max-width: 767px) {
    .c-acc__head::before, .c-acc__head::after {
        right: 15px;
        height: 12px;
    }
}
.is-close .c-acc__head::after {
    rotate: 180deg;
}

.c-acc__ttl {
    position: relative;
    padding-left: 50px;
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: 0.01em;
    font-feature-settings: "palt" 1;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-acc__ttl {
        padding-left: 24px;
        font-size: 18px;
    }
}
.c-acc__ttl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    -webkit-mask-image: url("/odekake/assets/img/area/nikko-kinugawa//img_anchor03.svg");
            mask-image: url("/odekake/assets/img/area/nikko-kinugawa//img_anchor03.svg");
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: contain;
            mask-size: contain;
    background-color: #ff7e00;
    width: 33px;
    height: 33px;
}
@media screen and (max-width: 767px) {
    .c-acc__ttl::before {
        width: 20px;
        height: 20px;
    }
}
.c-acc__ttl--aizu::before {
    background-color: #00458f;
}
.c-acc__ttl--kitakanto::before {
    background-color: #ec2620;
}
.c-acc__ttl--tojo::before {
    background-color: #1e22aa;
}
.c-acc__ttl--urban::before {
    background-color: #65b900;
}
.c-acc__ttl--aizu::before {
    background-color: #d17a17;
}
.c-acc__ttl--aizu::before {
    background-color: #d17a17;
}
.c-acc__body-inner {
    position: relative;
    width: 800px;
    margin: 60px auto 50px;
    z-index: 2;
}
@media screen and (max-width: 767px) {
    .c-acc__body-inner {
        width: 100%;
        margin: 5px auto 0;
    }
}

/* ---------------------------------------------
*   c-acc02
--------------------------------------------- */
.c-acc02 {
    margin-top: 80px;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    padding: 10px;
}
@media screen and (max-width: 767px) {
    .c-acc02 {
        margin-top: 40px;
        border-radius: 5px;
        padding: 5px;
    }
}
.c-acc02:nth-of-type(n+2) {
    margin-top: 10px;
}
.c-acc02__head {
    position: relative;
    width: 100%;
    padding: 12px 40px 11px;
    color: inherit;
    text-align: left;
    touch-action: manipulation;
    cursor: pointer;
}
@media screen and (max-width: 767px) {
    .c-acc02__head {
        padding: 9px 11px 8px;
    }
}
.c-acc02__head::before, .c-acc02__head::after {
    content: "";
    position: absolute;
    right: 50px;
    top: 50%;
    translate: 0 -50%;
    width: 2px;
    height: 20px;
    background-color: #707070;
    transition: rotate 0.3s;
    rotate: 90deg;
}
@media screen and (max-width: 767px) {
    .c-acc02__head::before, .c-acc02__head::after {
        right: 15px;
        height: 12px;
    }
}
.is-close .c-acc02__head::after {
    rotate: 180deg;
}

@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .c-acc02__head {
        transition: opacity 300ms;
    }
    .c-acc02__head:hover {
        opacity: 0.8;
    }
}
.c-acc02__ttl {
    position: relative;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: 0.01em;
    font-feature-settings: "palt" 1;
    color: #545454;
}
@media screen and (max-width: 767px) {
    .c-acc02__ttl {
        font-size: 16px;
    }
}
@media print and (min-width: 768px), screen and (min-width: 768px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 767px), screen and (max-width: 767px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 1.2820512821vw !important;
    }
    .mgt-sp--10 {
        margin-top: 2.5641025641vw !important;
    }
    .mgt-sp--15 {
        margin-top: 3.8461538462vw !important;
    }
    .mgt-sp--20 {
        margin-top: 5.1282051282vw !important;
    }
    .mgt-sp--25 {
        margin-top: 6.4102564103vw !important;
    }
    .mgt-sp--30 {
        margin-top: 7.6923076923vw !important;
    }
    .mgt-sp--35 {
        margin-top: 8.9743589744vw !important;
    }
    .mgt-sp--40 {
        margin-top: 10.2564102564vw !important;
    }
    .mgt-sp--45 {
        margin-top: 11.5384615385vw !important;
    }
    .mgt-sp--50 {
        margin-top: 12.8205128205vw !important;
    }
    .mgt-sp--55 {
        margin-top: 14.1025641026vw !important;
    }
    .mgt-sp--60 {
        margin-top: 15.3846153846vw !important;
    }
    .mgt-sp--65 {
        margin-top: 16.6666666667vw !important;
    }
    .mgt-sp--70 {
        margin-top: 17.9487179487vw !important;
    }
    .mgt-sp--75 {
        margin-top: 19.2307692308vw !important;
    }
    .mgt-sp--80 {
        margin-top: 20.5128205128vw !important;
    }
    .mgt-sp--85 {
        margin-top: 21.7948717949vw !important;
    }
    .mgt-sp--90 {
        margin-top: 23.0769230769vw !important;
    }
    .mgt-sp--95 {
        margin-top: 24.358974359vw !important;
    }
    .mgt-sp--100 {
        margin-top: 25.641025641vw !important;
    }
    .mgt-sp--105 {
        margin-top: 26.9230769231vw !important;
    }
    .mgt-sp--110 {
        margin-top: 28.2051282051vw !important;
    }
    .mgt-sp--115 {
        margin-top: 29.4871794872vw !important;
    }
    .mgt-sp--120 {
        margin-top: 30.7692307692vw !important;
    }
    .mgt-sp--125 {
        margin-top: 32.0512820513vw !important;
    }
    .mgt-sp--130 {
        margin-top: 33.3333333333vw !important;
    }
    .mgt-sp--135 {
        margin-top: 34.6153846154vw !important;
    }
    .mgt-sp--140 {
        margin-top: 35.8974358974vw !important;
    }
    .mgt-sp--145 {
        margin-top: 37.1794871795vw !important;
    }
    .mgt-sp--150 {
        margin-top: 38.4615384615vw !important;
    }
    .mgt-sp--155 {
        margin-top: 39.7435897436vw !important;
    }
    .mgt-sp--160 {
        margin-top: 41.0256410256vw !important;
    }
    .mgt-sp--165 {
        margin-top: 42.3076923077vw !important;
    }
    .mgt-sp--170 {
        margin-top: 43.5897435897vw !important;
    }
    .mgt-sp--175 {
        margin-top: 44.8717948718vw !important;
    }
    .mgt-sp--180 {
        margin-top: 46.1538461538vw !important;
    }
    .mgt-sp--185 {
        margin-top: 47.4358974359vw !important;
    }
    .mgt-sp--190 {
        margin-top: 48.7179487179vw !important;
    }
    .mgt-sp--195 {
        margin-top: 50vw !important;
    }
    .mgt-sp--200 {
        margin-top: 51.2820512821vw !important;
    }
    .mgt-sp--205 {
        margin-top: 52.5641025641vw !important;
    }
    .mgt-sp--210 {
        margin-top: 53.8461538462vw !important;
    }
    .mgt-sp--215 {
        margin-top: 55.1282051282vw !important;
    }
    .mgt-sp--220 {
        margin-top: 56.4102564103vw !important;
    }
    .mgt-sp--225 {
        margin-top: 57.6923076923vw !important;
    }
    .mgt-sp--230 {
        margin-top: 58.9743589744vw !important;
    }
    .mgt-sp--235 {
        margin-top: 60.2564102564vw !important;
    }
    .mgt-sp--240 {
        margin-top: 61.5384615385vw !important;
    }
    .mgt-sp--245 {
        margin-top: 62.8205128205vw !important;
    }
    .mgt-sp--250 {
        margin-top: 64.1025641026vw !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 767px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 1.2820512821vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 2.5641025641vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 3.8461538462vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 5.1282051282vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 6.4102564103vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 7.6923076923vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 8.9743589744vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 10.2564102564vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 11.5384615385vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 12.8205128205vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 14.1025641026vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 15.3846153846vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 16.6666666667vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 17.9487179487vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 19.2307692308vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 20.5128205128vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 21.7948717949vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 23.0769230769vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 24.358974359vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 25.641025641vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 26.9230769231vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 28.2051282051vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 29.4871794872vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 30.7692307692vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 32.0512820513vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 33.3333333333vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 34.6153846154vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 35.8974358974vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 37.1794871795vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 38.4615384615vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 39.7435897436vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 41.0256410256vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 42.3076923077vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 43.5897435897vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 44.8717948718vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 46.1538461538vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 47.4358974359vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 48.7179487179vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 50vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 51.2820512821vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 52.5641025641vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 53.8461538462vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 55.1282051282vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 56.4102564103vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 57.6923076923vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 58.9743589744vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 60.2564102564vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 61.5384615385vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 62.8205128205vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 64.1025641026vw !important;
    }
}
/* ---------------------------------------------
*   p-ns-l-contents
--------------------------------------------- */
.p-ns-l-contents {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-family: "Zen Kaku Gothic New", sans-serif;
    color: #444444;
    padding-bottom: 20px;
}

/* ---------------------------------------------
*   p-ns-section-intro
--------------------------------------------- */
.p-ns-section-intro {
    margin: 60px auto 0;
}
@media screen and (max-width: 767px) {
    .p-ns-section-intro {
        margin-top: 24px;
    }
}
.p-ns-section-intro__inner {
    max-width: 816px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-ns-section-intro__inner {
        max-width: none;
        width: 100%;
        padding-inline: 30px;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-section-intro__inner {
        padding-inline: 20px;
    }
}

/* ---------------------------------------------
*   p-ns-section
--------------------------------------------- */
.p-ns-section {
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .p-ns-section {
        margin-top: 22px;
    }
}
.p-ns-section__inner {
    max-width: 816px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-ns-section__inner {
        max-width: none;
        padding-inline: 30px;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section__inner {
        padding-inline: 20px;
    }
}

/* ---------------------------------------------
*   p-ns-ttl
--------------------------------------------- */
.p-ns-ttl {
    font-size: 2.8rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    text-align: center;
    font-weight: 700;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-ttl {
        font-size: 20px;
        line-height: 1.7;
        letter-spacing: 0.14em;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-ttl {
        letter-spacing: 0.014em;
    }
}
.p-ns-ttl--2 {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-ns-ttl--2 {
        margin-top: 0;
    }
}
.p-ns-ttl span {
    font-size: 2.8rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    text-align: center;
    font-weight: 700;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-ttl span {
        font-size: 20px;
        line-height: 1.7;
        letter-spacing: 0.14em;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-ttl span {
        letter-spacing: 0.014em;
        display: inline-block;
    }
}

/* ---------------------------------------------
*   p-ns-ttl2
--------------------------------------------- */
.p-ns-ttl2 {
    font-size: 2.8rem;
    line-height: 1.5;
    letter-spacing: 0.2em;
    text-align: center;
    font-weight: 700;
    color: #2BABD5;
}
@media screen and (max-width: 767px) {
    .p-ns-ttl2 {
        font-size: 20px;
        line-height: 1.7;
    }
}

/* ---------------------------------------------
*   p-ns-txt
--------------------------------------------- */
.p-ns-txt {
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.03em;
    font-weight: 500;
    font-feature-settings: "palt";
    text-align: justify;
}
@media screen and (max-width: 767px) {
    .p-ns-txt {
        font-size: 16px;
        letter-spacing: 0.06em;
    }
}
.p-ns-txt small {
    font-size: 1.4rem;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-ns-txt small {
        font-size: 13px;
    }
}
.p-ns-txt--mgt {
    margin-top: 40px;
}
@media screen and (max-width: 767px) {
    .p-ns-txt--mgt {
        margin-top: 18px;
    }
}
.p-ns-txt + .p-ns-txt {
    margin-top: 33px;
}
@media screen and (max-width: 767px) {
    .p-ns-txt + .p-ns-txt {
        margin-top: 30px;
    }
}
.p-ns-txt__color {
    position: relative;
    font-size: 1.6rem;
    line-height: 2;
    font-weight: 500;
    font-feature-settings: "palt";
    text-align: justify;
    letter-spacing: 0.03em;
    z-index: 5;
    background: linear-gradient(transparent 20%, #FCE6E9 20%);
}
.p-ns-txt__color--blue {
    background: linear-gradient(transparent 20%, #E8F6F9 20%);
}
.p-ns-txt__color--green {
    background: linear-gradient(transparent 20%, #F7F3E8 20%);
}
.p-ns-txt__color--2 {
    color: #2BABD5;
    background: none;
    font-weight: bold;
}
.p-ns-txt__color--3 {
    color: #0AA058;
    background: none;
    font-weight: bold;
}

/* ---------------------------------------------
*   p-ns-block
--------------------------------------------- */
.p-ns-block {
    background-color: #E8F6F9;
    margin-top: 70px;
    padding: 40px;
}
@media screen and (max-width: 767px) {
    .p-ns-block {
        padding: 30px;
        margin-top: 25px;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-block {
        padding: 20px 20px 30px;
    }
}
.p-ns-block__inner {
    position: relative;
    max-width: 816px;
    margin-inline: auto;
    background-color: #fff;
    border-radius: 20px;
    padding: 24px 15px 0;
}
@media screen and (max-width: 767px) {
    .p-ns-block__inner {
        padding: 12px 30px 18px;
        max-width: none;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-block__inner {
        padding: 2.5vw 3.5416666667vw 3.75vw;
    }
}
.p-ns-block__ttl {
    display: block;
    font-size: 2rem;
    line-height: 1.6;
    font-weight: bold;
    letter-spacing: 0.14em;
    text-align: center;
    color: #F2888D;
}
@media screen and (max-width: 767px) {
    .p-ns-block__ttl {
        font-size: 20px;
    }
}
.p-ns-block__container {
    display: flex;
    align-items: center;
    justify-content: start;
    -moz-column-gap: 33px;
         column-gap: 33px;
}
@media screen and (max-width: 959px) {
    .p-ns-block__container {
        flex-direction: column-reverse;
        row-gap: 23px;
        margin-top: 12px;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-block__container {
        flex-direction: column-reverse;
        row-gap: 23px;
        margin-top: 12px;
    }
}
.p-ns-block__img {
    width: 290px;
    transform: translateY(-25px);
    flex-shrink: 0;
}
@media screen and (max-width: 959px) {
    .p-ns-block__img {
        width: 61.5384615385vw;
        transform: translateY(0);
        flex-shrink: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-block__img {
        width: 61.5384615385vw;
        transform: translateY(0);
        flex-shrink: 1;
    }
}
.p-ns-block__icn {
    position: absolute;
    top: -25px;
    right: -36px;
}
@media screen and (max-width: 767px) {
    .p-ns-block__icn {
        top: -4.1025641026vw;
        width: 25.641025641vw;
        right: -3.8461538462vw;
    }
}
.p-ns-block__link-box {
    max-width: 816px;
    margin: 30px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 26px;
         column-gap: 26px;
}
@media screen and (max-width: 767px) {
    .p-ns-block__link-box {
        flex-direction: column;
        max-width: 320px;
        row-gap: 18px;
    }
}

/* ---------------------------------------------
*   p-ns-list
--------------------------------------------- */
.p-ns-list {
    margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
    .p-ns-list {
        margin-bottom: 0;
    }
}
.p-ns-list__item {
    position: relative;
    display: flex;
}
.p-ns-list__item:nth-of-type(n+2) {
    margin-top: 20px;
}
@media screen and (max-width: 767px) {
    .p-ns-list__item:nth-of-type(n+2) {
        margin-top: 17px;
    }
}
.p-ns-list__item::before {
    content: "";
    background-color: #E8F6F9;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 5px;
    margin-right: 12px;
}
@media screen and (max-width: 767px) {
    .p-ns-list__item::before {
        margin-right: 12px;
    }
}
.p-ns-list__item-link {
    display: block;
    width: 100%;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .p-ns-list__item-link {
        transition: opacity 300ms;
    }
    .p-ns-list__item-link:hover {
        opacity: 0.8;
    }
}
.p-ns-list__txt {
    display: inline-block;
    font-size: 1.65rem;
    line-height: 1.2727272727;
    font-feature-settings: "palt";
    letter-spacing: 0.099em;
    font-weight: bold;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-list__txt {
        font-size: 16.5px;
        line-height: 1.5;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-list__txt {
        letter-spacing: 0.04em;
    }
}
.p-ns-list__txt span {
    display: inline-block;
    font-size: 1.65rem;
    line-height: 1.2727272727;
    font-feature-settings: "palt";
    letter-spacing: 0.099em;
    font-weight: bold;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-list__txt span {
        font-size: 16.5px;
        line-height: 1.5;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-list__txt span {
        letter-spacing: 0.04em;
    }
}

/* ---------------------------------------------
*   p-ns-link
--------------------------------------------- */
.p-ns-link {
    width: 395px;
    background-color: transparent;
}
@media screen and (max-width: 767px) {
    .p-ns-link {
        max-width: 320px;
        width: 100%;
    }
}
.p-ns-link--white {
    margin-top: 27px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-ns-link--white {
        max-width: 320px;
        width: 100%;
        margin-top: 23px;
    }
}
.p-ns-link--white .p-ns-link__link {
    background-color: #fff;
    border: none;
}
.p-ns-link--white .p-ns-link__txt {
    color: #0AA058;
}
.p-ns-link--white .p-ns-link__txt::before {
    border-color: #0AA058;
}
.p-ns-link--green {
    width: 410px;
    border-radius: 29px;
    margin-top: 60px;
    margin-inline: auto;
}
@media screen and (max-width: 767px) {
    .p-ns-link--green {
        max-width: 460px;
        width: 100%;
        margin-top: 23px;
        padding-inline: 20px;
    }
}
.p-ns-link--green .p-ns-link__link {
    background-color: #0AA058;
    border: none;
}
.p-ns-link--green .p-ns-link__txt {
    color: #fff;
}
.p-ns-link--green .p-ns-link__txt::before {
    border-color: #fff;
}
.p-ns-link--blue {
    width: 290px;
    border-radius: 29px;
    margin-top: 24px;
    margin-inline: auto;
}
@media screen and (max-width: 959px) {
    .p-ns-link--blue {
        max-width: 60.4166666667vw;
        width: 100%;
        margin-top: 7.2916666667vw;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-link--blue {
        max-width: 320px;
        width: 100%;
        margin-top: 35px;
    }
}
.p-ns-link--blue .p-ns-link__link {
    background-color: #2BABD5;
    padding: 20px;
    border: none;
}
.p-ns-link--blue .p-ns-link__txt {
    color: #fff;
}
.p-ns-link--blue .p-ns-link__txt::before {
    border-color: #fff;
}
.p-ns-link__link {
    border-radius: 40px;
    display: block;
    width: 100%;
    border: 1px solid #005BAC;
    text-align: center;
    padding: 28px 10px;
}
@media screen and (max-width: 767px) {
    .p-ns-link__link {
        padding: 20px;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .p-ns-link__link {
        transition: opacity 300ms;
    }
    .p-ns-link__link:hover {
        opacity: 0.8;
    }
}
.p-ns-link__txt {
    position: relative;
    display: inline-block;
    font-size: 1.65rem;
    line-height: 1.2727272727;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: bold;
    color: #005BAC;
    text-align: center;
    padding-left: 23px;
}
@media screen and (max-width: 767px) {
    .p-ns-link__txt {
        font-size: 16.5px;
    }
}
.p-ns-link__txt::before {
    position: absolute;
    content: "";
    width: 9px;
    height: 9px;
    border-top: 2px solid #005BAC;
    border-right: 2px solid #005BAC;
    transform: rotate(45deg);
    left: 0;
    top: 7px;
}

/* ---------------------------------------------
*   p-ns-list-profile
--------------------------------------------- */
.p-ns-list-profile {
    display: flex;
    align-items: start;
    justify-content: center;
    margin-top: 33px;
}
@media screen and (max-width: 959px) {
    .p-ns-list-profile {
        margin-top: 6.875vw;
    }
}
@media screen and (max-width: 959px) {
    .p-ns-list-profile {
        flex-direction: column;
        width: 100%;
        margin-inline: auto;
        margin-top: 18px;
        row-gap: 35px;
        align-items: center;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile {
        flex-direction: column;
        width: 100%;
        margin-inline: auto;
        margin-top: 18px;
        row-gap: 35px;
        align-items: center;
    }
}
.p-ns-list-profile__content {
    margin-top: 10px;
    padding-inline: 12px;
    display: grid;
    grid-template-rows: 1fr 1fr;
}
@media screen and (max-width: 959px) {
    .p-ns-list-profile__content {
        padding-inline: 0;
        margin: 3.125vw auto 0;
        grid-template-rows: auto auto;
        width: 66.6666666667vw;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__content {
        padding-inline: 0;
        margin: 15px auto 0;
        grid-template-rows: auto auto;
        width: 66.6666666667vw;
    }
}
.p-ns-list-profile__content--2 .p-ns-list-profile__desc,
.p-ns-list-profile__content--2 .p-ns-list-profile__name,
.p-ns-list-profile__content--2 .p-ns-list-profile__name-sub,
.p-ns-list-profile__content--2 .p-ns-list-profile__txt {
    color: #0AA058;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__content--2 .p-ns-list-profile__name {
        margin-top: 10px;
    }
}
.p-ns-list-profile__content--3 .p-ns-list-profile__desc,
.p-ns-list-profile__content--3 .p-ns-list-profile__name,
.p-ns-list-profile__content--3 .p-ns-list-profile__name-sub,
.p-ns-list-profile__content--3 .p-ns-list-profile__txt {
    color: #F2888D;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__content--3 .p-ns-list-profile__name {
        margin-top: 10px;
    }
}
.p-ns-list-profile__item-img {
    width: 272px;
}
@media screen and (max-width: 959px) {
    .p-ns-list-profile__item-img {
        width: 56.6666666667vw;
        margin-inline: auto;
        text-align: center;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__item-img {
        width: 56.6666666667vw;
        margin-inline: auto;
        text-align: center;
    }
}
.p-ns-list-profile__item-img img {
    display: block;
    width: 100%;
}
.p-ns-list-profile__desc {
    font-size: 1.6rem;
    line-height: 1.3125;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    font-weight: 500;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__desc {
        font-size: 14px;
        line-height: 1.5;
        letter-spacing: 0.16em;
    }
}
.p-ns-list-profile__name {
    margin-top: 5px;
    display: inline-block;
    font-size: 2.4rem;
    line-height: 1.125;
    font-feature-settings: "palt";
    letter-spacing: 0.07em;
    font-weight: 700;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__name {
        font-size: 24px;
        letter-spacing: 0.18em;
    }
}
.p-ns-list-profile__name-sub {
    display: block;
    font-size: 1.6rem;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.07em;
    font-weight: bold;
    color: #005BAC;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__name-sub {
        font-size: 14px;
        line-height: 2.2857142857;
        letter-spacing: 0.18em;
    }
}
.p-ns-list-profile__txt {
    margin-top: 5px;
    display: block;
    font-size: 1.6rem;
    line-height: 1.3125;
    font-feature-settings: "palt";
    letter-spacing: 0.18em;
    font-weight: 500;
    color: #005BAC;
    text-align: justify;
}
@media screen and (max-width: 767px) {
    .p-ns-list-profile__txt {
        font-size: 16px;
        margin-top: 11px;
        letter-spacing: 0.09em;
        line-height: 1.5;
    }
}

/* ---------------------------------------------
*   p-ns-block2
--------------------------------------------- */
.p-ns-block2 {
    position: relative;
    margin-top: 77px;
    background-color: #F7F3E8;
    border-radius: 20px;
    padding: 35px 46px 35px;
}
@media screen and (max-width: 767px) {
    .p-ns-block2 {
        margin-top: 68px;
        padding: 2.0512820513vw 30px 6.4102564103vw;
    }
}
.p-ns-block2__ttl {
    display: block;
    font-size: 2rem;
    line-height: 2.1;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: bold;
    color: #0AA058;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-ns-block2__ttl {
        font-size: 20px;
    }
}
.p-ns-block2__container {
    display: flex;
    align-items: start;
    justify-content: center;
    -moz-column-gap: 50px;
         column-gap: 50px;
    margin-top: 20px;
}
@media screen and (max-width: 959px) {
    .p-ns-block2__container {
        flex-direction: column;
        row-gap: 3.5416666667vw;
        margin-top: 0.4166666667vw;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-block2__container {
        flex-direction: column;
        row-gap: 17px;
        margin-top: 2px;
    }
}
.p-ns-block2__img {
    width: 300px;
    flex-shrink: 0;
    border-radius: 24px;
    overflow: hidden;
}
@media screen and (max-width: 959px) {
    .p-ns-block2__img {
        width: 100%;
        flex-shrink: 1;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-block2__img {
        width: 100%;
        margin-inline: auto;
    }
}
.p-ns-block2__img img {
    display: block;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.p-ns-block2__txt {
    display: block;
    font-size: 1.6rem;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.1em;
    font-weight: 500;
    color: #0AA058;
    text-align: justify;
}
@media screen and (max-width: 767px) {
    .p-ns-block2__txt {
        font-size: 16.5px;
        line-height: 1.5757575758;
        font-weight: bold;
    }
}
.p-ns-block2__icn-item {
    position: absolute;
    top: -26px;
    left: -26px;
}
@media screen and (max-width: 767px) {
    .p-ns-block2__icn-item {
        width: 14.1666666667vw;
        top: -1.875vw;
        left: -1.25vw;
    }
}
.p-ns-block2__icn-item--2 {
    top: auto;
    left: auto;
    bottom: -18px;
    right: -53px;
}
@media screen and (max-width: 767px) {
    .p-ns-block2__icn-item--2 {
        width: 22.9166666667vw;
        bottom: -6.25vw;
        right: -1.6666666667vw;
    }
}

/* ---------------------------------------------
*   p-ns-img
--------------------------------------------- */
.p-ns-img {
    margin-top: 38px;
}
@media screen and (max-width: 767px) {
    .p-ns-img {
        margin-top: 25px;
    }
}
.p-ns-img img {
    border-radius: 20px;
}

/* ---------------------------------------------
*   p-ns-block-interview
--------------------------------------------- */
.p-ns-block-interview {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-ns-block-interview {
        margin-top: 6.25vw;
    }
}
.p-ns-block-interview + .p-ns-block-interview {
    margin-top: 70px;
}
@media screen and (max-width: 767px) {
    .p-ns-block-interview + .p-ns-block-interview {
        margin-top: 46px;
    }
}
.p-ns-block-interview__desc {
    display: block;
    font-size: 1.6rem;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.014em;
    font-weight: 700;
    color: #444444;
    margin-top: 64px;
}
@media screen and (max-width: 767px) {
    .p-ns-block-interview__desc {
        font-size: 16px;
        line-height: 1.8;
        margin-top: 24px;
        letter-spacing: 0.014em;
        text-align: justify;
    }
}
.p-ns-block-interview__body {
    margin-top: 31px;
}
@media screen and (max-width: 767px) {
    .p-ns-block-interview__body {
        margin-top: 34px;
    }
}
.p-ns-block-interview__txt {
    font-size: 1.6rem;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    color: #444444;
}
@media screen and (max-width: 767px) {
    .p-ns-block-interview__txt {
        font-size: 16px;
        line-height: 1.3125;
    }
}
.p-ns-block-interview__txt-color {
    color: #2BABD5;
    font-weight: bold;
}

/* ---------------------------------------------
*   p-ns-section-limited
--------------------------------------------- */
.p-ns-section-limited {
    background-color: #E8F6F9;
    margin-top: 83px;
    padding: 40px 20px 167px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited {
        padding: 6.25vw 6.25vw 20.8333333333vw;
        margin-top: 5.625vw;
        position: relative;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited {
        padding: 30px 30px 200px;
        margin-top: 27px;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-section-limited {
        padding: 6.25vw 20px 39.5833333333vw;
    }
}
.p-ns-section-limited__inner {
    max-width: 816px;
    margin-inline: auto;
}
.p-ns-section-limited__ttl {
    display: block;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    font-feature-settings: "palt";
    letter-spacing: 0.2em;
    font-weight: bold;
    color: #005BAC;
    margin-top: 29px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__ttl {
        margin-top: 7.2916666667vw;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__ttl {
        margin-top: 7.2916666667vw;
        font-size: 20px;
        line-height: 1.05;
    }
}
.p-ns-section-limited__wrap {
    position: relative;
    -moz-column-gap: 40px;
         column-gap: 40px;
    margin-top: 37px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__wrap {
        margin-top: 6.25vw;
        position: inherit;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__wrap {
        flex-direction: column;
        width: 100%;
        margin-inline: auto;
        row-gap: 6.25vw;
        margin-top: 6.25vw;
    }
}
.p-ns-section-limited__item {
    background-color: #fff;
    border-radius: 20px;
    padding: 30px 20px 31px 48px;
    display: flex;
    align-items: start;
    justify-content: start;
    -moz-column-gap: 68px;
         column-gap: 68px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__item {
        flex-direction: column;
        row-gap: 6.25vw;
        width: 100%;
        padding: 6.25vw 10.4166666667vw;
        align-items: center;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__item {
        flex-direction: column;
        row-gap: 30px;
        width: 100%;
        padding: 30px 50px;
        align-items: center;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-section-limited__item {
        padding: 30px 20px;
    }
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__item-wrap {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__item-wrap {
        width: 100%;
    }
}
.p-ns-section-limited__desc {
    text-align: center;
    font-size: 2rem;
    line-height: 1.6;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: bold;
    color: #005BAC;
    display: block;
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__desc {
        display: block;
        font-size: 20px;
        text-align: center;
    }
}
.p-ns-section-limited__list-item {
    position: relative;
    padding-left: 20px;
    font-size: 1.6rem;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__list-item {
        font-size: 16px;
    }
}
.p-ns-section-limited__list-item::before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #2BABD5;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.p-ns-section-limited__caution {
    font-size: 1.3rem;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    white-space: nowrap;
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__caution {
        display: inline-block;
        font-size: 12px;
        line-height: 1.75;
        white-space: normal;
        letter-spacing: 0.08em;
        margin-top: 5px;
    }
}
.p-ns-section-limited__icn1 {
    position: absolute;
    top: -22px;
    right: -14px;
    width: 232px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__icn1 {
        width: 100%;
        max-width: 31.25vw;
        bottom: 13.5416666667vw;
        right: 19.1666666667vw;
        top: inherit;
    }
    .p-ns-section-limited__icn1 img {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__icn1 {
        width: 100%;
        max-width: 250px;
        bottom: 134px;
        right: 23px;
        top: inherit;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-section-limited__icn1 {
        max-width: 47.9166666667vw;
        right: 4.7916666667vw;
        bottom: 27.0833333333vw;
    }
}
.p-ns-section-limited__icn2 {
    position: absolute;
    bottom: -55px;
    left: -20px;
    width: 273px;
}
@media screen and (max-width: 959px) {
    .p-ns-section-limited__icn2 {
        width: 100%;
        max-width: 52.5vw;
        right: inherit;
        left: 0;
        bottom: 6.25vw;
    }
    .p-ns-section-limited__icn2 img {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-section-limited__icn2 {
        width: 100%;
        max-width: 392px;
        right: inherit;
        left: 0;
        bottom: 30px;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-section-limited__icn2 {
        max-width: none;
        width: 72.9166666667vw;
        bottom: 6.25vw;
    }
}

/* ---------------------------------------------
*   p-ns-cassette-limited
--------------------------------------------- */
.p-ns-cassette-limited {
    background-color: #fff;
    border-radius: 20px;
    padding: 34px 47px 59px;
    position: relative;
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited {
        width: 100%;
        margin-inline: auto;
        padding: 5.2083333333vw 30px 7.2916666667vw;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-cassette-limited {
        padding: 5.2083333333vw 4.1666666667vw 7.2916666667vw;
    }
}
.p-ns-cassette-limited__ttl {
    position: relative;
    display: block;
    font-size: 2.8rem;
    line-height: 1.4285714286;
    font-feature-settings: "palt";
    letter-spacing: 0.19em;
    font-weight: bold;
    color: #F2888D;
    padding-bottom: 18px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__ttl {
        font-size: 20px;
        line-height: 1.6;
        padding-bottom: 10px;
    }
}
.p-ns-cassette-limited__ttl::after {
    position: absolute;
    content: "";
    width: 80px;
    height: 2px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #F2888D;
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__ttl::after {
        width: 60px;
    }
}
.p-ns-cassette-limited__sold {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.p-ns-cassette-limited__sold p {
    display: block;
    padding: 2em;
    border: 4px solid red;
    border-radius: 20px;
    background-color: rgb(240 240 240 / 90%);
    color: red;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    white-space: nowrap;
    line-height: 2;
}
.p-ns-cassette-limited__sold p span {
    display: block;
    font-size: 2.0em;
    font-weight: bold;
}
.p-ns-cassette-limited__icn {
    width: 140px;
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: 5;
}
@media screen and (max-width: 959px) {
    .p-ns-cassette-limited__icn {
        max-width: 140px;
        right: 0;
        top: 98px;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__icn {
        max-width: 140px;
        width: 100%;
        right: 0;
        top: 98px;
    }
}
.p-ns-cassette-limited__icn img {
    display: block;
    width: 100%;
}
.p-ns-cassette-limited__icn2 {
    position: absolute;
    top: -20px;
    left: -15px;
}
@media screen and (max-width: 959px) {
    .p-ns-cassette-limited__icn2 {
        width: 25vw;
        top: auto;
        bottom: -6.25vw;
        left: auto;
        right: -3.75vw;
    }
    .p-ns-cassette-limited__icn2 img {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__icn2 {
        width: 25vw;
        top: auto;
        bottom: -4.1666666667vw;
        left: auto;
        right: -3.75vw;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-cassette-limited__icn2 {
        width: 18.75vw;
        right: -4.1666666667vw;
    }
}
.p-ns-cassette-limited__body {
    margin-top: 27px;
}
@media screen and (max-width: 959px) {
    .p-ns-cassette-limited__body {
        margin-top: 0;
        padding-top: 85.8333333333vw;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__body {
        margin-top: 0;
        padding-top: 412px;
    }
}
.p-ns-cassette-limited__name {
    font-size: 2.8rem;
    line-height: 0.75;
    font-feature-settings: "palt";
    letter-spacing: 0.2em;
    font-weight: bold;
    color: #2BABD5;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__name {
        font-size: 20px;
        line-height: 1.6;
    }
}
.p-ns-cassette-limited__name small {
    font-size: 2.5rem;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__name small {
        font-size: 17px;
    }
}
.p-ns-cassette-limited__img {
    position: absolute;
    top: 30px;
    right: 78px;
}
@media screen and (max-width: 959px) {
    .p-ns-cassette-limited__img {
        max-width: 21.0416666667vw;
        width: 100%;
        right: 50%;
        transform: translateX(50%);
        top: 19.7916666667vw;
    }
    .p-ns-cassette-limited__img img {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__img {
        max-width: 101px;
        width: 100%;
        right: 50%;
        transform: translateX(50%);
        top: 95px;
    }
}
.p-ns-cassette-limited__img::after {
    position: absolute;
    content: "イメージ";
    bottom: -20px;
    left: 0;
    width: 100%;
    height: auto;
    display: inline-block;
    text-align: center;
    font-weight: bold;
}
@media screen and (max-width: 959px) {
    .p-ns-cassette-limited__img::after {
        bottom: -25px;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-cassette-limited__img::after {
        bottom: -20px;
    }
}

/* ---------------------------------------------
*   p-ns-data
--------------------------------------------- */
.p-ns-data {
    margin-top: 41px;
}
@media screen and (max-width: 767px) {
    .p-ns-data {
        margin-top: 4.1666666667vw;
    }
}
.p-ns-data__wrap {
    display: flex;
    align-items: center;
    justify-content: start;
    -moz-column-gap: 27px;
         column-gap: 27px;
}
@media screen and (max-width: 959px) {
    .p-ns-data__wrap {
        -moz-column-gap: 18.75vw;
             column-gap: 18.75vw;
        align-items: start;
    }
}
@media screen and (max-width: 767px) {
    .p-ns-data__wrap {
        -moz-column-gap: 5vw;
             column-gap: 5vw;
        align-items: start;
    }
}
@media screen and (max-width: 480px) {
    .p-ns-data__wrap {
        -moz-column-gap: 2.0833333333vw;
             column-gap: 2.0833333333vw;
    }
}
.p-ns-data__wrap:nth-of-type(n+2) {
    margin-top: 16px;
}
@media screen and (max-width: 767px) {
    .p-ns-data__wrap:nth-of-type(n+2) {
        margin-top: 8px;
    }
}
.p-ns-data__ttl, .p-ns-data__txt {
    font-size: 1.6rem;
    line-height: 1;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    color: #2BABD5;
}
@media screen and (max-width: 767px) {
    .p-ns-data__ttl, .p-ns-data__txt {
        font-size: 16px;
        line-height: 1.5;
    }
}
.p-ns-data__ttl {
    width: 130px;
    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
    .p-ns-data__ttl {
        width: 100%;
        max-width: 27.0833333333vw;
        flex-shrink: 1;
    }
}
.p-ns-data__ttl span {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    color: #2BABD5;
}
@media screen and (max-width: 767px) {
    .p-ns-data__ttl span {
        font-size: 16px;
        line-height: 1.5;
    }
}
.p-ns-data__txt {
    color: #000;
}
.p-ns-data__txt span {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    color: #000;
}
@media screen and (max-width: 767px) {
    .p-ns-data__txt span {
        font-size: 16px;
        line-height: 1.5;
    }
}

/* ---------------------------------------------
*   p-ns-block-foot
--------------------------------------------- */
.p-ns-block-foot {
    max-width: 816px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 50px auto 0;
}
@media screen and (max-width: 767px) {
    .p-ns-block-foot {
        max-width: 460px;
        width: 100%;
        flex-direction: column;
        row-gap: 12px;
        padding-inline: 30px;
        margin-top: 30px;
    }
}
.p-ns-block-foot__sns {
    display: flex;
    justify-content: center;
    align-items: center;
    -moz-column-gap: 15px;
         column-gap: 15px;
    font-size: 1.6rem;
    line-height: 1;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
    color: #2BABD5;
}
@media screen and (max-width: 767px) {
    .p-ns-block-foot__sns {
        font-size: 16px;
    }
}
.p-ns-block-foot__facebook, .p-ns-block-foot__x {
    width: 40px;
    height: 40px;
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .p-ns-block-foot__facebook-link {
        transition: opacity 300ms;
    }
    .p-ns-block-foot__facebook-link:hover {
        opacity: 0.8;
    }
}
@media (hover: hover) and (pointer: fine) and (hover: hover) and (pointer: fine) {
    .p-ns-block-foot__x-link {
        transition: opacity 300ms;
    }
    .p-ns-block-foot__x-link:hover {
        opacity: 0.8;
    }
}
.p-ns-block-foot__sns-txt {
    font-weight: 500;
}
.p-ns-block-foot__txt {
    font-size: 1.2rem;
    line-height: 1.75;
    font-feature-settings: "palt";
    letter-spacing: 0.14em;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .p-ns-block-foot__txt {
        font-size: 12px;
        display: flex;
        justify-content: end;
        width: 100%;
    }
}

/* ---------------------------------------------
*   p-ns-slider
--------------------------------------------- */
.p-ns-slider {
    margin-top: 80px;
}
@media screen and (max-width: 767px) {
    .p-ns-slider {
        margin-top: 27px;
    }
}
.p-ns-slider__wrapper {
    position: relative;
}
.p-ns-slider .splide__slide {
    transform: translate3d(0, 0, 0);
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__slide {
        width: 100% !important;
    }
}
.p-ns-slider .splide__slide-cap {
    display: block;
    margin-top: 9px;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 2;
    font-feature-settings: "palt";
    letter-spacing: 0.014em;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__slide-cap {
        font-size: 12px;
        line-height: 2.6666666667;
    }
}
.p-ns-slider .splide__slide-cap small {
    font-size: 1.3rem;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__slide-cap small {
        font-size: 10px;
    }
}
.p-ns-slider .splide__arrow {
    --arrow-pos-x: 340px;
    position: absolute;
    top: 47%;
    z-index: 1;
    translate: 0 -50%;
    cursor: pointer;
    width: 13px;
    height: 30px;
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__arrow {
        --arrow-pos-x: calc(-9 / 480 * 100vw);
        width: 1.875vw;
        height: 3.75vw;
        min-width: 9px;
        min-height: 18px;
    }
}
@media screen and (max-width: 600px) {
    .p-ns-slider .splide__arrow {
        --arrow-pos-x: calc(-11 / 480 * 100vw);
    }
}
@media screen and (max-width: 450px) {
    .p-ns-slider .splide__arrow {
        --arrow-pos-x: calc(-14 / 480 * 100vw);
    }
}
.p-ns-slider .splide__arrow img {
    display: block;
    width: 100%;
}
.p-ns-slider .splide__arrow:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
.p-ns-slider .splide__arrow--prev {
    left: 50%;
    transform: translateX(calc(-50% - var(--arrow-pos-x)));
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__arrow--prev {
        left: auto;
        right: calc(100% + var(--arrow-pos-x));
    }
}
.p-ns-slider .splide__arrow--next {
    right: 50%;
    transform: translateX(calc(50% + var(--arrow-pos-x)));
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__arrow--next {
        left: calc(100% + var(--arrow-pos-x));
    }
}
@media (hover: hover) and (pointer: fine) {
    .p-ns-slider .splide__arrow {
        transition: opacity 0.3s;
    }
    .p-ns-slider .splide__arrow:hover {
        opacity: 0.8;
    }
}
.p-ns-slider .splide__pagination {
    margin-top: 14px;
    gap: 14px;
}
@media screen and (max-width: 767px) {
    .p-ns-slider .splide__pagination {
        padding-inline: 20px;
    }
}
.p-ns-slider .splide__pagination li {
    font-size: 0;
}
.p-ns-slider .splide__pagination__page {
    width: 12px;
    height: 12px;
    background-color: #E8F6F9;
    border-radius: 50%;
    touch-action: manipulation;
    cursor: pointer;
}
.p-ns-slider .splide__pagination__page.is-active {
    background-color: #2BABD5;
}
.p-ns-slider .splide__pagination__page:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
@media (hover: hover) and (pointer: fine) {
    .p-ns-slider .splide__pagination__page {
        transition: opacity 0.3s;
    }
    .p-ns-slider .splide__pagination__page:hover {
        opacity: 0.8;
    }
}
.p-ns-slider__img {
    width: 610px;
    height: 400px;
    overflow: hidden;
}
@media screen and (max-width: 767px) {
    .p-ns-slider__img {
        height: 58.3333333333vw;
        width: 100%;
    }
}
.p-ns-slider__img img {
    display: block;
    border-radius: 18px;
    width: 100%;
    height: 100%;
    vertical-align: bottom;
    -o-object-fit: cover;
       object-fit: cover;
}
@media screen and (max-width: 767px) {
    .p-ns-slider__img img {
        border-radius: 20px;
    }
}

/* ---------------------------------------------
*   anchor-desc
--------------------------------------------- */
@media screen and (max-width: 767px) {
    #anchor-desc {
        padding-top: 7.2916666667vw;
        margin-top: -0.2083333333vw;
    }
}




/* 季節のおすすめ見出し 共通スタイル */
.c-seasonal-head {
    max-width: 1000px;
    margin: 0 auto 40px;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 767px) {
    .c-seasonal-head  {
        margin: 0 auto 20px;
    }
}
.c-seasonal-head__circle-wrap {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 12px;
}
@media screen and (max-width: 767px) {
    .c-seasonal-head__circle-wrap {
        width: 100px;
        height: 100px;
    }
}

/* 文字の回転アニメーション */
.c-seasonal-head__txt-svg {
    width: 100%;
    height: 100%;
    animation: rotate-anim 15s linear infinite;
}

@keyframes rotate-anim {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.c-seasonal-head__txt-svg text {
    font-size: 8.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    fill: #ff7e00;
}

/* アイコンの土台 */
.c-seasonal-head__icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
}
@media screen and (max-width: 767px) {
    .c-seasonal-head__icon {
        width: 30px;
        height: 30px;
    }
}

/* 色を塗る対象 */
.c-seasonal-head__icon-target {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #ff7e00;
    
    /* アイコン画像をマスクとして設定 */
    -webkit-mask-image: url("/odekake/assets/img/img_season-icon_spring.svg");
    mask-image: url("/odekake/assets/img/img_season-icon_spring.svg");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}

/* メイン見出し */
.c-seasonal-head__ttl {
    position: relative;
    font-size: 3.2rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
    letter-spacing: 0.05em;
}

/* 下のバッジ */
.c-seasonal-head__badge {
    position: relative;
    display: inline-block;
    background-color: #ff7e00;
    color: #fff;
    padding: 2px 20px;
    border-radius: 20px;
    font-size: 1.2rem;
    font-weight: 700;
}

/* ---------------------------------------------
* ページごとの色変更（下層ページクラスを利用）
--------------------------------------------- */

/* 日光（オレンジ） */
.page-nikko .c-seasonal-head__txt-svg text { fill: #ff7e00; }
.page-nikko .c-seasonal-head__badge { background-color: #ff7e00; }
.page-nikko .c-seasonal-head__icon-target { background-color: #fce2c5; }
.page-nikko .c-list-anchor .c-list-anchor__item::before { background-color: #ff7e00; }
.page-nikko .c-list-area02 .c-list-area02__num { background-color: #ff7e00; }

/* スカイツリー（青） */
.page-skytree .c-seasonal-head__txt-svg text { fill: #0057B8; }
.page-skytree .c-seasonal-head__badge { background-color: #0057B8; }
.page-skytree .c-seasonal-head__icon-target { background-color: #bbdbff; }
.page-skytree .c-list-anchor .c-list-anchor__item::before { background-color: #0057B8; }
.page-skytree .c-list-area02 .c-list-area02__num { background-color: #0057B8; }

/* アーバン（緑） */
.page-urban .c-seasonal-head__txt-svg text { fill: #65B901; }
.page-urban .c-seasonal-head__badge { background-color: #65B901; }
.page-urban .c-seasonal-head__icon-target { background-color: #d9f2ba; }
.page-urban .c-list-anchor .c-list-anchor__item::before { background-color: #65B901; }
.page-urban .c-list-area02 .c-list-area02__num { background-color: #65B901; }

/* 北関東（赤） */
.page-kitakanto .c-seasonal-head__txt-svg text { fill: #EC2721; }
.page-kitakanto .c-seasonal-head__badge { background-color: #EC2721; }
.page-kitakanto .c-seasonal-head__icon-target { background-color: #FED4D3; }
.page-kitakanto .c-list-anchor .c-list-anchor__item::before { background-color: #EC2721; }
.page-kitakanto .c-list-area02 .c-list-area02__num { background-color: #EC2721; }

/* 会津（茶） */
.page-aizu .c-seasonal-head__txt-svg text { fill: #D27A18; }
.page-aizu .c-seasonal-head__badge { background-color: #D27A18; }
.page-aizu .c-seasonal-head__icon-target { background-color: #F0E0CF; }
.page-aizu .c-list-anchor .c-list-anchor__item::before { background-color: #D27A18; }
.page-aizu .c-list-area02 .c-list-area02__num { background-color: #D27A18; }

/* 東上線（紺） */
.page-tojo .c-seasonal-head__txt-svg text { fill: #1E22AA; }
.page-tojo .c-seasonal-head__badge { background-color: #1E22AA; }
.page-tojo .c-seasonal-head__icon-target { background-color: #DFE0F5; }
.page-tojo .c-list-anchor .c-list-anchor__item::before { background-color: #1E22AA; }
.page-tojo .c-list-area02 .c-list-area02__num { background-color: #1E22AA; }

@media screen and (max-width: 767px) {
    .c-seasonal-head__ttl {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .c-seasonal-head__circle-wrap {
        width: 80px;
        height: 80px;
        margin: 0 auto 4px;
    }
}


/* 1. 通常のアイテム：行のスパン数を3から4に増やします（エリア名が増えたため） */
.c-list-search__item {
    grid-row: span 4 !important;
}

/* 2. カテゴリー用のアイテム：行のスパン数を4から5に増やします */
.c-list-search--category .c-list-search__item {
    grid-row: span 5 !important;
}

/* 3. エリア名のマージンを調整して、下のタグとの隙間を作ります */
.c-list-search__area {
    margin: 6px 0 !important;
}

@media screen and (max-width: 767px) {
    /* スマホ版でも同様に行数を増やします */
    .c-list-search__item {
        grid-row: span 4 !important;
    }
    .c-list-search--category .c-list-search__item {
        grid-row: span 5 !important;
    }
}


/* =============================================
* 季節見出し（c-seasonal-head）運用設定
* 季節が変わったら、ここの色だけを書き換えてください
============================================= */
:root {
    /* 今の季節のメインカラー（文字・バッジ・アイコン用） */
    --season-color-main: #FF8B77; 
    /* 今の季節の背景用（アイコンを少し薄くする場合など） */
    --season-color-light: #fad1ca; 
}

/* --- どのページでも共通の色を適用 --- */
.c-seasonal-head__txt-svg text {
    fill: var(--season-color-main) !important;
}

.c-seasonal-head__badge {
    background-color: var(--season-color-main) !important;
}

.c-seasonal-head__icon-target {
    background-color: var(--season-color-light) !important;
}

.c-seasonal-head + .c-tabs .c-list-area02__num,
.c-seasonal-head + .c-list-area02 .c-list-area02__num {
    background-color: var(--season-color-main) !important;
}