@charset "UTF-8";
/*==========================================
 *■ global
 *==========================================*/
.pc {
  display: block; }

.sp {
  display: none; }

.page__company {
  background: url(../company/images/bg_title.png) no-repeat center top; }

.page__special-meat {
  background: url(../special-meat/images/bg_title.png) no-repeat center top; }

.page__special-product {
  background: url(../special-product/images/bg_title.png) no-repeat center top; }

.page__business {
  background: url(../business/images/bg_title.png) no-repeat center top; }

.page__system {
  background: url(../system/images/bg_title.png) no-repeat center top; }

.page__talk1 {
  background: url(../talk1/images/bg_title.png) no-repeat center top; }
  .page__talk1 h2 {
    top: -100px;
    position: relative; }

.page__talk2 {
  background: url(../talk2/images/bg_title.png) no-repeat center top; }

.page__parttime {
  background: url(../parttime/images/bg_title.png) no-repeat center top; }

.page__title .container {
  display: table; }

.page__title__wrap {
  height: 400px;
  vertical-align: middle;
  display: table-cell; }

.page__title h2 {
  width: 100%; }
  .page__title h2 img {
    vertical-align: middle; }

.main__wrap {
  margin-top: 55px; }

/*==========================================
 *■ global
 *==========================================*/
aside nav {
  display: none; }

.box__set {
  position: relative;
  background: url(../company/images/bg_mid.png) repeat-y center top;
  background-size: 100%;
  padding: 40px 100px 25px 100px; }
  .box__set .text-main {
    margin-bottom: 30px; }
  .box__set:before {
    background: url(../company/images/bg_top.png) no-repeat center top;
    background-size: 100%;
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 40px; }
  .box__set:after {
    background: url(../company/images/bg_bottom.png) no-repeat center top;
    background-size: 100%;
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 10px; }
  .box__set h3 {
    text-align: center;
    position: absolute;
    top: -10px;
    left: 0;
    right: 0; }
  .box__set p {
    text-align: justify;
    text-justify: inter-ideograph; }
  .box__set-no:before {
    background: url(../company/images/bg_top_nobr.png) no-repeat center top;
    background-size: 100%;
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 40px; }

/*==========================================
 *■ company
 *==========================================*/
.company__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }

.company__box {
  border-top: 1px solid #af7b19;
  margin-bottom: 50px; }
  .company__box__table {
    margin-left: 285px;
    margin-top: -60px; }
  .company__box h3 {
    background-color: #af7b19;
    width: 245px;
    height: 100px;
    padding: 38px 0;
    text-align: center; }
  .company__box dl {
    margin-bottom: 2px;
    display: table;
    width: 100%; }
    .company__box dl dt {
      background-color: #f7f1d1;
      display: table-cell;
      width: 180px;
      padding: 17px 20px; }
    .company__box dl dd {
      padding: 17px 20px;
      background-color: #f5f5f5;
      display: table-cell; }
      .company__box dl dd .line {
        border-bottom: 1px solid #fff;
        padding-bottom: 10px;
        margin-bottom: 10px; }

/*==========================================
 *■ special
 *==========================================*/
.special__img {
  margin-bottom: 100px; }

.special__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }
  .special__one .text_big {
    font-size: 22px;
    color: #000; }

.special__item {
  margin-bottom: 70px; }
  .special__item h3 {
    margin-bottom: 25px; }
  .special__item figure {
    position: relative; }
    .special__item figure:after {
      background-color: #fff;
      border: 3px solid #af7b19;
      width: 153px;
      height: 217px;
      position: absolute;
      content: "";
      bottom: -20px;
      right: -20px;
      z-index: -1; }
  .special__item__left figure {
    float: left;
    margin-right: 80px; }
  .special__item__right figure {
    float: right;
    margin-left: 70px;
    margin-right: 20px; }

/*==========================================
 *■ business
 *==========================================*/
.business__two {
  background: url(../business/images/bg1.jpg); }
  .business__two__content figure {
    float: left;
    margin-right: 40px; }

.business__three {
  background: url(../business/images/bg2.jpg); }

.business__two, .business__three {
  padding-bottom: 35px;
  margin-bottom: 70px; }
  .business__two h3, .business__three h3 {
    text-align: center;
    margin-bottom: 40px; }
  .business__two ul, .business__three ul {
    margin: 0 -50px; }
    .business__two ul li, .business__three ul li {
      width: 33.33333333%;
      padding: 0 50px;
      display: block;
      float: left; }
      .business__two ul li p, .business__three ul li p {
        text-align: left;
        margin-top: 40px;
        margin-bottom: 20px; }

.business__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }

