@charset "UTF-8";
.pcBg {
  display: none;
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .pcBg {
    display: flex;
    justify-content: space-between;
    position: fixed;
    width: 100%;
    height: 100vh;
    z-index: 0;
  }
  .pcBg-left {
    display: block;
    width: calc(50% - 16.429vw);
    height: 100vh;
    background: url(./img/bg_pc02.jpg) no-repeat left center;
    background-size: cover;
    z-index: 0;
  }
  .pcBg-right {
    display: block;
    position: relative;
    width: calc(50% - 16.429vw);
    height: 100vh;
    background: url(./img/bg_pc01.jpg) no-repeat center;
    background-size: cover;
    z-index: 0;
  }
  .pcBg-logo {
    position: absolute;
    width: calc(124vw /14);
    top: 5%;
    right: 0;
    left: 0;
    margin: auto;
  }
  .pcBg-sidemenu {
    position: absolute;
    width: calc(201vw /14);
    min-width: 201px;
    bottom: 2%;
    right: 0;
    left: 0;
    margin: auto;
  }
  .pcBg-sidemenu li {
    margin-top: calc(8vw /14);
  }
  .pcBg-sidemenu a {
    width: 100%;
    border: 1px solid #d9a72f;
    border-radius: 2em;
    color: #fff;
    text-align: center;
    padding: .3em 0 .6em;
    transition: all 0.3s;
  }
  .pcBg-sidemenu a:hover {
    background-color: #d9a72f;
    color: #fff;
  }
  .pcBg-sidemenu__kamakura a {
    border-color: #fff;
    background-color: #fff;
    color: #1d277e;
  }
  .pcBg-sidemenu__kamakura a:hover {
    border-color: #1d277e;
    background-color: #1d277e;
    color: #fff;
  }
  .pcBg-sidemenu__jp {
    font-size: calc(9vw /14);
    font-size: max(0.714vw, 10px);
    line-height: 1;
    margin: 0;
    padding: 0;
  }
  .pcBg-sidemenu__en {
    font-size: calc(6vw /14);
    font-size: max(0.429vw, 6px);
    display: block;
    line-height: 1;
  }
  .g-main {
    width: calc(460vw /14);
    /* min-width: 460px; */
    margin: 0 auto;
    position: relative;
    z-index: 1;
    background-color: #1d277e;
  }
}

/* kv
//* -------------------------------------------------- */
.kv {
  position: relative;
  min-height: 100vh;
  height: 100vh;
  overflow: hidden;
  transition:
    opacity .35s ease,
    filter .35s ease;
}

body.is-kv-menu-hide .kv {
  opacity: 0;
  filter: blur(18px);
  pointer-events: none;
}
.kv-logo {
  position: absolute;
  top: calc(80vw / 2.5);
  left: 50%;
  z-index: 30;
  width: calc(442vw / 7.5);
  margin: 0;
  padding: 0;
  transform: translateX(-50%);
}
.kv-scroll {
  position: absolute;
  left: 50%;
  z-index: 100;
  opacity: 1;
  transform: translateX(-50%);
  pointer-events: none;
  opacity: 0;
  bottom: calc(200vw / 7.5);
  transition: bottom .5s ease;
}
.kv-scroll.is-bottom {
  bottom: calc(40vw / 7.5);
}
.kv-scroll p {
  color: #fff;
  position: relative;
  text-align: center;
  letter-spacing: 0.2em;
}
.kv-scroll p span {
  width: 1px;
  height: calc(73vw / 7.5);
  background: #091456;
  margin: calc(20vw / 7.5) auto 0;
  display: block;
  position: relative;
  overflow: hidden;
}

.kv-scroll p span::after {
  content: "";
  width: 1px;
  height: 60%;
  background: #fff;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  animation: lineAnime 2s infinite ease-in;
}
@keyframes lineAnime {
  0% {
      top: 0;
  }
  80% {
      top: 100%;
  }
  100% {
      top: 100%;
  }
}
  
/* 足跡01 */
.kv-ashiato {
  position: absolute;
  left: 0;
  top: calc(40vw / 7.5);
  z-index: 20;
  width: 100%;
  height: calc(690vw / 7.5);
  opacity: 0;
  transform: translateY(-20svh);
}
.kv-ashiato img {
  width: calc(82vw / 7.5);
  position: absolute;
  display: block;
  opacity: 0;
  filter: blur(8px);
}
.kv-ashiato img:nth-child(1) {
  top: 0;
  left: 40%;
}
.kv-ashiato img:nth-child(2) {
  top: 25%;
  left: 32%;
}
.kv-ashiato img:nth-child(3) {
  top: 50%;
  left: 15%;
}
.kv-ashiato img:nth-child(4) {
  top: 75%;
  left: 8%;
}
  
.kv-img {
  position: absolute;
  inset: 0;
  z-index: 40;
  width: 100%;
  height: 100vh;
  opacity: 0;
  pointer-events: none;
}
.kv-img img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: auto;
  transform: translate(-55%, -45%)scale(120%);
  opacity: 0;
  filter: blur(18px);
}

.kv-introWrap {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 50;
  width: 100%;
  height: 100vh;
  overflow: visible;
  transform: translateY(0);
  pointer-events: none;
}
.kv-intro {
  position: absolute;
  left: -17%;
  top: 0;
  width: calc(1000vw / 7.5);
  height: calc(1000vw / 7.5);
  opacity: 0;
  filter: blur(18px);
  transform: translateY(5vh);
}
.kv-intro-moon {
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: 50%;
  background: #ffe578;
}
.kv-intro-border {
  position: absolute;
  inset: -2%;
  z-index: 2;
  border-radius: 50%;
  border: calc(34vw / 7.5) solid #e4b647;
  opacity: 0;
  transform: scale(.96);
}
.kv-intro-goko {
  position: absolute;
  inset: -13%;
  z-index: 1;
  border-radius: 50%;
  background: url("./img/bg_kv-intoro_goko.png") center / cover no-repeat;
  opacity: 0;
  transform: scale(.6);
  pointer-events: none;
}
.kv-intro-inner {
  position: absolute;
  z-index: 5;
  left: 15%;
  top: 52%;
  width: 70%;
  transform: translateY(-50%);
  color: #091456;
  text-align: center;
}
.kv-intro-inner p {
  line-height: 2.6;
  opacity: 0;
  transform: translateY(30px);
  filter: blur(14px);
}
.kv-intro-inner p:nth-child(2) {
  padding-top: 2em;
}
.kv-intro::before,
.kv-intro::after,
.kv-introWrap::before {
  content: none !important;
}

