@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap&subset=japanese');
/**/
/*★ リセット ★*/
.main div:not([class])::after {
  content: none;
}
.main a {
  text-decoration: none;
}
.main b {
  font-weight: normal;
}
.main .is-em {
  font-weight: bold;
}
.is-inline-block {
  display: inline-block;
}
.
/*------------------------------------------------*/
/*★ ページスタイル設定 ★*/
#hisApp {
  position: relative;
}
:root {
  --icon-arrow-right-white: url("/cmn/icon/icon_arrow_right_white.svg");
  --icon-blank-white: url("/cmn/icon/icon_launch_white.svg");
  --default-color: #000;
  --default-color-bg-gray: #f3f3f3;
  --default-color-bg-blue: #e1e8f3;
  --default-color-blue: #002554;
  --default-color-right-blue: #aaaad2;
  --default-color-red: #c7131b;
  --default-font-size-pc-val: 16; 
  --default-font-size-pc: 16px;
  --default-font-size-sp: calc(22vw / 7.5);
  --default-font-size: min(var(--default-font-size-sp), var(--default-font-size-pc));
  --default-width-pc: 992px;
  --default-width-pc-val: 992;
  --default-width: min((710vw / 7.5), var(--default-width-pc));
  --default-bg-width-pc: max(100%, 1920px);
  --default-bg-setting: no-repeat center center / cover;
  --default-hover-speed: .3s;
  --default-hover-transition: opacity var(--default-hover-speed);
}
.main {
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", sans-serif;
  font-size: var(--default-font-size);
  color: #000;
  line-height: calc(42 / 26);
  overflow: hidden;
  padding-bottom: 0 !important;
}

/*------------------------------------------------*/
/*★ ＝＝ headerArea ＝＝ ★*/
.mv {
  display: grid;
  align-items: end;
  row-gap: min((135vw / 7.5), 90px);
  height: 632px;
  background: url("../images/mv_bg_pc.jpg") no-repeat top center / var(--default-bg-width-pc);
  padding-top: min((275vw / 7.5), 80px);
}
.is-sp .mv {
  height: calc(858vw / 6);
  background: url("../images/mv_bg_sp.jpg") no-repeat top center / cover;
}
.is-device-tab .mv {
  height: calc(582vw / 7.5);
  row-gap:0;
}
.mv__inner {
  margin: auto;
  height: calc(265vw / 7.5);
}
.is-pc .mv__inner {
  height: 285px;
}
.mv__title {
  /*height: calc(265vw / 7.5);
  width: calc(714vw / 7.5);*/
}
.is-sp .mv__title {
  padding: 0 calc(22vw / 7.5);
}
.is-pc .mv__title {
  /*height: 285px;
  width: 947px;*/
}
.section__navi {
  background-color:rgba(37,38,104,0.6);
}
.section__navi--list {
  display: flex;
  justify-content: center;
}
.is-pc .section__navi--list {
  width: var(--default-width-pc);
  margin: auto;
}
.section__navi--item {
  width: 50%;
  height: min((180vw / 7.5), 112px);
  background: var(--default-color-blue);
  text-align: center;
  border-right: #96a1bb solid 1px;
  transition: background var(--default-hover-speed);
}
.is-pc .section__navi--item:first-of-type {
  border-left: #96a1bb solid 1px;
}
.is-sp .section__navi--item:last-of-type {
  border-right: none;
}
.section__navi--link {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding-top: min((10vw / 7.5), 12px);
}
.section__navi--link::after {
  content: "";
  width: 0.8em;
  height: 1.7em;
  background: var(--icon-arrow-right-white) no-repeat center center / cover;
  transform: rotate(90deg);
  margin-top: 0.5em;
}
.section__navi--sub {
  font-size: min((18vw / 7.5), 15px);
  opacity: .35;
  padding-bottom: min((5vw / 7.5), 5px);;
}
.section__navi--name {
  font-size: min((28vw / 7.5), 22px);
  line-height: 1.3;
  font-weight: bold;
}
.is-device-tab .section__navi--name {
  font-size: 20px;
}
.is-sp .is-dst .section__navi--name , .is-sp .is-aerok .section__navi--name {
  display: flex;
  flex-direction: column;
}
.is-device-tab .is-dst .section__navi--name, .is-device-tab .is-aerok .section__navi--name {
  flex-direction: row;
}

