.elementor-7049 .elementor-element.elementor-element-5d07597{--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-7049 .elementor-element.elementor-element-8d7e226{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-7049 .elementor-element.elementor-element-1568c6a.elementor-element{--align-self:flex-start;}.elementor-7049 .elementor-element.elementor-element-1568c6a .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:34px;font-weight:600;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );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-7049 .elementor-element.elementor-element-ff215fc{font-family:"Noto Sans JP", Sans-serif;font-size:16px;font-weight:400;}.elementor-7049 .elementor-element.elementor-element-692e7bd{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-7049 .elementor-element.elementor-element-5d07597{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-7049 .elementor-element.elementor-element-8d7e226{--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-7049 .elementor-element.elementor-element-1568c6a .elementor-heading-title{font-size:22px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-7049 .elementor-element.elementor-element-ff215fc{font-size:12px;}.elementor-7049 .elementor-element.elementor-element-692e7bd{--gap:10px 10px;--row-gap:10px;--column-gap:10px;}}@media(min-width:768px){.elementor-7049 .elementor-element.elementor-element-5d07597{--content-width:1250px;}.elementor-7049 .elementor-element.elementor-element-692e7bd{--width:600px;}}@media(max-width:1024px) and (min-width:768px){.elementor-7049 .elementor-element.elementor-element-5d07597{--content-width:700px;}.elementor-7049 .elementor-element.elementor-element-692e7bd{--width:600px;}}@media(max-width:767px){.elementor-7049 .elementor-element.elementor-element-5d07597{--content-width:320px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-7049 .elementor-element.elementor-element-8d7e226{--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-7049 .elementor-element.elementor-element-1568c6a .elementor-heading-title{font-size:18px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-7049 .elementor-element.elementor-element-ff215fc{font-size:8px;}.elementor-7049 .elementor-element.elementor-element-692e7bd{--width:300px;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}}/* Start custom CSS for heading, class: .elementor-element-1568c6a */.title-reveal{
position:relative;
display:inline-block;
overflow:hidden;
width:fit-content;
padding-left:18px;
}

/* 縦線 */
.title-reveal::before{
content:"";
position:absolute;
left:0;
top:0;
width:8px;
height:100%;
background:#FF9500;
border-radius:2px;
z-index:3;
}

/* マスク（最前面に置く） */
.title-reveal::after{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:#FF9500;

/* ←ここが最重要 */
z-index:10;

opacity:0;
transform:translateX(0);
}

/* 発火 */
.title-reveal.is-animated::after{
animation:
  fadeIn 0.4s ease forwards,
  slideOut 0.7s ease 0.4s forwards;
}

/* フェードイン */
@keyframes fadeIn{
0%{ opacity:0; }
100%{ opacity:1; }
}

/* スライド */
@keyframes slideOut{
0%{ transform:translateX(0); }
100%{ transform:translateX(101%); } /* ←100%だと端が残るので101% */
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-08f4dfb *//* Google Fontsの読み込み */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');

/* =================================================
   全体フォント設定（WEB・タブレット）
================================================= */
.inquiry {
    font-family: 'Noto Sans JP', serif;
    font-size: 12px;
}

/* =================================================
   テーブル基本
================================================= */
.inquiry th,
.inquiry td {
    font-size: 12px;
    background: #f7f7f7;
    border: 1px solid #d7d7d7;
    padding: 10px 8px;
}

.inquiry th {
    text-align: left;
    color: #333;
    width: 30%;
}

.entry-content .inquiry tr,
.entry-content table {
    border: 1px solid #d7d7d7;
}

/* =================================================
   必須・任意マーク
================================================= */
.haveto {
    font-size: 9px;
    padding: 4px;
    background: #FF9500;
    color: #ffffff;
    border-radius: 2px;
    margin-right: 4px;
    position: relative;
    bottom: 1px;
}

.optional {
    font-size: 9px;
    padding: 4px;
    background: #B8B8B8;
    color: #333333;
    border-radius: 2px;
    margin-right: 4px;
    position: relative;
    bottom: 1px;
}

/* =================================================
   フォーム要素
================================================= */
.verticallist .wpcf7-list-item {
    display: block;
}

.inquiry input,
.inquiry select,
.inquiry textarea {
    font-size: 12px;
    padding: 6px;
}

/* 姓・名 縦並び */
.name-flex {
    display: block;
}
.name-flex .wpcf7-form-control-wrap:first-child {
    margin-bottom: 10px;
}
.name-flex .wpcf7-form-control-wrap:last-child {
    margin-top: 10px;
}

/* =================================================
   同意文・チェックボックス文章（★ここ重要）
================================================= */
.wpcf7-acceptance,
.wpcf7-acceptance label,
.wpcf7-list-item-label,
.wpcf7-form p {
    font-size: 14px;
    line-height: 1.6;
    color: #333;
}

/* =================================================
   送信ボタン
================================================= */
#formbtn,
.wpcf7 input[type="submit"] {
    display: block;
    width: 220px;
    padding: 12px;
    background: #FF9500 !important;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: bold;
    border: 1px solid #ffffff !important;
    border-radius: 40px;
    margin: 20px auto 0;
    font-family: 'Noto Sans JP', serif;
    box-shadow: 0 5px 0 0 #FF950050;
    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border 0.3s ease;
}

/* ホバー時（浮き上がる） */
#formbtn:hover,
.wpcf7 input[type="submit"]:hover {
    background: #FFFFFF !important;
    color: #FF9500 !important;
    border: 1px solid #FF9500 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 0 0 #FF950050;
}

/* =================================================
   テーブル行背景
================================================= */
.inquiry tr:nth-child(odd),
.inquiry tr:nth-child(even) {
    background-color: #ffffff;
}

/* 参加費欄 */
.inquiry .participant-fee td {
    color: #333333;
    font-weight: normal;
    font-size: 12px;
}

.inquiry .participant-fee td .total-amount {
    color: #FF9500;
    font-weight: bold;
    font-size: 14px;
}

/* =================================================
   レスポンシブ（モバイル）
================================================= */
@media (max-width: 500px) {
    .inquiry {
        font-size: 10px;
    }

    .inquiry th,
    .inquiry td,
    .inquiry input,
    .inquiry select,
    .inquiry textarea,
    .wpcf7-acceptance,
    .wpcf7-acceptance label,
    .wpcf7-list-item-label,
    .wpcf7-form p {
        font-size: 10px;
    }

    .inquiry th,
    .inquiry td {
        display: block !important;
        width: 100% !important;
        border-top: none !important;
        box-sizing: border-box !important;
    }

    .inquiry tr:first-child th {
        border-top: 1px solid #d7d7d7 !important;
    }
}/* End custom CSS */