@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Noto+Serif+JP:wght@400;500;700&display=swap");

/* CSS Document */

/*******************

LP style

********************/
html,
body {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.lpbox {
  overflow: hidden;
}

/* content
--------------------------------------------------*/
.lpbox,
#lpfooter {
  font-size: 14px;
  font-size: 3.7333vw;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "メイリオ", "Mayryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #333;
  line-height: 1.5em;
}
@media screen and (min-width: 750px) {
  .lpbox,
  #lpfooter {
    font-size: 28px;
    max-width: 750px;
    margin: 0 auto;
  }
}
.lpbox a,
#lpfooter a {
  color: inherit;
  text-decoration: none;
  font-size: inherit;
  font-weight: inherit;
}
.lpbox a:hover,
#lpfooter a:hover {
  text-decoration: underline;
}
.lpbox span,
#lpfooter span {
  font-size: inherit;
  font-weight: inherit;
}
.lpbox img,
#lpfooter img {
  width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
  vertical-align: bottom;
}
.lpbox img.img-t,
#lpfooter img.img-t {
  vertical-align: top;
}
/* cart css reset */

.lpbox header,
.lpbox h1,
.lpbox h2,
.lpbox h3,
.lpbox p,
.lpbox dl,
.lpbox dt,
.lpbox dd,
.lpbox div,
.lpbox section,
.lpbox span {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
}
#lpfooter footer,
#lpfooter div,
#lpfooter p {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
}
#lpfooter ul,
#lpfooter li,
.lpbox ul,
.lpbox li {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
  list-style: none;
}
/*----------------------------------------*/
/*---------------------------*/
.lpbox #fixbtn {
  position: fixed;
  bottom: -100%;
  left: 0;
  z-index: 999;
  width: 100%;
  overflow: hidden;
  -webkit-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
}
.lpbox #fixbtn.fixbtn--visible {
  bottom: 0;
}
.lpbox #fixbtn .fixbtn__box {
  position: relative;
  bottom: 0;
  display: block;
  margin: 0 auto;
  position: relative;
  max-width: 750px;
}
.lpbox #fixbtn .fixbtn__item {
  position: relative;
  display: block;
  margin: 0 auto;
}
.lpbox #fixbtn .fixbtn__btn--01 {
  display: block;
  position: absolute;
  width: 100%;
  /* max-width: 360px; */
  bottom: 0;
  left: 0;
}
.lpbox #fixbtn .fixbtn__btn--02 {
  display: block;
  position: absolute;
  width: calc(360 / 750 * 100%);
  max-width: 360px;
  bottom: 0;
  right: 0;
}
/*---------------------------*/
.lpbox .fv__box {
  position: relative;
}
.lpbox .fv__box__btn {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 94.5%;
}

.lpbox .high_technology {
  background: url(../img/sp_webp/high_technology_02.webp) repeat center top;
  background-size: 100%;
}
.lpbox .before_after_slider {
  position: relative;
  overflow: hidden;
  width: 90%;
  margin: 0 auto;
}

.lpbox .box_before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 100%;
  border-right: 5px solid rgba(255, 255, 255, 0.7);
  box-shadow: 10px 0 15px -13px #000;
}

.lpbox .box_before img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}

.lpbox .box_before::before {
  content: "";
  display: block;
  width: 0.9em;
  height: 0.9em;
  background: url(../img/high_technology_ar.png) no-repeat 50% 50%;
  -webkit-background-size: contain;
  background-size: 60%;

  content: "";
  z-index: 1;
  position: absolute;
  top: 0;
  right: -30px;
  bottom: 0;
  width: 45px;
  height: 45px;
  margin: auto;
  border: 5px solid rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  box-shadow: 10px 0 15px -13px #000;
}

.lpbox .slider_range {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: col-resize;
}

.lpbox .reason .sliderarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  padding: 1% 0 3%;
  background: url(../img/sp_webp/reason_08.webp) repeat-y top center;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
.lpbox .reason .sliderbox {
  box-sizing: border-box;
  position: relative;
}

.lpbox .nayami__box {
  position: relative;
}
.lpbox .nayami__box {
  width: 100%;
  /*     height: 12em; */
}
.lpbox .twentytwenty-overlay:hover {
  background: none !important;
}
.twentytwenty-before-label {
  display: none;
}
.twentytwenty-after-label {
  display: none;
}