.kv-ashiato02 {
  position: absolute;
  left: 0;
  top: auto;
  bottom: calc(90vw / 7.5);
  z-index: 70;
  width: 100%;
  height: calc(400vw / 7.5);
  opacity: 0;
  pointer-events: none;
}
.kv-ashiato02 img {
  width: calc(82vw / 7.5);
  position: absolute;
  display: block;
  opacity: 0;
  filter: blur(8px);
}
.kv-ashiato02 img:nth-child(1) {
  top: 0;
  left: 10%;
}
.kv-ashiato02 img:nth-child(2) {
  top: calc(190vw / 7.5);
  left: 25%;
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .kv {
    min-height: 100vh;
    height: 100vh;
  }
  .kv-logo {
    top: calc(80vw /14);
    width: calc(271vw /14);
  }
  .kv-scroll {
    bottom: calc(20vw /14);
  }
  .kv-scroll.is-bottom {
    bottom: calc(20vw / 7.5);
  }
  .kv-scroll p span {
    height: calc(43vw / 14);
    margin: calc(10vw / 14) auto 0;
  }
  .kv-ashiato {
    top: calc(40vw /14);
    height: calc(516vw /14);
    transform: translateY(-20vh);
  }
  .kv-ashiato img {
    width: calc(52vw /14);
  }
  .kv-img {
    height: 100vh;
  }
  .kv-introWrap {
    height: 100vh;
  }
  .kv-intro {
    width: calc(600vw /14);
    height: calc(600vw /14);
    transform: translateY(5vh);
    left: -16%;
  }
  .kv-intro-border {
    border-width: calc(15vw /14);
  }
  .kv-ashiato02 {
    bottom: calc(40vw / 14);
    height: calc(240vw / 14);
  }
  .kv-ashiato02 img {
    width: calc(52vw /14);
  }
  .kv-ashiato02 img:nth-child(2) {
    top: calc(140vw /14);
  }
}
@media screen and (min-width: 1px) and (min-width: 768px) and (max-height: 780px) {
  .kv-ashiato02 {
    display: none;
  }
}

/* news
//* -------------------------------------------------- */
.news {
    overflow: hidden;
}
.news-swiper-wrap {
    position: relative;
    width: calc(680vw /7.5);
    padding: calc(40vw /7.5) 0 0;
    margin: 0 auto;
    background: url(./img/news_bg.svg) no-repeat;
    background-size: 100% auto;
}
.news-swiper {
    overflow: hidden;
    position: relative;
    width: calc(400vw /7.5)!important;
    margin-left: calc(220vw /7.5)!important;
    padding: calc(40vw /7.5) 0 calc(90vw /7.5)!important;
}
/* .news-swiper-prev,
.news-swiper-next {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: calc(40vw /7.5);
  height: calc(40vw /7.5);
  transform: translateY(-50%);
  cursor: pointer;
  transition: all .3s;
}
.news-swiper-prev {
  left: calc(-60vw /7.5);
}
.news-swiper-next {
  right: calc(-60vw /7.5);
}
.news-swiper-prev::before,
.news-swiper-next::before {
  content: "";
  display: block;
  width: calc(40vw /7.5);
  height: calc(40vw /7.5);
  background: url(./img/ico_arrow_red.svg) no-repeat;
  background-size: 100% auto;
}
.news-swiper-prev::before {
  transform: rotate(0deg);
}
.news-swiper-next::before {
  transform: rotate(180deg);
} */
.swiper-pagination-bullet {
    width: calc(17vw /7.5);
    height: calc(17vw /7.5);
    background: #091456;
    border: 1px solid #e4b647;
    opacity: 1;
    margin: 0 0.5em!important;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: #e4b647;
}
.news .swiper-pagination {
    bottom: calc(-10vw /7.5);
    left: calc(-80vw /7.5);
}
/* .news-box {
    width: calc(400vw /7.5)!important;
    padding: calc(40vw /7.5) calc(30vw /7.5) calc(80vw /7.5) calc(80vw /7.5)!important;
} */
.news-box-inner {
    color: #091456;
}
.news-box__date {
    font-size: calc(22vw/7.5);
    letter-spacing: .2em;
}
.news-box__text {
    font-size: calc(18vw/7.5);
    transition: all .3s;
    margin-top: 0.5em;
}

@media screen and (min-width: 1px) and (min-width: 900px) {
.news-swiper-wrap {
  width: calc(436vw /14);
  padding: calc(30vw /14) 0 0;
}
.news-swiper {
  width: calc(250vw / 14) !important;
  margin-left: calc(150vw / 14) !important;
  padding: calc(19vw / 14) 0 calc(60vw / 14) !important;
}
.swiper-pagination-bullet {
  width: calc(11vw /14);
  height: calc(11vw /14);
}
.news .swiper-pagination {
  bottom: calc(-5vw /14);
  left: calc(-60vw /14);
}
.news-box__date {
  font-size: calc(14vw /14);
}
.news-box__text {
  font-size: calc(11vw /14);
}
}


/* 足跡：main-ashiato
//* -------------------------------------------------- */
.main-ashiato {
  opacity: 0;
  transform: translateY(-12vh);
  pointer-events: none;
}
.main-ashiato img {
  opacity: 0;
  filter: blur(8px);
}
.main-ashiato img {
  width: calc(82vw / 7.5);
  position: absolute;
  display: block;
  opacity: 0;
}
.main-ashiato04,
.main-ashiato03,
.main-ashiato02,
.main-ashiato01 {
  height: calc(580vw /7.5);
  position: relative;
  margin: calc(80vw /7.5) auto 0;
}
.main-ashiato01 img:nth-child(1) {
  top: 0;
  left: 20%;
}
.main-ashiato01 img:nth-child(2) {
  top: calc(200vw / 7.5);
  left: 10%;
}
.main-ashiato01 img:nth-child(3) {
  top: calc(400vw / 7.5);
  left: 34%;
}

.main-ashiato02 img:nth-child(1) {
  top: 0;
  right: 10%;
}
.main-ashiato02 img:nth-child(2) {
  top: calc(220vw / 7.5);
  right: 15%;
}
.main-ashiato02 img:nth-child(3) {
  top: calc(400vw / 7.5);
  right: 30%;
}

.main-ashiato03 img:nth-child(1) {
  top: 0;
  left: 30%;
}
.main-ashiato03 img:nth-child(2) {
  top: calc(140vw / 7.5);
  left: 12%;
}
.main-ashiato03 img:nth-child(3) {
  top: calc(340vw / 7.5);
  left: 10%;
}

.main-ashiato04-wrap {
  height: calc(580vw /7.5);
  position: absolute;
  margin: 0;
  top: calc(-250vw /7.5);
  width: 100%;
}
.main-ashiato04 {
  margin: 0 auto;
}
.main-ashiato04 img:nth-child(1) {
  top: 0;
  left: 20%;
}
.main-ashiato04 img:nth-child(2) {
  top: calc(140vw / 7.5);
  left: 8%;
}
.main-ashiato04 img:nth-child(3) {
  top: calc(320vw / 7.5);
  left: 25%;
}

