@charset "UTF-8";
/*******************************************************************************

	/area_cp/aomori_hakodate/

*******************************************************************************/
/* ---------------------------------------------------------------

	リセット

--------------------------------------------------------------- */
.ly_guideBody {
  padding: 0;
  color: #000000;
  font-size: clamp(1.4rem, 1.18rem + 0.29vw, 1.6rem);
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  overflow: clip;
}

.ly_section + .ly_section {
  margin: 0;
}

/* ---------------------------------------------------------------

	基本・汎用クラス

--------------------------------------------------------------- */
/* テキスト色 */
.hp_color-red {
  color: #e33500;
}

.hp_color-green {
  color: #1a6c04;
}

.hp_color-blue {
  color: #1a70b2;
}

/* 背景色 */
.hp_bgColor-orange {
  background-color: #d64215 !important;
}

.hp_bgColor-green {
  background-color: #218805 !important;
}

.hp_bgColor-blue {
  background-color: #1a70b2 !important;
}

/* フォントサイズ（相対） */
.hp_fontSize-ss {
  font-size: 0.75em !important;
}

.hp_fontSize-s {
  font-size: 0.88em !important;
}

.hp_fontSize-l {
  font-size: 1.13em !important;
}

/* 水平方向 */
.hp_tal {
  text-align: left !important;
}

.hp_tac {
  text-align: center !important;
}

.hp_tar {
  text-align: right !important;
}

.hp_tal-sp {
  text-align: left !important;
}
@media print, screen and (min-width: 751px) {
  .hp_tal-sp {
    text-align: inherit !important;
  }
}

/* テキストリンク */
.hp_textLink[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.4em;
  background: url("/assets/img/icon/blank.svg") no-repeat center/contain;
  transform: translateY(0.1em);
}
.hp_textLink[href$=".pdf"]::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.4em;
  background: url("/assets/img/icon/pdf.svg") no-repeat center/contain;
  transform: translateY(0.1em);
}

/* リスト */
.hp_list-disc {
  padding-left: 1.4em;
  list-style: disc;
}

/* ---------------------------------------------------------------

	レイアウト

--------------------------------------------------------------- */
.ly_section {
  padding: 23.4375vw 0;
}
@media print, screen and (min-width: 751px) {
  .ly_section {
    padding: min(12.5vw, 180px) 0;
  }
}
.ly_section:has(.bl_ah_menu) {
  padding-bottom: 0;
}
@media print, screen and (min-width: 751px) {
  .ly_section:has(.bl_ah_menu) {
    padding: min(6.25vw, 90px) 0 0;
  }
}

.ly_wrapper {
  padding-left: 15px;
  padding-right: 15px;
}

.ly_innerM {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.ly_guide {
  margin-top: 90px;
}
@media print, screen and (min-width: 751px) {
  .ly_guide {
    margin-top: 120px;
  }
}
.ly_guide:first-of-type {
  margin-top: 40px;
}
@media print, screen and (min-width: 751px) {
  .ly_guide:first-of-type {
    margin-top: 50px;
  }
}
@media print, screen and (min-width: 751px) {
  .ly_guide-col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4.34%;
  }
}

/* ---------------------------------------------------------------

	コンテンツ

--------------------------------------------------------------- */
/* 背景・フォント
----------------------------*/
.idxMainContent {
  background: #c7deef;
}

/* ボタンリンク
----------------------------*/
.el_ah_btn {
  width: 100%;
  max-width: 340px;
  min-height: 54px;
  padding: 0.6em 8px 0.6em 20px !important;
  color: #ffffff !important;
  background-color: #db2557;
  border-radius: 6px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  transition: 0.3s all;
}
@media print, screen and (min-width: 751px) {
  .el_ah_btn {
    width: auto;
    max-width: inherit;
    min-width: 340px;
    min-height: 68px;
  }
}
.el_ah_btn:hover {
  padding-right: 0 !important;
  gap: 20px;
  text-decoration: none;
  background-color: rgb(52.7902917772, 28.5248275862, 133.6751724138);
}
.el_ah_btn:hover.hp_bgColor-green {
  background-color: rgb(12.8016057604, 118.1000531915, 7.5999468085) !important;
}
.el_ah_btn:hover.hp_bgColor-blue {
  background-color: #337BB3 !important;
}
.el_ah_btn > p {
  display: grid;
  grid-template-columns: 1fr;
}
.el_ah_btn::after {
  content: "";
  display: inline-block !important;
  width: 11px !important;
  height: 11px !important;
  margin: 0 !important;
  background-color: #ffffff;
  -webkit-mask: url("/assets/img/icon/chev-right.svg") center/contain;
          mask: url("/assets/img/icon/chev-right.svg") center/contain;
}
.el_ah_btn[target=_blank]::after {
  width: 14px !important;
  height: 14px !important;
  -webkit-mask: url("/assets/img/icon/blank.svg") no-repeat center/contain;
          mask: url("/assets/img/icon/blank.svg") no-repeat center/contain;
}
.el_ah_btn[target=_blank]:hover {
  padding-right: 8px !important;
  gap: 12px;
}
.el_ah_btn-S {
  min-height: 54px;
}
.el_ah_btn-L {
  font-size: 1.13em;
  width: 100%;
  min-width: auto;
  min-height: 78px;
}
@media print, screen and (min-width: 751px) {
  .el_ah_btn-L {
    width: auto;
    min-width: 360px;
    min-height: 100px;
  }
}
.el_ah_btn-L::after {
  width: 15px !important;
  height: 15px !important;
}
.el_ah_btn-shadow {
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.6);
}
.el_ah_btn-shadow:hover {
  box-shadow: 0px 3px 20px -6px rgba(51, 22, 11, 0.8);
}

