@charset "UTF-8";
/* スケジュール・TODO共通 */
form.schedule_todo_form{
  margin-top: 0;
}

form.schedule_todo_form .contents_title{
  border-left: 7px solid #006C60;
}

form.schedule_todo_form .contents_title p{
  margin: 3px 0;
}

/************************************************************/
/* スケジュール登録・編集 */

.smartdate--widget.nodeEditSchedule {
  display: flex;
}

.smartdate--widget.nodeEditSchedule > div:nth-child(1) {
  flex-basis: 25%;
}

.smartdate--widget.nodeEditSchedule .stDateTilde {
  flex-basis: 5%;
  margin: 0;
  position: relative;
}

.smartdate--widget.nodeEditSchedule .stDateTilde span {
  position: absolute;
  bottom: 20%;
  right: 25%;
}

.smartdate--widget.nodeEditSchedule > div:nth-child(3) {
  flex-basis: 35%;
}

.smartdate--widget.nodeEditSchedule div.duration_block {
  flex-basis: 20%;
  margin: 0;
  position: relative;
}

.smartdate--widget.nodeEditSchedule > div.duration_block span,
.smartdate--widget.nodeEditSchedule > div.duration_block label {
  position: absolute;
  bottom: 20%;
}

.smartdate--widget.nodeEditSchedule .allday,
.smartdate--widget.nodeEditSchedule .allday-label {
  margin: 0 0 0 0;
  vertical-align: middle;
}

.smartdate--widget.nodeEditSchedule .allday-label input {
  margin-right: 2px;
  margin-top: -3px;
}

body.page-node-add-schedule .st_date_left_value {
  width: 100%;
}

body.page-node-add-schedule dt.form_date + dd div {
  min-width: 100%;
}

/* スケジュール詳細のみ */
body.section-node.node-schedule .start_enf_date{
  flex-wrap:   wrap;
  margin-left: 10px;
}
 
body.section-node.node-schedule .start_enf_date div{
  flex-basis: 100%;
}

body.section-node.node-schedule .schedule__body{
  margin-left: 10px;
}

/************************************************************/
/* TODO登録・編集 */

dl#nodeEditTodo .st_title_input {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

dl#nodeEditTodo .st_title_input div {
  flex-basis: 85%;
}

dl#nodeEditTodo .st_title_input input#edit-todo-modal {
  flex-basis: 10%;
  margin-left: 0px;
}

dl#nodeEditTodo .st_title_input p {
  flex-basis: 100%;
}

#drupal-modal td.views-field-field-todo-body .grad-trigger:before {
    position: static;
    margin-left:0px;
}

/*****************************************************************************
レスポンシブ（スマホ）CSS  
*****************************************************************************/