/*------------------------------------------------*/
/*★ ＝＝ mainArea ＝＝ ★*/
#mainArea {
  background: var(--default-color-bg);
}
.section__inner {
  width: var(--default-width);
  margin: auto;
  padding: min((75vw / 7.5), 75px) 0;
  position: relative;
}
/*search-ancher*/
#search-ancher {
  padding-top: min((70vw / 7.5), 70px);
}
.search-ancher__lead {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.search-ancher__lead--text {
  font-size: min((25vw / 7.5), 25px);
  font-weight: bold;
}
.is-sp .search-ancher__lead--link {
  width: calc(475vw / 7.5);
}
/*base-title*/
.section__title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: min((30vw / 7.5), 50px);
}
.base-title--text {
  font-size: min((40vw / 7.5) ,30px);
  color: var(--default-color-blue);
}
.base-title--text--sub {
  font-size: min((20vw / 7.5) ,18px);
  color: var(--default-color-right-blue);
}
/*lead__text*/
.lead__text {
  font-size: min((24vw / 7.5), 18px);
  font-weight: bold;
  text-align: center;
}
.is-sp .lead__text {
  width: calc(660vw / 7.5);
  margin: auto;

}

/*intro*/
#intro {
  background: var(--default-color-bg-blue);
}
.is-sp #intro .section__inner {
  width: 100%;
}
.intro__image{
	text-align: center;
}
.intro__text {
  width: min((662vw / 7.5) , 855px);
  font-weight: bold;
  line-height: 1.7;
  margin: auto;
  padding-top: min((75vw / 7.5) , 45px);
}
.intro__detail {
  font-size: min((28vw / 7.5), 18px);
}
.intro__notes {
  font-size: min((24vw / 7.5), 16px);
  padding-top: min((20vw / 7.5) , 40px);
}
/*network*/
#network {
  background: var(--default-color-bg-gray);
}
.is-sp #network .section__inner {
  width: 100%;
}
.network__map {
  padding-top: min((20vw / 7.5), 20px);
  
}
.is-sp .network__map--link {
  position: relative;
}
.is-pc .network__map--link {
  pointer-events: none;
}
.is-sp .network__map--link::after {
  display: block;
  content: '';
  width: calc(97vw / 7.5);
  height: calc(97vw / 7.5);
  background: rgba(49,49,49,0.88) url("/cmn/icon/icon_search_white.svg") no-repeat top center / cover;
  position: absolute;
  right: 0;
  bottom: 0;
}
/*dst*/
#dst .section__title {
  margin-bottom: min((80vw / 7.5), 50px);
}
.dst__list {
  display: flex;
  gap: min((50vw / 7.5), 50px) min((14vw / 7.5), 16px);
  flex-wrap: wrap;
}
.is-pc .dst__list {
  justify-content: center;
}
.dst__list--item {
  width: calc((100% - (14vw / 7.5)) / 2);
}
.is-pc .dst__list--item {
  width: calc((100% - (16px * 2)) / 3);
}
.dst__list--title {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: min((20vw / 7.5), 14px);
}
.dst__list--title--main {
  font-size: min((26vw / 7.5), 22px);
  color: var(--default-color-blue);
}
.dst__list--title--sub {
  font-size: min((17.5vw / 7.5), 14px);
  color: var(--default-color-right-blue);
}
.dst__list--button {
  margin-top: min((14vw / 7.5), 10px);
}
.dst__list--link {
  display: grid;
  grid-template-columns: 1fr 1.3em;
  gap: 0 1em;
  justify-items: center;
  align-items: center;
  background: var(--default-color-red);
  border-bottom: min((4vw / 7.5), 4px) solid #940f15;
  border-radius: min((5vw / 7.5), 4px);
  padding: 0.8em 0.8em 0.8em 2.5em;
  transition: var(--default-hover-transition);
}
.is-pc .dst__list--link {
  padding-left: 3.2em;
}
.dst__list--link::after {
  content: "";
  width: 1.3em;
  height: 1.3em;
  background: var(--icon-blank-white) no-repeat center center / cover;
}
.dst__list--link--text {
  display: flex;
  flex-direction: column;
  color: #fff;
  line-height: 1.3;
  text-align: center;
}
.dst__list--link--prefix {
  font-size: min((20vw / 7.5), 14px);
}
.dst__list--link--search {
  font-size: min((26vw / 7.5), 18px);
  font-weight: bold;
}
.is-pc .js-modal-block {
  max-width: 1015px;
  min-height: 400px;
  max-height: 510px;
}
/*seat*/
#seat {
  background: var(--default-color-bg-gray);
}
#seat .section__inner {
  width: 100%;
  padding-bottom: 0;
}
.seat__list {
  width: var(--default-width-pc);  
  background: #fff;
  margin: 40px auto 75px;
}
.is-device-tab .seat__list {
  display: none;
}
.seat__list--item {
  height: 50px;
  display: grid;
  grid-template-columns: 239px 1fr 1fr 1fr;
  column-gap: 11px;
  align-items: center;
  border-bottom: 1px solid #e9ebec;
}
.seat__list--item.is-class {
  height: 212px;
}
.seat__list--item.is-meal .seat__list--item--text.is-business {
  grid-column: 2 / 5;
}
.seat__list--item--text.is-heading {
  font-size: 14px;
  font-weight: bold;
  padding-left: 2em;
}
.seat__list--item--text:not(.is-heading) {
  text-align: center;
}
.is-class .seat__list--item--text:not(.is-heading) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 53px;
  font-size: 16px;
  font-weight: bold;
  background: var(--default-color-blue);
  color: #fff;
}
.is-checkin_counter .seat__list--item--text, .is-priority_demurrage .seat__list--item--text.is-premium_economy, .is-cabin_luggage .seat__list--item--text.is-premium_economy , .seat__list--item--text .is-notes {
  font-size: 13px;
}
.is-notes {
  display: block;
}
/*.seat__list--item--title, .seat__list--item--text {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 5.5px;
  border-bottom: 1px solid #e9ebec;
}
.seat__list--item--title {
  flex-direction: column;
  height: 212px;
}
.seat__list--item--text {
  justify-content: center;
}
.seat__list--item:first-child .seat__list--item--title, .seat__list--item:first-child .seat__list--item--text {
  padding-left: 0;
}
.seat__list--item:last-child .seat__list--item--title, .seat__list--item:last-child .seat__list--item--text {
  padding-right: 0;
}

.is-heading .seat__list--item--title {
  align-items: flex-start;
  justify-content: center;
}
.is-heading .seat__list--item--text {
  align-items: center;
  justify-content: flex-start;
}
.seat__list--item--text.is-small {
  font-size: 13px;
}
.seat__list--item--text.is-join {
  grid-column: 2 / 5;
  background-color: #ff9c9c;
}
.seat_type {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 53px;
  font-size: 16px;
  font-weight: bold;
  background: var(--default-color-blue);
  color: #fff;
}*/
.seat_detail__list {
  background: #fff;
}
.is-sp #seat .contetns__inner:first-of-type {
  padding-bottom: calc(75vw / 7.5);
}
#seat .contetns__inner:last-child {
  background: #fff;
}
.seat_detail__list {
  width: var(--default-width);
  margin: auto;
  padding: min((75vw / 7.5), 75px) 0 0;
  position: relative;
}
.seat_detail__list--item .base-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.1;
}
.seat_detail__list--item .base-title--text--sub {
  font-size: min((18vw / 7.5), 18px);
  font-weight: bold;
  color: var(--default-color-blue);
}
.seat_detail__list--item .base-title--text {
  font-size: min((58vw / 7.5), 60px);
  color: var(--default-color-right-blue);
  font-weight: bold;
}
.is-sp .pickup_info__list {
  width: calc(664vw / 7.5);
  margin: auto;
}
.pickup_info__list--item {
  display: flex;
  flex-direction: column;
  margin-top: min((70vw / 7.5), 80px);
}
.is-pc .pickup_info__list--item {
  flex-direction: row;
  align-items: center;
  padding-right: 20px;
}
.is-pc .pickup_info__list--item:nth-child(even) {
  padding-right: 0;
  padding-left: 20px;
}
.pickup_info--image {
  margin-bottom: calc(25vw / 7.5);
}
.is-pc .pickup_info__list--item:nth-child(even) .pickup_info--image {
  order: 2;
}
.is-pc .pickup_info--image {
  width: 492px;
  /*height: 382px;*/
  overflow: hidden;
  margin-bottom: 0;
}
.is-pc .pickup_info--text {
  width: 440px;
  margin-left: 40px;
}
.is-pc .pickup_info__list--item:nth-child(even) .pickup_info--text {
  width: 440px;
  margin-left: 0;
  margin-right: 40px;
}
.pickup_info--title {
  font-size: min((30vw / 7.5), 30px);
  font-weight: bold;
  text-align: center;
  color: var(--default-color-blue);
  margin-bottom: min((25vw / 7.5), 20px);
}
.is-pc .pickup_info--title {
  margin-top: -48px;
}
.pickup_info--detail {
  font-size: var(--default-font-size);
  font-weight: bold;
}
.other_info__list {
  border-top: min((2vw / 7.5), 2px) solid #000;
  margin-top: min((60vw / 7.5), 75px);
}
.is-sp .other_info__list {
  width: calc(664vw / 7.5);
  margin: calc(60vw / 7.5) auto 0;
}
.other_info--detail {
  display: flex;
  font-size: min((18vw / 7.5), 14px);
  border-bottom: min((1vw / 7.5), 1px) solid #000;
  padding: min((15vw / 7.5), 15px) 0;
}
.is-sp .other_info--detail {
  flex-direction: column;
}
.is-pc .other_info--detail {
  align-items: center;
  padding-left: 40px;
}
.is-pc .other_info--detail--text {
  width: 654px;
}
.other_info--detail::before {
  font-size: min((20vw / 7.5), 16px);
  font-weight: bold;
}
.is-pc .other_info--detail::before {
  width: 280px;
  margin-right: 16px;
}
.other_info--detail.is-priority_info::before {
  content: '優先搭乗・プライオリティタグ';
}
.other_info--detail.is-amenity_info::before {
  content: 'アメニティ';
}
.other_info--detail.is-meal::before {
  content: '機内食';
}
.other_info--detail.is-seat_info::before {
  content: 'シート';
}
.other_info--detail.is-entertainment_info::before {
  content: '機内エンターテイメント';
}
.other_info--detail.is-facility_info::before {
  content: 'USBポートと電源、フットレスト';
}
.meal__list {
  display: flex;
  padding-bottom: min((95vw / 7.5), 110px);
}
.is-economy .meal__list {
  padding-bottom: min((75vw / 7.5), 75px);
}
.is-sp .meal__list {
  flex-direction: column;
}
.is-pc .meal__list {
  justify-content: space-between;
  margin-top: 50px;
}
.is-sp .meal__list--item {
  width: calc(475vw / 7.5);
  margin: calc(40vw / 7.5) auto 0;
}
.is-pc .meal__list--item {
  width: calc((100% - (16px * 2)) / 3);
}
.meal__list--caption {
  color: var(--default-color-blue);
  font-size: min((20vw / 7.5), 14px);
}
/*aerok*/
#aerok {
  background: var(--default-color-bg-gray);
}
.aerok__list {
  display: flex;
}
.is-sp .aerok__list {
  width: calc(664vw / 7.5);
  margin: auto;
  flex-direction: column;
}
.is-pc .aerok__list {
  justify-content: space-between;
}
.is-sp .aerok__list--item {
  margin-bottom: calc(40vw / 7.5);
}
.is-pc .aerok__list--item {
  width: calc((100% - (16px * 2)) / 3);
}
.aerok__list--title {
  padding: min((20vw / 7.5), 10px) 0 min((20vw / 7.5), 10px);
}
.is-sp .aerok__list--title {
  text-align: center;
}
.aerok__list--title .base-title--text {
  font-size: min((30vw / 7.5), 22px); 
  font-weight: bold;
}
.aerok__list--text {
  font-size: var(--default-font-size);
}


