.elementor-365 .elementor-element.elementor-element-9492c52{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-365 .elementor-element.elementor-element-8585db1{--display:flex;--min-height:250px;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-365 .elementor-element.elementor-element-8585db1:not(.elementor-motion-effects-element-type-background), .elementor-365 .elementor-element.elementor-element-8585db1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1B3C53ED;}.elementor-365 .elementor-element.elementor-element-da0cb39{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-365 .elementor-element.elementor-element-5a06f00 .elementor-heading-title{font-family:"Zen Kaku Gothic New", Sans-serif;font-size:16px;color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-af472c5 .elementor-heading-title{font-family:"Zen Kaku Gothic New", Sans-serif;font-size:40px;color:#FFFFFF;}.elementor-365 .elementor-element.elementor-element-d29618c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:768px){.elementor-365 .elementor-element.elementor-element-af472c5 .elementor-heading-title{font-size:40px;}}@media(max-width:568px){.elementor-365 .elementor-element.elementor-element-8585db1{--min-height:200px;}.elementor-365 .elementor-element.elementor-element-af472c5 .elementor-heading-title{font-size:32px;}}@media(min-width:321px){.elementor-365 .elementor-element.elementor-element-8585db1{--width:90%;}}@media(max-width:768px) and (min-width:321px){.elementor-365 .elementor-element.elementor-element-8585db1{--width:100%;}}@media(max-width:568px) and (min-width:321px){.elementor-365 .elementor-element.elementor-element-da0cb39{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-9c7c674 *//* 全角ゴシックニューフォントの読み込み */
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
/* Contact Form 7 基本スタイル */
.contact-form {
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    font-family: 'Zen Kaku Gothic New', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic Pro', sans-serif !important;
    color: black !important;
    font-size: 18px !important;
    line-height: 1.6em !important;
    letter-spacing: 0.03em !important;
}
.contact-form p {
    margin-bottom: 20px;
    color: black !important;
}
.contact-form strong {
    color: black !important;
}
.contact-form label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
    color: black !important;
}
.required {
    color: #e74c3c !important;
    font-weight: bold;
    margin-left: 5px;
}
/* フォーム入力フィールド */
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form textarea,
.contact-form select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 0;
    font-size: 14px;
    box-sizing: border-box;
}
.contact-form select {
    background-color: white;
    color: #333;
    font-family: inherit;
}
.contact-form textarea {
    height: 120px;
    resize: vertical;
}
/* プルダウン（セレクト）のスタイリング */
.contact-form select {
    background-color: white;
    color: #333;
    font-family: inherit;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6,9 12,15 18,9'></polyline></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
    padding-right: 40px;
}
/* 注意書き */
.notice {
    color: black !important;
    font-size: 16px;
    margin: 20px 0;
    padding: 0;
}
/* 送信ボタン */
.contact-form input[type="submit"] {
    background-color: #0F162F;
    color: white;
    padding: 15px 60px;
    border: none;
    border-radius: 0;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s;
    width: 200px;
}
.contact-form input[type="submit"]:hover {
    background-color: #0a0f20;
}
/* Elementor用の強制スタイル */
.elementor-widget-html .contact-form,
.elementor-widget-html .contact-form *,
.elementor-widget-html .contact-form p,
.elementor-widget-html .contact-form label,
.elementor-widget-html .contact-form strong {
    color: black !important;
    font-family: 'Zen Kaku Gothic New', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic Pro', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.6em !important;
    letter-spacing: 0.03em !important;
}
/* Contact Form 7のエラーメッセージ */
.wpcf7-not-valid-tip {
    color: #e74c3c !important;
    font-size: 12px;
    display: block;
    margin-top: 5px;
}
.wpcf7-validation-errors {
    color: #e74c3c !important;
    border: 1px solid #e74c3c;
    background-color: #fdf2f2;
    padding: 10px;
    margin: 10px 0;
    border-radius: 0;
}
.wpcf7-mail-sent-ok {
    color: #27ae60 !important;
    border: 1px solid #27ae60;
    background-color: #f0f9f4;
    padding: 10px;
    margin: 10px 0;
    border-radius: 0;
}/* End custom CSS */