@charset "utf-8";

html{scroll-behavior:auto}

.vv-contact-intro-text{line-height:2.15;margin:0 0 1.5em}

.vv-note-list{line-height:1.95;color:var(--stone-text)}

.vv-note-list-item::before{content:"※";position:absolute;left:0}

.vv-route-label{font-family:var(--font-en);line-height:1.6;text-transform:uppercase;color:var(--wine);margin:0 0-8px}

.vv-route .vv-text-link{font-size:14px;letter-spacing:.06em}

.vv-form-layout{display:grid;align-items:start;column-gap:48px;grid-template-columns:minmax(0,1fr);row-gap:48px}

.vv-form-intro-text{line-height:2.1;margin:0}

.vv-contact-steps{border-top:1px solid var(--ink-line-strong)}

.vv-contact-step{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:12px;border-bottom:1px solid var(--ink-line);padding:14px 0}

.vv-contact-step-no{font-family:var(--font-en);line-height:1.2;color:var(--wine);margin:0}

.vv-contact-step-title{line-height:1.7}

.vv-contact-step-text{line-height:1.9;color:var(--stone-text-deep);margin:4px 0 0}

.vv-form .vv-form-container{max-width:none;padding:0}

.vv-form .formRow{display:block;margin:0 0 26px}

.vv-form .formTh{max-width:none;padding:0;display:flex;align-items:center;row-gap:10px;column-gap:10px;margin:0 0 8px}

.vv-form .formTd{max-width:none;padding:0}

.vv-form .formBtnTd{max-width:none;padding:0;display:flex;flex-wrap:wrap;align-items:center;row-gap:16px;column-gap:24px}

.vv-form .labelText01{margin:0;font-size:14px;line-height:1.6;letter-spacing:.08em}

.vv-form .requiredText{margin:0;font-size:12px;line-height:1.6;letter-spacing:.12em;color:var(--wine)}

.vv-form .anyText{margin:0;font-size:12px;line-height:1.6;letter-spacing:.12em;color:var(--stone-text-deep)}

.vv-form .formInput{display:block;width:100%;font-family:inherit;font-size:16px;line-height:1.6;padding:12px 14px;border:1px solid rgba(20,18,20,.4);background:rgba(255,255,255,.6);color:var(--ink);appearance:none;-webkit-appearance:none;transition-property:border-color,background-color;transition-duration:.3s,.3s;transition-timing-function:ease,ease;transition-delay:0s,0s}

.vv-form .formSelect{display:block;width:100%;font-family:inherit;font-size:16px;line-height:1.6;padding:12px 14px;border:1px solid rgba(20,18,20,.4);background:rgba(255,255,255,.6);color:var(--ink);appearance:none;-webkit-appearance:none;transition-property:border-color,background-color;transition-duration:.3s,.3s;transition-timing-function:ease,ease;transition-delay:0s,0s;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}

.vv-form .formTextArea{min-height:170px;resize:vertical}

.vv-form .formInput:focus{border-color:var(--ink);background-color:rgba(255,255,255,.85);outline-width:2px;outline-style:solid;outline-color:var(--wine);outline-offset:2px}

.vv-form .formSelect:focus{border-color:var(--ink);background-color:rgba(255,255,255,.85);outline-width:2px;outline-style:solid;outline-color:var(--wine);outline-offset:2px}

.vv-form .formHelp{margin:8px 0 0;font-size:13px;line-height:1.8;color:var(--stone-text-deep)}

.vv-form .pp-consent{display:flex;align-items:center;row-gap:10px;column-gap:10px}

.vv-form .formCheck{width:18px;height:18px;margin:0;accent-color:var(--wine)}

.vv-form .privacyLabel{margin:0;font-size:14px;line-height:1.9}

.vv-form .pp-accordion{margin-top:12px}

.vv-form .pp-toggle{position:absolute;width:1px;height:1px;margin:0;opacity:0}

.vv-form .pp-toggle-label{display:inline-flex;align-items:center;margin:0;cursor:pointer;color:var(--wine);font-size:13px;line-height:1.8;letter-spacing:.06em;border-bottom:1px solid currentColor}

.vv-form .pp-toggle-label::after{content:"";width:7px;height:7px;margin-left:10px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg);transition-property:transform;transition-duration:.2s;transition-timing-function:ease;transition-delay:0s}

.vv-form .pp-toggle:checked~.pp-toggle-label::after{transform:translateY(2px) rotate(-135deg)}

.vv-form .pp-toggle:focus-visible~.pp-toggle-label{outline-width:2px;outline-style:solid;outline-color:var(--wine);outline-offset:3px}

.vv-form .pp-body{display:none;margin-top:12px;padding:20px 22px;background:rgba(255,255,255,.6);border:1px solid var(--ink-line);max-height:360px;overflow-y:auto;text-align:left}

.vv-form .pp-toggle:checked~.pp-body{display:block}

.vv-form .pp-lead{margin:0 0 10px;font-size:12.5px;line-height:1.9;color:var(--stone-text-deep)}