.main-ashiato00 {
  position: relative;
  width: 100%;
  height: calc(400vw / 7.5);
}
.main-ashiato00 img:nth-child(1) {
  top: 0;
  left: 10%;
}
.main-ashiato00 img:nth-child(2) {
  top: calc(190vw / 7.5);
  left: 25%;
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .main-ashiato img {
    width: calc(52vw /14);
  }
  .main-ashiato04,
  .main-ashiato03,
  .main-ashiato02,
  .main-ashiato01 {
    height: calc(325vw /14);
    margin: calc(60vw /14);
  }
  .main-ashiato01 img:nth-child(1) {
    top: 0;
    left: 10%;
  }
  .main-ashiato01 img:nth-child(2) {
    top: calc(125vw / 14);
    left: -6%;
  }
  .main-ashiato01 img:nth-child(3) {
    top: calc(250vw / 14);
    left: 15%;
  }
  .main-ashiato02 img:nth-child(1) {
    top: 0;
    right: 5%;
  }
  .main-ashiato02 img:nth-child(2) {
    top: calc(125vw / 14);
    right: 15%;
  }
  .main-ashiato02 img:nth-child(3) {
    top: calc(240vw / 14);
    right: 30%;
  }
  .main-ashiato03 img:nth-child(2) {
    top: calc(115vw / 14);
    left: 5%;
  }
  .main-ashiato03 img:nth-child(3) {
    top: calc(250vw / 14);
    left: -5%;
  }
  .main-ashiato04-wrap {
    height: calc(330vw / 14);
    top: calc(-190vw / 14);
  }
  .main-ashiato04 {
    margin: 0 auto;
  }
  .main-ashiato04 img:nth-child(2) {
    top: calc(120vw / 14);
  }
  .main-ashiato04 img:nth-child(3) {
    top: calc(240vw / 14);
  }
  .main-ashiato00 {
    height: calc(240vw / 14);
    margin: 0 0 calc(50vw / 14);
  }
  .main-ashiato00 img:nth-child(2) {
    top: calc(140vw /14);
  }
}

/* about
//* -------------------------------------------------- */
.about {
  position: relative;
  margin: calc(200vw / 7.5) auto;
  padding: calc(100vw / 7.5) 0;
}
.about::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots.svg) no-repeat;
  background-size: 100% auto;
  width: calc(450vw / 7.5);
  height: calc(14vw / 7.5);
  line-height: 1;
}
.about::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots.svg) no-repeat;
  background-size: 100% auto;
  width: calc(450vw / 7.5);
  height: calc(14vw / 7.5);
  line-height: 1;
}

