main {
 margin-bottom: 200px;
}
@media screen and (max-width: 1024px) {
 main {
  margin-bottom: 100px;
 }
}
main >section {
 position: relative;
 width: 100%;

 --main_brs: 60px;
 padding-inline: 3%;
}
@media screen and (max-width: 1024px) {
 main >section {
  padding-inline: 5%;
 }
}
@media screen and (max-width: 600px) {
 main >section {
  --main_brs: 30px;
 }
}
main >section.contact_area >.inner {
 width: 100%;
 max-width: 800px;
 margin: 0 auto;
}
main >section.contact_area >.inner .tel {
 display: flex;
 width: 100%;
 max-width: 800px;
 margin: 0 auto;
 margin-bottom: 80px;
 padding: 50px 4%;
 border: 3px solid var(--c_rd);
 border-radius: 30px;
 background: #ffffff;
 outline: 1px solid var(--c_rd);
 outline-offset: -8px;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel {
  flex-direction: column;
  gap: 15px;
  margin-bottom: 40px;

  padding-block: 30px;
 }
}
main >section.contact_area >.inner .tel .tel_col2 {
 width: 50%;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 text-align: center;
}
main >section.contact_area >.inner .tel .tel_col2:first-child {
 border-right: 1px solid #cccccc;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel .tel_col2:first-child {
  padding-bottom: 20px;
  border-right: none;
  border-bottom: 1px solid #cccccc;
 }
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel .tel_col2 {
  width: 100%;
 }
}
main >section.contact_area >.inner .tel h2 {
 line-height: 1.65;
 color: var(--c_gy);
 font-weight: bold;
 font-size: 20px;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel h2 {
  font-size: clamp(1rem, 0.711rem + 1.23vw, 1.5rem);
 }
}
main >section.contact_area >.inner .tel p.shop {
 line-height: 1.6666666667;
 margin-bottom: 5px;
 color: var(--c_rd);
 font-weight: bold;
 font-size: 18px;
 text-align: center;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel p.shop {
  font-size: 16px;
 }
}
main >section.contact_area >.inner .tel a {
 display: flex;
 line-height: 1;
 justify-content: center;
 align-items: flex-end;
 gap: 15px;
 color: var(--c_rd);
 font-weight: bold;
 font-size: 35px;
 letter-spacing: 0.05em;
 pointer-events: none;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel a {
  align-items: center;
  gap: 10px;
  font-size: clamp(1.75rem, 1.136rem + 2.62vw, 2.813rem);
 }
}
@media screen and (max-width: 600px) {
 main >section.contact_area >.inner .tel a {
  pointer-events: auto;
 }
}
main >section.contact_area >.inner .tel a img {
 width: 30px;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .tel a img {
  width: clamp(1.25rem, 0.889rem + 1.54vw, 1.875rem);
 }
}
main >section.contact_area >.inner p.lead {
 line-height: 1.5555555556;
 margin: 80px 0;
 font-weight: 500;
 font-size: 18px;
 text-align: center;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner p.lead {
  font-size: 16px;

  margin-block: 40px;
 }
}
main >section.contact_area >.inner .form_wrap dl.form {
 display: grid;
 grid-template-columns: 300px 1fr;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form {
  grid-template-columns: 250px 1fr;
 }
}
@media screen and (max-width: 600px) {
 main >section.contact_area >.inner .form_wrap dl.form {
  grid-template-columns: 1fr;
 }
}
main >section.contact_area >.inner .form_wrap dl.form.confirm dt {
 padding-top: 30px;
}
main >section.contact_area >.inner .form_wrap dl.form dt {
 padding: 50px 0 30px;
 border-bottom: 1px solid var(--c_gy);
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form dt {
  padding: 25px 0 0 !important;
  border-bottom: none;
 }
}
main >section.contact_area >.inner .form_wrap dl.form dt p {
 display: flex;
 line-height: 1;
 align-items: center;
 gap: 10px;
 font-weight: bold;
 font-size: 18px;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form dt p {
  font-size: 16px;
 }
}
main >section.contact_area >.inner .form_wrap dl.form dt p span.required {
 display: inline-block;
 padding: 3px 10px 5px;
 border-radius: 5px;
 color: #ffffff;
 background: var(--c_rd);
 font-weight: bold;
 font-size: 14px;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form dt p span.required {
  font-size: 12px;
 }
}
main >section.contact_area >.inner .form_wrap dl.form dd {
 padding: 30px 0;
 border-bottom: 1px solid var(--c_gy);
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form dd {
  padding: 10px 0 25px;
 }
}
main >section.contact_area >.inner .form_wrap dl.form dd input,main >section.contact_area >.inner .form_wrap dl.form dd textarea {
 width: 100%;
 padding: 20px 20px;
 border: 1px solid #dbdbdb;
 border-radius: 5px;
 font-size: 16px;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap dl.form dd input,main >section.contact_area >.inner .form_wrap dl.form dd textarea {
  padding: 10px;
 }
}
main >section.contact_area >.inner .form_wrap dl.form dd input.wpcf7-not-valid,main >section.contact_area >.inner .form_wrap dl.form dd textarea.wpcf7-not-valid {
 border-color: var(--c_rd);
}
main >section.contact_area >.inner .form_wrap dl.form dd input +.wpcf7-not-valid-tip,main >section.contact_area >.inner .form_wrap dl.form dd textarea +.wpcf7-not-valid-tip {
 margin-top: 5px;
}
main >section.contact_area >.inner .form_wrap dl.form dd textarea {
 resize: vertical;
}
main >section.contact_area >.inner .form_wrap p.note {
 line-height: 1.6470588235;
 margin: 70px 0 40px;
 font-size: 17px;
 text-align: center;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap p.note {
  margin: 30px 0 20px;
  font-size: 14px;
 }
}
main >section.contact_area >.inner .form_wrap .agree_area {
 text-align: center;
}
main >section.contact_area >.inner .form_wrap .agree_area label {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 10px;
}
main >section.contact_area >.inner .form_wrap .agree_area label input {
 position: relative;
 top: 2px;
 width: 24px;

 aspect-ratio: 1/1;
}
main >section.contact_area >.inner .form_wrap .agree_area label span {
 font-size: 16px;
}
main >section.contact_area >.inner .form_wrap .agree_area label span a {
 text-decoration: underline;
}
main >section.contact_area >.inner .form_wrap .btn_wrap {
 display: flex;
 justify-content: center;
 gap: 20px;
 margin-top: 40px;
}
@media screen and (max-width: 600px) {
 main >section.contact_area >.inner .form_wrap .btn_wrap {
  gap: 3%;
 }
}
main >section.contact_area >.inner .form_wrap .btn_wrap input {
 width: 200px;
}
@media screen and (max-width: 600px) {
 main >section.contact_area >.inner .form_wrap .btn_wrap input {
  width: 40vw !important;
 }
}
main >section.contact_area >.inner .form_wrap .btn_wrap .btn {
 margin: 0;
}
main >section.contact_area >.inner .form_wrap .btn_wrap .prev {
 --c1: var(--c_rd);
 --c2: #ffffff;
}
@media (hover) {
 main >section.contact_area >.inner .form_wrap .btn_wrap .prev:hover {
  --c1: #ffffff;
  --c2: var(--c_rd);
 }
}
main >section.contact_area >.inner .form_wrap .btn_wrap .prev p {
 width: 200px;
 height: 100%;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap .btn_wrap .prev p {
  width: 100%;
 }
}
main >section.contact_area >.inner .form_wrap .btn_wrap .prev p input {
 display: flex;
 width: 100%;
 height: 100%;
 line-height: 1.25;
 justify-content: center;
 border: 2px solid var(--c1);
 border-radius: 10px;
 color: var(--c1);
 background: var(--c2);
 font-weight: bold;
 font-size: 16px;
 text-align: center;
 letter-spacing: 0.1em;
 transition: all 0.3s;
}
main >section.contact_area >.inner .form_wrap .btn {
 display: flex;
 justify-content: center;
 margin-top: 15px;
}
main >section.contact_area >.inner .form_wrap .btn:has(:disabled) {
 opacity: 0.6;
 pointer-events: none;
}
main >section.contact_area >.inner .form_wrap .btn p {
 position: relative;
 font-size: 0;
}
@media (hover) {
 main >section.contact_area >.inner .form_wrap .btn p:hover:after {
  background: var(--c_rd);
 }
}
main >section.contact_area >.inner .form_wrap .btn p:after {
 content: "";
 display: block;
 position: absolute;
 top: 50%;
 right: 20px;
 width: 23px;
 -webkit-mask-image: url(/common/img/icon_arrow_wt.png);
         mask-image: url(/common/img/icon_arrow_wt.png);
 -webkit-mask-repeat: no-repeat;
         mask-repeat: no-repeat;
 -webkit-mask-position: center;
         mask-position: center;
 -webkit-mask-size: cover;
         mask-size: cover;
 background: #ffffff;
 translate: 0% -50%;
 transition: all 0.3s;
 pointer-events: none;

 aspect-ratio: 23/16;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .form_wrap .btn p:after {
  right: 10px;
  width: 17px;
 }
}
main >section.contact_area >.inner .form_wrap span.wpcf7-spinner {
 display: none;
}
main >section.contact_area >.inner .thanks h2 {
 line-height: 1.25;
 color: var(--c_rd);
 font-weight: bold;
 font-size: 32px;
 text-align: center;
 letter-spacing: 0.05em;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .thanks h2 {
  font-size: 26px;
 }
}
main >section.contact_area >.inner .thanks p.lead {
 margin: 60px 0;
}
@media screen and (max-width: 1024px) {
 main >section.contact_area >.inner .thanks p.lead {
  margin: 30px 0;
 }
}
main >section.contact_area >.inner .thanks .rd_btn {
 margin: 0 auto;
}
/*# sourceMappingURL=layout.css.map */