@charset "utf-8";
html,
body {
  height: 100%;
}
html {
  font-size: 3.86vw;
}
@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}
body {
  color: #5a5657;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
picture img {
  margin: 0 auto;
}
a {
  color: inherit;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.lato {
  font-family: 'Lato', sans-serif;
}
.inner {
  width: 100%;
  padding: 0 4.83vw;
}
.pc {
  display: none;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.center {
  text-align: center;
}
.txt {
  line-height: 1.94;
}
.icon_tel,
.icon_line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.icon_tel::before,
.icon_line::after {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.icon_tel::before {
  margin-right: 5px;
  background-image: url("../img/icon_tel.svg");
}
.icon_line {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.icon_line::after {
  width: 3.188rem;
  height: 3.188rem;
  margin-left: 1.188rem;
  background-image: url("../img/icon_line.svg");
}
.red {
  color: #ea5505;
}
.blue {
  color: #004ea1;
}
@media (min-width: 768px) {
  .inner {
    max-width: 1044px;
    margin: 0 auto;
    padding: 0 10px;
  }
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
  .flex_pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .center_pc {
    text-align: center;
  }
}
/* header */
.site_header {
  color: #707070;
}
.site_header .pc_area {
  display: none;
}
@media (min-width: 1024px) {
  .site_header .sp_area {
    display: none;
  }
  .site_header .pc_area {
    display: block;
  }
  .site_header .flex_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
.h_desc_sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 14.98vw;
  max-height: 90px;
  padding-left: 2.9vw;
  font-size: 0.875rem;
  line-height: 1.43;
}
.h_btn_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 900;
}
.h_btn {
  width: 14.98vw;
  max-width: 90px;
  height: 14.98vw;
  max-height: 90px;
  background-color: #004ea1;
}
.h_btn:not(:last-child) {
  margin-right: 1px;
}
.h_btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.h_btn.h_line {
  background-color: #00b900;
}
.h_btn.h_line img {
  width: 68.1%;
}
.h_btn.h_tel img {
  width: 41.1%;
}
.h_btn.h_menu {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 990;
}
.h_btn.h_menu button {
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}
.h_btn.h_menu img {
  width: 100%;
}
.h_inner {
  padding: 0 4.83vw 1.063rem;
}
@media (min-width: 1024px) {
  .h_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1044px;
    margin: 0 auto;
    padding: 15px 10px 17px;
  }
  .h_pc_left {
    width: 474px;
  }
  .h_pc_right {
    width: 502px;
  }
}
.site_title {
  width: 76.09vw;
  margin: 0 auto;
  padding: 1rem 0;
}
@media (min-width: 768px) {
  .site_title {
    max-width: 474px;
  }
}
@media (min-width: 1024px) {
  .site_title {
    width: 100%;
    padding: 0;
  }
}
.h_feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 0.75rem;
}
.h_feature li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 9.6em;
  height: 1.92em;
  padding: 0 10px;
  color: #fff;
  line-height: 1;
  text-align: center;
  background-color: #004ea1;
  border-radius: 2.313rem;
}
@media (min-width: 768px) {
  .h_feature {
    max-width: 474px;
    margin: 0 auto;
    font-size: 1rem;
  }
  .h_feature li {
    min-width: 8.4em;
    height: 1.63em;
    border-radius: 37px;
  }
}
@media (min-width: 1024px) {
  .h_feature {
    margin-top: 0.938rem;
  }
  .h_feature li {
    min-width: 8.4em;
    height: 1.63em;
    border-radius: 37px;
  }
}
.h_time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.29;
}
.h_time dt {
  margin-right: 0.75rem;
  color: #004ea1;
  font-weight: bold;
}
@media (min-width: 768px) {
  .h_time {
    font-size: 1rem;
  }
}
@media (min-width: 1024px) {
  .h_time {
    display: block;
    margin-top: 0;
    line-height: 1.5;
  }
  .h_time dt {
    margin-right: 0;
  }
  .h_tel_pc {
    margin-bottom: 5px;
    color: #004ea1;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1;
  }
  .h_tel_pc::before {
    width: 1.75rem;
    height: 2.25rem;
  }
  .btn.h_line_pc {
    width: 17.188rem;
    height: 2.438rem;
    margin-left: auto;
    border-radius: 2.313rem;
  }
  .btn.h_line_pc a {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 1.25rem 0 1.563rem;
  }
  .btn.h_line_pc a::after {
    content: '';
    display: block;
    width: 1.813rem;
    height: 1.813rem;
    background-image: url("../img/icon_line.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
  .h_address {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid #e1e1e1;
  }
  .h_address span {
    display: inline-block;
  }
}
/* nav */
.gnav {
  display: none;
  height: 0;
}
.sp_nav {
  width: 87%;
  max-width: 600px;
  background-color: #004ea1;
  color: #fff;
}
.sp_menu {
  padding-bottom: 100px;
}
.sp_menu li {
  border-bottom: 1px solid #fff;
}
.sp_menu a {
  display: block;
  width: 100%;
  padding: 1em 2.5rem;
  font-weight: bold;
  text-decoration: none;
}
.sp_menu .sub_item {
  background-color: #004187;
}
.sp_menu .sub_item a {
  padding-left: 3.75rem;
}
.sp_menu_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1.375rem;
}
.sp_menu_logo {
  width: 69%;
}
.btn_close {
  width: 9.66vw;
  height: 9.66vw;
  max-width: 80px;
  max-height: 80px;
  padding: 0;
  background-color: transparent;
  border: 0;
}
.btn_close img {
  width: 100%;
}
@media (min-width: 1024px) {
  .gnav {
    display: block;
    width: 100%;
    height: auto;
    color: #707070;
    text-align: center;
    background-color: #fff;
    border-top: 6px solid #e1e1e1;
    -webkit-box-shadow: 0 0 3px rgba(0,0,0,0.1);
    box-shadow: 0 0 3px rgba(0,0,0,0.1);
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 990;
  }
  .gnav ul {
    width: 100%;
  }
  .gnav ul li {
    width: 100%;
  }
  .gnav a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
  }
  .gnav_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1024px;
    margin: 0 auto;
  }
  .gnav_menu > li {
    height: 3.938rem;
    position: relative;
  }
  .gnav_menu > li::before {
    content: '';
    display: block;
    width: 100%;
    height: 6px;
    position: absolute;
    bottom: 100%;
  }
  .gnav_menu > li:not(:last-child) {
    margin-right: 1px;
  }
  .gnav_menu > li:hover::before {
    background-color: #004ea1;
  }
  .gnav_menu .current::before {
    background-color: #004ea1;
  }
  .gnav_menu .current::after {
    content: '';
    display: block;
    white-space: 12px;
    height: 10px;
    background-image: url("../img/icon_gnav.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  .gnav_menu .sub-menu {
    display: none;
    background-color: #fff;
  }
  .gnav_menu .sub-menu li {
    color: #fff;
    background-color: #004ea1;
  }
  .gnav_menu .sub-menu li:not(:last-child) {
    margin-bottom: 1px;
  }
  .gnav_menu .sub-menu a {
    min-height: 3.188rem;
    padding: 10px;
  }
  .gnav_menu .sub-menu a:hover {
    background-color: #47a0ff;
  }
  .gnav_menu > li:hover .sub-menu {
    display: block;
  }
}
/* main */
main p a {
  color: #47a0ff;
}
main p a:hover {
  color: #004ea1;
}
/* footer */
.bnr_contact {
  width: 90.34vw;
  margin: 0 auto;
  padding: 1.563rem 1.25rem;
  text-align: center;
  background-color: #fff;
  border: 5px solid #004ea1;
  border-radius: 22px;
  position: relative;
  z-index: 1;
}
.bnr_contact_tel {
  margin-bottom: 0.875rem;
  color: #004ea1;
  font-size: 2.25rem;
  font-weight: bold;
  line-height: 1;
}
.bnr_contact_tel a {
  text-decoration: none;
}
.bnr_contact_tel .icon_tel {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.bnr_contact_tel .icon_tel::before {
  width: 1.903rem;
  height: 2.5rem;
}
.bnr_contact_time {
  margin-bottom: 0.875rem;
  color: #ea5505;
}
.bnr_contact_time dt {
  font-weight: bold;
}
.bnr_contact_line,
.bnr_contact_txt {
  color: #707070;
}
.bnr_contact_line {
  margin-bottom: 1.25rem;
}
.bnr_contact_line a {
  text-decoration: underline;
}
.bnr_contact_line a:hover {
  color: #5a5657;
}
@media (min-width: 768px) {
  .bnr_contact {
    width: 654px;
    padding: 30px;
    font-size: 1.25rem;
  }
  .bnr_contact_tel {
    margin-bottom: 5px;
    font-size: 2.813rem;
  }
  .bnr_contact_tel .icon_tel::before {
    width: 2.313rem;
    height: 3rem;
  }
  .bnr_contact_time,
  .bnr_contact_line {
    margin-bottom: 1.375rem;
  }
  .bnr_contact_line .icon_line {
    display: block;
  }
  .bnr_contact_line .icon_line::after {
    content: none;
  }
  .bnr_contact_qr {
    width: 156px;
    margin: 0 auto 0.813rem;
  }
}
.site_footer {
  margin-top: -13.187rem;
  color: #fff;
  background-color: #004ea1;
}
.f_inner {
  padding-top: 14.75rem;
}
.btn_pagetop {
  margin-bottom: 3.75rem;
}
.btn_pagetop button {
  display: block;
  margin: 0 auto;
  padding: 0;
  background-color: transparent;
  border: 0;
  border-radius: 50%;
  overflow: hidden;
  cursor: pointer;
}
@media (min-width: 1024px) {
  .site_footer {
    margin-top: -18.5rem;
  }
  .f_inner {
    max-width: 1290px;
    margin: 0 auto;
    padding-top: 22.063rem;
    position: relative;
  }
  .btn_pagetop {
    margin: 0;
    position: absolute;
    top: 0;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
  }
}
.f_info {
  padding-bottom: 25.85vw;
  text-align: center;
}
.f_logo {
  width: 242px;
  width: 58.45vw;
  margin: 0 auto 2.063rem;
}
.f_address {
  margin-bottom: 1.438rem;
}
.f_feature {
  margin-bottom: 1em;
}
.f_time {
  margin-bottom: 3.75rem;
}
.f_copy {
  font-size: 0.875rem;
}
@media (min-width: 768px) {
  .f_info {
    padding-top: 57px;
    padding-bottom: 23px;
    font-size: 1.125rem;
  }
  .f_logo {
    width: 294px;
  }
  .f_address {
    margin-bottom: 27px;
  }
  .f_time {
    margin-bottom: 56px;
  }
}
/* ボタン */
.btn {
  width: 100%;
  min-height: 3.375rem;
  border-radius: 4.625rem;
  color: #fff;
  background-color: #004ea1;
  overflow: hidden;
}
.btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1rem 1.25rem;
  text-decoration: none;
}
.btn a:hover {
  background-color: #47a0ff;
}
.btn.icon_video a {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1rem 1.299rem 1rem 2.125rem;
}
.btn.icon_video a::after {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  content: '';
  display: block;
  width: 1.951rem;
  height: 1.486rem;
  margin-left: 0.5em;
  background-image: url("../img/icon_video.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.btn_more a {
  padding: 1rem 2.563rem 1rem 1.813rem;
  position: relative;
}
.btn_more a::after {
  content: '';
  display: block;
  width: 0.688rem;
  height: 0.688rem;
  border-color: #fff;
  border-style: solid;
  border-width: 2px 2px 0 0;
  position: absolute;
  top: 50%;
  right: 1.583rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
.btn_wrap .btn {
  margin-bottom: 1rem;
}
.btn_wrap .btn:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .btn {
    max-width: 370px;
  }
  .btn_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 792px;
    margin-left: auto;
    margin-right: auto;
  }
  .btn_wrap .btn:nth-last-child(-n+2) {
    margin-bottom: 0;
  }
}
/* 見出し */
.sec_ttl {
  margin-bottom: 2.5rem;
  color: #5a5657;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.29;
  text-align: center;
}
.sec_ttl::after {
  content: '';
  display: block;
  width: 6.5rem;
  height: 3px;
  margin: 9px auto 0;
  background: -webkit-gradient(linear, left top, right top, from(#004ea1), color-stop(88%, #004ea1), color-stop(88%, #ea5505), to(#ea5505));
  background: linear-gradient(90deg, #004ea1 0%, #004ea1 88%, #ea5505 88%, #ea5505 100%);
}
.ttl_line {
  margin-bottom: 1.25rem;
  color: #004ea1;
  font-size: 1.25rem;
  font-weight: bold;
}
.ttl_line::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  margin: 0.563rem auto;
  background: -webkit-gradient(linear, left top, right top, from(#ea5505), color-stop(2.563rem, #ea5505), color-stop(2.563rem, #004ea1), to(#004ea1));
  background: linear-gradient(90deg, #ea5505 0%, #ea5505 2.563rem, #004ea1 2.563rem, #004ea1 100%);
}
@media (min-width: 768px) {
  .sec_ttl {
    font-size: 2rem;
  }
  .sec_ttl::after {
    margin-top: 12px;
  }
}
.test {
  font-size: 2.125rem;
}
.element {
  display: inline-block;
}
@media (min-width: 1024px) {
  .element {
    display: block;
  }
}
@media (min-width: 1400px) {
  .element {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}


/* 画面端バナー */
#edgeBtn {
    position: fixed;
    top: 200px;
    right: 0;
    /*top: 50%;*/
    /*transform: translate(0,-50%);*/
    z-index: 1000;
    width: 77px;
}
#edgeBtn.ie {
    right: 20px;
}
#edgeBtn ul.btnList {
    margin-top: 1rem;
}
#edgeBtn ul.btnList > li {
}
#edgeBtn ul.btnList > li:not(:first-child) {
    margin-top: 8px;
}
#edgeBtn ul.btnList_sp {
    text-align: right;
    display: none;
}
#edgeBtn ul.btnList_sp > li {
    display: inline-block;
}
#edgeBtn ul.btnList_sp > li img {
    max-height: 50px;
    width: auto;
}
@media (max-width: 767px) {
    #edgeBtn {
        top: auto;
        bottom: 80px;/* js調整  */
        right: 10px;
        width: 100%;
    }
    #edgeBtn ul.btnList {
        display: none;
    }
    #edgeBtn ul.btnList_sp {
        display: block;
    }
}