.about-design {
  position: relative;
  overflow: hidden;
  height: calc(550vw / 7.5);
  width: calc(500vw / 7.5);
  margin: 0 auto;
}
.about-design-title {
  width: calc(478vw / 7.5);
  margin: 0 auto;
  pointer-events: none;
  position: absolute;
  opacity: 0;
}
.is-state_scroll .about-design-title {
  animation: aboutDesignImgImg 0.2s 1.5s forwards ease-in;
}
@keyframes aboutDesignImgImg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.about-design-img {
  position: relative;
  height: calc(400vw / 7.5);
  width: calc(421vw / 7.5);
  margin: calc(127vw / 7.5) auto 0;
}
.about-design-img img {
  opacity: 0;
}
.about-design-img__bg {
  transform: translateY(100%);
  width: calc(391vw / 7.5);
}
.is-state_scroll .about-design-img__bg {
  animation: aboutDesignImgBg 1.5s forwards ease-in;
}
@keyframes aboutDesignImgBg {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  60% {
    opacity: 1;
    transform: translateY(0%);
  }
  70% {
    opacity: 1;
    transform: translateY(0%);
  }
  100% {
    opacity: 0;
    transform: translateY(0%);
  }
}
.about-design-img__img {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: calc(391vw / 7.5);
}
.is-state_scroll .about-design-img__img {
  animation: aboutDesignImgImg 0.5s 1s forwards ease-in;
}
@keyframes aboutDesignImgImg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.about-design-img__shadow {
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(-25vw / 7.5);
  width: calc(421vw / 7.5);
}
.is-state_scroll .about-design-img__shadow {
  animation: aboutDesignImgShadow 0.5s 2s forwards ease-in;
}
@keyframes aboutDesignImgShadow {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


.about-taste {
  position: relative;
  margin: calc(200vw / 7.5) auto 0;
  padding-bottom: calc(50vw / 7.5);
  color: #fff;
}
.about-taste__img {
  position: relative;
  width: calc(580vw / 7.5);
  margin: 0 0 0 calc(50vw /7.5);
  display: flex;
  justify-content: flex-end;
  z-index: 2;
  opacity: 0;
  transform: scale(0.3);
  transform-origin: center center;
}
.about-taste__text01,
.about-taste__text02,
.about-taste__text03 {
  position: absolute;
  z-index: 3;
  opacity: 1;
}
.about-taste__text01 {
  top: calc(-138vw / 7.5);
  right: calc(54vw / 7.5);
}
.about-taste__text02 {
  right: calc(20vw / 7.5);
  top: calc(370vw / 7.5);
}
.about-taste__text03 {
  left: calc(27vw / 7.5);
  top: calc(-52vw / 7.5);
}
.about-taste__text01 p,
.about-taste__text02 p,
.about-taste__text03 p {
  margin: 0;
  opacity: 0;
  transform: translateY(calc(12vw / 7.5)) scale(0.96);
  font-size: calc(21vw /7.5);
  letter-spacing: 0.2em;
}
.about-taste__dot {
  position: absolute;
  width: calc(10vw / 7.5);
  height: calc(10vw / 7.5);
  background-color: #fff;
  border-radius: 50%;
  opacity: 0;
  transform: scale(0);
  z-index: 4;
}
.about-taste__text01 .about-taste__dot {
  bottom: calc(-59vw / 7.5);
  left: calc(-87vw / 7.5);
}
.about-taste__text02 .about-taste__dot {
  top: calc(-165vw / 7.5);
  right: calc(351vw / 7.5);
}
.about-taste__text03 .about-taste__dot {
  top: calc(192vw / 7.5);
  left: calc(260vw / 7.5);
}
  
.about-taste__line {
  position: absolute;
  pointer-events: none;
  z-index: 3;
}
.about-taste__line span {
    position: absolute;
    display: block;
    height: 1px;
    background: #fff;
    opacity: 0;
    transform: scaleX(0) rotate(var(--line-rotate));
}
.about-taste__text01 .about-taste__line {
  left: calc(-77vw / 7.5);
  bottom: calc(-51vw / 7.5);
  width: calc(60vw / 7.5);
  height: calc(90vw / 7.5);
}
.about-taste__text01 .about-taste__line span:nth-child(1) {
  --line-rotate: -90deg;
  width: calc(102vw / 7.5);
  left: calc(-5vw / 7.5);
  bottom: 0;
  transform-origin: left center;
}
.about-taste__text01 .about-taste__line span:nth-child(2) {
  --line-rotate: 0deg;
  width: calc(60vw / 7.5);
  left: calc(-5vw / 7.5);
  top: calc(-15vw / 7.5);
  transform-origin: left center;
} 
.about-taste__text02 .about-taste__line {
  right: calc(294vw / 7.5);
  top: calc(-150vw / 7.5);
  width: calc(65vw / 7.5);
  height: calc(235vw / 7.5);
}
.about-taste__text02 .about-taste__line span:nth-child(1) {
  --line-rotate: 90deg;
  width: calc(215vw / 7.5);
  right: calc(-46vw / 7.5);
  top: calc(97vw / 7.5);
}
.about-taste__text02 .about-taste__line span:nth-child(2) {
  --line-rotate: 0deg;
  width: calc(74vw / 7.5);
  right: calc(-12vw / 7.5);
  top: calc(203vw / 7.5);
  transform-origin: left center;
}
.about-taste__text03 .about-taste__line {
  left: calc(198vw / 7.5);
  top: calc(21vw / 7.5);
  width: calc(60vw / 7.5);
  height: calc(180vw / 7.5);
}
.about-taste__text03 .about-taste__line span:nth-child(1) {
  --line-rotate: -90deg;
  width: calc(183vw / 7.5);
  left: calc(66vw / 7.5);
  bottom: calc(2vw / 7.5);
  transform-origin: left top;
}
.about-taste__text03 .about-taste__line span:nth-child(2) {
  --line-rotate: 0deg;
  width: calc(72vw / 7.5);
  left: calc(-5vw / 7.5);
  top: calc(-7vw / 7.5);
  transform-origin: right center;
}

.is-state_scroll.about-taste::after {
    animation: fadeUpAnime 0.6s .4s ease-out forwards;
}
.is-state_scroll .about-taste__img {
    animation: fadeUpAnime 0.6s .8s ease-out forwards;
}
.is-state_scroll .about-taste__dot {
    animation: tasteDotBlink 0.2s 1.2s ease-in-out 1 forwards;
}
.is-state_scroll .about-taste__line span:nth-child(1) {
    animation: tasteLineShow 0.2s 1.4s ease-out forwards;
}
.is-state_scroll .about-taste__line span:nth-child(2) {
    animation: tasteLineShow 0.2s 1.6s ease-out forwards;
}
.is-state_scroll .about-taste__text01 p,
.is-state_scroll .about-taste__text02 p,
.is-state_scroll .about-taste__text03 p {
    animation: tasteTextShow 0.32s 1.8s ease-out forwards;
}
@keyframes tasteUpIn {
    0% {
      transform: translateY(50px);
      filter: blur(18px);
    }
    70% {
      opacity: 1;
    }
    100% {
      opacity: 1;
      transform: translateY(0em);
    }
}
@keyframes tasteDotBlink {
    0% {
      opacity: 0;
      transform: scale(0);
    }
    35% {
      opacity: 1;
      transform: scale(1.35);
    }
    65% {
      opacity: 0.25;
      transform: scale(0.75);
    }
    100% {
      opacity: 1;
      transform: scale(1);
    }
}
@keyframes tasteLineShow {
    0% {
      opacity: 1;
      transform: scaleX(0) rotate(var(--line-rotate));
    }
    100% {
      opacity: 1;
      transform: scaleX(1) rotate(var(--line-rotate));
    }
} 
@keyframes tasteTextShow {
    0% {
      opacity: 0;
      transform: translateY(calc(12vw / 7.5)) scale(0.96);
    }
    100% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .about-btn a:hover {
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
  }

  .about {
    margin: calc(140vw /14) auto;
    padding: calc(90vw /14) 0;
  }
  .about::before {
    width: calc(288vw /14);
    height: calc(10vw /14);
  }
  .about::after {
    width: calc(288vw /14);
    height: calc(10vw /14);
  }
  
  .about-design {
    height: calc(380vw /14);
    width: calc(336vw /14);
  }
  .about-design-title {
    width: calc(300vw /14);
  }
  .about-design-img {
    height: calc(260vw /14);
    width: calc(276vw /14);
    margin: calc(100vw /14) auto 0;
  }
  .about-design-img__bg {
    width: calc(258vw /14);
  }
  .about-design-img__img {
    width: calc(258vw /14);
  }
  .about-design-img__shadow {
    bottom: calc(-16vw / 14);
    width: calc(278vw / 14);
  }
  .about-taste {
    margin: calc(180vw /14) auto 0;
    padding-bottom: calc(30vw /14);
  }
  .about-taste__img {
    width: calc(380vw /14);
    margin: 0 0 0 calc(30vw /14);
  }
  .about-taste__text01 {
    top: calc(-124vw / 14);
    right: calc(12vw / 14);
  }
  .about-taste__text02 {
    right: calc(14vw / 14);
    top: calc(252vw / 14);
  }
  .about-taste__text03 {
    left: calc(17vw / 14);
    top: calc(-30vw / 14);
  }
  .about-taste__text01 p,
  .about-taste__text02 p,
  .about-taste__text03 p {
    font-size: calc(14vw /14);
  }
  .about-taste__dot {
    width: calc(7vw /14);
    height: calc(7vw /14);
  }
  .about-taste__text01 .about-taste__dot {
    bottom: calc(-77vw / 14);
    left: calc(-50vw / 14);
  }
  .about-taste__text02 .about-taste__dot {
    top: calc(-127vw / 14);
    right: calc(207vw / 14);
  }
  .about-taste__text03 .about-taste__dot {
    top: calc(125vw / 14);
    left: calc(165vw / 14);
  }
  .about-taste__line span {
    height: calc(1.6vw /14);
  }
  .about-taste__text01 .about-taste__line {
    left: calc(-44vw / 14);
    bottom: calc(-72vw / 14);
    width: calc(35vw / 14);
    height: calc(110vw / 14);
  }
  .about-taste__text01 .about-taste__line span:nth-child(1) {
    width: calc(108vw / 14);
    left: calc(-2.8vw / 14)
  }
  .about-taste__text01 .about-taste__line span:nth-child(2) {
    width: calc(38vw / 14);
    left: calc(-3vw / 14);
    top: calc(0vw / 14);
  } 
  .about-taste__text02 .about-taste__line {
    right: calc(174vw / 14);
    top: calc(-120vw / 14);
    width: calc(40vw / 14);
    height: calc(158vw / 14);
  }
  .about-taste__text02 .about-taste__line span:nth-child(1) {
    width: calc(156vw / 14);
    right: calc(-41vw / 14);
    top: calc(76vw / 14);
  }
  .about-taste__text02 .about-taste__line span:nth-child(2) {
    width: calc(35vw / 14);
    right: calc(3vw / 14);
    top: calc(154vw / 14);
  }
  .about-taste__text03 .about-taste__line {
    left: calc(123vw / 14);
    top: calc(7vw / 14);
    width: calc(45vw / 14);
    height: calc(120vw / 14);
  }
  .about-taste__text03 .about-taste__line span:nth-child(1) {
    width: calc(117vw / 14);
    left: calc(45vw / 14);
    bottom: calc(-1vw / 14);
  }
  .about-taste__text03 .about-taste__line span:nth-child(2) {
    width: calc(38vw / 14);
    left: calc(8vw / 14);
    top: calc(2vw / 14);
  }
  @keyframes tasteTextShow {
      0% {
        opacity: 0;
        transform: translateY(12px) scale(0.96);
      }
      100% {
        opacity: 1;
        transform: translateY(0) scale(1);
      }
  }
}



/* lineup
//* -------------------------------------------------- */
.lineup {
    padding: calc(50vw /14) 0 0;
    position: relative;
    z-index: 1;
}
.lineup-anclink {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 86%;
    margin: calc(180vw /7.5) auto 0;
}
.lineup-anclink li {
    width: 46%;
    text-align: center;
}
.lineup-anclink li:nth-child(n+3) {
  margin-top: calc(120vw /7.5);
}
.lineup-anclink figure {
    position: relative;
}
.lineup-anclink figcaption {
    position: absolute;
    top: calc(10vw /7.5);
    right: calc(10vw /7.5);
    width: calc(92vw /7.5);
}
.lineup-anclink p {
  font-size: calc(30vw / 7.5);
  font-weight: bold;
  margin: calc(40vw / 7.5) auto 0;
  line-height: 1.5;
}
.lineup-anclink p span {
  font-size: calc(24vw /7.5);
  display: block;
  margin-bottom: 0.5em;
}
.lineup-anclink rt {
  font-size: 0.35em;
}
.lineup-anclink .u-hoverButton {
  padding: 1em 0;
  font-size: calc(22vw / 7.5);
  width: 100%;
  border-radius: 2em;
  margin: calc(20vw / 7.5) auto 0;
  letter-spacing: 0.2em;
  text-align: left;
  text-indent: 2em;
  color: #000;
}


.lineup-main {
    padding-bottom: calc(280vw / 7.5);
}
.lineup-block01 {
    margin: calc(250vw / 7.5) auto 0;
}
.lineup-title {
  font-size: calc(60vw / 7.5);
  text-align: center;
  border-bottom: 1px solid;
  width: fit-content;
  margin: 0 auto;
  letter-spacing: 0.2em;
  padding-bottom: calc(30vw / 7.5);
  line-height: 1.4;
}
.lineup-title rt {
  font-size: 0.35em;
}
.lineup-title__sub {
  font-size: calc(40vw / 7.5);
  margin-top: 1em;
  text-align: center;
}
.lineup-title__cap {
  font-size: calc(48vw / 7.5);
  margin-bottom: 0.8em;
  line-height: 1;
  display: block;
}
.lineup-title__sm {
  font-size: calc(36vw / 7.5);
  display: block;
  margin-top: 0.5em;
}
.lineup-message {
  font-size: calc(36vw / 7.5);
  text-align: center;
  background-color: #e95a3e;
  color: #fff;
  width: fit-content;
  border-radius: 2em;
  margin: calc(80vw / 7.5) auto 0;
  padding: 0.5em 1.2em;
  letter-spacing: 0.2em;
  text-indent: 0.6em;
}
.lineup-leadtext {
  font-size: calc(28vw / 7.5);
  line-height: 3;
  text-align: center;
  margin: calc(120vw / 7.5) auto 0;
}

.lineup-lists > li {
  margin: calc(80vw / 7.5) auto 0;
}
.lineup-price {
  font-size: calc(60vw / 7.5);
  line-height: 1;
  position: relative;
  font-weight: 600;
  text-align: center;
  margin: calc(40vw / 7.5) auto 0;
  letter-spacing: 0.2em;
  width: fit-content;
}
.lineup-price span {
  font-size: calc(26vw / 7.5);
  letter-spacing: 0.25em;
}
.lineup-price .lineup-caption {
  display: block;
  margin: 1.5em 0 0;
  width: fit-content;
  background-color: #d9a72f;
  color: #fff;
  padding: 0.6em 1em;
  letter-spacing: 0.18em;
  font-weight: normal;
}
.lineup-box {
  margin: calc(120vw / 7.5) auto 0;
}
.lineup-box a {
  margin: calc(40vw / 7.5) auto 0;
  width: calc(404vw / 7.5);
  font-size: calc(22vw / 7.5);
  color: #000;
  padding: 14px 0;
}
.lineup-box .caution-lists {
  font-size: calc(25vw / 7.5);
  width: calc(404vw / 7.5);
  margin: calc(90vw / 7.5) auto 0;
  line-height: 1.6;
  font-weight: 400;
}
.lineup-slider {
    position: relative;
}
.lineup-box-bnr {
  margin: calc(120vw / 7.5) auto;
  width: calc(396vw /7.5);
}
.lineup-attention {
  font-size: calc(22vw / 7.5);
  margin: 1em auto 0;
  width: fit-content;
  font-weight: normal;
}
.lineup-attention a {
  text-decoration: underline;
  display: inline;
  color: #e4b647;
  padding: 0;
}
@media screen and (min-width: 1px) and (min-width: 900px) {
.lineup {
  padding: calc(0vw /14) 0 0;
}
.lineup-anclink {
    margin: calc(120vw /14) auto 0;
}
.lineup-anclink li:nth-child(n+3) {
  margin-top: calc(100vw /14);
}
.lineup-anclink figcaption {
    top: calc(10vw /14);
    right: calc(10vw /14);
    width: calc(60vw /14);
}
.lineup-anclink p {
  font-size: calc(19vw /14);
  margin: calc(30vw /14) auto 0;
}
.lineup-anclink p span {
  font-size: calc(15vw /14);
}
.lineup-anclink rt {
  margin-top: -1.5em;
}
.lineup-anclink .u-hoverButton {
  font-size: calc(14vw /14);
  margin: calc(20vw /14) auto 0;
}
.lineup-anclink a:hover .u-hoverButton {
  background: #091456;
  color: #fff;
}

.lineup-main {
    padding-bottom: calc(220vw /14);
}
.lineup-block01 {
    margin-top: calc(200vw /14);
}
.lineup-title {
  font-size: calc(39vw /14);
  padding-bottom: calc(20vw /14);
}
.lineup-title rt {
  margin-top: -1.5em;
}
.lineup-title__sub {
  font-size: calc(20vw / 14);
}
.lineup-title__cap {
  font-size: calc(30vw /14);
}
.lineup-title__sm {
  font-size: calc(23vw /14);
}
.lineup-message {
  font-size: calc(23vw /14);
  margin:  calc(50vw /14) auto 0;
}
.lineup-leadtext {
  font-size: calc(18vw /14);
  margin: calc(70vw /14) auto 0;
}

.lineup-lists > li {
  margin: calc(50vw /14) auto 0;
}
.lineup-price {
  font-size: calc(35vw /14);
  margin: calc(20vw /14) auto 0;
}
.lineup-price span {
  font-size: calc(17vw /14);
}
.lineup-attention {
  font-size: calc(15vw /14);
}

.lineup-box {
  margin: calc(80vw /14) auto 0;
}
.lineup-box a {
  margin: calc(30vw /14) auto 0;
  width: calc(260vw /14);
  font-size: calc(14vw /14);
}
.lineup-box a:hover {
  color: #fff;
  background-color: #091456;
}
.lineup-box a:hover .u-plus:before,.lineup-box a:hover  .u-plus:after {
  background:#fff;
}
.lineup-box .caution-lists {
  font-size: calc(16vw /14);
  width: calc(260vw /14);
  margin: calc(50vw /14) auto 0;
}
.lineup-box-bnr {
  margin: calc(80vw /14) auto;
  width: calc(254vw /14);
}
.lineup-attention a {
  font-size: calc(16vw / 14);
  width: fit-content;
}
}
    
/* lineup slider
//* -------------------------------------------------- */
.lineup-slider {
  position: relative;
  overflow: visible;
}
.itemSlider {
  position: relative;
  overflow: hidden;
  padding: calc(70vw /7.5) 0;
}
.itemSlider-mainWrap {
  position: relative;
  width: min(89vw, 430px);
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  border-radius: 50%;
  background: none;
  opacity: 0;
  transform: translateY(120%);
  transition: transform 1s .3s ease-out, opacity 1.2s .4s ease-in;
  opacity: 0;
}
.lineup-slider.is-state_scroll .itemSlider-mainWrap {
  opacity: 1;
  transform: translateY(0);
}

/* 後光 */
.itemSlider-mainWrap::before {
  content: "";
  position: absolute;
  inset: -9%;
  z-index: 0;
  border-radius: 50%;
  background: url("./img/bg_item_goko.png") center / cover no-repeat;
  opacity: 0;
  transform: scale(.95);
  transition: opacity 0.8s ease 2.2s, transform 0.8s ease 2.2s;
  pointer-events: none;
}
.lineup-slider.is-state_scroll .itemSlider-mainWrap::before {
  opacity: 1;
  transform: scale(1);
}

/* 丸背景 */
.itemSlider-mainWrap::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 50%;
  background: url("./img/bg_item.png") center / cover no-repeat;
  pointer-events: none;
}