.vv-form .pp-p{margin:0 0 10px;font-size:12.5px;line-height:1.9;color:var(--stone-text-deep)}

.vv-form .pp-h{margin:18px 0 6px;font-size:13.5px;line-height:1.8;letter-spacing:.04em;color:var(--ink)}

.vv-form .pp-sub{margin:10px 0 4px;font-size:12.5px;line-height:1.8;color:var(--ink)}

.vv-form .pp-li{margin:0 0 3px;padding-left:12px;font-size:12.5px;line-height:1.85;color:var(--stone-text-deep)}

.vv-form .pp-date{margin:14px 0 0;font-size:12.5px;line-height:1.8;color:var(--stone-text-deep);text-align:right}

.vv-form .pp-date+.pp-date{margin-top:0}

.vv-form .vv-form-actions{margin:32px 0 0}

.vv-form .submitBtn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:10px 48px;border:1px solid var(--wine);background:var(--wine);color:var(--paper);font-family:inherit;font-size:15px;letter-spacing:.2em;line-height:1.5;cursor:pointer;transition-property:background-color,border-color;transition-duration:.45s,.45s;transition-timing-function:ease,ease;transition-delay:0s,0s;width:100%}

.vv-form .submitBtn:hover{background:var(--wine-light);border-color:var(--wine-light)}

.vv-form .formError .formErrorContent{background:var(--wine)}

.vv-form .vv-form-after{margin:0}

.vv-form .formRow{margin-bottom:22px}

@media (min-width:768px){.vv-form .submitBtn{width:auto}}

@media (min-width:768px){.vv-contact-step-no{font-family:var(--font-en);line-height:1.2}}

@media (min-width:768px){.vv-contact-step-title{line-height:1.7}}

@media (min-width:768px){.vv-contact-step-text{line-height:1.9}}

@media (min-width:768px){.vv-form .formRow{margin:0 0 26px}}

@media (min-width:768px){.vv-form .formTh{margin:0 0 8px}}

@media (min-width:768px){.vv-form .labelText01{margin:0}}

@media (min-width:768px){.vv-form .requiredText{margin:0}}

@media (min-width:768px){.vv-form .anyText{margin:0}}

@media (min-width:768px){.vv-form .formInput{width:100%}}

@media (min-width:768px){.vv-form .formSelect{width:100%}}

@media (min-width:768px){.vv-form .formHelp{margin:8px 0 0}}

@media (min-width:768px){.vv-form .formCheck{margin:0;width:18px}}

@media (min-width:768px){.vv-form .privacyLabel{margin:0}}

@media (min-width:768px){.vv-form .pp-accordion{margin-top:12px}}

@media (min-width:768px){.vv-form .pp-toggle{margin:0;width:1px}}

@media (min-width:768px){.vv-form .pp-toggle-label{margin:0}}

@media (min-width:768px){.vv-form .pp-body{margin-top:12px}}

@media (min-width:768px){.vv-form .pp-lead{margin:0 0 10px}}

@media (min-width:768px){.vv-form .pp-p{margin:0 0 10px}}

@media (min-width:768px){.vv-form .pp-h{margin:18px 0 6px}}

@media (min-width:768px){.vv-form .pp-sub{margin:10px 0 4px}}

@media (min-width:768px){.vv-form .pp-li{margin:0 0 3px}}

@media (min-width:768px){.vv-form .pp-date{margin:14px 0 0}}

@media (min-width:768px){.vv-form .vv-form-actions{margin:32px 0 0}}

@media (min-width:768px){.vv-form .vv-form-after{margin:0}}

@media (min-width:1024px){.vv-form-layout{grid-template-columns:minmax(0,4fr) minmax(0,8fr);row-gap:normal;column-gap:48px}}

@media (min-width:1024px){.vv-contact-step{grid-template-columns:48px minmax(0,1fr)}}

@media (min-width:1280px){.vv-form-layout{column-gap:80px}}

@media (min-width:1280px){.vv-contact-step{column-gap:12px}}

.vv-note-list-item{margin:0;padding-left:1.2em}

@media (min-width:768px){.vv-contact-step{padding:18px 0}}

body .vv-contact-intro-text{font-size:15.5px}

body .vv-note-list{font-size:13.5px;margin-top:24px}

body .vv-route-label{font-size:12.5px;letter-spacing:.3em}

body .vv-form-intro-text{font-size:15px}

body .vv-contact-step-title{font-size:15px;letter-spacing:.08em}

body .vv-contact-step-text{font-size:13.5px}

body .vv-contact-step-no{font-size:21px;letter-spacing:.04em}

body .vv-note-list-item{position:relative}

body .vv-contact-steps{margin-top:36px}

body .vv-form-card{max-width:880px}

@media (min-width:768px){body .vv-contact-step-no{font-size:24px}}

*{box-sizing:border-box}

body{margin:0}

*{box-sizing:border-box}

body{margin:0}
