@charset "UTF-8";
.header__navi {
  display: none; /* reset */
}

.main {
  padding-top: 0; /* reset */
}

.one-em {
  width: 1em;
  display: inline-block;
  text-align: center;
}

.kara {
  width: 1em;
  display: inline-block;
  text-align: center;
  font-variant-east-asian: normal;
}

body {
  font-size: 16px;
  line-height: 1.8;
  color: #000;
  letter-spacing: 0.04em;
  font-weight: 500;
}

.article-single-body img, .article-single-body picture {
  width: 100%;
  display: block;
}
.article-single-body img:not(:last-child),
.article-single-body picture:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .article-single-body img:not(:last-child),
  .article-single-body picture:not(:last-child) {
    margin-bottom: 29px;
  }
}
.article-single-body img.rounded,
.article-single-body picture.rounded {
  border-radius: 32px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .article-single-body img.rounded--pc,
  .article-single-body picture.rounded--pc {
    border-radius: 32px;
    overflow: hidden;
  }
}
.article-single-body picture.expand--sp {
  width: calc(100% + var(--sidePaddingSp1) * 2);
  margin-left: calc(var(--sidePaddingSp1) * -1);
}
.article-single-body p:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .article-single-body p:not(:last-child) {
    margin-bottom: 29px;
  }
}

.article-single-body:not(.article-single-body--sns):not(:last-child) {
  padding-bottom: 32px;
}
@media (min-width: 768px) {
  .article-single-body:not(.article-single-body--sns):not(:last-child) {
    padding-bottom: 58px;
  }
}

@media (max-width: 767px) {
  .article-single-share_wrap {
    position: relative !important;
  }
}

.article-single-share__list {
  margin-top: 0;
}

@media (max-width: 767px) {
  .article-single-share__item {
    width: 34px;
  }
}

.l-section:not(:last-child) {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .l-section:not(:last-child) {
    margin-bottom: 58px;
  }
}

.l-block:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .l-block:not(:last-child) {
    margin-bottom: 29px;
  }
}

.tu_bg_wide .contents_width--wide {
  width: 100%;
}
@media (min-width: 768px) {
  .tu_bg_wide .contents_width--wide {
    max-width: calc(var(--widthDefault) + 70px);
  }
}
@media (min-width: 768px) {
  .tu_bg_wide .contents_width--narrow {
    max-width: calc(var(--widthDefault) - 210px);
  }
}
@media (min-width: 768px) {
  .tu_bg_wide .contents_width--cond {
    max-width: calc(var(--widthDefault) - 420px);
  }
}
.tu_bg_wide .contents_width--full {
  padding-left: 0;
  padding-right: 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 100%;
}
@media (max-width: 767px) {
  .tu_bg_wide .contents_width--full--p {
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 100%;
  }
}

.contents_width__inner {
  position: relative;
}

.nav-content__trigger {
  position: absolute;
  left: 0;
  bottom: 100%;
  width: 1px;
  height: 400vh;
  background-color: transparent;
  pointer-events: none;
}

.nav-content {
  position: fixed;
  left: calc(var(--sidePaddingSp1) / 2);
  transform: translateY(50%);
  bottom: calc(var(--sidePaddingSp1) / 2);
  width: calc(100% - var(--sidePaddingSp1));
  z-index: 1000;
  transition-property: transform,opacity;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  opacity: 0;
  color: #fff;
}
@media (min-width: 768px) {
  .nav-content {
    display: none;
  }
}
.nav-content__trigger:not(.is-activing) + .nav-content:not(.is-activing) {
  transition-duration: 0.2s;
  transform: translateY(0);
  opacity: 1;
}
.nav-content::after {
  content: "";
  z-index: 999;
  position: absolute;
  width: calc(100% + var(--sidePaddingSp1));
  height: calc(100% + var(--sidePaddingSp1));
  left: calc(var(--sidePaddingSp1) / 2 * -1);
  bottom: calc(var(--sidePaddingSp1) / 2 * -1);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}

.nav-content__list {
  position: relative;
  z-index: 1001;
  display: -ms-grid;
  display: grid;
  align-items: center;
  -ms-grid-columns: auto 18vw;
  grid-template-columns: auto 18vw;
  background-color: #f25c41;
  border-radius: 6px;
  box-shadow: 0px 0px 1em rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 2em rgba(0, 0, 0, 0.1) inset;
}
.nav-content__list__item {
  padding: 1vw 4vw;
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
.nav-content__list__item > * {
  min-width: 0;
}
.nav-content__list__item > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
.nav-content__list__item:nth-child(1) {
  grid-column: 1/-2;
}
.nav-content__list__item:nth-child(2) {
  grid-column: -2/-1;
}
.nav-content__list__item:nth-child(2)::before {
  pointer-events: none;
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: calc(100% - 2em);
  border-left: 1px solid #fff;
}

.nav-content__list__item__anchor {
  padding-right: 10vw;
  position: relative;
  color: #fff;
}
.nav-content__list__item__anchor::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  right: 6vw;
  transform: translateX(50%);
  width: 13px;
  height: 13px;
  background-image: url('data:image/svg+xml;utf8,<svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13 13"><defs><style>.b{fill:%23fff;opacity:0.75;}</style>></defs><path class="b" d="m7,10.5c0,.27539-.22412.5-.5.5H2.5c-.27588,0-.5-.22461-.5-.5v-4c0-.27588.22412-.5.5-.5h1.5v-1h-1.5c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5v-1.5h-1v1.5Z"/><path class="b" d="m10.5,1h-4c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5V2.5c0-.82715-.67285-1.5-1.5-1.5Zm0,6h-4c-.27588,0-.5-.22412-.5-.5v-3.5h5v3.5c0,.27588-.22461.5-.5.5Z"/></svg>');
}
.nav-content__list__item--myroom .nav-content__list__item__anchor img {
  position: absolute;
  left: 0;
  top: 0;
}

.nav-content__list__item__inner {
  display: block;
  font-size: 4.2vw;
  line-height: 1;
  align-self: center;
}
.nav-content__list__item__inner picture {
  margin-bottom: 0 !important;
  padding-top: 2vw;
  padding-bottom: 2vw;
}

.nav-content__list__item__inner__str {
  font-size: 10px;
  white-space: nowrap;
  height: 2em;
  line-height: 2;
  display: block;
  position: absolute;
  margin-right: auto;
  margin-left: auto;
  right: 0;
  left: 0;
  position: absolute;
  bottom: 2vw;
  color: #fff;
  width: 4vw;
}

@media (min-width: 768px) {
  .only--sp {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .only--pc {
    display: none !important;
  }
}

.main {
  margin-top: 0;
}
.header {
  height: var(--heightHeaderSp);
  line-height: var(--heightHeaderSp);
  position: fixed;
  left: 0;
  right: 0;
  margin-inline: auto;
  top: 0;
  width: 100%;
  z-index: 1000;
  border: 0;
  background-color: transparent;
  transition-property: transform;
}
@media (min-width: 768px) {
  .header {
    padding-top: 1.4em;
    transition-duration: 0s;
    height: var(--heightHeaderPc);
    line-height: calc(var(--heightHeaderPc) - 1.4em);
    min-width: var(--widthMin);
    width: var(--widthMin);
    padding-left: calc(var(--heightHeaderPc) * 1.5);
  }
}

.header__inner {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  height: var(--heightHeaderSp);
  background-color: #fff;
  z-index: 1001;
}
.header__inner > * {
  min-width: 0;
}
.header__inner > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .header__inner {
    box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.07);
  }
}
@media (min-width: 768px) {
  .header__inner {
    background-color: transparent;
    height: calc(var(--heightHeaderPc) - 1.4em);
  }
}

.header__main {
  z-index: 1010;
  padding: 0;
  position: absolute;
  left: var(--sidePaddingSp1);
  bottom: 0;
  height: calc(var(--heightHeaderSp) * 1.5);
  width: calc(var(--heightHeaderSp) * 1.5);
  translate: 0 calc(var(--heightHeaderSp) * 0.5);
  transition-property: translate;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.07);
}
.header.hide .header__main {
  translate: 0 0;
}
@media (min-width: 768px) {
  .header__main {
    left: 0;
    height: calc(var(--heightHeaderPc) * 1.5);
    width: calc(var(--heightHeaderPc) * 1.5);
    translate: 0 calc(var(--heightHeaderPc) * 0.5);
  }
}
.header__main h1 {
  padding: 10%;
}

.header__nav {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.07);
  position: relative;
  z-index: 1005;
}
.header__nav > * {
  min-width: 0;
}
.header__nav > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .header__nav {
    display: none;
  }
}
.header__nav::before {
  content: "";
  position: absolute;
  z-index: 1011;
  left: 0;
  top: 0;
  width: 1em;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.025), rgba(0, 0, 0, 0));
}

.header__nav__item__anchor {
  display: block;
  padding: 0 1.65em;
  font-weight: bold;
  transition-property: background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  background-color: #f7f7f7;
  position: relative;
}
.header__nav__item:last-child .header__nav__item__anchor {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.header__nav__item__anchor::before, .header__nav__item__anchor::after {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  height: 1.8em;
  width: 1px;
  background-color: #fff;
  opacity: 0.125;
}
.header__nav__item__anchor::before {
  left: 0;
}
.header__nav__item--course-1 .header__nav__item__anchor::before {
  display: none;
}
.header__nav__item__anchor::after {
  right: 0;
}
.header__nav__item--wine .header__nav__item__anchor::after {
  display: none;
}
#home .header__nav__item--home .header__nav__item__anchor, #course-1 .header__nav__item--course-1 .header__nav__item__anchor, #course-2 .header__nav__item--course-2 .header__nav__item__anchor, #wine .header__nav__item--wine .header__nav__item__anchor {
  pointer-events: none;
}
@media (hover: hover) {
  .header__nav__item__anchor:hover {
    background-color: #d4d4d4;
  }
}
.header__nav__item__anchor:focus-visible, .header__nav__item__anchor.is-hover {
  background-color: #d4d4d4;
}
@media (min-width: 768px) {
  .header__nav__item__anchor {
    padding: 0 1.35em;
  }
}

.header__nav__item__anchor__str {
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: fit-content;
  position: relative;
}
#home .header__nav__item--home .header__nav__item__anchor__str::before, #course-1 .header__nav__item--course-1 .header__nav__item__anchor__str::before, #course-2 .header__nav__item--course-2 .header__nav__item__anchor__str::before, #wine .header__nav__item--wine .header__nav__item__anchor__str::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background-color: #f25c41;
  border-top-left-radius: 1.5px;
  border-top-right-radius: 1.5px;
}