@media screen and (max-width:767px) {

  /************************************************************/
  /* スケジュール/TODO リスト, スケジュールリスト, TODO リスト 表幅調整 */
  body.page-event-schedule table th:nth-child(1),
  body.page-schedule_list table th:nth-child(1),
  body.page-todo_list table th:nth-child(1) {
    width: 50% !important;
  }

  body.page-event-schedule table th:nth-child(n+2),
  body.page-schedule_list table th:nth-child(n+2) {
    width: 28% !important;
  }
  
  body.page-todo_list table th:nth-child(n+2) {
    width: 30% !important;
  }

  body.page-event-schedule table > *,
  body.page-schedule_list table > *,
  body.page-todo_list table > * {
    font-size: 12px;
  }

  body.page-event-schedule table td,
  body.page-schedule_list table td,
  body.page-todo_list table td {
    padding: 5px;
  }

  form.schedule_todo_form .contents_title{
    padding-left: 5px;
  }

  /************************************************************/
  /* スケジュール・TODO */
  .schedule_todo_form dl {
    padding: 30px 20px 10px;
  }

  .schedule_todo_form .form-type-textfield {
    padding: 0;
  }

  .st_date_block {
    width: 60%
  }

  label.st_date_block {
    width: 30%
  }

  .st_date_left_label {
    padding: 0 0 0 15px;
    margin: 0 0 0 5px !important;
  }
  .st_date_right_label {
    border-left: solid 5px #006C60;
    padding: 0 0 0 15px;
    margin: 0 0 0 5px !important;
  }

  .st_date_center_label {
    width: 100%;
    text-align: center;
  }

  .st_date_right_value {
    margin-left: 30px !important;
  }

  .bread_crumbs {
    white-space: normal;
  }
  
  .schedule_todo_form dd input[type="date"] {
    width: 100% !important;
    display: inline-flex;
  }
  
  _:lang(x)+_:-webkit-full-screen-document,.schedule_todo_form dd input[type="date"],
  _:lang(x)+_:-webkit-full-screen-document,.schedule_todo_form dd input[type="time"] {
    color:#000000;
  }

  /* スケジュール/TODO リスト */
  .schedule_todo .st-tab-label {
    max-width: 100%;
    flex-basis: auto;
  }

  .schedule_todo .st-tab-wrap {
    flex-direction: row;
    justify-content: center;
  }

  .st-tab-wrap .st_button {
    margin-left: 0px;
    margin-top: 20px;
    display: flex;
    flex-basis: 100%;
  }

  .st-tab-wrap .st_button .button {
    margin-left: 0px;
    width: 50% !important;
    min-width: 50% !important;
    flex-basis: 100%;
  }

  /* スケジュール登録ボタン (スケジュール checked) */
  .schedule_todo .st-tab-switch:checked + .st-tab-label + .st-tab-content + .st-tab-switch + .st-tab-label + .st-tab-content + .st_button > .button:nth-child(1) {
    transform: translateX(50%);
    opacity: 1 !important;
  }

  /* スケジュール登録ボタン (TODO checked) */
  .schedule_todo .st-tab-switch + .st-tab-label + .st-tab-content + .st-tab-switch + .st-tab-label + .st-tab-content + .st_button > .button:nth-child(1) {
    transform: translateX(-100vw);
    opacity: 1 !important;
  }

  /* TODO登録ボタン (スケジュール ON) */
  .schedule_todo .st-tab-switch + .st-tab-label + .st-tab-content + .st_button > .button:nth-child(2) {
    transform: translateX(100vw);
    opacity: 1 !important;
  }

  /* TODO登録ボタン (TODO checked) */
  .schedule_todo .st-tab-switch:checked + .st-tab-label + .st-tab-content + .st_button > .button:nth-child(2) {
    transform: translateX(-50%);
    opacity: 1 !important;
  }

  /************************************************************/
  /* スケジュール一覧*/
  .schedule_list {
    margin-left: 20px;
    margin-right: 20px;
  }

  .schedule_table th:nth-child(1) {
    width: 56%;
  }

  .schedule_table th:nth-child(2) {
    width: 22%;
  }

  .schedule_table th:nth-child(3) {
    width: 22%;
  }

  body.page-schedule_list .schedule_list {
    margin-left: 10px;
    margin-right: 10px;
  }

  body.page-schedule_list .contents_title {
    display: flex;
    justify-content: space-around;
  }

  body.page-schedule_list .contents_title .st_button .button {
    min-width: 100% !important;
    margin-left: 0px;
  }

  /************************************************************/
  /* スケジュール詳細・TODO詳細 */
  
  article.node--type-todo{
    padding: 15px 10px;
  }
  
  article.node--type-todo .contents_title {
    margin: 0 0 20px;
  }
  
  article.node--type-todo .node__content {
   margin-top: 0;
  }
  
  body.section-node .icon_links a {
    flex-basis: 15%;
    min-width: 25% !important;
  }
  
  body.section-node .action-flag,
  body.section-node .action-unflag {
    flex-basis: 40%;
  }

  body.section-node .l_button {
    min-width: auto !important;
  }

  body.section-node .share_calendar div {
    margin: 0 10px;
  }

  body.section-node .share_calendar img {
    padding: 0
  }

  body.section-node a.icon_button i {
    font-size: 12px;
  }

  /************************************************************/
  /* スケジュール登録・編集 */
  body.page-node-add-schedule .schedule_todo_form dl dt {
    font-size: 15px;
  }
 
  form.node-schedule-form,
  form.node-schedule-edit-form{
    margin-top: 0;
    padding-top: 0;
  }
  
  input.time-start,
  input.time-end {
    min-width: 60px;
  }

  .smartdate--widget.nodeEditSchedule {
    flex-wrap: wrap;
  }


  .smartdate--widget.nodeEditSchedule > div.duration_block label {
    width: 100%;
    bottom: 50%;
  }

  .smartdate--widget.nodeEditSchedule > div {
    min-height: 120px;
  }

  .smartdate--widget.nodeEditSchedule > div:nth-child(1) {
    flex-basis: 50%;
  }

  
  .smartdate--widget.nodeEditSchedule .stDateTilde {
    flex-basis: 10%;
  }
  
  .smartdate--widget.nodeEditSchedule .stDateTilde span {
    top: 30% !important;
  }

  /************************************************************/
  /* スケジュール削除・TODO削除 */
  form#node-schedule-delete-form div#edit-actions > *,
  form#node-todo-delete-form div#edit-actions > * {
    flex-basis: 50%;
  }
  /* スケジュール削除・TODO削除end */
  /* TODO一覧 */
  body.page-todo_list .views-element-container {
    margin-left: 10px;
    margin-right: 10px;
  }

  body.page-todo_list .views-element-container .st_button .button {
    margin-left: 0px;
  }

  body.page-todo_list .contents_title .st_button .button {
    min-width: 100% !important;
  }

  /************************************************************/
  /* TODO一覧 */
  
  body.section-todo_list .contents_title{
    padding-left: 5px;
  }

  /************************************************************/
  /* TODO登録・編集 */
  
  form.node-todo-form,
  form.node-todo-edit-form{
    margin-top: 0;
    padding-top: 0;
  }
  
  dl#nodeEditTodo .st_title_input div {
    flex-basis: 100%;
  }

  dl#nodeEditTodo .st_title_input input#edit-todo-modal {
    flex-basis: 70%;
    margin-left: 0px;
  }

  dl#nodeEditTodo .st_title_input p {
    flex-basis: 20%;
  }

  dl#nodeEditTodo .st_title_input > * + * {
    margin-top: 10px !important;
  }

  dl#nodeEditTodo dt.form_date + dd div {
    min-width: auto;
  }

  body.section-node .ui-dialog.ui-corner-all.ui-widget.ui-widget-content.ui-front {
    width: 98% !important;
  }
}


