@charset "UTF-8";
/* mixin */
.text-spring {
  color: #ec6868;
}

.text-summer {
  color: #7fc26d;
}

.text-autumn {
  color: #f6ac19;
}

.text-winter {
  color: #00b3ed;
}

.btn-white {
  background-color: #fff;
  border-color: #ccc;
  color: #333 !important;
  white-space: nowrap;
}

.btn-white:hover {
  background-color: #fff;
  border-color: #ededed;
  color: #333;
}

@media (min-width: 768px) {
  .hp_mxw_md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .hp_mxw_lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .hp_mxw_xl {
    max-width: 1140px;
  }
}

.ly_lp_header {
  height: calc(100dvh - 130px);
  display: grid;
  place-content: center;
  position: relative;
  padding: 50px 0 80px;
  background-image: url(../images/lp-tokachi-jp-hk/mainimage-bg2.png), url(../images/lp-tokachi-jp-hk/mainimage-bg3.png), url(../images/lp-tokachi-jp-hk/mainimage-bg1.png), url(../images/lp-tokachi-jp-hk/mainimage-bg4.png);
  background-repeat: no-repeat;
  background-position: right top, left bottom, left top, right bottom;
  background-size: 55% auto;
  overflow: hidden;
}
@media (min-width: ) {
  .ly_lp_header {
    padding: 0px 0 80px;
  }
}
@media (min-width: 992px) {
  .ly_lp_header {
    padding: 0;
    background-size: 40% auto;
  }
}
.ly_lp_header .el_lp_header_ttl {
  position: relative;
  z-index: 5;
  padding: 100px;
  background: url(../images/lp-tokachi-jp-hk/main-ttl-bg.png) center/contain no-repeat;
}
@media (min-width: 768px) {
  .ly_lp_header .el_lp_header_ttl {
    padding: 150px;
  }
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ttl {
    width: 800px;
  }
}
.ly_lp_header .el_lp_header_ttl .el_lp_header_lead {
  text-align: center;
}
.ly_lp_header .el_lp_header_ph1 {
  position: absolute;
  padding-bottom: 1.5rem;
  width: 45vw;
  left: 0;
  bottom: 70%;
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ph1 {
    width: 400px;
    left: 0;
    top: 0;
  }
}
.ly_lp_header .el_lp_header_ph2 {
  position: absolute;
  padding-bottom: 1.5rem;
  width: 45vw;
  right: 0;
  bottom: 70%;
  text-align: end;
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ph2 {
    width: 400px;
    right: 0;
    top: 0;
  }
}
.ly_lp_header .el_lp_header_ph3 {
  position: absolute;
  padding-bottom: 1.5rem;
  width: 45vw;
  left: 0;
  top: 60%;
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ph3 {
    width: 400px;
    left: 0;
    bottom: 0;
  }
}
.ly_lp_header .el_lp_header_ph4 {
  position: absolute;
  padding-bottom: 1.5rem;
  width: 45vw;
  right: 0;
  top: 60%;
  text-align: end;
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ph4 {
    width: 400px;
    right: 0;
    bottom: 0;
  }
}
.ly_lp_header .el_lp_header_ph_ttl {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  rotate: -3deg;
}
.ly_lp_header .el_lp_header_ph_ttl > div {
  font-size: 0.725rem;
  padding: 10px 5px;
  text-align: center;
  color: #fff;
}
@media (min-width: 992px) {
  .ly_lp_header .el_lp_header_ph_ttl > div {
    font-size: 1rem;
  }
}
.ly_lp_header .el_lp_header_ph_ttl1 {
  background-color: #ec6868;
}
.ly_lp_header .el_lp_header_ph_ttl2 {
  background-color: #7fc26d;
}
.ly_lp_header .el_lp_header_ph_ttl3 {
  background-color: #f6ac19;
}
.ly_lp_header .el_lp_header_ph_ttl4 {
  background-color: #00b3ed;
}

.ly_sct_banei {
  padding-top: 2rem;
  background: url(../images/lp-tokachi-jp-hk/bg-sct-allseason.jpg) center top/100% auto no-repeat;
}

.ly_lp_body {
  padding: 0 0 2rem;
}

.ly_sct_header {
  margin-bottom: 1.5rem;
}
@media (min-width: 992px) {
  .ly_sct_header img {
    height: 100px !important;
  }
}

