.contact-intro{background-color:#fff;border-bottom:2px dashed #d4d0cc;padding:48px 24px}@media screen and (max-width: 580px){.contact-intro{padding:32px 20px 40px}}.contact-intro-inner{max-width:1280px;padding:0}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-intro-inner{max-width:880px}}.contact-title{font-size:3.2rem;font-weight:bold;text-align:center;margin-bottom:32px}@media screen and (max-width: 580px){.contact-title{font-size:2.2rem;line-height:1.6;margin-bottom:24px}}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-title{font-size:2.6rem;line-height:1.6}}.contact-intro-photos{display:grid;grid-template-columns:repeat(3, 1fr);gap:16px}.contact-intro-photos img{aspect-ratio:16/9;border-radius:12px;-o-object-fit:cover;object-fit:cover}@media screen and (max-width: 580px){.contact-intro-photos{grid-template-columns:repeat(2, 1fr);gap:12px}.contact-intro-photos img{aspect-ratio:4/3}.contact-intro-photos img:first-child{grid-column:1/-1;aspect-ratio:16/9}}.contact-intro-lead{color:#d6838b;font-size:2.2rem;font-weight:bold;line-height:2;text-align:center;margin:32px 0}@media screen and (max-width: 580px){.contact-intro-lead{font-size:1.7rem;line-height:1.8;text-align:left;margin:24px 0}}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-intro-lead{font-size:2rem;line-height:1.8}}.contact-intro-text{color:#555;font-size:1.6rem;font-weight:bold;line-height:2;text-align:center}@media screen and (max-width: 580px){.contact-intro-text{font-size:1.5rem;font-weight:normal;line-height:1.9;text-align:left}}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-intro-text{font-weight:normal;line-height:1.9}}.contact-trial{background-color:#fff;padding:56px 24px}.contact-trial .contact-title{color:#555}.contact-trial .contact-links{margin:24px auto 0}@media screen and (max-width: 580px){.contact-trial{padding:40px 20px}}.contact-trial-time::before{left:32%}.contact-trial-time dt{width:32%}.contact-trial-time dd{width:68%}.contact-trial-time small{font-size:1.6rem}@media screen and (max-width: 580px){.contact-trial-time small{display:block;font-size:1.4rem}}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-trial-time small{display:block;font-size:1.4rem}}.contact-inquiry{overflow:hidden;position:relative;background-color:#f8f5f0;padding:64px 24px}.contact-inquiry::after{content:"";pointer-events:none;position:absolute;right:0;bottom:24px;width:30%;max-width:500px;height:240px;background:url("../../images/image/illust0104.webp") no-repeat center/contain}.contact-inquiry .section-title-icon{margin-bottom:40px}@media screen and (max-width: 1040px){.contact-inquiry{padding-bottom:184px}.contact-inquiry::after{right:16px;width:280px;height:136px}}@media screen and (max-width: 580px){.contact-inquiry{padding:40px 20px 160px}.contact-inquiry::after{width:240px;height:112px}.contact-inquiry .section-title-icon{margin-bottom:24px}}.contact-form-inner{position:relative;z-index:1;max-width:840px;padding:0}@media screen and (max-width: 1040px)and (min-width: 581px){.contact-form-inner{max-width:800px}}.contact-form-note{color:#555;font-size:1.6rem;font-weight:bold;line-height:1.8;text-align:center;margin-bottom:40px}@media screen and (max-width: 580px){.contact-form-note{font-size:1.5rem;font-weight:normal;text-align:left;margin-bottom:24px}}.contact-required,.contact-optional{flex-shrink:0;min-width:56px;background-color:#d6838b;border-radius:3px;color:#fff;font-size:1.2rem;font-weight:bold;text-align:center;padding:2px 8px}.contact-optional{background-color:#ada6a1}.contact-form-row{display:grid;grid-template-columns:240px 1fr;align-items:start;gap:24px;border-bottom:1px dashed #d4d0cc;padding:10px 40px}.contact-form-row>div{min-width:0}@media screen and (max-width: 1040px){.contact-form-row{grid-template-columns:1fr;gap:12px;padding:16px 0}}@media screen and (max-width: 1040px)and (min-width: 581px)and (min-width: 741px){.contact-form-row{grid-template-columns:208px minmax(0, 1fr);gap:24px}}.contact-form-label{display:flex;align-items:center;gap:12px;font-size:1.6rem;font-weight:bold;padding-top:8px}@media screen and (max-width: 1040px){.contact-form-label{padding-top:0}}@media screen and (max-width: 1040px)and (min-width: 581px)and (min-width: 741px){.contact-form-label{padding-top:8px}}.contact-form-input{width:100%;min-width:0;background-color:#fff;border:1px solid #bcb3ae;border-radius:4px;color:#555;font:inherit;font-size:1.6rem;padding:8px 12px;transition:border-color .24s ease,box-shadow .24s ease}.contact-form-input::-moz-placeholder{color:#b5aea9;opacity:1}.contact-form-input::placeholder{color:#b5aea9;opacity:1}.contact-form-input:focus-visible{border-color:#80b0a9;box-shadow:0 0 0 3px rgba(128,176,169,.12);outline:2px solid #80b0a9;outline-offset:2px}textarea.contact-form-input{resize:vertical}.contact-form-help{font-size:1.2rem;margin-top:4px}.contact-form-options{display:flex;flex-wrap:wrap;gap:16px 24px;padding:8px 0}.contact-form-options label{display:flex;align-items:flex-start;gap:8px;font-size:1.6rem;font-weight:bold}.contact-form-options .wpcf7-form-control{display:flex;flex-wrap:wrap;gap:16px 24px}.contact-form-options .wpcf7-list-item{margin:0}.contact-form-options input,.contact-form-agree input{flex-shrink:0;width:20px;height:20px;accent-color:#d6838b;margin:2px 0 0}.contact-form-courses{flex-direction:column;gap:12px}.contact-form-courses .wpcf7-checkbox{flex-direction:column;gap:12px}.contact-form-privacy{text-align:center;margin-top:40px}.contact-form-policy{display:inline-block;max-width:100%;background-color:#8b7b77;border:0;border-radius:3px;color:#fff;font:inherit;font-size:1.6rem;font-weight:bold;padding:12px 24px}.contact-form-agree{display:flex;justify-content:center;align-items:flex-start;gap:8px;font-size:1.6rem;font-weight:bold;margin-top:16px}.contact-form-agree label{display:flex;align-items:flex-start;gap:8px}.contact-form-agree .wpcf7-list-item{margin:0}.contact-form-button{cursor:pointer;display:block;width:416px;max-width:100%;background-color:#d6838b;border:0;border-radius:40px;color:#fff;font:inherit;font-size:1.8rem;font-weight:bold;padding:18px 24px;margin:32px auto 0;transition:background-color .24s ease,box-shadow .24s ease,transform .32s var(--motion-ease)}.contact-form-button:hover:not(:disabled){box-shadow:0 6px 16px rgba(70,52,53,.14);transform:translateY(-2px)}.contact-form-button:active:not(:disabled){transform:none}@media(prefers-reduced-motion: reduce){.contact-form-button:hover:not(:disabled){transform:none}}body:has(.contact-error[open]){overflow:hidden}.contact-error{width:calc(100% - 40px);max-width:560px;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;background-color:#fff;border:0;border-radius:20px;box-shadow:0 16px 64px rgba(70,52,53,.2);color:#463435;font-size:1.6rem;line-height:1.8;text-align:center;padding:32px;margin:auto}.contact-error[open]{display:flex;flex-direction:column}@media(prefers-reduced-motion: no-preference){.contact-error[open]{animation:contact-error-open .32s var(--motion-ease)}.contact-error[open]::backdrop{animation:contact-backdrop-open .32s ease}.contact-error.is-closing{animation:contact-error-close .2s ease-in forwards}.contact-error.is-closing::backdrop{animation:contact-backdrop-close .2s ease-in forwards}}.contact-error>*{flex-shrink:0}.contact-error::backdrop{background-color:rgba(70,52,53,.5)}.contact-error .contact-form-button{width:100%;margin-top:24px}.contact-error .contact-form-button:focus-visible{outline:2px solid #80b0a9;outline-offset:4px}.contact-error.is-success .contact-error-icon{background-color:rgba(111,188,160,.15)}.contact-error.is-success .contact-error-icon,.contact-error.is-success .contact-error-title{color:#6fbca0}.contact-error.is-success .contact-form-button{background-color:#6fbca0}@media screen and (max-width: 580px){.contact-error{font-size:1.5rem;padding:24px 20px}}.contact-error-icon{display:flex;justify-content:center;align-items:center;width:48px;height:48px;background-color:#f5eee9;border-radius:50%;color:#d6838b;font-size:2.8rem;font-weight:bold;margin:0 auto 16px}.contact-error-title{color:#d6838b;font-size:2.4rem;font-weight:bold;line-height:1.6;margin-bottom:12px}.contact-error-title span{display:inline-block}@media screen and (max-width: 580px){.contact-error-title{font-size:2rem}}.contact-error-list{flex-shrink:1;min-height:0;overflow:auto;overscroll-behavior:contain;background-color:#f8f5f0;border-radius:8px;text-align:left;padding:16px 20px 16px 36px;margin-top:20px}.contact-error-list li{list-style-type:disc}.contact-error-list li+li{margin-top:8px}@keyframes contact-error-open{from{opacity:0;transform:translateY(12px) scale(0.98)}to{opacity:1;transform:none}}@keyframes contact-error-close{from{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(0.98)}}@keyframes contact-backdrop-open{from{opacity:0}to{opacity:1}}@keyframes contact-backdrop-close{from{opacity:1}to{opacity:0}}