/* メディアクエリend */


/* IE用 CSS */

@media screen and (-ms-high-contrast: none) {

  /* スケジュール登録 */
  dd.nodeEditSchedule .duration_block{
    display: none !important;
  }
  /* スケジュール登録end */
}


@media screen and (max-width:767px) and (-ms-high-contrast: none) {

  /* TODO登録・編集 */
  dl#nodeEditTodo #edit-todo-modal {
    padding-top: 10px !important;
  }
  
  /* TODO登録・編集end */
}


/* メディアクエリend */

@media screen and (min-width: 451px) and (max-width:767px) {

  /* スケジュール 登録・編集用 */
  
  .smartdate--widget.nodeEditSchedule > div:nth-child(1) {
    flex-basis: 65%;
  }
  
  .smartdate--widget.nodeEditSchedule > div:nth-child(3) {
    flex-basis: 65%;
  }

  .smartdate--widget.nodeEditSchedule .stDateTilde {
    flex-basis: 10%;
  }

  .smartdate--widget.nodeEditSchedule .stDateTilde span {
    top: 0;
  }

  .smartdate--widget.nodeEditSchedule div.duration_block {
    flex-basis: 35%;
  }
  /* スケジュール登録・編集 end */
}

@media screen and (max-width:450px) {

  /* スケジュール一覧 */
  body.page-schedule_list .schedule_list {
    margin-left: 5px;
    margin-right: 5px;
  }
  
  /* スケジュール 登録・編集用 */
  .smartdate--widget.nodeEditSchedule > div:nth-child(1),
  .smartdate--widget.nodeEditSchedule > div:nth-child(3) {
    flex-basis: 100%;
  }
  
  .smartdate--widget.nodeEditSchedule .stDateTilde{
    flex-basis: 100%;
  }
  
  .smartdate--widget.nodeEditSchedule .stDateTilde span {
    top: auto !important;
    right: 0;
    left: 0;
  }

  .smartdate--widget.nodeEditSchedule div.duration_block {
    flex-basis: 100%;
  }

  .smartdate--widget.nodeEditSchedule .allday,
  .smartdate--widget.nodeEditSchedule .allday-label {
    margin-left: 20px;
  }

  .node-todo #drupal-modal .grad-trigger {
    margin-bottom: 20px;
  }
  
  .smartdate--widget.nodeEditSchedule div.duration_block {
    min-height: 20px;
  }
  
  /* スケジュール登録・編集 end */
  body.section-node.node-schedule .start_enf_date > *{
    flex-basis: 100%;
  }

  /************************************************************/
  /* TODO登録・編集 */
  
  dl#nodeEditTodo .st_title_input input#edit-todo-modal {
    flex-basis: 60%;
  }

  dl#nodeEditTodo .st_title_input p {
    flex-basis: 30%;
  }
}