.bl_ah_btnWrap {
  margin-top: min(4vw, 30px);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: min(4vw, 30px);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_btnWrap {
    margin-top: min(2.08vw, 30px);
    gap: min(3vw, 30px);
    flex-wrap: nowrap;
  }
}
@media print, screen and (min-width: 751px) {
  .bl_ah_btnWrap._col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 751px) {
  .bl_ah_btnWrap._col2 > * {
    width: 100%;
    min-width: inherit;
  }
}

/* 見出し
----------------------------*/
.el_ah_title {
  display: flex;
  flex-direction: column;
  gap: 0.8em;
  margin: 0 auto 2em;
  line-height: 1.4;
  text-align: center;
  font-weight: bold;
}
.el_ah_title_sub {
  font-size: 1em;
}
@media print, screen and (min-width: 751px) {
  .el_ah_title_sub {
    font-size: 1.19em;
  }
}
.el_ah_title_sub > span {
  display: inline-block;
  padding: 0.2em 1em 0.3em 1.4em;
  color: #ffffff;
  background-color: #000000;
  border-radius: 50vw;
}
.el_ah_title_sub > span.type01 {
  background: #db2557;
  background: linear-gradient(90deg, #db2557 0%, rgb(219, 47.6666666667, 37) 100%);
}
.el_ah_title_sub > span.type02 {
  color: #000000;
  background: #f8af00;
  background: linear-gradient(90deg, #f8af00 0%, #f89200 100%);
}
.el_ah_title_main {
  font-size: 2em;
}
@media print, screen and (min-width: 751px) {
  .el_ah_title_main {
    font-size: 2.5em;
  }
}

/* リード文
----------------------------*/
.el_ah_lead {
  font-size: 1.13em;
}
@media print, screen and (min-width: 751px) {
  .el_ah_lead {
    text-align: center;
  }
}

/* ヘッダー・メインビジュアル
----------------------------*/
.bl_ah_header_main {
  padding-left: 0;
  display: flex;
  flex-direction: column-reverse;
  gap: min(8vw, 60px);
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_main {
    padding-left: 8%;
    flex-direction: inherit;
    gap: 4%;
  }
}
.bl_ah_header_main::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  transform: skewY(-7deg) translateY(-42vw);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_main::before {
    height: 90%;
    transform: skewY(-7deg) translateY(-20%);
  }
}
.bl_ah_header_main::after {
  content: "";
  width: 110%;
  height: 100vw;
  background-color: #ffffff;
  border-radius: 0 50vw 50vw 0;
  position: absolute;
  left: 0;
  bottom: 3vw;
  z-index: 0;
  transform: skewY(-7deg) translateY(8vw);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_main::after {
    width: 70%;
    height: 30.55vw;
    bottom: 0;
    transform: skewY(-7deg) translateY(8%);
  }
}
.bl_ah_header_text {
  display: grid;
  grid-template-columns: 1fr;
  padding: 0 15px 12vw;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_text {
    flex-basis: 36%;
    padding: 8.33vw 0;
  }
}
.bl_ah_header_mainvisual {
  max-height: 84vw;
  min-height: 84vw;
  display: grid;
  place-items: start;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_mainvisual {
    flex-basis: 60%;
    max-height: none;
    min-height: 33.33vw;
    transform: translateY(-1.05vw);
  }
}
.bl_ah_header_sub {
  padding: 0 15px;
  text-align: center;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_sub {
    margin-top: -2.77vw;
    padding: 0 8%;
    text-align: right;
  }
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_sub .el_ah_btn-L {
    font-size: min(1.25vw, 18px);
    min-width: min(25vw, 360px);
    min-height: min(6.94vw, 100px);
  }
}
.bl_ah_header_lead {
  order: 2;
  margin-top: 0.2em;
  margin-bottom: 0.4em;
  text-align: center;
  font-weight: bold;
  font-size: 5.06vw;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_lead {
    font-size: 2.22vw;
  }
}
.bl_ah_header_title {
  order: 3;
}
.bl_ah_header_title > img {
  display: block;
  width: 80%;
  margin: auto;
  max-width: 125.33vw;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_title > img {
    width: 100%;
    max-width: none;
  }
}
.bl_ah_header_sub-title {
  order: 4;
  text-align: center;
}
.bl_ah_header_sub-title > p {
  display: inline-grid;
  place-items: baseline;
  grid-template-columns: auto auto;
  line-height: 1.2;
  background: #7edfdd;
  background: linear-gradient(0deg, rgba(126, 223, 221, 0.8) 60%, rgba(126, 223, 221, 0) 60%);
}
.bl_ah_header_sub-title > p > span {
  font-weight: bold;
}
.bl_ah_header_sub-title > p > span:first-of-type {
  font-size: 3.46vw;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_sub-title > p > span:first-of-type {
    font-size: 1.52vw;
  }
}
.bl_ah_header_sub-title > p > span:last-of-type {
  font-size: 5.06vw;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_sub-title > p > span:last-of-type {
    font-size: 2.22vw;
  }
}
.bl_ah_header_period {
  order: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 9.33vw;
  margin-bottom: 0.4em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_period {
    gap: 2.08vw;
  }
}
.bl_ah_header_period > p {
  font-size: 4vw;
  line-height: 1;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_period > p {
    font-size: 1.25vw;
  }
}
.bl_ah_header_period > p:not(:first-of-type) {
  position: relative;
}
.bl_ah_header_period > p:not(:first-of-type)::before {
  content: "";
  width: 4vw;
  height: 100%;
  background: url(/area_cp/aomori_hakodate/img/icon_ah-arrow.svg) no-repeat center bottom/contain;
  position: absolute;
  left: -6.67vw;
  bottom: 0;
  top: 0;
  margin: auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_period > p:not(:first-of-type)::before {
    width: 0.69vw;
    left: -1.39vw;
  }
}
.bl_ah_header_period em {
  font-size: 5.33vw;
  font-style: normal;
  margin-left: 0.2em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header_period em {
    font-size: 1.8vw;
  }
}
.bl_ah_header .bl_ah_header_slider {
  width: calc(100% + 40px);
  height: 100vw;
  overflow: hidden;
  border-radius: 100vw 0 0 100vw;
  transform: skewY(-7deg) translate(-40px, -20vw);
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header .bl_ah_header_slider {
    width: 100%;
    height: 30.55vw;
    transform: skewY(-7deg) translateY(9%);
  }
}
.bl_ah_header .bl_ah_header_slider-track {
  display: flex;
  width: 800vw; /* 画像4枚×2回分 */
  animation: mv-scroll_sp 40s linear infinite;
  position: absolute;
  left: 0;
  bottom: -10vw;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header .bl_ah_header_slider-track {
    width: 277.76vw; /* 画像4枚×2回分 */
    animation-name: mv-scroll_pc;
    animation-duration: 50s;
    bottom: -2.08vw;
  }
}
.bl_ah_header .bl_ah_header_slider-track img {
  width: 100vw;
  height: auto;
  transform: skewY(7deg);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_header .bl_ah_header_slider-track img {
    width: 34.72vw;
  }
}

@keyframes mv-scroll_sp {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-480vw);
  }
}
@keyframes mv-scroll_pc {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-138.88vw);
  }
}
/* メニュー
----------------------------*/
.bl_ah_menu {
  padding: min(4vw, 30px);
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 20px;
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.2);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_menu {
    padding: min(4vw, 40px);
  }
}
.bl_ah_menuList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(1.33vw, 10px);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_menuList {
    gap: min(2.08vw, 30px);
  }
}
.bl_ah_menuList-item > a {
  display: grid;
  place-items: center;
  min-height: 60px;
  padding-bottom: 10px;
  background-color: #0c4081;
  border-radius: 6px;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-size: 0.88em;
  font-weight: bold;
  transition: 0.3s;
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_menuList-item > a {
    font-size: 1.13em;
    min-height: 68px;
  }
}
.bl_ah_menuList-item > a::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  background: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%2215%22%20viewBox%3D%220%200%208%2015%22%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill%3A%23ffffff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22b%22%20d%3D%22M6.118%2C7.5L0%2C1.382.941.441l7.059%2C7.059L.941%2C14.559l-.941-.941%2C6.118-6.118Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  transform: rotate(90deg);
  transition: 0.3s ease bottom;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  margin: auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_menuList-item > a::after {
    width: 10px;
    height: 16px;
  }
}
.bl_ah_menuList-item > a:hover {
  background-color: rgb(18.5, 12, 129);
}
.bl_ah_menuList-item > a:hover::after {
  bottom: 3px;
}