.lpbox .treatment__box {
  position: relative;
}
.lpbox .treatment__box .slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  width: 100%;
}
.lpbox .treatment__box .slider img {
  width: 95%;
}

.lpbox .cta__box {
  position: relative;
}
.lpbox .cta__box__btn {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 86.7%;
}

.lpbox .sliderarea {
  display: block;
  position: relative;
  margin: 0 auto;
}

.lpbox .about .sliderbox {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 3;
}
.lpbox .about .owl-carousel .owl-item img {
  display: block;
  width: 75%;
}
.lpbox .slider--about p {
  display: block;
  box-sizing: border-box;
  padding: 0 calc(70 / 750 * 100%);
}

.lpbox .reason__box {
  position: relative;
}
.lpbox .reason__box iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 95%;
  height: 14.33em;
}

.lpbox .hair__box {
  position: relative;
}
.lpbox .hair__box video {
  position: absolute;
  top: 0.15em;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 82.6%;
}

.lpbox .technology__box {
  position: relative;
}
.lpbox .technology__box .slider02 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  width: 100%;
}
.lpbox .technology__box .slider02 img {
  width: 95%;
}

.lpbox .image__btn {
  width: 86.7%;
}

.lpbox .faq {
  margin-bottom: 4em;
}
.lpbox .faq dl {
  margin-bottom: 1em;
}
.lpbox .faq dt {
  position: relative;
}
.lpbox .faq dt:before {
  content: "";
  background: url(../img/ar.png) no-repeat;
  background-position: 50% 50%;
  background-size: 100%;
  width: 1em;
  height: 1em;
  display: block;
  position: absolute;
  top: 50%;
  right: 8%;
  margin-top: -0.5em;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.lpbox .faq dt.acd-open:before {
  content: "";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.lpbox .access__box {
  position: relative;
}
.lpbox .access__box iframe {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 95%;
  height: 14em;
}

/*-------------------------------------------
footer
-----------------------------------------------*/

#lpfooter .footer__link {
  font-family: "Noto Sans JP", serif;
  font-weight: bold;
  padding: 0 5%;
  text-align: left;
  padding-top: 3em;
  padding-bottom: 2em;

  background: #cad7f1;
  color: #0c2350;
}
#lpfooter .footer__link li {
  font-size: 0.8em;
  margin-bottom: 1em;
}
#lpfooter #copy {
  text-align: center;
  font-size: 0.75em;
  color: #0c2350;
  box-sizing: border-box;
  padding: 0.5em;
}

/*-------------------------------------------
animation
-----------------------------------------------*/
.lpbox .fadein {
  display: block;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-filter: blur(0);
  -o-filter: blur(0);
  filter: blur(0);
  -webkit-transition-duration: 1.2s;
  -o-transition-duration: 1.2s;
  transition-duration: 1.2s;
  -webkit-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
}
.lpbox .animhide .fadein {
  display: block;
  opacity: 0;
  -webkit-transform: translate3d(0, 50%, 0);
  -ms-transform: translate3d(0, 50%, 0);
  -o-transform: translate3d(0, 50%, 0);
  transform: translate3d(0, 50%, 0);
  -webkit-filter: blur(0.5em);
  -o-filter: blur(0.5em);
  filter: blur(0.5em);
}

.lpbox .slideleft {
  display: block;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition-duration: 1.2s;
  -o-transition-duration: 1.2s;
  transition-duration: 1.2s;
  -webkit-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
  opacity: 1;
}
.lpbox .animhide .slideleft {
  display: block;
  -webkit-transform: translate3d(-50%, 0, 0);
  -ms-transform: translate3d(-50%, 0, 0);
  -o-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
  opacity: 0;
}

.lpbox .slideright {
  display: block;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition-duration: 1.2s;
  -o-transition-duration: 1.2s;
  transition-duration: 1.2s;
  -webkit-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
  opacity: 1;
}
.lpbox .animhide .slideright {
  display: block;
  -webkit-transform: translate3d(50%, 0, 0);
  -ms-transform: translate3d(50%, 0, 0);
  -o-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
  opacity: 0;
}

.lpbox .contact div,
.lpbox .contact span,
.lpbox .contact h3 {
  margin: 0;
}