.el_ttl_allseason {
  text-align: center;
  padding-top: 15px;
  padding-bottom: 10px;
  background: url(../images/lp-tokachi-jp-hk/ttl-bg-allseason.svg) center bottom/100% 10px no-repeat;
}

.el_ttl_banei {
  color: #fff;
  background: url(../images/lp-tokachi-jp-hk/ttl-bg1.png) center/100% 100% no-repeat;
  text-align: center;
  padding: 0.25em 1em;
}

.el_ttl_spring_bg {
  color: #fff;
  background: url(../images/lp-tokachi-jp-hk/ttl-spring-bg.png) center/100% 100% no-repeat;
  text-align: center;
  padding: 0.25em 1em;
}

.el_ttl_summer_bg {
  color: #fff;
  background: url(../images/lp-tokachi-jp-hk/ttl-summer-bg.png) center/100% 100% no-repeat;
  text-align: center;
  padding: 0.25em 1em;
}

.el_ttl_autumn_bg {
  color: #fff;
  background: url(../images/lp-tokachi-jp-hk/ttl-autumn-bg.png) center/100% 100% no-repeat;
  text-align: center;
  padding: 0.25em 1em;
}

.el_ttl_winter_bg {
  color: #fff;
  background: url(../images/lp-tokachi-jp-hk/ttl-winter-bg.png) center/100% 100% no-repeat;
  text-align: center;
  padding: 0.25em 1em;
}

.el_qr {
  max-width: 80px;
}

.ly_sct_gourmet {
  color: #fff;
  padding: 2rem 0;
  width: 100%;
  height: 100%;
  /* 背景色（ベーストーン） */
  background-color: #e83820; /* 明るめの赤 */
  /* 斜めストライプ（45度）を繰り返し */
  background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.1) 0px, rgba(255, 255, 255, 0.1) 10px, rgba(255, 255, 255, 0.2) 10px, rgba(255, 255, 255, 0.2) 20px);
  background-repeat: repeat;
}

.el_ttl_linedash {
  position: relative;
  text-align: center;
  padding: 0.5em;
}
.el_ttl_linedash::after {
  content: "";
  position: absolute;
  display: block;
  border: dashed 2px #fff;
  top: 3px;
  bottom: 3px;
  left: 3px;
  right: 3px;
}

.el_ttl_linedash__red {
  color: #e83820;
  background-color: #fff;
}
.el_ttl_linedash__red::after {
  content: "";
  border: dashed 2px #e83820;
}

.el_ttl_linedash__orange {
  color: #f5a200;
  background-color: #fff;
}
.el_ttl_linedash__orange::after {
  content: "";
  border: dashed 2px #f5a200;
}

.el_ttl_linedash__spring {
  color: #ec6868;
  background-color: #fff;
}
.el_ttl_linedash__spring::after {
  content: "";
  border: dashed 2px #ec6868;
}

.el_ttl_linedash__spsum {
  color: #333;
  background-image: linear-gradient(170deg, rgba(236, 104, 104, 0.31) 49%, rgba(127, 194, 109, 0.5) 50%);
}
.el_ttl_linedash__spsum::after {
  content: "";
  border: dashed 2px #fff;
}

.el_ttl_linedash__summer {
  color: #7fc26d;
  background-color: #fff;
}
.el_ttl_linedash__summer::after {
  content: "";
  border: dashed 2px #7fc26d;
}

.el_ttl_linedash__autumn {
  color: #f6ac19;
  background-color: #fff;
}
.el_ttl_linedash__autumn::after {
  content: "";
  border: dashed 2px #f6ac19;
}

.el_ttl_linedash__winter {
  color: #00b3ed;
  background-color: #fff;
}
.el_ttl_linedash__winter::after {
  content: "";
  border: dashed 2px #00b3ed;
}

.el_ttl_ribbon__white {
  /* 好みで調整 */
  --ribbon-height: 40px;
  --ribbon-color: #fff; /* 画像に近い水色 */
  --padding-x: 16px;
  position: relative;
  display: inline-block; /* 横幅は内容に合わせる（必要なら block に） */
  height: var(--ribbon-height);
  line-height: var(--ribbon-height); /* 垂直中央寄せ（単行の想定） */
  background: var(--ribbon-color);
  padding: 0 var(--padding-x);
  font-weight: 700;
  border-radius: 0; /* 角丸不要なら 0 */
}

