/* 神楽AYA - 桜ピンクとシャンパンゴールドの華やかさを強化
   TOPヒーローは変更しない。文字の視認性と予約フォームの高さを維持。 */
:root{
  --aya-champagne:#d9b477;
  --aya-champagne-deep:#a17a3b;
  --aya-gold-line:#ead2a8;
  --aya-gold-cream:#fff9ed;
  --aya-rose-soft:#fff1f4;
}
/* 各セクションは軽い金の反射を添える。濃い帯や大きな装飾は使わない */
#news,#about,#services,#personal-availability,#individual-booking,
#schedule,#reviews,#music,#journal,#faq,#contact{
  box-shadow:inset 0 1px 0 rgba(223,191,135,.23);
}
#services,#personal-availability,#schedule,#reviews,#journal{
  background-image:
    radial-gradient(ellipse 42% 19% at 98% 4%,rgba(248,218,149,.17),transparent 78%),
    radial-gradient(ellipse 34% 22% at 1% 97%,rgba(247,194,209,.14),transparent 79%)!important;
}
#services .sectionhead .eng,#personal-availability .sectionhead .eng,
#individual-booking .sectionhead .eng,#schedule .sectionhead .eng,
#reviews .sectionhead .eng,#music .sectionhead .eng,
#journal .sectionhead .eng,#faq .sectionhead .eng{
  color:var(--aya-champagne-deep)!important;
  letter-spacing:.1em;
}
#news .sectionhead .line,#about .sectionhead .line,
#services .sectionhead .line,#personal-availability .sectionhead .line,
#individual-booking .sectionhead .line,#schedule .sectionhead .line,
#reviews .sectionhead .line,#music .sectionhead .line,
#journal .sectionhead .line,#faq .sectionhead .line{
  width:98px!important;
  max-width:32%!important;
  height:3px!important;
  background:linear-gradient(90deg,transparent,#d9b477 28%,#e7b3c2 65%,transparent)!important;
  border:0!important;
  border-radius:4px!important;
}
#services .sectionhead::after,#personal-availability .sectionhead::after,
#individual-booking .sectionhead::after,#schedule .sectionhead::after,
#reviews .sectionhead::after,#music .sectionhead::after,
#journal .sectionhead::after,#faq .sectionhead::after{
  color:#bb9255!important;
  text-shadow:0 1px 6px rgba(241,220,166,.65);
}
/* メニューのカテゴリとカード */
#services .kqa-category-jump{
  border-color:#ead7b3!important;
  box-shadow:0 9px 26px rgba(154,112,63,.09),inset 0 0 0 1px rgba(255,255,255,.7)!important;
}
#services .kqa-category-icon{
  border:1px solid #ead19e!important;
  box-shadow:0 4px 12px rgba(196,153,89,.15)!important;
}
#services .ksc-category-head>span{
  color:#9f783c!important;
  letter-spacing:.12em;
}
#services .ksc-category-head h3::after{
  content:"✧";
  display:inline-block;
  margin-left:9px;
  color:#c99d5e;
  font-size:.75em;
  font-weight:400;
  vertical-align:.05em;
}
#services .ksc-service-item.aya-photo-card{
  border:1px solid #e6c99a!important;
  box-shadow:0 10px 28px rgba(151,103,53,.10),0 2px 8px rgba(177,106,132,.035)!important;
}
#services .ksc-service-item.aya-photo-card:hover{
  border-color:#d6ae6d!important;
  box-shadow:0 12px 32px rgba(149,107,57,.13)!important;
}
#services .aya-photo-card-body{
  box-shadow:inset 0 3px 0 rgba(221,178,105,.52);
}
#services .kagura-menu-title-label{
  color:#a87b40!important;
}
#services .aya-photo-card-body .kqa-service-actions .kqa-more-details{
  border-color:#dec393!important;
  background:#fffbf3!important;
  color:#7d5c39!important;
}
#services .aya-photo-card-body .kqa-service-actions .kqa-more-details:hover{
  background:#fff2d8!important;
}
#services .aya-photo-card-body .kqa-service-actions .kqa-book-first{
  border-color:#dbbaa1!important;
  box-shadow:0 2px 7px rgba(169,122,93,.12)!important;
}
/* 個人カレンダー・ご予約案内 */
#personal-availability .aya-quick-booking{
  border-color:#e9d5af!important;
  box-shadow:0 6px 24px rgba(170,120,68,.065);
}
#personal-availability .kagura-booking-hours{
  border-color:#e6c99b!important;
  background:linear-gradient(110deg,#fffaf3,#fffdfc)!important;
}
#personal-availability .kca-month{
  border-color:#e6c69a!important;
  box-shadow:0 9px 24px rgba(161,119,72,.08)!important;
}
#personal-availability .kca-month-top h3{
  color:#88643e!important;
}
#personal-availability .kca-legend-limited{
  color:#9b7239!important;
}
/* 個人予約はカード高さを変えず、外枠とステップ番号に金色を添える */
#individual-booking .pkr-form{
  border-color:#e8d1aa!important;
  box-shadow:0 11px 30px rgba(147,103,59,.075)!important;
}
#individual-booking #personalBookingForm .pkr-form-section h3>span{
  background:linear-gradient(135deg,#fff9ee,#f9e8d0)!important;
  border:1px solid #dfc291!important;
  color:#8a693b!important;
}
#individual-booking #personalBookingForm .pkr-form-section{
  border-bottom-color:#ebdacc!important;
}
#individual-booking #personalBookingForm .pkr-price-box{
  border-color:#e3c48f!important;
  box-shadow:inset 0 1px 0 #fffaf0!important;
}
/* グループ日程とフォーム */
#schedule .schedule-month-heading::after{
  background:linear-gradient(90deg,#d6b076,transparent)!important;
}
#schedule .event.schedule-event{
  border-color:#dcb98b!important;
  box-shadow:0 9px 24px rgba(169,123,73,.095)!important;
}
#schedule .event.schedule-event:hover{
  border-color:#cda265!important;
}
#group-booking{
  border-color:#e2c295!important;
  box-shadow:0 12px 32px rgba(155,109,60,.085)!important;
}
#group-booking .group-booking-symbol{
  color:#b68b4c!important;
}
#group-booking .kqa-group-pricing-booking{
  border-color:#ead2ad!important;
}
#group-booking .kqa-group-price-result strong{
  color:#996d45!important;
}
/* レビューとフッター寄りのセクション */
#reviews .review-tab{
  border-color:#ead1ab!important;
}
#reviews .review-tab.active{
  box-shadow:0 3px 12px rgba(179,132,76,.13)!important;
}
#reviews .review-image,#reviews .review-empty{
  border-color:#ead4b4!important;
}
#faq details{
  border-color:#e7cd9f!important;
  box-shadow:0 4px 16px rgba(148,109,64,.045)!important;
}
#contact .button:not(.fill){
  border-color:#e2c392!important;
}
/* 詳細ページ（TOPページのヒーローは対象外） */
main.main.wrap>.panel{
  border-color:#e9d2aa!important;
  box-shadow:0 12px 34px rgba(152,105,61,.07)!important;
}
main.main.wrap>.panel>section>h2::after{
  content:"";
  display:block;
  width:58px;
  max-width:28%;
  height:2px;
  margin:8px 0 11px;
  background:linear-gradient(90deg,#d1a66b,#efd3a7,transparent);
  border-radius:3px;
}
main.main.wrap>.panel .eyebrow,main.main.wrap>.panel .aya-kicker{
  color:#a17a3b!important;
}
main.main.wrap .actions .btn:not(.primary){
  border-color:#dcc18f!important;
  background:#fffaf2!important;
}
main:not(.main) .heading h2::after{
  content:"";
  display:block;
  width:62px;
  max-width:30%;
  height:2px;
  margin:9px auto 0;
  border-radius:4px;
  background:linear-gradient(90deg,transparent,#d1a66b,#e5c695,transparent);
}
main:not(.main) .card{
  border-color:#e9d4b3!important;
  box-shadow:0 6px 21px rgba(156,112,69,.06);
}
main:not(.main) .reservation{
  border-color:#e5c89f!important;
}
.kqa-review-fold{
  border-color:#e8cea2!important;
  background:linear-gradient(125deg,#fffaf5,#fff7fb)!important;
}
.kqa-review-fold>summary{
  color:#866144!important;
}
.kqa-review-fold>summary:after{
  color:#ac8041!important;
}
.kqa-embedded-review{
  border-color:#e9d4b3!important;
}
/* スマートフォンで過剰な光・装飾や改行を避ける */
@media(max-width:680px){
  #services .ksc-category-head h3::after{margin-left:5px;font-size:.63em}
  #services .ksc-service-item.aya-photo-card{box-shadow:0 5px 16px rgba(150,103,59,.08)!important}
  #personal-availability .kca-month{box-shadow:0 6px 15px rgba(155,110,63,.06)!important}
  #schedule .event.schedule-event{box-shadow:0 5px 15px rgba(163,111,56,.07)!important}
  main.main.wrap>.panel>section>h2::after{margin:6px 0 9px}
}
@media(prefers-reduced-motion:reduce){
  #services .ksc-service-item.aya-photo-card{transition:none!important}
}