input[type="text"],
input[type="tel"],
input[type="number"],
textarea {
  border: 1px solid #ccc;
  border-radius: 0.5rem;
  min-height: 44px;
  padding: 8px;
  background: #f8f8f8;
  transition: 0.3s;
  max-width: 100%;
  font-size: 15px;
  color: #666;
}

input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder {
  color: #cccccc;
  font-size: 15px;
  font-family: "Noto Sans JP";
  letter-spacing: 0;
}

input[type="text"]:focus:not([type="submit"]),
input[type="tel"]:focus:not([type="submit"]),
input[type="number"]:focus:not([type="submit"]),
textarea:focus,
select:focus {
  box-shadow: 0 0 10px rgba(70, 207, 250, 0.5);
  outline: none;
  border: 2px solid #16afdf;
}

textarea {
  min-height: 198px;
  padding: 16px;
}

select {
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='12' viewBox='0 0 14 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 12L0 0L14 0L7 12Z' fill='%233B3B3B'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 14px auto;
  /* 画像のサイズ（幅 高さ）*/
  background-position: right 12px center;
  /* 画像の位置 */
  min-height: 44px;

  cursor: pointer;

  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 8px;
  transition: 0.3s;
  background: #f8f8f8;
  font-size: 15px;
}

select:has(option[value=""][selected="selected"]) {
  color: #666666;
}

label {
  user-select: none;
}

.lpbox .contact .contact__inner {
  width: 95%;
  margin-inline: auto;
  padding-block: 3rem;
}

.lpbox .contact .contact-tit,
.page-error .contact-tit {
  margin-bottom: 2rem;
}

.lpbox .contact .contact-tit__tit {
  text-align: center;
  font-size: 22px;
  color: #0d2350;
  border-top: 1px solid #0d2350;
  border-bottom: 1px solid #0d2350;
  padding-block: 1.25rem;
  line-height: 1;
  letter-spacing: 0;

  font-family: "Noto Serif JP";
}

.lpbox .contact .contact-row {
  padding-block: 1rem;
}

.lpbox .contact .contact-row-tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.lpbox .contact .contact-row-tit__tit {
  color: #0d2350;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
}

.lpbox .contact .contact-row-tit__require {
  width: 29px;
  height: 18px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 10px;
  line-height: 1;

  background: #de0000;
}

.lpbox .contact .contact-form-radio {
  display: grid;
  gap: 0.5rem;
}
.lpbox .contact .contact-form-radio__item {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  padding: 1rem 1.5rem;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  font-size: 14px;
  letter-spacing: 0.05em;
  cursor: pointer;
}
.lpbox .contact .contact-form-radio__item:has(input:checked) {
  box-shadow: 0 0 10px rgba(70, 207, 250, 0.5);
  outline: none;
  border: 2px solid #16afdf;
}
.lpbox .contact .contact-form-radio__input {
  display: none;
}
.lpbox .contact .contact-form-radio__item::before {
  content: "";
  display: inline-block;
  min-width: 16px;
  width: 16px;
  height: 16px;
  outline: 2px solid #ddd;
  border: 3px solid #fff;
  border-radius: 50%;
  position: relative;
  background: #fff;
}

.lpbox .contact .contact-form-radio__item:has(input:checked)::before {
  background: #0d2350;
  outline: 4px solid #ddd;
}