.itemSlider-main {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  opacity: 0;
  filter: blur(12px);
  transform: scale(.96);
  transition: opacity .8s ease 1.5s, filter .8s ease 1.5s, transform .8s ease 1.5s;
}
.lineup-slider.is-state_scroll .itemSlider-main {
  opacity: 1;
  filter: blur(0);
  transform: scale(1);
}
.itemSlider-main .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.itemSlider-main img {
  display: block;
  width: 100%;
  height: auto;
}

.itemSlider-moonshadow {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100.5%;
  max-width: 100.5%;
  height: auto;
  pointer-events: none;
  opacity: 0;
  filter: blur(12px);
  opacity: 0;
  transition: opacity .8s ease 3s, filter .8s ease 3s, transform .8s ease 3s;
}
.lineup-slider.is-state_scroll .itemSlider-moonshadow {
  opacity: 1;
  filter: blur(0);
}

.itemSlider-moonWrap {
  position: relative;
  display: block;
  overflow: hidden;
}
.itemSlider-moon {
  position: relative;
  z-index: 1;
  display: block;
}
.itemSlider-moonShine {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  pointer-events: none;
  clip-path: ellipse(48% 20% at 50% 50%);
}
/* .itemSlider-moonShine__line {
  fill: rgba(255, 255, 255, .75);
  filter: blur(10px);
  transform: skewX(-25deg);
  animation: moonShine 3.2s ease-in-out infinite;
}
@keyframes moonShine {
  0% {
    transform: translateX(-120%) skewX(-25deg);
    opacity: 0;
  }
  18% {
    opacity: .9;
  }
  38% {
    transform: translateX(260%) skewX(-25deg);
    opacity: 0;
  }
  100% {
    transform: translateX(260%) skewX(-25deg);
    opacity: 0;
  }
} */

