/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

@charset "utf-8";
/* --------------------------------------------------
	メインメニュー
-------------------------------------------------- */
#unit_mainmenu {
  clear: both;
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
  margin-top: 10px;
}
/*--// .addClass();で追加するcss //--*/
.unit_mainmenu_fixed {
  position: fixed;
}
.upts_mainmenu {
  width: 16.5%;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
/*--// 小画面端末用 //--*/
@media (max-width: 768px) {}
.upts_mainmenu a {
  display: block;
  height: 40px;
  text-decoration: none;
}
/*メインメニュー現在地表示、hover時共通*/
.upts_mainmenu {
  position: relative;
}
.upts_mainmenu.active::before, .upts_mainmenu:hover::before {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  z-index: -10;
}
/* =================================
           横並びのテーブル 
 ==================================*/
.unit_table_side {
  max-width: 1100px;
  width: 100%;
  margin: 30px auto 70px auto;
  font-size: 1em;
}
.unit_table_side table {
  width: 100%;
  border-collapse: collapse;
  border-width: 1px;
  border-top: #DCDCDC 1px solid;
}
.unit_table_side table tr:hover {
  background: #F4F4F4;
}
.unit_table_side table tr th, .unit_table_side table tr td {
  padding: .8em 0.5em;
  border-bottom: #DCDCDC 1px solid;
  background: none;
}
.unit_table_side table tr th {
  width: auto;
  font-weight: 600;
  vertical-align: middle;
  text-align: left;
}
@media screen and (max-width:960px) {
  .unit_table_side {
    width: 100%;
  }
  .unit_table_side table, .unit_table_side table tbody, .unit_table_side table tr, .unit_table_side table tr th, .unit_table_side table tr td {
    display: block;
  }
  .unit_table_side table tr {
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
  .unit_table_side table {
    width: 100%;
    border-width: 0 0 1px 0;
  }
  .unit_table_side table tr th, .unit_table_side table tr td {
    width: calc(100% - 42px);
    padding: 2px 20px;
  }
  .unit_table_side table tr td {
    border-width: 0px 1px 0px 1px;
  }
}
/*画像つきテキストエリア*/
.unit_side_imgarea {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}
/*テキストを左にする場合*/
.unit_side_imgarea.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
/*画像wrap*/
.unit_side_imgarea .img_wrap {
  width: calc(45% - 7.5px);
  margin: 10px 30px;
}
.unit_side_imgarea .img_wrap img {
  width: 100%;
}
/*本文wrap*/
.unit_side_imgarea .text_wrap {
  /* Take the remaining width */
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media (max-width:960px) {
  /*画像つきテキストエリア*/
  .unit_side_imgarea {
    display: block;
  }
  /*画像wrap*/
  .unit_side_imgarea .img_wrap {
    width: 100%;
    margin: 0 auto;
  }
}
/* --------------------------------------------------
	ギャラリーボックス
-------------------------------------------------- */
.unit_gallerybox {
  margin-bottom: 100px;
}
.unit_gallerybox::after {
  content: "";
  display: block;
  clear: both;
}
.upts_gallerybox_imagebox {
  float: left;
  margin: 0px;
  padding: 0px;
  width: 30%;
}
.upts_gallerybox_imagebox img {
  width: 100%;
  margin: 0 5px;
}
.upts_gallerybox_textwrapper {
  float: left;
  margin: 0px;
  padding: 0 0 0 3%;
  width: 65%;
}
.upts_gallerybox_titlebox {
  margin: 15px 0px 15px 0px;
  padding: 0px;
  font-size: 1.7em;
  line-height: 1.2em;
  font-weight: 500;
  color: #9b3751;
}
.upts_gallerybox_overviewbox {
  margin: 0px 0px 20px 0px;
  padding: 10px 0px 10px 10px;
  font-size: 1.0em;
  color: gray;
  border-top: 1px gray dashed;
  border-bottom: 1px gray dashed;
}
@media (max-width: 768px) {
  .unit_gallerybox {
    margin-bottom: 100px;
  }
  .upts_gallerybox_imagebox {
    float: none;
    margin: 0px;
    padding: 0px;
    width: 100%;
    max-height: 300px;
    overflow: hidden;
  }
  .upts_gallerybox_imagebox img {
    margin: 0px;
    padding: 0px;
    width: 100%;
  }
  .upts_gallerybox_textwrapper {
    float: none;
    margin: 0px;
    padding: 0 0 0 0;
    width: 100%;
  }
}
/* --------------------------------------------------
	写真説明ボックス（見出し付き）
-------------------------------------------------- */
.unit_descriptionbox {
  margin-bottom: 40px;
  padding: 10px;
  width: calc(100% - 30px);
  background-color: rgba(0, 0, 0, 0.00);
  background-position: right top;
  background-repeat: no-repeat;
  border: 5px red solid;
  -o-border-image: url(../image/common/img-border-gray.png) 10 10 round;
     border-image: url(../image/common/img-border-gray.png) 10 10 round;
}
.upts_descriptionbox_flex_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.upts_descriptionbox_subbox1 {
  margin: 0 auto;
  text-align: center;
  width: calc(35% - 22px);
}
.upts_descriptionbox_subbox1_large {
  margin: 10px;
  width: calc(65% - 22px);
}
.upts_descriptionbox_subbox2 {
  margin: 10px;
  width: calc(65% - 22px);
  position: relative;
}
.upts_descriptionbox_subbox2 img {
  width: calc(100% - 20px);
  margin-top: 10px;
}
.upts_descriptionbox_subbox2.l_nophoto {
  margin: 10px;
  width: 100%;
  position: relative;
}
@media (max-width: 768px) {
  .upts_descriptionbox_flex_container {
    display: block;
  }
  .upts_descriptionbox_subbox1 {
    float: none;
    width: calc(100% - 20px);
  }
  .upts_descriptionbox_subbox1_large {
    float: none;
    width: calc(100% - 20px);
  }
  .upts_descriptionbox_subbox2 {
    float: none;
    width: calc(100% - 20px);
    position: static;
  }
}
/* --------------------------------------------------
	写真説明ボックス（見出し付き）
-------------------------------------------------- */
.unit_galleryitem {
  float: left;
  margin-bottom: 40px;
  margin-right: 10px;
  padding: 10px;
  width: calc(50% - 40px);
  background-color: rgba(0, 0, 0, 0.00);
  background-position: right top;
  background-repeat: no-repeat;
  border: 5px red solid;
  -o-border-image: url(../image/common/img-border-pink.png) 10 10 round;
     border-image: url(../image/common/img-border-pink.png) 10 10 round;
}
.upts_galleryitem_subbox1 {
  margin: 10px;
  width: calc(100% - 22px);
}
.upts_galleryitem_subbox2 {
  margin: 10px;
  width: calc(100% - 22px);
}
@media (max-width: 768px) {
  .unit_galleryitem {
    float: none;
    margin-bottom: 40px;
    width: calc(100% - 40px);
  }
}
/* --------------------------------------------------
	フォトボックス
	　オプション指定方法：
	　　内包するimgタグのclassにop_2、op_3[デフォルト]を追加
	　　op_2：最大2列
	　　op_3：最大3列
	　　op_4：最大4列
-------------------------------------------------- */
.unit_photobox {
  width: 100%;
  text-align: center;
  margin: 30px 0;
}
.unit_photobox img.op_1f {
  width: 100%;
}
.unit_photobox img.op_1h {
  width: 60%;
}
.unit_photobox img.op_2 {
  width: 40%;
}
.unit_photobox img.op_3 {
  width: 30%;
}
.unit_photobox img.op_4 {
  width: 22%;
}
@media (max-width: 768px) {
  .unit_photobox img.op_2 {
    width: 45%;
  }
  .unit_photobox img.op_3 {
    width: 45%;
  }
  .unit_photobox img.op_4 {
    width: 45%;
  }
}
@media (max-width: 500px) {
  .unit_photobox img.op_2 {
    width: 90%;
  }
  .unit_photobox img.op_3 {
    width: 90%;
  }
  .unit_photobox img.op_4 {
    width: 90%;
  }
}
/* ボックス並べる・２分割 
  レポートグラフ用　*/
.unit_photobox_2flex {
  margin: 0 auto;
  width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.unit_photobox_2flex_box {
  margin-bottom: 1.3em;
  width: 49%;
  background-color: #fff;
  border: 1px solid #B3B3B3;
}
.unit_photobox_2flex_box img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .unit_photobox_2flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .unit_photobox_2flex_box {
    width: 100%;
  }
}
/* --------------------------------------------------
	説明ボックス（見出し付き）
-------------------------------------------------- */
.unit_introbox {
  padding: 10px 25px 40px 25px;
  border-bottom: 1px solid #D8D8D8;
  margin-bottom: 40px;
  border: 3px solid #E0E0E0;
  border-radius: 5px;
}
.upts_introbox_title {
  background-image: url('../image/common/icon-border.png');
  background-position: left center;
  padding: 10px 0 10px 13px;
  background-repeat: no-repeat;
  border-bottom: 1px #C0C0C0 solid;
  font-size: 1.4em;
  margin-bottom: 15px;
  color: #464646;
  font-weight: bold;
}
.upts_introbox_txt {
  margin-left: 23px;
}
.upts_introbox_txt img {
  max-width: 25%;
}
.upts_introbox_name {
  font-weight: bold;
  font-size: 1.3em;
}
.upts_introbox_company {
  font-weight: normal;
  font-size: 1.1em;
}
.upts_introbox_photo {
  width: 35%;
  margin: 2px 10px 5px 10px;
  float: left;
}
.upts_introbox_seminarimg {
  margin-top: 20px;
}
@media (max-width: 768px) {
  .unit_introbox {
    padding: 5px 10px 5px 10px;
  }
  .upts_introbox_txt {
    margin-left: 5px;
  }
  .upts_introbox_name {
    font-weight: bold;
    font-size: 1.1em;
  }
  .upts_introbox_company {
    font-weight: normal;
    font-size: 1em;
  }
  .upts_introbox_photo {
    width: 40%;
    margin: 2px 10px 5px 10px;
    float: left;
  }
  .upts_introbox_seminarimg {
    display: block;
    max-width: 225px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
}
/* =================================
      横並びのテーブル -セミナー用
 ==================================*/
.unit_table_side_noborder {
  max-width: 900px;
}
.unit_table_side_noborder table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 5px;
}
.unit_table_side_noborder table tr th {
  background: #E9E9E9;
  margin: 0 1em .5em 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  width: 100px;
  display: inline-block;
  font-size: .85em;
  padding: 0.5em;
}
.unit_table_side_noborder table tr td {
  width: 100%;
  border-bottom: 1px solid #C3C3C3;
  text-align: left;
  padding: 0 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.unit_table_side_noborder table tr.last th, .unit_table_side_noborder table tr.last td {
  border-bottom: none;
}
@media screen and (max-width:768px) {
  .unit_table_side_noborder {
    width: 100%;
  }
  .unit_table_side_noborder table, .unit_table_side_noborder table tbody, .unit_table_side_noborder table tr, .unit_table_side_noborder table tr th, .unit_table_side_noborder table tr td {
    display: block;
  }
  .unit_table_side_noborder table {
    width: 100%;
    border-width: 0 0 1px 0;
  }
  .unit_table_side_noborder table tr th, .unit_table_side_noborder table tr td {
    width: 90%;
    padding: 1%;
  }
  .unit_table_side_noborder table tr td {
    border-width: 0px 1px 0px 1px;
  }
}
/* --------------------------------------------------

/* --------------------------------------------------
	ステップボックス
-------------------------------------------------- */
.unit_stepbox {
  position: relative;
  background: #ffffff;
  border-bottom: 4px solid #FAE36E;
  padding: 20px 20px 26px 20px;
}
.unit_stepbox_end {
  position: relative;
  background: #ffffff;
  border-bottom: 4px solid #FAE36E;
  padding: 20px 20px 26px 10px;
}
.unit_stepbox:after, .unit_stepbox:before {
  width: 100%;
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.unit_stepbox:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #ffffff;
  border-width: 20px;
  margin-left: -20px;
}
.unit_stepbox:before {
  border-color: rgba(230, 230, 230, 0);
  border-top-color: #FAE36E;
  border-width: 26px;
  margin-left: -26px;
}
/*　ステップボックス レスポンシブ時　*/
@media (max-width: 768px) {
  .unit_stepbox {
    text-align: center;
  }
  .unit_stepbox_end {
    text-align: center;
  }
  .col_appealmessage {
    display: block;
    margin: 30px auto 10px auto;
    padding-left: 10px;
    text-align: left;
  }
  .unit_stepbox p {
    text-align: left;
  }
  .unit_stepbox_end p {
    text-align: left;
  }
}
/*　ステップボックス レスポンシブ時　ここまで　*/
/* ステップ中身 */
.upts_step_number {
  width: 40%;
  margin: 0 auto;
}
.upts_step_text {
  width: 80%;
  margin: 0 auto;
}
.upts_step_number h4 {
  text-align: center;
  line-height: 1.3;
  color: #2D287F;
}
.upts_step_number span.upts_step {
  font-size: 1.3em;
}
.upts_step_number span.upts_step02 {
  font-size: clamp(1.625rem, 1.284rem + 1.7vw, 2.563rem);
  font-weight: 500;
}
@media (max-width: 768px) {
  /* ステップ中身 */
  .upts_step_number {
    width: 100%;
  }
  .upts_step_text {
    width: 100%;
  }
  .upts_step_number h4 {
    text-align: center;
  }
}
/* --------------------------------------------------
	タンデムボックス（幅広の時はユニット内が上下組みで複数のユニットがフロートして横並び。スマホのときはユニット内が横組みで、ユニット間は縦に積む。）
-------------------------------------------------- */
/* 親divに display: flex; justify-content: center;　を入れておく */
.unit_twinbox_v2h {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 30%;
  height: 270px;
  float: left;
  margin: auto;
  border: 2px white solid;
  background-color: white;
  position: relative;
}
.upts_twinbox_cage1 {
  height: 100%;
  overflow: hidden;
  position: relative;
  /*	margin: 20px 20px 0 20px;*/
}
.upts_twinbox_cage1 img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-image: url(/image/common/img250x145.png);
}
.upts_twinbox_cage2 {
  height: 53px;
  overflow: hidden;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.upts_twinbox_cage2 img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.upts_twinbox_cage2 a {
  display: inline-block;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  width: 100%;
  padding: 0 15px;
  line-height: 53px; /*上層のcage2のサイズに合わせる*/
  text-align: left;
  font-size: 20px;
  color: white;
  background-color: rgba(35, 54, 109, 0.80);
}
.upts_twinbox_cage2 span.text {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.3em; /*aのline-heightをリセット*/
}
@media (max-width: 768px) {
  .unit_twinbox_v2h {
    float: none;
    width: 100%;
    max-width: 480px;
    height: auto;
    margin: 0 auto;
    -webkit-box-shadow: 1px 1px 4px #ccc;
            box-shadow: 1px 1px 4px #ccc;
    border: none;
  }
  .unit_twinbox_v2h:not(:first-of-type) {
    margin-top: 10px;
  }
  .upts_twinbox_cage1 {
    float: left;
    height: 90px;
    width: 50%;
    margin: 0;
  }
  .upts_twinbox_cage2 {
    float: left;
    height: 90px;
    width: 50%;
    position: relative;
  }
  .upts_twinbox_cage2 a {
    font-size: 1em;
    line-height: 90px; /*上層のcage2のサイズに合わせる*/
    background: white;
    color: rgb(45, 71, 143);
  }
  .upts_twinbox_cage2 span.text {
    width: 100%;
    text-align: left;
    font-weight: normal;
  }
}
@media (max-width: 600px) {
  .unit_twinbox_v2h {
    width: 100%;
  }
}
/* アコーディオンリストボタン */
a.js_accordion_btn /*,
a.js_accordion_btn:link,a.js_accordion_btn:visited*/ {
  display: inline-block;
  width: 3em;
  margin: 0 3px;
  margin-bottom: 5px;
  /*padding:5px 0;*/
  text-align: center;
  -webkit-box-shadow: 0px 2px 0px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0px 2px 0px 0 rgba(0, 0, 0, 0.5);
  font-size: 0.9em;
  line-height: 1em;
  vertical-align: middle;
  padding: 7px 5px 5px 20px;
  background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-pink.png);
  text-decoration: none;
  border-radius: 1.5em;
  border: 2px white solid;
}
.js_accordion_btn.active {
  color: white;
  -webkit-box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.4) inset;
          box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.4) inset;
  background: url('/image/common/icon-arrow-link-details-active.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-dkbrown.png);
}
a.js_accordion_btn:hover {
  color: #614B30; /* 基本テキスト色:濃茶 */ ;
  background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-stgpink.png);
  text-decoration: none;
  cursor: pointer;
}
.js_accordion_btn.active:hover {
  color: white;
  -webkit-box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.4) inset;
          box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.4) inset;
  background: url('/image/common/icon-arrow-link-details-active.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-dkbrown.png);
  cursor: pointer;
}
@media (max-width: 768px) { /* スマホ用  */
  /* ボタン */
  a.js_accordion_btn {
    width: 40%;
    font-size: 1em;
  }
  a.js_accordion_btn:hover, a.js_accordion_btn:active {
    color: #614B30; /* 基本テキスト色:濃茶 */ ;
    background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-pink.png);
    text-decoration: none;
  }
}
/* アコーディオンリストボタン(緑) クラス名にjs_accordion_btn_greenを追加 */
a.js_accordion_btn_green /*,
a.js_accordion_btn_green:link,a.js_accordion_btn_green:visited*/ {
  background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-lightgreen.png);
}
.js_accordion_btn_green.active {
  background: url('/image/common/icon-arrow-link-details-active.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-dkbrown.png);
}
a.js_accordion_btn_green:hover {
  background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-green.png);
}
.js_accordion_btn_green.active:hover {
  background: url('/image/common/icon-arrow-link-details-active.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-dkbrown.png);
}
@media (max-width: 768px) { /* スマホ用  */
  /* ボタン */
  a.js_accordion_btn_green:hover, a.js_accordion_btn_green:active {
    background: url('/image/common/icon-arrow-link-details.png') no-repeat 10px center, url(/image/common/bgsheet-stripe-lightgreen.png);
  }
}
/* ------------------------------
   展開テーブル
-----------------------------*/
/* マーク */
.infomark_label {
  display: inline-block;
  margin-left: 5px;
  margin-bottom: 3px;
  padding: 3px 6px;
  border: none;
  border-radius: 50px;
  font-size: xx-small;
  line-height: 1.5em;
  vertical-align: middle;
  text-align: center;
  color: #2D287F;
  background: #FDD000;
}
.infomark_label.closed {
  border-color: red;
  color: red;
}
.infomark_label.attention {
  background-color: darkorange;
  border-color: white;
  color: white;
}
.infomark_label.eventtype.forum {
  border-color: green;
  color: green;
}
.infomark_label.eventtype.seminar {
  border-color: dodgerblue;
  color: dodgerblue;
}
.uptsactivitieslist .infomark_label, .uptslist_activitieslist .infomark_label {
  width: 42%;
}
.uptsactivitieslist .infomark_label.closed, .uptslist_activitieslist .infomark_label.closed {
  width: 100%;
  float: left;
}
.uptsactivitieslist .infomark_label.eventtype, .uptslist_activitieslist .infomark_label.eventtype {
  float: right;
}
/*  会議リスト、イベントリスト  */
@media screen and (min-width: 769px) {
  .uptsactivitieslist td.infomark {
    max-width: 140px;
    padding: 7px 15px 0 7px;
  }
  .uptsactivitieslist.eventlist td.infomark {
    width: 120px;
  }
  .uptsactivitieslist td.infomark .infomark_label.eventtype {
    margin-right: -8px;
  }
  .uptsactivitieslist tbody td, .uptsactivitieslist thead th {
    border-left: none;
  }
  table.uptsactivitieslist {
    border-collapse: collapse; /*hrのborderに必要（border-radius効かない）*/
    border-spacing: 0;
  }
  .uptsactivitieslist tbody tr, .uptsactivitieslist tbody tr {
    border-bottom: 1px #ddd solid;
  }
  .uptsactivitieslist tr:nth-child(even) {
    background-color: transparent;
  }
}
.uptsactivitieslist tbody tr.js_accordion_item_contents {
  background-color: #eaeaea;
}
.uptsactivitieslist tbody tr.js_accordion_item_contents div {
  background-color: white;
}
/* モバイル用 */
@media screen and (max-width: 768px) {
  .uptsactivitieslist td.infomark {
    overflow: hidden;
    margin: 0 -15px;
    padding-top: 5px;
    padding-right: 15px;
    padding-left: 15px;
    margin-top: -1px;
    margin-bottom: -2px;
    background-color: #BBD347; /*若草色*/ ;
  }
  .uptsactivitieslist td.infomark:empty {
    display: none;
  }
  .uptsactivitieslist.eventlist td.infomark {
    margin-bottom: 9px;
  }
  .uptsactivitieslist .infomark_label {
    font-size: 0.8em;
  }
  .infomark_label {
    max-width: 8em;
  }
  /* テーブルタイトル */
  .uptsactivitieslist tbody td.title:before {
    content: none;
  }
  .uptsactivitieslist tbody td.date:before {
    content: "開催日:";
  }
  .uptsactivitieslist tbody td.time:before {
    content: "時間:";
  }
  .uptsactivitieslist tbody td.place:before {
    content: "会場:";
  }
  .uptsactivitieslist tbody td.contents:before {
    content: none;
  }
  .uptsactivitieslist tbody td.event:before {
    content: "イベント:";
  }
}
/*  その他の活動（リスト）  */
.uptslist_activitieslist {
  width: 100%;
  margin: 0 auto 10px;
  padding: 0;
  background-color: #f9f9f9;
  border-radius: 3px;
  border: 1px #ddd solid;
}
.uptslist_activitieslist dt {
  float: left;
  width: 120px;
  padding: 7px;
  margin-right: -14px;
}
.uptslist_activitieslist dd {
  margin-left: 134px;
  padding: 7px;
}
.uptslist_activitieslist dt + dd {
  padding-bottom: 0;
}
.uptslist_activitieslist dd + dd {
  padding-top: 0;
}
.uptslist_activitieslist dt:not(:first-of-type), .uptslist_activitieslist dt + dd:not(:first-of-type) {
  border-top: 1px #ddd solid;
}
.uptslist_activitieslist dd.date {
  font-size: 0.8em;
}
.uptslist_activitieslist dd.contents {}
/* モバイル用 */
@media screen and (max-width: 768px) {
  .uptslist_activitieslist {
    border-radius: none;
    border: 0;
    background-color: inherit;
  }
  .uptslist_activitieslist dt {
    overflow: hidden;
    float: none;
    width: auto;
    margin: 0;
    padding-right: 15px;
    padding-left: 15px;
    /*margin-bottom: 9px;*/
    background-color: #BBD347; /*若草色*/ ;
    color: #fff;
    border-radius: 3px;
    border: 1px #ddd solid;
  }
  .uptslist_activitieslist dd {
    margin-left: 0;
    padding: 0 15px;
    background-color: #f9f9f9;
  }
  .uptslist_activitieslist dt + dd {
    padding-top: 9px;
  }
  .uptslist_activitieslist dd {
    padding-bottom: 9px;
  }
  .uptslist_activitieslist dd:last-child {
    margin-bottom: 15px;
  }
  .uptslist_activitieslist dd + dt {
    margin-top: 15px;
  }
  /*外枠の設定*/
  .uptslist_activitieslist dt {
    border-radius: 3px 3px 0 0;
    border: 1px #ddd solid;
    border-bottom: 0;
  }
  .uptslist_activitieslist dd {
    border-radius: 0 0 3px 3px;
    border: 1px #ddd solid;
  }
  .p_list_activitieslist dd:not(.contents) {
    border-radius: none;
    border-top: none;
    border-bottom: none;
  }
  .p_list_activitieslist dd.contents {
    border-top: none;
  }
  .p_list_activitieslist .infomark {
    text-align: center;
  }
  .p_list_activitieslist .infomark_label.eventtype {
    /*font-size:0.8em;*/
    display: inline;
    float: none;
    padding: 0;
    margin: 0;
    border: none;
    background-color: inherit;
    color: #614B30; /* 基本テキスト色:濃茶 */ ;
    font-size: 1em;
    line-height: 2.3em;
  }
}
/*　Youtube　*/
a.link_youtube {
  text-decoration: none;
}
a.link_youtube::after {
  content: url(https://icongr.am/entypo/youtube.svg?size=25&color=ff0000);
  margin-left: 5px;
  display: inline-block;
  width: 25px;
  vertical-align: -40%;
}
.unit_table_department {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ddd;
}
.unit_table_department th {
  width: 13%;
  padding: 5px;
}
.unit_table_department tbody td {
  border-left: 1px #2D287F solid;
}
.unit_table_department td {
  text-align: center;
  padding: 5px 0;
}
.unit_table_department td:first-child {
  text-align: center;
}
/* 曜日の部分 */
.unit_table_department th {
  width: 15%;
  color: white;
  background: #2D287F;
  border: 1px solid #2D287F;
}
/* 色違いの部分 */
.unit_table_department th.th02 {
  background: #2D287F;
}
/* 初診・再診・対象の部分 */
.unit_table_department tr td.td_title {
  color: white;
  background: #2D287F;
}
/* 色違いの部分 */
.unit_table_department tr td.td_title02 {
  color: white;
  background: #3E3988;
}
.unit_table_department tr td.name {
  background: #EDEDED;
}
@media only screen and (max-width: 240px) {
  .unit_table_department {
    width: auto;
    margin: 0;
  }
  .unit_table_department thead {
    display: initial;
    float: left;
  }
  .unit_table_department tbody {
    display: block;
    width: auto;
    overflow-x: scroll;
    white-space: nowrap;
    padding: 5px;
  }
  .unit_table_department th {
    display: block;
    width: auto;
  }
  .unit_table_department tbody tr {
    display: inline-block;
    margin: 0 -3px;
  }
  .unit_table_department td {
    display: block;
    width: 100%;
    padding: 5px 10px;
    padding-left: -10px;
  }
}
@media (max-width:960px) {
  .unit_table_department {
    font-size: 0.8em;
  }
}
/*----線だけのテーブル*/
table.unit_table_line {
  border: 1px solid #bbb;
  border-collapse: collapse;
  margin: 2em auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  color: #000;
}
table.unit_table_line tr {
  background-color: #fff;
  padding: .35em;
  border-bottom: 1px solid #bbb;
}
table.unit_table_line thead {
  border-bottom: 5px solid #2D287F;
}
table.unit_table_line tr:last-child {
  border-bottom: none
}
table.unit_table_line th, table.unit_table_line td {
  padding: 1em 10px 1em 1em;
  border-right: 1px solid #bbb;
}
table.unit_table_line th:last-child, table.unit_table_line td:last-child {
  border: none;
}
table.unit_table_line tbody th {
  color: #2D287F;
}
table.unit_table_line .txt {
  text-align: left;
  font-size: .85em;
}
table.unit_table_line .price {
  text-align: right;
}
@media screen and (max-width: 960px) {
  table.unit_table_line {
    border: 0;
    width: 100%;
  }
  table.unit_table_line th {
    display: block;
    border-right: none;
    border-bottom: 5px solid #ff9901;
    padding-bottom: .6em;
    margin-bottom: .6em;
  }
  table.unit_table_line thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table.unit_table_line tr {
    display: block;
    margin-bottom: 2em;
  }
  table.unit_table_line td {
    border-bottom: 1px solid #bbb;
    display: block;
    font-size: .95em;
    text-align: left;
    position: relative;
    padding: 1em 0;
    border-right: none;
  }
  table.unit_table_line td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  table.unit_table_line td:last-child {
    border-bottom: 0;
  }
}
/*----------------------------------------------------
  .unit_table_gray
----------------------------------------------------*/
table.unit_table_gray {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #ddd;
  background: #fff;
}
table.unit_table_gray th, table.unit_table_gray td {
  padding: 10px;
  text-align: center;
  border: 1px solid #ddd;
}
table.unit_table_gray th {
  background: #F8F8F8;
}
table.unit_table_gray td.text {
  text-align: left;
  padding: 10px;
}
table.unit_table_gray tr:nth-child(odd) > th {
  background-color: #F3F3F3;
}
table.unit_table_gray tr:nth-child(odd) {
  background-color: #F8F8F8;
}
/* モバイル用 */
@media (max-width:960px) {
  table.unit_table_gray {
    width: 100%;
  }
}
/* １列テーブル */
.unit_table_1column *, .unit_table_1column *:before, .unit_table_1column *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.unit_table_1column {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
}
.unit_table_1column th {
  width: 13%;
  background: #f4f4f4;
  padding: 10px;
  text-align: left;
  border: 1px solid #dddddd;
  font-size: 1.1em;
  color: #1F1F1F;
}
.unit_table_1column td {
  text-align: left;
  vertical-align: top;
  padding: 10px;
  border: 1px solid #dddddd;
}
.unit_table_1column td:first-child {
  text-align: left;
  vertical-align: middle;
}
@media screen and (max-width:768px) {
  .unit_table_1column {
    width: 95%;
    margin: 0 auto;
  }
}
/*================================
		th縦横ありのテーブル
================================*/
.unit_table_2th *, .unit_table_2th *:before, .unit_table_2th *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.unit_table_2th {
  width: 100%;
  border-collapse: collapse;
  border-right: 1px solid #E1E1E1;
}
.unit_table_2th thead th {
  padding: 10px 15px;
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  background: #E1E1E1;
}
.unit_table_2th thead th:last-child {
  border-right: 1px solid #E1E1E1;
}
.unit_table_2th tbody th {
  padding: 10px 15px;
  vertical-align: top;
  border-bottom: 1px solid #ffffff;
  background: #E1E1E1;
  white-space: nowrap;
}
.unit_table_2th tbody tr:last-child th {
  border-bottom: 1px solid #E1E1E1;
}
.unit_table_2th tbody td {
  padding: 10px 15px;
  vertical-align: top;
  border-bottom: 1px solid #E1E1E1;
  border-left: 1px solid #E1E1E1;
  background: #ffffff;
}
@media only screen and (max-width:480px) {
  .unit_table_2th thead {
    display: none;
  }
  .unit_table_2th tbody th {
    display: block;
  }
  .unit_table_2th tbody td {
    display: block;
    padding: 10px 5px;
  }
  .unit_table_2th tbody td::before {
    font-weight: 500;
    float: left; /*上のth要素が長い場合こちらを解除すると1段落下り見やすくなります*/
    padding: 0.5em 0;
    content: attr(label);
  }
  .unit_table_2th tbody td p {
    padding: 0.5em 0 0 1em;
    margin: 0;
  }
}
/* ========================
		続きを読むbox
===========================*/
/*全体*/
.unit_more_box {
  margin: 2em 0 0; /*前後の余白*/
  padding: 0;
}
.unit_more_box .col_internal_chuumidashi {
  font-size: clamp(1.188rem, 1.028rem + 0.8vw, 1.625rem);
}
/*ボタン装飾*/
.unit_more_box label {
  padding: 10px 0;
  font-weight: 500;
  cursor: pointer;
  width: 100%;
  display: inline-block;
  text-align: center;
  background: #F1AC00;
  color: #fff;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}
/*ボタンホバー時*/
.unit_more_box label:hover {
  background: #efefef;
}
/*チェックは見えなくする*/
.unit_more_box input {
  display: none;
}
/*中身を非表示にしておく*/
.unit_more_box .more_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: 0.8s;
  -o-transition: 0.8s;
  transition: 0.8s;
}
/*クリックで中身表示*/
.unit_more_box input:checked ~ .more_show {
  padding: 10px 0;
  height: auto;
  opacity: 1;
}
/* =================================
          枠付きテーブル 
 ==================================*/
.unit_table_box {
  margin: 50px auto;
  border: 4px #E6E6E6 solid;
  padding: 2em;
}
.unit_table_box table {
  width: 100%;
  border-collapse: collapse;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.unit_table_box table tr {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1em;
  text-align: left;
  vertical-align: top;
  border-bottom: #BFBFBF 1px dotted;
  border-spacing: 0;

}
.unit_table_box table tr th {
  width: 100px;
  font-weight: bold;
}
.unit_table_box table tr td {
  padding-left: 50px;
  text-align: justify;
}
.unit_table_box table table tr {
  border-bottom: none;
}
.unit_table_box table table tr th {
  width: 90px !important;
}
.unit_table_box table table tr td {
  padding-left: 0 !important;
}
@media screen and (max-width:768px) {
  .unit_table_box {
    width: auto;
  }
  .unit_table_box table, .unit_table_box table tbody, .unit_table_box table tr, .unit_table_box table tr th, .unit_table_box table tr td {
    display: block;
  }
  .unit_table_box table tr {
    padding-bottom: 10px;
    padding-left: 1em;
  }
  .unit_table_box table {
    width: 100%;
    border-width: 0 0 1px 0;
  }
  .unit_table_box table tr th, .unit_table_box table tr td {
    width: 100%;
    padding: 2px 0;
    border-bottom: none;
  }
  .unit_table_box table tr td {
    border-width: 0px 1px 0px 1px;
  }
}
/* --------------------------------------------------
	タブ切り替え　
-------------------------------------------------- */
/*tabの形状*/
.unit_tab {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  grid-gap: 10px;
}
.unit_tab li {
  width: 100%;
  text-align: center;
}
.unit_tab li a {
  padding: 10px 0;
  font-size: 1.3em;
  width: 100%;
  height: 100%;
  display: block;
  background: #E6EEF3;
  text-decoration: none;
  border-radius: 5px;
}
/*liにactiveクラスがついた時の形状*/
.unit_tab li.active a {
  background: #C4E7E6;
}
/*エリアの表示非表示と形状*/
.area {
  display: none; /*はじめは非表示*/
  opacity: 0; /*透過0*/
  background: #fff;
  padding: 50px 20px;
}
/*areaにis-activeというクラスがついた時の形状*/
.area.is-active {
  display: block; /*表示*/
  -webkit-animation-name: displayAnime;
          animation-name: displayAnime; /*ふわっと表示させるためのアニメーション*/
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
@-webkit-keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes displayAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* ---------------------------------
画像flex
---------------------------------- */
.upts_photobox_wrapper {
  display: flex !important;
  display: -webkit-box;
  display: -ms-flexbox;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-top: 30px;
}
.upts_photobox_wrapper div {
  margin: 0 5px;
  width: calc(25% - 10px);
}
.upts_photobox_wrapper img {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .upts_photobox_wrapper div {
    margin: 0 5px;
    width: calc(50% - 10px);
  }
}