@charset "utf-8";

// 色変数
$color_white: #fff;
$color_black: #000000;
$color_main: #9C97E3;
$color_main_dull: #8781da;
$color_main_dark: #7973d1;
$color_sub: #716DAC;
$color_sub_dull: #605da3;
$color_sub_dark: #5B588C;
$color_sub_dl: #0F8414;
$color_bg: #EDEBF6;
$color_gray: #C0C5C8;
$color_gray_dull: #a4a8ac;
$color_gray_dark: #909497;
$color_gray_deep: #808588;
$color_lightgray: #E3E3E3;
$color_table_head: #DEE3E7;
$color_table_body: #F3F3F3;
$color_imp: #A85050;
$color_link: #454183;
$color_grayout: #A0A0A0;

@mixin box-shadow($h: 0px, $v: 3px, $b: 2px, $s: 0px, $c: 0.24) {
  -webkit-box-shadow: $h $v $b $s rgba(0, 0, 0, $c );
  -moz-box-shadow: $h $v $b $s rgba(0, 0, 0, $c );
  box-shadow: $h $v $b $s rgba(0, 0, 0, $c );
}

// 画面幅最小
@mixin screen_min-width {
  min-width: 1100px;
}

// 角丸
@mixin border-radius {
  border-radius: 4px;
}

// フォント
// アンダーラインはBIZ UDPGothicで表示が安定しないため、アンダーラインのみ別フォントを設定
@font-face {
  font-family: 'under_line';
  src: local("YuGothic"), local("Hiragino Kaku Gothic ProN"), local("Meiryo");
  // unicode-range: U+005F; unicodeの「_」を指すコード
}

@mixin font-family {
  font-family: under_line, 'BIZ UDPGothic', sans-serif;
}

// 太文字
@mixin font-weight_bold {
  font-weight: 600;
}

// 太文字
@mixin font-size_min {
  font-size: 13px;
}

// 文字間高さ
@mixin line-height {
  line-height: 1.5;
}