/*★ ＝＝ footerArea ＝＝ ★*/
/*searchApp*/
.is-pc #searchApp {
  background: url(../images/search_photo_pc.jpg) var(--default-bg-setting);
  padding: 55px 0;
}
.is-sp #search.section__inner {
  width: 100%;
}
/*reco__banner*/
#reco__banner .section__inner {
  width: min((662vw / 7.5), 860px); 
}
.is-sp #reco__banner .section__inner {
  padding-top: 0;
}
.is-pc .#reco__banner .section__inner {
  padding: 40px 0;
}
.banner__list {
  display: flex;
  flex-wrap: wrap;
  margin: auto;
}
.is-sp .banner__list {
  gap: calc(23vw / 7.5);
}
.is-pc .banner__list {
  justify-content: space-between;
}
.is-sp .banner__list--item {
  width: calc(50% - calc(11.5vw / 7.5));
  
}
.is-pc .banner__list--item {
  width: calc((100% - (20px * 3)) / 4);
}
.banner__list--link {
  transition: var(--default-hover-transition);
}
/*search__button*/
.search__button {
  position: absolute;
  z-index: 9;
}
.is-sp .search__button {
  margin-top: calc(100vw / 7.5);
  right: calc(10vw / 7.5);
}
.is-pc .search__button {
  margin-top: 40px;
  right: 15px;
}
.search__button.is-fixed > .search__button--link {
  position: fixed;
  top: min((30vw / 7.5), 25px);
  right:  min((10vw / 7.5), 15px);
}
.search__button--link {
  display: block;
  width: min((174vw / 7.5), 172px);
  height: min((177vw / 7.5), 176px);
  transition: var(--default-hover-transition);
}

