@charset "UTF-8";


/* --------------------------------

見出し

-------------------------------- */


.portal_ttl h2 {
  font-size: 2.4em;
  font-weight: 700;
  color: #333;
  position: relative;
  text-align: center;
  /* 文字の中央寄せ */
  margin-top: 60px;
  margin-bottom: 30px;
}

.portal_ttl h2::before {
  background-color: #333;
  /* 線の色 */
  border-radius: 5px;
  /* 線の両端を丸く */
  bottom: -5px;
  /* 線の位置 */
  content: "";
  height: 3px;
  /* 線の高さ */
  left: 50%;
  /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%);
  /* 線の中央寄せ */
  width: 350px;
  /* 線の長さ */
}

.portal_ttl h3 {
  font-size: 180%;
  font-weight: 700;
  color: #333;
  text-align: center;
  margin-top: 60px;
  margin-bottom: 30px;
}


.portal_ttl_L h2 {
  font-size: 2.4em;
  font-weight: 700;
  color: #333;
  position: relative;
  text-align: center;
  /* 文字の中央寄せ */
  margin-top: 60px;
  margin-bottom: 30px;
}

.portal_ttl_L h2::before {
  background-color: #333;
  /* 線の色 */
  border-radius: 5px;
  /* 線の両端を丸く */
  bottom: -5px;
  /* 線の位置 */
  content: "";
  height: 3px;
  /* 線の高さ */
  left: 50%;
  /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%);
  /* 線の中央寄せ */
  width: 600px;
  /* 線の長さ */
}




.portal_ttl h3 {
  font-size: 180%;
  font-weight: 700;
  color: #333;
  text-align: center;
  margin-top: 60px;
  margin-bottom: 30px;
}



#users section p.kyozai_title,
.users section p.kyozai_title {
  color: #333;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
}



/* --------------------------------

PDFアイコン

-------------------------------- */

.text_img {
  vertical-align: middle;
  display: inline-block;
}








/* --------------------------------

portal NEWS

-------------------------------- */
#p_news_area {
  background-color: #bbdbf3;
  margin-top: 10px;
  position: relative;
  width: 100%;
}

#p_news_area a {
  color: #333;
  font-size: 1.4em;
}

#p_news_area a:hover {
  text-decoration: underline;
}

/*.p_news_area::before {
    position: absolute;
    left: 45%;
    bottom: -30px;
    display: block;
    height: 0;
    width: 0;
    border-style: solid;
    border-width: 40px 60px 0;
    border-color: #999999 transparent;
    content: ""
}*/
#p_news_main,
#p_main_about,
#p_main_feature,
#p_motion_area,
#p_sns_area {
  max-width: 1180px;
  overflow: hidden;
  /* margin: 10px auto 0; */
  padding: 1em 1em 1em 1em;
}

#p_news_main .h2 {
  font-weight: bold;
  font-size: 1.0em;
  color: #333;
  /* padding-left: 0; */
  margin-bottom: 10px;
  /* text-align:left; */
}

#p_news_main>dl {
  margin: 0 0 0 10px;
  color: #333;
  line-height: 1.3em;
}

#p_news_main>dl dt {
  font-size: 0.8em;
  display: block;
  clear: left;
  float: left;
}

#p_news_main>dl dd {
  font-size: 0.8em;
  margin: 0 0 5px 20px;
  display: block;
  float: left;
  text-align: left;
}

#p_news_main>dl dd a {
  font-size: 1em;
}

#p_news_main>dl dd span {
  background-color: #293e7f;
  color: #fff;
  padding: 0 2px;
}

/* --------------------------------












/*--------ニュース--------*/
#p_newsBox {
  border: 1px solid #afafaf;
  background-color: #fff;
  padding: 10px 20px;
  height: 110px;
  overflow-y: scroll;
  margin-top: 30px;
  font-size: 0.9em;
}

#p_newsList li {
  clear: both;
}

#p_newsList .ttl {
  float: left;
  width: 100px;
  line-height: 1.6;
}

#p_newsList .article,
#p_newsList .article a {
  width: 1110px;
  float: left;
  text-decoration: none;
  color: #333;
  line-height: 1.6;
  margin-bottom: 2px;
}

#p_newsList .article a:hover {
  text-decoration: underline;
  color: #333;
}





/*-----------------------

目次

------------------------*/
.portal_index {
  margin-bottom: 30px;
  padding: 2em 2em 2em 2em;
  border: 1px solid #999;
  background-color: #ffffff;
  color: #333333;
}

.portal_index div {
  align-items: center;
  margin: 0;
  padding: 5px 0;
}

.portal_index ul {
  margin: 0;
  padding: 0 1.8em;
  overflow: hidden;
}

.portal_index ul ul {
  margin-top: 5px;
}

.portal_index li {
  padding: 10px 0;
}

.portal_index a {
  color: #166c9d;
}

.portal_index p {
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
  color: #333;
}




/*-----------------------

開閉

------------------------*/
.cp_box *,
.cp_box *:before,
.cp_box *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.cp_box {
  position: relative;
}

.cp_box label {
  position: absolute;
  z-index: 2;
  bottom: 0;
  width: 100%;
  height: 100px;
  /* グラデーションの高さ */
  cursor: pointer;
  text-align: center;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 90%);
}

.cp_box input:checked+label {
  background: inherit;
  /* 開いた時にグラデーションを消す */
}

.cp_box label:after {
  line-height: 2.5rem;
  position: absolute;
  z-index: 1;
  bottom: 20px;
  left: 50%;
  width: 16rem;
  text-align: center;
  content: '続きを見る';
  transform: translate(-50%, 0);
  letter-spacing: 0.05em;
  color: #ffffff;
  border-radius: 20px;
  /* background-color: rgba(232, 145, 18, 1); */
  /* オレンジ */
  background-color: rgba(187, 219, 243, 1);
  /* みずいろ　*/
  /* background-color: rgba(41, 62, 127, 1); */
  /* 紺　*/
}

.cp_box input {
  display: none;
}

.cp_box .cp_container {
  overflow: hidden;
  height: 170px;
  /* 開く前に見えている部分の高さ */
  transition: all 0.5s;
}

/* .cp_box input:checked+label {
  display: none ; 閉じるボタンを消す場合解放
} */

.cp_box input:checked+label:after {
  font-family: FontAwesome;
  content: '閉じる';
}

.cp_box input:checked~.cp_container {
  height: auto;
  padding-bottom: 80px;
  /* 閉じるボタンのbottomからの位置 */
  transition: all 0.5s;
}


/* 横並び */
.wrap {
  border-collapse: separate;
  border-spacing: 20px 0;
}

.wrap div {
  display: table-cell;
}