.itemSlider-arrow {
  position: absolute;
  top: 50%;
  z-index: 20;
  width: calc(22vw /7.5);
  height: calc(22vw /7.5);
  border: 0;
  border-top: 2px solid #d9a72f;
  border-right: 2px solid #d9a72f;
  background: transparent;
  cursor: pointer;
  opacity: 0;
  filter: blur(12px);
  transition: opacity .8s ease 4s, filter .8s ease 4s, transform .8s ease .9s;
}
.lineup-slider.is-state_scroll .itemSlider-arrow {
  opacity: 1;
  filter: blur(0);
}
.itemSlider-arrow--prev {
  left: 7%;
  transform: translateY(-50%) rotate(-135deg);
}
.itemSlider-arrow--next {
  right: 7%;
  transform: translateY(-50%) rotate(45deg);
}

.itemSlider-pagination {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10%!important;
  z-index: 20;
  display: flex;
  justify-content: center;
  gap: 10px;
  opacity: 0;
  filter: blur(12px);
  transition: opacity .8s ease 4s, filter .8s ease 4s, transform .8s ease .9s;
}
.lineup-slider.is-state_scroll .itemSlider-pagination {
  opacity: 1;
  filter: blur(0);
}
.itemSlider-pagination .swiper-pagination-bullet {
  display: block;
  width: calc(13vw /7.5);
  height: calc(13vw /7.5);
  margin: 0 !important;
  border: 1px solid #d9a72f;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
}
.itemSlider-pagination .swiper-pagination-bullet-active {
  background: #d9a72f;
}
.lineup-slider.is-state_scroll + .lineup-box {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .itemSlider {
    padding: calc(50vw /14) 0;
  }
  .itemSlider-mainWrap {
    width: 96%;
  }
  .itemSlider-arrow {
    width: calc(18vw /14);
    height: calc(18vw /14);
  }
  .itemSlider-pagination .swiper-pagination-bullet {
    width: calc(9vw /14);
    height: calc(9vw /14);
  }
}

