@charset "UTF-8";
/*************************************************
  reset 2025.06
**************************************************/
*, ::before, ::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
}

main {
  display: block;
}

p, table, blockquote, address, pre, iframe, form, figure, dl {
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

pre {
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  text-decoration: underline dotted;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: inherit;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg, img, embed, object, iframe {
  vertical-align: bottom;
}

button, input, optgroup, select, textarea {
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}

button, [type=button], [type=reset], [type=submit] {
  cursor: pointer;
}

button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled {
  cursor: default;
}

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

option {
  padding: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

[type=number] {
  -moz-appearance: textfield;
  appearance: inherit;
}

label[for] {
  cursor: pointer;
}

details {
  display: block;
}

summary {
  display: list-item;
}

[contenteditable]:focus {
  outline: auto;
}

table {
  border-color: inherit;
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td, th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: 400;
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  word-break: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/*************************************************
imageをいつでも親の横100%表示にする
**************************************************/
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
  img {
    image-rendering: -webkit-optimize-contrast;
  }
}
.btn-block {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1rem;
}
.btn-block.cl {
  flex-direction: column;
  row-gap: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  .btn-block.cl {
    row-gap: 1.3134057971vw;
  }
}
.btn-block .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/*************************************************
/ Font / Font Opotion
/**************************************************
/* .ft-serif{font-family: "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;} */
.ft-en {
  font-family: "Cormorant", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

/* KoburinaGoStd W6-83pv-RKSJ-H の代替 */
.attention {
  color: #AA4308;
}

.t-center {
  text-align: center;
}

.t-right {
  text-align: right;
}

.t-bold {
  font-weight: 700;
}

.t-under {
  text-decoration: underline;
  display: inline;
}

.t-palt {
  font-feature-settings: "palt";
}

.t-ellipsis {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  white-space: normal;
}

/*段落*/
.para > *:not(:last-child) {
  margin-bottom: 1em;
}

/*************************************************
  ※リスト
**************************************************/
.attention-lists > li {
  position: relative;
  text-indent: -1.1em;
  padding-left: 1.1em;
}
.attention-lists > li::before {
  content: "※";
}
.attention-lists {
  font-weight: 400;
  line-height: 1.3913;
  font-size: 1.0069444444vw;
}
@media print, screen and (min-width: 769px) {
  .attention-lists {
    font-size: 23px;
  }
}
@media screen and (max-width: 768px) {
  .attention-lists {
    font-size: 2.7777777778vw;
  }
}

/*ドットリスト*/
.dot-lists > li {
  position: relative;
  text-indent: -1.1em;
  padding-left: 1.1em;
}
.dot-lists > li::before {
  content: "・";
}

.note-lists > li {
  position: relative;
  text-indent: -1.1em;
  padding-left: 1.1em;
}
.note-lists > li::before {
  content: "※";
}
.note-lists.asta > li::before {
  content: "＊";
}

/*************************************************
/  全体
/**************************************************/
body.petspecial {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Helvetica Neue", Arial, "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  font-display: optional;
  font-weight: 400;
  font-style: normal;
  background-color: #00888F;
  color: #000000;
  line-height: 2.1;
  text-align: left;
  background-color: #00888F;
  position: relative;
  font-size: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial {
    font-size: 1.3134057971vw;
  }
}
body.petspecial br.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  body.petspecial br.sp {
    display: block;
  }
  body.petspecial br.pc {
    display: none;
  }
}
body.petspecial .para > *:not(:last-child) {
  margin-bottom: 1em;
}
body.petspecial {
  /********  SP wrap **********************************/
}
body.petspecial .sp_wrap {
  position: relative;
  background-color: #EDE8D8;
  z-index: 100;
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .sp_wrap {
    margin-left: auto;
    margin-right: calc(-12px + 10.3125vw);
    width: 36.25vw;
  }
}
body.petspecial .sp_wrap {
  /********  loading **********************************/
}
body.petspecial .sp_wrap .loading {
  display: none;
}
body.petspecial .sp_wrap._loading {
  height: 100dvh;
}
body.petspecial .sp_wrap._loading .loading {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 900;
  width: 100%;
  height: 100%;
  background-color: #00888F;
  opacity: 1;
  transition: opacity 0.5s 0.6s;
}
body.petspecial .sp_wrap._loading .loading._start {
  opacity: 0;
}
body.petspecial .sp_wrap .loader {
  margin-left: auto;
  margin-right: auto;
  width: 60%;
  height: 6.038647343vw; /* 足跡コンテナ高さ */
  background-image: url(../img/icon_footprint.svg);
  background-repeat: repeat-x;
  background-size: 6.038647343vw 100%; /* 高さに合わせてスケール */
  animation: moveFootprint 4s steps(10) infinite;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .sp_wrap .loader {
    height: 15px;
  }
}
@keyframes moveFootprint {
  0% {
    background-position-x: 100%;
  }
  100% {
    background-position-x: 0;
  }
}
body.petspecial {
  /******** pc_wrap **********************************/
}
body.petspecial .pc_wrap {
  display: none;
  background-image: url(../img/bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .pc_wrap {
    display: block;
    position: fixed;
    z-index: 50;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100vh;
    background-color: #00888F;
    /******** タイトル **********************************/
  }
  body.petspecial .pc_wrap .title-box {
    position: absolute;
    top: 50%;
    left: 6.25vw;
    transform: translateY(-50%);
    width: 40vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 3vw;
  }
  body.petspecial .pc_wrap .title-box .logo {
    position: relative;
    width: 57.3613%;
    opacity: 0;
    transition: opacity 0.6s ease-out;
  }
  body.petspecial .pc_wrap .title-box .btn-block {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.81);
    position: relative;
    top: 15dvh;
    opacity: 0;
    transition: top 0.8s, opacity 1.2s;
    border-radius: 2.6268115942vw;
    padding: 3.5024154589vw 2.5392512077vw 3.5024154589vw 2.407910628vw;
    row-gap: 1.3134057971vw;
  }
  body.petspecial .pc_wrap .title-box .btn-block p {
    line-height: 1;
    width: 18.3556%;
    margin-bottom: 10px;
  }
  body.petspecial .pc_wrap .title-box .btn-block::after, body.petspecial .pc_wrap .title-box .btn-block::before {
    content: "";
    width: 17.2084%;
    aspect-ratio: 90/130;
    position: absolute;
    display: block;
    background-image: url(../img/deco_footprints-pc.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }
  body.petspecial .pc_wrap .title-box .btn-block::before {
    left: -6.1185468451%;
    top: -7.0048309179vw;
  }
  body.petspecial .pc_wrap .title-box .btn-block::after {
    right: -19.120458891%;
    bottom: -9.6316425121vw;
  }
  body.petspecial .pc_wrap .title-box._start .logo {
    opacity: 1;
    animation: popBounce 0.8s cubic-bezier(0.25, 1.2, 0.5, 1) forwards;
  }
  body.petspecial .pc_wrap .title-box._start .btn-block {
    opacity: 1;
    top: 0;
  }
  body.petspecial .pc_wrap {
    /******** slider **********************************/
  }
  body.petspecial .pc_wrap .slider_box {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(10.3125vw - 12px);
    height: 100dvh;
  }
  body.petspecial .pc_wrap .slider_box .slider {
    position: absolute;
    top: 27.4%;
    left: 31.1688311688%;
    width: 5px;
    height: 64%;
    border-radius: 3px;
    background-color: #fff;
  }
  body.petspecial .pc_wrap .slider_box .slider .slider_handle {
    display: block;
    position: absolute;
    top: 0;
    left: -5px;
    width: 15px;
    height: 8.875%;
    cursor: pointer;
  }
  body.petspecial .pc_wrap .slider_box .slider .slider_handle .slider_v {
    position: absolute;
    top: 0;
    left: 5px;
    width: 5px;
    height: 100%;
    border-radius: 3px;
    background-color: #EEEB3F;
  }
}
body.petspecial {
  /********  overlay **********************************/
}
body.petspecial #overlay {
  position: fixed;
  top: 0;
  left: 0;
  height: 96vh;
  height: 100dvh;
  width: 100%;
  background: #fff;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  transition: opacity 1s;
  opacity: 1;
}
body.petspecial #overlay.loaded {
  opacity: 0;
  pointer-events: none;
}
body.petspecial #overlay::after {
  content: "";
  display: inline-block;
}
body.petspecial #overlay.loadlogo::after {
  width: 20vw;
  height: 20vw;
  background: url(/common/images/logo.png) center center no-repeat;
  background-size: contain;
}
body.petspecial {
  /*************************************************
  /Link
  /*************************************************/
}
body.petspecial a {
  color: blue;
  display: inline-block;
}
@media (hover: hover) {
  body.petspecial .btn {
    transition: transform 0.4s ease-out;
  }
  body.petspecial .btn:hover {
    transform: scale(1.1);
  }
}
body.petspecial button {
  display: block;
  border: none;
  background-color: transparent;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  body.petspecial a[href^="tel:"] {
    pointer-events: none;
  }
}
body.petspecial .btn {
  border-radius: 9999px;
  border: 3px solid #00888F;
  width: 100%;
  color: #00888F;
  display: flex;
  align-items: center;
  padding: 0.5em;
  font-weight: 500;
  background-color: #fff;
  letter-spacing: 0.1em;
}
body.petspecial .btn:hover {
  background-color: #00888F;
  color: #fff;
}
body.petspecial .btn {
  font-size: 4.1062801932vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .btn {
    font-size: 1.48852657vw;
  }
}
body.petspecial .btn.orange {
  color: #D8735F;
}
body.petspecial .btn.hl-btn {
  position: relative;
  width: 101.4925373134%;
  aspect-ratio: 680/125;
  margin-left: auto;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
  border: none;
  overflow: hidden;
  text-indent: -100vw;
  background-color: initial;
  border-radius: initial;
}
body.petspecial .btn.btn1 {
  background-image: url(../img/btn_shop-for-pet.webp);
}
body.petspecial .btn.btn1:hover {
  color: #fff;
  background-image: url(../img/btn_shop-for-pet_on.webp);
}
body.petspecial .btn.btn2 {
  background-image: url(../img/btn-shop-with-pet.webp);
}
body.petspecial .btn.btn2:hover {
  background-image: url(../img/btn-shop-with-pet_on.webp);
}
body.petspecial .btn.btn3 {
  background-image: url(../img/btn_pet-friendy-areas.webp);
}
body.petspecial .btn.btn3:hover {
  background-image: url(../img/btn_pet-friendy-areas_on.webp);
}
body.petspecial .btn.btn4 {
  background-image: url(../img/btn_rules-and-manners.webp);
}
body.petspecial .btn.btn4:hover {
  color: #fff;
  background-image: url(../img/btn_rules-and-manners_on.webp);
}
body.petspecial {
  /*************************************************
  / animation
  /**************************************************/
}
@keyframes popBounce {
  0% {
    transform: scale(0.5);
  }
  60% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
body.petspecial {
  /* 落下して軽くバウンド */
}
@keyframes dropBounce {
  0% {
    transform: scale(1, 1) translate(0%, -100%);
  } /* 初期状態 */
  30% {
    transform: scale(1.5, 0.5) translate(0%, 0%);
  } /* 地面に着地し、その変動で潰れだす */
  40% {
    transform: scale(1, 1) translate(0%, 0%);
  } /* 潰れた反動で一瞬元に戻る */
  60% {
    transform: scale(0.9, 1.1) translate(0%, -10%);
  } /* 潰れた反動で縦に伸び、その勢いでバウンド開始 */
  75% {
    transform: scale(1, 1) translate(0%, 0%);
  }
  100% {
    transform: scale(1, 1) translate(0%, 0%);
  } /* 初期状態に戻る */
}
body.petspecial {
  /*************************************************
  /  header
  /*************************************************/
}
body.petspecial ._st #header {
  transform: scale(0.5);
  opacity: 1;
  animation: popBounce 0.8s cubic-bezier(0.25, 1.2, 0.5, 1) forwards;
}
body.petspecial #header {
  transform: scale(1);
  opacity: 0;
  transition: opacity 0.6s ease-out;
  position: relative;
  width: 100%;
  aspect-ratio: 828/1366;
  background-image: url(../img/kv_bg.webp);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  padding-bottom: 1rem;
}
body.petspecial #header .kv_title {
  width: 61.5942028986%;
  position: absolute;
  right: 8.8164251208%;
  top: calc(7vw + 10px);
  /*animationプロパティここから*/
  opacity: 0;
  transition: opacity 0.6s 0.8s linear;
}
body.petspecial #header .kv_title._start {
  opacity: 1;
  animation-name: dropBounce;
  animation-duration: 1s;
  animation-delay: 0.8s;
  animation-timing-function: linear;
  transform-origin: center bottom;
}
body.petspecial {
  /*************************************************
  /  footer
  /*************************************************/
}
body.petspecial #footer {
  line-height: 1.8;
  padding-top: 14.4927536232%;
  background-color: #fff;
  font-weight: 500;
  font-size: 2.89852657vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial #footer {
    font-size: 1.0507158816vw;
  }
}
body.petspecial #footer .l-container {
  padding: 0 1.6rem;
}
body.petspecial #footer .note-lists {
  padding-left: 7.7295%;
  padding-right: 7.7295%;
  margin-bottom: 3rem;
  font-size: 2.7777777778vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial #footer .note-lists {
    font-size: 1.0069444444vw;
  }
}
body.petspecial #footer .siteFooter__upper {
  display: flex;
  flex-direction: column-reverse;
}
body.petspecial #footer .siteFooter__brandHeader {
  margin-bottom: 1.5rem;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  text-align: center;
  font-size: 3.3816183575vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial #footer .siteFooter__brandHeader {
    font-size: 1.2258366546vw;
  }
}
body.petspecial #footer .siteFooter__brandList {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  width: 100%;
}
body.petspecial #footer .siteFooter__brandLink {
  width: 30%;
}
body.petspecial #footer .siteFooter__logowrap {
  margin: 2.5rem 0 0;
  width: 100%;
  text-align: center;
  padding: 1.5rem 0 0;
  border-top: 0.1rem solid #e3e3e3;
}
body.petspecial #footer .siteFooter__logolink {
  display: block;
  margin: 0 auto;
  max-width: 235px;
}
body.petspecial #footer .siteFooter__companyInfo {
  margin-top: 1rem;
}
body.petspecial #footer .siteFooter__copyright {
  margin-top: 2.5rem;
  padding: 0.8rem 0;
  background-color: #000;
  color: #fff;
  line-height: 1.5;
  text-align: center;
}
body.petspecial {
  /*************************************************
  /  main
  /*************************************************/
  /********  headline **********************************/
}
body.petspecial .s_headline {
  padding-left: 9.1787439614%;
  padding-right: 9.1787439614%;
  position: relative;
}
body.petspecial .s_headline::after {
  content: "";
  width: 17.6328502415%;
  aspect-ratio: 146/126;
  display: block;
  position: absolute;
  right: 0;
  background-image: url(../img/deco_footprints-1.svg);
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -15.2173913043vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .s_headline::after {
    bottom: -5.5163043478vw;
  }
}
body.petspecial .s_headline .headline-title {
  position: absolute;
  right: 8.6956521739%;
  width: 14.1304347826%;
  aspect-ratio: 117/547;
  top: -28.7439613527vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .s_headline .headline-title {
    top: -10.4196859903vw;
  }
}
body.petspecial .s_headline .txt {
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.18em;
  margin-top: 8.4541062802vw;
  font-size: 3.8647342995vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .s_headline .txt {
    margin-top: 3.0646135266vw;
    font-size: 1.4009661836vw;
  }
}
body.petspecial .s_headline_btn-block {
  padding-left: 9.1787439614%;
  padding-right: 9.1787439614%;
  margin-top: 15.9420289855vw;
  margin-bottom: 18.115942029vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .s_headline_btn-block {
    margin-top: 5.7789855072vw;
    margin-bottom: 6.5670289855vw;
  }
}
body.petspecial {
  /******** 背景 **********************************/
  /******** セクション共通 **********************************/
}
body.petspecial .section.sec_1 .rule-lists,
body.petspecial .section.sec_5 .rule-lists {
  margin-top: 9.1787439614vw;
  font-size: 3.3816425121vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_1 .rule-lists,
  body.petspecial .section.sec_5 .rule-lists {
    margin-top: 3.327294686vw;
    font-size: 1.2258454106vw;
  }
}
body.petspecial .section.sec_1 .rule-lists > li,
body.petspecial .section.sec_5 .rule-lists > li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body.petspecial .section.sec_1 .rule-lists > li + li,
body.petspecial .section.sec_5 .rule-lists > li + li {
  margin-top: 8.4541062802vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_1 .rule-lists > li + li,
  body.petspecial .section.sec_5 .rule-lists > li + li {
    margin-top: 3.0646135266vw;
  }
}
body.petspecial .section.sec_1 .rule-lists > li .img,
body.petspecial .section.sec_5 .rule-lists > li .img {
  width: 23.5714285714%;
}
body.petspecial .section.sec_1 .rule-lists > li .txt,
body.petspecial .section.sec_5 .rule-lists > li .txt {
  width: 69.6428571429%;
}
body.petspecial .section.sec_2 .sec_header,
body.petspecial .section.sec_3 .sec_header,
body.petspecial .section.sec_4 .sec_header {
  width: 100%;
  font-weight: 500;
}
body.petspecial .section.sec_2 .sec_header h2,
body.petspecial .section.sec_3 .sec_header h2,
body.petspecial .section.sec_4 .sec_header h2 {
  line-height: 1.5;
  margin-bottom: 7.2463768116vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 .sec_header h2,
  body.petspecial .section.sec_3 .sec_header h2,
  body.petspecial .section.sec_4 .sec_header h2 {
    margin-bottom: 2.6268115942vw;
  }
}
body.petspecial .section.sec_2 .sec_header h2::before,
body.petspecial .section.sec_3 .sec_header h2::before,
body.petspecial .section.sec_4 .sec_header h2::before {
  content: "";
  width: 4em;
  aspect-ratio: 216/146;
  display: inline-block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -0.8em;
  left: -0.5em;
}
body.petspecial .section.sec_2 .sec_header,
body.petspecial .section.sec_3 .sec_header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
body.petspecial .section.sec_2 .sec_header h2,
body.petspecial .section.sec_3 .sec_header h2 {
  font-size: 6.4009661836vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 .sec_header h2,
  body.petspecial .section.sec_3 .sec_header h2 {
    font-size: 2.3203502415vw;
  }
}
body.petspecial .section.sec_2 .sec_header p,
body.petspecial .section.sec_3 .sec_header p {
  font-size: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 .sec_header p,
  body.petspecial .section.sec_3 .sec_header p {
    font-size: 1.3134057971vw;
  }
}
body.petspecial .section.sec_2 .sec_body,
body.petspecial .section.sec_3 .sec_body {
  padding-top: 14.4927536232vw;
  padding-bottom: 14.4927536232vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 .sec_body,
  body.petspecial .section.sec_3 .sec_body {
    padding-top: 5.2536231884vw;
    padding-bottom: 5.2536231884vw;
  }
}
body.petspecial .section.sec_2.green,
body.petspecial .section.sec_3.green {
  color: #fff;
}
body.petspecial .section.sec_2.green .sec_header h2,
body.petspecial .section.sec_3.green .sec_header h2 {
  text-align: right;
}
body.petspecial .section.sec_2.green .sec_body,
body.petspecial .section.sec_3.green .sec_body {
  background-color: #00888F;
}
body.petspecial .section.sec_2.green .shop_info_box .shop_head > div,
body.petspecial .section.sec_3.green .shop_info_box .shop_head > div {
  background-image: url(../img/shop_name_deco.svg);
}
body.petspecial .section.sec_2.green .shop_info_box .shop_items li + li,
body.petspecial .section.sec_3.green .shop_info_box .shop_items li + li {
  border-color: #fff;
}
body.petspecial .section.sec_2.orange .sec_header h2,
body.petspecial .section.sec_3.orange .sec_header h2 {
  color: #D8735F;
}
body.petspecial .section.sec_2.orange .shop_info_box .shop_head > div,
body.petspecial .section.sec_3.orange .shop_info_box .shop_head > div {
  background-image: url(../img/shop_name_deco2.svg);
}
body.petspecial .section.sec_2.orange .shop_info_box .shop_items li + li,
body.petspecial .section.sec_3.orange .shop_info_box .shop_items li + li {
  border-color: #000000;
}
body.petspecial .section .sec_header,
body.petspecial .section .sec_body {
  padding-left: 9.1787439614%;
  padding-right: 9.1787439614%;
}
body.petspecial .section .sec_header h2 {
  letter-spacing: 0.1em;
}
body.petspecial .section .sec_header h2 span {
  letter-spacing: 0.3em;
}
body.petspecial .section .white-block {
  background-color: #fff;
  border-radius: 1.5rem;
  padding-left: 8.8235294118%;
  padding-right: 8.8235294118%;
  padding-top: 2em;
  padding-bottom: 2em;
  line-height: 1.8;
  letter-spacing: 0.12em;
}
body.petspecial .section .dot-lists {
  margin-top: 2rem;
  line-height: 1.5;
}
body.petspecial {
  /******** shopBox **********************************/
}
body.petspecial .shop_info_box {
  position: relative;
  letter-spacing: 0.1em;
  font-size: 3.3816425121vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .shop_info_box {
    font-size: 1.2258454106vw;
  }
}
body.petspecial .shop_info_box + .shop_info_box {
  margin-top: 4em;
}
body.petspecial .shop_info_box .shop_head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2cqi;
  line-height: 1;
}
body.petspecial .shop_info_box .shop_head .tag {
  width: 13.2352941176%;
  aspect-ratio: 1/1;
}
body.petspecial .shop_info_box .shop_head > div {
  background-position: left top;
  background-repeat: repeat-y;
  background-size: contain;
  padding-left: 1.5em;
}
body.petspecial .shop_info_box .shop_head .shop_name {
  margin-bottom: 0.6em;
}
body.petspecial .shop_info_box .shop_head .shop_name > span {
  display: inline-block;
}
body.petspecial .shop_info_box .shop_head .shop_name > span > span {
  font-size: 78%;
  margin-bottom: 0.3em;
  display: block;
}
body.petspecial .shop_info_box .shop_head .shop_name {
  font-size: 4.5893719807vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .shop_info_box .shop_head .shop_name {
    font-size: 1.663647343vw;
  }
}
body.petspecial .shop_info_box .shop_head .shop_floor {
  font-size: 3.1400966184vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .shop_info_box .shop_head .shop_floor {
    font-size: 1.1382850242vw;
  }
}
body.petspecial .shop_info_box .shop_text {
  margin-bottom: 3em;
  line-height: 1.8;
}
body.petspecial .shop_info_box .shop_images {
  position: relative;
  width: 100%;
  aspect-ratio: 1872/1249;
  overflow: visible;
}
@media screen and (max-width: 768px) {
  body.petspecial .shop_info_box .shop_images .swiper.swiper-cards {
    touch-action: pan-x pan-y;
    pointer-events: auto;
    -webkit-tap-highlight-color: transparent;
  }
}
body.petspecial .shop_info_box .shop_images .swiper-pagination {
  top: 100%;
  bottom: auto;
  text-align: left;
  line-height: 1;
}
body.petspecial .shop_info_box .shop_images .swiper-pagination-bullet {
  width: 5px;
  height: auto;
  aspect-ratio: 1/1;
  background-color: rgba(14, 14, 8, 0.4);
}
body.petspecial .shop_info_box .shop_images .swiper-pagination-bullet-active {
  background-color: #0e0e08;
}
body.petspecial .shop_info_box .shop_images .swiper-button-next,
body.petspecial .shop_info_box .shop_images .swiper-button-prev {
  width: 12.9411764706%;
  height: 15.4811715481%;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(../img/ico_arrow.svg);
  background-repeat: no-repeat;
  background-size: 40%;
  background-position: center center;
  transition: transform 0.4s ease-out;
  border: 0.3623188406vw solid #00888F;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .shop_info_box .shop_images .swiper-button-next,
  body.petspecial .shop_info_box .shop_images .swiper-button-prev {
    border-width: 0.1313405797vw;
  }
}
body.petspecial .shop_info_box .shop_images .swiper-button-next svg,
body.petspecial .shop_info_box .shop_images .swiper-button-prev svg {
  display: none;
}
body.petspecial .shop_info_box .shop_images .swiper-button-next {
  right: 0;
  transform: translate(50%, 0);
}
body.petspecial .shop_info_box .shop_images .swiper-button-next:hover {
  transform: translate(50%, 0) scale(1.2);
}
body.petspecial .shop_info_box .shop_images .swiper-button-prev {
  left: 0;
  transform: translate(-50%, 0) scale(-1, 1);
}
body.petspecial .shop_info_box .shop_images .swiper-button-prev:hover {
  transform: translate(-50%, 0) scale(-1.2, 1.2);
}
body.petspecial .shop_info_box .shop_images .swiper-slide {
  overflow: visible;
  border: 3px solid #fff;
  border-radius: 5%;
  overflow: hidden;
}
body.petspecial .shop_info_box .shop_items {
  margin-top: 3em;
}
body.petspecial .shop_info_box .shop_items li {
  padding-bottom: 1.5em;
  line-height: 1.8;
}
body.petspecial .shop_info_box .shop_items li:last-child {
  padding-bottom: 0;
}
body.petspecial .shop_info_box .shop_items li + li {
  border-top-style: dashed;
  border-top-width: 2px;
  padding-top: 1.5em;
}
body.petspecial .shop_info_box .shop_items li > * + * {
  margin-top: 0.75em;
}
body.petspecial .shop_info_box .shop_item,
body.petspecial .shop_info_box .shop_price,
body.petspecial .shop_info_box .shop_itemtext {
  line-height: 46/28;
  font-size: 3.3816425121vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .shop_info_box .shop_item,
  body.petspecial .shop_info_box .shop_price,
  body.petspecial .shop_info_box .shop_itemtext {
    font-size: 1.2258454106vw;
  }
}
body.petspecial .shop_info_box .shop_item {
  position: relative;
}
body.petspecial .shop_info_box .shop_item.rcm::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0.75em;
  width: 4em;
  aspect-ratio: 116/60;
  background-image: url(../img/icon_rcm1.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}