/* 冬の魅力満載！
----------------------------*/
#miryoku .el_ah_intro-text {
  font-size: 1.13em;
  line-height: 1.8;
}
@media print, screen and (min-width: 751px) {
  #miryoku .el_ah_intro-text {
    text-align: center;
  }
}
#miryoku .bl_ah_intro-news {
  padding: min(8vw, 60px) min(4vw, 30px) min(6.66vw, 50px);
  background-color: #ffffff;
  border-radius: 20px;
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.6);
}
@media print, screen and (min-width: 751px) {
  #miryoku .bl_ah_intro-news {
    padding: min(3.5vw, 35px) min(4vw, 40px) min(4vw, 40px);
  }
}
#miryoku .bl_ah_intro-news > dt {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: min(2.66vw, 20px);
}
@media print, screen and (min-width: 751px) {
  #miryoku .bl_ah_intro-news > dt {
    margin-bottom: min(1.38vw, 20px);
  }
}

/* 青森県・北海道道南エリアの冬の魅力満載！
----------------------------*/
#tabContents {
  position: relative;
  padding-top: 70px;
}
@media print, screen and (min-width: 751px) {
  #tabContents {
    padding-top: 68px;
  }
}
#tabContents .tabNav {
  display: flex;
  justify-content: center;
  -moz-column-gap: 5px;
       column-gap: 5px;
  width: 100%;
  height: 70px;
  padding: 0 min(1.33vw, 10px);
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
@media print, screen and (min-width: 751px) {
  #tabContents .tabNav {
    height: 68px;
    padding: 0 min(5.33vw, 40px);
    -moz-column-gap: 1%;
         column-gap: 1%;
  }
}
#tabContents #tasteTab .tabNav {
  justify-content: flex-start;
}