// firefoxのテーブルにboxsizingが利かない対策
@mixin firefox_table_td {
  @-moz-document url-prefix() {
    padding-left: 0;
    padding-right: 0;

    &::before,
    &::after {
      content: "";
      display: inline-flex;
      float: left;
      width: 1em;
      height: 1em;
    }

    &::after {
      clear: both;
    }
  }

  table.list thead tr.ML th {
    vertical-align: top;
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

共通

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
* {
  box-sizing: border-box;
}

body {
  position: relative;
  margin: 0;
  width: 100%;
  min-width: fit-content;
  font-size: 16px;
  font-weight: 400;
  @include font-family;
  @include line-height;
  scroll-behavior: smooth;
  color: $color_white;
}

#app {
  height: 100%;
}

ul,
ul li {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1;
}

ul li {
  @include line-height;
}

table {
  @include line-height;
}

.all {
  display: flex;
}

p.note {
  color: $color_grayout;
  @include font-size_min;
}

/*リンク
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
a {
  text-decoration: none;
  color: $color_link;

  &:link,
  &:visited {
    color: $color_link;
    text-decoration: none;
    transition: 0.1s;
  }

  &:hover {
    text-decoration: underline;
  }

  &:active {
    color: #747475;
  }

}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

ボタン

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
button,
.button {
  display: block;
  background: none;
  border: 0px solid;
  @include font-family;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  cursor: pointer;
  text-align: center;
  transition: 0.1s;

  &:not(.grayout):hover {
    // scale: 1.02;
    transition: 0.1s;
  }
}

a.button:active,
a.button:hover {
  text-decoration: none;
}

/*色*/
.button_color_main {
  background: $color_main;
  color: $color_white;

  &:not(.grayout):hover {
    background: $color_main_dull;
  }

  &:not(.grayout):active {
    background: $color_main_dark;
  }
}

.button_color_sub {
  background: $color_sub;
  color: $color_white;

  &:not(.grayout):hover {
    background: $color_sub_dull;
  }

  &:not(.grayout):active {
    background: $color_sub_dark;
  }
}

.button_color_gray {
  background: $color_gray_dull;
  color: $color_white;

  &:not(.grayout):hover {
    background: $color_gray_dark;
  }

  &:not(.grayout):active {
    background: $color_gray_deep;
  }
}

.button_color_lightgray {
  background: $color_table_body;
  color: $color_black;

  &:not(.grayout):hover {
    background: $color_lightgray;
  }

  &:not(.grayout):active {
    background: $color_gray;
  }
}

/* 立体ボタン */
.imp,
a.imp {
  margin: 0 0 0 auto;
  padding: 8px 16px;
  width: auto;
  min-width: 256px;
  border-radius: 8px;
  color: $color_white;
  font-size: 18px;
  background: linear-gradient(0deg, $color_sub_dark 8.93%, $color_sub 10.71%);
  transition: 0.1s;

  &:not(.grayout):hover {
    background: linear-gradient(0deg, $color_sub_dark 8.93%, $color_sub_dull 10.71%);
  }

  &:not(.grayout):active {
    margin-top: 2px;
    padding-bottom: 6px;
    background: linear-gradient(0deg, $color_sub_dark 8.93%, $color_sub_dark 10.71%);
  }
}

/* 影付きボタン */
.emp {
  display: block;
  @include box-shadow();
  transition: 0.1s;

  &:not(.grayout):active {
    position: relative;
    top: 2px;
    box-shadow: none;
  }
}

/*  DLボタン */
.dl_btn {
  padding: 0 12px;
  margin-bottom: 16px;
  padding: 2px 12px;
  width: 180px;
  background: $color_white;
  border: solid 2px $color_sub_dl;
  @include border-radius;
  color: $color_sub_dl;
  box-shadow: 0px 2px 1px 0px rgba(0, 0, 0, 0.25);

  &:hover {
    background-color: #deece0;
  }

  &:active {
    background-color: #a9c9ae;
  }
}

/* フチ付きミニボタン */
.nomal_btn {
  display: block;
  padding: 8px 12px;
  border-radius: 4px;
  border: 1px solid $color_gray_deep;
  font-size: 13px;
  text-align: center;
  color: $color_main_dark;

  &.ok_btn {
    border: $color_sub 1px solid;
  }
}

/* グレーアウト */
.grayout {
  cursor: default;
  opacity: 0.3;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

フォーム

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
共通
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
textarea,
input,
select {
  display: block;
  margin: 0;
  padding: 4px 12px;
  width: 100%;
  max-width: 480px;
  @include line-height;
  border: 1px solid $color_black;
  @include border-radius;
  text-align: left;
  font-family: 'BIZ UDPGothic', sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;

  &.short {
    width: 120px;
  }

  &.middle {
    width: 200px;
  }
}


label {
  color: $color_black;
}

::placeholder {
  color: $color_gray;
}

/* 選択時 */
input:focus,
.selectBtn select:focus {
  outline: solid 2px $color_black;
}

/* セレクトボタン */
select {
  background: $color_lightgray;

  option {
    padding: 4px;
    background: $color_white;
  }
}


/* ラジオボタン */
.radio-btn {
  input[type="radio"] {
    display: none;
  }

  .radio_txt {
    display: inline-block;
    margin-right: 16px;
    padding-left: 30px;
    position: relative;
  }

  .radio_txt::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    border: 1px solid $color_sub;
    border-radius: 50%;
    width: 20px;
    height: 20px;
  }

  input[type="radio"]:checked+.radio_txt::after {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 4px;
    width: 14px;
    height: 14px;
    background-color: $color_main;
    border-radius: 50%;
  }

  /* Safari */
  _::-webkit-full-page-media,
  _:future,
  :root .radio_txt::before {
    top: -1px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root input[type="radio"]:checked+.radio_txt::after {
    top: 3px;
  }
}

/* 編集フォーム内ラジオボタン */
table.edit .radio-btn {
  padding-top: 0.6em;
}

/* チェックボックス */
.check_btn {
  position: relative;
  display: block;
  min-height: 1.5em;
}

input[type="checkbox"] {
  display: none;
}

.check_inner {
  position: relative;
  display: inline-block;
  margin-right: 12px;
  padding-left: 28px;
  word-wrap: break-word;
  word-break: break-all;
  vertical-align: text-top;
}

.check_inner:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  border: 1px solid $color_black;
  border-radius: 2px;
  width: 20px;
  height: 20px;
}

input[type="checkbox"]:checked+.check_inner::before {
  background-color: $color_main;
}

input[type="checkbox"]:checked+.check_inner::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  display: block;
  width: 22px;
  height: 10px;
  background: url(../img/check.svg) center center no-repeat;
  background-size: contain;
}

/* 姓名 */
.first-last_name {
  display: flex;

  input {
    width: 140px;

    &:last-child {
      margin-left: 8px;
    }

    &.gray {
      opacity: 0.3;
    }
  }
}

/* フォーム+文章 */
.input_text {
  display: flex;
  align-items: end;

  :first-child {
    margin-right: 4px;
  }
}

/* 日・時間フォーム */
.date_time {
  display: flex;

  input {
    width: 50%;
    max-width: 180px;

    &:last-child {
      margin-left: 8px;
    }

    &.gray {
      opacity: 0.3;
    }
  }
}

/* 利用可能ドメイン */
.add_textbox {
  span {
    position: relative;
    display: block;

    &:not(:last-child) {
      margin-bottom: 4px;
    }

    &:first-child::after {
      content: "";
      position: absolute;
      top: calc(50% - 10px);
      ;
      right: -32px;
      display: block;
      margin: 2px 4px 0;
      width: 18px;
      height: 18px;
      background: url(../img/delete_domein.svg) center center no-repeat;
      background-size: contain;
    }

    // &:nth-last-child(2)::after {
    //   content: "";
    //   position: absolute;
    //   top: calc(50% - 13px);
    //   right: -36px;
    //   display: block;
    //   margin: 2px 4px 0;
    //   width: 26px;
    //   height: 26px;
    //   background: url(../img/add_domain.svg) center center no-repeat;
    //   background-size: contain;
    // }
  }

  .note {
    margin: 0;
    text-align: right;
  }
}