.header__yamakei {
  margin-left: auto;
  padding-inline: var(--sidePaddingSp1);
  background-color: #fff;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  align-self: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.header__yamakei > * {
  min-width: 0;
}
.header__yamakei > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .header__yamakei {
    border-radius: 0;
    background-color: transparent;
    padding-left: 2em;
    padding-right: 0;
  }
}
.header__yamakei img {
  display: block;
  margin-top: auto;
  margin-bottom: auto;
  width: 40vw;
  min-width: 40vw;
  max-width: 40vw;
}
@media (min-width: 768px) {
  .header__yamakei img {
    width: 145px;
    min-width: 145px;
    max-width: 145px;
  }
}
.pagenav {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 7.5rem;
  font-size: min(16px, 4.5vw);
  transition-duration: 0.2s;
  transition-property: translate;
  translate: 0 0;
  height: var(--heightHeaderSp);
  font-weight: bold;
}
.pagenav.is-activing {
  translate: 0 100%;
}
@media (min-width: 768px) {
  .pagenav {
    display: none;
  }
}

.pagenav__inner {
  line-height: calc(var(--heightHeaderSp) - 15rem);
  border-radius: 10px;
  box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.5);
}

.pagenav__inner__list {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
}
.pagenav__inner__list > * {
  min-width: 0;
}
.pagenav__inner__list > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
.pagenav__inner__list > *:not(.flex__item) {
  flex-grow: 1;
}

.pagenav__inner__list__item {
  text-align: center;
}

.pagenav__inner__list__item__anchor {
  color: #fff;
  display: block;
  background-color: #f25c41;
  transition-property: background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  position: relative;
}
.pagenav__inner__list__item:first-child .pagenav__inner__list__item__anchor {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.pagenav__inner__list__item:last-child .pagenav__inner__list__item__anchor {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.pagenav__inner__list__item__anchor::before, .pagenav__inner__list__item__anchor::after {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  height: 1.8em;
  width: 1px;
  background-color: currentcolor;
  opacity: 0.25;
}
.pagenav__inner__list__item__anchor::before {
  left: 0;
}
.pagenav__inner__list__item--course-1 .pagenav__inner__list__item__anchor::before {
  display: none;
}
.pagenav__inner__list__item__anchor::after {
  right: 0;
}
.pagenav__inner__list__item--wine .pagenav__inner__list__item__anchor::after {
  display: none;
}
#home .pagenav__inner__list__item--home .pagenav__inner__list__item__anchor, #course-1 .pagenav__inner__list__item--course-1 .pagenav__inner__list__item__anchor, #course-2 .pagenav__inner__list__item--course-2 .pagenav__inner__list__item__anchor, #wine .pagenav__inner__list__item--wine .pagenav__inner__list__item__anchor {
  pointer-events: none;
}
@media (hover: hover) {
  .pagenav__inner__list__item__anchor:hover {
    background-color: #ef3311;
  }
}
.pagenav__inner__list__item__anchor:focus-visible, .pagenav__inner__list__item__anchor.is-hover {
  background-color: #ef3311;
}

.pagenav__inner__list__item__anchor__str {
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: fit-content;
  position: relative;
}
#home .pagenav__inner__list__item--home .pagenav__inner__list__item__anchor__str::before, #course-1 .pagenav__inner__list__item--course-1 .pagenav__inner__list__item__anchor__str::before, #course-2 .pagenav__inner__list__item--course-2 .pagenav__inner__list__item__anchor__str::before, #wine .pagenav__inner__list__item--wine .pagenav__inner__list__item__anchor__str::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background-color: currentcolor;
  border-top-left-radius: 1.5px;
  border-top-right-radius: 1.5px;
}

.imgset--1x2-2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
}
.imgset--1x2-2 .imgset__item:first-child {
  grid-column: 1/-1;
  grid-row: 1/2;
}
.imgset--1x2-2 .imgset__item:nth-child(2) {
  grid-column: 1/2;
  grid-row: 2/3;
}
.imgset--1x2-2 .imgset__item:nth-child(3) {
  grid-column: 2/3;
  grid-row: 2/3;
}

.imgset--1xi .imgset__item:nth-child(2) {
  max-width: 40vw;
  margin-top: -20vw;
  margin-right: auto;
  margin-left: auto;
  border-radius: 50%;
  border: 3px solid #f25c41;
  overflow: hidden;
  position: relative;
  z-index: 100;
}
@media (min-width: 768px) {
  .imgset--1xi .imgset__item:nth-child(2) {
    max-width: calc(var(--widthDefault) - 980px);
    margin-top: calc((var(--widthDefault) - 980px) * -0.5);
  }
}

.tu_header {
  position: relative;
  z-index: 200;
  margin-bottom: 48px;
  padding-top: var(--heightHeaderSp);
}
@media (min-width: 768px) {
  .tu_header {
    margin-bottom: 58px;
    padding-top: 0;
  }
}

.tu_header__inner {
  position: relative;
  width: 100%;
}
.tu_header__inner {
  position: relative;
  z-index: 201;
}

.tu_header__fig {
  position: relative;
  z-index: 250;
}

