@charset "utf-8";
:root {
  --scrollbar-width: 0;
}
.l_fullscreen{
  overflow-x: hidden;
  width: 100vw;
  padding-right: var(--scrollbar-width);
}
_:-ms-lang(x)::-ms-backdrop, .l_fullscreen {
  padding-right: 17px;
}
#wrap-container #contents:first-child:before{
  content:none!important;
}
@media (max-width:767px){
  .l_fullscreen{
    margin-left: calc(-3% - 1px);
    margin-right: -3%;
  }
}
@media (min-width:768px) and (max-width:1239px){
  .l_fullscreen{
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media (min-width:1240px){
  .l_fullscreen{
    margin-left: calc(-1 * (100vw - 1216px)/2);
    margin-right: calc(-1 * (100vw - 1240px)/2);
  }
}
@media (min-width:1920px){
  .l_fullscreen{
    max-width: 1920px;
  }
}

@media (max-width:767px){
  .u_sp_none{display: none;}
}
@media (min-width:768px){
  .u_pc_none{display: none;}
}

.u_underline{
  text-decoration: underline;
}
.u_underline:hover{
  text-decoration: none;
}

.u_marker{
  display: inline-block;
  line-height: 1.2;
}
.u_marker.-marker_blue{
  background:linear-gradient(to bottom, transparent, transparent 41%, #E0E7F6 41%);
}
.u_marker.-marker_green{
  background:linear-gradient(to bottom, transparent, transparent 41%, rgba(0, 161, 65, 0.2) 41%);
}
.u_marker.-marker_red{
  background:linear-gradient(to bottom, transparent, transparent 41%, rgba(191, 54, 12, 0.2) 41%);
}

.l_limited{
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding:0 20px;
}
@media (max-width: 767px){
  .l_limited{
    padding:0 14px;
  }
}

.l_column2{
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: wrap;
}
.l_column2 > * {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: calc(50% - 15px);
  margin-top: 40px;
}
.l_column2.-wide > * {
  margin-top: 70px;
}
.l_column3 > * {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: calc(33% - 15px);
  margin-top: 65px;
}
@media (max-width:767px){
  .l_column2 > * {
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: calc(50% - 7px);
  }
  .l_column2:not(.-sp_too){
    display: block;
  }
  .l_column2:not(.-sp_too) > * {
    margin-top: 35px;
  }
}
@media (min-width: 767px){
  .l_column3{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

.p_mv{}
.p_mv__image{}
.p_mv__image_i{
  width: 100%;
}

.p_anchor{
  font-size: 0;
  margin-top: 50px;
}
.p_anchor__list{
  display: flex;
  align-items: stretch;
  background-color: #D9D9D9;
  padding: 0 1px;
}
.p_anchor__item{
  flex: 1 1 196px;
  background-color: #fff;
}
.p_anchor__item + .p_anchor__item{
  margin-left: 1px;
}
.p_anchor__item.-ana_recommend{
  flex: 1 1  300px;
}
.p_anchor__label_recommond{
  position: absolute;
  top: 3px;
  left: 22%;
  max-width: 158.5px;
}
.p_anchor__item:not(.-ana_recommend) .p_anchor__label_recommond{
  display: none;
}
.p_anchor__label_recommond_i{
  font-size: 1.6rem;
  max-width: 100%;
}
.p_anchor__link{
  padding: 7px 10px 29px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  position: relative;
}
.p_anchor__item.-ana_recommend .p_anchor__link{
  padding-top: 27px;
  padding-left: 43%;
}
.p_anchor__link[target="_blank"] .p_blank_icon{
  padding-top: 0.5em;
  padding-left: 5px;
  vertical-align: baseline;
}
.p_anchor__link::after{
  content:'';
  position: absolute;
  bottom: 2px;
  left: 50%;
  margin-left: -7px;
  width: 14.5px;
  height: 14.5px;
  background: url(/domestic/theme/ana_kushiro_navi/image/icon_right_BLU.png) no-repeat;
  background-size: contain;
  flex:0 0 14.5px;
}
.p_anchor__link[href^="#"]::after{
  transform: rotate(90deg);
}
.p_anchor__link_i{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 1.8rem;
  color: #262626;
  flex:1 1 auto;
  line-height: 1;
}
.p_anchor__item.-ana_recommend .p_anchor__link_i{
  justify-content: flex-start;
}

@media (max-width:767px){
  .p_anchor__list{
    flex-wrap: wrap;
  }
  .p_anchor__item, .p_anchor__item.-ana_recommend{
    flex: 0 0 50%;
    margin-top: 1px;
  }
  #contents .p_anchor__item:nth-of-type(2n){
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: calc(50% - 1px);
    margin-left: 1px;
  }
  .p_anchor__item + .p_anchor__item {
    margin-left: 0;
  }
  .p_anchor__item:last-child{
    margin-bottom: 1px;
    flex-basis: 100%;
  }
  .p_anchor__label_recommond{
    left: calc(50% - 68px);
    top: 22px;
  }
  .p_anchor__label_i{
    width: 129px;
  }
  .p_anchor__link{
    padding-top: 16px;
  }
  .p_anchor__link::after{
    bottom: 8px;
  }
  .p_anchor__item.-ana_recommend .p_anchor__link {
    overflow: hidden;
    align-items: center;
    padding-top: 43px;
    padding-left: 66px;
  }
  .p_anchor__link:not([href^="#"]){
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-bottom: 16px;
  }
  .p_anchor__link:not([href^="#"])::after{
    position: static;
    display: inline-block;
    margin-left: 5px;
    height: 12px;
  }
}
@media (min-width: 768px){
  .p_anchor__item.-ana_recommend .p_anchor__link::after{
    left: 56%;
  }
  .p_anchor__item.-ana_recommend .p_anchor__link_i{
    text-align: left;
    position: absolute;
    top: 25px;
    left: calc(22% + 62px);
  }
  .p_anchor__item.-ana_recommend:hover .p_anchor__link_i{
    text-decoration: underline;
  }
}

.p_banner{
  margin-top: 80px;
  font-size: 0;
}
.p_banner__heading{
  text-align: center;
}
.p_banner__heading_i{
  font-size: 2.6rem;
  display: inline;
  padding: 0 10.5px;
}
.p_banner__line{
  vertical-align: -3px;
}
.p_banner__content{
  text-align: center;
}
.p_banner__image{
  max-width: 1000px;
}
.p_banner__image_i{}

@media (max-width:767px){
  .p_banner__heading{
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p_banner__line{
    transform: translateY(5px) scale(1.5);
  }
  .p_banner__heading_i{
    font-size: 2.2rem;
  }
}

.p_rec{
  font-size: 0;
}
.p_rec__heading{
   margin-top: 90px;
   text-align: center;
}
.p_rec__label{
  display: block;
}
.p_rec__label_i{
  font-size: 1.6rem;
}
.p_rec__heading_i{
  font-size: 3.2rem;
  font-weight: bold;
  display: block;
}
.p_rec__lead{
  margin-top: 22px;
}
.p_rec__lead + .p_rec__lead {
  margin-top: 20px;
}
.p_rec__lead_i{
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.625;
  display: block;
}
.p_rec__lead_i.-large{
  font-size: 2.2rem;
}
.p_rec__content{}
.p_rec__content + .p_rec__content{
  margin-top: 112px;
}
.p_rec__bgimage{
  margin-top: 40px;
  display: block;
  position: relative;
}
.p_rec__bgImgLabel{
  position: absolute;
  top: 0;
  left: 20px;
}
.p_rec__bgImgLabel_i{}
.p_rec__bgimage_i{
  width: 100%;
  font-size: 1.6rem;
}
.p_rec__text{
  margin-top: 32px;
}
.p_rec__text_i{
  font-size: 1.6rem;
  line-height: 1.875;
}
.p_rec__note{
  margin-top: 10px;
}
.p_rec__note_item{
  margin-top: 5px;
  font-size: 1.4rem;
  padding-left: 18px;
  position: relative;
}
.p_rec__note_item::before {
  content:'\0203b';
  position: absolute;
  top: -1px;
  left: 0;
  width: 18px;
  height: 18px;
  font-size: 16px;
}
.p_rec__thum{
  margin-top: 47px;
  display: block;
}
.p_rec__thum_i{
  font-size: 1.6rem;
}
.p_rec__point{
  margin-top: 40px;
  border: 1px solid #D9D9D9;
}
.p_rec__dt{
  background-color: #ECF0F9;
  position: relative;
}
.p_rec__dt::after{
  content: '';
  position: absolute;
  width: 0;
  height: 0;
}
.p_rec__dt_label{}
.p_rec__dt_i{
  font-size: 2.2rem;
  color: #033CB7;
  margin-top: 5px;
}
.p_rec__dd{}
.p_rec__dd_i{
  font-size: 1.6rem;
  line-height: 2;
}
@media (max-width:767px){
  .p_rec__lead_i:not(.-large){
    text-align: left;
  }
  .p_rec__bgImgLabel{
    left: 0;
  }
  .p_rec__point{}
  .p_rec__dt{
    padding: 17px 37px 14px 27px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .p_rec__dt::after{
    bottom: -17px;
    left: 50%;
    margin-left: -19px;
    border-top: 17px solid #ECF0F9;
    border-right: 19px solid transparent;
    border-left: 19px solid transparent;
  }
  .p_rec__dt_label{}
  .p_rec__dt_i{
    padding-left: 13px;
    font-size: 2rem;
  }
  .p_rec__dd{
    padding: 27px 13px;
  }
  .p_rec__dd_i{}
}
@media (min-width:768px){
  .p_rec__point{
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
  }
  .p_rec__dt{
    flex: 0 1 35%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 30px;
  }
  .p_rec__dt::after{
    right: -27px;
    top: 50%;
    margin-top: -30px;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 27px solid #ECF0F9;
  }
  .p_rec__dt_label{
    max-width: 74px;
  }
  .p_rec__dd{
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    padding: 10px 50px;
  }
}

.p_button{
  font-size: 0;
  text-align: center;
}
.p_rec__point + .p_button{margin-top: 50px;}
.p_other .p_slider + .p_button{margin-top: 35px;}
@media (max-width: 767px){
  .p_other .p_slider + .p_button{margin-top: 45px;}
}
.p_button__link{
  padding: 25px 58px;
  display: inline-block;
  position: relative;
  border-radius: 75px;
  border: 1px solid #D9D9D9;
  background-color: #fff;
}
.p_button__link:not([target="_blank"])::after{
  content: '';
  width: 20px;
  height: 17px;
  background: url(/domestic/theme/ana_kushiro_navi/image/icon_right_BLU.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 17px;
}
.p_button__link_i{
  font-size: 1.6rem;
  color: #333333;
}
.p_button__link .p_blank_icon{
  font-size: 1.6rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 32px;
}
@media (max-width: 767px){
  .p_button__link{
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.p_interview{
  font-size: 0;
  margin-top: 102px;
  padding-top: 94px;
  padding-bottom: 75px;
  background-color: #F4F7FC;
}
.p_interview__heading{
  text-align: center;
}
.p_interview__label{
  display: block;
}
.p_interview__label_i{
  font-size: 1.6rem;
}
.p_interview__heading_i{
  font-size: 2.2rem;
  display: inline-block;
  padding: 0 40px 40px;
  background: url(/domestic/theme/ana_kushiro_navi/image/bg_half_fukidashi.png) no-repeat;
  background-position: center bottom;
  background-size: 100% auto;
}
.p_interview__label_i + .p_interview__heading_i{
  margin-top: 20px;
}
.p_interview__content{}

@media (max-width:767px){
  .p_interview__heading_i{
    font-size: 1.8rem;
    padding: 0 16px 32px;
  }
}

.p_profile{}
.p_profile__thum{}
.p_profile__thum_i{
  border-radius: 100%;
} 
.p_profile__dl{}
.p_profile__dt{}
.p_profile__imgtext{
  display: block;
}
.p_profile__imgtext_i{
  font-size: 1.6rem;
}
.p_profile__dt_i{
  margin-top: 10px;
  font-size: 1.6rem;
  display: block;
}
.p_profile__dt_i + .p_profile__dt_i {
  margin-top: 10px;
}
.p_profile__dt_i.-large{
  font-size: 1.8rem;
}
.p_profile rp, .p_profile rt{
  display: inline;
  font-size: inherit;
}
.p_profile__dd{
  margin-top: 20px;
}
.p_profile__dd_i{
  font-size: 1.6rem;
}
@media (max-width: 767px){
  .p_profile{
    margin-top: 20px;
  }
  .p_profile__thum{
    text-align: center;
  }
  .p_profile__imgtext{
    text-align: center;
  }
}
@media (min-width:768px){
  .p_profile{
    display: flex;
    align-items: stretch;
  }
  .p_profile__thum{
    flex: 0 1 214px;
  }
  .p_profile__dl{
    flex: 1 1 auto;
    padding-left: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.p_recommend{}
.p_recommend__thum{
  position: relative;
}
.p_recommend__thum_i{
  width: 100%;
}
.p_recommend__thum_note{
  font-size: 1.2rem;
  position: absolute;
  top: 100%;
  right: 0;
}
.p_recommend__label{
  position: absolute;
  top: 0;
  left: 0;
  padding: 6px 10px;
  background-color: #000;
}
.p_recommend__label.-green{
  background-color: #217F44;
}
.p_recommend__label.-orange{
  background-color: #BF360C;
}
.p_recommend__label_i::before{
  content:'';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: #fff;
}
.p_recommend__label_i{
  position: relative;
  font-size: 1.4rem;
  color: #fff;
  padding-left: 10px;
}
.p_recommend__dl{}
.p_recommend__dt{
  display: block;
  margin-top: 26px;
}
.p_recommend__dt_i{
  font-size: 1.8rem;
  font-weight: bold;
}
.p_recommend__dd{
  margin-top: 22px;
}
.p_recommend__dd_i{
  font-size: 1.5rem;
}
.p_message{}
.p_message__dt{
  margin-top: 25px;
}
.p_message__dt_i{}
.p_message__dd{
  margin-top: 10px;
}
.p_message__dd_i{
  font-size: 1.6rem;
}
@media (max-width:767px){
  .p_message__dt{
    text-align: center;
  }
}

.p_route{
  font-size: 0;
}
.p_route__heading{
  margin-top: 50px;
  text-align: center;
}
.p_interview__heading + .p_route__heading {
  margin-top: 0;
}
.p_route__heading_i{
  font-size: 2.6rem;
  display: inline-block;
  line-height: 1.2;
  font-weight: bold;
}
.p_route__heading_i.-small{
  font-size: 2rem;
}
.p_route__content{}
.p_route__content + .p_route__content{
  margin-top: 90px;
}
.p_route__routemap{
  margin-top: 40px;
}
.p_route__routemap_i{}
.p_route__routemap + .p_rec__note{
  margin-top: 40px;
  margin-bottom: -20px;
}
@media (max-width:767px){
  .p_route__routemap {
    text-align: center;
  }
  .p_route__heading_i{
    font-size: 2.2rem;
  }
  .p_route__heading_i.-small{
    font-size: 1.8rem;
    margin-top: 6px;
  }
}

.p_other{
  background-color: #F4F7FC;
  margin-top: 60px;
  padding-top: 106px;
  padding-bottom: 101px;
}

.p_access{
  font-size: 0;
}
.p_timetable{
  margin-top: 43px;
}
.p_timetable__map{
  padding-top: 55px;
}
.p_timetable__map_i{}
.p_timetable__map > .p_rec__note{
  margin-top: 24px;
}
.p_timetable__table{}
.p_timetable__heading{
  text-align: center;
}
.p_timetable__heading_i{
  font-size: 2rem;
}
.p_timetable__heading_i.-small{
  font-size: 1.8rem;
}
.p_timetable__table > .p_rec__note{
  margin-top: 27px;
}
.p_table_column2{
  max-width: 100%;
  overflow-x: auto;
}
.p_rec__note + .p_table_column2{
  margin-top: 10px;
}
.p_table_column2 + .p_table_column2{
  margin-top: 20px;
}
.p_table_column2__item{
  border: 1px solid #D9D9D9;

}
.p_table_column2__item tr{}
.p_table_column2__item tr:nth-of-type(1){background-color: #E0E7F6;}
.p_table_column2__item tr:nth-of-type(2){background-color: #F5F5F5;}
.p_table_column2__item th, .p_table_column2__item td{
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  padding: 10px 7px;
  border-left: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
.p_table_column2__item th{
  border-bottom: 1px solid #D9D9D9;
}
.p_table_column2__item.-waypoint td{
  border-bottom: 1px dashed #D9D9D9;
}
@media (max-width:767px){
  .p_timetable__heading_i{
    font-size: 1.8rem;
  }
  .p_timetable__heading_i.-small{
    font-size: 1.4rem;
  }
  .p_timetable__table {
    margin-top: 36px;
  }
  .p_table_column2__item{
    width: 100%;
  }
  .p_table_column2__item + .p_table_column2__item {
    margin-top: 10px;
  }
}
@media (min-width:768px){
  .p_timetable{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .p_timetable__map{
    flex: 0 1 45%;
  }
  .p_timetable__table{
    flex: 1 1 55%;
    margin-left: 56px;
  }
  .p_table_column2{
    display: flex;
    align-items: flex-start;
  }
  .p_table_column2__item{
    flex: 1 1 50%;
  }
  .p_table_column2__item + .p_table_column2__item {
    margin-left: 10px;
  }
}

.p_furusato{
  font-size: 0;
  margin-top: 88px;
}
.p_furusato__heading{
  text-align: center;
}
.p_furusato__heading_i{
  font-size: 2.2rem;
}
.p_furusato__banner{
  text-align: center;
  margin-top: 36px;
}
.p_furusato__link{
  position: relative;
  display: inline-block;
  max-width: 100%;
}
.p_furusato__link:hover{
  opacity: 0.7;
}
.p_furusato__link_i{}
.p_furusato__link .p_blank_icon {
  position: absolute;
  bottom: 2px;
  right: 2px;
  background-color: #fff;
  padding: 5px;
}

@media (max-width:767px){
  .p_slider{
    position: relative;
  }
  .slick-dotted.slick-slider.p_slider__list{
    margin-bottom: 0;
  }
  .p_slider__button{
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
  }
  .p_slider__button .slick-arrow{
    width: 32px;
    height: 39px;
    border: 1px solid #033CB7;
    border-radius: 4px;
    top: auto;
    bottom: 0;
    transform: none;
    position: static;
    background: url(/domestic/theme/ana_kushiro_navi/image/icon_slider_next_WHT.svg) no-repeat center center #033CB7;
  }
  .p_slider__button .slick-prev{
    left: 0;
    transform: rotate(180deg);
  }
  .p_slider__button .slick-next{
    right: 0;
  }
  .p_slider__button .slick-arrow.slick-disabled{
    background-color: #fff;
    border-color: #ccc;
    background-image: url(/domestic/theme/ana_kushiro_navi/image/icon_slider_next_BLU.svg);
  }
  .p_slider__button .slick-arrow::before{
    content: none;
  }
  .p_slider__dots{
    margin-top: -34px;
    max-width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
  }
  .p_slider__dots .slick-dots{
    padding: 0 40px;
    bottom: 0;
    position: static;
  }
  .p_slider__dots .slick-dots button::before{
    font-size: 12px;
    position: static;
  }
  .p_slider__dots .slick-dots li.slick-active button:before{
    color: #033CB7;
  }
}

@media (max-width:767px){
  .p_anchor{margin-top: 20px;}
  .p_recommend__dt{margin-top: 13px;}
  .p_recommend__dd{margin-top: 10px;}
  .p_message__dd{margin-top: 20px;}
}

.p_banner__link{
  margin-top: 20px;
  display: inline-block;
  max-width: 100%;
}
.p_banner__link:hover{
  opacity: 0.7;
}


.module-area {
	padding: 30px 0 0;
}

.module-area .module-wrap {
		max-width: 1000px;
		margin: 0 auto;
		padding: 0;
	}

.module-area .module-wrap .d_moduleArea h2 {
			background-color: #fff;
		}

.module-area .module-wrap .d_bookingLink {
		background-color: #fff;
		padding-bottom: 30px;
	}

.module-area .module-wrap .d_awardReservationLink {
		display:none;
	}

.module-area .module-wrap .md003,.module-area .module-wrap .md001 {
			margin-bottom: 50px;
		}

@media only screen and (min-width: 0px) and (max-width: 767px) {

  .module-area .module-wrap .md003,.module-area .module-wrap .md001 {
    margin-bottom: 30px;
  }
}

.module-area .md-title {
		background-color: #012F64;
		color: white;
		font-weight: bold;
		padding: 10px 0 10px 20px;
}

.module-area .res-contents.module-travel_cover {
		margin-top: 0;
}

.module-area .module-travel_inner.module-travel_parts.horizon {
		padding-top: 0!important;
}