@charset "UTF-8";
*,
*:before,
*:after {
  box-sizing: border-box;
}
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: 400;
  font-size: 100%;
  vertical-align: baseline;
}
header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
  display: block;
}
ol,
ul {
  list-style: none;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  font: inherit;
  cursor: pointer;
}
input,
select,
textarea {
  color: inherit;
  font: inherit;
  vertical-align: top;
}
:root {
  --inner-width: 922px;
  --inner-pc: 20px;
  --inner-sp: 35px;
  --text-color: #000;
  --main-color: #7c6722;
  --base-color: #f0f0f0;
  --bg-color: #fbf9f7;
  --header-color: #fff;
  --white: #fff;
  --gray: #a0a0a0;
  --red: #d30000;
  --font-main: Zen Old Mincho, serif;
  --font-en: Zen Kaku Gothic New, sans-serif;
  --bold: 700;
  --semibold: 600;
  --medium: 500;
  --regular: 400;
  --header-height-pc: 241px;
  --header-height-sp: 77px;
  --header-inner: 1376px;
  --header-index: 10;
  --to-top-index: 5;
  --drawer-icon-index: 30;
  --drawer-bg-index: 10;
  --drawer-content-index: 20;
}
html {
  background-color: var(--base-color);
  font-size: 62.5%;
  scroll-behavior: smooth;
}
body {
  color: var(--text-color);
  font-style: normal;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: normal;
  font-family: var(--font-main);
  letter-spacing: 0.08em;
  text-size-adjust: 100%;
}
body.is-fixed {
  overflow: hidden;
}
span {
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
li {
  list-style: none;
}
ul {
  margin: 0;
  padding-left: 0;
}
a {
  color: var(--text-color);
  text-decoration: none;
  cursor: pointer;
}
figure {
  margin: 0;
}
img,
svg {
  width: 100%;
  max-width: 100%;
  height: 100%;
}
a,
picture,
img {
  display: block;
}
span {
  display: inline-block;
}
button {
  border: none;
  background: transparent;
  cursor: pointer;
}
button:focus:not(:focus-visible) {
  outline: 0;
}
.l-inner {
  box-sizing: content-box;
  max-width: 92.2rem;
  margin: 0 auto;
  padding: 0 var(--inner-pc);
}
.c-btn {
  position: relative;
  padding-inline-end: 0.9333333333em;
  font-weight: 600;
  font-size: max(12px, 1.5rem);
  transition: color 0.5s ease;
}
.c-btn .c-btn__arrow {
  position: absolute;
  top: calc(50% + 0.0666666667em);
  right: 0;
  width: 0.7333333333em;
  height: 0.7333333333em;
  transform: translateY(-50%);
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.c-btn.c-btn--underline {
  padding-block-end: 0.5333333333em;
}
.c-btn.c-btn--underline:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.0416666667em;
  transform: scale(1);
  transform-origin: right top;
  background-color: #000;
  content: "";
  transition: transform 0.5s ease;
}
.c-btn.c-btn--underline .c-btn__arrow {
  top: calc(50% - 0.2em);
}
.c-btn-page {
  display: inline-block;
  width: 100%;
  max-width: 25.618rem;
  transition: color 0.5s ease;
}
.c-btn-page .c-btn-page__head {
  display: flex;
  position: relative;
  align-items: baseline;
  gap: 1.2rem;
}
.c-btn-page .c-btn-page__head:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.5px;
  transform: scale(1);
  transform-origin: right top;
  background-color: currentColor;
  content: "";
  transition: transform 0.5s ease;
}
.c-btn-page .c-btn-page__txtJa {
  font-weight: 700;
  font-size: 2.5rem;
  letter-spacing: 0.03em;
}
.c-btn-page .c-btn-page__txtEn {
  font-weight: 700;
}
.c-btn-page .c-btn-page__body {
  display: inline-flex;
  align-items: center;
  padding-block-start: 1.4rem;
  font-weight: 600;
  font-size: max(12px, 1.5rem);
}
.c-btn-page .c-btn-page__arrow {
  width: 11px;
  height: 11px;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.c-btn-page.c-btn-page--ceremony {
  max-width: 27.1rem;
  text-align: center;
}
.c-btn-page.c-btn-page--ceremony .c-btn-page__head {
  justify-content: space-between;
  padding-block-end: 0.4rem;
  gap: 0.5rem;
}
.c-btn-page.c-btn-page--ceremony .c-btn-page__body {
  padding-block-start: 3.2rem;
}
.c-sec-ttl {
  display: flex;
  align-items: start;
  gap: 1.4rem;
}
.c-sec-ttl .c-sec-ttl-ja {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.12;
  letter-spacing: 0.12em;
  writing-mode: vertical-rl;
}
.c-sec-ttl .c-sec-ttl-En {
  width: 100%;
  max-width: 17.783rem;
  padding-block-end: 0.8rem;
  border-bottom: 0.5px solid currentColor;
  font-weight: 700;
}
.c-to-top {
  display: flex;
  z-index: var(--to-top-index);
  position: absolute;
  right: 3rem;
  bottom: 16.3rem;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
}
.c-to-top .c-to-top__line {
  position: relative;
  width: 0.2rem;
  height: 7rem;
}
.c-to-top .c-to-top__line:before,
.c-to-top .c-to-top__line:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform-origin: center bottom;
  content: "";
}
.c-to-top .c-to-top__line:before {
  background-color: var(--gray);
}
.c-to-top .c-to-top__line:after {
  transform: scaleY(0);
  background-color: var(--white);
  transition: transform 0.5s ease;
}
.c-to-top .c-to-top__txt {
  color: #cecece;
  font-weight: 600;
  font-size: max(12px, 1.2rem);
  line-height: 2.1666666667;
  letter-spacing: 0.09em;
}
.p-drawer__icon {
  display: flex;
  z-index: var(--drawer-icon-index);
  position: fixed;
  top: 51px;
  right: calc(50% - min(626px, 43.4722222222vw));
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 29px;
  transform: translate(50%);
  mix-blend-mode: difference;
}
.p-drawer__icon.is-top {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.p-drawer__icon.is-top.is-show {
  visibility: visible;
  opacity: 1;
}
.p-drawer__icon.is-active {
  mix-blend-mode: normal;
}
.p-drawer__icon.is-active .p-drawer__bar {
  background: var(--white);
}
.p-drawer__icon.is-active .p-drawer__bar:nth-child(1) {
  top: 14px;
  transform: translate(-50%) rotate(13deg) !important;
}
.p-drawer__icon.is-active .p-drawer__bar:nth-child(2) {
  top: 14px;
  transform: translate(-50%) rotate(-13deg) !important;
}
.p-drawer__icon.is-active .p-drawer__bar:nth-child(3) {
  opacity: 0;
}
.p-drawer__icon.is-active .p-drawer__icon-txt {
  visibility: visible;
  opacity: 1;
}
.p-drawer__bar-wrap {
  position: relative;
  top: 0;
  left: 0;
  width: 78px;
  height: 20px;
}
.p-drawer__bar {
  position: absolute;
  left: 50%;
  width: 100%;
  height: 1px;
  transform: translate(-50%);
  background: #fff;
  opacity: 1;
  transition:
    transform 0.5s ease,
    opacity 0.5s ease;
}
.p-drawer__bar:nth-child(1) {
  top: 5px;
}
.p-drawer__bar:nth-child(2) {
  top: 15px;
}
.p-drawer__bar:nth-child(3) {
  top: 25px;
}
.p-drawer__icon-txt {
  visibility: hidden;
  flex-shrink: 0;
  color: var(--white);
  font-weight: 600;
  font-size: 15px;
  line-height: 3.2666666667;
  letter-spacing: 0.1333333333em;
  opacity: 0;
  writing-mode: vertical-rl;
}
.p-drawer {
  visibility: hidden;
  z-index: var(--drawer-bg-index);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  background: url(../img/common/bg_drawer.webp) no-repeat center center/cover;
  color: var(--white);
  opacity: 0;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease;
}
.p-drawer.is-active {
  visibility: visible;
  opacity: 1;
}
.p-drawer__container {
  max-width: 1271px;
  padding-block: 279px 77px;
}
.p-drawer__logo {
  position: fixed;
  top: 21px;
  left: calc(50% - min(585px, 40.625vw));
  width: 100%;
  max-width: 205px;
  transform: translate(-50%);
}
.p-drawer__logo img {
  height: auto;
}
.p-drawer__logo-link {
  padding-block: 10px;
}
.p-drawer__nav {
  max-width: 922px;
  margin-inline: auto;
}
.p-drawer__nav-list {
  display: flex;
  flex-direction: column;
  padding-inline-end: 21px;
  gap: 24px;
}
.p-drawer__nav-item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-drawer__nav-link {
  display: inline-flex;
  align-items: baseline;
  gap: 14px;
  transition: opacity 0.5s ease;
}
.p-drawer__nav-link .p-drawer__nav-txtJa {
  width: 100%;
  max-width: 133px;
  color: var(--white);
  font-weight: 600;
  line-height: 3.2666666667;
  letter-spacing: 0.03em;
}
.p-drawer__nav-link .p-drawer__nav-txtEn {
  flex-shrink: 0;
  color: var(--gray);
  font-weight: 600;
  line-height: 3.2666666667;
  letter-spacing: 0.03em;
  transition: color 0.5s ease;
}
.p-drawer__legal {
  display: flex;
  justify-content: end;
  margin-block-start: 157px;
}
.p-drawer__legal-list {
  display: flex;
  gap: 40px;
}
.p-drawer__legal-link {
  position: relative;
  padding-inline-start: 14px;
  color: var(--gray);
  font-weight: 400;
  font-size: 13px;
  line-height: 2.3846153846;
  letter-spacing: 0.09em;
}
.p-drawer__legal-link:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 9px;
  height: 9px;
  transform: translateY(-50%);
  background-color: currentColor;
  content: "";
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.p-footer__bg {
  position: relative;
}
.p-footer__bg:before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 154.5rem;
  content: "";
  pointer-events: none;
}
.p-footer {
  position: relative;
  padding-block: 1.7rem 3rem;
  text-align: center;
}
.p-footer small {
  color: #ffffff8c;
  font-weight: 500;
  font-size: 1.2rem;
  letter-spacing: 0.09em;
}
.p-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-header__container {
  box-sizing: content-box;
  display: flex;
  z-index: var(--header-index);
  justify-content: end;
  max-width: var(--header-inner);
  height: inherit;
  margin: 0 auto;
}
.p-header__logo {
  z-index: var(--header-index);
  position: fixed;
  top: 31px;
  left: calc(50% - min(585px, 40.625vw));
  width: 100%;
  max-width: 205px;
  transform: translate(-50%);
}
.p-header__nav {
  display: none;
  visibility: hidden;
}
.p-header__nav.is-top {
  display: block;
  visibility: visible;
  z-index: 2;
  position: relative;
}
.p-header__nav.is-top:before {
  z-index: -1;
  position: absolute;
  top: -160px;
  left: calc(50% + 3.8rem);
  width: 60rem;
  width: 600px;
  height: 60rem;
  height: 600px;
  transform: translate(-50%);
  background: url(../img/top/deco_logo.webp) no-repeat center center/cover;
  content: "";
  pointer-events: none;
}
.p-header__nav-list {
  display: flex;
  align-items: start;
  padding: 61px 24px 54px 0;
  gap: 29px;
}
.p-header__nav-link {
  padding-block: 10px;
  font-weight: 600;
  font-size: 15px;
  letter-spacing: 0.2em;
  writing-mode: vertical-rl;
}
.p-main {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.p-mv {
  display: flex;
  z-index: 2;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  overflow: hidden;
}
.p-topAbout {
  position: relative;
  width: 100%;
  padding-block: 25rem 32.2rem;
  overflow: hidden;
}
.p-topAbout .l-inner {
  display: grid;
  position: relative;
  grid-template-columns: auto auto;
  justify-content: start;
  max-width: 96.2rem;
  gap: 8.4rem;
}
.p-topAbout__ttl {
  margin-inline-start: 0.5rem;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.72;
  letter-spacing: 0.164em;
  writing-mode: vertical-rl;
}
.p-topAbout__link-list {
  display: flex;
  flex-direction: column;
  gap: 9.5rem;
}
.p-topAbout__img-wrap {
  position: absolute;
  top: 0;
  right: 0;
}
.p-topAbout__img {
  position: absolute;
}
.p-topAbout__img img {
  object-fit: cover;
}
.p-topAbout__img:nth-child(1) {
  z-index: 1;
  top: 0.2rem;
  right: 3.9rem;
  width: 39.3rem;
  height: 51.5rem;
}
.p-topAbout__img:nth-child(2) {
  top: -30.7rem;
  right: -23.5rem;
  width: 53rem;
  height: 67.9rem;
}
.p-topAbout__img:nth-child(2) img {
  filter: blur(10px);
}
.p-topDivider__img img {
  height: auto;
  object-fit: cover;
  filter: blur(6px);
}
.p-topAdvantage {
  position: relative;
  padding-block: 0 26rem;
}
.p-topAdvantage .l-inner {
  display: flex;
  position: relative;
  flex-direction: column;
  gap: 12rem;
}
.p-topAdvantage__bg img {
  height: auto;
  object-fit: cover;
  filter: blur(6px);
}
.p-topAdvantage__ttl {
  margin-block-start: 13.9rem;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.52;
  letter-spacing: 0.042em;
}
.p-topAdvantage__link-list {
  display: flex;
  flex-direction: column;
  gap: 9.4rem;
}
.p-topAdvantage__img-wrap {
  position: absolute;
  top: 0;
  right: 0;
  pointer-events: none;
}
.p-topAdvantage__img {
  position: absolute;
  left: 50%;
  transform: translate(-50%);
}
.p-topAdvantage__img img {
  object-fit: cover;
}
.p-topAdvantage__img:nth-child(1) {
  z-index: 1;
  top: -0.6rem;
  left: calc(50% - 33.1rem);
  width: 29.9rem;
  height: 52.6rem;
}
.p-topAdvantage__img:nth-child(2) {
  top: -26rem;
  left: calc(50% - 1.4rem);
  width: 29.9rem;
  height: 52.6rem;
}
.p-topCeremony {
  display: flex;
  z-index: 1;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 52.6rem;
  margin-block-end: 12.1rem;
  padding-block-start: 1.3rem;
}
.p-topCeremony__img-wrap {
  display: flex;
  z-index: -1;
  position: absolute;
  top: 50%;
  left: 50%;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  gap: 2rem;
  transform: translate(-50%, -50%);
}
.p-topCeremony__img {
  position: relative;
  flex-shrink: 0;
  width: 39.0972222222vw;
  height: 100%;
}
.p-topCeremony__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(7px);
}
.p-contactCta .l-inner {
  position: relative;
  max-width: 978px;
  padding: 0 100px;
}
.p-contactCta__head {
  display: grid;
  grid-template-columns: 24.7rem auto;
  justify-content: space-between;
  padding-block: 21.8rem 0;
  gap: 4rem;
}
.p-contactCta__head .c-sec-ttl {
  margin-inline-start: 2.8rem;
  margin-block-start: 2rem;
  color: #121212;
}
.p-contactCta__txt-wrap {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 4.2rem;
}
.p-contactCta__txt-wrap .c-btn {
  margin-inline-start: 0.5rem;
}
.p-contactCta__txt {
  color: #121212;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.52;
  letter-spacing: 0.042em;
}
.p-contactCta__body {
  display: flex;
  justify-content: space-between;
  max-width: 92.2rem;
  margin-inline: auto;
  padding-block: 47.1rem 16.5rem;
  gap: 4rem;
}
.p-contactCta__address-list {
  display: flex;
  flex-direction: column;
  gap: 2.7rem;
}
.p-contactCta__address-name {
  color: #ffffffb3;
  font-weight: 500;
  font-size: max(12px, 1.4rem);
  line-height: 2;
}
.p-contactCta__address-txt {
  font-weight: 500;
  font-size: max(12px, 1.4rem);
  line-height: 1.5714285714;
}
.p-contactCta__link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: auto;
  margin-block-start: 0.7rem;
}
.p-contactCta__logo {
  max-width: 31.3rem;
}
.p-contactCta__nav-list {
  display: flex;
  justify-content: end;
  gap: 2.7rem;
}
.p-contactCta__nav-link {
  position: relative;
  padding-inline-start: 1.1666666667em;
  font-weight: 400;
  font-size: max(12px, 1.2rem);
  line-height: 1.8333333333;
  letter-spacing: 0.09em;
}
.p-contactCta__nav-link:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.75em;
  height: 0.75em;
  transform: translateY(-50%);
  background-color: currentColor;
  content: "";
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.p-page {
  z-index: 2;
  position: relative;
  padding-block-start: var(--header-height-pc);
}
.p-page:before {
  z-index: -1;
  position: absolute;
  top: -11.1rem;
  left: -6.6rem;
  width: 120.6rem;
  height: 101.6rem;
  content: "";
  pointer-events: none;
}
.p-page__fv {
  display: grid;
  grid-template-columns: 31.0416666667% 68.9583333333%;
  padding-block: 0.7rem 24.7rem;
}
.p-page__ttl {
  display: flex;
  align-items: center;
  justify-content: start;
  padding: 0.7rem 0 0 9.4rem;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.72;
  letter-spacing: 0.164em;
  writing-mode: vertical-rl;
}
.p-page__img {
  position: relative;
  height: 39.4rem;
  overflow: hidden;
}
.p-page__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-page__sec-ttlWrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
}
.p-page__sec-ttlDeco {
  width: 20px;
  height: 20px;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='19.992'%20height='19.992'%20viewBox='0%200%2019.992%2019.992'%3e%3cg%20id='グループ_2993'%20data-name='グループ%202993'%20transform='translate(-6050%2020940)'%3e%3cpath%20id='パス_9260'%20data-name='パス%209260'%20d='M18.305,5.291a1.428,1.428,0,0,1,.926.88A1.428,1.428,0,0,1,19.2,7.447a1.452,1.452,0,0,1-1.011.726L11.6,9.484a1.67,1.67,0,0,0-.108-.258l5.59-3.735a1.452,1.452,0,0,1,1.225-.2M10,11.3A1.3,1.3,0,1,1,11.3,10,1.3,1.3,0,0,1,10,11.3m5.876-8.829a1.427,1.427,0,0,1,1.192.458,1.428,1.428,0,0,1,.458,1.192,1.453,1.453,0,0,1-.656,1.058L11.279,8.911a1.7,1.7,0,0,0-.2-.2l2.209-3.307,1.526-2.284a1.45,1.45,0,0,1,1.056-.654m-4.054-.661V1.8A1.451,1.451,0,0,1,12.545.794,1.428,1.428,0,0,1,13.821.761a1.428,1.428,0,0,1,.88.926,1.453,1.453,0,0,1-.2,1.228L10.766,8.5a1.67,1.67,0,0,0-.258-.108L11,5.942ZM8.829.519A1.428,1.428,0,0,1,10,0a1.428,1.428,0,0,1,1.167.519,1.452,1.452,0,0,1,.284,1.212L10.136,8.321c-.046,0-.093-.007-.14-.007s-.093,0-.14.007L8.545,1.727A1.451,1.451,0,0,1,8.829.519M5.291,1.687a1.428,1.428,0,0,1,.88-.926A1.632,1.632,0,0,1,6.8.628a1.345,1.345,0,0,1,.649.166A1.453,1.453,0,0,1,8.173,1.8l1.311,6.59a1.67,1.67,0,0,0-.258.108L7.431,5.816l-1.937-2.9h0l0,0a1.451,1.451,0,0,1-.2-1.225M2.928,2.928a1.452,1.452,0,0,1,1.046-.466,1.356,1.356,0,0,1,.146.008,1.453,1.453,0,0,1,1.058.656L8.911,8.714a1.7,1.7,0,0,0-.2.2L3.129,5.179h0l-.005,0A1.451,1.451,0,0,1,2.469,4.12a1.428,1.428,0,0,1,.458-1.192M.794,7.447A1.428,1.428,0,0,1,.761,6.171a1.4,1.4,0,0,1,1.325-.937,1.457,1.457,0,0,1,.829.259L8.5,9.226a1.67,1.67,0,0,0-.108.258L1.8,8.173A1.451,1.451,0,0,1,.794,7.447M.519,11.163A1.428,1.428,0,0,1,0,10,1.428,1.428,0,0,1,.519,8.829a1.452,1.452,0,0,1,1.212-.284L8.321,9.856c0,.046-.007.093-.007.14s0,.093.007.14l-6.587,1.31H1.727a1.451,1.451,0,0,1-1.209-.284M1.687,14.7a1.428,1.428,0,0,1-.926-.88,1.428,1.428,0,0,1,.033-1.277A1.453,1.453,0,0,1,1.8,11.819l6.59-1.311a1.669,1.669,0,0,0,.108.258L2.912,14.5a1.451,1.451,0,0,1-1.225.2M4.12,17.523a1.43,1.43,0,0,1-1.192-.458,1.428,1.428,0,0,1-.458-1.192,1.453,1.453,0,0,1,.656-1.058l5.588-3.733a1.7,1.7,0,0,0,.2.2l-3.735,5.59a1.451,1.451,0,0,1-1.056.654m4.054.661v.007A1.451,1.451,0,0,1,7.447,19.2a1.428,1.428,0,0,1-1.277.033,1.428,1.428,0,0,1-.88-.926,1.452,1.452,0,0,1,.2-1.229L9.226,11.49a1.668,1.668,0,0,0,.258.108Zm2.989,1.289A1.428,1.428,0,0,1,10,19.992a1.428,1.428,0,0,1-1.167-.519,1.453,1.453,0,0,1-.284-1.212l1.311-6.591c.046,0,.093.007.14.007s.094,0,.14-.007l1.312,6.594a1.451,1.451,0,0,1-.284,1.209M14.7,18.306a1.572,1.572,0,0,1-2.156.893,1.453,1.453,0,0,1-.726-1.011L10.508,11.6a1.67,1.67,0,0,0,.258-.108l.831,1.244,2.9,4.34h0l0,0a1.451,1.451,0,0,1,.2,1.226m2.363-1.241a1.429,1.429,0,0,1-1.192.458,1.453,1.453,0,0,1-1.058-.656l-3.734-5.588a1.7,1.7,0,0,0,.2-.2l3.208,2.144,2.376,1.588h0l.006,0a1.451,1.451,0,0,1,.653,1.056,1.428,1.428,0,0,1-.458,1.192m2.134-4.52a1.572,1.572,0,0,1-.893,2.156,1.453,1.453,0,0,1-1.228-.2L11.49,10.766a1.669,1.669,0,0,0,.108-.258l6.593,1.311a1.451,1.451,0,0,1,1.008.725m.275-1.382a1.452,1.452,0,0,1-1.212.284l-6.591-1.311c0-.046.007-.093.007-.14s0-.094-.007-.14l4.568-.909,2.019-.4h.007a1.451,1.451,0,0,1,1.209.284A1.428,1.428,0,0,1,19.992,10a1.428,1.428,0,0,1-.519,1.167'%20transform='translate(6050%20-20940)'%20fill='%23ac964e'/%3e%3c/g%3e%3c/svg%3e")
    no-repeat center center/cover;
}
.p-page__sec-ttl {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 1.4rem;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.p-page__sec-ttl:before,
.p-page__sec-ttl:after {
  width: 100%;
  height: 1px;
  content: "";
}
.p-page__sec-ttl:before {
  background: linear-gradient(to right, #d3ba69, #948145, #121212);
}
.p-page__sec-ttl:after {
  background: linear-gradient(to left, #d3ba69, #948145, #121212);
}
.p-privacy {
  padding-block: 23.4rem 2.8rem;
}
.p-privacy .l-inner {
  display: grid;
  grid-template-columns: 16.4859002169% 83.5140997831%;
}
.p-privacy .p-page__ttl {
  align-items: end;
  padding: 5px 0 0;
  line-height: 1;
  letter-spacing: 0.2em;
}
.p-privacy__txt {
  font-weight: 500;
  font-size: max(12px, 1.4rem);
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
}
.p-privacy__list {
  display: flex;
  flex-direction: column;
  margin-block-start: 2em;
  gap: 2em;
}
.p-privacy__list.u-indent-num > li {
  padding-left: 1.5rem;
}
.p-privacy__list.u-indent-num > li:before {
  top: 0;
}
.p-privacy__item {
  font-size: max(12px, 1.4rem);
  line-height: 2.1428571429;
}
.p-privacy__item-ttl {
  font-weight: 700;
  font-size: max(12px, 1.4rem);
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
}
.p-privacy__item-contents {
  margin-inline-start: -1.5rem;
  color: #000;
}
.p-privacy__indent-disc {
  font-weight: 500;
  font-size: max(12px, 1.4rem);
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
}
.p-privacy__indent-disc.u-indent-disc li {
  padding-left: 0;
}
.p-privacy__indent-disc.u-indent-disc li:before {
  position: static;
  border-radius: none;
  background-color: transparent;
  content: "・";
}
.p-privacy__indent-num-frame {
  font-weight: 500;
  font-size: max(12px, 1.4rem);
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
}
.p-advantage__point {
  display: flex;
  flex-direction: column;
  padding-block: 1.8rem 8rem;
  gap: 11.8rem;
}
.p-advantage__pointItem {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4.0130151844%;
}
.p-advantage__pointItem-contents {
  flex-grow: 1;
  padding-block-start: 1.2rem;
}
.p-advantage__pointItem--reverse .p-advantage__pointItem-contents {
  padding-block: 0;
}
.p-advantage__pointItem-num {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 0.03em;
}
.p-advantage__pointItem-ttl {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 2.08;
  letter-spacing: 0.03em;
}
.p-advantage__pointItem-txt {
  margin-block-start: 5.2rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.5333333333;
  letter-spacing: 0.021em;
}
.p-advantage__pointItem-imgWrap {
  flex-shrink: 0;
  width: 47.1800433839%;
}
.p-advantage__pointItem-img + .p-advantage__pointItem-img {
  margin-block-start: 1.8rem;
}
.p-advantage__pointItem-linkWrap {
  display: flex;
  justify-content: start;
  margin-block-start: 5.9rem;
}
.p-advantage__voice {
  box-sizing: content-box;
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 var(--inner-pc);
}
.p-advantage__voice .p-advantage__voice-container {
  padding-block: 12.8rem 15.8rem;
}
.p-advantage__voice .p-page__sec-ttlWrap {
  max-width: 922px;
  margin-inline: auto;
}
.p-advantage__voice-list {
  display: flex;
  flex-direction: column;
  max-width: 909px;
  margin-inline: auto;
  margin-block-start: 11.8rem;
  gap: 8.4rem;
}
.p-advantage__voiceItem {
  display: grid;
  grid-template-columns: 16.4859002169% 1fr;
  align-items: start;
  gap: 2.2776572668%;
}
.p-advantage__voiceItem-ttl {
  padding-block-end: 1rem;
  border-bottom: 1px solid #707070;
  color: #000;
  font-weight: 700;
  font-size: 1.9rem;
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-advantage__voiceItem-txt {
  margin-block-start: 2.1rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.06em;
}
.p-advantage__voiceItem-office {
  margin-block-start: 1.8rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
}
.p-ceremony__main {
  padding-block: 2.2rem 9.9rem;
}
.p-ceremony__schedule {
  display: flex;
  margin-block-start: 5.7rem;
  gap: 4.25rem;
}
.p-ceremony__schedule-item {
  position: relative;
  padding: 6.5rem 2.35rem 5.8rem;
  border: 1px solid #ac964e;
  background-color: var(--white);
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 1.16;
  letter-spacing: 0.16em;
  text-align: center;
  writing-mode: vertical-rl;
}
.p-ceremony__schedule-item + .p-ceremony__schedule-item:before {
  position: absolute;
  top: 50%;
  left: -2.525rem;
  width: 1.9rem;
  height: 1.9rem;
  transform: translate(-50%, -50%) rotate(-45deg);
  transform-origin: center;
  border-right: 2px solid #ac964e;
  border-bottom: 2px solid #ac964e;
  content: "";
}
.p-ceremony__detailItem-wrap {
  display: flex;
  flex-direction: column;
  margin-block-start: 16.3rem;
  gap: 4.2rem;
}
.p-ceremony__detailItem.is-opened .p-ceremony__detailItem-icon {
  transform: translateY(-50%) rotate(180deg);
}
.p-ceremony__detailItem-head {
  position: relative;
  padding: 1.65rem 2.8rem 1.85rem;
  background: #ac964e;
  color: #ebebeb;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-ceremony__detailItem-icon {
  position: absolute;
  top: 50%;
  right: 3.5rem;
  width: 1.5rem;
  height: 1.5rem;
  transform: translateY(-50%) rotate(0);
  transform-origin: center;
  transition: transform 0.3s ease;
}
.p-ceremony__detailItem-icon:before {
  position: absolute;
  top: calc(50% - 0.2rem);
  left: 50%;
  width: 1.5rem;
  height: 1.5rem;
  transform: translate(-50%, -50%) rotate(45deg);
  transform-origin: center;
  border-right: 2px solid #f0f0f0;
  border-bottom: 2px solid #f0f0f0;
  content: "";
}
.p-ceremony__detailItem-body {
  background: #f8f8f8;
}
.p-ceremony__detailItem-contents {
  max-width: 84.1rem;
  margin-inline: auto;
  padding: 6.9rem 3.3rem 8.7rem 4.7rem;
}
.p-ceremony__detailItem-contents .u-indent-note {
  max-width: 74.2rem;
  margin-block-start: 5.3rem;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
.p-ceremony__detailItem-contents.p-ceremony__detailItem-contents--dress
  .p-ceremony__detailItem-list
  + .p-ceremony__detailItem-subTtl {
  margin-block-start: 5.7rem;
}
.p-ceremony__detailItem-contents.p-ceremony__detailItem-contents--dressUp
  .p-ceremony__detailItem-txt
  + .p-ceremony__detailItem-subTtl {
  margin-block-start: 4.3rem;
}
.p-ceremony__detailItem-subTtl {
  margin-block-end: 1.5rem;
  color: #ac964e;
  font-weight: 700;
  font-size: max(15px, 1.9rem);
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-ceremony__detailItem-list {
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.3333333333;
  letter-spacing: 0.01em;
}
.p-ceremony__detailItem-list.u-indent-disc li {
  padding-left: 0.8em;
  font-weight: 500;
}
.p-ceremony__detailItem-list.u-indent-disc li:before {
  top: 1.0666666667em;
  left: 0;
  width: 0.4em;
  height: 0.4em;
}
.p-ceremony__detailItem-txt {
  display: inline;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.3333333333;
  letter-spacing: 0.01em;
}
summary {
  display: block;
  list-style: none;
  cursor: pointer;
}
summary::marker {
  content: "";
}
summary::-webkit-details-marker {
  display: none;
}
.p-about__introduction {
  position: relative;
  width: 100%;
  padding-block: 2.7rem 21.2rem;
  overflow: hidden;
}
.p-about__introduction .l-inner {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: start;
  max-width: 96.8rem;
}
.p-about__introduction-ttl {
  flex-shrink: 0;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.72;
  letter-spacing: 0.24em;
  writing-mode: vertical-rl;
}
.p-about__introduction-txt {
  max-width: 39rem;
  margin: 4.3rem 0 0 2.3rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.5333333333;
  letter-spacing: 0.021em;
}
.p-about__introduction-imgWrap {
  position: absolute;
  top: 0;
  right: 0;
}
.p-about__introduction-img {
  position: absolute;
}
.p-about__introduction-img img {
  object-fit: cover;
}
.p-about__introduction-img:nth-child(1) {
  z-index: 1;
  top: 0.2rem;
  right: 3.9rem;
  width: 46.1rem;
  height: 65.8rem;
}
.p-about__introduction-img:nth-child(2) {
  top: 21.7rem;
  right: -23.5rem;
  width: 53rem;
  height: 67.9rem;
}
.p-about__introduction-img:nth-child(2) img {
  filter: blur(10px);
}
.p-about__message {
  z-index: 2;
  position: relative;
  padding-block: 10.1rem 8.2rem;
  overflow: hidden;
  background: linear-gradient(to right, #c2cdd7, #bdc8d2, #a6b3bf);
}
.p-about__message .l-inner {
  max-width: 110rem;
}
.p-about__message-contents {
  max-width: 51.5rem;
  margin-left: auto;
}
.p-about__message-ttl {
  font-weight: 600;
  font-size: max(15px, 2.3rem);
  line-height: 1.8695652174;
  letter-spacing: 0.02em;
}
.p-about__message-txt {
  margin-block-start: 2.2rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.2666666667;
  letter-spacing: 0;
}
.p-about__message-name {
  display: flex;
  align-items: center;
  justify-content: end;
  margin-block-start: 2.5rem;
  gap: 2.7rem;
}
.p-about__message-companyName {
  max-width: 20.5rem;
}
.p-about__message-ownerName {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2.5333333333;
  letter-spacing: 0.03em;
}
.p-about__message-img {
  z-index: -1;
  position: absolute;
  bottom: -4.2rem;
  left: calc(50% - 1.8rem);
  width: 160.2rem;
  transform: translate(-50%);
  pointer-events: none;
}
.p-about__company {
  padding-block: 25rem 15.5rem;
}
.p-about__company .l-inner {
  display: grid;
  grid-template-columns: 1fr 88.0694143167%;
}
.p-about__company-ttl {
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 1;
  letter-spacing: 0.16em;
  writing-mode: vertical-lr;
}
.p-about__company-map {
  position: relative;
  width: 100%;
  padding-bottom: 50.6157635468%;
}
.p-about__company-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}
.p-about__company-map-txt {
  margin-block-start: 2.3rem;
  letter-spacing: 0.071em;
}
.p-about__company-info-wrap {
  display: flex;
  flex-direction: column;
  margin-block-start: 10.8rem;
  gap: 9rem;
}
.p-about__company-info {
  display: flex;
  flex-direction: column;
  width: 90%;
  gap: 4.5rem;
}
.p-about__company-info-ttl {
  font-weight: 700;
  font-size: 2.5rem;
  letter-spacing: 0.03em;
}
.p-about__company-dl-wrap {
  display: flex;
  flex-direction: column;
  gap: 2.2rem;
}
.p-about__company-dl {
  display: grid;
  grid-template-columns: 18.3rem 1fr;
  align-items: start;
  justify-content: start;
  padding-bottom: 2.2rem;
  gap: 2.4rem;
  border-bottom: 1px solid #707070;
}
.p-about__company-dt,
.p-about__company-dd {
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 2.5333333333;
  letter-spacing: 0.021em;
}
.p-about__company-dd.u-letter-spacing-wide {
  letter-spacing: 0.071em;
}
.p-service__anchor {
  padding-block: 1.9rem 10.8rem;
}
.p-service__anchor .l-inner {
  display: grid;
  grid-template-columns: auto 67.8459937565%;
  align-items: start;
  justify-content: space-between;
  max-width: 96.1rem;
  gap: 4rem;
}
.p-service__anchor-ttl {
  margin-inline-start: 0.8rem;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 2.8;
  letter-spacing: 0.16em;
  writing-mode: vertical-rl;
}
.p-service__anchor-list {
  display: flex;
  flex-direction: column;
  padding-inline-end: 2.1rem;
  gap: 11rem;
}
.p-service__anchor-link {
  display: flex;
  position: relative;
  align-items: baseline;
  justify-content: space-between;
  padding-block-end: 0.3rem;
}
.p-service__anchor-link:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.5px;
  transform: scaleX(1);
  transform-origin: right top;
  background: #000;
  content: "";
  transition: transform 0.5s ease;
}
.p-service__anchor-txt {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-service__anchor-more {
  display: inline-flex;
  align-items: center;
  justify-content: start;
  gap: 0.4666666667em;
  font-weight: 600;
  font-size: max(12px, 1.5rem);
  line-height: normal;
  letter-spacing: 0.08em;
  transition: color 0.5s ease;
}
.p-service__anchor-icon {
  width: 0.4666666667em;
  height: 0.4666666667em;
  transform: rotate(90deg);
  transform-origin: center;
  background: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='10.987'%20height='10.987'%20viewBox='0%200%2010.987%2010.987'%3e%3cpath%20id='パス_7834'%20data-name='パス%207834'%20d='M0,7.379H7.452L7.379,0'%20transform='translate(0.002%205.522)%20rotate(-45)'%20fill='none'%20stroke='%231d3319'%20stroke-width='0.7'/%3e%3c/svg%3e");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.p-service__forehead {
  z-index: 2;
  position: relative;
  padding-block: 16rem 23rem;
}
.p-service__forehead:before {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.65;
}
.p-service__forehead-lead {
  margin-block-start: 4.4rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-service__forehead-imgWrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-block-start: 7.1rem;
  gap: 2.4rem;
}
.p-service__forehead-img.p-service__forehead-img-full {
  grid-column: 1/3;
}
.p-service__forehead-img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.p-service__forehead-note {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  justify-content: center;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: 8.2rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
}
.p-service__forehead-note:before {
  content: "※";
}
.p-service__forehead-movie {
  margin-block-start: 8.2rem;
}
.p-service__forehead-movie video {
  width: 100%;
  vertical-align: middle;
}
.p-service__gift {
  padding-block: 17.1rem 18.1rem;
}
.p-service__gift-lead {
  margin-block-start: 4.4rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-service__gift-imgWrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-block-start: 7.1rem;
  gap: 2.4rem;
}
.p-service__gift-img {
  aspect-ratio: 449/379;
  height: auto;
}
.p-service__gift-img.p-service__gift-img-full {
  grid-column: 1/3;
  aspect-ratio: 992/379;
}
.p-service__gift-img img {
  object-fit: cover;
}
.p-service__gift-note {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  justify-content: center;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: 5.3rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
}
.p-service__gift-note:before {
  content: "※";
}
.p-service__support {
  z-index: 2;
  position: relative;
  margin-block-end: 6.8rem;
  padding-block: 16rem 22.2rem;
}
.p-service__support:before {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.65;
}
.p-service__support-lead {
  margin-block-start: 4.4rem;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-service__support-container {
  display: grid;
  grid-template-columns: auto 61.4967462039%;
  align-items: start;
  justify-content: space-between;
  margin-block-start: 12.7rem;
}
.p-service__support-ttl {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 2.08;
  letter-spacing: 0.03em;
}
.p-service__support-list {
  display: flex;
  flex-direction: column;
  margin-block-start: 0.8rem;
  padding-inline-start: 3.9rem;
}
.p-service__support-list.u-indent-num > li {
  padding-left: 1.7rem;
}
.p-service__support-list.u-indent-num > li:before {
  top: 0;
}
.p-service__supportItem {
  position: relative;
  color: var(--main-color);
  font-weight: 700;
  font-size: 2rem;
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-service__supportItem:after {
  position: absolute;
  top: 1.1rem;
  left: -3.9rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: #ac964e;
  content: "";
}
.p-service__supportItem + .p-service__supportItem {
  margin-block-start: 7rem;
}
.p-service__supportItem-ttl {
  position: relative;
  padding-bottom: 0.8rem;
  font-weight: 700;
  font-size: 2rem;
  line-height: normal;
  letter-spacing: 0.03em;
}
.p-service__supportItem-ttl:before {
  position: absolute;
  bottom: 0;
  left: -1.7rem;
  width: calc(100% + 1.7rem);
  height: 0.5px;
  background-color: currentColor;
  content: "";
}
.p-service__supportItem-contents {
  margin-inline-start: -1.7rem;
  margin-block-start: 1.3rem;
  color: #000;
  font-weight: 500;
  font-size: max(12px, 1.5rem);
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
}
.p-service__supportItem-contents.u-mt-l {
  margin-block-start: 2.3rem;
}
.p-service__supportItem-txt {
  font-weight: 500;
}
.p-service__supportItem-bar {
  position: absolute;
  top: 1.6rem;
  left: -3.3rem;
  width: 0.1rem;
  height: calc(100% + 7rem);
  background-color: #ac964e;
}
.p-service__supportItem:last-child .p-service__supportItem-bar {
  display: none;
}
.p-contact__tel {
  padding-block: 2rem 8rem;
}
.p-contact__tel .l-inner {
  text-align: center;
}
.p-contact__tel-lead {
  margin-block-start: 2.3rem;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-contact__telLink-wrap {
  display: flex;
  flex-direction: column;
  margin-block-start: 4.3rem;
  gap: 5rem;
}
.p-contact__telLink {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-inline: auto;
  gap: 1.3rem;
}
.p-contact__telLink-txt {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.8666666667;
  letter-spacing: 0.11em;
}
.p-contact__telLink-num-wrap {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.8rem;
}
.p-contact__telLink-icon {
  width: 2.7rem;
  height: 2.7rem;
  background: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='27.413'%20height='27.075'%20viewBox='0%200%2027.413%2027.075'%3e%3cpath%20id='パス_9269'%20data-name='パス%209269'%20d='M3.86,0A3.562,3.562,0,0,1,5.8,1.22C6.953,2.409,8.121,3.586,9.288,4.763a3.412,3.412,0,0,1,.751,1.25A.945.945,0,0,1,9.851,7.1C9.231,7.734,8.627,8.382,8,9.009a2.135,2.135,0,0,0-.442,2.746,21.458,21.458,0,0,0,4.562,5.77,19.832,19.832,0,0,0,3.841,2.881,11.343,11.343,0,0,0,1.323.561.679.679,0,0,0,.647-.1,6.685,6.685,0,0,0,1.819-1.913c.219-.317.421-.646.611-.981a.755.755,0,0,1,.667-.39,1.958,1.958,0,0,1,1.5.507,50.984,50.984,0,0,1,4.208,4.124c.144.165.278.34.406.517a1.118,1.118,0,0,1,.046,1.39,4.44,4.44,0,0,1-2.081,1.785,14.173,14.173,0,0,1-4.558,1.154,8.106,8.106,0,0,1-3.8-.776,26.76,26.76,0,0,1-7.3-4.724A38.542,38.542,0,0,1,.625,9.761,6.316,6.316,0,0,1,.312,5.033,12.862,12.862,0,0,1,2.888.377,2.449,2.449,0,0,1,3.439,0Z'%20transform='translate(0)'%20fill='%237c6722'/%3e%3c/svg%3e")
    no-repeat center center/cover;
}
.p-contact__telLink-num {
  font-weight: 700;
  font-size: 3.8rem;
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-contact__form {
  padding-block: 8.9rem 2.3rem;
}
.p-contact__form-txtWrap {
  margin-block-start: 2.3rem;
  font-weight: 500;
  line-height: 1.8666666667;
  letter-spacing: 0.08em;
  text-align: center;
}
.p-contact__form-txt,
.p-contact__form-note {
  font-weight: 500;
}
input[type="email"],
input[type="tel"],
input[type="text"],
textarea {
  width: 100%;
  border: none;
  border-radius: 0;
  background-color: var(--white);
  color: var(--text-color);
  font-style: normal;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2.4;
  letter-spacing: 0.09em;
  transition: background-color 0.3s ease;
}
input[type="email"]:focus:not(:focus-visible),
input[type="tel"]:focus:not(:focus-visible),
input[type="text"]:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
  outline: none;
}
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="text"]::placeholder,
textarea::placeholder {
  color: var(--gray) !important;
}
input[type="email"],
input[type="tel"],
input[type="text"] {
  height: 6.3rem;
  padding: 8px 16px;
}
textarea {
  height: 31.2rem;
  padding: 8px 16px;
  resize: vertical;
}
.p-contact__form__container {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  justify-content: space-between;
  margin-block-start: 5.9rem;
  gap: 4rem;
  font-size: max(12px, 1.5rem);
}
.p-contact__form-cat-other {
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 4.1rem;
}
.p-contact__form-item {
  width: 100%;
}
.p-contact__form-item-label {
  margin-block-end: 0.1em;
  font-weight: 500;
  line-height: 1.7333333333;
  letter-spacing: 0.09em;
  cursor: pointer;
}
.p-contact__form-item-label-txt + .p-contact__form-item-label-txt {
  display: block;
  margin-block-start: 0.6rem;
}
.p-contact__form-item-required {
  color: var(--red);
}
.p-contact__form-item-body > span {
  display: block;
}
.p-contact__form-item-body.p-contact__form-item-body-cat {
  margin-block-start: 4.1rem;
}
.p-contact__form-item-check-wrap.p-contact__form-item-privacy-wrap .wpcf7-list-item {
  margin: 0;
}
.p-contact__form-item-check-wrap.p-contact__form-item-privacy-wrap label {
  margin-inline-end: 0;
}
.p-contact__form-item-check-wrap {
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: start;
}
.p-contact__form-item-check-wrap .wpcf7-list-item {
  margin: 0;
}
.p-contact__form-item-check-wrap a {
  display: inline-block;
  margin-inline-end: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  transition: opacity 0.5s ease;
}
.p-contact__form-item-check-wrap label {
  display: inline-block;
  position: relative;
  margin-right: 3rem;
  margin-bottom: 1.8rem !important;
  padding-left: 2.4rem;
  font-weight: 500;
  line-height: 1.9rem;
  letter-spacing: 0.06em;
  cursor: pointer;
}
.p-contact__form-item-check-wrap input {
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.9rem;
  height: 1.9rem;
  margin: 0;
  transform: translateY(-50%);
  border-color: transparent;
  cursor: pointer;
  opacity: 0;
}
.p-contact__form-item-check-wrap input + span:after {
  position: absolute;
  top: 50%;
  left: 0.1rem;
  width: 1.9rem;
  height: 1.9rem;
  transform: translateY(-50%);
  border: 0.1rem solid #707070;
  border-radius: 0;
  background-color: var(--white);
  content: "";
}
.p-contact__form-item-check-wrap input + span:before {
  z-index: 2;
  position: absolute;
  top: calc(50% - 0.3rem);
  left: 0.3rem;
  width: 0.6rem;
  height: 1.2rem;
  transform: rotate(0) translateY(-50%);
  border-right: 0.2rem solid var(--main-color);
  border-bottom: 0.2rem solid var(--main-color);
  content: "";
  opacity: 0;
  transition: all 0.3s ease 0s;
}
.p-contact__form-item-check-wrap input:checked + span:before {
  transform: rotate(51deg) translateY(-50%);
  opacity: 1;
}
.p-contact__form-item-check-wrap input:focus + span:after {
  outline: -webkit-focus-ring-color auto 1px;
}
.p-contact__form-button-wrap {
  grid-column: 1/3;
  width: 100%;
  max-width: 34.6rem;
  margin-inline: auto;
  margin-block-start: 9.8rem;
  padding-inline-start: 0.5rem;
  text-align: center;
}
.p-contact__form-button-wrap input[type="submit"] {
  width: 100%;
  min-height: 8.4rem;
  padding: 7px 16px 8px;
  border: none;
  border-radius: 0;
  background-color: #1d3319;
  color: var(--white);
  font-style: normal;
  font-weight: 700;
  font-size: max(12px, 1.7rem);
  line-height: normal;
  font-family: var(--font-main);
  letter-spacing: 0.09em;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.5s ease;
}
.p-contact__form-button-wrap input[type="submit"]:focus:not(:focus-visible) {
  outline: none;
}
.p-contact__form-button-wrap .wpcf7-spinner {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  white-space: nowrap;
  clip-path: inset(50%);
}
.p-contact__privacy-linkWrap {
  display: flex;
  justify-content: center;
  margin-block-start: 5.8rem;
}
.p-anim__page-fade {
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #fff;
  content: "";
  animation-duration: 1s;
  animation-timing-function: ease;
  animation-delay: 0;
  animation-fill-mode: forwards;
  animation-name: PageAnime-fade;
  opacity: 1;
  pointer-events: none;
}
@keyframes PageAnime-fade {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.p-anim__fadeIn {
  opacity: 0;
}
.p-anim__fadeIn.is-show {
  animation: fadeIn 1.5s 0s ease-in-out forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.u-hidden-visible {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
.u-hidden {
  display: none;
}
.u-txt-uppercase {
  text-transform: uppercase;
}
.u-indent-disc {
  display: flex;
  flex-direction: column;
}
.u-indent-disc li {
  position: relative;
  padding-left: 1em;
}
.u-indent-disc li:before {
  position: absolute;
  top: 1em;
  left: 0.4285714286em;
  width: 0.2142857143em;
  height: 0.2142857143em;
  border-radius: 50%;
  background: currentColor;
  content: "";
}
.u-indent-num {
  display: flex;
  flex-direction: column;
  counter-reset: number 0;
}
.u-indent-num > li {
  position: relative;
  padding-left: 1.3rem;
}
.u-indent-num > li:before {
  position: absolute;
  top: 0.2666666667em;
  left: 0;
  content: counter(number) ".";
  color: currentColor;
  counter-increment: number 1;
}
.u-indent-num-frame {
  display: flex;
  flex-direction: column;
  counter-reset: number 0;
}
.u-indent-num-frame > li {
  position: relative;
}
.u-indent-num-frame > li:before {
  content: "(" counter(number) ")";
  color: currentColor;
  counter-increment: number 1;
}
.u-indent-note {
  display: flex;
  flex-direction: column;
}
.u-indent-note li {
  position: relative;
  padding-left: 1em;
}
.u-indent-note li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}
.u-color-bg {
  position: relative;
}
.u-color-bg:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--bg-color);
  content: "";
  mix-blend-mode: multiply;
  pointer-events: none;
}
.u-color-main {
  color: var(--main-color);
}
.u-color-white {
  color: var(--white);
}
.u-color-red {
  color: var(--red);
}
.u-hover {
  transition: opacity 0.5s ease;
}
@media (min-width: 768px) {
  .p-footer__bg:before {
    background: url(../img/common/bg_footer.webp) no-repeat center top/cover;
  }
}
@media not screen and (min-width: 768px) {
  html {
    font-size: 2.3255813953vw;
  }
  body {
    font-size: max(12px, 1.2rem);
  }
  .l-inner {
    padding: 0 var(--inner-sp);
  }
  .c-btn {
    padding-inline-end: 0.75em;
    color: var(--main-color);
    font-size: max(12px, 1.2rem);
  }
  .c-btn .c-btn__arrow {
    top: calc(50% + 0.0833333333em);
  }
  .c-btn.c-btn--underline {
    padding-inline-end: 1.0833333333em;
    padding-block-end: 0.3333333333em;
    color: #000;
  }
  .c-btn-page {
    max-width: 17.7rem;
  }
  .c-btn-page .c-btn-page__head {
    padding-block-end: 0.3rem;
  }
  .c-btn-page .c-btn-page__txtJa {
    font-size: 1.8rem;
    letter-spacing: 0.01em;
  }
  .c-btn-page .c-btn-page__txtEn {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .c-btn-page .c-btn-page__body {
    padding-block-start: 1rem;
    color: var(--main-color);
    font-size: max(12px, 1.2rem);
  }
  .c-btn-page.c-btn-page--ceremony {
    min-width: 19.6rem;
    color: var(--text-color);
    text-align: left;
  }
  .c-btn-page.c-btn-page--ceremony .c-btn-page__head {
    justify-content: start;
    gap: 0.7rem;
  }
  .c-btn-page.c-btn-page--ceremony .c-btn-page__body {
    padding-block-start: 1rem;
    color: var(--main-color) !important;
  }
  .c-sec-ttl {
    gap: 0.9rem;
  }
  .c-sec-ttl .c-sec-ttl-ja {
    font-size: 1.8rem;
  }
  .c-sec-ttl .c-sec-ttl-En {
    padding-block-end: 0.5rem;
    font-size: 1.2rem;
  }
  .c-to-top {
    right: 3.3rem;
    bottom: 48.6rem;
    gap: 0.3rem;
  }
  .p-drawer__icon {
    top: 30px;
    right: 22px;
    gap: 9px;
    transform: translate(0);
  }
  .p-drawer__icon.is-top {
    visibility: visible;
    opacity: 1;
  }
  .p-drawer__icon.is-active .p-drawer__bar:nth-child(1) {
    top: 5px;
  }
  .p-drawer__icon.is-active .p-drawer__bar:nth-child(2) {
    top: 5px;
  }
  .p-drawer__bar-wrap {
    width: 39px;
    height: 10px;
  }
  .p-drawer__bar:nth-child(1) {
    top: 0;
  }
  .p-drawer__bar:nth-child(2) {
    top: 5px;
  }
  .p-drawer__bar:nth-child(3) {
    top: 10px;
  }
  .p-drawer__icon-txt {
    font-size: 11px;
    letter-spacing: 0.1818181818em;
  }
  .p-drawer__container {
    padding-block: 253px 28px;
  }
  .p-drawer__logo {
    top: 10px;
    left: 12px;
    max-width: 52px;
    transform: translate(0);
  }
  .p-drawer__logo-link {
    padding-block: 0;
  }
  .p-drawer__nav-list {
    padding-inline-end: 0;
    gap: 14px;
  }
  .p-drawer__nav-link {
    gap: 7px;
  }
  .p-drawer__nav-link .p-drawer__nav-txtJa,
  .p-drawer__nav-link .p-drawer__nav-txtEn {
    font-size: 12px;
  }
  .p-drawer__legal {
    margin-block-start: 202px;
  }
  .p-drawer__legal-link {
    font-size: 12px;
  }
  .p-footer__bg {
    overflow: visible;
  }
  .p-footer__bg:before {
    top: auto;
    bottom: 0;
    left: 50%;
    aspect-ratio: 430/991;
    width: 100%;
    height: auto;
    transform: translate(-50%);
    background: url(../img/common/bg_footer-sp.webp) no-repeat center top/cover;
  }
  .p-footer {
    padding-block: 2.2rem 3rem;
  }
  .p-footer small {
    font-size: 0.9rem;
  }
  .p-header {
    height: var(--header-height-sp);
  }
  .p-header__logo {
    top: 11px;
    left: 12px;
    max-width: 51.84px;
    transform: translate(0);
  }
  .p-header__nav-link {
    font-size: 12px;
  }
  .p-mv {
    height: 45.2rem;
    margin-block-start: var(--header-height-sp);
    background: url(../img/top/img_mv01-sp.webp) no-repeat center center/cover;
  }
  .p-topAbout {
    top: -4rem;
    padding-block: 31.8rem 6.7rem;
  }
  .p-topAbout .l-inner {
    display: flex;
    flex-direction: column;
  }
  .p-topAbout__ttl {
    z-index: 2;
    position: absolute;
    top: -31.8rem;
    left: calc(50% - 0.3rem);
    margin-inline-start: 0;
    transform: translate(-50%);
    font-size: 1.8rem;
    line-height: 2.3888888889;
    letter-spacing: 0.1666666667em;
  }
  .p-topAbout__ttl:before {
    z-index: -1;
    position: absolute;
    top: calc(50% + 6.3rem);
    left: calc(50% - 4.4rem);
    width: 16.2rem;
    height: 16.2rem;
    transform: translate(-50%, -50%);
    background: url(../img/top/deco_logo.webp) no-repeat center center/cover;
    content: "";
    pointer-events: none;
  }
  .p-topAbout__link-list {
    gap: 6rem;
  }
  .p-topAbout__link-item:nth-child(2) .c-btn-page__head {
    gap: 1.9rem;
  }
  .p-topAbout__img:nth-child(1) {
    top: -4.2rem;
    right: 2.1rem;
    width: 16.4rem;
    height: 21.5rem;
  }
  .p-topAbout__img:nth-child(2) img {
    filter: blur(4px);
    opacity: 0.51;
  }
  .p-topAbout__img:nth-child(2) {
    top: -18.7rem;
    right: -9.4rem;
    width: 22.1rem;
    height: 28.3rem;
  }
  .p-topDivider__img {
    position: relative;
    overflow: hidden;
  }
  .p-topAdvantage {
    padding-block: 7.2rem 26.4rem;
  }
  .p-topAdvantage .l-inner {
    gap: 4.1rem;
  }
  .p-topAdvantage__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
  }
  .p-topAdvantage__bg figure,
  .p-topAdvantage__bg img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p-topAdvantage__bg img {
    filter: blur(3px);
  }
  .p-topAdvantage__ttl {
    margin-block-start: 0;
    color: var(--white);
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 2.2777777778;
  }
  .p-topAdvantage__link-list .c-btn-page {
    color: var(--white);
  }
  .p-topAdvantage__link-list .c-btn-page__head {
    gap: 0.3rem;
  }
  .p-topAdvantage__link-list .c-btn-page__body {
    color: #ac964e;
  }
  .p-topAdvantage__img-wrap {
    z-index: 2;
    top: 100%;
    width: 100%;
  }
  .p-topAdvantage__img:nth-child(1) {
    top: 13.2rem;
    left: calc(50% - 6.2rem);
    width: 16.4rem;
    height: 28.9rem;
  }
  .p-topAdvantage__img:nth-child(2) {
    top: 1.7rem;
    left: calc(50% + 11.2rem);
    width: 16.4rem;
    height: 29rem;
  }
  .p-topCeremony {
    flex-direction: column;
    align-items: start;
    justify-content: start;
    height: auto;
    margin-block-end: 17rem;
    padding-block-start: 29rem;
  }
  .p-topCeremony .c-btn-page {
    padding-inline: 3.5rem;
  }
  .p-topCeremony__img-wrap {
    z-index: 2;
    position: relative;
    top: 0;
    left: calc(50% - 0.7rem);
    height: 28.6rem;
    margin-block-start: 3.8rem;
    gap: 0.7rem;
    transform: translate(-50%);
  }
  .p-topCeremony__img-wrap:before {
    z-index: -1;
    position: absolute;
    top: -14.2rem;
    left: calc(50% + 12rem);
    width: 16.2rem;
    height: 16.2rem;
    transform: translate(-50%);
    background: url(../img/top/deco_logo.webp) no-repeat center center/cover;
    content: "";
    pointer-events: none;
  }
  .p-topCeremony__img {
    width: 41.6279069767vw;
    min-width: auto;
  }
  .p-topCeremony__img img {
    filter: blur(2px);
  }
  .p-contactCta .l-inner {
    padding: 0 35px;
  }
  .p-contactCta__head {
    position: relative;
    grid-template-columns: 12.2rem auto;
    justify-content: center;
    padding-block: 0.7rem 0;
    gap: 1.3rem;
  }
  .p-contactCta__head .c-sec-ttl {
    margin-inline-start: 0;
    margin-block-start: 0;
  }
  .p-contactCta__txt-wrap .c-btn {
    position: absolute;
    top: 23.4rem;
    left: calc(50% - 9.5rem);
    margin-inline-start: 0;
    transform: translate(-50%);
  }
  .p-contactCta__txt {
    font-size: 1.8rem;
    line-height: 2.3888888889;
    letter-spacing: 0.1666666667em;
    writing-mode: vertical-rl;
  }
  .p-contactCta__body {
    flex-direction: column-reverse;
    padding-block: 24.8rem 6.9rem;
    gap: 0;
  }
  .p-contactCta__address-list {
    margin-block-start: 1.7rem;
    gap: 1.6rem;
  }
  .p-contactCta__address-item {
    text-align: center;
  }
  .p-contactCta__address-name,
  .p-contactCta__address-txt {
    font-size: max(11px, 1.1rem);
    line-height: normal;
    letter-spacing: 0.03em;
  }
  .p-contactCta__link {
    margin-block-start: 0;
  }
  .p-contactCta__logo {
    max-width: 19.7rem;
    margin-inline: auto;
  }
  .p-contactCta__nav-list {
    z-index: 2;
    position: absolute;
    bottom: -4rem;
    left: calc(50% - 12.3rem);
    transform: translate(-50%);
  }
  .p-contactCta__nav-link {
    padding-inline-start: 1.4em;
    font-size: max(10px, 1rem);
  }
  .p-contactCta__nav-link:before {
    width: 0.9em;
    height: 0.9em;
  }
  .p-page {
    padding-block-start: var(--header-height-sp);
  }
  .p-page:before {
    top: -0.1rem;
    left: -1.6rem;
    width: 49.6rem;
    height: 41.8rem;
    background: url(../img/common/deco_page-sp.webp) no-repeat center center/cover;
  }
  .p-page__fv {
    display: flex;
    flex-direction: column;
    align-items: start;
    padding-inline-start: 35px;
    padding-block: 5rem;
    gap: 2.4rem;
  }
  .p-page__ttl {
    padding: 0;
    font-size: 1.8rem;
    line-height: normal;
    letter-spacing: 0.042em;
    writing-mode: horizontal-tb;
  }
  .p-page__img {
    width: 100%;
    height: 23.6rem;
  }
  .p-page__sec-ttlWrap {
    gap: 0.2rem;
  }
  .p-page__sec-ttlDeco {
    width: 1.5rem;
    height: 1.5rem;
  }
  .p-page__sec-ttl {
    gap: 0.8rem;
    font-size: 1.8rem;
  }
  .p-privacy {
    padding-block-end: 15.4rem;
  }
  .p-privacy .l-inner {
    display: flex;
    flex-direction: column;
  }
  .p-privacy .p-page__ttl {
    justify-content: center;
    padding: 14.3rem 0 0;
    letter-spacing: 0.042em;
  }
  .p-privacy__container {
    margin-block-start: 5.8rem;
  }
  .p-privacy__txt {
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-privacy__list {
    gap: 1.9166666667em;
  }
  .p-privacy__list.u-indent-num > li {
    padding-left: 1.3rem;
  }
  .p-privacy__item {
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
  }
  .p-privacy__item-ttl {
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-privacy__item-contents {
    margin-inline-start: -1.3rem;
  }
  .p-privacy__indent-disc,
  .p-privacy__indent-num-frame {
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-advantage__point {
    padding-block: 8.6rem 8rem;
    gap: 6.2rem;
  }
  .p-advantage__pointItem {
    display: grid;
    grid-template-columns: 1fr 5.8333333333%;
    align-items: start;
    gap: 3.7rem 2.8rem;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse {
    grid-template-columns: 5.8333333333% 1fr;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse .p-advantage__pointItem-ttlWrap {
    order: 1;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse .p-advantage__pointItem-imgWrap {
    order: 2;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse .p-advantage__pointItem-txtWrap {
    order: 3;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse .p-advantage__pointItem-txt {
    letter-spacing: 0.001em;
  }
  .p-advantage__pointItem-contents {
    display: contents;
  }
  .p-advantage__pointItem-ttlWrap {
    display: flex;
    flex-direction: column;
    order: 2;
    gap: 2rem;
  }
  .p-advantage__pointItem-ttl {
    font-size: 1.8rem;
    line-height: 1.2777777778;
    letter-spacing: 0.15em;
    writing-mode: vertical-rl;
  }
  .p-advantage__pointItem-txtWrap {
    display: flex;
    grid-column: 1/3;
    flex-direction: column;
    align-items: end;
    order: 3;
  }
  .p-advantage__pointItem-txt {
    margin-block-start: 0;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0.03em;
  }
  .p-advantage__pointItem-imgWrap {
    order: 1;
    width: 100%;
    margin-block-start: 0.3rem;
  }
  .p-advantage__pointItem-img + .p-advantage__pointItem-img {
    margin-block-start: 0.8rem;
  }
  .p-advantage__pointItem-linkWrap {
    margin-block-start: 1rem;
  }
  .p-advantage__voice {
    z-index: 2;
    position: relative;
    margin-bottom: 12.3rem;
  }
  .p-advantage__voice:after {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/advantage/bg_voice-sp.webp) no-repeat center center/cover;
    content: "";
    opacity: 0.65;
    pointer-events: none;
  }
  .p-advantage__voice .p-advantage__voice-container {
    padding-block: 7.5rem 6.7rem;
  }
  .p-advantage__voice-list {
    margin-block-start: 4.4rem;
    gap: 2.8rem;
  }
  .p-advantage__voiceItem {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    text-align: center;
  }
  .p-advantage__voiceItem:nth-child(2) .p-advantage__voiceItem-txt {
    letter-spacing: 0.02em;
  }
  .p-advantage__voiceItem:nth-child(3) .p-advantage__voiceItem-txt {
    letter-spacing: 0;
  }
  .p-advantage__voiceItem:nth-child(4) .p-advantage__voiceItem-txt {
    letter-spacing: 0.034em;
  }
  .p-advantage__voiceItem-img {
    max-width: 6.9rem;
    margin-inline: auto;
  }
  .p-advantage__voiceItem-ttl {
    font-size: max(15px, 1.5rem);
  }
  .p-advantage__voiceItem-txt {
    margin-block-start: 0.9rem;
    padding: 0 1.5rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.75;
    text-align: left;
  }
  .p-advantage__voiceItem-office {
    margin-block-start: 0.7rem;
    padding: 0 1.5rem;
    font-size: max(12px, 1.2rem);
    text-align: left;
  }
  .p-ceremony__main {
    margin-block-end: 10.7rem;
    padding-block: 5rem 0;
  }
  .p-ceremony__schedule {
    flex-direction: column;
    margin-block-start: 2.6rem;
    gap: 2.06rem;
  }
  .p-ceremony__schedule-item {
    padding: 1.2rem 1.6rem;
    font-size: max(12px, 1.5rem);
    letter-spacing: 0;
    writing-mode: horizontal-tb;
  }
  .p-ceremony__schedule-item + .p-ceremony__schedule-item:before {
    top: -2rem;
    left: 50%;
    width: 1.1rem;
    height: 1.1rem;
    transform: translate(-50%) rotate(45deg);
    border-width: 0.1rem;
  }
  .p-ceremony__detailItem-wrap {
    margin-block-start: 11rem;
    gap: 4.5rem;
  }
  .p-ceremony__detailItem-head {
    padding: 0.9rem 3.2rem 1rem;
    font-size: 1.8rem;
    text-align: center;
  }
  .p-ceremony__detailItem-icon {
    right: 1.6rem;
  }
  .p-ceremony__detailItem-icon:before {
    width: 1.1rem;
    height: 1.1rem;
    border-width: 0.1rem;
  }
  .p-ceremony__detailItem-body {
    background: var(--white);
  }
  .p-ceremony__detailItem-contents {
    padding: 4.4rem 3rem 4.3rem;
  }
  .p-ceremony__detailItem-contents .u-indent-note {
    margin-block-start: 40px;
    line-height: 1.6666666667;
  }
  .p-ceremony__detailItem-contents.p-ceremony__detailItem-contents--dress
    .p-ceremony__detailItem-list
    + .p-ceremony__detailItem-subTtl {
    margin-block-start: 4.3rem;
  }
  .p-ceremony__detailItem-contents.p-ceremony__detailItem-contents--dress {
    padding: 2.7rem 3rem 4.5rem;
  }
  .p-ceremony__detailItem-contents.p-ceremony__detailItem-contents--dressUp
    .p-ceremony__detailItem-txt
    + .p-ceremony__detailItem-subTtl {
    margin-block-start: 3rem;
  }
  .p-ceremony__detailItem-subTtl {
    margin-block-end: 1.2rem;
    font-size: max(15px, 1.5rem);
  }
  .p-ceremony__detailItem-list {
    gap: 1.1rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.6666666667;
    letter-spacing: 0;
  }
  .p-ceremony__detailItem-list.u-indent-disc li {
    padding-left: 0.75em;
  }
  .p-ceremony__detailItem-list.u-indent-disc li.u-ls-sm {
    letter-spacing: -0.03em;
  }
  .p-ceremony__detailItem-list.u-indent-disc li:before {
    top: 0.5833333333em;
    width: 0.5em;
    height: 0.5em;
  }
  .p-ceremony__detailItem-txt {
    display: block;
    font-size: max(12px, 1.2rem);
    line-height: 1.6666666667;
  }
  .p-ceremony__detailItem-txt.u-line-height-wide {
    line-height: 1.9166666667;
  }
  .p-ceremony__detailItem-txt.u-inline-pc {
    margin-block-start: 1.7rem;
  }
  .p-about__introduction {
    padding-block: 1rem 16.5rem;
  }
  .p-about__introduction .l-inner {
    align-items: center;
  }
  .p-about__introduction-ttl {
    margin-block-start: 0.4rem;
    font-size: 1.8rem;
    line-height: 2.3611111111;
    letter-spacing: 0.1666666667em;
  }
  .p-about__introduction-txt {
    margin: 2.1rem 0 0;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-about__introduction-imgWrap {
    position: relative;
    margin-block-start: 2rem;
  }
  .p-about__introduction-img {
    position: relative;
  }
  .p-about__introduction-img:nth-child(1) {
    top: 0;
    left: 0;
    aspect-ratio: 360/198;
    width: 100%;
    height: auto;
  }
  .p-about__introduction-img:nth-child(2) {
    position: absolute;
    top: 5rem;
    left: 5.4rem;
    aspect-ratio: 360/198;
    width: 100%;
    height: auto;
  }
  .p-about__introduction-img:nth-child(2) img {
    filter: blur(4px);
  }
  .p-about__message {
    padding-block: 5.4rem 27.8rem;
    background: linear-gradient(to bottom, #b3bec6, #c2cdd8, #c3ced8);
  }
  .p-about__message-ttl {
    font-size: max(15px, 1.5rem);
    line-height: 2.0666666667;
    letter-spacing: 0;
  }
  .p-about__message-txt {
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-about__message-name {
    flex-direction: column;
    align-items: end;
    margin-block-start: 6.5rem;
    gap: 0;
  }
  .p-about__message-companyName {
    max-width: 13.9rem;
  }
  .p-about__message-ownerName {
    font-size: max(12px, 1.2rem);
    line-height: 1.5833333333;
  }
  .p-about__message-img {
    bottom: -4.3rem;
    left: calc(50% + 14.5rem);
    width: 93.9rem;
  }
  .p-about__company {
    padding-block: 15.4rem 16.3rem;
  }
  .p-about__company .l-inner {
    grid-template-columns: 1fr 84.7222222222%;
  }
  .p-about__company-ttl {
    margin-inline-start: 0.6rem;
    font-size: 1.8rem;
  }
  .p-about__company-container {
    display: contents;
  }
  .p-about__company-map {
    padding-bottom: 82.2950819672%;
  }
  .p-about__company-map-txt {
    grid-column: 2/3;
    letter-spacing: 0.1em;
  }
  .p-about__company-info-wrap {
    grid-column: 1/3;
    margin-block-start: 7.2rem;
    gap: 7rem;
  }
  .p-about__company-info {
    grid-column: 1/3;
    width: 100%;
    gap: 2rem;
  }
  .p-about__company-info-ttl {
    font-size: 1.8rem;
  }
  .p-about__company-dl-wrap {
    gap: 1.6rem;
  }
  .p-about__company-dl {
    grid-template-columns: 9.7rem 1fr;
    padding-bottom: 0.9rem;
    gap: 0.7rem;
  }
  .p-about__company-dt,
  .p-about__company-dd {
    font-size: max(12px, 1.2rem);
    line-height: 2.0833333333;
  }
  .p-service__anchor {
    padding-block: 0.7rem 9.5rem;
  }
  .p-service__anchor .l-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.5rem;
  }
  .p-service__anchor-ttl {
    margin-inline-start: 0;
    font-size: 1.8rem;
    line-height: 2.3333333333;
    letter-spacing: 0.1111111111em;
  }
  .p-service__anchor-list {
    width: 100%;
    padding-inline-end: 0.3rem;
    gap: 5.2rem;
  }
  .p-service__anchor-link {
    align-items: center;
    padding-block-end: 0.5rem;
  }
  .p-service__anchor-txt {
    margin-inline-start: -0.2rem;
    font-weight: 600;
    font-size: 1.8rem;
  }
  .p-service__anchor-more {
    gap: 0.0833333333em;
    color: #ac964e;
    font-size: max(12px, 1.2rem);
  }
  .p-service__anchor-icon {
    width: 0.75em;
    height: 0.75em;
  }
  .p-service__forehead {
    padding-block: 6.3rem 7.6rem;
    text-align: center;
  }
  .p-service__forehead:before {
    background: url(../img/service/bg_forehead-sp.webp) no-repeat center center/cover;
  }
  .p-service__forehead-lead {
    margin-inline: calc(50% - 50vw);
    margin-block-start: 2rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-service__forehead-imgWrap {
    margin-block-start: 1.9rem;
    gap: 0.7rem 0.8rem;
  }
  .p-service__forehead-img.p-service__forehead-img-full-sp {
    grid-column: 1/3;
  }
  .p-service__forehead-note {
    display: inline-block;
    margin-block-start: 2.4rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.5833333333;
    letter-spacing: 0;
  }
  .p-service__forehead-movie {
    margin-block-start: 2.4rem;
  }
  .p-service__gift {
    padding-block: 7.8rem 7.2rem;
    text-align: center;
  }
  .p-service__gift-lead {
    margin-inline: calc(50% - 50vw);
    margin-block-start: 1.9rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-service__gift-imgWrap {
    margin-block-start: 2.7rem;
    gap: 0.7rem 0.8rem;
  }
  .p-service__gift-img.p-service__gift-img-full {
    aspect-ratio: 360/183;
  }
  .p-service__gift-note {
    display: inline-block;
    margin-block-start: 3.3rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.5833333333;
    letter-spacing: 0;
  }
  .p-service__support {
    margin-block-end: 12rem;
    padding-block: 6rem 7.3rem;
  }
  .p-service__support:before {
    background: url(../img/service/bg_support-sp.webp) no-repeat center center/cover;
  }
  .p-service__support-lead {
    margin-inline: calc(50% - 50vw);
    margin-block-start: 2rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-service__support-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-block-start: 6.1rem;
    text-align: center;
  }
  .p-service__support-ttl {
    margin-inline-end: 1rem;
    font-weight: 600;
    font-size: max(15px, 1.5rem);
    line-height: 1.6;
    letter-spacing: 0;
  }
  .p-service__support-list {
    margin-block-start: 2.8rem;
    padding-inline-start: 3.4rem;
    text-align: left;
  }
  .p-service__support-list.u-indent-num > li {
    padding-left: 0.8666666667em;
  }
  .p-service__supportItem {
    font-size: max(15px, 1.5rem);
  }
  .p-service__supportItem:after {
    top: 1.6rem;
    left: -2.2rem;
    width: 1rem;
    height: 1rem;
  }
  .p-service__supportItem + .p-service__supportItem {
    margin-block-start: 3.7rem;
  }
  .p-service__supportItem-ttl {
    padding-bottom: 0.5rem;
    font-size: max(15px, 1.5rem);
  }
  .p-service__supportItem-ttl.u-ls-sm {
    letter-spacing: 0;
  }
  .p-service__supportItem-ttl:before {
    left: -1.3rem;
    width: 100%;
  }
  .p-service__supportItem-contents {
    margin-inline-start: -1.3rem;
    margin-block-start: 0.8rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.75;
    letter-spacing: 0;
  }
  .p-service__supportItem-contents.u-mt-l {
    margin-block-start: 0.8rem;
  }
  .p-service__supportItem-txt {
    padding-inline-end: 9.8159509202%;
  }
  .p-service__supportItem-txt.u-ls-sm {
    padding-inline-end: 0.9202453988%;
  }
  .p-service__supportItem-bar {
    left: -1.7rem;
    height: calc(100% + 3.7rem);
  }
  .p-contact__tel {
    padding-block: 5rem 6.4rem;
  }
  .p-contact__tel-lead {
    margin-inline: calc(50% - 50vw);
    margin-block-start: 2rem;
    padding-inline: 0.8rem;
    font-size: max(12px, 1.2rem);
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  .p-contact__telLink-wrap {
    margin-block-start: 2.8rem;
    gap: 2.6rem;
  }
  .p-contact__telLink {
    gap: 0.6rem;
  }
  .p-contact__telLink-txt {
    font-size: max(12px, 1.2rem);
    line-height: 2.3333333333;
  }
  .p-contact__telLink-icon {
    width: 2.1rem;
    height: 2.1rem;
  }
  .p-contact__telLink-num {
    font-size: 2.8rem;
  }
  .p-contact__form {
    padding-block: 5.8rem 12.9rem;
  }
  .p-contact__form-txtWrap {
    margin-block-start: 1.9rem;
    line-height: 1.9166666667;
    letter-spacing: 0;
  }
  input[type="email"],
  input[type="tel"],
  input[type="text"] {
    height: 4.6rem;
  }
  textarea {
    height: 27.9rem;
  }
  .p-contact__form__container {
    display: flex;
    flex-direction: column;
    margin-block-start: 4rem;
    gap: 2.5rem;
    font-size: max(12px, 1.2rem);
  }
  .p-contact__form-cat-other {
    width: 100%;
    gap: 0.6rem;
  }
  .p-contact__form-item-label {
    line-height: 2.1666666667;
  }
  .p-contact__form-item-label-txt + .p-contact__form-item-label-txt {
    display: inline-block;
  }
  .p-contact__form-item-body.p-contact__form-item-body-cat {
    margin-block-start: 1.1rem;
  }
  .p-contact__form-item-check-wrap.p-contact__form-item-privacy-wrap {
    align-items: center;
    margin-block-start: 6.7rem;
  }
  .p-contact__form-item-check-wrap.p-contact__form-item-privacy-wrap label {
    letter-spacing: 0.09em;
  }
  .p-contact__form-item-check-wrap a {
    margin-inline-end: 0.1rem;
    text-underline-offset: 0.1rem;
  }
  .p-contact__form-item-check-wrap label {
    margin-bottom: 1.1rem !important;
    padding-left: 2.3rem;
  }
  .p-contact__form-item-check-wrap input + span:after {
    top: calc(50% + 0.2rem);
    left: 0;
  }
  .p-contact__form-item-check-wrap input + span:before {
    top: calc(50% - 0.2rem);
    left: 0.2rem;
  }
  .p-contact__form-button-wrap {
    max-width: 22.4rem;
    margin-inline: auto;
    margin-block-start: -1rem;
    padding-inline-start: 0;
  }
  .p-contact__form-button-wrap input[type="submit"] {
    min-height: 5.8rem;
    font-size: max(12px, 1.2rem);
  }
  .u-hidden-sp {
    display: none !important;
  }
  .u-indent-note {
    display: inline-block;
  }
  .u-indent-note li:before {
    position: relative;
  }
  .u-indent-note li {
    display: inline;
    padding-left: 0;
  }
}
@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    cursor: default;
    pointer-events: none;
  }
  .p-footer {
    border-top: 0.5px solid var(--white);
  }
  .p-mv {
    height: 66rem;
    margin-block-start: var(--header-height-pc);
    background: url(../img/top/img_mv01.webp) no-repeat center center/cover;
  }
  .p-page:before {
    background: url(../img/common/deco_page.webp) no-repeat center center/cover;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse {
    flex-direction: row-reverse;
    align-items: end;
    gap: 4.4468546638%;
  }
  .p-advantage__pointItem.p-advantage__pointItem--reverse .p-advantage__pointItem-imgWrap {
    margin-block-end: 10px;
  }
  .p-advantage__voice .p-advantage__voice-container {
    z-index: 2;
    position: relative;
  }
  .p-advantage__voice .p-advantage__voice-container:after {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/advantage/bg_voice.webp) no-repeat center center/cover;
    content: "";
    opacity: 0.76;
    pointer-events: none;
  }
  .p-ceremony__detailItem-contents.u-padding-sm {
    padding: 6.1rem 3.9rem 7rem 4.7rem;
  }
  .p-ceremony__detailItem-txt.u-letter-spacing-wide {
    letter-spacing: 0.05em;
  }
  .p-service__forehead:before {
    background: url(../img/service/bg_forehead.webp) no-repeat center center/cover;
  }
  .p-service__support:before {
    background: url(../img/service/bg_support.webp) no-repeat center center/cover;
  }
  .p-service__supportItem + .p-service__supportItem.u-mt-sm {
    margin-block-start: 5.7rem;
  }
  .p-service__supportItem-txt.u-ls-sm {
    letter-spacing: 0.03em;
  }
  .p-contact__form-cat-other .p-contact__form-item {
    max-width: 57.3rem;
    margin-inline-start: 4rem;
  }
  .u-hidden-pc {
    display: none;
  }
}
@media not screen and (min-width: 992px) {
  .u-hidden-tb {
    display: none;
  }
}
@media screen and (min-width: 992px) {
  .u-hidden-lg {
    display: none;
  }
}
@media not screen and (min-width: 1200px) {
  .u-hidden-xs {
    display: none;
  }
}
@media screen and (min-width: 1200px) {
  .u-hidden-xl {
    display: none;
  }
}
@media (min-width: 1764px) {
  .p-footer__bg:before {
    top: auto;
    bottom: 0;
    left: 50%;
    aspect-ratio: 3000/1545;
    width: 3000px;
    transform: translate(-50%);
    background: url(../img/common/bg_footer-lg.webp) no-repeat center top/cover;
  }
}
@media (min-width: 3000px) {
  .p-footer__bg:before {
    top: auto;
    bottom: 0;
    left: 50%;
    aspect-ratio: 3000/1545;
    width: 100%;
    transform: translate(-50%);
    background: url(../img/common/bg_footer-lg.webp) no-repeat center top/cover;
  }
}
@media screen and (max-width: 1339px) and (min-width: 768px) {
  .p-header__logo {
    left: 32px;
    transform: translate(0);
  }
}
@media screen and (max-width: 1200px) and (min-width: 768px) {
  html {
    font-size: 0.8333333333vw;
  }
}
@media (hover: hover) {
  .c-btn:hover {
    color: var(--main-color);
  }
  .c-btn:hover.c-btn--underline:before {
    transform: scale(0);
  }
  .c-btn-page.c-btn-page--ceremony:hover .c-btn-page__body {
    color: var(--white);
  }
  .c-btn-page:hover .c-btn-page__body {
    color: var(--main-color);
  }
  .c-btn-page:hover .c-btn-page__head:before {
    transform: scale(0);
  }
  .c-to-top:hover .c-to-top__line:after {
    transform: scaleY(1);
  }
  .p-drawer__nav-link:hover {
    opacity: 0.3;
  }
  .p-service__anchor-link:hover:after {
    transform: scaleX(0);
  }
  .p-service__anchor-link:hover .p-service__anchor-more {
    color: var(--main-color);
  }
  input[type="email"]:hover,
  input[type="tel"]:hover,
  input[type="text"]:hover,
  textarea:hover {
    background-color: #fcfcfc;
  }
  .p-contact__form-item-check-wrap a:hover {
    opacity: 0.3;
  }
  .p-contact__form-button-wrap input[type="submit"]:hover {
    opacity: 0.8;
  }
  .u-hover:hover {
    opacity: 0.3;
  }
}