.tu_header__h1 {
  z-index: 300;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-align-content: space-between;
  align-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.tu_header__h1 > * {
  min-width: 0;
}
.tu_header__h1 > *.minimum {
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .tu_header__h1 {
    height: calc(100% - var(--heightHeaderPc));
  }
}

.tu_header__h1__inner {
  position: relative;
  z-index: 204;
}

.tu_header__h1__heading {
  margin-right: auto;
  margin-left: auto;
  line-height: 1.4;
  font-weight: bold;
  color: #fff;
  text-shadow: black 0 0 0.125em, black 0 0 0.5em;
}
@media (min-width: 768px) {
  .tu_header__h1__heading {
    text-shadow: black 0 0 0.5em;
  }
}

.tu_header__h1__heading__body > span {
  display: block;
}
.tu_header__h1__heading__body > span > span {
  display: inline-block;
}

.tu_header__h1__heading__body {
  display: block;
}
.tu_header__h1__heading__body > span {
  display: block;
  text-align: center;
  font-size: 6.65vw;
}
@media (min-width: 768px) {
  .tu_header__h1__heading__body > span {
    font-size: max(45px, 4.5vw);
  }
}
.tu_header__h1__heading__body > span:nth-child(1) {
  font-size: 4.6vw;
}
@media (min-width: 768px) {
  .tu_header__h1__heading__body > span:nth-child(1) {
    font-size: max(37px, 3.5vw);
  }
}

.tu_header__h1__heading__body__fig {
  display: block;
  width: 45%;
  min-width: 45%;
  max-width: 45%;
}
@media (min-width: 768px) {
  .tu_header__h1__heading__body__fig {
    width: 35%;
    min-width: 35%;
    max-width: 35%;
  }
}
.tu_header__info {
  margin-right: auto;
  margin-left: auto;
  color: #000;
  width: calc(100% - var(--sidePaddingSp1) * 2);
  padding-top: var(--sidePaddingSp1);
  font-size: 11px;
  text-align: right;
}
@media (min-width: 768px) {
  .tu_header__info {
    margin-right: auto;
    margin-left: auto;
    width: calc(100% - var(--sidePaddingSp1) * 2);
    font-size: 12px;
    padding-top: 29px;
  }
}
main:not(:last-child) {
  margin-bottom: 48px;
}
@media (min-width: 768px) {
  main:not(:last-child) {
    margin-bottom: 87px;
  }
}

.contents_width {
  position: relative;
  z-index: 102;
}

@media (max-width: 767px) {
  .article-single-body--sns {
    overflow: hidden;
  }
}
.article-single-body--sns:not(:last-child) {
  margin-bottom: 48px;
}
@media (min-width: 768px) {
  .article-single-body--sns {
    margin-bottom: 0 !important;
  }
}

.article-section:not(:last-child) {
  padding-bottom: 48px;
}
@media (min-width: 768px) {
  .article-section:not(:last-child) {
    padding-bottom: 87px;
  }
}

.contents_width:not(:last-child) {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .contents_width:not(:last-child) {
    margin-bottom: 58px;
  }
}

.hr {
  margin-top: -48px;
  width: 100%;
  clear: both;
  height: 96px;
  position: relative;
}
@media (min-width: 768px) {
  .hr {
    margin-top: -87px;
  }
}
@media (min-width: 768px) {
  .hr {
    height: 174px;
  }
}
.hr hr {
  display: none;
}
.hr::before, .hr::after {
  content: "";
  background-color: #f25c41;
}
.hr::before {
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
}
.hr::after {
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
}

html {
  font-family: Arial, Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.paren {
  font-size: 0.75em;
  vertical-align: 0.125em;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  line-height: 1.5;
}

h1, h2, h3, h4, h5 {
  font-feature-settings: "palt";
  font-variant-numeric: lining-nums;
}

.h2 h2 {
  text-align: center;
  font-size: 22px;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  .h2 h2 {
    font-size: 22px;
    letter-spacing: 0;
  }
}

.under_dotted {
  border-bottom: 3px dotted currentcolor;
}

span.under_dotted {
  display: inline-block;
}

.h3 {
  padding-block: 16px;
  position: relative;
  text-align: center;
}
.h3:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .h3:not(:last-child) {
    margin-bottom: 29px;
  }
}
@media (min-width: 768px) {
  .h3 {
    padding-block: 29px;
  }
}
.h3::before, .h3::after {
  content: "";
  position: absolute;
  margin-right: auto;
  margin-left: auto;
  right: 0;
  left: 0;
  height: 2px;
  background-color: #f25c41;
  border-radius: 9999px;
  width: 8em;
}
.h3::before {
  top: 0;
}
.h3::after {
  bottom: 0;
}
.s-advice .h3 {
  padding-top: 32px;
}
@media (min-width: 768px) {
  .s-advice .h3 {
    padding-top: 58px;
  }
}
.s-advice .h3::before {
  content: "";
  position: absolute;
  margin-right: auto;
  margin-left: auto;
  right: 0;
  left: 0;
  bottom: 0%;
  width: 32px;
  height: 25.6px;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 40"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m10.78948,27.8567L.89754,19.15509l.73771-1.34414,12.65369,3.66404-.88564,1.61649-2.68337-.85429-1.20698,2.20039,2.16218,1.80459-.88564,1.61453Zm-1.75365-6.15246l-4.51931-1.44798-.01763.03135,3.65033,3.03116.88662-1.61453Z"/><path class="b" d="m18.26942,18.8122l-.45458-.69558c-.02841.17634-.05682.34289-.08425.49768-.02841.15479-.07544.3037-.1401.44674s-.15479.28019-.26941.41343c-.11462.13128-.26844.2606-.45948.386-.64562.42127-1.25204.47221-1.81929.15283-.2028-.11364-.40657-.28215-.61133-.50748s-.44576-.55059-.72203-.97381l-1.90452-2.91752c-.36151-.55451-.61329-.97381-.75436-1.25596-.26844-.54275-.27823-1.0757-.02939-1.5969.10581-.25668.35073-.50944.73379-.76024.30272-.19594.61623-.30566.94246-.3233.32526-.01763.65639.04311.99243.18222l.03037-.01959-2.47764-3.79532,1.54301-1.00712,7.02634,10.7668-1.54203,1.00712Zm-3.15558-1.49893c.20378.3135.4291.52511.67501.63876.2459.11168.49964.08229.76122-.08817.23219-.15087.36151-.36053.38698-.62896.02645-.26844-.0529-.54471-.23709-.82686l-1.94371-2.98022c-.15871-.241-.36151-.39188-.60937-.45262-.24884-.06074-.48397-.01959-.70538.1254-.29195.19006-.43204.41147-.41931.66227s.09797.49572.2557.73869l1.83594,2.81171Z"/><path class="b" d="m26.15299,7.50461l-1.33826,9.36584-1.61551.18222-3.39855-8.82897,1.93783-.21945,1.87905,5.67633.03527-.00392.56234-5.9526,1.93783-.21945Z"/><path class="b" d="m28.60712,17.1095l2.27582-8.86816,1.78402.4585-2.27582,8.86816-1.78402-.4585Zm2.73824-10.66883l.45752-1.785,1.78402.4585-.45752,1.785-1.78402-.4585Z"/><path class="b" d="m35.55704,17.18787c-.16949.23513-.23415.46241-.19398.68578.04017.22141.17243.41343.39775.57606.28215.20378.53001.25668.74261.15675.21259-.09797.38894-.22337.52805-.3762l1.49305,1.07766c-.47221.65443-1.05219,1.03847-1.74189,1.1482-.34289.06466-.69362.05682-1.05121-.02351s-.70734-.24296-1.04925-.48985c-.46829-.33897-.79551-.72301-.98165-1.15408s-.2508-.87192-.19398-1.32062c.03331-.27235.12246-.55059.26648-.83274s.32526-.5741.54373-.87584l1.7654-2.44531c.21847-.3037.4389-.56626.66129-.79355.22239-.22533.45752-.3958.70636-.51336.40755-.19594.84547-.27235,1.31377-.23317.46731.04115.93658.23121,1.40488.57018.34093.24688.60937.52903.80237.84645.19398.31742.31448.65051.36151.99537.07348.72105-.14401,1.43427-.65149,2.13573l-1.49305-1.07766c.21847-.30174.31252-.57214.28313-.80922s-.15675-.43498-.3811-.59761-.4536-.21945-.68774-.17438c-.23415.04703-.45262.21161-.65737.49572l-2.18765,3.0292Z"/><path class="b" d="m43.79526,25.5799l-1.69095-3.23102-1.10411.57606c-.2557.1352-.41539.30958-.47907.52707-.0627.21553-.03037.44674.09797.69166.16165.30958.35955.46829.59467.47417.23415.00588.44674-.02743.63974-.09993l.85429,1.63216c-.71517.37228-1.40488.45654-2.07107.24688-.33603-.09601-.64562-.25864-.92973-.4918-.28509-.23121-.52413-.53295-.72007-.90719-.26746-.5114-.38894-1.00124-.36249-1.4715.02645-.46829.16557-.89152.41735-1.26772.15087-.22925.35465-.43694.61035-.62504.25472-.1881.54765-.36836.8778-.54079l2.67162-1.399c.33114-.17243.64562-.30958.94638-.41343.29881-.10189.58586-.15087.86115-.14499.45262.00784.87878.1352,1.27948.38012.39971.24688.73379.62504,1.00222,1.13644.19496.37424.3086.74652.33995,1.11685.03037.37032-.0098.72105-.12246,1.05219-.25668.67795-.7475,1.20698-1.47248,1.5871l-2.24055,1.17171Zm-.41147-3.90113l.83764,1.59886.92777-.48593c.30958-.16067.50356-.35465.58292-.57998s.05486-.46045-.07348-.70538-.30762-.39971-.53785-.46241-.49964-.01372-.80824.14891l-.92875.48593Z"/><circle class="b" cx="25.73564" cy="31.92438" r="5.24062"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: #f25c41;
  pointer-events: none;
}
@media (min-width: 768px) {
  .s-advice .h3::before {
    width: 58px;
    height: 46.4px;
  }
}
.h3 h3, .h3 h2 {
  color: #000;
  font-size: 16px;
}
@media (min-width: 768px) {
  .h3 h3, .h3 h2 {
    font-size: 18px;
  }
}
.h3--left {
  text-align: left;
}
.h3 span {
  display: inline-block;
}

.h4 {
  font-size: 16px;
  letter-spacing: 0.04em;
}
.h4:not(:last-child) {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .h4:not(:last-child) {
    margin-bottom: 15px;
  }
}
@media (min-width: 768px) {
  .h4 {
    font-size: 16px;
    letter-spacing: 0.04em;
  }
}
.h3 + .h4 {
  margin-top: 0;
}

.m-caption {
  font-size: 13px;
  line-height: 1.5;
}
.splide__slide .m-caption {
  padding-inline: var(--sidePaddingSp1);
}
.m-caption:not(:first-child) {
  margin-top: -8px;
}
@media (min-width: 768px) {
  .m-caption:not(:first-child) {
    margin-top: -15px;
  }
}
@media (min-width: 768px) {
  .m-caption {
    text-align: right;
  }
}

.m-lead {
  font-weight: bold;
  line-height: 2.5;
  text-decoration: underline;
  text-underline-offset: 0.75em;
}
.m-lead:not(:last-child) {
  margin-bottom: 48px;
}
@media (min-width: 768px) {
  .m-lead:not(:last-child) {
    margin-bottom: 87px;
  }
}

.m-profile {
  z-index: 100;
}

.m-profile__item {
  display: -ms-grid;
  display: grid;
  grid-gap: 0 24px;
  gap: 0 24px;
  -ms-grid-columns: 1fr 4fr;
  grid-template-columns: 1fr 4fr;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  z-index: 110;
  position: relative;
}
@media (min-width: 768px) {
  .m-profile__item {
    grid-gap: 0 32px;
    gap: 0 32px;
  }
}
@media (min-width: 768px) {
  .m-profile__item {
    -ms-grid-columns: 1fr 7fr;
    grid-template-columns: 1fr 7fr;
  }
}
@media (min-width: 768px) {
  .m-profile__item {
    -ms-grid-rows: auto auto;
    grid-template-rows: auto auto;
  }
}

.m-profile__item__avator {
  grid-column: 1/2;
  grid-row: 1/2;
}
@media (min-width: 768px) {
  .m-profile__item__avator {
    grid-column: 1/2;
    grid-row: 1/-1;
  }
}

.m-profile__item__avator__fig {
  border-radius: 10px;
  overflow: hidden;
}

.m-profile__item__info__name {
  grid-column: 2/3;
  grid-row: 1/2;
}
@media (min-width: 768px) {
  .m-profile__item__info__name {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}

.m-profile__item__info__name__job {
  color: #f25c41;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1;
  display: block;
  padding-left: 4em;
  position: relative;
}
@media (min-width: 768px) {
  .m-profile__item__info__name__job {
    font-size: 11px;
    letter-spacing: 0;
  }
}
.m-profile__item__info__name__job:not(:last-child) {
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  .m-profile__item__info__name__job:not(:last-child) {
    margin-bottom: 10px;
  }
}
.m-profile__item__info__name__job::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3em;
  height: 2px;
  border-radius: 9999px;
  background-color: currentcolor;
}

.m-profile__item__info__name__kanji {
  font-weight: bold;
}

.m-profile__item__info__name__hiragana {
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .m-profile__item__info__name__hiragana {
    font-size: 11px;
    letter-spacing: 0;
  }
}

.m-profile__item__info__txt {
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
  grid-column: 1/-1;
  grid-row: 2/3;
  padding-top: 16px;
}
@media (min-width: 768px) {
  .m-profile__item__info__txt {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 768px) {
  .m-profile__item__info__txt {
    grid-column: 2/3;
    grid-row: 2/3;
    padding-top: 9.6666666667px;
  }
}

.m-button {
  border: 2px solid #f25c41;
  background-color: #fff;
  display: block;
  text-decoration: none;
  text-align: center;
  color: #f25c41;
  height: auto;
  min-height: 49px;
  line-height: 24px;
  position: relative;
  font-weight: bold;
  margin-right: auto;
  margin-left: auto;
}
.m-button:not(:last-child) {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .m-button:not(:last-child) {
    margin-bottom: 15px;
  }
}
.m-button > .m-button__str {
  padding: 16.75px 1.55em;
  display: block;
  position: relative;
}
@media (min-width: 768px) {
  .m-button {
    width: fit-content;
  }
}

.m-button[target=_blank] .m-button__str, [target=_blank] .m-button .m-button__str,
.m-button-s[target=_blank] .m-button__str,
[target=_blank] .m-button-s .m-button__str {
  display: inline-block;
  position: relative;
  padding-right: calc(1.55em + 17.55px);
}
.m-button[target=_blank] .m-button__str::before, [target=_blank] .m-button .m-button__str::before,
.m-button-s[target=_blank] .m-button__str::before,
[target=_blank] .m-button-s .m-button__str::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  right: 1.55em;
  width: 13px;
  height: 13px;
  mask-image: url('data:image/svg+xml;utf8,<svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13 13"><defs></defs><path class="b" d="m7,10.5c0,.27539-.22412.5-.5.5H2.5c-.27588,0-.5-.22461-.5-.5v-4c0-.27588.22412-.5.5-.5h1.5v-1h-1.5c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5v-1.5h-1v1.5Z"/><path class="b" d="m10.5,1h-4c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5V2.5c0-.82715-.67285-1.5-1.5-1.5Zm0,6h-4c-.27588,0-.5-.22412-.5-.5v-3.5h5v3.5c0,.27588-.22461.5-.5.5Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentcolor;
  opacity: 0.65;
}
.m-button[target=_blank] .m-button__str > span, [target=_blank] .m-button .m-button__str > span,
.m-button-s[target=_blank] .m-button__str > span,
[target=_blank] .m-button-s .m-button__str > span {
  display: inline-block;
}

.m-button--rel {
  width: fit-content;
  background-position: left top;
  background-size: 100% auto;
  background-color: #fff;
  color: #000;
  border: 0;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .m-button--rel {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 767px) {
  .m-button--rel {
    padding: 0 var(--sidePaddingSp1);
  }
}
.m-button--rel .m-button__fig {
  display: block;
  margin-right: auto;
  margin-left: auto;
  width: 35%;
}
@media (min-width: 768px) {
  .m-button--rel .m-button__fig {
    width: 50%;
  }
}
.m-button--rel .m-button__str {
  color: #f25c41;
  padding-left: 0;
  padding-right: 0;
}
.m-button--rel .m-button__str span {
  display: inline-block;
}
.m-button--rel[target=_blank] .m-button__str {
  padding-left: 17.55px;
  padding-right: 17.55px;
}
.m-button--rel[target=_blank] .m-button__str::before {
  right: 0;
}
.m-button--rel .m-button__str::after {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: 0;
  width: 13px;
  height: 13px;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m10.5,0C4.70111,0,0,4.70105,0,10.5s4.70111,10.5,10.5,10.5,10.5-4.70105,10.5-10.5S16.29901,0,10.5,0Zm.70703,17.20703l-1.41406-1.41406,4.29297-4.29297H4v-2h10.08594l-4.29297-4.29297,1.41406-1.41406,6.70703,6.70703-6.70703,6.70703Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentcolor;
}

.s-access.article-single-body {
  padding-top: 48px;
  z-index: 100;
}
@media (min-width: 768px) {
  .s-access.article-single-body {
    padding-top: 87px;
  }
}
.s-access.article-single-body::before {
  content: "";
  position: absolute;
  z-index: 101;
  left: 0;
  width: 100%;
  height: 48px;
  pointer-events: none;
}
@media (min-width: 768px) {
  .s-access.article-single-body::before {
    height: 87px;
  }
}
.s-access.article-single-body::before {
  top: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.025), rgba(0, 0, 0, 0));
}

.s-column {
  padding-block: 48px;
  margin-bottom: 48px;
  z-index: 100;
}
@media (min-width: 768px) {
  .s-column {
    padding-block: 87px;
    margin-bottom: 87px;
  }
}
.s-column::before, .s-column::after {
  content: "";
  position: absolute;
  z-index: 101;
  left: 0;
  width: 100%;
  height: 20vw;
  pointer-events: none;
}
.s-column::before {
  top: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.025), rgba(0, 0, 0, 0));
}
.s-column::after {
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.025), rgba(0, 0, 0, 0));
}

