@charset "utf-8";

.contact-page { color: #3a342c; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif; }
.contact-page * { box-sizing: border-box; }
.contact-page a { color: inherit; }
.contact-page img { display: block; max-width: 100%; }
.contact-hero { align-items: center; background: #f5f1e8; display: flex; min-height: 460px; overflow: hidden; position: relative; }
.contact-hero-copy { margin: 0 auto; max-width: 1180px; padding: 64px 56px; position: relative; width: 100%; z-index: 2; }
.contact-hero-copy h1 { color: #33302b; font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 34px; font-weight: 500; letter-spacing: .08em; line-height: 1.7; margin: 0 0 32px; }
.contact-hero-copy h1 span { display: block; }
.contact-hero-copy > p:last-child { color: #6e6a62; font-size: 15px; letter-spacing: .04em; line-height: 2; margin: 0; max-width: 500px; }
.contact-breadcrumb { color: #6e6a62; font-size: 13px; letter-spacing: .06em; margin: 0 0 40px; }
.contact-breadcrumb span { color: #a8a499; font-size: 11px; margin: 0 10px; }
.contact-hero-media { background: #e6e1d6; bottom: 0; height: 100%; overflow: hidden; position: absolute; right: 0; top: 0; width: 54%; }
.contact-hero-media img { height: 100%; object-fit: cover; position: relative; width: 100%; }
.contact-hero-leaf { bottom: -8px; left: 0; opacity: .4; pointer-events: none; position: absolute; width: 150px; z-index: 1; }
.contact-guidance { align-items: center; display: flex; gap: 34px; margin: 0 auto; max-width: 1180px; padding: 64px 56px; }
.contact-guidance-photo { border-radius: 16px 70px 70px 16px; flex: 0 0 232px; height: 210px; overflow: hidden; }
.contact-guidance-photo img, .contact-guidance-plant img { height: 100%; object-fit: cover; width: 100%; }
.contact-guidance-copy { flex: 1 1 auto; min-width: 0; }
.contact-guidance-copy h2 { font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 22px; font-weight: 500; letter-spacing: .04em; line-height: 1.6; margin: 0 0 20px; }
.contact-guidance-copy p { color: #4a443b; font-size: 15px; letter-spacing: .02em; line-height: 1.9; margin: 0 0 9px; padding-left: 24px; position: relative; }
.contact-guidance-copy p:not(.contact-guidance-note)::before { border-bottom: 1.6px solid #b79a5b; border-left: 1.6px solid #b79a5b; content: ""; height: 6px; left: 2px; position: absolute; top: 7px; transform: rotate(-45deg); width: 11px; }
.contact-guidance-copy .contact-guidance-note { margin-top: 16px; padding-left: 0; }
.contact-guidance-plant { flex: 0 0 150px; height: 210px; overflow: hidden; }
.contact-form-section { background: #fbfaf7; padding: 72px 24px 88px; }
.contact-form-heading { margin: 0 auto 36px; max-width: 920px; text-align: center; }
.contact-form-heading h2 { font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 28px; font-weight: 500; letter-spacing: .14em; margin: 0 0 14px; }
.contact-form-heading p { color: #6e6a62; font-size: 14px; margin: 0; }
.contact-form { background: #fff; border: 1px solid #e2e0da; margin: 0 auto; max-width: 920px; padding: 36px 40px 44px; }
.contact-form-container { width: 100%; }
.contact-form .formRow { display: flex; padding: 13px 0; }
.contact-form .formTh { align-items: flex-start; display: flex; flex: 0 0 210px; justify-content: space-between; padding: 9px 24px 0 0; }
.contact-form .formTd { flex: 1 1 auto; min-width: 0; }
.contact-form .labelText01 { font-size: 14px; letter-spacing: .04em; }
.contact-form .requiredText { background: #9a6b3f; border-radius: 2px; color: #fff; font-size: 10px; letter-spacing: .06em; line-height: 1; margin: 0; padding: 5px 7px; }
.contact-form .formInput { background: #fff; border: 1px solid #e2e0da; border-radius: 2px; color: #3a3a38; font-family: inherit; font-size: 14px; min-height: 43px; padding: 10px 14px; width: 100%; }
.contact-form .formTextArea { min-height: 110px; resize: vertical; }
.contact-form .formInput:focus { border-color: #9a6b3f; outline: 0; }
.contact-choice-list { display: flex; flex-wrap: wrap; gap: 10px 18px; padding-top: 8px; }
.contact-choice-list > div, .contact-privacy-consent { align-items: center; display: inline-flex; gap: 7px; }

.masa-contact-form .formRow{align-items:baseline}
.masa-contact-form .masa-contact-field-label,.masa-contact-form .masa-contact-consent-control,.masa-contact-form .masa-contact-choice-list>div{align-items:baseline;display:flex}
.masa-contact-form .masa-contact-field-label,.masa-contact-form .masa-contact-consent-control,.masa-contact-form .masa-contact-choice-list>div{gap:8px}
.masa-contact-form .masa-contact-choice-list input,.masa-contact-form .masa-contact-consent-control input{flex:none;margin:0;vertical-align:baseline}
.contact-choice-list input, .contact-privacy-consent input { accent-color: #9a6b3f; height: 16px; margin: 0; width: 16px; }
.contact-choice-list label, .contact-privacy-consent label { cursor: pointer; font-size: 13px; letter-spacing: .02em; }
.contact-privacy-consent { margin-bottom: 14px; }
.contact-privacy-policy { border-top: 1px solid #e2e0da; }
.contact-privacy-toggle { height: 0; opacity: 0; position: absolute; width: 0; }
.contact-privacy-toggle-label { cursor: pointer; display: block; font-size: 13px; padding: 14px 24px 14px 0; position: relative; }
.contact-privacy-toggle-label::after { content: "＋"; position: absolute; right: 0; }
.contact-privacy-toggle:checked + .contact-privacy-toggle-label::after { content: "−"; }
.contact-privacy-body { color: #5f5a53; display: none; font-size: 14px; line-height: 2; max-height: 320px; overflow: auto; padding: 4px 12px 14px 0; }
.contact-privacy-toggle:checked ~ .contact-privacy-body { display: block; }
.contact-privacy-body h3 { color: #3a342c; font-size: 13px; margin: 22px 0 7px; }
.contact-privacy-body p { margin: 0 0 8px; }
.contact-form-actions { justify-content: center; margin-top: 24px; }
.contact-form .formBtnTd { text-align: center; width: 100%; }
.contact-form .formBtn { background: #31432d; border: 0; border-radius: 2px; color: #fff; cursor: pointer; font-family: inherit; font-size: 16px; letter-spacing: .12em; max-width: 100%; padding: 20px 54px; position: relative; width: 360px; }
.contact-form .formBtn:disabled { cursor: wait; opacity: .65; }
.formError { z-index: 990; }
.formError .formErrorContent { background: #b74d42; border: 2px solid #e2e0da; border-radius: 4px; box-shadow: 0 0 6px #000; color: #fff; font-size: 12px; padding: 8px 10px; width: 170px; z-index: 991; }
.formError .formErrorArrow { margin: -2px 0 0 13px; width: 15px; z-index: 996; }
.formError .formErrorArrow div { background: #b74d42; border-left: 2px solid #e2e0da; border-right: 2px solid #e2e0da; box-shadow: 0 2px 3px #444; display: block; font-size: 0; height: 1px; line-height: 0; margin: 0 auto; }
.formError .formErrorArrow .line10 { border: 0; width: 15px; }
.formError .formErrorArrow .line9 { border: 0; width: 13px; }
.formError .formErrorArrow .line8 { width: 11px; }
.formError .formErrorArrow .line7 { width: 9px; }
.formError .formErrorArrow .line6 { width: 7px; }
.formError .formErrorArrow .line5 { width: 5px; }
.formError .formErrorArrow .line4 { width: 3px; }
.formError .formErrorArrow .line3 { border-bottom: 0; width: 1px; }
.formError .formErrorArrow .line2, .formError .formErrorArrow .line1 { background: #e2e0da; border: 0; width: 0; }
@media (max-width: 820px) { .contact-hero { display: block; min-height: 0; } .contact-hero-copy { padding: 40px 24px 32px; } .contact-hero-copy h1 { font-size: 24px; line-height: 1.8; margin-bottom: 24px; } .contact-hero-copy > p:last-child br { display: none; } .contact-breadcrumb { margin-bottom: 24px; } .contact-hero-media { height: 260px; position: relative; width: 100%; } .contact-hero-leaf { display: none; } .contact-guidance { align-items: flex-start; flex-direction: column; gap: 24px; padding: 48px 22px; } .contact-guidance-photo { flex: none; height: 200px; width: 100%; } .contact-guidance-plant { display: none; } .contact-form-section { padding: 54px 18px 64px; } .contact-form { padding: 24px 20px 30px; } .contact-form .formRow { flex-direction: column; } .contact-form .formTh { flex: none; padding: 0; width: 100%; } .contact-form .requiredText { margin-left: 10px; } .contact-form .formTd { margin-top: 8px; width: 100%; } .contact-form-heading h2 { font-size: 24px; } }

/* Migrated from editor CSS for Sibloo compatibility. */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
}

body {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin: 0px;
}

.contact-page .contact-privacy-toggle {
  clip-path: inset(50%);
  height: 1px;
  margin-top: -1px;
  margin-right: -1px;
  margin-bottom: -1px;
  margin-left: -1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.contact-page .contact-privacy-body {
  display: block;
  max-height: 0px;
  opacity: 0;
  overflow: hidden;
  padding-bottom: 0px;
  padding-top: 0px;
  transition: max-height 240ms ease, opacity 180ms ease, padding 240ms ease;
  visibility: hidden;
}

.contact-page .contact-privacy-toggle:checked~.contact-privacy-body {
  max-height: 320px;
  opacity: 1;
  overflow: auto;
  padding-bottom: 14px;
  padding-top: 4px;
  visibility: visible;
}

.contact-page .contact-form .formBtn {
  transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.contact-page .contact-form .formBtn:hover {
  background-color: rgb(80, 97, 74);
  box-shadow: 0 8px 18px rgba(49, 67, 45, 0.2);
  transform: translateY(-2px);
}

.contact-page .contact-form .formBtn:focus-visible {
  outline: 2px solid #ae7738;
  outline-offset: 3px;
}

.contact-page~.footer-contact {
  display: none;
}

@media (prefers-reduced-motion: reduce) {

  .contact-page .contact-privacy-body,
  .contact-page .contact-form .formBtn {
    transition: none;
  }
}

@media (min-width: 821px) {
  .contact-page .contact-hero-copy {
    padding-right: 52%;
  }

  .contact-page .contact-hero-copy h1 {
    font-size: 28px;
    letter-spacing: 0.05em;
  }

  .contact-page .contact-hero-media {
    width: 48%;
  }

  .contact-form {
    max-width: 1080px;
  }

  .contact-form .formTd {
    max-width: none;
    width: auto;
  }

  .contact-choice-list>div {
    white-space: nowrap;
  }
}

@media (min-width: 821px) and (max-width: 1100px) {
  .contact-page .contact-hero-copy h1 {
    font-size: 23px;
  }
}

@media (max-width: 820px) {
  .contact-page .contact-hero-copy h1 {
    font-size: 19px;
    letter-spacing: 0.04em;
  }

  .contact-hero-copy h1 span {
    white-space: nowrap;
  }
}

*{box-sizing:border-box}

/* Match the plan hero: a 1100px-aligned copy column and a curved image column. */
@media (min-width:768px){
  body:has(.masa-contact-page) .top-header{position:sticky;top:0;z-index:30}
  .masa-contact-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:460px}
  .masa-contact-hero-copy{align-self:center;margin:0;max-width:none;padding:64px 48px 64px max(24px,calc((100vw - 1100px) / 2));width:100%}
  .masa-contact-hero-photo{border-radius:9999px 0 0 9999px;height:auto;min-height:460px;width:100%}
}

/* The color spans the viewport while the guide itself remains inside 1100px. */
.masa-contact-guide-stage{background:rgb(245,241,233);width:100%}
.masa-contact-guide{background:transparent;max-width:1100px;padding:46px 24px 45px;width:100%}

/* Restore labels and choices while keeping the Sibloo form components intact. */
.masa-contact-field>label,.masa-contact-choice-title{align-items:center;display:flex;gap:8px;line-height:1.5}
.masa-contact-choice-list label{cursor:pointer;white-space:nowrap}
.masa-contact-consent{gap:10px}
.masa-contact-consent input{flex:none;margin:0}
.masa-contact-consent label{cursor:pointer}

@media (max-width:767px){
  body:has(.masa-contact-page) .top-header{position:sticky;top:0;z-index:30}
  .masa-contact-hero-photo{border-radius:0;height:270px}
  .masa-contact-guide{padding:34px 24px;width:100%}
}

/* Sibloo preserves these standard form rows, unlike direct radio controls. */
.masa-contact-form-container{max-width:none;padding:0;width:100%}
.masa-contact-form .formRow.masa-contact-field,.masa-contact-form .formRow.masa-contact-consent{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(220px,232px) minmax(0,1fr);margin:0;padding:16px 0}
.masa-contact-form .formTh,.masa-contact-form .formTd{flex:none;max-width:none;min-width:0;padding:0;width:auto}
.masa-contact-form .masa-contact-field-label{align-items:center;display:flex;gap:8px}
.masa-contact-form .masa-contact-field-label .label{color:rgb(81,81,76);font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:normal;white-space:nowrap;word-break:keep-all}
.masa-contact-form .masa-contact-field-label .masa-contact-required-tag{flex:none;margin:0}
.masa-contact-form .masa-contact-choice-list{display:flex;gap:9px 24px;padding:0}
.masa-contact-form .masa-contact-choice-list>div,.masa-contact-form .masa-contact-consent-control{align-items:center;display:inline-flex;gap:6px}
.masa-contact-form .masa-contact-choice-list label,.masa-contact-form .masa-contact-consent-control label{font-size:16px;margin-bottom:.2rem}
.masa-contact-form .masa-contact-choice-list input,.masa-contact-form .masa-contact-consent-control input{flex:none;margin:0}
.masa-contact-form .masa-contact-consent-control{gap:0}
.masa-contact-form .masa-contact-consent-control input{margin-right:6px}
.masa-contact-form .masa-contact-consent-control .masa-contact-privacy-link{margin-bottom:.2rem}
.masa-contact-form .masa-contact-submit-row{margin:28px 0 0;padding:0}
.masa-contact-form .masa-contact-submit-row .formBtnTd{padding:0;text-align:center}

@media (max-width:767px){
  .masa-contact-form .formRow.masa-contact-field,.masa-contact-form .formRow.masa-contact-consent{display:block;padding:12px 0}
  .masa-contact-form .masa-contact-field-label{margin-bottom:8px}
  .masa-contact-form .masa-contact-choice-list{gap:9px 17px}
}

body:has(.masa-contact-page) .top-header-logo{filter:brightness(0) saturate(100%) invert(20%) sepia(20%) saturate(1072%) hue-rotate(59deg) brightness(92%) contrast(88%)}

@media (max-width:767px){body:has(.masa-contact-page) .top-header-toggle .navbar-toggler-icon{background-color:var(--masa-ink, #3b3a36)}}

body:has(.masa-contact-page) .top-header{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgba(255,255,255,0.97);background:rgba(255,255,255,0.97);position:relative}

/* Use the same dark header treatment as the other standard pages. */
body:has(.masa-contact-page) .top-header{background:#243b2c;color:#fff}
body:has(.masa-contact-page) .top-header-name,body:has(.masa-contact-page) .top-header-sub,body:has(.masa-contact-page) .top-header-link{color:#fff}
body:has(.masa-contact-page) .top-header-logo{filter:none}
@media (max-width:767px){body:has(.masa-contact-page) .top-header-toggle .navbar-toggler-icon{background-color:#fff}}

.masa-contact-page{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(255,254,251);background:rgb(255,254,251);color:var(--masa-ink, #3b3a36);font-family:"Noto Sans JP",sans-serif;letter-spacing:0.04em;overflow:hidden}

.masa-contact-hero{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(250,248,243);background:rgb(250,248,243);display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,45.5%);min-height:440px}

.masa-contact-hero-photo{border-bottom-left-radius:54% 52%;height:440px;overflow:hidden}

.masa-contact-hero-photo img,.masa-contact-guide-photo img,.masa-contact-flow-photo img{height:100%;object-fit:cover;width:100%}

.masa-contact-hero-photo img{object-position:center}

.masa-contact-guide{align-items:center;background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(245,241,233);background:rgb(245,241,233);display:grid;gap:clamp(36px,6vw,105px);grid-template-columns:minmax(270px,380px) minmax(0,620px);justify-content:center;padding-top:46px;padding-right:8%;padding-bottom:45px;padding-left:8%;padding:46px 8% 45px}

.masa-contact-guide-photo{border-radius:12px 56px 12px 56px;height:210px;overflow:hidden}

.masa-contact-guide-list{list-style:none;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;margin:0px;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;padding:0px}

.masa-contact-guide-item::before{color:rgb(64,83,60);content:"✓";font-size:16px;left:0px;position:absolute}

.masa-contact-section-heading span{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(137,155,130);background:rgb(137,155,130);display:block;height:2px;margin-top:15px;margin-right:auto;margin-bottom:0px;margin-left:auto;margin:15px auto 0px;position:relative;width:20px}

.masa-contact-section-heading span::after,.masa-contact-section-heading span::before{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(137,155,130);background:rgb(137,155,130);content:"";height:1px;position:absolute;top:0px;width:11px}

.masa-contact-section-heading span::before{right:14px;transform:rotate(28deg)}

.masa-contact-section-heading span::after{left:14px;transform:rotate(-28deg)}

.masa-contact-method-grid{display:grid;gap:22px;grid-template-columns:repeat(2,1fr)}

.masa-contact-method-card{border:1px solid rgb(230,226,218);border-width:1px;border-style:solid;border-color:rgb(230,226,218);border-top:1px solid rgb(230,226,218);border-top-width:1px;border-top-style:solid;border-top-color:rgb(230,226,218);border-right:1px solid rgb(230,226,218);border-right-width:1px;border-right-style:solid;border-right-color:rgb(230,226,218);border-bottom:1px solid rgb(230,226,218);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(230,226,218);border-left:1px solid rgb(230,226,218);border-left-width:1px;border-left-style:solid;border-left-color:rgb(230,226,218);border-image:none;border-radius:14px;box-shadow:0 6px 20px rgba(75,65,49,0.04);padding-top:32px;padding-right:36px;padding-bottom:29px;padding-left:36px;padding:32px 36px 29px;text-align:center}

.masa-contact-phone{color:rgb(55,76,54);display:block;font-family:"Noto Serif JP",serif;letter-spacing:0.07em;margin-bottom:9px;text-decoration:none}

.masa-contact-outline-button{align-items:center;border-radius:30px;display:flex;font-size:13px;font-weight:600;justify-content:space-between;margin-top:19px;padding-top:12px;padding-right:27px;padding-bottom:12px;padding-left:27px;padding:12px 27px;text-decoration:none}

.masa-contact-solid-button{align-items:center;border-radius:30px;display:flex;font-size:13px;font-weight:600;justify-content:space-between;margin-top:19px;padding-top:12px;padding-right:27px;padding-bottom:12px;padding-left:27px;padding:12px 27px;text-decoration:none}

.masa-contact-outline-button{border:1px solid rgb(64,81,60);border-width:1px;border-style:solid;border-color:rgb(64,81,60);border-top:1px solid rgb(64,81,60);border-top-width:1px;border-top-style:solid;border-top-color:rgb(64,81,60);border-right:1px solid rgb(64,81,60);border-right-width:1px;border-right-style:solid;border-right-color:rgb(64,81,60);border-bottom:1px solid rgb(64,81,60);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(64,81,60);border-left:1px solid rgb(64,81,60);border-left-width:1px;border-left-style:solid;border-left-color:rgb(64,81,60);border-image:none;color:rgb(64,81,60)}

.masa-contact-solid-button{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(64,81,60);background:rgb(64,81,60);color:rgb(255,255,255)}

.masa-contact-steps{counter-reset:step;display:flex;justify-content:center;list-style:none;margin-top:0px;margin-right:auto;margin-bottom:26px;margin-left:auto;margin:0px auto 26px;max-width:520px;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;padding:0px}

.masa-contact-steps li{align-items:center;color:rgb(166,164,157);display:flex;flex-grow:1;flex-shrink:1;flex-basis:0%;flex:1 1 0%;font-size:12px;font-weight:600;gap:8px}

.masa-contact-steps li:not(:last-child)::after{border-top:1px dashed rgb(200,198,191);border-top-width:1px;border-top-style:dashed;border-top-color:rgb(200,198,191);content:"";flex-grow:1;flex-shrink:1;flex-basis:0%;flex:1 1 0%;margin-top:0px;margin-right:8px;margin-bottom:0px;margin-left:8px;margin:0px 8px}

.masa-contact-steps span{align-items:center;background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(185,184,180);background:rgb(185,184,180);border-radius:50%;color:rgb(255,255,255);display:inline-flex;font-size:11px;height:21px;justify-content:center;width:21px}

.masa-contact-steps .is-current span{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(167,115,53);background:rgb(167,115,53)}

.masa-contact-form-card{border:1px solid rgb(232,229,221);border-width:1px;border-style:solid;border-color:rgb(232,229,221);border-top:1px solid rgb(232,229,221);border-top-width:1px;border-top-style:solid;border-top-color:rgb(232,229,221);border-right:1px solid rgb(232,229,221);border-right-width:1px;border-right-style:solid;border-right-color:rgb(232,229,221);border-bottom:1px solid rgb(232,229,221);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(232,229,221);border-left:1px solid rgb(232,229,221);border-left-width:1px;border-left-style:solid;border-left-color:rgb(232,229,221);border-image:none;border-radius:10px}

.masa-contact-field{align-items:center;border-bottom:1px solid rgb(238,234,227);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(238,234,227);display:grid;gap:24px;grid-template-columns:178px minmax(0,1fr);padding-top:13px;padding-right:0px;padding-bottom:13px;padding-left:0px;padding:13px 0px}

.masa-contact-required-tag{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(167,115,53);background:rgb(167,115,53);border-radius:2px;color:rgb(255,255,255);font-size:9px;font-style:normal;font-weight:500;margin-left:8px;padding-top:2px;padding-right:5px;padding-bottom:2px;padding-left:5px;padding:2px 5px}

.masa-contact-field input[type="text"],.masa-contact-field input[type="email"],.masa-contact-field input[type="tel"],.masa-contact-field textarea{appearance:none;background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(255,255,255);background:rgb(255,255,255);border:1px solid rgb(233,229,221);border-width:1px;border-style:solid;border-color:rgb(233,229,221);border-top:1px solid rgb(233,229,221);border-top-width:1px;border-top-style:solid;border-top-color:rgb(233,229,221);border-right:1px solid rgb(233,229,221);border-right-width:1px;border-right-style:solid;border-right-color:rgb(233,229,221);border-bottom:1px solid rgb(233,229,221);border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(233,229,221);border-left:1px solid rgb(233,229,221);border-left-width:1px;border-left-style:solid;border-left-color:rgb(233,229,221);border-image:none;border-radius:0px;box-sizing:border-box;color:rgb(59,58,54);font-style:inherit;font-variant:inherit;font-weight:inherit;font-size:12px;line-height:inherit;font-family:inherit;font:inherit;padding-top:11px;padding-right:13px;padding-bottom:11px;padding-left:13px;padding:11px 13px;width:100%}

.masa-contact-choice-field{align-items:start;border:0px;border-width:0px;border-style:none;border-color:currentcolor;border-top:0px;border-top-width:0px;border-top-style:none;border-top-color:currentcolor;border-right:0px;border-right-width:0px;border-right-style:none;border-right-color:currentcolor;border-bottom:0px;border-bottom-width:0px;border-bottom-style:none;border-bottom-color:currentcolor;border-left:0px;border-left-width:0px;border-left-style:none;border-left-color:currentcolor;border-image:none;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;margin:0px;padding-top:13px;padding-right:0px;padding-bottom:13px;padding-left:0px;padding:13px 0px}

.masa-contact-choice-list{display:flex;flex-grow:1;flex-shrink:1;flex-basis:0%;flex:1 1 0%;flex-wrap:wrap;gap:9px 24px}

.masa-contact-choice-list label{align-items:center;color:rgb(100,99,94);display:inline-flex;font-size:11px;gap:6px}

.masa-contact-choice-list input{accent-color:rgb(64,81,60);height:15px;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;margin:0px;width:15px}

.masa-contact-message-field{align-items:start}

.masa-contact-message-field textarea{height:132px;resize:vertical}

.masa-contact-consent input{accent-color:rgb(64,81,60);height:16px;margin-top:0px;margin-right:10px;margin-bottom:0px;margin-left:0px;margin:0px 10px 0px 0px;width:16px}

.masa-contact-submit{background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(64,81,60);background:rgb(64,81,60);border:0px;border-width:0px;border-style:none;border-color:currentcolor;border-top:0px;border-top-width:0px;border-top-style:none;border-top-color:currentcolor;border-right:0px;border-right-width:0px;border-right-style:none;border-right-color:currentcolor;border-bottom:0px;border-bottom-width:0px;border-bottom-style:none;border-bottom-color:currentcolor;border-left:0px;border-left-width:0px;border-left-style:none;border-left-color:currentcolor;border-image:none;color:rgb(255,255,255);cursor:not-allowed;display:block;font-family:"Noto Serif JP",serif;font-size:17px;letter-spacing:0.1em;margin-top:0px;margin-right:auto;margin-bottom:0px;margin-left:auto;margin:0px auto;max-width:420px;opacity:0.58;padding-top:17px;padding-right:32px;padding-bottom:17px;padding-left:32px;padding:17px 32px;width:100%}

.masa-contact-flow{align-items:stretch;background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(247,243,236);background:rgb(247,243,236);border-radius:38px 38px 0 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,40%);margin-top:74px;margin-right:auto;margin-bottom:78px;margin-left:auto;margin:74px auto 78px;max-width:1050px;overflow:hidden}

.masa-contact-flow ol{display:flex;justify-content:space-between;list-style:none;margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;margin:0px;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;padding:0px}

.masa-contact-flow li:not(:last-child)::after{color:rgb(185,181,170);content:"→";font-size:19px;position:absolute;right:-6px;top:26px}

.masa-contact-flow li span{align-items:center;background-image:none;background-position:0% 0%;background-size:auto;background-repeat:repeat;background-origin:padding-box;background-clip:border-box;background-attachment:scroll;background-color:rgb(64,81,60);background:rgb(64,81,60);border-radius:50%;color:rgb(255,255,255);display:flex;font-size:11px;height:20px;justify-content:center;margin-top:0px;margin-right:auto;margin-bottom:13px;margin-left:auto;margin:0px auto 13px;width:20px}

.masa-contact-flow-photo img{object-position:center}

@media (max-width:767px){body:has(.masa-contact-page) .top-header{padding-top:18px;padding-right:22px;padding-bottom:15px;padding-left:22px;padding:18px 22px 15px}body:has(.masa-contact-page) .top-header-menu{margin-top:13px}.masa-contact-hero{display:block}.masa-contact-hero-copy{margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;margin:0px;padding-top:36px;padding-right:24px;padding-bottom:38px;padding-left:24px;padding:36px 24px 38px}.masa-contact-breadcrumb{margin-bottom:38px}.masa-contact-hero h1{font-size:25px}.masa-contact-hero-copy>p:last-child{font-size:12px}.masa-contact-desktop-only{display:none}.masa-contact-hero-photo{border-bottom-left-radius:0px;height:270px}.masa-contact-guide{display:block;padding-top:34px;padding-right:24px;padding-bottom:34px;padding-left:24px;padding:34px 24px}.masa-contact-guide-photo{height:190px;margin-bottom:28px}.masa-contact-guide-copy h2{font-size:18px}.masa-contact-guide-item{font-size:11px}.masa-contact-methods{padding-left:20px;padding-right:20px}.masa-contact-form-section{padding-left:20px;padding-right:20px}.masa-contact-methods{padding-top:52px}.masa-contact-method-grid{grid-template-columns:1fr}.masa-contact-method-card{padding-top:28px;padding-right:23px;padding-bottom:25px;padding-left:23px;padding:28px 23px 25px}.masa-contact-form-section{padding-top:58px}.masa-contact-steps{margin-bottom:20px}.masa-contact-steps li{font-size:10px;gap:5px}.masa-contact-steps li:not(:last-child)::after{margin-top:0px;margin-right:4px;margin-bottom:0px;margin-left:4px;margin:0px 4px}.masa-contact-form-card{padding-top:20px;padding-right:17px;padding-bottom:25px;padding-left:17px;padding:20px 17px 25px}.masa-contact-field{display:block;padding-top:12px;padding-right:0px;padding-bottom:12px;padding-left:0px;padding:12px 0px}.masa-contact-field>label{display:block;margin-bottom:8px}.masa-contact-choice-title{float:none;margin-bottom:9px;width:auto}.masa-contact-choice-list{gap:9px 17px}.masa-contact-message-field textarea{height:145px}.masa-contact-consent{align-items:flex-start;margin-top:22px}.masa-contact-consent label{line-height:1.7}.masa-contact-flow{display:block;margin-top:54px;margin-right:20px;margin-bottom:58px;margin-left:20px;margin:54px 20px 58px}.masa-contact-flow-copy{padding-top:29px;padding-right:18px;padding-bottom:29px;padding-left:18px;padding:29px 18px}.masa-contact-flow h2{font-size:16px}.masa-contact-flow li{font-size:9px}.masa-contact-flow li:not(:last-child)::after{right:-4px}.masa-contact-flow-photo{height:190px;min-height:0px}}

@media (max-width:767px){.masa-contact-hero h1{font-size:32px}.masa-contact-page h2{font-size:24px}}

*{box-sizing:border-box}

.masa-contact-form-card{border:0px;border-width:0px;border-style:none;border-color:currentcolor;border-top:0px;border-top-width:0px;border-top-style:none;border-top-color:currentcolor;border-right:0px;border-right-width:0px;border-right-style:none;border-right-color:currentcolor;border-bottom:0px;border-bottom-width:0px;border-bottom-style:none;border-bottom-color:currentcolor;border-left:0px;border-left-width:0px;border-left-style:none;border-left-color:currentcolor;border-image:none;border-radius:0px}

/* Keep the guide inside the shared content width without an asymmetric right inset. */
.masa-contact-guide{column-gap:56px;margin:0 auto;max-width:1100px;padding:46px 0 45px;width:calc(100% - 48px)}

/* Preserve the native form components while keeping their fields inside the available grid column. */
.masa-contact-form,.masa-contact-form-card{width:100%}
.masa-contact-field{grid-template-columns:minmax(160px,178px) minmax(0,1fr)}
.masa-contact-field>label,.masa-contact-choice-title{min-width:0}
.masa-contact-field .formInput{min-width:0}
.masa-contact-choice-title{float:none;grid-column:1;margin:0;width:auto}
.masa-contact-choice-list{grid-column:2;min-width:0}
.masa-contact-submit{min-width:0}

@media (max-width:767px){.masa-contact-guide{padding:34px 24px;width:100%}.masa-contact-choice-title,.masa-contact-choice-list{grid-column:auto}.masa-contact-choice-list{min-width:0}}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

/* Keep the consent tag beside its label without colliding with it. */
.masa-contact-form .formRow.masa-contact-consent{grid-template-columns:minmax(220px,232px) minmax(0,1fr)}

/* Match the plan hero after editor CSS has applied its page-specific defaults. */
@media (min-width:768px){
  .masa-contact-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:460px}
  .masa-contact-hero-copy{padding:64px 48px 64px max(24px,calc((100vw - 1100px) / 2))}
  .masa-contact-hero-photo{border-radius:9999px 0 0 9999px;height:auto;min-height:460px}
}

/* Keep the consent sentence in one label so it wraps as a single text flow. */
.masa-contact-form .masa-contact-consent-control{align-items:flex-start;display:flex;gap:6px}
.masa-contact-form .masa-contact-consent-control input{margin-top:4px}
.masa-contact-form .masa-contact-consent-control .masa-contact-consent-label{display:block;flex:1 1 auto;line-break:strict;min-width:0;overflow-wrap:normal;white-space:normal;word-break:normal}
.masa-contact-form .masa-contact-consent-control .masa-contact-privacy-link{margin:0}
.masa-contact-submit{cursor:pointer;opacity:1}

@media (max-width:767px){
  .masa-contact-form-section{padding-left:24px;padding-right:24px}
  .masa-contact-form-card{padding-left:0;padding-right:0}
}

/* Keep the contact page header readable on its dark background. */
body:has(.masa-contact-page) .top-header-brand-copy,
body:has(.masa-contact-page) .top-header-brand-copy .top-header-name,
body:has(.masa-contact-page) .top-header-brand-copy .top-header-sub,
body:has(.masa-contact-page) .top-header-menu-items,
body:has(.masa-contact-page) .top-header-menu-items .top-header-link,
body:has(.masa-contact-page) .top-header-menu-items .top-header-contact{
  color:#fff;
}

@media (max-width:767px){
  .masa-contact-form-section #contact-form-title{font-size:26px}
}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}

*{box-sizing:border-box}
