@charset "utf-8";
/* print.scss */
/* -----------------------------------------------------------------------------------------------------------------------
å°å·ç¨
----------------------------------------------------------------------------------------------------------------------- */
/* reset.css */
*, *::before, *::after {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box
    }
body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td, figure, figcaption {
    margin: 0;
    padding: 0
    }
img {
    vertical-align: bottom;
    max-width: 100%;
    height: auto;
    border: 0
    }
li {
    list-style: none
    }
a {
    text-decoration: none
    }
input, textarea, button, select {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
    }
input[type=submit] {
    -webkit-appearance: none;
    border-radius: 0
    }
@page {
    margin: 8mm;
    margin: 10mm 8mm 10mm 8mm
    }
* {
    -webkit-print-color-adjust: exact !important;
    background-attachment: initial !important;
    overflow-y: visible !important;
    margin: 0;
    padding: 0
    }
html {
    overflow: visible !important;
    zoom: 0.7 !important;
    font-size: 62.5%
    }
body {
    font-size: 1.4rem;
    line-height: 1.857143;
    color: #0C0C0C;
    font-family: "Noto Sans JP", sans-serif;
    word-break: normal;
    line-break: strict;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hanging-punctuation: none;
    background: #fff;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    letter-spacing: 0.05em
    }
.wrapper {
    width: 100%;
    max-width: 2000px;
    margin-right: auto;
    margin-left: auto
    }
.container {
    padding-right: 10px;
    padding-left: 10px;
    max-width: 1012px;
    margin: 0 auto
    }
.container02 {
    padding-right: 10px;
    padding-left: 10px;
    margin: 0 auto;
    max-width: 900px
    }
a {
    text-decoration: none;
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-transition: none;
    transition: none
    }
a:hover {
    opacity: 0.7
    }
.pc-none {
    display: none
    }
.sp-none {
    display: block
    }
.inline-block {
    display: inline-block
    }
/*===============================
 header
 ===============================*/
.header {
    width: 100%;
    height: auto;
    margin-bottom: 160px
    }
/*===============================
 intro
 ===============================*/
.section {
    margin-bottom: 160px
    }
.intro {
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    position: relative;
    width: 48%
    }
.intro::after {
    position: absolute;
    top: 0;
    right: -140px;
    content: "";
    display: inline-block;
    background: url(../images/top/img_intro-decoration01.svg) center center/cover no-repeat;
    width: 60px;
    height: 94px
    }
.intro::before {
    position: absolute;
    bottom: 30px;
    left: -217px;
    content: "";
    display: inline-block;
    background: url(../images/top/img_intro-decoration02.svg) center center/cover no-repeat;
    width: 32px;
    height: 53px
    }
.intro-title {
    font-weight: bold;
    color: #56C385;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.928571;
    margin-bottom: 53px
    }
.intro-title__text {
    display: inline-block;
    background: url(../images/top/img_border.png) center bottom/contain repeat-x;
    white-space: nowrap
    }
.intro__text {
    font-size: 1.6rem;
    line-height: 2.125
    }
/*===============================
 recommend
 ===============================*/
.recommend {
    max-width: none;
    margin-right: 0;
    margin-left: 0
    }
.recommend-title {
    max-width: 748px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 60px
    }
.card01__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
    }
.card01 {
    margin-bottom: 60px;
    width: 26.612903%;
    margin-right: 2.419355%
    }
.card01:nth-of-type(3n) {
    margin-right: 0
    }
.card01--size-l {
    width: 41.935484%
    }
.card01__img-wrapper {
    margin-bottom: 20px;
    position: relative;
    margin-right: auto;
    margin-left: auto;
    width: 100%
    }
.label01 {
    display: inline-block;
    font-size: 1.3rem;
    line-height: 1;
    color: #fff;
    font-weight: bold;
    background: #56C385;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
    position: absolute;
    left: 10px;
    bottom: -7px;
    width: 57px;
    padding: 6px 11px
    }
.card01--size-l .card01__img-wrapper {
    width: 100%
    }