/*------------------------------------------------*/
/*★ ＝＝ hover ＝＝ ★*/
@media (hover : hover) and (pointer : fine) {
  .section__navi--item:hover {
    background: var(--default-color-red);
  }
  .dst__list--link:hover {
    opacity: .75;
  }
  .banner__list--link:hover {
    opacity: .75;
  }
  .search__button--link:hover {
    opacity: .75;
  }
}


/*商品カセット*/
  .product__list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -20px;
    margin-top: -20px;
    width: calc(100% + 20px);
  }
  .product__list:not(:last-child) {
    margin-bottom: 30px;
  }
  .product__list--item, .tour_box {
    width: calc((100% - (20px * 4)) / 4);
    margin-left: 20px;
    margin-top: 20px;
  }
 .product__list--item_air {
    width: 100%;
    margin-left: 20px;
    margin-top: 20px;
  }
  .product__list--wrapper, .tour_box_wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .tour_box_inner {
    display: flex !important;
    flex-direction: column;
    height: 100%;
  }
  .product__list--inner, .tour_box_item {
    flex-grow: 1;
    height: 100%;
    border: 1px solid #b5b5b5;
    display: flex;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
  }
  .product__list--label {
    position: absolute;
    top: 0;
    left: 0;
    flex-direction: column;
  }
  .product__list--image, .tour_img {
    height: 151px;
  }
  .product__list--inner > *:not(.product__list--image):not(.product__list--label):not(.product__list-departure) {
    margin: 10px;
  }
  .product__list--title, .tour_ttl {
    margin-bottom: 10px;
  }
  .product__list--title {
    font-size: 14px;
  }
  .product__list--title--sub, .tour_ttl span:first-child {
    font-size: 12px;
  }
  .product__list--rank {
    margin-bottom: 10px;
  }
  .product__list--more, .tour_point_point {
    margin-top: 5px;
  }
  .product__list--detail, .product__list--more, .product__list--fuel, .tour_fuel {
    font-size: 12px;
  }
  .tour_point_point {
    font-size: 11px; /*FITの文字落ち対策で文字サイズ下げ・12⇒11*/
  }
  .product__list--price {
    margin-top: auto !important;
  }
  .product__list--minmax, .tour_gross {
    font-size: 20px;
  }
  .product__list--fuel, .tour_fuel, .tour_point_point {
    color: #7d7d7d;
  }
  .product__list--grudge {
    margin-top: 0 !important;
  }
  .product__list--grudge--item {
    padding: 2px 10px 4px;
    font-size: 13px;
    margin-right: 4px;
  }
  .product__list-departure {
    background-color: rgba(37,38,104,0.6);
	color: #ffffff;
	text-align: center;
  }

