.feature-detail-page {
    background: #f8f6f4
}

.feature-detail-page .first-view-wrap {
    margin-bottom: 24px;
    padding-bottom: 32px;
    word-break: break-all
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap {
        padding-bottom: 18px
    }
}

.feature-detail-page .first-view-wrap #firstView {
    margin-bottom: 0;
    position: relative
}

.feature-detail-page .first-view-wrap #firstView .first-view-image {
    margin: 0 auto;
    max-width: 100%;
    overflow: hidden;
    position: relative
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap #firstView .first-view-image {
        height: 16vh
    }
}

@media print,
screen and (min-width:769px) {
    .feature-detail-page .first-view-wrap #firstView .first-view-image {
        height: 250px
    }
}

.feature-detail-page .first-view-wrap #firstView .first-view-image.no-first-view-image {
    height: 26px
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap #firstView .first-view-image.no-first-view-image {
        padding-bottom: 0
    }
}

.feature-detail-page .first-view-wrap #firstView .first-view-image img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    position: absolute;
    top: 0;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap #firstView .feature-title-wrap {
        font-size: 18px
    }
}

.feature-detail-page .first-view-wrap #firstView .feature-title-wrap.full {
    bottom: auto;
    display: block;
    left: 0;
    position: relative;
    right: 0;
    top: 0
}

.feature-detail-page .first-view-wrap #firstView .feature-title-wrap.full span {
    display: block;
    margin: 0 auto;
    max-width: 1140px;
    width: 100%
}

.feature-detail-page .first-view-wrap #firstView .feature-title-wrap h1 {
    background: url(../images/parts_03.png) no-repeat 20px 15px #eeebd7;
    background-size: 25px auto;
    font-size: 24px;
    font-weight: 400;
    margin: 10px 0;
    padding: 10px 20px 10px 55px
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap #firstView .feature-title-wrap h1 {
        background-size: 15px auto;
        font-size: 22px;
        padding: 6px 13px 6px 45px
    }
}

.feature-detail-page .first-view-wrap .feature-descrition {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap .feature-descrition {
        font-size: 13px
    }
}

.feature-detail-page .first-view-wrap .feature-descrition a {
    color: #930b11
}

.feature-detail-page .first-view-wrap .section-index {
    margin: 20px 0
}

.feature-detail-page .first-view-wrap .section-index .index-box {
    background: #eeebd7;
    border-radius: 15px;
    margin: 0 auto;
    max-width: 1000px;
    width: 80%
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap .section-index .index-box {
        width: 100%
    }
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content {
    padding: 20px 20px 10px
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-title {
    background: url(../images/parts_02.png) no-repeat 0;
    background-size: 13px;
    padding-left: 20px
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list {
    margin: 20px 0 5px;
    overflow: hidden;
    padding-left: 40px
}

@media screen and (max-width:768px) {
    .feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list {
        padding-left: 6px
    }
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list li {
    margin-bottom: 15px
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list li:last-child {
    margin-bottom: 0
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list li span {
    border-right: 2px solid #979797;
    color: #b7282e;
    display: block;
    font-size: 20px;
    line-height: 1;
    margin-right: 16px;
    min-width: 43px;
    padding-right: 16px
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-content .index-list li a {
    align-items: flex-start;
    display: flex;
    word-break: break-all
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-footer {
    border-top: 1px solid #f8f8f8;
    cursor: pointer;
    padding-bottom: 6px;
    padding-top: 6px
}

.feature-detail-page .first-view-wrap .section-index .index-box .index-box-footer .js-trigger-text {
    background: url(../images/parts_01.png) no-repeat 100%;
    background-size: 9px;
    font-size: 13px;
    padding-right: 24px
}

.feature-detail-page .first-view-wrap .section-index .index-box.open .js-trigger-text {
    background: url(../images/parts_01_02.png) no-repeat 100%;
    background-size: 9px
}

.feature-detail-page #contentSection {
    word-break: break-all
}

.feature-detail-page #contentSection .feature-block {
    margin: 0 0 65px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-block {
        margin: 0 0 40px
    }
}

.feature-detail-page #contentSection .template-block .feature-spots-title {
    border-left: 2px solid #930b11;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 22px;
    padding: 0 0 0 16px;
    text-align: left
}

.feature-detail-page #contentSection .image-slides .image-container {
    overflow: hidden;
    padding: 0 24px;
    width: 100%
}

.feature-detail-page #contentSection .image-slides .image-container .image-figure {
    background: #eeebd7
}

.feature-detail-page #contentSection .image-slider {
    margin-bottom: 24px;
    position: relative
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider {
        margin-bottom: 13px
    }
}

.feature-detail-page #contentSection .image-slider .content-slider-next,
.feature-detail-page #contentSection .image-slider .content-slider-prev {
    cursor: pointer;
    height: 47px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 47px;
    z-index: 10
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider .content-slider-next,
    .feature-detail-page #contentSection .image-slider .content-slider-prev {
        height: 38px;
        transform: translateY(-100%);
        width: 38px
    }
}

