@charset "UTF-8";

.page-contact .notes-01 { font-size:14px;}
.page-contact .input-item-01 { font-size:16px;}
.wpcf7-submit.common-button-02 { font-family:"Shippori Mincho","游明朝体","Yu Mincho",YuMincho,"ヒラギノ明朝 Pro","Hiragino Mincho Pro","MS P明朝","MS PMincho",sans-serif; font-weight:400;}
.wpcf7-submit.common-button-02 * { font-family:"Shippori Mincho","游明朝体","Yu Mincho",YuMincho,"ヒラギノ明朝 Pro","Hiragino Mincho Pro","MS P明朝","MS PMincho",sans-serif; font-weight:400;}
input[type=text],
input[type=tel],
input[type=email],
textarea,
.wpcf7 form .wpcf7-response-output,
.page-contact .description-01,
.page-contact .notes-01,
.page-contact .input-item-01 { font-family:"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif; font-weight:300;}
input[type=text] *,
input[type=tel] *,
input[type=email] *,
textarea *,
.wpcf7 form .wpcf7-response-output *,
.page-contact .description-01 *,
.page-contact .notes-01 *,
.page-contact .input-item-01 * { font-family:"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif; font-weight:300;}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus { -webkit-text-fill-color:var(--text-base-color); box-shadow:0 0 0 1000px var(--focus-color-01) inset; background-color:var(--focus-color-01) !important;}
input:focus { background:var(--focus-color-01);}
input::placeholder { color:var(--focus-color-01);}
input[type=text],
input[type=tel],
input[type=email],
textarea { color:var(--text-base-color); border:none; background-color:var(--color-light-gray-01);}
input[type=text],
input[type=tel],
input[type=email] { height:3.125em; padding-bottom:.1em; padding-left:.85em;}
textarea { line-height:1.4; padding-top:.65em; padding-right:.5em; padding-bottom:.7em; padding-left:.85em; height:16.25em;}
textarea:focus { background:var(--focus-color-01);}
.wpcf7-spinner { position:absolute; background-color:hsla(0,0%,100%,
.6); border-radius:0; width:100%; height:100%; left:0; top:0; margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; display:block; opacity:1;}
.wpcf7-spinner::before { background-image:url("../images/common/progress-bar-01.png"); background-size:cover; background-repeat:no-repeat; transform-origin:center; background-color:hsla(0,0%,100%,0); position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:44px; height:44px; margin-top:-22px; margin-left:-22px;}
.wpcf7-submit.common-button-02 { border-radius:3.125em; border-color:var(--text-base-color); letter-spacing:.02em; padding-bottom:.2em; color:var(--text-base-color); transition:background-color 400ms,color 400ms; border-width:1px; background-color:rgba(92,87,84,0);}
.wpcf7-submit.common-button-02:active { color:#fff; background-color:#5c5754;}
.wpcf7-submit.common-button-02:focus { background-color:rgba(92,87,84,0);}
.wpcf7 form .wpcf7-response-output { background-color:var(--color-gold-01); width:100%; margin-top:30px; margin-right:0; margin-bottom:0; margin-left:0; padding-top:0.1em; padding-right:.5em; padding-bottom:0.2em; padding-left:.5em; text-align:center; line-height:1.4; color:#fff; border:none; font-size:.9em;}
.wpcf7 form.invalid .wpcf7-response-output { display:none;}
.common-button-02[disabled] { cursor:default;}
.page-contact .description-01 { letter-spacing:.02em; width:100%; line-height:1.875; margin-bottom:4.5%;}
.page-contact .description-01 .sizeup-01 { width:calc(100% + 4em); font-size:1.4em; margin-bottom:0.3571em; margin-left:-2em; font-weight:400; display:block; letter-spacing:.02em;}
.page-contact .content-form { margin-top:135px; width:100%; position:relative; overflow:hidden;}
.page-contact .form-step { width:100%;}
.page-contact .form-step .form-items { max-width:800px; width:90%; margin-left:auto; margin-right:auto;}
.page-contact #step-confirm .input-item-01 .key-01 { display:block; padding-top:.78em;}
.page-contact #step-confirm .input-item-01 .value-01 { background-color:var(--color-light-gray-01); padding-top:.78em; padding-right:.5em; padding-bottom:.85em; padding-left:.85em; min-height:3.125em; display:flex; align-items:center;}
.page-contact #step-complete .description-01 { text-align:center; margin-bottom:0;}
.page-contact input[type=text],
.page-contact input[type=tel],
.page-contact input[type=email],
.page-contact textarea { width:100%; border:none;}
.page-contact textarea { float:left; height:8.75em;}
.page-contact textarea+.error,
.page-contact textarea+.wpcf7-not-valid-tip { float:left;}
.page-contact .notes-01 { width:100%; letter-spacing:.02em; line-height:1.5;}
.page-contact .notes-01 .required { line-height:.5; font-size:1.5em; position:relative; left:.05em; top:.3em; margin-right:.2em;}
.page-contact .notes-01+.input-item-01 { margin-top:0.75em;}
.page-contact .input-item-01 { width:100%; position:relative; display:flex; justify-content:space-between; align-items:flex-start; padding-top:3.75%; padding-bottom:3.75%;}
.page-contact .input-item-01 .key-01 { width:calc(29.375% - .5em); letter-spacing:.02em;}
.page-contact .input-item-01 .key-01 label { display:block; width:100%; padding-top:.78em;}
.page-contact .input-item-01 .key-01 label strong { display:block;}
.page-contact .input-item-01 .key-01.required label strong::after { content:"*"; margin-left:.1em; position:relative; top:.18em; font-size:1.3em; line-height:.5;}
.page-contact .input-item-01 .value-01 { width:70.625%;}
.page-contact .input-item-01 .error,
.page-contact .input-item-01 .wpcf7-not-valid-tip { margin-top:0.3125em; padding-top:.1em; padding-bottom:.2em; padding-left:.5em; width:100%; background-color:var(--color-gold-01); color:#fff; line-height:1.4; font-size:.9em;}
.page-contact .input-item-01 .error+.error,
.page-contact .input-item-01 .wpcf7-not-valid-tip+.error { margin-top:0.125em;}
.page-contact .input-item-01.last::after { content:"";}
.page-contact .input-item-01:before,
.page-contact .input-item-01::after { display:block; background-color:#d1d1d1; position:absolute; width:100%; height:1px; left:0;}
.page-contact .input-item-01:before { top:0; content:""; transform:scaleY(0.5) translateY(-50%);}
.page-contact .input-item-01::after { bottom:0; transform:scaleY(0.5) translateY(50%);}
.page-contact .button-items-01 { margin-top:60px; width:100%; display:flex; justify-content:center; position:relative;}
.page-contact .button-items-01 .back { padding-right:0; background-color:hsl(0,0%,94%); border-color:hsl(0,0%,86%);}
.page-contact .button-items-01 .back strong { opacity:.9;}
.page-contact .button-items-01 .back:active { background-color:hsl(0,0%,90%); border-color:hsl(0,0%,86%);}
.page-contact .button-items-01 .back:active strong { color:var(--text-base-color);}
.page-contact .button-items-01 .back+.common-button-02 { margin-left:0.625em;}
.page-contact .button-items-01 .link-top { width:16.875em; cursor:pointer;}

@media (max-width:1400px) {
.wpcf7 form .wpcf7-response-output { margin-top:2.1429;}
.page-contact .content-form { margin-top:9.6429%;}
}

@media (max-width:1000px) {
.page-contact .button-items-01 { margin-top:6%;}
}

@media (max-width:768px) {
input[type=text],input[type=tel],input[type=email] { height:3.75em; padding-bottom:.18em;}
textarea { height:8.3333em;}
.page-contact .description-01 { margin-bottom:8.2237%; line-height:1.75;}
.page-contact .content-form { margin-top:9.2448%;}
.page-contact .form-step .form-items { width:79.1667%;}
.page-contact #step-confirm .input-item-01 .key-01 { padding-top:0;}
.page-contact #step-confirm .input-item-01 .value-01 { padding-top:.7em;}
.page-contact .notes-01+.input-item-01 { margin-top:3.7829%;}
.page-contact .input-item-01 { padding-top:6.5789%; padding-bottom:8.2237%; justify-content:flex-start; flex-direction:column;}
.page-contact .input-item-01 .key-01 { width:100%;}
.page-contact .input-item-01 .key-01 label { padding-top:0;}
.page-contact .input-item-01 .value-01 { margin-top:2.4671%; width:100%;}
.page-contact .input-item-01 .error,
.page-contact .input-item-01 .wpcf7-not-valid-tip { padding-top:.05em; padding-bottom:.25em; margin-top:0.2083em;}
.page-contact .input-item-01 .error+.error,
.page-contact .input-item-01 .wpcf7-not-valid-tip+.error { margin-top:0.125em;}
.page-contact .button-items-01 { flex-direction:column; justify-content:flex-start; align-items:center; margin-top:16.4474%;}
.page-contact .button-items-01 .back { order:2;}
.page-contact .button-items-01 .back+.common-button-02 { margin-bottom:0.625em; margin-left:0;}
.page-contact .button-items-01:not(.back) { order:1;}
}

@media (max-width:650px) {
.page-contact .input-item-01 .error,
.page-contact .input-item-01 .wpcf7-not-valid-tip { padding-bottom:.2em;}
}

@media (max-width:500px) {
.page-contact .description-01 .sizeup-01 { width:calc(100% + 1em); margin-left:0;}
.page-contact #step-complete .description-01 { text-align:left;}
}

@media (max-width:320px) {
.page-contact .notes-01 { font-size:10px;}
.page-contact .input-item-01 { font-size:12px;}
}

@media (min-width:768.1px) and (max-width:1378px) {
.page-contact .notes-01 { font-size:calc(10px + (1vw - 7.68px) * .6557);}
.page-contact .input-item-01 { font-size:calc(12px + (1vw - 7.68px) * .6557);}
}

@media (min-width:320.1px) and (max-width:768px) {
.page-contact .notes-01 { font-size:calc(10px + (1vw - 3.2px) * 2.2321);}
.page-contact .input-item-01 { font-size:calc(12px + (1vw - 3.2px) * 2.6786);}
}

@media (hover:hover) and (pointer:fine) {
.wpcf7-submit.common-button-02:hover { color:#fff; background-color:#5c5754;}
.page-contact .button-items-01 .back:hover { background-color:hsl(0,0%,90%); border-color:hsl(0,0%,86%);}
.page-contact .button-items-01 .back:hover strong { color:var(--text-base-color);}
}