.lpbox .contact .contact-form-date {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.lpbox .contact .contact-form-date__tit {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 0;
  margin-bottom: 0.5rem;
  line-height: 1;
}

.lpbox .contact .contact-form-date__box {
  display: flex;
  gap: 1rem;
}

.lpbox .contact .contact-form-date__date,
.lpbox .contact .contact-form-date__time {
  width: 50%;
  position: relative;
}
.lpbox .contact .contact-form-date__date::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 2H15V1C15 0.734784 14.8946 0.48043 14.7071 0.292893C14.5196 0.105357 14.2652 0 14 0C13.7348 0 13.4804 0.105357 13.2929 0.292893C13.1054 0.48043 13 0.734784 13 1V2H7V1C7 0.734784 6.89464 0.48043 6.70711 0.292893C6.51957 0.105357 6.26522 0 6 0C5.73478 0 5.48043 0.105357 5.29289 0.292893C5.10536 0.48043 5 0.734784 5 1V2H3C2.20435 2 1.44129 2.31607 0.87868 2.87868C0.316071 3.44129 0 4.20435 0 5V17C0 17.7956 0.316071 18.5587 0.87868 19.1213C1.44129 19.6839 2.20435 20 3 20H17C17.7956 20 18.5587 19.6839 19.1213 19.1213C19.6839 18.5587 20 17.7956 20 17V5C20 4.20435 19.6839 3.44129 19.1213 2.87868C18.5587 2.31607 17.7956 2 17 2ZM18 17C18 17.2652 17.8946 17.5196 17.7071 17.7071C17.5196 17.8946 17.2652 18 17 18H3C2.73478 18 2.48043 17.8946 2.29289 17.7071C2.10536 17.5196 2 17.2652 2 17V10H18V17ZM18 8H2V5C2 4.73478 2.10536 4.48043 2.29289 4.29289C2.48043 4.10536 2.73478 4 3 4H5V5C5 5.26522 5.10536 5.51957 5.29289 5.70711C5.48043 5.89464 5.73478 6 6 6C6.26522 6 6.51957 5.89464 6.70711 5.70711C6.89464 5.51957 7 5.26522 7 5V4H13V5C13 5.26522 13.1054 5.51957 13.2929 5.70711C13.4804 5.89464 13.7348 6 14 6C14.2652 6 14.5196 5.89464 14.7071 5.70711C14.8946 5.51957 15 5.26522 15 5V4H17C17.2652 4 17.5196 4.10536 17.7071 4.29289C17.8946 4.48043 18 4.73478 18 5V8Z' fill='%23747474'/%3E%3C/svg%3E%0A");
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.lpbox .contact .contact-form-date__time::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 18C12.1217 18 14.1566 17.1571 15.6569 15.6569C17.1571 14.1566 18 12.1217 18 10C18 7.87827 17.1571 5.84344 15.6569 4.34315C14.1566 2.84285 12.1217 2 10 2C7.87827 2 5.84344 2.84285 4.34315 4.34315C2.84285 5.84344 2 7.87827 2 10C2 12.1217 2.84285 14.1566 4.34315 15.6569C5.84344 17.1571 7.87827 18 10 18ZM10 0C11.3132 0 12.6136 0.258658 13.8268 0.761205C15.0401 1.26375 16.1425 2.00035 17.0711 2.92893C17.9997 3.85752 18.7362 4.95991 19.2388 6.17317C19.7413 7.38642 20 8.68678 20 10C20 12.6522 18.9464 15.1957 17.0711 17.0711C15.1957 18.9464 12.6522 20 10 20C4.47 20 0 15.5 0 10C0 7.34784 1.05357 4.8043 2.92893 2.92893C4.8043 1.05357 7.34784 0 10 0ZM10.5 5V10.25L15 12.92L14.25 14.15L9 11V5H10.5Z' fill='%23747474'/%3E%3C/svg%3E%0A");
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.lpbox .contact .contact-form-date__date-input,
.lpbox .contact .contact-form-date__time-input {
  width: 100%;
  font-size: 15px;
  color: #666666!important;
}
.lpbox .contact .contact-form-date__time-input {
  background-image: none;
}
.lpbox .contact .contact-form-date__date-input::placeholder,
.lpbox .contact .contact-form-date__time-input::placeholder {
  color: #666;
}

.lpbox .contact .contact-form-txt__input {
  width: 100%;
}

.lpbox .contact .contact-form-selectbox {
  display: grid;
  gap: 0.5rem;
}

.lpbox .contact .contact-form-selectbox__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 1rem 1.5rem;
  border: 2px solid #ddd;
  border-radius: 0.5rem;

  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
  cursor: pointer;
}

.lpbox .contact .contact-form-selectbox__item:has(input:checked) {
  border-color: #16afdf;
}

.lpbox .contact .contact-form-selectbox__item::before {
  content: "";
  display: inline-block;
  min-width: 20px;
  width: 20px;
  height: 20px;
  border: 2px solid #ddd;
  position: relative;
  transition: 0.3s;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='10' viewBox='0 0 15 10' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.50781' y='3.65241' width='6.41209' height='1.28242' transform='rotate(45 2.50781 3.65241)' stroke='white' stroke-width='1.28242'/%3E%3Crect x='13.3901' y='1.83875' width='10.2593' height='1.28242' transform='rotate(135 13.3901 1.83875)' stroke='white' stroke-width='1.28242'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 10px;
}