.feature-detail-page #contentSection .image-slider .content-slider-next:hover,
.feature-detail-page #contentSection .image-slider .content-slider-prev:hover {
    opacity: .5
}

.feature-detail-page #contentSection .image-slider .content-slider-prev {
    background: url(../images/ar_02.png) no-repeat 50%;
    background-size: 100%;
    left: 0
}

/* ▼【修正】スマホで左端（0）に合わせる（元は -20px でした） */
@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider .content-slider-prev {
        left: 0
    }
}

.feature-detail-page #contentSection .image-slider .content-slider-next {
    background: url(../images/ar_01.png) no-repeat 50%;
    background-size: 100%;
    right: 0
}

/* ▼【修正】スマホで右端（0）に合わせる（元は -20px でした） */
@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider .content-slider-next {
        right: 0
    }
}

.feature-detail-page #contentSection .image-slider .swiper-pagination-dot {
    text-align: center
}

.feature-detail-page #contentSection .image-slider .swiper-pagination-dot .swiper-pagination-bullet-active {
    background: #930b11
}

.feature-detail-page #contentSection .image-no-slider {
    margin-bottom: 24px;
    position: relative
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-no-slider {
        margin-left: -3%;
        margin-right: -3%
    }
}

.feature-detail-page #contentSection .image-slider-block {
    position: relative
}

.feature-detail-page #contentSection .image-slider-block .image-caption {
    color: #9e9d9b;
    font-size: 18px;
    line-height: 1;
    margin-top: 10px;
    text-align: center;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider-block .image-caption {
        font-size: 14px
    }
}

.content-slider-prev.swiper-button-disabled,
.content-slider-next.swiper-button-disabled {
    opacity: 0;
    pointer-events: none;
    cursor: default;
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .image-slider-block .image-caption {
        font-size: 14px
    }
}

.content-slider-prev.swiper-button-disabled,
.content-slider-next.swiper-button-disabled {
    opacity: 0;            
    pointer-events: none;  
    cursor: default; 
}

.feature-detail-page #contentSection .feature-content {
    font-size: 18px;
    margin-bottom: 16px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-content {
        font-size: 14px;
        margin-bottom: 14px
    }
}

.feature-detail-page #contentSection .feature-content table {
    border-collapse: collapse;
    margin: 30px 0
}

.feature-detail-page #contentSection .feature-content table td,
.feature-detail-page #contentSection .feature-content table th {
    border: 1px solid #bababa;
    padding: 8px
}

.feature-detail-page #contentSection .feature-content a {
    color: #930b11
}

.feature-detail-page #contentSection .feature-links {
    align-items: center;
    -moz-column-gap: 20px;
    column-gap: 20px;
    display: flex;
    flex-flow: row;
    justify-content: center;
    margin: 30px;
    max-width: 1000px;
    text-align: center;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-links {
        -moz-column-gap: 0;
        column-gap: 0;
        flex-flow: column;
        margin: 24px 0;
        row-gap: 16px
    }
}

.feature-detail-page #contentSection .feature-links a {
    font-size: 16px;
    min-width: 250px;
    width: 30%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-links a {
        width: 72%
    }
}

.feature-detail-page #contentSection .feature-files {
    margin: 40px 0 20px
}

.feature-detail-page #contentSection .feature-spots .feature-spots-list {
    -moz-column-gap: 16px;
    column-gap: 16px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 48px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .feature-spots-list {
        -moz-column-gap: 14px;
        column-gap: 14px;
        grid-template-columns: repeat(2, 1fr);
        padding: 0 3%;
        row-gap: 32px
    }
}

