@charset "utf-8";
/* 「ドバイ特集 TOP」PCSP共通CSS */
/*------------------------------------------------*/
/*★ ＝＝ headerArea ＝＝ ★*/
/*mv*/
.mv {
  padding-top: min((120vw / 7.5), 104px);
}
.mv__catch--sub {
  width: min((433vw / 7.5), 461px); /*SPはPCの94％*/
  height: min((41vw / 7.5), 44px);
}
.mv__catch--main {
  width: min((570vw / 7.5), 679px); /*SPはPCの84％*/
  height: min((97vw / 7.5), 116px);
}
.mv__lead.is-image {
  width: min((344vw / 7.5), 344px);
  height: min((124vw / 7.5), 124px);
  margin-top: min((25vw / 7.5), 38px);
}
.is-pc .mv__lead.is-image {
  width: min((417vw / 7.5), 444px); /*94%*/
  height: min((49vw / 7.5), 52px);
}
.is-pc .mv__scroll {
  display: none;
}
.is-sp .mv__scroll {
  height: min((206vw / 7.5), 206px);
  display: grid;
  grid-auto-rows: 1em 1fr;
  gap: .5em;
  font-family: var(--font-family-min);
  font-size: min((34vw / 7.5), 16px);
  line-height: 1;
  color: #fff;
  text-align: center;
  font-weight: normal;
  margin-top: min((156vw / 7.5), 156px);
}
.mv__scroll--border {
  position: relative;
}
.mv__scroll--border::before, .mv__scroll--border::after {
  content: "";
  display: block;
  background: #fff;
  margin: auto;
}
.mv__scroll--border::before {
  width: min((2vw / 7.5), 2px);
  height: 100%;
}
.mv__scroll--border::after {
  width: min((10vw / 7.5), 10px);
  height: min((10vw / 7.5), 10px);
  border-radius: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.cmn-header-contents .dubai {
  padding: min((360vw / 7.5), 360px) 0 min((305vw / 7.5), 305px);
  background: linear-gradient(to top, var(--default-color-01) 0%, var(--default-color-01) 5%, rgba(0, 0, 0, 0) 100%);
}
.is-pc .cmn-header-contents .dubai {
  padding: min((238vw / 7.5), 238px) 0 min((380vw / 7.5), 380px);
}
.cmn-header-contents .dubai__logo {
  width: min((137vw / 7.5), 159px);
  margin: auto;
}
.dubai__movie {
  display: grid;
  justify-items: center;
  margin-top: min((99vw / 7.5), 87px);
  color: #fff;
  text-align: center;
  font-weight: bold;
  text-shadow: 0px 0px min((10vw / 7.5), 10px) rgba(0, 0, 0, .3);
}
.dubai__movie--lead {
  margin-bottom: min((60vw / 7.5), 30px);
}
.dubai__movie--point {
  font-size: 2em;
  display: block;
}
.dubai__movie--link {
  margin-top: min((30vw / 7.5), 20px);
}
.dubai__movie--link .base-text-link__link {
  display: grid;
  justify-items: center;
  align-items: center;
  grid-template-columns: auto 1em;
  gap: 0 .5em;
}
.dubai__movie--link .base-text-link__link::after {
  content: "";
  background: var(--default-icon-arrow-right-white);
  width: 100%;
  height: 1.5em;
  margin-top: .25em;
}
.dubai__movie--link .base-text-link__link[target="_blank"]::after {
  background: var(--default-icon-blank-white);
  height: 1em;
}
.dubai__movie--block {
  background: #000;
  width: min((475vw / 7.5), 534px);
}
.youtube__inner {
  position: relative;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .3);
}
.youtube__inner::before, .youtube__inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.youtube__inner::before {
  width: 100%;
  height: 100%;
  border: 2px solid;
}
.youtube__inner::after {
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid;
}
.youtube__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.youtube__block {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
  z-index: 2;
  background: url("../../all/images/movie_icon_play.png") no-repeat center center / calc((84 / 534) * 100%);
}
.youtube__iframe {
  width: 100%;
  height: 100%;
}
/*map*/
#map {
  background-color: var(--default-color-01);
  position: relative;
  display: grid;
  justify-items: center;
}
.map__title--wrapper {
  margin-bottom: min((30vw / 7.5), 45px);
}
.is-pc .map__title--wrapper {
  margin-top: max((-136vw / 7.5), -136px)
}
.map__title.base-title.is-ribbon {
  font-size: min((34vw / 7.5), 32px);
  padding: .4em .75em .45em;
}
.map__title.base-title.is-ribbon::before {
  background: var(--default-color-01);
  border: 1px solid;
}
/*テキスト部分*/
.is-sp .map__detail {
  order: 1;
  width: 100%;
  background: #4db8b8;
  padding: min((16vw / 7.5), 16px) 0 min((70vw / 7.5), 70px);
}
.is-pc .map__detail {
  width: var(--default-width);
  position: relative;
}
.is-sp .map__detail--inner {
  width: var(--default-width);
  margin: auto;
}
.map__detail .slick-track {
  display: grid;
  grid-auto-flow: column;
}
.is-pc .map__detail--inner {
  width: min(((490 / 992) * 100%), 430px);
  margin-left: min((50vw / 7.5), 90px);
}
.map__detail--item {
  float: none;
  background: #fff;
  color: var(--default-color-04);
  border: 2px solid;
  font-size: min(var(--default-font-size-sp), 14px);
  padding: 1.25em 1em;
  height: 100%;
  margin: 0 5px;
}
.map__detail--title {
  font-weight: bold;
  text-align: center;
  font-size: min((34vw / 7.5), 20px);
  line-height: 1.4;
}
.map__detail--notes {
  font-size: calc(20em / var(--default-font-size-sp-val));
  margin-top: .5em;
}
.map__detail--notes--item {
  padding-left: 1em;
  text-indent: -1em;
}
.map__detail--dots:not(.is-map-focus) {
  display: grid;
  justify-content: center;
  margin-top: min(calc(32vw / 7.5), 16px);
  grid-auto-flow: column;
  grid-auto-columns: 10px;
  grid-auto-rows: 10px;
  gap: 0 min(calc(58vw / 7.5), 24px);
}
.map__detail--dots button {
  cursor: pointer;
  outline: 0;
  border: none;
  font-size: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  display: block;
  background: none;
}
.map__detail--dots:not(.is-map-focus) button {
  background: var(--default-color-04);
  border-radius: 100%;
}
.map__detail--dots:not(.is-map-focus) .slick-active button {
  background: #000;
}
/*地図部分*/
.is-sp .map__focus, .is-pc .map {
  background: no-repeat;
}
.is-sp .map__focus {
  background-position: center top;
  background-size: 100vw;
  background-image: url("../images/map_bg_sp.png");
}
.is-pc .map {
  --yohaku: min(((452 / 992) * 100%), 452px);
  background-position: center bottom;
  background-size: min(((1920 / 992) * 100%), 1920px);
  background-image: url("../images/map_bg_pc.png");
  padding-bottom: var(--yohaku);
}
.map__focus {
  width: 100%;
}
.is-sp .map__focus {
  height: calc(582vw / 7.5);
}
.is-pc .map__focus {
  position: absolute;
  bottom: 0;
  padding-top: var(--yohaku);
}
.is-pc .map__detail--dots.is-map-focus {
  width: min(100%, 992px);
  margin: auto;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.map__detail--dots--focus {
  --radius: min((4vw / 7.5), 6px);
  background: rgba(255, 255, 102, 0);
  position: absolute;
  cursor: pointer;
  border-radius: var(--radius);
}
.map__detail--dots--focus::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: var(--radius);
  border: dashed min((2vw / 7.5), 2px) #000;
}
.map__detail--dots--focus[class*="active"] {
  background: rgba(255, 255, 102, .4);
}
.map__detail--dots--focus:hover {
  background: rgba(255, 255, 102, .4);
}
.map__detail--dots--focus:is(.is-marina, .is-beach) {
  top: 0;
  left: 0;
}
.map__detail--dots--focus:is(.is-downtown, .is-olddubai, .is-creekharbour) {
  bottom: 0;
  right: 0;
}
.map__detail--dots--focus.is-desert {
  bottom: 0;
  left: 0;
}
.is-sp .map__detail--dots--focus.is-marina {
  width: calc(178vw / 7.5);
  height: calc(163vw / 7.5);
  top: calc(165vw / 7.5);
  left: calc(39vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-marina {
  width: min(((194 / 992) * 100%), 194px);
  padding-top: min(((179 / 992) * 100%), 179px);
  margin-top: min(((60 / 992) * 100%), 60px);
  margin-left: min(((204 / 992) * 100%), 204px);
}
.is-sp .map__detail--dots--focus.is-beach {
  width: calc(226vw / 7.5);
  height: calc(29vw / 7.5);
  top: calc(275vw / 7.5);
  left: calc(223vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-beach {
  width: min(((249 / 992) * 100%), 249px);
  padding-top: min(((32 / 992) * 100%), 32px);
  margin-top: min(((180 / 992) * 100%), 180px);
  margin-left: min(((405 / 992) * 100%), 405px);
}
.is-sp .map__detail--dots--focus.is-downtown {
  width: calc(129vw / 7.5);
  height: calc(90vw / 7.5);
  bottom: calc(184vw / 7.5);
  right: calc(222vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-downtown {
  width: min(((142 / 992) * 100%), 142px);
  padding-top: min(((98 / 992) * 100%), 98px);
  margin-bottom: min(((137 / 992) * 100%), 137px);
  margin-right: min(((251 / 992) * 100%), 251px);
}
.is-sp .map__detail--dots--focus.is-olddubai {
  width: calc(94vw / 7.5);
  height: calc(121vw / 7.5);
  bottom: calc(217vw / 7.5);
  right: calc(93vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-olddubai {
  width: min(((103 / 992) * 100%), 103px);
  padding-top: min(((130 / 992) * 100%), 130px);
  margin-bottom: min(((175 / 992) * 100%), 175px);
  margin-right: min(((112 / 992) * 100%), 112px);
}
.is-sp .map__detail--dots--focus.is-creekharbour {
  width: calc(91vw / 7.5);
  height: calc(66vw / 7.5);
  bottom: calc(82vw / 7.5);
  right: calc(134vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-creekharbour {
  width: min(((99 / 992) * 100%), 99px);
  padding-top: min(((74 / 992) * 100%), 74px);
  margin-bottom: min(((23 / 992) * 100%), 23px);
  margin-right: min(((156 / 992) * 100%), 156px);
}
.is-sp .map__detail--dots--focus.is-desert {
  width: calc(222vw / 7.5);
  height: calc(97vw / 7.5);
  bottom: calc(17vw / 7.5);
}
.is-pc .map__detail--dots--focus.is-desert {
  width: min(((286 / 992) * 100%), 286px);
  padding-top: min(((58 / 992) * 100%), 58px);
  margin-left: min(((115 / 992) * 100%), 115px);
}
.is-sp .map__detail--dots--focus.is-desert, .is-sp .map__detail--dots--focus.is-desert::before {
  border-radius: 0 var(--radius) var(--radius) 0;
  border-left: none;
}
.is-pc .map__detail--dots--focus.is-desert, .is-pc .map__detail--dots--focus.is-desert::before {
  border-radius: var(--radius) var(--radius) 0 0;
}
/*------------------------------------------------*/
/*★ ＝＝ mainArea ＝＝ ★*/
#mainArea :is(#facility, #branch) {
  background: #fff;
}
#mainArea #airline {
  background: #ebeae2;
}
#mainArea #information {
  background: rgba(0, 0, 0, .5);
}
.section__button {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min((50vw / 7.5), 20px) min((30vw / 7.5), 20px);
}
.section__button:not(:first-child) {
  margin-top: min((100vw / 7.5), 80px);
}
/*facility*/
#facility .section__inner {
  width: 100%;
  padding: min((88vw / 7.5), 88px) 0 min((100vw / 7.5), 100px);
}
.is-pc #facility .section__inner {
  padding: min((35vw / 7.5), 35px) 0 min((80vw / 7.5), 80px);
}
#facility .section__title.base-title.is-ribbon::before {
  background: var(--default-color-02);
}
#facility .section__title.base-title.is-ribbon::after {
  border-color: var(--default-color-02);
}
.facility__detail {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
}
.is-sp .facility__detail:first-child {
  margin-left: min((20vw / 7.5), 20px);
}
.is-pc .facility__detail {
  width: var(--default-width);
  margin: auto;
}
.is-sp .facility__list.is-type-spot, .is-pc .facility__detail :is(.facility__list.is-type-spot, .facility__search) {
  margin-left: auto;
}
.is-sp .facility__list.is-type-spot {
  width: calc(100% - ((82 / 730) * 100%));
}
.is-pc .facility__detail :is(.facility__list.is-type-spot, .facility__search) {
  width: calc(100% - 60px - ((24 / 992) * 100%));
}
.is-sp .facility__search {
  margin-right: min((20vw / 7.5), 20px);
  padding: 0 min((15vw / 7.5), 15px);
}
.facility__list.is-type-spot {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 min((18vw / 7.5), 18px);
  margin-top: min((56vw / 7.5), 56px);
}
.is-pc .facility__list.is-type-spot {
  gap: 0 calc((30 / 992) * 100%);
  margin-top: min((86vw / 7.5), 86px);
}
.facility__list.is-type-hotel {
  order: 1;
  width: 100%;
  text-align: center;
  display: grid;
  grid-template-columns: min((560vw / 7.5), 560px);
  justify-content: center;
}
.is-pc .facility__list.is-type-hotel {
  grid-template-columns: calc((700 / 992) * 100%);
}
.facility__list.is-type-hotel .facility__list--link {
  display: block;
  background: #fff;
  border: 1px solid;
  padding: calc((10 / 700) * 100%);
}
.facility__list--item {
  position: relative;
}
.facility__list--item.is-new-spot::before {
  content: "";
  display: block;
  height: 0;
  width: calc((181 / 280) * 100%);
  padding-top: calc((94 / 280) * 100%);
  background: url("../images/facility_btn_new_spot_kazari.png") no-repeat center center / cover;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  margin-top: calc((70 / 280) * -100%);
  margin-left: calc((9 / 280) * 100%)
}
.facility__list--inner {
  position: relative;
}
.facility__list .facility__list--inner::before {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .2);
  position: absolute;
  top: 0;
  left: 0;
}
.facility__list.is-type-spot .facility__list--inner::before {
  opacity: 0;
  z-index: 1;
}
.facility__list.is-type-hotel .facility__list--inner {
  border: 1px solid;
  background: var(--default-bg-setting);
}
.facility__list.is-type-hotel .facility__list--item.is-hotel .facility__list--inner {
  background-image: url("../images/facility_btn_hotel_bg.png");
}
.facility__list--image {
  width: 100%;
  object-fit: cover;
  position: relative;
}
.facility__search {
  color: var(--default-color-02);
  line-height: 1.2;
}
.facility__search--title {
  font-family: var(--font-family-min);
  font-size: min((34vw / 7.5), 24px);
  margin: 1em 0 .5em;
}
.facility__search--list {
  display: flex;
  flex-wrap: wrap;
  gap: .75em 1em;
}
.facility__roll {
  margin: min((70vw / 7.5), 50px) 0 min((100vw / 7.5), 80px);
}
.facility__roll .slick-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min((207vw / 7.5), 220px);
  grid-auto-rows: min((207vw / 7.5), 220px);
}
.facility__roll .slick-track:before, .facility__roll .slick-track:after {
  content: none;
}
.facility__roll--item {
  color: #fff;
  float: none;
  backface-visibility: hidden;
}
/*.facility__roll--item {
  width: min((207vw / 7.5), 220px);
  height: min((207vw / 7.5), 220px);
  color: #fff;
}
.is-pc .facility__roll--item {
  width: 220px;
  height: 220px;
}*/
.facility__roll--link {
  display: block;
  height: 100%;
  position: relative;
}
.facility__roll--photo {
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}
.facility__roll--text {
  width: 100%;
  height: 100%;
  display: grid;
  justify-items: center;
  align-items: center;
  background: rgba(0, 0, 0, .5);
  text-align: center;
  font-size: min((14vw / 7.5), 14px);
  line-height: calc(22 / 14);
  padding: .5em;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
/*information*/
#information .section__inner {
  padding: min((100vw / 7.5), 50px) 0;
  color: #fff;
}
.is-pc #information .section__inner {
  padding: min((100vw / 7.5), 65px) 0 min((100vw / 7.5), 88px);
}
#information .section__title.base-title.is-ribbon::before {
  background: var(--default-color-04);
  border: 1px solid;
}
#information .section__title--wrapper {
  display: grid;
  margin-bottom: min((100vw / 7.5), 55px);
}
.is-sp #information .section__title--wrapper {
  justify-items: center;
  gap: 1.75em 0;
}
.is-pc #information .section__title--wrapper {
  grid-template-columns: 1fr calc((500 / 992) * 100%);
  grid-template-areas:
    "ttl img"
    "txt img";
  align-items: start;
  justify-items: start;
  grid-template-rows: auto 1fr;
}
.is-pc #information .section__title {
  grid-area: ttl;
  font-size: min((24vw / 7.5), 34px);
  margin-top: calc((16 / 492) * 100%);
  margin-left: .5em;
  /*width: calc(100% + ((70 / 492) * 100%));
  margin-left: calc((30 / 492) * -100%);*/
}
.is-pc #information .section__lead {
  grid-area: txt;
  padding: 2em 1em 0 1.25em;
}
.is-pc #information .section__photo {
  grid-area: img;
}
#information .base-button.is-type-main .base-button__link {
  border: 1px solid #fff;
}
.information__title {
  color: var(--default-color-05);
  text-align: center;
  font-family: var(--font-family-min);
  font-size: min((60vw / 7.5), 40px);
  line-height: 1.2;
  margin-bottom: .5em;
}
.information__list {
  display: grid;
  font-size: min((24vw / 7.5), 14px);
  line-height: calc(44 / 24);
}
.is-sp .information__list.is-type-pc, .is-pc .information__list.is-type-sp {
  display: none;
}
.information__list.is-type-pc {
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc((40 / 992) * 100%);
}
.information__list--wrapper.is-type-season {
  grid-column: 1 / 3;
}
.information__list, .information__list--wrapper.is-type-season {
  border-top: 1px solid var(--default-color-05);
}
.information__list--item:not(:last-child) {
  border-bottom: 1px solid var(--default-color-05);
}
.information__list--item {
  display: grid;
  grid-template-columns: 7.5em 1fr;
  gap: .5em 1em;
  align-items: start;
  padding: .75em 0;
}
.is-pc .information__list--item {
  grid-template-columns: 10em 1fr;
}
.is-sp .information__list--item.is-season {
  grid-template-columns: 1fr;
}
.is-pc .information__list--item.is-season {
  padding: 2em 0 0;
}
.information__list--title {
  color: var(--default-color-05);
  line-height: 1.45;
  font-weight: bold;
  margin-top: .15em;
}
.information__season--list {
  display: grid;
  grid-template-columns: calc((100% / 12) * 7) 1fr;
}
.information__season--item {
  display: grid;
  grid-template-rows: calc(36em / 14) 1fr;
}
.is-sp .information__season--item {
  font-size: min((18vw / 7.5), 12px);
}
.information__season--month {
  display: grid;
  grid-auto-flow: column;
  text-align: center;
  gap: 2px;
  background: rgba(255, 255, 255, .5);
}
.information__season--month--item {
  display: grid;
  align-items: center;
}
.information__season--item.is-summer .information__season--month--item {
  background: var(--default-color-02)
}
.information__season--item.is-winter .information__season--month--item {
  background: var(--default-color-04)
}
.information__season--detail {
  padding: .75em;
}
.information__season--item.is-summer .information__season--detail {
  background: rgba(3, 94, 136, .5);
}
.information__season--item.is-winter .information__season--detail {
  background: rgba(151, 142, 36, .5);
}
.information__season--title {
  text-align: center;
  font-weight: bold;
  margin-bottom: .5em;
}
.is-sp .information__season--title {
  font-size: min((20vw / 7.5), 14px);
}
.information__comment {
  margin-top: min((60vw / 7.5), 50px);
}
.information__comment--list {
  display: grid;
  gap: min((30vw / 7.5), 15px);
}
.is-pc .information__comment--list {
  grid-template-columns: repeat(3, 1fr);
}
.is-pc .information__comment--item {
  display: grid;
  grid-template-rows: 1fr auto;
}
.information__comment--detail {
  background: #fff;
  color: #000;
  font-size: min((24vw / 7.5), 14px);
  line-height: calc(44 / 24);
  border-radius: min((20vw / 7.5), 20px);
  padding: .75em 1em;
  overflow: hidden;
}
.information__comment--text::after {
  content: "";
  width: min((130vw / 7.5), 75px);
  height: 3.75em;
  float: right;
}
.information__comment--from {
  font-size: min((20vw / 7.5), 12px);
  line-height: 1;
  display: flex;
  justify-content: end;
  align-items: end;
  gap: 0 1em;
  height: min((50vw / 7.5), 36px)
}
.information__comment--from {
  font-size: min((20vw / 7.5), 12px);
  line-height: 1;
}
.is-sp .information__comment--item:nth-child(even) .information__comment--from {
  justify-content: start;
}
.is-sp .information__comment--item:nth-child(even) .information__comment--name {
  order: 1;
}
.is-sp .information__comment--item:nth-child(even) .information__comment--text::after {
  content: "";
  float: left;
}
.information__list--image.is-img-1 {
  width: min((151vw / 7.5), 95px);
}
.information__list--image.is-img-2 {
  width: min((136vw / 7.5), 85px);
}
.information__list--image.is-img-3 {
  width: min((151vw / 7.5), 95px);
}
/*airline＋branch*/
#mainArea :is(#airline, .is-sp #branch) .section__inner {
  padding: min((100vw / 7.5), 50px) 0;
}
.is-pc #branch .section__inner {
  padding: min((100vw / 7.5), 80px) 0 min((100vw / 7.5), 165px);
}
.section:is(#airline, #branch) .section__title {
  color: var(--default-color-02);
  line-height: 1.2;
  text-align: center;
  margin-bottom: min((60vw / 7.5), 48px);
}
.section:is(#airline, #branch) .section__title .base-title__inner {
  display: grid;
  gap: .75em 0;
}
.section:is(#airline, #branch) .section__title .base-title__text--main {
  font-size: min((46vw / 7.5), 30px);
  font-weight: bold;
}
.section:is(#airline, #branch) .section__title .base-title__text--main {
  font-size: min((46vw / 7.5), 30px);
}
.section:is(#airline, #branch) .section__title .base-title__text--sub {
  font-size: min((40vw / 7.5), 24px);
}
:is(.airline__item, .branch__item) {
  display: grid;
  gap: min((30vw / 7.5), 20px) min((40vw / 7.5), 22px);
  justify-items: center;
}
.is-pc :is(.airline__item, .branch__item) {
  grid-template-columns: calc((400 / 992) * 100%) 1fr;
}
:is(.airline__detail, .branch__detail) {
  order: 1;
}
.airline__point {
  background: #fff;
  border: 1px solid var(--default-color-04);
  margin-top: min((60vw / 7.5), 30px);
  padding: min((28vw / 7.5), 20px);
  display: grid;
  gap: min((20vw / 7.5), 10px);
  grid-template-areas:
    "img ttl"
    "txt txt";
}
.is-pc .airline__point {
  padding: calc((20 / 570) * 100%);
  gap: min((15vw / 7.5), 20px) min((10vw / 7.5), 15px);
  grid-template-areas:
    "ttl ttl"
    "img txt";
}
.airline__point--title {
  grid-area: ttl;
  color: var(--default-color-02);
  font-weight: bold;
}
.airline__point--texts {
  grid-area: txt;
}
.airline__point--photo {
  grid-area: img;
}
.branch__title {
  color: var(--default-color-02);
  font-size: min((40vw / 7.5), 24px);
  line-height: 1.2;
  margin-bottom: .5em;
}
.branch__buttons {
  margin-top: min((50vw / 7.5), 25px);
}
.is-pc .branch__buttons {
  margin-top: min((15vw / 7.5), 20px);
}
.branch__sns {
  display: flex;
  flex-wrap: wrap;
  font-size: min((20vw / 7.5), 10px);
  color: var(--default-color-01);
  gap: 1em 2em;
  position: relative
}
.is-sp .branch__sns {
  margin-top: min((55vw / 7.5), 30px);
  padding-left: min((30vw / 7.5), 15px);
}
.branch__sns::before {
  content: "";
  width: 100%;
  height: min((91vw / 7.5), 55px);
  background: url("../images/branch_icon_follow.png") no-repeat left center / contain;
}
.is-sp .branch__sns::before {
  position: relative;
  left: max((-30vw / 7.5), -15px);
}
.branch__sns--link {
  display: grid;
  grid-auto-rows: min((64vw / 7.5), 32px) 1fr;
  grid-template-areas:
    "ico"
    "txt";
  gap: .5em 0;
  justify-items: center;
}
.branch__sns--text {
  grid-area: txt;
}
.branch__sns--icon {
  grid-area: ico;
  height: 100%;
  width: auto;
  object-fit: cover;
}
.branch__sns--item.is-oe .branch__sns--icon {
  height: 120%;
}
/*------------------------------------------------*/
/*★ ＝＝ hover ＝＝ ★*/
@media (hover : hover) and (pointer : fine) {
  /*動画*/
  .youtube__inner {
    transition: opacity var(--default-hover-speed);
  }
  .youtube__inner:hover {
    opacity: .7;
  }
  .dubai__movie--link .base-text-link__link:hover {
    text-decoration: underline;
    text-underline-offset: .5em;
  }
  /*facilityエリア*/
  .facility__list--inner::before, .facility__roll--link:hover .facility__roll--text {
    transition: opacity var(--default-hover-speed);
  }
  .facility__list.is-type-spot .facility__list--link:hover .facility__list--inner::before {
    opacity: 1;
  }
  .facility__list.is-type-hotel .facility__list--link:hover .facility__list--inner::before {
    opacity: 0;
  }
  .facility__roll--link:hover .facility__roll--text {
    opacity: 1;
  }
  .facility__search--link:hover {
    text-decoration: underline;
    text-underline-offset: .5em;
  }
}