.elementor-3901 .elementor-element.elementor-element-575edf1 > .elementor-container{max-width:1300px;min-height:500px;}.elementor-3901 .elementor-element.elementor-element-575edf1:not(.elementor-motion-effects-element-type-background), .elementor-3901 .elementor-element.elementor-element-575edf1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://demo-855334.shp40.com/wp-content/uploads/2025/12/aceea0d7-b0be-46e4-9610-f44275cc4f13-2.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-3901 .elementor-element.elementor-element-575edf1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-3901 .elementor-element.elementor-element-575edf1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-3901 .elementor-element.elementor-element-16972cb.elementor-column .elementor-widget-wrap{align-items:flex-end;}.elementor-3901 .elementor-element.elementor-element-16972cb.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-end;align-items:flex-end;}.elementor-3901 .elementor-element.elementor-element-16972cb > .elementor-element-populated{padding:0px 0px 55px 160px;}.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button{height:50px;width:250px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:inline-flex;font-family:"Urbanist", Sans-serif;font-size:19px;font-weight:700;text-transform:uppercase;line-height:1.2em;letter-spacing:1.3px;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );background-color:var( --e-global-color-secondary );border-style:none;border-radius:0px 0px 0px 0px;padding:1px 0px 0px 10px;}.elementor-3901 .elementor-element.elementor-element-dda9996 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;background-color:#FFFFFF;transition:background 0.4s;border-radius:0px 0px 0px 0px;}.elementor-3901 .elementor-element.elementor-element-dda9996{width:var( --container-widget-width, 250px );max-width:250px;--container-widget-width:250px;--container-widget-flex-grow:0;}.elementor-3901 .elementor-element.elementor-element-dda9996.ha-has-bg-overlay > .elementor-widget-container:before{transition:background 0.3s;}.elementor-3901 .elementor-element.elementor-element-dda9996:hover > .elementor-widget-container{border-radius:99px 99px 99px 99px;}.elementor-3901 .elementor-element.elementor-element-dda9996:hover .elementor-widget-container{box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.09);}.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-widget-container{transition:background 0.4s, border 0.4s, border-radius 0.4s, box-shadow 0.4s;}@media(max-width:1024px){.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button{width:200px;padding:1px 0px 0px 0px;}.elementor-3901 .elementor-element.elementor-element-dda9996{--container-widget-width:200px;--container-widget-flex-grow:0;width:var( --container-widget-width, 200px );max-width:200px;}}@media(max-width:767px){.elementor-3901 .elementor-element.elementor-element-575edf1 > .elementor-container{min-height:380px;}.elementor-3901 .elementor-element.elementor-element-575edf1:not(.elementor-motion-effects-element-type-background), .elementor-3901 .elementor-element.elementor-element-575edf1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://demo-855334.shp40.com/wp-content/uploads/2025/12/aceea0d7-b0be-46e4-9610-f44275cc4f13-1.jpg");background-position:center center;}.elementor-3901 .elementor-element.elementor-element-16972cb > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 60px 20px;}.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button{height:40px;width:180px;font-size:12px;line-height:1em;padding:1px 0px 0px 8px;}.elementor-3901 .elementor-element.elementor-element-dda9996{--container-widget-width:180px;--container-widget-flex-grow:0;width:var( --container-widget-width, 180px );max-width:180px;}.elementor-3901 .elementor-element.elementor-element-dda9996 > .elementor-widget-container{border-radius:99px 99px 99px 99px;}}/* Start custom CSS for button, class: .elementor-element-dda9996 *//* === 1. ボタン外側の設定 === */
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button {
    overflow: hidden !important;
    border-radius: 0px !important;
    padding-left: 25px !important;
    padding-right: 8px !important;
}

/* === 2. 【重要】内側の箱を広げて左右に配置する設定 === */
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-content-wrapper {
    display: flex !important;
    width: 100% !important; 
    justify-content: space-between !important; 
    align-items: center !important;
}

/* === 3. テキスト部分の設定 === */
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-text {
    text-align: left;
    order: 1; 
    flex-grow: 1; 
}

/* === 4. 矢印アイコン（円）の設定 === */
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-icon {
    order: 2;
    background-color: #fff; /* 矢印下の円の色 */
    width: 27px;
    height: 27px;
    border-radius: 50%;
    display: flex ;
    align-items: center;
    justify-content: center;
    
    /* PC用の距離 */
    margin-left: 0px !important; 
    margin-right: 0 !important;
}

/* === 5. 矢印アイコン自体の設定 === */
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-icon i,
.elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-icon svg {
    display: inline-block !important;
    position: relative;
    font-size: 12px;
    color: #F18300;
    margin-left: 3px;
}

/* === 6. アニメーション（ホバー時） === */
.elementor-3901 .elementor-element.elementor-element-dda9996:hover .elementor-button-icon i,
.elementor-3901 .elementor-element.elementor-element-dda9996:hover .elementor-button-icon svg {
    /* 動きの調整 */
    animation: slide-right-loop 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

/* === 7. アニメーションの動き定義（距離を短く修正） === */
@keyframes slide-right-loop {
    0% { transform: translateX(0); opacity: 1; }
    /* ↓ここを100%から50%に変更しました（移動距離が半分になります） */
    40% { transform: translateX(70%); opacity: 0; }
    41% { transform: translateX(-50%); opacity: 0; }
    50% { opacity: 1; }
    100% { transform: translateX(0); opacity: 1; }
}

/* ============================================== */
/* === 8. タブレット用レスポンシブ (1024px以下) === */
/* ============================================== */
@media (max-width: 1024px) {
    /* ボタンの幅を200pxに固定 */
    .elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button {
        width: 200px !important;
    }

    /* PCの広い余白をリセットして自然に配置 */
    .elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-icon {
        margin-left: auto !important; 
    }
}

/* ============================================== */
/* === 9. スマホ用レスポンシブ (767px以下) === */
/* ============================================== */
@media (max-width: 767px) {
    /* ボタンの幅を180pxに固定 */
    .elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button {
        width: 180px !important;
    }
    
    /* タブレットと同じく余白はautoのまま継承されますが念の為記述 */
    .elementor-3901 .elementor-element.elementor-element-dda9996 .elementor-button-icon {
        margin-left: auto !important; 
    }
}/* End custom CSS */