.container, p {
	font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    color: #333;
}
p.small, p>.small {
    font-size: 12px;
    font-weight: 300;
}
p.big, p>.big {
    font-size: 16px;
}
.wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}
.img-border {
    display: block;
    border-radius: 20px;
}
.container img {
    vertical-align: top;
    max-width: 100%;
    height: auto;
}
.container a:hover {
    text-decoration: none;
}
.MainTitle {
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: bold;
}
.SubTitle {
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: bold;
}
.word {
    font-weight: 300;
}
.anc_target {
    position: absolute;
    top: -60px;
}

/* btn */
.link_btn {
    width: 100%;
    max-width: 250px;
    margin: 20px auto 0;
    border: 1px solid #5CA970;
    padding:  9px 0;
    border-radius: 10px;
    color: #5CA970;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}
.link_out {
    position: relative;
}
.link_out::after {
    content: '';
    display: inline-block;
    background: url('/images/kankou/world-heritage-dome/icon_link.svg') no-repeat center / 100%;
    width: 12px;
    height: 12px;
    margin-left: 8px;
    vertical-align: -2px;
}
.link_color {
    background: #0068B7;
    color: #fff;
}
.link_out.link_color::after {
    background-image: url('/images/kankou/expo2025/icon_link_w.svg');
}
.link_black {
    border: none;
    background: #000000;
    color: #FFFFFF;
}
.link_out.link_black::after {
    background-image: url('/images/kankou/world-heritage-dome/icon_link_w.svg');
}
.link_black:hover {
    opacity: 1;
    background: #FFFFFF;
    color: #000000;
}
.link_out.link_black:hover::after {
    background-image: url('/images/kankou/world-heritage-dome/icon_link_b.svg');
}
@media screen and (max-width: 1366px) {
    .wrap {
        width: 92%;
    }
}
@media screen and (max-width: 599px) {
    body.fixed {
        position: fixed!important;
    }
    .container, p {
        font-size: 13px;
    }
    p.big, p>.big {
        font-size: 14px;
    }
    .wrap {
        width: calc(100% - 15px * 2);
    }
    .link_out::after {
        margin-left: 5px;
    }
}


/* fv */
.fv {
    position: relative;
    overflow: hidden;
}
.fv::after {
    content: '';
    position: absolute;
    top: -1px;
    bottom: -1px;
    right: 0;
    left: 0;
    width: calc( 840px + (100% - 1200px)/2 );
    background-image: url('/images/kankou/world-heritage-dome/fv_bg.svg');
    background-position: top right;
    background-repeat: no-repeat;
    background-color: #F2F2F2;
    clip-path: polygon(0 0, 66% 0, 100% 100%, 0% 100%);
}
.fv_heading {
    position: absolute;
    width: 620px;
    height: 100%;
    z-index: 1;
    padding-top: 185px;
    box-sizing: border-box;
}
.fv_heading h1 {
    color: #fff;
    font-family: "BIZ UDPMincho", serif;
    font-weight: 700;
    line-height: 1;
}
.fv_heading h1 span {
    display: block;
}
.fv_heading .fv_txt01 {
    color: #fff;
    font-size: 30px;
    background: #1C7233;
    width: max-content;
    display: flex;
    align-items: center;
    column-gap: 10px;
    padding: 10px 15px;
    box-sizing: border-box;
    margin-bottom: 30px;
}
.fv_heading .fv_txt01 img {
    width: 1.14em;
}
.fv_heading .fv_txt02 {
    color: #1C7233;
    font-size: 80px;
    margin-bottom: 25px;
}
.fv_heading .fv_txt03 {
    color: #1C7233;
    font-size: 32px;
}
.fv_img img {
    width: 100%;
    height: 690px;
    object-fit: cover;
    object-position: center right;
}

.intro {
    margin-top: 109px;
}
.intro .MainTitle {
    color: #5CA970;
    font-size: 18px;
    line-height: 1;
    margin-bottom: 15px;
}
.intro p {
    color: #5CA970;
}
.intro p.small {
    margin-top: 10px;
}

@media screen and (max-width: 1120px) {
    .fv_heading .fv_txt01 {
        font-size: 26px;
    }
    .fv_heading .fv_txt02 {
        font-size: 68px;
    }
    .fv_heading .fv_txt03 {
        font-size: 28px;
    }
    .intro .MainTitle {
        font-size: 18px;
    }
}
@media screen and (max-width: 900px) {
    .fv_heading .fv_txt01 {
        font-size: 21px;
    }
    .fv_heading .fv_txt02 {
        font-size: 54px;
    }
    .fv_heading .fv_txt03 {
        font-size: 22px;
    }
    .intro .MainTitle {
        font-size: 16px;
    }
    .fv::after {
        width: 65%;
        background-size: cover;
        background-position: top center;
    }
    .fv_heading {
        width: 52%;
        padding-top: 8%;
    }
    .fv_img img {
        height: 520px;
    }
    .intro {
        margin-top: 16%;
    }
}
@media screen and (max-width: 599px) {
    .fv_heading {
        padding-top: 30px;
        width: 100%;
        height: auto;
    }
    .fv_heading .fv_txt01 {
        font-size: 22px;
        margin-bottom: 15px;
        padding: 8px 15px;
    }
    .fv_heading .fv_txt02 {
        font-size: 65px;
        margin-bottom: 15px;
    }
    .fv_heading .fv_txt03 {
        font-size: 24px;
    }
    .fv::after {
        display: none;
    }
    .fv_img {
        position: relative;
    }
    .fv_img::after {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: url('/images/kankou/world-heritage-dome/fv_bg_sp.svg') no-repeat center bottom / 100%;
    }
    .fv_img img {
        height: 580px;
        object-fit: cover;
        object-position: center;
    }
    .fv_heading h1 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .intro {
        margin-top: 0;
        background: #F2F2F2;
        padding: 40px 0;
    }
    .intro .MainTitle {
        font-size: 20px;
        text-align: center;
        margin-bottom: 20px;
    }
    .intro p {
        font-size: 14px;
    }
    .intro p.small {
        font-size: 12px;
    }
}
@media screen and (max-width: 374px) {
    .fv_heading .fv_txt01 {
        font-size: 5.86667vw;
        margin-bottom: 4vw;
        padding: 2.13334vw 4vw;
    }
    .fv_heading .fv_txt02 {
        font-size: 17.33334vw;
        margin-bottom: 4vw;
    }
    .fv_heading .fv_txt03 {
        font-size: 6.4vw;
    }
    .intro .MainTitle {
        font-size: 5.33334vw;
    }
}


/* menu */
.navbar {
    height: 92px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 60px;
}
.navbar li {
    width: 110px;
    font-size: 12px;
    line-height: 1.5;
    font-weight: 500;
}
.navbar li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.navbar li svg {
    transition: transform .2s ease;
}
.navbar li a:hover {
    opacity: 1;
    color: #5CA970;
}
.navbar li a:hover svg {
    fill: #5CA970;
    transform: translateY(-5px);
}
.navbar li span {
    display: block;
    margin-bottom: 2px;
}
#menu_bar.fixed {
    position: fixed;
    z-index: 4;
    top: 0;
    background: #fff;
    width: 100%;
    transition: all .3s ease-in-out;
    border-bottom: 1px solid #D1C9AE;
}
#menu_bar.fixed .wrap {
    width: 100%;
}
#menu_bar.fixed .navbar {
    height: 60px;
    gap: 0;
    width: 100%;
}
#menu_bar.fixed .navbar li {
    width: auto;
    padding: 0 20px;
    /* flex-grow: 1; */
}
#menu_bar.fixed .navbar li:not(:last-child) {
    border-right: 1px solid #F6F5F0;
}
#menu_bar.fixed .navbar li a {
    flex-direction: row;
    justify-content: center;
    color: #333;
}
#menu_bar.fixed .navbar li a br {
    display: none;
}
#menu_bar.fixed .navbar li span {
    margin-bottom: 0;
    margin-right: 8px;
}
#menu_bar.fixed .navbar li a:hover {
    color: #5CA970;
}
#menu_bar.fixed .navbar li a:hover svg {
    transform: none;
}
#menu_bar.fixed .navbar li svg {vertical-align: bottom;}
#menu_bar.fixed .navbar li:nth-child(1) svg {width: 18px; height: 20px;}
#menu_bar.fixed .navbar li:nth-child(2) svg {width: 23px; height: 18px;}
#menu_bar.fixed .navbar li:nth-child(3) svg {width: 18px; height: 18px;}
#menu_bar.fixed .navbar li:nth-child(4) svg {width: 17px; height: 20px;}
#menu_bar.fixed .navbar li:nth-child(5) svg {width: 19px; height: 17px;}
#menu_bar.fixed .navbar li:nth-child(6) svg {width: 14px; height: 20px;}
#menu_bar .logo {
    display: none;
    position: absolute;
    top: 10px;
    left: 1.4%;
}
#menu_bar.fixed .logo {
    display: block;
}
@media screen and (max-width: 1440px) {
    #menu_bar.fixed .wrap {
        max-height: 100%;
    }
    #menu_bar.fixed .navbar {
        width: calc(100% - 180px);
        justify-content: flex-end;
        margin-left: auto;
    }
    #menu_bar.fixed .navbar li {
        padding: 0 10px;
    }
}
@media screen and (max-width: 1120px) {
    #menu_bar.fixed .navbar li {
        padding: 0 7.5px;
    }
    #menu_bar.fixed .navbar li span {
        margin-right: 3px;
    }
}
@media screen and (max-width: 900px) {
    #menu_bar .wrap {
        width: 92%;
    }
    .navbar {
        gap: 25px;
    }
    #menu_bar.fixed .navbar li {
        padding: 0 5px;
    }
    #menu_bar.fixed .navbar li a {
        text-align: left;
    }
}
@media screen and (max-width: 599px) {
    .navbar {
        flex-wrap: wrap;
        height: auto;
        gap: 0;
    }
    .navbar li {
        width: calc(33.334vw - 1px);
    }
    .navbar li a {
        height: 86px;
        justify-content: center
    }
    .navbar li a:hover svg {
        transform: none;
    }
    .navbar li:nth-of-type(-n+3) {
        border-bottom: 1px solid #E5E1D0;
    }
    .navbar li:not(:nth-of-type(3n)) {
        border-right: 1px solid #E5E1D0;
    }
    #menu_bar.fixed {
        overflow-x: auto;
        white-space: nowrap;
        height: 65px;
    }
    #menu_bar.fixed .logo {
        left: 15px;
        top: 15px;
    }
    #menu_bar.fixed .navbar {
        display: none;
    }
}
@media screen and (max-width: 389px) {
    .navbar li {
        font-size: 3.2vw;
    }
}

#menu_bar .hamburger {
    display: none;
    background: none;
    border: none;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 12px;
    line-height: 1;
    font-weight: 500;
    cursor: pointer;
    background: #1C7233;
    border-radius: 50%;
    color: #FFFFFF;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    align-items: center;
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 9;
    width: 40px;
    height: 40px;
}
#menu_bar .hamburger span {
    display: block;
    width: 22px;
    height: 1px;
    background: #FFFFFF;
}
.side_menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 97%;
    max-width: 375px;
    height: 100vh;
    background: #fff;
    z-index: 1001;
    transition: right 0.3s ease;
}
.side_menu.open {
    right: 0;
}
.side_menu_inner {
    padding: 15px;
    height: 100%;
    box-sizing: border-box;
}
.nav_close {
    position: absolute;
    top: 27px;
    right: 15px;
    background: none;
    border: none;
    padding: 0;
    width: 17px;
    height: 17px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nav_close img {
    width: 17px;
    height: 17px;
}
.side_menu .navbar {
    margin-top: 10%;
    padding: 0 15px;
    height: 100%;
    flex-direction: column;
    justify-content: flex-start;
}
.side_menu .navbar li {
    width: 100%;
    border: none;
    border-bottom: 1px solid #F6F5F0;
}
.side_menu .navbar li a {
    font-size: 18px;
    flex-direction: row;
    justify-content: flex-start;
    column-gap: 20px;
    height: auto;
    padding: 28px 0;
}
.side_menu .navbar li a:hover {
    color: inherit;
}
.side_menu .navbar li span {
    margin: 0;
}
.side_menu .navbar li span img {
    vertical-align: bottom;
}

@media screen and (max-width: 599px) {
    #menu_bar.fixed .hamburger {
        display: flex;
    }
}
@media screen and (max-width: 389px) {
}