/* shopbag
//* -------------------------------------------------- */
.shopbag {
  position: relative;
  text-align: center;
  margin: calc(180vw / 7.5) auto calc(90vw / 7.5);
  padding: calc(100vw / 7.5) 0 calc(100vw / 7.5);
}
.shopbag::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots.svg) no-repeat;
  background-size: 100% auto;
  width: calc(450vw / 7.5);
  height: calc(14vw / 7.5);
  line-height: 1;
}
.shopbag::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots.svg) no-repeat;
  background-size: 100% auto;
  width: calc(450vw / 7.5);
  height: calc(14vw / 7.5);
  line-height: 1;
}
.shopbag-title01 {
  font-size: calc(48vw /7.5);
  line-height: 1;
  color: #fff;
  letter-spacing: 0.2em;
}
.shopbag-title01 span {
  position: relative;
  display: block;
  line-height: 1;
  width: fit-content;
  margin: 0.8em auto 0;
}
.shopbag-title01 .shopbag-title01__01::after {
  position: absolute;
  content: '';
  bottom: -0.3em;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots_red.svg) repeat-x;
  background-size: 100% auto;
  width: 100%;
  height: calc(3vw / 4.5);
  line-height: 1;
}

.shopbag-title01 .shopbag-title01__02::after {
  position: absolute;
  content: '';
  bottom: -0.3em;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots_red2.svg) repeat-x;
  background-size: 100% auto;
  width: 100%;
  height: calc(3vw / 4.5);
  line-height: 1;
}

.shopbag-title02 {
  font-size: calc(32vw /7.5);
  margin-top: calc(50vw /7.5);
  color: #fff;
  letter-spacing: 0.2em;
}

.shopbag-design {
  position: relative;
  margin: calc(200vw / 7.5) auto 0;
}
.shopbag-design-title {
  width: calc(568vw / 7.5);
  margin: auto;
  pointer-events: none;
  position: absolute;
  left: calc(81vw / 7.5);
  top: calc(-110vw / 7.5);
  opacity: 0;
}

.shopbag-design-title p {
  font-gothic: 'm-plus-1p';
}

.is-state_scroll .shopbag-design-title {
  animation: shopbagDesignTitle 0.3s 1s forwards ease-in;
}
@keyframes shopbagDesignTitle {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.shopbag-design-img img {
  opacity: 0;
}
.shopbag-design-img__bg {
  width: calc(470vw / 7.5);
  margin: 0 auto;
}
.is-state_scroll .shopbag-design-img__bg {
  animation: shopbagDesignImgBg 0.3s forwards ease-in;
}
@keyframes shopbagDesignImgBg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.shopbag-design-img__img {
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(-44vw / 7.5);
  margin: auto;
  width: calc(472vw / 7.5);
  opacity: 0;
}
.is-state_scroll .shopbag-design-img__img {
  animation: shopbagDesignImgImg 0.5s 0.5s forwards ease-in;
}
@keyframes shopbagDesignImgImg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.shopbag-attention {
  width: calc(586vw /7.5);
  text-align: left;
  margin: 5em auto 0;
}

@media screen and (min-width: 1px) and (min-width: 900px) {
  .shopbag {
    margin: calc(140vw /14) auto calc(80vw /14);
    padding: calc(70vw /14) 0 calc(90vw /14);
  }
  .shopbag::before {
    width: calc(288vw /14);
    height: calc(7vw /14);
  }
  .shopbag::after {
    width: calc(288vw /14);
    height: calc(7vw /14);
  }
  .shopbag-title01 {
    font-size: calc(30vw /14);
  }
  .shopbag-title01 span::after {
    height: calc(7vw /14);
  }
  .shopbag-title02 {
    font-size: calc(21vw /14);
    margin-top: calc(30vw /14);
  }
  
  .shopbag-design {
    margin: calc(130vw /14) auto 0;
  }
  .shopbag-design-title {
    width: calc(350vw /14);
    left: calc(60vw /14);
    top: calc(-72vw /14);
  }
  .shopbag-design-img__bg {
    width: calc(300vw /14);
  }
  .shopbag-design-img__img {
    bottom: calc(-23vw / 14);
    width: calc(297vw / 14);
  }
  .shopbag-attention {
    width: calc(370vw /14);
  }
}

.lineup-main > .caution-lists {
  width: 88%;
  margin: 0 auto;
}
@media screen and (min-width: 900px) {
  .lineup-main > .caution-lists {
    width: 94%;
  }
}

/* shop
//* -------------------------------------------------- */
.shop {
  position: relative;
  background-color: #fff;
  padding: calc(200vw /7.5) 0 0;
}
.shop-img {
  margin-top: calc(100vw /7.5);
}

.shop-content {
  background-color: var(--brand-cream);
  padding: calc(100vw /7.5) 0 calc(100vw /7.5);
  text-align: center;
  color: #000;
}
.shop-content-title {
  font-size: calc(60vw /7.5);
  letter-spacing: 0.2em;
  font-weight: bold;
}
.shop-content-logo {
  width: calc(291vw /7.5);
  margin: calc(50vw /7.5) auto 0;
}

.shop-content-map {
  margin: calc(100vw /7.5) auto 0;
  width: 90%;
}
.shop-content-address {
  font-size: calc(30vw /7.5);
  margin: calc(30vw /7.5) auto 0;
}
.shop-content-address span {
  font-size: calc(23vw /7.5);
  display: block;
  margin: 0 auto;
}
.shop-hours {
  margin: calc(30vw /7.5) auto 0;
  padding-top: calc(30vw /7.5);
  width: fit-content;
  position: relative;
  font-size: calc(30vw /7.5);
}
.shop-hours::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(./img/line_dots.svg) no-repeat;
  background-size: 100% auto;
  width: calc(450vw / 7.5);
  height: calc(10vw / 7.5);
  line-height: 1;
}
.shop-hours td {
  padding-left: 1em;
}
.shop .u-hoverButton {
  font-size: calc(32vw /7.5);
  margin: calc(30vw /7.5) auto calc(50vw /7.5);
}
.shop .u-hoverButton__map {
  margin: calc(100vw /7.5) auto calc(0vw /7.5);
  color: #fff;
  background-color: var(--brand-blue);
  font-size: calc(32vw /7.5);
  letter-spacing: 0.2em;
  text-align: left;
  text-indent: 1.5em;
}
.shop .u-hoverButton__map::after {
  position: absolute;
  content: '';
  right: 1.5em;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(./img/ico_map.svg) center bottom no-repeat;
  background-size: contain;
  width: calc(32vw / 7.5);
  height: calc(43vw / 7.5);
}



