@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Zen+Old+Mincho:wght@700&display=swap');

@font-face {
  font-family: icon;
  src: url(../font/icon.eot);
  src: url(../font/icon.eot#iefix) format("embedded-opentype"),
       url(../font/icon.woff) format("woff"),
       url(../font/icon.ttf) format("truetype"),
       url(../font/icon.svg#icon) format("svg");
  font-weight: normal;
  font-style: normal;
}

 [class^="ico-"]:before, [class*=" ico-"]:before { display: inline-block; font-family: "icon"; font-size: 120%; font-style: normal; font-variant: normal; font-weight: normal; line-height: 1em; margin-left: .2em; margin-right: .2em; speak: none; text-align: center; text-decoration: inherit; text-transform: none; width: 1em; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.ico-down-dir:before { content: '\e800'; }
.ico-dots:before { content: '\e801'; }
.ico-pagetop:before { content: '\e802'; }
.ico-building:before { content: '\e803'; }
.ico-matsu:before { content: '\e804'; }
.ico-train:before { content: '\e805'; }
.ico-air:before { content: '\e806'; }
.ico-convenience:before { content: '\e807'; }
.ico-angle-left:before { content: '\f104'; }
.ico-angle-right:before { content: '\f105'; }
.ico-angle-up:before { content: '\f106'; }
.ico-angle-down:before { content: '\f107'; }


.jtb-nav-breadcrumb { margin-bottom: 25px; max-width: 1280px; }
.l-page { font-family: 'Noto Sans JP', sans-serif; font-size: 16px; line-height: 1; width: 100%; }
.l-page * { -ms-box-sizing: border-box; box-sizing: border-box; }
.l-page h1 { font-size: 18px; font-weight: bold; line-height: 1; margin: 0 auto 25px; max-width: 1280px; text-align: left; }
.l-page h2, .l-page h3, .l-page h4, .l-page h5, .l-page .f-zom, .l-page .c-btn span { font-family: "Zen Old Mincho", serif; font-weight: 700; }
/* .l-page a { color: #ff1929; } */
.l-page a, .l-page a img { transition: all .4s ease; }
.l-page button { border: none; cursor: pointer; font-family: 'Noto Sans JP', sans-serif; font-size: 16px; }
.l-page img { display: block; margin: 0 auto; max-width: 100%; }
.l-page p, .l-page li { line-height: 1.6; }
.l-page strong { font-weight: 700; }
.l-page sup { font-size: .625em; vertical-align: baseline; }
.l-page .c-btn { align-items: center; border-radius: .375em; color: #fff; display: flex; position: relative; width: 100%; }
.l-page .c-btn::after { content: "\f105"; display: inline-block; font-family: "icon"; font-size: 2em; position: absolute; right: .75em; top: 50%; transform: translateY(-50%); }
.l-page .c-btn__red { background-color: #e37e59; }
.l-page .c-btn__purple { background-color: #7776b2; }
.l-page .c-btn__ocher { background-color: #c3aa5f; }
.l-page .c-btn__ocher span { display: flex; }
.l-page .c-btn__ocher span::before { display: block; font-size: 2em; margin: 0; }
.l-page .c-fdc { display: flex; flex-direction: column; }
.l-page .c-sec__head { margin: 0 auto; }
.l-page .c-sec__head--img { margin: 0 auto .5em; width: 9.75em; }
.l-page .c-sec__title { line-height: 1.3; text-align: center; }
.l-page .is-fixed { left: 0; position:fixed; top: 0; z-index: 99; width: 100%; }
.js-btn-page-top { bottom: 50px; cursor: pointer; display: none; position: fixed; right: 50px; z-index: 100; }
.js-btn-page-top a { display: block; height: 17px; position: relative; width: 35px; }
.js-btn-page-top a::before { color: #000; content: "\e802"; display: inline-block; font-family: "icon"; font-size: 17px; height: 17px; width: 35px; }
.js-btn-page-top a:hover { opacity: .8; }

.l-mv { background-color: #e9edf6; display: grid; place-content: center; position: relative; width: 100%; }
.l-mv__main { gap: .5em; position: relative; text-align: center; z-index: 1; }
.l-mv__title { margin: 0 auto; }
.l-mv__copy p { background-color: #332e3f; box-decoration-break: clone; color: #fff; display: inline; line-height: 1.9; padding: 2px .5em; }
.l-mv__bg { display: grid; filter: brightness(95%); inset: 0; position: absolute; width: 100%; }
.l-mv__pic--block img { filter: saturate(140%); height: 100%; object-fit: cover; width: 100%; }
.l-anchor { position: relative; }
.l-anchor__float { background-color: #7776b2; }
.l-anchor__item { color: #fff; font-family: "Zen Old Mincho", serif; position: relative; }
.l-anchor__item a { background-color: #fff; border-radius: .25em; display: grid; place-content: center; position: relative; width: 100%; }
.l-anchor__item span { color: #7776b2; font-weight: 700; }
.l-anchor__item span::after { color: #b18f21; content: "\f107"; display: inline-block; font-family: "icon"; line-height: 1; padding-left: .5em; transition: all .4s ease; }
.l-anchor__float.is-fixed { background-color: #5f5e9d; }
.l-contents .c-inner { color: #332e3f; display: flex; flex-direction: column; margin: 0 auto; max-width: 1280px; width: 89%; }
.sec-info__list { border-top: 1px dashed #7776b2; }
.sec-info__item { border-bottom: 1px dashed #7776b2; padding: 1.25em 0; position: relative; text-align: left; }
.sec-info__item a { color: #332e3f; display: block; padding-left: 3.5em; position: relative; }
.sec-info__item.ico_new a::before { background-color: #e37e59; color: #fff; content: "NEW"; display: grid; font-family: "Zen Old Mincho", serif; font-size: .75em; height: 1.75em; left: 0; place-content: center; position: absolute; top: 50%; translate: 0 -50%; width: 3.75em; }
.sec-doramakan { background: url(../images/doramakan_bg_left.png) no-repeat 0 0 / 27.7778vw auto,  url(../images/doramakan_bg_right.png) no-repeat 100% 0 / 27.7778vw auto; background-color: #7776b2; }
.sec-doramakan .c-sec__head { color: #fff; }
.sec-doramakan .c-sec__head { max-width: 830px; width: 100%; }
.sec-doramakan__heading { font-size: 1.25em; padding-bottom: 1em; }
.sec-doramakan__list { gap: 2.5em; margin: 0 auto; max-width: 1200px; width: 100%; }
.sec-doramakan__item { background-color: #fff; position: relative; }
.sec-doramakan__item::before { background-image: repeating-conic-gradient(from 0deg, #ccb776 0deg 90deg, #fff 90deg 180deg); background-size: 1em 1em; content: ""; display: block; height: 1em; left: 0; position: absolute; top: 0; width: 100%; }
.sec-doramakan__title { border-bottom: 1px solid #7776b2; }
.sec-doramakan__title::before { color: #dcc57a; content: "\e801"; display: inline-block; font-family: "icon"; font-weight: 400; padding: 0 .5em .5em 0; }
.sec-doramakan__lead, .sec-doramakan__guide { display: grid; }
.sec-doramakan__guide { border: 1px solid #7776b2; padding: 1.5em 2em; }
.sec-doramakan__guide--heading { border-bottom: 2px solid #d9d9d9; padding-bottom: .3333em; }
.sec-doramakan__guide dl { display: grid; gap: .25em; grid-template-columns: max-content 1fr; }
.sec-doramakan__guide dt { text-align: right; }
.sec-doramakan__guide dt::after { content: "："; }
.sec-doramakan__guide dd { line-height: 1.3; }
.sec-doramakan__chicket { background-color: #f6f6f6; }
.sec-doramakan__chicket--list { gap: 1em; }
.sec-doramakan__chicket--item { background-color: #fff; border: 1px solid #7776b2; display: flex; position: relative; }
.sec-doramakan__chicket--item::after { color: #7776b2; content: "\f105"; display: inline-block; font-family: "icon"; font-size: 2em; position: absolute; right: .75em; top: 50%; transform: translateY(-50%); }
.sec-doramakan__chicket--name { color: #7776b2; }
.sec-doramakan__chicket--label { align-items: center; background-color: #f0f0f0; border-radius: .25em; color: #555; display: inline-flex; height: 1.875em; justify-content: center; padding: 0 .75em; }
.sec-doramakan__chicket--label span { font-size: .875em; font-weight: 500; }
.sec-doramakan__chicket--label span::before { font-size: 1.5em; font-weight: 400; }
.sec-doramakan__chicket--price { color: #332e3f; font-size: 1.125em; }
.sec-doramakan__chicket--price span { color: #ff0900; padding-left: 1em; }
.sec-place { background: url(../images/place_bg.png) no-repeat 100% 0 / 34.7222vw auto; }
.sec-place .c-sec__head { align-items: flex-start; margin: 0; position: relative; }
.sec-place .c-sec__head--img { left: 0; position: absolute; }
.sec-place__item { align-items: flex-start; background-color: #fff; border-radius: .5em; box-shadow: 0 0 .625em 0 rgba(0,0,0,.15); }
.sec-place__item .c-btn { height: 3.5em; }
.sec-place__title { font-size: 1.25em; }
.sec-place__tag { height: 2.5em; }
.sec-place__title { align-items: center; border-bottom: 1px solid #ccc; display: flex; gap: .8em; padding-bottom: .5em; width: 100%; }
.sec-place__title::before { color: #dcc57a; content: "\e804"; display: inline-block; font-family: "icon"; font-size: 2em; font-weight: 400; }
.sec-place__tag { background-color: #fff; border: 1px solid #b18f21; border-radius: .375em; display: inline-grid; padding: 0 .75em; place-items: center; }
.sec-place__tag span { color: #b18f21; }
.sec-recommend { background-color: #fff; }
.sec-recommend__item p { color: #7776b2; font-weight: 700; padding-top: .25em; }

@media screen and (min-width:768px){
  .sp-item { display: none; }
  .breadcrumb-upper { margin: 0 auto 25px; max-width: 1230px; padding: 0 .5em; text-align: left; }
  .breadcrumb-upper__fix, .breadcrumb-upper__scroll, .breadcrumb-upper__item { display: inline-block; font-size: 10px; }
  .breadcrumb-upper__item { line-height: 2.1; margin-left: 1.5em; padding-left: .2em; position: relative; }
  .breadcrumb-upper__item::before { color: #999; content: ">"; left: -1.1em; line-height: 2.1; position: absolute; top: 0; }
  .l-page a:hover img { opacity: .7; }
  .l-page li a:hover { color: #7776b2; text-decoration: none; }
  .l-page .c-btn__block { display: flex; gap: 1.25em; }
  .l-page .c-btn { overflow: hidden; padding: 0 2em; }
  .l-page .c-btn::before { background-color: rgba(0,0,0,.3); content: ""; inset: 0; mix-blend-mode: overlay; opacity: 0; position: absolute; transition: all .4s ease; width: 100%; }
  .l-page .c-btn:hover::before { opacity: 1; }
  .l-page .c-btn::after, .l-page .c-btn span { z-index: 2; }
  .l-page .c-btn span { font-size: 1.5em; position: relative; }
  .l-page .c-btn__ocher { padding: 0 1.5em; }
  .l-page .c-btn__ocher span { font-size: 1.125em; }
  .l-page .c-sec__title { font-size: 2.5em; }
  .l-page .c-sec__lead { padding-top: 2.5em; }
  .l-mv { aspect-ratio: 72 / 31; }
  .l-mv__bg { grid-template-columns: 18.75% 18.75% 25% 18.75% 18.75%; }
  .l-mv__pic--block:nth-of-type(1) { grid-column: 1 / 2; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(2) { grid-column: 2 / 3; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(3) { grid-column: 4 / 5; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(4) { grid-column: 5 / 6; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(5) { grid-column: 1 / 3; grid-row: 2 / 3; }
  .l-mv__pic--block:nth-of-type(6) { grid-column: 4 / 6; grid-row: 2 / 3; }
  .l-mv__title { width: 43.75vw; }
  .l-anchor { height: 8em; }
  .l-anchor__list { align-items: center; display: flex; gap: .75em; height: 8em; justify-content: center; }
  .l-anchor__item a { height: 3em; width: 11.25em; }
  .l-anchor__item a:hover { background-color: #ebe3c7; }
  .l-anchor__item a:hover span::after { transform: translateY(.25em); }
  .l-anchor__item:last-child { margin-left: .75em; padding-left: 1.5em; }
  .l-anchor__item:last-child a { padding: 0 1em; width: auto; }
  .l-anchor__item:last-child:before { background-color: #d3d3d3; content: ""; height: 100%; left: 0; position: absolute; width: 1px; }
  .l-anchor__item span { font-size: 1.25em; }
  .l-anchor__float.is-fixed .l-anchor__list { height: 6em; }
  .l-anchor__float.is-fixed .l-anchor__item:last-child:before{ top: 50%; transform: translateY(-50%); }
  .l-anchor__float.is-fixed .l-anchor__item a { height: 3em; }
  .l-anchor__float.is-fixed .l-anchor__item span { font-size: 1em; }
  .l-contents .c-inner { gap: 3.5em; padding: 6.25em 0; }
  .sec-info__item a { font-size: 1.125em; }
  .sec-doramakan .c-btn { height: 5.75em; }
  .sec-doramakan__item { gap: 2em; padding: 4em 3.5em; }
  .sec-doramakan__title { font-size: 2em; }
  .sec-doramakan__lead { grid-template-columns: 8.5em 1fr; gap: 2.5em; }
  .sec-doramakan__guide { grid-template-columns: 1fr 26.125em; gap: 2em; }
  .sec-doramakan__guide .c-pic { overflow: hidden; position: relative; }
  .sec-doramakan__guide .c-pic img { left: 50%; position: absolute; top: 50%; translate: -50% -50%; }
  .sec-doramakan__guide .c-txt { gap: 1.5em; }
  .sec-doramakan__guide--heading { font-size: 1.5em; }
  .sec-doramakan__chicket { padding: 1.5em 2.625em; }
  .sec-doramakan__chicket--item { align-items: center; justify-content: space-between; padding: 1.5em 4em 1.5em 2em; }
  .sec-doramakan__chicket--name { font-size: 1.125em; }
  .sec-doramakan__chicket--label { height: 1.875em; margin-top: 1em; }
  .sec-doramakan__btn--list { gap: 2.5em; }
  .sec-place .c-sec__head { padding-left: 4.375em; position: relative; }
  .sec-place .c-sec__head--img { width: 3.5em; }
  .sec-place__list { display: grid; gap: 2.5em; grid-template-columns: repeat(2, 1fr); }
  .sec-place__item { gap: 1.5em; padding: 2em 2em 2.5em; }
  .sec-place__item p { margin-bottom: auto; }
  .sec-place__item .c-btn span { font-size: 1.125em; }
  .sec-recommend__list { display: flex; gap: 3em; justify-content: center; }
  .sec-recommend__item { width: 16.25em; }
  .sec-recommend__item p { font-size: 1.125em; }
}

@media screen and (min-width:1441px){
  .l-mv__copy p { font-size: 1.1111vw; }
}
@media screen and (min-width:768px) and ( max-width:1280px) {
  .l-page { font-size: 1.25vw; margin: 0;  }
}

@media screen and (max-width:767px){
  .pc-item { display: none; }
  #JTBGF-ly_footer.JTBGF-ly_footer { margin-top: 0 !important; }
  .breadcrumb-upper { background-color: #fff; border-top: 1px solid #d7d7d7; display: flex; flex-wrap: nowrap; font-size: 10px; line-height: 3rem; overflow: hidden; position: relative; }
  .breadcrumb-upper__fix { box-shadow: 6px 0 10px 0 rgba(0, 0, 0, .3); position: relative; transition: box-shadow .3s; width: 7em; z-index: 3; }
  .breadcrumb-upper__fix a { padding-left: .5rem; }
  .breadcrumb-upper__scroll { flex: 1; overflow: hidden; }
  .breadcrumb-upper__list { display: flex; flex-wrap: nowrap; height: 3rem; overflow-x: scroll; overflow-y: hidden; white-space: nowrap; }
  .breadcrumb-upper__item a { padding: 0 .5rem 0 1.8rem; }
  .breadcrumb-upper__item:last-child { padding: 0 1.2rem 0 1.8rem; }
  .breadcrumb-upper__fix a, .breadcrumb-upper__item a { display: block; background-color: #fff; text-align: center; position: relative; }
  .breadcrumb-upper__fix a::before, .breadcrumb-upper__item a::before, .breadcrumb-upper__fix a:after, .breadcrumb-upper__item a:after { content: ""; border-style: solid; border-width: 2rem 0 2rem 1rem; position: absolute; top: -.5rem; }
  .breadcrumb-upper__fix a::before, .breadcrumb-upper__item a::before { border-color: transparent transparent transparent #fff; right: -.9rem; z-index: 2; }
  .breadcrumb-upper__fix a::after, .breadcrumb-upper__item a::after { border-color: transparent transparent transparent #d7d7d7; right: -1rem; z-index: 1; }
  .js-btn-page-top { bottom: 20px; right: 20px; }
  .js-btn-page-top a { background-color: #999; border-radius: 6px; display: block; height: 30px; text-align: center; width: 30px; }
  .js-btn-page-top a::before { color: #fff; content: "\f106"; display: inline-block; font-family: "icon"; line-height: 29px; width: auto; }
  .l-page { font-size: 3.2vw; padding: 20px 0 0; }
  .l-page h1 { margin-bottom: 20px; padding: 0 1%; }
  .l-page p { font-size: 1.125em; }
  .l-page .c-btn { height: 4em; padding: 0 1em; }
  .l-page .c-btn__block { display: flex; flex-direction: column; gap: .5em; }
  .l-page .c-sec__title { font-size: 1.5em; }
  .l-page .c-sec__lead { padding-top: 1.5em; }
  .l-page .c-sec__lead p + p { padding-top: 1.5em; }
  .l-mv { padding: 1em 0; }
  .l-mv__title { width: 80%; }
  .l-mv__bg { grid-template-rows: 35% 35% 30%; }
  .l-mv__pic--block:nth-of-type(1) { grid-column: 1 / 2; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(2) { grid-column: 2 / 3; grid-row: 1 / 2; }
  .l-mv__pic--block:nth-of-type(3) { grid-column: 1 / 2; grid-row: 2 / 3; }
  .l-mv__pic--block:nth-of-type(4) { grid-column: 2 / 3; grid-row: 2 / 3; }
  .l-mv__pic--block:nth-of-type(5) { grid-column: 1 / 2; grid-row: 3 / 4; }
  .l-mv__pic--block:nth-of-type(6) { grid-column: 2 / 3; grid-row: 3 / 4; }
  .l-anchor { height: 4em; }
  .l-anchor__float .c-inner { width: 100%; }
  .l-anchor__list { display: grid; gap: .25em; grid-template-columns: repeat(4, 1fr); padding: .25em; }
  .l-anchor__item:nth-of-type(1) { grid-column: 1 / 4; grid-row: 1 / 2; text-align: center; }
  .l-anchor__item:nth-of-type(1) p { font-size: .9375em; }
  .l-anchor__item:nth-of-type(2) { grid-column: 1 / 2; grid-row: 2 / 3; }
  .l-anchor__item:nth-of-type(3) { grid-column: 2 / 3; grid-row: 2 / 3; }
  .l-anchor__item:nth-of-type(4) { grid-column: 3 / 4; grid-row: 2 / 3; }
  .l-anchor__item:nth-of-type(5) { grid-column: 4 / 5; grid-row: 1 / 3; }
  .l-anchor__item a { height: 3em; padding: 0 .5em; }
  .l-anchor__item a::after { bottom: .25em; }
  .l-anchor__item a span { font-size: .8125em; }
  .l-anchor__item:nth-of-type(5) a { height: 100%; }
  .l-contents .c-inner { gap: 2em; padding: 4em 0; }
  .sec-doramakan__item { gap: 2em; padding: 2.5em 1.5em; }
  .sec-doramakan__title { font-size: 1.5em; padding-bottom: .5em; }
  .sec-doramakan__lead { gap: 1em; }
  .sec-doramakan__lead .c-logo { margin: 0 auto; width: 60%; }
  .sec-doramakan__guide { border-left: none; border-right: none; gap: 1em; margin-left: -1.5em; margin-right: -1.5em; }
  .sec-doramakan__guide .c-txt dl { padding: 1em 0; }
  .sec-doramakan__guide--heading { font-size: 1.375em; padding-bottom: .5em; }
  .sec-doramakan__chicket { padding: 1.5em; }
  .sec-doramakan__chicket--item { flex-direction: column; padding: 1em; }
  .sec-doramakan__chicket--label { margin-top: .25em; }
  .sec-doramakan__btn--list { gap: 1.5em; }
  .sec-place .c-sec__title { padding-left: 3em; text-align: left; }
  .sec-place .c-sec__head--img { width: 3.5em; }
  .sec-place .c-sec__lead p br { display: none; }
  .sec-place__list { display: flex; flex-direction: column; gap: 1.5em; }
  .sec-place__item { gap: 1em; padding: 1.5em; }
  .sec-recommend__list { display: grid; gap: 1.5em; grid-template-columns: repeat(2, 1fr); }
}