/* navigator */
.navigator {
    background: #FFE4B8;
    background: linear-gradient(120deg,rgba(255, 228, 184, 1) 0%, rgba(255, 212, 143, 1) 86%);
    position: relative;
    z-index: 0;
    overflow: hidden;
}
.navigator::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.4;
    background-image: url('/images/kankou/world-heritage-dome/stripe_bg.svg');
    z-index: -1;
}
.navigator::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 301px;
    height: 270px;
    background-image: url('/images/kankou/world-heritage-dome/navigator_bg_text.svg');
    z-index: -1;
}
.navigator .wrap {
    display: flex;
    align-items: center;
}
.navigator_img {
    width: 225px;
}
.navigator_img img {
    vertical-align: bottom;
}
.navigator_text {
    margin: 0 30px 0 35px;
}
.navigator_comment {
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    color: #5CA970;
    padding: 10px 15px;
    background: #FFFFFF;
    border-radius: 5px;
    margin-bottom: 22px;
    position: relative;
    display: inline-block;
}
.navigator_comment::before {
    content: '';
    position: absolute;
    left: -20px;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 17px 25px;
    border-color: transparent transparent #FFFFFF transparent;
}
.navigator_text .subTitle {
    color: #000000;
    display: flex;
    align-items: center;
    font-size: 16px;
    column-gap: 8px;
    margin-bottom: 11px;
}
.navigator_text .MainTitle {
    color: #000000;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 15px;
}
.navigator_text p {
    font-weight: 300;
    line-height: 2;
}
.navigator_link_list {
    width: 15%;
    max-width: 180px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-top: 80px;
}
.navigator_link_list .link_btn {
    font-size: 16px;
    border-radius: 100px;
    max-width: 180px;
    margin-top: 0;
    line-height: 1;
    padding: 14px 0;
}
.sns_list {
    width: 100%;
    background: #fff;
    border: 1px solid #000000;
    border-radius: 100px;
    margin: 10px auto 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 0;
    display: flex;
    column-gap: 15px;
    max-width: 180px;
}
.sns_list img {
    display: block;
}
@media screen and (max-width: 900px) {
    .navigator_img {
        width: 22%;
    }
    .navigator_text {
        margin: 0 15px 0 15px;
    }
    .navigator_comment {
        font-size: 16px;
    }
    .navigator_text .subTitle {
        font-size: 14px;
    }
    .navigator_text .MainTitle {
        font-size: 26px;
    }
    .navigator_link_list .link_btn {
        font-size: 14px;
    }
    .sns_list {
        column-gap: 4px;
    }
    .sns_list img {
        width: 25px;
    }
}
@media screen and (max-width: 599px) {
    .navigator {
        padding: 40px 0;
    }
    .navigator::after {
        display: none;
    }
    .navigator .wrap {
        display: block;
    }
    .navigator_text {
        margin: 0;
        text-align: center;
    }
    .navigator_comment {
        font-size: 18px;
        line-height: 26px;
        text-align: center;
        border-radius: 20px;
        padding: 15px 22px;
        width: 100%;
        max-width: 344px;
        box-sizing: border-box;
    }
    .navigator_comment span {
        position: relative;
        display: block;
    }
    .navigator_comment span::before, .navigator_comment span::after {
        content: '';
        position: absolute;
        height: 2px;
        width: 40px;
        background: #5CA970;
        bottom: 0;
    }
    .navigator_comment span::before {
        transform-origin: bottom right;
        transform: rotate(45deg);
        left: -0.75em;
    }
    .navigator_comment span::after {
        transform-origin: bottom left;
        transform: rotate(-45deg);
        right: -0.75em;
    }
    .navigator_comment::before {
        left: 50%;
        transform: translateX(-50%);
        bottom: -20px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 20px 10px 0 10px;
        border-color: #ffffff transparent transparent transparent;
    }
    .navigator_img {
        width: 160px;
        border-radius: 50%;
        border: 3px solid #FFFFFF;
        box-sizing: border-box;
        margin: 20px auto;
    }
    .navigator_text .subTitle {
        justify-content: center;
    }
    .navigator_text .MainTitle {
        text-align: center;
    }
    .navigator_text p {
        font-size: 13px;
        text-align: center;
    }
    .navigator_link_list {
        width: 100%;
        max-width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        column-gap: 10px;
        padding-top: 30px;
    }
    .navigator_link_list .link_btn {
        font-size: 16px;
        padding: 14px 0;
        width: calc(50% - 5px);
    }
    .navigator_link_list .link_btn::after {
        width: 15px;
        height: 15px;
    }
    .sns_list {
        margin-top: 0;
        column-gap: 15px;
        width: calc(50% - 5px);
    }
    .sns_list img {
        width: 30px;
    }
}
@media screen and (max-width: 374px) {
    .navigator_comment {
        font-size: 4.8vw;
    }
}


/* 巡り方 route */
.route {
    padding: 80px 0;
    position: relative;
}
.route .TxtArea {
    margin-bottom: 50px;
}
.route .TitleArea {
    position: relative;
    display: flex;
    align-items: flex-end;
    margin-bottom: 20px;
}
.route .TitleArea .SubTitle {
    font-size: 30px;
    color: #1C7233;
    margin-bottom: 20px;
    line-height: 1;
    letter-spacing: 0;
    display: block;
}
.route .TitleArea .MainTitle {
    font-size: 45px;
    color: #1C7233;
    letter-spacing: 4.5px;
    line-height: 1;
}
.route .TitleArea .MainTitle .big {
    font-size: 55px;
}
.route .TitleArea .MainTitle .color2 {
    color: #5CA970;
}
.route .TitleArea .TitleIllust {
    margin: 0 0 -5px 15px;
}
.route_map {
    background: url('/images/kankou/world-heritage-dome/route_bg.svg') no-repeat top center / cover;
}
.route_map .wrap {
    position: relative;
}
.route_group {
    display: flex;
    column-gap: 25px;
    margin-bottom: 40px;
}
.route_spot {
    opacity: 1;
    width: calc((100% - 25px * 4) / 5);
    max-width: 220px;
    height: 232px;
    border: 1px solid #5CA970;
    position: relative;
    box-sizing: border-box;
    border-radius: 30px;
    cursor: pointer;
    color: #5CA970;
    background: #FFFFFF;
    transition: all .2s ease;
}
.route_spot:hover, .route_spot.hover {
    opacity: 1;
    transform: scale(1.03);
    background: #5CA970;
    color: #FFFFFF;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
}
.route_spot:nth-child(even) {
    margin-top: 40px;
}
.route_spot img {
    display: block;
}
.route_spot .marker {
    position: absolute;
    left: 0;
    top: -10px;
    z-index: 3;
}
.route_spot .route_spot_img {
    border-radius: 30px 30px 0 0;
    height: 150px;
    object-fit: cover;
}
.route_spot .route_spot_text {
    padding: 15px 20px 0;
    font-size: 16px;
    line-height: 1.6;
}
.route_spot_main {
    justify-content: center;
}
.route_spot_main .route_spot {
    width: 100%;
    max-width: 800px;
    height: 270px;
    box-sizing: border-box;
    position: relative;
}
.route_spot_main .route_spot_img {
    width: 100%;
    height: 100%;
    border-radius: 30px;
}
.route_spot_main .route_spot_text {
    position: absolute;
    bottom: 0;
    padding: 0 34% 20px 30px;
    z-index: 0;
}
.route_spot_main .route_spot_text::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border-radius: 0 0 30px 30px;
    background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
}
.route_spot_main .route_spot_text .spot_title {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    color: #FFFFFF;
    margin-bottom: 10px;
}
.route_spot_main .route_spot_text .spot_text {
    color: #FFFFFF;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.route_spot_main .route_spot_btn {
    width: 196px;
    position: absolute;
    right: 30px;
    bottom: 20px;
    color: #FFFFFF;
    background: #000;
    border: 1px solid #FFFFFF;
    border-radius: 50px;
    font-size: 16px;
    line-height: 1;
    padding: 10px 15px;
    box-sizing: border-box;
}
.route_spot_main .route_spot:hover .route_spot_btn {
    border-color: #5CA970;
    background: #5CA970;
}
.route_comment {
    position: absolute;
    top: -10%;
    right: 0;
    z-index: -1;
}
.route_comment .route_comment_pop {
    position: absolute;
    width: 262px;
    height: 191px;
    background: url('/images/kankou/world-heritage-dome/route_ake_pop.svg') no-repeat top right / 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    top: -41%;
    left: -117%;
    text-align: center;
    padding-bottom: 10%;
    box-sizing: border-box;
}
.route_comment .route_comment_img {
    display: block;
}
@media screen and (max-width: 1200px) {
    .route_spot .route_spot_text {
        font-size: 14px;
    }
}
@media screen and (max-width: 1120px) {
    .route_spot {
        height: 195px;
    }
    .route_spot .route_spot_img {
        height: 65%;
    }
    .route_spot .route_spot_text {
        font-size: 13px;
        padding: 10px 10px 0;
    }
    .route_spot_main .route_spot_img {
        height: 100%;
    }
    .route_spot_main .route_spot_text {
        padding: 0 34% 20px 10px;
    }
    .route_comment .route_comment_pop {
        width: 231px;
        height: 166px;
        left: -95%;
    }
}
@media screen and (max-width: 900px) {
    .route .TitleArea .SubTitle {
        font-size: 24px;
    }
    .route .TitleArea .MainTitle {
        font-size: 36px;
    }
    .route .TitleArea .MainTitle .big {
        font-size: 48px;
    }
    .route_group {
        column-gap: 10px;
    }
    .route_spot {
        width: calc((100% - 10px * 4) / 5);
        height: 147px;
    }
    .route_spot .route_spot_text {
        font-size: 12px;
        padding: 6px 4px 0;
    }
    .route_spot_main .route_spot_text {
        padding: 0 34% 20px 6px;
    }
    .route_spot .route_spot_img {
        height: 50%;
    }
    .route_spot .marker {
        width: 35px;
    }
    .route_comment {
        width: 16%;
    }
    .route_comment .route_comment_pop {
        width: 179px;
        height: 127px;
        top: -44%;
        left: -101%;
        font-size: 10px;
    }
    .route_spot_main .route_spot_img {
        height: 100%;
    }
}
@media screen and (max-width: 599px) {
    .route {
        padding: 40px 0 0;
    }
    .route .TxtArea {
        margin-bottom: 15px;
    }
    .route .TitleArea {
        margin-bottom: 15px;
    }
    .route .TitleArea .SubTitle {
        font-size: 20px;
        margin-bottom: 10px;
    }
    .route .TitleArea .MainTitle {
        font-size: 30px;
        letter-spacing: 3px;
    }
    .route .TitleArea .MainTitle .big {
        font-size: 33px;
    }
    .route .TitleArea .TitleIllust {
        width: 77px;
        margin: 0;
    }
    .route_comment {
        width: 92%;
        position: relative;
        margin: auto;
    }
    .route_comment .route_comment_pop {
        position: unset;
        background-image: url('/images/kankou/world-heritage-dome/route_ake_pop_sp.svg');
        width: 240px;
        height: 102px;
        padding-bottom: 0;
        margin-bottom: 30px;
        font-size: 12px;
    }
    .route_comment .route_comment_img {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        max-width: 152px;
        width: 40%;
    }
    .route_map {
        padding-bottom: 60px;
        background: url('/images/kankou/world-heritage-dome/route_bg_sp.svg') no-repeat top center / auto 100%;
    }
    .route_group {
        flex-direction: column;
        row-gap: 15px;
        margin-bottom: 15px;
    }
    .route_group:last-child {
        margin-bottom: 0;
    }
    .route_spot {
        width: 100%;
        max-width: 100%;
        display: flex;
        height: 68px;
        align-items: center;
    }
    .route_spot::after {
        content: '';
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7.5px 0 7.5px 10px;
        border-color: transparent transparent transparent #5ca971;
    }
    .route_spot:nth-child(even) {
        margin-top: 0;
    }
    .route_spot .marker {
        width: 27px;
    }
    .route_spot .route_spot_img {
        border-radius: 30px 0 0 30px;
        width: 120px;
        height: 100%;
        object-fit: cover;
        flex-shrink: 0;
    }
    .route_spot .route_spot_text {
        padding: 0 25px 0 15px;
        font-size: 14px;
    }
    .route_spot_main .route_spot {
        height: 166px;
    }
    .route_spot_main .route_spot::after {
        display: none;
    }
    .route_spot_main .route_spot_img {
        border-radius: 30px;
        width: 100%;
        height: 100%;
    }
    .route_spot_main .route_spot_text {
        top: 0;
        padding: 25px 15px 0;
    }
    .route_spot_main .route_spot_text::after {
        background: #000;
        opacity: 0.4;
        border-radius: 30px;
    }
    .route_spot_main .route_spot_text .spot_title {
        font-size: 16px;
    }
    .route_spot_main .route_spot_text .spot_text {
        font-size: 12px;
        -webkit-line-clamp: 3;
    }
    .route_spot_main .route_spot_btn {
        position: unset;
        width: 100%;
        font-size: 12px;
        text-align: center;
        margin-top: 10px;
        background: #5CA970;
        border: none;
        color: #FFFFFF;
    }
}
@media screen and (max-width: 389px) {
    .route .TitleArea .MainTitle {
        display: block;
    }
    .route .TitleArea .TitleIllust {
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: -1;
    }
}
@media screen and (max-width: 374px) {
    .route_spot {
        height: 17.6vw;
    }
    .route_spot .route_spot_img {
        width: 32vw;
    }
    .route_spot .route_spot_text {
        font-size: 3.73334vw;
    }
    .route_spot_main .route_spot {
        height: 44.26667vw;
    }
    .route_spot_main .route_spot_img {
        width: 100%;
    }
    .route_spot_main .route_spot_text {
        padding: 6.66667vw 4vw 0;
    }
    .route_spot_main .route_spot_text .spot_title {
        font-size: 4.26667vw;
    }
    .route_spot_main .route_spot_text .spot_text {
        font-size: 3.2vw;
    }
    .route_spot_main .route_spot_btn {
        font-size: 3.2vw;
        margin-top: 2.66667vw;
        padding: 2.66667vw 4vw;
    }
}


