@charset "utf-8";

html {overflow-x: hidden;}


#content { font-family: 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;}

h2.sub_title {font-size: 34px;line-height: 1.6;text-align: center;font-family: 'Noto Serif JP', serif; margin: 0 0 30px;}
h2.sub_title span {font-size: 24px;}
p.sub_copy {font-size: 14px;line-height: 2;text-align: center;}
@media screen and (max-width: 1160px) {
h2.sub_title {font-size: 2.93vw; margin: 0 0 2.58vw;}
h2.sub_title span {font-size: 2.06vw;}
p.sub_copy {font-size: 1.2vw;}
}
@media screen and (max-width: 767px) {
h2.sub_title {font-size: 4.43vw; margin: 0 0 2.58vw;}
h2.sub_title span {font-size: 3vw;}
p.sub_copy {font-size: 2.6vw;}
}

.form_title {margin: 0 0 80px;position: relative;}

.form_title .form_illust1{position: absolute;left: 5%;top: 50%;transform: translateY(-50%);
-webkit- transform: translateY(-50%); width: 116px;height: auto;}
.form_title .form_illust1 img {width: 100%;height: auto;}
.form_title .form_illust2{position: absolute;right: 5%;top: 50%;transform: translateY(-50%);
-webkit- transform: translateY(-50%); width: 60px;height: auto;}
.form_title .form_illust2 img {width: 100%;height: auto;}


@media screen and (max-width: 1160px) {
.form_title {margin: 0 0 6.89vw;}

.form_title .form_illust1{width: 11.6vw;}
.form_title .form_illust2{ width: 6vw;}
}
@media screen and (max-width: 767px) {
.form_title {margin: 0 0 5vw;}

.form_title .form_illust1{left: 5%;top: 7%;}
.form_title .form_illust2{right: 5%;top: 10%;}
}


