/* =========================================================
   デスクトップ全ページ共通表示枠 v61

   基準：
   - 外枠 1394 x 760
   - 右メニュー通常ボタン 220 x 44
   - Q&A／目次 106 x 40
   - 「血液透析わたしの体調記録」の表示倍率計算に合わせる

   重要：
   - 通常本文の内部幅・背景・文字・画像座標は変更しない
   - 930 x 656 の本文全体を同比率で拡大し、中央配置する
   - EASEのCanvasとオレンジ帯も同じ本文全体として扱う
   - 体調記録ページとiframe部品は元コードのまま
   - iPhone / iPad / Androidではデスクトップ規則が無効
   ========================================================= */

/* =========================================================
   文字・数値入力欄のブラウザー差を解消

   枠線を指定していない入力欄だけ、Chrome／Edge共通の1px実線にする。
   黄色枠・血圧欄・禁煙欄・セルフEASE欄など、専用枠は除外する。
   :where()で優先度を0にし、各ページ固有の指定を上書きしない。
   ========================================================= */
:where(html.desktop-common-layout-v61 input[type="text"]:not(.blood_input):not(.blood_input2):not(.nos_input3):not(.nos_input4):not(.sel_input):not(.sel_input2):not(.ease_input1)) {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #808080;
  border-radius: 0;
  box-shadow: none;
}

/* =========================================================
   モバイルのフォーム部品をChrome／Edge表示と統一 v92

   iPhone／iPad／Androidだけに適用する。閉じたselectの文字・寸法・
   1px枠を固定しつつ、選択時は端末標準の選択画面を使う。
   PC版には mobile-form-stable-v92 が付かないため一切作用しない。
   ========================================================= */
:where(html.mobile-form-stable-v92 input[type="text"]:not(.blood_input):not(.blood_input2):not(.nos_input3):not(.nos_input4):not(.sel_input):not(.sel_input2):not(.ease_input1)) {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #808080;
  border-radius: 0;
  box-shadow: none;
}

html.mobile-form-stable-v92 select {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: var(--mobile-select-width) !important;
  height: var(--mobile-select-height) !important;
  margin: 0 !important;
  padding: 0 28px 0 8px !important;
  box-sizing: border-box !important;
  border: 1px solid #808080 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: #ffffff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23444'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 9px center !important;
  background-size: 10px 6px !important;
  font-family: inherit !important;
  font-size: var(--mobile-select-font-size) !important;
  font-weight: normal !important;
  line-height: calc(var(--mobile-select-height) - 2px) !important;
  text-align: left !important;
  vertical-align: middle !important;
}

html.mobile-form-stable-v92 select option {
  font-family: inherit !important;
  font-size: var(--mobile-select-font-size) !important;
  font-weight: normal !important;
}

html.mobile-form-stable-v92 select[name="salt-test3"] {
  --mobile-select-width: 230px;
  --mobile-select-height: 30px;
  --mobile-select-font-size: 18px;
}

html.mobile-form-stable-v92 select[name^="time"],
html.mobile-form-stable-v92 select[name^="minutes"] {
  --mobile-select-width: 68px;
  --mobile-select-height: 29px;
  --mobile-select-font-size: 18px;
}

html.mobile-form-stable-v92 select[name="alcohol-select1"] {
  --mobile-select-width: 320px;
  --mobile-select-height: 30px;
  --mobile-select-font-size: 18px;
}

html.mobile-form-stable-v92 select.sel_select {
  --mobile-select-width: 260px;
  --mobile-select-height: 28px;
  --mobile-select-font-size: 16px;
}

html.mobile-form-stable-v92 .ease_input2 select {
  --mobile-select-width: 270px;
  --mobile-select-height: 32px;
  --mobile-select-font-size: 16px;
  border-color: #999999 !important;
  color: #333333;
}

/* =========================================================
   07alcohol04_01：説明文と入力欄の上下間隔 v90

   文字サイズと入力欄サイズは変えず、説明・選択・入力の各段を分離する。
   固定高の内側にも十分な余白を確保し、ズーム時の接触を防ぐ。
   ========================================================= */