.lpbox .contact .contact-form-selectbox__input {
  display: none;
}

.lpbox .contact .contact-form-selectbox__item:has(input:checked)::before {
  background-color: #004097;
}

.lpbox .contact .contact-form-age {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0;
}

.lpbox .contact .contact-form-age__input {
  width: 64px;
  text-align: center;
}
.lpbox .contact .contact-form-age__input::placeholder {
  text-align: center;
}

.lpbox .contact .contact-form-textarea__textarea {
  width: 100%;
}

.lpbox .contact .contact-form-privacy {
  border-top: 1px solid #cecece;
  border-bottom: 1px solid #cecece;
  display: grid;
  gap: 1rem;
}
.lpbox .contact .contact-form-privacy .mwform-checkbox-field-text {
  display: none;
}

.lpbox .contact .contact-form-privacy__asterisk {
  text-align: center;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.2;
}

.lpbox .contact .contact-form-privacy__box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
.lpbox .contact .contact-form-privacy__agree {
  font-size: 14px;
  letter-spacing: 0;
  font-weight: bold;
}

.lpbox .contact .contact-form-privacy__box::before {
  content: "";
  display: inline-block;
  min-width: 17px;
  width: 17px;
  height: 17px;
  border: 1px solid #707070;
  position: relative;
  transition: 0.3s;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='10' viewBox='0 0 15 10' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.50781' y='3.65241' width='6.41209' height='1.28242' transform='rotate(45 2.50781 3.65241)' stroke='white' stroke-width='1.28242'/%3E%3Crect x='13.3901' y='1.83875' width='10.2593' height='1.28242' transform='rotate(135 13.3901 1.83875)' stroke='white' stroke-width='1.28242'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 10px;
}

.lpbox .contact .contact-form-privacy__input {
  display: none;
}

.lpbox .contact .contact-form-privacy__box:has(input:checked)::before {
  background-color: #004097;
}

.lpbox .contact button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.lpbox .contact .contact-submit {
  display: flex;
  justify-content: center;
}

.lpbox .contact .contact-submit__submit {
  width: 146px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #0d2350;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  transition: 0.3s;
  border: none;
  cursor: pointer;
}

.lpbox .contact .contact-submit__submit:hover {
  filter: brightness(1.2);
}

.lpbox .contact .contact-txt-box {
  margin-top: 2.5rem;
  background: #f5f5f5;
  padding: 2rem 1rem;
}
.lpbox .contact .contact-txt-box__tit {
  margin-bottom: 1.5rem;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 1;
  color: #0d2350;
}

.lpbox .contact .contact-txt-box__list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 1.5rem;
}
.lpbox .contact .contact-txt-box__item,
.lpbox .contact .contact-txt-box__txt {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin: 0;
}
.lpbox .contact .contact-txt-box__item {
  padding-left: 1em;
  text-indent: -1em;
}
.lpbox .contact .contact-txt-box__txt {
}

.mw_wp_form_confirm .contact-row {
  border-bottom: 1px solid #dedede;
  padding-block: 1rem;
}

.mw_wp_form_confirm .contact-row-tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}

.mw_wp_form_confirm .contact-row-tit__tit {
  color: #0d2350;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
}

.mw_wp_form_confirm .contact-row-tit__require {
  width: 29px;
  height: 18px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 10px;
  line-height: 1;

  background: #de0000;
}

.mw_wp_form_confirm .contact-form-privacy__asterisk {
  display: none;
}

.mw_wp_form_confirm .contact-txt-box {
  display: none;
}

.mw_wp_form_confirm .contact-form-privacy {
  display: grid;
  gap: 1rem;
}
.mw_wp_form_confirm .contact-form-privacy .mwform-checkbox-field-text {
  display: none;
}

.mw_wp_form_confirm .contact-form-privacy__asterisk {
  text-align: center;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.2;
}

.mw_wp_form_confirm .contact-form-privacy__box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
.mw_wp_form_confirm .contact-form-privacy__agree {
  font-size: 14px;
  letter-spacing: 0;
  font-weight: bold;
}

