@charset "UTF-8";

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

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

/*================================================================
#anchor
================================================================ */
.anchor .anchor__list {
    width: calc(100% / 4 - 16px);
}

.anchor .anchor__list:nth-child(n+5) {
    margin-top: 16px;
}

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

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

.suburbs .suburbs_illust01 {
    position: absolute;
    top: -45px;
    left: -226px;
    z-index: -1;
}

.suburbs .suburbs_illust02 {
    position: absolute;
    top: -43px;
    right: -205px;
    z-index: -1;
}

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

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

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

.suburbs .container {
    margin: 40px 0 0 -24px;
    display: flex;
    flex-wrap: wrap;
}

.suburbs .card {
    width: calc(100% / 3 - 24px);
    margin-left: 24px;
}

.suburbs .card:nth-child(n+4) {
    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-top: 64px;
    padding: 80px 0;
    position: relative;
}

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

.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 .3s;
}

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

.suburbs .inner {
    margin-top: 64px;
    padding: 64px;
    position: relative;
}

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

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

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

.suburbs_illust03 {
    position: absolute;
    top: 218px;
    left: 8px;
    z-index: 3;
}

.suburbs_illust04 {
    position: absolute;
    top: -64px;
    right: -148px;
}

.suburbs_illust05 {
    position: absolute;
    bottom: -50px;
    left: -207px;
}

.suburbs_illust06 {
    position: absolute;
    right: 83px;
    bottom: -40px;
    z-index: 3;
}

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

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

.kansai .kansai_illust01 {
    position: absolute;
    top: 86px;
    left: 6px;
}

.kansai .kansai_illust02 {
    position: absolute;
    top: 83px;
    right: 156px;
    z-index: -1;
}

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

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

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

.kansai .container {
    margin: 40px 0 0 -24px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.kansai .kansai_illust03 {
    position: absolute;
    right: -150px;
    bottom: -18px;
}

.kansai .card {
    width: calc(100% / 3 - 24px);
    margin-left: 24px;
}

.kansai .card:nth-child(n+4) {
    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-top: 64px;
    padding: 80px 0;
    position: relative;
}

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

.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 .3s;
}

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

.kansai .inner {
    margin-top: 64px;
    padding: 64px;
    position: relative;
}

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

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

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

.kansai_illust04 {
    position: absolute;
    top: 110px;
    left: -60px;
    z-index: 3;
}

.kansai_illust05 {
    position: absolute;
    top: 124px;
    right: -148px;
}

.kansai_illust06 {
    position: absolute;
    bottom: -83px;
    left: -199px;
}

.kansai_illust07 {
    position: absolute;
    right: 130px;
    bottom: -57px;
    z-index: 3;
}

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

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

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