.s-column__inner {
  z-index: 102;
  position: relative;
}

.s-column__inner__h {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  align-items: center;
  -ms-grid-columns: 1fr 4fr;
  grid-template-columns: 1fr 4fr;
}
@media (min-width: 768px) {
  .s-column__inner__h {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .s-column__inner__h {
    -ms-grid-columns: 1fr 7fr;
    grid-template-columns: 1fr 7fr;
  }
}
.s-column__inner__h:not(:last-child) {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .s-column__inner__h:not(:last-child) {
    margin-bottom: 58px;
  }
}
@media (min-width: 768px) {
  .s-column__inner__h {
    max-width: calc(100% - 210px);
    margin-right: auto;
    margin-left: auto;
  }
}
.s-column__inner__h__fig {
  border-radius: 10px;
  overflow: hidden;
}

.s-column__inner__h__heading {
  position: relative;
  font-size: 22px;
  letter-spacing: 0;
  color: #000;
}
@media (min-width: 768px) {
  .s-column__inner__h__heading {
    font-size: 22px;
    letter-spacing: 0;
  }
}

.s-column__inner__h__heading__cat {
  color: #f25c41;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1;
  display: block;
  padding-left: 4em;
  position: relative;
}
@media (min-width: 768px) {
  .s-column__inner__h__heading__cat {
    font-size: 11px;
    letter-spacing: 0;
  }
}
.s-column__inner__h__heading__cat:not(:last-child) {
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  .s-column__inner__h__heading__cat:not(:last-child) {
    margin-bottom: 10px;
  }
}
.s-column__inner__h__heading__cat::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3em;
  height: 2px;
  border-radius: 9999px;
  background-color: currentcolor;
}

.s-column__inner__txt__fig:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .s-column__inner__txt__fig:not(:last-child) {
    margin-bottom: 29px;
  }
}
.s-column__inner__txt__fig img {
  border-radius: 10px;
}

