@charset "UTF-8";
/* CSS Information
============================================
File: _p-detail-course.scss
Site: Okinawa Story
SCSS: course/detail
============================================= */
/* CSS Information
============================================
File: _f-setting.scss
Site: Okinawa Story
SCSS: foundation
Output: app.css
============================================= */
/* 共通タイトル　ページ内相殺
========================================== */
@media (min-width: 64.0625em) {
    .os-c-title-cmn-header {
        margin-bottom: 2rem;
    }
}

/* 概要（モデルコースなど）
====================================== */
.p-course-overview {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 1rem;
}
.p-course-overview__disc {
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    margin-bottom: 5px;
}
.p-course-overview__disc:nth-last-child(n+2) {
    margin-right: 1rem;
}
.p-course-overview__disc-item {
    color: #006dba;
    padding-right: 6px;
}
.p-course-overview__disc-data {
    border-left: solid 1px #ddd;
    padding-left: 6px;
}
.p-course-overview__inline-block {
    display: inline-block;
}
.p-course-overview__inline-block:after {
    content: ",";
    margin-right: 5px;
}
.p-course-overview__inline-block:last-child:after {
    content: none;
    margin-right: 0;
}
@media (min-width: 64.0625em) {
    .p-course-overview {
        margin-bottom: 1.5rem;
    }
    .p-course-overview__disc {
        font-size: 1.4rem;
    }
    .p-course-overview__disc:nth-last-child(n+2) {
        margin-right: 2rem;
    }
}

/* 詳細ページ（モデルコース）
** コンテンツ管理
====================================== */
.p-course {
    width: 100%;
}
.p-course__section:nth-last-child(n+2) {
    margin-bottom: 3rem;
}
.p-course__section-box:nth-last-child(n+2) {
    margin-bottom: 2rem;
}
.p-course__section-box--pd-btm {
    padding-bottom: 2rem;
    border-bottom: dashed 1px #ddd;
}
@media (min-width: 64.0625em) {
    .p-course__section:nth-last-child(n+2) {
        margin-bottom: 5rem;
    }
    .p-course__section-box:nth-last-child(n+2) {
        margin-bottom: 3rem;
    }
    .p-course__section-box--pd-btm {
        padding-bottom: 3rem;
    }
}