.business__box {
  border-top: 1px solid #000;
  margin-bottom: 50px; }
  .business__box__right {
    margin-left: 285px;
    margin-top: -60px; }
  .business__box h3 {
    background-color: #af7b19;
    width: 245px;
    height: 100px;
    padding: 38px 0;
    text-align: center; }

/*==========================================
 *■ family
 *==========================================*/
.family {
  margin-top: 100px; }
  .family__title {
    margin-bottom: 50px; }
    .family__title img {
      max-width: 100%; }
  .family__content {
    background-color: #f7f1d1;
    padding: 30px;
    margin-bottom: 100px; }
    .family__content p {
      margin-bottom: 25px; }
    .family__content .sign_right {
      margin-top: 40px;
      margin-bottom: 0px;
      text-align: right; }
      .family__content .sign_right span {
        display: block; }

/*==========================================
 *■ system
 *==========================================*/
.system__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }

.system__item {
  margin-bottom: 50px; }
  .system__item h3 {
    margin-bottom: 20px; }
  .system__item-right {
    padding-top: 30px;
    padding-left: 30px;
    background: url(../system/images/bg1.jpg) no-repeat left top; }
    .system__item-right figure {
      float: right;
      margin-left: 40px; }
  .system__item-left {
    padding-top: 30px;
    padding-right: 30px;
    background: url(../system/images/bg2.jpg) no-repeat right top; }
    .system__item-left h3 {
      margin-left: 53%; }
    .system__item-left figure {
      float: left;
      margin-right: 40px; }

/*==========================================
 *■ flow
 *==========================================*/
.flow__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }

.flow__step {
  margin-top: 25px;
  margin-bottom: 70px; }
  .flow__step ul li {
    display: block;
    float: left;
    width: 25%;
    padding-right: 60px;
    text-align: center;
    color: #fff; }
    .flow__step ul li:last-child span:after {
      background: none; }
    .flow__step ul li span {
      background-color: #000;
      display: block;
      padding: 10px 0;
      font-size: 18px;
      -webkit-box-shadow: 5px 5px 0px 0px #7f7f7f;
      -moz-box-shadow: 5px 5px 0px 0px #7f7f7f;
      box-shadow: 5px 5px 0px 0px #7f7f7f;
      position: relative; }
      .flow__step ul li span:after {
        position: absolute;
        content: "";
        background: url(../flow/images/arrow.png) no-repeat center center;
        width: 12px;
        height: 50px;
        right: -38px;
        top: 0;
        bottom: 0; }
.flow__item {
  margin-bottom: 30px; }
.flow__item .msg {
  overflow: hidden; }

.flow__item__title {
  background: url(../flow/images/bg_title.png) no-repeat left bottom;
  padding-bottom: 15px;
  margin-bottom: 10px; }
  .flow__item__title h3 {
    color: #000;
    font-size: 20px;
    margin-bottom: 5px; }

.flow__item figure {
  float: left;
  margin-right: 60px; }

.flow__box {
  background: url(../flow/images/bg1.png) no-repeat left bottom; }
  .flow__box__text {
    text-align: right;
    margin-top: 15px;
    margin-right: 25px; }
  .flow__box .company__box__table {
    margin-left: 245px; }

/*==========================================
 *■ talk
 *==========================================*/
.talk__box2 {
  margin-top: -65px;
  margin-bottom: 105px; }
  .talk__box2 a {
    float: left;
    width: 48%; }
    .talk__box2 a:last-child {
      float: right; }

.talk__line2 dl {
  display: table;
  margin-bottom: 10px; }
  .talk__line2 dl.color__pink dt {
    padding-left: 325px;
    position: relative;
    vertical-align: middle;
    background: url(../talk2/images/bg1.png) no-repeat right center;
    width: 88%; }
    .talk__line2 dl.color__pink dt .box__text {
      padding: 15px 10px;
      margin-right: 110px;
      border: 1px solid #e99aba;
      background-color: #e99aba; }
    .talk__line2 dl.color__pink dt h4 {
      bottom: 25px;
      font-size: 20px;
      right: 15px;
      position: absolute; }
  .talk__line2 dl.color__pink dd {
    width: 135px;
    text-align: right; }
  .talk__line2 dl.color__green dt {
    width: 135px;
    text-align: left; }
  .talk__line2 dl.color__green dd {
    padding-right: 325px;
    position: relative;
    vertical-align: middle;
    background: url(../talk2/images/bg2.png) no-repeat left center;
    width: 88%; }
    .talk__line2 dl.color__green dd .box__text {
      padding: 15px 10px;
      margin-left: 110px;
      border: 1px solid #77cac5;
      background-color: #77cac5; }
    .talk__line2 dl.color__green dd h4 {
      bottom: 25px;
      font-size: 20px;
      left: 15px;
      position: absolute; }
  .talk__line2 dl dt {
    display: table-cell; }
  .talk__line2 dl dd {
    display: table-cell; }

.talk__line dl {
  display: table;
  margin-bottom: 10px; }
  .talk__line dl.color__brown dd {
    background: url(../talk1/images/bg1.png) no-repeat left center; }
    .talk__line dl.color__brown dd .box__text {
      border: 1px solid #dabb89;
      background-color: #dabb89; }
  .talk__line dl.color__green dd {
    background: url(../talk1/images/bg2.png) no-repeat left center; }
    .talk__line dl.color__green dd .box__text {
      border: 1px solid #77cac5;
      background-color: #77cac5; }
  .talk__line dl.color__pink dd {
    background: url(../talk1/images/bg3.png) no-repeat left center; }
    .talk__line dl.color__pink dd .box__text {
      border: 1px solid #e99aba;
      background-color: #e99aba; }
  .talk__line dl dt {
    display: table-cell;
    width: 135px; }
  .talk__line dl dd {
    width: 88%;
    position: relative;
    display: table-cell;
    vertical-align: middle; }
    .talk__line dl dd .box__text {
      padding: 15px 10px;
      margin-left: 110px; }
    .talk__line dl dd h4 {
      bottom: 25px;
      font-size: 20px;
      left: 15px;
      position: absolute; }

.talk__sec2 {
  margin-bottom: 95px; }
  .talk__sec2 h3 {
    border-top: 1px solid #af7b19;
    text-align: center;
    margin-bottom: 50px; }
    .talk__sec2 h3 span {
      background-color: #af7b19;
      display: inline-block;
      vertical-align: bottom;
      width: 390px;
      text-align: center;
      padding: 35px 0; }

.talk__sec {
  margin-bottom: 95px; }
  .talk__sec h3 {
    border-top: 1px solid #af7b19;
    text-align: center;
    margin-bottom: 50px; }
    .talk__sec h3 span {
      background-color: #af7b19;
      display: inline-block;
      vertical-align: bottom;
      text-align: center;
      padding: 35px 15px; }

.talk__box {
  display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
  display: -ms-flexbox;      /* TWEENER - IE 10 */
  display: -webkit-flex;     /* NEW - Chrome */
  display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
  margin-top: -50px;
  margin-bottom: 50px; }
  .talk__box__inner {
    position: relative;
    background: url(../talk1/images/bg_mid.png) repeat-y center top;
    background-size: 100%;
    height: 100%;
    padding-top: 41px;
    padding-bottom: 27px;
    padding-left: 20px;
    padding-right: 10px;
    min-height: 250px; }
    .talk__box__inner h3 {
      margin-bottom: 5px; }
    .talk__box__inner .text_big {
      font-size: 16px;
      margin-bottom: 5px;
      font-weight: bold;
      min-height: 55px; }
    .talk__box__inner .btn__black {
      background-color: #000;
      width: 167px;
      text-align: center;
      display: block;
      padding: 5px 0;
      color: #fff;
      margin-bottom: 5px; }
    .talk__box__inner:before {
      background: url(../talk1/images/bg_top.jpg) no-repeat center top;
      background-size: 100%;
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      top: 0;
      width: 100%;
      height: 44px; }
    .talk__box__inner:after {
      background: url(../talk1/images/bg_bottom.jpg) no-repeat center bottom;
      background-size: 100%;
      position: absolute;
      content: "";
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 29px; }
  .talk__box__set {
    background: url(../talk1/images/bg.gif) repeat left bottom;
    padding: 20px;
    width: 33.333333%;
    margin-right: 40px; }
    .talk__box__set:last-child {
      margin-right: 0; }

/*==========================================
 *■ recruit
 *==========================================*/
.recruit {
  margin-top: 30px; }
  .recruit h3 img {
    vertical-align: middle; }
  .recruit .company__box__table table {
    border-collapse: separate;
    border-spacing: 2px; }
    .recruit .company__box__table table th {
      background-color: #f7f1d1;
      font-weight: normal;
      width: 200px;
      text-align: left;
      vertical-align: middle;
      padding: 15px 30px; }
    .recruit .company__box__table table td {
      padding: 15px 30px;
      background-color: #f5f5f5;
      vertical-align: middle; }
.recruit__btn { margin-left: 285px; }
/*==========================================
 *■ parttime
 *==========================================*/
.parttime__one {
  background: url(../company/images/bg1.jpg);
  padding: 40px;
  margin-top: -50px;
  margin-bottom: 55px; }
.parttime__one .box__set {
  padding: 40px 50px 25px; }
.parttime__video {
 border: 15px solid #000;
 float: left;
 width: 40%;
 margin: 0 auto;
 margin-bottom: 50px;
 margin-right: 20px; }
.parttime__video iframe, .parttime__video object, .parttime__video embed {
  height: 100%;
  width: 100%; }
.parttime__video p {
  overflow: hidden; }
.parttime__btn {
 margin-bottom: 40px; }

/*==========================================
 *■ information
 *==========================================*/
.information { margin-top: 50px; }
.information__box figure { float: left;width: 285px;margin-right: 60px;margin-bottom: 60px;position: relative;margin-top: -60px; }
.information__box figure:after { position: absolute;right: -20px;bottom: -20px;content: "";border: 4px solid #eae0cf;top: 15%;left: 50%;z-index: -1; }
.information__box a { text-decoration: none; }
.information__box .msg { overflow: hidden; }
.information__box__title { border-bottom: 1px solid #af7b19;padding-bottom: 10px;margin-bottom: 25px;margin-left: 345px; }
.information__box__title h4 { float: left;color: #af7b19;font-size: 20px; }
.information__box__title time { float: right;display: block;background-color: #f7f1d1;color: #000;padding: 1px 10px; }
.information__box__detail time { display: inline-block;background-color: #f7f1d1;color: #000;padding: 1px 10px;vertical-align: bottom; }
.information__box__detail h4 { color: #af7b19;font-size: 20px;border-bottom: 1px solid #af7b19;padding-bottom: 10px;margin-bottom: 25px;margin-top: 15px; }
.information__detail__content { margin-top: 20px;margin-bottom: 100px; }

/*==========================================
 *■ message
 *==========================================*/
.pagination { text-align: center; }
.pagination li { display: inline-block;vertical-align: bottom;padding: 5px 15px;border: 1px solid #dabb89;margin: 0 5px; }
.pagination li.active { background-color: #dabb89; }
.message h2 { margin-top: 105px; }
.message__content h3 {
  text-align: center;
  padding-top: 50px;
  margin-bottom: 40px; }
.message__list { margin-bottom: 20px; }
.message__list li { position: relative;width: 30%;margin-bottom: 115px;margin-right: 50px;display: block;float: left; }
.message__list li:nth-child(3n) { margin-right: 0; }
.message__list li h4 { background-color: rgba(156,106,23,0.7);color: #fff;font-size: 16px;padding: 15px; }
.message__list li .message__ov { position: absolute; left: 20px;right: -20px;bottom: -96px;  }
.message__list li a { text-decoration: none;display: block; }
.message__list li p { padding: 15px; }
.message__list li a:after { border: 1px solid #af7b19;bottom: -95px;content: "";left: 20px; position: absolute;right: -20px;top: 20px }
.message__detail { position: relative;margin-bottom: 50px;margin-top: 105px; }
.message__detail span.stick { position: absolute;top: 0;right: 10%; }
.message__detail h3 { position: absolute;top: 15%;right: 0;text-decoration: underline;color: #010101;font-size: 40px;width: 530px;text-shadow: 0 0 100px #fff, 0 0  50px #fff, 0 0  10px #fff; }
.message__detail .message__box { background-color: #af7b19;width: 365px;padding: 30px 20px 25px 30px;position: absolute;right: 0;bottom: -65px; }
.message__detail .message__box:before { content: "";border: 1px solid #af7b19;position: absolute;top: 10px;left: -10px;right: 10px;bottom: -10px; }
.message__detail .message__box__title { position: relative; }
.message__detail .message__box__title:before { position: absolute;width: 60px;background-color: #f7f1d1;content: "";height: 3px;top: -10px;left: 0; }
.message__detail .message__box__title h4 { font-weight: normal; }
.message__detail .message__box__title span { font-weight: bold;font-size: 20px; }
.message__content { margin-bottom: 70px; }
.message__content figure.img-a { margin-top: 85px;float: left;width: 21%;position: relative; }
.message__content figure.img-a:before { content: "";border: 1px solid #af7b19;position: absolute;top: 7px;left: 7px;right: -7px;bottom: -7px; }
.message__content figure img { max-width: 100%;height: auto; }
.message__content .msg { background-color: #f7f1d1;float: right;margin-right: 125px;padding: 65px 40px 35px;width: 62%; }
.message__related h3 { margin-bottom: 50px; }
.owl-carousel { padding: 0 40px;margin-bottom: 50px;position: relative; }
.owl-carousel .item { border: 1px solid #000; }
.owl-carousel .item a { display: block;position: relative; }
.owl-carousel .item:hover .item__ov {
  display: block;
}
.owl-carousel .item .item__ov {
  background-color: rgba(0,0,0,0.4);
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  color: #fff;
  text-align: center;
  padding: 15px;
  display: none;
}
.owl-carousel .item .item__ov h5 {
  font-size: 20px;
}
.message__related .owl-prev {
  background: url(../message/images/arrow_prev.png) no-repeat;
  width: 24px;
  height: 38px;
  display: block;
  text-indent: -99999px;
  position: absolute;
  left: 0;
  top: 50%;
}
.message__related .owl-next {
  background: url(../message/images/arrow_next.png) no-repeat;
  width: 24px;
  height: 38px;
  display: block;
  text-indent: -99999px;
  position: absolute;
  right: 0;
  top: 50%;
}
/*==========================================
 *■ entry
 *==========================================*/
.entry__form { margin-top: 50px;margin-bottom: 145px; }
.entry__form dl { display: table;width: 100%;border-collapse: separate;border-spacing: 1px; }
.entry__form dl dt { display: table-cell;background-color: #f7f1d1;padding: 15px 40px;width: 245px;vertical-align: top; }
.entry__form dl dt p { overflow: hidden; }
.entry__form dl dd { display: table-cell;background-color: #f5f5f5;padding: 15px 40px; }
.entry__form input[type="text"], .entry__form input[type="email"], .entry__form textarea, .entry__form select, .entry__form input[type="number"] {
  border: none;
  padding: 5px; }
.entry__form input[type="text"], .entry__form input[type="email"] {
  width: 100%;
  height: 28px; }
.entry__form input[type="number"] {
  width: 20%;
  height: 28px;
}
.entry__form textarea {
  width: 100%;
  height: 100px;
}
.entry__form .hissu:before {
  padding: 1px 0;
  display: block;
  float: left;
  content: "必須";
  color: #fff;
  background-color: #af7b19;
  width: 36px;
  height: 22px;
  line-height: 22px;
  font-size: 12px;
  text-align: center;
  margin-right: 10px;
  -webkit-border-radius: 5px;
  -khtml-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px; }
.entry__form .ninni:before {
  padding: 1px 0;
  display: block;
  float: left;
  content: "任意";
  color: #fff;
  background-color: #3e3e3e;
  width: 36px;
  height: 22px;
  line-height: 22px;
  font-size: 12px;
  text-align: center;
  margin-right: 10px;
  -webkit-border-radius: 5px;
  -khtml-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px; }
.entry__form .btn-submit { text-align: center;font-size: 13px;margin-top: 40px; }
.entry__form .btn-submit .btn {
  background: url(../entry/images/btn.jpg) no-repeat left top;
  width: 300px;
  height: 41px;
  border: none;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
  margin-top: 35px;
}
.entry__form .btn-submit .wpcf7-back {
  background: url(../entry/images/btn_prev.jpg) no-repeat left top;
}
.entry__form .btn-submit .btn:disabled {
  color: #404040;
}
@media only screen and (max-width: 1170px) {
  .page__talk2 {
    background: url(../talk2/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
    .page__talk2 h2 {
      width: 28% !important; }
  .page__title h2 {
    padding-left: 2%; }
  .box__set {
    position: relative;
    padding: 40px 5% 25px 5%; }
  .company__one {
    padding: 4% 2%; }
  .company__box {
    margin-left: 2%;
    margin-right: 2%; }
  .business img {
    max-width: 100%; }
  .business__one {
    padding: 4% 2%; }
  .business__two ul, .business__three ul {
    margin: 0; }
    .business__two ul li, .business__three ul li {
      padding: 0 25px; }
  .special img {
    max-width: 100%; }
  .special__item {
    padding: 0 2%; }
    .special__item figure {
      margin-bottom: 20px;
      width: 36%; }
    .special__item__left figure {
      margin-right: 35px; }
    .special__item__right figure {
      margin-left: 35px; }
  .family {
    padding: 0 2%;
    margin-top: 30px; }
  .system__item {
    padding: 15px 2%; }
    .system__item-right {
      background-size: cover; }
      .system__item-right figure {
        float: none;
        margin-left: 0;
        text-align: center;
        margin-bottom: 20px; }
    .system__item-left {
      background-size: cover; }
      .system__item-left h3 {
        margin-left: 0; }
      .system__item-left figure {
        float: none;
        margin-right: 0;
        text-align: center;
        margin-bottom: 20px; }
  .flow img {
    vertical-align: middle; }
  .flow__box {
    background: none; }
    .flow__box .company__box__table img {
      max-width: 100%; }
  .flow__item {
    padding: 0 2%; }
  .flow__step {
    padding: 0 2%; }
  .talk img {
    max-width: 100%; }
  .talk__box__inner:after {
    height: 19px; }
  .talk__box__set {
    margin-right: 15px; }
  .talk__sec2 {
    padding: 0 2%; }
  .talk__box2 {
    padding: 0 2%;
    margin-bottom: 50px;
    margin-top: -30px; }
    .talk__box2 a img {
      max-width: 100%; }
  .talk__sec {
    padding: 0 2%; }
    .talk__sec h3 span {
      padding: 15px; }
      .talk__sec h3 span img {
        vertical-align: middle; }
  .message img {
    max-width: 100%; }
  .message h2 {
    margin-top: 0; }
    .message .message__list {
      padding: 0 2%; }
      .message .message__list li {
        width: 29.3333333%;
        margin-right: 35px; }
      .message .message__list li:nth-child(3n) { margin-right: 0; }
  .message__detail {
    margin-top: 0; }
    .message__detail .message__box {
      right: 20px; }
    .message__detail h3 {
      font-size: 200%;  }
    .message__detail .img-main {
      width: 70%;  }
  .message__content {
    padding: 0 2%; }
    .message__content .msg {
      margin-right: 0;
      width: 70%; }
  .message__related h3 {
    padding: 0 2%; }
  .information {
    padding: 0 2%; }
  .entry__form {
    padding: 0 2%;
  }
  .message__detail h3 {
    width: auto;
    padding-right: 2%;
  } }
  
@media only screen and (max-width: 768px) {
  .pc {
    display: none; }
  .sp {
    display: block; }
  .break_sp {
    display: block; }
  .box__set {
    position: relative;
    padding: 6% 5% 25px 5%; }
  .main__wrap {
    margin-top: 0; }
    .main__wrap img {
      max-width: 100%; }
  .page__title__wrap {
    height: 275px;
    padding: 0 2%; }
  .page__title h2 {
    padding-left: 2%;
    width: 100%; }
  .page__parttime {
    background: url(../parttime/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__talk1 {
    background: url(../talk1/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
    .page__talk1 h2 {
      width: 40%;
      position: relative;
      top: -80px; }
  .company__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
  .company__box__table {
    margin-left: 0;
    margin-top: 20px; }
  .company__box h3 {
    height: auto;
    padding: 10px 0;
    width: 160px; }
  .company__box dl {
    display: block; }
    .company__box dl dt {
      display: block;
      width: 100%;
      padding: 7px 10px; }
    .company__box dl dd {
      display: block; }
  .recruit h3 {
    width: 200px; }
  .special__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
    .special__one .text-main {
      margin-bottom: 15px;
      position: relative;
      z-index: 9999; }
  .special__item {
    margin-bottom: 30px; }
    .special__item figure {
      margin-bottom: 10px; }
      .special__item figure:after {
        background-color: #fff;
        border: 2px solid #af7b19;
        left: 10%;
        top: 10%;
        width: auto;
        height: auto;
        position: absolute;
        content: "";
        bottom: -5px;
        right: -5px;
        z-index: -1; }
    .special__item__left figure {
      margin-right: 15px; }
    .special__item__right figure {
      margin-left: 15px; }
  .system__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
  .system__item-right figure {
    float: none;
    margin-left: 0; }
  .business__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
    .business__one .box__set {
      padding-top: 25px; }
  .business__box {
    margin-left: 2%;
    margin-right: 2%; }
    .business__box__right {
      margin-left: 0;
      margin-top: 20px; }
    .business__box h3 {
      height: auto;
      padding: 10px 0;
      width: 160px; }
    .business__box dl {
      display: block; }
      .business__box dl dt {
        display: block;
        width: 100%;
        padding: 7px 10px; }
      .business__box dl dd {
        display: block; }
  .business__two__content, .business__three__content {
    padding: 0 2%; }
  .flow__step {
    margin-bottom: 25px; }
  .flow__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
  .flow .company__box__table {
    margin-left: 0; }
  .flow__item .msg figure {
    float: none;
    margin-right: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 20px; }
  .flow__step ul {
    margin-right: -60px; }
    .flow__step ul li {
      margin-bottom: 15px;
      width: 50%; }
      .flow__step ul li:nth-child(2n) span:after {
        background: none; }
  .talk__sec2 h3 span {
    padding: 15px 0;
    max-width: 390px;
    width: 100%; }
    .talk__sec2 h3 span img {
      max-width: 100%;
      vertical-align: middle; }
  .talk__line2 dl.color__pink dt {
    padding-left: 15px;
    width: 80%; }
    .talk__line2 dl.color__pink dt h4 {
      bottom: 50%; }
    .talk__line2 dl.color__pink dt .box__text {
      margin-right: 70px;
      background-color: #e99aba; }
  .talk__line2 dl.color__pink dd {
    vertical-align: middle; }
  .talk__line2 dl.color__green dt {
    vertical-align: middle; }
  .talk__line2 dl.color__green dd {
    padding-right: 15px;
    width: 80%; }
    .talk__line2 dl.color__green dd h4 {
      bottom: 50%; }
    .talk__line2 dl.color__green dd .box__text {
      margin-left: 70px;
      background-color: #77cac5; }
  .talk__box__inner:after {
    height: 27px; }
  .talk__line dt {
    vertical-align: middle; }
  .talk__line dl dd {
    width: 80%; }
    .talk__line dl dd .box__text {
      background-color: #fff;
      margin-left: 70px; }
    .talk__line dl dd h4 {
      bottom: 50%; }
  .parttime__one {
    margin-top: 0;
    padding: 30px 2%;
    margin-bottom: 25px; }
  .parttime__video {
    height: 300px;  }
  .recruit__btn { margin-left: 0; }
  .message__content {}
    .message__content .msg {
      width: 100%;
      padding: 30px;
      margin-top: 30px; }
    .message__content figure.img-a {
      float: left;
      margin-top: 0px;
      margin-right: 15px;
      width: 40%; }
  .message__list li h4 {
    font-size: 14px;
    padding: 8px;
  }
  .message__list li p {
    padding: 8px;
    font-size: 12px;
  } }
  
@media only screen and (max-width: 767px) {
  .recruit .company__box h3 {
    width: 180px; }
  .recruit .company__box__table {
    overflow-x: scroll; }
    .recruit .company__box__table::-webkit-scrollbar {
      height: 5px; }
    .recruit .company__box__table::-webkit-scrollbar-track {
      background: #F1F1F1; }
    .recruit .company__box__table::-webkit-scrollbar-thumb {
      background: #BCBCBC; }
    .recruit .company__box__table table {
      border-collapse: separate;
      border-spacing: 2px;
      min-width: 800px; }
      .recruit .company__box__table table td, .recruit .company__box__table table th {
        padding: 5px; }
  .talk__box2 {
    margin-bottom: 15px;
    margin-top: 20px; }
    .talk__box2 a {
      width: 100%;
      text-align: center;
      margin-bottom: 10px; }
  .talk__box {
    display: block;
    padding: 0 2%;
    margin-top: 20px; }
    .talk__box__inner .btn__black {
      margin: auto; }
    .talk__box__set {
      max-width: 340px;
      margin: 0 auto;
      margin-bottom: 20px;
      width: 100%;
      text-align: center; }
      .talk__box__set:last-child {
        margin-right: auto; }
  .business__two__content, .business__three__content {
    padding: 0 2%; }
    .business__two__content figure, .business__three__content figure {
      margin-right: 20px;
      width: 50%; }
  .business__two ul, .business__three ul {
    margin: 0; }
    .business__two ul li, .business__three ul li {
      padding: 0 20px;
      width: 100%;
      max-width: 320px;
      float: none;
      margin: auto;
      margin-bottom: 20px; }
  .parttime__video {
   padding: 0 2%;
   float: none;
   width: 100%; }
   .message .message__list li {
      width: 46%;
      margin-right: 0;
      margin-bottom: 20px; } 
    .message .message__list li:nth-child(2n) {
      float: right; }
    .message__list li a::after {
      right: 0;
      left: 0;
      top: 0;
      bottom: 0; }
    .message__list li .message__ov {
      position: static;
    }
    .message__list li h4 {
      left: 0;
      right: 0;
      padding: 5px;
      font-size: 14px;
      position: static; }
    .message__list li p {
      bottom: 0;
      left: 0;
      font-size: 13px;
      position: static; }
  
    .message__detail .message__box {
      right: 30%;
      width: auto;
      padding: 10px; }
    .message__detail span.stick {
      bottom: 0;
      right: 5%;
      top: auto; }
    .message__detail h3 {
      font-size: 150%;
      top: 11%;
      max-width: 320px; }
    .message__detail .message__box__title span {
      font-size: 16px; }
  .information__box figure {
    margin-top: 0;
    width: 40%; }
  .information__box__title {
    margin-left: 0;
  }
  .entry__form {
    margin-top: 20px;
    margin-bottom: 40px;
  }
  .entry__form dl {
    display: block;
  }
  .entry__form dl dt {
    display: block;
    width: 100%;
    padding: 10px
  }
  .entry__form dl dd {
    display: block;
    padding: 10px
  } }
@media only screen and (max-width: 480px) {
  .page__title h2 {
    width: 40%; }
  .page__title__wrap {
    height: 128px; }
  .page__recruit h2 {
    width: 55%; }
  .page__company {
    background: url(../company/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__business {
    background: url(../business/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__system {
    background: url(../system/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__flow {
    background: url(../flow/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__talk1 {
    background: url(../talk1/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
    .page__talk1 h2 {
      position: relative;
      top: 30px;
      width: 80%; }
  .page__talk2 {
    background: url(../talk2/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
  .page__special-meat {
    background: url(../special-meat/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
    .page__special-meat h2 {
      float: right; }
  .page__special-product {
    background: url(../special-product/images/bg_title_sp.png) no-repeat center top;
    background-size: cover; }
    .page__special-product h2 {
      float: right; }
  .message__box__title {
    margin-bottom: 10px;
  }
  .box__set {
    padding-top: 7%; }
    .box__set .text-main {
      margin-bottom: 15px; }
    .box__set:after {
      background-size: auto; }
  .company__box h3 {
    width: 140px; }
  .message__list li p {
      bottom: -90px; }
  .message__detail span.stick {
    width: 23%;
  }
  .information {
    margin-top: 20px;
  }
  .message__detail h3 {
    position: static;
    padding: 15px 2%;
  }
  .message__content .msg {
    padding: 30px 10px;
  }
  .message__detail .message__box {
    bottom: -90px;
  }}
@media only screen and (max-width: 330px) {
  .message__detail .message__box {
    bottom: -135px;
  }
  .message__detail {
    margin-bottom: 100px;
  }
}