/**
 * MarumoApp.Dialog - SweetAlert2カスタムスタイル
 * 既存のxcConfirmのデザインに合わせた調整
 */

/* ポップアップの基本設定（幅を広げて一行に収まるように） */
.marumo-dialog-popup {
    padding: 1.5em 2em !important;
    min-width: 600px !important;
    max-width: 900px !important;
    width: auto !important;
    display: block !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14),
                0 3px 14px 2px rgba(0, 0, 0, 0.12),
                0 5px 5px -3px rgba(0, 0, 0, 0.2) !important;
    transition: box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* アイコンを左側に配置（float使用） */
.marumo-dialog-popup .swal2-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    float: left !important;
    margin: 0 16px 0 0 !important;
    font-size: 20px !important;
    line-height: 40px !important;
    overflow: visible !important;
    border-width: 2px !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    flex-shrink: 0 !important;
    border-radius: 50% !important;
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* ヘッダー部分の調整（下に線を追加、間隔を確保） */
.marumo-dialog-popup .swal2-header {
    display: block !important;
    margin-bottom: 1.2em !important;
    padding-bottom: 0.8em !important;
    border-bottom: solid 1px rgba(0, 0, 0, 0.12) !important;
    text-align: left !important;
    overflow: hidden !important;
}

.marumo-dialog-popup .swal2-title {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    display: block !important;
    padding-top: 5px!important;

    font-size: 18px!important;
    font-weight: bold!important;
}

.marumo-dialog-popup .swal2-icon svg {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
}