.product__list--image, .tour_img, .phArea {
  background: #ededed no-repeat center bottom / cover;
}
.product__list--title--sub, .tour_ttl span:first-child {
  display: block;
}
.product__list--rank {
  line-height: 0;
}
.product__list--price, .tour_gross, .bottomArea {
  color: #E60612;
}
.product__list--minmax, .tour_gross, .priceText {
  font-weight: bold;
  letter-spacing: 0;
}
.product__list--minmax .is-en, .tour_gross .is-en, .priceText .is-en {
  font-size: .7em;
}
.product__list--grudge:not([class*="is-grudge-type"]) {
  display: none;
}
.product__list--grudge--item {
  display: none;
  color: #fff;
  background-color: #ffb400;
}
.is-pc .product__list--inner:hover, .is-pc .tour_box_item:hover {
  opacity: .7;
}
.product__button--item {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: #fff;
  background: #002554;
  box-shadow: 3px 3px 0px 0px rgba(37,38,104,0.6);
}
  .product__button--wrapper {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: calc(100% + 28px);
    margin-top: -15px;
    margin-left: -28px;
  }
  .product__button {
    width: calc((100% - (28px * 2)));
    margin-top: 15px;
    margin-left: 28px;
  }
  .product__button--item {
    padding: 5px 15px;
    min-height: 38px;
    font-size: 16px;
    font-weight: bold;
  }