body.alcohol-review-spacing-v90 .alcohol-limit-panel-v90 {
  height: 140px;
}

body.alcohol-review-spacing-v90 .alcohol-tips-panel-v90 {
  height: 170px;
}

body.alcohol-review-spacing-v90 .alcohol-panel-body-v90 {
  height: auto;
  box-sizing: border-box;
}

body.alcohol-review-spacing-v90 .alcohol-limit-content-v90,
body.alcohol-review-spacing-v90 .alcohol-tips-content-v90 {
  width: 100%;
  box-sizing: border-box;
}

body.alcohol-review-spacing-v90 .alcohol-limit-heading-v90 {
  line-height: 25px;
}

body.alcohol-review-spacing-v90 .alcohol-type-row-v90,
body.alcohol-review-spacing-v90 .alcohol-limit-value-row-v90 {
  display: flex;
  align-items: center;
  min-height: 30px;
  line-height: 30px;
}

body.alcohol-review-spacing-v90 .alcohol-type-row-v90 {
  margin-top: 8px;
}

body.alcohol-review-spacing-v90 .alcohol-limit-value-row-v90 {
  margin-top: 8px;
  column-gap: 10px;
}

body.alcohol-review-spacing-v90 .alcohol-limit-value-row-v90 input {
  margin: 0;
}

body.alcohol-review-spacing-v90 .alcohol-tips-heading-v90 {
  margin-bottom: 10px;
  line-height: 25px;
}

body.alcohol-review-spacing-v90 .alcohol-tip-inputs-v90 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 7px;
}

body.alcohol-review-spacing-v90 .alcohol-tip-inputs-v90 input {
  margin: 0 !important;
}

/*
  各単元の扉は背景画像が930 x 640のまま、内容枠だけ930 x 656あるため、
  下端に16pxの黄色背景が露出していた。扉だけ背景を枠の高さまで延長する。
  座標・本文・メニュー・端末別倍率は変更せず、全端末で同じ補正を使う。
*/
body.site-side-layout.site-door-layout
.main > div[class^="main_yel_"] {
  height: 656px !important;
  background-repeat: no-repeat !important;
  background-position: right top !important;
  background-size: 930px 656px !important;
}

html.desktop-common-layout-v61,
html.desktop-common-layout-v61 body {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

html.desktop-common-layout-v61 body {
  display: block !important;
  min-height: 0 !important;
}

/* 体調記録と同じ1394 x 760の共通外枠。 */
html.desktop-common-layout-v61 body.desktop-primary-page-v61 #wrapper {
  position: relative !important;
  left: auto !important;
  top: 0 !important;
  width: 1394px !important;
  height: 760px !important;
  min-width: 1394px !important;
  min-height: 760px !important;
  max-width: 1394px !important;
  max-height: 760px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
  text-align: left !important;
  transform-origin: top left !important;
}

/* =========================================================
   全プルダウン：ズーム・ブラウザー差のないページ内選択欄 v89

   PC版Chrome／Edgeの標準selectは、ページ全体のtransformとは別の
   倍率で文字や枠を描画することがある。元selectを値・changeイベント・
   採点用に残し、画面内に描画する同寸法の選択欄へ置き換える。
   ========================================================= */
html.desktop-common-layout-v61
body.stable-custom-select-ready-v89
select.stable-native-select-v89 {
  display: none !important;
}

body.stable-custom-select-ready-v89 .stable-custom-select-v89 {
  position: relative;
  z-index: 10000;
  display: inline-block;
  width: var(--stable-select-width);
  height: var(--stable-select-height);
  box-sizing: border-box;
  color: var(--stable-select-color);
  font-family: inherit;
  font-size: var(--stable-select-font-size) !important;
  font-weight: normal;
  line-height: calc(var(--stable-select-height) - 2px);
  vertical-align: middle;
}

body.stable-custom-select-ready-v89
.stable-custom-select-v89.stable-custom-select-open-v89 {
  z-index: 20000;
}