.mw_wp_form_confirm .contact-submit {
  display: flex;
  justify-content: center;
  border-bottom: none;
}

.mw_wp_form_confirm .contact-submit__submit {
  width: 146px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #0d2350;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  transition: 0.3s;
  border: none;
  cursor: pointer;
}

.mw_wp_form_confirm .contact-submit__submit:hover {
  filter: brightness(1.2);
}

.mw_wp_form_confirm .contact-form-date__tit {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 0;
  margin-bottom: 0.25rem;
  line-height: 1;
}

.mw_wp_form_confirm .contact-form-date__box {
  display: flex;
  align-items: center;
}

.mw_wp_form_confirm .contact-form-date {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.mw_wp_form_confirm .contact-form-privacy__agree {
  display: none;
}

.mw_wp_form_confirm .contact-form-privacy__box {
  font-size: 14px;
  letter-spacing: 0;
  font-weight: bold;
}

.page-fv {
  background: #0d2350;
}
.page-fv__inner {
  padding-block: 3rem;
}

.page-fv__tit {
  font-family: "Noto Serif JP";
  font-size: 20px;
  letter-spacing: 0;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .page-fv__inner {
    padding-block: 2rem;
  }
}

.contact__inner {
  width: 95%;
  margin-inline: auto;
  padding-block: 3rem;
}

.contact-tit,
.page-error .contact-tit {
  margin-bottom: 2rem;
}

.contact-tit__tit {
  text-align: center;
  font-size: 22px;
  color: #0d2350;
  border-top: 1px solid #0d2350;
  border-bottom: 1px solid #0d2350;
  padding-block: 1.25rem;
  line-height: 1;
  letter-spacing: 0;

  font-family: "Noto Serif JP";
}

.contact-row {
  padding-block: 1rem;
}

.contact-row-tit {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.contact-row-tit__tit {
  color: #0d2350;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
}

.contact-row-tit__require {
  width: 29px;
  height: 18px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 10px;
  line-height: 1;

  background: #de0000;
}

.contact-form-radio {
  display: grid;
  gap: 0.5rem;
}
.contact-form-radio__item {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  padding: 1rem 1.5rem;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  font-size: 14px;
  letter-spacing: 0.05em;
}
.contact-form-radio__item:has(input:checked) {
  box-shadow: 0 0 10px rgba(70, 207, 250, 0.5);
  outline: none;
  border: 2px solid #16afdf;
}
.contact-form-radio__input {
  display: none;
}
.contact-form-radio__item::before {
  content: "";
  display: inline-block;
  min-width: 16px;
  width: 16px;
  height: 16px;
  outline: 2px solid #ddd;
  border: 3px solid #fff;
  border-radius: 50%;
  position: relative;
  background: #fff;
}

.contact-form-radio__item:has(input:checked)::before {
  background: #0d2350;
  outline: 4px solid #ddd;
}

.contact-form-date {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.contact-form-date__tit {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 0;
  margin-bottom: 0.5rem;
  line-height: 1;
}

.contact-form-date__box {
  display: flex;
  gap: 1rem;
}

.contact-form-date__date,
.contact-form-date__time {
  width: 50%;
  position: relative;
}
.contact-form-date__date::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 2H15V1C15 0.734784 14.8946 0.48043 14.7071 0.292893C14.5196 0.105357 14.2652 0 14 0C13.7348 0 13.4804 0.105357 13.2929 0.292893C13.1054 0.48043 13 0.734784 13 1V2H7V1C7 0.734784 6.89464 0.48043 6.70711 0.292893C6.51957 0.105357 6.26522 0 6 0C5.73478 0 5.48043 0.105357 5.29289 0.292893C5.10536 0.48043 5 0.734784 5 1V2H3C2.20435 2 1.44129 2.31607 0.87868 2.87868C0.316071 3.44129 0 4.20435 0 5V17C0 17.7956 0.316071 18.5587 0.87868 19.1213C1.44129 19.6839 2.20435 20 3 20H17C17.7956 20 18.5587 19.6839 19.1213 19.1213C19.6839 18.5587 20 17.7956 20 17V5C20 4.20435 19.6839 3.44129 19.1213 2.87868C18.5587 2.31607 17.7956 2 17 2ZM18 17C18 17.2652 17.8946 17.5196 17.7071 17.7071C17.5196 17.8946 17.2652 18 17 18H3C2.73478 18 2.48043 17.8946 2.29289 17.7071C2.10536 17.5196 2 17.2652 2 17V10H18V17ZM18 8H2V5C2 4.73478 2.10536 4.48043 2.29289 4.29289C2.48043 4.10536 2.73478 4 3 4H5V5C5 5.26522 5.10536 5.51957 5.29289 5.70711C5.48043 5.89464 5.73478 6 6 6C6.26522 6 6.51957 5.89464 6.70711 5.70711C6.89464 5.51957 7 5.26522 7 5V4H13V5C13 5.26522 13.1054 5.51957 13.2929 5.70711C13.4804 5.89464 13.7348 6 14 6C14.2652 6 14.5196 5.89464 14.7071 5.70711C14.8946 5.51957 15 5.26522 15 5V4H17C17.2652 4 17.5196 4.10536 17.7071 4.29289C17.8946 4.48043 18 4.73478 18 5V8Z' fill='%23747474'/%3E%3C/svg%3E%0A");
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.contact-form-date__time::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 18C12.1217 18 14.1566 17.1571 15.6569 15.6569C17.1571 14.1566 18 12.1217 18 10C18 7.87827 17.1571 5.84344 15.6569 4.34315C14.1566 2.84285 12.1217 2 10 2C7.87827 2 5.84344 2.84285 4.34315 4.34315C2.84285 5.84344 2 7.87827 2 10C2 12.1217 2.84285 14.1566 4.34315 15.6569C5.84344 17.1571 7.87827 18 10 18ZM10 0C11.3132 0 12.6136 0.258658 13.8268 0.761205C15.0401 1.26375 16.1425 2.00035 17.0711 2.92893C17.9997 3.85752 18.7362 4.95991 19.2388 6.17317C19.7413 7.38642 20 8.68678 20 10C20 12.6522 18.9464 15.1957 17.0711 17.0711C15.1957 18.9464 12.6522 20 10 20C4.47 20 0 15.5 0 10C0 7.34784 1.05357 4.8043 2.92893 2.92893C4.8043 1.05357 7.34784 0 10 0ZM10.5 5V10.25L15 12.92L14.25 14.15L9 11V5H10.5Z' fill='%23747474'/%3E%3C/svg%3E%0A");
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  top: 0.75rem;
  right: 0.5rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.contact-form-date__date-input,
.contact-form-date__time-input {
  display: flex;
  width: 100%;
}
.contact-form-date__time-input {
  background-image: none;
}
.contact-form-date__date-input::placeholder,
.contact-form-date__time-input::placeholder {
  color: #666;
}

.contact-form-txt__input {
  width: 100%;
}

.contact-form-selectbox {
  display: grid;
  gap: 0;
}

.contact-form-selectbox__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 1rem 1.5rem;
  border: 2px solid #ddd;
  border-radius: 0.5rem;

  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.contact-form-selectbox__item:has(input:checked) {
  border-color: #16afdf;
}

.contact-form-selectbox__item::before {
  content: "";
  display: inline-block;
  min-width: 20px;
  width: 20px;
  height: 20px;
  border: 2px solid #ddd;
  position: relative;
  transition: 0.3s;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='10' viewBox='0 0 15 10' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.50781' y='3.65241' width='6.41209' height='1.28242' transform='rotate(45 2.50781 3.65241)' stroke='white' stroke-width='1.28242'/%3E%3Crect x='13.3901' y='1.83875' width='10.2593' height='1.28242' transform='rotate(135 13.3901 1.83875)' stroke='white' stroke-width='1.28242'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 10px;
}

.contact-form-selectbox__input {
  display: none;
}

.contact-form-selectbox__item:has(input:checked)::before {
  background-color: #004097;
}

.contact-form-age {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0;
}

.contact-form-age__input {
  width: 64px;
  text-align: center;
}
.contact-form-age__input::placeholder {
  text-align: center;
}

.contact-form-textarea__textarea {
  width: 100%;
}

.contact-form-privacy {
  border-top: 1px solid #cecece;
  border-bottom: 1px solid #cecece;
  display: flex;
  gap: 1rem;
  flex-direction: column;
  align-items: center;
}
.contact-form-privacy .mwform-checkbox-field-text {
  display: none;
}

.contact-form-privacy__asterisk {
  text-align: center;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0;
  line-height: 1.2;
}

.contact-form-privacy__box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
.contact-form-privacy__agree {
  font-size: 14px;
  letter-spacing: 0;
  font-weight: bold;
}

.contact-form-privacy__box::before {
  content: "";
  display: inline-block;
  min-width: 17px;
  width: 17px;
  height: 17px;
  border: 1px solid #707070;
  position: relative;
  transition: 0.3s;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='10' viewBox='0 0 15 10' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='2.50781' y='3.65241' width='6.41209' height='1.28242' transform='rotate(45 2.50781 3.65241)' stroke='white' stroke-width='1.28242'/%3E%3Crect x='13.3901' y='1.83875' width='10.2593' height='1.28242' transform='rotate(135 13.3901 1.83875)' stroke='white' stroke-width='1.28242'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 10px;
}

.contact-form-privacy__input {
  display: none;
}

.contact-form-privacy__box:has(input:checked)::before {
  background-color: #004097;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.contact-submit {
  display: flex;
  justify-content: center;
}

.contact-submit__submit {
  width: 146px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;

  background: #0d2350;
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  transition: 0.3s;
  border: none;
  cursor: pointer;
}

.contact-submit__submit:hover {
  filter: brightness(1.2);
}

.contact-txt-box {
  margin-top: 2.5rem;
  background: #fff;
  padding: 2rem 1rem;
}
.contact-txt-box__tit {
  margin-bottom: 1.5rem;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 1;
  color: #0d2350;
}

.contact-txt-box__list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 1.5rem;
}
.contact-txt-box__item,
.contact-txt-box__txt {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin: 0;
}
.contact-txt-box__item {
  padding-left: 1em;
  text-indent: -1em;
}
.contact-txt-box__txt {
}

.page-error .error {
  background: #fff0f0;
  color: #ff2e2e;
  font-weight: bold;
  padding: 8px 16px;
  display: block;
  font-size: 14px;
}

.page-error-main__txt {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  min-height: 84px;
  border-radius: 0.5rem;
  background-color: #fff0f0;
  color: #ff2e2e;
  line-height: 1.5;
}

.page-error .contact-form-selectbox {
  gap: 0.5rem;
}

.mw_wp_form_confirm .contact-form-radio__item {
  padding: 0;
  border: none;
}

.mw_wp_form_confirm .contact-form-radio__item::before {
  display: none;
}

.mw_wp_form_confirm .contact-form-date__date,
.mw_wp_form_confirm .contact-form-date__time {
  width: auto;
}

.mw_wp_form_confirm .contact-form-date__date::after,
.mw_wp_form_confirm .contact-form-date__time::after {
  display: none;
}

.mw_wp_form_confirm .contact-form-selectbox__item {
  padding: 0;
  border: none;
  min-height: auto;
}

.mw_wp_form_confirm .contact-form-privacy {
  gap: 0;
}

.mw_wp_form_confirm .contact-form-selectbox__item::before {
  display: none;
}

.mw_wp_form_confirm .contact-form-privacy__box::before {
  display: none;
}

.mw_wp_form_confirm .contact-form-privacy {
  border-top: none;
}

.page-complete {
}
.page-complete__tit {
  text-align: center;
  color: #0d2350;
  font-size: 18px;
  letter-spacing: 0.05em;
  font-weight: bold;
  margin-bottom: 2.5rem;
}
.page-complete__txt {
  text-align: center;
  font-size: 15px;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-bottom: 2.5rem;
}
.page-complete__back {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 199px;
  height: 64px;
  background: #0d2350;

  font-weight: 600;
  font-size: 16px;
  color: #fff;
  letter-spacing: 0.05em;

  margin: 0 auto;
}

.page-confirm-main__txt {
  line-height: 1.5;
  font-size: 16px !important;
}

.header-tsc01ch {
  background: #fff;
}
.header-tsc01ch__inner {
  display: flex;
  justify-content: center;
}

.header-tsc01ch-logo {
  max-width: 375px;
}
.header-tsc01ch-logo__img {
}

.footer-tsc01ch__inner {
  padding-block: 2rem;
}
.footer-tsc01ch-copyright {
  text-align: center;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #0D2350;
}
