@charset "utf-8";
/** ブランドカラー **/
/** テキストカラー **/
/* 全体背景 */
/* ボーダー */
/* グローバルメニュー */
/* ヘッダー */
/* 自治体からのお知らせ */
/* 自治体からのお知らせ v2 */
/* 自治体からのお知らせ v3 */
/* 自治体からのお知らせのバリエーション: 外枠 */
/* 流行疾患情報 */
/* アクションメッセージ */
/* 施設からのお知らせ */
/* 汎用リスト */
/* スケジュール */
/* 施設検索 */
/* 医療機関検索 */
/* 保育施設検索 */
/* イベント検索 */
/* パネル */
/** ボタンのカラー **/
/** コンポーネント **/
/**
  自治体ごとに色を設定するファイル。
  自治体ごとに固定したい色（ブランドカラー等）をテンプレート的に定義してある。
  基本的に color_scheme_base.less に定義した変数を上書きする形で使用する。
 */
/** ブランドカラー **/
/** テキストカラー **/
/* 全体背景 */
/* ボーダー */
/* グローバルメニュー */
/* ヘッダー */
/* 汎用リスト */
/* パネル */
/* 自治体からのお知らせ v3 */
/*
 以下は CRP インストール時に結合されるため、各部品に変更がない場合は
 IDE 上で LESS コンパイルエラーが表示される場合があります。
 デプロイ時には問題ありませんのでそのままコミットしてください。

 自治体ごとに変更する場合のみ下記部品を _base_* から複製して編集してください。
 */