.feature-detail-page #contentSection .feature-spots .feature-spots-list li {
    overflow: hidden
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block {
    margin-bottom: 50px;
    position: relative
}

@media print,
screen and (min-width:769px) {
    .feature-detail-page #contentSection .feature-spots .feature-spot-block {
        margin-bottom: 80px
    }
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block.no-margin {
    margin-bottom: 0
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .spot_title {
    font-size: 18px;
    font-weight: 700
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-image {
    border-radius: 10px;
    margin-bottom: 14px;
    overflow: hidden;
    position: relative
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-image img {
    border-radius: 10px
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .caption_text {
    color: #9e9d9b;
    line-height: 1;
    margin: 10px 0;
    text-align: center
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-content {
    margin-bottom: 16px;
    padding: 0
}

@media print,
screen and (min-width:769px) {
    .feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-content {
        padding: 0 10px
    }
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-content .feature-spot-desc {
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 28px;
    overflow: hidden;
    text-overflow: ellipsis
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-content .feature-spot-desc {
        font-size: 12px;
        margin-bottom: 0
    }
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .feature-spot-content .feature-spot-desc.text-all-show {
    display: unset;
    overflow: visible;
    text-overflow: unset
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .spot-ext-link {
    bottom: 8px;
    left: 50%;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .feature-spot-block .spot-ext-link {
        padding: 0;
        width: 100%
    }
}

.feature-detail-page #contentSection .feature-spots .feature-spot-block .spot-ext-link .btn {
    display: block;
    margin: 0 auto;
    min-width: 200px;
    width: 80%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .feature-spot-block .spot-ext-link .btn {
        min-width: auto;
        width: 100%
    }
}

.feature-detail-page #contentSection .feature-spots .buttons-row {
    margin-top: 40px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .buttons-row {
        margin-top: 20px
    }
}

.feature-detail-page #contentSection .feature-spots .buttons-row .btn {
    width: 312px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-spots .buttons-row .btn {
        width: 250px
    }
}

.feature-detail-page #contentSection .feature-google-map {
    background: #fff;
    border-radius: 13px
}

.feature-detail-page #contentSection .feature-google-map .open-map {
    font-size: 18px;
    text-align: center
}

.feature-detail-page #contentSection .feature-google-map .open-map .google-map-btn {
    width: 100%
}

.feature-detail-page #contentSection .feature-google-map .open-map .google-map-btn span {
    display: inline-block;
    padding-right: 17px
}

.feature-detail-page #contentSection .feature-google-map .open-map .google-map-btn-plus span {
    background: url(../images/parts_01.png) no-repeat 100%;
    background-size: 12px auto
}

.feature-detail-page #contentSection .feature-google-map .open-map .google-map-btn-minus {
    display: none
}

.feature-detail-page #contentSection .feature-google-map .open-map .google-map-btn-minus span {
    background: url(../images/parts_01_02.png) no-repeat 100%;
    background-size: 12px auto
}

.feature-detail-page #contentSection .feature-google-map .googlemap {
    display: none;
    height: 80vh
}

.feature-detail-page #contentSection .feature-google-map .googlemap-text {
    color: #9e9d9b;
    font-size: 14px;
    margin-top: 8px;
    text-align: center
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .googlemap-text {
        font-size: 10px;
        text-align: left
    }
}

