@charset "utf-8";

/* ========================
【特典情報「/taxi/」専用】taxi.css
======================== */

/*-------     ★★ コンテンツヘッダー《contents header》 ★★     ------*/
/* ★☆ 《contents header》mv ☆★ */

/*== media：751px～ ==*/
@media (min-width:751px) {
  .bali_conts.underlayer .mv {
    background-image: url("../img/taxi/mv_bg_pc.jpg");
  }
  .bali_conts.underlayer .mv .logo {
    width: 369px;
    height: 150px;
    background-image: url("../img/taxi/mv_logo_pc.png");
    padding-top: 0;
  }
}
/*== media：～750px ==*/
@media (max-width:750px) {
  .bali_conts.underlayer .mv {
    background-image: url("../img/taxi/mv_bg_sp.jpg");
  }
  .bali_conts.underlayer .mv .logo {
    width: calc((504 / 750) * 100%);
    padding-top: calc((199 / 504) * 100%);
    background-image: url("../img/taxi/mv_logo_sp.png");
  }
}

/*-------     ★★ コンテンツメイン 《contents main index》 ★★     ------*/
/* ★☆ 《contents main index》sec_maimaiSpecial ☆★ */
#sec_maimaiSpecial .sec_ttl {
	margin: auto;
}
/*== media：751px～ ==*/
@media (min-width:751px) {
  #sec_maimaiSpecial .sec_ttl {
    width: calc((598 / 960) * 100%);
  }
}
/*== media：～750px ==*/
@media (max-width:750px) {
  #sec_maimaiSpecial .sec_ttl {
    width: calc((598 / 710) * 100%);
  }
}

/*== media：751px～ ==*/
@media (min-width:751px) {
  #conts_specialList .conts_box .conts {
    min-height: 350px;
  }
  #conts_specialList #conts_card.conts_box .conts {
    min-height: 300px;
  }
}

/* sec_taxiLead */
#sec_taxiLead {
  background: url("../img/bg_main_02.png") repeat 0 0;
}
#sec_taxiLead .sec_ttl {
  margin: auto;
  position: relative;
}
#sec_taxiLead .sec_ttl > .ornament {
  position: absolute;
  top: 0;
}
#sec_taxiLead .sec_ttl > .ornament img {
	opacity: 0;
}
#sec_taxiLead .sec_ttl .ttl_txt {
	margin: 0 auto;
}
#sec_taxiLead .sec_lead_txt {
	position: relative;
}
#sec_taxiLead .sec_lead_txt > * {
	position: absolute;
}
#sec_taxiLead .sec_lead_txt > .ornament img {
	opacity: 0;
}
#sec_taxiLead .sec_ttl_box.move.start .sec_ttl .ornament img,
#sec_taxiLead .sec_ttl_box.move.start .sec_lead_txt .ornament img {
	animation: fadeIn 1.4s ease-in-out 1.5s 1 forwards;
}
#sec_taxiLead .sec_ttl_box.move.start .sec_ttl .img02 img {
	animation-delay: 0s;
}
#sec_taxiLead .sec_ttl_box.move.start .sec_ttl .img01 img {
	animation-delay: .5s;
}
#sec_taxiLead .sec_ttl_box.move.start .sec_lead_txt .img01 {
	animation: seesaw 1.2s 2.2s infinite;
}
#sec_taxiLead .notes {
	margin: auto;
}

/*== media：751px～ ==*/
@media (min-width:751px) {
#sec_taxiLead {
  padding: 35px 0 45px;
}
#sec_taxiLead .sec_ttl {
  width: calc((910 / 960) * 100%);
}
#sec_taxiLead .sec_ttl .ttl_txt {
  width: calc((781 / 910) * 100%);
}
#sec_taxiLead .sec_ttl .img01 {
  width: calc((153 / 910) * 100%);
  left: calc((-35 / 910) * 100%);
  margin-top: calc((45 / 910) * 100%);
}
#sec_taxiLead .sec_ttl .img02 {
  width: calc((123 / 910) * 100%);
  right: calc((-40 / 910) * 100%);
  margin-top: calc((60 / 910) * 100%);
}
#sec_taxiLead .sec_lead_txt {
  width: calc((800 / 960) * 100%);
  padding-top: calc((258 / 960) * 100%);
  margin: 0 auto 0;
}
#sec_taxiLead .sec_lead_txt .img01 {
  width: calc((453 / 800) * 100%);
  left:  calc((138 / 800) * 100%);
  top: 0;
}
#sec_taxiLead .sec_lead_txt .img02 {
  width: calc((152 / 800) * 100%);
  right: calc((0 / 800) * 100%);
  bottom: calc((115 / 800) * 100%);
}
#sec_taxiLead .notes {
  width: calc((800 / 960) * 100%);
  max-width: 745px;
}
#sec_taxiLead .sec_ttl_box + * {
  margin-top: 40px;
}
}
/*== media：～750px ==*/
@media (max-width:750px) {
  #sec_taxiLead {
    padding: calc((30 / 750) * 100%) 0 calc((60 / 750) * 100%);
  }
  #sec_taxiLead .sec_ttl {
    width: calc((698 / 710) * 100%);
  }
