@charset "UTF-8";
/* -----------------------------------------------------------------------
## common ##################################################
----------------------------------------------------------------------- */
.p-top_ym {
  background: url(../images/top/bg_sp.webp) no-repeat center top/cover;
}

/* -----------------------------------------------------------------------
## kv ##################################################
----------------------------------------------------------------------- */
.p-kv_ym {
  position: relative;
  background: url(../images/top/bg_kv_sp.jpg) no-repeat center bottom/cover;
}

.p-kv__inner_ym {
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 700px;
  min-height: calc(420/375 * 100vw);
  padding-bottom: calc(140/375 * 100vw);
  margin: auto;
}

.p-kv__logo_ym {
  position: absolute;
  top: min(3.8167938931vw + 10.6870229008px, 40px);
  right: max(-6.3613231552vw + 48.8549618321px, 0px);
  width: min(6.106870229vw + 41.0992366412px, 88px);
  height: min(6.106870229vw + 41.0992366412px, 88px);
}

.p-kv__fukidashi_ym {
  position: absolute;
  top: min(3.3078880407vw + 32.5954198473px, 58px);
  left: max(-17.8117048346vw + 136.7938931298px, 0px);
  width: min(41.2213740458vw + -14.5801526718px, 302px);
  height: min(11.4503816794vw + 22.0610687023px, 110px);
  font-size: min(2.0356234097vw + 6.3664122137px, 22/16 * 1rem);
  font-weight: 700;
  color: #fff;
  text-align: center;
  letter-spacing: 0.3em;
  background: url(../images/top/fukidashi.png) no-repeat center center/contain;
}

.p-pageTitle_ym {
  width: min(76.3358778626vw + 7.7404580153px, 594px);
  height: min(47.8371501272vw + -101.3893129771px, 266px);
  margin: auto;
}