/* =========================
  共通のパラメータ定義
========================= */
/* ========================================================
	reset.css => margin,padding等リセットCSS
======================================================== */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}
table {
  font-size: 100%;
  font-family: inherit;
}
fieldset,
img {
  border: 0;
}
img {
  vertical-align: top;
}
address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: normal;
  font-weight: normal;
}
ol,
ul {
  list-style: none;
}
caption,
th {
  text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
}
q:before,
q:after {
  content: '';
}
abbr,
acronym {
  border: 0;
}
select,
input,
textarea {
  font-size: 100%;
}
hr {
  display: none;
}
input[type="submit"],
button[type="submit"],
input[type="text"] {
  -webkit-appearance: none;
}
/** =====================
        汎用クラス
====================== **/
.text-warning,
.alert-error {
  color: #ff1515;
}
.text-information {
  color: #f87c00;
}
.text-note {
  color: #0096ff;
}
.text-normal {
  color: #4f3000;
}
.text-active {
  font-weight: bold;
  text-shadow: 1px 1px 1px #f87c00;
}
.text-inactive {
  opacity: 0.5;
}
.text-smaller {
  font-size: 80%;
}
.text-larger {
  font-size: 120%;
}
.text-bold {
  font-weight: bold;
}
.center-align {
  text-align: center !important;
}
.right-align {
  text-align: right !important;
}
.left-align {
  text-align: left !important;
}
.pull-right {
  float: right !important;
}
.spacer-b10 {
  margin-bottom: 10px !important;
}
.spacer-t10 {
  margin-top: 10px !important;
}
.spacer-t15 {
  margin-top: 15px !important;
}
.spacer-b15 {
  margin-bottom: 15px !important;
}
.spacer-t20 {
  margin-top: 20px !important;
}
.spacer-b20 {
  margin-bottom: 20px !important;
}
.spacer-t30 {
  margin-top: 30px !important;
}
.spacer-b30 {
  margin-bottom: 30px !important;
}
.spacer-t40 {
  margin-top: 40px !important;
}
.spacer-b40 {
  margin-bottom: 40px !important;
}
.spacer-t50 {
  margin-top: 50px !important;
}
.spacer-b50 {
  margin-bottom: 50px !important;
}
.spacer-t60 {
  margin-top: 60px !important;
}
.spacer-b60 {
  margin-bottom: 60px !important;
}
.spacer-t70 {
  margin-top: 70px !important;
}
.spacer-b70 {
  margin-bottom: 70px !important;
}
.spacer-t80 {
  margin-top: 80px !important;
}
.spacer-b80 {
  margin-bottom: 80px !important;
}
.spacer-l10 {
  margin-left: 10px !important;
}
.spacer-l20 {
  margin-left: 20px !important;
}
.block {
  display: block;
}
.hidden {
  display: none;
}
.word-break {
  word-break: break-all;
}
.non-decoration-link {
  text-decoration: none;
  color: #4f3000;
}
.narrow-link {
  margin: 0 -0.5em;
}
.article {
  white-space: pre-wrap;
}
.article img {
  max-width: 600px;
}
.notice-message,
.noticeMessage {
  background: #DCFFD5;
  border: solid 1px #B8E09E;
  padding: 3px 7px;
  color: green;
  border-radius: 4px;
}
.notice-message.error,
.noticeMessage.error {
  background: #ffcbda;
  border: 1px solid #ff4d4d;
  color: #ff1515;
}
.errorMessage {
  background: #FFF2D5;
  border: solid 1px #E0BC9E;
  padding: 3px 7px;
  color: #E04B28;
  border-radius: 4px;
}
.centered {
  text-align: center;
}
.ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.white-back {
  background: white;
  padding: 1rem;
  border-radius: 1rem;
}
.translucent {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
}
.translucent-bordered {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid #9a7042;
}
.narrow-translucent {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  padding: 0.5rem;
}
.divided-area {
  padding: 20px 0;
  border-top: dashed 2px #9a7042;
  border-bottom: dashed 2px #9a7042;
}
.al {
  color: #ff0000;
}
/** =====================
     画像ファイルの URL
====================== **/
/* =========================
  ボタン
========================= */
.btn {
  display: inline-block;
  box-sizing: content-box;
  margin: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: normal;
  padding: 12px 20px;
  font-size: 1rem;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
}
.btn:hover,
.btn:focus,
.btn-focus {
  color: #333333;
  text-decoration: none;
}
.btn:active,
.btn.active,
.btn-active {
  outline: 0;
  background-image: none;
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
}
.btn-default {
  color: #333333;
  background: #f8eff0;
  /* Old browsers */
  background: -moz-linear-gradient(top, #f7f7f7 0%, #dfe3e7 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f7f7f7), color-stop(100%, #dfe3e7));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #f7f7f7 0%, #dfe3e7 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #f7f7f7 0%, #dfe3e7 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #f7f7f7 0%, #dfe3e7 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #f7f7f7 0%, #dfe3e7 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7f7f7', endColorstr='#dfe3e7', GradientType=0);
  /* IE6-9 */
  border-color: #fafafa #c8c8c8 #c0c0c0 #fafafa;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active {
  color: #333333;
  background-color: #ebebeb;
  border-color: #adadad;
}
.open .btn-default.dropdown-toggle {
  color: #333333;
  background-color: #ebebeb;
  border-color: #adadad;
}
.open .btn-default.dropdown-toggle {
  background-image: none;
}
.btn-default .badge {
  color: white;
  background-color: #333333;
}
.btn-block {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
.color-btn-default {
  border-radius: 5px;
  color: white;
  background-color: #8a6fff;
  margin: 10px;
  min-width: 7rem;
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
}
.color-btn-default:hover,
.color-btn-default-hover {
  text-decoration: none;
  border: solid 1px #8a6fff;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.color-btn-default:active,
.color-btn-default-active {
  text-decoration: none;
  border: solid 1px #8a6fff;
}
.color-btn-default.danger {
  background-color: #dc3545;
}
.color-btn-huge {
  font-size: 1.5rem;
  margin: 0 8px;
  padding: 35px 0;
  height: 55px;
  width: 288px;
  border-radius: 5px;
}
.color-btn-normal {
  font-size: 1.3rem;
  min-width: 7rem;
  display: block;
}
.color-btn-small {
  font-size: 0.8rem;
  padding: 5px 5px;
  min-width: 4rem;
}
.top-enter-action .enter-action-button {
  display: block;
  position: relative;
  font-size: 1.5rem;
  width: 230px;
  height: 4rem;
  line-height: 4rem;
  margin: 20px auto;
  border-radius: 8px;
}
.top-enter-action .color-button-register {
  display: block;
  position: relative;
  font-size: 1.5rem;
  width: 230px;
  height: 4rem;
  line-height: 4rem;
  margin: 20px auto;
  border-radius: 8px;
  margin-left: 1.5rem;
  background: #cdccff;
  text-decoration: none;
  color: #613e00;
}
.top-enter-action .color-button-login {
  display: block;
  position: relative;
  font-size: 1.5rem;
  width: 230px;
  height: 4rem;
  line-height: 4rem;
  margin: 20px auto;
  border-radius: 8px;
  margin-right: 1.5rem;
  background: #ffc9df;
  text-decoration: none;
  color: #613e00;
}
.top-enter-action .button-text-img {
  display: block;
  width: 90%;
  height: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.color-btn-to-top {
  border-radius: 100px;
  border: solid 10px white;
  color: white;
  background-color: #fe5a9c;
  text-align: center;
  font-size: 40px;
  font-weight: bolder;
  position: fixed;
  bottom: 110px;
  width: 55px;
  padding: 10px 10px;
  z-index: 110;
  margin-left: 510px;
}
.color-btn-to-top:hover {
  color: #ffffff;
}
.register-btn {
  width: 14rem;
  height: 2.4rem;
  box-sizing: border-box;
  font-size: 1rem;
}
.register-btn.transparent-btn {
  cursor: default;
  opacity: 0.65;
  filter: alpha(opacity=65);
}
.register-btn.transparent-btn:hover {
  border: 1px solid transparent;
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  color: white;
}
.social-auth-btns {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 20px;
}
.social-auth-btns.social-auth-btns-register {
  margin-top: 20px;
}
.social-auth-btns.social-auth-btns-login {
  margin-top: 20px;
}
.social-auth-btn-wrapper {
  margin-bottom: 20px;
}
.social-auth-btn-wrapper .social-auth-btn {
  border-radius: 5px;
}
.social-auth-btn-wrapper:last-child {
  margin-bottom: 0;
}
.social-auth-google-btn div div div {
  height: 60px;
}
.social-auth-twitter-btn {
  background-color: #000;
  position: relative;
}
.social-auth-twitter-btn::before {
  content: "";
  background-image: url("/img/twitter-logo.svg?var=20240531");
  position: absolute;
  top: 50%;
  left: 10px;
  width: 30px;
  height: 32px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-twitter-btn .twitter-btn-input {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  color: #fff;
  padding-left: 55px;
  text-align: left;
}
.social-auth-apple-btn {
  position: relative;
  background-color: #000;
}
.social-auth-apple-btn::before {
  content: "";
  background-image: url("/img/apple-logo.svg");
  position: absolute;
  top: 50%;
  width: 54px;
  height: 100%;
  border-radius: 5px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-apple-btn .apple-btn-input {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  color: #fff;
  padding-left: 90px;
  text-align: left;
}
.social-auth-facebook-btn {
  position: relative;
  background-color: #1877f2;
}
.social-auth-facebook-btn::before {
  content: "";
  background-image: url("/img/facebook-logo.png");
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 54px;
  height: 100%;
  border-radius: 5px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-facebook-btn .facebook-btn-input {
  background-color: transparent;
  border: none;
  cursor: pointer;
  color: #fff;
  padding-left: 90px;
  text-align: left;
}
.social-auth-line-btn {
  cursor: pointer;
}
.social-auth-line-btn .line-btn-basic-layer {
  width: 14rem;
  height: 2.4rem;
  background-color: #06C755;
  border-radius: 5px;
}
.social-auth-line-btn .line-btn-logo-text-layer {
  position: relative;
}
.social-auth-line-btn .line-btn-logo-text-layer::before {
  content: "";
  background-image: url("/img/line-logo.png");
  position: absolute;
  top: 50%;
  left: 5px;
  width: 40px;
  height: 40px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-line-btn .line-btn-vertical-line-layer {
  position: relative;
}
.social-auth-line-btn .line-btn-vertical-line-layer::after {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50px;
  background-color: rgba(0, 0, 0, 0.08);
}
.social-auth-line-btn:hover .line-btn-logo-text-layer::before {
  content: "";
  background-image: url("/img/line-logo-hover.png");
  position: absolute;
  top: 50%;
  left: 5px;
  width: 40px;
  height: 40px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-line-btn:hover .line-btn-transparent-layer {
  position: relative;
}
.social-auth-line-btn:hover .line-btn-transparent-layer::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.1);
}
.social-auth-line-btn:active .line-btn-logo-text-layer::before {
  content: "";
  background-image: url("/img/line-logo-press.png");
  position: absolute;
  top: 50%;
  left: 5px;
  width: 40px;
  height: 40px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-line-btn:active .line-btn-transparent-layer {
  position: relative;
}
.social-auth-line-btn:active .line-btn-transparent-layer::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
.social-auth-line-btn .line-btn-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 11;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
.social-auth-line-btn.sign-up-line .line-btn-logo-text-layer::after {
  content: "LINEで登録する";
  color: #FFF;
  position: absolute;
  top: 50%;
  left: 90px;
  font-size: 1rem;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-line-btn.sign-in-line .line-btn-logo-text-layer::after {
  content: "LINEでログイン";
  color: #FFF;
  position: absolute;
  top: 50%;
  left: 90px;
  font-size: 1rem;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.social-auth-miid-btn {
  position: relative;
  background-color: #3A3A3A;
}
.social-auth-miid-btn::before {
  content: "";
  background-image: url("/img/mila-e-logo.svg");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 50px;
  width: 150px;
  height: 50%;
  border-radius: 5px;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  pointer-events: none;
}
.social-auth-miid-btn .miid-btn-input {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  color: #fff;
  padding-left: 178px;
  text-align: left;
}
.social-auth-setting .cooperate-btn-wrapper {
  line-height: 0;
}
.social-auth-setting .cooperate-btn-wrapper .cooperate-btn {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  min-height: 1.5rem;
  border-radius: 5px;
  cursor: pointer;
  padding: 0 40px;
  font-size: 1rem;
}
.social-auth-setting .cooperate-btn-wrapper .cooperate-btn:hover {
  opacity: 0.7;
}
.social-auth-setting .cooperate-btn-wrapper .cooperate-btn.cooperate-enable {
  color: #008000;
  border: 1px solid #008000;
}
.social-auth-setting .cooperate-btn-wrapper .cooperate-btn.cooperate-disable {
  color: #c22e32;
  border: 1px solid #c22e32;
}
.social-auth-setting .cooperate-btn-wrapper .cooperate-btn.mila-e-disabled {
  pointer-events: none;
}
/* =========================
  テキストボックス/テキストエリア
========================= */
.text-box,
.text-area {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
  border: solid 1px #bbbbbb;
  border-radius: 4px;
  padding: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.text-box:focus,
.text-area:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.text-box.text-box-short,
.text-area.text-box-short {
  width: 5rem;
}
.text-box.text-box-wide,
.text-area.text-box-wide,
.text-box.text-area-full-width,
.text-area.text-area-full-width {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.text-box[type="number"],
.text-area[type="number"] {
  text-align: right;
}
.text-box:disabled,
.text-area:disabled {
  background-color: #eee;
  opacity: 0.7;
}
input[type=file] {
  font-size: initial;
}
/* =========================
  入力フォームの部品類
========================= */
.input-required {
  display: inline-block;
  background-color: #ff1010;
  color: white;
  font-size: 0.8rem;
  padding: 1px 6px;
  border-radius: 5px;
}
.input-remarks {
  color: #0096ff;
  font-size: 0.8rem;
}
.service-term-checkbox {
  position: relative;
  top: 3px;
  margin-right: -5px;
}
/* =========================
  共通ヘッダー
========================= */
.service-logo {
  width: 640px;
  margin: 0 0 2rem 0;
  padding: 0;
}
.service-logo.and-screenshot {
  height: 312px;
  display: flex;
  align-items: center;
  border-top: 1px solid;
  border-bottom: 1px solid;
}
.service-logo__logo-img {
  width: 100%;
}
.page-header {
  width: 640px;
  border-bottom: 2px solid #F5EEE5;
  position: fixed;
  top: 0;
  padding: 30px 0;
  z-index: 100;
  background: white;
  color: #4f3000;
}
.page-header.header-logo {
  padding: 0;
}
.page-header.header-logo .header-logo-img {
  width: 640px;
}
.page-header .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  min-height: 1.5rem;
}
.page-header .back {
  position: absolute;
  left: 30px;
  vertical-align: middle;
  text-align: center;
}
.page-header .menu-bars {
  position: absolute;
  height: 1rem;
  line-height: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  font-size: 1rem;
  cursor: pointer;
  padding: 1rem;
}
@keyframes slide-in-r2l {
  from {
    left: 640px;
  }
  to {
    left: 0;
  }
}
@keyframes slide-out-l2r {
  from {
    left: 0;
  }
  to {
    left: 640px;
  }
}
.slide-menu {
  width: 600px;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 640px;
  z-index: 1000;
  opacity: 0.95;
  background: #a6864d;
  padding: 20px;
  animation-fill-mode: forwards;
  animation-duration: 0.3s;
}
.slide-menu .slide-menu-items {
  margin-top: 4rem;
}
.slide-menu .slide-menu-item {
  border-bottom: 1px white solid;
  padding: 0.2rem;
  margin-bottom: 0.5rem;
}
.slide-menu .slide-menu-item a {
  text-decoration: none;
  color: white;
}
.slide-menu .slide-menu-item .left-arrow {
  display: inline-block;
  margin-right: 0.5rem;
}
.slide-menu .slide-menu-close-button {
  float: right;
  width: 3rem;
  height: 3rem;
  text-align: center;
  border-radius: 0.2rem;
  color: #a6864d;
  background-color: white;
}
.slide-menu .slide-menu-close-button .slide-menu-close-icon {
  text-align: center;
  font-size: 2rem;
}
.slide-menu .slide-menu-close-button .slide-menu-close-text {
  font-size: 0.5rem;
}
/* =========================
  お知らせ
========================= */
.notifications {
  padding: 20px 30px;
  border-radius: 30px;
}
.notifications.notification-from-municipal {
  background-color: white;
}
.notifications.notification-epidemics {
  background-color: white;
}
.notifications .notification {
  display: block;
  text-decoration: none;
  color: #4f3000;
}
.notifications .notification:not(:first-child) {
  margin-top: 0.5rem;
}
.notifications .published-date {
  font-weight: bold;
}
.notifications .notification-text {
  color: #9a7042;
  margin-left: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.notifications .more {
  font-weight: bold;
  text-align: right;
}
.notifications .new {
  display: inline-block;
  font-weight: bold;
  font-size: 0.8rem;
  color: #ff1515;
}
.top-notification.notification-v2 {
  border: solid 3px #4f3000;
  border-radius: 30px;
  background-color: white;
}
.top-notification.notification-v2 .notifications.notification-from-municipal {
  border: none;
  background-color: white;
}
.top-notification.notification-v2 .notification-header {
  background-color: #4f3000;
  color: white;
  letter-spacing: 0.1rem;
  text-align: center;
  border-radius: 20px 20px 0 0;
}
.top-notification.notification-v2 .published-date {
  color: #4f3000;
}
.top-notification.notification-v2 .notification-text {
  color: #4f3000;
}
.top-notification.notification-v3 {
  border-radius: 30px;
  background-color: white;
}
.top-notification.notification-v3 .notifications.notification-from-municipal {
  border: none;
  background-color: white;
}
.top-notification.notification-v3 .notification-header {
  font-weight: bolder;
  border-bottom: 3px solid #ff7bb2;
  width: 92%;
  margin: 0 auto;
  padding: 5px 0;
  background-color: white;
  color: #ff7bb2;
  letter-spacing: 0.1rem;
  text-align: center;
}
.top-notification.notification-v3 .published-date {
  color: #9a7042;
}
.top-notification.notification-v3 .notification-text {
  color: #4f3000;
}
.top-notification.notification-outline {
  border: solid 3px #ff7bb2;
}
.text-link-area-under-notification-from-municipal {
  padding: 15px 30px 2px;
}
.text-link-area-under-notification-from-municipal .text-link-under-notification-from-municipal {
  display: block;
  font-weight: bold;
  text-align: right;
  margin-left: 1rem;
  margin-top: 0.2rem;
  text-decoration: none;
  color: #4f3000;
}
.epidemics-area {
  padding: 15px 30px 2px;
}
.epidemics-link {
  display: block;
  font-weight: bold;
  text-align: right;
  margin-left: 1rem;
  margin-top: 0.2rem;
  text-decoration: none;
  color: #4f3000;
}
/* =========================
  グローバルメニュー
========================= */
.global-menu-position {
  width: 640px;
  position: fixed;
  bottom: 0;
  height: 100px;
  border-top: 2px solid #F5EEE5;
  z-index: 110;
}
.global-menu {
  width: inherit;
  height: inherit;
  background-color: #FFFFFF;
  color: #d5c2b4;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: center;
  align-items: center;
}
.global-menu a {
  text-decoration: none;
  color: #d5c2b4;
}
.global-menu .global-menu-item {
  width: 100px;
}
.global-menu .global-menu-item .global-menu-icon {
  text-align: center;
}
.global-menu .global-menu-item .global-menu-icon .icon-svg {
  width: 50px;
  margin: 10px auto 0 auto;
}
.global-menu .global-menu-item .global-menu-icon .icon {
  fill: #d5c2b4;
}
.global-menu .global-menu-item .global-menu-description {
  text-align: center;
  font-size: 15px;
}
.global-menu .global-menu-item.active .global-menu-icon .icon {
  fill: #ff7bb2;
}
.global-menu .global-menu-item.active a {
  color: #ff7bb2;
  text-decoration: none;
}
/* =========================
  見出し
========================= */
.caption {
  text-align: center;
  font-size: 1.3rem;
  padding: 20px;
  color: #fe5a9c;
}
.caption .caption-icon {
  color: white;
  font-weight: bold;
  padding: 7px;
  background-color: #fe5a9c;
  border-radius: 1em;
}
.caption-middle {
  text-align: center;
  font-size: 1rem;
  padding: 10px 0;
}
.markdown {
  word-break: break-all;
}
.markdown h1 {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.markdown h1 .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.markdown * + h1 {
  margin-top: 2rem;
}
.markdown h2 {
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0.5rem;
  margin-top: 1rem;
}
.markdown h3 {
  font-size: 1.3rem;
  font-weight: normal;
}
.markdown h4 {
  font-size: 1.1rem;
}
.markdown ul {
  margin: 0.5rem;
}
.markdown ul li {
  list-style: disc;
  list-style-position: inside;
}
.markdown hr {
  display: block;
  border: solid 1px #fe5a9c;
}
.markdown img {
  max-width: 100%;
}
/* =========================
  スケジュール
========================= */
/* タブ形式のやつ */
.schedules .text-warning {
  margin: 0.5rem 1rem;
  padding: 1rem;
  border-radius: 1rem;
  background: white;
}
.schedule {
  min-height: 100%;
}
.schedule .on-the-date {
  margin: 20px 0 30px 0;
}
.schedule .on-the-date .date-area {
  background: transparent;
  border-radius: 18px;
}
.schedule .on-the-date .date {
  margin-left: 1rem;
  font-weight: bold;
  font-size: 1.3rem;
  display: inline;
}
.schedule .on-the-date .formatted-age {
  display: inline;
  font-size: 0.8rem;
  padding-left: 5px;
}
.schedule .vaccine {
  border-radius: 30px;
}
.schedule .vaccine .times {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffb0b0;
  color: #4f3000;
}
.schedule .vaccine .expense {
  vertical-align: text-top;
}
.schedule .vaccine .expense.public {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.schedule .vaccine .expense.subsidy {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.schedule .vaccine .expense.private {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffdd99;
  color: #4f3000;
}
.schedule .vaccine .note {
  font-size: 0.7rem;
}
.schedule .vaccine .alert {
  color: #ff1515;
  font-size: 0.7rem;
}
/* 予定を過ぎても接種記録がついていないやつ */
.unreported-slates {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0.1rem solid #ff1515;
  border-radius: 1rem;
  padding: 1rem;
}
.unreported-slates .for-date {
  background: white;
  border-radius: 1rem;
  padding: 0.7rem;
  margin-bottom: 0.5rem;
}
/* 本日接種予定のもの */
.today-slates {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0.1rem solid #fe5a9c;
  border-radius: 1rem;
  padding: 1rem;
}
.today-slates .for-date {
  background: white;
  border-radius: 1rem;
  padding: 0.7rem;
  margin-bottom: 0.5rem;
}
/* =========================
  情報ページ
========================= */
.announcement-categories {
  table-layout: fixed;
  width: 640px;
  margin-left: auto;
  margin-right: auto;
  border-collapse: separate;
  border-spacing: 1rem;
}
.announcement-categories .category {
  position: relative;
  height: 200px;
  text-align: center;
  color: #9a7042;
  background-color: white;
  border-radius: 2rem;
}
.announcement-categories .category a {
  color: inherit;
  text-decoration: none;
}
.announcement-categories .category .icon .panel-img {
  width: 4.5rem;
}
.announcement-categories .category .name {
  margin: 0.2em auto 0.3em auto;
  width: 90%;
  font-weight: bold;
  font-size: 1rem;
}
.announcement-categories .category .name .name-img {
  width: 5.5rem;
}
.announcement-categories .category .background .panel-img {
  position: absolute;
  left: 0;
  top: 0;
  height: 200px;
  width: 283px;
}
.announcement-categories .category .background .name {
  position: absolute;
  width: 90%;
  font-weight: bold;
  font-size: 1rem;
  left: 20px;
  bottom: 10px;
  margin: 0;
  padding: 0;
}
.announcement-categories .category.icon-only .icon {
  height: 100%;
}
.announcement-categories .category.icon-only .icon .panel-img {
  width: 70%;
}
.announcement-categories .category.icon-only .name {
  height: 0;
}
.announcement-categories .fit-height .icon .panel-img {
  height: 4.5rem;
  width: auto;
}
.announcement-title {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.announcement-article {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  word-break: break-all;
}
.announcement-article h1 {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.announcement-article h1 .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.announcement-article * + h1 {
  margin-top: 2rem;
}
.announcement-article h2 {
  font-size: 1.3rem;
  font-weight: normal;
  margin: 0.5rem;
  margin-top: 1rem;
}
.announcement-article h3 {
  font-size: 1.3rem;
  font-weight: normal;
}
.announcement-article h4 {
  font-size: 1.1rem;
}
.announcement-article ul {
  margin: 0.5rem;
}
.announcement-article ul li {
  list-style: disc;
  list-style-position: inside;
}
.announcement-article hr {
  display: block;
  border: solid 1px #fe5a9c;
}
.announcement-article img {
  max-width: 100%;
}
/* =========================
  情報ページ
========================= */
.settings .add-child {
  text-decoration: none;
  color: #4f3000;
  text-align: right;
  color: #fe5a9c;
  margin: 10px 20px;
}
.settings .add-sub-member {
  text-decoration: none;
  color: #4f3000;
  text-align: right;
  color: #fe5a9c;
  margin: 10px 20px;
}
/* =========================
  画面のセクションを分断する区切り線
  自治体ごとにデザインが変わることが多くなる予感がしたので個別のファイルにした
========================= */
.divide-line {
  height: 5px;
  margin: 20px 0 20px 0;
  background-color: #9a7042;
  border-radius: 5px;
}
.divide-line-dash {
  border: 2px dashed #9a7042;
  border-bottom: none;
}
/* =========================
  アクションメッセージ
========================= */
.next-actions .action-message {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 20px 30px;
  border-radius: 30px;
  background-color: white;
  position: relative;
}
.next-actions .action-message .arrow-next {
  position: absolute;
  height: 1rem;
  line-height: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 8px;
}
.next-actions .action-message .action-link {
  text-decoration: none;
  color: #4f3000;
}
/* =========================
  施設検索
========================= */
.institution .type-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.institution .service-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffdd99;
  color: #4f3000;
}
/* =========================
  医療機関検索
========================= */
.hospital .vaccine-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffdd99;
  color: #4f3000;
}
.hospital .department-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.hospital .tag-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffb2dc;
  color: #4c3729;
}
.hospital-detail {
  margin-top: 20px !important;
  margin-bottom: 40px !important;
  word-break: break-all;
}
.search-form .list-header {
  margin-bottom: 10px;
  padding: 10px;
  font-size: 1rem;
}
.search-form .list-header .pull-right {
  margin-top: 6px;
  margin-right: 10px;
}
.search-form ul {
  margin: 0 !important;
}
.search-form li {
  margin: 10px 0;
  padding: 20px 0 20px 10px;
  background-color: white;
  border-radius: 18px;
}
.hospital-areas__title {
  display: inline-block;
}
.hospital-areas__name {
  display: inline-block;
}
.hospital-areas__link {
  display: inline-block;
}
/* =========================
  保育連携施設
========================= */
.notification-nurseries {
  padding: 20px 30px;
  border-radius: 30px;
  background-color: white;
}
.notification-nurseries .published-date {
  font-weight: bold;
}
.notification-nurseries .notification-text {
  color: #9a7042;
  margin-left: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.notification-nurseries .new {
  display: inline-block;
  font-weight: bold;
  font-size: 0.8rem;
  color: #ff1515;
}
.notification-nurseries .notification-item {
  display: block;
  text-decoration: none;
  color: #4f3000;
}
.notification-nurseries .notification-item + .notification-item {
  margin-top: 0.5rem;
}
.nursery .more {
  margin-top: 0.3rem;
  font-weight: bold;
  text-align: right;
}
.nursery .type-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.nursery .establishment-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #c7a3ec;
  color: #4f3000;
}
.nursery .entry-age-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #abeb95;
  color: #4f3000;
}
.nursery .leave-age-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #abeb95;
  color: #4f3000;
}
.nursery .service-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffdd99;
  color: #4f3000;
}
.nursery .department-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.nursery .additional-information-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffccff;
  color: #4f3000;
}
.nursery-detail {
  width: 100%;
  word-break: break-all;
}
.nursery-detail th {
  width: 30%;
}
.nursery-detail td {
  width: 70%;
}
.nursery-announcement-title {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.nursery-announcement-title .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.nursery-announcement-article img {
  max-width: 100%;
}
.lowest-index-table {
  margin-top: 10px;
}
.lowest-index-table .lowest-index-table-appendix {
  font-size: 0.9em;
}
.lowest-index-table .lowest-index-table-notice {
  margin-top: 20px;
}
.lowest-index-table .lowest-index-table-pdfs {
  margin-top: 20px;
}
.lowest-index-table table {
  border-collapse: collapse;
  padding: 0;
  table-layout: fixed;
}
.lowest-index-table table tr {
  background-color: #fff;
  padding: 0.35em;
  border-bottom: 1px solid #bbb;
}
.lowest-index-table table tr:last-child {
  border-bottom: none;
}
.lowest-index-table table th {
  border-right: 1px solid #bbb;
}
.lowest-index-table table td {
  width: 150px;
  padding: 15px 10px;
  border-right: 1px solid #bbb;
}
.lowest-index-table table th:last-child,
.lowest-index-table table td:last-child {
  border: none;
}
.lowest-index-table table thead {
  border-bottom: 2px solid #bbb;
}
.search-form .list-header {
  margin-bottom: 10px;
  padding: 10px;
  font-size: 1rem;
}
.search-form .list-header .pull-right {
  margin-top: 6px;
  margin-right: 10px;
}
.search-form ul {
  margin: 0 !important;
}
.search-form li {
  margin: 10px 0;
  padding: 20px 0 20px 10px;
  background-color: white;
  border-radius: 18px;
}
/* =========================
  ツールバー
========================= */
.toolbar {
  width: 100%;
  height: 3rem;
  z-index: 1000;
  margin-bottom: 2px;
}
.toolbar .tool.left {
  float: left;
}
.toolbar .tool.right {
  float: right;
}
.center-toolbar {
  margin: 20px 20px;
}
.bottom-toolbar {
  margin: 20px 20px;
}
/* =========================
  サイト内検索
========================= */
.keyword-search {
  position: relative;
}
.keyword-search input[type="text"].keyword-search-input {
  height: 2rem;
  line-height: 2rem;
  display: inline-block;
  border: 1px #333333 solid;
  font-size: 1rem;
  width: 97%;
  padding: 0;
}
.keyword-search .keyword-search-button {
  display: inline-block;
  border: 3px #fe5a9c solid;
  background-color: #fe5a9c;
  color: #613e00;
  font-size: 1.3rem;
  height: 2.1rem;
  position: absolute;
  top: 0;
  right: 0;
}
/* =========================
   ページネータ
========================= */
.pagination {
  text-align: center;
}
.pagination .paging-item {
  display: inline-block;
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}
.pagination .prev {
  display: inline-block;
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}
.pagination .next {
  display: inline-block;
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}
.pagination .page-number {
  display: inline-block;
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}
.pagination .gap {
  display: inline-block;
}
.pagination .summary {
  text-align: right;
}
/* =========================
  外部リンクへのクッションページ
========================= */
.external-cushion .url {
  word-break: break-all;
}
/* =========================
  BBS
========================= */
.bbs .more {
  margin-top: 0.3rem;
  font-weight: bold;
  text-align: right;
}
.bbs .type-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #4f3000;
}
.bbs .service-tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ffdd99;
  color: #4f3000;
}
.bbs .thread {
  border: solid #3cbbb3 3px;
  border-radius: 20px;
  background-color: white;
  padding: 10px;
}
.bbs .thread article {
  margin: 20px 0;
}
.bbs .thread .thread-reply {
  background: #0000ff33;
}
.bbs .topic {
  font-size: 20px;
}
.bbs .comment {
  border: solid orange 3px;
  border-radius: 20px;
  background-color: white;
  margin-bottom: 20px;
  padding: 10px;
  overflow: hidden;
}
.bbs .comment .comment-reply {
  background: #ffa50045;
}
.bbs .admin_comment {
  background-color: pink;
  color: black;
}
/* =========================
  アプリダウンロードボタン
========================= */
.application-download .application-download-title {
  font-weight: bold;
}
.application-download a,
.application-download a:link,
.application-download a:hover,
.application-download a:visited {
  text-decoration: none;
}
.application-download a img,
.application-download a:link img,
.application-download a:hover img,
.application-download a:visited img {
  width: 290px;
  height: 86px;
  margin: 5px;
}
/* =========================
  成長記録
========================= */
.graph-wrapper {
  text-align: center;
}
.graph-wrapper .growth-graphs {
  display: inline-block;
  width: 400px;
  margin: 0 auto;
  padding: 0 auto;
  overflow-x: auto;
  background-color: white;
  vertical-align: top;
}
.graph-wrapper .growth-graphs .graph {
  width: 800px;
  padding: 0 auto;
}
.graph-wrapper .growth-graphs .graph .graph-canvas {
  display: block;
  width: 800px;
  height: 455px;
}
.graph-wrapper .graph-label {
  display: inline-block;
  width: 30px;
  height: 455px;
  vertical-align: top;
  margin: 0 auto;
  padding: 0 auto;
}
.graph-wrapper .graph-labels {
  margin: 0 auto;
  margin-bottom: 5px;
  width: 250px;
  background-color: white;
  border-radius: 5px;
}
.graph-wrapper .graph-labels .graph-color {
  display: inline-block;
  width: 40px;
  height: 0.5em;
}
.graph-wrapper .graph-labels .graph-color-weight {
  background-color: rgba(255, 99, 132, 0.4);
  -webkit-box-shadow: 1px 1px 3px 3px rgba(255, 99, 132, 0.3);
  box-shadow: 1px 1px 3px 3px rgba(255, 99, 132, 0.3);
}
.graph-wrapper .graph-labels .graph-color-stature {
  background-color: rgba(99, 99, 255, 0.4);
  -webkit-box-shadow: 1px 1px 3px 3px rgba(99, 99, 255, 0.3);
  box-shadow: 1px 1px 3px 3px rgba(99, 99, 255, 0.3);
}
.graph-wrapper .graph-labels .graph-color-head-girth {
  background-color: rgba(42, 176, 42, 0.4);
  -webkit-box-shadow: 1px 1px 3px 3px rgba(42, 176, 42, 0.3);
  box-shadow: 1px 1px 3px 3px rgba(42, 176, 42, 0.3);
}
.graph-wrapper .graph-labels .graph-label-text {
  font-size: 50%;
  display: inline-block;
  margin-right: 5px;
}
.graph-wrapper .graph-x-label {
  text-align: center;
  font-size: 50%;
}
.inline-radio {
  display: flex;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #b6b6b6;
  width: 70%;
  margin: 0 auto;
}
.inline-radio div {
  position: relative;
  flex: 1;
}
.inline-radio input {
  width: 100% !important;
  height: 30px !important;
  opacity: 0;
}
.inline-radio label {
  position: absolute;
  top: 0;
  left: 0;
  color: #b6b6b6;
  width: 100%;
  height: 100%;
  font-size: 60%;
  background: #F8EFF0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  border-right: 1px solid #b6b6b6;
}
.inline-radio div:last-child label {
  border-right: 0;
}
.inline-radio input:checked + label {
  background: white;
  font-weight: 500;
  color: #4f3000;
}
.bottom-graph-messages {
  margin: 0.7em;
}
.modified-age-message {
  margin-top: 1rem;
  padding: 0.4rem;
  border-radius: 1rem;
  font-size: 0.6rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
}
.growth-line-source {
  font-size: 40%;
  text-align: right;
}
/* =========================
  健康の記録
========================= */
.health-record-list {
  padding-left: 20px;
  padding-right: 20px;
}
.health-record-list__section {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  margin-top: 20px;
  margin-bottom: 20px;
}
.health-record-list__section-header {
  margin: 0 0 15px 0;
  padding: 5px 10px;
  text-align: center;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.health-record-list__group-header {
  margin: 10px 0 15px 0;
  padding: 5px 10px;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
#dd-screening .health-record-list__section-header {
  font-size: 1rem;
}
/* =========================
   アンケート画面
========================= */
.question-subject {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.question-subject .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.question-answer {
  margin: 3rem 1rem;
}
.survey-request {
  text-align: center;
  background: white;
  padding: 1rem;
  border-radius: 1rem;
  margin-bottom: 1.2rem;
}
/* =========================
  メール設定ページ
========================= */
.delivery {
  width: 600px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px;
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  padding: 0;
}
/* =========================
  会員証
========================= */
.membership-card {
  position: relative;
  background-color: white;
  padding: 1rem;
  border-radius: 0.5rem;
}
.membership-card .membership-card-name {
  font-size: 1.3rem;
  margin-right: 1.7rem;
}
.membership-card .membership-card-stamp {
  white-space: nowrap;
  font-size: 1rem;
  color: #ff1515;
  border: 3px solid #ff1515;
  border-radius: 0.5rem;
  padding: 0.1rem;
}
.membership-card .membership-card-view {
  background-color: white;
  padding: 0.5rem 1rem;
  text-align: center;
}
.membership-card .membership-card-code {
  text-align: center;
  letter-spacing: 0.5em;
  color: black;
}
.membership-card .membership-card-no-image {
  background-color: white;
  padding: 0.5rem 1rem;
  text-align: center;
  text-align: left;
}
.membership-card .hide-button {
  position: absolute;
  right: 1rem;
  top: 1rem;
  font-size: 1.3rem;
  height: 1.7rem;
  line-height: 1.7rem;
  width: 1.7rem;
  border-radius: 0.2rem;
  border: 1px solid #eaeaea;
  text-align: center;
  cursor: pointer;
}
.membership-card .hide-button.on {
  background-color: #80808050;
  border-color: #bfbfbf;
  box-shadow: 1px 1px 1px 1px #ccc inset;
}
.membership-card-type-name {
  text-align: center;
  font-size: 1.3rem;
  padding: 20px;
  color: #fe5a9c;
}
.membership-card-type-name .caption-icon {
  color: white;
  font-weight: bold;
  padding: 7px;
  background-color: #fe5a9c;
  border-radius: 1em;
}
.membership-card-ghost .membership-card {
  background-color: #eaeaea;
}
.membership-card-ghost .hide-button {
  border-color: #d0d0d0;
}
.membership-card-list-item {
  margin-bottom: 1rem;
}
.membership-card-detail-link {
  display: table-cell;
  width: 100%;
  text-decoration: none;
  color: #4f3000;
  cursor: pointer;
}
.membership-card-up-down {
  display: table-cell;
  vertical-align: middle;
  padding-left: 0.3rem;
}
.membership-card-up-down .membership-card-up-down-button {
  font-size: 1rem;
  cursor: pointer;
  color: inherit;
  height: 3rem;
  width: 1.5rem;
  background: white;
  border: 1px solid #e0e0e0;
  border-radius: 5px;
}
.membership-card-up-down .membership-card-up-down-button[disabled] {
  background: #ececec;
  cursor: default;
}
.membership-card-add-button {
  cursor: pointer;
  font-size: 1.5rem;
  text-align: center;
  vertical-align: middle;
  z-index: 100;
  display: block;
  color: #613e00;
  background-color: #fe5a9c;
  box-sizing: border-box;
  height: 80px;
  line-height: 80px;
  width: 80px;
  border-radius: 83px;
  border: 3px solid #613e00;
  position: fixed;
  bottom: 110px;
  margin-left: 524px;
}
.membership-card-add-button a {
  color: inherit;
}
.membership-card-description {
  margin: 1rem 0;
}
.membership-card-types {
  list-style: disc inside;
  margin: 0.5rem 1rem;
}
.membership-card-guide-message {
  position: fixed;
  bottom: 110px;
  height: 80px;
  line-height: 80px;
}
.relationship-form-support {
  margin: 0.4rem 0;
}
.relationship-form-support > * {
  display: inline-block;
}
.relationship-form-support .relationship-button {
  font-size: 1rem;
  text-align: center;
  padding: 0.1rem 0.3rem;
  color: inherit;
  background-color: white;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.5);
  border: 1px #f0f0f0 solid;
  border-radius: 0.2rem;
  cursor: pointer;
  margin-right: 0.3rem;
}
.relationship-form-support .relationship-button:active {
  box-shadow: none;
}
.membership-card-type-note table {
  border-collapse: collapse;
}
.membership-card-type-note table th,
.membership-card-type-note table td {
  border: 1px solid #000000;
  padding: 0.1rem;
  text-align: center;
}
/*
  バーコード読み取り画面
 */
.barcode-reader .barcode-live-canvas {
  height: 480px;
  position: relative;
  overflow: hidden;
}
.barcode-reader .barcode-live-canvas video {
  width: 100%;
}
/* =========================
  メールアドレスに関するスタイル定義
========================= */
/* 無効なメールアドレス */
.email-address-disabled {
  color: #b5b5b5;
}
/* 無効なメールアドレスであることを示す文言 */
.email-address-disabled-description {
  display: inline-block;
  margin-left: 10px;
  font-size: 0.8rem;
  color: #f87c00;
}
/* =========================
  妊娠中の記録
========================= */
.pregnancy-graph-wrapper {
  text-align: center;
}
.pregnancy-graph-wrapper .pregnancy-graphs {
  display: inline-block;
  width: 400px;
  margin: 0 auto;
  padding: 0 auto;
  overflow-x: auto;
  background-color: white;
  vertical-align: top;
}
.pregnancy-graph-wrapper .pregnancy-graphs .graph {
  width: 800px;
  padding: 0 auto;
}
.pregnancy-graph-wrapper .pregnancy-graphs .graph .graph-canvas {
  display: block;
  width: 800px;
  height: 455px;
}
.pregnancy-graph-wrapper .graph-label {
  display: inline-block;
  width: 30px;
  height: 455px;
  vertical-align: top;
  margin: 0 auto;
  padding: 0 auto;
}
.pregnancy-graph-wrapper .graph-labels {
  text-align: center;
}
.pregnancy-graph-wrapper .graph-x-label {
  text-align: center;
  font-size: 80%;
}
.bottom-graph-messages {
  margin: 0.7em;
}
#after_asphyxia {
  display: block;
}
#after_asphyxia > div {
  display: inline-block;
}
#after_asphyxia > div.arrow {
  vertical-align: top;
}
.color-btn-light {
  border-radius: 5px;
  color: #fe5a9c;
  border: 2px solid #fe5a9c;
  background-color: transparent;
  margin: 6px;
  min-width: 5rem;
}
.color-btn-light:hover {
  text-decoration: none;
  border: solid 2px #d5c2b4;
  color: #d5c2b4;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.color-btn-light:active {
  text-decoration: none;
  border: solid 2px #fe5a9c;
}
.pregnancy-history {
  border-radius: 1rem;
  margin: 5px;
  padding: 5px;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
}
#pregnancy-history-template .pregnancy-history {
  display: none;
}
/* =========================
  通知履歴
========================= */
.notification-list__section {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  margin-top: 20px;
  margin-bottom: 20px;
}
.notification-list__subject {
  border-bottom: 5px solid #9a7042;
  font-size: 1rem;
  font-weight: normal;
  color: #9a7042;
  word-break: break-all;
}
.notification-list__body {
  margin-top: 20px;
  margin-bottom: 20px;
  word-break: break-all;
}
.notification-list__created {
  font-size: 0.5rem;
  text-align: right;
}
.handbook__title {
  text-align: center;
  margin: 20px 0;
}
.handbook__wrapper {
  width: 600px;
  margin: 10px auto;
}
.handbook__page {
  width: 600px;
}
.handbook__download {
  margin-bottom: 20px;
}
.handbook__controller {
  text-align: center;
}
.handbook__controller .btn + .btn {
  margin-left: 20px;
}
.babyfood #app {
  padding-bottom: 100px;
}
.babyfood__button {
  display: inline-block;
  box-sizing: content-box;
  margin: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: normal;
  padding: 12px 20px;
  font-size: 1rem;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
  border-radius: 5px;
  color: white;
  background-color: #8a6fff;
  margin: 10px;
  min-width: 7rem;
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
}
.babyfood__button:hover {
  color: #333333;
  text-decoration: none;
  border: solid 1px #8a6fff;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.babyfood__button:active {
  outline: 0;
  background-image: none;
  text-decoration: none;
  border: solid 1px #8a6fff;
}
.babyfood__button--small {
  font-size: 0.875rem;
  margin: 0px;
  padding: 3px 8px;
  min-width: 4rem;
}
.babyfood__button--outline {
  color: #1976d2;
  border: #1976d2 1px solid;
  border-radius: 5px;
  background: none;
  box-shadow: none;
}
.babyfood__button--completed-outline {
  color: #1b5e20 !important;
  border: #1b5e20 1px solid;
  border-radius: 5px;
  background: none;
  box-shadow: none;
}
.babyfood__button--danger-outline {
  color: #f44336 !important;
  border: #f44336 1px solid;
  border-radius: 5px;
  background: none;
  box-shadow: none;
}
.babyfood__button--attention {
  color: black;
  background-color: #ff9800;
}
.babyfood__button--attention:hover,
.babyfood__button--attention:focus,
.babyfood__button--attention:active {
  text-decoration: none;
  border: solid 1px #e65100;
}
.babyfood__button--danger {
  color: black;
  background-color: #f44336;
}
.babyfood__button--danger:hover,
.babyfood__button--danger:focus,
.babyfood__button--danger:active {
  text-decoration: none;
  border: solid 1px #b71c1c;
}
/* =========================
  母子手帳読み取り
========================= */
.handbook-reader-add {
  display: inline-block;
}
.handbook-reader-camera-button {
  cursor: pointer;
  font-size: 1rem;
  text-align: center;
  vertical-align: middle;
  display: block;
  color: #613e00;
  background-color: #fe5a9c;
  box-sizing: border-box;
  width: 300px;
  border-radius: 303px;
  border: 3px solid #613e00;
  margin-left: 304px;
}
.handbook-reader-camera-button a {
  color: inherit;
  text-decoration: none;
}
.diagnose .container-direction-move-in {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: dashed 1px #9a7042;
}
.moving .text-main {
  font-size: 90%;
  font-weight: bold;
}
.moving .moving-target-cities .target-cities {
  width: 80%;
  font-size: 80%;
}
.move-out .container-move-out-description {
  margin-bottom: 60px;
}
.move-out .container-move-out-description .moving-items {
  font-size: 90%;
}
.move-out .explanation-detail {
  font-size: 70%;
  margin: 0 20px;
}
.move-in .mic-submit-btn {
  margin-right: 50px;
  background-color: #8a6fff;
}
.move-in-confirm .mic-submit-btn {
  margin-right: 50px;
  background-color: #8a6fff;
}
.move-in-annotation {
  font-size: 70%;
}
.font-style-inherit {
  font-style: inherit;
}
.not-found-info {
  margin-right: -3px;
}
.note-pointer-small {
  margin-right: -4px;
}
.move-out-caution {
  margin-left: 2rem;
  color: #f87c00;
}
/* =========================
  イベントカレンダー
========================= */
.search-form .list-header {
  margin-bottom: 10px;
  padding: 10px;
  font-size: 1rem;
}
.search-form .list-header .pull-right {
  margin-top: 6px;
  margin-right: 10px;
}
.search-form ul {
  margin: 0 !important;
}
.search-form li {
  margin: 10px 0;
  padding: 20px 0 20px 10px;
  background-color: white;
  border-radius: 18px;
}
.search-form .date {
  padding: 1rem;
  border-radius: 1rem;
  background-color: white;
}
.event .tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ff7bb2;
  color: #4f3000;
}
.event .tag-selected {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: white;
  color: #4f3000;
}
/* =========================
  副反応の記録
========================= */
.side-reaction__series-id-select {
  width: 100%;
}
.side-reaction__read-only .th {
  padding: 1rem 0.5rem;
}
.event-ticket-republish__notice {
  list-style: disc;
  margin: 1rem 0 1rem 1em;
  font-size: 80%;
}
.nursery-document {
  position: relative;
}
.nursery-document__side-by-side-target {
  display: inline-block;
  width: 47%;
  margin-top: 0;
  padding-top: 0;
  min-height: 100px;
  vertical-align: top;
}
.nursery-document__side-margin {
  margin-left: 20px;
  margin-right: 20px;
}
.nursery-document__labeled-document {
  margin-bottom: 20px;
}
.nursery-document__group-label {
  font-size: 0.5rem;
  text-align: right;
  font-weight: bold;
}
.nursery-document__context-area {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
  font-size: 1rem;
}
.nursery-document__context-area .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.nursery-document__dialog-wrapper {
  position: fixed;
  width: 100%;
  bottom: 110px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: center;
  align-items: center;
  z-index: 120;
}
.nursery-document__message-dialog {
  padding: 1rem;
  border-radius: 1rem;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  border: 2px solid #ff7bb2;
  background: #ffffff;
  filter: alpha(opacity=90);
  background: rgba(255, 255, 255, 0.9);
  width: 80%;
  text-align: center;
}
.nursery-document__additional-dialog {
  padding: 1rem;
  border-radius: 1rem;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  border: 2px solid #ff7bb2;
  background: #ffffff;
  filter: alpha(opacity=90);
  background: rgba(255, 255, 255, 0.9);
  width: 80%;
  text-align: right;
}
.nursery-document__additional-count {
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  text-align: center;
  width: 20%;
}
.nursery-document__additional-button {
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  text-align: center;
  width: 70%;
}
.nursery-document__checkbox {
  vertical-align: top;
  min-height: 1rem;
}
.nursery-document__label-text {
  display: inline-block;
  width: 85%;
  height: 100%;
}
.nursery-document__label-description {
  color: #f87c00;
  font-size: 80%;
}
.nursery-document__document-btn {
  display: inline-block;
  box-sizing: content-box;
  margin: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: normal;
  padding: 12px 20px;
  font-size: 1rem;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  text-decoration: none;
  border-radius: 5px;
  color: white;
  background-color: #8a6fff;
  margin: 10px;
  min-width: 7rem;
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.75);
  color: #4f3000;
  background-color: rgba(138, 111, 255, 0.5);
  min-width: 4rem;
}
.nursery-document__document-wrapper {
  padding: 1rem;
  border-radius: 1rem;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  filter: alpha(opacity=90);
  background: rgba(255, 255, 255, 0.9);
}
/* =========================
  横長スケジュール
========================= */
.horizontal_schedule {
  width: auto;
  overflow-x: auto;
}
.horizontal_schedule__schedule-list {
  width: auto;
  table-layout: fixed;
  border-collapse: collapse;
  white-space: nowrap;
}
.horizontal_schedule__schedule-list .header {
  text-align: center;
  background: #F1F1F1;
  border: solid 2px #fe5a9c;
  padding: 0 5px;
}
.horizontal_schedule__schedule-list .vaccine-name {
  text-align: left;
  background: white;
  border: solid 2px #fe5a9c;
  padding: 0 5px;
}
.horizontal_schedule__schedule-list .schedule {
  text-align: center;
  background: white;
  border: solid black;
  border-width: 2px;
  padding: 0 5px;
}
.horizontal_schedule__schedule-list .public_cost {
  background: #55ccff;
}
.horizontal_schedule__schedule-list .subsidy_cost {
  background: #55ccff;
}
.horizontal_schedule__schedule-list .times {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-flow: column;
  width: 25px;
  height: 25px;
  background: white;
  color: #4f3000;
  border: 1px solid #4f3000;
}
.horizontal_schedule__schedule-list .done {
  background: #BEBEBE;
  border: 1px solid #646262;
}
.horizontal_schedule__example {
  padding: 5px;
  border-radius: 10px;
  background: #ffffff;
  filter: alpha(opacity=70);
  background: rgba(255, 255, 255, 0.7);
  white-space: nowrap;
  width: max-content;
}
.horizontal_schedule__example .cost {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #55ccff;
  color: #55ccff;
}
.horizontal_schedule__example .times {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-flow: column;
  width: 25px;
  height: 25px;
  background: white;
  color: #4f3000;
  border: 1px solid #4f3000;
}
.horizontal_schedule__example .done {
  background: #BEBEBE;
  border: 1px solid #646262;
}
/* =========================
  インナーメニュー用
========================= */
.picture_link {
  text-align: center;
  display: flex;
  align-items: center;
}
.picture_link .link_img {
  width: 25%;
}
.picture_link .link_textbox {
  width: 64%;
}
/* =========================
  既往歴の記録
========================= */
.medical-impact__doctor-icon {
  color: #fe5a9c;
}
.medical-impact__interval {
  margin-left: 2em;
}
.dd-screening .screening-button-area {
  margin: 30px 0 10px 0;
  padding: 30px 0;
}
.dd-screening .screening-button-area .screening-btn {
  margin: 0;
  box-sizing: border-box;
  width: 100%;
}
.dd-screening .description-area {
  margin: 30px 1rem;
  padding: 1rem;
  border-radius: 1rem;
  border: 1px dashed;
}
.dd-screening .description-area .sub-header {
  font-weight: bold;
  font-size: 1.1em;
  display: inline-block;
}
.dd-screening .description-area .sub-header-dashed {
  font-weight: bold;
  font-size: 1.1em;
  display: inline-block;
  border-bottom: 4px dashed #d5c2b4;
}
.dd-screening .description-area .description {
  padding: 30px 0;
}
.dd-screening .description-area .img-area {
  border: 1px dotted;
}
.dd-screening .description-area .no-answer-text {
  margin-top: 20px;
  margin-bottom: -20px;
}
.dd-screening .description-area .no-answer-compliment-header {
  font-weight: bold;
  font-size: 1em;
  display: inline-block;
}
.dd-screening .description-area .no-answer-compliment-content {
  font-size: 0.9em;
  padding: 20px;
}
.dd-screening .popup-wrapper {
  position: relative;
  margin-bottom: 15px;
}
.dd-screening .popup-wrapper #popup,
.dd-screening .popup-wrapper #popup-available-users {
  display: none;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  border: solid 1px;
  border-radius: 30px;
  background: #fff;
  width: 200%;
  max-width: 100vw;
  box-sizing: border-box;
  padding: 25px;
}
.dd-screening .popup-wrapper #popup .close-btn-area,
.dd-screening .popup-wrapper #popup-available-users .close-btn-area {
  text-align: right;
}
.dd-screening .popup-wrapper #popup .close-btn-area #close-button,
.dd-screening .popup-wrapper #popup-available-users .close-btn-area #close-button,
.dd-screening .popup-wrapper #popup .close-btn-area #close-button-available-users,
.dd-screening .popup-wrapper #popup-available-users .close-btn-area #close-button-available-users {
  cursor: pointer;
  font-size: 1.5em;
}
.dd-screening .popup-wrapper #popup-button,
.dd-screening .popup-wrapper #popup-button-available-users {
  cursor: pointer;
}
.dd-screening .screening-child-information {
  margin: 30px 0;
}
.dd-screening .screening-child-information .screening-child-information-content {
  padding-left: 15px;
}
.dd-screening .screening-child-information .screening-child-information-content .screening-child-information-item {
  display: flex;
}
.dd-screening .link-other-children-reminder {
  margin-bottom: 30px;
  margin-top: -10px;
}
.dd-screening .link-other-children-reminder p {
  color: #dd0000;
}
.dd-screening .screening-answers .screening-answers-header {
  background: #fe5a9c;
  display: flex;
  padding: 10px 15px;
  border-radius: 10px 10px 0 0;
  color: #fff;
}
.dd-screening .screening-answers .screening-answers-header p {
  margin: auto 0;
}
.dd-screening .screening-answers .screening-answers-content {
  border-radius: 0 0 10px;
  padding-top: 10px;
}
.dd-screening .screening-answers .screening-answers-content .screening-answer {
  padding: 30px 0;
  border-bottom: dashed 1px;
}
.dd-screening .screening-answers .screening-answers-content .screening-answer .screening-answer-label-wrapper {
  font-size: 0.9em;
}
.dd-screening .screening-answers .screening-answers-content .screening-answer .screening-answer-value-wrapper {
  margin-top: 10px;
  font-size: 0.9em;
  font-weight: bold;
}
.dd-screening .screening-answers .screening-answers-site-button {
  margin-top: 30px;
}
.dd-screening .screening-answers .screening-answers-site-button .screening-answers-site-button-header {
  margin-bottom: -55px;
}
.maternity-survey__pregnancy-list {
  margin-left: 1rem;
}
.maternity-survey__child-list {
  margin-left: 3rem;
  list-style-type: disc;
}
.notification-link-area-type-a {
  padding: 15px 30px 2px;
}
.notification-link-area-type-a .notification-link-type-a {
  display: block;
  font-weight: bold;
  text-align: right;
  margin-left: 1rem;
  margin-top: 0.2rem;
  text-decoration: none;
  color: #4f3000;
}
.edit-simultaneous-btns {
  display: flex;
  flex-direction: column;
  width: 80%;
  margin: auto;
}
/* =========================
  お気に入りイベント一覧
========================= */
.favorite-event .tag {
  border-radius: 15px;
  font-weight: normal;
  font-size: 0.7rem;
  display: inline-block;
  padding: 3px 8px;
  background-color: #ff7bb2;
  color: #4f3000;
}
.page-container .service-migration-to-g3 .btn-horizontal {
  margin-bottom: 10px;
  display: inline-block;
  width: 47%;
  padding-left: 1%;
  padding-right: 1%;
}
.page-container .service-migration-to-g3 .btn-primary,
.page-container .service-migration-to-g3 .btn-secondary {
  min-height: 1rem;
  border-radius: 10px;
  cursor: pointer;
  font-size: 90%;
  white-space: normal;
}
.page-container .service-migration-to-g3 .btn-primary:hover,
.page-container .service-migration-to-g3 .btn-secondary:hover {
  opacity: 0.7;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification {
  margin: 5% 0;
  border-radius: 30px;
  border: 3px solid #ff7bb2;
  padding: 10px 20px;
  background-color: white;
  color: #fe5a9c;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .notification-title {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 90%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .notification-title-primary {
  font-weight: bold;
  font-size: 115%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .miid-logo {
  width: 4.2rem;
  vertical-align: -3px;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .migration-message {
  color: #333333;
  font-size: 90%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .btn-primary {
  color: #FFFFFF;
  border: 2px solid #fe5a9c;
  background-color: #fe5a9c;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-notification .btn-secondary {
  color: #fe5a9c;
  border: 2px solid #fe5a9c;
  background: transparent;
}
.page-container .service-migration-to-g3 .g3-logo {
  width: 50px;
  vertical-align: middle;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description h2 {
  text-align: center;
  font-size: 120%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .step-box {
  display: flex;
  justify-content: space-between;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .step-number {
  color: #FFFFFF;
  background-color: #de7391;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  text-align: center;
  line-height: 2rem;
  box-sizing: border-box;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .step {
  width: 88%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .step-line {
  border-bottom: 1px solid #c0c0c0;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .supplement {
  color: #de7391;
  font-size: 85%;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-description .btn-primary {
  color: #FFFFFF;
  border: 2px solid #de7391;
  background-color: #de7391;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-confirm .btn-primary {
  color: #FFFFFF;
  border: 2px solid #fe5a9c;
  background-color: #fe5a9c;
}
.page-container .service-migration-to-g3 .service-migration-to-g3-confirm .btn-secondary {
  color: #fe5a9c;
  border: 2px solid #fe5a9c;
  background: transparent;
}
/* =========================
  大人の健康記録
========================= */
.parent-graph-wrapper {
  text-align: center;
}
.parent-graph-wrapper .parent-graphs {
  display: inline-block;
  width: 485px;
  height: 100%;
  margin: 0 auto;
  padding: 0 auto;
  overflow-x: auto;
  background-color: white;
  vertical-align: top;
}
.parent-graph-wrapper .slick-dots {
  position: static;
}
.parent-graph-wrapper .slick-arrow {
  position: absolute;
  top: 90%;
  z-index: 100;
  cursor: pointer;
}
.parent-graph-wrapper .next-arrow {
  right: 0;
}
.parent-graph-wrapper .parent-comment {
  text-align: start;
}
/** =====================
      コンポーネント
====================== **/
.page-container input[type=text] {
  height: 35px;
}
.page-container input[type=password] {
  height: 35px;
}
.page-container input[type=radio] {
  width: 25px;
  height: 25px;
}
.page-container input[type=checkbox] {
  width: 25px;
  height: 25px;
}
.page-container select {
  font-size: 140%;
}
.page-container .image-list {
  padding: 0;
  margin: 0 auto;
  clear: both;
  overflow: hidden;
}
.page-container .image-list > li {
  list-style-type: none;
  float: left;
  width: 33.33%;
  margin: 8px 0;
}
.page-container .image-list > li .frame {
  -webkit-box-shadow: 2px 2px 4px #d3cbc2;
  -moz-box-shadow: 2px 2px 4px #d3cbc2;
  box-shadow: 2px 2px 4px #d3cbc2;
}
.page-container .image-list > li img {
  width: 99%;
}
.page-container .image-list > li img:hover {
  opacity: 0.7;
}
.theme-color-buttonWrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  justify-items: center;
}
.theme-color-button {
  padding: 0;
  margin: 15px;
  width: 70px;
  height: 70px;
}
.theme-color-button input[type=radio] {
  display: none;
}
.theme-color-button .alter-button {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 5px;
}
.theme-color-button input[type=radio]:checked + .alter-button {
  border: solid white 3px;
  box-shadow: 0 0 0 5px #555;
  width: 64px;
  height: 64px;
}
input[type="submit"].button-block,
input[type="reset"].button-block,
input[type="button"].button-block {
  width: 100%;
}
.guide-box {
  background: #e5e5e5;
  padding: 10px;
}
.ruled-table {
  width: 100%;
}
.ruled-table th,
.ruled-table td {
  border-bottom: solid 1px #ff7bb2;
  padding: 0.2rem 0.1rem;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li a,
.breadcrumb > li a:link {
  text-decoration: none;
}
.breadcrumb > li a:hover {
  text-decoration: underline;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #cccccc;
}
.breadcrumb > .active {
  color: #999999;
}
.debug-box th {
  padding: 4px;
  border: solid 1px blue;
  background: blue;
  color: white;
}
.debug-box td {
  padding: 4px;
  border: solid 1px blue;
  color: blue;
}
.clock-for-test {
  position: fixed;
  left: 0;
  top: 0;
  background: #00dfa6;
  opacity: 0.7;
  z-index: 2147483641;
}
.clock-for-test .time {
  font-family: Consolas;
}
.goog-te-menu-value {
  font-size: 30px;
}
.goog-te-menu-value img {
  width: 0;
  height: 30px;
}
.indent_list ul li {
  padding-top: 5px;
  padding-bottom: 2px;
}
.indent_list li {
  padding-left: 30px;
}
.tbx {
  border: solid 1px #bbbbbb;
  border-radius: 4px;
  padding: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.tbx:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.tbx.tbx-required {
  background-color: #ffde7f;
}
.tbx.tbx-invalid {
  background-color: #ff7970;
}
.tbx.tbx-valid {
  background-color: #6ddcc8;
}
.tbx.tbx-100 {
  width: 100px;
}
.tbx.tbx-150 {
  width: 150px;
}
.tbx.tbx-200 {
  width: 200px;
}
.tbx.tbx-400 {
  width: 400px;
}
.tbx.tbx-500 {
  width: 500px;
}
.tbx.tbx-full {
  width: 100%;
}
.table.table-bordered {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
.table.table-bordered td,
.table.table-bordered th {
  border: solid 1px #d3d3d3;
  padding: 4px;
}
/** =====================
        レイアウト
====================== **/
html {
  margin: 0;
  padding: 0;
  height: 100%;
  font-size: 160%;
}
body {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  height: 100%;
  line-height: 1.5;
  color: #4f3000;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", 'lucida grande', tahoma, verdana, arial, "hiragino kaku gothic pro", meiryo, "ms pgothic", sans-serif, FontAwesome;
  -webkit-text-size-adjust: 100%;
}
.page-container {
  width: 640px;
  min-height: 100%;
  margin: 0 auto;
  background: transparent;
  position: inherit;
  z-index: 0;
}
.main-content {
  padding-top: 0;
  padding-bottom: 120px;
  padding-left: 20px;
  padding-right: 20px;
}
.main-content.no-side-margin {
  padding-left: 0;
  padding-right: 0;
}
.main-content.no-header {
  padding-top: 0;
}
.main-content.no-footer {
  padding-bottom: 0;
}
.content-in-no-side {
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 20px;
}
.list-header {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.list-header .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.list .list-item-link {
  display: block;
  text-decoration: none;
  color: #4f3000;
  color: inherit;
}
.list .list-item-link.allow-empty-text {
  min-height: 30px;
}
.list .list-item {
  color: #fe5a9c;
  padding: 18px 40px 18px 30px;
  margin: 10px 0;
  background-color: white;
  border-radius: 18px;
  position: relative;
}
.list .list-item .name {
  font-weight: bold;
}
.list .list-item .note {
  font-size: 0.7rem;
}
.list .list-item .arrow-next {
  position: absolute;
  height: 1rem;
  line-height: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 20px;
}
.list .list-item .aside-right {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.form-group {
  margin-bottom: 20px;
}
.form-group > p {
  margin-bottom: 10px;
}
.button-area {
  overflow: auto;
}
.button-area .left {
  float: left;
}
.button-area .right {
  float: right;
}
.button-area .button-group {
  clear: both;
  overflow: auto;
}
.button-area--justify-around {
  display: flex;
  justify-content: space-around;
}
.button-area--justify-around .btn.color-btn-default {
  flex-grow: 1;
}
.tab-group .tabs {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  margin-bottom: 20px;
  z-index: 101;
  background: transparent;
  overflow-x: scroll;
  white-space: nowrap;
  border-bottom: 8px solid #fe5a9c;
  -ms-overflow-style: none;
}
.tab-group .tabs::-webkit-scrollbar {
  display: none;
}
.tab-group .tabs .add-button {
  display: inline-block;
  color: #fe5a9c;
  font-size: 1.5rem;
  line-height: 1.5rem;
  text-align: center;
  vertical-align: middle;
  margin: 0 10px 0 20px;
}
.tab-group .tabs .add-button a {
  color: inherit;
}
.tab-group .tabs .tab {
  padding: 10px 20px;
  display: inline-block;
  color: white;
  background-color: #fe5a9c;
  border-top-left-radius: 20px 20px;
  border-top-right-radius: 20px 20px;
  cursor: pointer;
}
.tab-group .tabs .tab:not(.active) {
  opacity: 0.7;
}
.tab-group .contents .content:not(:first-child) {
  display: none;
}
.form-grid th,
.form-grid td,
.form-grid .form-group {
  padding: 1rem 0;
}
.context-area {
  margin: 10px 0 15px 0;
  padding: 5px 0;
  border-bottom: 5px solid #9a7042;
  font-size: 1.3rem;
  font-weight: normal;
  color: #9a7042;
}
.context-area .name {
  background: transparent;
  border-radius: 18px;
  padding: 10px;
}
.top-notification-area {
  padding-left: 50px;
  padding-right: 50px;
}
.top-notification-area #notification-header {
  width: 500px;
}
.top-notification-area-v2 {
  padding-left: 35px;
  padding-right: 35px;
}
.top-notification-area-v3 {
  padding-left: 35px;
  padding-right: 35px;
}
.notification-log {
  margin: 10px auto;
  width: 500px;
  font-size: 0.7em;
  padding: 5px;
  background-color: transparent;
  color: #fe5a9c;
  border-radius: 10px;
}
.notification-log img {
  width: 29px;
}
.fit-top-table tr {
  vertical-align: baseline;
}
.label-dagger > div {
  display: inline-block;
  width: 95%;
}
.label-dagger:before {
  content: "▼";
  color: #f87c00;
  vertical-align: top;
  height: 100%;
}
.child-note-message-box {
  border: 3px solid #f87c00;
  border-radius: 1.7rem;
  margin: 0 auto;
  padding: 10px;
  min-height: 120px;
}
.child-note-message-box .icon-img {
  display: inline-block;
  vertical-align: middle;
  margin: 10px;
  width: 100px;
}
.child-note-message-box .message-textbox {
  display: inline-block;
  vertical-align: middle;
  color: #4f3000;
  padding: 10px;
  width: 72%;
  font-size: 0.7em;
  text-align: left;
}
.calendar .date {
  font-weight: bold;
  font-size: 1.3rem;
}
.calendar .schedule-list .daily-schedule {
  display: block;
  margin: 20px 0;
}
.calendar .schedule-list .daily-schedule .slate-type-group {
  padding: 1rem;
  border-radius: 1rem;
  background: white;
  margin-bottom: 1rem;
}
.calendar .schedule-list .daily-schedule .slate-type {
  font-weight: bold;
}
.calendar .schedule-list .daily-schedule .slate-list {
  list-style: disc;
  margin-left: 20px;
  margin-bottom: 10px;
}
.calendar-icon {
  width: 18px;
  height: 18px;
}
/* =========================================
  自治体固有設定
========================================= */
.toolbar div {
  z-index: 9999;
}
.service-logo {
  position: relative;
  z-index: -1;
  margin: 0 0 1.5rem 0;
}
.service-logo img {
  margin-top: -1rem;
  z-index: inherit;
}
.more .non-decoration-link {
  color: #ff7bb2;
}
.health-record-list__section {
  background: transparent;
}
.keyword-search .keyword-search-button {
  color: #fff;
}
.yoyaku-system {
  display: block;
  margin: 0.5rem 1rem;
}
.yoyaku-system img {
  max-width: 100%;
}
