@charset "UTF-8";

.page-wrap {
    padding-bottom: 100px;
}

.page-title .en-title {
    color: var(--green);
}

/*================================================================
# 近郊おすすめスポット
================================================================ */
.suburbs {
    margin-top: 40px;
    position: relative;
}

.suburbs .title-area {
    position: relative;
}

.suburbs .suburbs_illust01 {
    width: calc(522px / 1.5);
    position: absolute;
    top: -59px;
    left: -299px;
}

.suburbs .suburbs_illust02 {
    width: calc(491px / 1.5);
    position: absolute;
    top: -68px;
    right: -275px;
}

.suburbs .title-area__sub-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--green);
    text-align: center;
}

.suburbs .title-area__title {
    margin-top: 8px;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

.suburbs .title-area__text {
    margin-top: 16px;
    font-size: 14px;
    line-height: 2;
    text-align: center;
}

.suburbs .container {
    margin: 40px 0 0 0;
}

.suburbs .card {
    width: 100%;
}

.suburbs .card:nth-child(n + 2) {
    margin-top: 40px;
}

.suburbs .card__subtitle {
    margin-top: 24px;
    font-size: 14px;
    font-weight: 700;
}

.suburbs .card__title {
    margin-top: 8px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--green);
}

.suburbs .card__body {
    margin-top: 16px;
    font-size: 14px;
    color: var(--gray);
}

.suburbs .inner {
    margin: 40px 0 0;
    padding: 24px 0;
    position: relative;
}

.suburbs .inner::before {
    width: calc(50vw + 50% + 24px);
    height: 100%;
    border-radius: 0 80px 0 0;
    background-color: var(--green);
    position: absolute;
    content: "";
    top: 0;
    left: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.suburbs .card__footer {
    margin: 24px 0 0 -8px;
    display: flex;
}

.suburbs .card__btn {
    width: calc(50% - 8px);
    margin-left: 8px;
}

.suburbs .card__btn a {
    width: 100%;
    padding: 12px;
    border: 3px solid #e0e0e0;
    border-radius: 58px;
    background-color: #fff;
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    transition: background-color 0.3s;
}

.suburbs .card__btn a:hover {
    border: 3px solid #58bae4;
    background-color: #58bae4;
    color: #fff;
}

.suburbs .map01 {
    position: relative;
    z-index: 2;
}

.suburbs .map01 img {
    border-radius: 0 64px 0 0;
}

.suburbs_illust03 {
    width: calc(208px / 1.7);
    position: absolute;
    top: -29px;
    left: -63px;
    z-index: 3;
}

.suburbs_illust04 {
    display: none;
}

.suburbs_illust05 {
    display: none;
}

.suburbs_illust06 {
    width: calc(269px / 1.5);
    position: absolute;
    right: -10px;
    bottom: -92px;
    z-index: 3;
}

/*================================================================
# 近郊おすすめスポット
================================================================ */
.kansai {
    margin-top: 140px;
    position: relative;
}

.kansai .title-area {
    position: relative;
}

.kansai .kansai_illust01 {
    width: calc(291px / 1.5);
    position: absolute;
    top: -120px;
    left: -41px;
}

.kansai .kansai_illust02 {
    display: none;
}

.kansai .title-area__sub-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--pink);
    text-align: center;
}

.kansai .title-area__title {
    margin-top: 8px;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

.kansai .title-area__text {
    margin-top: 16px;
    font-size: 14px;
    line-height: 2;
    text-align: center;
}

.kansai .container {
    margin: 40px 0 0 0;
    position: relative;
}

.kansai .kansai_illust03 {
    display: none;
}

.kansai .card {
    width: 100%;
}

.kansai .card:nth-child(n + 2) {
    margin-top: 40px;
}

.kansai .card__title {
    margin-top: 24px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--pink);
}

.kansai .card__body {
    margin-top: 16px;
    font-size: 14px;
    color: var(--gray);
}

.kansai .inner {
    margin: 40px 0 0;
    padding: 32px 0;
    position: relative;
}

.kansai .inner::before {
    width: calc(50vw + 50% + 24px);
    height: 100%;
    border-radius: 0 80px 0 0;
    background-color: var(--pink);
    position: absolute;
    content: "";
    top: 0;
    left: calc(-50vw + 50%);
    display: block;
    z-index: -1;
}

.kansai .card__footer {
    margin: 24px 0 0 -8px;
    display: flex;
}

.kansai .card__btn {
    width: calc(50% - 8px);
    margin-left: 8px;
}

.kansai .card__btn a {
    width: 100%;
    padding: 12px;
    border: 3px solid #e0e0e0;
    border-radius: 58px;
    background-color: #fff;
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    transition: background-color 0.3s;
}

.kansai .card__btn a:hover {
    border: 3px solid #58bae4;
    background-color: #58bae4;
    color: #fff;
}

.kansai .map02 {
    position: relative;
    z-index: 2;
}

.kansai .map02 img {
    border-radius: 0 64px 0 0;
}

.kansai_illust04 {
    width: calc(274px / 1.8);
    position: absolute;
    bottom: -29px;
    left: -37px;
    z-index: 3;
}

.kansai_illust05 {
    display: none;
}

.kansai_illust06 {
    display: none;
}

.kansai_illust07 {
    display: none;
}

.kansai .ban {
    width: 80%;
    margin: 80px auto 0;
    text-align: center;
}

.kansai .ban a {
    display: block;
    transition: 0.3s;
}

.kansai .ban a:hover {
    opacity: 0.8;
}