.elementor-63 .elementor-element.elementor-element-f73ab1d{--display:flex;--min-height:506px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-63 .elementor-element.elementor-element-f73ab1d:not(.elementor-motion-effects-element-type-background), .elementor-63 .elementor-element.elementor-element-f73ab1d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://hkmk.jp/wp-content/uploads/2026/08/7ea5c8ab5e55ea49ea01717f58c9ff08.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-63 .elementor-element.elementor-element-e9c6651{--display:flex;--justify-content:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0250px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-d905a51 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:50px;font-weight:700;color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-7579ba7 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:19px;font-weight:700;color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-a544a1a{--display:flex;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:15px;--padding-bottom:15px;--padding-left:0px;--padding-right:0px;}.elementor-63 .elementor-element.elementor-element-fb5c490{text-align:center;}.elementor-63 .elementor-element.elementor-element-fb5c490 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:31px;font-weight:700;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-71f6ea3{text-align:center;color:var( --e-global-color-secondary );}.elementor-63 .elementor-element.elementor-element-1f7d3e6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-63 .elementor-element.elementor-element-310647c{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-988f409{text-align:center;}.elementor-63 .elementor-element.elementor-element-988f409 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:18px;font-weight:700;}.elementor-63 .elementor-element.elementor-element-edbca96{text-align:center;}.elementor-63 .elementor-element.elementor-element-edbca96 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:42px;font-weight:700;}.elementor-63 .elementor-element.elementor-element-9f5f926{text-align:center;color:var( --e-global-color-secondary );}.elementor-63 .elementor-element.elementor-element-8e34be1{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-2fa922d{text-align:center;}.elementor-63 .elementor-element.elementor-element-2fa922d .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:18px;font-weight:700;}.elementor-63 .elementor-element.elementor-element-7098b29{text-align:center;color:var( --e-global-color-secondary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-63 .elementor-element.elementor-element-aee518d .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );fill:var( --e-global-color-b811ea7 );color:var( --e-global-color-b811ea7 );}.elementor-63 .elementor-element.elementor-element-5268c9c{--display:flex;--gap:15px 15px;--row-gap:15px;--column-gap:15px;}.elementor-63 .elementor-element.elementor-element-01d2ba7{text-align:center;}.elementor-63 .elementor-element.elementor-element-01d2ba7 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:31px;font-weight:700;color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-457d87b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-63 .elementor-element.elementor-element-457d87b:not(.elementor-motion-effects-element-type-background), .elementor-63 .elementor-element.elementor-element-457d87b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-d5957f1 );}.elementor-63 .elementor-element.elementor-element-beecb3f{--display:flex;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-63 .elementor-element.elementor-element-beecb3f.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-22ed77f .elementor-icon-wrapper{text-align:center;}.elementor-63 .elementor-element.elementor-element-bca5de4{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:14px 14px;--row-gap:14px;--column-gap:14px;}.elementor-63 .elementor-element.elementor-element-d9e9e09{text-align:center;}.elementor-63 .elementor-element.elementor-element-d9e9e09 .elementor-heading-title{font-family:"Noto Serif JP", Sans-serif;font-size:25px;font-weight:700;color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-f000203{text-align:start;color:var( --e-global-color-secondary );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-63 .elementor-element.elementor-element-beecb3f{--width:38.022%;}}/* Start custom CSS for shortcode, class: .elementor-element-84c0f02 *//* =========================================================
   はかま建設
   Contact Form 7
========================================================= */

.hakama-cf7 {
    width: 100%;
    max-width: 1080px;
    margin-right: auto;
    margin-left: auto;
    color: #333333;
    font-family:
        "Noto Sans JP",
        "Yu Gothic",
        "YuGothic",
        "Hiragino Sans",
        sans-serif;
}

.hakama-cf7 p {
    margin: 0;
}

/* 各入力行 */
.hakama-cf7__row {
    display: grid;
    grid-template-columns: 245px minmax(0, 1fr);
    gap: 34px;
    align-items: center;
    margin-bottom: 22px;
}

.hakama-cf7__row--textarea {
    align-items: start;
}

/* ラベル */
.hakama-cf7__label {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(31, 74, 54, 0.14);
    color: #333333;
    font-family:
        "Noto Serif JP",
        "Yu Mincho",
        "YuMincho",
        serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.08em;
}

.hakama-cf7__required {
    display: inline-flex;
    min-width: 42px;
    min-height: 23px;
    align-items: center;
    justify-content: center;
    padding: 3px 7px;
    color: #ffffff;
    background-color: #9b7438;
    font-family:
        "Noto Sans JP",
        "Yu Gothic",
        sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

/* 入力欄 */
.hakama-cf7__field {
    min-width: 0;
}

.hakama-cf7__field .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.hakama-cf7 input[type="text"],
.hakama-cf7 input[type="email"],
.hakama-cf7 input[type="tel"],
.hakama-cf7 select,
.hakama-cf7 textarea {
    width: 100%;
    margin: 0;
    border: 1px solid #cbc9c3;
    border-radius: 0;
    color: #333333;
    background-color: #ffffff;
    font-family:
        "Noto Sans JP",
        "Yu Gothic",
        sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0.03em;
    box-shadow: none;
    outline: none;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.hakama-cf7 input[type="text"],
.hakama-cf7 input[type="email"],
.hakama-cf7 input[type="tel"],
.hakama-cf7 select {
    height: 54px;
    padding: 0 18px;
}

.hakama-cf7 textarea {
    min-height: 170px;
    padding: 17px 18px;
    resize: vertical;
}

.hakama-cf7 input::placeholder,
.hakama-cf7 textarea::placeholder {
    color: #aaa9a4;
    opacity: 1;
}

.hakama-cf7 input:focus,
.hakama-cf7 select:focus,
.hakama-cf7 textarea:focus {
    border-color: #1f4a36;
    background-color: #ffffff;
    box-shadow: 0 0 0 2px rgba(31, 74, 54, 0.08);
}

/* セレクト */
.hakama-cf7__select {
    position: relative;
}

.hakama-cf7__select::after {
    position: absolute;
    top: 50%;
    right: 18px;
    color: #333333;
    content: "▼";
    font-size: 10px;
    line-height: 1;
    pointer-events: none;
    transform: translateY(-50%);
}

.hakama-cf7 select {
    padding-right: 48px;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

/* プライバシーポリシー */
.hakama-cf7__privacy {
    margin-top: 30px;
    margin-left: 279px;
    color: #444444;
    font-size: 13px;
    line-height: 1.8;
}

.hakama-cf7__privacy .wpcf7-list-item {
    margin: 0;
}

.hakama-cf7__privacy label {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    cursor: pointer;
}

.hakama-cf7__privacy input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #1f4a36;
}

.hakama-cf7__privacy a {
    color: #1f4a36;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.hakama-cf7__privacy a:hover {
    color: #b8a06b;
}

/* 送信ボタン */
.hakama-cf7__submit {
    position: relative;
    max-width: 520px;
    margin-top: 22px;
    margin-left: 279px;
}

.hakama-cf7__submit .wpcf7-submit,
.hakama-cf7__submit-button {
    width: 100%;
    min-height: 62px;
    margin: 0;
    padding: 15px 34px;
    border: 1px solid #1f4a36;
    border-radius: 0;
    color: #ffffff;
    background-color: #1f4a36;
    font-family:
        "Noto Serif JP",
        "Yu Mincho",
        serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.12em;
    cursor: pointer;
    transition:
        color 0.3s ease,
        background-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.hakama-cf7__submit .wpcf7-submit:hover,
.hakama-cf7__submit-button:hover {
    color: #ffffff;
    background-color: #173629;
    box-shadow: 0 10px 24px rgba(23, 54, 41, 0.18);
    transform: translateY(-2px);
}

.hakama-cf7__submit .wpcf7-spinner {
    position: absolute;
    top: 50%;
    right: 18px;
    margin: 0;
    transform: translateY(-50%);
}

/* 入力エラー */
.hakama-cf7 .wpcf7-not-valid {
    border-color: #b63a32 !important;
}

.hakama-cf7 .wpcf7-not-valid-tip {
    margin-top: 7px;
    color: #b63a32;
    font-size: 12px;
    line-height: 1.6;
}

.hakama-cf7 .wpcf7-response-output {
    margin: 28px 0 0 !important;
    padding: 15px 18px !important;
    border: 1px solid #1f4a36 !important;
    color: #333333;
    background-color: #f8f8f3;
    font-size: 13px;
    line-height: 1.8;
}

/* タブレット */
@media screen and (max-width: 1024px) {

    .hakama-cf7__row {
        grid-template-columns: 200px minmax(0, 1fr);
        gap: 25px;
    }

    .hakama-cf7__privacy,
    .hakama-cf7__submit {
        margin-left: 225px;
    }
}

/* スマートフォン */
@media screen and (max-width: 767px) {

    .hakama-cf7__row {
        display: block;
        margin-bottom: 22px;
    }

    .hakama-cf7__label {
        min-height: 0;
        margin-bottom: 9px;
        padding-bottom: 8px;
        font-size: 14px;
    }

    .hakama-cf7 input[type="text"],
    .hakama-cf7 input[type="email"],
    .hakama-cf7 input[type="tel"],
    .hakama-cf7 select {
        height: 52px;
        padding: 0 14px;
        font-size: 14px;
    }

    .hakama-cf7 textarea {
        min-height: 160px;
        padding: 14px;
        font-size: 14px;
    }

    .hakama-cf7__privacy,
    .hakama-cf7__submit {
        margin-left: 0;
    }

    .hakama-cf7__privacy {
        margin-top: 26px;
        font-size: 12px;
    }

    .hakama-cf7__submit {
        max-width: none;
    }

    .hakama-cf7__submit .wpcf7-submit,
    .hakama-cf7__submit-button {
        min-height: 56px;
        padding: 13px 20px;
        font-size: 15px;
    }
}/* End custom CSS */