/* popup */
.pop_btn {
	cursor: pointer;
}
.bgAll {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background: #000;
	opacity: 0.5;
	width: 100%;
	height: 100%;
	z-index: 10;
}
.popup {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 92%;
	max-width: 800px;
	height: 446px;
	background: #FFF;
    border: 1px solid #5CA970;
	z-index: 11;
	padding: 50px;
	border-radius: 30px;
	box-sizing: border-box;
}
.closeBtn {
    position: absolute;
    right: 25px;
    top: 25px;
}
.popup .closeBtn:hover {
	cursor: pointer;
	opacity: 0.8;
}
.popup .popupWrap {
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	width: 100%;
    height: 100%;
}
.popup .pop_txt {
    width: 46%;
    max-width: 320px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.popup .pop_ttl {
    color: #5CA970;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 20px;
    line-height: 1.3;
    min-height: 2.6em;
}
.popup .pop_img {
    width: 49%;
    max-width: 340px;
}
.popup .pop_comment {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.popup .pop_comment_text {
    background: #5CA970;
    border-radius: 30px;
    color: #FFFFFF;
    padding: 18px 15px;
    box-sizing: border-box;
    width: 210px;
    height: 96px;
    font-size: 13px;
    line-height: 1.6;
    position: relative;
}
.popup .pop_comment_text::before {
    content: '';
    position: absolute;
    background: url(/images/kankou/world-heritage-dome/bubble.svg) no-repeat top left / auto;
    width: 27px;
    height: 14px;
    bottom: 11px;
    left: -18px;
}
.pop_img .splide--nav {
    margin-top: 10px;
}
.pop_img .splide__slide img {
	width: 100%;
	height: auto;
	display: block;
}
@media screen and (max-width: 900px) {
    .popup .pop_comment_text {
        padding: 18px 12px;
        font-size: 12px;
    }
}
@media screen and (max-width: 599px) {
    .popup {
        padding: 30px 15px;
        height: auto;
    }
    .popup .popupWrap {
        display: block;
    }
    .popup .pop_txt {
        width: 100%;
        max-width: 100%;
    }
    .popup .pop_img {
        width: 100%;
        max-width: 100%;
        margin-bottom: 15px;
        min-height: 254px;
    }
    .popup .pop_img .splide-thumb .splide__track--nav>.splide__list>.splide__slide {
        border-width: 2px;
    }
    .popup .pop_ttl {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .popup .pop_comment {
        margin-top: 10px;
    }
    .popup .pop_comment_text {
        font-size: 13px;
        padding: 15px;
        width: auto;
        margin-left: 20px;
    }
    .closeBtn {
        top: 20px;
        right: 20px;
    }
}
@media screen and (max-width: 389px) {
    .popup .pop_img {
        min-height: 65.128vw
    }
}
@media screen and (max-width: 374px) {
    .popup .pop_comment_text {
        font-size: 3.346667vw;
        padding: 4vw;
    }
}


/* 歴史 story */ 
.story {
    background: url('/images/kankou/world-heritage-dome/story_bg.jpg') no-repeat top center / cover;
    position: relative;
    z-index: 0;
}
.story .wrap {
    position: relative;
    z-index: 1;
}
.story_intro {
    padding: 78px 0 40px;
    position: relative;
    text-align: center;
}
.story_intro::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #08350C;
    opacity: 0.65;
}
.story_intro .MainTitle {
    font-size: 55px;
    line-height: 1;
    color: #FFFFFF;
    margin-bottom: 25px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
.story_intro .SubTitle {
    font-size: 30px;
    line-height: 1;
    color: #FFFFFF;
    margin-bottom: 8px;
}
.story_intro .MainTitle ruby {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 7px;
}
.story_intro .MainTitle ruby rt {
    font-size: 12px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
.story_intro p {
    color: #FFFFFF;
}
.story_slider {
    padding: 60px 0 80px;
}
.story_slider .textArea {
    margin-bottom: 30px;
    text-align: center;
}
.story_slider .textArea .SubTitle {
    font-size: 32px;
    line-height: 1;
    color: #FFFFFF;
    margin-bottom: 25px;
}
.story_slider .textArea .SubTitle-p {
    font-size: 20px;
    line-height: 1;
    color: #FFFFFF;
}
.story_slider .textArea p {
    color: #FFFFFF;
}
.story .splide {
    position: relative;
    z-index: 1;
    padding-bottom: 80px;
}
.story .splide__track {
    overflow: visible;
}
.story .splide__slide {
    position: relative;
}
.story .splide__slide.no_img {
    width: 220px;
}
.story .splide__slide::before {
    content: '';
    background-color: #FFE4B8;
    height: 5px;
    position: absolute;
    top: 15.5%;
    width: calc(100% + 60px);
    z-index: -1;
}
.story .time {
    margin-bottom: 30px;
}
.story .time .year {
    font-family: "BIZ UDGothic", sans-serif;
    font-size: 23px;
    line-height: 1;
    font-weight: bold;
    color: #FFE4B8;
    margin-bottom: 20px;
}
.story .time p {
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
}
.story .time_info {
    display: flex;
    column-gap: 20px;
    min-height: 190px;
    align-items: center;
}
.story .time_info .item {
    width: 320px;
}
.story .time_info .detail {
    margin-top: 15px;
}
.story .time_info .detail .ttl {
    position: relative;
    margin-bottom: 10px;
    padding-left: 15px;
    color: #FFFFFF;
    font-weight: 500;
    line-height: 1.5;
}
.story .time_info .detail .ttl::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 10px;
    height: 10px;
    border-radius: 2px;
    background: #FFFFFF;
}
.story .time_info .detail p.txt {
    color: #FFFFFF;
    margin-bottom: 10px;
}
.story .time_info .detail .ttl,
.story .time_info .detail p.txt {
    font-size: 14px;
    line-height: 1.5;
}
.story .time_info .detail p.small {
    line-height: 1.3;
    color: #FFFFFF;
}
.story .splide__arrows {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 40px;
    width: 264px;
}
.story .splide__arrow {
    background: none;
    width: 92px;
    height: 40px;
    color: #FFFFFF;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    justify-content: space-between;
    opacity: 1;
}
.story .splide__arrow:disabled {
    opacity: 0.5;
}
@media screen and (max-width: 1120px) {
    .story_intro .SubTitle {
        font-size: 28px;
    }
    .story_intro .MainTitle {
        font-size: 50px;
    }
    .story_slider .textArea .SubTitle {
        font-size: 28px;
    }
    .story_slider .textArea .SubTitle-p {
        font-size: 18px;
    }
}
@media screen and (max-width: 599px) {
    .story {
        background-image: url('/images/kankou/world-heritage-dome/story_bg_sp.jpg');
    }
    .story_intro {
        padding: 40px 0 30px;
    }
    .story_intro .SubTitle {
        font-size: 20px;
        text-align: center;
        margin-bottom: 5px;
    }
    .story_intro .MainTitle {
        font-size: 35px;
        margin-bottom: 20px;
    }
    .story_intro .MainTitle ruby {
        row-gap: 1px;
    }
    .story_intro .MainTitle ruby rt {
        font-size: 10px;
    }
    .story_intro p {
        text-align: left;
    }
    .story_slider {
        padding: 40px 0;
    }
    .story_slider .textArea {
        margin-bottom: 40px;
    }
    .story_slider .textArea .SubTitle {
        font-size: 26px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    .story_slider .textArea .SubTitle-p {
        font-size: 14px;
        margin-bottom: 10px;
    }
    .story .time {
        margin-bottom: 20px;
    }
    .story .time .year {
        font-size: 23px;
        margin-bottom: 10px;
        min-height: 1em;
    }
    .story .time p {
        min-height: 1em;
    }
    .story .splide {
        padding-bottom: 46px;
    }
    .story .splide__arrows {
        width: 228px;
        height: 26px;
    }
    .story .splide__arrow {
        width: 84px;
        height: 26px;
        font-size: 16px;
    }
    .story .splide__arrow img {
        width: 26px;
    }
    .story .splide__slide::before {
        height: 4px;
        top: 13%;
    }
}
@media screen and (max-width: 374px) {
    .story_intro .SubTitle {
        font-size: 5.33334vw;
    }
    .story_intro .MainTitle {
        font-size: 9.33334vw;
        margin-bottom: 5.33334vw;
    }
    .story_intro .MainTitle ruby rt {
        font-size: 2.66667vw;
    }
    .story_slider .textArea .SubTitle {
        font-size: 6.933334vw;
        margin-bottom: 5.33334vw;
    }
    .story_slider .textArea .SubTitle-p {
        font-size: 3.733334vw;
    }
    .story .time {
        margin-bottom: 5.33334vw;
    }
    .story .time .year {
        font-size: 6.13334vw;
        margin-bottom: 2.66667vw;
    }
    .story .splide__slide::before {
        top: 16.5vw;
    }
    .story .time_info .item {
        width: 85.33334vw;
    }
}


/* 見どころポイント point */
.point {
    padding: 80px 0 100px;
    background-color: #4C9E61;
    position: relative;
    z-index: 0;
}
.point::before {
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url('/images/kankou/world-heritage-dome/point_bg1.svg'),url('/images/kankou/world-heritage-dome/point_bg2.svg');
    background-position: left top, right top;
    background-repeat: no-repeat;
    background-size: auto;
}
.point .TitleArea {
    margin-bottom: 50px;
}
.point .SubTitle {
    color: #FFE4B8;
    text-align: center;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 20px;
}
.point .MainTitle {
    color: #FFE4B8;
    font-size: 45px;
    line-height: 1;
    display: flex;
    column-gap: 5px;
    align-items: baseline;
    justify-content: center;
}
.point .MainTitle span {
    background: #FFFFFF;
    color: #4C9E61;
    font-size: 50px;
    padding: 8px;
}
.point .point_list .item {
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}
.point .point_list .item:last-child {
    margin-bottom: 0;
}
.point .point_list .item:nth-child(even) {
    flex-direction: row-reverse
}
.point .point_list .item .img {
    width: 48.5%;
    max-width: 580px;
}
.point .point_list .item .txt {
    width: 48.5%;
    max-width: 580px;
    position: relative;
    z-index: 1;
}
.point .point_list .item .item_ttl {
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: 400;
    color: #FFE4B8;
    font-size: 30px;
    line-height: 1;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}
.point .point_list .item .item_ttl span {
    padding-right: 20px;
}
.point .point_list .item .item_ttl::after {
	content: '';
    background: #FFE4B8;
    height: 2px;
    width: 100%;
    display: inline-block;
    position: absolute;
    top: calc(50% - 1px);
}
.point .point_list .item .txt p {
    line-height: 2;
    color: #FFFFFF;
    margin-bottom: 30px;
}
.point .point_list .item .txt .comment {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.point .point_list .item:nth-child(even) .txt .comment {
    flex-direction: row-reverse;
}
.point .point_list .item .txt .comment .comment_text {
    max-width: 400px;
    width: 69%;
    background: #FFFFFF;
    border-radius: 50px;
    padding: 30px 40px;
    box-sizing: border-box;
    position: relative;
}
.point .point_list .item .txt .comment .comment_text::before {
    content: '';
    position: absolute;
    background: url(/images/kankou/world-heritage-dome/bubbleWhite.svg) no-repeat top left / auto;
    width: 44px;
    height: 26px;
    bottom: 22px;
    right: -35px;
    z-index: -1;
}
.point .point_list .item:nth-child(even) .txt .comment .comment_text::before {
    transform: scaleX(-1);
    right: auto;
    left: -35px;
}
.point .point_list .item .txt .comment .comment_text .comment_sub {
    position: absolute;
    top: -13px;
    left: 0;
    background: url('/images/kankou/world-heritage-dome/point_comment_subbg.svg') no-repeat top left / 100%;
    color: #FFE4B8;
    font-size: 13px;
    line-height: 1;
    padding: 7px 17px 7px 24px;
}
.point .point_list .item .txt .comment .comment_text p {
    color: #1C7233;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 0;
}
.point .point_list .item .txt .comment .comment_img {
    max-width: 130px;
    width: 22.5%;
    border: 2px solid #FFFFFF;
    border-radius: 50%;
    box-sizing: border-box;
}
/* ぽよよん */
.poyoyon {
	opacity: 0;
	transform: translateX(50%);
}
.poyoyon.is-animated {
	animation: poyoyon 1s cubic-bezier(0.6, 1, 0.8, 1) forwards;
}
@keyframes poyoyon {
	0%   { transform: translateX(50%); opacity: 0; }
	50%  { transform: translateX(0); }
	75%  { transform: translateX(3.5%); }
	100% { transform: translateX(0);}
    20%,100% { opacity: 1; }
}
.poyoyon.right {
	opacity: 0;
	transform: translateX(-50%);
}
.poyoyon.right.is-animated {
	animation: poyoyonRight 1s cubic-bezier(0.6, 1, 0.8, 1) forwards;
}
@keyframes poyoyonRight {
	0%   { transform: translateX(-50%); opacity: 0; }
	50%  { transform: translateX(0); }
	75%  { transform: translateX(-3.5%); }
	100% { transform: translateX(0);}
    20%,100% { opacity: 1; }
}
@media screen and (max-width: 1120px) {
    .point .SubTitle {
        font-size: 28px;
    }
    .point .MainTitle {
        font-size: 40px;
    }
    .point .MainTitle span {
        font-size: 45px;
    }
    .point .point_list .item .item_ttl {
        font-size: 28px;
    }
}
@media screen and (max-width: 900px) {
    .point .point_list .item .item_ttl {
        font-size: 22px;
    }
    .point .point_list .item .item_ttl span {
        padding-right: 10px;
    }
    .point .point_list .item .txt .comment .comment_text {
        padding: 20px 15px;
    }
    .point .point_list .item .txt .comment .comment_text p {
        font-size: 14px;
    }
}
@media screen and (max-width: 599px) {
    .point {
        padding: 40px 0;
    }
    .point::before {
        background-size: 175px auto, 206px auto;
    }
    .point .TitleArea {
        margin-bottom: 40px;
    }
    .point .SubTitle {
        font-size: 20px;
        margin-bottom: 10px;
    }
    .point .MainTitle {
        font-size: 25px;
        column-gap: 3px;
    }
    .point .MainTitle span {
        font-size: 28px;
        padding: 5px;
    }
    .point .point_list .item {
        margin-bottom: 40px;
    }
    .point .point_list .item,
    .point .point_list .item:nth-child(even) {
        flex-direction: column;
    }
    .point .point_list .item .img,
    .point .point_list .item .txt {
        width: 100%;
        max-width: 100%;
    }
    .point .point_list .item .item_ttl {
        font-size: 22px;
    }
    .point .point_list .item .item_ttl::after {
        height: 1px;
    }
    .point .point_list .item .img {
        margin-bottom: 10px;
    }
    .point .point_list .item .item_ttl span {
        padding-right: 10px;
    }
    .point .point_list .item .txt p {
        font-size: 14px;
    }
    .point .point_list .item .txt .comment .comment_img {
        width: 80px;
    }
    .point .point_list .item .txt .comment .comment_text {
        padding: 20px 15px;
        flex-grow: 1;
        margin-right: 10px;
    }
    .point .point_list .item .txt .comment .comment_text::before {
        right: -12px;
        bottom: 10px;
    }
    .point .point_list .item:nth-child(even) .txt .comment .comment_text {
        margin-right: 0;
        margin-left: 10px;
    }
    .point .point_list .item:nth-child(even) .txt .comment .comment_text::before {
        left: -12px;
    }
    .point .point_list .item .txt .comment .comment_text p {
        font-size: 12px;
    }
}
@media screen and (max-width: 389px) {
    .point .MainTitle {
        column-gap: 1.07vw;
    }
    .point .MainTitle span {
        padding: 0.8vw;
    }
}
@media screen and (max-width: 374px) {
    .point .SubTitle {
        font-size: 5.33334vw;
    }
    .point .MainTitle {
        font-size: 6.66667vw;
    }
    .point .MainTitle span {
        font-size: 7.466667vw;
    }
    .point .point_list .item .item_ttl {
        font-size: 5.866667vw;
        letter-spacing: 0.5px;
    }
    .point .point_list .item .txt .comment .comment_text .comment_sub {
        font-size: 3.46667vw;
    }
    .point .point_list .item .txt .comment .comment_text p {
        font-size: 3.2vw;
    }
}

/* まめ知識 tips */
.tips {
    background-color: #B9EBC6;
    padding: 60px 0;
    position: relative;
    z-index: 0;
}
.tips::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: url('/images/kankou/world-heritage-dome/stripe_bg.svg');
    z-index: -1;
}
.tips .MainTitle {
    color: #1C7233;
    font-size: 26px;
    display: flex;
    column-gap: 10px;
    margin-bottom: 35px;
}
.tips .splide__track  {
    overflow: visible;
}
.tips .splide__list {
    padding: 10px 0;
}
.tips .splide__slide:nth-of-type(even) .card,
.tips .splide__slide:nth-of-type(even) .card_hover {
    transform: rotate(-5deg);
}
.tips .splide__slide:nth-of-type(odd) .card, 
.tips .splide__slide:nth-of-type(odd) .card_hover {
    transform: rotate(3deg);
}
.tips .splide__slide {
    transition: all .2s ease-in-out;
    position: relative;
    top: 0;
}
.tips .splide__slide:hover {
    top: -10px;
}
.tips .splide__slide .ttl {
    position: absolute;
    top: 25px;
    left: 30px;
}
.tips .splide__slide .txt {
    font-size: 23px;
    line-height: 40px;
}
.tips .card {
    background-image: url(/images/kankou/world-heritage-dome/tip_card_bg.svg);
    background-color: #5CA970;
    border-radius: 40px;
    width: 300px;
    height: 300px;
    padding: 30px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    z-index: 1;
}
.tips .card .txt {
    color: #FFE4B8;
}
.tips .card_hover {
    display: none;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    background-image: url(/images/kankou/world-heritage-dome/tip_card_bg_b.svg);
    background-color: #fff;
    border: 2px solid #5CA970;
    border-radius: 40px;
    width: 300px;
    height: 300px;
    padding: 30px;
    box-sizing: border-box;
    cursor: pointer;
}
.tips .card_hover .txt {
    color: #5CA970;
}
.card:focus + .card_hover {
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 599px) {
    .tips {
        padding: 40px 0;
    }
    .tips .MainTitle {
        font-size: 16px;
        column-gap: 4px;
        margin-bottom: 20px;
    }
}
@media screen and (max-width: 389px) {
    .tips .MainTitle {
        font-size: 4.1025vw;
    }
    .tips .MainTitle img {
        width: 1.56em;
    }
}
@media screen and (max-width: 374px) {
    .tips .card,
    .tips .card_hover {
        width: 220px;
        height: 220px;
        padding: 20px;
    }
    .tips .splide__slide .ttl {
        width: 45px;
        margin-bottom: 20px;
    }
    .tips .splide__slide .txt {
        font-size: 16px;
        line-height: 1.67;
    }
}


/* 旅色読者が選ぶ いちおし */
.ichioshi {
    padding: 80px 0;
    position: relative;
}
.ichioshi .TitleArea {
    text-align: center;
    margin-bottom: 60px;
}
.ichioshi .SubTitle {
    color: #EF9393;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 20px;
}
.ichioshi .MainTitle {
    color: #000000;
    font-size: 40px;
    line-height: 1;
    margin-bottom: 30px;
}
.ichioshi .MainTitle span {
    position: relative;
}
.ichioshi .MainTitle span::after {
    content: '';
    position: absolute;
    background: url('/images/kankou/world-heritage-dome/ichioshi_title_line.svg') no-repeat center / 100%;
    width: 100%;
    bottom: -0.5em;
    height: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.ichioshi_point {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
.ichioshi_point .point_list {
    width: calc((100% - 40px) / 2);
    display: flex;
    justify-content: space-between;
}
.ichioshi_point .point_list .point_img {
    max-width: 250px;
    width: 43.2%;
}
.ichioshi_point .point_list .point_text {
    max-width: 300px;
    width: 51.8%;
}
.ichioshi_point .point_list .point_ttl {
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 1;
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 6px;
    margin-top: 10px;
    margin-bottom: 20px;
}
.ichioshi_point .point_list .point_ttl span {
    background: #4C9E61;
    padding: 9px 10px;
}
.ichioshi_point .point_list .point_txt {
    font-weight: 300;
}
.tabiiro_readers {
    width: calc((100% - 40px) / 2);
    background: #F2F2F2;
    border-radius: 20px;
    margin-top: 12px;
    padding: 50px 40px;
    box-sizing: border-box;
    position: relative;
}
.tabiiro_readers::before {
    content: '';
    background: url('/images/kankou/world-heritage-dome/reader_top.svg') no-repeat left / auto 100%;
    position: absolute;
    top: -17px;
    left: 10px;
    width: 100%;
    height: 24px;
}
.tabiiro_readers::after {
    content: '';
    background: url('/images/kankou/world-heritage-dome/reader_tagger.svg') no-repeat left center / 100%;
    position: absolute;
    top: -15px;
    right: 40px;
    width: 50px;
    height: 65px;
}
.tabiiro_readers .reader_title {
    color: #5CA970;
    margin-bottom: 10px;
}
.tabiiro_readers .reader_inner {
    display: flex;
    justify-content: space-between;
}
.tabiiro_readers .reader_img {
    max-width: 85px;
    width: 17%;
    text-align: center;
}
.tabiiro_readers .reader_img img {
    width: 85px;
    border-radius: 50%;
    border: 1px solid #000000;
    box-sizing: border-box;
}
.tabiiro_readers .reader_img .reader_name span {
    font-size: 16px;
}
.tabiiro_readers .reader_intro {
    max-width: 395px;
    width: 79%;
    font-weight: 300;
}
.info_box {
    margin-top: 80px;
    padding: 60px;
    background: #F2F2F2;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.info_box .info_text {
    max-width: 690px;
    width: 64%;
}
.info_box .info_title {
    color: #D1C9AE;
    font-size: 28px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 5.6px;
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
}
.info_box .info_title span {
    padding-right: 20px;
}
.info_box .info_title::after {
    content: '';
    background: #D1C9AE;
    height: 1px;
    width: 100%;
    display: inline-block;
    position: absolute;
	top: calc(50% - 1px);
}
.info_box .info_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 28px 0;
    line-height: 1.5;
}
.info_box .info_list dt {
    font-size: 20px;
    line-height: 20px;
    display: flex;
    align-items: center;
    column-gap: 11px;
    width: 108px;
}
.info_box .info_list dd {
    width: calc(100% - 108px - 10%);
    font-size: 16px;
    position: relative;
}
.info_box .info_list dd:first-of-type {
    padding-bottom: 10px;
}
.info_box .info_list dd:last-child {
    margin-bottom: 0;
}
.info_box .info_list dd p.word {
    margin-top: 10px;
}
.info_box .link_out {
    font-size: 12px;
    color: #AF9D63;
    text-decoration: underline !important;
    display: inline-flex;
    align-items: center;
    position: absolute;
    right: 0;
    top: 100%;
}
.info_box .info_img {
    max-width: 350px;
    width: 32.5%;
}
@media screen and (max-width: 1120px) {
    .ichioshi .SubTitle {
        font-size: 28px;
    }
    .ichioshi .MainTitle {
        font-size: 37px;
    }
    .ichioshi_point .point_list .point_ttl {
        font-size: 18px;
    }
}
@media screen and (max-width: 900px) {
    .ichioshi_point {
        gap: 25px;
    }
    .ichioshi_point .point_list {
        width: calc((100% - 25px) / 2);
    }
    .ichioshi_point .point_list .point_ttl {
        font-size: 15px;
    }
    .tabiiro_readers .reader_img {
        width: 26%;
    }
    .tabiiro_readers .reader_intro {
        width: 68%;
    }
    .info_box .info_title {
        font-size: 24px;
    }
    .info_box .info_title span {
        padding-right: 10px;
    }
    .info_box .info_list dt {
        font-size: 18px;
        width: 99px;
    }
    .info_box .info_list dd {
        width: calc(100% - 99px - 8%);
    }
}
@media screen and (max-width: 599px) {
    .ichioshi {
        padding: 40px 0;
    }
    .ichioshi .TitleArea {
        margin-bottom: 40px;
    }
    .ichioshi .SubTitle {
        font-size: 20px;
        margin-bottom: 15px;
    }
    .ichioshi .MainTitle {
        font-size: 24px;
        margin-bottom: 15px;
    }
    .ichioshi_point {
        flex-direction: column;
        row-gap: 30px;
    }
    .ichioshi_point .point_list {
        width: 100%;
        display: block;
    }
    .ichioshi_point .point_list .point_ttl {
        color: #4C9E61;
        font-size: 18px;
        margin-bottom: 15px;
    }
    .ichioshi_point .point_list .point_text {
        display: flex;
        justify-content: space-between;
        width: 100%;
        max-width: 100%;
    }
    .ichioshi_point .point_list .point_txt {
        margin-right: 15px;
    }
    .ichioshi_point .point_list .point_img {
        width: 135px;
        flex-shrink: 0;
    }
    .ichioshi_point .point_list .point_img img {
        width: 135px;
        height: 160px;
        object-fit: cover;
    }
    .tabiiro_readers {
        margin-top: 40px;
        width: 100%;
        max-width: 100%;
        padding: 40px 15px 30px;
    }
    .tabiiro_readers::before {
        width: 205px;
        height: 20px;
        left: 0;
        top: -13px;
    }
    .tabiiro_readers::after {
        width: 30px;
        height: 39px;
        top: -10px;
        right: 16px;
    }
    .tabiiro_readers .reader_title {
        font-size: 14px;
    }
    .tabiiro_readers .reader_intro {
        font-size: 12px;
        line-height: 1.5;
    }
    .tabiiro_readers .reader_img {
        flex-shrink: 0;
        margin-right: 20px;
    }
    .tabiiro_readers .reader_intro {
        width: auto;
    }
    .info_box {
        margin-top: 40px;
        padding: 30px 15px;
        display: block;
        border: 1px solid #D1C9AE;
    }
    .info_box .info_title {
        font-size: 22px;
        margin-right: -15px;
        letter-spacing: 4.4px;
    }
    .info_box .info_list {
        display: block;
    }
    .info_box .info_list dt,
    .info_box .info_list dd {
        width: 100%;
    }
    .info_box .info_list dt {
        margin-bottom: 10px;
    }
    .info_box .info_list dd {
        margin-bottom: 20px;
        font-size: 14px;
    }
    .info_box .info_list dd p.word {
        font-size: 12px;
        line-height: 1.5;
        margin-top: 5px;
    }
}
@media screen and (max-width: 389px) {
    .ichioshi .MainTitle {
        font-size: 23px;
    }
    .ichioshi_point .point_list .point_txt {
        width: 58.5%;
    }
    .ichioshi_point .point_list .point_img {
        width: 37.5%;
    }
    .ichioshi_point .point_list .point_img img {
        width: 100%;
        height: auto;
    }
    .tabiiro_readers .reader_img {
        width: 26%;
    }
    .tabiiro_readers .reader_intro {
        width: 68%;
    }
}
@media screen and (max-width: 374px) {
    .ichioshi .SubTitle {
        font-size: 5.33334vw;
    }
    .ichioshi .MainTitle {
        font-size: 5.866667vw;
    }
    .ichioshi_point .point_list .point_ttl {
        font-size: 4.53334vw;
    }
    .info_box .info_title {
        font-size: 5.866667vw;
    }
}



/* おすすめの旅行プラン plan */
.plan {
    background-color: #F6F5F0;
    height: 100%;
    overflow: hidden;
    padding: 60px 0;
    position: relative;
}
.plan .TitleArea {
    margin-bottom: 20px;
}
.plan .TitleArea .Description {
    font-size: 13px;
    margin-top: 15px;
    font-weight: 300;
}
.plan .ranking-box-intermediate .text-link {
    text-decoration: underline;
    font-weight: 500;
}
.plan_recommend-list {
    display: flex;
    flex-wrap: wrap;
    margin: -10px;
}
.plan_recommend-item {
    background: #fff;
    padding: 30px 20px 20px;
    width: calc(50% - 20px);
    margin: 10px;
    border: 1px solid #D1C9AE;
    display: block;
    position: relative;
    box-sizing: border-box;
}
.plan_recommend-head {
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
}
.plan_recommend-row {
    display: flex;
}
.plan_recommend-body {
    flex: 2.56;
}
.plan_recommend-info_label {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    background: #E8A2A2;
    line-height: 1;
    padding: 5px 8px 6px;
    display: inline-flex;
    align-items: center;
    color: #fff;
    font-weight: 500;
    font-size: 11px;
    white-space: nowrap;
}
.plan_recommend-info_label:before {
    content: "";
    display: block;
    position: absolute;
    width: 14px;
    height: 100%;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    transform: translateX(-99.5%);
    background: linear-gradient(60deg, transparent 50%, #e8a2a2 52%);
}
.plan_recommend-info_label.label_new {
    right: 50px;
    padding: 5px 20px 6px 8px;
    background: #D1C9AE;
}
.plan_recommend-info_label.label_new:before {
    background: linear-gradient(60deg, transparent 50%, #D1C9AE 52%);
}
.plan_recommend-info_row {
    margin: 10px 0 10px 0;
}
.plan_recommend-info_row img {
    margin-right: 8px;
}
.plan_recommend-info_area {
    margin: 5px 0px;
    line-height: 1.4;
    font-weight: 500;
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #E8A2A2;
}
.plan_recommend-info_budget {
    margin: 5px 0px;
    line-height: 1.4;
    font-weight: 500;
    display: flex;
    align-items: center;
    font-size: 13px;
}
.plan_recommend-info-txt {
    font-size: 13px;
    line-height: 1.4;
    font-weight: 300;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
.plan_recommend-planner {
    display: flex;
    padding: 0;
    box-sizing: border-box;
    margin-top: 10px;
}
.plan_recommend-planner img {
    margin-right: 10px;
    width: 30px;
    height: 30px;
}
.plan_recommend-planner_name {
    font-weight: 500;
    font-size: 13px;
    line-height: 1.4;
}
.plan_recommend-planner_name small {
    font-size: 11px;
    display: block;
}
.plan_recommend-img {
    margin-left: 15px;
}
.plan_recommend-schedule {
    margin-top: 15px;
}
.plan_recommend-schedule_head {
    position: relative;
    margin-bottom: 5px;
}
.plan_recommend-schedule_head img {
    width: 75px;
}
.plan_recommend-schedule_head:after {
    content: "";
    display: block;
    position: absolute;
    height: 0;
    width: calc((100% - 85px)* 2);
    background: #E8A2A2;
    border-top: 4px dashed #fff;
    transform: scale(0.5);
    transform-origin: right;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.plan_recommend-schedule_destination {
    display: flex;
    align-items: center;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 8px;
    font-size: 15px;
}
.plan_recommend-schedule_destination:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background: #000;
    transform: rotate(45deg);
    margin-right: 5px;
}
.plan_recommend-schedule_destination small {
    font-weight: 400;
    align-self: flex-end;
    margin-left: 3px;
    font-size: 13px;
}
.plan_recommend-schedule_street {
    display: flex;
    margin: -5px;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    width: calc(100% + 5px);
}
.plan_recommend-schedule_street-item {
    margin: 5px;
    width: 33.333%;
    padding-right: 35px;
    position: relative;
    display: flex;
    align-items: flex-start;
    box-sizing: border-box;
    min-width: 234px;
}
.plan_recommend-schedule_street-item:not(:last-child):after {
    content: "";
    display: block;
    background: url(/images/plan/ranking/icon_arrow.svg) no-repeat center center / 100% auto;
    width: 28px;
    height: 11px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
.plan_recommend-schedule_street-item__body {
    margin-left: 10px;
}
.plan_recommend-schedule_street-item__label {
    background: #000;
    color: #fff;
    line-height: 1;
    padding: 2px 10px 3px;
    border-radius: 35px;
    font-size: 11px;
    font-weight: 500;
    margin-bottom: 6px;
    display: inline-block;
    transform: translateY(-2px);
}
.plan_recommend-schedule_street-item__shop {
    font-weight: 500;
    display: block;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.3px;
}
.plan_recommend-link {
    margin: 40px auto 0;
    width: 100%;
}
.plan_recommend-link img {
    margin-right: 10px;
}
.plan_recommend-link a {
    width: 380px;
    background: #5CA970;
    padding: 15px 0;
    border-radius: 10px;
    font-size: 16px;
    color: #fff;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
}
.plan_recommend .ContentsArea {
    position: relative;
}
.plan_recommend .ContentsArea::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 100%;
    height: 100px;
    background: #F6F5F0;
    opacity: 1;
    visibility: visible;
    transition: 0.3s;
}
.plan_recommend .ContentsArea.open {
    position: relative;
    margin-bottom: 0px;
}
.plan_recommend .ContentsArea.open::after {
    display: none;
}
.ContentsAreaMore {
    width: 100%;
    max-width: 300px;
    display: block;
    font-weight: 500;
    color: #333;
    font-size: 14px;
    text-align: center;
    padding: 10px 0;
    border: 1px solid #000;
    border-radius: 23px;
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translate(-50%,0);
    -webkit-transform: translate(-50%,0);
    -ms-transform: translate(-50%,0);
    z-index: 1;
    background-color: #fff;
    cursor: pointer;
}
.ContentsAreaMore:hover {
    opacity: .7;
}
.ContentsAreaMore span {
    font-size: 12px;
}
@media screen and (max-width: 599px) {
    .plan {
        padding: 40px 0;
    }
    .plan_recommend-list {
        flex-direction: column;
        margin: 0;
        row-gap: 10px;
    }
    .plan_recommend-item {
        width: 100%;
        margin: 0;
    }
    .plan_recommend-ttl {
        font-size: 14px;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }
    .plan_recommend-img {
        width: 130px;
        margin-left: 10px;
    }
    .plan_recommend-info_area, .plan_recommend-info_budget {
        font-size: 11px;
    }
    .plan_recommend-planner_name {
        font-size: 12px;
        line-height: 1.1;
    }
    .plan_recommend-link {
        margin-top: 20px;
        width: 100%;
    }
    .plan_recommend-link a {
        font-size: 14px;
        width: 100%;
    }
}


/* おすすめのモデルコース */
.modelcourse {
    max-width: calc(100% - 5px);
    border: 1px solid #000;
    background-color: #fff;
    margin-bottom: 65px;
    margin-right: 5px;
    -webkit-box-shadow: 5px 5px 0 0 #010101;
            box-shadow: 5px 5px 0 0 #010101;
    position: relative;
    overflow-x: hidden;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.modelcourse img {
    display: block;
    width: 100%;
    height: auto;
}
.modelcourse a {
    display: block;
    height: 500px;
    padding: 0 0 0 40px;
}
.modelcourse .LabelArea {
    height: 26px;
}
.modelcourse .LabelArea .LeftLabel {
    background-color: #030303;
    margin-left: 0;
    color: #fff;
    font-size: 12px;
    padding: 5px 9px 6px 10px;
    font-weight: 300;
}
.modelcourse .LabelArea .RightLabel {
    position: relative;
    float: right;
    padding: 0 42px 0 50px;
    background: #E8A2A2;
    color: #fff;
}
.modelcourse .LabelArea .RightLabel:before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    border: none;
    border-left: solid 15px #fff;
    border-top: solid 40px transparent;
}
.modelcourse .LabelArea .RightLabel .Text {
    font-size: 18px;
    color: #fff;
}
.modelcourse .UpperArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 96%;
}
.modelcourse .UpperArea .LeftArea {
    position: relative;
    width: 58.2%;
    margin-right: 7.2%;
}
.modelcourse .UpperArea .LeftArea .MainTitle {
    padding: 10px 0 0;
    min-height: 2lh;
    line-height: 1.3;
    font-size: 25px;
    width: unset;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.modelcourse .UpperArea .LeftArea .Prefecture {
    color: #E8A2A2;
    font-size: 13px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    margin-top: 10px;
}
.modelcourse .UpperArea .LeftArea .Prefecture img {
    width: 10px;
    display: inline-block;
    margin-right: 3px;
    vertical-align: middle;
    padding-bottom: 2px;
}
.modelcourse .UpperArea .LeftArea .Description {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.modelcourse .UpperArea .LeftArea .PlannerInfomation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 12px;
}
.modelcourse .UpperArea .LeftArea .PlannerInfomation .Picture img {
    width: 30px;
    padding-right: 11px;
    display: inline-block;
}
.modelcourse .UpperArea .LeftArea .PlannerInfomation .PlannerTitle {
    display: inline-block;
}
.modelcourse .UpperArea .LeftArea .PlannerInfomation .PlannerTitle .Profession {
    font-size: 11px;
    display: block;
}
.modelcourse .UpperArea .LeftArea .PlannerInfomation .PlannerTitle .Name {
    font-size: 15px;
    font-weight: 500;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
.modelcourse .UpperArea .RightArea {
    width: 34.6%;
    margin-top: 10px;
    height: 385px;
}
.modelcourse .ScheduleArea .Title .Main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 10px;
    font-size: 32px;
    padding-right: 5px;
    float: left;
    font-weight: 500;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.modelcourse .ScheduleArea .Title .Main:after {
    border-top: 1px #E8A2A2 dashed;
    margin-left: 12px;
    content: "";
    width: 362px;
    display: block;
}
.modelcourse .ScheduleArea .Destination {
    display: inline-block;
    font-weight: 500;
    vertical-align: top;
    padding-top: 0;
  }
  .modelcourse .ScheduleArea .Destination .Text {
    font-weight: 500;
    padding-top: 2px;
    vertical-align: top;
    font-size: 18px;
}
.modelcourse .ScheduleArea .Destination .Text::before {
    content: "◆ ";
    color: #0a0a0a;
    font-size: 14px;
}
.modelcourse .ScheduleArea .Destination span {
    font-size: 13px;
    font-weight: 300;
    padding-bottom: 20px;
    vertical-align: middle;
    padding-left: 2px;
}
.modelcourse .ScheduleArea .Street {
    font-size: 12px;
    padding-top: 16px;
    width: 590px;
}
.modelcourse .ScheduleArea .Street .StreetImage {
    display: inline-block;
    display: inline-block;
}
.modelcourse .ScheduleArea .Street .StreetImage img {
    width: 59px;
    height: 59px;
    display: inline-block;
    width: 59px;
    height: 59px;
    display: inline-block;
}
.modelcourse .ScheduleArea .Street .StepName {
    display: inline-block;
    width: 138px;
    vertical-align: top;
    padding-left: 5px;
}
.modelcourse .ScheduleArea .Street .StepName .Label {
    display: inline-block;
    margin-bottom: 4px;
    padding: 0 10px;
    border-radius: 15px;
    border: 1px solid;
    color: #fff;
    background-color: #000;
    font-size: 12px;
}
.modelcourse .ScheduleArea .Street .StepName .ShopName {
    display: block;
    width: 150px;
    font-size: 14px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.modelcourse .ScheduleArea .Arrows {
    vertical-align: top;
    padding-top: 10px;
    display: inline-block;
    font-size: 30px;
    padding-right: 8px;
    height: 40%;
}
.modelcourse .PlanDetail {
    display: block;
    font-size: 16px;
    text-align: right;
    text-decoration: underline;
    margin-top: 30px;
    margin-right: 35px;
}
.modelcourse .more_btn {
    display: none;
    visibility: unset;
}
@media screen and (max-width: 599px) {
    .modelcourse {
        margin-bottom: 46px;
        height: 437px;
        border: 1px solid #000;
        background-color: #fff;
        -webkit-box-shadow: 6px 6px 0 0 #000;
                box-shadow: 6px 6px 0 0 #000;
    }
    .modelcourse a {
      height: 428px;
      padding: 0 0 0 10px;
    }
    .modelcourse .LabelArea {
      height: 26px;
    }
    .modelcourse .LabelArea .LeftLabel {
      background-color: #333;
      margin-left: 7px;
      color: #fff;
      font-size: 12px;
      padding: 5px 9px 4px 10px;
      font-weight: 300;
    }
    .modelcourse .LabelArea .RightLabel {
      position: relative;
      float: right;
      padding: 5px 9px 6px 15px;
      background: #E8A2A2;
      color: #fff;
    }
    .modelcourse .swiper-slide .LabelArea .RightLabel:before {
      position: absolute;
      content: "";
      left: 0;
      top: 2px;
      border: none;
      border-left: solid 9px #fff;
      border-top: solid 23px transparent;
    }
    .modelcourse .LabelArea .RightLabel .Text {
      font-size: 12px;
      line-height: 1;
      font-weight: 500;
    }
    .modelcourse .UpperArea {
      margin-top: 10px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 97%;
      position: relative;
    }
    .modelcourse .UpperArea .LeftArea {
      width: 100%;
      margin-right: 0;
      position: relative;
    }
    .modelcourse .UpperArea .LeftArea .MainTitle {
      min-height: 3lh;
      font-size: 18px;
      margin-top: 0;
      width: unset;
      line-height: 1.5;
      margin: unset;
      padding: unset;
      padding-right: 100px;
      font-weight: 500;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
      overflow: hidden;
    }
    .modelcourse .UpperArea .LeftArea .Prefecture {
      color: #E8A2A2;
      font-size: 12px;
      font-weight: 500;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      overflow: hidden;
    }
    .modelcourse .UpperArea .LeftArea .Prefecture img {
      width: 10px;
      display: inline-block;
      margin-right: 3px;
      vertical-align: middle;
      padding-bottom: 3px;
    }
    .modelcourse .UpperArea .LeftArea .Description {
      margin-top: 8px;
      font-size: 12px;
      line-height: 1.6;
      width: 97%;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
      overflow: hidden;
      font-weight: 500;
    }
    .modelcourse .UpperArea .RightArea {
      margin-top: 0;
      width: 90px;
      height: unset;
      position: absolute;
      top: 0;
      right: 0;
    }
    .modelcourse .UpperArea .RightArea img {
      max-width: 100%;
      width: auto;
      height: auto;
    }
    .modelcourse .PlannerInfomation {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 8px;
      min-height: unset;
      position: unset !important;
    }
    .modelcourse .PlannerInfomation .Picture {
      width: 30px;
      margin-right: 11px;
      line-height: 1;
    }
    .modelcourse .PlannerInfomation .Picture img {
      width: 30px;
      padding-right: 11px;
      display: inline-block;
      height: 30px;
    }
    .modelcourse .PlannerInfomation .PlannerTitle {
      line-height: 1.1;
    }
    .modelcourse .PlannerInfomation .PlannerTitle .Profession {
      font-size: 12px;
      font-weight: 500;
      display: block;
    }
    .modelcourse .PlannerInfomation .PlannerTitle .Name {
      font-size: 14px;
      font-weight: 500;
      margin-top: 2px;
      display: block;
    }
    .modelcourse .ScheduleArea {
      border-top: 1px dashed #E8A2A2;
      margin-top: 13px;
      margin-bottom: 15px;
      width: 96%;
    }
    .modelcourse .ScheduleArea .Title {
      display: none;
    }
    .modelcourse .ScheduleArea .Destination {
      display: inline-block;
      font-weight: 500;
      vertical-align: top;
      padding-top: 0;
    }
    .modelcourse .ScheduleArea .Destination .Text {
      font-weight: 500;
      margin-top: 8px;
      vertical-align: top;
      font-size: 18px;
    }
    .modelcourse .ScheduleArea .Destination .Text:before {
      content: "◆ ";
      color: #333;
      font-size: 12px;
    }
    .modelcourse .ScheduleArea .Destination span {
      font-size: 14px;
      font-weight: 300;
      padding-bottom: 0;
      vertical-align: middle;
      padding-left: 2px;
    }
    .modelcourse .ScheduleArea .Street {
      font-size: 12px;
      padding-top: 8px;
      width: 590px;
      height: 59px;
    }
    .modelcourse .ScheduleArea .Street .StreetImage img {
      width: 59px;
      height: 59px;
      display: inline-block;
    }
    .modelcourse .ScheduleArea .Street .StepName {
      display: inline-block;
      width: 124px;
      vertical-align: top;
      padding-left: 6px;
    }
    .modelcourse .ScheduleArea .Street .StepName .Label {
      padding: 1.5px 10px;
      font-weight: 500;
      display: inline-block;
      margin-bottom: 4px;
      border-radius: 15px;
      border: 1px solid;
      color: #fff;
      background-color: #000;
      font-size: 11px;
    }
    .modelcourse .ScheduleArea .Street .StepName .ShopName {
      display: block;
      width: 124px;
      font-size: 13px;
      line-height: 1.5;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
      font-weight: 500;
    }
    .modelcourse .ScheduleArea .Street .Arrows {
      vertical-align: top;
      padding-top: 10px;
      display: inline-block;
      font-size: 30px;
      padding-right: 7px;
    }
    .modelcourse .PlanDetail {
      text-align: right;
      font-size: 14px;
      margin-top: 5px;
      margin-right: 20px;
      text-decoration: underline;
      font-weight: 500;
      display: block;
    }
    .modelcourse .more_btn {
      display: block;
      min-width: 280px;
      min-height: 45px;
      font-size: 12px;
      padding: 13px 0;
      bottom: 20px;
      visibility: unset;
    }
    .modelcourse .more_btn.open {
      position: relative;
      bottom: unset;
      margin-top: 20px;
    }
}


/* 記事 共通 */
.article_block {
    position: relative;
    padding-top: 100px;
    z-index: 1;
}
.article_block::before {
    content: '';
    width: calc(50vw + 200px);
    height: 800px;
    position: absolute;
    top: 180px;
    opacity: 0.1;
    z-index: -1;
}
.article_block.no_top {
    min-height: 800px;
}
.article_block.no_top .wrap {
    padding-top: 60px;
}
.article_block.no_top::before {
    content: '';
    top: 100px;
}
.article_block.no_top .MainTitle {
    margin-bottom: 20px;
}
.topArea {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    column-gap: 6.5%;
}
.topArea.ttlRight {
    flex-direction: row-reverse
} 
.topArea .main_article {
    width: 72%;
    max-width: 860px;
}
.topArea .main_article-img {
    margin-bottom: 30px;
}
.topArea .main_article-img img {
    display: block;
}
.topArea .main_article-img a {
    display: flex;
    align-items: flex-end;
}
.topArea.ttlLeft .main_article-img a {
    flex-direction: row-reverse;
}
.topArea .main_article-txt {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
}
.main_article-readmore {
    padding: 20px 21px 40px;
    position: relative;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 8px;
    color: #fff;
    font-family: "BIZ UDGothic", sans-serif;
    font-weight: 700;
}
.main_article-readmore::before {
    content: "";
    display: block;
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 0 60px;
}
.main_article-readmore::after {
    content: '';
    position: absolute;
    bottom: 25px;
    width: 6px;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #fff;
}
.topArea.ttlLeft .main_article-readmore::before {
    transform: scaleX(-1);
}
.prArea {
    display: flex;
    justify-content: space-between;
    margin: 20px 0 30px;
}
.pr_article-img {
    max-width: 590px;
    width: 50%;
}
.pr_article-img img {
    width: 100%;
    height: auto;
    box-shadow: 0 0 20px rgba(0,0,0,0.2);
    border-radius: 10px;
}
.main_article-body {
    max-width: 570px;
    width: 47.5%;
}
.pr_article-ttl {
    margin-bottom: 20px;
}
.pr_article-name {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 15px;
    padding-left: 40px;
    position: relative;
    line-height: 1.5;
}
.pr_article-name::before {
    content: 'PR';
    font-size: 12px;
    background: #000;
    color: #fff;
    padding: 3px 7px;
    border-radius: 5px;
    position: absolute;
    left: 0;
    top: 3px;
    line-height: 1.4;
}
.pr_article-intro {
    font-size: 16px;
    line-height: 1.5;
    font-weight: 300;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.pr_article-info p {
    font-size: 13px;
    line-height: 1.5;
    font-weight: 300;
    margin-bottom: 15px;
    position: relative;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    padding-left: 30px;
}
.pr_article-info p img {
    display: inline-block;
    margin-right: 5px;
}
.pr_article-info p::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 15px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.pr_article-info p.pr_article-add::before {background-image: url(/images/kankou/world-heritage-dome/icon_article_add.svg);}
.pr_article-info p.pr_article-time::before {background-image: url(/images/kankou/world-heritage-dome/icon_article_calendar.svg);}
.pr_article-info p.pr_article-holiday::before {background-image: url(/images/kankou/world-heritage-dome/icon_article_rest.svg);}
.pr_article-info p.pr_article-access::before {background-image: url(/images/kankou/world-heritage-dome/icon_article_walk.svg);}
.pr_article-info p.pr_article-bus::before {background-image: url(/images/kankou/world-heritage-dome/icon_article_bus.svg);}
.pr_article-link {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px;
    column-gap: 4.35%;
}
.pr_article-btn {
    background: #fff;
    width: 31%;
    max-width: 173px;
    border: 1px solid #000;
    border-radius: 10px;
    padding: 8px 0;
    box-sizing: border-box;
    text-align: center;
    font-weight: 500;
    position: relative;
}
.pr_article-btn::after {
    content: '▸';
    display: inline-block;
    position: absolute;
}
.pr_article-btn:last-of-type {
    background: #E8A2A2;
    color: #fff;
}
.article_list {
    display: flex;
    flex-flow: wrap;
    gap: 20px;
}
.article_list img {
    display: block;
}
.article_list-item {
    background: #fff;
    border: 1px solid #999;
    border-radius: 10px;
    overflow: hidden;
    width: calc(25% - 15px);
    max-width: 285px;
    box-sizing: border-box;
    position: relative;
}
.article_list-item a {
    display: block;
}
.article_list-body {
    padding: 8px 10px;
}
.article_list-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 2px 10px;
    background: #F6F5F0;
    border: 1px solid #D1C9AE;
    z-index: 2;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
}
.article_list-location {
    display: inline-flex;
    align-items: center;
    background: #F2F2F2;
    font-size: 10px;
    line-height: 1.4;
    column-gap: 5px;
    padding: 0 10px;
    font-weight: 500;
    color: #999;
    margin-bottom: 5px;
}
.article_list-location_spot {
    font-size: 11px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    max-width: 151px;
}
.article_list-location_dist {
    font-size: 16px;
    color: #AF9D63;
}
.article_list-name {
    font-weight: 500;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 8px;
}
.article_list-add {
    width: 84%;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.article_list-read {
    position: absolute;
    bottom: 10px;
    right: 10px;
}
.article_list-bottom {
    width: 100%;
    padding: 40px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 20px;
}
.article_list-bottom a {
    height: 60px;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.article_list-more {
    width: 380px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
}
.article_list-more img {
    height: auto;
    margin-right: 10px;
}
.article_list-map {
    flex-direction: column;
    width: 100px;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
}
.article_related {
    margin-top: 40px;
}
.article_related .article_related-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 25px;
    max-height: 500px;
    overflow: hidden;
    transition: max-height 0.3s linear;
    position: relative;
    gap: 20px;
}
#gourmet_article_related .article_related-wrap.open,
#kankou_article_related .article_related-wrap.open,
#yado_article_related .article_related-wrap.open {
    max-height: unset;
}
.article_related .article_related-wrap::after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    height: 150px;
    background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.6) 20%, rgba(255, 255, 255, 0.8) 55%, #fff 90%);
}
.article_related .moreBtn {
    display: block;
    width: 100%;
    max-width: 300px;
    font-weight: 500;
    color: #333;
    font-size: 14px;
    text-align: center;
    background: #FFF;
    border: 1px solid #000;
    border-radius: 23px;
    padding: 10px 0;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    box-sizing: border-box;
    z-index: 1;
    cursor: pointer;
}
.article_related .article_related-wrap.open::after {
    display: none;
} 
.article_related-wrap.open .moreBtn {
    display: none;
}
.article_related-item {
    width: calc(25% - 15px);
    max-width: 285px;
}
.article_related-ttl {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 500;
    margin-top: 10px;
}
.article_related-date {
    font-size: 12px;
    font-weight: 300;
    text-align: right;
    color: #333;
}
@media screen and (max-width: 900px) {
    .topArea .MainTitle {
        width: 18%;
    }
    .topArea .main_article {
        width: 70%;
    }
    .article_list-location {
        padding: 0 5px;
    }
    .article_list-location_spot {
        max-width: 50%;
    }
    .article_list-location_dist {
        font-size: 13px;
    }
}
@media screen and (max-width: 599px) {
    .article_block {
        padding-top: 0;
        margin-top: 80px;
    }
    .article_block::after {
        content: '';
        position: absolute;
        left: 3.9vw;
        background-repeat: no-repeat;
        background-size: 100%;
        z-index: 1;
    }
    .article_block.no_top {
        min-height: unset;
    }
    .article_block.no_top .wrap {
        padding-top: 0;
    }
    .article_block.no_top::before {
        min-height: 728px;
    }
    .article_block.no_top .MainTitle {
        text-align: center;
        padding-top: 80px;
    }
    .topArea {
        flex-direction: column;
        position: relative;
        z-index: 0;
    }
    .topArea .MainTitle {
        width: 100%;
        max-width: 92%;
        margin: 0 auto;
        padding-top: 90px;
    }
    .topArea .MainTitle img {
        width: 100%;
    }
    .topArea .main_article {
        width: 100%;
        padding: 30px 0 40px;
    }
    .topArea .main_article-img {
        margin-bottom: 20px;
    }
    .topArea .main_article-img a {
        flex-direction: column;
    }
    .main_article-readmore {
        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
        font-size: 14px;
        line-height: 1.85;
        letter-spacing: 0;
        padding: 2px 34px 2px 24px;
        max-height: 30px;
    }
    .main_article-readmore::before {
        border-width: 0 12px 30px 0;
        top: 0;
        left: -12px;
    }
    .main_article-readmore::after {
        border-width: 5px 0 5px 6px;
        bottom: 10px;
        right: 12px;
    }
    .topArea .main_article-txt {
        font-size: 14px;
        line-height: 1.6;
    }
    .main_article-bottom {
        position: absolute;
        bottom: -25px;
        right: 15px;
        font-size: 16px;
        font-family: "Kaisei Opti", serif;
        display: flex;
        align-items: center;
    }
    .main_article-bottom span {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        height: 50px;
        border: 1px solid;
        border-radius: 50%;
        margin-left: 10px;
    }
    .main_article-bottom img {
        display: block;
    }
    .prArea {
        flex-direction: column;
        margin: 40px 0;
    }
    .article_block.no_top .prArea {
        margin-top: 20px;
    }
    .pr_article-img {
        width: 100%;
        margin-bottom: 15px;
    }
    .main_article-body {
        width: 100%;
    }
    .pr_article-intro {
        font-size: 14px;
        margin-bottom: 15px;
        -webkit-line-clamp: 3;
    }
    .pr_article-info p {
        font-size: 12px;
    }
    .pr_article-link {
        margin-top: 15px;
    }
    .pr_article-btn {
        width: 32%;
        padding: 12px 6px 12px 0;
    }
    .article_list {
        flex-direction: column;
        gap: 15;
    }
    .article_list-item {
        background: none;
        max-width: 100%;
        width: 100%;
        border: 0;
        border-bottom: 1px solid #CCC;
        border-radius: 0;
        padding-bottom: 15px;
        margin-bottom: 0;
    }
    .article_list-item a {
        display: flex;
        column-gap: 10px;
    }
    .article_list-img {
        flex-shrink: 0;
    }
    .article_list-body {
        padding: 0;
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        position: relative;
        width: 100%;
    }
    .article_list-tag {
        display: inline-block;
        padding: 0 10px;
        margin-bottom: 8px;
        top: 0;
        left: 0;
    }
    .article_list-location {
        padding: 0;
        background: none;
        margin: 0;
        position: absolute;
        bottom: 0;
        width: 88%;
    }
    .article_list-location_spot {
        font-size: 12px;
        max-width: 60%;
    }
    .article_list-location_dist {
        font-size: 14px;
    }
    .article_list-read {
        right: 0;
        bottom: 0;
    }
    .article_list-bottom {
        padding: 20px 0 40px;
        column-gap: 8px;
    }
    .article_list-bottom a {
        font-size: 16px;
    }
    .article_list-more img {
        margin-right: 5px;
    }
    .article_list-bottom .article_list-map {
        font-size: 11px;
    }
    .article_related-item {
        width: 100%;
        max-width: 100%;
        border-bottom: 1px solid #CCC;
        padding-bottom: 20px;
        display: flex;
        align-items: center;
        column-gap: 10px;
    }
    .article_related-img {
        flex-shrink: 0;
    }
    .article_related-img img {
        width: 160px;
        height: 90px;
        object-fit: cover;
        object-position: center;
    }
    .article_related-ttl {
        font-size: 13px;
    }
    .article_related .article_related-wrap {
        max-height: 800px;
    }
    .article_related .moreBtn {
        border-radius: 5px;
    }
}

/* グルメ gourmet */
#gourmet::before {
    right: 0;
    border-radius: 100px 0 0 100px;
    background: #EFBF22;
}
#gourmet .topArea .MainTitle img {
    width: 260px;
    height: auto;
}
#gourmet .main_article-readmore {
    background: #EFBF22;
}
#gourmet .main_article-readmore::before {
    border-color: transparent transparent transparent #EFBF22;
}
#gourmet .article_list-more {
    background: #EFBF22;
}
#gourmet .article_list-map {
    background-image: url(/images/kankou/world-heritage-dome/gourmet_map_bg.svg);
    background-color: #EFBF22;
}
#gourmet .backBtn {
    background: #EFBF22;
}
#gourmet .searchFacilityaWrap .toggle {
    background: #EFBF22;
}
#gourmet .searchFacilityaWrap .facilityList li .facilityText .facilityInfo .facilityAccess {
    color: #DBA800;
}
#gourmet .searchFacilityaWrap .facilityList li {
    border-color: #EFBF22;
}
#map-canvas-gourmet {
    width: 100%;
    height: 100%;
}