/* タブコンテンツ（詳細ページ）
** JS:Tab * pages/detail-course.js
====================================== */
.p-course-content__change {
    display: flex;
    align-items: stretch;
    flex-grow: 1;
    width: 100%;
}
.p-course-content__change-btn {
    width: 100%;
    max-width: 15rem;
    text-align: center;
    border: solid 1px #f0f0f0;
    background-color: #fff;
    color: #353535 !important;
    font-size: 1rem;
    line-height: 1.4;
    cursor: pointer;
}
.p-course-content__change-btn.is--active {
    color: #fff !important;
    border-color: #006dba;
    background-color: #006dba;
}
.p-course-content__change-btn:nth-last-child(n+2) {
    margin-right: 5px;
}
.p-course-content__change-btn--head {
    border-radius: 4px 4px 0 0;
    border-bottom: none !important;
}
.p-course-content__change-btn--foot {
    border-radius: 0 0 4px 4px;
    border-top: none !important;
}
.p-course-content__change-btn-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    padding: 8px 5px;
}
.p-course-content__change-btn-inline {
    width: 100%;
}
.p-course-content__storage {
    width: 100%;
    border-top: solid 2px #006dba;
    border-bottom: solid 2px #006dba;
    counter-reset: number 0;
}
.p-course-content__storage-wrap {
    display: none;
    width: 100%;
    background-color: #fff;
    padding: 2rem 5px;
}
.p-course-content__storage-wrap.is--show {
    display: block;
}
.p-course-content__storage-section:nth-last-child(n+2) {
    margin-bottom: 3rem;
}
.p-course-content__storage-unit:nth-last-child(n+2) {
    margin-bottom: 2rem;
}
.p-course-content__storage-unit > *:nth-last-child(n+2) {
    margin-bottom: 2rem;
}
@media (min-width: 20em) {
    .p-course-content__change-btn {
        font-size: 1.2rem;
    }
}
@media (min-width: 23.4375em) {
    .p-course-content__change-btn-inner {
        padding: 1rem 5px;
    }
}
@media (min-width: 30em) {
    .p-course-content__change-btn-inner {
        padding: 1.4rem 0;
    }
    .p-course-content__change-btn-inline {
        width: auto;
    }
}
@media (min-width: 37.5em) {
    .p-course-content__change-btn-inner {
        padding: 1.1rem 0;
    }
    .p-course-content__storage-wrap {
        padding: 3rem 1rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-content__change-btn {
        font-size: 1.5rem;
    }
    .p-course-content__change-btn:hover {
        color: #fff !important;
        border-color: #006dba;
        background-color: #006dba;
    }
    .p-course-content__storage-wrap {
        padding: 4rem 2rem;
    }
    .p-course-content__storage-section:nth-last-child(n+2) {
        margin-bottom: 6rem;
    }
    .p-course-content__storage-unit:nth-last-child(n+2) {
        margin-bottom: 4rem;
    }
    .p-course-content__storage-unit > *:nth-last-child(n+2) {
        margin-bottom: 3rem;
    }
}
@media (min-width: 80em) {
    .p-course-content__change-btn {
        font-size: 1.5rem;
    }
}

/* コメント吹き出し
====================================== */
.p-course-comment {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 4rem;
}
.p-course-comment__narrator {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 1.5rem;
}
.p-course-comment__narrator-figure {
    width: calc(50% - 5px);
}
.p-course-comment__narrator-img {
    width: 6rem;
}
.p-course-comment__narrator-box {
    display: flex;
    justify-content: flex-end;
    width: calc(50% - 5px);
}
.p-course-comment__narrator-title {
    color: #004ea2;
    text-align: center;
}
.p-course-comment__narrator-main {
    font-size: 2.6rem;
    line-height: 1;
    display: block;
    margin-bottom: 1.2rem;
}
.p-course-comment__narrator-sub {
    font-size: 1.2rem;
    font-weight: bold;
    display: block;
}
.p-course-comment__balloon {
    position: relative;
    width: 100%;
    background-color: #def1fc;
    border-radius: 1rem;
    padding: 1rem;
}
.p-course-comment__balloon > *:nth-last-child(n+2) {
    margin-bottom: 1rem;
}
.p-course-comment__balloon:before {
    content: "";
    position: absolute;
    top: -2rem;
    left: 50%;
    transform: translateX(-50%);
    border: 1rem solid transparent;
    border-bottom: 1rem solid #def1fc;
}
.p-course-comment__balloon-text {
    width: 100%;
    font-size: 1.2rem;
    line-height: 1.8;
}
@media (min-width: 25.875em) {
    .p-course-comment {
        align-items: center;
    }
    .p-course-comment__narrator {
        width: 10rem;
    }
    .p-course-comment__narrator-box {
        justify-content: center;
        width: 100%;
        margin-bottom: 1rem;
    }
    .p-course-comment__narrator-figure {
        width: 100%;
    }
    .p-course-comment__narrator-img {
        display: block;
        margin: 0 auto;
    }
    .p-course-comment__balloon {
        width: calc(100% - 11rem);
    }
    .p-course-comment__balloon:before {
        top: 50%;
        left: -2rem;
        transform: translateY(-50%);
        border: 1rem solid transparent;
        border-right: 1rem solid #def1fc;
    }
}
@media (min-width: 48em) {
    .p-course-comment__balloon-text {
        font-size: 1.4rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-comment {
        margin-bottom: 8rem;
    }
    .p-course-comment__narrator {
        width: 12rem;
    }
    .p-course-comment__narrator-box {
        margin-bottom: 1.5rem;
    }
    .p-course-comment__narrator-main {
        font-size: 4rem;
        margin-bottom: 2rem;
    }
    .p-course-comment__balloon {
        width: calc(100% - 14rem);
        padding: 1.5rem;
    }
}

/* モデルコースポイント　＊カルーセル
** JS:Tab * pages/detail-course.js
====================================== */
.p-course-point-crs {
    width: 100%;
    margin-bottom: 4rem;
}
.p-course-point-crs__inner {
    visibility: hidden;
    padding: 0 2rem;
}
.p-course-point-crs__inner.initialized {
    visibility: visible;
}
.p-course-point-crs__title {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.4;
    color: #004ea2;
}
.p-course-point-crs__unit {
    padding: 0 8px;
}
.p-course-point-crs__unit-wrap {
    display: block;
    width: 100%;
}
.p-course-point-crs__unit-canvas {
    display: block;
    width: 100%;
}
.p-course-point-crs__unit-figure {
    position: relative;
    width: 100%;
    height: auto;
}
.p-course-point-crs__unit-figure:before {
    display: block;
    content: "";
    padding-top: 100%;
}
.p-course-point-crs__unit-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"; /*IE*/
    object-position: 50%;
    border-radius: 50%;
}
.p-course-point-crs__unit-inner {
    width: 100%;
    text-align: center;
    padding-top: 1.2rem;
}
.p-course-point-crs__unit-title {
    font-size: 1.2rem;
    line-height: 1.4;
    color: #353535 !important;
}
.p-course-point-crs .slick-track {
    margin: 0;
}
.p-course-point-crs .slick-arrow:before {
    font-family: "FontAwesome";
    color: #006dba;
    font-size: 2.4rem;
    opacity: 1;
}
.p-course-point-crs .slick-prev {
    left: 0;
}
.p-course-point-crs .slick-prev:before {
    content: "\f0d9";
}
.p-course-point-crs .slick-next {
    right: 0;
}
.p-course-point-crs .slick-next:before {
    content: "\f0da";
}
@media (min-width: 37.5em) {
    .p-course-point-crs__title {
        font-size: 1.8rem;
    }
    .p-course-point-crs__unit {
        padding: 0 1rem;
    }
    .p-course-point-crs__unit-title {
        font-size: 1.4rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-point-crs {
        margin-bottom: 8rem;
    }
    .p-course-point-crs__inner {
        padding: 0 5px;
    }
    .p-course-point-crs__title {
        font-size: 2rem;
        margin-bottom: 2.5rem;
    }
    .p-course-point-crs__unit {
        padding: 0 1rem;
    }
    .p-course-point-crs .slick-prev {
        left: -1.5rem;
    }
    .p-course-point-crs .slick-next {
        right: -1.5rem;
    }
}

/* Start Goll フラグ
====================================== */
.p-course-flag {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 30rem;
    height: 4rem;
    background-color: #004ea2;
    color: #fff;
    border-radius: 4px;
    text-align: center;
    margin: 0 auto;
    font-size: 2rem;
}
.p-course-flag:before {
    margin-right: 1rem;
}
@media (min-width: 37.5em) {
    .p-course-flag {
        height: 5rem;
        font-size: 2.2rem;
    }
}
@media (min-width: 48em) {
    .p-course-flag {
        font-size: 2.6rem;
    }
}

/* 行動途中の省略
====================================== */
.p-course-abbreviation {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 7rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.p-course-abbreviation--posi-right {
    justify-content: flex-end;
}
.p-course-abbreviation--way-s-shape {
    background-image: url("/res/image/course/img_course_way.svg#s-shape");
}
.p-course-abbreviation--way-curve {
    background-image: url("/res/image/course/img_course_way.svg#curve");
}
.p-course-abbreviation--way-spin {
    background-image: url("/res/image/course/img_course_way.svg#spin");
}
.p-course-abbreviation__lead {
    width: 50%;
    font-size: 1.2rem;
    line-height: 1.8;
}
.p-course-abbreviation__lead--posi-right {
    padding-left: 3rem;
}
.p-course-abbreviation__lead--posi-left {
    display: flex;
    justify-content: flex-end;
    padding-right: 3rem;
}
.p-course-abbreviation__illust {
    position: absolute;
    z-index: 2;
}
.p-course-abbreviation__illust--travel-bag {
    width: 6rem;
    left: calc(50% - 7rem);
    transform: translateX(-50%);
    bottom: 0;
}
.p-course-abbreviation__illust--zori {
    width: 6rem;
    right: calc(50% - 7rem);
    transform: translateX(50%);
}
.p-course-abbreviation__illust--sisa-right, .p-course-abbreviation__illust--sisa-left {
    width: 6rem;
    left: calc(50% - 7rem);
    transform: translateX(-50%) rotate(-12deg);
    top: 0;
}
.p-course-abbreviation__illust--yasinoki {
    width: 6rem;
    right: calc(50% - 7rem);
    transform: translateX(50%);
}
.p-course-abbreviation__illust--sango {
    width: 6rem;
    right: calc(50% - 7rem);
    transform: translateX(50%);
}
.p-course-abbreviation__illust--sakana {
    width: 4rem;
    left: calc(50% - 5rem);
    transform: translateX(-50%);
}
.p-course-abbreviation__illust--pain {
    width: 6rem;
    right: calc(50% - 7rem);
    transform: translateX(50%) rotate(45deg);
}
.p-course-abbreviation__illust--hana {
    width: 4rem;
    left: calc(50% - 5rem);
    transform: translateX(-50%);
}
.p-course-abbreviation__illust--haibisukasu {
    width: 4rem;
    left: calc(50% - 5rem);
    transform: translateX(-50%);
}
@media (min-width: 30em) {
    .p-course-abbreviation__illust--travel-bag {
        width: 7.5rem;
        left: calc(50% - 11rem);
    }
    .p-course-abbreviation__illust--zori {
        width: 7.5rem;
        right: calc(50% - 11rem);
    }
    .p-course-abbreviation__illust--sisa-right, .p-course-abbreviation__illust--sisa-left {
        width: 7.5rem;
        left: calc(50% - 10rem);
    }
    .p-course-abbreviation__illust--yasinoki {
        width: 9rem;
        right: calc(50% - 11rem);
    }
    .p-course-abbreviation__illust--sango {
        width: 9rem;
        right: calc(50% - 11rem);
    }
    .p-course-abbreviation__illust--sakana {
        width: 5rem;
        left: calc(50% - 10rem);
    }
    .p-course-abbreviation__illust--pain {
        width: 9rem;
        right: calc(50% - 11rem);
    }
    .p-course-abbreviation__illust--hana {
        width: 5rem;
        left: calc(50% - 10rem);
    }
    .p-course-abbreviation__illust--haibisukasu {
        width: 5rem;
        left: calc(50% - 10rem);
    }
}
@media (min-width: 48em) {
    .p-course-abbreviation {
        min-height: 11rem;
    }
    .p-course-abbreviation__lead {
        font-size: 1.4rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-abbreviation__lead--posi-right {
        padding-left: 5rem;
    }
    .p-course-abbreviation__lead--posi-left {
        padding-right: 5rem;
    }
}

/* 景勝地ボックス
====================================== */
.p-course-scenic-spots {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
}
.p-course-scenic-spots__header {
    width: 100%;
    margin: 1rem 0;
}
.p-course-scenic-spots__header > *:nth-last-child(n+2) {
    margin-bottom: 1rem;
}
.p-course-scenic-spots__gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 1.5rem;
}
.p-course-scenic-spots__gallery-wrap {
    width: calc(50% - 5px);
}
.p-course-scenic-spots__gallery-wrap:first-child {
    width: 100%;
}
.p-course-scenic-spots__gallery-wrap:nth-child(n+2) {
    margin-top: 1rem;
}
.p-course-scenic-spots__gallery-unit {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}
.p-course-scenic-spots__gallery-unit:before {
    display: block;
    content: "";
    padding-top: 66.575%; /*233*/
}
.p-course-scenic-spots__gallery-img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"; /*IE*/
    object-position: 50%;
}
.p-course-scenic-spots__overview {
    width: 100%;
}
.p-course-scenic-spots__overview > *:nth-last-child(n+2) {
    margin-bottom: 1rem;
}
.p-course-scenic-spots__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.p-course-scenic-spots__head-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background-color: #004ea2;
    color: #fff;
    border-radius: 50%;
    font-style: normal;
    font-size: 1.2rem;
    font-weight: bold;
}
.p-course-scenic-spots__head-number:before {
    counter-increment: number 1;
    content: counter(number) "";
}
.p-course-scenic-spots__head-number-optional {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background-color: #004ea2;
    color: #fff;
    border-radius: 50%;
    font-style: normal;
    font-size: 1.2rem;
    font-weight: bold;
}
.p-course-scenic-spots__head-title {
    width: calc(100% - 2.5rem);
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    color: #004ea2;
}
.p-course-scenic-spots__lead {
    font-size: 1.4rem;
    font-weight: bold;
    color: #22bcb8;
}
.p-course-scenic-spots__pre {
    font-size: 1.2rem;
    line-height: 1.8;
}
.p-course-scenic-spots__info {
    padding: 1rem;
    background-color: #def1fc;
}
.p-course-scenic-spots__info > *:nth-last-child(n+2) {
    margin-bottom: 5px;
}
.p-course-scenic-spots__info-unit {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: 1.2rem;
}
.p-course-scenic-spots__info-item {
    width: 4rem;
    font-weight: bold;
    color: #006dba;
}
.p-course-scenic-spots__info-data {
    width: calc(100% - 4.5rem);
}
@media (min-width: 37.5em) {
    .p-course-scenic-spots__gallery {
        width: 41.66666666%; /*350*/
        margin-bottom: 0;
    }
    .p-course-scenic-spots__overview {
        width: 55.95238095%; /*470*/
    }
    .p-course-scenic-spots__overview > *:nth-last-child(n+2) {
        margin-bottom: 1.5rem;
    }
}
@media (min-width: 48em) {
    .p-course-scenic-spots__header {
        margin: 1.5rem 0;
    }
    .p-course-scenic-spots__gallery {
        width: 100%;
        margin-bottom: 1.5rem;
    }
    .p-course-scenic-spots__overview {
        width: 100%;
    }
    .p-course-scenic-spots__head-number {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1.4rem;
    }
    .p-course-scenic-spots__head-number-optional {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1.4rem;
    }
    .p-course-scenic-spots__head-title {
        width: calc(100% - 3rem);
        font-size: 2.2rem;
    }
    .p-course-scenic-spots__lead {
        font-size: 1.6rem;
    }
    .p-course-scenic-spots__pre {
        font-size: 1.4rem;
    }
    .p-course-scenic-spots__info {
        padding: 1.4rem 2rem;
        background-color: #def1fc;
    }
    .p-course-scenic-spots__info > *:nth-last-child(n+2) {
        margin-bottom: 1rem;
    }
    .p-course-scenic-spots__info-unit {
        font-size: 1.4rem;
    }
}
@media (min-width: 60.625em) {
    .p-course-scenic-spots__gallery {
        width: 41.66666666%; /*350*/
        margin-bottom: 0;
    }
    .p-course-scenic-spots__overview {
        width: 55.95238095%; /*470*/
    }
}
@media (min-width: 64.0625em) {
    .p-course-scenic-spots__header {
        margin: 0 0 1.5rem;
    }
}

/* リンクボタン（スモール）
====================================== */
.p-course-btns-small {
    display: flex;
}
.p-course-btns-small--scenic-spots {
    justify-content: center;
}
.p-course-btns-small--rmd-spot {
    justify-content: center;
}
.p-course-btns-small__wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    padding: 2px;
    width: 100%;
}
.p-course-btns-small__wrap--border-ocvb-blue {
    border: solid 1px #004ea2;
}
.p-course-btns-small__wrap--border-be-okinawa-blue {
    border: solid 1px #006dba;
}
.p-course-btns-small__inner {
    width: 100%;
    color: #fff !important;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 1rem;
    border-radius: 3px;
    text-align: center;
}
.p-course-btns-small__inner--bg-ocvb-blue {
    background-color: #004ea2;
}
.p-course-btns-small__inner--bg-be-okinawa-blue {
    background-color: #006dba;
}
.p-course-btns-small__inner.u-icon-aft {
    padding-right: 1.5rem;
}
.p-course-btns-small__inner.u-icon-aft:after {
    position: absolute;
    right: 1rem;
}
@media (min-width: 20em) {
    .p-course-btns-small__wrap {
        width: auto;
    }
    .p-course-btns-small__inner--bg-ocvb-blue {
        min-width: 12rem;
    }
    .p-course-btns-small__inner--bg-be-okinawa-blue {
        min-width: 22.4rem;
    }
}
@media (min-width: 37.5em) {
    .p-course-btns-small--scenic-spots {
        justify-content: flex-end;
    }
}
@media (min-width: 48em) {
    .p-course-btns-small--scenic-spots {
        justify-content: center;
    }
    .p-course-btns-small__inner {
        font-size: 1.4rem;
        padding: 1rem 2rem;
    }
    .p-course-btns-small__inner.u-icon-aft {
        padding: 1rem 2.5rem 1rem 2rem;
    }
}
@media (min-width: 60.625em) {
    .p-course-btns-small--scenic-spots {
        justify-content: flex-end;
    }
}