#tabContents #stayTab .tabNav {
  justify-content: flex-end;
}

#tabContents .tabNav::after {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  width: 100%;
  height: 2px;
  background: #33160b;
  content: "";
}
#tabContents .tabNav .tabBtn {
  position: relative;
  width: 31.98%;
  height: 100%;
  padding: 13px 4px 10px;
  border: 1px solid #d9d9d9;
  border-radius: 5px 5px 0 0;
  cursor: pointer;
  background: #f5f5f5;
  color: #666;
  text-align: center;
  font-family: inherit;
  font-size: clamp(1rem, 0.6rem + 1.07vw, 1.4rem);
  font-weight: bold;
  pointer-events: auto;
}
@media print, screen and (min-width: 751px) {
  #tabContents .tabNav .tabBtn {
    width: 31.91%;
    font-size: 1em;
    padding: 20px 10px;
  }
}
#tabContents .tabNav .tabBtn:focus-visible {
  outline: 2px solid #2174b0;
}
#tabContents .tabNav .tabBtn[aria-selected=false]:hover {
  opacity: 0.7;
}
#tabContents .tabNav .tabBtn[aria-selected=true] {
  z-index: 2;
  border-width: 2px;
  border-color: #33160b;
  border-bottom-color: #33160b;
  background: #ffffff;
  color: #ffffff;
  cursor: default;
}
#tabContents .tabNav .tabBtn[aria-selected=true]#taste {
  background-color: #a23d00;
}
#tabContents .tabNav .tabBtn[aria-selected=true]#shopping {
  background-color: #da2d5e;
}
#tabContents .tabNav .tabBtn[aria-selected=true]#stay {
  background-color: #30840a;
}
#tabContents .tabNav::after {
  background-color: #33160b;
}
#tabContents .tabContent {
  display: none;
  opacity: 0;
  width: 100%;
  height: 0;
}
#tabContents .tabContent:focus-visible {
  outline-color: #06c;
}
#tabContents .tabContent_inner {
  pointer-events: none;
  transition: 0.3s ease;
}
#tabContents .tabContent[aria-hidden=false] {
  display: block;
  position: relative;
  z-index: 2;
  opacity: 1;
  height: auto;
}
#tabContents .tabContent[aria-hidden=false] .tabContent_inner {
  animation-name: fadein;
  animation-duration: 0.6s;
  animation-timing-function: ease-out;
  pointer-events: auto;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* カードリストのグリッド表示 */
.bl_ah_infoList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 30px 3.5%;
  align-items: start;
  margin-top: 30px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_infoList {
    margin-top: 40px;
  }
}

