:root{--origin-width: 1366;--header-h: 120px;--header-h-sp: 60px;--color-bg: #181818;--color-white: #fff;--color-text: #2B2B2B;--color-button-gray: #575757;--color-button-green: #428043;--color-basic: var(--color-text);--color-main: var(--color-button-green);--color-accent: var(--color-button-gray);--color-light-gray: var(--color-white);--color-accent-link: var(--color-button-green);--font-sans: "Shippori Mincho", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", serif;--font-serif: "Shippori Mincho", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", serif;--font-display: "Gloock", "Shippori Mincho", serif;--font-en: "Gloock", serif;--font-jp: "Shippori Mincho", serif;--post-font: var(--font-serif);--post-theme-color: var(--color-main)}body#contact #pagettl .js-reveal-chars{padding-right:.08em;padding-bottom:.12em;margin-right:-0.08em;margin-bottom:-0.12em}.contact-page{color:#fff}.contact-page__intro{margin:2rem 0;font-family:var(--font-jp);font-size:.875rem;font-weight:500;line-height:2;letter-spacing:.06em;text-align:center}@media screen and (min-width:768px){.contact-page__intro{margin-top:3.75rem;font-size:1rem}}.contact-page__intro p+p{margin-top:.75rem}.contact-flow{display:grid;gap:3rem;margin:4rem auto 0;align-items:start}@media screen and (min-width:768px){.contact-flow{margin-top:5rem}}@media screen and (min-width:992px){.contact-flow{grid-template-columns:190px minmax(0, 1fr);gap:clamp(3rem,-1.916rem + 7.93vw,7.5rem);margin-top:7rem}}.contact-flow__sidebar{position:relative;align-self:stretch}.contact-flow__content{min-width:0}.contact-steps{position:sticky;top:8rem;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));margin:0;padding:0;list-style:none}@media screen and (min-width:992px){.contact-steps{top:9rem;grid-template-columns:1fr}}.contact-steps__item{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:rgba(255,255,255,.35);transition:color .3s ease}@media screen and (min-width:992px){.contact-steps__item{min-height:118px;flex-direction:row;align-items:flex-start;gap:1rem}}.contact-steps__item:not(:last-child)::after{position:absolute;top:20px;left:calc(50% + 24px);width:calc(100% - 48px);height:1px;background:rgba(255,255,255,.2);content:""}@media screen and (min-width:992px){.contact-steps__item:not(:last-child)::after{top:48px;left:20px;width:1px;height:54px}}.contact-steps__item.is-active,.contact-steps__item.is-complete{color:#fff}.contact-steps__item.is-complete::after{background:#fff}.contact-steps__number{position:relative;z-index:1;display:grid;width:40px;height:40px;place-items:center;border:1px solid currentColor;border-radius:50%;background:var(--color-bg);font-size:.75rem;line-height:1}.contact-steps__item.is-active .contact-steps__number{background:#fff;color:var(--color-bg)}.contact-steps__label{font-family:var(--font-jp);font-size:.75rem;font-weight:700;letter-spacing:.12em}@media screen and (min-width:992px){.contact-steps__label{padding-top:.7rem;font-size:.875rem}}.contact-panel{display:none}.contact-panel.is-active{display:block;animation:contactPanelFade .45s ease both}.contact-panel__heading{display:flex;align-items:flex-start;gap:1.25rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.25)}@media screen and (min-width:768px){.contact-panel__heading{gap:1.75rem;padding-bottom:2rem}}.contact-panel__number{flex-shrink:0;color:rgba(255,255,255,.35);font-size:2.5rem;line-height:.9}@media screen and (min-width:768px){.contact-panel__number{font-size:3.5rem}}.contact-panel__title{color:#fff;font-family:var(--font-jp);font-size:clamp(1.25rem,1.07rem + .77vw,1.75rem);font-weight:700;line-height:1.4;letter-spacing:.08em}.contact-panel__note{margin-top:.6rem;color:rgba(255,255,255,.65);font-family:var(--font-jp);font-size:.75rem;line-height:1.8;letter-spacing:.04em}@media screen and (min-width:768px){.contact-panel__note{font-size:.875rem}}.contact-panel__required{display:inline-flex;margin-right:.5rem;padding:.2rem .45rem;background:#fff;color:var(--color-bg);font-size:.625rem;font-weight:700;line-height:1}.contact-panel__actions{display:flex;flex-direction:column-reverse;gap:1rem;margin-top:2.5rem}@media screen and (min-width:640px){.contact-panel__actions{flex-direction:row;justify-content:center;margin-top:3.5rem}}.contact-form{margin-top:2rem}@media screen and (min-width:768px){.contact-form{margin-top:3rem}}.contact-form__fields{display:grid;gap:0}.contact-form__field{display:grid;gap:.875rem;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.16)}@media screen and (min-width:992px){.contact-form__field{gap:1.25rem}}.contact-form__field:first-child{padding-top:0}.contact-form__label{display:flex;align-items:center;align-self:start;gap:.75rem;padding-top:.8rem;color:#fff;font-family:var(--font-jp);font-size:.875rem;font-weight:700;line-height:1.5;letter-spacing:.06em}.contact-form__badge{display:inline-flex;padding:.2rem .4rem;background:#fff;color:var(--color-bg);font-size:.625rem;line-height:1}.contact-form__control{min-width:0}.contact-form__address-fields{display:grid;gap:1.25rem}.contact-form__address-field{min-width:0}.contact-form__postal-code{display:grid;grid-template-columns:minmax(0, 7rem) auto minmax(0, 9rem);align-items:center;gap:.75rem;max-width:19rem}.contact-form__postal-code .wpcf7-form-control-wrap{min-width:0}.contact-form__postal-separator{color:rgba(255,255,255,.75);font-size:1rem}.contact-form__postal-error:empty{display:none}.contact-form__postal-error .wpcf7-not-valid-tip,.contact-form__postal-error .contact-form__error{margin-top:.5rem}.contact-form__sub-label{display:block;margin-bottom:.5rem;color:rgba(255,255,255,.75);font-family:var(--font-jp);font-size:.75rem;font-weight:700;line-height:1.6;letter-spacing:.06em}.contact-form__field>p,.contact-form__control>p,.contact-form__actions>p{margin:0}.contact-form__label br{display:none}.contact-form__privacy{margin-top:2rem;color:rgba(255,255,255,.72);font-family:var(--font-jp);font-size:.75rem;font-weight:500;line-height:2;letter-spacing:.04em;text-align:center}@media screen and (min-width:768px){.contact-form__privacy{margin-top:2.5rem;font-size:.875rem}}.contact-form__privacy-description br{display:none}@media screen and (min-width:768px){.contact-form__privacy-description br{display:block}}.contact-form__privacy-description,.contact-form__recaptcha-note{margin:0}.contact-form__privacy-link,.contact-form__recaptcha-link{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:opacity .2s ease}.contact-form__privacy-link:hover,.contact-form__recaptcha-link:hover{opacity:.65}.contact-form__consent{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:1.5rem;color:#fff;font-size:.875rem;font-weight:700}.contact-form__consent .wpcf7-form-control-wrap,.contact-form__consent .wpcf7-form-control,.contact-form__consent .wpcf7-list-item{display:block;margin:0}.contact-form__consent label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.contact-form__consent input[type=checkbox]{width:1.125rem;aspect-ratio:1;flex-shrink:0;margin:0;accent-color:#fff;cursor:pointer;margin-bottom:5px}.contact-form__consent .wpcf7-list-item-label{line-height:1.7}.contact-form__recaptcha-note{margin-top:1.5rem;color:rgba(255,255,255,.55);font-family:var(--font-jp);font-size:.6875rem;font-weight:500;line-height:1.9;letter-spacing:.04em;text-align:center}@media screen and (min-width:768px){.contact-form__recaptcha-note{font-size:.75rem}}.contact-form .wpcf7-form-control-wrap{display:block}.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form select,.contact-form textarea{width:100%;height:auto;padding:1rem 1.125rem;border:1px solid rgba(0,0,0,0);border-radius:0;outline:none;background:#fff;color:var(--color-text);font-family:var(--font-jp);font-size:1rem;line-height:1.6;transition:border-color .2s ease,box-shadow .2s ease}.contact-form input[type=text]::placeholder,.contact-form input[type=email]::placeholder,.contact-form input[type=tel]::placeholder,.contact-form select::placeholder,.contact-form textarea::placeholder{color:#999}.contact-form input[type=text]:focus,.contact-form input[type=email]:focus,.contact-form input[type=tel]:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#8a8a8a;box-shadow:0 0 0 2px rgba(255,255,255,.25)}.contact-form input[type=text].wpcf7-not-valid,.contact-form input[type=text].is-contact-invalid,.contact-form input[type=email].wpcf7-not-valid,.contact-form input[type=email].is-contact-invalid,.contact-form input[type=tel].wpcf7-not-valid,.contact-form input[type=tel].is-contact-invalid,.contact-form select.wpcf7-not-valid,.contact-form select.is-contact-invalid,.contact-form textarea.wpcf7-not-valid,.contact-form textarea.is-contact-invalid{border-color:#d96c6c}.contact-form textarea{min-height:220px;resize:vertical}.contact-form select{width:100%;min-height:58px;cursor:pointer}.contact-form .wpcf7-not-valid-tip,.contact-form__error{display:block;margin-top:.5rem;color:#ffb6b6;font-family:var(--font-jp);font-size:.75rem;font-weight:500;line-height:1.6}.contact-form .wpcf7-response-output{margin:1.5rem 0 0 !important;padding:.875rem 1rem !important;border-color:rgba(255,255,255,.5) !important;color:#fff;font-family:var(--font-jp);font-size:.875rem;line-height:1.7}.contact-form .wpcf7-spinner{vertical-align:middle}.contact-form__actions{margin-top:2.5rem;text-align:center;display:flex;flex-flow:column;align-items:center}@media screen and (min-width:768px){.contact-form__actions{margin-top:3.5rem}}.contact-form .wpcf7-submit{display:inline-flex;width:min(100%,320px);min-height:60px;align-items:center;justify-content:center;border:1px solid #fff;border-radius:999px;background:#fff;color:var(--color-bg);font-family:var(--font-jp);font-size:.875rem;font-weight:700;line-height:1;letter-spacing:.06em;cursor:pointer;transition:background-color .3s ease,color .3s ease}.contact-form .wpcf7-submit:hover{background:rgba(0,0,0,0);color:#fff}.contact-form__unavailable{padding:2rem;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.75);font-family:var(--font-jp);font-size:.875rem;line-height:1.8;text-align:center}.contact-form__unavailable p+p{margin-top:.75rem}.contact-confirm{margin:2rem 0 0}@media screen and (min-width:768px){.contact-confirm{margin-top:3rem}}.contact-confirm__row{display:grid;gap:.75rem;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.16)}@media screen and (min-width:768px){.contact-confirm__row{grid-template-columns:190px minmax(0, 1fr);gap:2rem;padding:2rem 0}}.contact-confirm__row:first-child{padding-top:0}.contact-confirm__label,.contact-confirm__value{font-family:var(--font-jp);font-size:.875rem;line-height:1.9;letter-spacing:.05em}.contact-confirm__label{color:rgba(255,255,255,.6);font-weight:700}.contact-confirm__value{margin:0;color:#fff;font-weight:500;overflow-wrap:anywhere;white-space:pre-wrap}.contact-button{display:inline-flex;width:100%;min-height:60px;align-items:center;justify-content:center;gap:1.5rem;padding:1rem 1.5rem;border:1px solid #fff;border-radius:999px;font-family:var(--font-jp);font-size:.875rem;font-weight:700;line-height:1;letter-spacing:.06em;cursor:pointer;transition:background-color .3s ease,color .3s ease,opacity .3s ease}@media screen and (min-width:640px){.contact-button{width:min(100%,300px)}}.contact-button--back{background:rgba(0,0,0,0);color:#fff}.contact-button--back:hover{background:rgba(255,255,255,.12)}.contact-button--send,.contact-button--home{background:#fff;color:var(--color-bg)}.contact-button--send:hover,.contact-button--home:hover{background:rgba(0,0,0,0);color:#fff}.contact-button--home{margin-top:2.5rem}.contact-button:disabled{opacity:.55;cursor:wait}.contact-button__arrow{font-family:sans-serif;font-size:1rem}.contact-complete{padding:3rem 1.5rem;border:1px solid rgba(255,255,255,.2);text-align:center}@media screen and (min-width:768px){.contact-complete{padding:5rem 3rem}}.contact-complete__mark{width:64px;margin:0 auto 1.75rem;color:#fff}.contact-complete__mark svg{display:block;width:100%;height:auto}.contact-complete .contact-panel__number{margin-bottom:1rem}.contact-complete__text{margin-top:1.75rem;color:rgba(255,255,255,.75);font-family:var(--font-jp);font-size:.875rem;font-weight:500;line-height:2;letter-spacing:.05em}.contact-complete__text p+p{margin-top:1rem}@keyframes contactPanelFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion: reduce){.contact-panel.is-active{animation:none}}
