.elementor-3322 .elementor-element.elementor-element-7303b39{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3322 .elementor-element.elementor-element-7303b39:not(.elementor-motion-effects-element-type-background), .elementor-3322 .elementor-element.elementor-element-7303b39 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-3322 .elementor-element.elementor-element-8c321e2{--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-3322 .elementor-element.elementor-element-224abfb{--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;}.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-3322 .elementor-element.elementor-element-dac4535 .elementor-heading-title{font-size:var( --e-global-typography-81a7302-font-size );font-weight:var( --e-global-typography-81a7302-font-weight );line-height:var( --e-global-typography-81a7302-line-height );letter-spacing:var( --e-global-typography-81a7302-letter-spacing );color:var( --e-global-color-3c8a1a1 );}.elementor-3322 .elementor-element.elementor-element-08486d7 .elementor-heading-title{font-size:var( --e-global-typography-208a70b-font-size );font-weight:var( --e-global-typography-208a70b-font-weight );line-height:var( --e-global-typography-208a70b-line-height );color:var( --e-global-color-3c8a1a1 );}.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 );line-height:var( --e-global-typography-text-line-height );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-3322 .elementor-element.elementor-element-883cc2e{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 );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-3c8a1a1 );}.elementor-3322 .elementor-element.elementor-element-883cc2e a{color:var( --e-global-color-3c8a1a1 );}.elementor-3322 .elementor-element.elementor-element-7770dc4{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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 );line-height:var( --e-global-typography-text-line-height );}@media(min-width:768px){.elementor-3322 .elementor-element.elementor-element-224abfb{--width:50%;}.elementor-3322 .elementor-element.elementor-element-7770dc4{--width:50%;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-3322 .elementor-element.elementor-element-dac4535 .elementor-heading-title{font-size:var( --e-global-typography-81a7302-font-size );line-height:var( --e-global-typography-81a7302-line-height );letter-spacing:var( --e-global-typography-81a7302-letter-spacing );}.elementor-3322 .elementor-element.elementor-element-08486d7 .elementor-heading-title{font-size:var( --e-global-typography-208a70b-font-size );line-height:var( --e-global-typography-208a70b-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-3322 .elementor-element.elementor-element-883cc2e{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-3322 .elementor-element.elementor-element-dac4535 .elementor-heading-title{font-size:var( --e-global-typography-81a7302-font-size );line-height:var( --e-global-typography-81a7302-line-height );letter-spacing:var( --e-global-typography-81a7302-letter-spacing );}.elementor-3322 .elementor-element.elementor-element-08486d7 .elementor-heading-title{font-size:var( --e-global-typography-208a70b-font-size );line-height:var( --e-global-typography-208a70b-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-3322 .elementor-element.elementor-element-883cc2e{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for html, class: .elementor-element-6f54193 *//* 角丸ボタンセクション */
.rounded-section {
    margin-top: 20px; /* 間隔を狭く */
    margin-bottom: 20px;
}

.rounded-section h2 {
    color: #333;
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: normal;
}
/* 角丸ボタンのベーススタイル */
.rounded-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 25px;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    width: 500px; /* 固定幅に変更 */
    max-width: 100%; /* レスポンシブ対応 */
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border-radius: 25px; /* 角丸 */
}

/* 角丸ボタン - 白バージョン */
.rounded-button.white-version {
    background-color: #fff;
    /*border: 1px solid #000;*/
    color: #000;
}

/* 角丸ボタンのホバー効果 */
.rounded-button:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

/* 角丸ボタンの◯のスタイル（既存のスタイルを継承） */
.rounded-button .button-circle {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: transparent;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

/* 角丸ボタン - 白バージョンの◯ */
.rounded-button.white-version .button-circle {
    border: 2px solid #000;
}

/* 角丸ボタンのホバー時の◯の効果 */
.rounded-button:hover .button-circle {
    transform: scale(1.3);
}

/* 角丸ボタン - 白バージョンのホバー時の◯のシャドウ */
.rounded-button.white-version:hover .button-circle {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .rounded-button {
        width: 100%; /* モバイルでは全幅 */
        max-width: 350px; /* 最大幅を制限 */
        font-size: 14px; /* 文字サイズを小さく */
        padding: 12px 20px; /* パディングを調整 */
    }
    
    .button-text {
        line-height: 1.4; /* 行間を調整 */
        word-break: keep-all; /* 日本語の改行を適切に */
        overflow-wrap: break-word; /* 長い単語の改行 */
    }
    
    .button-circle {
        width: 10px; /* モバイルでは◯を少し小さく */
        height: 10px;
    }
    
    .rounded-button.white-version .button-circle,
    .rounded-button.black-version .button-circle {
        border-width: 1.5px; /* ボーダーを細く */
    }
}

@media (max-width: 480px) {
    .rounded-button {
        font-size: 13px; /* さらに小さく */
        padding: 10px 15px;
        max-width: 100%;
    }
    
    .button-circle {
        width: 8px; /* さらに小さく */
        height: 8px;
    }
    
    .rounded-button.white-version .button-circle,
    .rounded-button.black-version .button-circle {
        border-width: 1px;
    }
}/* End custom CSS */