/* 右端の三角形（矢尻） */
.el_ttl_ribbon__white::after {
  content: "";
  position: absolute;
  top: 0;
  right: -20px; /* 三角の突き出し量（調整可） */
  width: 0;
  height: 0;
  border-top: 20px solid var(--ribbon-color);
  border-bottom: 20px solid var(--ribbon-color);
  border-right: calc(var(--ribbon-height) / 2) solid transparent;
}

.ly_sct_onsen {
  color: #fff;
  padding: 2rem 0;
  width: 100%;
  height: 100%;
  background-color: #f5a200;
  background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.1) 0px, rgba(255, 255, 255, 0.1) 10px, rgba(255, 255, 255, 0.2) 10px, rgba(255, 255, 255, 0.2) 20px);
  background-repeat: repeat;
}

.ly_sct_ac_sch {
  color: #000;
  padding: 2rem 0;
  width: 100%;
  height: 100%;
  background-color: #fbdda1;
  background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.1) 0px, rgba(255, 255, 255, 0.1) 10px, rgba(255, 255, 255, 0.2) 10px, rgba(255, 255, 255, 0.2) 20px);
  background-repeat: repeat;
}

.el_phflame {
  position: relative;
}
.el_phflame .el_ttl_overlap {
  position: absolute;
  left: -10px;
  bottom: -10px;
  z-index: 1;
}

.ly_sct_spring {
  background: url(../images/lp-tokachi-jp-hk/bg-sct-spring.png) center/100% 100% no-repeat;
}

.ly_sct_summer {
  background: url(../images/lp-tokachi-jp-hk/bg-sct-summer.png) center/100% 100% no-repeat;
}

.ly_sct_autumn {
  background: url(../images/lp-tokachi-jp-hk/bg-sct-autumn.png) center/100% 100% no-repeat;
}

.ly_sct_winter {
  background: url(../images/lp-tokachi-jp-hk/bg-sct-winter.png) center/100% 100% no-repeat;
}

.table-access {
  white-space: nowrap;
  text-align: center;
}
.table-access td {
  position: relative;
  vertical-align: middle;
}
.table-access .station-tokachi {
  color: #fff;
  background-color: #7fc26d;
  padding: 0.25em 0.5em;
  border-radius: 1rem;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}
.table-access .airport-korea {
  color: #fff;
  background-color: #ec6868;
  border-radius: 100vmax;
  display: block;
  padding: 0.25em 0.5em;
}
.table-access .airport-japan {
  color: #ec6868;
  background-color: #fff;
  border: #ec6868 1px solid;
  border-radius: 100vmax;
  display: block;
  padding: 0.25em 0.5em;
}
.table-access .airport-tokachi {
  color: #fff;
  background-color: #00b3ed;
  padding: 0.25em 0.5em;
  border-radius: 1rem;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}
.table-access .airport-chitose {
  color: #00b3ed;
  background-color: rgba(0, 179, 237, 0.1);
  border-radius: 1rem;
  padding: 0.25em 0.5em;
  height: 100%;
  display: table-cell;
  vertical-align: middle;
}
.table-access .time-airline {
  display: flex;
  justify-content: center;
  align-items: center;
}
.table-access .time-airline::before {
  content: "";
  height: 1.25rem;
  width: 1.25rem;
  margin-right: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/icn-plane.svg) center/contain no-repeat;
}
.table-access .time-airline::after {
  content: "";
  height: 1rem;
  width: 1rem;
  margin-left: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/arrow-plane.svg) center/contain no-repeat;
}
.table-access .time-bus {
  display: flex;
  justify-content: center;
  align-items: center;
}
.table-access .time-bus::before {
  content: "";
  height: 1.25rem;
  width: 1.75rem;
  margin-right: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/icn-bus.svg) center/contain no-repeat;
}
.table-access .time-bus::after {
  content: "";
  height: 1rem;
  width: 1rem;
  margin-left: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/arrow-bus.svg) center/contain no-repeat;
}
.table-access .time-car {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.25rem 0;
}
.table-access .time-car::before {
  content: "";
  height: 1.25rem;
  width: 1.75rem;
  margin-right: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/icn-car.svg) center/contain no-repeat;
}
.table-access .time-car::after {
  content: "";
  height: 1rem;
  width: 1rem;
  margin-left: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/arrow-car.svg) center/contain no-repeat;
}
.table-access .time-train {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.25rem 0;
}
.table-access .time-train::before {
  content: "";
  height: 1.25rem;
  width: 1.75rem;
  margin-right: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/icn-train.svg) center/contain no-repeat;
}
.table-access .time-train::after {
  content: "";
  height: 1rem;
  width: 1rem;
  margin-left: 5px;
  display: inline-block;
  background: url(../images/lp-tokachi-jp-hk/arrow-bus.svg) center/contain no-repeat;
}