#sec_taxiLead .sec_ttl .ttl_txt {
  width: calc((667 / 698) * 100%);
  margin: 0 auto;
}
#sec_taxiLead .sec_ttl .ornament,
#sec_taxiLead .sec_lead_txt .img02.ornament {
  opacity: 0;
}
#sec_taxiLead .sec_lead_txt {
  width: 100%;
  padding-top: calc((280 / 710) * 100%);
  margin: calc((63 / 710) * 100%) auto 0;
}
#sec_taxiLead .sec_lead_txt .img01 {
  width: calc((497 / 710) * 100%);
  left:  calc((92 / 710) * 100%);
  top: 0;
}
#sec_taxiLead .sec_lead_txt .img02 {
  width: calc((152 / 710) * 100%);
  right: 0;
  bottom: 0;
  margin-bottom: calc((3 / 710) * 100%);
}
#sec_taxiLead .notes {
  width: 100%;
}
#sec_taxiLead .sec_ttl_box + * {
  margin-top: 30px;
}
#sec_taxiLead .sec_ttl_box.move.start .sec_lead_txt .ornament img {
  animation-delay: .8s;
}
}


/*== media：751px～ ==*/
@media (min-width:751px) {
  #conts_specialList .title.com_ttl.typeB.icon.only {
    padding-left: calc((11 / 920) * 100%);
    min-height: calc(93px + (9px * 2));
    background-size: 92px;
  }
  #conts_specialList .conts_ttl.com_ttl.typeB.icon.only[data-num="1"] {
    background-image: none;
  }
  #conts_specialList .title.com_ttl.typeB.icon.only br {
    display: none;
  }
}
/*== media：～750px ==*/
@media (max-width:750px) {
  #conts_specialList .title.com_ttl.typeB.icon.only {
    padding-left: 10px;
    min-height: calc(65px + (9px * 2));
    background-size: 65px;
  }
  #conts_specialList .conts_ttl.com_ttl.typeB.icon.only[data-num="1"] {
    background-image: none;
  }
}

/*-------     ★★ アニメーションKey設定《keyframes》 ★★     ------*/
@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
@keyframes seesaw {
0% {
 transform: rotate(0)
}
50% {
 transform: rotate(-3deg);
}
100% {
 transform: rotate(0);
}
}
@keyframes fuwafuwa {
0% {
 transform:translateY(0);
}
50% {
 transform:translateY(10px);
}
100% {
 transform:translateY(0);
}
}
@keyframes pakapaka {
0% {
 opacity: 0;
}
50% {
 opacity: 1;
}
100% {
 opacity: 0;
}
}

/* taxi */
.is-sp {
  display: none;
  @media (width <= 754px) {
    display: block;
  }
}
.is-pc {
  display: none;
  @media (width >= 755px) {
    display: block;
  }
}