.product__list--image_air {
  background: #ededed no-repeat center bottom / cover;
  height:151px;
  width: 23%;
  display:block;
}
.air_box{
  width: 70%;
  display:block;
  margin-left: 10px;
}
.product__list--wrapper_air{
	display:flex;
}

.product__list--inner2, .tour_box_item {
    flex-grow: 1;
    height: 100%;
    border: 1px solid #b5b5b5;
    display: flex;
    color: inherit;
    text-decoration: none;
	padding: 10px;
  }
@media screen and (max-width:767px) {
	
.product__list--image_air {
  background: #ededed no-repeat center bottom / cover;
  height:100px;
  width: 35%;
  display:block;
}
.product__list--item, .media {
    padding: calc(30vw / 7.5) calc(20vw / 7.5) calc(40vw / 7.5);
}
.product__list--inner, .js-search {
    display: block;
    overflow: hidden;
}
.product__list--inner > .product__list--image, .phArea {
    float: left;
    width: 35%;
    height: 100px;
	margin:10px 0px 0px 10px;
}
.product__list--inner > [class*="product__list--"]:not(.product__list--image), .topArea, .bottomArea {
    float: right;
    width: calc(400vw / 7.5);
}
.product__list--price, .priceText, .fuelText {
    text-align: right;
}
.product__list--price, .priceText {
    margin-top: calc(20vw / 7.5);
}
.product__list--item, .tour_box {
    width: 100%;
    margin-left: 20px;
    margin-top: 20px;
  }
.product__list--inner > *:not(.product__list--image):not(.product__list--label):not(.product__list-departure) {
     margin: 0px;
}
  .product__button--wrapper {
	display: block;
  }
  .product__button {
	width: 92%;
  }
.intro__image img{
	text-align: center;
	width: 80%;
}

}