/* カード基本スタイル */
.bl_ah_info {
  display: grid;
  height: auto;
  border-radius: 10px;
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.6);
  background-color: #ffffff;
  transition: transform 0.3s ease, opacity 0.3s ease;
  overflow: clip;
  gap: 20px;
}
.bl_ah_info_contents {
  order: 2;
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 0 15px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_info_contents {
    padding: 0 min(2vw, 20px);
  }
}
.bl_ah_info_contents .title {
  order: 3;
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_info_contents .title {
    min-height: 2.8em;
  }
}
.bl_ah_info_contents .sub {
  order: 2;
  font-size: 0.81em;
  margin-top: 10px;
}
.bl_ah_info_contents .text {
  order: 4;
  margin-top: 10px;
}
.bl_ah_info_contents .label {
  order: 1;
}
.bl_ah_info_contents .label > span {
  display: inline-block;
  min-width: 6em;
  min-height: 2em;
  padding: 0.14em 1em;
  font-size: 0.81em;
  font-weight: bold;
  color: #ffffff;
  text-align: center;
  background: #000000;
  border-radius: 50vw;
}
.bl_ah_info[data-label=taste] .bl_ah_info_contents .label > span {
  background: #a23d00;
}
.bl_ah_info[data-label=taste] .bl_ah_info_contents .label > span::after {
  content: "グルメ・体験";
}

.bl_ah_info[data-label=shopping] .bl_ah_info_contents .label > span {
  background: #da2d5e;
}
.bl_ah_info[data-label=shopping] .bl_ah_info_contents .label > span::after {
  content: "ショッピング・キャンペーン";
}

.bl_ah_info[data-label=stay] .bl_ah_info_contents .label > span {
  background: #30840a;
}
.bl_ah_info[data-label=stay] .bl_ah_info_contents .label > span::after {
  content: "ステイ・トラベル";
}

.bl_ah_info_image {
  order: 1;
}
.bl_ah_info_image img {
  width: 100%;
  display: block;
}
.bl_ah_info_details {
  order: 3;
}

/* アコーディオン */
.bl_ah_info_details {
  overflow: hidden;
}
.bl_ah_info_details-button {
  min-height: 60px;
  padding: 0.2em 15px 0.2em 25px;
  background-color: #e9e9e9;
  border-top: 1px solid #cdcdcd;
  font-weight: bold;
  cursor: pointer;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  transition: 0.3s ease background-color;
}
.bl_ah_info_details-button[aria-expanded=true] {
  background-color: #e2e9ef;
}
.bl_ah_info_details-button::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 11px;
  background: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%2215%22%20viewBox%3D%220%200%208%2015%22%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill%3A%23000000%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22b%22%20d%3D%22M6.118%2C7.5L0%2C1.382.941.441l7.059%2C7.059L.941%2C14.559l-.941-.941%2C6.118-6.118Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  transform: rotate(90deg);
  transition: 0.3s ease transform;
}
.bl_ah_info_details[open] .bl_ah_info_details-button::after {
  transform: rotate(90deg) scaleX(-1);
}

.bl_ah_info_details-button::-webkit-details-marker {
  display: none;
}
.bl_ah_info_details-button:hover {
  background-color: #e2e9ef;
}
.bl_ah_info_details-content .inner {
  padding: 15px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_info_details-content .inner {
    padding: min(2vw, 20px);
  }
}
.bl_ah_info_details-content .title {
  margin-bottom: 0.2em;
  padding-left: 18px;
  position: relative;
  font-weight: bold;
  line-height: 1.6;
}
.bl_ah_info_details-content .title::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 2px;
  background-color: #d64215;
  position: absolute;
  left: 0;
  top: 0.8em;
  transform: translateY(-50%);
}
.bl_ah_info_details-content .title:not(:first-of-type) {
  margin-top: 1.2em;
}
.bl_ah_info_details-content .linkBtn {
  margin-top: 15px;
  text-align: center;
}
.bl_ah_info_details-content .linkBtn .el_ah_btn {
  width: 100%;
  min-width: inherit;
}
.bl_ah_info_details-content .table01 {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.4em;
  margin-top: 0.4em;
}

/* 特別列車の運行
----------------------------*/
#specialtrain {
  position: relative;
}
#specialtrain::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #e3e9f1;
  position: absolute;
  left: 0;
  top: 11.72vw;
}
@media print, screen and (min-width: 751px) {
  #specialtrain::before {
    top: 90px;
  }
}
#specialtrain::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(-50%);
  background-color: #e3e9f1;
  display: block;
  width: 100%;
  height: 46.875vw;
  -webkit-mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
          mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
}
@media print, screen and (min-width: 751px) {
  #specialtrain::after {
    height: min(25vw, 360px);
    -webkit-mask-size: cover;
            mask-size: cover;
  }
}