body.stable-custom-select-ready-v89
.stable-select-salt-quantity-v89 {
  --stable-select-width: 230px;
  --stable-select-height: 30px;
  --stable-select-font-size: 18px;
  --stable-select-color: #0068b7;
  --stable-select-list-height: 270px;
}

body.stable-custom-select-ready-v89 .stable-select-salt-time-v89 {
  --stable-select-width: 68px;
  --stable-select-height: 29px;
  --stable-select-font-size: 18px;
  --stable-select-color: #0068b7;
  --stable-select-list-height: 261px;
}

body.stable-custom-select-ready-v89 .stable-select-alcohol-v89 {
  --stable-select-width: 320px;
  --stable-select-height: 30px;
  --stable-select-font-size: 18px;
  --stable-select-color: #333333;
  --stable-select-list-height: 210px;
}

body.stable-custom-select-ready-v89
.stable-select-ease-confidence-v89 {
  --stable-select-width: 260px;
  --stable-select-height: 28px;
  --stable-select-font-size: 16px;
  --stable-select-color: #333333;
  --stable-select-list-height: 140px;
}

body.stable-custom-select-ready-v89
.stable-custom-select-button-v89 {
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0 30px 0 8px;
  box-sizing: border-box;
  border: 1px solid #808080;
  border-radius: 0;
  box-shadow: none;
  background: #ffffff;
  color: inherit;
  font-family: inherit;
  font-size: inherit !important;
  font-weight: normal;
  line-height: calc(var(--stable-select-height) - 2px);
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

body.stable-custom-select-ready-v89
.stable-custom-select-button-v89::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 9px;
  width: 0;
  height: 0;
  margin-top: -2px;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 6px solid #444444;
  pointer-events: none;
}

body.stable-custom-select-ready-v89
.stable-custom-select-options-v89 {
  position: absolute;
  top: calc(var(--stable-select-height) - 1px);
  left: 0;
  z-index: 20001;
  width: 100%;
  max-height: var(--stable-select-list-height);
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid #808080;
  border-radius: 0;
  background: #ffffff;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
  color: inherit;
  font-family: inherit;
  font-size: inherit !important;
  font-weight: normal;
  line-height: calc(var(--stable-select-height) - 2px);
}

body.stable-custom-select-ready-v89
.stable-custom-select-options-v89[hidden] {
  display: none !important;
}

body.stable-custom-select-ready-v89
.stable-custom-select-option-v89 {
  -webkit-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  min-height: var(--stable-select-height);
  margin: 0;
  padding: 1px 8px;
  box-sizing: border-box;
  border: 0;
  border-radius: 0;
  background: #ffffff;
  color: inherit;
  font-family: inherit;
  font-size: inherit !important;
  font-weight: normal;
  line-height: calc(var(--stable-select-height) - 2px);
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
}

body.stable-custom-select-ready-v89
.stable-custom-select-option-v89:hover,
body.stable-custom-select-ready-v89
.stable-custom-select-option-v89:focus,
body.stable-custom-select-ready-v89
.stable-custom-select-option-v89[aria-selected="true"] {
  background: #dceeff;
  color: #111111;
}

body.stable-custom-select-ready-v89
.stable-custom-select-button-v89:focus-visible,
body.stable-custom-select-ready-v89
.stable-custom-select-option-v89:focus-visible {
  outline: 2px solid #157cc1;
  outline-offset: -2px;
}

/* =========================================================
   通常ページ

   元の930 x 656本文を変更せず、720 / 656倍する。
   表示後は1020.73 x 720となり、1114 x 760の本文領域で
   左右中央、上8px、下32pxになる。
   ========================================================= */

html.desktop-common-layout-v61 body.desktop-side-page-v61 .main {
  position: absolute !important;
  left: 46.634146px !important;
  top: 8px !important;
  width: 930px !important;
  height: 656px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  overflow: hidden !important;
  transform: scale(1.0975609756) !important;
  transform-origin: top left !important;
  z-index: 1 !important;
}