.table-schedule {
  border: solid 1px #666;
  border-collapse: collapse;
  min-width: 900px;
}
.table-schedule td {
  border: solid 1px #333;
}
.table-schedule thead td {
  background-color: #e5f3e2;
  text-align: center;
  height: 1rem;
  overflow: hidden;
}
.table-schedule tbody td {
  width: 8.333%;
  position: relative;
  height: 8rem;
  vertical-align: middle;
}
.table-schedule .el_sch_cat__ev {
  color: #7fc26d;
  background-color: #fff;
  border: solid 2px #7fc26d;
  border-radius: 0 0 100vmax 0;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 0.75rem;
  padding: 0.125em 2em 0.125em 1em;
  white-space: nowrap;
}
.table-schedule .el_sch_cat__activity {
  color: #f6ac19;
  background-color: #fff;
  border: solid 2px #f6ac19;
  border-radius: 0 0 100vmax 0;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 0.75rem;
  padding: 0.125em 2em 0.125em 1em;
  white-space: nowrap;
}
.table-schedule .el_sch_item {
  border-radius: 0.5rem;
  color: #fff;
  padding: 0.25rem;
  position: absolute;
  font-size: 0.875rem;
}
.table-schedule .el_sch_item.el_hanabi {
  background-color: #f6ac19;
  width: 200%;
  top: 20%;
  left: 0;
}
.table-schedule .el_sch_item.el_grumefes {
  background-color: #ec6868;
  width: 200%;
  top: 20%;
  left: 0;
}
.table-schedule .el_sch_item.el_irumi {
  background-color: #a77fb6;
  width: 550%;
  top: 60%;
  left: 50%;
}
.table-schedule .el_sch_item.el_snowfes {
  background-color: #00b3ed;
  width: 200%;
  top: 20%;
  left: 0;
}
.table-schedule .el_sch_item.el_sakura {
  background-color: #f08e8e;
  width: 100%;
  top: 20%;
  left: 50%;
}
.table-schedule .el_sch_item.el_garden {
  background-color: #13b6c4;
  width: 75%;
  left: 12.5%;
}
.table-schedule .el_sch_item.el_activity {
  background-color: #4f9c3e;
  width: 75%;
  left: 12.5%;
  top: 62.5%;
}
.table-schedule .el_sch_item.el_kouyou {
  background-color: #ef8200;
  width: 100%;
  top: 20%;
  left: 0;
}
.table-schedule .el_sch_item.el_snowact {
  background-color: #9ca0cf;
  width: 100%;
  left: 0;
}
.table-schedule .el_sch_item.el_snowview {
  background-color: #2b75bb;
  width: 66.66%;
  top: 62.5%;
  left: 33.33%;
}
.table-schedule .el_sch_block.el_greenseason {
  position: absolute;
  background-color: #bfe1b6;
  border-radius: 0.5rem;
  top: 20%;
  left: 50%;
  width: 400%;
  height: 80%;
  padding: 0.125rem 0;
}
.table-schedule .el_sch_block.el_greenseason .el_blockTtl {
  color: #6db758;
  text-align: center;
}
.table-schedule .el_sch_block.el_snowseason {
  position: absolute;
  background-color: #95dff8;
  border-radius: 0.5rem;
  top: 20%;
  left: 0;
  width: 300%;
  height: 80%;
  padding: 0.125rem 0;
}
.table-schedule .el_sch_block.el_snowseason .el_blockTtl {
  color: #00b3ed;
  text-align: center;
}

.el_ttl_route {
  overflow: hidden;
  text-align: center;
}

.el_ttl_route span {
  position: relative;
  display: inline-block;
  margin: 0 2.5em;
  padding: 0 1em;
}

.el_ttl_route span::before,
.el_ttl_route span::after {
  position: absolute;
  top: 50%;
  content: "";
  width: 800%;
  height: 2px;
  background-color: #00b3ed;
}

.el_ttl_route span::before {
  right: 100%;
}

.el_ttl_route span::after {
  left: 100%;
}/*# sourceMappingURL=lp-tokachi-jp-hk.css.map */