.bl_ah_guide-heading {
  margin-bottom: 1.2em;
  padding-top: 34px;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-heading {
    font-size: 1.75em;
  }
}
.bl_ah_guide-heading::before {
  content: "";
  width: 133px;
  height: 15px;
  background: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22180%22%20height%3D%2220%22%20viewBox%3D%220%200%20180%2020%22%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill%3A%23222%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpolygon%20class%3D%22b%22%20points%3D%222.038%2020%200%2020%207.279%200%209.318%200%202.038%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2217.555%2020%2015.517%2020%2022.796%200%2024.834%200%2017.555%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2233.071%2020%2031.033%2020%2038.313%200%2040.351%200%2033.071%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2248.588%2020%2046.55%2020%2053.829%200%2055.867%200%2048.588%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2264.105%2020%2062.066%2020%2069.346%200%2071.384%200%2064.105%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2279.621%2020%2077.583%2020%2084.862%200%2086.901%200%2079.621%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%2295.138%2020%2093.099%2020%20100.379%200%20102.417%200%2095.138%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%22110.654%2020%20108.616%2020%20115.895%200%20117.934%200%20110.654%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%22126.171%2020%20124.133%2020%20131.412%200%20133.45%200%20126.171%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%22141.687%2020%20139.649%2020%20146.929%200%20148.967%200%20141.687%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%22157.204%2020%20155.166%2020%20162.445%200%20164.483%200%20157.204%2020%22%2F%3E%3Cpolygon%20class%3D%22b%22%20points%3D%22172.721%2020%20170.682%2020%20177.962%200%20180%200%20172.721%2020%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-heading::before {
    width: 180px;
    height: 20px;
  }
}

.bl_ah_guide {
  padding: min(8vw, 60px) min(4vw, 30px) min(6.66vw, 50px);
  background-color: #ffffff;
  border-radius: 20px;
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.6);
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide {
    padding: min(6vw, 60px) min(4vw, 40px) min(4vw, 40px);
  }
}
.bl_ah_guide:not(:first-of-type) {
  margin-top: 40px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide:not(:first-of-type) {
    margin-top: 60px;
  }
}
.bl_ah_guide-lead {
  font-weight: bold;
}
.bl_ah_guide-title {
  margin: 0 0 1em;
  font-size: 1.56em;
  font-weight: bold;
  color: #4d3893;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-title {
    margin-bottom: 0.6em;
    font-size: 1.88em;
  }
}
.bl_ah_guide-images {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px 4%;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-images {
    gap: 30px 2.71%;
  }
}
.bl_ah_guide-image {
  flex-basis: 48%;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-image {
    flex-basis: 31.52%;
  }
}
.bl_ah_guide-image > img {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 290px;
}
.bl_ah_guide-image > figcaption {
  margin-top: 0.4em;
  font-weight: bold;
  text-align: center;
  font-size: 0.93em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-image > figcaption {
    font-size: inherit;
  }
}
.bl_ah_guide-sub-title {
  margin-bottom: 0.8em;
  padding-left: 1em;
  font-size: 1.25em;
  font-weight: bold;
  color: #4d3893;
  position: relative;
}
.bl_ah_guide-sub-title::before {
  content: "";
  width: 4px;
  height: 1.9em;
  background-color: #4d3893;
  border-radius: 50vw;
  position: absolute;
  left: 0;
  top: 0;
}
.bl_ah_guide-table {
  border-bottom: 1px solid #cdcdcd;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-table {
    display: grid;
    grid-template-columns: 1fr 3fr;
  }
  .ly_guide-col2 .bl_ah_guide-table {
    grid-template-columns: 6em calc(100% - 6em);
  }
}
.bl_ah_guide-table > dt {
  padding: 0.5em 1em;
  font-weight: bold;
  background-color: #f4f4e9;
  border-top: 1px solid #cdcdcd;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-table > dt {
    padding: 0.9em 1em;
  }
}
.bl_ah_guide-table > dd {
  padding: 0.5em 1em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-table > dd {
    padding: 0.9em 1em;
    border-top: 1px solid #cdcdcd;
  }
}
.bl_ah_guide-header {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-header {
    justify-content: space-between;
    flex-direction: row;
    gap: 3.26%;
  }
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-header-text {
    flex-basis: 65.21%;
  }
  ._equally .bl_ah_guide-header-text {
    flex-basis: 48.36%;
  }
}
.bl_ah_guide-header-image {
  max-width: 290px;
  margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-header-image {
    flex-basis: 31.52%;
  }
  ._equally .bl_ah_guide-header-image {
    flex-basis: 48.36%;
    max-width: 445px;
  }
}
.bl_ah_guide-header-image img {
  display: block;
  width: 100%;
  max-width: 290px;
  margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
  ._equally .bl_ah_guide-header-image img {
    max-width: 445px;
  }
}
.bl_ah_guide-header-image figcaption {
  margin-top: 0.4em;
  font-weight: bold;
  text-align: center;
  font-size: 0.93em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_guide-header-image figcaption {
    font-size: inherit;
  }
}
.bl_ah_guide-header-image .notes {
  margin-top: 0.4em;
  font-size: 0.75em;
  text-align: right;
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.4;
}

