@charset "UTF-8";
/**
 *
 * 汎用スタイルシート
 *
**/
.container {
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 5.625rem;
}
@media only screen and (max-width: 768px) {
  .container {
    max-width: none;
    padding: 0 1.25rem;
  }
}
@media only screen and (max-width: 568px) {
  .container {
    padding: 0 0.625rem;
  }
}
@media only screen and (min-width: 569px) {
  .sp-disp {
    display: none;
  }
}
@media only screen and (max-width: 568px) {
  .pc-disp {
    display: none;
  }
}
/**
 * フォントカラー
**/
.f-color {
  color: #ff8c00;
}
.f-blue {
  color: #003a46;
}
.f-yellow {
  color: #feff8b;
}
.f-gray {
  color: #e9e2e0;
}
.f-white {
  color: #fff;
}
/**
 * 背景色
**/
.b-color {
  background: #003a46;
}
.b-gray {
  background-image: url("../images/mv_bg.png");
  background-position: center center;
  background-repeat: repeat-x;
  background-size: auto 100%;
  background-color: #ebe6db;
}
.b-white {
  background: #fff;
}
.b-yellow {
  background: #fffff4;
}
/**
 * テキストデコレーション
**/
.underline {
  background: linear-gradient(transparent 60%, #fffe94 0%);
}
.tori {
  text-decoration: line-through;
}
mark {
  line-height: 2;
  background-color: #fff;
  border-bottom: 3px solid #FFA500;
}
/**
 * リンクテキスト
**/
.link-text a {
  text-decoration: underline;
}
/**
 * フォントウェイト
**/
.bold {
  font-weight: 700;
}
/**
 * マージン
**/
.mt0 {
  margin-top: 0 !important;
}
.mt10 {
  margin-top: 0.625rem !important;
}
.mt15 {
  margin-top: 0.9375rem !important;
}
.mt30 {
  margin-top: 1.875rem !important;
}
.mb15 {
  margin-bottom: 0.9375rem !important;
}
/**
 * text-align
**/
.txt-center {
  text-align: center;
  line-height: 2.2;
}
/**
 * フォントサイズ
**/
.font50 {
  font-size: 50% !important;
}
.font70 {
  font-size: 70% !important;
}
.font80 {
  font-size: 80% !important;
}
.font90 {
  font-size: 90% !important;
}
.font120 {
  font-size: 120% !important;
}
/**
 * 画像サイズ
**/
.image80 {
  width: 80%;
  max-width: 800px;
  margin: 0 auto;
}
.image90 {
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
}
@media only screen and (max-width: 568px) {
  .image80, .image90 {
    width: 100%;
  }
}
/**
 * セクション
**/
section {
  margin: 0;
  padding: 4rem 0;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  section {
    padding: 2.5rem 0;
  }
}
/**
 * タイトル
**/
.tit-wrap {
  margin: 0 0 1.25rem;
}
#top .tit-wrap {
  margin: 0 0 3.75rem;
}
.heading {
  color: inherit;
  font-size: 1.5rem;
  font-weight: 700;
  font-family: 'Kosugi Maru', sans-serif;
  line-height: 1.25;
  letter-spacing: 1px;
  text-align: center;
  margin: 0 0 3rem;
  padding: 1rem 0 0;
}
* + .heading {
  margin-top: 4.5rem;
}
.heading::before {
  content: '';
  display: block;
  width: 0.625rem;
  height: 0.625rem;
  background: #f8b62b;
  box-shadow: 0 -1rem 0 0 #16b6cd;
  border-radius: 50%;
  margin: 0 auto 0.75rem;
}
.heading.no_dots {
  padding-top: 0;
}
.heading.no_dots::before {
  display: none;
}
.heading::after {
  content: '';
  display: block;
  max-width: 144px;
  border-top: solid 1px;
  margin: 1rem auto 0;
}
.heading .f-color {
  color: inherit;
}
.heading-sub-en {
  margin-bottom: 0.3125rem;
  letter-spacing: 2px;
}
.heading-sub {
  margin-bottom: 0.3125rem;
  letter-spacing: 2px;
}
.h2_tit, .h3_tit, h2.tit, h3.tit {
  margin-bottom: 1rem;
  font-size: 1.375rem;
  font-weight: 700;
  font-family: 'Kosugi Maru', sans-serif;
  line-height: 1.5;
}
* + .h2_tit, * + .h3_tit, * + h2.tit, * + h3.tit {
  margin-top: 2rem;
}
.h4_tit, h4.tit {
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}
* + .h4_tit, * + h4.tit {
  margin-top: 2rem;
}
.lead {
  letter-spacing: 2px;
  text-align: center;
  margin-bottom: 1rem;
}
* + .lead {
  margin-top: 1.5rem;
}
@media only screen and (max-width: 768px) {
  #top .tit-wrap, .tit-wrap {
    margin: 0 0 2.5rem;
  }
  .heading {
    font-size: 1.5rem;
    margin: 0 0 1rem;
  }
  * + .heading {
    margin-top: 2rem;
  }
  .heading::after {
    max-width: 120px;
    height: 3px;
    margin-top: 0.75rem;
  }
  .heading-sub {
    margin-top: 0;
    font-size: 0.75rem;
  }
  .h2_tit, .h3_tit, h2.tit, h3.tit {
    font-size: 1.25rem;
  }
  * + .h2_tit, * + .h3_tit, * + h2.tit, * + h3.tit {
    margin-top: 2rem;
  }
  .h4_tit, h4.tit {
    font-size: 1rem;
  }
  * + .h4_tit, * + h4.tit {
    margin-top: 2rem;
  }
  .lead {
    margin-bottom: 1rem;
  }
  * + .lead {
    margin-top: 1rem;
  }
}
/**
 * ボタン
**/
/* button common */
.btn, .btn-nolink {
  font-size: inherit;
  width: 90%;
  margin: 0 auto;
  max-width: 512px;
  position: relative;
}
* + .btn, * + .btn-nolink {
  margin-top: 2.5rem;
}
.btn-wide {
  width: auto;
  max-width: none;
}
.btn > *, .btn-nolink > * {
  width: 100%;
  height: 3.4375rem;
  margin: 0 auto;
  border: 1px solid #f00;
  background: #f00;
  color: #fff;
  position: relative;
  display: inline-block;
  font-size: inherit;
  font-weight: 700;
  font-family: 'Kosugi Maru', sans-serif;
  line-height: 3.3125rem;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  border-radius: 3px;
}
.btn > input {
  padding-right: 0;
}
.btn > *:focus, .btn > *:hover, .btn.btn-nolink > *:focus, .btn.btn-nolink > *:hover {
  /*background-image: linear-gradient(120deg, #ff8c00 0%, #ff8c00 100%);*/
  background: #fff;
  border: 1px solid #f00;
  color: #f00;
}
/* button coloring */
.btn-color > *, .btn-color.btn-nolink > * {
  /*background-image: linear-gradient(120deg, #f6d365 0%, #ff8c00 100%);*/
  background: #f00;
  border: 1px solid #f00;
  color: #fff;
}
.btn-color > *:focus, .btn-color > *:hover, .btn-color.btn-nolink > *:focus, .btn-color.btn-nolink > *:hover {
  /*background-image: linear-gradient(120deg, #ff8c00 0%, #ff8c00 100%);*/
  background: #f00;
  border: 1px solid #f00;
  color: #fff;
}
.btn-white > * {
  background: #fff;
  color: #f00;
  border: 1px solid #f00;
  /*box-shadow: 0 3px 0 0 #016c81;*/
}
.btn-white > *:focus, .btn-white > *:hover {
  background: #f00;
  color: #fff;
  border: 1px solid #f00;
  opacity: 1 !important;
}
.btn-default > * {
  background: #f00;
  color: #fff;
  border: 1px solid #f00;
  /*box-shadow: 0 3px 0 0 #016c81;*/
}
.btn-default > *:focus, .btn-default > *:hover {
  background: #fff !important;
  color: #f00 !important;
  border: 1px solid #f00;
  opacity: 1 !important;
}
.btn-blue > * {
  background: #006076;
  color: #fff;
  border: 1px solid #006076;
  /*box-shadow: 0 3px 0 0 #01303b;*/
}
.btn-blue > *:focus, .btn-blue > *:hover {
  background: #fff !important;
  color: #006076 !important;
  border: 1px solid #006076;
  opacity: 1 !important;
}
.btn-yellow > * {
  background: #feff8b;
  color: #009bb9;
  border: 1px solid #feff8b;
  /*box-shadow: 0 3px 0 0 #b2b34a;*/
}
.btn-yellow > *:focus, .btn-yellow > *:hover {
  background: #009bb9 !important;
  color: #feff8b !important;
  border: 1px solid #feff8b;
  opacity: 1 !important;
}
.btn-more {
  margin: 1.875rem 0 0;
}
.btn-more > * {
  background: #f8b62b;
  color: #fff;
  border: 1px solid;
  /*box-shadow: 0 3px 0 0 #01303b;*/
}
.btn-more > * .no-info {
  content: "";
  position: absolute;
  top: 0.25rem;
  left: 2px;
  width: 2.125rem;
  height: 1.25rem;
  line-height: 1.25rem;
  background: #f8b62b;
  border-radius: 30px;
  font-size: 70%;
}
.btn-more > *::after {
  content: '';
  margin-top: 0;
  top: 50%;
  right: -1.875rem;
  width: 4.375rem;
  height: 1px;
  display: block;
  position: absolute;
  border-top: 1px solid;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.btn-more > *:focus, .btn-more > *:hover {
  background: #fff;
  color: #f8b62b !important;
}
.btn-more > *:focus::after, .btn-more > *:hover::after {
  margin-top: -0.375rem;
  right: 0.9375rem;
  width: 0.75rem;
  height: 0.75rem;
  border-right: 1px solid;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-line {
  margin-top: 0;
}
.btn-line > * {
  background: #54be38;
  color: #fff;
  border: 1px solid #54be38;
  /*box-shadow: 0 3px 0 0 #3f9f25;*/
}
.btn-line > *:focus, .btn-line > *:hover {
  background: #fff !important;
  color: #54be38 !important;
  border: 1px solid #54be38;
}
/* button utility */
.btn-small {
  margin-top: 0.625rem !important;
}
.btn-small > * {
  height: 2.5rem;
  line-height: 2.375rem;
}
.btn-inline {
  display: inline-block;
}
.btn-inline > * {}
.btn-box2 {
  width: 100%;
  max-width: 600px;
  margin: 2.1875rem auto 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}
.form-box .btn-box2 {
  margin-top: 0.9375rem;
}
.btn-box2 .btn, .form-box .btn-box2 form, .btn-box2 .btn-nolink {
  flex-basis: 48%;
  margin-top: 0;
}
.form-box .btn-box2 .btn {
  flex-basis: 48%;
}
.btn-under-txt {
  margin-top: 0.9375rem;
  font-size: 0.9375rem !important;
  text-align: center;
}
.btn-under-txt p {
  display: inline-block;
}
.btn.btnimg a {
  padding-left: 0.75rem;
}
.btn.btnimg img {
  width: 1.25rem;
  height: 1.25rem;
  margin-top: -0.6875rem;
  position: absolute;
  top: 50%;
  left: 1.875rem;
}
@media only screen and (max-width: 768px) {
  .btn.btnimg img {
    left: 0.5rem;
  }
}
@media only screen and (max-width: 568px) {
  .btn, .btn-box2, .btn-nolink {
    margin-top: 1.25rem;
  }
  .btn > a, .btn > input, .btn > button, .btn-nolink > span {
    height: 2.8125rem;
    line-height: 2.6875rem;
    font-size: 0.6875rem;
  }
  .btn.btnimg img {
    left: 0.5rem;
  }
}
/* btn image */
.btn-image {
  width: auto;
  max-width: none;
  position: relative;
  text-align: center;
}
.btn-image > * {
  display: block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  line-height: inherit;
  vertical-align: inherit;
  cursor: pointer;
  border-radius: 0;
}
.btn-image img, .btn-image input {
  display: inline-block;
  max-width: 512px;
  width: auto;
  height: auto;
}
img.btn-image {
  margin-left: auto;
  margin-right: auto;
}
button.btn-image, a.btn-image {
  display: inline-block;
}
/**
 * button wrapper
**/
.cta, .btn_box {
  text-align: center;
}
/**
 * 写真＋テキストボックス(横並び)
**/
.box-2, .box-3, .box-4, .box-5 {
  width: 100%;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
@media only screen and (min-width: 769px) {
  .box-2 > div {
    width: calc((100% - 2rem) / 2);
    margin: 2rem 0 0 2rem;
  }
  .box-3 > div {
    width: calc((100% - 4rem) / 3);
    margin: 2rem 0 0 2rem;
  }
  .box-4 > div {
    width: calc((100% - 3rem) / 4);
    margin: 2rem 0 0 1rem;
  }
  .box-5 > div {
    width: calc((100% - 4rem) / 5);
    margin: 2rem 0 0 1rem;
  }
  .box-2 > div:nth-child(-n+2), .box-3 > div:nth-child(-n+3), .box-4 > div:nth-child(-n+4), .box-5 > div:nth-child(-n+5) {
    margin-top: 0;
  }
  .box-2 > div:nth-child(2n+1), .box-3 > div:nth-child(3n+1), .box-4 > div:nth-child(4n+1), .box-5 > div:nth-child(5n+1) {
    margin-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .box-2 > div, .box-3 > div, .box-4 > div, .box-5 > div {
    width: 100%;
    margin: 1rem 0 0;
  }
  .box-2.sp-2 > div, .box-3.sp-2 > div, .box-4.sp-2 > div, .box-5.sp-2 > div {
    width: calc((100% - 1rem) / 2);
    margin: 1rem 0 0 1rem;
  }
  .box-2.sp-2 > div:nth-child(-n+2), .box-3.sp-2 > div:nth-child(-n+3), .box-4.sp-2 > div:nth-child(-n+4), .box-5.sp-2 > div:nth-child(-n+5) {
    margin-top: 0;
  }
  .box-2.sp-2 > div:nth-child(2n+1), .box-3.sp-2 > div:nth-child(3n+1), .box-4.sp-2 > div:nth-child(4n+1), .box-5.sp-2 > div:nth-child(5n+1) {
    margin-left: 0;
  }
}
/**
 * ボックス - 写真＋テキスト（横並び）
**/
@media only screen and (min-width: 1300px) {
  .pilelongtxt-box {
    max-width: 1300px;
    margin: 0 auto;
  }
}
.pilelongtxt-box {
  margin-bottom: 3.125rem;
  padding: 0 5.625rem 0 0;
  position: relative;
  overflow: hidden;
}
.pilelongtxt-box:last-child {
  margin-bottom: 0;
}
.pilelongtxt-box .image {
  width: 52%;
  max-width: 650px;
  float: left;
}
.pilelongtxt-box.right-img {
  padding: 0 0 0 5.625rem;
}
.pilelongtxt-box.right-img .image {
  float: right;
}
.pilelongtxt-box .image img {
  width: 100%;
  height: 25.625rem;
  outline: 1px solid #fff;
  outline-offset: -0.625rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.pilelongtxt-box .desc {
  width: 48%;
  padding: 3.125rem 0 0 5.625rem;
  float: left;
}
.sub .pilelongtxt-box .desc {
  padding: 0 0 0 3.125rem;
}
.pilelongtxt-box.right-img .desc {
  padding: 3.125rem 5.625rem 0 0;
  float: right;
}
@media only screen and (max-width: 768px) {
  .pilelongtxt-box {
    padding: 0 2.5rem 0 0;
  }
  .pilelongtxt-box.right-img {
    padding: 0 0 0 2.5rem;
  }
  .pilelongtxt-box .desc {
    padding: 0.625rem 0 0 3.125rem;
  }
  .pilelongtxt-box.right-img .desc {
    padding: 0.625rem 3.125rem 0 0;
  }
  .pilelongtxt-box .image img {
    height: 15.625rem;
  }
}
@media only screen and (max-width: 568px) {
  .pilelongtxt-box, .pilelongtxt-box.right-img {
    margin: 0;
    padding: 0;
  }
  .pilelongtxt-box .image, .pilelongtxt-box.right-img .image {
    width: 100%;
    float: none;
  }
  .pilelongtxt-box .desc, .pilelongtxt-box.right-img .desc {
    width: 100%;
    padding: 1.25rem 1.25rem 2.5rem;
    float: none;
  }
  .pilelongtxt-box.right-img {
    padding: 0;
  }
}
/**
 * ボックス - 写真＋テキスト（横並び subページ）
**/
@media only screen and (min-width: 1300px) {
  .longtxt-box {
    max-width: 1300px;
    margin: 0 auto;
  }
}
.longtxt-box {
  margin-bottom: 3.125rem;
  position: relative;
  overflow: hidden;
}
.longtxt-box:last-child {
  margin-bottom: 0;
}
.longtxt-box .image {
  width: 40%;
  max-width: 650px;
  padding-top: 3.75rem;
  float: left;
  position: relative;
}
.longtxt-box.right-img {
  padding: 0 0 0 5.625rem;
}
.longtxt-box.right-img .image {
  float: right;
}
.longtxt-box .image img {
  width: 100%;
  height: 16.875rem;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.longtxt-box .image .ribbon {
  top: 4.0625rem;
  left: 0;
}
.longtxt-box .desc {
  width: 60%;
  padding: 0 0 0 2.5rem;
  float: left;
}
.longtxt-box.right-img .desc {
  padding: 3.125rem 5.625rem 0 0;
  float: right;
}
.longtxt-box .status-rate {
  height: 3.125rem;
  line-height: 3.125rem;
  top: 0;
  font-size: 180%;
}
@media only screen and (max-width: 768px) {
  .longtxt-box .image img {
    height: 13.75rem;
  }
}
@media only screen and (max-width: 568px) {
  .longtxt-box, .longtxt-box.right-img {
    margin: 0;
    padding: 0;
  }
  .longtxt-box .image, .longtxt-box.right-img .image {
    width: 100%;
    float: none;
  }
  .longtxt-box .desc, .longtxt-box.right-img .desc {
    width: 100%;
    padding: 1.25rem 0;
    float: none;
  }
  .longtxt-box.right-img {
    padding: 0;
  }
  .longtxt-box .status-rate {
    bottom: 0;
  }
}
/**
 * 写真＋テキストボックス(縦並び)
**/
.imgtxt-box {
  padding: 1.5rem;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 1rem rgba(0, 0, 0, .08);
  position: relative;
  margin-top: 4rem !important;
}
.imgtxt-box::after {
  content: '';
  display: table;
  clear: both;
}
.recruit .bx-viewport {
  overflow: visible !important;
}
.recruit .bxslider, .recruit .bxslider2 {
  overflow: visible !important;
  margin-top: 4rem !important;
}
.recruit .bxslider .imgtxt-box, .recruit .bxslider2 .imgtxt-box {
  margin-top: 0 !important;
  width: 31.25rem !important;
}
.imgtxt-box .image {
  margin: 0 auto 0.5rem;
  max-width: 33.33%;
}
.imgtxt-box .image a {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  margin: -4rem 0 0;
}
.imgtxt-box .image a::before {
  content: '';
  display: block;
  padding: 100% 0 0;
  position: relative;
  z-index: 10;
  background-image: url("../images/module_result_bg_thumb.png");
  background-repeat: no-repeat;
  background-size: 101% auto;
  background-position: center center;
}
.imgtxt-box .image img {
  width: 100%;
  height: auto;
}
.imgtxt-box .image a > img {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 1;
  width: auto;
  height: 91%;
  transform: translate(-50%, 0);
}
.imgtxt-box .image a > .vertical {
  width: 90%;
  height: auto;
}
.imgtxt-box .desc {
  margin-bottom: 0.625rem;
}
.imgtxt-box .desc ul {
  border-bottom: dotted 1px #a0a0a0;
  padding: 0 0 0.25rem;
  text-align: center;
}
.imgtxt-box .desc ul li {
  display: inline-block;
  margin: 0 2px 4px;
  padding: 0 5px;
  border: 1px solid #000;
  height: 1.25rem;
  line-height: 1.25rem;
  font-weight: 700;
  font-family: 'Kosugi Maru', sans-serif;
  border-radius: 3px;
  background: #000;
  color: #fff;
}
.imgtxt-box .desc .name {
  font-weight: 700;
}
.imgtxt-box .list {
  clear: both;
}
.imgtxt-box .list > .btn {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.imgtxt-box .list > ul {
  width: 100%;
  margin: 0 auto 1.25rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: left;
  border-right: 1px solid #e9e2e0;
  border-bottom: 1px solid #e9e2e0;
}
.imgtxt-box .list > ul > li {
  flex-basis: 50%;
  padding: 0.5rem 0.75rem;
  font-size: 0.8125rem;
  border-top: 1px solid #e9e2e0;
  border-left: 1px solid #e9e2e0;
}
.imgtxt-box .desc .excerpt {
  margin: 0.625rem 0 0;
}
.imgtxt-box .desc .excerpt:first-child {
  margin: 0 0 0.625rem;
  font-weight: bold;
  font-size: 1.25rem;
  text-align: center;
}
.imgtxt-box .desc .excerpt a {
  color: inherit;
}
.imgtxt-box .desc .btn-box2 {
  margin-top: 0 !important;
}
.ribbon {
  position: absolute;
  top: 2px;
  left: 0;
  line-height: 1;
}
.ribbon .icon {
  padding: 0 2px;
  float: left;
}
.ribbon .icon a {
  width: 1.875rem;
  height: 1.875rem;
  padding: 0.3125rem;
  background: rgba(39, 51, 73, 0.85);
  border-radius: 6px;
  display: inline-block;
}
.ribbon .icon span {
  font-size: 0.3125rem;
  font-weight: 700;
  display: block;
  margin-top: 2px;
  text-align: center;
}
.status-rate {
  width: 100%;
  height: 1.875rem;
  padding: 0 0.375rem;
  line-height: 1.875rem;
  color: #fffc20;
  font-size: 120%;
  text-align: center;
  font-weight: 700;
  background: -moz-linear-gradient(-20deg, #fc6076 0%, #ff9a44 100%);
  background: -webkit-linear-gradient(-20deg, #fc6076 0%, #ff9a44 100%);
  background-image: linear-gradient(-20deg, #fc6076 0%, #ff9a44 100%);
  position: absolute;
  bottom: -1.875rem;
  right: 0;
  opacity: 0.9;
}
.status-rate span {
  padding-right: 2px;
}
.imgtxt-box .status-rate {
  position: static;
  margin-top: 1rem;
}
.image .ribbon img {
  height: auto !important;
}
@media only screen and (max-width: 768px) {
  .imgtxt-box .image {
    margin-bottom: 0.625rem;
  }
  .imgtxt-box .image img {
    height: 11.875rem;
  }
  .imgtxt-box .image .status-rate {
    height: 2.1875rem;
    line-height: 2.1875rem;
    bottom: 0;
  }
  .imgtxt-box .desc .excerpt {
    font-size: 130%;
  }
}
@media only screen and (max-width: 568px) {
  .imgtxt-box {
    padding: 0.9375rem;
  }
  .recruit .bxslider .imgtxt-box {
    width: 20rem !important;
    padding: 0.9375rem;
  }
  .imgtxt-box .image {
    width: 37%;
    margin-bottom: 1rem;
  }
  .imgtxt-box .image .ribbon {}
  .imgtxt-box .image .status-rate {
    height: 1.5625rem;
    line-height: 1.5625rem;
    bottom: -1.5625rem;
  }
  .imgtxt-box .desc .excerpt {
    font-size: 100%;
  }
}
/**
 * 円形＋テキスト(縦並び)
**/
.roundtxt-box {
  width: 100%;
  text-align: center;
  font-weight: 700;
  position: relative;
}
.roundtxt-box .image {
  position: relative;
  margin: 0 0 1rem;
}
.roundtxt-box img {
  max-width: 40px;
  width: 100%;
  height: auto;
}
.roundtxt-box .image::after {
  content: '';
  display: block;
  width: 92%;
  border-top: 3px solid;
  margin: 1rem auto 0;
  top: 3px;
  position: absolute;
  left: 58%;
}
.roundtxt-box .image.image_last::after {
  display: none
}
@media only screen and (max-width: 1150px) {
  .roundtxt-box .image::after {
    width: 40%;
    left: 80%;
  }
}
@media only screen and (max-width: 768px) {
  .roundtxt-box .image::after {
    display: none
  }
}
.roundtxt-box .desc {
  padding: 1.25rem 1.5625rem;
  background: #fff;
  border-radius: 12px;
}
.roundtxt-box .desc .tit {
  margin-top: 0.25rem;
}
.roundtxt-box .desc .excerpt {
  margin-top: 0.9375rem;
  font-weight: normal;
  text-align: left;
}
@media only screen and (max-width: 568px) {
  .roundtxt-box {
    margin: 0;
    padding-bottom: 1rem;
    border-bottom: 1px solid #ddd;
    text-align: left;
  }
  .roundtxt-box:first-child {
    margin-top: 0;
    padding-top: 1rem;
    border-top: 1px solid #ddd;
  }
  .roundtxt-box .desc {
    width: calc(90% - 0.5rem);
    padding: 0.9375rem;
    float: right;
    height: auto;
  }
  .roundtxt-box .desc .tit {
    text-align: left;
  }
  .roundtxt-box .desc .excerpt {
    margin-top: 0.3125rem;
  }
  .roundtxt-box .image {
    width: 10%;
    float: left;
  }
}
/**
 * リスト
**/
.table {
  margin: 0;
  width: 100%;
  font-size: 0.875rem;
  border-top: 1px solid #e9e2e0;
}
.table .caption {
  font-weight: 700;
  font-size: 1.125rem;
}
.table .caption th, .table .caption td {
  background: #ccc;
}
tr {
  border-bottom: 1px solid #e9e2e0;
}
th {
  width: 20%;
  min-width: 100px;
  padding: 0.625rem 0.9375rem;
  background: #efebe3;
  color: #3f3f3f;
  font-weight: 700;
}
td {
  padding: 0.625rem 0.9375rem;
  line-height: 2;
  background: #fff;
  box-sizing: border-box;
}
dl {
  margin-top: 0.9375rem;
}
dl::after {
  content: '';
  display: table;
  clear: both;
}
dl dd {
  width: 86%;
  float: right;
}
td ul {
  overflow: hidden;
}
td ul li {
  margin-right: 1.25rem;
  float: left;
}
.input_select, td input[type="text"], td input[type="email"], td input[type="password"], textarea {
  padding: 0 0.625rem;
  min-width: 80px;
  height: 1.875rem;
  border-radius: 3px;
  background: #fff;
  border: solid 1px transparent;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.13);
  font-size: inherit;
}
td input[type="text"], td input[type="email"], td input[type="password"], textarea {
  width: 80%;
  max-width: 500px;
  height: 2.5rem;
}
textarea {
  padding: 0.625rem;
  height: auto;
  min-height: 5rem;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="password"]:focus, textarea:focus {
  box-shadow: 0 0 2px #009bb9;
  border: 1px solid #009bb9;
}
.list-box .table {
  border-top: 1px dotted #ddd;
}
.list-box .table + p, .list-box p.tit {
  margin: 20px 0 5px;
  font-size: 1.125rem;
  font-weight: 700;
}
.list-box tr {
  border-bottom: 1px dotted #ddd;
}
@media only screen and (max-width: 568px) {
  table.swipe {
    width: auto;
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    overflow: auto;
    white-space: nowrap;
  }
  .search-box {
    margin-bottom: 0;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
  }
  th {
    min-width: 80px;
    padding: 0.625rem 0.3125rem;
    font-size: 0.6875rem;
  }
  td {
    padding: 0.625rem;
    font-size: 0.6875rem;
    line-height: 1.25;
  }
  td input[type="text"], td input[type="email"], td input[type="password"], textarea {
    font-size: inherit;
  }
}
/**
 * ガイダンス
**/
.guidance {
  background: url(../images/img-guidance.jpg)top center / 100% auto no-repeat #e9e2e0;
  background-size: 100%;
  background-size: cover;
}
.guidance .tit-wrap {
  margin-bottom: 1.25rem;
}
.guidance .btn {
  margin-top: 1.25rem;
}
@media only screen and (max-width: 568px) {
  .guidance {
    background: url(../images/img-guidance-sp.jpg)top center / 100% auto no-repeat #e9e2e0;
    background-size: 100%;
    background-size: cover;
  }
}
/* アコーディオン */
.listAccordion {
  margin: 0 auto;
}
* + .listAccordion {
  margin-top: 2rem;
}
.listAccordion > p {
  font-size: 1.25rem;
  margin: 0 0 0.5rem;
}
.listAccordion > * + p {
  margin-top: 2rem;
}
.listAccordion label {
  background: #f5f2e9;
  padding: 1.5rem 0.3125rem 1.5rem 4.6875rem;
  display: block;
  cursor: pointer;
  position: relative;
  border-top: 1px solid #e7e7e7;
}
.listAccordion label:hover {
  background: #fcfbf8;
}
.listAccordion input[type="checkbox"].on-off {
  display: none;
}
.listAccordion .listTips {
  margin: 0;
  padding: 0;
  background: #fff;
  position: relative;
}
.listAccordion input[type="checkbox"].on-off + .listTips {
  height: 0;
  overflow: hidden;
}
.listAccordion input[type="checkbox"].on-off:checked + .listTips {
  height: auto;
  padding: 1.25rem 0.3125rem 1.25rem 4.6875rem;
  border-top: 1px solid #e7e7e7;
}
.listAccordion label .iconq, .listAccordion input[type="checkbox"].on-off:checked + .listTips .icona {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  left: 1.25rem;
  top: 1.0625rem;
  width: 2.5rem;
  height: 2.5rem;
  text-align: center;
  background-color: transparent;
  background-image: url("../images/faq_icon_q.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #f29600;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1;
}
.listAccordion input[type="checkbox"].on-off:checked + .listTips .icona {
  background-color: transparent;
  background-image: url("../images/faq_icon_a.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #e61f19;
}
@media only screen and (max-width: 568px) {
  .listAccordion label .iconq, .listAccordion input[type="checkbox"].on-off:checked + .listTips .icona {
    left: 0.3125rem;
  }
  .listAccordion label, .listAccordion input[type="checkbox"].on-off:checked + .listTips {
    padding-left: 3.75rem;
  }
}
/**
 * フォーム関連
**/
.form-box {
  margin: 0 auto;
  padding: 2.5rem;
  border: 1px solid #e9e2e0;
  border-top: 4px solid #607600;
  border-radius: 0 0 6px 6px;
  box-shadow: 0 2px 0.9375rem rgba(0, 0, 0, 0.08);
  background: #fff;
}
.form-box + .form-box {
  margin-top: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .form-box + .form-box {
    margin-top: 1.5rem;
  }
}
.form-box .form {
  width: 100%;
  border-top: 1px solid #e9e2e0;
}
.form-box .form tr {
  border-bottom: 1px solid #e9e2e0;
}
.form-box .form tr th {
  width: 20%;
  min-width: 240px;
  font-weight: 700;
  background: #fff;
}
.form-box .form tr td {
  width: 78%;
  vertical-align: top;
  box-sizing: border-box;
}
/* form-type-01 */
.form-box .form.form-type-01 {
  table-layout: fixed;
}
.form-box .form.form-type-01 thead tr th, .form-box .form.form-type-01 thead tr td {
  width: auto;
}
.form-box .form.form-type-01 thead tr th:first-child, .form-box .form.form-type-01 thead tr td:first-child {
  width: 66.66%;
}
.form-box .form.form-type-01 thead tr th:last-child::after {
  display: none;
}
.form-box .form.form-type-01 tbody tr th, .form-box .form.form-type-01 tbody tr td {
  width: auto;
}
.form-box .form img {
  max-width: 200px;
}
td input[type="text"].txt_w35p, td input[type="email"].txt_w35p, td input[type="password"].txt_w35p {
  max-width: 350px;
}
input.txt_w50p {
  max-width: 500px;
}
textarea.textarea_w73p {
  width: 73%;
  max-width: 535px;
  height: 7.8125rem;
  padding: 0.625rem;
}
.form-box .form td .note {
  width: 100%;
  line-height: 1.75rem;
  font-size: 0.8125rem;
  color: #9f9f9f;
  display: inline-block;
}
.form-box .form td .error {
  margin: 0.3125rem 0 0 0;
  padding: 0.3125rem;
  max-width: 560px;
  color: #e96525;
}
.form-box .form td .fl.select {
  margin: 0 0.625rem 0 0;
  display: inline;
}
.form-box .form td .list01 {
  overflow: hidden;
}
.form-box .form td .list01 li {
  margin: 0 1.875rem 0 0;
  float: left;
  display: inline;
  line-height: 1.875rem;
}
.form-box .form td .list02 {
  overflow: hidden;
}
.form-box .form td .list02 li {
  margin: 0 1.25rem 0 0;
  float: left;
  display: inline;
  line-height: 1.875rem;
}
.form-box .form td .choice-img li {
  margin: 0;
  padding: 0.625rem;
  text-align: center;
}
.form-box .form td li label {
  padding: 0 2px 0 0.25rem;
}
.form-box .btn a {
  padding: 0;
}
.form-box .btn a::after {
  display: none;
}
.form-box td .btn {
  margin: 0 auto;
}
.form-box td .btn a {
  font-size: 0.6875rem;
  min-width: 40px;
  height: 2.5rem;
  line-height: 2.5rem;
}
.form-box .form th > span {
  line-height: 1.25rem;
  float: left;
  font-feature-settings: 'palt';
}
.form-box .form th > span small {
  margin-left: 0.5rem;
  font-size: 0.6875rem;
}
.form-box .must, .form-box .optional {
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 1.25rem;
  padding: 0 0.5rem;
  line-height: 1.25rem;
  color: #fff;
  font-size: 0.625rem;
  background: #f00;
}
.form-box .form th .optional {
  background: #737373;
}
.form-box .form th .must, .form-box .form th .optional {
  float: right;
}
@media only screen and (max-width: 768px) {
  .form-box .form tr th, .form-box .form tr td {
    width: 100%;
    display: block;
    overflow: hidden;
  }
  .form-box .form tr td {
    padding: 0.9375rem 0;
  }
  .form-box .form tr td input[type="text"], .form-box .form tr td input[type="email"], .form-box .form tr td input[type="password"], .form-box textarea {
    margin: 0;
  }
  textarea.textarea_w73p {
    width: 100%;
  }
}
@media only screen and (max-width: 568px) {
  .form-box {
    border: none;
    box-shadow: none;
    padding: 0;
  }
  .form-box .form td .choice-img li {
    width: 50%;
  }
  .form-box .form tr th, .form-box .form tr td {
    padding: 0.625rem 0.9375rem;
  }
  td input[type="text"].txt_w35p, td input[type="email"].txt_w35p, td input[type="password"].txt_w35p {
    width: 100%;
    max-width: none;
  }
  .form-box .form tr th::after {
    display: none;
  }
  .form-box .form.form-type-01 tr th::after {
    display: block;
  }
}
/**
 * エフェクト
**/
.effect-fade {
  opacity: 0;
  transform: translate(0, 2.8125rem);
  transition: all 1000ms;
}
.effect-fade-2 {
  transform: translate(0, 5.625rem);
}
.effect-fade-3 {
  transform: translate(0, 8.4375rem);
}
.effect-fade-4 {
  transform: translate(0, 11.25rem);
}
.fade-t {
  transform: translate(0, -2.8125rem);
}
.fade-r {
  transform: translate(2.8125rem, 0);
}
.fade-l {
  transform: translate(-2.8125rem, 0);
}
.effect-fade.effect-scroll {
  opacity: 1;
  transform: translate(0, 0);
}
.appear {
  animation: show 1s both;
}
.dh {
  animation-delay: 2s;
}
.d1h {
  animation-delay: 2.5s;
}
@keyframes show {
  0% {
    transform: translate(0, 2.8125rem);
    transition: all 1000ms;
    opacity: 0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1;
  }
}
/**
 * クリア関連
**/
.clear {
  clear: both;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
/**
 * トピックス追加
**/
.news-area{
  background: #fff;
  margin-bottom: 50px;
}
.news-area ul li{
  font-size: .9rem;
  padding: .9rem 0;
  color: #7d7d7d;
  border-bottom: 1px solid #e4e4e4;
}
.news-area ul li dl dd{
  width: 100%;
  float: none;
}
.news-area ul li dl{
  color: #000;
  margin-top: 0;
}
@media only screen and (min-width: 767px) {
  .news-area ul li dl{
    display: -webkit-flex; /* Safari用 */
    display: flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
  }
  .news-area ul li dl dt{
    width: 20%;
  }
  .news-area ul li dl dd{
    width: 80%;
  }
}
.news-area h3 {
  color: #262e2f;
  font-size: 1.4rem;
  font-weight: 700;
  position: relative;
  margin-top: 2rem;
  margin-bottom: 1rem;
}
.news-area h3::before {
  content: "";
  border-top: 2px solid #f00;
  width: 100px;
  position: absolute;
  top: -10px;
}
.news-area .toList{
  text-align: center;
  margin-top: 30px;
}
.news-area .toList a{
  color: #f00;
  font-size: 1rem;
}
.news-area .toList a svg{
  margin-left: 10px;
}