@media screen and (min-width: 1px) and (min-width: 900px) {
  .shop {
    padding: calc(110vw /14) 0 0;
  }
  .shop-img {
    margin-top: calc(60vw /14);
  }
  .shop-content {
    padding: calc(70vw /14) 0 calc(70vw /14);
  }
  .shop-content-title {
    font-size: calc(39vw /14);
  }
  .shop-content-logo {
    width: calc(187vw /14);
    margin: calc(50vw /14) auto 0;
  }
  
  .shop-content-map {
    margin: calc(70vw /14) auto 0;
  }
  .shop-content-address {
    font-size: calc(20vw /14);
    margin: calc(20vw /14) auto 0;
  }
  .shop-content-address span {
    font-size: calc(15vw /14);
  }
  .shop-hours {
    margin: calc(20vw /14) auto 0;
    padding-top: calc(20vw /14);
    font-size: calc(20vw /14);
  }
  .shop-hours::before {
    width: calc(289vw /14);
    height: calc(10vw /14);
  }
  .shop .u-hoverButton {
    margin: calc(20vw /14) auto calc(50vw /14);
    font-size: calc(20vw /14);
  }
  .shop .u-hoverButton:hover {
    background-color: var(--brand-blue);
    color: #fff;
  }
  .shop .u-hoverButton__map {
    margin: calc(70vw /14) auto calc(0vw /14);
    font-size: calc(20vw /14);
  }
  .shop .u-hoverButton__map::after {
    width: calc(21vw /14);
    height: calc(28vw /14);
    transition: .3s all;
  }
  .shop .u-hoverButton__map:hover {
    background-color: #fff;
    color: #091456;
  }
  .shop .u-hoverButton__map:hover::after {
    background: url(./img/ico_map_on.svg) center bottom no-repeat;
    background-size: contain;
  }
}

/* link
//* -------------------------------------------------- */
.link {
  position: relative;
  padding: calc(120vw /7.5) 0 calc(120vw /7.5);
  overflow: hidden;
  background-color: var(--brand-yellow);
}
.link .c-heading {
  color: #091456;
}
.link-bnrs {
  margin: calc(80vw / 7.5) auto 0;
}
.link-bnrs li {
  margin: calc(50vw / 7.5) auto 0;
}
.link-bnrs a {
  margin: 0 auto;
  background: #fff;
  border-radius: 4em;
  width: calc(559vw /7.5);
  height: calc(97vw /7.5);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
  color: #000;
}
.link-bnrs a::after {
  position: absolute;
  content: '';
  right: 2em;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(./img/ico_arrow.svg) center bottom no-repeat;
  background-size: contain;
  width: calc(44vw / 7.5);
  height: calc(44vw / 7.5);
}
.link-bnrs #svgA {
  width: calc(336vw /7.5);
  margin-left: -2em;
}
.link-bnrs p {
  font-weight: 700;
  font-size: calc(32vw/ 7.5);
  letter-spacing: .1em;
  text-indent: -1em;
}
.link-snss {
  display: flex;
  justify-content: center;
  margin: calc(100vw / 7.5) auto 0;
}
.link-snss li {
  margin: 0 calc(40vw /7.5);
}
.link-snss a {
  background: #fff;
  border-radius: 50%;
  width: calc(170vw /7.5);
  height: calc(170vw /7.5);
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all 0.3s;
}
.link-snss #svgX {
  width: calc(86vw /7.5);
}
.link-snss #svgInsta {
  width: calc(99vw /7.5);
}
@media screen and (min-width: 1px) and (min-width: 900px) {
  .link-bnrs a:hover {
    background: var(--brand-blue);
    color: #fff;
  }
  .link-snss a:hover {
    background: var(--brand-blue);
  }
  .link {
    padding: calc(90vw /14) 0 calc(90vw /14);
  }
  .link-bnrs {
    margin: calc(50vw /14) auto 0;
  }
  .link-bnrs li {
    margin: calc(30vw /14) auto 0;
  }
  .link-bnrs a {
    width: calc(359vw /14);
    height: calc(68vw /14);
  }
  .link-bnrs a::after {
    width: calc(20vw /14);
    height: calc(20vw /14);
  }
  .link-bnrs #svgA {
    width: calc(228vw /14);
  }
  .link-bnrs li:nth-child(1) a:hover #svgA {
    fill: #fff;
  }
  .link-bnrs p {
    font-size: calc(19vw /14);
  }
  .link-snss {
    margin: calc(80vw /14) auto 0;
  }
  .link-snss li {
    margin: 0 calc(20vw /14);
  }
  .link-snss a {
    width: calc(107vw /14);
    height: calc(107vw /14);
  }
  .link-snss #svgX {
    width: calc(52vw /14);
  }
  .link-snss #svgInsta {
    width: calc(60vw /14);
  }
  .link-snss a:hover svg {
    fill: #fff;
  }
}





/* footer
//* -------------------------------------------------- */
.g-footer {
  position: relative;
}
/* .g-footer .caution-lists {
  font-size: calc(24vw /14);
  width: fit-content;
  margin: calc(110vw /14) auto 0;
}
.g-footer .caution-lists a {
  display: inline;
} */
.g-footer-logo {
  background: var(--brand-blue);
  padding: calc(50vw /7.5) 0;
}
.g-footer-logo a {
  transition: all .3s;
  width: calc(196vw /7.5);
  margin: 0 auto;
}


.contact {
 width: 80%;
 text-align: center;
 margin: auto;
 padding: 10px;
 font-size: 11px;
 border: solid 0.5px #fff;
 color: #fff;
}

.contact a span:before {
	display: inline-block;
	content: '';
	width: 1.2em;
	height: 1.2em;
	background: url(./img/ico_freetel.png) no-repeat center bottom 0px;
	background-size: 100% auto;
	margin-right: 0.5em;
}


.g-footer-copy {
  padding: calc(50vw /7.5) 0;
}
.g-footer-copy a {
  /* width: calc(400vw /7.5); */
  font-size: calc(20vw /7.5);
  color: rgba(255, 255, 255, 0.9);
  margin: 0 auto;
  text-align: center;
  font-weight: normal;
}

@media screen and (min-width: 768px) {
  .g-footer-copy a:hover,
  .g-footer-logo a:hover {
    transform: scale(1.03);
  }
  .g-footer-logo {
    padding: calc(40vw /14) 0;
  }
  .g-footer-logo a {
    width: calc(125vw /14);
  }
  .g-footer-copy {
    padding: calc(20vw /14) 0;
  }
  .g-footer-copy a {
    /* width: calc(256vw /14); */
    font-size: calc(12vw /14);
  }
}