body.petspecial {
  /******** はじめに **********************************/
}
body.petspecial section.sec_1 {
  position: relative;
}
body.petspecial section.sec_1 .sec_header {
  position: absolute;
  top: -1.5em;
  width: 100%;
  z-index: 1;
}
body.petspecial section.sec_1 .sec_header h2 {
  width: 100%;
}
body.petspecial section.sec_1 .sec_header h2 p {
  width: 28.8235294118%;
  margin-left: auto;
  margin-right: auto;
}
body.petspecial section.sec_1 .sec_body {
  line-height: 54/30;
  font-size: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial section.sec_1 .sec_body {
    font-size: 1.3134057971vw;
  }
}
body.petspecial section.sec_1 .white-block {
  padding-top: 2.5em;
  padding-bottom: 4em;
  position: relative;
}
body.petspecial section.sec_1 .white-block::after {
  content: "";
  width: 10.8823529412%;
  aspect-ratio: 74/150;
  display: block;
  position: absolute;
  left: 0;
  background-image: url(../img/deco_footprints-2.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  bottom: -16.5458937198vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial section.sec_1 .white-block::after {
    bottom: -5.9978864734vw;
  }
}
body.petspecial {
  /******** sec_2 ペットのためのSHOP **********************************/
}
body.petspecial .section.sec_2 {
  margin-top: 16.5458937198vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 {
    margin-top: 5.9978864734vw;
  }
}
body.petspecial .section.sec_2 .sec_header {
  background-image: url(../img/sec_2_bg_header.webp);
  aspect-ratio: 828/517;
  overflow: hidden;
  padding-top: 15.7004830918vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_2 .sec_header {
    padding-top: 5.6914251208vw;
  }
}
body.petspecial .section.sec_2 .sec_header h2::before {
  background-image: url(../img/deco_for.svg);
}
body.petspecial .section.sec_2 .sec_header h2 {
  width: 100%;
}
body.petspecial .section.sec_2 .sec_header h2 p {
  width: 62.2058823529%;
  margin-left: auto;
}
body.petspecial {
  /******** sec_3 ペットと過ごせるSHOP **********************************/
}
body.petspecial .section.sec_3 {
  position: relative;
}
body.petspecial .section.sec_3::after {
  content: "";
  width: 10.8823529412%;
  aspect-ratio: 78/98;
  left: 52.0531400966%;
  background-image: url(../img/deco_footprints-3.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  display: block;
  position: absolute;
  top: -9.5410628019vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_3::after {
    top: -3.4586352657vw;
  }
}
body.petspecial .section.sec_3 .sec_header {
  background-color: #00888F;
  background-image: url(../img/sec_3_bg_header.webp);
  aspect-ratio: 828/468;
  padding-top: 13.6473429952vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_3 .sec_header {
    padding-top: 4.9471618357vw;
  }
}
body.petspecial .section.sec_3 .sec_header h2::before {
  background-image: url(../img/deco_with.svg);
  left: auto;
  right: 0;
  top: -17.7536231884vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_3 .sec_header h2::before {
    top: -6.4356884058vw;
  }
}
body.petspecial .section.sec_3 .sec_header h2 {
  width: 100%;
}
body.petspecial .section.sec_3 .sec_header h2 p {
  width: 72.6470588235%;
}
body.petspecial .section.sec_3 .sec_body {
  padding-bottom: 18.115942029vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_3 .sec_body {
    padding-bottom: 6.5670289855vw;
  }
}
body.petspecial .section.sec_3 .shop_info_box .shop_item.rcm::before {
  background-image: url(../img/icon_rcm2.svg);
}
body.petspecial {
  /******** sec_4 ペット同伴可能エリア **********************************/
}
body.petspecial .section.sec_4 {
  position: relative;
  overflow: hidden;
  background-color: #F5F0E5;
}
body.petspecial .section.sec_4 .sec_header {
  line-height: initial;
}
body.petspecial .section.sec_4 .sec_header::before {
  content: "";
  width: 100%;
  aspect-ratio: 828/323;
  left: 50%;
  border-radius: 50%;
  display: block;
  position: absolute;
  background-color: #ede8d8;
  transform: translateX(-50%);
  top: -17.5120772947vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_header::before {
    top: -6.3481280193vw;
  }
}
body.petspecial .section.sec_4 .sec_header h2::before {
  background-image: url(../img/deco_map.svg);
  left: 50%;
  transform: translate(-50%);
  aspect-ratio: 216/146;
  width: 26.0869565217vw;
  top: 9.9033816425vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_header h2::before {
    width: 9.4565217391vw;
    top: 3.5899758454vw;
  }
}
body.petspecial .section.sec_4 .sec_header h2 {
  padding-top: 30.7971014493vw;
  margin-bottom: 7.8502415459vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_header h2 {
    padding-top: 11.1639492754vw;
    margin-bottom: 2.8457125604vw;
  }
}
body.petspecial .section.sec_4 .sec_header h2 {
  width: 100%;
}
body.petspecial .section.sec_4 .sec_header h2 p {
  width: 92.0588235294%;
}
body.petspecial .section.sec_4 .sec_header p {
  line-height: 2;
}
body.petspecial .section.sec_4 .sec_body {
  position: relative;
  margin-top: 15.7004830918vw;
  padding: 0 0 15.7004830918vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_body {
    margin-top: 5.6914251208vw;
    padding: 0 0 5.6914251208vw;
  }
}
body.petspecial .section.sec_4 .sec_body::before {
  content: "";
  width: 15.9420289855%;
  aspect-ratio: 132/152;
  left: auto;
  background-image: url(../img/deco_footprints-4.svg);
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: -15.7004830918vw;
  right: 5.0724637681vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_body::before {
    top: -5.6914251208vw;
    right: 1.8387681159vw;
  }
}
body.petspecial .section.sec_4 .sec_body .btn-block {
  padding-left: 9.1787439614%;
  padding-right: 9.1787439614%;
  margin-top: 15.7004830918vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .sec_body .btn-block {
    margin-top: 5.6914251208vw;
  }
}
body.petspecial .section.sec_4 .map-area {
  width: 82.1256038647%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15.3381642512vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area {
    margin-top: 5.5600845411vw;
  }
}
body.petspecial .section.sec_4 .map-area button {
  transition: transform 0.4s ease-out;
}
body.petspecial .section.sec_4 .map-area button:hover {
  transform: scale(1.1);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  line-height: 1;
  row-gap: 1.9323671498vw;
  column-gap: 2.1739130435vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-tab-btns {
    row-gap: 0.7004830918vw;
    column-gap: 0.7880434783vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(1),
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(2) {
  width: calc((100% - 2.1739130435vw) / 2);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(3),
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(4) {
  width: 100%;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(1),
  body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(2) {
    width: calc((100% - 0.7880434783vw) / 2);
  }
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li button {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  width: 100%;
  text-indent: -100vw;
  overflow: hidden;
  height: 7.729468599vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-tab-btns li button {
    height: 2.8019323671vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(1) button {
  background-image: url(../img/map_btn_1.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(2) button {
  background-image: url(../img/map_btn_2.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(3) button {
  background-image: url(../img/map_btn_3.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(4) button {
  background-image: url(../img/map_btn_4.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(1) button.active {
  background-image: url(../img/map_btn_1_on.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(2) button.active {
  background-image: url(../img/map_btn_2_on.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(3) button.active {
  background-image: url(../img/map_btn_3_on.png);
}
body.petspecial .section.sec_4 .map-area .map-tab-btns li:nth-child(4) button.active {
  background-image: url(../img/map_btn_4_on.png);
}
body.petspecial .section.sec_4 .map-area .map-images,
body.petspecial .section.sec_4 .map-area .map-shops {
  position: relative;
}
body.petspecial .section.sec_4 .map-area {
  /* 初期状態 */
}
body.petspecial .section.sec_4 .map-area .map-images [data-tab],
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab],
body.petspecial .section.sec_4 .map-area .pet-modal,
body.petspecial .section.sec_4 .map-area .pet-modal ul li {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  position: absolute;
}
body.petspecial .section.sec_4 .map-area .pet-modal ul li.active {
  transition-delay: 0.3s;
}
body.petspecial .section.sec_4 .map-area {
  /* アクティブ時 */
}
body.petspecial .section.sec_4 .map-area .map-images [data-tab].active,
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab].active,
body.petspecial .section.sec_4 .map-area .pet-modal.active,
body.petspecial .section.sec_4 .map-area .pet-modal ul li.active {
  opacity: 1;
  visibility: visible;
  position: relative;
}
body.petspecial .section.sec_4 .map-area .map-images {
  position: relative;
  margin-top: 6.038647343vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-images {
    margin-top: 2.1890096618vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-images .pet-modal {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 7%;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.petspecial .section.sec_4 .map-area .map-images .pet-modal .content {
  width: 80%;
  background-color: #fff;
  padding: 7% 10% 5%;
  border: 2px solid #000000;
  position: relative;
  border-radius: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-images .pet-modal .content {
    border-radius: 1.3134057971vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-images .pet-modal .content .btn-close {
  position: absolute;
  right: 5%;
  top: 2%;
  cursor: pointer;
}
body.petspecial .section.sec_4 .map-area .map-images .pet-modal .content .name {
  text-align: center;
  line-height: 1.2;
  margin-bottom: 1em;
}
body.petspecial .section.sec_4 .map-area .map-images .pet-modal .content .name span {
  font-size: 81%;
}
body.petspecial .section.sec_4 .map-area .map-info {
  margin-top: 6.038647343vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-info {
    margin-top: 2.1890096618vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-info ul {
  margin-top: 0.75em;
  line-height: 1.5;
  font-size: 3.3816425121vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-info ul {
    font-size: 1.2258454106vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-shops .map-title-show {
  width: 38.6473429952%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1em;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  margin-top: 3.6231884058vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-shops .map-title-show {
    margin-top: 1.3134057971vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-shops .map-title-show.active {
  opacity: 1;
  visibility: visible;
}
body.petspecial .section.sec_4 .map-area .map-shops ul {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  line-height: 1;
  padding-left: 3.6764705882%;
  padding-right: 3.6764705882%;
  row-gap: 3.1400966184vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-shops ul {
    row-gap: 1.1382850242vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-shops ul li {
  width: 100%;
}
body.petspecial .section.sec_4 .map-area .map-shops ul li a {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  width: 100%;
  text-indent: -100vw;
  overflow: hidden;
  height: 11.3526570048vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_4 .map-area .map-shops ul li a {
    height: 4.1153381643vw;
  }
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(1) a {
  background-image: url(../img/map_1_shop-btn_1.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(2) a {
  background-image: url(../img/map_1_shop-btn_2.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(3) a {
  background-image: url(../img/map_1_shop-btn_3.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(4) a {
  background-image: url(../img/map_1_shop-btn_4.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(1) a:hover {
  background-image: url(../img/map_1_shop-btn_1_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(2) a:hover {
  background-image: url(../img/map_1_shop-btn_2_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(3) a:hover {
  background-image: url(../img/map_1_shop-btn_3_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="1"] li:nth-child(4) a:hover {
  background-image: url(../img/map_1_shop-btn_4_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(1) a {
  background-image: url(../img/map_3_shop-btn_1.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(2) a {
  background-image: url(../img/map_3_shop-btn_2.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(3) a {
  background-image: url(../img/map_3_shop-btn_3.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(4) a {
  background-image: url(../img/map_3_shop-btn_4.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(1) a:hover {
  background-image: url(../img/map_3_shop-btn_1_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(2) a:hover {
  background-image: url(../img/map_3_shop-btn_2_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(3) a:hover {
  background-image: url(../img/map_3_shop-btn_3_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="3"] li:nth-child(4) a:hover {
  background-image: url(../img/map_3_shop-btn_4_on.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="4"] li:nth-child(1) a {
  background-image: url(../img/map_4_shop-btn_1.png);
}
body.petspecial .section.sec_4 .map-area .map-shops ul[data-tab="4"] li:nth-child(1) a:hover {
  background-image: url(../img/map_4_shop-btn_1_on.png);
}
body.petspecial {
  /******** sec_5 ルール＆マナー **********************************/
}
body.petspecial .section.sec_5 {
  padding-left: 9.1787439614%;
  padding-right: 9.1787439614%;
  position: relative;
  background-color: #D8735F;
  padding-top: 15.7004830918vw;
  padding-bottom: 16.4251207729vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_5 {
    padding-top: 5.6914251208vw;
    padding-bottom: 5.9541062802vw;
  }
}
body.petspecial .section.sec_5 .white-block {
  position: relative;
  padding-top: 9.4202898551vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_5 .white-block {
    padding-top: 3.4148550725vw;
  }
}
body.petspecial .section.sec_5 .white-block::after {
  content: "";
  aspect-ratio: 216/146;
  display: inline-block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  background-image: url(../img/deco_rule.svg);
  width: 26.0869565217vw;
  left: -2.8985507246vw;
  top: -3.9855072464vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_5 .white-block::after {
    width: 9.4565217391vw;
    left: -1.0507246377vw;
    top: -1.4447463768vw;
  }
}
body.petspecial .section.sec_5 .sec_header,
body.petspecial .section.sec_5 .sec_body {
  padding-left: 0;
  padding-right: 0;
}
body.petspecial .section.sec_5 .sec_header h2 {
  width: 100%;
  margin-bottom: 1em;
}
body.petspecial .section.sec_5 .sec_header h2 p {
  margin-left: auto;
  width: 53.3823529412%;
}
body.petspecial .section.sec_5 .sec_header h2 {
  font-size: 4.8309178744vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_5 .sec_header h2 {
    font-size: 1.7512077295vw;
  }
}
body.petspecial .section.sec_5 .dot-lists {
  line-height: 75/27;
  margin-top: 8.4541062802vw;
  font-size: 3.2608695652vw;
}
@media print, screen and (min-width: 769px) {
  body.petspecial .section.sec_5 .dot-lists {
    margin-top: 3.0646135266vw;
    font-size: 1.1820652174vw;
  }
}
body.petspecial {
  /******** sec_upperfooter *****************************/
}
body.petspecial .sec_upperfooter {
  background-color: #fff;
}

/*********************************
 Animations
**********************************/
._f_in_bt {
  position: relative;
  top: 15dvh;
  opacity: 0;
  transition: top 0.8s, opacity 1.2s;
}
._f_in_bt._start {
  opacity: 1;
  top: 0;
}

._f_in_scale {
  position: relative;
  opacity: 0;
  transition: top 0.5s, opacity 0.5s, transform 0.5s;
  transform: scale(0.5);
}
._f_in_scale._start {
  opacity: 1;
  top: 0;
  transform: scale(1);
}

/*********************************
 btn_page_top
**********************************/
.btn_page_top {
  display: inline-block;
  position: fixed;
  bottom: 12px;
  right: 12px;
  opacity: 0;
  transition: opacity 0.5s ease-out;
  z-index: 100;
}
@media screen and (min-width: 769px) {
  .btn_page_top {
    right: calc(-12px + 10.3125vw + 12px);
  }
}
.btn_page_top .btn {
  display: inline-block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  width: 46px !important;
  border-radius: 50%;
  background-image: url(../img/ico_arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 40%;
  transform: rotate(-90deg);
}
.btn_page_top .btn:hover {
  background-color: #fff !important;
  transform: scale(1.1) rotate(-90deg) !important;
}
.btn_page_top._show {
  opacity: 1;
}
.btn_page_top._show .btn {
  pointer-events: all;
}

/*********************************
 Cookie banner
**********************************/
.cookie__banner {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 99;
  background: #fff;
  max-width: 420px;
  background: rgba(255, 255, 255, 0.9);
  border: 2px solid #b3d99c;
  transition: all 0.8s ease;
  opacity: 0;
  visibility: hidden;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .cookie__banner {
    left: 16px;
    right: 16px;
    bottom: 16px;
    margin: auto;
  }
}
.cookie__banner.is-active {
  transition: all 0.8s ease;
  opacity: 1;
  visibility: visible;
  z-index: 100;
}
.cookie__banner .cookie__inner {
  padding: 22px 19px;
}
@media screen and (max-width: 768px) {
  .cookie__banner .cookie__inner {
    padding: 20px 15px 25px;
  }
}
.cookie__banner .cookie__text {
  line-height: 1.75;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .cookie__banner .cookie__text {
    font-size: 12px;
    line-height: 1.45;
  }
}
.cookie__banner .cookie__link {
  color: #000;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .cookie__banner .cookie__link .cookie__link:hover {
    text-decoration: none;
  }
}
.cookie__banner .cookie__btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .cookie__banner .cookie__btns .cookie__btns {
    gap: 20px;
  }
}
.cookie__banner .cookie__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 184px;
  width: 100%;
  height: 46px;
  text-decoration: underline;
  border-radius: 23px;
  border: 1px solid transparent;
  text-align: center;
  font-size: 12px;
  cursor: pointer;
  transition: all 0.5s ease;
}
@media screen and (max-width: 768px) {
  .cookie__banner .cookie__btn:hover {
    border: 1px solid #b3d99c;
    background: linear-gradient(90deg, #fd0 0%, #b3d99c 100%);
    text-decoration: none;
    transition: all 0.5s ease;
  }
  .cookie__banner .cookie__btn.cookie__btn-agree {
    border: 1px solid #b3d99c;
    text-decoration: none;
  }
}
/*# sourceMappingURL=style.css.map */