.info_text {
    display: inline-block;
  text-align: left;
}


.wrapper_section {
  max-width: 600px;
  margin: 0 auto 20px auto;
  text-align: center;
}


#navi {
　　position:absolute;
　　height:40px;
　　z-index:1;
　　width: 100%;
　　background-image: url(navi_bg.png);
}

.top_banner {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 20px 0 40px 0;
  float: left;
  width: 100%;
  margin-bottom: 1px;
}

.top_banner2 {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 10px 0 10px 0;
  float: left;
  width: 100%;
  margin-bottom: 0px;
}

.top_banner_black {
  background-color: rgba(0,0,0,0.3);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.top_banner_black2 {
  background-color: #323435;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}


.top_banner_txt p {
  text-align: center;
  font-size: 1.0em;
  color: #fff;
letter-spacing: .1em;
position: relative;
margin: 0pt;
}

.top_banner_txt h2 {
  text-align: center;
  font-size: 12px;
  color: #fff;
  margin: 0 auto 30px auto;
  font-weight: normal;
  letter-spacing: 0.2em;
  position: relative;
  width: 360px;
  padding-bottom: 15px;
  border-bottom: solid 1px #fff;
}

.top_banner_txt h3 {
  text-align: center;
  font-size: 10px;
  color: #fff;
  margin: 0 auto 0 auto;
  font-weight: normal;
  position: relative;
  width: 360px;
}

.top_banner_box {
  width: 100%;
  float: left;
  margin-bottom: 3em;
}

.top_banner_box2 {
  width: 100%;
  float: left;
}

.logo {
  position: absolute;
  left: 0;
  top: 30%;
  display: block;
  width: 100%;
}

.logo img {
  width: 250px;
  margin: 0 auto;
}

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.section__block--top-page {
max-width: 1100px;
}

.slider {
margin-top: 0;
}
.slider .bx-wrapper {
margin-bottom: 0;
}
.slider .bx-wrapper .bx-caption {
text-align: center;
top: 0;
bottom: auto;
}

#slider img {
display: block;
margin: 0 auto;
}

.bx-wrapper .bx-pager {
  right: 10px;
  width: auto!important;
}

.bx-wrapper .bx-pager a {
  width: 8px!important;
  height: 8px!important;
  background-color: #cccccc!important;
}

.bx-wrapper .bx-pager a.active {
  background-color: #666666!important;
}

.banner__section {
margin-top: 2px;
}

.banner__section2 {
margin-top: 2px;
margin-bottom: 3em;
}

.news__lists {
list-style-type: none;
margin: 0 0 2em;
}

.news__list {
margin-bottom: .5em;
}

.news__date {
margin-right: 1em;
}


.row-fluid {
  width: 100%;
  *: ;
  zoom: 1;
}

#news-list .news-text {
  padding-left: 10px;
  list-style-type: none;
  overflow: hidden;
  padding: 0;
  position: relative;
}

#news-list {
  margin: 0 0 5px;
}

#news-list .news-text p.news-date {
  font-size: 10px;
  width: 10%;
  border: none;
text-overflow: inherit;
  overflow: visible;
margin-right: 1em
}

#news-list .news-text p {
  margin-bottom: 3px;
  font-size: 11px;
  line-height: 1.4;

  float: left;
  font-weight: normal;
  color: #5b5b5b;
  padding: 0 0 5px 5%;
  line-height: 18px;
  border-left: 1px solid #c4c4c4;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  margin: 0;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}

@media (max-width: 979px)
constructed stylesheet
#news-list .news-text p.news-date {
  width: auto;
}

@media (max-width: 767px)
constructed stylesheet
#news-list .news-text p.news-date {
  padding: 0 3% 0 0;
}

@media (max-width: 767px)
constructed stylesheet
#news-list .news-text p {
  padding: 0 0 0 3%;
}

@media (max-width: 979px)
constructed stylesheet
#news-list .news-text p {
  width: 84%;
  padding: 0 0 0 5%;
}

/* staff comment */
.staffvoice {
  margin:20px auto;
}

.staffvoice__box {
  display: flex;
  justify-content: center;
  max-width: 1300px;
  margin: 50px auto 70px;
}

.staffvoice-img {
  width: 40%;
  text-align: center;
}

.staffvoice-detail {
  width: 45%;
  margin: 30px 50px;
}

.staffvoice-detail img {
  width: 100px;
  height: 100px;
  border-radius: 50px;
}

.staffvoice-ttl {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
  margin-bottom: 30px;
}

.staffvoice-staff {
  margin: 20px 0 0;
}

.staffvoice-name {
  font-weight: 600;
  padding-left: 10px;
}

@media (max-width: 980px) {
  .staffvoice {
      margin-top:20px;
  }
  .staffvoice__box {
      display: flex;
      justify-content: center;
      max-width: 1300px;
      margin: 20px auto;
      flex-direction: column;
  }

  .staffvoice-img {
      width: 90%;
      text-align: center;
      margin: 0 auto;
  }

  .staffvoice-detail {
      width: 90%;
      margin: 30px auto;
  }

  .staffvoice-ttl {
      font-size: 14px;
      font-weight: 600;
      margin-bottom: 10px;
  }
}

/* add css 20230424 */

.top_faq {
  width: 100%;
  margin: 0 auto;
}

.top_faq details {
  line-height: 1.8;
  padding: 10px 0;
}

.top_faq summary {
  position: relative;
  font-size: 14px;
  font-weight: normal;
  padding: 15px 30px 15px 0px;
  margin-bottom: 20px;
  border-bottom: 1px solid #ccc;
  list-style: none;
}

.top_faq details summary::-webkit-details-marker {
  display:none;
}

.top_faq details summary::after {
  position: absolute;
  font-size: 18px;
  content: "+";
  top: 13px;
  right: 10px;
}

.top_faq details[open] summary::after {
  content: "-";
  top: 13px;
  right: 14px;
}

.flow_inner {
  margin-bottom: 4em;
}

.flow_inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
}

.flow_inner ul li {
  width: 15%;
  position: relative;
  list-style: none;
}

.flow_inner ul li::after {
  position: absolute;
  top: 50%;
  right: -30%;
  content: '';
  width: 18px;
  height: 18px;
  margin: 0 10px;
  border-top: 8px solid #4b4b4b;
  border-right: 8px solid #4b4b4b;
  transform: rotate(45deg);
}

.flow_inner ul li:last-child:after {
  display: none;
}

.flow_inner ul li h3 {
  text-align: center;
  font-weight: normal;
}

.flow_inner ul li img {
  display: block;
  width: 80%;
  margin: 1em auto;
}

@media screen and (max-width:480px) {
  .flow_inner ul li {
    width: 45%;
    margin-bottom: 1em;
  }

  .flow_inner ul li:after {
    display: none;
  }
}