/* =========================================================
   セルフEASE Canvas／音声ページ

   背景やオレンジ帯を個別に延長せず、元のmain全体を拡大する。
   これによりオレンジ帯より下へ黄色背景がはみ出さない。
   ========================================================= */

html.desktop-common-layout-v61 body.desktop-ease-audio-page-v61 .main {
  position: absolute !important;
  left: 46.634146px !important;
  top: 8px !important;
  width: 930px !important;
  height: 656px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  overflow: hidden !important;
  transform: scale(1.0975609756) !important;
  transform-origin: top left !important;
  z-index: 1 !important;
}

/*
  Adobe Animate側の930 x 590設定は維持する。
  v51で加えた個別のleft/top/背景延長は行わない。
*/
html.desktop-common-layout-v61 body.desktop-ease-audio-page-v61 #animation_container {
  margin: 0 !important;
  transform: none !important;
}

/* =========================================================
   表紙・目次・Q&A等の全幅ページ

   説明ページと文字・図の表示倍率を揃えるため、
   元の1170px内容も通常本文と同じ720 / 656倍で表示する。
   拡大後の幅1284pxは1394px外枠内へ中央配置できる。
   ========================================================= */

html.desktop-common-layout-v61 body.desktop-wide-page-v61 .main_yel_zen,
html.desktop-common-layout-v61 body.desktop-wide-page-v61 .main_yel_zen2,
html.desktop-common-layout-v61 body.desktop-wide-page-v61 .main_index {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: 1170px !important;
  max-width: 1170px !important;
  margin: 8px auto 0 auto !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  transform: scale(1.0975609756) !important;
  transform-origin: top center !important;
}

/*
  Q&A・講座案内・振り返りなどの全幅ページは、最初の見出しが持つ
  20pxの上余白が親要素へ折りたたまれ、黄色背景の上端だけが
  通常説明ページ（上8px）より約12px下へ押されていた。

  見出し・本文・ボタンの座標は変更せず、黄色背景だけを上へ延長する。
  目次と各単元のまとめページは専用指定で既に上8pxへ固定されているため
  対象外とし、iPhone／iPad／Androidにも作用させない。
*/
html.desktop-common-layout-v61
body.desktop-wide-page-v61:not(.contents-page-v61):not(.unit-summary-page-v60):not(.qa-detail-page-v59)
.main_yel_zen,
html.desktop-common-layout-v61
body.desktop-wide-page-v61:not(.contents-page-v61):not(.unit-summary-page-v60):not(.qa-detail-page-v59)
.main_yel_zen2 {
  /*
    20pxまで折りたたまれた背景を、通常ページと同じ8pxまで延長する。
    画面幅（vw）ではなく元座標系の固定値にし、ズームで上端を動かさない。
  */
  box-shadow: 0 -10.933333px 0 0 #ffffbf !important;
}

/*
  目次は元の背景高が690pxあるため、通常の全幅ページ倍率では
  8px + 690px × 1.0975609756 = 約765pxとなり、760px枠から下端が切れる。
  目次だけ上下8pxを確保できる倍率へ下げ、1394px枠内で厳密に中央配置する。
  desktopクラス配下だけの指定なので、iPhone／iPad／Androidには作用しない。
*/
html.desktop-common-layout-v61
body.desktop-wide-page-v61.contents-page-v61
.main_yel_zen {
  position: absolute !important;
  left: 66.217391px !important;
  top: 8px !important;
  width: 1170px !important;
  height: 690px !important;
  max-width: 1170px !important;
  margin: 0 !important;
  transform: scale(1.0782608696) !important;
  transform-origin: top left !important;
  overflow: visible !important;
}

/* =========================================================
   各単元の「まとめ・受講証」ページ

   通常の全幅ページはtransform-origin:centerで中央補正しているが、
   まとめページは旧CSSの左右余白が非対称なため、端末やChromeの版に
   よって左へ寄る場合がある。PCでは1394px枠内の左右55pxへ明示配置し、
   transform-originを左上へ統一して計算差をなくす。
   ========================================================= */