/* レジャー kankou */
#kankou::before {
    left: 0;
    border-radius: 0 100px 100px 0;
    background: #F5B581;
}
#kankou .topArea .MainTitle img {
    width: 260px;
    height: auto;
}
#kankou .main_article-readmore {
    background: #F5B581;
}
#kankou .main_article-readmore::before {
    border-color: transparent transparent transparent #F5B581;
}
#kankou .article_list-more {
    background: #F5B581;
}
#kankou .article_list-map {
    background-image: url(/images/kankou/world-heritage-dome/kankou_map_bg.svg);
    background-color: #F5B581;
}
#kankou .backBtn {
    background: #F5B581;
}
#kankou .searchFacilityaWrap .toggle {
    background: #F5B581;
}
#kankou .searchFacilityaWrap .facilityList li .facilityText .facilityInfo .facilityAccess {
    color: #F5B581;
}
#kankou .searchFacilityaWrap .facilityList li {
    border-color: #F5B581;
}
.map #map-canvas-kankou {
    width: 100%;
    height: 100%;
}

/* 旅館・ホテル  yado */
#yado {
    padding-bottom: 100px;
}
#yado::before {
    right: 0;
    border-radius: 100px 0 0 100px;
    background: #66B2DD;
}
#yado .topArea .MainTitle img {
    width: 260px;
    height: auto;
}
#yado .main_article-readmore {
    background: #66B2DD;
}
#yado .main_article-readmore::before {
    border-color: transparent transparent transparent #66B2DD;
}
#yado .article_list-more {
    background: #66B2DD;
}
#yado .article_list-map {
    background-image: url(/images/kankou/world-heritage-dome/yado_map_bg.svg);
    background-color: #66B2DD;
}
#yado .backBtn {
    background: #66B2DD;
}
#yado .searchFacilityaWrap .toggle {
    background: #66B2DD;
}
#yado .searchFacilityaWrap .facilityList li .facilityText .facilityInfo .facilityAccess {
    color: #66B2DD;
}
#yado .searchFacilityaWrap .facilityList li {
    border-color: #66B2DD;
}
.map #map-canvas-yado {
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 599px) {
    #yado {
        padding-bottom: 80px;
    }
    #gourmet::before, 
    #kankou::before, 
    #yado::before {
        top: 0;
        width: 100vw;
        height: 100vw;
        border-radius: 50vw 50vw 0 0;
    }
    #gourmet .topArea .MainTitle img,
    #kankou .topArea .MainTitle img,
    #yado .topArea .MainTitle img {
        width: 100%;
    }
    #gourmet::after {
        background-image: url(/images/kankou/world-heritage-dome/gourmet_txt_bg.svg);
        top: 2.57vw;
        width: 22.82vw;
        height: 24vw;
    }
    #kankou::after {
        background-image: url(/images/kankou/world-heritage-dome/kankou_txt_bg.svg);
        top: 5.1vw;
        width: 19.5vw;
        height: 18.7vw;
    }
    #yado::after {
        background-image: url(/images/kankou/world-heritage-dome/yado_txt_bg.svg);
        top: 0;
        width: 26.7vw;
        height: 25.13vw;
    }
    #gourmet .main_article-readmore::before {
        border-color: transparent #EFBF22 transparent transparent;
    }
    #kankou .main_article-readmore::before {
        border-color: transparent #F5B581 transparent transparent;
    }
    #yado .main_article-readmore::before {
        border-color: transparent #66B2DD transparent transparent;
    }
    #gourmet .main_article {
        background: #fdf8e8;
    }
    #gourmet .main_article-bottom {
        color: #EFBF2280;
    }
    #gourmet .main_article-bottom span {
        border: 1px solid #EFBF2280;
    }
    #kankou .main_article {
        background: #fef7f2;
    }
    #kankou .main_article-bottom {
        color: #F5B58180;
    }
    #kankou .main_article-bottom span {
        border: 1px solid #F5B58180;
    }
    #yado .main_article {
        background: #eff7fb;
    }
    #yado .pr_article-btn:last-of-type {
        padding: 2% 3.5%;
        line-height: 1.2;
    }
    #yado .main_article-bottom {
        color: #66B2DD80;
    }
    #yado .main_article-bottom span {
        border: 1px solid #66B2DD80;
    }
    #popMap-gourmet .mapTop {
        background: #EFBF22;
    }
    .mapWrap .backBtn {
        background: none;
    }
    #popMap-gourmet .toggle, #popMap-gourmet .searchFacilityaWrapSp .facilityList li .facilityText .facilityInfo .facilityAccess {
        color: #DBA800;
    }
    #popMap-kankou .mapTop {
        background: #F5B581;
    }
    #popMap-kankou .toggle, #popMap-kankou .searchFacilityaWrapSp .facilityList li .facilityText .facilityInfo .facilityAccess {
        color: #F5B581;
    }
    #popMap-yado .mapTop {
        background: #66B2DD;
    }
    #popMap-yado .toggle, #popMap-yado .searchFacilityaWrapSp .facilityList li .facilityText .facilityInfo .facilityAccess {
        color: #66B2DD;
    }
}