.feature-detail-page #contentSection .feature-google-map .buttons-row {
    margin-top: 36px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .buttons-row {
        margin-top: 20px
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots {
    display: none;
    height: 80vh
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots {
        height: 90vh
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots.show {
    border-top: 2px solid #dfdfdf;
    display: block;
    overflow: hidden;
    padding: 32px 32px 48px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots.show {
        flex-direction: column;
        margin-bottom: 15px;
        padding: 14px 14px 50px
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map {
    background-color: #eee;
    border-right-width: 0;
    height: 100%;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map {
        border: none;
        width: 100%
    }

    .feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map .googlemap {
        border: none;
        height: 100%;
        margin: 0
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map.google-map-markers .googlemap {
    border: none;
    height: 100%
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block {
    height: 100%;
    padding: 30px 0;
    position: relative;
    width: 370px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block {
        height: 200px;
        padding: 0;
        width: 100%
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-down,
.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-up {
    align-items: center;
    background-color: #fff;
    cursor: pointer;
    display: flex;
    height: 30px;
    justify-content: center;
    width: 100%
}

@media screen and (max-width:768px) {

    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-down,
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-up {
        display: none
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-up {
    border-bottom: 1px solid #bababa;
    left: 0;
    position: absolute;
    top: 0
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list-down {
    border-top: 1px solid #bababa;
    bottom: 0;
    left: 0
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list {
    height: 100%;
    overflow-y: auto;
    padding: 10px 20px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list {
        border-right: none;
        overflow-y: auto
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item {
    align-items: stretch;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    padding: 8px 0
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item:hover .spot-title {
    color: #50b2a9;
    opacity: .9
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item .spot-number {
    align-items: center;
    background-color: #930b11;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    height: 26px;
    justify-content: center;
    margin-right: 12px;
    width: 26px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item .spot-number {
        font-size: 12px;
        font-weight: 400;
        height: 20px;
        margin-right: 10px;
        width: 20px
    }
}

.feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item .spot-title {
    display: inline-block;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-google-map .google-map-spots .spot-list-block .spot-list .spot-list-item .spot-title {
        font-size: 14px
    }

    .feature-detail-page #contentSection #block3 .container2 {
        width: 100%
    }

    .feature-detail-page #contentSection #block3 .container2 .feature-content,
    .feature-detail-page #contentSection #block3 .container2 .feature-spots-title {
        margin: 0 auto 20px;
        width: 92%
    }
}

.feature-detail-page #contentSection .feature-youtube-wrap {
    background: #eeebd7;
    padding: 32px 0
}

.feature-detail-page #contentSection .feature-youtube-wrap .feature-youtube {
    aspect-ratio: 16/9;
    border-radius: 10px;
    margin-inline: auto;
    max-width: 760px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.feature-detail-page #contentSection .feature-youtube-wrap .feature-youtube iframe {
    height: 100%;
    width: 100%
}

.feature-detail-page #contentSection .feature-youtube-wrap .feature-youtube img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-youtube-wrap .feature-youtube {
        height: 200px;
        width: 92%
    }

    .feature-detail-page #contentSection #block4 .container2 {
        width: 100%
    }

    .feature-detail-page #contentSection #block4 .container2 .feature-content,
    .feature-detail-page #contentSection #block4 .container2 .feature-spots-title {
        margin: 0 auto 20px;
        width: 92%
    }
}

.feature-detail-page #contentSection .feature-messages {
    background: #eeebd7;
    margin-top: 60px;
    padding: 32px 0
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages {
        margin-top: 30px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list {
    display: flex;
    flex-direction: column
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list {
        padding: 0 3%
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li {
    margin-bottom: 20px
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message {
    align-items: flex-start;
    display: flex
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.left {
    justify-content: flex-start;
    margin-left: 0;
    margin-right: auto
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.left .feature-message-content:before {
    background: url(../images/parts_01.png) no-repeat 50%;
    background-size: 100%;
    content: "";
    display: block;
    height: 19px;
    left: -12px;
    position: absolute;
    top: 12px;
    width: 18px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.left .feature-message-content:before {
        top: 7px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.left .feature-message-person {
    margin-right: 30px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.left .feature-message-person {
        margin-right: 8px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.right {
    flex-direction: row-reverse;
    justify-content: flex-start;
    margin-left: auto;
    margin-right: 0
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.right .feature-message-content:before {
    background: url(../images/parts_02.png) no-repeat 50%;
    background-size: 100%;
    content: "";
    display: block;
    height: 19px;
    position: absolute;
    right: -12px;
    top: 12px;
    width: 18px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.right .feature-message-content:before {
        top: 7px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.right .feature-message-person {
    margin-left: 30px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message.right .feature-message-person {
        margin-left: 8px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-content {
    background: #fff;
    border-radius: 5px;
    flex: 1;
    max-width: calc(100% - 260px);
    padding: 20px;
    position: relative;
    width: auto
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-content {
        max-width: 100%;
        padding: 5px 13px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-person {
    align-items: center;
    display: flex;
    flex-flow: column;
    justify-content: center;
    text-align: center;
    width: 100px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-person {
        margin-right: 8px;
        width: 80px
    }
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-person .person-image {
    align-items: center;
    border-radius: 50%;
    display: flex;
    flex-direction: row;
    height: 60px;
    justify-content: center;
    overflow: hidden;
    width: 60px
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-person .person-image img {
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.feature-detail-page #contentSection .feature-messages .feature-message-list li .feature-message .feature-message-person .person-name {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 10px
}



.feature-detail-page #contentSection .section-column {
    margin: 70px 0
}

.feature-detail-page #contentSection .section-column .column {
    background: url(../images/column_parts_02.png) no-repeat 30px top #eeebd7;
    background-size: 85px auto;
    border-radius: 15px;
    margin: 0 auto;
    position: relative;
    width: 75%;
    z-index: 1
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column {
        background: url(../images/column_parts_02.png) no-repeat 18px top #eeebd7;
        background-size: 80px auto;
        width: 100%
    }
}

.feature-detail-page #contentSection .section-column .column:before {
    background: url(../images/column_parts_01.png) no-repeat 50%;
    background-size: 100%;
    content: "";
    height: 113px;
    left: 78%;
    position: absolute;
    top: -30px;
    width: 268px;
    z-index: -1
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column:before {
        height: 60px;
        top: -23px;
        width: 134px
    }
}

.feature-detail-page #contentSection .section-column .column:after {
    background: url(../images/column_parts_01.png) no-repeat 50%;
    background-size: 100%;
    bottom: -30px;
    content: "";
    height: 113px;
    position: absolute;
    right: 78%;
    width: 268px;
    z-index: -1
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column:after {
        bottom: -23px;
        height: 60px;
        width: 134px
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content {
    padding: 28px;
    text-align: left
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content {
        padding: 16px
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-title {
    font-size: 20px;
    margin-bottom: 32px;
    padding-left: 134px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-title {
        font-size: 16px;
        margin-bottom: 16px;
        padding-left: 95px
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .image-article-wrap {
    display: flex
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content .image-article-wrap {
        flex-flow: column
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .image-article-wrap .column-content-image {
    margin-right: 30px;
    width: 230px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content .image-article-wrap .column-content-image {
        margin: 0 auto 20px
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .image-article-wrap .column-content-image img {
    width: 100%
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-text {
    flex: 1;
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 24px;
    word-break: break-all
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-text {
        font-size: 16px
    }
}

.feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-text .btn-area {
    margin-top: 40px
}

@media screen and (max-width:768px) {
    .feature-detail-page #contentSection .section-column .column .column-inner .column-content .column-content-text .btn-area {
        margin-top: 10px
    }
}

.btn-default {
    background: url(../images/ar.png) no-repeat 22px center !important;
    background-size: 14px auto !important;
    border: 3px solid #931a19 !important;
    border-radius: 100px;
    color: #931a19 !important;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    min-width: 200px;
    max-width: 100%;
    padding: 10px 30px 10px 50px !important;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    box-sizing: border-box;
}

/* スマホ表示用 */
@media screen and (max-width: 768px) {
    .btn-default {
        background: url(../images/ar.png) no-repeat 15px center !important;
        background-size: 9px auto !important;
        font-size: 14px;
        min-width: auto;
        padding: 10px 20px 10px 35px !important;
        width: 90%; /* スマホでは少し広めに */
        margin: 0 auto;
        display: block; /* 中央寄せしやすくする */
    }
}

body, 
.feature-detail-page,
.feature-detail-page h1, 
.feature-detail-page h2, 
.feature-detail-page h3, 
.feature-detail-page h4, 
.feature-detail-page h5, 
.feature-detail-page p,
.feature-detail-page span,
.feature-detail-page a,
.feature-detail-page .view-html,
.feature-detail-page .spot_title,
.feature-detail-page .index-list li p {
    font-family: "BIZ UDPMincho", serif !important;
}


body, html {
    overflow-x: hidden;
}

/* 追加 */
.feature-detail-page #contentSection .feature-google-map .google-map-spots {
  display: block !important;
}
.feature-detail-page #contentSection .feature-google-map .google-map-spots {
  height: auto !important;
}
.feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map {
  position: relative;
  height: 0 !important;
  padding-top: 75%;
  overflow: hidden;
}
.feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width:767px) {
  .feature-detail-page #contentSection .feature-google-map .google-map-spots .google-map {
    padding-top: 100%;
  }
}