.contact-facility .calendar { margin: 10px; }

.contact-facility .calendar .flex-box { display: flex; justify-content: space-between; align-items: center; }

.contact-facility .calendar .flex-box .hint-i i { color: #6ead22; font-size: 20px; }

.contact-facility .calendar .flex-box .plus-i { display: block; margin-bottom: 0.5em; text-align: right; font-size: .9em; }

.contact-facility .calendar .flex-box .plus-i i { color: #fd4b37; }

.contact-facility .calendar .week.flex-box { margin-top: 10px; }

.contact-facility .calendar .week.flex-box p { width: calc(100% / 7); text-align: center; }

.contact-facility .calendar .day.flex-box { flex-wrap: wrap; justify-content: flex-start; }

.contact-facility .calendar .day.flex-box form { width: calc(100% / 7); height: 80px; line-height: 40px; border-bottom: 1px solid #f2f2f2; padding: 30px 0 17px; text-align: center; }

.contact-facility .calendar .day.flex-box form p button { width: 100%; }

.contact-facility .calendar .day.flex-box form .calendar__link { position: relative; }

.contact-facility .calendar .day.flex-box form .calendar__link button { width: 100%; color: #444; }

.contact-facility .calendar .day.flex-box .today a { display: flex; justify-content: center; align-items: center; width: 30px; height: 30px; margin: -9px auto 0 auto; background: #fd748d; border-radius: 50%; color: white; }

.contact-facility .calendar .day.flex-box .today a:after { bottom: -2.3em !important; }

.contact-facility .calendar .day.flex-box .mirai button { display: flex; justify-content: center; align-items: center; width: 35px !important; height: 35px; margin: -9px auto 0 auto; background: #9bcdae; border-radius: 50%; color: black !important; }

.contact-facility .calendar .day.flex-box form .calendar__link a::after, .calendar__link.book_pink button::after { content: "\f518"; font-family: FontAwesome; font-size: .9em; color: #fd748d; display: block; position: absolute; left: 50%; transform: translateX(-50%); }

.contact-facility .calendar .day.flex-box form .calendar__link a::after, .calendar__link button::after { content: "\f518"; font-family: FontAwesome; font-size: .9em; color: #6ead22; display: block; position: absolute; left: 50%; bottom: -1.3em; transform: translateX(-50%); }

.contact-facility .calendar .day.flex-box form .calendar__link.book_blue a::after, .calendar__link.book_blue button::after { color: #5fa0b4; }

.contact-facility .calendar .day.flex-box form .calendar__link.book_pink a::after, .calendar__link.book_pink button::after { color: #fd748d; }

#hint-modal { width: 75%; }

.hint-modal-content .inner .calendar__icon.grn { margin-bottom: 1.2rem; text-align: left; font-size: 20px; }

.hint-modal-content .inner .calendar__icon.grn i { color: #6ead22; margin-right: 1rem; }

.hint-modal-content .inner .calendar__icon.blue { margin-bottom: 1.2rem; text-align: left; font-size: 20px; }

.hint-modal-content .inner .calendar__icon.blue i { color: #5fa0b4; margin-right: 1rem; }

.hint-modal-content .inner .calendar__icon.pnk { margin-bottom: 1.2rem; text-align: left; font-size: 20px; }

.hint-modal-content .inner .calendar__icon.pnk i { color: #fd748d; margin-right: 1rem; }

.contact-book .child-change .active { background: #6ead22; color: white; }

.contact-book .child-change .child-change__link { margin-right: 1em; padding: 8px 1em; border: 1px solid #6ead22; color: #6ead22; background: white; margin-bottom: 5px; display: inline-block; }

.contact-facility .is-modal__close { display: block; text-align: right; margin: -5px 5px 5px; color: #fd4b37; font-size: 2em; line-height: 1; }

.is-modal__close i { font-size: 25px; color: #fd4b37;}

.is-modal-slide__win { position: fixed; /*bottom: -100%;*/ left: 50%; max-height: 90vh; transform: translate(-50%, 0); transition: .2s; overflow-y: auto; /*z-index: 3;*/ opacity: 0; }

.is-modal-fade__win { display: none; position: absolute; top: 0; left: 0; width: 100%; max-width: 100%; height: 100vh; padding: 0; margin: 0; background: transparent; transition: .2s; } 

.is-modal-fade__bg { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.7); z-index: 5; }
 
.is-modal-fade__content { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); background: white; padding: 2%; width: 250px; max-width: 96%; z-index: 6; }

.is-modal-fade__content .inner a, .is-modal-fade__content .inner button { width: 96%; display: block; text-align: center; margin: 0 auto 2em; padding: 13px 0; border-radius: 4px; color: white; font-size: 1.2rem; letter-spacing: 3px; }

.is-modal-fade__content .inner .contact-book__link { background: #5fa0b4; }

.is-modal-fade__content .inner .contact-register__link { background: #fd748d; }

.is-modal-fade__content .inner .calendar__icon { margin-bottom: 1.2rem; text-align: center; font-size: 20px; }
 
.is-modal-fade__content .inner .calendar__icon.grn i { color: #6ead22; }
 
.is-modal-fade__content .inner .calendar__icon.blue i { color: #5fa0b4; }
 
.is-modal-fade__content .inner .calendar__icon.pnk i { color: #fd748d; }

.is-modal-fade__content .inner .calendar__icon i { margin-right: 1rem; }

.slider-modal { display: none; }
 
.security-code .is-modal-fade__content { width: 96%; }

#is-modal-slide__open { display: block; }

.opened { bottom: 0; opacity: 1; }

.hide { display: none; }

#is-modal-fade__open { display: block; transition: .3s; z-index: 23; }
  
  /* 連絡帳 連絡事項 */
  /* ========================== */
  /*.contact-book__subject { margin-bottom: 1.5em; }*/
  .submit-from-btn { background: #5fa0b4;
    width: 96%;
    display: block;
    text-align: center;
    margin: 0 auto 2em;
    padding: 13px 0;
    border-radius: 4px;
    color: white;
    font-size: 1.2rem;
    letter-spacing: 3px; }
  .gyoji-list .month .btn-month-right, .gyoji-list .month .btn-month-left { color: #000; }
  .contact-book__subject .day { align-items: flex-end; font-size: 1.2em; }
  
  .contact-book__subject .day .before i { margin-right: 5px; }
  
  .contact-book__subject .day .next i { margin-left: 5px; }
  
  .contact-book__subject .day h3 { font-size: 1.1em; }
  
  .contact-book__subject .child-info { margin-top: 1.5em; }
  
  .contact-book__subject .child-info img { width: 130px; height: 130px; border-radius: 50%; }
  
  .contact-book__subject .child-info > div { width: calc(100% - 150px); }
  
  .contact-book__subject .child-info .kana { font-size: .9em; color: #666; }
  
  .contact-book__subject .child-info h2 { font-size: 1.5em; margin-bottom: 1em; }
  
  .contact-book__subject .child-info p span { color: #6ead22; }
  
  .contact-book__copy { display: flex; justify-content: space-between; }
  
  .contact-book__form > div { padding: 1.5em 0; border-bottom: 2px solid #f2f2f2; }
  
  .contact-book__form .weather-filler { padding-bottom: 5px; }
  
  .contact-book__form .weather-filler h2 { margin-right: 10px; }
  
  .contact-book__table { justify-content: flex-start !important; }
  
  .contact-book__table h2 { padding-right: 1em; min-width: 6em; text-align: center; }
  
  .contact-book__table h3 { min-width: 3em; text-align: left; margin-left: -7px; }
  
  .contact-book__table .time_goes { margin-bottom: 1em; }
  
  .contact-book__table .time_goes span { align-items: center; margin: 0 1em; }
  
  .contact-book__table .time { width: 100px; border: 1px solid #eee; padding: 3px 0 3px 7px; border-radius: 4px; }
  
  .contact-book__table .time i { color: #fd748d; margin-right: 5px; }
  
  .contact-book__table .time + p { margin-top: 10px; }
  
  .contact-book__table .date > div { width: calc(1.5em + 14px); }
  
  .contact-book__table .date span { margin: 0 .5em; }
  
  .contact-book__table .temp p { margin-top: 0; margin-left: 1em; }
  
  .contact-book__table .temp p:first-of-type { margin-left: 0; }
  
  .contact-book__table img { padding-top: 15px; max-width: 500px; }
  
  .contact-book__table .underline + p { margin-top: 1em; }
  
  .contact-book__table .table { min-width: 25%; width: auto; text-align: center; }
  
  .contact-book__table .table th,
  .contact-book__table .table td { padding-left: 5px; padding-right: 5px; border: 1px solid; padding: 5px 10px; }
  
  .contact-book__table .table th { background-color: #c7c9ce; }
  
  .contact-book .input__time > div { width: calc(2.5em + 14px); }
  
  .contact-book .input__temp input { width: calc(3em + 14px); margin-right: .4em; }

  .contact-book .textareaBox { width: 100%; }
  .contact-book .textarea { width: 100%; }
  
  .contact-book .button { margin: .5em auto 0; }
  
  .contact-book .copy_btn { padding: 0.5em 1em; }
  
  .contact-book .active_btn { background: #6ead22; }
  
  .contact-book .radio-label { margin-left: -20px; }
  
  .contact-book input { text-align: center; padding: 10px 0; }
  
  .contact-book {overflow-y: hidden;}
  
  /*.contact-book .contact-book__form { overflow-x: hidden; max-height: 55vh; }*/
  .contact-book .contact-book__copy .contact-status { align-items: center; display: flex; margin-left: 2em; text-align: center; white-space: pre-wrap }
  .contact-book .contact-book__copy .button { padding: .5em .5em !important; width: 130px; margin-right: 0px; text-align: center; }

  .contact-book .copy-message { border: 1px solid #6ead22; color: #6ead22; padding: 5px; margin-top: 5px; font-size: 12px; white-space: pre-wrap }

  .contact-book .no-data { font-size: 16px; padding-top: 40px; }
  
  .contact-book .free-selection {width: 200px;}
  .contact-book .free-selection select {width: 100%;}
  .contact-book .free-selection .list-item { background: #fff; box-sizing: border-box; display: none; position: inherit; max-height: 150px; overflow-y: scroll; z-index: 1; border: 1px solid #767676; width: 200px; }
  .contact-book .free-selection .list-item a {display: block; height: 25px; padding: 0 10px;}
  .contact-book .free-selection .list-item a:hover {background-color: #1e90ff;}
  
  /* 子ども切替ボタン */
  /* ========================== */
  .contact-book .child-change { margin-bottom: 1em; justify-content: flex-start; display: -webkit-inline-box;}
  
  .contact-book .child-change__link { margin-right: 1em; padding: 8px 1em; border: 1px solid #6ead22; color: #6ead22; background: white; margin-bottom: 5px; }
  
  .contact-book .child-change__link:hover { opacity: 1; }
  
  .contact-book .child-change__link:last-child { margin-right: 0; }
  
  .contact-book .child-change .active { background: #6ead22 !important; color: white !important; }
  
  .contact-book .scroll { overflow-y: auto; overflow-x: hidden; max-height: 55vh; }
  
  .contact-book .free-selection input { text-align: left; padding: 10px; }
  /*=======================================*/
  
  .contact-book .free-selection input { text-align: left; padding: 10px; }
  .flex-box { display: flex; justify-content: space-between; align-items: center; }
  .contact-book .button { padding: 1em 1em; font-size: 1em; border: 0; border-radius: 7px; background: #5fa0b4; color: #fff; transition: .3s; letter-spacing: 1px; }
  /*=======================================*/