/* article page */
.articleWrap {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
}
.articleMainBlock {
    max-width: 800px;
    width: 67%;
}
.articleSideBlock {
    max-width: 340px;
    width: 28.5%;
}
.articleTopImg {
    margin-bottom: 15px;
}
.articleTopTitle {
    font-size: 30px;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 20px;
}
.articleTopText {
    font-weight: 300;
    font-size: 16px;
    color: #333;
    line-height: 1.8;
    margin-top: 20px;
}
.articleTitle {
    margin-top: 40px;
    font-size: 23px;
    font-weight: 500;
}
.articleSubTitle {
    font-weight: 500;
    font-size: 23px;
    color: #333;
    line-height: 1.5;
    margin-top: 20px;
}
.articleText {
    font-weight: 300;
    font-size: 16px;
    color: #333;
    line-height: 1.75;
    margin-top: 15px;
}
.articleInfoWrap {
    background: #F7F7F7;
    padding: 30px 35px 40px;
    margin-top: 30px;
}
.articleInfoWrap .infoName {
    font-weight: 500;
    color: #333;
    font-size: 18px;
    line-height: 1.5;
    padding-bottom: 10px;
    position: relative;
}
.articleInfoWrap .articleInfo {
    position: relative;
    margin-top: 20px;
}
.articleInfoWrap .articleInfo dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    min-height: 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #333;
    font-size: 14px;
    line-height: 1.4;
}
.articleInfoWrap .articleInfo dl dt {
    width: 60px;
    display: inline-block;
    font-weight: 500;
    margin-top: 20px;
    margin-right: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.articleInfoWrap .articleInfo dl dd {
    width: calc(100% - 92px);
    font-weight: 300;
    margin-top: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow-wrap: break-word;
}
.articleInfoWrap .articleInfo dl dt:first-child,
.articleInfoWrap .articleInfo dl dt:first-child + dd { 
    margin-top: 0;
}
.articleInfoWrap .articleInfo dl dd:nth-of-type(-n+3) {
    padding-right: 125px;
}
.articleInfoWrap .articleInfo .link_out {
    color: #F5B581;
    font-weight: 500;
    text-decoration: underline;
}
.articleInfoWrap .articleInfo .link_out::after {
    background-image: url(/images/kankou/world-heritage-dome/icon_link_color.svg);
}
.articleInfoLink {
    margin-top: 15px;
    display: flex;
    justify-content: flex-end;
    column-gap: 20px;
}
.articleInfoLink .articleBtn {
    width: 245px;
    padding: 8px 0;
    text-align: center;
    color: #fff;
    border-radius: 30px;
    position: relative;
}
.articleInfoLink .articleBtn::after {
    content: '▸';
    display: inline-block;
    margin-left: 5px;
    position: absolute;
}
.articleInfoLink .articleBtn.reservationBtn {
    background: #E39313!important;
}
.articleInfoWrap .map {
    position: absolute;
    top: 0;
    right: 0;
}
.articleInfoWrap .map a {
    display: block;
}
.articleInfoWrap .map a img {
    width: 100%;
    max-width: 98px;
    height: auto;
}
.articleBottomLink {
    margin: 60px auto;
    max-width: 500px;
    width: 100%;
}
.articleBottomLink a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #000;
    padding: 24px 40px;
    position: relative;
    border-radius: 20px;
}
.articleBottomLink a::after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #000;
}