/* エラー */
.err {
  margin-top: 8px;
  color: $color_imp
}


/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
情報追加変更フォーム
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/

/* フォーム用テーブル */
table.edit {
  table-layout: fixed;
  width: 100%;
  color: $color_black;
  text-align: left;
  border-collapse: collapse;

  th {
    padding-top: 8px;
    padding-right: 12px;
    width: 180px;
    vertical-align: text-top;
    font-weight: 400;
  }

  td {
    width: 100%;
    padding-bottom: 16px;
  }
}

/* フォーム用テーブル2列用 */
.modal.column2 .modal_inner {
  padding-left: 40px;
  padding-right: 40px;
}

.column2 table.edit {
  tr.col2tr {
    th {
      width: 150px;
    }

    td {
      width: calc(50% - 380px);
    }

    & :nth-child(3) {
      padding-left: 60px;
    }
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

リストテーブル

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
テーブル共通
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
.table_wrap {
  margin-top: 0 auto;
  position: relative;
  padding: 0 48px 0;
}

table.list {
  width: 100%;
  min-width: calc(100vw - 90px - calc(100vw - 100%));
  color: $color_black;
  border-collapse: collapse;

  th,
  td {
    padding: 8px 24px;
  }

  thead {

    th {
      background: $color_table_head;
      text-align: left;
      vertical-align: bottom;
      font-weight: normal;
    }

    tr.ML th {
      display: table-cell;
      margin: 0 auto;
      padding: 8px 4px;
      height: 130px;
      min-width: 40px;
      word-wrap: break-word;
      word-break: break-all;
      @include font-size_min;
      vertical-align: middle;
      writing-mode: vertical-rl;
      line-height: 1.1;
    }
  }

  tbody {
    tr {
      td {
        background: $color_table_body;
        text-align: left;

      }

      &:nth-child(even) td {
        background: $color_white;
      }
    }
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
固定テーブル
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
body.sticky_table_body {
  table-layout: fixed;
}

body.horizontal_scroll_body {
  width: max-content;
}

.sticky_table_wrap {
  position: relative;

  table {
    border-collapse: separate;
    border-spacing: 0px;

    thead th {
      /* 縦スクロール時にテーブル見出しを固定する */
      /*  1列目  */
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      z-index: 10;

      &:first-child {
        z-index: 9;
      }
    }

    /* 2列目固定位置 */
    thead tr:nth-child(2) th {
      top: 28px;
      z-index: 8;
    }

    /* 横スクロール時にテーブル見出し固定する */
    /* 共通 */
    &.st1 th:first-child,
    &.st1 td:first-child,
    &.st2 th:nth-child(2),
    &.st2 td:nth-child(2),
    &.st2 th:nth-child(3),
    &.st2 td:nth-child(3),
    &.st2 th:nth-child(4),
    &.st2 td:nth-child(4) {
      position: -webkit-sticky;
      position: sticky;
    }

    /* 表示順 */
    &.st1 tr:first-child th:first-child {
      z-index: 100;
    }

    &.st2 tr:first-child th:nth-child(2) {
      z-index: 99;
    }

    &.st2 tr:first-child th:nth-child(3) {
      z-index: 98;
    }

    &.st2 tr:first-child th:nth-child(4) {
      z-index: 97;
    }

    &.st1 td:first-child {
      z-index: 95;
    }

    &.st2 td:nth-child(2) {
      z-index: 94;
    }

    &.st2 td:nth-child(3) {
      z-index: 93;
    }

    &.st2 td:nth-child(4) {
      z-index: 92;
    }

    /* 固定位置 */
    &.st1 th:first-child,
    &.st1 td:first-child {
      left: 0;
    }
  }
}


/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
ページ別
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/

/* アカウント管理タブ用
---------------------------------- */
table.list.account_management {
  table-layout: fixed;
  width: max-content;

  /* 行ごとの幅 */
  tr:first-child th:nth-child(1),
  td:nth-child(1) {
    width: 100px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 100px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(2),
  td:nth-child(2) {
    width: 200px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 200px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(3),
  td:nth-child(3) {
    width: 160px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 160px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(4),
  td:nth-child(4) {
    width: 160px;
  }

  tr:first-child th:nth-child(5),
  td:nth-child(5) {
    width: 260px;
  }

  tr:first-child th:nth-child(6),
  td:nth-child(6) {
    width: 200px;
  }

  tr:first-child th:nth-child(7),
  td:nth-child(7) {
    width: 200px;
  }

  tr:first-child th:nth-child(8),
  td:nth-child(8) {
    width: 180px;
  }


  /* 見出し固定位置 */
  &.st2 th:nth-child(2),
  &.st2 td:nth-child(2) {
    left: 100px;
  }

  &.st2 th:nth-child(3),
  &.st2 td:nth-child(3) {
    left: 298px;
  }

  /* MLスタイル調整 */
  tr:first-child th:nth-child(n+9) {
    border-left: $color_gray 1px solid;
    border-bottom: $color_gray 1px solid;
    font-size: 14px;
    padding: 2px 8px 4px;
  }

  tr:last-child th {
    border-left: $color_gray 1px solid;
  }

  td:nth-child(n+9) {
    padding: 0;
    text-align: center;
    border-left: $color_gray 1px solid;
  }
}

/* 事業者管理タブ用
---------------------------------- */
table.list.business_management {

  /* 行ごとの幅 */
  tr:first-child th:nth-child(1),
  td:nth-child(1) {
    width: 100px;
  }

  tr:first-child th:nth-child(2),
  td:nth-child(2) {
    width: 330px;
    width: calc(20% - 100px);
  }

  tr:first-child th:nth-child(3),
  td:nth-child(3) {
    width: 200px;
  }

  tr:first-child th:nth-child(4),
  td:nth-child(4) {
    width: 200px;
    word-wrap: break-word;
    word-break: break-all;
    width: calc(20% - 100px);
  }

  tr:first-child th:nth-child(5),
  td:nth-child(5) {
    word-wrap: break-word;
    word-break: break-all;
  }
}

/* MLマスタ管理タブ用
---------------------------------- */
table.list.ml_master_management {
  width: 100vw;
  max-width: calc(100vw - 116px);
  min-width: 1300px;
  padding: 0;


  /* 行ごとの幅 */
  tr:first-child th:nth-child(1),
  td:nth-child(1) {
    width: 140px;
    box-sizing: border-box;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 140px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(2),
  td:nth-child(2) {
    width: 240px;
    min-width: 240px;
    word-wrap: break-word;
    word-break: break-all;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 240px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(3),
  td:nth-child(3) {
    width: 240px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 240px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(4),
  td:nth-child(4) {
    /* firefoxのsticky表示崩れ対策 */
    min-width: 300px;
    @include firefox_table_td;
  }

  /* 見出し固定位置 */
  &.st2 th:nth-child(2),
  &.st2 td:nth-child(2) {
    left: 140px;
  }

  &.st2 th:nth-child(3),
  &.st2 td:nth-child(3) {
    left: 380px;
  }

  /* 備考スタイル調整 */
  tr td:nth-child(n+4) {
    font-size: 14px;
  }

  /* MLスタイル調整 */
  tr:first-child th:nth-child(n+5) {
    border-left: $color_gray 1px solid;
    border-bottom: $color_gray 1px solid;
    font-size: 14px;
    padding: 2px 8px 4px;
  }

  tr:last-child th {
    border-left: $color_gray 1px solid;
  }

  td:nth-child(n+5) {
    padding: 0;
    text-align: center;
    border-left: $color_gray 1px solid;
  }
}

/*  お知らせ管理タブ用
---------------------------------- */
table.list.global_news_management {

  /* 上揃え */
  td {
    vertical-align: top;
  }

  /* 行ごとの幅 */
  tr:first-child th:nth-child(1),
  td:nth-child(1) {
    width: 100px;
  }

  tr:first-child th:nth-child(2),
  td:nth-child(2) {
    width: 60px;
  }

  tr:first-child th:nth-child(3),
  td:nth-child(3) {
    min-width: 300px;
  }

  tr:first-child th:nth-child(4),
  td:nth-child(4) {
    width: 90px;
  }

  tr:first-child th:nth-child(5),
  td:nth-child(5) {
    width: 90px;
  }

  tr:first-child th:nth-child(6),
  td:nth-child(6) {
    width: 90px;
  }

  tr:first-child th:nth-child(7),
  td:nth-child(7) {
    width: 150px;
  }

  tr:first-child th:nth-child(8),
  td:nth-child(8) {
    width: 120px;
    text-align: center;
  }
}

/* 事業者MLメンバー編集/追加カスタムダイアログ
---------------------------------- */
table.list.business_ml_member_management {
  table-layout: fixed;
  width: max-content;

  /* 行ごとの幅 */
  tr:first-child th:nth-child(1),
  td:nth-child(1) {
    width: 100px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 100px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(2),
  td:nth-child(2) {
    width: 200px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 200px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(3),
  td:nth-child(3) {
    width: 240px;
    /* firefoxのsticky表示崩れ対策 */
    min-width: 240px;
    @include firefox_table_td;
  }

  tr:first-child th:nth-child(4),
  td:nth-child(4) {
    width: 160px;
  }

  tr:first-child th:nth-child(5),
  td:nth-child(5) {
    width: 260px;
  }

  tr:first-child th:nth-child(6),
  td:nth-child(6) {
    width: 200px;
  }

  tr:first-child th:nth-child(7),
  td:nth-child(7) {
    width: 200px;
  }

  /* 見出し固定位置 */
  &.st2 th:nth-child(2),
  &.st2 td:nth-child(2) {
    left: 100px;
  }


  /* MLスタイル調整 */
  tr:first-child th:nth-child(n+8) {
    border-left: $color_gray 1px solid;
    border-bottom: $color_gray 1px solid;
    font-size: 14px;
    padding: 2px 8px 4px;
  }

  tr:last-child th {
    border-left: $color_gray 1px solid;
  }

  td:nth-child(n+8) {
    padding: 0;
    text-align: center;
    border-left: $color_gray 1px solid;
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
モーダルMLリスト
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
/* フォーム用リストテーブル */
.modal table.edit {
  table.list {
    table-layout: fixed;
    width: 100%;
    min-width: 700px;

    tr {
      th {
        position: sticky;
        top: 0;
        z-index: 100;
      }

      /* 行ごとの幅 */
      :nth-child(1) {
        width: 40px;
      }

      :nth-child(2) {
        width: 180px;
        word-wrap: break-word;
        word-break: break-all;
      }

      :nth-child(3) {
        width: 230px;
      }

      :nth-child(4) {
        width: 100%;
        @include font-size_min;
      }
    }
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
テーブル内縦スクロール
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
.scroll_wrap {
  max-height: 400px;
  overflow-y: auto;
  direction: rtl;

  table {
    direction: ltr;
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
簡易リスト
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
.simple_list {
  max-height: 200px;
  border: 1px solid $color_black;
  @include border-radius;

  li {
    padding: 8px 16px;
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
テーブル内要素
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
table {

  /* 編集ボタン */
  label.edit_btn {
    display: inline-block;
    text-align: center;
    margin: 0 auto;
    padding: 4px 0;
    width: 50px;
    background: $color_main;
    border-radius: 8px;
    color: $color_white;
    @include font-size_min;
  }

  /* DLボタン */
  .min_dl_btn {
    display: inline-block;
    margin: 0 0 0 16px;
    width: 24px;
    height: 22px;
    background: url(../img/download.svg) center center no-repeat;
    background-size: contain;
    vertical-align: bottom;
    opacity: 1;

    &:hover {
      filter: brightness(84%);
    }

    &:active {
      filter: brightness(70%);
    }
  }

  /* タイトルと本文の組み合わせ */
  .ttl {
    margin-bottom: 0.8em;
  }

  .text {
    margin-bottom: 0.8em;
    font-size: 14px;

  }

}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

テーブル操作用ナビ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.table_nav {
  display: flex;
  justify-content: space-between;
  align-items: end;
  margin: 24px auto 0 0;
  padding: 0 48px;
  width: calc(100vw - calc(100vw - 100%));
  max-width: 100vw;
  @include screen_min-width;

  &.page_nav_next {
    margin: 8px auto 0 0;
  }
}

.table_nav_left,
.table_nav_right {
  max-width: 500px;
}

.table_nav_right {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: end;
}

.search_wrap {
  display: flex;
}

/* ページャー */
.pager {
  display: flex;
  align-items: center;
  margin: 16px 0;

  a {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1px;
    text-decoration: none;
    color: $color_black;
    width: 32px;
    height: 32px;
    @include border-radius;
    background: $color_gray;
    transition: 0.1s;

    &:hover {
      background: $color_gray_dull;
    }

    &:active {
      background: $color_gray_dark;
    }

    &.select {
      background: $color_black;
      color: $color_white;
    }

    &.prev,
    &.next {
      width: 32px;
      height: 32px;

      &.prev::before,
      &.next::after {
        content: "";
        display: inline-block;
        margin: 2px 4px 0;
        width: 6px;
        height: 2em;
        background: url(../img/page_back.svg) center center no-repeat;
        background-size: contain;
      }

      &.next::after {
        background: url(../img/page_next.svg) center center no-repeat;
        background-size: contain;
      }
    }
  }

  span {
    margin: 0 2px;
    color: $color_black;
  }
}

/* セレクトボックス */
.search_wrap {
  select {
    margin-right: 8px;
    padding: 0 12px;
    width: 200px;
    height: 2em;
  }

  .zigyo {
    width: 300px;
  }
}

/* 検索ボタン */
.search {
  display: flex;

  input {
    width: 300px;
    height: 2em;
    background: none;
    @include border-radius;
  }

  button {
    display: block;
    width: 2em;
    height: 2em;
    margin-left: 2px;
    margin-bottom: 16px;
    @include border-radius;
    background: url(../img/icon_search.svg) center center no-repeat;
    background-size: 16px auto;
    background-color: $color_black;

    &:hover {
      background-color: #3a3a3a;
    }

    &:active {
      background-color: $color_black;
    }
  }
}


/*  新規制作ボタン */
.add_btn {
  display: block;
  padding: 12px 0;
  width: 180px;
  border-radius: 40px;
  text-align: center;

  &::after {
    content: "";
    display: inline-block;
    margin: 0 0 -4px 6px;
    width: 1.2em;
    height: 1.2em;
    background: url(../img/add.svg) bottom no-repeat;
    background-size: contain;
  }

  &.min {
    margin-left: 8px;
    padding: 5px 0;
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

モーダル

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
モーダルガワ
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
/* モーダル非表示 */
.modal_wrap {
  display: none;
}

/* 表示切り替え用ラジオボタン非表示 */
input[name="modal_switch"] {
  display: none;
}

.modal_open+label,
.modal_close-button+label {
  cursor: pointer;
}

.modal_open+label~label {
  display: none;
}

/* モーダル */
.modal_open:checked+label~.modal_wrap {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  width: 100vw;
  height: 100vh;
}

/* オーバーレイ */
.modal_open:checked+label~.modal_close-overlay+label {
  background: rgba(0, 0, 0, 0.70);
  display: block;
  z-index: 997;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
  color: $color_white;
  z-index: 900;
}

/* 閉じるボタン */
.modal_open:checked~#modal_close-button+label {
  position: fixed;
  top: 16px;
  right: 16px;
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/icon_delete.svg) no-repeat right;
  background-size: contain;
  z-index: 960;
}

/* アニメーション*/
.modal_wrap {
  animation: fadeIn 0.2s ease 0s 0.5 normal;
  -webkit-animation: fadeIn 0.2s ease 0s 0.5 normal;
  z-index: 900;
}

.modal_open:checked~#modal_close-button+label {
  animation: fadeIn 0.2s ease 0s 0.5 normal;
  -webkit-animation: fadeIn 0.2s ease 0s 0.5 normal;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/*ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ
モーダル中身
ｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰｰ*/
.modal {
  position: relative;
  margin: auto;
  width: calc(100vw - 10%);
  min-width: 600px;
  max-width: 960px;
  max-height: calc(100vh - 80px);
  background: $color_white;
  @include border-radius;
  color: $color_black;
  overflow: auto;
  scrollbar-width: none;
  z-index: 950;

  &::-webkit-scrollbar {
    height: 2px;
    width: 8px;
  }

  &::-webkit-scrollbar-thumb {
    background-color: $color_gray;
    border-radius: 6px;
  }

  .modal_inner {
    position: relative;
    margin: 0 auto;
    padding: 60px 10%;
    max-width: 800px;
  }

  /*  広め */
  &.wide {
    width: calc(100vw - 8%);
    min-width: 600px;
    max-width: 1300px;

    .modal_inner {
      padding: 60px 5%;
      max-width: 1100px;
      min-width: 900px;
    }
  }
}


/* 登録・キャンセルボタン */
.submit_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 40px;

  label {
    display: block;
    margin: 0 12px;
    width: 250px;
    padding: 20px 0;
    @include border-radius;
    color: $color_white;
    text-align: center;
  }

  p.note {
    font-size: 12px;
  }
}

/*  削除ボタン */
button.delete {
  position: absolute;
  bottom: 16px;
  right: 0;
  color: $color_imp;
  @include font-size_min;
  text-decoration: underline;
  text-align: right;

  &:hover {
    color: $color_link;
  }

  &:active {
    color: $color_gray;
  }
}

/* 小さいモーダル */
.small_modal {
  .modal {
    min-width: inherit;
    width: 400px;
  }

  .modal_inner {
    padding: 40px 10%;
  }

  p {
    margin: 0 auto 8px;
  }
}

.submit_wrap_nomal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 24px;

  label {
    display: block;
    margin: 0 8px;
    width: 100px;
    color: $color_white;
  }
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

ヘッダー

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
header {
  width: 100%;
  height: 88px;
  background-color: $color_bg;

  .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 100vw;
    @include screen_min-width;
    height: 69px;
    padding: 16px 48px 0;

    .title {
      width: 260px;
      height: 48px;
    }

    /* ヘッダー右側 */
    .nav-right {
      display: flex;
      align-items: center;
      gap: 24px;
      padding-bottom: 8px;
    }

    /* ユーザー情報 */
    .user-info {
      display: flex;
      flex-direction: column;
      height: 48px;
    }

    .pass {
      text-align: right;
      margin-top: 2px;
    }

    .user-address {
      margin: 0;
      color: $color_black;
    }

    .user-address:before {
      content: url(../img/user.svg);
      display: inline-block;
      padding-right: 8px;
    }

    /* ログアウトアイコン */
    .logout {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
    }

    .logout p {
      font-size: 12px;
      margin: 0;
    }

    .logout a {
      text-align: center;
      color: $color_black;
    }

    .logout img {
      padding-bottom: 4px;
      padding-top: 6px;
    }
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

ログイン

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.login_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  width: 100%;
  height: 100%;
  color: $color_black;

  &::before,
  &::after {
    content: "";
    display: block;
    width: 100%;
    height: 4%;
    flex-shrink: 0;
  }

  form {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 800px;
    margin-bottom: 64px;
  }

  .login_form_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .login {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 704px;
    height: 100%;
    padding: 80px 56px 120px;
    @include border-radius;
    background: $color_bg;
    @include box-shadow();
    flex-direction: column;
    min-height: 600px;
  }

  h1.login-title {
    text-align: center;
    margin: 0 auto;
    width: 480px;
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.2em;
    text-align: center;
  }

  .subtitle {
    margin-top: 8px;
    width: 480px;
  }

  .change {
    color: grey;
  }

  p {
    margin: 0;
  }

  .login-input {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    margin: 48px auto 0;

    li {
      width: 100%;

      &.user-id-Fixed p:not(:first-child) {
        padding-left: 8px;
      }
    }

    input {
      padding-left: 8px;
      border: none;
      outline: none;
      background: none;
      width: 480px;
      height: 40px;
      border-radius: 4px;
      background: $color_white;
    }
  }

  .submit {
    margin-top: 44px;

    .button.imp {
      padding: 14px 16px 18px;

      &:active {
        margin-top: 2px;
        padding-bottom: 14px;
      }
    }
  }

  a.reset {
    margin-top: 24px;
  }
}

/* パスワードリセット */
.send-button {
  width: 256px;
  height: 56px;
  margin-top: 56px;
  padding-bottom: 8px;
  border: none;
  border-radius: 8px;
  color: $color_white;
  font-family: BIZ UDPGothic;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  background: linear-gradient(0deg, $color_sub_dark 8.93%, $color_sub 10.71%);
}

form[name="password_reset"] .login-content {
  margin-top: 122px;
}

/* パスワード変更 */
.password_setting-title {
  color: $color_black;
  text-align: center;
  font-family: BIZ UDPGothic;
  font-size: 36px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2em;
  margin-bottom: 16px;
}

.password_setting-comment {
  text-align: left;
  width: 484px;
  margin: auto;
}

.password_setting-comment2 {
  text-align: left;
  width: 484px;
  margin: auto;
  padding-left: 10px;
}

.user-id-Fixed {
  margin-top: 8px;
}

.password_setting-content {
  margin-top: 56px;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

スルッと管理者タブ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.adomin-surutto_tab_wrap {
  padding: 2px 0 0;
  width: 100%;
  background: $color_bg;
  border-bottom: 1px solid $color_black;

  h2 {
    padding-right: 48px;
    width: calc(100vw - calc(100vw - 100%));
    @include screen_min-width;
    max-width: 100vw;
    text-align: right;
    font-size: 24px;
    color: $color_black;
  }

  .adomin-surutto_tab {
    display: flex;
    justify-content: space-between;
    padding-right: 48px;
    width: calc(100vw - calc(100vw - 100%));
    @include screen_min-width;
    max-width: 100vw;

    .back {
      display: flex;
      align-items: flex-end;
      margin: 0 0 8px 48px;
      font-size: 0.9rem;
    }

    ul {
      display: flex;

      li {
        padding-left: 16px;
      }

      a {
        display: block;
        padding: 20px 0;
        width: 190px;
        background: $color_sub;
        border-radius: 4px 4px 0px 0px;
        color: $color_white;
        text-align: center;
        text-decoration: none;
      }

      li a:hover:not(:active) {
        margin-top: -2px;
        padding-top: 22px;
      }

      li:not(.select) a:hover {
        background: $color_sub_dull;
      }

      li:not(.select) a:active {
        background: $color_sub_dark;
      }

      li.select a {
        margin-bottom: -2px;
        background: $color_white;
        border: 1px solid $color_black;
        border-bottom: 1px solid $color_white;
        color: $color_black;
      }
    }
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

事業者管理ページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
.page_nav {
  display: flex;
  justify-content: space-between;
  margin: 24px auto 0 0;
  padding: 0 0;
  width: calc(100vw - calc(100vw - 100%));
  max-width: 100vw;
  @include screen_min-width;
  background: $color_white;

  h2 {
    margin: 0;
    padding-right: 48px;
    text-align: right;
    font-size: 24px;
    color: $color_black;
  }

  .back {
    display: flex;
    align-items: flex-end;
    margin: 0 0 8px 48px;
    font-size: 0.9rem;
  }
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

会議体会議体選択

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


.meeting-body {
  display: flex;
  gap: 32px;
  margin: 32px auto;
  padding: 0 40px;
  width: 100%;
  max-width: 1360px;
  @include screen_min-width;
  color: $color_black;
}

/* -----------------------------------------------
お知らせ */
.news_wrap {
  margin-top: 16px;

  .news-title {
    font-size: 24px;
    margin-top: 24px;
    margin-bottom: 8px;
  }

  .sel {
    margin-top: 0;
  }

  .news-frame {
    width: 100%;
    height: 880px;
    border-radius: 4px;
    border: 1px solid #B6B6B6;
    direction: rtl;
    /* テキスト方向を右から左 (Right-to-Left) に設定 */
    unicode-bidi: bidi-override;
    /* バイダイレクショナルのオーバーライドを設定 */
    overflow-y: scroll;
    padding-left: 0;

  }

  .blue {
    background: #F4FAFF;
  }

  .purple {
    background: #FBFAFF;
  }

  .scroll {
    overflow-y: none;
    height: auto;
  }

  .news-frame::-webkit-scrollbar {
    width: 8px;
  }

  .news-frame::-webkit-scrollbar-thumb {
    background-color: $color_gray;
    border-radius: 6px;
  }

  h2 {
    margin: 0 0 6px;

    &:nth-child(n+2) {
      margin-top: 48px;
    }
  }

  ul.news-content {
    width: 100%;
    padding: 0 24px;
    overflow-wrap: normal;

    time {
      display: inline-block;
      font-size: 13px;
    }

    li {
      display: block;
      margin: 24px auto;
      padding-bottom: 24px;
      border-bottom: 1px solid #B6B6B6;
      direction: ltr;
      /* テキスト方向を左から右 (Left-to-Right) に設定 */
      unicode-bidi: normal;
      /* バイダイレクショナルを通常に戻す */
      text-align: left;

      &:last-child {
        border-bottom: none;
      }

      h3 {
        color: $color_black;
        font-size: 16px;
        font-weight: 700;
        margin-top: 0;
        margin-bottom: 8px;
      }

      p {
        margin-top: 0;
      }
    }
  }
}


/* top用 ニュースボックスの高さ調整*/
#top .news_wrap {
  margin-top: 4;

  .news-frame {
    height: 480px;
  }
}

/* -----------------------------------------------
会議体一覧 */
.meeting-select {
  margin-top: 10px;
}

.meeting-explain-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.meeting-explain {
  position: relative;

  h2,
  p {
    margin: 0;
  }
}

.cell-wrap {
  display: flex;
  flex-wrap: wrap;
  width: 860px;
  margin-top: 14px;
  gap: 2px;

  li {
    width: 154px;
    height: 150px;

    a {
      display: grid;
      place-items: center center;
      padding: 12px;
      width: 100%;
      height: 100%;
      background-color: #D9F2FF;
      border: solid 1px #D9F2FF;
      border-radius: 4px;
      transition: 0.1s;
      text-decoration: none;
      color: $color_black;
      font-weight: 500;
    }

    &:nth-child(even) a {
      background-color: #BDE5FB;
      border: solid 1px #BDE5FB;
    }

    & a:hover {
      background-color: #ecf8ff;
      border: solid 1px $color_sub;
      color: $color_black;
      @include box-shadow();
    }

    &:nth-child(even) a:hover {
      background-color: #ecf8ff;
    }

    & a:active,
    &:nth-child(even) a:active {
      background-color: $color_white;
      box-shadow: none;
    }
  }

  p {
    width: auto;
  }
}

/* -----------------------------------------------
会議体TOP */
.top-button {
  display: flex;
  justify-content: space-between;
  padding: 0 40px;
  max-width: 99vw;
  @include screen_min-width;
  margin: 16px auto 0;

  .thin {
    height: 36px;
    padding: 4px 16px;
  }

  .back {
    margin-top: -4px;
  }

  .top-button-right {
    display: flex;
    gap: 8px;

    .thin {
      height: 36px;
      padding: 4px 16px;
    }
  }

}

.top-content {
  display: flex;
  gap: 32px;
  margin-top: 32px;
}

/* -----------------------------------------------
ダウンロードリスト */

.download-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

//追加ボタン
.download-list-button {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  text-align: center;

  button.add_button,
  label.add_button {
    position: relative;
    display: block;
    padding: 8px;
    width: 178px;
    padding-right: 30px;
    border-radius: 50px;
    color: $color_white;

    &::after {
      content: url(../img/file_add.svg);
      vertical-align: middle;
      padding: 0 8px;
      position: absolute;
      top: 10px;
    }

    &.folder:after {
      content: url(../img/folder_add.svg);
      vertical-align: middle;
      position: absolute;
      top: 10px;
    }
  }
}


//DL削除ボタン
.dl-button-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  padding-right: 10px;
}

//ファイルリスト
.dllist {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;

  th {
    padding: 6px;
    background: $color_table_head;
    outline: 1px solid #5f5f5f;
    outline-offset: -1px;
    border-radius: 4px 4px 0 0;
  }

  td {
    display: flex;
    align-items: center;
    padding: 10px;
    min-height: 48px;
    border: solid 1px #5f5f5f;
  }

  .edit_icon {
    width: 24px;
    height: 26px;
    background: url(../img/edit_aikon.svg) center left/ auto no-repeat;
    flex-shrink: 0;

    &:hover {
      opacity: 0.6;
    }

    &:active {
      opacity: 1;
    }
  }


  .file_wrap {
    display: flex;
    gap: 8px;
    align-items: center;
    text-align: left;

    &:hover {
      opacity: 0.6;
    }

    &:active {
      opacity: 1;
    }
  }

  .icon {
    width: 34px;
    height: 26px;
    background: url(../img/folder_icon.svg) center / auto no-repeat;
    flex-shrink: 0;
  }

  tr.file .icon {
    background: url(../img/file_icon.svg) center / auto no-repeat;
  }

}

/*  ファイルリスト角丸調整 */
td:first-child {
  border-top: none;
}

tr:last-child td {
  border-top: none;
  border-radius: 0 0 4px 4px;
}
