@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}
html {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  word-break: break-all;
  font-size: 62.5%;
}
@media (max-width: 1366px) and (min-width: 768px) {
  html {
    font-size: 0.7320644217vw;
  }
}
@media only screen and (max-width: 767px) {
  html {
    font-size: min(2.6666666667vw, 14.6666666667px);
  }
}

body {
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}
body a {
  cursor: pointer;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
body a:hover {
  opacity: 0.6;
}
body img {
  width: 100%;
  height: auto;
}
body p {
  margin: unset;
}

.WeddingInner {
  max-width: 1366px;
  width: 100%;
  padding-inline: 3rem;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .WeddingInner {
    padding-inline: 2rem;
    max-width: 550px;
  }
}

.textTen {
  font-family: "ten-mincho", serif !important;
}

.ArrowsArea {
  width: 82.4rem;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 9.2rem;
     -moz-column-gap: 9.2rem;
          column-gap: 9.2rem;
  color: #354256;
  -webkit-margin-before: 8.3rem;
          margin-block-start: 8.3rem;
  -webkit-margin-after: 11rem;
          margin-block-end: 11rem;
}

.PrevNavi,
.NextNavi {
  width: 36.6rem;
  height: 8rem;
  border-radius: 999px;
  border: 2px solid;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2.4rem;
  font-weight: 700;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.PrevNavi:hover,
.NextNavi:hover {
  background-color: #354256;
  color: #fff;
}

.PrevNavi__p,
.NextNavi__p {
  opacity: 0.6;
  pointer-events: none;
}

.PrevNavi::after {
  display: block;
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  -webkit-border-before: 2px solid;
          border-block-start: 2px solid;
  -webkit-border-start: 2px solid;
          border-inline-start: 2px solid;
  position: absolute;
  top: 50%;
  left: 5rem;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

.PrevNavi:hover::after,
.NextNavi:hover::after {
  border-color: #fff;
}

.NextNavi::after {
  display: block;
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  -webkit-border-before: 2px solid;
          border-block-start: 2px solid;
  -webkit-border-end: 2px solid;
          border-inline-end: 2px solid;
  position: absolute;
  top: 50%;
  right: 5rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

.list-pageNo {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .list-pageNo {
    margin-top: 6.4rem;
  }
}

.PageNumBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}

.page-numbers {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  padding-top: 1.5rem;
  width: 5rem;
  height: 5rem;
  background: #fff;
  border: 0.1rem solid #000;
}

.page-numbers.current {
  color: #fff;
  background: #000;
}

.page-numbers.dots {
  border: none;
}

.PageNumBox div {
  width: 5rem;
  height: 5rem;
  margin: 0 0.35rem;
  border: 1px solid #000;
  position: relative;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
@media only screen and (max-width: 767px) {
  .PageNumBox div {
    width: 5rem;
    height: 5rem;
    margin: 0 0.35rem;
  }
}
.PageNumBox div:hover {
  opacity: 0.5;
}

.PageNumBox div:nth-of-type(1) {
  background-color: #000;
  color: #fff;
}

.PageNumBox div:nth-of-type(4) {
  border: none;
}

.PageNumBox div p,
.PageNumBox div a {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 1rem 1.5rem;
}

@-webkit-keyframes bounceInUp {
  0% {
    bottom: -72rem;
  }
  60% {
    bottom: 1.5rem;
  }
  80% {
    bottom: -0.5rem;
  }
  100% {
    bottom: 0;
  }
}

@keyframes bounceInUp {
  0% {
    bottom: -72rem;
  }
  60% {
    bottom: 1.5rem;
  }
  80% {
    bottom: -0.5rem;
  }
  100% {
    bottom: 0;
  }
}
.popup {
  position: fixed;
  bottom: -140rem;
  right: 0;
  z-index: 999;
  -webkit-transition: all 1.5s ease-in-out;
  transition: all 1.5s ease-in-out;
  width: 34.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #fff;
}

.popup.bounce {
  -webkit-animation: bounceInUp 0.8s ease forwards;
          animation: bounceInUp 0.8s ease forwards;
}

@-webkit-keyframes bounceFormInUp {
  0% {
    bottom: -120rem;
  }
  60% {
    bottom: 1.5rem;
  }
  80% {
    bottom: -0.5rem;
  }
  100% {
    bottom: 0;
  }
}

@keyframes bounceFormInUp {
  0% {
    bottom: -120rem;
  }
  60% {
    bottom: 1.5rem;
  }
  80% {
    bottom: -0.5rem;
  }
  100% {
    bottom: 0;
  }
}
.popup.--show {
  -webkit-animation: bounceFormInUp 0.8s ease forwards;
          animation: bounceFormInUp 0.8s ease forwards;
}

@-webkit-keyframes bounceFormDown {
  0% {
    bottom: 0;
  }
  60% {
    bottom: -75rem;
  }
  80% {
    bottom: -70rem;
  }
  100% {
    bottom: -99rem;
    bottom: -69rem;
  }
}

@keyframes bounceFormDown {
  0% {
    bottom: 0;
  }
  60% {
    bottom: -75rem;
  }
  80% {
    bottom: -70rem;
  }
  100% {
    bottom: -99rem;
    bottom: -69rem;
  }
}
.popup.--down {
  -webkit-animation: bounceFormDown 0.8s ease forwards;
          animation: bounceFormDown 0.8s ease forwards;
}

.PopUpForm {
  width: 100%;
  background-color: #c86a74;
}

.PopUpTop {
  width: 100%;
  background-color: #fff;
  -webkit-padding-before: 2.4rem;
          padding-block-start: 2.4rem;
  -webkit-padding-after: 2rem;
          padding-block-end: 2rem;
}

.PopUpFormLogo {
  width: 19.1rem;
  margin-inline: auto;
}

.PopUpFormTitle {
  width: 19.1rem;
  margin-inline: auto;
  position: relative;
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
}

.PopUpFormTitle p {
  width: 100%;
  font-family: "Hannari", serif;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.yd-FormTitle.yd-FormTitle--popup {
  width: 34.2rem;
  margin-inline: auto;
  height: 4rem;
  font-size: 2rem;
}

.yd-FormArea.yd-FormArea--popup {
  -webkit-padding-before: 1rem;
          padding-block-start: 1rem;
  -webkit-padding-after: 1.6rem;
          padding-block-end: 1.6rem;
}

.PopUpFormTag {
  position: absolute;
  top: -3rem;
  right: 0;
  width: 3rem;
  height: 3rem;
  background-color: #000;
  cursor: pointer;
}

.PopUpFormTag::after {
  display: block;
  content: "";
  width: 1.3rem;
  height: 1.3rem;
  -webkit-border-before: 3px solid #fff;
          border-block-start: 3px solid #fff;
  -webkit-border-start: 3px solid #fff;
          border-inline-start: 3px solid #fff;
  position: absolute;
  top: 60%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.PopUpFormTag.--hide {
  display: none;
}

.PopUpFormCloseTag.--hide {
  display: none;
}

.PopUpFormCloseTag {
  position: absolute;
  top: -3rem;
  right: 0;
  width: 3rem;
  height: 3rem;
  background-color: #000;
  cursor: pointer;
}

.PopUpFormCloseTag::after {
  display: block;
  content: "";
  width: 2rem;
  height: 0.3rem;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.PopUpFormCloseTag::before {
  display: block;
  content: "";
  width: 2rem;
  height: 0.3rem;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.yd-FormPartsWrap.yd-FormPartsWrap--popup {
  padding-inline: 1.6rem;
  -webkit-padding-after: 1rem;
          padding-block-end: 1rem;
  -webkit-padding-before: unset;
          padding-block-start: unset;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  font-size: 1.3rem;
  color: #fff;
}

.yd-FormParts.yd-FormParts--popup {
  display: block;
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.yd-FormParts.yd-FormParts--popup label {
  row-gap: 0.5rem;
}

.yd-FormParts.yd-FormParts--popup input {
  font-size: 1.2rem;
}

.yd-FormParts.formPartsText.formPartsText--popup textarea {
  font-size: 1.2rem;
}

.yd-required.yd-required--popup {
  width: 4.2rem;
  height: 2.1rem;
  font-size: 1rem;
  -webkit-margin-start: 1rem;
          margin-inline-start: 1rem;
  color: #fff;
}

.yd-confirm_button.yd-confirm_button--popup {
  width: 20rem;
  height: 4.4rem;
  -webkit-padding-start: unset;
          padding-inline-start: unset;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  -webkit-margin-before: 1.6rem;
          margin-block-start: 1.6rem;
}

.yd-ConfirmBtn.yd-ConfirmBtn--popup::after {
  width: 1rem;
  height: 1rem;
  -webkit-border-before: 3px solid #fff;
          border-block-start: 3px solid #fff;
  -webkit-border-end: 3px solid #fff;
          border-inline-end: 3px solid #fff;
  top: 50%;
  right: 9rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

.yd-submitBtn.yd-submitBtn--popup::after {
  right: 9rem;
}

#yd-BackBtn.yd-BackButton.yd-BackButton--popup::after {
  right: 9rem;
}

.yd-thanksArea.yd-thanksArea--popup h2 {
  -webkit-padding-before: 2rem;
          padding-block-start: 2rem;
}

.yd-thanksArea.yd-thanksArea--popup p {
  font-size: 2rem;
  padding-inline: 2rem;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup {
  display: block;
}

.yd-FormParts.formPartsText.formPartsText--popup {
  display: block;
}

.yd-FormParts.yd-FormParts--popup .yd-FormParts__label.yd-FormParts__label--popup,
.yd-FormParts.formPartsRadio.formPartsRadio--popup .yd-FormParts__label.yd-FormParts__label--popup,
.yd-FormParts.formPartsText.formPartsText--popup .yd-FormParts__label.yd-FormParts__label--popup {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  font-size: 1rem;
  color: #fff;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup {
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.yd-FormParts.formPartsText.formPartsText--popup {
  -webkit-margin-after: unset;
          margin-block-end: unset;
  height: 18rem;
}

.yd-wedding-ConfirmBtn.yd-wedding-ConfirmBtn--popup input {
  width: 20rem;
  height: 4.5rem;
  font-size: 1.6rem;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control-wrap {
  display: block;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
  display: block;
  font-size: 1.2rem;
  margin: 0;
  -webkit-margin-after: 1rem;
          margin-block-end: 1rem;
  color: #fff;
  height: unset;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio .wpcf7-list-item input {
  display: block;
  height: auto;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label {
  -webkit-padding-start: 2rem;
          padding-inline-start: 2rem;
  -webkit-padding-end: 1rem;
          padding-inline-end: 1rem;
  white-space: nowrap;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::before {
  width: 1.5rem;
  height: 1.5rem;
  left: 0rem;
}

.yd-FormParts.formPartsRadio.formPartsRadio--popup .wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::after {
  width: 1rem;
  height: 1rem;
  left: 0.3rem;
}

.yd-wedding-ConfirmTopText.yd-wedding-ConfirmTopText--popup {
  font-size: 1.8rem;
}

.yd-ConfirmList.yd-ConfirmList--popup {
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
}

.yd-ConfirmList.yd-ConfirmList--popup li dl {
  display: block;
  font-size: 2rem;
}

.yd-ConfirmList.yd-ConfirmList--popup li dl dt {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.yd-ConfirmList.yd-ConfirmList--popup li dl dd {
  -webkit-margin-start: 3rem;
          margin-inline-start: 3rem;
}

.yd-wedding-FormTitle.yd-wedding-FormTitle--popup {
  font-size: 2rem;
  color: #fff;
}

.yd-wedding-submitBtn.yd-wedding-submitBtn--popup input {
  width: 25rem;
  height: 6rem;
  font-size: 2.4rem;
}

.yd-wedding-back_button.yd-wedding-back_button--popup {
  font-size: 2rem;
}

.yd-thanksArea.yd-thanksArea--popup {
  position: relative;
  top: unset;
  left: unset;
  height: unset;
  background-color: unset;
}

.yd-thanksArea.yd-thanksArea--popup .thanksContentWrap {
  width: 100%;
  position: relative;
  top: unset;
  left: unset;
  height: unset;
  background-color: unset;
  -webkit-box-shadow: unset;
          box-shadow: unset;
  border-radius: unset;
  -webkit-transform: unset;
          transform: unset;
  -webkit-padding-before: 7.8rem;
          padding-block-start: 7.8rem;
}

.yd-thanksArea.yd-thanksArea--popup .thanksContentWrap .thank-you {
  position: relative;
  width: 23rem;
  height: 5.2rem;
  top: unset;
  left: unset;
}

.yd-thanksArea.yd-thanksArea--popup .thanksContentWrap h2 {
  font-size: 2.8rem;
}

.yd-thanksArea.yd-thanksArea--popup .thanksContentWrap p {
  font-size: 2.2rem;
}

body.popup-fixed {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
}

.yd__wedding__inner {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
}

.Top__img {
  width: 100%;
}

.yd__wedding__bg {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: url("../img_B/pc/BG-01.webp") no-repeat top center;
  background-size: cover;
  -webkit-margin-before: -17rem;
          margin-block-start: -17rem;
  position: relative;
  z-index: 2;
  -webkit-padding-after: 20rem;
          padding-block-end: 20rem;
}
@media only screen and (max-width: 767px) {
  .yd__wedding__bg {
    background: url("../img_B/sp/BG-01-sp.webp") no-repeat top center;
    background-size: cover;
    padding-inline: 2rem;
    -webkit-margin-before: -12.5rem;
            margin-block-start: -12.5rem;
    -webkit-padding-after: 7rem;
            padding-block-end: 7rem;
  }
}

.PhotoPanel {
  width: 90rem;
  margin-inline: auto;
  -webkit-padding-before: 20rem;
          padding-block-start: 20rem;
}
@media only screen and (max-width: 767px) {
  .PhotoPanel {
    width: 33.5rem;
    -webkit-padding-before: 15rem;
            padding-block-start: 15rem;
  }
}

.PhotoPanel__img {
  position: relative;
}

.PhotoPanel__limit {
  width: 26.7rem;
  position: absolute;
  top: -7rem;
  right: 20rem;
}
@media only screen and (max-width: 767px) {
  .PhotoPanel__limit {
    width: 13rem;
    top: -3rem;
    right: 4rem;
  }
}

.PhotoPanel__Content {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-padding-before: 8rem;
          padding-block-start: 8rem;
}
@media only screen and (max-width: 767px) {
  .PhotoPanel__Content {
    width: 100%;
    -webkit-padding-before: 4.5rem;
            padding-block-start: 4.5rem;
  }
}

.PhotoPanel__Content p {
  text-align: center;
  font-size: 2.5rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  .PhotoPanel__Content p {
    font-size: 1.4rem;
  }
}

p.PhotoPanel__Content__TextTop {
  font-family: "Hannari", serif;
  font-size: 4rem;
  color: #c86a74;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  p.PhotoPanel__Content__TextTop {
    font-size: 2.2rem;
  }
}

.PhotoPanel__Content__TextTop span {
  font-size: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .PhotoPanel__Content__TextTop span {
    font-size: 1.7rem;
  }
}

.contactLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 49rem;
  margin-inline: auto;
  position: relative;
  -webkit-margin-before: 3rem;
          margin-block-start: 3rem;
}
@media only screen and (max-width: 767px) {
  .contactLink {
    width: 26rem;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
  }
}

.contactLink span {
  width: 100%;
  position: absolute;
  font-size: 4rem;
  font-weight: 600;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-padding-before: 0.7rem;
          padding-block-start: 0.7rem;
}
@media only screen and (max-width: 767px) {
  .contactLink span {
    font-size: 1.7rem;
  }
}

.PanelMain {
  width: 100%;
  padding-inline: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .PanelMain {
    display: block;
    padding-inline: unset;
    -webkit-padding-before: 6rem;
            padding-block-start: 6rem;
  }
}

.PanelMainImage {
  width: 76rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .PanelMainImage {
    width: 29.5rem;
  }
}

.PanelMainImage.PanelMainImage__right {
  -webkit-margin-start: -23rem;
          margin-inline-start: -23rem;
  -webkit-margin-before: 25rem;
          margin-block-start: 25rem;
}
@media only screen and (max-width: 767px) {
  .PanelMainImage.PanelMainImage__right {
    -webkit-margin-before: -4rem;
            margin-block-start: -4rem;
    -webkit-margin-start: 5rem;
            margin-inline-start: 5rem;
  }
}

.yd__Worry {
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #c86a74;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width: 767px) {
  .yd__Worry {
    font-size: 2.4rem;
    -webkit-margin-before: 6rem;
            margin-block-start: 6rem;
  }
}

.yd__Worry--green {
  display: block;
  width: 21.7rem;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .yd__Worry--green {
    width: 8.7rem;
  }
}

.yd__Worry--green span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-6deg);
          transform: translate(-50%, -50%) rotate(-6deg);
  font-size: 6.6rem;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .yd__Worry--green span {
    font-size: 2.6rem;
  }
}

.yd__Worry--bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.yd__WorryList {
  width: 100%;
  max-width: 900px;
  margin-inline: auto;
  background-color: #fff;
  padding: 5rem 4.5rem;
  -webkit-margin-before: 5rem;
          margin-block-start: 5rem;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .yd__WorryList {
    padding: 3rem 1.5rem;
  }
}

.yd__WorryList::after {
  display: block;
  content: "";
  width: 100%;
  height: 5rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: #fff;
  position: absolute;
  bottom: -5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .yd__WorryList::after {
    height: 3rem;
    bottom: -3rem;
  }
}

.yd__WorryList li {
  width: 100%;
  -webkit-border-after: 2px solid #c86a74;
          border-block-end: 2px solid #c86a74;
  font-size: 2.5rem;
  padding-block: 0.8rem;
  -webkit-padding-start: 3.2rem;
          padding-inline-start: 3.2rem;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .yd__WorryList li {
    font-size: 1.6rem;
    -webkit-border-after: 1px solid #c86a74;
            border-block-end: 1px solid #c86a74;
  }
}

.yd__WorryList li::before {
  display: block;
  content: "";
  width: 2rem;
  height: 2rem;
  border-radius: 2px;
  border: 1px solid;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .yd__WorryList li::before {
    width: 1.6rem;
    height: 1.6rem;
    top: 31%;
  }
}

.yd__WorryList li::after {
  display: block;
  content: "";
  width: 0.7rem;
  height: 1.5rem;
  -webkit-border-end: 4px solid #c86a74;
          border-inline-end: 4px solid #c86a74;
  -webkit-border-after: 2px solid #c86a74;
          border-block-end: 2px solid #c86a74;
  position: absolute;
  top: 41%;
  left: 0.6rem;
  -webkit-transform: translateY(-50%) rotate(45deg) skew(21deg);
          transform: translateY(-50%) rotate(45deg) skew(21deg);
}
@media only screen and (max-width: 767px) {
  .yd__WorryList li::after {
    width: 0.6rem;
    height: 1.1rem;
    -webkit-border-end: 3px solid #c86a74;
            border-inline-end: 3px solid #c86a74;
    -webkit-border-after: 1px solid #c86a74;
            border-block-end: 1px solid #c86a74;
    top: 26%;
    left: 0.5rem;
  }
}

.yd__greenLine {
  position: relative;
}

.yd__greenLine img {
  position: absolute;
  left: 50%;
  bottom: -0.3rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.yd__greenLine span {
  position: relative;
}

.yd__Worry--solution h3 {
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #c86a74;
  text-align: center;
  -webkit-margin-before: 15rem;
          margin-block-start: 15rem;
}
@media only screen and (max-width: 767px) {
  .yd__Worry--solution h3 {
    font-size: 2.4rem;
    -webkit-margin-before: 9rem;
            margin-block-start: 9rem;
  }
}

.yd__weddingPhotos {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
}

.galleryBottomText {
  width: 100%;
  background-color: #c86a74;
  -webkit-margin-before: -31rem;
          margin-block-start: -31rem;
  -webkit-margin-after: 4rem;
          margin-block-end: 4rem;
}
@media only screen and (max-width: 767px) {
  .galleryBottomText {
    -webkit-margin-before: -23rem;
            margin-block-start: -23rem;
    -webkit-margin-after: unset;
            margin-block-end: unset;
  }
}

.galleryBottomText p {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Hannari", serif;
  color: #fff;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  .galleryBottomText p {
    -webkit-column-gap: 0.8rem;
       -moz-column-gap: 0.8rem;
            column-gap: 0.8rem;
  }
}

.galleryBottomText p:first-of-type {
  font-size: 3.2rem;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-margin-after: 4.5rem;
          margin-block-end: 4.5rem;
}
@media only screen and (max-width: 767px) {
  .galleryBottomText p:first-of-type {
    font-size: 2.2rem;
    -webkit-margin-after: unset;
            margin-block-end: unset;
  }
}

.galleryBottomText p:last-of-type {
  font-size: 4.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (max-width: 767px) {
  .galleryBottomText p:last-of-type {
    font-size: 3.6rem;
  }
}

.galleryBottomText--bottom--firstLine {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  .galleryBottomText--bottom--firstLine {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.ReasonTop {
  -webkit-margin-after: 12.7rem;
          margin-block-end: 12.7rem;
}
@media only screen and (max-width: 767px) {
  .ReasonTop {
    -webkit-margin-after: 3rem;
            margin-block-end: 3rem;
  }
}

.ReasonTop p {
  font-family: "Hannari", serif;
  font-size: 3.5rem;
  font-weight: 500;
  color: #c86a74;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.ReasonTop h2 {
  width: 60.9rem;
  height: 14rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-inline: auto;
  font-family: "Hannari", serif;
  font-size: 11.4rem;
  color: #fff;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .ReasonTop h2 {
    width: 29.2rem;
    height: 6.3rem;
    font-size: 5.4rem;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    margin-top: unset;
  }
}

.ReasonTop h2 span {
  font-size: 5.3rem;
}
@media only screen and (max-width: 767px) {
  .ReasonTop h2 span {
    font-size: 3rem;
  }
}

.ReasonTop h2::before {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #c86a74;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: skewX(16deg);
          transform: skewX(16deg);
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .ReasonTop h2::before {
    top: 1rem;
  }
}

.ReasonTop h2::after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #bbc100;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: skewX(-16deg);
          transform: skewX(-16deg);
  z-index: -2;
}
@media only screen and (max-width: 767px) {
  .ReasonTop h2::after {
    top: 1rem;
  }
}

.yd__dot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .yd__dot {
    width: 1.5rem;
  }
}

.yd__WorryBottom--white {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  width: 39.3rem;
  height: 9.1rem;
  position: relative;
  margin-inline: 1rem;
}
@media only screen and (max-width: 767px) {
  .yd__WorryBottom--white {
    width: 100%;
    height: auto;
  }
}

@media only screen and (max-width: 767px) {
  .yd__WorryBottom--white img {
    width: 26.3rem;
  }
}

.yd__WorryBottom--white span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #c86a74;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .yd__WorryBottom--white span {
    left: 1rem;
    -webkit-transform: translate(-1%, -50%);
            transform: translate(-1%, -50%);
  }
}

.ReasonBG {
  width: 100%;
  background: url("../img_B/pc/BG-03.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-before: 11rem;
          padding-block-start: 11rem;
  -webkit-padding-after: 20rem;
          padding-block-end: 20rem;
}
@media only screen and (max-width: 767px) {
  .ReasonBG {
    -webkit-padding-before: 8rem;
            padding-block-start: 8rem;
    padding-inline: 2rem;
    -webkit-padding-after: 12rem;
            padding-block-end: 12rem;
  }
}

.ReasonContents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4rem;
     -moz-column-gap: 4rem;
          column-gap: 4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
}
@media only screen and (max-width: 767px) {
  .ReasonContents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.ReasonContents.ReasonContents--reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-margin-start: unset;
          margin-inline-start: unset;
  -webkit-margin-end: auto;
          margin-inline-end: auto;
}
@media only screen and (max-width: 767px) {
  .ReasonContents.ReasonContents--reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.ReasonContents__number {
  width: 12.2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .ReasonContents__number {
    width: 8.2rem;
    margin-inline: auto;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}

.ReasonContents__Image {
  width: 61.4rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .ReasonContents__Image {
    width: 100%;
  }
}

.ReasonContentsFront {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2.4rem;
     -moz-column-gap: 2.4rem;
          column-gap: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .ReasonContentsFront {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.ReasonContents__text h3 {
  font-family: "Hannari", serif;
  font-size: 4rem;
  color: #333;
  line-height: 1.35;
  font-weight: 600;
}
@media only screen and (max-width: 767px) {
  .ReasonContents__text h3 {
    font-size: 2.8rem;
    text-align: center;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}

.ReasonContents__text h3 span {
  color: #c86a74;
}

.ReasonContents__text p {
  font-size: 2.5rem;
  line-height: 1.68;
  -webkit-margin-before: 4rem;
          margin-block-start: 4rem;
}
@media only screen and (max-width: 767px) {
  .ReasonContents__text p {
    font-size: 1.6rem;
    text-align: center;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}

.ReasonMark {
  width: 100%;
  max-width: 116rem;
  margin-inline: auto;
  margin-block: 5rem;
}
@media only screen and (max-width: 767px) {
  .ReasonMark {
    margin-block: 3rem;
  }
}

.staff {
  width: 100%;
  max-width: 1120px;
  margin-inline: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #fff;
  -webkit-box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.45);
          box-shadow: 7px 7px 5px rgba(0, 0, 0, 0.45);
  position: relative;
  -webkit-margin-before: 24rem;
          margin-block-start: 24rem;
  text-align: center;
  -webkit-padding-before: 4rem;
          padding-block-start: 4rem;
  -webkit-padding-after: 10.8rem;
          padding-block-end: 10.8rem;
}
@media only screen and (max-width: 767px) {
  .staff {
    -webkit-margin-before: 8rem;
            margin-block-start: 8rem;
    -webkit-padding-after: 5rem;
            padding-block-end: 5rem;
  }
}

.staff__mark {
  width: 13.6rem;
  position: absolute;
  top: -4rem;
  left: 2rem;
}
@media only screen and (max-width: 767px) {
  .staff__mark {
    width: 6.6rem;
    top: -2rem;
    left: 1rem;
  }
}

.staff h2 {
  font-family: "Hannari", serif;
  font-size: 4rem;
  color: #c86a74;
}
@media only screen and (max-width: 767px) {
  .staff h2 {
    font-size: 2.4rem;
    font-weight: 500;
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.StaffImage {
  width: 27.1rem;
  margin-inline: auto;
  -webkit-margin-before: 8rem;
          margin-block-start: 8rem;
}
@media only screen and (max-width: 767px) {
  .StaffImage {
    width: 19.1rem;
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
  }
}

.StaffTitle {
  font-family: "Hannari", serif;
  font-size: 4rem;
  color: #333;
  -webkit-margin-before: 3.7rem;
          margin-block-start: 3.7rem;
}
@media only screen and (max-width: 767px) {
  .StaffTitle {
    font-size: 3rem;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}

.StaffTitle p {
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.StaffTitle p:first-of-type {
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  .StaffTitle p:first-of-type {
    font-size: 2.4rem;
  }
}

.StaffText {
  -webkit-margin-before: 12rem;
          margin-block-start: 12rem;
  font-size: 2.5rem;
  line-height: 1.68;
  color: #333;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .StaffText {
    -webkit-margin-before: 6rem;
            margin-block-start: 6rem;
    font-size: 1.6rem;
  }
}

.StaffText::before {
  display: block;
  content: "";
  width: 7.3rem;
  height: 0.2rem;
  background-color: #c86a74;
  position: absolute;
  top: -6rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .StaffText::before {
    top: -3rem;
  }
}

.yd__weddingTV__deco {
  width: 100%;
  max-width: 1240px;
  margin-inline: auto;
}

.yd__weddingTV__content {
  position: relative;
}

.TVTitle {
  position: absolute;
  top: 6.8rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #c86a74;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .TVTitle {
    top: 3.8rem;
    font-size: 2.8rem;
    line-height: 1.4;
  }
}

.TVTitle p {
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.TVTitle p:last-of-type {
  font-size: 6rem;
}
@media only screen and (max-width: 767px) {
  .TVTitle p:last-of-type {
    font-size: 3rem;
  }
}

.TVTitle p:last-of-type span {
  background-color: #c86a74;
  color: #fff;
}

.yd__weddingTableBG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background: url("../img_B/pc/BG-04.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-before: 15rem;
          padding-block-start: 15rem;
  -webkit-padding-after: 24.5rem;
          padding-block-end: 24.5rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingTableBG {
    -webkit-padding-before: 4rem;
            padding-block-start: 4rem;
    padding-inline: 2rem;
    -webkit-padding-after: 7.5rem;
            padding-block-end: 7.5rem;
  }
}

.yd__weddingTableBG h2 {
  width: 25.3rem;
  display: block;
  margin-inline: auto;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .yd__weddingTableBG h2 {
    width: 11.3rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
    -webkit-margin-after: unset;
            margin-block-end: unset;
  }
}

.yd__weddingTableBG h2 span {
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #fff;
  white-space: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .yd__weddingTableBG h2 span {
    font-size: 2.2rem;
  }
}

.yd__weddingTable {
  width: 100%;
  max-width: 1160px;
  margin-inline: auto;
  -webkit-margin-before: 4rem;
          margin-block-start: 4rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingTable {
    -webkit-margin-before: 3rem;
            margin-block-start: 3rem;
  }
}

.yd__weddingPlan {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
}

.yd__weddingPlan h2 {
  width: 100%;
  position: relative;
  -webkit-margin-before: unset;
          margin-block-start: unset;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}

.yd__weddingPlan h2 span {
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #fff;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .yd__weddingPlan h2 span {
    font-size: 2.2rem;
  }
}

.yd__weddingPlanBG.yd__weddingPlanBG--price {
  width: 100%;
  background: url("../img_B/pc/BG-05.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-after: 4rem;
          padding-block-end: 4rem;
  -webkit-padding-before: 0.1rem;
          padding-block-start: 0.1rem;
}

.yd__weddingPlan__title {
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 4rem;
  color: #c86a74;
  -webkit-margin-before: 8.3rem;
          margin-block-start: 8.3rem;
  -webkit-margin-after: 5.2rem;
          margin-block-end: 5.2rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingPlan__title {
    font-size: 2.4rem;
    -webkit-margin-before: 3rem;
            margin-block-start: 3rem;
    -webkit-margin-after: 2rem;
            margin-block-end: 2rem;
  }
}

.yd__weddingPlan__title.yd__weddingPlan__title--yellow {
  color: #c7a537;
}

.yd__weddingPlan__title.yd__weddingPlan__title--blue {
  color: #2585ae;
}

.PlanWrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 6.7rem;
     -moz-column-gap: 6.7rem;
          column-gap: 6.7rem;
}
@media only screen and (max-width: 767px) {
  .PlanWrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 4rem;
  }
}

.PlanContents {
  width: 49.1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .PlanContents {
    width: 28rem;
    margin-inline: auto;
  }
}

.PlanContents__title {
  position: absolute;
  top: 5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  font-family: "Hannari", serif;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .PlanContents__title {
    top: 3rem;
  }
}

.PlanContents__title__topText {
  font-size: 2.3rem;
  color: #fff;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  .PlanContents__title__topText {
    font-size: 1.6rem;
  }
}

.PlanContents__title__title {
  -webkit-margin-before: 0.8rem;
          margin-block-start: 0.8rem;
  font-size: 3.2rem;
  color: #ffff00;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .PlanContents__title__title {
    font-size: 2rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.PlanContents__title.title--long .PlanContents__title__topText {
  line-height: 1;
}

.PlanContents__title.title--long .PlanContents__title__title {
  line-height: 1;
}

p.PlanContents__price {
  position: absolute;
  bottom: 4rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 5.3rem;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  p.PlanContents__price {
    font-size: 3rem;
    bottom: 2.4rem;
  }
}

.PlanContents__price span {
  font-size: 3.5rem;
}
@media only screen and (max-width: 767px) {
  .PlanContents__price span {
    font-size: 2.2rem;
  }
}

.yd__weddingPlanBG.yd__weddingPlanBG--other {
  width: 100%;
  background: url("../img_B/pc/BG-06.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-after: 35rem;
          padding-block-end: 35rem;
  -webkit-padding-before: 0.1rem;
          padding-block-start: 0.1rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingPlanBG.yd__weddingPlanBG--other {
    -webkit-padding-after: 12rem;
            padding-block-end: 12rem;
  }
}

.PlanBottomText {
  width: 100%;
  max-width: 1050px;
  margin-inline: auto;
  background-color: #bbc100;
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 3.2rem;
  color: #fff;
  padding-block: 1rem;
  -webkit-margin-before: 9.8rem;
          margin-block-start: 9.8rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  .PlanBottomText {
    width: 33.5rem;
    font-size: 1.6rem;
    line-height: 1.4;
    -webkit-margin-before: 4.8rem;
            margin-block-start: 4.8rem;
  }
}

.weddingPlanPresent {
  width: 100%;
  max-width: 900px;
  margin-inline: auto;
  position: relative;
  -webkit-margin-before: 26rem;
          margin-block-start: 26rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresent {
    padding-inline: 2rem;
    -webkit-margin-before: 11rem;
            margin-block-start: 11rem;
  }
}

.weddingPlanPresentContent {
  position: absolute;
  top: 8rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContent {
    width: 100%;
    top: 3rem;
  }
}

.weddingPlanPresentContentTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}

.weddingPlanPresentContentTitle__mark {
  width: 7.8rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentTitle__mark {
    width: 2.4rem;
  }
}

.weddingPlanPresentContentTitle p {
  font-family: "Hannari", serif;
  font-size: 4.6rem;
  color: #c86a74;
  line-height: 1.2608695652;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentTitle p {
    font-size: 1.8rem;
    line-height: 1;
  }
}

.weddingPlanPresentContentTitle p span {
  font-size: 3.6rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentTitle p span {
    font-size: 1.4rem;
  }
}

.weddingPlanPresentContentImage {
  width: 52.5rem;
  margin-inline: auto;
  -webkit-margin-before: 2.5rem;
          margin-block-start: 2.5rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentImage {
    width: 21rem;
    -webkit-margin-before: 0.8rem;
            margin-block-start: 0.8rem;
  }
}

.weddingPlanPresentContentText {
  font-size: 2.5rem;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  line-height: 1.24;
  -webkit-margin-before: 3rem;
          margin-block-start: 3rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentText {
    font-size: 1rem;
    -webkit-margin-before: 0.8rem;
            margin-block-start: 0.8rem;
  }
}

.weddingPlanPresentContentBanner {
  width: 70rem;
  position: relative;
  margin-inline: auto;
  -webkit-margin-before: 4rem;
          margin-block-start: 4rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentBanner {
    width: 27rem;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
  }
}

.weddingPlanPresentContentBanner p {
  font-family: "Hannari", serif;
  font-size: 3.6rem;
  color: #fff;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentBanner p {
    font-size: 1.6rem;
  }
}

.weddingPlanPresentContentBottomText {
  -webkit-margin-before: 1rem;
          margin-block-start: 1rem;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentBottomText {
    -webkit-margin-before: 0.5rem;
            margin-block-start: 0.5rem;
  }
}

.weddingPlanPresentContentBottomText p {
  font-size: 2.3rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  .weddingPlanPresentContentBottomText p {
    font-size: 1rem;
    white-space: unset;
  }
}

.yd__weddingSupportBG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background: url("../img_B/pc/BG-07red.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-before: 11rem;
          padding-block-start: 11rem;
  -webkit-padding-after: 12rem;
          padding-block-end: 12rem;
  position: relative;
  -webkit-margin-before: -12rem;
          margin-block-start: -12rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingSupportBG {
    background: url("../img_B/sp/BG-07red-sp.webp") no-repeat top center;
    background-size: cover;
    padding-inline: 2rem;
    -webkit-margin-before: -8rem;
            margin-block-start: -8rem;
    -webkit-padding-before: 4rem;
            padding-block-start: 4rem;
    -webkit-padding-after: 6rem;
            padding-block-end: 6rem;
  }
}

.yd__weddingSupportContent {
  width: 100%;
  max-width: 1160px;
  margin-inline: auto;
}

.yd__weddingSupportContent h2 {
  width: 46rem;
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 4.5rem;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
  color: #fff;
  display: block;
  margin-inline: auto;
  -webkit-border-after: 2px dotted;
          border-block-end: 2px dotted;
}
@media only screen and (max-width: 767px) {
  .yd__weddingSupportContent h2 {
    width: 22rem;
    font-size: 2.4rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.yd__weddingSupportContent h2 span {
  color: #ffff00;
}

.yd__weddingSupportContent h2 span.large {
  font-size: 9.5rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingSupportContent h2 span.large {
    font-size: 3.6rem;
  }
}

.yd__weddingSupport {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.yd__weddingSupport:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.yd__supportNumber {
  font-family: "Hannari", serif;
  font-size: 25.1rem;
  color: #dea6ac;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .yd__supportNumber {
    font-size: 13.1rem;
  }
}

.yd__supportNumber span {
  font-size: 13.2rem;
  -webkit-margin-end: -0.9rem;
          margin-inline-end: -0.9rem;
  -webkit-margin-before: 13rem;
          margin-block-start: 13rem;
}
@media only screen and (max-width: 767px) {
  .yd__supportNumber span {
    font-size: 7rem;
    -webkit-margin-before: 6rem;
            margin-block-start: 6rem;
  }
}

.yd__weddingSupport:first-of-type .yd__supportNumber span {
  -webkit-margin-end: -3rem;
          margin-inline-end: -3rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingSupport:first-of-type .yd__supportNumber span {
    -webkit-margin-end: -2.4rem;
            margin-inline-end: -2.4rem;
  }
}

.yd__supportText {
  -webkit-padding-before: 9rem;
          padding-block-start: 9rem;
  -webkit-padding-end: 2rem;
          padding-inline-end: 2rem;
}
@media only screen and (max-width: 767px) {
  .yd__supportText {
    -webkit-padding-before: 4.5rem;
            padding-block-start: 4.5rem;
  }
}

.yd__supportText h3 {
  font-family: "Hannari", serif;
  font-size: 4rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .yd__supportText h3 {
    -webkit-margin-before: unset;
            margin-block-start: unset;
    font-size: 2rem;
    line-height: 1.2;
  }
}

.yd__supportText p {
  font-size: 2.5rem;
  line-height: 1.68;
  color: #fff;
  -webkit-margin-before: 4rem;
          margin-block-start: 4rem;
}
@media only screen and (max-width: 767px) {
  .yd__supportText p {
    font-size: 1.2rem;
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
  }
}

.yd__weddingVoiceBG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background: url("../img_B/pc/BG-08.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-before: 11rem;
          padding-block-start: 11rem;
  -webkit-padding-after: 12rem;
          padding-block-end: 12rem;
  -webkit-margin-before: -12rem;
          margin-block-start: -12rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceBG {
    padding-inline: 2rem;
    -webkit-padding-after: 8rem;
            padding-block-end: 8rem;
  }
}

.yd__weddingVoiceTitle {
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #c86a74;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceTitle {
    font-size: 2.8rem;
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
    line-height: 1.4;
  }
}

.yd__weddingVoiceTitle span.small {
  font-size: 3.8rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceTitle span.small {
    font-size: 2.2rem;
  }
}

.yd__weddingVoiceTitle span.underLine {
  position: relative;
}

.yd__weddingVoiceTitle span.underLine img {
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceTitle span.underLine img {
    bottom: -1rem;
  }
}

.yd__weddingVoiceTitle span.underLine span {
  position: relative;
  z-index: 1;
}

.yd__weddingVoiceImage {
  width: 39rem;
  margin-inline: auto;
  -webkit-margin-before: 5.5rem;
          margin-block-start: 5.5rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceImage {
    width: 22rem;
  }
}

.yd__weddingVoiceText {
  width: 100%;
  max-width: 1085px;
  margin-inline: auto;
  border-radius: 11px;
  background-color: #fff;
  -webkit-box-shadow: 5px 5px 3px rgba(0, 0, 0, 0.35);
          box-shadow: 5px 5px 3px rgba(0, 0, 0, 0.35);
  -webkit-margin-before: 7.5rem;
          margin-block-start: 7.5rem;
  padding-block: 4.5rem;
  text-align: center;
  position: relative;
  z-index: 0;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceText {
    padding-inline: 1rem;
  }
}

.yd__weddingVoiceTextWrap {
  position: relative;
  z-index: 0;
}

.yd__weddingVoiceTextWrap::before {
  display: block;
  content: "";
  width: 4.6rem;
  height: 3.7rem;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background-color: #fff;
  position: absolute;
  top: -3rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}

.yd__weddingVoiceTextWrap::after {
  display: block;
  content: "";
  width: 4.6rem;
  height: 3.7rem;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background-color: rgba(0, 0, 0, 0.35);
  position: absolute;
  top: -2.8rem;
  left: 50.3%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -2;
}

.yd__weddingVoiceText h3 {
  font-family: "Hannari", serif;
  font-size: 4rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  color: #333;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceText h3 {
    -webkit-margin-before: unset;
            margin-block-start: unset;
    font-size: 2.2rem;
  }
}

.yd__weddingVoiceText p {
  font-size: 2.5rem;
  line-height: 1.68;
  -webkit-margin-before: 4rem;
          margin-block-start: 4rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingVoiceText p {
    font-size: 1.2rem;
    -webkit-margin-before: 1.5rem;
            margin-block-start: 1.5rem;
  }
}

.yd__weddingVoiceText p span {
  font-weight: 500;
  color: #c86a74;
}

.yd__weddingFlowTitle {
  width: 58.7rem;
  margin-inline: auto;
  position: relative;
  -webkit-margin-before: 18.4rem;
          margin-block-start: 18.4rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFlowTitle {
    width: 100%;
    -webkit-margin-before: 10rem;
            margin-block-start: 10rem;
  }
}

.yd__weddingFlowTitle h2 {
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #fff;
  text-align: center;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  white-space: nowrap;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFlowTitle h2 {
    font-size: 3rem;
    -webkit-margin-before: unset;
            margin-block-start: unset;
    line-height: 1.1;
  }
}

.yd__weddingFlowTitle h2 span {
  font-size: 3.8rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFlowTitle h2 span {
    font-size: 2.4rem;
  }
}

.yd__flowImage {
  width: 16.5rem;
  margin-inline: auto;
  -webkit-margin-before: 7rem;
          margin-block-start: 7rem;
}
@media only screen and (max-width: 767px) {
  .yd__flowImage {
    width: 9.5rem;
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
  }
}

.yd__flowText {
  font-family: "Hannari", serif;
  font-size: 4rem;
  text-align: center;
  -webkit-margin-before: 2rem;
          margin-block-start: 2rem;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .yd__flowText {
    font-size: 2.2rem;
  }
}

.yd__weddingFlowMark {
  width: 5rem;
  margin-inline: auto;
  -webkit-margin-before: 8rem;
          margin-block-start: 8rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFlowMark {
    width: 3.2rem;
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
  }
}

.yd__weddingFAQ-BG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background-color: #fff;
  -webkit-padding-before: 15rem;
          padding-block-start: 15rem;
  -webkit-padding-after: 0.1rem;
          padding-block-end: 0.1rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQ-BG {
    -webkit-padding-before: 5rem;
            padding-block-start: 5rem;
  }
}

.yd__weddingFAQTitle {
  text-align: center;
  font-family: "Hannari", serif;
  font-size: 4.8rem;
  color: #c86a74;
  position: relative;
  z-index: 0;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQTitle {
    -webkit-margin-before: unset;
            margin-block-start: unset;
    font-size: 3rem;
  }
}

.yd__weddingFAQTitle--icon {
  width: 25.7rem;
  position: absolute;
  top: -7rem;
  left: 38rem;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQTitle--icon {
    width: 12.9rem;
    top: -4rem;
    left: 2rem;
  }
}

.yd__weddingFAQList {
  width: 116.5rem;
  margin-inline: auto;
  font-size: 2.5rem;
  -webkit-margin-before: 9rem;
          margin-block-start: 9rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQList {
    width: 100%;
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
    font-size: 1.4rem;
    padding-inline: 2rem;
  }
}

.yd__weddingFAQList li dl dd {
  -webkit-padding-start: 3.3rem;
          padding-inline-start: 3.3rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQList li dl dd {
    -webkit-padding-start: unset;
            padding-inline-start: unset;
    -webkit-margin-start: 1rem;
            margin-inline-start: 1rem;
  }
}

.yd__weddingFAQList li dl dt {
  height: 6.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  background-color: #c86a74;
  color: #fff;
  border-bottom-right-radius: 999px;
  border-top-right-radius: 999px;
  -webkit-padding-start: 3.3rem;
          padding-inline-start: 3.3rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingFAQList li dl dt {
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    height: 3.9rem;
  }
}

.yd__weddingFAQAnswer ul li {
  list-style-type: upper-alpha;
}

.yd__weddingFAQAnswer ul.yd__weddingFAQList--sub li {
  list-style-type: disc;
  font-size: 1.2rem;
}

.yd__weddingAboutBG {
  width: 100%;
  background-color: #c86a74;
  -webkit-padding-before: 6rem;
          padding-block-start: 6rem;
  -webkit-padding-after: 9rem;
          padding-block-end: 9rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingAboutBG {
    padding-inline: 3rem;
    -webkit-padding-before: 3rem;
            padding-block-start: 3rem;
    -webkit-padding-after: 4rem;
            padding-block-end: 4rem;
  }
}

.yd__weddingAboutContent {
  width: 100%;
  max-width: 86.7rem;
  margin-inline: auto;
}

.yd__weddingAboutContent h2 {
  font-size: 3rem;
  -webkit-margin-after: unset;
          margin-block-end: unset;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .yd__weddingAboutContent h2 {
    -webkit-margin-before: unset;
            margin-block-start: unset;
  }
}

.yd__weddingAboutBG ul {
  width: 100%;
  color: #fff;
  -webkit-padding-start: unset;
          padding-inline-start: unset;
}
@media only screen and (max-width: 767px) {
  .yd__weddingAboutBG ul {
    -webkit-margin-before: 2rem;
            margin-block-start: 2rem;
  }
}

.yd__weddingAboutBG ul li dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.yd__weddingAboutBG ul li dl dt {
  width: 22.1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-border-after: 4px solid;
          border-block-end: 4px solid;
}
@media only screen and (max-width: 767px) {
  .yd__weddingAboutBG ul li dl dt {
    width: 6.1rem;
  }
}

.yd__weddingAboutBG ul li dl dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-border-after: 1px solid;
          border-block-end: 1px solid;
  -webkit-margin-start: unset;
          margin-inline-start: unset;
  -webkit-padding-start: 2rem;
          padding-inline-start: 2rem;
}

.yd__weddingBottomAreaBG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background: url("../img_B/pc/BG-09.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-after: 12rem;
          padding-block-end: 12rem;
}

.PhotoPanel.PhotoPanel--bottom {
  -webkit-padding-before: 10rem;
          padding-block-start: 10rem;
}

.yd__weddingContactBG {
  width: 100%;
  max-width: 1366px;
  margin-inline: auto;
  background: url("../img_B/pc/BG-contact.webp") no-repeat top center;
  background-size: cover;
  -webkit-padding-before: 12rem;
          padding-block-start: 12rem;
  -webkit-padding-after: 12rem;
          padding-block-end: 12rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingContactBG {
    background: url("../img_B/sp/BG-contact-sp.webp") no-repeat top center;
    background-size: cover;
    -webkit-padding-before: 5rem;
            padding-block-start: 5rem;
  }
}

.yd__weddingContactTitle {
  width: 48rem;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .yd__weddingContactTitle {
    width: 18rem;
  }
}

.yd__weddingContactTitle h1 {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .yd__weddingContactTitle h1 {
    -webkit-margin-before: unset;
            margin-block-start: unset;
    -webkit-margin-after: unset;
            margin-block-end: unset;
  }
}

.yd__weddingContactTitle h1 span {
  width: 24.7rem;
  position: absolute;
  top: -5rem;
  left: -8rem;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
}
@media only screen and (max-width: 767px) {
  .yd__weddingContactTitle h1 span {
    width: 14.7rem;
    top: -3rem;
    left: -5rem;
  }
}

.yd__weddingContactForm {
  -webkit-margin-before: 35rem;
          margin-block-start: 35rem;
  width: 103rem;
  margin-inline: auto;
  padding-inline: 3rem;
}
@media only screen and (max-width: 767px) {
  .yd__weddingContactForm {
    width: 100%;
    padding-inline: 2rem;
    -webkit-margin-before: 8rem;
            margin-block-start: 8rem;
  }
}

.yd-FormParts {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-after: 7.6rem;
          margin-block-end: 7.6rem;
}
@media only screen and (max-width: 767px) {
  .yd-FormParts {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-margin-after: 1.6rem;
            margin-block-end: 1.6rem;
  }
}

.yd-required {
  color: #c86a74;
}

.yd-FormParts .yd-FormParts__label {
  width: 30rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 9.1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
}
@media only screen and (max-width: 767px) {
  .yd-FormParts .yd-FormParts__label {
    height: 4.1rem;
    font-size: 2rem;
  }
}

.yd-FormParts input {
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .yd-FormParts input {
    font-size: 1.8rem;
  }
}

.yd-FormParts.formPartsRadio .wpcf7-form-control-wrap {
  height: unset;
}

.wpcf7-form-control-wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 9.1rem;
}

.wpcf7-form-control-wrap input {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.wpcf7-form-control.wpcf7-radio {
  display: block;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
  width: 100%;
  height: 4.5rem;
  font-size: 2.6rem;
  -webkit-margin-after: 1.5rem;
          margin-block-end: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
    font-size: 1.8rem;
  }
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item input {
  display: inline-block;
  width: 5rem;
}
@media only screen and (max-width: 767px) {
  .wpcf7-form-control.wpcf7-radio .wpcf7-list-item input {
    width: 2rem;
  }
}

input[type=radio] {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label {
  position: relative;
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::before {
  content: "";
  display: inline-block;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 6px;
  border: solid 1px #ddd;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: -6rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::before {
    width: 3rem;
    height: 3rem;
    left: -4rem;
  }
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::after {
  content: "";
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #333;
  position: absolute;
  top: 50%;
  left: -5rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label::after {
    width: 2rem;
    height: 2rem;
    left: -3.4rem;
  }
}

.wpcf7-form-control.wpcf7-radio .wpcf7-list-item input[type=radio]:checked + span::after {
  opacity: 1;
}

.yd-FormParts.formPartsText {
  height: 40rem;
}

.yd-FormParts.formPartsText span {
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .yd-FormParts.formPartsText span {
    height: auto;
  }
}

.yd-FormParts.formPartsText textarea {
  width: 100%;
  font-size: 2.6rem;
}
@media only screen and (max-width: 767px) {
  .yd-FormParts.formPartsText textarea {
    font-size: 1.8rem;
  }
}

.yd-wedding-ConfirmBtn input {
  width: 29.5rem;
  height: 8.3rem;
  margin-inline: auto;
  border-radius: 6px;
  background-color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
  color: #fff;
}

.yd-wedding-FormTitle {
  font-family: "Hannari", serif;
  font-size: 3.6rem;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .yd-wedding-FormTitle {
    font-size: 2.4rem;
  }
}

.yd-ConfirmArea {
  display: none;
}

body#js-fixed {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.yd-wedding-ConfirmTopText {
  font-family: "Hannari", serif;
  font-size: 2.4rem;
  text-align: center;
  -webkit-margin-before: 3rem;
          margin-block-start: 3rem;
}
@media only screen and (max-width: 767px) {
  .yd-wedding-ConfirmTopText {
    font-size: 1.8rem;
  }
}

.yd-ConfirmList {
  width: 100%;
  -webkit-margin-before: 5rem;
          margin-block-start: 5rem;
}

.yd-ConfirmList li dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
  margin: unset;
}
@media only screen and (max-width: 767px) {
  .yd-ConfirmList li dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    font-size: 2rem;
  }
}

.yd-ConfirmList li dl dt {
  width: 30rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 9.1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 767px) {
  .yd-ConfirmList li dl dt {
    height: 4.1rem;
  }
}

.yd-wedding-submitBtn input {
  width: 29.5rem;
  height: 8.3rem;
  margin-inline: auto;
  border-radius: 6px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
}

.yd-wedding-back_button {
  width: 20rem;
  height: 5rem;
  margin-inline: auto;
  border-radius: 6px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
}

.yd-thanksArea {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 100;
  display: none;
}

.yd-thanksArea.active {
  display: block;
}

.thanksContentWrap {
  width: 90rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  font-family: "Hannari", serif;
  -webkit-padding-before: 15.6rem;
          padding-block-start: 15.6rem;
  -webkit-padding-after: 8rem;
          padding-block-end: 8rem;
  -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
          box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
  border-radius: 6px;
}
@media only screen and (max-width: 767px) {
  .thanksContentWrap {
    width: 33rem;
    max-width: 550px;
    -webkit-padding-before: 4.6rem;
            padding-block-start: 4.6rem;
  }
}

.thanksContentWrap h2 {
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  .thanksContentWrap h2 {
    font-size: 2rem;
  }
}

.thanksContentWrap p {
  font-size: 2.8rem;
  -webkit-margin-before: 7rem;
          margin-block-start: 7rem;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .thanksContentWrap p {
    font-size: 1.8rem;
  }
}

.thanksContentWrap a.BackToTopBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 29.5rem;
  height: 8.3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 6px;
  background-color: #333;
  font-family: "Hannari", serif;
  font-size: 2.8rem;
  color: #fff;
  margin-inline: auto;
  -webkit-margin-before: 8.7rem;
          margin-block-start: 8.7rem;
  border: 1px solid transparent;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.thanksContentWrap a.BackToTopBtn:hover {
  background-color: #fff;
  color: #333;
  border: 1px solid #333;
}

.thanksContentWrap .thank-you {
  width: 36rem;
  height: 9.2rem;
  background-image: url("../img_B/pc/thank-you.png");
  background-size: cover;
  position: absolute;
  top: 8rem;
  left: 14rem;
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .thanksContentWrap .thank-you {
    width: 5rem;
    height: 3.2rem;
    top: 15rem;
    left: 1rem;
  }
}

.wpcf7-response-output {
  display: none !important;
}/*# sourceMappingURL=style-wedding__yd-wedding.css.map */