.card01__title {
    color: #56C385;
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 16px;
    text-align: left
    }
.card01__text {
    font-size: 1.6rem;
    line-height: 1.875
    }
/*===============================
 course
 ===============================*/
.course {
    max-width: none;
    margin-right: 0;
    margin-left: 0
    }
.course-title {
    text-align: center;
    color: #56C385;
    font-weight: bold;
    position: relative;
    margin-bottom: 60px
    }
.course-title::after {
    position: absolute;
    top: 0;
    right: 145px;
    content: "";
    display: inline-block;
    background: url(../images/top/img_course-decoration01.svg) center center/cover no-repeat;
    width: 46px;
    height: 70px
    }
.course-title::before {
    position: absolute;
    top: 17px;
    left: 150px;
    content: "";
    display: inline-block;
    width: 44px;
    height: 58px;
    background: url(../images/top/img_course-decoration02.svg) center center/cover no-repeat
    }
.course-title__inner {
    display: block
    }
.course-title__size-l {
    font-size: 4.4rem;
    line-height: 1.477273
    }
.course-title__size-m {
    font-size: 4.3rem;
    line-height: 1.488372
    }
.course-title__size-s {
    font-size: 3.4rem;
    line-height: 1.470588
    }
.course-title__size-ss {
    font-size: 3.4rem;
    line-height: 1.470588
    }
.card02__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -60px
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .card02__wrapper {
        display: block
        }
    }
.card02 {
    border: 2px solid #56C385;
    border-radius: 10px;
    padding: 16px 27px;
    width: 47.580645%;
    margin-right: 4.83871%;
    margin-bottom: 60px
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .card02 {
        display: inline-block;
        width: 47%
        }
    }
.card02:nth-of-type(2n) {
    margin-right: 0
    }
.card02__title {
    font-size: 2rem;
    line-height: 1.75;
    color: #56C385;
    font-weight: bold;
    text-align: center;
    margin-bottom: 14px
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .card02__title {
        font-size: 1.8rem
        }
    }
.card02__sub-title {
    display: block;
    font-size: 1.4rem;
    font-weight: normal
    }
.num {
    border: 1px solid #56C385;
    padding: 0 5px;
    margin-left: 5px
    }
.card02__img-wrapper {
    width: 100%;
    margin-bottom: 16px
    }
.card02-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 17px;
    max-width: 287px
    }
.card02-content__inner {
    margin-right: 13.937282%;
    -ms-flex-preferred-size: 47.38676%;
    flex-basis: 47.38676%
    }
.card02-content__img {
    margin-bottom: 12px
    }
.label02__wrapper {
    text-align: center;
    line-height: 1
    }
.label02 {
    display: inline-block;
    font-size: 1.3rem;
    line-height: 1;
    margin-right: auto;
    margin-left: auto;
    color: #fff;
    font-weight: bold;
    background: #56C385;
    border-radius: 11px;
    text-align: center;
    font-family: "Arial", "ã¡ã¤ãªãª", Meiryo, sans-serif;
    width: 116px;
    padding: 6.5px 5px 5.5px
    }
.card02__lists {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
    }
.card02__lists > *:last-child {
    margin-bottom: 0
    }
.card02__lists > *:last-child::after {
    content: none
    }
.card02__list {
    line-height: 1;
    color: #56C385;
    margin-bottom: 24px;
    position: relative;
    font-size: 1.6rem
    }
.card02__list::after {
    position: absolute;
    bottom: -15px;
    left: 50%;
    -webkit-transform: translatex(-50%);
    transform: translatex(-50%);
    content: "";
    display: inline-block;
    background: url(../images/top/icon_arrow-bottom.svg) center center/cover no-repeat;
    width: 10px;
    height: 5px
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .card02__list::after {
        background: url(../images/top/icon_arrow-bottom.png) center center/cover no-repeat
        }
    }
.card02__btn-wrapper {
    text-align: center
    }
.card02__btn {
    display: inline-block;
    color: #fff;
    max-width: 100%;
    background: #56C385;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border: none;
    font-weight: bold;
    border-radius: 5px;
    -webkit-transition: none;
    transition: none;
    width: 322px;
    padding: 12px;
    font-size: 1.8rem;
    line-height: 2
    }