/* -----------------------------------------------------------------------
## News ##################################################
----------------------------------------------------------------------- */
.p-news_ym {
  position: relative;
  z-index: 2;
  padding: min(4.0712468193vw + 8.7328244275px, 40px) 0 min(4.0712468193vw + 8.7328244275px, 40px);
}
.p-news__title_ym {
  font-family: var(--ym-ff-Aboreto);
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-newsList_ym {
  margin-top: min(2.0356234097vw + 0.3664122137px, 16px);
}
.p-newsList__item_ym {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: min(4.0712468193vw + -7.2671755725px, 24px);
  margin-top: 4px;
}
.p-newsList__item_ym time {
  font-size: min(0.5089058524vw + 10.0916030534px, 14/16 * 1rem);
  line-height: 1.5;
  color: var(--ym-gray);
  letter-spacing: 0.04em;
}
.p-newsList__item_ym span {
  font-size: min(0.5089058524vw + 10.0916030534px, 14/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

/* -----------------------------------------------------------------------
## Navi ##################################################
----------------------------------------------------------------------- */
.p-nav_ym {
  display: grid;
  grid-template-columns: repeat(3, calc(64/375 * 100vw));
  gap: 40px;
  justify-content: center;
  padding: 16px 0 min(6.106870229vw + 33.0992366412px, 80px);
}

.p-nav__link_ym {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
  align-items: center;
  color: var(--ym-fc-base);
  text-align: center;
  text-decoration: none;
  transition: color 0.2s 0s linear;
}
.p-nav__link_ym::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 52px;
  height: 52px;
  margin: auto;
  content: "";
  background: var(--ym-white);
  border-radius: 50%;
  filter: blur(16px);
  transition: opacity 0.4s 0s linear;
}
.p-nav__link_ym img {
  position: relative;
  z-index: 2;
  width: min(2.0356234097vw + 16.3664122137px, 32px);
  margin: 0 auto;
}
.p-nav__link_ym span {
  position: relative;
  z-index: 2;
  font-size: min(0.5089058524vw + 10.0916030534px, 14/16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  color: inherit;
  letter-spacing: 0.04em;
  transition: font-weight 0.2s 0s linear;
}
.p-nav__link_ym svg {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  left: 0;
  z-index: 2;
  width: 9px;
  margin: 0 auto;
  fill: currentColor;
  transition: transform 0.3s 0s ease-out, fill 0.4s 0s linear;
}

/* -----------------------------------------------------------------------
## 津軽びいどろの風鈴傘とは？ ##################################################
----------------------------------------------------------------------- */
.p-about_ym {
  padding-bottom: 64px;
  overflow: hidden;
}

.p-about__slider_ym {
  margin-top: min(4.0712468193vw + 8.7328244275px, 40px);
  overflow: hidden;
}
.p-about__slider_ym .splide__track {
  position: relative;
}
.p-about__slider_ym .splide__track::before, .p-about__slider_ym .splide__track::after {
  position: absolute;
  top: 0;
  z-index: 2;
  width: 6.4%;
  height: 100%;
  content: "";
  background-color: rgba(255, 255, 255, 0.6);
}
.p-about__slider_ym .splide__track::before {
  left: 0;
}
.p-about__slider_ym .splide__track::after {
  right: 0;
}
.p-about__slider_ym .splide__pagination {
  gap: 8px;
  align-items: start;
  margin-top: 16px;
}
.p-about__slider_ym .splide__pagination li {
  font-size: 0;
}
.p-about__slider_ym .splide__pagination button {
  width: 8px;
  height: 8px;
  padding: 0;
  background-color: var(--ym-gray);
  border: 0;
  border-radius: calc(infinity * 1px);
}
.p-about__slider_ym .splide__pagination button.is-active {
  background-color: var(--ym-blue);
}

.p-about__title_ym {
  margin-top: 28px;
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.p-about__text_ym {
  margin-top: 16px;
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

/* 商品情報 ################# */
.p-itemBox_ym {
  padding: min(10.1781170483vw + -14.1679389313px, 64px);
  margin-top: 64px;
  background: url(../images/top/bg-itembox_sp.png) no-repeat center center/cover;
  border: 1px solid var(--ym-white);
}
.p-itemBox_ym .c-price_ym {
  margin-top: max(0vw + 16px, 16px);
}

.p-itemBox__title_ym {
  font-size: min(1.0178117048vw + 10.1832061069px, 18/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  color: var(--ym-fc-accent);
  letter-spacing: 0.04em;
}

.p-itemBox__grid_ym {
  display: grid;
  gap: 40px;
  margin-top: min(2.0356234097vw + 8.3664122137px, 24px);
}

.p-itemBox__text_ym {
  margin-top: max(0vw + 24px, 24px);
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

/* フォト ################# */
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
.p-photoBox_ym {
  position: relative;
  padding-top: min(6.106870229vw + 33.0992366412px, 80px);
  margin-top: min(16.2849872774vw + 2.9312977099px, 128px);
}

.p-photoBox__slider_ym {
  position: relative;
  z-index: 2;
  margin-left: -6.4%;
  margin-right: -6.4%;
}

.p-photoBox__stamp_ym {
  position: absolute;
  top: min(56.4885496183vw + 192.1679389313px, 626px);
  right: min(22.9007633588vw + -85.8778625954px, 90px);
  z-index: 3;
  width: min(24.1730279898vw + 80.3511450382px, 266px);
  height: auto;
}

.p-photoBox__circle_ym {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: calc(443/375 * 100vw);
  max-width: 700px;
  pointer-events: none;
  translate: -50% 0;
  animation: rotation 60s linear infinite;
}

/* 津軽びいどろ ################# */
.p-aboutInfo_ym {
  margin-top: max(-7.1246819338vw + 66.7175572519px, 12px);
}

.p-aboutInfo__title_ym {
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  color: var(--ym-fc-accent);
  letter-spacing: 0.04em;
}

.p-aboutInfo__text_ym {
  margin-top: min(2.0356234097vw + 8.3664122137px, 24px);
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-about_ym .c-link_ym {
  margin-top: 24px;
}

/* -----------------------------------------------------------------------
## フォトコンテストを開催！ ##################################################
----------------------------------------------------------------------- */
.p-outline_ym {
  padding-bottom: max(0vw + 64px, 64px);
}
.p-outline_ym .c-content_ym {
  margin-top: min(4.0712468193vw + 8.7328244275px, 40px);
}

.p-outline__text_ym {
  margin-top: max(0vw + 16px, 16px);
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-outline__text_ym a {
  font-weight: 700;
  color: var(--ym-fc-accent);
  text-decoration: underline;
}

/* 募集期間・結果発表 ################# */
.p-info_ym {
  margin-top: min(2.0356234097vw + 8.3664122137px, 24px);
}

.p-info__terms_ym,
.p-info__results_ym {
  display: grid;
  grid-template-columns: auto 1fr;
  margin-top: 8px;
}

.p-info__title_ym {
  padding: max(0vw + 8px, 8px) max(0vw + 16px, 16px) max(0vw + 5px, 5px);
  font-size: min(1.0178117048vw + 10.1832061069px, 18/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  color: var(--ym-white);
  letter-spacing: 0.04em;
}
.p-info__title_ym:is(.p-info__terms_ym *) {
  background-color: var(--ym-red);
}
.p-info__title_ym:is(.p-info__results_ym *) {
  background-color: var(--ym-green);
}

.p-info__body_ym {
  padding: max(0vw + 8px, 8px) max(-4.0712468193vw + 31.2671755725px, 0px) max(0vw + 5px, 5px);
  margin: 0;
  font-size: min(1.0178117048vw + 10.1832061069px, 18/16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.04em;
  border: 1px solid #000;
}
.p-info__body_ym:is(.p-info__terms_ym *) {
  border-color: var(--ym-red);
}
.p-info__body_ym:is(.p-info__results_ym *) {
  border-color: var(--ym-green);
}

/* 応募方法 ################# */
.p-details_ym {
  margin-top: min(6.106870229vw + 17.0992366412px, 64px);
}

.p-details__title_ym {
  margin-bottom: min(4.0712468193vw + 8.7328244275px, 40px);
  font-size: min(2.0356234097vw + 12.3664122137px, 28/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.04em;
}

.p-howToMedia_ym {
  display: grid;
  gap: min(4.0712468193vw + 8.7328244275px, 40px);
}

.p-howToMedia__text_ym {
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-howToMedia__text_ym a {
  font-weight: 700;
  color: var(--ym-fc-accent);
  text-decoration: none;
}

/* 選考条件 ################# */
.p-conditions_ym {
  margin-top: min(6.106870229vw + 17.0992366412px, 64px);
}

.p-details__text_ym {
  display: grid;
  grid-template-columns: 1em 1fr;
  gap: 8px;
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-details__text_ym::before {
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-details__text_ym[data-num="1"]::before {
  content: "①";
}
.p-details__text_ym[data-num="2"]::before {
  content: "②";
}
.p-details__text_ym + .p-details__text_ym {
  margin-top: 8px;
}

/* 審査方法 ################# */
.p-review_ym {
  margin-top: min(6.106870229vw + 17.0992366412px, 64px);
}

.p-review__text_ym {
  margin-top: max(0vw + 8px, 8px);
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-details_ym .c-button_ym {
  max-width: 279px;
  margin-top: min(6.106870229vw + 17.0992366412px, 64px);
  margin-left: auto;
  margin-right: auto;
}

/* -----------------------------------------------------------------------
## フォトコンテストを開催！ ##################################################
----------------------------------------------------------------------- */
.p-present_ym {
  padding-bottom: 64px;
}

.p-presentBox_ym {
  margin-top: max(-1.272264631vw + 44.7709923664px, 35px);
}

.p-presentBoxTitle_ym {
  position: relative;
  text-align: center;
}
.p-presentBoxTitle_ym::before {
  position: absolute;
  top: 14px;
  left: 50%;
  z-index: 1;
  width: 90px;
  height: 90px;
  content: "";
  background-color: #fff;
  opacity: 0.5;
  filter: blur(16px);
  transform: translateX(-50%);
}
.p-presentBoxTitle_ym svg {
  position: relative;
  z-index: 2;
  width: 40px;
  height: auto;
  fill: currentColor;
}
.p-presentBoxTitle_ym:is(.is-grand_ym *) {
  color: var(--ym-blue);
}
.p-presentBoxTitle_ym:is(.is-tsugaru_ym *) {
  color: var(--ym-green);
}
.p-presentBoxTitle_ym:is(.is-ringoMusume_ym *) {
  color: var(--ym-red);
}

.p-presentBoxTitle__text_ym {
  position: relative;
  z-index: 2;
  display: block;
  margin-top: 8px;
  font-size: max(0vw + 20px, 20/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.04em;
}

.p-presentBoxTitle__text--sub_ym {
  font-size: max(0vw + 12px, 12/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-presentBox__inner_ym {
  gap: 16px;
  margin-top: max(0vw + 24px, 24px);
}
.p-presentBox__inner_ym .c-mediaBox__text_ym {
  margin-left: -0.5em;
  margin-right: -0.5em;
  font-size: calc(14/16 * 1rem);
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.04em;
}
.p-presentBox__inner_ym .c-mediaBox__text_ym a {
  font-weight: 700;
  color: var(--ym-fc-base);
}

/* -----------------------------------------------------------------------
## 傘の展示施設 ##################################################
----------------------------------------------------------------------- */
.p-popup_ym {
  padding-bottom: min(6.106870229vw + 17.0992366412px, 64px);
}

.c-content_ym:is(.p-popup_ym *) {
  margin-top: min(3.0534351145vw + 12.5496183206px, 36px);
}

.c-mediaBox__body_ym:is(.p-popup_ym *) {
  margin-top: 16px;
}

.p-popup__text_ym {
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-popup__text_ym small {
  display: grid;
  grid-template-columns: 1em 1fr;
  gap: 8px;
  margin-top: 4px;
  font-size: min(0.5089058524vw + 8.0916030534px, 12/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-popup__text_ym small::before {
  content: "※";
}

.c-googleMap_ym:is(.p-popup_ym *) {
  margin-top: max(0vw + 40px, 40px);
}
.c-googleMap_ym:is(.p-popup_ym *) + * {
  margin-top: max(0vw + 24px, 24px);
}

.p-popupInfo_ym {
  padding: max(0vw + 24px, 24px);
  margin-top: max(0vw + 64px, 64px);
  background: url(../images/top/bg-itembox_sp.png) no-repeat center center/cover;
  border: 1px solid var(--ym-white);
}

.p-popupInfo__subTitle_ym {
  font-size: min(0.5089058524vw + 10.0916030534px, 14/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-popupInfo__mainTitle_ym {
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-popupInfo__text_ym strong {
  font-size: min(1.5267175573vw + 10.2748091603px, 22/16 * 1rem);
}
.p-popupInfo__text_ym .c-textLink_ym {
  font-size: min(1.0178117048vw + 10.1832061069px, 18/16 * 1rem);
}

/* -----------------------------------------------------------------------
## 傘の貸し出し場所 ##################################################
----------------------------------------------------------------------- */
.p-rental_ym {
  padding-bottom: 64px;
}
.p-rental_ym .c-content_ym {
  margin-top: min(4.0712468193vw + 8.7328244275px, 40px);
}

.p-rental__text_ym {
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-rental__text_ym small {
  display: grid;
  grid-template-columns: 1em 1fr;
  gap: 8px;
  margin-top: min(2.7989821883vw + -6.4961832061px, 15px);
  font-size: min(0.5089058524vw + 8.0916030534px, 12/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-rental__text_ym small::before {
  content: "※";
}

.c-googleMap_ym:is(.p-rental_ym *) {
  margin-top: max(0vw + 40px, 40px);
}
.c-googleMap_ym:is(.p-rental_ym *) + * {
  margin-top: max(0vw + 24px, 24px);
}

/* -----------------------------------------------------------------------
## 傘を購入できる場所 ##################################################
----------------------------------------------------------------------- */
.p-buy_ym {
  padding-bottom: 64px;
}
.p-buy_ym .c-content_ym {
  margin-top: min(4.0712468193vw + 8.7328244275px, 40px);
}

.p-buy__title_ym {
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-buy__text_ym {
  margin-top: 16px;
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-buy__text_ym small {
  display: grid;
  grid-template-columns: 1em 1fr;
  gap: 8px;
  margin-top: 16px;
  font-size: min(0.5089058524vw + 8.0916030534px, 12/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.p-buy__text_ym small::before {
  content: "※";
}

.c-googleMap_ym:is(.p-buy_ym *) {
  margin-top: 40px;
}

.p-shopList__title_ym {
  margin-top: 24px;
  font-size: calc(16/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.c-list_ym:is(.p-shopList__title_ym + *) {
  margin-top: max(0vw + 8px, 8px);
}

.c-list__item_ym:is(.p-shopList_ym *) {
  line-height: 1.4;
}

/* -----------------------------------------------------------------------
## 「りんご娘」とタイアップ ##################################################
----------------------------------------------------------------------- */
.p-ringoMusume_ym {
  padding-bottom: min(6.106870229vw + 17.0992366412px, 64px);
}
.p-ringoMusume_ym .c-content_ym {
  margin-top: min(4.0712468193vw + 8.7328244275px, 40px);
}

.p-ringoMusumeMedia__text_ym {
  margin-top: 24px;
  font-size: min(0.5089058524vw + 12.0916030534px, 16/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-ringoMusumeInfo_ym {
  padding: min(10.1781170483vw + -14.1679389313px, 64px);
  margin-top: max(0vw + 40px, 40px);
  background: url(../images/top/bg-ringo_musume_sp.jpg) no-repeat center center/cover;
  border: 1px solid var(--ym-white);
}

.p-ringoMusumeInfo__title_ym {
  font-size: calc(16/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-ringoMusumeInfo__text_ym {
  margin-top: 16px;
  font-size: calc(14/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.c-link_ym:is(.p-ringoMusumeInfo_ym *) {
  margin-top: 16px;
}

/* -----------------------------------------------------------------------
## ページフッター ##################################################
----------------------------------------------------------------------- */
.p-pageFooter_ym {
  max-width: 700px;
  padding: min(6.106870229vw + 17.0992366412px, 64px) min(4.0712468193vw + 8.7328244275px, 40px);
  margin-left: auto;
  margin-right: auto;
  background: url(../images/top/bg-footer.jpg) no-repeat center center/cover;
}

.p-pageFooter__media_ym {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 16px;
}

[src*="logo-x.svg"]:is(.p-pageFooter_ym *) {
  width: 32px;
  height: auto;
  margin: max(0vw + 16px, 16px) auto 0;
}

.p-pageFooter__title_ym {
  font-size: min(1.0178117048vw + 10.1832061069px, 18/16 * 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-pageFooter__text_ym {
  margin-top: min(2.0356234097vw + 0.3664122137px, 16px);
  font-size: min(0.5089058524vw + 10.0916030534px, 14/16 * 1rem);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-slashText_ym {
  display: flex;
  gap: 5px;
  justify-content: center;
  margin-top: min(2.0356234097vw + 24.3664122137px, 40px);
  line-height: 1.5;
  text-align: center;
}
.p-slashText_ym span {
  font-size: min(2.0356234097vw + 8.3664122137px, 24/16 * 1rem);
  font-weight: 700;
  letter-spacing: 0.04em;
}
.p-slashText_ym svg {
  width: 9px;
  height: auto;
  fill: currentColor;
}
.p-slashText_ym sup {
  top: -1em;
  font-size: max(0vw + 10px, 10/16 * 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
}

.p-pageFooter__note_ym {
  display: block;
  margin-top: max(-2.0356234097vw + 11.6335877863px, -4px);
  font-size: calc(10/16 * 1rem);
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.04em;
}

.p-pageFooter__image_ym {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-top: max(0vw + 16px, 16px);
}
.p-pageFooter__image_ym a {
  transition: opacity 0.2s 0s linear;
}

.c-button_ym:is(.p-pageFooter_ym *) {
  max-width: 279px;
  margin: min(2.0356234097vw + 24.3664122137px, 40px) auto 0;
  text-align: center;
}

@media screen and (min-width: 768px){
  .p-top_ym {
    padding-bottom: 64px;
    background: url(../images/top/bg_pc.webp) no-repeat center top/cover;
  }
  .p-kv_ym {
    background: url(../images/top/bg_kv_pc.jpg) no-repeat center bottom/cover;
  }
  .p-kv__inner_ym {
    position: relative;
    min-height: 800px !important;
    max-height: 800px;
    padding-bottom: 215px !important;
  }
  .p-nav_ym {
    grid-template-columns: repeat(6, 80px);
    gap: min(18.75vw + -106px, 44px);
  }
  .p-about__slider_ym {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
  .p-about__slider_ym .splide__track::before, .p-about__slider_ym .splide__track::after {
    width: calc(26.5714285714% - 8px);
  }
  .p-about__text_ym:is(.p-about__title_ym + *) {
    margin-top: 24px;
  }
  .p-itemBox_ym {
    background: url(../images/top/bg-itembox_pc.png) no-repeat center center/cover;
  }
  .p-itemBox__grid_ym {
    grid-template-rows: subgrid;
    grid-template-columns: repeat(2, 1fr);
  }
  .p-itemBox__gridItem_ym {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-row: span 3;
  }
  .p-photoBox__slider_ym {
    padding-left: 0;
    padding-right: 0;
    margin-left: 65px;
    margin-right: 55px;
  }
  .p-info_ym {
    display: flex;
    justify-content: space-between;
  }
  .p-info__terms_ym,
  .p-info__results_ym {
    flex-basis: 346px;
  }
  .p-howToMedia_ym {
    grid-template-columns: 1fr 327px;
    align-items: center;
  }
  .p-presentBox_ym + .p-presentBox_ym {
    margin-top: 64px;
  }
  .p-presentBox__inner_ym {
    display: grid;
    grid-template-columns: 1fr 327px;
    align-items: center;
  }
  .p-presentBox__inner_ym:is(.is-tsugaru_ym *) {
    grid-template-columns: 327px 1fr;
  }
  .p-presentBox__inner_ym .c-mediaBox__text_ym {
    margin-left: 0;
    margin-right: 0;
  }
  .c-mediaBox_ym:is(.p-popup_ym *):has(.c-mediaBox__image_ym) {
    gap: 40px;
    align-items: center;
  }
  .c-mediaBox__image_ym:is(.p-popup_ym *) {
    max-width: 327px;
  }
  .c-mediaBox__body_ym:is(.p-popup_ym *) {
    margin-top: 0;
  }
  .p-popupInfo_ym {
    background: url(../images/top/bg-itembox_pc.png) no-repeat center center/cover;
  }
  .c-list__item_ym span:is(.p-shopList_ym *),
  .c-list__item_ym a:is(.p-shopList_ym *) {
    font-size: calc(14/16 * 1rem);
    letter-spacing: 0.04em;
  }
  .p-ringoMusumeMedia_ym {
    gap: 40px;
    align-items: center;
  }
  .p-ringoMusumeMedia__image_ym {
    max-width: 327px;
  }
  .p-ringoMusumeMedia__text_ym {
    margin-top: 0;
  }
  .p-ringoMusumeInfo_ym {
    background: url(../images/top/bg-ringo_musume_pc.jpg) no-repeat center center/cover;
  }
  .p-pageFooter_ym .c-content_ym {
    padding: 0;
  }
  .p-pageFooter__image_ym {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
}

@media (hover: hover) and (pointer: fine){
  .p-nav__link_ym:hover[data-category=about] {
    color: var(--ym-red);
  }
  .p-nav__link_ym:hover[data-category=outline] {
    color: var(--ym-orange);
  }
  .p-nav__link_ym:hover[data-category=regulation] {
    color: var(--ym-yellow);
  }
  .p-nav__link_ym:hover[data-category=popup] {
    color: var(--ym-yellow-green);
  }
  .p-nav__link_ym:hover[data-category=rental] {
    color: var(--ym-green);
  }
  .p-nav__link_ym:hover[data-category=shop] {
    color: var(--ym-blue);
  }
  .p-nav__link_ym:hover span {
    font-weight: 700;
  }
  .p-nav__link_ym:hover svg {
    transform: translateY(3px);
  }
  .p-pageFooter__image_ym a:hover {
    opacity: 0.7;
  }
}