.bali_conts *:not(div):not(figure):not(span) {
	line-height: inherit;
}
.title.com_ttl.typeB + *{
  margin-top: 0;
}
.ttl_main_txt {
  font-size: min((36vw / 7.5), 30px);
  line-height: 1.2;
  color: #4d2b00;
}
#taxi .conts {
  padding-bottom: min((96vw / 7.5), 80px);
}
#taxi .taxi__list {
  display: grid;
  gap: min((90vw / 7.5), 96px);
}
#taxi .taxi__list--item {
  display: grid;
}
#taxi .taxi__list--item--texts {
  display: grid;
  gap: min((32vw / 7.5), 24px);
  text-align: center;
  margin-top: min((60vw / 7.5), 67px);
}
#taxi .taxi__list--item--text {
  font-size: min((36vw / 7.5), 32px);
  line-height: 1.2;
  color: #4d2b00;
}
#taxi .taxi__list--item--text--small,
#process .process__list--item--title {
  font-size: min((28vw / 7.5), 24px);
  color: #4d2b00;
}
.taxi__list--item--photo {
  margin-top: min((46vw / 7.5), 19px);
  width: min((636vw / 7.5), 778px);
  height: min((340vw / 7.5), 321px);
  margin: 0 auto;
  margin: min((40vw / 7.5), 15px) auto 0;
}
:is(#taxi, #process, #addition) .notes {
  font-size: min((22vw / 7.5), 14px);
  margin-top: 0;
}
#taxi .ttl_main_txt--small {
  font-size: min((28vw / 7.5), 20px);
}
#taxi .taxi__coupon {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  width: min((670vw / 7.5), 865px);
  border-collapse: collapse;
  font-size: min((14vw / 7.5), 14px);
  table-layout: fixed;
  line-height: 1.2;
  margin: 0 auto;
  @media (width <= 751px) {
    width: min((865vw / 7.5), 865px);
    margin: 0;
  }
}
#taxi .taxi__coupon :is(th, td) {
   border: 1px solid #4d2b00;
   padding: min((10vw / 7.5), 10px);
}
#taxi .taxi__coupon--arrival {
  background: #e4eaae;
}
#taxi .taxi__coupon--departure {
  background: #c3cf74;
}
#taxi .taxi__coupon--number {
  font-size: min((20vw / 7.5), 20px);
  font-weight: bold;
}
#taxi .taxi__coupon--sheet {
  font-size: min((18vw / 7.5), 18px);
  font-weight: bold;
}
#taxi .taxi__coupon--area {
  background: linear-gradient(to top right, transparent calc(50% - 1px), #4d2b00 50%, transparent calc(50% + 1px)), #c3cf74;
  position: relative;
}
#taxi .taxi__coupon--area span {
  position: absolute;
}
#taxi .taxi__coupon--area span:first-child {
  bottom: min((8vw / 7.5), 8px);
  left: min((10vw / 7.5), 10px);
}
#taxi .taxi__coupon--area span:last-child {
  top: min((8vw / 7.5), 8px);
  right: min((10vw / 7.5), 10px);
}
@media (width <= 751px) {
  #taxi .taxi__coupon--scroll-wrapper {
    overflow-x: auto;
    width: 100%;
    padding-bottom: min((16vw / 7.5), 16px);
  }
}
#taxi .text__link {
  color: #0057b8;
  margin: 0 0.1em;
}
#taxi .text__link::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url('../img/taxi/icon_launch.svg') no-repeat center / contain;
  vertical-align: -0.15em;
}
#taxi .text__link:hover {
  opacity: 0.7;
}

/* process */
#process .process__list {
  display: grid;
  row-gap: min((65vw / 7.5), 70px);
  padding: min((70vw / 7.5), 50px) min((46vw / 7.5), 43px) min((96vw / 7.5), 96px);
  @media (width >= 751px) {
    grid-template-columns: repeat(2, 1fr);
    column-gap: min((30vw / 7.5), 30px);
    padding-bottom: 0;
  }
}
#process .ttl_main_txt {
  text-align: center;
  padding-bottom: min((12vw / 7.5), 12px);
}
#process .process__list--item {
  display: grid;
  gap: min((28vw / 7.5), 32px);
  @media (width >= 751px) {
    grid-template-rows: auto auto 1fr;
  }
}
.process__list--item--text {
  font-size: min((22vw / 7.5), 16px);
}
.process__list--item--sub_title {
  font-size: min((22vw / 7.5), 18px);
  background: #e4eaae;
  padding: 0 min((8vw / 7.5), 8px);
  @media (751px <= width <= 1000px) {
    justify-self: start;
  }
}
#process .process__list--item--title {
  display: flex;
  gap: min((16vw / 7.5), 16px);
  align-items: center;
  @media (751px <= width <= 1000px) {
    display: grid;
    gap: 0;
  }
}
#process .process__list--item--photo--qr {
  width: min((208vw / 7.5), 168px);
  height: min((204vw / 7.5), 164px);
  margin: 0 auto;
  text-align: center;
}
.process__list--item:last-child {
  position: relative;
}
.process__list--item--fukidashi {
  position: absolute;
  width: min((364vw / 7.5), 395px);
  height: min((262vw / 7.5),176px);
  right: -6%;
  top: -45%;
  @media (751px <= width <= 940px) {
     right: -120%;
     top: -30%;
  }
  @media (width >= 921px) {
     right: -93%;
     top: -30%;
  }
}

#addition {
  background: #e4eaae;
  padding: min((60vw / 7.5), 40px) min((44vw / 7.5), 40px) min((72vw / 7.5), 40px);
}
#addition .addition__inner {
  display: grid;
  justify-content: center;
  gap: min((64vw / 7.5), 20px);
}
#addition .ttl_main_txt {
  font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "Sawarabi Mincho", "ヒラギノ明朝 ProN W3", "ヒラギノ明朝 Pro", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS PMincho", "MS 明朝", serif;
  text-align: center;
}
#addition .addition__text {
  font-size: min((26vw / 7.5), 16px);
  text-align: center;
  @media (width >= 751px) {
    line-height: 2;
  }
}
#addition .note {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6;
}
.notes__title {
  font-weight: bold;
}