/* パートナーポータル専用。計算ソフト内部のデザインは変更しません。 */
:root{--mdis-charcoal:#1b2330;--mdis-bg:#f6f7f9;--mdis-navy:#0a3279;--mdis-line:#dfe3e8;--mdis-muted:#747d8a}
html,body{margin:0;min-height:100%;}
body.mdis-ui{background:var(--mdis-bg);color:#1d2734;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic","Noto Sans JP",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.mdis-ui *{box-sizing:border-box}
.mdis-ui a{text-decoration:none}
.mdis-ui button,.mdis-ui input{font:inherit}
.mdis-ui a:focus-visible,.mdis-ui button:focus-visible,.mdis-ui input:focus-visible{outline:3px solid #8499b5;outline-offset:3px}

/* ▼▼▼ 수정된 부분: 로그인 배경에 13.jpg 적용 ▼▼▼ */
.mdis-login {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  min-height: 100dvh;
  padding: 26px;
  
  /* 기존 단색 배경 제거 및 배경 이미지 설정 */
  background-color: var(--mdis-charcoal); /* 이미지가 로딩되기 전 표시될 기본색 */
  background-image: url('13.jpg'); /* 같은 폴더 내의 13.jpg 파일 연결 */
  background-size: cover;          /* 화면 전체를 덮도록 스케일 조정 */
  background-position: center;     /* 이미지를 화면 중앙에 정렬 */
  background-repeat: no-repeat;    /* 이미지 반복 방지 */
}
/* ▲▲▲ 수정 완료 ▲▲▲ */

/* 로그인 카드 디자인 수정 (배경이 복잡해졌으므로 카드를 약간 반투명하게 하여 고급스러움 추가) */
.mdis-login-card {
  width: min(100%, 474px);
  min-height: 478px;
  padding: 44px 47px 36px;
  background: rgba(255, 255, 255, 0.95); /* 완전히 하얀색(fff) 대신 아주 살짝 투명하게 처리 */
  backdrop-filter: blur(8px); /* 뒤의 도면 배경이 카드를 통해 은은하게 비치도록 블러 효과 */
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.4); /* 배경이 어두워졌으므로 그림자를 더 깊게 수정 */
  display: flex;
  flex-direction: column;
  border-radius: 6px; /* 모서리를 약간 둥글게(옵션) */
}

/* 이하 코드는 기존 원본과 동일하게 유지 */
.mdis-login-logo{display:block;width:214px;height:auto;object-fit:contain;margin:0 0 13px}
.mdis-login-heading{font-size:19px!important;font-weight:500!important;line-height:1.4!important;letter-spacing:.085em!important;margin:0 0 7px!important;color:#1d2734}
.mdis-login-copy{margin:0!important;color:#747d8a;font-size:12px;line-height:1.7}
.mdis-login-form{margin-top:25px;display:flex;flex-direction:column}
.mdis-login-form>label:not(.mdis-remember){font-size:13px;font-weight:600;color:#303b49;margin:0 0 8px}
.mdis-login-form input:not([type=hidden]):not([type=checkbox]){background:#fff;border:1px solid #d7dde4;border-radius:3px;width:100%;height:46px;padding:10px 13px;font-size:15px;outline:0;margin:0 0 16px;color:#182335}
.mdis-login-form input:focus{border-color:#3b587f!important;box-shadow:0 0 0 2px rgba(39,72,112,.07)}
.mdis-remember{display:flex;align-items:center;gap:7px;font-size:12px;color:#6a7280;margin:1px 0 14px}
.mdis-remember input{accent-color:var(--mdis-charcoal);margin:0}
.mdis-signin{min-height:47px;background:var(--mdis-charcoal)!important;color:#fff!important;border:none;border-radius:3px;display:flex;justify-content:center;align-items:center;gap:11px;font-size:14px;font-weight:600;letter-spacing:.06em;cursor:pointer}
.mdis-signin:hover,.mdis-menu-toggle:hover{background:#2b394e!important}
.mdis-login-error{background:#fff5f1;border:1px solid #ebc9bc;color:#814b3c;font-size:12px;padding:10px;margin:13px 0 0}
/* ログイン後：B案のダークサイドバーを踏襲 */
.mdis-portal-layout{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh;min-height:100dvh}
.mdis-sidebar,.mdis-drawer{background:var(--mdis-charcoal);color:#f8fafc;display:flex;flex-direction:column}
.mdis-sidebar{padding:0 24px 26px;min-height:100vh;min-height:100dvh}
.mdis-side-brand{margin:0 -24px 34px}
.mdis-side-logo-box{background:#fff;padding:34px 22px 27px;height:100px;display:flex;align-items:center}
.mdis-side-logo-box img{display:block;width:174px;height:auto}
.mdis-portal-name{color:#cbd0d9;font-size:12px;font-weight:450;letter-spacing:.07em;margin:20px 24px 0}
.mdis-list{display:flex;flex-direction:column;min-width:0}
.mdis-list-item{color:#f8fafc!important;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:11px;padding:17px 12px;border-bottom:1px solid rgba(255,255,255,.16);font-size:15px;transition:background .16s}
.mdis-list-item:first-child{border-top:1px solid rgba(255,255,255,.16)}
.mdis-list-item:hover,.mdis-list-item.is-current{background:rgba(255,255,255,.09)}
.mdis-list-index{font-size:12px;color:#adc9f6;letter-spacing:.07em;line-height:1.85;font-weight:650}
.mdis-list-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.mdis-list-name{font-size:15px;font-weight:580;line-height:1.52;overflow-wrap:anywhere}
.mdis-list-desc{font-size:11px;color:#aebacd;line-height:1.55;overflow-wrap:anywhere}
.mdis-sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.18);padding:24px 0 0;display:flex;flex-direction:column;gap:12px}
.mdis-account{font-size:12px;color:#bac4d0}
.mdis-logout,.mdis-home-link{color:#d8e6ff!important;font-size:13px;font-weight:600}
.mdis-portal-main{background:linear-gradient(90deg,#f4f6f8,#f8f9fa);min-width:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:52px clamp(30px,6.5vw,112px)}
.mdis-portal-message{width:min(100%,675px)}
.mdis-hairline{display:block;height:2px;width:30px;background:var(--mdis-navy);margin-bottom:27px}
.mdis-overline{font-size:12px;color:var(--mdis-navy);letter-spacing:.15em;font-weight:650;margin-bottom:28px}
.mdis-portal-message h1{font-size:26px!important;line-height:1.62!important;font-weight:600!important;letter-spacing:0!important;margin:0 0 18px!important}
.mdis-portal-message p{font-size:15px;color:#737d8b;line-height:1.9;margin:0}
/* 計算機ページ：フル幅。左メニューは必要な時だけドロワーで表示 */
body.mdis-app-view{background:#fff}
.mdis-app-toolbar{height:64px;position:relative;z-index:75;background:#fff;border-bottom:1px solid #e3e5e8;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 24px}
.mdis-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:43px;padding:10px 15px;background:var(--mdis-charcoal)!important;color:#fff!important;border:1px solid var(--mdis-charcoal)!important;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600;white-space:nowrap}
.mdis-menu-toggle svg{fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round}
.mdis-app-home{font-size:12px;color:#7a8490!important;letter-spacing:.09em;white-space:nowrap}
.mdis-app-stage{padding:0!important;margin:0!important;max-width:none!important;width:100%;min-width:0;background:#fff}
.mdis-app-stage #mdi-demand{width:100%;max-width:none}
.mdis-backdrop{position:fixed;inset:0;z-index:9997;background:rgba(10,16,26,.42);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
.mdis-backdrop.is-open{opacity:1;visibility:visible}
.mdis-drawer{position:fixed;z-index:9998;top:0;bottom:0;left:0;width:300px;max-width:90vw;padding:0 24px 24px;transform:translateX(-105%);transition:transform .22s ease;overflow-y:auto;box-shadow:16px 0 60px rgba(0,0,0,.2);visibility:hidden}
.mdis-drawer.is-open{transform:translateX(0);visibility:visible}
.mdis-drawer-head{display:flex;align-items:center;background:#fff;margin:0 -24px;padding:16px 18px 16px 24px;min-height:94px;justify-content:space-between;gap:10px}
.mdis-drawer-logo{width:172px;height:auto;display:block;max-width:100%}
.mdis-drawer-close{border:1px solid #dce0e5;background:transparent;border-radius:3px;color:#243043;min-width:34px;height:34px;font-size:22px;line-height:1;cursor:pointer}
.mdis-drawer .mdis-portal-name{margin:19px 0 28px}
.mdis-drawer .mdis-sidebar-bottom{margin-top:auto}
body.mdis-drawer-open{overflow:hidden}
@media(max-width:760px){.mdis-portal-layout{grid-template-columns:1fr}.mdis-sidebar{min-height:auto;padding:0 20px 20px}.mdis-side-brand{margin:0 -20px 23px}.mdis-side-logo-box{height:86px;padding:20px}.mdis-portal-name{margin:12px 20px 0}.mdis-sidebar-bottom{margin-top:20px;padding-top:15px}.mdis-portal-main{min-height:300px;padding:42px 25px;align-items:flex-start}.mdis-portal-message h1{font-size:22px!important}.mdis-desktop-break{display:none}.mdis-app-toolbar{height:60px;padding:0 12px}.mdis-app-home{font-size:11px}.mdis-login{padding:18px}.mdis-login-card{min-height:0;width:min(100%,474px);padding:37px 29px}.mdis-login-logo{width:194px}}
@media print{.mdis-app-toolbar,.mdis-backdrop,.mdis-drawer{display:none!important}.mdis-app-stage{display:block!important;padding:0!important;margin:0!important}body.mdis-app-view{background:white!important}}

/* 投稿を利用した会員専用お知らせ：既存Bデザインに合わせた最小構成。 */
.mdis-notice-nav{display:flex;align-items:center;gap:13px;color:#f8fafc!important;padding:15px 12px;margin-bottom:16px;font-size:15px;font-weight:580;border-bottom:1px solid rgba(255,255,255,.16);transition:background .16s}
.mdis-notice-nav:hover,.mdis-notice-nav.is-current{background:rgba(255,255,255,.09)}
.mdis-notice-nav-mark{display:block;width:19px;height:19px;border:1px solid rgba(225,234,246,.65);border-radius:2px;position:relative;flex-shrink:0}
.mdis-notice-nav-mark:after{content:"";position:absolute;left:4px;top:6px;width:9px;height:5px;border-top:1px solid rgba(225,234,246,.75);border-bottom:1px solid rgba(225,234,246,.75)}
.mdis-notice-page{width:min(100%,800px);margin:0 auto;color:#202c3a}
.mdis-notice-page .mdis-overline{margin-bottom:13px}
.mdis-notice-page h1{font-size:27px!important;font-weight:600!important;line-height:1.45!important;margin:0 0 30px!important;letter-spacing:.01em}
.mdis-notice-list{border-top:1px solid var(--mdis-line)}
.mdis-notice-row{display:grid;grid-template-columns:112px minmax(0,1fr) 24px;align-items:center;gap:20px;min-height:86px;padding:18px 2px;border-bottom:1px solid var(--mdis-line);color:#253447!important}
.mdis-notice-row:hover{color:var(--mdis-navy)!important}
.mdis-notice-row time,.mdis-notice-date{font-size:13px;color:var(--mdis-muted);white-space:nowrap;letter-spacing:.045em}
.mdis-notice-row-title{font-size:16px;font-weight:550;line-height:1.6;overflow-wrap:anywhere}
.mdis-notice-arrow{font-size:16px;color:#7e8a99;text-align:right}
.mdis-notice-empty{font-size:16px;color:var(--mdis-muted);padding:23px 0}
.mdis-notice-pages{display:flex;gap:24px;align-items:center;justify-content:center;padding:27px 0;font-size:13px;color:var(--mdis-muted)}
.mdis-notice-pages a,.mdis-notice-back{font-size:14px;color:var(--mdis-navy)!important;font-weight:600}
.mdis-notice-back{display:inline-block;margin-bottom:32px}
.mdis-notice-date{display:block;margin-bottom:8px}
.mdis-notice-article h1{margin-bottom:26px!important}
.mdis-notice-body{border-top:1px solid var(--mdis-line);padding-top:30px;font-size:16px;line-height:1.95;overflow-wrap:anywhere}
.mdis-notice-body p{margin:0 0 1.3em}
.mdis-notice-body img,.mdis-notice-body video{max-width:100%;height:auto}
.mdis-notice-body table{max-width:100%;display:block;overflow-x:auto;border-collapse:collapse}
.mdis-notice-body a{color:var(--mdis-navy);text-decoration:underline}
@media(max-width:760px){.mdis-notice-page h1{font-size:23px!important}.mdis-notice-row{grid-template-columns:1fr 20px;gap:4px 10px;min-height:94px}.mdis-notice-row time{grid-column:1}.mdis-notice-row-title{grid-column:1;grid-row:2;font-size:15px}.mdis-notice-arrow{grid-column:2;grid-row:2}.mdis-notice-pages{gap:12px;flex-wrap:wrap}}
@media print{.mdis-sidebar{display:none!important}.mdis-portal-layout{display:block!important}.mdis-portal-main{display:block!important;min-height:0!important;padding:0!important}.mdis-notice-page{width:100%!important}}