.s-column__inner__txt__h:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .s-column__inner__txt__h:not(:last-child) {
    margin-bottom: 29px;
  }
}
.s-column__inner__txt__h:not(:first-child) {
  margin-top: 32px;
}
@media (min-width: 768px) {
  .s-column__inner__txt__h:not(:first-child) {
    margin-top: 58px;
  }
}
.s-column__inner__txt__h .h3::before, .s-column__inner__txt__h .h3::after {
  display: none;
}
.s-column__inner__txt__h .h3 h3 {
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
  padding-inline: 2em;
  position: relative;
}
.s-column__inner__txt__h .h3 h3::before, .s-column__inner__txt__h .h3 h3::after {
  content: "";
  position: absolute;
  width: 1em;
  top: 0;
  height: 100%;
  border: 2px solid #f25c41;
}
.s-column__inner__txt__h .h3 h3::before {
  left: 0;
  border-right: 0;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.s-column__inner__txt__h .h3 h3::after {
  right: 0;
  border-left: 0;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.s-column__inner__txt__h .h3 .h-sub {
  font-size: 11px;
  letter-spacing: 0;
  color: #f25c41;
  display: block;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .s-column__inner__txt__h .h3 .h-sub {
    font-size: 11px;
    letter-spacing: 0;
  }
}

.s-column__inner__txt__route {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  -ms-grid-columns: auto;
  grid-template-columns: auto;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
}
@media (min-width: 768px) {
  .s-column__inner__txt__route {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .s-column__inner__txt__route {
    -ms-grid-columns: 3fr 2fr;
    grid-template-columns: 3fr 2fr;
  }
}
@media (min-width: 768px) {
  .s-column__inner__txt__route {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
}

.s-column__inner__txt__route__txt {
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .s-column__inner__txt__route__txt {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
@media (max-width: 767px) {
  .s-column__inner__txt__route__txt {
    padding-inline: 1em;
    border-inline: 1px solid #f25c41;
  }
}
@media (min-width: 768px) {
  .s-column__inner__txt__route__txt {
    align-self: end;
  }
}

.s-column__inner__txt__route__txt__route {
  position: relative;
  position: relative;
  margin-top: 1em;
  padding-top: 1em;
}
.s-column__inner__txt__route__txt__route::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background-color: #f25c41;
  border-radius: 9999px;
}
@media (min-width: 768px) {
  .s-column__inner__txt__route__txt__route::before {
    width: calc(100% + 32px - 1em);
  }
}

.gallery {
  z-index: 200;
}

.gallery__item {
  z-index: 105;
  background-color: #f7f7f7;
}
.gallery__item.is-actived {
  z-index: 110;
}
.gallery__item.is-active, .gallery:not(.is-loaded) .gallery__item:first-child {
  z-index: 115;
}

.gallery__selector,
.gallery__controler__item {
  z-index: 120;
}

.gallery__selector__item {
  z-index: 121;
}

.gallery__selector__item__inner {
  z-index: 122;
}

.gallery {
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 100%;
}
@media (min-width: 768px) {
  .gallery {
    padding-top: 66.6666666667%;
  }
}

.gallery__item {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  transition-property: none;
}
.gallery:not(.is-loaded) .gallery__item:not(:first-child) {
  opacity: 0;
}

.gallery__item__caption {
  position: absolute;
  top: 100%;
  right: 0;
  width: 100%;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.8;
  text-align: right;
  width: 100%;
  padding: 0.5em;
  white-space: nowrap;
  background-color: #fff;
}
@media (min-width: 768px) {
  .gallery__item__caption {
    font-size: 11px;
    letter-spacing: 0;
  }
}

.gallery--dissolve .gallery__item {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 0s;
  transition-delay: 0.4s;
}
.gallery--dissolve .gallery__item.is-active {
  transition-duration: 0.4s;
  transition-delay: 0s;
}
.gallery--dissolve:not(.is-loaded) .gallery__item:first-child,
.gallery--dissolve .gallery__item:only-child,
.gallery--dissolve .gallery__item.is-active {
  opacity: 1;
}

.gallery--shift {
  overflow: hidden;
}
.gallery--shift .gallery__item {
  width: 110%;
  transform: translateX(0);
  transition-property: opacity, transform;
  transition-duration: 0s;
}
.gallery--shift .gallery__item.is-active, .gallery--shift .gallery__item.is-actived {
  transform: translateX(-5%);
  transition-duration: 1.5s;
}
.gallery--shift:not(.is-loaded) .gallery__item {
  transform: translateX(-5%);
}

.gallery--horizontal {
  overflow: hidden;
}
.gallery--horizontal .gallery__item {
  transform: translateX(100%);
  transition-property: transform, width;
  transition-duration: 0s;
  width: 100%;
}
.gallery--horizontal .gallery__item.is-active {
  transform: translateX(0);
  transition-duration: 0.4s;
}
.gallery--horizontal .gallery__item.is-actived {
  transform: translateX(-50%);
  transition-duration: 0.4s;
  width: 50%;
}
.gallery--horizontal:not(.is-loaded) .gallery__item {
  transform: translateX(0);
}

.gallery--size {
  overflow: hidden;
}
.gallery--size .gallery__item {
  transition-duration: 1s;
  background-size: 140% auto;
  opacity: 0;
  transition-property: background-size, opacity;
}
.gallery--size .gallery__item.is-active, .gallery--size .gallery__item.is-actived {
  opacity: 1;
}
.gallery--size .gallery__item.is-active {
  background-size: 120% auto;
}
.gallery--size .gallery__item.is-actived {
  background-size: 100% auto;
  opacity: 1;
}
.gallery--size:not(.is-loaded) .gallery__item {
  background-size: 120% auto;
  opacity: 1;
}

.gallery--clip .gallery__item {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  transition-duration: 1.2s;
  transition-property: clip-path;
  transition-delay: 1.2s;
}

.gallery--clip--ellipse .gallery__item {
  clip-path: ellipse(50% 50% at 50% -50%);
}
.gallery--clip--ellipse .gallery__item.is-active {
  transition-delay: 0s;
  clip-path: ellipse(400% 200% at 100% 0%);
}

.gallery--gradient {
  overflow: hidden;
}
.gallery--gradient .gallery__item {
  transform: translateY(100%);
  transition-property: transform, width;
  transition-duration: 0s;
  width: 100%;
  overflow: hidden;
}
.gallery--gradient .gallery__item::before, .gallery--gradient .gallery__item::after {
  z-index: 116;
  transition-property: top,bottom,opacity;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  content: "";
  width: 100%;
  height: 200%;
  position: absolute;
  right: 0;
}
.gallery--gradient .gallery__item::before {
  transition-duration: 2s;
  top: 0;
  background-image: linear-gradient(to top, rgba(242, 92, 65, 0) 0%, rgba(242, 92, 65, 0) 30%, #f25c41 50%, #f25c41 100%);
}
.gallery--gradient .gallery__item::after {
  transition-duration: 0.5s;
  bottom: 0;
  background-image: linear-gradient(to bottom, rgba(242, 92, 65, 0) 0%, rgba(242, 92, 65, 0) 30%, #f25c41 50%, #f25c41 100%);
}
.gallery--gradient .gallery__item.is-active {
  transform: translateY(0);
  transition-duration: 1s;
}
.gallery--gradient .gallery__item.is-active::before {
  top: -140%;
}
.gallery--gradient .gallery__item.is-active::after {
  bottom: -100%;
}
.gallery--gradient .gallery__item.is-actived {
  transform: translateY(-80%);
  transition-duration: 1s;
}
.gallery--gradient .gallery__item.is-actived::before {
  top: 100%;
}
.gallery--gradient .gallery__item.is-actived::after {
  bottom: 0;
}
.gallery--gradient:not(.is-loaded) .gallery__item {
  transform: translateX(0);
}

dl.dl--bar-switch {
  padding-bottom: calc(0.7em + 1px);
  row-gap: calc(1.4em + 1px);
  column-gap: 0;
}
dl.dl--bar-switch dt, dl.dl--bar-switch dd {
  position: relative;
  padding: 0 0.7em;
}
dl.dl--bar-switch dt::before, dl.dl--bar-switch dd::before {
  content: "";
  width: 100%;
  height: 1px;
  left: 0;
  bottom: calc((0.7em + 1px) * -1);
  position: absolute;
}
dl.dl--bar-switch dt::before {
  background-color: currentcolor;
}
dl.dl--bar-switch dd::before {
  background-color: #b8b8b8;
}

.listitem--disc > li,
.listitem:not([class*=listitem--]) > li {
  padding-left: 1.8em;
  position: relative;
}
.listitem--disc > li span,
.listitem:not([class*=listitem--]) > li span {
  text-indent: 0;
}
.listitem--disc > li::before,
.listitem:not([class*=listitem--]) > li::before {
  content: "";
  position: absolute;
}
.listitem--disc > li::before,
.listitem:not([class*=listitem--]) > li::before {
  width: 0.2em;
  height: 0.2em;
  border-radius: 50%;
  left: 0;
  top: 0.9em;
  background-color: currentcolor;
  margin-right: 0.4em;
  text-align: center;
  top: 0.8em;
  left: 0.4em;
}

.listitem--str {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr;
  row-gap: 0.4em;
}
.listitem--str dt::after {
  content: "：";
}

.listitem--dash > li {
  padding-left: 1.8em;
  position: relative;
}
.listitem--dash > li span {
  text-indent: 0;
}
.listitem--dash > li::before {
  content: "";
  position: absolute;
}
.listitem--dash > li::before {
  width: 0.4em;
  height: 1px;
  border-top-style: solid;
  border-top-width: 1px;
  top: 0.9em;
  left: 0;
}

.p--caution {
  text-indent: -1.8em;
  padding-left: 1.8em;
  position: relative;
}
.p--caution::before {
  text-indent: 0;
  width: 1.4em;
  display: inline-block;
  margin-right: 0.4em;
  white-space: nowrap;
}

.p--caution::before {
  content: "※";
}

.p--caution--1::before {
  content: "※1";
}

ol {
  list-style: none;
}

.listitem--recipe {
  counter-reset: ordered;
}
.listitem--recipe > li {
  position: relative;
  padding-left: 3em;
  padding-top: 0.6em;
  padding-bottom: 0.6em;
}
.listitem--recipe > li::before {
  position: absolute;
  left: 0;
  top: 0.6em;
  content: counter(ordered, decimal);
  counter-increment: ordered;
  display: inline-block;
  width: 1.5em;
  line-height: 1.5em;
  text-align: center;
  text-indent: 0;
  background-color: #f25c41;
  color: #fff;
  border-radius: 50%;
}
.listitem--recipe > li:first-child {
  padding-top: 0;
}
.listitem--recipe > li:first-child::before {
  top: 0;
}
.listitem--recipe > li:not(:last-child) {
  border-bottom: 1px solid transparent;
}
.listitem--recipe > li:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 3em;
  width: calc(100% - 3em);
  height: 1px;
  background-color: rgba(242, 92, 65, 0.25);
}
.listitem--recipe > li:last-child {
  padding-bottom: 0;
}

.foot-credit {
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.8;
  text-align: center;
}
@media (min-width: 768px) {
  .foot-credit {
    font-size: 11px;
    letter-spacing: 0;
  }
}
.foot-credit span {
  display: inline-block;
  white-space: nowrap;
}
.foot-credit span:not(:first-child) {
  margin-left: 1em;
}

.s-route__inner {
  box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.07);
  border-radius: 10px;
}

.s-route__header {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  border-bottom: 0;
  padding: 1.5em;
}
@media (min-width: 768px) {
  .s-route__header {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .s-route__header {
    -ms-grid-columns: 1fr auto;
    grid-template-columns: 1fr auto;
  }
}
@media (min-width: 768px) {
  .s-route__header {
    padding: 2em;
  }
}

.s-route__header__heading__h {
  font-size: 22px;
  letter-spacing: 0;
  color: #f25c41;
}
@media (min-width: 768px) {
  .s-route__header__heading__h {
    font-size: 22px;
    letter-spacing: 0;
  }
}

.s-route__header__heading__h-copy p {
  color: #f25c41;
}

.s-route__header__heading__h-info {
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .s-route__header__heading__h-info {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}

@media (min-width: 768px) {
  .s-route__header__data {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
.s-route__header__data dl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: min-content auto;
  grid-template-columns: min-content auto;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  column-gap: 0.7em;
}
.s-route__header__data dt {
  white-space: nowrap;
}
.s-column__inner__txt__route .s-route__header__data dt {
  color: #f25c41;
}
@media (min-width: 768px) {
  .s-route__header__data dd {
    white-space: nowrap;
  }
}
.s-route__header__data dd span {
  display: inline-block;
}

.s-route__header__data__sa + dd span:not(:last-child) {
  margin-right: 1em;
}

.s-route__embed--en {
  display: none;
}
html[lang=en] .s-route__embed--en {
  display: block;
}
@media (max-width: 767px) {
  html[lang=en] .s-route__embed--en--pc {
    display: none;
  }
}
@media (min-width: 768px) {
  html[lang=en] .s-route__embed--en--sp {
    display: none;
  }
}
html[lang=en] .s-route__embed--ja {
  display: none;
}

.s-route__foot {
  border-top: 0;
  padding: 1.5em;
}
@media (min-width: 768px) {
  .s-route__foot {
    padding: 2em;
  }
}

.s-route__info {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  -ms-grid-columns: auto;
  grid-template-columns: auto;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
}
@media (min-width: 768px) {
  .s-route__info {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .s-route__info {
    -ms-grid-columns: 2fr 4fr;
    grid-template-columns: 2fr 4fr;
  }
}
@media (min-width: 768px) {
  .s-route__info {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
}
.s-route__info:not(:last-child) {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .s-route__info:not(:last-child) {
    margin-bottom: 58px;
  }
}
@media (max-width: 767px) {
  html[lang=en] .s-route__info {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
}
.s-route__info__journey {
  font-size: 14px;
  letter-spacing: 0.04em;
  grid-column: 1/-1;
  grid-row: 1/2;
}
@media (min-width: 768px) {
  .s-route__info__journey {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 768px) {
  .s-route__info__journey {
    grid-column: 1/2;
    grid-row: 1/-1;
  }
}

.s-route__info__journey__item {
  text-align: center;
  border-radius: 9999px;
  background-color: #7c98ff;
  color: #fff;
  border: 2px solid rgba(0, 0, 0, 0.3);
}

.s-route__info__journey__arrow {
  padding-left: 1.6180469716em;
  position: relative;
  text-align: center;
  width: 5em;
  margin-right: auto;
  margin-left: auto;
}
.s-route__info__journey__arrow::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: 0;
  height: 1.5em;
  width: 1.5em;
  background-color: #f25c41;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><polygon class="b" points="17.00391 11.30615 11.5 14.45148 11.5 3.67432 9.5 3.67432 9.5 14.45148 3.99609 11.30615 3.00391 13.04248 10.5 17.32568 17.99609 13.04248 17.00391 11.30615"/></svg>');
}

.s-route__header__data__caution {
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .s-route__header__data__caution {
    font-size: 11px;
    letter-spacing: 0;
  }
}

.s-route__info__btn {
  grid-column: 1/-1;
  grid-row: 3/4;
}
@media (min-width: 768px) {
  .s-route__info__btn {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
html[lang=en] .s-route__info__btn {
  display: none;
}

@media (min-width: 768px) {
  .s-rel__info {
    max-width: calc(var(--widthDefault) - 420px);
  }
}

.phone {
  padding-left: 1.3em;
  position: relative;
}
.phone::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 1em;
  width: 1em;
  background-color: currentcolor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.c{stroke-width:0px;}</style></defs><path id="b" class="c" d="m15.2835,17.75596c.40018-.20067.56164-.69137.35881-1.09046l-1.57805-3.10493c-.20283-.39909-.6962-.56143-1.09638-.36076l-.63175.31481c-1.47393.72709-4.47317-5.24373-3.03085-6.03009l.6436-.32272c.40018-.20066.56312-.69211.36209-1.0921l-1.56878-3.12139c-.20103-.39999-.69294-.56308-1.09312-.36242l-.6594.33063c-.94442.50185-3.51294,1.69127.32403,9.33755,3.87253,7.71345,6.27509,6.31065,7.30249,5.82856l.66731-.32667Z"/></svg>');
}

h3, h4, h5, h6,
.m-profile__item__info__name__job,
.header__nav,
.pagenav,
.m-button {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.header__main h3, .tu_header__h1 h3, .header__main h4, .tu_header__h1 h4, .header__main h5, .tu_header__h1 h5, .header__main h6, .tu_header__h1 h6,
.header__main .m-profile__item__info__name__job,
.tu_header__h1 .m-profile__item__info__name__job,
.header__main .header__nav,
.tu_header__h1 .header__nav,
.header__main .pagenav,
.tu_header__h1 .pagenav,
.header__main .m-button,
.tu_header__h1 .m-button {
  font-weight: 900;
}

.anchor__blank {
  display: inline-block;
  text-indent: 0;
  color: #f25c41;
}
.anchor__blank .anchor__blank__str {
  display: inline-block;
  position: relative;
  white-space: nowrap;
  padding-right: 17.55px;
  text-decoration: underline;
}
.anchor__blank .anchor__blank__str::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  right: 0;
  width: 13px;
  height: 13px;
  mask-image: url('data:image/svg+xml;utf8,<svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13 13"><defs></defs><path class="b" d="m7,10.5c0,.27539-.22412.5-.5.5H2.5c-.27588,0-.5-.22461-.5-.5v-4c0-.27588.22412-.5.5-.5h1.5v-1h-1.5c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5v-1.5h-1v1.5Z"/><path class="b" d="m10.5,1h-4c-.82715,0-1.5.67285-1.5,1.5v4c0,.82715.67285,1.5,1.5,1.5h4c.82715,0,1.5-.67285,1.5-1.5V2.5c0-.82715-.67285-1.5-1.5-1.5Zm0,6h-4c-.27588,0-.5-.22412-.5-.5v-3.5h5v3.5c0,.27588-.22461.5-.5.5Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: currentcolor;
  opacity: 0.65;
}

.thumbnail__inner {
  padding-block: 48px;
  background-color: #f7f7f7;
}
@media (max-width: 767px) {
  .thumbnail__inner {
    padding-inline: 24px;
  }
}
@media (min-width: 768px) {
  .thumbnail__inner {
    padding-block: 58px;
  }
}

.thumbnail__list {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  -ms-grid-rows: auto auto auto;
  grid-template-rows: auto auto auto;
}
@media (min-width: 768px) {
  .thumbnail__list {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .thumbnail__list {
    -ms-grid-columns: repeat(3, 1fr);
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) {
  .thumbnail__list {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
  }
}

.thumbnail__list__item {
  display: block;
  border-radius: 10px;
  box-shadow: 0 0 1.8em 1px rgba(0, 0, 0, 0.07);
  background-color: #fff;
  position: relative;
  grid-column: 1/-1;
}
@media (min-width: 768px) {
  .thumbnail__list__item:nth-child(1) {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
@media (min-width: 768px) {
  .thumbnail__list__item:nth-child(2) {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
@media (min-width: 768px) {
  .thumbnail__list__item:nth-child(3) {
    grid-column: 3/4;
    grid-row: 1/2;
  }
}
.thumbnail__list__item::after {
  content: "";
  position: absolute;
  right: 1em;
  bottom: 1em;
  height: 1em;
  width: 1em;
  background-color: #fff;
  transition-property: background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m10.5,0C4.70111,0,0,4.70105,0,10.5s4.70111,10.5,10.5,10.5,10.5-4.70105,10.5-10.5S16.29901,0,10.5,0Zm.70703,17.20703l-1.41406-1.41406,4.29297-4.29297H4v-2h10.08594l-4.29297-4.29297,1.41406-1.41406,6.70703,6.70703-6.70703,6.70703Z"/></svg>');
}
@media (hover: hover) {
  .thumbnail__list__item:hover::after {
    background-color: #7c98ff;
  }
}
.thumbnail__list__item:focus-visible::after, .thumbnail__list__item.is-hover::after {
  background-color: #7c98ff;
}

#home .thumbnail__list__item--home,
#course-1 .thumbnail__list__item--course-1,
#course-2 .thumbnail__list__item--course-2,
#wine .thumbnail__list__item--wine {
  pointer-events: none;
}
#home .thumbnail__list__item--home::after,
#course-1 .thumbnail__list__item--course-1::after,
#course-2 .thumbnail__list__item--course-2::after,
#wine .thumbnail__list__item--wine::after {
  display: none;
}

.thumbnail__list__item__fig picture img {
  border-radius: 10px;
  aspect-ratio: 3/2;
  object-fit: cover;
}

.thumbnail__list__item__info {
  padding: 1em;
  border-radius: 10px;
  position: relative;
  background-color: rgba(0, 0, 0, 0.3);
  transition-property: background-color;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  font-weight: bold;
}
.thumbnail__list__item__info h3 {
  font-weight: bold;
  line-height: 1;
  font-size: 24px;
}
.thumbnail__list__item__info h3:not(:last-child) {
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  .thumbnail__list__item__info h3:not(:last-child) {
    margin-bottom: 10px;
  }
}
.thumbnail__list__item__info p {
  font-size: 14px;
}

@media (hover: hover) {
  .thumbnail__list__item:hover .thumbnail__list__item__info {
    background-color: transparent;
  }
}
.thumbnail__list__item:focus-visible .thumbnail__list__item__info, .thumbnail__list__item.is-hover .thumbnail__list__item__info {
  background-color: transparent;
}

.js__inview,
.js__inview .js__inview__inner, .js__inview::after, .js__inview::before {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
  transition-duration: 0.75s;
}

.js__inview--false {
  transition: none;
}

span.js__inview {
  display: inline-block;
}

.is-active--fade-in {
  transition-property: opacity;
  opacity: 0;
}
.is-active--fade-in.is-active, main.no-js .is-active--fade-in {
  opacity: 1;
}
@media print {
  .is-active--fade-in {
    opacity: 1;
  }
}

.is-active--up {
  transition-property: opacity, transform;
  opacity: 0;
  transform: translate(0, 29px);
}
.is-active--up.is-active, main.no-js .is-active--up {
  opacity: 1;
}
@media print {
  .is-active--up {
    opacity: 1;
  }
}
.is-active--up.is-active, main.no-js .is-active--up {
  transform: translate(0, 0);
}
@media print {
  .is-active--up {
    transform: translate(0, 0);
  }
}

.is-active--delay--1 {
  transition-delay: 0.15s;
}

.is-active--delay--2 {
  transition-delay: 0.3s;
}

.is-active--delay--3 {
  transition-delay: 0.45s;
}

.is-active--delay--4 {
  transition-delay: 0.6s;
}

.is-active--delay--5 {
  transition-delay: 0.75s;
}

.comment {
  display: -ms-grid;
  display: grid;
  grid-gap: 16px 24px;
  gap: 16px 24px;
  -ms-grid-columns: repeat(12, 1fr);
  grid-template-columns: repeat(12, 1fr);
  padding-bottom: calc(1em + 8px);
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .comment {
    grid-gap: 29px 32px;
    gap: 29px 32px;
  }
}
@media (min-width: 768px) {
  .comment {
    padding-bottom: calc(1em + 14.5px);
    max-width: calc(var(--widthDefault) - 420px);
  }
}
picture + .comment:not(:first-child), img + .comment:not(:first-child) {
  margin-top: 16px;
}
@media (min-width: 768px) {
  picture + .comment:not(:first-child), img + .comment:not(:first-child) {
    margin-top: 29px;
  }
}

.comment__fig {
  grid-column: 1/4;
  position: relative;
}
@media (min-width: 768px) {
  .comment__fig {
    grid-column: 1/3;
  }
}

.comment__fig__img {
  border-radius: 50%;
  border: 2px solid #f25c41;
  overflow: hidden;
}

.comment__fig__name {
  position: absolute;
  width: 100%;
  top: 0;
  padding-top: calc(100% + 8px);
  left: 0;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: center;
  color: #f25c41;
}
@media (min-width: 768px) {
  .comment__fig__name {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
@media (min-width: 768px) {
  .comment__fig__name {
    padding-top: calc(100% + 14.5px);
  }
}

.comment__txt {
  grid-column: 4/-1;
  align-self: center;
  font-weight: bold;
  color: #f25c41;
  position: relative;
}
@media (min-width: 768px) {
  .comment__txt {
    grid-column: 3/-1;
  }
}
.comment__txt::after {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: calc((1em - 3px) * -1);
  width: 2em;
  height: 3px;
  background-color: #f25c41;
  border-radius: 9999px;
}
.comment__txt::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  left: -6px;
  width: 12px;
  height: 12px;
  background-color: #fff;
  border-radius: 9999px;
}
.comment__txt .comment__txt__inner {
  padding: 1em 1.4em;
  padding-left: 2.4em;
  border-radius: 10px;
  border: 3px solid #f25c41;
}

.kakko {
  padding-inline: 2.5em;
  position: relative;
}
@media (min-width: 768px) {
  .kakko {
    padding-inline: 64px;
  }
}
.kakko::before, .kakko::after {
  content: "";
  position: absolute;
  height: 3.6em;
  border-width: 2px;
  border-color: #f25c41;
  width: 1.5em;
}
@media (min-width: 768px) {
  .kakko::before, .kakko::after {
    width: 35px;
  }
}
.kakko::before {
  border-top-left-radius: 6px;
  border-top-style: solid;
  border-left-style: solid;
  left: 0;
  top: 0.4em;
}
.kakko::after {
  border-bottom-right-radius: 6px;
  border-bottom-style: solid;
  border-right-style: solid;
  right: 0;
  bottom: 0.4em;
}

.kakko__cite {
  color: #f25c41;
  text-align: right;
  position: relative;
  width: fit-content;
  margin-left: auto;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .kakko__cite {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
.kakko__cite::before {
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  right: calc(100% + 1em);
  width: 3.6em;
  height: 3.6em;
  background-image: url(../img/comment--yahho.jpg);
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  border: 2px solid #f25c41;
  overflow: hidden;
}

.h2 {
  position: relative;
  color: #f25c41;
}
.h2:not(:last-child) {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .h2:not(:last-child) {
    margin-bottom: 58px;
  }
}

.h2--car {
  position: relative;
}
.h2--car::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 40px;
  height: 29px;
  width: 100%;
  background-color: #ffe515;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 27"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m98.5.02246c-.81543,0-1.47754.66162-1.47754,1.47754v.5c0,4.69922-3.68848,8.52246-8.22266,8.52246h-28.7998c-4.28925,0-8.03027,2.36847-10.00006,5.86261-1.96985-3.49414-5.71106-5.86261-9.99994-5.86261H11.2002C6.66602,10.52246,2.97754,6.69922,2.97754,2v-.5C2.97754.68408,2.31592.02246,1.5.02246S.02246.68408.02246,1.5v.5C.02246,8.32861,5.03711,13.47754,11.2002,13.47754h28.7998c4.69922,0,8.52246,3.82324,8.52246,8.52246v3.5c0,.81543.66162,1.47754,1.47754,1.47754s1.47754-.66211,1.47754-1.47754v-3.5c0-4.69922,3.82324-8.52246,8.52246-8.52246h28.7998c6.16309,0,11.17773-5.14893,11.17773-11.47754v-.5c0-.81592-.66211-1.47754-1.47754-1.47754Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
@media (min-width: 768px) {
  .h2--car::before {
    height: 29px;
    bottom: 72.5px;
  }
}
.h2--car h2 {
  padding-bottom: 85px;
  position: relative;
}
@media (min-width: 768px) {
  .h2--car h2 {
    padding-bottom: 130.5px;
  }
}
.h2--car h2::before {
  content: "";
  position: absolute;
  margin-right: auto;
  margin-left: auto;
  right: 0;
  left: 0;
  bottom: 0;
  width: 48px;
  height: 24px;
  background-color: #f25c41;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 424"><defs><style>.b{stroke-width:0px;}</style></defs><circle class="b" cx="767.11824" cy="352.33159" r="36.19216"/><path class="b" d="m216.71342,280.9641c-39.41509,0-71.36749,31.95232-71.36749,71.36749s31.9524,71.36741,71.36749,71.36741,71.36749-31.95224,71.36749-71.36741-31.9524-71.36749-71.36749-71.36749Zm0,118.12591c-25.82398,0-46.75842-20.93444-46.75842-46.75842s20.93444-46.75842,46.75842-46.75842,46.75842,20.93444,46.75842,46.75842-20.93444,46.75842-46.75842,46.75842Z"/><path class="b" d="m767.11809,280.9641c-39.41509,0-71.36734,31.95232-71.36734,71.36749s31.95224,71.36741,71.36734,71.36741,71.36749-31.95224,71.36749-71.36741-31.95224-71.36749-71.36749-71.36749Zm.00015,118.12591c-25.82398,0-46.75842-20.93444-46.75842-46.75842s20.93444-46.75842,46.75842-46.75842,46.75842,20.93444,46.75842,46.75842-20.93459,46.75842-46.75842,46.75842Z"/><circle class="b" cx="216.71342" cy="352.33159" r="36.19216"/><path class="b" d="m994.77875,259.08533c.03398-9.72174.35067-39.19395.56302-59.05605.12741-11.78937.21841-20.30742.21841-21.51475,0-2.06763-.64189-5.69811-4.45802-8.9755-.70256-56.84646-22.95991-151.59096-25.77984-156.42513-2.9255-5.01315-8.90391-8.24686-16.40149-8.87176-6.95155-.5794-98.37377-3.41389-251.73022-3.41389-41.40962,0-88.15697-.13469-133.36573-.26513-122.86741-.35371-249.92105-.72076-283.89557,1.58348l-6.0864.41195c-42.80866,2.89577-58.82672,3.97934-69.71029,7.69537-11.49755,3.92655-21.52931,9.61375-70.19019,42.1419-24.27462,16.22555-43.34195,32.36677-58.66291,45.33678-9.56825,8.10064-17.83209,15.09709-24.60285,19.71286-10.90905,7.43813-20.01317,16.83589-27.06058,27.93605-1.71453,2.69981-2.81508,4.73589-3.46304,6.4031-2.11435,5.43602-14.83257,56.68265-14.83257,102.48355,0,2.32366.4526,4.15831,1.10965,5.63987-1.77399,3.04199-3.42967,7.48545-4.14254,14.60567l-.09222.90883c-.57394,5.59255-2.31941,22.61288-2.18836,44.68093l.01638,3.44362c.0722,17.51539.12862,31.34934,7.46239,36.71013h.00061c9.37805,6.85395,49.7493,10.69504,106.43058,12.81355,8.15995.30502,14.69591-6.55879,14.14154-14.70569-.13575-1.99354-.20491-4.00527-.20491-6.03347,0-49.07586,39.78397-88.85975,88.85983-88.85975s88.85983,39.78389,88.85983,88.85975c0,2.74106-.12635,5.45217-.37206,8.12878-.74154,8.07713,5.47985,15.08928,13.59111,15.08928h346.24706c8.11111,0,14.33265-7.01215,13.59111-15.08928-.24571-2.6766-.37206-5.38779-.37206-8.12878,0-49.73678,40.86252-89.92959,90.84737-88.83806,47.56958,1.03882,86.2495,40.088,86.86455,87.66508.03489,2.70603-.05127,5.38468-.2536,8.0308-.62308,8.15069,5.78533,15.09853,13.95741,14.9006,2.52356-.06112,5.03833-.1246,7.53975-.19058,96.52213-2.54571,103.59017-6.72344,106.60789-8.50592l.48172-.28151c9.19027-5.32196,15.69651-14.23315,15.69651-80.80378,0-10.52865-2.49596-20.15939-5.22125-25.22289Zm-683.38424-76.13872c0,4.72869-2.94431,8.92211-9.9036,8.92211h-32.74429c-4.99632,0-7.49455-3.65809-7.49455-5.79936v-6.06706c0-6.06706,13.02643-12.22331,21.5915-12.22331h22.92988c4.8181,0,5.62106,2.14134,5.62106,5.17484v9.99278Zm12.80832-149.59386c-.79902,3.99496-9.10412,42.34689-12.80832,58.85956-3.70435,16.51267-8.23199,22.90462-28.20694,25.56795-19.97495,2.66333-189.09647,20.50763-191.22704,20.77397s-5.06032-1.3317-5.06032-5.593,1.59804-9.32162,5.32666-13.31666c.32731-.35075,1.03563-1.08425,2.06111-2.12815-.12999,2.16235-.19687,4.3131-.19687,6.38952,0,12.68395,20.0972,10.42422,34.02852,6.81239,4.27965-1.10958,5.3893-5.06487,5.3893-12.93065v-19.8803c0-7.59026-2.91595-9.67783-8.20894-10.2526,16.96603-15.56031,36.8976-32.49509,50.82164-40.18643,27.96502-15.44731,45.80939-17.04528,55.13102-17.57796s80.69882-1.86431,87.62337-1.86431c2.39707,0,6.12584,1.33163,5.32681,5.32666Zm85.44533,163.5201c0,5.83561-4.73073,10.56627-10.56642,10.56627s-10.56627-4.73066-10.56627-10.56627v-17.84354c0-5.83561,4.73058-10.56627,10.56627-10.56627s10.56642,4.73066,10.56642,10.56627v17.84354Zm212.37853-50.59496h-145.91954c-18.80903,0-43.59312-5.50374-64.81363-11.45235-18.33565-5.13995-34.34294-9.95555-37.55283-19.70861-2.98465-9.06871-5.85934-66.05053-5.593-75.10589.26634-9.05528,5.06032-11.98495,14.1156-11.98495h239.76339v118.2518Zm275.05809,0h-253.92556V28.02609h272.56881c11.18601,0,12.51771,5.32666,14.64844,7.72365s13.31658,43.14591,13.31658,80.69889c0,22.37194-3.72862,29.82925-46.60826,29.82925Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
@media (min-width: 768px) {
  .h2--car h2::before {
    width: 87px;
    height: 43.5px;
  }
}

.h2--kakko {
  position: relative;
}
.h2--kakko::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 29px;
  width: 100%;
  background-color: #ffe515;
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 27"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m98.5.02246c-.81543,0-1.47754.66162-1.47754,1.47754v.5c0,4.69922-3.68848,8.52246-8.22266,8.52246h-28.7998c-4.28925,0-8.03027,2.36847-10.00006,5.86261-1.96985-3.49414-5.71106-5.86261-9.99994-5.86261H11.2002C6.66602,10.52246,2.97754,6.69922,2.97754,2v-.5C2.97754.68408,2.31592.02246,1.5.02246S.02246.68408.02246,1.5v.5C.02246,8.32861,5.03711,13.47754,11.2002,13.47754h28.7998c4.69922,0,8.52246,3.82324,8.52246,8.52246v3.5c0,.81543.66162,1.47754,1.47754,1.47754s1.47754-.66211,1.47754-1.47754v-3.5c0-4.69922,3.82324-8.52246,8.52246-8.52246h28.7998c6.16309,0,11.17773-5.14893,11.17773-11.47754v-.5c0-.81592-.66211-1.47754-1.47754-1.47754Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
@media (min-width: 768px) {
  .h2--kakko::before {
    height: 29px;
  }
}
.h2--kakko h2 {
  padding-bottom: 45px;
  position: relative;
}
@media (min-width: 768px) {
  .h2--kakko h2 {
    padding-bottom: 58px;
  }
}

figure {
  position: relative;
}

.s-intro:not(.article-single-body--sns) {
  padding-bottom: 16px;
}
@media (min-width: 768px) {
  .s-intro:not(.article-single-body--sns) {
    padding-bottom: 29px;
  }
}

.s-intro__frame {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .s-intro__frame {
    width: 50%;
  }
}

.s-intro__frame__fig {
  padding-top: 79.1791666667%;
  position: relative;
}
@media (min-width: 768px) {
  .s-intro__frame__fig {
    padding-top: 68.9625%;
  }
}
.s-intro__frame__fig img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

.s-intro__h {
  position: relative;
  text-align: center;
}
@media (max-width: 767px) {
  .s-intro__h {
    text-align: center;
  }
}
.s-intro__h h2 {
  font-size: 18px;
}
@media (min-width: 768px) {
  .s-intro__h h2 {
    font-size: 26px;
    letter-spacing: 0;
  }
}
.s-intro__h span {
  display: inline-block;
}

.s-access .p--caution {
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .s-access .p--caution {
    font-size: 11px;
    letter-spacing: 0;
  }
}

.access__info {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto;
  grid-template-columns: auto;
}
.access__info:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .access__info:not(:last-child) {
    margin-bottom: 29px;
  }
}
@media (min-width: 768px) {
  .access__info {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .access__info {
    row-gap: 50px;
  }
}
@media (min-width: 768px) {
  .access__info {
    column-gap: 65px;
  }
}
.access__info a {
  color: #f25c41;
  text-decoration: underline;
}

.access__info__item {
  position: relative;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media (min-width: 768px) {
  .access__info__item {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
.access__info__item:not(:first-child)::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: calc(100% + 24px);
  width: 100%;
  height: 2px;
  background-color: #f7f7f7;
  border-radius: 9999px;
}
@media (min-width: 768px) {
  .access__info__item:not(:first-child)::before {
    left: auto;
    bottom: 0.4em;
    width: 2px;
    right: calc(100% + 32px);
    height: calc(100% - 0.8em - 38.5px);
  }
}
@media (max-width: 767px) {
  #course-1 .access__info__item:nth-child(2), #course-2 .access__info__item:nth-child(2) {
    margin-top: -42px;
  }
}
@media (min-width: 768px) {
  #course-1 .access__info__item:nth-child(2), #course-2 .access__info__item:nth-child(2) {
    padding-top: 38.5px;
  }
}
@media (max-width: 767px) {
  #course-1 .access__info__item:nth-child(2)::before, #course-2 .access__info__item:nth-child(2)::before {
    display: none;
  }
}
.access__info__item h3, .access__info__item h4 {
  color: #f25c41;
}
.access__info__item h3 {
  font-size: 16px;
  letter-spacing: 0.04em;
}
@media (min-width: 768px) {
  .access__info__item h3 {
    font-size: 16px;
    letter-spacing: 0.04em;
  }
}
.access__info__item h3:not(:last-child) {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .access__info__item h3:not(:last-child) {
    margin-bottom: 15px;
  }
}
.access__info__item h4 {
  font-size: 14px;
  letter-spacing: 0.04em;
  position: relative;
}
@media (min-width: 768px) {
  .access__info__item h4 {
    font-size: 14px;
    letter-spacing: 0.04em;
  }
}
.access__info__item h4:not(:last-child) {
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  .access__info__item h4:not(:last-child) {
    margin-bottom: 10px;
  }
}
.access__info__item .h_train,
.access__info__item .h_car,
.access__info__item .h_bus,
.access__info__item .h_parking,
.access__info__item .h_taxi {
  padding-left: 1.8em;
}
.access__info__item .h_train::before,
.access__info__item .h_car::before,
.access__info__item .h_bus::before,
.access__info__item .h_parking::before,
.access__info__item .h_taxi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 1.5em;
  width: 1.5em;
  background-color: currentcolor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}
.access__info__item .h_train::before {
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m16,3H5c-.55176,0-1,.44873-1,1v11h1v2c0,.55127.44824,1,1,1h9c.55176,0,1-.44873,1-1v-2h1V4c0-.55127-.44824-1-1-1Zm-11,1h5v5h-5v-5Zm0,7h1.5v2h-1.5v-2Zm10,6H6v-2h2v1h5v-1h2v2Zm1-4h-1.5v-2h1.5v2Zm-5-4v-5h5v5h-5Z"/></svg>');
}
.access__info__item .h_car::before {
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m18.62109,8.48486c-.29059.07269-.62524.13287-.98047.18652.23492,1.03333.35938,2.03485.35938,2.82861,0,1.38196-.00372,2.62286-1,3.18323v1.56677c0,.55127-.44824,1-1,1h-1c-.55176,0-1-.44873-1-1v-1.25h-1v-1h-5v1h-1v1.25c0,.55127-.44824,1-1,1h-1c-.55176,0-1-.44873-1-1v-1.56677c-.99628-.56036-1-1.80127-1-3.18323,0-.79376.12451-1.79529.35944-2.82861-.35522-.05365-.68988-.11383-.98053-.18652-.26855-.06689-.43066-.33838-.36426-.60596.06641-.26855.33496-.43164.60645-.36377.28668.07166.62793.12988.99158.18188.71094-2.40656,2.02759-4.69702,3.88733-4.69702h6c1.85974,0,3.17639,2.29047,3.88733,4.69702.36365-.052.7049-.11023.99158-.18188.2627-.06885.53906.09521.60645.36377.06641.26758-.0957.53906-.36426.60596Zm-2.2464-.68451c-.63806-2.03265-1.69891-3.80035-2.87469-3.80035h-6c-1.17578,0-2.23663,1.7677-2.87469,3.80035,2.31964.19922,4.46448.19965,5.87469.19965s3.55505-.00043,5.87469-.19965Zm-.87469,2.19965c-.828,0-1.5.672-1.5,1.5s.672,1.5,1.5,1.5,1.5-.672,1.5-1.5-.672-1.5-1.5-1.5Zm-10,0c-.828,0-1.5.672-1.5,1.5s.672,1.5,1.5,1.5,1.5-.672,1.5-1.5-.672-1.5-1.5-1.5Zm2.5,2h5v-1h-5v1Z"/></svg>');
}
.access__info__item .h_bus::before {
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m17.75,6.5h-.25c0-.15112-.01117-.30597-.03278-.46106-.16235-2.21851-1.51422-3.03894-4.96722-3.03894h-4c-3.453,0-4.80487.82043-4.96722,3.03894-.02161.15509-.03278.30994-.03278.46106h-.25c-.41418,0-.75.33575-.75.75v.5c0,.41418.33582.75.75.75h.25v7.5c0,.55127.44824,1,1,1v.25c0,.55127.44824,1,1,1s1-.44873,1-1v-.25h8v.25c0,.55127.44824,1,1,1s1-.44873,1-1v-.25c.55176,0,1-.44873,1-1v-7.5h.25c.41418,0,.75-.33582.75-.75v-.5c0-.41425-.33582-.75-.75-.75Zm-9.25-2.75h4c.1377,0,.25.11182.25.25s-.1123.25-.25.25h-4c-.1377,0-.25-.11182-.25-.25s.1123-.25.25-.25Zm-2.5,11.75c-.552,0-1-.448-1-1s.448-1,1-1,1,.448,1,1-.448,1-1,1Zm9,0c-.552,0-1-.448-1-1s.448-1,1-1,1,.448,1,1-.448,1-1,1Zm1.5-4.5918c0,1.06543-.5791,1.5-2,1.5H6.5c-1.4209,0-2-.43457-2-1.5v-4.4082c0-1.06543.5791-1.5,2-1.5h8c1.4209,0,2,.43457,2,1.5v4.4082Z"/></svg>');
}
.access__info__item .h_taxi::before {
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m18.98486,9.37891c-.06689-.26855-.33838-.42871-.60596-.36426-.28674.07172-.62805.13007-.99176.18213-.71106-2.40649-2.02777-4.69678-3.88715-4.69678v-.44727c0-.82843-.67157-1.5-1.5-1.5h-3c-.82843,0-1.5.67157-1.5,1.5v.44727c-1.85938,0-3.17609,2.29028-3.88715,4.69678-.36371-.05206-.70502-.11041-.99176-.18213-.27002-.06543-.53955.0957-.60596.36426-.06738.26758.0957.53906.36377.60645.29065.07263.62531.13275.98053.18634-.23492,1.0332-.35944,2.03467-.35944,2.82831,0,1.38196.00372,2.62286,1,3.18323v.56677c0,.55176.44873,1,1,1h1c.55127,0,1-.44824,1-1v-.25h1v-1h5v1h1v.25c0,.55176.44873,1,1,1h1c.55127,0,1-.44824,1-1v-.56677c.99628-.56036,1-1.80127,1-3.18323,0-.79364-.12451-1.7951-.35944-2.82831.35522-.05359.68988-.11371.98053-.18634.26807-.06738.43115-.33887.36377-.60645Zm-10.48486-5.37891c0-.27637.22363-.5.5-.5h3c.27637,0,.5.22363.5.5v.5h-4v-.5Zm-3,10.5c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5.672,1.5,1.5-.672,1.5-1.5,1.5Zm7.5-2h-1v1h-1v-1h-1v1h-1v-1h-1v-1h1v1h1v-1h1v1h1v-1h1v1Zm-2.5-3c-1.39545,0-3.87598-.00269-5.87903-.18677.63763-2.03815,1.70074-3.81323,2.87903-3.81323h6c1.17828,0,2.24139,1.77509,2.87903,3.81323-2.00305.18408-4.48358.18677-5.87903.18677Zm5,5c-.828,0-1.5-.672-1.5-1.5s.672-1.5,1.5-1.5,1.5.672,1.5,1.5-.672,1.5-1.5,1.5Z"/></svg>');
}
.access__info__item .h_parking::before {
  mask-image: url('data:image/svg+xml;utf8,<?xml version="1.0" encoding="UTF-8"?><svg id="a" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 21"><defs><style>.b{stroke-width:0px;}</style></defs><path class="b" d="m10.71844,6.90393c-.22485,0-.4021.00476-.53418.01428-.13086.00952-.23322.03687-.30695.08087-.07257.04407-.1214.11188-.14636.20465-.0238.09283-.03571.21655-.03571.37244v2.22247c0,.15582.00714.27722.02142.36523.01428.08807.04877.1535.10236.19751.05353.04401.12726.07257.22009.08807.09161.01422.21179.02136.35809.02136.30103,0,.57227-.02374.81146-.07257.23792-.04877.44019-.14154.60675-.27838.16541-.13562.2915-.32361.37952-.56274.08807-.23914.13208-.54852.13208-.92804,0-.67224-.14392-1.12793-.43188-1.36707-.2879-.23914-.67932-.35809-1.1767-.35809Z"/><path class="b" d="m17.98767,5.73932c-.51123-1.23419-1.4928-2.21576-2.72699-2.72699-1.24719-.51233-2.63916-.51233-3.89685-.51233h-1.72766c-1.25769,0-2.64966,0-3.89685.51233-1.23419.51123-2.21576,1.4928-2.72699,2.72699-.51233,1.24719-.51233,2.63916-.51233,3.89685v1.72766c0,1.25769,0,2.64966.51233,3.89685.51123,1.23419,1.4928,2.21576,2.72699,2.72699,1.24719.51233,2.63916.51233,3.89685.51233h1.72766c1.25769,0,2.64966,0,3.89685-.51233,1.23419-.51123,2.21576-1.4928,2.72699-2.72699.51233-1.24719.51233-2.63916.51233-3.89685v-1.72766c0-1.25769,0-2.64966-.51233-3.89685Zm-4.03064,4.51263c-.19037.42828-.45093.76263-.7829,1.00055-.33075.2392-.71625.40216-1.15405.49023-.43903.08801-.90662.13202-1.40393.13202h-.27838c-.26294,0-.43549.03931-.51874.11664-.08209.07849-.12378.19513-.12378.35095v2.57349c0,.1261-.02972.22607-.08801.2998-.05829.07257-.13208.13086-.21893.17493-.08801.04401-.19037.07257-.30695.08801-.1178.01428-.23438.02142-.35101.02142-.11774,0-.23438-.00714-.35095-.02142-.11658-.01544-.22247-.04163-.31409-.08087-.09283-.03931-.16895-.0976-.22729-.17493-.05829-.07849-.08801-.17609-.08801-.29266V6.61127c0-.35101.10828-.62347.32245-.8186.21411-.19513.55084-.29266,1.00891-.29266h1.70972c.52704,0,1.00177.05115,1.42529.1535.42474.10229.78766.27362,1.08984.5116.30219.23914.53302.5556.69482.95062.16064.39496.24036.88995.24036,1.48364,0,.67218-.09521,1.22308-.28436,1.65259Z"/></svg>');
}
.access__info__item p:not(:last-child) {
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .access__info__item p:not(:last-child) {
    margin-bottom: 15px;
  }
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  pointer-events: none;
}
.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  pointer-events: auto;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}
.splide__slide > picture:not(:last-child), .splide__slide > img:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .splide__slide > picture:not(:last-child), .splide__slide > img:not(:last-child) {
    margin-bottom: 29px;
  }
}
@media (min-width: 768px) {
  .splide__slide:first-child > picture {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    overflow: hidden;
  }
}
@media (min-width: 768px) {
  .splide__slide:last-child > picture {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    overflow: hidden;
  }
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background-color: #f25c41;
  border: 1px solid #ef3311;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  width: 2em;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 1;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  transition-property: opacity;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  transition-delay: 0s;
}
.splide__arrow path {
  fill: #fff;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.2;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: var(--sidePaddingSp1);
}
@media (min-width: 768px) {
  .splide__arrow--prev {
    left: -3em;
  }
}

.splide__arrow--next {
  right: var(--sidePaddingSp1);
}
@media (min-width: 768px) {
  .splide__arrow--next {
    right: -3em;
  }
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  width: 100%;
  bottom: -2em;
  left: 0;
  position: absolute;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  width: 8px;
}
.splide__pagination__page.is-active {
  background: #f25c41;
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.splide img {
  width: auto !important;
}

picture.rounded {
  border-radius: 10px;
  overflow: hidden;
}

.frame {
  position: relative;
  z-index: 100;
}
.frame:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .frame:not(:last-child) {
    margin-bottom: 29px;
  }
}
@media (max-width: 767px) {
  .frame {
    padding: calc(var(--sidePaddingSp1) * 1);
    padding-top: 0;
  }
}

.frame--pen .frame__inner {
  position: relative;
  z-index: 100;
}
.frame--pen .frame__inner::before, .frame--pen .frame__inner::after {
  width: 300px;
  content: "";
  position: absolute;
  margin-top: auto;
  margin-bottom: auto;
  top: 0;
  bottom: 0;
  height: 100%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  z-index: 102;
}
@media (min-width: 768px) {
  .frame--pen .frame__inner::before, .frame--pen .frame__inner::after {
    width: 1000px;
  }
}
.frame--pen .frame__inner::before {
  right: calc(100% - 60px);
  background-position: right center;
}
@media (min-width: 768px) {
  .frame--pen .frame__inner::before {
    right: calc(100% - 200px);
  }
}
.frame--pen .frame__inner::after {
  left: calc(100% - 60px);
  background-position: left center;
}
@media (min-width: 768px) {
  .frame--pen .frame__inner::after {
    left: calc(100% - 200px);
  }
}
.frame--pen .frame__inner picture, .frame--pen .frame__inner img {
  position: relative;
  z-index: 101;
}

.frame__inner:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .frame__inner:not(:last-child) {
    margin-bottom: 29px;
  }
}

.frame--pen--1 .frame__inner::before {
  background-image: url(../img/frame--1--l.png);
}
.frame--pen--1 .frame__inner::after {
  background-image: url(../img/frame--1--r.png);
}

.frame--pen--2 .frame__inner::before {
  background-image: url(../img/frame--2--l.png);
}
.frame--pen--2 .frame__inner::after {
  background-image: url(../img/frame--2--r.png);
}

.frame--pen--3 .frame__inner::before {
  background-image: url(../img/frame--3--l.png);
}
.frame--pen--3 .frame__inner::after {
  background-image: url(../img/frame--3--r.png);
}

.frame--pen--4 .frame__inner::before {
  background-image: url(../img/frame--4--l.png);
}
.frame--pen--4 .frame__inner::after {
  background-image: url(../img/frame--4--r.png);
}

.frame--pen--5 .frame__inner::before {
  background-image: url(../img/frame--5--l.png);
}
.frame--pen--5 .frame__inner::after {
  background-image: url(../img/frame--5--r.png);
}
