.contents_heading, .rrg_navi_list{
    max-width: 1281px;
    width: 100vw;
}
.pc{
    display: block;
}
.sp{
    display: none;
}
#mainContents p{
    font-family: 'Noto Sans JP', serif;
}
.mv-title{
    background: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/mv-bg.webp) no-repeat center;
}
.mv-picture-img{
    margin: 0 auto;
    display: block;
}
.hakuba-lead-section{
    background: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/lead-bg.webp) no-repeat center;
    padding: 73px 0;
    color: #fff;
    text-align: center;
    text-shadow: 0 0px 10px #000;
}
.hakuba-lead-section-title{
    font-size: 42px;
    font-weight: bold;
    line-height: 1;
}
.hakuba-lead-section-text{
    font-size: 16px;
    line-height: 32px;
}
.hakuba-lead-section-p{
    margin-top: 2em;
}
.kanolly-resorts-lead-section{
    display: grid;
    grid-template-areas: 
    "title images" 
    "p images";
    grid-template-rows: 190px auto;
    max-width: 1120px;
    width: 90vw;
    margin: 80px auto;
    column-gap: 75px;
}
.kanolly-resorts-lead-section.-room-301{
    grid-template-areas: 
    "images title" 
    "images p";
    margin-top: 0;
    grid-template-rows: 150px auto;
}
.kanolly-resorts-lead-section.-room-301 .kanolly-resorts-lead-section-title{
    margin-top: 40px;
}
.kanolly-resorts-lead-section-title{
    font-size: 35px;
    line-height: 1;
    grid-area: title;
    margin-top: 80px;
    text-align: center;
    font-family: 'Noto Sans JP', serif;
}
.kanolly-resorts-lead-section-title-small{
    font-size: 24px;
    line-height: 36px;
    margin-top: 10px;
}
.kanolly-resorts-lead-section-p{
    font-size: 16px;
    line-height: 32px;
    margin-top: 2em;
    grid-area: p;
}
.kanolly-resorts-lead-section-images{
    grid-area: images;
    width: 557px;
    row-gap: 25px;
    display: flex;
    flex-direction: column;
}
.kanolly-resorts-rooms-section-wrapper{
    background-color:#fff4ce;
    padding: 75px 0;
}
.kanolly-resorts-rooms-section{
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
}
.kanolly-resorts-section-title{
    font-size: 35px;
    text-align: center;
    line-height: 1;
    margin-bottom: 15px;
    font-family: 'Noto Sans JP', serif;
}
.kanolly-resorts-section-info{
    font-size: 24px;
    text-align: center;
    line-height: 1;
    margin-bottom: 30px;
}
.kanolly-resorts-section-description{
    font-size: 16px;
    line-height: 32px;
}
.kanolly-resorts-rooms-description{
    margin-bottom: 30px;
}
.kanolly-resorts-room-sections{
    display: flex;
    flex-direction: column;
    row-gap: 43px;
    margin-top: 83px;
}
.kanolly-resorts-room-section{
    display: grid;
    grid-template-areas: "img title"
                         "img info"
                         "img desc";
    grid-template-columns: 554px auto;
    grid-template-rows:90px 60px auto;
    column-gap: 75px;
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
}
.kanolly-resorts-h3-section-title{
    grid-area: title;
    font-size: 35px;
    line-height: 1;
    text-align: center;
    margin-top: 40px;
}
.kanolly-resorts-room-section-info{
    grid-area: info;
    font-size: 24px;
    line-height: 1;
    text-align: center;
}
.kanolly-resorts-h3-section-image{
    grid-area: img;
    width: 554px;
    display: block;
}
.kanolly-resorts-room-section-description{
    grid-area: desc;
    font-size: 16px;
    line-height: 32px;
}
.kanolly-resorts-cuisine-section-wrapper{
    background: linear-gradient(90deg, #facc22 30%, #f83600 150%);
    padding: 75px 0;
}
.kanolly-resorts-cuisine-section{
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
}
.kanolly-resorts-cuisine-subsections{
    display: flex;
    flex-direction: column;
    row-gap: 45px;
    margin-top: 40px;
}
.kanolly-resorts-cuisine-description{
    text-align: center;
}
.kanolly-resorts-cuisine-subsection{
    display: grid;
    grid-template-areas:"picture title"
                        "picture desc";
    grid-template-columns: 554px auto;
    grid-template-rows:105px auto;
    column-gap: 75px;
}
.kanolly-resorts-cuisine-section-picture{
    grid-area: picture;
}
.kanolly-resorts-cuisine-subsection:nth-child(odd){
    grid-template-areas:"title picture"
                        "desc picture";
    grid-template-columns: auto 554px;
}
.kanolly-resorts-h3-section-description{
    font-size: 16px;
    line-height: 32px;
}
.kanolly-resorts-cuisine-subsection-title{
    margin-top: 40px;
    font-family: 'Noto Sans JP', serif;
}
.kanolly-resorts-experience-section{
    display: grid;
    grid-template-areas: "title image"
                         "info image"
                         "description image"
                         "blocks blocks";
    grid-template-columns: auto 554px;
    grid-template-rows: 100px auto auto auto;
    max-width: 1120px;
    width: 90vw;
    margin: 80px auto;
    column-gap: 60px;
}
.kanolly-resorts-experience-section-title{
    font-size: clamp(30px, 3vw, 42px);
    margin-top: 40px;
}
.kanolly-resorts-section-title{
    grid-area: title;
}
.kanolly-resorts-section-info{
    grid-area: info;
}
.kanolly-resorts-section-description{
    grid-area: description;
}
.kanolly-resorts-experience-image{
    grid-area: image;
}
.kanolly-resorts-blocks{
    grid-area: blocks;
}
.kanolly-resorts-three-blocks{
    display: grid;
    column-gap: 20px;
    margin-top: 40px;
    grid-template-columns: 1fr 1fr 1fr;
}
.kanolly-resorts-four-blocks{
    display: grid;
    column-gap: 20px;
    margin-top: 40px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.kanolly-resorts-imgh3-section-description{
    margin-top: 15px;
}
.kanolly-resorts-other-section{
    background-color:#fff4ce;
    padding: 80px 0;
}
.kanolly-resorts-other-blocks{
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
}
.kanolly-resorts-access-section{
    padding: 80px 0;
}
.kanolly-resorts-access-lead{
    text-align: center;
    font-size: 16px;
}
.kanolly-resorts-access-map ,
.kanolly-resorts-access-map iframe{
    width:800px;
    height:605px;
    margin: 0 auto;
}
.kanolly-resorts-access-map{
    margin-top: 40px;
    margin-bottom: 80px;
}
.access-by-train-lead{
    font-size:24px;
    margin-bottom:40px;
    text-align: center;
}
.access-by-train-images{
    display: flex;
    row-gap:13px;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
}
.access-by-train-image{
    display: block;
    margin: 0 auto;
}
.model-course-and-plan{
    background-color: #02013a;
    margin-bottom: 50px;
}
.model-course-section{
    padding: 80px 0;
    background-image: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/model-course-bg.webp);
    background-size: cover;
}
.model-plan-wrapper{
    padding: 80px 0;
    background-image: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/model-bg.webp);
    background-size: cover;
    margin: 0 auto;
}
.model-course-section-title{
    font-size: 35px;
    line-height: 42px;
    text-align: center;
    color: #000;
}
.schedules{
    display: flex;
    flex-direction: column;
    row-gap: 40px;
    max-width: 780px;
    width:90vw;
    margin: 60px auto 0;
}
.model-course-plan-title{
    color: #fff;
    font-size: 42px;
    margin-bottom: 45px;
    line-height: 1;
}
.model-course-plan-title.-no-margin{
    margin-bottom: 0;
}
.model-plan-basic-text.-margin-bottom{
    margin-bottom: 20px;
}
.model-plan-big{
    font-size: 24px;
    color: #fff;
    margin: 20px 0;
    line-height: 1.3;
}
.model-plan-yellow{
    color:#fff600;
    line-height: 24px;
}
.model-plan-section{
    color: #fff;
    max-width: 860px;
    width: 90vw;
    margin: 0 auto 40px;
}
.model-plan-basic-text{
    font-size: 16px;
    line-height: 24px;
}
.kanolly-resorts-imgh3-section-description{
    font-size: 16px;
    line-height: 24px;
}
.back_button_area{
    margin-bottom: 0;   
}
.rooms-section-wrapper{
    display: flex;
    column-gap: 20px;
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto 80px;
}
.rooms-section-title{
    font-size: 35px;
    text-align: center;
    line-height: 65px;
    font-family: 'Noto Sans JP', serif;
}
.rooms-section-lead{
    margin-top: 10px;
    font-size: 16px;
    line-height: 32px;
}
.rooms-section-img{
    width: 360px;
    height: 240px;
    margin: 0 auto;
    display: block;
    object-fit: cover;
    object-position: center;
}
.cuisine-section-title{
    font-size: 42px;
}
.inside-retreat-section{
    margin-top: 75px;
}
.resorts-section{
    width: 90vw;
    margin-left:auto;
    margin-right: auto;
    margin-bottom: 75px;
}
.kanolly-resorts-section-description{
    text-align: center;
}
.three-images{
    margin: 35px auto 0;
    display: flex;
    gap: 20px;
    max-width: 1120px;
    width: 90vw;
    flex-wrap: wrap;
    justify-content: center;
}
.resorts-access-section{
    background: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/access-bg.webp) no-repeat center;
    background-size: cover;
    padding: 75px 0;
}
.resorts-inside-retreat-image{
    object-fit: contain;
}
.schedule-section-desc {
    font-size: 16px;
    line-height: 32px;
    text-align: center;
    margin-top: 10px;
}
.price-calendar-wrapper{
    background-color: #fff;
}
.price-calendar-image{
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
    display: block;
}
.conditions{
    color: #fff;
}
.condition-section-last-wrapper{
    background: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/model-bg.webp) no-repeat center center;
    background-size: cover;
    padding: 30px 0 80px;
}
.condition-section-title{
    font-size:32px;
    line-height: 42px;
    margin-bottom: 20px;
}
.condition-section{
    max-width: 1120px;
    width: 90vw;
    margin: 0 auto;
}
.condition-section-first-wrapper{
    background: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/model-bg.webp) no-repeat center center;
    background-size: cover;
    padding: 135px 0 30px;
}
.premience-contact {
    padding-top: 0;
}
.condition-section-lead.-package-price{
    font-size: 24px;
    line-height: 36px;
}
.condition-section-lead ,
.condition-section-list{
    font-size: 16px;
    line-height: 32px;
}
.condition-section-lead.-included-price{
    margin-top: 30px;
}
a.condition-section-link{
    color: #fff;
    text-decoration: underline;
}
.condition-section-lead-line{
    display: flex;
    justify-content: space-between;
    max-width: 580px;
}
.condition-section-lead .-red{
    color: #d96464;
}
.premience-top-return{
    top: auto;
}
@media (min-width:1001px) and (max-width:1150px) {
    .kanolly-resorts-lead-section-title{
        font-size: 32px;
    }
    .rooms-section-title{
        font-size: 28px;
    }
    .access-by-train-lead{
        line-height: 1.5;
    }
}
@media (max-width:1000px) {
    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
    .hakuba-lead-section-title{
        font-size: 30px;
        line-height: 60px;
        margin-bottom: 20px;
        color: #020058;
        text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
    }
    .hakuba-lead-section-p{
        width: 90vw;
        margin: 0 auto 2em;
        text-align: left;
        color: #020058;
        text-shadow: 0 0 10px #fff , 0 0 10px #fff , 0 0 10px #fff ,0 0 10px #fff;
    }
    .hakuba-lead-section{
        background-image: url(/luxurytravel/premience/gastronomicexperience/umitokamakurakoshigoe/images/lead-bg-sp.webp);
        background-size: cover;
    }
    .kanolly-resorts-lead-section{
        display: block;
        width: 90vw;
        margin: 0 auto;
    }
    .kanolly-resorts-lead-section-images{
        margin-top: 30px;
        width: 100%;
        display: flex;
        flex-direction: column;
        row-gap: 15px;
    }
    .kanolly-resorts-lead-section-title{
        font-size: 24px;
    }
    .kanolly-resorts-lead-section-title-small{
        font-size: 19px;
        line-height: 28.5px;
    }
    .kanolly-resorts-section{
        width: 90vw;
        margin: 0 auto;
        background: none;
    }
    .kanolly-resorts-section-title{
        font-size: 30px;
    }
    .kanolly-resorts-room-sections{
        row-gap: 80px;    
    }
    .kanolly-resorts-room-section{
        display: block;
    }
    .kanolly-resorts-section-info{
        font-size: 19px;
    }
    .kanolly-resorts-h3-section-title{
        font-size: 24px;
        margin-top: 0;
    }
    .kanolly-resorts-room-section-info{
        font-size: 19px;
        margin-top: 15px;
        margin-bottom: 40px;
    }
    .kanolly-resorts-room-section-description{
        margin-top:25px;
    }
    .kanolly-resorts-section-description{
        text-align: left;
    }
    .kanolly-resorts-cuisine-subsection{
        display: block;
    }
    .kanolly-resorts-h3-section-image{
        width:100%;
    }
    .kanolly-resorts-cuisine-subsection-image{
        margin: 40px auto 25px;
    }
    .kanolly-resorts-cuisine-subsections{
        row-gap: 80px;
    }
    .kanolly-resorts-experience-section{
        display: block;
        width: 90vw;
        margin: 0 auto 80px;
    }
    .kanolly-resorts-experience-section-title{
        line-height: 1.8;
        margin-bottom: 5px;
    }
    .kanolly-resorts-experience-image{
        margin: 10px auto 25px;
        display: block;
        width: 100%;
    }
    .kanolly-resorts-three-blocks{
        display: block;
    }
    .kanolly-resorts-four-blocks{
        grid-template-columns: 1fr 1fr;
        row-gap: 20px;
    }
    .kanolly-resorts-access-main-text{
        width: 100%;
    }
    .kanolly-resorts-access-map ,
    .kanolly-resorts-access-map iframe{
        width: 100%;
        min-height: 200px;
        height: 50vw;
    }
    .kanolly-resorts-imgh3-section-image{
        width:80vw;
        margin: 0 auto;
        display: block;
    }
    .kanolly-resorts-three-blocks {
        display: flex;
        flex-direction: column;
        row-gap: 30px;
    }
    .kanolly-resorts-four-blocks{
        margin-top: 20px;
    }
    .kanolly-resorts-other-section{
        width: 100%;
    }
    .kanolly-resorts-other-blocks{
        width: 90vw;
        margin: 0 auto;
    }
    .kanolly-resorts-access-lead{
        font-size: 19px;
        line-height: 28.5px;
    }
    .kanolly-resorts-access-main-p-margin ,
    .kanolly-resorts-access-main-p-margin2{
        text-indent: 0;
    }
    .kanolly-resorts-access-section{
        padding-bottom: 60px;
    }
    .model-course-and-plan{
        background-color:#163f65;
        background-image: none;
    }
    .model-course-section ,
    .model-plan-wrapper{
        background-image: none;
    }
    .model-plan-wrapper{
        padding-top: 0;
    }
    .model-course-plan-title{
        font-size: 24px;
        line-height: 1.5;
        margin-bottom: 20px;
    }
    .model-plan-big{
        font-size: 19px;
        line-height: 1.5;
        margin-top: 0;
    }
    .model-plan-price-info{
        margin-top:20px;
    }
    .model-plan-yellow{
        margin-top: 20px;
    }
    .schedules picture{
        margin: 0 auto;
    }
    .kanolly-resorts-imgh3-section-description{
        font-size: 16px;
        line-height: 24px;
    }
    .rooms-section-wrapper{
        flex-direction: column;
        row-gap:15px;
        margin-top: 70px;
    }
    .three-images{
        flex-direction: column;
        row-gap:15px;
    }
    .access-by-train-lead{
        font-size: 19px;
        text-align: left;
        line-height: 28.5px;
    }
    .kanolly-resorts-access-map{
        margin-bottom: 40px;
    }
    .model-course-section-title{
        color: #fff;
        font-size: 22.5px;
        line-height: 35px;
    }
    .rooms-section-title{
        font-size: 24px;
    }
    .kanolly-resorts-cuisine-description{
        margin-bottom: 80px;
    }
    .access-by-train-images{
        row-gap: 80px;
    }
    .schedules{
        row-gap: 20px;
    }
    .schedule-section-desc{
        width: 90vw;
        text-align: left;
        margin: 0 auto;
        color: #fff;
    }
    .conditions{
        background-image:none;
        padding:0;
    }
    .condition-section-title{
        font-size: 24px;
        text-align: center;
    }
    .condition-section-lead.-package-price{
        font-size: 21px;
        line-height: 31.5px;
    }
    .condition-section-lead.-included-price{
        margin-top: 60px;
    }
    .condition-section-last{
        margin-top: 60px;
    }
}