html.desktop-common-layout-v61
body.desktop-wide-page-v61.unit-summary-page-v60
.main_yel_zen {
  position: absolute !important;
  left: 55px !important;
  top: 8px !important;
  width: 1170px !important;
  height: 640px !important;
  margin: 0 !important;
  transform: scale(1.0975609756) !important;
  transform-origin: top left !important;
  overflow: visible !important;
}

/*
  iPhone／Android／iPad／Androidタブレットでは#wrapperの旧指定が
  左8px・右24pxとなる。本文へ8pxだけ余白を追加し、左右16pxへ揃える。
  デスクトップ側は上記の絶対座標が優先される。
*/
body.unit-summary-page-v60 .main_yel_zen {
  margin-left: 8px !important;
  margin-right: 0 !important;
  height: 640px !important;
  overflow: visible !important;
}

/*
  まとめページの挿絵は、HTMLのwidth/height属性が実画像と異なる旧ページが
  混在している。ブラウザーやズーム率によって片側だけが縮むのを防ぎ、
  常に実画像の縦横比で表示する。
*/
@media screen {
  body.unit-summary-page-v60 .finish_l img.web_h {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* 目次の690px背景など、760px外枠の下端に近い内容を切らない。 */
html.desktop-common-layout-v61
body.desktop-wide-page-v61
#wrapper {
  display: flow-root !important;
  overflow: visible !important;
}

/* Q&A一覧・詳細は黄色背景を明示し、CSS競合で白くならないようにする。 */
body.qa-list-page-v59 .main_yel_zen,
body.qa-detail-page-v59 .main_yel_zen2 {
  background-color: #ffffbf !important;
}

/*
  Q&A詳細は長いフロート要素を含む。高さを内容に追従させ、
  qa-detail-scroll.jsが端末幅に合わせて縦スクロールを構成する。
*/
body.qa-detail-page-v59 .main_yel_zen2 {
  display: flow-root !important;
  height: auto !important;
  min-height: 640px !important;
  overflow: visible !important;
}

/*
  セルフEASE終了ページの「まとめと受講証」ボタン。
  外側と.sub_qaimgの既存座標が二重加算されていたため、
  930px本文内の白い説明枠中央へ固定する。
  端末別倍率には触れず、全端末で同じ本文内座標を使用する。
*/
body.ease-audio-page .ease-finish-summary-position-v59 {
  position: absolute !important;
  left: 500px !important;
  top: 380px !important;
  width: 300px !important;
  height: 150px !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 8 !important;
}

body.ease-audio-page
.ease-finish-summary-position-v59
.ease-finish-summary-button-v59 {
  position: static !important;
  width: 300px !important;
  height: 150px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ease-audio-page
.ease-finish-summary-position-v59
.ease-finish-summary-button-v59 img {
  display: block !important;
  width: 300px !important;
  height: 150px !important;
}

/* 次の終了画面にある案内画像も930px本文内へ収める。 */
body.ease-audio-page .ease-finish-app-banner-v59 {
  position: absolute !important;
  left: 500px !important;
  top: 320px !important;
  width: 410px !important;
  height: 230px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ease-audio-page .ease-finish-app-banner-v59 img {
  display: block !important;
  width: 410px !important;
  height: 230px !important;
}

/* =========================================================
   全右メニュー共通

   体調記録ページと同じ元画像・同じCSS寸法・同じ外枠倍率。
   EASEだけ別倍率になる処理は置かない。
   ========================================================= */

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub {
  position: absolute !important;
  right: 4px !important;
  top: 8px !important;
  left: auto !important;
  width: 263px !important;
  height: 720px !important;
  margin: 0 !important;
  padding: 5px 9px 0 9px !important;
  float: none !important;
  clear: none !important;
  overflow: hidden !important;
  background: #ffffbf !important;
  box-sizing: border-box !important;
  transform: none !important;
  z-index: 20 !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom {
  display: grid !important;
  grid-template-columns: 107px 107px !important;
  column-gap: 6px !important;
  row-gap: 4px !important;
  width: 220px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li {
  grid-column: 1 / 3 !important;
  width: 220px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  line-height: 0 !important;
  overflow: hidden !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li img,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li img {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: bottom !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li:not(.sb) a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li:not(.sb) img,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li:not(.sb) a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li:not(.sb) img {
  width: 220px !important;
  height: 44px !important;
  max-width: 220px !important;
  max-height: 44px !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li.sb,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li.sb {
  grid-column: auto !important;
  width: 106px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li.sb a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 .sub .bottom li.sb img,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li.sb a,
html.desktop-common-layout-v61 body.desktop-menu-page-v61 ul.bottom li.sb img {
  width: 106px !important;
  height: 40px !important;
  max-width: 106px !important;
  max-height: 40px !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .record_shortcut {
  position: absolute !important;
  left: 9px !important;
  bottom: 6px !important;
  display: block !important;
  width: 245px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  z-index: 30 !important;
}

html.desktop-common-layout-v61 body.desktop-menu-page-v61 .record_shortcut img {
  display: block !important;
  width: 245px !important;
  height: 40px !important;
  max-width: 245px !important;
  max-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* =========================================================
   「次へ」で表示されるワーニング

   変形済みの.main内にposition:fixedを置くと、固定基準が.mainへ変わり
   右メニューの下へ潜り込む。デスクトップではJSでbody直下へ移し、
   体調記録の左本文領域（1114 x 760）内へ中央配置する。
   ========================================================= */

html.desktop-common-layout-v61 body.desktop-primary-page-v61 > #modal-bg {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: rgba(0, 0, 0, 0.75) !important;
  z-index: 100000 !important;
}

html.desktop-common-layout-v61
body.desktop-primary-page-v61
> #kidney04_02_window.desktop-warning-modal-v61 {
  position: fixed !important;
  margin: 0 !important;
  transform-origin: top left !important;
  overflow: visible !important;
  z-index: 100001 !important;
}

/* 画面では既存の行送りを保ち、印刷時だけ折り返す。 */
.print-only-next-line-v76 {
  display: inline;
}

/* =========================================================
   A4縦印刷共通補正 v76

   画面表示用の1170px／930px固定幅と拡大・中央配置を印刷時だけ解除する。
   「まとめ・受講証」17ページとセルフEASE印刷ページをA4の印字可能幅へ
   収め、文章・入力欄・受講証の右端が切れないようにする。

   screen時の規則には一切作用しない。
   ========================================================= */
@media print {
  .print-only-next-line-v76 {
    display: block !important;
  }

  @page {
    size: A4 portrait;
    margin: 10mm;
  }

  html.desktop-common-layout-v61,
  html.desktop-common-layout-v61 body,
  body.site-wide-layout,
  body.site-side-layout.site-ease-layout {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #ffffff !important;
  }

  body.site-wide-layout #wrapper,
  html.desktop-common-layout-v61 body.desktop-wide-page-v61 #wrapper,
  body.site-side-layout.site-ease-layout #wrapper,
  html.desktop-common-layout-v61 body.desktop-side-page-v61.site-ease-layout #wrapper {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    text-align: left !important;
  }

  body.unit-summary-page-v60 .main_yel_zen,
  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.unit-summary-page-v60
  .main_yel_zen {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
  }

  body.unit-summary-page-v60 .finish_l,
  body.unit-summary-page-v60 .finish_r,
  body.unit-summary-page-v60 .finish_r2 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.unit-summary-page-v60 .finish_l {
    padding-right: 4mm !important;
  }

  body.unit-summary-page-v60 .finish_r,
  body.unit-summary-page-v60 .finish_r2 {
    margin-top: 12px !important;
  }

  body.unit-summary-page-v60 .finish_zyuko,
  body.unit-summary-page-v60 .finish_zyuko_foot {
    width: 100% !important;
    max-width: 560px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
  }

  body.unit-summary-page-v60 .sub_ti01f img.print_h,
  body.unit-summary-page-v60 .finish_l img.print_h,
  body.unit-summary-page-v60 .finish_zyuko img.print_h,
  body.unit-summary-page-v60 .finish_zyuko_foot img.print_h {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body.unit-summary-page-v60 .finish_l ul,
  body.unit-summary-page-v60 .finish_l li,
  body.unit-summary-page-v60 .finish_l input,
  body.unit-summary-page-v60 .finish_l select,
  body.unit-summary-page-v60 .finish_l textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.unit-summary-page-v60 .finish_l .list11 li,
  body.unit-summary-page-v60 .finish_l .list11kid li,
  body.unit-summary-page-v60 .finish_l .list16 li,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome_lino,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome2,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome3,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome3_lino,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome4 {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }

  body.unit-summary-page-v60 .finish_l .list11 li,
  body.unit-summary-page-v60 .finish_l .list11kid li,
  body.unit-summary-page-v60 .finish_l .list16 li,
  body.unit-summary-page-v60 .finish_l .f_orange,
  body.unit-summary-page-v60 .finish_l .f_orange20b,
  body.unit-summary-page-v60 .finish_l .f_blue20b,
  body.unit-summary-page-v60 .finish_l .f20,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome_lino,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome2,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome3,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome3_lino,
  body.unit-summary-page-v60 .finish_l .kakko_sage_matome4 {
    line-height: 23px !important;
  }

  body.unit-summary-page-v60 .finish_l .list11 li,
  body.unit-summary-page-v60 .finish_l .list11kid li,
  body.unit-summary-page-v60 .finish_l .list16 li {
    margin-bottom: 5px !important;
  }

  body.site-side-layout.site-ease-layout .main,
  html.desktop-common-layout-v61
  body.desktop-side-page-v61.site-ease-layout
  .main {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.site-side-layout.site-ease-layout .main_yel {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.site-side-layout.site-ease-layout .print_l,
  body.site-side-layout.site-ease-layout .print_r {
    max-width: 50% !important;
    box-sizing: border-box !important;
  }

  body.site-side-layout.site-ease-layout .print_l img.print_h,
  body.site-side-layout.site-ease-layout .print_r img.print_h,
  body.site-side-layout.site-ease-layout .honbun img.print_h {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
  }

  body.site-side-layout.site-ease-layout .honbun,
  body.site-side-layout.site-ease-layout .sel_ryo_waku1_2,
  body.site-side-layout.site-ease-layout .waku_moji_ryo {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    box-sizing: border-box !important;
  }
}

/* =========================================================
   まとめ・受講証 A4印刷の均整化 v91

   ブラウザーのズーム率に依存するpx幅を印刷時だけ物理寸法へ置き換える。
   1ページ分の印字領域内で全体を上下中央に置き、受講証は左右中央へ固定。
   血圧まとめページは本文の行送りだけを広げて読みやすくする。
   ========================================================= */
@media print {
  html.desktop-common-layout-v61 body.unit-summary-page-v60,
  body.unit-summary-page-v60 {
    zoom: 1 !important;
  }

  body.unit-summary-page-v60 #wrapper,
  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.unit-summary-page-v60
  #wrapper {
    width: 190mm !important;
    min-width: 190mm !important;
    max-width: 190mm !important;
    min-height: 277mm !important;
    margin: 0 auto !important;
  }

  body.unit-summary-page-v60 .main_yel_zen,
  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.unit-summary-page-v60
  .main_yel_zen {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 190mm !important;
    min-width: 190mm !important;
    max-width: 190mm !important;
    min-height: 277mm !important;
    page-break-inside: avoid !important;
    break-inside: avoid-page !important;
  }

  body.unit-summary-page-v60 .sub_ti01f {
    width: 100% !important;
    margin: 0 0 4mm 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body.unit-summary-page-v60 .sub_ti01f img.print_h {
    max-width: 175mm !important;
    max-height: 16mm !important;
  }

  body.unit-summary-page-v60 .finish_l {
    display: flow-root !important;
    padding: 0 3mm !important;
  }

  body.unit-summary-page-v60 .finish_r,
  body.unit-summary-page-v60 .finish_r2 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 6mm auto 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }

  body.unit-summary-page-v60 .finish_zyuko,
  body.unit-summary-page-v60 .finish_zyuko_foot {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 135mm !important;
    margin: 0 auto !important;
    float: none !important;
  }

  body.unit-summary-page-v60 .finish_zyuko img.print_h,
  body.unit-summary-page-v60 .finish_zyuko_foot img.print_h {
    display: block !important;
    width: auto !important;
    max-width: 135mm !important;
    max-height: 82mm !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
  }

  body.summary-print-relaxed-v91 .finish_l .list11 li,
  body.summary-print-relaxed-v91 .finish_l .list11kid li,
  body.summary-print-relaxed-v91 .finish_l .list16 li,
  body.summary-print-relaxed-v91 .finish_l .f_orange,
  body.summary-print-relaxed-v91 .finish_l .f_orange20b,
  body.summary-print-relaxed-v91 .finish_l .f_blue20b,
  body.summary-print-relaxed-v91 .finish_l .f20,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome_lino,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome2,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome3,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome3_lino,
  body.summary-print-relaxed-v91 .finish_l .kakko_sage_matome4 {
    line-height: 30px !important;
  }

  body.summary-print-relaxed-v91 .finish_l .list11 li,
  body.summary-print-relaxed-v91 .finish_l .list11kid li,
  body.summary-print-relaxed-v91 .finish_l .list16 li {
    margin-bottom: 7px !important;
  }

  /* 塩分の詳細まとめは本文量が多いため、1ページ内では通常フローを使う。 */
  body.summary-print-dense-v91 .main_yel_zen,
  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.summary-print-dense-v91
  .main_yel_zen {
    display: block !important;
    min-height: 0 !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
  }

  body.summary-print-dense-v91 .finish_r,
  body.summary-print-dense-v91 .finish_r2 {
    margin-top: 3mm !important;
  }
}

/* =========================================================
   血圧まとめページの挿絵配置 v93

   matome_img3 は本来230px前後の小画像用の座標だが、血圧ページだけ
   620x213pxの横長画像を同じ座標で使っていたため、受講証・説明文・
   ボタンへ重なっていた。PC表示だけ本文左欄内へ戻し、縦横比を固定する。
   モバイル／タブレットの既存表示には作用させない。
   ========================================================= */
@media screen {
  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.blood-pressure-summary-v93
  .matome_img3 {
    left: 90px !important;
    width: 420px !important;
    height: auto !important;
    margin: 0 !important;
  }

  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.blood-pressure-summary-standard-v93
  .matome_img3 {
    top: 420px !important;
  }

  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.blood-pressure-summary-senior-v93
  .matome_img3 {
    top: 485px !important;
  }

  html.desktop-common-layout-v61
  body.desktop-wide-page-v61.blood-pressure-summary-v93
  .matome_img3 img.web_h {
    display: block !important;
    width: 420px !important;
    max-width: 420px !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* =========================================================
   まとめ・受講証ページの印刷本文幅 v93

   ブラウザー標準のulインデントと旧liのleft:1emが重なり、A4左端から
   約46mmの位置で本文が始まっていた。フォントサイズ・行間は維持し、
   箇条書きの余白だけを物理寸法へ統一して一行の文字数を増やす。
   ========================================================= */
@media print {
  body.unit-summary-page-v60 .finish_l {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  body.unit-summary-page-v60 .finish_l > ul.list11,
  body.unit-summary-page-v60 .finish_l > ul.list11kid,
  body.unit-summary-page-v60 .finish_l > ul.list16 {
    width: auto !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 2mm !important;
    box-sizing: border-box !important;
  }

  body.unit-summary-page-v60 .finish_l .list11 li,
  body.unit-summary-page-v60 .finish_l .list11kid li,
  body.unit-summary-page-v60 .finish_l .list16 li {
    left: 0 !important;
    right: auto !important;
  }
}