/* 列車・旅の予約
----------------------------*/
#reservation {
  position: relative;
  z-index: 2;
  background: linear-gradient(0deg, transparent 11.72vw, #eff1da 11.72vw, #eff1da calc(100% - 11.72vw), transparent calc(100% - 11.72vw));
}
@media print, screen and (min-width: 751px) {
  #reservation {
    background: linear-gradient(0deg, transparent 90px, #eff1da 90px, #eff1da calc(100% - 90px), transparent calc(100% - 90px));
  }
}
#reservation::before, #reservation::after {
  content: "";
  position: absolute;
  left: 0;
  z-index: 1;
  background-color: #eff1da;
  display: block;
  width: 100%;
  height: 46.875vw;
  -webkit-mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
          mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
}
@media print, screen and (min-width: 751px) {
  #reservation::before, #reservation::after {
    height: min(25vw, 360px);
    -webkit-mask-size: cover;
            mask-size: cover;
  }
}
#reservation::before {
  top: 0;
  transform: translateY(-50%);
}
#reservation::after {
  bottom: 0;
  transform: translateY(50%) rotate(180deg);
}
#reservation .ly_wrapper {
  position: relative;
  z-index: 2;
}
#reservation mark {
  background: #ffd200;
  background: linear-gradient(0deg, #ffd200 54%, transparent 54%);
  font-style: normal;
}
#reservation section + section {
  margin-top: 60px;
}

.bl_ah_reservation_main {
  text-align: center;
}
.bl_ah_reservation_main-title {
  font-size: 1.86em;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation_main-title {
    font-size: 2.13em;
  }
}
.bl_ah_reservation_main .el_ah_btn {
  min-height: 72px;
}

.bl_ah_reservation {
  padding: min(8vw, 60px) min(4vw, 30px) min(6.66vw, 50px);
  background-color: #ffffff;
  border-radius: 20px;
  box-shadow: 0px 3px 15px -6px rgba(51, 22, 11, 0.6);
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation {
    padding: min(6vw, 60px) min(8.5vw, 85px) min(4vw, 40px);
  }
}
.bl_ah_reservation:last-of-type {
  margin-bottom: 15px;
}
.bl_ah_reservation_main + .bl_ah_reservation {
  margin-top: 80px !important;
}

.bl_ah_reservation-title {
  font-size: 1.71em;
  font-weight: bold;
  margin-bottom: 0.8em;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation-title {
    font-size: 1.88em;
    margin-bottom: 1.2em;
  }
}
.bl_ah_reservation-example {
  margin-bottom: 0.6em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px 12px;
  flex-wrap: wrap;
  font-size: 1.13em;
  white-space: nowrap;
}
.bl_ah_reservation-example .ex {
  flex-basis: 100%;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation-example .ex {
    flex-basis: auto;
  }
}
.bl_ah_reservation-example .ex > span {
  display: inline-block;
  width: 1.9em;
  font-size: 0.8em;
  color: #ffffff;
  background-color: #218805;
  border-radius: 4px;
}
.bl_ah_reservation-example .station + .station {
  position: relative;
  padding-left: 28px;
}
.bl_ah_reservation-example .station + .station::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill%3A%23218805%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22b%22%20d%3D%22M5%2C15L0%2C10l5-5%2C1.4%2C1.4-2.575%2C2.6h12.35l-2.575-2.6%2C1.4-1.4%2C5%2C5-5%2C5-1.4-1.4%2C2.575-2.6H3.825l2.575%2C2.6-1.4%2C1.4Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -2px;
  margin: auto;
}
.bl_ah_reservation-example-contents_inner {
  max-width: 620px;
  margin: 0 auto;
  padding: min(4vw, 30px);
  background-color: #f3fae9;
  border-radius: 10px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation-example-contents_inner {
    padding: min(3vw, 30px);
  }
}
.bl_ah_reservation-example-contents_inner .font-s {
  font-size: 1.13em;
}
.bl_ah_reservation-example-contents_inner .font-m {
  font-size: 1.38em;
}
.bl_ah_reservation-example-contents_inner .font-l {
  font-size: 1.63em;
}
.bl_ah_reservation-drp {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.6em;
  font-weight: bold;
}
.bl_ah_reservation-drp .limited > span {
  display: inline-block;
  padding: 0.1em 1em;
  background-color: #f3fae9;
  border-radius: 4px;
  color: #1a6c04;
  font-size: 0.81em;
  text-align: center;
}
.bl_ah_reservation-drp .title {
  font-size: 1.38em;
  line-height: 1.4;
}
.bl_ah_reservation .el_ah_btn {
  min-height: 82px;
}
.bl_ah_reservation-banner {
  display: block;
  margin: min(4vw, 30px) auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation-banner {
    margin: min(3vw, 30px) auto;
  }
}
.bl_ah_reservation-banner img {
  max-width: 290px;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_reservation-banner img {
    max-width: 320px;
  }
}