/* その他のおすすめスポット
====================================== */
.p-course-rmd-spot {
    width: 100%;
    border: solid 1px #ededed;
    background-color: #fff;
    padding: 1.5rem 1rem;
    margin: 0 auto;
}
.p-course-rmd-spot > *:nth-last-child(n+2) {
    margin-bottom: 1.5rem;
}
.p-course-rmd-spot--clm2 {
    width: 100%;
}
.p-course-rmd-spot--clm2 .p-course-rmd-spot__list {
    margin-bottom: 4rem;
}
.p-course-rmd-spot--clm3 {
    width: 100%;
}
.p-course-rmd-spot--clm3 .p-course-rmd-spot__list {
    margin-bottom: 4rem;
}
.p-course-rmd-spot__title {
    width: 100%;
    text-align: center;
    color: #006dba;
}
.p-course-rmd-spot__title-main {
    display: block;
    width: 100%;
    font-size: 2.4rem;
}
.p-course-rmd-spot__title-sub {
    display: block;
    width: 100%;
    font-size: 1.2rem;
    font-weight: normal;
}
.p-course-rmd-spot__lead {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
}
.p-course-rmd-spot__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}
.p-course-rmd-spot__list .slick-dots {
    bottom: -3rem;
}
.p-course-rmd-spot__unit {
    width: 100%;
    padding: 5px;
}
.p-course-rmd-spot__unit-wrap {
    display: block;
    width: 100%;
    color: #353535 !important;
}
.p-course-rmd-spot__unit-wrap--link-invalid {
    pointer-events: none;
}
.p-course-rmd-spot__unit-canvas {
    width: 100%;
    margin-bottom: 1rem;
}
.p-course-rmd-spot__unit-figure {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
}
.p-course-rmd-spot__unit-figure:before {
    display: block;
    content: "";
    padding-top: 66.575%; /*233*/
}
.p-course-rmd-spot__unit-img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"; /*IE*/
    object-position: 50%;
}
.p-course-rmd-spot__unit-frame-left {
    position: absolute;
    left: -4px;
    top: -4px;
    z-index: 2;
    width: 2.2rem;
    height: 2.2rem;
    background: no-repeat center/contain url("/res/image/course/img_course_picture_frame.svg#left-top");
}
.p-course-rmd-spot__unit-frame-right {
    position: absolute;
    right: -4px;
    bottom: -4px;
    z-index: 2;
    width: 2.2rem;
    height: 2.2rem;
    background: no-repeat center/contain url("/res/image/course/img_course_picture_frame.svg#right-bottom");
}
.p-course-rmd-spot__unit-overview {
    width: 100%;
}
.p-course-rmd-spot__unit-overview > *:nth-last-child(n+2) {
    margin-bottom: 1rem;
}
.p-course-rmd-spot__unit-title {
    font-size: 1.4rem;
    font-weight: bold;
    color: #006dba !important;
}
.p-course-rmd-spot__unit-pre {
    font-size: 1.2rem;
    line-height: 1.8;
}
.p-course-rmd-spot__unit-disc {
    background-color: #def1fc;
    padding: 1rem;
}
.p-course-rmd-spot__unit-disc-item {
    font-size: 1.2rem;
}
.p-course-rmd-spot__unit-disc-item:before {
    margin-right: 5px;
}
.p-course-rmd-spot__unit-disc-item:nth-last-child(n+2) {
    margin-bottom: 5px;
}
.p-course-rmd-spot__hr {
    border: dashed 1px #ededed;
}
.p-course-rmd-spot--clm2 .slick-list {
    padding: 0 5% 0 0 !important;
}
.p-course-rmd-spot--clm3 .slick-list {
    padding: 0 5% 0 0 !important;
}
@media (min-width: 25.875em) {
    .p-course-rmd-spot--clm1 .p-course-rmd-spot__unit-wrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .p-course-rmd-spot--clm1 .p-course-rmd-spot__unit-canvas {
        width: 29%;
        margin-bottom: 0;
    }
    .p-course-rmd-spot--clm1 .p-course-rmd-spot__unit-overview {
        width: 68%;
    }
    .p-course-rmd-spot--clm2 .p-course-rmd-spot__list {
        padding: 0 !important;
        margin-bottom: 1.5rem;
    }
    .p-course-rmd-spot--clm2 .p-course-rmd-spot__unit {
        width: 50%;
    }
}
@media (min-width: 30em) {
    .p-course-rmd-spot--clm2 .p-course-rmd-spot__unit {
        padding: 1rem;
    }
    .p-course-rmd-spot--clm3 .p-course-rmd-spot__unit {
        width: 33.33333333%;
        padding: 1rem;
    }
}
@media (min-width: 37.5em) {
    .p-course-rmd-spot--clm2 {
        width: 70%;
        max-width: 58rem;
    }
    .p-course-rmd-spot--clm3 .p-course-rmd-spot__list {
        margin-bottom: 4rem;
    }
}
@media (min-width: 48em) {
    .p-course-rmd-spot--clm2 {
        width: 100%;
        max-width: 100%;
    }
    .p-course-rmd-spot--clm3 .p-course-rmd-spot__list {
        margin-bottom: 4rem;
    }
    .p-course-rmd-spot__unit-title {
        font-size: 1.6rem;
    }
    .p-course-rmd-spot__unit-pre {
        font-size: 1.4rem;
    }
    .p-course-rmd-spot__unit-disc-item {
        font-size: 1.4rem;
    }
    .p-course-rmd-spot__unit-canvas {
        margin-bottom: 1.5rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-rmd-spot {
        padding: 2rem;
    }
    .p-course-rmd-spot > *:nth-last-child(n+2) {
        margin-bottom: 2rem;
    }
    .p-course-rmd-spot--clm2 {
        width: 70%;
        max-width: 58rem;
    }
    .p-course-rmd-spot--clm3 .p-course-rmd-spot__list {
        padding: 0 !important;
        margin-bottom: 2rem;
    }
}

/* コースマップ
====================================== */
.p-course-map {
    width: 100%;
}
.p-course-map__lead {
    font-size: 1.2rem;
    margin-bottom: 2rem;
}
.p-course-map__canvas {
    position: relative;
    width: 100%;
    height: auto;
}
.p-course-map__canvas:before {
    display: block;
    content: "";
    padding-top: 90%;
}
.p-course-map__canvas iframe {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    border: 0;
}
.p-course-map__overflow {
    width: 100%;
    height: 100%;
    border: solid 1px #ededed;
    border-top: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.p-course-map__overflow::-webkit-scrollbar {
    display: none;
}
.p-course-map__controller {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    width: 100%;
    min-width: 84rem;
}
.p-course-map__controller-unit {
    width: auto;
}
.p-course-map__controller-btn {
    padding: 1.2rem;
}
.p-course-map__controller-btn.is--active {
    background-color: #def1fc;
}
.p-course-map__controller-inner {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.p-course-map__controller-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background-color: #004ea2;
    color: #fff;
    font-style: normal;
    font-size: 1rem;
    font-weight: bold;
    border-radius: 50%;
    margin-right: 4px;
}
.p-course-map__controller-text {
    white-space: nowrap;
    font-size: 1.2rem;
}
.p-course-map__balloon {
    width: 100%;
}
.p-course-map__balloon > *:nth-last-child(n+2) {
    margin-bottom: 1rem;
}
.p-course-map__balloon-figure {
    position: relative;
    display: block;
    width: 22rem;
    height: auto;
}
.p-course-map__balloon-figure:before {
    display: block;
    content: "";
    padding-top: 66.82%;
}
.p-course-map__balloon-img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;"; /*IE*/
    object-position: 50% 0;
}
.p-course-map__balloon-title {
    font-size: 1.2rem;
    font-weight: bold;
}
.p-course-map__balloon-tel {
    text-align: right;
    font-size: 1.3rem;
}
.p-course-map__balloon-btn {
    width: 100%;
}
.p-course-map__balloon-btn-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background-color: #004ea2;
    padding: 1.2rem;
    border-radius: 4px;
    color: #fff !important;
    font-size: 1.4rem;
    font-weight: bold;
}
.p-course-map__balloon-btn-icon:before {
    margin-right: 5px;
}
@media (min-width: 37.5em) {
    .p-course-map__canvas:before {
        padding-top: 70%;
    }
}
@media (min-width: 48em) {
    .p-course-map__controller-number {
        width: 2.2rem;
        height: 2.2rem;
        font-size: 1.2rem;
    }
}
@media (min-width: 64.0625em) {
    .p-course-map__lead {
        font-size: 1.4rem;
    }
    .p-course-map__balloon-title {
        font-size: 1.4rem;
    }
    .p-course-map__controller-text {
        font-size: 1.4rem;
    }
}
@media (min-width: 66.875em) {
    .p-course-map__overflow {
        overflow: visible;
    }
    .p-course-map__controller {
        flex-wrap: wrap;
        min-width: auto;
    }
    .p-course-map__controller-btn {
        padding: 1.5rem 2rem;
    }
}

/* Google Map Api
====================================== */
.gm-style .gm-style-iw {
    max-width: 25rem !important;
}

/* アンカー位置調整
====================================== */
.p-course-content-anchor {
    position: relative;
    z-index: -1;
    padding-top: 8rem;
    margin-top: -8rem;
    margin-bottom: 0 !important;
}
/*# sourceMappingURL=detail-course.css.map */