/*===============================
 detail
 ===============================*/
.detail {
    background: #D7EFE0;
    border-radius: 10px;
    margin-right: auto;
    margin-left: auto;
    padding: 60px 190px;
    max-width: none
    }
.detail__text {
    background: #fff;
    color: #56C385;
    font-weight: bold;
    text-align: center;
    border-radius: 27px;
    margin-right: auto;
    margin-left: auto;
    font-size: 2.2rem;
    line-height: 1.5;
    margin-bottom: 9px;
    max-width: 612px;
    padding: 11px 11px 10px
    }
.detail__title {
    color: #56C385;
    text-align: center;
    font-size: 4.6rem;
    line-height: 1.478261;
    margin-bottom: 50px
    }
.detail__link {
    display: block;
    margin-right: auto;
    margin-left: auto;
    width: 99.324324%;
    max-width: none
    }
/*===============================
 info
 ===============================*/
.info {
    background: #56C385;
    color: #fff;
    padding: 60px 10px
    }
.info__title {
    font-weight: bold;
    text-align: center;
    font-size: 4.1rem;
    line-height: 1.487805;
    margin-bottom: 6px
    }
.page__wrapper {
    text-align: center;
    margin-bottom: 60px
    }
.page {
    font-size: 2.2rem;
    line-height: 1.5
    }
.media {
    position: relative;
    padding-top: 0;
    margin-bottom: 60px;
    max-width: 992px;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
    }
.media__img-wrapper {
    margin-bottom: 0;
    width: 37.096774%;
    -ms-flex-preferred-size: 37.096774%;
    flex-basis: 37.096774%;
    margin-right: 4.83871%;
    margin-left: 0
    }
.media__body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
    }
.media__text {
    position: static;
    font-size: 1.8rem;
    line-height: 1.888889;
    font-weight: bold;
    margin-bottom: 44px
    }
.profile {
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 24px
    }
.profile-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 16px
    }
.profile-head__img-wrapper {
    max-width: 119px
    }
.profile-head__term01 {
    font-weight: 500;
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1.5;
    margin-bottom: 8px;
    margin-right: 16px
    }
.profile-head__term02 {
    font-weight: 500;
    display: inline-block;
    font-size: 2rem;
    line-height: 1.45;
    margin-bottom: 8px
    }
.profile-head__description {
    font-weight: 500;
    font-size: 3rem;
    line-height: 1.5
    }
.profile-body__list > *:last-child {
    margin-bottom: 0
    }
.profile-body__inner {
    margin-bottom: 30px
    }
.profile-body__term {
    font-family: "Arial", "ã¡ã¤ãªãª", Meiryo, sans-serif;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.166667
    }
.profile-body__description {
    font-size: 1.4rem;
    line-height: 1.428571
    }
.info__btn-wrapper {
    text-align: center
    }
.info__btn {
    display: inline-block;
    color: #56C385;
    max-width: 100%;
    background: #fff;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border: none;
    font-weight: bold;
    border-radius: 10px;
    -webkit-transition: none;
    transition: none;
    width: 338px;
    padding: 19px 19px 18px;
    font-size: 1.8rem;
    line-height: 1.777778
    }
/*===============================
 map
 ===============================*/
.map-top {
    margin-bottom: 100px
    }
.map__title {
    font-weight: 500;
    color: #fff;
    background: #56C385;
    margin-bottom: 20px;
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.5;
    padding: 10px 10px 7px
    }
.map__lists {
    border: 1px solid #A2A2A2;
    margin-bottom: 20px
    }
.map__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
    }
.map__term {
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.555556;
    padding: 20px;
    -ms-flex-preferred-size: 17.272727%;
    flex-basis: 17.272727%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .map__term {
        width: 20%
        }
    }
.bg-color-blue {
    background: #A4D2F8
    }
.bg-color-pink {
    background: #F9B0AD
    }
.bg-color-purple {
    background: #D4B2F6
    }