/* ツガルカイセン
----------------------------*/
#tsugarukaisen {
  position: relative;
  color: #ffffff;
  background: linear-gradient(0deg, transparent 11.72vw, #000000 11.72vw, #000000 calc(100% - 11.72vw), transparent calc(100% - 11.72vw));
}
@media print, screen and (min-width: 751px) {
  #tsugarukaisen {
    background: linear-gradient(0deg, transparent 90px, #000000 90px, #000000 calc(100% - 90px), transparent calc(100% - 90px));
  }
}
#tsugarukaisen::before, #tsugarukaisen::after {
  content: "";
  position: absolute;
  left: 0;
  z-index: 1;
  background-color: #000000;
  display: block;
  width: 100%;
  height: 46.875vw;
  -webkit-mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
          mask: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22a%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221920%22%20height%3D%22360%22%20viewBox%3D%220%200%201920%20360%22%3E%3Cdefs%3E%3Cstyle%3E.c%7Bfill%3Anone%3B%7D.d%7Bfill%3A%23000000%3B%7D.e%7Bclip-path%3Aurl(%23b)%3B%7D%3C%2Fstyle%3E%3CclipPath%20id%3D%22b%22%3E%3Crect%20class%3D%22c%22%20width%3D%221920%22%20height%3D%22360%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3Cg%20class%3D%22e%22%3E%3Cpath%20class%3D%22d%22%20d%3D%22M0%2C447.88v-100s0-50%2C0-50v-50s750-92.088%2C750-92.088c210-25.785%2C210.019%2C74.213%2C420%2C48.43l750-92.088v335.746H0Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center/200vw;
}
@media print, screen and (min-width: 751px) {
  #tsugarukaisen::before, #tsugarukaisen::after {
    height: min(25vw, 360px);
    -webkit-mask-size: cover;
            mask-size: cover;
  }
}
#tsugarukaisen::before {
  top: 0;
  transform: translateY(-50%);
}
#tsugarukaisen::after {
  bottom: 0;
  transform: translateY(50%) rotate(180deg);
}
#tsugarukaisen .ly_wrapper {
  position: relative;
  z-index: 2;
}

.el_ah_tsugarukaisen-mv {
  width: 100%;
  height: min(54.36vw, 560px);
  background: url(/area_cp/aomori_hakodate/img/tsugarukaisen_mv.png) no-repeat center/contain;
  overflow: clip;
  text-indent: -999vw;
}

.el_ah_tsugarukaisen-lead {
  font-size: 1.43em;
  font-weight: bold;
  line-height: 1.4;
  margin: 2em auto;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .el_ah_tsugarukaisen-lead {
    font-size: 1.88em;
  }
}

/* footer
----------------------------*/
.bl_ah_footer {
  position: relative;
  margin-top: -11.72vw;
  padding: 35.16vw 0 min(5.33vw, 40px);
  background: url(/area_cp/aomori_hakodate/img/bg_footer-sp.jpg) no-repeat center/cover;
  overflow: hidden;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_footer {
    margin-top: calc(min(6.25vw, 90px) * -1);
    padding: min(12.5vw, 180px) 0 min(2.08vw, 30px);
    background-image: url(/area_cp/aomori_hakodate/img/bg_footer-pc.jpg);
    background-size: 1700px 900px;
  }
}
@media screen and (min-width: 1700px) {
  .bl_ah_footer {
    background-size: cover;
  }
}
.bl_ah_footer_logo > img {
  display: block;
  width: 90%;
  max-width: 470px;
  margin: 0 auto;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_footer_logo > img {
    width: 100%;
  }
}
.bl_ah_footer_notes {
  margin-top: min(13.33vw, 100px);
  text-align: right;
}
@media print, screen and (min-width: 751px) {
  .bl_ah_footer_notes {
    margin-top: min(4.16vw, 60px);
  }
}

/* 要素のフェードアップ処理
----------------------------*/
.js-fadeup {
  opacity: 0;
}
.js-fadeup.is-visible {
  animation: fadeUp 0.4s ease-out forwards;
}
.js-fadeup + .js-fadeup {
  animation-delay: 0.2s;
}
.js-fadeup + .js-fadeup + .js-fadeup {
  animation-delay: 0.4s;
}

/* フェードアップアニメーション */
@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}/*# sourceMappingURL=style.css.map */