﻿/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/
@charset "utf-8";
/* --------------------------------------------------
	見出し
-------------------------------------------------- */
/*トップページ　大見出し*/
.col_toppage_midashi > h2 {
  color: #054182;
  font-size: 45px;
  font-optical-sizing: auto;
  font-style: normal;
  text-align: center;
  line-height: 1;
  padding-top: 1em;
}
.news.sitetop_bg_area > div > h2 {
  margin-top: 3em;
}
.col_toppage_midashi > h3 {
  font-size: 16px;
  text-align: center;
  margin-bottom: 1em;
}
/*  会社案内ページタイトル */
/*サブページトップの見出し*/
.col_midashi_pagetop {
  font-size: clamp(1.688rem, 1.316rem + 1.86vw, 2.5rem);
  margin: 3em 0 1.5em 0;
  position: relative;
  padding: 50px 0 0 10px;
  color: #414141;
}
.col_midashi_pagetop span {
  position: relative;
  z-index: 2;
}
.col_midashi_pagetop::before {
  color: rgba(127, 127, 127, 0.2);
  font-size: clamp(2.5rem, 2.071rem + 2.14vw, 3.438rem);
  z-index: -1;
  top: 26px;
  content: attr(data-en);
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 1;
}
/*  本文中 大見出し */
.col_danraku_midashi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: .2em 0 .2em .7em;
  line-height: 1.2;
  border-left: solid 5px #d72020;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  margin: 2em 0 1em;
}
.col_danraku_midashi span:nth-of-type(1) {
  padding: 0 .5em 0 0;
  font-size: clamp(1.625rem, 0.95rem + 3.38vw, 5rem);
}
.col_danraku_midashi span:nth-of-type(2) {
  font-size: clamp(1.125rem, 0.852rem + 1.36vw, 1.875rem);
  padding: 0 1em 0 0;
  color: #A0A0A0;
  font-weight: 700;
  margin: 0 0 0 0;
}
/*  本文中 中見出し */
.col_internal_chuumidashi {
  font-size: clamp(1.25rem, 1.063rem + 0.94vw, 2.188rem);
  border-left: 5px solid #D80A30;
  padding-left: .5em;
  line-height: 1.2;
  margin: 2em 0 1em 0;
}
/*  本文中　小見出し */
.col_internal_komidashi {
  font-size: clamp(1.375rem, 1.232rem + 0.71vw, 1.688rem);
  margin: 0 0 .5em 0;
}
/*  本文中　画像左寄せ */
.col_textarea_full img.f_l {
  padding: 0 10px 5px 10px;
  margin: 5px;
  float: left;
}
/*  本文中　画像右寄せ */
.col_textarea_full img.f_r {
  padding: 2px 0px 5px 15px;
  float: right;
  margin: 5px;
}
.f_img {
  width: 30%;
}
/*  画像レスポンシブ */
@media screen and (max-width : 768px) {
  /*  本文中　小見出し */
  .col_internal_komidashi {
    font-size: 1.1em;
  }
  .col_midashi_pagetop::before {
    font-size: 1em;
    top: var(--before-top);
  }
  /*  本文中　画像左寄せ */
  .col_textarea_full img.f_l {
    float: none;
    display: block;
    margin: 0 auto;
    padding: 0;
  }
  /*  本文中　画像右寄せ */
  .col_textarea_full img.f_r {
    float: none;
    display: block;
    margin: 0 auto;
  }
  .f_img {
    width: 100%;
  }
}
@media screen and (max-width : 500px) {
  /*サブページトップの見出し*/
  .col_midashi_pagetop {
    font-size: 1.3em !important;
  }
}
  .col_image_responsive_wrapper_l {
    float: left;
    width: 220px;
    padding: 0 15px 10px 0;
  }
  .col_image_responsive_wrapper_r {
    float: right;
    width: 220px;
    padding: 0 0 10px 15px;
  }
  .col_image_responsive_wrapper_c {
    width: 100%;
    text-align: center;
    margin: 30px 0;
  }
  .col_image_responsive_wrapper_c img {
    width: 100%;
    max-width: 600px;
    margin: 0px auto;
  }
  .col_image_c {
    text-align: center;
  }
  .col_image_c img {
    margin: 0px auto;
  }
  /*  画像レスポンシブ */
  @media screen and (max-width : 1614px) {
    .col_image_responsive_wrapper_l {
      float: none;
      width: auto;
      text-align: center;
    }
    .col_image_responsive_wrapper_r {
      float: none;
      width: auto;
      text-align: center;
    }
    .col_image_responsive_wrapper_l img {
      margin: 0 auto;
    }
    .col_image_responsive_wrapper_r img {
      margin: 0 auto;
    }
  }
  /* --------------------------------------------------
	本文領域
-------------------------------------------------- */
  /*  本文領域 */
  .col_textarea_full {
    width: 100%;
    margin: 0 auto;
  }
  .col_textarea_full::after {
    content: "";
    clear: both;
    display: block;
  }

  /* 写真センタリングの指定 */
  .responsive_center {
    float: left;
    width: calc(50% - 6px); /*		border:red 1px solid; */
  }
  .responsive_center img {
    width: calc(100% - 6px);
    margin: 3px;
  }
  @media (max-width: 500px) {
    .responsive_center {
      float: none;
      margin: 20px auto;
      width: 90%;
    }
    .responsive_center img {
      margin: 3px;
      width: calc(100% - 6px); /* max-width:500px; */
    }
  }
  /* --------------------------------------------------
	左固定テーブル
-------------------------------------------------- */
  .col_fixing {
    margin-top: 15px;
    padding: 20px 25px 20px 25px;
    border: 4px solid #e6e6e6;
    margin-bottom: 30px;
  }
  .col_fixing_title {
    border-left: #054182 5px solid;
    padding: 5px 0 2px 15px;
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 10px;
  }
  .col_fixing_wrapper {
    border-bottom: 1px #CCCCCC dotted;
    padding: 9px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .col_fixing_contents_wrapper {
    width: 100%;
  }
  .col_fixing_contents {}
  .col_fixing_subtitle {
    width: 125px;
    font-weight: bold;
    color: #666;
  }
  @media (max-width: 500px) {
    .col_fixing_contents_wrapper {
      width: 100%;
      margin-left: 0px;
    }
    .col_fixing_contents {
      margin-left: 0px; /* width:100%; */
    }
    .col_fixing_subtitle {
      width: 100%;
      margin: 0px auto;
      text-align: center;
    }
    .col_fixing_wrapper {
      display: block;
    }
  }
  /* fixingbox 簡易リスト版 */
  .col_fixing_list {
    width: 100%;
    padding: 0 .5em;
    font-size: .95em;
  }
  .col_fixing_list dt {
    float: left;
    font-weight: bold;
    border-bottom: solid 1px #C1C1C1;
    margin-bottom: .5em;
    padding: 0;
    width: 120px;
    text-align: center;
  }
  .col_fixing_list dd {
    margin-left: 120px;
    border-bottom: solid 1px #C1C1C1;
    margin-bottom: .5em;
  }
  @media (max-width: 500px) {
    .col_fixing_list dt {
      padding: 0;
      margin: 0;
      float: none;
      text-align: center;
      border-bottom: none;
      width: 100%;
      background: #F5F5F5;
    }
    .col_fixing_list dd {
      margin-left: 0;
      border-bottom: none;
    }
  }
  /*----------------------------------------------------
	テーブル１（2セル用）　http://www.will-hp.com/wpblog/web/184/
----------------------------------------------------*/
  /*<normal>をclassに変更*/
  .col_table_normal {
    width: 97.3%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
    border-collapse: collapse;
  }
  .col_table_normal th, .col_table_normal td {
    padding: 10px;
    border: 1px solid #ddd;
  }
  .col_table_normal th {
    background: #f4f4f4;
  }
  .col_table_normal th {
    width: 20%;
    text-align: left;
  }
  @media only screen and (max-width:768px) {
    .col_table_normal {
      margin: 0 0 30px 0;
    }
    .col_table_normal th {
      text-align: center;
      width: 99%;
      display: block;
      border-top: none;
    }
    .col_table_normal td {
      width: 99%;
      display: block;
      border-top: none;
    }
    .col_table_normal tr:first-child th {
      border-top: 1px solid #ddd;
    }
  }
  /* --------------------------------------------------
	左固定テーブル
-------------------------------------------------- */
  .col_l_fixing {
    margin-top: 15px;
    padding: 20px 25px 20px 25px;
    border: 4px solid #e6e6e6;
    margin-bottom: 30px;
  }
  .col_l_fixing_title {
    background-image: url('../image/common/icon-border.png');
    background-position: left center;
    padding: 3px 0 0 13px;
    background-repeat: no-repeat;
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 10px;
    color: #464646;
  }
  .col_l_fixing_title a {
    color: #993C72;
  }
  .col_l_fixing_title a:hover {
    color: #BE5487 !important;
  }
  .col_l_fixing_wrapper {
    overflow: hidden;
    border-bottom: 1px #CCCCCC dotted;
    padding: 9px 0;
  }
  .col_l_fixing_contents_wrapper {
    float: right;
    width: 100%;
    margin: 0 0 0 -125px;
  }
  .col_l_fixing_contents {
    margin-left: 125px;
  }
  .col_l_fixing_subtitle {
    float: left;
    width: 125px;
    font-weight: bold;
  }
  /* モバイル用 */
  @media screen and (max-width: 768px) {
    .col_l_fixing {
      width: calc(100% - 10px);
      margin-top: 15px;
      padding: 5px;
      margin-bottom: 0;
    }
    .col_l_fixing_wrapper {
      overflow: hidden;
      border-bottom: 1px #CCCCCC dotted;
    }
  }
  /*　マーカー　*/
  .col_marker_red {
    background: #ffc0cb;
    font-weight: bold;
  }
  .col_marker_yellow {
    background: #fff799;
    font-weight: bold;
  }
  .col_marker_white {
    background: #fff;
    font-weight: bold;
  }
  .col_marker_blue {
    background: #DBE9F8;
    font-weight: bold;
  }
  .col_appealmessage {
    margin-bottom: 10px;
    font-weight: bolder;
    letter-spacing: 0.1em;
    font-size: 1.3em;
    color: #3E3E3E;
  }
  /* --------------------------------------------------
	テキストシート（文字の背景）
-------------------------------------------------- */
  /*　テキストシート　*/
  .col_txtsheet {
    width: auto;
    margin: 1em auto 3em auto;
    padding: 1em 1.2em;
    border-radius: 20px;
    background-color: #F5F5F5;
    border-radius: 5px;
  }
  .col_txtsheet .col_internal_chuumidashi {
    margin: .2em 0 1em 0;
  }
  .col_txtsheet p {
    padding: 0;
    margin: .5em 0;
  }
  /*　テキストシート　*/
  .col_txtsheet.white {
    background-color: #fff;
  }
  /* --------------------------------------------------
	ふんわりボタン
-------------------------------------------------- */
  .col_fuwa {
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .col_fuwa:hover {
    opacity: 0.6;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
  }
  /* --------------------------------------------------
hoverで彩度をあげる
-------------------------------------------------- */
  .col_contrast {
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
  }
  .col_contrast:hover {
    -webkit-filter: saturate(200%) blur(.3px);
    filter: saturate(200%) blur(.3px);
  }
  /* --------------------------------------------------
	リストマーク
-------------------------------------------------- */
  /*  2列 */
  .col_mark_2col {
    margin: 0 0 10px 0px;
  }
  .col_mark_2col li {
    float: none !important;
    display: inline-block;
    background-image: url('../image/common/icon-hover.png');
    background-position: left center;
    background-repeat: no-repeat;
    position: relative;
    margin-bottom: 3px;
    width: 43%;
    /*	float:left;*/
    padding-left: 20px;
  }
  /*　スマホ用 / 2列から1列に　*/
  @media (max-width : 1614px) {
    .col_mark_2col li {
      width: 95%;
      padding-left: 0px;
      padding-left: 20px;
    }
  }
  /*  3列 */
  .col_mark_3col {
    margin: 0 0 10px 0px;
  }
  .col_mark_3col li {
    background-image: url('../image/common/icon-hover.png');
    background-position: left center;
    background-repeat: no-repeat;
    position: relative;
    margin-bottom: 3px;
    width: 29%;
    float: left;
    padding-left: 20px;
    margin-right: 10px;
  }
  /*　スマホ用 / 3列から2列に　*/
  @media (max-width : 1614px) {
    .col_mark_3col {}
    .col_mark_3col li {
      margin-bottom: 3px;
      width: 42.5%;
      float: left;
      padding-left: 20px;
    }
  }
  /*  リストの上下を均等にあける */
  .col_mark_number, .col_mark_circle, .col_mark_number_square, .col_mark_check, .col_mark_triangle, .col_mark_kome {
    margin: 10px 0;
    text-align: left;
  }
  /* 三角矢印 */
  .col_mark_triangle {
    margin: 0 0 15px 5px;
    list-style-type: none;
  }
  .col_mark_triangle li {
    position: relative;
    padding: 0em 0.3em 0.3em 1.3em;
  }
  .col_mark_triangle li:before {
    position: absolute;
    content: '';
    top: 0.5em;
    left: 0.2em;
    height: 0;
    width: 0;
    border-style: solid;
    border-width: 6px 0 6px 9px;
    border-color: transparent transparent transparent #054182;
  }
  /*三角マーク下に円マークをいれる時の対策*/
  .col_mark_triangle li > .col_mark_circle li:before {
    border-width: 5px 5px 5px 5px !important;
  }
  /*  数字マーク */
  .col_mark_number {
    margin: 0 0 10px 33px;
  }
  .col_mark_number li {
    position: relative;
    margin-bottom: 10px;
    list-style-type: decimal;
  }
  /*  数字マーク　２階層目*/
  .col_mark_number li > .col_mark_number li {
    list-style-type: lower-alpha;
  }
  /*  円マーク */
  .col_mark_circle {
    margin: 0 0 15px;
    padding: 0;
  }
  .col_mark_circle li {
    position: relative;
    margin-bottom: 5px;
    padding-left: 1.2em; /* 丸のための場所を確保 */
    line-height: 1.7;
    text-align: justify;
  }
  .col_mark_circle li::before { /* ::after との衝突を避けて ::before に */
    content: '';
    position: absolute;
    top: calc(.85em - 3px); /* 1行目の中央に揃える */
    left: .3em;
    width: 6px;
    height: 6px;
    background-color: #878787;
    border-radius: 50%;
  }
  /*  （）付き数字 */
  .col_mark_number02 {
    margin-left: 2em;
  }
  .col_mark_number02 li {
    list-style-type: none;
    counter-increment: cnt;
    position: relative;
  }
  .col_mark_number02 li:before {
    content: "("counter(cnt) ")";
    display: inline-block;
    margin-left: -2em;
    width: 2em;
    position: absolute;
    top: 0;
    left: 0;
  }
  /* 数字マーク・四角で囲う版 */
  .col_mark_number_square {
    counter-reset: number; /*数字をリセット*/
    list-style-type: none !important; /*数字を一旦消す*/
    padding: 0;
    width: 94%;
    margin: 0 auto 20px auto;
  }
  .col_mark_number_square li {
    position: relative;
    padding: 0.7em;
    line-height: 1.5;
    background: #F4F4F4;
    border-left: solid 35px #054182;
    margin-bottom: 5px;
  }
  .col_mark_number_square li:before {
    font-size: 1em;
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    /*数字のデザイン変える*/
    display: inline-block;
    color: white;
    font-weight: bold;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -35px;
    width: 35px;
    height: 1em;
    line-height: 1;
    text-align: center;
  }
  /*  チェックマーク */
  .col_mark_check {
    margin: 0 0 15px 25px;
  }
  .col_mark_check li {
    position: relative;
    margin-bottom: 10px;
  }
  .col_mark_check li::after {
    display: block;
    content: '';
    position: absolute;
    top: .5em;
    left: -1.1em;
    width: 12px;
    height: 7px;
    border-left: 2px solid #054182; /*　色　*/
    border-bottom: 2px solid #054182; /*　色　*/
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  /* ※印 */
  .col_mark_kome li {
    margin: 0 0 5px 20px;
    list-style-type: none;
    text-indent: -1em;
  }
  .col_mark_kome li:before {
    margin-right: 5px;
    display: inline;
    content: "※";
  }
  ol {
    counter-reset: number; /* 名前を付けたカウンターをリセット */
    list-style: none; /* olが数字を付けることをキャンセル */
    margin: 0;
    padding: 0;
  }
  ol li {
    /* リスト部分は好きに装飾 */
    margin: 0;
    padding: 0;
  }
  /* --------------------------------------------------
	テーブル
-------------------------------------------------- */
  .col_table_responsive {
    width: 100%;
    margin: auto 0;
    padding: 0;
    background-color: #f9f9f9;
    border-radius: 3px;
    border: none;
    border-spacing: 0;
  }
  .col_table_responsive thead {
    background-color: #707070;
    color: #fff;
  }
  .col_table_responsive th {
    margin-bottom: 9px;
    padding: 9px 15px;
    /*	border-left: 1px #836089 solid;*/
    border-left: 3px #fff solid; /*薄グレー*/
    font-weight: normal;
  }
  .col_table_responsive th:first-child {
    border-left-width: 0;
  }
  .col_table_responsive tbody {
    vertical-align: top;
  }
  .col_table_responsive tbody td {
    border-left: 3px #fff solid;
  }
  .col_table_responsive tbody td:first-child {
    border-left-width: 0;
  }
  /* モバイル用 */
  @media screen and (max-width: 768px) {
    .col_table_responsive {
      width: 100%;
    }
    .col_table_responsive tbody tr {
      display: block;
      padding-bottom: 12px;
    }
    .col_table_responsive tbody td {
      display: block;
      padding: 3px 0;
      width: 100%;
      border-left-width: 0;
    }
    .col_table_responsive tbody td:before {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      margin-right: 5px;
      color: #888;
      font-weight: normal;
    }
    .col_table_responsive tbody td:nth-of-type(2):before {
      content: "日程:";
    }
    .col_table_responsive tbody td:nth-of-type(3):before {
      content: "時間:";
    }
    .col_table_responsive tbody td:nth-of-type(4):before {
      content: "場所:";
    }
    .col_table_responsive tbody td:nth-of-type(5):before {
      content: "内容:";
    }
    .col_table_responsive tbody .title {
      margin: 0 -15px;
      padding-right: 15px;
      padding-left: 15px;
      margin-bottom: 9px;
      background-color: #707070;
      color: #fff;
      text-align: center;
    }
    .col_tablearea01 th {
      display: none;
    }
    .col_tablearea01 tr {
      padding: 0 15px;
    }
    /* IE8対応 */
    .col_tablearea02 .col_table_responsive_pc {
      display: none;
    }
    .col_tablearea02 .col_table_responsive tr {
      display: block;
    }
    .col_tablearea02 .col_table_responsive thead {
      display: none;
    }
    .col_tablearea02 .col_table_responsive tbody tr {
      overflow: hidden;
    }
    .col_tablearea02 .col_table_responsive tbody tr:after {
      *zoom: 1;
    }
    .col_tablearea02 .col_table_responsive tbody tr:after:after {
      content: "\0020";
      display: block;
      height: 0;
      clear: both;
      overflow: hidden;
      visibility: hidden;
    }
    .col_tablearea02 .col_table_responsive tbody td {
      float: left;
    }
    .col_tablearea02 .col_table_responsive tbody td:before {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      content: attr(data-th) ":";
    }
    .col_tablearea02 .col_table_responsive tbody .col_table_responsive_inner {
      padding: 0 15px;
    }
    .col_tablearea02 .col_table_responsive tbody .title {
      margin: 0\9;
      padding-right: 0\9;
      padding-left: 0\9;
    }
    .col_tablearea02 .col_table_responsive tbody .title:before {
      content: none;
    }
  }
  /* PC用 */
  @media screen and (min-width: 769px) {
    .col_table_responsive_mobile {
      display: none;
    }
    .col_table_responsive th, .col_table_responsive td {
      display: table-cell;
    }
    .col_table_responsive td:before {
      display: none;
    }
    .col_table_responsive tr:nth-child(even) {
      background-color: #eaeaea;
    }
    .col_table_responsive th {
      padding: 7px 7px;
    }
    .col_table_responsive td {
      padding: 7px 7px;
    }
    .col_table_responsive td:before {
      display: none;
    }
    .col_table_responsive .date {
      width: 8em;
    }
    .col_table_responsive .contents {
      width: 150px;
    }
  }
  /* --------- リストテーブル作成用 --------- */
  /* 左項目固定｜右伸び縮み */
  /* ラッパー  */
  div.col_listbox_wrap {
    float: right;
    width: 100%;
    margin: 20px 0 0 0;
    margin-left: -9em; /**/
  }
  /* 仕切り帯  */
  div.col_listbox_wrap .pts_band {
    width: auto; /**/
    /*	width: -webkit-calc(100% - 5em);*/
    margin-left: 1em;
    margin-top: 0px;
    background-color: #DED4BE;
    text-indent: 1em;
  }
  /* 項目ラベル  */
  div.col_listbox_wrap .pts_label {
    float: left;
    width: 10em; /**/
    /*	height:auto; 高さライトサイドに合わせるときに有効にする */
    margin-left: 1em;
    margin-top: 0px;
    background-color: #DED4BE;
    text-indent: 1em;
  }
  /* 内容　*/
  div.col_listbox_wrap .pts_data {
    margin: 0 0 0 0;
    color: #333333;
    margin-left: 12em; /**/ /*	padding-left:1em;
	text-indent:-1em;*/
  }
  /* labelのオプション */
  div.col_listbox_wrap .op_l4c {
    width: 4em;
  }
  div.col_listbox_wrap .op_l6c {
    width: 6em;
  }
  div.col_listbox_wrap .op_l8c {
    width: 8em;
  }
  div.col_listbox_wrap .op_l10c {
    width: 10em;
  }
  div.col_listbox_wrap .op_l12c {
    width: 12em;
  }
  /* dataのオプション */
  div.col_listbox_wrap .op_d4c {
    margin-left: 6em;
  }
  div.col_listbox_wrap .op_d6c {
    margin-left: 8em;
  }
  div.col_listbox_wrap .op_d8c {
    margin-left: 10em;
  }
  div.col_listbox_wrap .op_d10c {
    margin-left: 12em;
  }
  div.col_listbox_wrap .op_d12c {
    margin-left: 14em;
  }
  /* wrapのオプション */
  div.col_listbox_wrap .op_w4c {
    margin-left: -4em;
  }
  div.col_listbox_wrap .op_w6c {
    margin-left: -6em;
  }
  div.col_listbox_wrap .op_w8c {
    margin-left: -8em;
  }
  div.col_listbox_wrap .op_w10c {
    margin-left: -10em;
  }
  div.col_listbox_wrap .op_w12c {
    margin-left: -12em;
  }
  @media (max-width : 768px) {
    div.col_listbox_wrap, div.col_listbox_wrap .pts_band, div.col_listbox_wrap .pts_label, div.col_listbox_wrap .pts_data {
      float: none;
      margin: 0px;
      width: auto;
    }
    div.col_listbox_wrap {
      margin-top: 20px;
    }
  }
  /*----------------------------------------------------
  .department_table
----------------------------------------------------*/
  section th, section td {
    padding: 10px;
  }
  .col_tablearea_normal {
    width: 100%;
    border-collapse: collapse;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .department_table {
    width: 100%;
    padding: 0;
    background-color: #f9f9f9;
    border-radius: 3px;
    border-spacing: 0;
  }
  .department_table th {
    width: 13%;
    padding: 5px;
  }
  .department_table td {
    text-align: center;
    padding: 5px 0;
  }
  .department_table td:first-child {
    text-align: center;
  }
  /* 曜日の部分 */
  .department_table th {
    width: 15%;
    color: white;
    background: #707070;
  }
  /* 色違いの部分 */
  .department_table th.th02 {
    background: #707070;
  }
  /* 初診・再診・対象の部分 */
  .department_table tr td.td_title {
    color: white;
    background: #707070;
  }
  /* 色違いの部分 */
  .department_table tr td.td_title02 {
    color: white;
    background: #8C8C8C;
  }
  .department_table tr td.name {
    background: #EDEDED;
  }
  .department_table ul {
    text-align: left;
    padding: 8px;
  }
  .department_table p {
    text-align: left;
    padding: 8px;
  }
  @media only screen and (max-width: 240px) {
    .department_table {
      width: auto;
      margin: 0;
    }
    .department_table thead {
      display: initial;
      float: left;
    }
    .department_table tbody {
      display: block;
      width: auto;
      overflow-x: scroll;
      white-space: nowrap;
      padding: 5px;
    }
    .department_table th {
      display: block;
      width: auto;
    }
    .department_table tbody tr {
      display: inline-block;
      margin: 0 -3px;
    }
    .department_table td {
      display: block;
      width: 100%;
      padding: 5px 10px;
      padding-left: -10px;
    }
  }
  @media (max-width: 1000px) {
    .department_table {
      font-size: 0.8em;
    }
  }
  /*----------------------------------------------------
  .department_table02
----------------------------------------------------*/
  table.department_table02 {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    background: #fff;
  }
  table.department_table02 th, table.department_table02 td {
    padding: 10px;
    text-align: center;
    border-right: 1px solid #B8B8B8;
  }
  table.department_table02 td:last-child {
    border-right: none;
  }
  table.department_table02 th {
    background: #fff;
  }
  table.department_table02 td.text {
    text-align: left;
    padding: 10px;
  }
  table.department_table02 tr:nth-child(odd) > th {
    background-color: #fff;
  }
  table.department_table02 tr:nth-child(odd) {
    background-color: #fff;
  }
  /* モバイル用 */
  @media screen and (max-width: 768px) {
    table.department_table02 {
      width: 100%;
      font-size: .9em;
    }
  }