.contact_block {width: 100%; background: #eff5f6;padding: 100px 0 ;margin: 0 0 100px;}
.contact {width: 960px;margin:0 auto; padding:50px;background: #fff; position: relative;border-radius: 40px;font-family: "M PLUS Rounded 1c", sans-serif;}
@media screen and (max-width: 1160px) {
.contact_block {padding: 8.62vw 0 ;margin: 0 0 8.62vw;}
}
@media screen and (max-width: 767px) {
.contact_block {padding: 5vw 0 ;margin: 0 0 5vw;}
.contact {width: 90%;margin:0 auto; background: #ffffff;padding:7.5vw 0;border-radius: 7.5vw;}

.sec_inner {margin: 0 7.5vw;}
}


.ui-widget.ui-widget-content {font-size: 1.2rem;}









body {padding-top: 120px;}
@media screen and (max-width: 1160px) {
body {padding-top: 8.62vw;}
}
@media screen and (max-width: 767px) {
body {padding-top: 60px;}
}


#about,
#pet_hall,
#plan,
#friends_meeting,
#product,
#contact {padding-top: 120px;margin-top: -120px;}
@media screen and (max-width: 1160px) {
#about,
#pet_hall,
#plan,
#friends_meeting,
#product,
#contact {padding-top: 8.62vw;margin-top: -8.62vw;}
}
@media screen and (max-width: 767px) {
#about,
#pet_hall,
#plan,
#friends_meeting,
#product,
#contact {padding-top: 60px;margin-top: -60px;}
}


.pc {display: block;}
.tabrat {display: none;}
.sph {display: none;}
@media screen and (max-width: 1160px) {

.tabrat {display: block;}
.sph {display: none;}
}
@media screen and (max-width: 767px) {
.pc {display: none;}
.tabrat {display: block;}
.sph {display: block;}
}

header {position: fixed!important;top: 0;left: 0;width: 100%;}
.header {width: 100%;height: 120px;background: #81d8d0;position: fixed;z-index: 10000;}
.header__inner h1.logo {width: 210px; z-index:1;position: absolute;top: 27px;left: 34px;}
.header__inner h1.logo a {display: block;}
.header__inner h1.logo img {width: 100%;height: auto;}
.header__inner .pc {}
.header__inner .pc .header_contact  {z-index:1;position: absolute;right: 104px;top: 20px; display:flex;flex-wrap:wrap;align-items: center;}
.header__inner .pc .header_contact .header_call { width: 220px;margin-right: 15px;position: relative;}
.header__inner .pc .header_contact .header_call a {background:#b89b5e;border-radius:6px;color: #fff; text-decoration: none;padding: 8px;display: block;transition: opacity 0.3s ease;}
.header__inner .pc .header_contact .header_call a:hover {opacity: .7;}
.header__inner .pc .header_contact .header_call p.header_call_title{font-size: 12px;font-weight: 700; margin: 0 0 0 40px;}
.header__inner .pc .header_contact .header_call p.header_call_number{font-size: 18px;font-weight: 700; position: relative;line-height: 20px;margin: 6px 0 0 40px;}
.header__inner .pc .header_contact .header_call a:before {content: '';display: inline-block;width: 40px;height: 40px;background-image: url("/pet/images/icon_call.svg") ;background-size: contain;vertical-align: middle;position: absolute;left:8px;top: 50%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}
.header__inner .pc .header_contact .header_mail{position: relative;}
.header__inner .pc .header_contact .header_mail a {width: 220px;height: 54px;background:#b89b5e;border-radius:6px;display: block; color: #fff;text-decoration: none;transition: opacity 0.3s ease;}
.header__inner .pc .header_contact .header_mail a p.mail_text {font-size: 18px;line-height: 54px;font-weight: 700;text-align: center;margin: 0 0 0 40px;}
.header__inner .pc .header_contact .header_mail a:hover {opacity: .7;}
.header__inner .pc .header_contact .header_mail a:before {content: '';display: inline-block;width: 40px;height: 40px;background-image: url("/pet/images/icon_mail.svg") ;background-size: contain;vertical-align: middle;position: absolute;left:8px;top: 50%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}
.header__inner .insta {width: 54px; z-index:1;position: absolute;top: 20px;right: 34px;}
.header__inner .insta img {width: 100%;height: auto;}
.header__inner .insta a {transition: opacity 0.3s ease;}
.header__inner .insta a:hover {opacity: .5;}

@media (min-width: 1160px) {
.header__inner nav {position: absolute;bottom: 14px;left: 50%;transform: translateX(-50%);visibility: visible;z-index: 1000;}
}

.header__inner nav ul {display: flex;gap: 20px;}
.header__inner nav ul li a {font-size: 14px;white-space: nowrap}
.header__inner nav ul li a:hover {color: #b89b5e;}
@media (max-width: 1160px) {
.header {height: 8.62vw;}
.header__inner h1.logo {width: 17.93vw;top: 50%;transform: translateY(-50%);
-webkit- transform: translateY(-50%);left: 2.93vw;}
.header__inner .pc .header_contact  {right: 13vw;top: 50%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);}
.header__inner .pc .header_contact .header_call { width: 18.96vw;margin-right: 1.29vw;}
.header__inner .pc .header_contact .header_call a {border-radius:0.51vw;padding: 0.68vw;}
.header__inner .pc .header_contact .header_call p.header_call_title{font-size: 1.03vw;margin: 0 0 0 3.44vw;}
.header__inner .pc .header_contact .header_call p.header_call_number{font-size: 1.55vw;line-height: 1.72vw;margin: 0.51vw 0 0 3.44vw;}
.header__inner .pc .header_contact .header_call a:before {width: 3.44vw;height: 3.44vw;left:0.68vw;}
.header__inner .pc .header_contact .header_mail a {width: 18.96vw;height: 4.65vw;border-radius:0.51vw;}
.header__inner .pc .header_contact .header_mail a p.mail_text {font-size: 1.55vw;line-height: 4.65vw;margin: 0 0 0 3.44vw;}
.header__inner .pc .header_contact .header_mail a:before {width: 3.44vw;height: 3.44vw;left:0.68vw;}
.header__inner .insta {width: 4.65vw; top: 1.72vw;right: 7vw;}
}
@media screen and (max-width: 767px) {


.header__inner .insta {width: 7vw;right:70px;top: 50%;
transform: translateY(-50%);}


}


/* =====================
 ハンバーガー初期非表示
===================== */
.hamburger {display: none;z-index: 1200;}
body.menu-open {overflow: hidden;position: fixed;width: 100%;}
/* =====================
 タブレット・スマホ
===================== */
@media (max-width: 1160px) {
/* ===== ハンバーガー ===== */
.hamburger {display: block;position: absolute;right: 20px;top: 50%;transform: translateY(-50%);-webkit- transform: translateY(-50%);width: 30px;height: 24px;cursor: pointer;z-index: 1000000;}
.hamburger span {display: block;height: 3px;background: #000;margin-bottom: 6px;transition: 0.3s;}
.hamburger.active span:nth-child(1) {transform: translateY(9px) rotate(45deg);}
.hamburger.active span:nth-child(2) {opacity: 0;}
.hamburger.active span:nth-child(3) {transform: translateY(-9px) rotate(-45deg);}

/* ===== ナビ ===== */
.header__inner nav {position: fixed;top: 0;right: 0;transform: translateX(100%);width: 40%;height: 100vh;background: #81d8d0;padding: 100px 20px 20px;opacity: 0;visibility: hidden;position: fixed;z-index: 100000;}
.header__inner nav.open {transform: translateX(0);opacity: 1;visibility: visible;}
.header__inner nav ul {flex-direction: column;gap: 25px;}

.header__inner nav .nav_logo{width: 80%;margin:0 auto 5vh;}
.header__inner nav .nav_logo img {width: 100%;height: auto;}

/* ===== オーバーレイ ===== */
.overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(255,255,255,0.3);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);opacity: 0;visibility: hidden;transition: 0.3s;z-index: 9000;}
.overlay.active {opacity: 1;visibility: visible;}
}

/* =====================
スマホ
===================== */
@media (max-width: 767px) {
.header {height: 60px;}
.header__inner h1.logo {width: 200px;top: 50%;left: 5%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}
.header__inner .pc .header_contact {left: 15px;top: 60px;flex-direction: column;}
.hamburger {top: 50%;right: 5%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}
.header__inner nav {width: 60%;left: auto;right: 0;padding: 12vh 0 ;}

.header__inner nav li {}
.header__inner nav li .header_call { width: 80%;margin: auto;position: relative;}
.header__inner nav li .header_call a {height: 54px; background:#b89b5e;border-radius:6px;color: #fff; text-decoration: none;padding: 0;display: block;transition: opacity 0.3s ease;}
.header__inner nav li .header_call p.header_call_title{font-size: 12px;font-weight: 700; margin: 0 0 0 10vw;padding: 10px 0 0;}
.header__inner nav li .header_call a:hover {opacity: 1;color: #fff;}
.header__inner nav li .header_call p.header_call_number{font-size: 15px;font-weight: 700; position: relative;line-height: 1;margin: 6px 0 0 10vw;}
.header__inner nav li .header_call a:before {content: '';display: inline-block;width:10vw;height:10vw;background-image: url("/pet/images/icon_call.svg") ;background-size: contain;vertical-align: middle;position: absolute;left:8px;top: 50%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}
.header__inner nav li .header_mail{width: 80%;margin: auto;position: relative;}
.header__inner nav li .header_mail a {height:54px;background:#b89b5e;border-radius:6px;display: block; color: #fff;text-decoration: none;transition: opacity 0.3s ease;}
.header__inner nav li .header_mail a:hover {opacity: 1;color: #fff;}
.header__inner nav li .header_mail a p.mail_text {font-size: 15px;line-height: 54px;font-weight: 700;text-align: center;margin: 0 0 0 10vw;}
.header__inner nav li .header_mail a:before {content: '';display: inline-block;width: 10vw;height:10vw;background-image: url("/pet/images/icon_mail.svg") ;background-size: contain;vertical-align: middle;position: absolute;left:8px;top: 50%;transform: translateY(-50%);-webkit- transform: translateY(-50%);}


}






.kv {width: 100%;position: relative;margin: 0 0 100px;}
.kv img{width: 100%;height: auto;}
.kv .kv_title {position: absolute;left: 6vw;top: 6vw;}
.kv .kv_title h2.title{font-size: 34px;line-height: 1.6;font-family: 'Noto Serif JP', serif;text-align: left;}
.kv .kv_title p.title_sub {font-size: 20px;line-height: 1;padding: 12px 40px;display: block;background: #81d8d0;border-radius: 6px;margin: 0 0 20px;}
.kv .kv_icon {width: 192px;height: auto; position: absolute;right: 6vw;top: 6vw;}
.kv .kv_icon img {width: 100%;height: auto;}
@media screen and (max-width: 1160px) {
.kv .kv_title h2.title{font-size: 2.93vw}
.kv .kv_title p.title_sub {font-size: 1.72vw;padding: 1.03vw 3.44vw;margin: 0 0 1.72vw;}
.kv .kv_icon {width: 16.55vw;}

}
@media screen and (max-width: 767px) {
.kv {margin: 0 0 10vw;}
.kv .kv_title {left: 5vw;top: 5vw;text-align: left;}
.kv .kv_title h2.title{font-size: 4vw}
.kv .kv_title p.title_sub {font-size: 3vw;padding: 1.6vw 3.44vw ;border-radius: 1.72vw;margin: 0 0 1.72vw;display: inline-block;}
.kv .kv_icon {width: 20vw;right: 5vw;top: 15vw;}

}

.kv {
  opacity: 0;
  transition: opacity 1.2s ease;
}

.kv.active {
  opacity: 1;
}




@keyframes kvZoom {
from { transform: scale(1.1); }
to { transform: scale(1.0); }
}

.kv_title {
opacity: 0;
transform: translateY(30px);
animation: fadeUp 1.5s ease forwards;
animation-delay: 0.5s;
}

@keyframes fadeUp {
to {
opacity: 1;
transform: translateY(0);
}
}

.fadein {
opacity: 0;
transform: translateY(40px);
transition: 0.8s ease;
}

.fadein.active {
opacity: 1;
transform: translateY(0);
}



.about {width: 1060px;margin:0 auto 50px;display: flex;align-items: center;justify-content: space-between;gap: 40px;}
.about_text {text-align: left;order: 1;flex: 1;position: relative;}
.about_pic {width: 460px;order: 2;flex-shrink: 0;overflow: hidden;}
.about_pic img {width: 100%;height: auto;display: block;}
.about_pic, .about_pic > img {margin: 0; padding: 0;border: 0;}
.about_pic {position: relative;display: inline-block;font-size: 0;line-height: 0;}
.about_pic:after {position: absolute;left: 0; top: 0; right: 0; bottom: 0;-moz-box-shadow: inset 0px 0px 30px 30px #fff;-webkit-box-shadow: inset 0px 0px 30px 30px #fff;box-shadow: inset 0px 0px 30px 30px #fff;content: " ";}
.about .about_text p.title_sub {font-size: 20px;line-height: 1;padding: 12px 40px;display: inline-block;background: #81d8d0;border-radius: 6px;margin: 0 0 20px;}
.about .about_text h2.title {font-size: 34px;line-height: 1.6;font-family: 'Noto Serif JP', serif;text-align: left;margin: 0 0 50px;}
.about .about_text p.text {font-size: 14px;line-height: 2;}

.hall_list {text-align: center; width: 1060px;margin:0 auto 100px;padding: 40px 0; border: 6px solid #ddebec;background: #e6f2f2;border-radius: 60px;}
.hall_list h2.title {font-size: 26px;line-height: 1.6;color: #3aafa9; font-family: 'Noto Serif JP', serif;margin: 0 0 45px;}
.hall_list ul.list {margin: 0 40px;display: flex;justify-content: space-between;gap: 20px;text-align: center;}
.hall_list ul.list li {width: calc((100% - 60px) / 4); /* 4列 */}
.hall_list ul.list li .hall_pic {border-radius: 20px;}
.hall_list ul.list li .hall_pic img {width: 100%;height: auto;margin: 0 0 10px;}
.hall_list ul.list li p.hall_name {font-size: 14px;line-height: 1.6;}
.hall_list ul.list li p.hall_name span {font-size: 16px;line-height: 1.6;display: block;}
@media screen and (max-width: 1160px) {

.about {width: 91.37vw;margin:0 auto 4.31vw;gap: 3.44vw;}
.about_pic {width: 39.65vw;}
.about_pic:after {-moz-box-shadow: inset 0px 0px 2.58vw 2.58vw #fff;-webkit-box-shadow: inset 0px 0px 2.58vw 2.58vw #fff;box-shadow: inset 0px 0px 2.58vw 2.58vw #fff;}
.about .about_text p.title_sub {font-size: 1.72vw;padding: 1.03vw 3.44vw;border-radius: 0.51vw;margin: 0 0 1.72vw;}
.about .about_text h2.title {font-size: 2.93vw;margin: 0 0 4.31vw;}
.about .about_text p.text {font-size: 1.2vw;}

.hall_list {width: 91.37vw;margin:0 auto 8.62vw;padding: 3.44vw 0; border: 0.51vw solid #ddebec;border-radius: 5.17vw;}
.hall_list h2.title {font-size: 2.24vw;margin: 0 0 3.87vw;}
.hall_list ul.list {margin: 0 3.44vw;gap: 1.72vw;}
.hall_list ul.list li {width: calc((100% - 5.17vw) / 4); /* 4列 */}
.hall_list ul.list li .hall_pic {border-radius: 1.72vw;}
.hall_list ul.list li .hall_pic img {margin: 0 0 0.86vw;}
.hall_list ul.list li p.hall_name {font-size: 1.2vw;}
.hall_list ul.list li p.hall_name span {font-size: 1.37vw;}

}
@media screen and (max-width: 767px) {

.about {width: 80vw;margin:0 auto 5vw;flex-direction: column; /* ←これが重要 */}
.about_pic {width: 100%;order: 1; /* 画像を上に */}
.about_text {width: 100%;order: 2; /* テキストを下に */}
.about .about_text p.title_sub {font-size: 3vw;padding: 1.6vw 3.44vw ;margin: 0 0 1.72vw;display: inline-block;}
.about .about_text h2.title {font-size: 4vw;margin: 0 0 5vw;}
.about .about_text p.text {font-size: 3vw;}

.hall_list {width: 90vw;margin:0 auto 10vw;}
.hall_list h2.title {font-size: 3.6vw;margin: 0 0 2.5vw;}
.hall_list ul.list {display: flex;flex-wrap: wrap;margin: 0 5vw;gap: 1vw;}
.hall_list ul.list li {width: calc((100% - 2.5vw) / 2);margin: 0 0 2vw}
.hall_list ul.list li .hall_pic {border-radius: 2vw;}
.hall_list ul.list li .hall_pic img {margin: 0 0 1.5vw;}
.hall_list ul.list li p.hall_name {font-size:2.8vw;}
.hall_list ul.list li p.hall_name span {font-size: 3.2vw;}
.hall_list ul.list li:nth-last-child(-n+2) {
  margin-bottom: 0;
}

}




.plan_back {background: #81d8d0;padding: 100px 0 50px;margin: 0 0 100px;}
.plan {width: 1060px;margin: auto; text-align: center;}
.plan h2.title {font-size: 34px;line-height: 1.6;font-family: 'Noto Serif JP', serif;margin: 0 0 50px;}
.plan .plan_box {background: #fff;border-radius: 60px;margin: 0 0 50px;padding: 50px 40px 50px 50px;  overflow: hidden;position: relative;  display: flex;
  flex-wrap: wrap; /* ←これが重要 */
  gap: 40px;}

.plan .plan_box .plan_pic {width: 400px;height: 400px; border-radius: 20px;overflow: hidden;flex-shrink: 0;}
.plan .plan_box .plan_pic img {width: 100%;height: auto;}
.plan .plan_box .plan_text {overflow: visible;text-align: left;flex: 1;}
.plan .plan_box .plan_text2 {display: block;text-align: left;width: 100%;}

.plan .plan_box h3.title {font-size: 32px;line-height: 1.6;font-family: 'Noto Serif JP', serif;margin: 0 0 20px;}
.plan .plan_box p.text_plan {font-size: 16px;line-height: 2;margin: 0 0 20px;}
.plan .plan_box h4.sub_title {display: block; margin: 0 0 20px;}
.plan .plan_box h4.sub_title span {font-size: 16px;line-height: 1;padding: 12px 20px;display:inline-block;background: #81d8d0;border-radius: 6px;}
.plan .plan_box .flow_title {clear: both;}
.plan .plan_box p.price {font-size: 16px;line-height: 1.6;font-weight: 700;}
.plan .plan_box p.price span {font-size: 28px;line-height: 1.6; color: #3aafa9;}
.plan .plan_box ul.plan_list{margin: 0 0 20px;}
.plan .plan_box ul.plan_list li {font-size: 14px;line-height: 1;background: #e6f2f2;display: inline-block;padding: 8px 16px;border-radius: 6px;margin: 0 5px 5px 0;}
.plan .plan_box p.plan_flow {font-size: 14px;line-height: 1.6;background: #e6f2f2;display: inline-block;padding: 8px 16px;border-radius: 6px;}

.plan_box .plan_illust1{width: 126px;height: 140px; position: absolute;right: 120px;bottom: 40px;}
.plan_box .plan_illust1 img {width: 100%;height: auto;}
.plan_box .plan_illust2{width: 108px;height: 86px;position: absolute;right: 40px;bottom: 40px;}
.plan_box .plan_illust2 img {width: 100%;height: auto;}
@media screen and (max-width: 1160px) {
.plan_back {padding: 8.62vw 0 4.31vw;margin: 0 0 8.62vw;}
.plan {width: 91.37vw;}
.plan h2.title {font-size: 2.93vw;margin: 0 0 4.31vw;}
.plan .plan_box {border-radius: 5.17vw;margin: 0 0 4.31vw;padding: 4.31vw 3.44vw 4.31vw 4.31vw;gap: 3.44vw;}

.plan .plan_box .plan_pic {width: 34.48vw;height: 34.48vw; border-radius: 1.72vw;}
.plan .plan_box .plan_text {min-height: 36.20vw;}
.plan .plan_box h3.title {font-size: 2.75vw;margin: 0 0 1.72vw;}
.plan .plan_box p.text_plan {font-size: 1.37vw;margin: 0 0 1.72vw;}
.plan .plan_box h4.sub_title {margin: 0 0 1.72vw;}
.plan .plan_box h4.sub_title span {font-size: 1.37vw;padding: 1.03vw 1.72vw;border-radius: 0.51vw;}
.plan .plan_box p.price {font-size: 1.37vw;}
.plan .plan_box p.price span {font-size: 2.41vw;}
.plan .plan_box ul.plan_list{margin: 0 0 1.72vw;}
.plan .plan_box ul.plan_list li {font-size: 1.2vw;padding: 0.68vw 1.37vw;border-radius: 0.51vw;margin: 0 0.43vw 0.43vw 0;}
.plan .plan_box p.plan_flow {font-size: 1.2vw;padding: 0.68vw 1.37vw;border-radius: 0.51vw;}
.plan_box .plan_illust1{width: 10.86vw;height: 12.06vw;right: 10.34vw;bottom: 3.44vw;}
.plan_box .plan_illust2{width: 9.31vw;height: 7.41vw;right: 3.44vw;bottom: 3.44vw;}

}
@media screen and (max-width: 767px) {
.plan_back {padding: 10vw 0 5vw;margin: 0 0 10vw;}
.plan {width: 90vw;}
.plan h2.title {font-size: 4vw;margin: 0 0 5vw;}
.plan .plan_box {border-radius: 5.17vw;margin: 0 0 4.31vw;padding: 4.31vw;}

.plan .plan_box .plan_pic {border-radius: 2vw;width: 100%;height: auto; float: none;margin: 0 0 4vw 0;}
.plan .plan_box .plan_text {}
.plan .plan_box h3.title {font-size:4vw;margin: 0 0 2.5vw;}
.plan .plan_box p.text_plan {font-size: 3vw;margin: 0 0 2.5vw;}
.plan .plan_box h4.sub_title {margin: 0 0 2.5vw;}
.plan .plan_box h4.sub_title span {font-size: 3vw;padding: 1.6vw 3.44vw ;border-radius: 1.72vw;}
.plan .plan_box p.price {font-size: 3vw;}
.plan .plan_box p.price span {font-size: 4vw;}
.plan .plan_box ul.plan_list{margin: 0 0 2.5vw;}
.plan .plan_box ul.plan_list li {font-size: 3vw;padding: 1.6vw 3.44vw;border-radius: 1.72vw;margin: 0 .5vw .5vw 0;}
.plan .plan_box p.plan_flow {font-size: 3vw;line-height: 1.6; padding: 1.6vw 3.44vw;border-radius: 0.51vw;}
.plan_box .plan_illust1{width: 15vw;height: 12.06vw;right: 10.34vw;bottom: 25vw;}
.plan_box .plan_illust2{width: 15vw;height: 7.41vw;right: 3.44vw;bottom: 18vw;}

}


.friends_meeting {width: 920px;margin: 0 auto 100px;}
.friends_meeting img {width: 100%;height: auto;}
@media screen and (max-width: 1160px) {
.friends_meeting {width: 79.31vw;margin: 0 auto 8.62vw;}

}
@media screen and (max-width: 767px) {
.friends_meeting {width: 80vw;margin: 0 auto 10vw;}

}


.about_fees {width: 920px;margin:0 auto 100px;}
.about_fees_title {position: relative;padding: 0 0 50px;border-bottom: 1px solid #81d8d0;margin: 0 0 50px;}
.about_fees_title h2.title {font-size: 34px;line-height: 1.6;font-family: 'Noto Serif JP', serif;margin: 0 0 50px;}
.about_fees_title p.text {font-size: 14px;line-height: 2;}
.about_fees_illust1{width: 102px;height: 76px; position: absolute;left: 60px;bottom: -2px;}
.about_fees_illust1 img {width: 100%;height: auto;}
.about_fees_illust2{width: 82px;height: 100px;position: absolute;right: 60px;bottom:-2px;}
.about_fees_illust2 img {width: 100%;height: auto;}
ul.about_fees_flow {}
ul.about_fees_flow li {border: 6px solid #81d8d0;border-radius: 20px;position: relative;overflow: visible;margin: 0 0 80px;}
ul.about_fees_flow li:last-child {margin: 0;}
ul.about_fees_flow li dl {}
ul.about_fees_flow li dl dt {font-size: 24px;line-height: 60px;background: #81d8d0;}
ul.about_fees_flow li dl dd {padding: 30px;text-align: left;}
ul.about_fees_flow li dl dd p.text{font-size: 18px;line-height:1.6;}
ul.about_fees_flow li dl dd p.caption{font-size: 14px;line-height:1.6;margin: 10px 0 0;}

ul.about_fees_flow li::after {content: "";position: absolute;left: 50%;transform: translateX(-50%);bottom: -66px; /* liの下に出す */width: 40px;   /* サイズ調整 */height: 40px;background-size: contain;background-repeat: no-repeat;}
ul.about_fees_flow li:nth-child(1)::after {background-image: url("/pet/images/plus.svg");}
ul.about_fees_flow li:nth-child(2)::after {background-image: url("/pet/images/equal.svg");}
@media screen and (max-width: 1160px) {
.about_fees {width: 79.31vw;margin:0 auto 8.62vw;}
.about_fees_title {padding: 0 0 4.31vw;margin: 0 0 4.31vw;}
.about_fees_title h2.title {font-size: 2.93vw;margin: 0 0 4.31vw;}
.about_fees_title p.text {font-size: 1.2vw;}
.about_fees_illust1{width: 8.79vw;height: 6.55vw;left: 5.17vw;bottom: -2px;}
.about_fees_illust2{width: 7.06vw;height: 8.62vw;right: 5.17vw;bottom:-2px;}
ul.about_fees_flow li {border: 0.51vw solid #81d8d0;border-radius: 1.72vw;margin: 0 0 6.89vw;}
ul.about_fees_flow li dl dt {font-size: 2.06vw;line-height: 5.17vw;}
ul.about_fees_flow li dl dd {padding: 2.58vw;}
ul.about_fees_flow li dl dd p.text{font-size: 1.55vw;}
ul.about_fees_flow li dl dd p.caption{font-size: 1.2vw;margin: 0.86vw 0 0;}
ul.about_fees_flow li::after {width: 3.44vw;height: 3.44vw;}


}
@media screen and (max-width: 767px) {
.about_fees {width: 80vw;margin:0 auto 10vw;}
.about_fees_title {padding: 0 0 4.31vw;margin: 0 0 4.31vw;}
.about_fees_title h2.title {font-size: 4vw;margin: 0 0 4.31vw;}
.about_fees_title p.text {font-size: 3vw;}
.about_fees_illust1{width: 12vw;height: auto;left: 2.5vw;bottom: -2px;}
.about_fees_illust2{width: 10vw;height: auto;right: 2.5vw;bottom:-2px;}
ul.about_fees_flow li {border: 0.51vw solid #81d8d0;border-radius: 1.72vw;margin: 0 0 10vw;}
ul.about_fees_flow li dl dt {font-size: 3.4vw;line-height: 6.8vw;}
ul.about_fees_flow li dl dd {padding: 3vw;}
ul.about_fees_flow li dl dd p.text{font-size: 3vw;}
ul.about_fees_flow li dl dd p.caption{font-size: 2.8vw;margin: 2.5vw 0 0;}
ul.about_fees_flow li::after {bottom: -8vw;width: 5vw;height: 5vw;}

}


.pricing_plans_back {width: 1060px;background: #e6f2f2;border-radius: 60px;margin:0 auto 100px;}
.pricing_plans {margin: auto;position: relative;padding: 40px;}
.pricing_plans h2.title {font-size: 34px;line-height: 1.6;color: #3aafa9; font-family: 'Noto Serif JP', serif;margin: 0 0 40px;}
.pricing_plans .price_illust1{width: 116px;height: 60px; position: absolute;left: 100px;top:65px;}
.pricing_plans .price_illust1 img {width: 100%;height: auto;}
.pricing_plans .price_illust2{width: 102px;height: 110px;position: absolute;right: 100px;top:30px;}
.pricing_plans .price_illust2 img {width: 100%;height: auto;}

/* テーブル */
.table_wrap {overflow-x: auto;}
.price_table {width: 100%;border-collapse: separate;min-width: 700px;border-spacing: 4px;margin: 0 0 50px;}
.price_table th,
.price_table td {padding: 14px;text-align: center;background: #fff;}
.price_table th {font-size: 14px;line-height: 1.6;background: #7fcac3;border-top-left-radius: 14px;  border-top-right-radius: 14px;}
.price_table .weight {font-size: 14px;line-height: 1.6;background: #000;color: #fff;}
.price_table td {font-size: 18px;line-height: 1.6;}
.price_table td span {font-size: 28px;line-height: 1.6;font-weight: 700;}


.option_list {display: flex;gap: 40px;justify-content: center;flex-wrap: wrap;text-align: left;}
.option_item {width: calc(50% - 20px); /* 2列 */display: flex;gap: 20px;align-items: center;}
.option_item img {width: 180px;height: auto;border-radius: 12px;}
.option_text h4 {font-size: 18px;margin-bottom: 20px;}
.option_text span {font-size: 20px;margin-left: 2em;font-weight: bold;}
.option_text p {font-size: 14px;line-height: 1.6;}


@media screen and (max-width: 1160px) {

.pricing_plans_back {width: 91.37vw;border-radius: 5.17vw;margin:0 auto 8.62vw;}
.pricing_plans {padding: 3.44vw;}
.pricing_plans h2.title {font-size: 2.93vw;margin: 0 0 3.44vw;}
.pricing_plans .price_illust1{width: 10vw;height: 5.17vw;left: 8.62vw;top:5.6vw;}
.pricing_plans .price_illust2{width: 8.79vw;height: 9.48vw;right: 8.62vw;top:2.58vw;}

.price_table {border-spacing: 0.34vw;min-width: inherit;margin: 0 0 4.31vw;}
.price_table th,
.price_table td {padding: 1.2vw;white-space: nowrap;}
.price_table th {font-size: 1.2vw;border-top-left-radius: 1.2vw;  border-top-right-radius: 1.2vw;}
.price_table .weight {font-size: 1.2vw;}
.price_table td {font-size: 1.55vw;}
.price_table td span {font-size: 2.41vw;}
.option_list {gap: 3.44vw;}


.option_item img {width: 15.51vw;border-radius: 1.03vw;}
.option_text h4 {font-size: 1.55vw;margin-bottom: 1.72vw;}
.option_text span {font-size: 1.72vw;}
.option_text p {font-size: 1.2vw;}
}
@media screen and (max-width: 767px) {
.pricing_plans_back {width: 90vw;margin:0 auto 10vw;}
.pricing_plans {padding: 5vw;}
.pricing_plans h2.title {font-size: 4vw;margin: 0 0 3vw;}
.pricing_plans .price_illust1{width: 10vw;height: 5.17vw;left: 8.62vw;top:5.6vw;}
.pricing_plans .price_illust2{width: 8.79vw;height: 9.48vw;right: 8.62vw;top:2.58vw;}

.price_table {border-spacing: 1vw;margin: 0 0 5vw;}
.price_table th,
.price_table td {padding: 2vw;}
.price_table th {font-size: 3vw;border-top-left-radius: 2vw;  border-top-right-radius: 2vw;}
.price_table .weight {font-size: 3vw;}
.price_table td {font-size: 3vw;}
.price_table td span {font-size: 4vw;}
.option_item {width: 100%;display: flex;flex-direction: row;align-items: center;}
.option_item img {width: 28vw;flex-shrink: 0;border-radius: 1.03vw;}
.option_text {flex: 1;text-align: left;}
.option_text h4 {font-size: 3.4vw;margin-bottom: 2.5vw;}
.option_text span {font-size: 3.6vw;}
.option_text p {font-size: 3vw;}
}


.memorial_items {width: 1060px;margin:0 auto 30px;text-align: left;position: relative;}
.goods_illust {width: 310px; position: absolute;right: 60px;bottom: 60px;}
.goods_illust img {width: 100%;height: auto;}
.memorial_items h2.title {font-size: 34px;line-height: 1.6;font-family: 'Noto Serif JP', serif;margin: 0 0 80px;text-align: center;}
.memorial_items h3.sub_title {display: inline-block;margin: 0 0 20px;text-align: left}
.memorial_items h3.sub_title span {font-size: 20px;line-height: 1;padding: 12px 20px 10px;display:inline-block;background: #81d8d0;border-radius: 6px;}
.memorial_items p.text {display: inline-block; font-size: 18px;line-height: 1.6;font-family: 'Noto Serif JP', serif;margin: 0 0 50px 50px;text-align: left;}
.product_list {display: grid;grid-template-columns: repeat(2, 1fr);gap: 24px 16px;width: 1060px;margin: 0 auto;list-style: none;margin: 0 0 70px;}
/* PC：4列 */
@media (min-width: 768px) {
.product_list {grid-template-columns: repeat(4, 1fr);gap: 40px 30px;}
}

.product_item {text-align: left;}
.product_item .img_wrap {border: 1px solid #e5e5e5;border-radius: 12px;overflow: hidden;margin-bottom: 20px;text-align: center;}
.product_item .img_wrap img {max-width: 100%;height: auto;display: block;}
.product_item .img_wrap_2{border-radius: 12px;margin-bottom: 20px;text-align: center;}
.product_item .img_wrap_2 img {max-width: 100%;height: auto;}
.product_item p.name {font-size: 14px;line-height: 1.6;margin-bottom: 5px;font-family: 'Noto Serif JP', serif;}
.product_item p.price {font-size: 20px;line-height: 1.6;}
@media screen and (max-width: 1160px) {

.memorial_items {width: 91.37vw;margin:0 auto 2.58vw}
.goods_illust {width: 26.72vw;right: 5.17vw;bottom: 5.17vw;}
.memorial_items h2.title {font-size: 2.93vw;margin: 0 0 6.89vw;}
.memorial_items h3.sub_title {margin: 0 0 1.72vw;}
.memorial_items h3.sub_title span {font-size: 1.72vw;padding: 1.03vw 1.72vw 0.86vw;border-radius: 0.51vw;}
.memorial_items p.text {font-size: 1.55vw;margin: 0 0 4.31vw 4.31vw;}
.product_list {gap: 2.06vw 1.37vw;width: 91.37vw;margin: 0 0 6.03vw;}


.product_item {}
.product_item .img_wrap {border-radius: 1.03vw;margin-bottom: 1.72vw;}
.product_item .img_wrap_2{border-radius: 1.03vw;margin-bottom: 1.72vw;}
.product_item p.name {font-size: 1.2vw;margin-bottom: 0.43vw;}
.product_item p.price {font-size: 1.72vw;}

}
@media screen and (max-width: 767px) {

.memorial_items {width: 90vw;margin:0 auto 5vw}
.goods_illust {display: none;}
.memorial_items h2.title {font-size: 4vw;margin: 0 0 10vw;}
.memorial_items h3.sub_title {margin: 0;display: block;}
.memorial_items h3.sub_title span {font-size: 3vw;padding: 1.6vw 3.44vw ;margin: 0 0 1.72vw;border-radius: 0.51vw;}
.memorial_items p.text {font-size: 3vw;margin: 0 0 5vw;}
.product_list {gap: 5vw 5vw;width: 90vw;margin: 0 0 5vw;}


.product_item {}
.product_item .img_wrap {border-radius: 1.03vw;margin-bottom: 1.72vw;}
.product_item .img_wrap_2{border-radius: 1.03vw;margin-bottom: 1.72vw;}
.product_item p.name {font-size: 3vw;margin-bottom: 1vw;}
.product_item p.price {font-size: 3.6vw;}
}



.product_item {opacity: 0;transform: translateY(30px);transition: 0.6s ease;}

.product_item.active {opacity: 1;transform: translateY(0);}

/* 順番に遅延 */
.product_item:nth-child(1) { transition-delay: 0.1s; }
.product_item:nth-child(2) { transition-delay: 0.2s; }
.product_item:nth-child(3) { transition-delay: 0.3s; }
.product_item:nth-child(4) { transition-delay: 0.4s; }
.product_item:nth-child(5) { transition-delay: 0.5s; }
.product_item:nth-child(6) { transition-delay: 0.6s; }
.product_item:nth-child(7) { transition-delay: 0.7s; }
.product_item:nth-child(8) { transition-delay: 0.8s; }





.topic_path{clear:both;padding:20px;background: #e6f2f2;margin: 0 0 100px;}
.topic_path ul{width:100%;text-align:left;}
.topic_path li{font-size:1.4em;line-height:1.4;font-weight:700;color:#000;vertical-align:top;display:inline-block;}
.topic_path li:before{content:">";color:#000;font-weight:400;margin-left:5px;margin-right:5px;}
.topic_path li:first-child:before{content:"";margin:0;}
.topic_path li a{font-weight:400;color:var(--main-color);text-decoration:underline;}
.topic_path li a:hover{text-decoration:none;}