/* お知らせ（トップページと一覧ページ共通） */
.news_list_wrap {
  overflow: hidden;
}
.news_list_wrap .news_list {
  display: flex;
  display: -webkit-flexbox;
  display: -ms-flexbox;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  width: calc(100% + 20px);
}
.news_list_wrap .news_list > .child {
  width: calc( (100% / 4) - 20px );
  max-width: calc( (100% / 4) - 20px );
  margin-right: 20px;
}
.news_list_wrap .news_list > .child:nth-child(n+5) {
  margin-top: 20px;
}
.news_list_wrap .news_list > .child a {
  display: block;
  border: 1px solid #004ea1;
  background-color: #ffffff;
  position: relative;
  padding: 15px;
  text-decoration: none;
  height: 100%;
}
.news_list_wrap .news_list > .child a::before {
  position: absolute;
  right: -1px;
  bottom: -1px;
  content: '';
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  background: linear-gradient(-45deg,#004ea1 1.2em,transparent 0);
}
.news_list_wrap .news_list > .child a:hover {
  opacity: 0.7;
}
.news_list_wrap .news_list > .child .row_image {
  text-align: center;
}
.news_list_wrap .news_list > .child .row_image img {
  max-width: 100%;
  max-height: 100%;
  display: inline-block;
  width: 100%;
}
.news_list_wrap .news_list > .child .row_title {
  margin-top: 10px;
  font-size: 14px;
}
.news_list_wrap .news_list > .child .row_date {
  font-size: 12px;
  margin-top: 5px;
}
@media (max-width: 1100px) {
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child {
    width: calc( (100% / 3) - 20px );
    max-width: calc( (100% / 3) - 20px );
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child:nth-child(n+5) {
    margin-top: 0;
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child:nth-child(n+4) {
    margin-top: 20px;
  }
}
@media (max-width: 640px) {
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child {
    width: calc( (100% / 2) - 20px );
    max-width: calc( (100% / 2) - 20px );
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child:nth-child(n+4) {
    margin-top: 0;
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child:nth-child(n+3) {
    margin-top: 20px;
  }
}
@media (max-width: 500px) {
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list {
    width: calc(100% + 10px);
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child {
    width: calc( (100% / 2) - 10px );
    max-width: calc( (100% / 2) - 10px );
    margin-right: 10px;
  }
  #news_maincontainer > .child.main .news_list_wrap.archive .news_list > .child:nth-child(n+3) {
    margin-top: 10px;
  }
}


/* お知らせの一覧ページと詳細ページの共通レイアウト */
#news_maincontainer {
  display: flex;
  display: -webkit-flexbox;
  display: -ms-flexbox;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#news_maincontainer > .child.main {
  width: calc(100% - 300px - 50px);
  max-width: calc(100% - 300px - 50px);
}
#news_maincontainer > .child.side {
  width: 300px;
  max-width: 300px;
}
#news_maincontainer > .child.side dl.contgroup:nth-child(n+2) {
  margin-top: 50px;
}
#news_maincontainer > .child.side dl.contgroup > dt {
}
#news_maincontainer > .child.side dl.contgroup > dt h2.news_side {
  border-bottom: 1px solid #004ea1;
  font-size: 18px;
  color: #000000;
  font-weight: normal;
  padding-bottom: 0.5em;
}
#news_maincontainer > .child.side dl.contgroup > dd {
  margin-top: 20px;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist {
  list-style: none;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist > li > a:hover {
  opacity: 0.7;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li:nth-child(n+2) {
  margin-top: 15px;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li > a {
  display: block;
  text-decoration: none;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item {
  display: flex;
  display: -webkit-flexbox;
  display: -ms-flexbox;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item > * {
    min-height: 0%;/* IE対策 */
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item > .child.lt {
  width: 80px;
  max-width: 80px;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item > .child.rt {
  width: calc(100% - 80px - 10px);
  max-width: calc(100% - 80px - 10px);
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item > .child.rt .row_title {
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.box > li .item > .child.rt .row_date {
  font-size: 12px;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.list > li {
  position: relative;
  padding-left: 1em;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.list > li::before {
  position: absolute;
  top: 0.5em;
  left: 0;
  content: '●';
  color: #004ea1;
  font-size: 0.625rem;
}
#news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.list > li:nth-child(n+2) {
  margin-top: 5px;
}
@media (max-width: 1000px) {
  #news_maincontainer {
    flex-direction: column;
    align-items: center;
    max-width: 700px;
  }
  #news_maincontainer > .child.main {
    width: 100%;
    max-width: 100%;
  }
  #news_maincontainer > .child.side {
    width: 100%;
    max-width: 100%;
    margin-top: 100px;
  }
}
@media (max-width: 500px) {
  #news_maincontainer > .child.side dl.contgroup > dd ul.itemlist.list > li:nth-child(n+2) {
    margin-top: 10px;
  }
}


/* 下部バナー */
.foot_ex_bnr1 {
  margin-bottom: 50px;
}
.foot_ex_bnr1 .bnr1 {
  text-align: center;
}
.foot_ex_bnr1 .bnr1 a {
  display: inline-block;
  color: #ffffff;
  background-color: #004EA1;
  padding: 1em;
  font-size: 16px;
  text-decoration: none;
  box-shadow: 4px 4px 0 rgba(0,78,161,0.75);
  -moz-box-shadow: 4px 4px 0 rgba(0,78,161,0.75);
  -webkit-box-shadow: 4px 4px 0 rgba(0,78,161,0.75);
  font-weight: bold;
  max-width: 100%;
}
.foot_ex_bnr1 .bnr1 a:hover {
  opacity: 0.7;
}
.foot_ex_bnr1 .bnr1 a > .inner {
  padding: 0 calc(1em + 1em + 0.5em) 0 1em;
  position: relative;
  display: inline-block;
}
.foot_ex_bnr1 .bnr1 a > .inner::after {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  transform: translate(0,-50%);
  /*content: '\3e';*/
  content: '\ff1e';
}
.foot_ex_bnr1 .bnr1 a > .inner .large {
  font-size: 120%;
}