/* 警告アイコンの「!」を適切なサイズに調整（大きく） */
.marumo-dialog-popup .swal2-icon.swal2-warning {
    font-size: 24px !important;
    line-height: 40px !important;
    border-width: 2px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-warning .swal2-icon-content {
    font-size: 24px !important;
    /* line-height: 40px !important;
    height: 40px !important; */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 700 !important;
}

/* エラーアイコンの「X」も調整 */
.marumo-dialog-popup .swal2-icon.swal2-error {
    font-size: 18px !important;
    line-height: 40px !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.marumo-dialog-popup .swal2-icon.swal2-error .swal2-x-mark {
    width: 40px !important;
    height: 40px !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.marumo-dialog-popup .swal2-icon.swal2-error [class^=swal2-x-mark-line] {
    height: 2px !important;
    width: 20px !important;
    background-color: #f27474 !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform-origin: center center !important;
}

.marumo-dialog-popup .swal2-icon.swal2-error .swal2-x-mark-line-left {
    transform: translate(-50%, -50%) rotate(45deg) !important;
}

.marumo-dialog-popup .swal2-icon.swal2-error .swal2-x-mark-line-right {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
}

/* 成功アイコンのチェックマークも調整 */
.marumo-dialog-popup .swal2-icon.swal2-success {
    font-size: 18px !important;
    line-height: 40px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-success .swal2-success-ring {
    width: 40px !important;
    height: 40px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-success [class^=swal2-success-line] {
    height: 2px !important;
}

/* 情報アイコンの「i」も調整 */
.marumo-dialog-popup .swal2-icon.swal2-info {
    font-size: 18px !important;
    line-height: 40px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-info .swal2-icon-content {
    font-size: 18px !important;
    line-height: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 質問アイコンの「?」も調整 */
.marumo-dialog-popup .swal2-icon.swal2-question {
    font-size: 18px !important;
    line-height: 40px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-question .swal2-icon-content {
    font-size: 18px !important;
    line-height: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* アイコンの色を調整（既存のスプライト画像の色に近づける） */
.marumo-dialog-popup .swal2-icon.swal2-info {
    border-color: #3fc3ee !important;
    color: #3fc3ee !important;
    border-width: 2px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-success {
    border-color: #a5dc86 !important;
    color: #a5dc86 !important;
    border-width: 2px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-error {
    border-color: #f27474 !important;
    color: #f27474 !important;
    border-width: 2px !important;
}

.marumo-dialog-popup .swal2-icon.swal2-warning {
    /* border-color: #f8bb86 !important; */
    color: #dc3545 !important;
    border-width: 0px !important;
    background-color: #fef3f4 !important;
}

.marumo-dialog-popup .swal2-icon.swal2-question {
    /* border-color: #87adbd !important; */
    color: #1f6feb !important;
    border-width: 0px !important;
    background-color: #f2f5fe !important;
    font-weight: bold !important;
}

/* タイトルスタイル（色を濃く、サイズを大きく） */
.marumo-dialog-title {
    font-size: 20px !important;
    font-weight: 500 !important;
    color: rgba(0, 0, 0, 0.87) !important;
    text-align: left !important;
    margin-bottom: 0.3em !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    letter-spacing: 0.15px !important;
}

/* メッセージコンテンツを左寄せ、文字色を濃く（boldなし） */
.marumo-dialog-content {
    text-align: left !important;
    color: #1f1f1f !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    font-size: 14px !important;
    letter-spacing: 0.25px !important;
}

.marumo-dialog-content p {
    text-align: left !important;
    margin: 0 0 0.5em 0 !important;
    font-weight: 400 !important;
    white-space: pre-line !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

.marumo-dialog-content div {
    text-align: left !important;
    font-weight: 400 !important;
    white-space: pre-line !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* 改行とリストを正しく表示 */
.marumo-dialog-content br {
    display: block !important;
    content: "" !important;
    margin-bottom: 0.3em !important;
}

.marumo-dialog-content ul,
.marumo-dialog-content ol {
    margin: 0.5em 0 !important;
    padding-left: 1.5em !important;
    list-style-position: outside !important;
}

.marumo-dialog-content li {
    margin: 0.3em 0 !important;
    text-align: left !important;
}

/* ボタンスタイル - OKボタン（既存の#1f6feb） */
.marumo-dialog-confirm {
    background-color: #1f6feb !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    min-width: 95px !important;
    width: auto !important;
    line-height: 24px !important;
    font-weight: bold !important;
    padding: 8px 16px !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.marumo-dialog-confirm:hover,
.marumo-dialog-confirm:focus,
.marumo-dialog-confirm:active {
    background-color: #1a5fd4 !important;
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.24) !important; */
}

/* .marumo-dialog-confirm:active {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
    transform: translateY(1px) !important;
} */

/* ボタンスタイル - キャンセルボタン（既存の#546a79） */
.marumo-dialog-cancel {
    background-color: #fff !important;
    color: #1f6feb !important;
    border: 1px solid #1f6feb !important;
    border-radius: 4px !important;
    min-width: 95px !important;
    width: auto !important;
    font-weight: 500 !important;
    padding: 8px 16px !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
    font-weight: bold !important;
}

.marumo-dialog-cancel:hover,
.marumo-dialog-cancel:focus,
.marumo-dialog-cancel:active {
    background-color: #1f6feb !important;
    color: #fff !important;
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.24) !important; */
}

/* .marumo-dialog-cancel:active {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
    transform: translateY(1px) !important;
} */

/* 閉じるボタンも同じスタイル（shutタイプ用） */
.marumo-dialog-popup .swal2-actions {
    margin-top: 1em !important;
    gap: 10px !important;

    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* コンテンツエリアの調整（間隔を確保） */
.marumo-dialog-popup .swal2-html-container {
    margin-top: 0.5em !important;
    padding-top: 0 !important;
    text-align: left !important;
    clear: none !important;
    margin-left: 56px !important; /* アイコン幅(40px) + マージン(16px) */
    word-wrap: break-word !important;
    white-space: normal !important;
}

/* アイコンとタイトルの間隔を調整（上で設定済み） */

/* jQuery UI Dialog - ログインポップアップ用カスタムスタイル */
.login-popup-dialog-no-close.ui-dialog {
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-sizing: border-box !important;
}

/* jQuery UI 1.14.1対応: タイトルバーを完全に非表示（より強力なセレクタ） */
.login-popup-dialog-no-close.ui-dialog .ui-dialog-titlebar,
.login-popup-dialog-no-close .ui-dialog-titlebar {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    line-height: 0 !important;
    visibility: hidden !important;
    overflow: hidden !important;
    position: absolute !important;
    top: -9999px !important;
    left: -9999px !important;
}

.login-popup-dialog-no-close .ui-dialog-titlebar-close {
    display: none !important;
    visibility: hidden !important;
}

.login-popup-dialog-no-close .ui-dialog-content {
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    border: none !important;
    box-sizing: border-box !important;
    -ms-overflow-style: none !important; /* IE and Edge */
    scrollbar-width: none !important; /* Firefox */
    position: relative !important;
}

/* Webkit系ブラウザ（Chrome, Safari）のスクロールバーを非表示 */
.login-popup-dialog-no-close .ui-dialog-content::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
}

.login-popup-dialog-no-close .ui-dialog-content::-webkit-scrollbar-track {
    display: none !important;
}

.login-popup-dialog-no-close .ui-dialog-content::-webkit-scrollbar-thumb {
    display: none !important;
}

#login-popup-dialog {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
    display: block !important;
}

#login-popup-iframe {
    display: block !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    vertical-align: top !important;
    scrolling: no !important;
}

/* iframe内のbodyにもスクロールバーを非表示にする（JavaScriptで適用） */



/**
 * MarumoApp.Dialog - SweetAlert2カスタムスタイル
 * Material Design風に調整
 * 2026-01-11
============================================ */
.marumo-dialog-popup .swal2-html-container {
    margin: 0 !important;
    padding:0!important;
    max-width: 640px!important;
    padding-top: 16px !important;
}