/* article side */
.sideBlock {
    margin-bottom: 40px;
}
.sideBlockTitle {
    color: #333;
    font-size: 23px;
    line-height: 1.5;
    font-weight: 500;
    padding-bottom: 5px;
}
.sideBlockTitle img {
    display: block;
}
.sideRelationList {
    margin-top: 15px;
}
.sideRelationList li {
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.sideRelationList li a {
    display: flex;
    justify-content: space-between;
}
.sideRelationText {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    width: 61.7%;
    max-width: 210px;
    position: relative;
    box-sizing: border-box;
}
.sideRelationTitle {
    color: #333;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.sideRelationDate {
    color: #333;
    width: calc(100% - 30px);
    font-weight: 500;
    font-size: 12px;
    font-weight: 300;
    text-align: right;
    position: absolute;
    bottom: 0;
    right: 0;
    line-height: 1;
}
/* article slider */
.articleSlidImg2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
}
.articleSlidImg2 .swiper-main--wrap {
    width: calc(100% - 104px);
    position: relative;
}
.articleSlidImg2 .swiper-main--wrap .swiper-main {
    width: calc(100% - 15px);
    max-width: 680px;
    margin-left: 0;
    margin-right: 15px;
    position: relative;
    overflow: hidden;
}
.articleSlidImg2 .swiper-main--wrap .swiper-main .swiper-slide img {
    width: 100%;
    height: auto;
}
.articleSlidImg2 .swiper-thumbnail {
    width: 104px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.articleSlidImg2 .swiper-thumbnail .swiper-wrapper {
    display: block;
}
.articleSlidImg2 .swiper-thumbnail .swiper-slide {
    width: 104px;
    height: auto;
    margin-bottom: 5px;
    opacity: 0.4;
    cursor: pointer;
    border: 2px solid transparent;
    box-sizing: border-box;
}
.articleSlidImg2 .swiper-thumbnail .swiper-slide:last-child {
    margin: 0;
}
.articleSlidImg2 .swiper-thumbnail .swiper-slide img {
    width: 100%;
    max-height: 70px;
    -o-object-fit: cover;
    object-fit: cover;
}
.articleSlidImg2 .swiper-thumbnail .swiper-slide-thumb-active {
    opacity: 1;
    position: relative;
}
.articlePickupImg {
    position: absolute;
    top: 25px;
    left: 25px;
    z-index: 10;
}
/* article gourmet */
.gourmet_article .articleTitle {
    color: #333;
    padding-bottom: 5px;
    border-bottom: 3px solid #EFBF22;
}
.gourmet_article .articleInfoWrap .articleInfo .link_out {
    color: #E3B109;
}
.gourmet_article .articleInfoWrap .articleInfo .link_out::after {
    background-image: url(/images/kankou/world-heritage-dome/icon_link_gourmet.svg);
}
.gourmet_article .articleInfoLink .articleBtn {
    background: #EFBF22;
}
.gourmet_article .articleInfoWrap .infoName {
    border-bottom: 2px solid #EFBF22;
}
.gourmet_article .articleSlidImg2 .swiper-thumbnail .swiper-slide-thumb-active {
    border-color: #D1B100;
}
.gourmet_article .sideBlockTitle {
    border-bottom: 3px solid #EFBF22;
}
.gourmet_article .sideRelationList li::after {
    content: "";
    background-image: linear-gradient(to right, #EFBF22, #EFBF22 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
    position: absolute;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 0;
}
/* article kankou */
.kankou_article .articleTitle {
    color: #000;
    padding-left: 18px;
    position: relative;
}
.kankou_article .articleTitle::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 30px;
    background: #F5B581;
    left: 0;
    top: 7px;
}
.kankou_article .articleInfoLink .articleBtn {
    background: #EFBF22;
}
.kankou_article .articleInfoWrap .infoName {
    position: relative;
}
.kankou_article .articleInfoWrap .infoName::after {
    content: "";
    background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
/* article yado */
.yado_article .articleTitle {
    color: #333;
    padding-bottom: 5px;
    border-bottom: 3px solid #66B2DD;
}
.yado_article .articleInfoWrap .articleInfo .link_out {
    color: #66B2DD;
}
.yado_article .articleInfoWrap .articleInfo .link_out::after {
    background-image: url(/images/kankou/world-heritage-dome/icon_link_yado.svg);
}
.yado_article .articleInfoLink .articleBtn {
    background: #66B2DD;
}
.yado_article .articleInfoWrap .infoName {
    border-bottom: 2px solid #66B2DD;
}
@media screen and (max-width: 599px) {
    .articleWrap {
        display: block;
        margin-top: 5px;
    }
    .articleMainBlock, .articleSideBlock {
        width: 100%;
        max-width: 100%;
        padding-bottom: 20px;
    }
    .articleTopTitle {
        font-size: 23px;
    }
    .articleTopText {
        font-size: 14px;
        line-height: 1.5;
        margin-top: 15px;
    }
    .articleTitle {
        font-size: 18px;
        line-height: 1.4;
    }
    .articleSubTitle {
        font-size: 18px;
    }
    .articleText {
        font-size: 14px;
        line-height: 1.5;
        margin-top: 10px;
    }
    .articleInfoLink {
        flex-direction: column;
        row-gap: 15px;
        margin-top: 20px;
    }
    .articleInfoLink .articleBtn {
        width: 88%;
        margin: auto;
        display: block;
        line-height: 1.5;
        font-size: 16px;
        padding: 10px 0;
    }
    .articleInfoWrap {
        padding: 20px 7%;
        margin: 20px -4% 0;
        position: relative;
    }
    .articleInfoWrap .infoName {
        font-size: 16px;
    }
    .articleInfoWrap .articleInfo {
        margin-top: 15px;
    }
    .articleInfoWrap .articleInfo dl {
        font-size: 12px;
    }
    .articleInfoWrap .articleInfo dl dt {
        width: 50px;
        font-size: 12px;
        margin-top: 15px;
        margin-right: 15px;
    }
    .articleInfoWrap .articleInfo dl dd {
        width: calc(100% - 65px);
        font-size: 12px;
        margin-top: 15px;
    }
    .articleInfoWrap .articleInfo dl dd:nth-of-type(-n+3) {
        padding-right: 0;
    }
    .articleInfoWrap .articleInfo dl dd.address {
        padding-right: 60px !important;
        min-height: 53px;
    }
    .articleInfoWrap .map {
        width: 52px;
    }
    .articleSlidImg2 {
        display: block;
    }
    .articleSlidImg2 .swiper-main--wrap {
        width: 100%;
        position: relative;
    }
    .articleSlidImg2 .swiper-main--wrap .swiper-main {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    .articleSlidImg2 .swiper-thumbnail {
        max-width: unset;
        width: 100%;
    }
    .articleSlidImg2 .swiper-thumbnail .swiper-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 2%;
        border-width: 1px;
    }
    .articleSlidImg2 .swiper-thumbnail .swiper-slide {
        width: 15% !important;
        height: auto;
        margin-right: 2%;
        border-width: 1px;
    }
    .articlePickupImg {
        top: 10px;
        left: 10px;
    }
    .articleBottomLink {
        margin: 40px 0;
    }
    .articleBottomLink a {
        padding: 16px 20px;
    }
    .sideBlockTitle {
        font-size: 18px;
    }
    .sideRelationList .articleImg {
        width: 120px;
        object-fit: cover;
        object-position: center;
    }
    .sideRelationText {
        flex: 1;
        max-width: unset;
        width: auto;
        margin-left: 10px;
    }
    .gourmet_article .articleTitle {
        border-width: 2px;
    }
    .kankou_article .articleTitle::before {
        height: 100%;
        top: 0;
    }
}

/* article tabs */
.articleSpotTitle {
    margin-top: 40px;
}
.nearestSection .spotTab {
    display: flex;
    justify-content: center;
    border-bottom: 1px solid #000;
    margin-top: 15px;
    column-gap: 30px;
}
.nearestSection .spotTab input {
    display: none;
}
.nearestSection .spotTab .tabItem {
    display: block;
    flex-grow: 1;
    width: 37.5%;
    max-width: 300px;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 300;
    color: #000;
    text-align: center;
    border: 1px solid #000;
    padding: 8px 0px;
    border-bottom: unset;
    border-radius: 5px 5px 0 0;
    box-sizing: border-box;
    cursor: pointer;
}
.nearestSection .spotTab input:checked+.tabItem {
    color: #FFF;
    background: #000;
}
.nearestSection .aroundInfoWrap {
    scrollbar-width: thin;
    position: relative;
}
.nearestSection .aroundInfoWrap {
    display: none;
}
.nearestSection .aroundInfoWrap.on {
    display: block;
}
.nearestSection .aroundInfoWrap .swiper {
    padding-bottom: 10px;
}
.nearestSection .aroundInfoWrap .aroundInfoList {
    display: inline-flex;
    margin-top: 20px;
}
.nearestSection .aroundInfoWrap .aroundInfoList li {
    width: 260px;
    border: 1px solid #999;
    margin-right: 20px;
    box-sizing: border-box;
    position: relative;
}
.nearestSection .aroundInfoWrap .aroundInfoList li:before {
    content: "";
    display: block;
    width: 32px;
    height: 33px;
    background-image: url(/images/kankou/world-heritage-dome/icon_arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 16px;
    right: 10px;
}
.nearestSection .aroundInfoWrap .aroundInfoList li a {
    display: block;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoImgWrap {
    position: relative;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoImgWrap img {
    width: 100%;
    height: auto;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap {
    width: 100%;
    padding: 8px 10px 15px;
    box-sizing: border-box;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTag {
    position: absolute;
    top: 8px;
    left: 8px;
    font-size: 12px;
    line-height: 1.2;
    padding: 4px 12px;
    background: #F6F5F0;
    border: 1px solid #D1C9AE;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoDistance {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    background: #F2F2F2;
    padding: 1px 6px;
    box-sizing: border-box;
    line-height: 1.4;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoDistance .spotName {
    display: inline-block;
    color: #999;
    font-size: 11px;
    margin-right: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoDistance .small {
    display: inline-block;
    color: #999;
    font-size: 10px;
    margin-right: 6px;
    flex-shrink: 0;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoDistance .num {
    display: inline-block;
    color: #AF9D63;
    font-size: 16px;
    flex-shrink: 0;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoTitle {
    width: 100%;
    min-height: 39px;
    color: #333;
    font-size: 14px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-top: 6px;
}
.nearestSection .aroundInfoWrap .aroundInfoList li .aroundInfoTextWrap .aroundInfoAddress {
    width: calc(100% - 45px);
    min-height: 38px;
    color: #333;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.6;
    margin-top: 8px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.nearestSection .aroundInfoWrap .swiper-button-next, .nearestSection .aroundInfoWrap .swiper-button-prev {
    position: absolute;
    margin-top: 0;
    width: 30px;
    height: 45px;
    bottom: calc(50% - 40px);
    background: rgba(0, 0, 0, 0.7);
    z-index: 3;
    top: unset;
    left: unset;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
}
.nearestSection .aroundInfoWrap .swiper-button-prev {
    left: 0;
}
.nearestSection .aroundInfoWrap .swiper-button-next {
    right: 0;
}
.nearestSection .aroundInfoWrap .swiper-button-next.swiper-button-disabled, .nearestSection .aroundInfoWrap .swiper-button-prev.swiper-button-disabled {
    pointer-events: unset;
}
.nearestSection .aroundInfoWrap .swiper-button-prev:before {
    display: block;
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border: 0px;
    top: 35%;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
    margin-left: 12px;
}
.nearestSection .aroundInfoWrap .swiper-button-next:before {
    display: block;
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border: 0px;
    top: 35%;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 7px;
}
.nearestSection .aroundInfoWrap .swiper-scrollbar {
	border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, .1);
}
.nearestSection .aroundInfoWrap .swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, .5);
    border-radius: 10px;
    left: 0;
    top: 0;
	background: #666;
	border-radius: 2px;
}
@media screen and (max-width: 599px) {
    .articleSpotTitle {
        margin-top: 20px;
    }
    .nearestSection .spotTab {
        column-gap: 15px;
    }
    .nearestSection .spotTab .tabItem {
        max-width: 150px;
        font-size: 14px;
    }
    .nearestSection .aroundInfoWrap .swiper {
        margin: 0 -4%;
        padding: 0 4% 10px;
    }
    .nearestSection .aroundInfoWrap .swiper-scrollbar {
        height: 4px;
    }
}

/* hitokoto */
.articleHitokotoWrap {
    display: flex;
    justify-content: space-between;
    column-gap: 20px;
}
.articleHitokotoCol {
    flex: 1;
}
.articleHitokoto {
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 58px;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;
    cursor: pointer;
}
.articleHitokoto:hover {
    opacity: 0.7;
}
.articleHitokotoLeft {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.articleHitokotoImg {
    width: 45px;
    line-height: 1;
}
.articleHitokotoImg img {
    border-radius: 50%;
    width: 100%;
}
.articleHitokotoText {
    width: 60px;
    margin-left: 8px;
    margin-right: 7px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.articleHitokotoText p {
    font-size: 10px;
    line-height: 1.5;
    font-weight: 300;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.articleHitokotoText p span {
    display: block;
}
.articleHitokotoFukidashi {
    position: relative;
    display: inline-block;
    margin: 0px 0 0px 0px;
    padding: 13px 12px;
    color: #333;
    font-size: 12px;
    background: #FFF;
    border: solid 1px #888;
    width: calc(100% - 110px);
    border-radius: 10px;
}
.articleHitokotoFukidashi::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -6px;
    margin-top: -2px;
    border: 2px solid transparent;
    border-right: 4px solid #FFF;
    z-index: 2;
}
.articleHitokotoFukidashi::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -10px;
    margin-top: -4px;
    border: 4px solid transparent;
    border-right: 6px solid #555;
    z-index: 1;
}
.articleHitokotoFukidashi img {
    position: absolute;
    top: -6px;
    left: 9px;
    background: #fff;
    padding: 1px 3px;
}
.articleHitokotoFukidashi p {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    font-size: 12px;
}
.articleTaiken {
    margin-top: 25px;
}
.articleTaiken a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}
.articleTaiken a::after {
    content: "";
    width: 6px;
    height: 6px;
    border: 0;
    border-bottom: solid 1px #333;
    border-right: solid 1px #333;
    position: absolute;
    right: 15px;
    top: calc(50% - 5px);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.articleTaiken .articleTaikenImg {
    width: 110px;
}
.articleTaiken .articleTaikenImg img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100px;
    vertical-align: top;
}
.articleTaiken .articleTaikenText {
    background: #F7F1EC;
    padding: 14px 30px 14px 15px;
    width: calc(100% - 155px);
}
.articleTaiken .articleTaikenText .articleTaikenTextTop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.articleTaiken .articleTaikenText .articleTaikenTextPlanner {
    margin-left: 15px;
    width: 23px;
}
.articleTaiken .articleTaikenText .articleTaikenTextPlanner img {
    border-radius: 50%;
}
.articleTaiken .articleTaikenText .articleTaikenTextTop span {
    display: block;
}
.articleTaiken .articleTaikenText .articleTaikenTextTop span img {
    line-height: 1;
    display: block;
}
.articleTaiken .articleTaikenText .articleTaikenTextTop .articleTaikenTextSub {
    font-size: 10px;
    padding-bottom: 5px;
    margin-left: 2px;
    font-weight: 300;
}
.articleTaiken .articleTaikenText .articleTaikenTextdisc {
    font-size: 12px;
    margin-top: 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-weight: 300;
}
#kankou .bgPop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0.5;
    width: 100%;
    height: 100%;
    z-index: 20;
}
.articleHitokotoPop {
    display: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    background: #fff;
    position: fixed;
    z-index: 50;
    padding: 30px 40px 35px;
    border-radius: 20px;
    min-width: 720px;
}
.articleHitokotoPop .articleHitokotoPopTop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.articleHitokotoPop .articleHitokotoPopImg img {
    border-radius: 50%;
}
.articleHitokotoPop .articleHitokotoPopText {
    margin-left: 20px;
}
.articleHitokotoPop .articleHitokotoPopText p {
    font-size: 14px;
    font-weight: 300;
}
.articleHitokotoPop .articleHitokotoPopText p span {
    margin-right: 2px;
}
.articleHitokotoPop .articleHitokotoPopLead {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 300;
}
.articleHitokotoPop .articleHitokotoPopBtn {
    display: block;
    margin-top: 25px;
    margin-left: auto;
}
.articleHitokotoPop .articleHitokotoClose {
    position: absolute;
    top: 30px;
    right: 30px;
}
.articleHitokotoPopBtn {
    margin-top: 0;
    text-align: center;
    max-width: 240px;
    width: 100%;
    border: 1px solid #000;
    color: #333;
    font-size: 14px;
    background: #F5B581;
    border-radius: 20px;
    padding: 8px 6px 8px 0;
    position: relative;
    line-height: 1.4;
}
.articleHitokotoPopBtn::after {
    content: "";
    position: absolute;
    bottom: 4px;
    right: 14px;
    display: inline-block;
    width: 28px;
    height: 28px;
    background-image: url(/images/kankou/world-heritage-dome/Icon_arrow_black.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom center;
}
.areaTaikenMore {
    margin-top: 10px;
    text-align: right;
    font-size: 12px;
    font-weight: 300;
}
@media screen and (max-width: 599px) {
    .articleHitokotoPopBtn {
        font-size: 16px;
        line-height: 1.5;
        border-radius: 23px;
        padding: 9.5px 0;
        position: relative;
        max-width: 88%;
        display: block;
        text-align: center;
        margin: 0 auto;
    }
    .articleHitokotoPopBtn::after {
        width: 31px;
        height: 31px;
        bottom: 6px;
    }
    .articleHitokotoLeft {
        flex-direction: column;
    }
    .articleHitokotoImg {
        width: 41px;
    }
    .articleHitokotoText p {
        line-height: 1.2;
    }
    .articleHitokotoFukidashi p {
        -webkit-line-clamp: 2;
    }
    .articleTaiken {
        margin-top: 15px;
    }
    .articleTaiken .articleTaikenImg {
        width: 91px;
    }
    .articleTaiken .articleTaikenImg img {
        height: 83px;
    }
    .articleTaiken .articleTaikenText {
        width: calc(100% - 91px);
        padding: 11px 25px 11px 11px;
    }
    .articleTaiken .articleTaikenText .articleTaikenTextPlanner {
        width: 21px;
        margin-left: 10px;
    }
    .articleTaiken .articleTaikenText .articleTaikenTextdisc {
        margin-top: 5px;
        line-height: 1.34;
    }
    .articleTaiken .articleTaikenText .articleTaikenTextTop .articleTaikenTextSub {
        padding-bottom: 0;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
    }
    .articleHitokotoPop {
        min-width: 70%;
    }
    .articleHitokotoPop .articleHitokotoClose {
        top: 15px;
        right: 15px;
    }
    .articleHitokotoWrap {
        flex-direction: column;
    }
    .articleHitokotoCol {
        display: flex;
        column-gap: 15px;
        width: 100%;
        align-items: flex-start;
    }
    .articleHitokotoCol .articleHitokoto {
        position: relative;
        height: unset;
        z-index: 0;
        position: relative;
        flex: 1;
    }
    .articleHitokotoCol .articleHitokotoLeft {
        position: absolute;
        top: 20px;
        left: 15px;
        z-index: 2;
        width: calc(100% - 30px);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 0px;
        flex-direction: row;
    }
    .articleHitokotoCol .articleHitokotoLeft .articleHitokotoImg {
        width: 30px;
        height: auto;
        display: inline-block;
    }
    .articleHitokotoCol .articleHitokotoLeft .articleHitokotoImg img {
        width: 30px;
        height: auto;
        display: inline-block;
    }
    .articleHitokotoCol .articleHitokotoLeft .articleHitokotoText {
        width: calc(100% - 52px);
        margin-left: 8px;
        margin-right: 0;
        line-height: 1.2;
        margin-top: 0px;
        display: inline-block;
    }
    .articleHitokotoCol .articleHitokotoLeft .articleHitokotoText span {
        display: inline-block;
    }
    .articleHitokotoCol .articleHitokotoFukidashi {
        width: 100%;
        padding: 52px 15px 15px 15px;
    }
    .articleHitokotoCol .articleHitokotoFukidashi::before, 
    .articleHitokotoCol .articleHitokotoFukidashi::after {
        display: none;
    }
    .articleHitokotoCol .articleHitokotoFukidashi p {
        -webkit-line-clamp: 3;
        line-height: 1.4;
        margin-top: 0;
    }
    .areaTaikenMore {
        text-align: center;
        text-decoration: underline;
        margin-top: 10px;
    }
}
@media screen and (max-width: 389px) {
    .articleHitokotoPopBtn {
        max-width: 100%;
        font-size: 4.10256vw;
    }
    .articleHitokotoPopBtn::after {
        width: 7.9487vw;
    }
}