.bg-color-orange {
    background: #FFCA9B
    }
.bg-color-green {
    background: #85DFAF
    }
.map__description {
    padding: 20px
    }
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .map__description {
        width: 80%
        }
    }
.map__items {
    font-size: 1.6rem;
    line-height: 1.75
    }
.map__items > *:last-child {
    margin-bottom: 0
    }
.map-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 8px
    }
.map-item__term {
    margin-right: 8px
    }
/*===============================
 footer
 ===============================*/
.footer-top {
    max-width: 1030px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 80px
    }
.footer__title {
    font-size: 2.8rem;
    line-height: 1.428571;
    font-weight: bold;
    color: #56C385;
    text-align: center;
    margin-bottom: 60px
    }
.footer-top__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
    }
.footer-top__item {
    max-width: 100%;
    margin-left: auto;
    margin-right: 3.495146%;
    margin-bottom: 20px;
    width: 30.291262%
    }
.footer-top__item:nth-child(3n) {
    margin-right: 0
    }
.footer-top__link {
    display: block;
    width: 100%;
    padding: 20px;
    border: 2px solid #56C385;
    border-radius: 35px;
    font-size: 1.8rem;
    line-height: 1.444444;
    color: #56C385;
    text-align: center;
    text-decoration: none;
    font-weight: 500;
    position: relative;
    -webkit-transition: none;
    transition: none
    }
.footer-top__link:hover {
    color: #fff;
    background: #56C385;
    opacity: 1
    }
.footer-top__link::before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 25px;
    top: 50%;
    -webkit-transform: translatey(-50%);
    transform: translatey(-50%)
    }
.footer-top__link--spa {
    display: inline-block
    }
.footer-top__link--spa::before {
    width: 23px;
    height: 19px;
    background: url(../images/top/icon_spa.png) center center/cover no-repeat
    }
.footer-top__link--spa:hover::before {
    background: url(../images/top/icon_spa-white.png) center center/cover no-repeat
    }
.footer-top__link--meal {
    display: inline-block
    }
.footer-top__link--meal::before {
    width: 18px;
    height: 23px;
    background: url(../images/top/icon_meal.png) center center/cover no-repeat
    }
.footer-top__link--meal:hover::before {
    background: url(../images/top/icon_meal-white.png) center center/cover no-repeat
    }
.footer-top__link--camp {
    display: inline-block
    }
.footer-top__link--camp::before {
    width: 29px;
    height: 23px;
    background: url(../images/top/icon_camp.png) center center/cover no-repeat
    }
.footer-top__link--camp:hover::before {
    background: url(../images/top/icon_camp-white.png) center center/cover no-repeat
    }
.footer-top__link--stop-spa {
    display: inline-block
    }
.footer-top__link--stop-spa::before {
    width: 28px;
    height: 23px;
    background: url(../images/top/icon_stop-spa.png) center center/cover no-repeat
    }
.footer-top__link--stop-spa:hover::before {
    background: url(../images/top/icon_stop-spa-white.png) center center/cover no-repeat
    }
.footer-top__link--apple {
    display: inline-block
    }
.footer-top__link--apple::before {
    width: 21px;
    height: 23px;
    background: url(../images/top/icon_apple.png) center center/cover no-repeat
    }
.footer-top__link--apple:hover::before {
    background: url(../images/top/icon_apple-white.png) center center/cover no-repeat
    }
.footer-top__link--shoes {
    display: inline-block
    }
.footer-top__link--shoes::before {
    width: 24px;
    height: 21px;
    background: url(../images/top/icon_shoes.png) center center/cover no-repeat
    }
.footer-top__link--shoes:hover::before {
    background: url(../images/top/icon_shoes-white.png) center center/cover no-repeat
    }
.footer-bottom {
    width: 100%;
    height: auto;
    background: #56C385;
    padding: 20px
    }
.copy-right {
    font-size: 1.3rem;
    line-height: 1;
    font-family: "Arial", "ã¡ã¤ãªãª", Meiryo, sans-serif;
    text-align: center;
    color: #fff
    }