@charset "UTF-8";
@media print, screen and (min-width: 768px) {
  ._sp {
    display: none;
  }
}

._pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  ._pc {
    display: block;
  }
}

body {
  font-size: 16px;
  line-height: 1.5;
  font-family: "Hiragino Mincho Pro", serif;
}

body * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a {
  color: #000000;
  text-decoration: none;
}

img {
  width: 100%;
  height: auto;
}

header {
  position: relative;
}

header .inner {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  text-transform: capitalize;
  background-color: #fff;
  /* border-bottom: solid 1px cl(primary); */
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  opacity: 0.9;
  z-index: 2;
}

h1 {
  margin-left: 25px;
  margin-top: 10px;
}

h1 .image {
  width: 200px;
  height: 100px;
}

.nav-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 40px;
  height: 30px;
  margin-left: auto;
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 40px;
  position: relative;
  background: transparent;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font: inherit;
  outline: none;
}

.nav-btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #000;
  display: block;
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

@media print, screen and (min-width: 768px) {
  .nav-btn span {
    background: transparent;
  }
}

.nav-btn span:nth-child(2) {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 3px;
  background-color: #000;
  display: block;
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

@media print, screen and (min-width: 768px) {
  .nav-btn span:nth-child(2) {
    background: transparent;
  }
}

.nav-btn span:last-child {
  position: absolute;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 3px;
  background-color: #000;
  display: block;
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

@media print, screen and (min-width: 768px) {
  .nav-btn span:last-child {
    background: transparent;
  }
}

.-active span {
  top: 0;
  bottom: 0;
  margin: auto;
}

.-active span:first-child {
  display: block;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

.-active span:nth-child(2) {
  display: block;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

.-active span:last-child {
  display: block;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: -webkit-transform 0.1s ease;
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
}

.header-right {
  position: absolute;
  top: 0;
  left: 1000px;
}

@media print, screen and (min-width: 768px) {
  .header-right {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: auto;
  }
}

.header-right .header-nav {
  margin-right: 30px;
}

@media print, screen and (min-width: 768px) {
  .header-right .header-nav .nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media print, screen and (min-width: 768px) {
  .header-right .header-nav .nav-item + .nav-item {
    margin-left: 30px;
  }
}

.header-right .header-nav .nav-item .Item {
  text-decoration: none;
  color: #000;
  font-size: 24px;
}

.header-right .header-nav .nav-item .Item .Item-Text {
  position: relative;
  z-index: 1;
}

.header-right .Item-Text:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  /*テキストからの距離*/
  width: 0%;
  /*初期状態では下線非表示*/
  height: 5px;
  /*下線の高さ*/
  background: #2EAE57;
  /*下線の色*/
  z-index: -1;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
  /*アニメーション速度*/
}

.header-right .Item:hover .Item-Text:after {
  width: 100%;
  /*hover時に表示*/
}

.header-right .tel {
  padding-left: 10px;
  padding-right: 10px;
  margin-right: 60px;
  position: relative;
}

.header-right .tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.header-right .tel .en {
  margin-right: 10px;
  color: #ca353b;
  font-size: 12px;
}

.header-right .tel .number {
  font-family: futura-pt, sans-serif;
  color: #ca353b;
  font-size: 30px;
}

.header-right .tel:hover {
  background-color: #ca353b;
  -webkit-transition: all 2.5s ease;
  transition: all 2.5s ease;
}

.header-right .tel:hover .en {
  color: #fff;
}

.header-right .tel:hover .number {
  color: #fff;
}

.show {
  visibility: visible;
  background-color: #2EAE57;
  width: 70%;
  position: absolute;
  top: 100px;
  left: 30%;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: center;
  font-size: 1.4em;
}

.show .header-nav {
  margin-right: 0;
}

.show .header-nav .nav-item {
  margin-top: 40px;
}

.show .header-nav .nav-item .Item {
  color: #fff;
}

.show .tel {
  margin-top: 30px;
  margin-right: 0;
  margin-bottom: 30px;
  line-height: 1;
}

.show .tel a {
  display: block;
}

.show .tel a span {
  display: block;
}

.show .tel a .en {
  font-size: 1.4em;
}

.show .tel a .number {
  font-size: 1.4em;
}

.show .square {
  display: none;
}

#page_top {
  width: 50px;
  height: 50px;
  position: fixed;
  right: 25px;
  bottom: 150px;
  background: #2EAE57;
  opacity: 0.6;
  border-radius: 50%;
  z-index: 1;
}

#page_top a {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
  text-align: center;
}

#page_top a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f106";
  font-weight: 900;
  font-size: 30px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0px;
  bottom: 20px;
  right: 0;
  left: 0;
  margin: auto;
}

.footer .inner {
  position: relative;
  display: block;
  padding: 20px;
  border-top: 1px solid #000;
}

@media print, screen and (min-width: 768px) {
  .footer .inner {
    padding: 60px 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.footer .inner .footer-logo {
  width: 200px;
  height: 70px;
  margin: 0 auto;
}

@media print, screen and (min-width: 768px) {
  .footer .inner .footer-logo {
    margin: 0;
  }
}

.footer .inner .company {
  color: #999999;
  font-size: 1.3em;
  line-height: 1.2;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .footer .inner .company {
    margin-left: 30px;
    text-align: left;
  }
}

.footer .inner .company .bold {
  font-weight: bold;
}

.footer .inner .company .adress {
  display: block;
  font-size: 0.8em;
}

.footer .inner .footer-right {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .footer .inner .footer-right {
    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;
  }
}

.footer .inner .footer-right .footer-nav .footer-nav-list {
  font-size: 1.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-transform: capitalize;
}

.footer .inner .footer-right .footer-nav .footer-nav-list .footer-nav-item {
  margin-left: 80px;
}

.footer .inner .footer-right .footer-nav .footer-nav-list .footer-nav-item + .footer-nav-item {
  margin-left: 50px;
}

.footer .inner .footer-right .footer-nav .footer-nav-list .footer-nav-item .Item {
  text-decoration: none;
  color: #000;
  font-size: 24px;
}

.footer .inner .footer-right .footer-nav .footer-nav-list .footer-nav-item .Item .Item-Text {
  position: relative;
  z-index: 1;
}

.footer .Item-Text:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  /*テキストからの距離*/
  width: 0%;
  /*初期状態では下線非表示*/
  height: 5px;
  /*下線の高さ*/
  background: #2EAE57;
  /*下線の色*/
  z-index: -1;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
  /*アニメーション速度*/
}

.footer .Item:hover .Item-Text:after {
  width: 100%;
  /*hover時に表示*/
}

.footer .footer-copy {
  height: 70px;
  background-color: #2EAE57;
  opacity: 0.6;
  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;
}

.footer .footer-copy .copyright {
  color: #fff;
  font-size: 10px;
}

@media print, screen and (min-width: 768px) {
  .footer .footer-copy .copyright {
    font-size: 15px;
  }
}

.cmn-section {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.cmn-section .cmn-title {
  color: #000;
  text-align: center;
  padding-top: 50px;
}

.cmn-section .cmn-title .main {
  font-size: 42px;
  text-transform: capitalize;
}

.cmn-section .cmn-title .sub {
  display: block;
  font-size: 20px;
}

@media print, screen and (min-width: 768px) {
  .cmn-section .cmn-title .sub {
    margin-left: 15px;
    margin-top: 5px;
  }
}

@media print, screen and (min-width: 768px) {
  .home-title {
    margin-top: 100px;
  }
}

.cmn-link a {
  width: 100px;
  height: 37px;
  border-radius: 20px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff8e00;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 14px;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .cmn-link a {
    width: 155px;
  }
}

.cmn-link a:hover {
  background-color: #ff0000;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.top {
  margin-top: 100px;
  height: 600px;
  background-position: center;
  background-size: cover;
  position: relative;
  background-image: url(../image/top_sm.png);
  /* .top-text {
    font-size: 50px;
    color: cl(white);
    position: absolute;
    top: 20%;
    left: 5%;
  } */
}

@media print, screen and (min-width: 768px) {
  .top {
    height: 874px;
    background-image: url(../image/top1.png);
  }
}

.top .top-title {
  text-transform: capitalize;
  position: absolute;
  top: 5%;
  left: 5%;
  color: #ff8e00;
  font-size: 250px;
}

.vacant_top {
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .vacant_top {
    margin-top: 70px;
  }
}

.vacant_top .inner .top-cont {
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont {
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.vacant_top .inner .top-cont .top-list .top-item .image .sm {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list .top-item .image .sm {
    display: none;
  }
}

.vacant_top .inner .top-cont .top-list .top-item .image .pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list .top-item .image .pc {
    display: block;
  }
}

.vacant_top .inner .top-cont .top-list .top-item .image .top-link {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 75%;
  left: 50%;
  -webkit-transform: translatex(-50%);
          transform: translatex(-50%);
  width: 90%;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list .top-item .image .top-link {
    width: 500px;
    top: 85%;
    right: 10%;
  }
}

.vacant_top .inner .top-cont .top-list .top-item .image .top-link .top-btn {
  font-size: 1.2rem;
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list .top-item .image .top-link .top-btn {
    width: 500px;
    font-size: 2rem;
  }
}

.vacant_top .inner .top-cont .top-list .top-item .image .top-link .top-btn:hover {
  background-color: #2EAE57;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .vacant_top .inner .top-cont .top-list .top-item {
    width: 100%;
  }
}

.web-top {
  margin-top: 100px;
  height: 600px;
  background-position: center;
  background-size: cover;
  position: relative;
  background-image: url(../image/web-top_sm.png);
}

@media print, screen and (min-width: 768px) {
  .web-top {
    height: 650px;
    background-image: url(../image/web-top.png);
  }
}

.web-top .contact-link {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 80%;
  right: 10%;
}

.web-top .contact-link .contact-btn {
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 1.3rem;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .web-top .contact-link .contact-btn {
    width: 355px;
  }
}

.web-top .contact-link .contact-btn:hover {
  background-color: #ff8e00;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.delivery-top {
  margin-top: 100px;
  height: 650px;
  background-position: center;
  background-size: cover;
  position: relative;
  background-image: url(../image/delivery-top_sm.png);
}

@media print, screen and (min-width: 768px) {
  .delivery-top {
    height: 650px;
    background-image: url(../image/delivery-top.png);
  }
}

.delivery-top .contact-link {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 80%;
  right: 10%;
}

.delivery-top .contact-link .contact-btn {
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 1.3rem;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .delivery-top .contact-link .contact-btn {
    width: 355px;
  }
}

.delivery-top .contact-link .contact-btn:hover {
  background-color: #ff8e00;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.message-cont {
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .message-cont {
    padding-top: 40px;
    padding-left: 80px;
    padding-right: 80px;
  }
}

.message-cont .message-list .message-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
}

.message-cont .message-list .message-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: bold;
}

.message-cont .message-list .message-item .text .section-title .sp-only {
  display: inline;
}

@media print, screen and (min-width: 768px) {
  .message-cont .message-list .message-item .text .section-title .sp-only {
    display: none;
  }
}

@media print, screen and (min-width: 768px) {
  .message-cont .message-list .message-item .text .section-title {
    text-align: center;
    font-size: 40px;
    line-height: 1.2;
    font-weight: bold;
  }
}

.message-cont .message-list .message-item .text .desc {
  font-weight: normal;
  text-align: left;
}

.message-cont .message-list .message-item .text .desc.sm {
  display: block;
  line-height: 1.2;
}

@media print, screen and (min-width: 768px) {
  .message-cont .message-list .message-item .text .desc.sm {
    display: none;
  }
}

.message-cont .message-list .message-item .text .desc.pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .message-cont .message-list .message-item .text .desc.pc {
    display: block;
    font-size: 1.6rem;
    padding-top: 25px;
    line-height: 1.4;
  }
}

.about-cont {
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .about-cont {
    padding-top: 50px;
    padding-left: 80px;
    padding-right: 80px;
  }
}

.about-cont .about-list + .about-list {
  padding-top: 45px;
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list + .about-list {
    padding-top: 30px;
  }
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list:nth-child(odd) .text {
    margin-left: 25px;
  }
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list:nth-child(2) .about-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
  }
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list:nth-child(2) .about-item .text {
    margin-right: 25px;
  }
}

.about-cont .about-list .about-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list .about-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.about-cont .about-list .about-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.about-cont .about-list .about-item .text .title {
  font-size: 1.5rem;
  font-weight: bold;
  text-transform: capitalize;
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list .about-item .text .title {
    font-size: 1.8rem;
  }
}

.about-cont .about-list .about-item .text .title span {
  font-size: 1.2rem;
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list .about-item .text .title span {
    font-size: 1.4rem;
  }
}

.about-cont .about-list .about-item .text .desc {
  font-size: 1.2em;
  margin-top: 15px;
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list .about-item .text .desc {
    margin-top: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .about-cont .about-list .about-item .image {
    width: 50%;
  }
}

.info-cont {
  padding-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 50px;
}

@media print, screen and (min-width: 768px) {
  .info-cont {
    padding-top: 50px;
    padding-left: 80px;
    padding-right: 80px;
    padding-bottom: 100px;
  }
}

@media print, screen and (min-width: 768px) {
  .info-cont .info-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media print, screen and (min-width: 768px) {
  .info-cont .info-list .info-item {
    width: 33%;
  }
}

.info-cont .info-list .info-item + .info-item {
  margin-top: 30px;
}

@media print, screen and (min-width: 768px) {
  .info-cont .info-list .info-item + .info-item {
    margin-top: 0px;
    margin-left: 20px;
  }
}

.info-cont .info-list .info-item .info-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

.info-cont .info-list .info-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.info-cont .info-list .info-item .text .capitalize {
  text-transform: capitalize;
}

.info-cont .info-list .info-item .text .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.3rem;
}

.info-cont .info-list .info-item .text .desc {
  padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .info-cont .info-list .info-item .text .desc {
    font-size: 20px;
  }
}

.info-cont .info-list .image {
  background: #000;
  overflow: hidden;
}

.info-cont .info-list .image img {
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  vertical-align: bottom;
  /* height: 100%; */
}

.info-cont .info-list .image img:hover {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  opacity: 0.6;
  /*これを追加！*/
}

.faq-cont {
  padding-top: 40px;
  padding-bottom: 80px;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0 auto;
}

@media print, screen and (min-width: 768px) {
  .faq-cont {
    width: 70.85938%;
    max-width: 900px;
    padding-left: 0;
    padding-right: 0;
  }
}

.faq-cont .faq-list .faq-item {
  font-size: 0.8rem;
}

@media print, screen and (min-width: 768px) {
  .faq-cont .faq-list .faq-item {
    font-size: 1.2rem;
  }
}

.faq-cont .faq-list .faq-item .faq-title {
  border-bottom: 1px solid #e5e5e5;
  height: 50px;
  color: #333333;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  position: relative;
  padding-left: 15px;
  padding-right: 15px;
}

@media print, screen and (min-width: 768px) {
  .faq-cont .faq-list .faq-item .faq-title {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

@media print, screen and (min-width: 768px) {
  .faq-cont .faq-list .faq-item .faq-title:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 45%;
    right: 30px;
    width: 10px;
    height: 10px;
    border-right: 1px solid #6e6e6e;
    border-bottom: 1px solid #6e6e6e;
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

.faq-cont .faq-list .faq-item .active:after {
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
}

.faq-cont .faq-list .faq-item .faq-answer {
  display: none;
  color: #fff;
  background-color: #2EAE57;
  border-bottom: 1px solid #e5e5e5;
  padding-top: 13px;
  padding-bottom: 14px;
  padding-left: 15px;
  padding-right: 15px;
}

@media print, screen and (min-width: 768px) {
  .faq-cont .faq-list .faq-item .faq-answer {
    padding: 26px 50px;
  }
}

.location .inner {
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .location .inner {
    padding-left: 80px;
    padding-right: 80px;
  }
}

.location-cont {
  margin: 0, auto;
  padding-top: 40px;
  padding-bottom: 80px;
}

@media print, screen and (min-width: 768px) {
  .location-cont .location-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media print, screen and (min-width: 768px) {
  .location-cont .location-list .text {
    font-size: 1.2em;
    margin-left: 30px;
    line-height: 2em;
  }
}

.location-cont .location-list .text .tell {
  font-size: 1.7rem;
}

.location-cont .location-list .text .tell .red {
  color: orangered;
}

.location-cont .location-list .text .adress-list {
  line-height: 1.4rem;
}

@media print, screen and (min-width: 768px) {
  .location-cont .location-list .text .adress-list {
    margin-top: 15px;
  }
}

.location-cont .location-list .text .adress-list .adress {
  text-indent: 1em;
}

.location-cont .location-list .text .bh-list {
  line-height: 1.4rem;
}

@media print, screen and (min-width: 768px) {
  .location-cont .location-list .text .bh-list {
    margin-top: 15px;
  }
}

.location-cont .location-list .text .bh-list p + p {
  text-indent: 1em;
}

@media print, screen and (min-width: 768px) {
  .location-cont .location-list .text .station {
    margin-top: 15px;
  }
}

.location-cont .location-list .text .parking {
  font-weight: bold;
}

.location-cont .location-list .location-map .google-map iframe {
  width: 100%;
}

.action .inner {
  background-color: white;
  padding-top: 10px;
  padding-bottom: 0px;
  position: relative;
  opacity: 0.9;
}

@media print, screen and (min-width: 768px) {
  .action .inner {
    padding-top: 20px;
    padding-left: 80px;
    padding-right: 80px;
    padding-bottom: 20px;
  }
}

.action .inner .action-title {
  font-size: 1.2rem;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .action .inner .action-title {
    font-size: 2.2rem;
  }
}

.action .inner .action-container {
  padding: 10px;
}

@media print, screen and (min-width: 768px) {
  .action .inner .action-container {
    margin: 0 auto;
    width: 70%;
  }
}

.action .inner .action-container .mail-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.action .inner .action-container .mail-list .mail-item + .mail-item {
  margin-left: 15px;
}

@media print, screen and (min-width: 768px) {
  .action .inner .action-container .mail-list .mail-item + .mail-item {
    margin-left: 50px;
  }
}

.contact .inner {
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .contact .inner {
    margin-top: 80px;
  }
}

.contact-cont {
  padding-top: 50px;
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .contact-cont {
    padding-top: 80px;
    padding-left: 80px;
    padding-right: 80px;
  }
}

.contact-cont .contact-form .contact-title {
  font-size: 1rem;
  text-align: left;
}

@media print, screen and (min-width: 768px) {
  .contact-cont .contact-form .contact-title {
    font-size: 1.5rem;
    text-align: center;
  }
}

.contact-cont .contact-form .contact-type {
  padding-top: 20px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 768px) {
  .contact-cont .contact-form .contact-type {
    padding-top: 100px;
    padding-left: 150px;
    padding-right: 150px;
    padding-bottom: 150px;
    display: -ms-grid;
    display: grid;
    justify-items: left;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    grid-row-gap: 100px;
    /* 隙間 */
    grid-column-gap: 100px;
  }
}

.contact-cont .contact-form .contact-type .contact-list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.contact-cont .contact-form .contact-type .contact-list .green {
  color: #11cf0b;
}

.contact-cont .contact-form .contact-type .contact-list .blue {
  color: skyblue;
}

.contact-cont .contact-form .contact-type .contact-list .orenge {
  color: orange;
}

.contact-cont .contact-form .contact-type .contact-list .red {
  color: orangered;
}

.contact-cont .contact-form .contact-type .contact-list .contact-item {
  margin-left: 10px;
}

.contact-cont .contact-form .contact-type .contact-list .contact-item .title {
  font-size: 1.2em;
}

@media print, screen and (min-width: 768px) {
  .contact-cont .contact-form .contact-type .contact-list .contact-item .title {
    font-size: 1.7em;
  }
}

.contact-cont .contact-form .contact-type .contact-list .contact-item .disc {
  font-size: 0.8em;
}

@media print, screen and (min-width: 768px) {
  .contact-cont .contact-form .contact-type .contact-list .contact-item .disc {
    font-size: 1.2em;
  }
}

.service .inner {
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .service .inner {
    margin-top: 80px;
  }
}

.service-cont {
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 15px;
}

@media print, screen and (min-width: 768px) {
  .service-cont {
    padding-left: 80px;
    padding-right: 80px;
    padding-bottom: 80px;
  }
}

.service-cont .service-form {
  padding-top: 30px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form {
    padding-top: 80px;
  }
}

.service-cont .service-form .service-title {
  font-size: 1.5rem;
  text-align: left;
}

.service-cont .service-form .service-lists {
  padding-top: 20px;
  width: 100%;
}

.service-cont .service-form .service-lists .service-list {
  padding-top: 50px;
}

.service-cont .service-form .service-lists .service-list + .service-list {
  padding-top: 45px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list + .service-list {
    padding-top: 30px;
  }
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list:nth-child(odd) .text {
    margin-left: 25px;
  }
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list:nth-child(even) .service-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
  }
}

.service-cont .service-form .service-lists .service-list:nth-child(even) .service-item .text {
  margin-right: 25px;
}

.service-cont .service-form .service-lists .service-list .service-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.service-cont .service-form .service-lists .service-list .service-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
}

.service-cont .service-form .service-lists .service-list .service-item .text .title {
  font-size: 1.5rem;
  font-weight: bold;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .text .title {
    font-size: 32px;
  }
}

.service-cont .service-form .service-lists .service-list .service-item .text .desc {
  font-size: 1.2em;
  margin-top: 15px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .text .desc {
    margin-top: 10px;
  }
}

.service-cont .service-form .service-lists .service-list .service-item .text .delivery-link {
  margin-top: 10px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .text .delivery-link {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}

.service-cont .service-form .service-lists .service-list .service-item .text .web-link {
  margin-top: 10px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .text .web-link {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .image {
    width: 50%;
  }
}

.service-cont .service-form .service-lists .service-list .service-item .image + .image {
  margin-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .service-cont .service-form .service-lists .service-list .service-item .image + .image {
    margin-top: 0px;
    margin-left: 15px;
  }
}

.btn {
  background: #2EAE57;
  width: 100px;
  padding: 10px;
  border-radius: 20px;
  margin-top: 15px;
  margin-left: auto;
  text-align: center;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.btn a {
  color: #333;
}

.btn:hover {
  background: #ffde59;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.btn:hover a {
  color: #333;
}

.profile .inner {
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .profile .inner {
    margin-top: 80px;
  }
}

.profile .inner .profile-cont {
  padding-top: 50px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 15px;
}

@media print, screen and (min-width: 768px) {
  .profile .inner .profile-cont {
    padding-left: 120px;
    padding-right: 120px;
  }
}

.profile .inner .profile-cont .table {
  max-width: 1000px;
  margin: 0 auto;
}

.profile .inner .profile-cont .table .outline {
  width: 100%;
  font-size: 14px;
  color: #333;
}

@media print, screen and (min-width: 768px) {
  .profile .inner .profile-cont .table .outline {
    font-size: 16px;
  }
}

.profile .inner .profile-cont .table .outline th {
  background-color: #f0f0f0;
  border-right: solid 1px #fff;
  border-top: solid 1px #fff;
  font-weight: normal;
  text-align: left;
  width: 20%;
  min-width: 100px;
}

@media print, screen and (min-width: 768px) {
  .profile .inner .profile-cont .table .outline th {
    padding: 15px 20px;
  }
}

.profile .inner .profile-cont .table .outline td {
  background: #f9f9f9;
  border-top: solid 1px #fff;
  padding: 15px 20px;
}

.deli-message .inner .deli-message-desc {
  font-size: 1.2rem;
  padding-top: 25px;
  line-height: 1.5;
}

.deli-title {
  padding-top: 50px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: bold;
  text-align: left;
}

@media print, screen and (min-width: 768px) {
  .deli-title {
    padding-left: 30px;
    padding-right: 30px;
    font-size: 1.8rem;
    padding-bottom: 20px;
  }
}

.deli-ploblem .inner {
  padding-top: 40px;
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner {
    padding-top: 40px;
    padding-left: 60px;
    padding-right: 60px;
  }
}

.deli-ploblem .inner .deli-ploblem-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.deli-ploblem .inner .deli-ploblem-head .deli-title {
  color: orange;
  padding: 0;
  margin-left: 40px;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner .deli-ploblem-head .deli-title {
    margin-left: 30px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.deli-ploblem .inner .deli-ploblem-head .deli-ploblem-logo .image {
  width: 250%;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner .deli-ploblem-head .deli-ploblem-logo .image {
    width: 150%;
  }
}

.deli-ploblem .inner .deli-ploblem-cont {
  padding-top: 10px;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner .deli-ploblem-cont {
    padding-top: 20px;
  }
}

.deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
  }
}

.deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list .deli-ploblem-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

.deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list .deli-ploblem-item .text .desc {
  font-size: 1.2rem;
  font-weight: bold;
}

.deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list .deli-ploblem-item + .deli-ploblem-item {
  margin-top: 30px;
}

@media print, screen and (min-width: 768px) {
  .deli-ploblem .inner .deli-ploblem-cont .deli-ploblem-list .deli-ploblem-item + .deli-ploblem-item {
    margin-top: 0px;
    margin-left: 20px;
  }
}

.deli-solution .inner {
  /* background-color: rgba(141, 234, 238, 0.8); */
  padding-top: 40px;
  padding-left: 20px;
  padding-right: 20px;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner {
    padding-top: 40px;
    padding-left: 60px;
    padding-right: 60px;
  }
}

.deli-solution .inner .deli-solution-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.deli-solution .inner .deli-solution-head .deli-title {
  color: orange;
  padding: 0;
  margin-left: 40px;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-head .deli-title {
    margin-left: 30px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.deli-solution .inner .deli-solution-head .deli-solution-logo .image {
  width: 250%;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-head .deli-solution-logo .image {
    width: 150%;
  }
}

.deli-solution .inner .deli-solution-cont {
  margin-top: 10px;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont {
    padding: 30px;
    margin-top: 20px;
  }
}

.deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
  margin-bottom: 30px;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: initial;
            flex-flow: initial;
  }
}

.deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text {
  background-color: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text {
    padding: 0 20px;
    margin-right: 20px;
  }
}

.deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text .title {
  text-align: center;
  font-size: 1.3rem;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text .title {
    font-size: 1.8rem;
  }
}

.deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text .desc {
  margin-top: 10px;
  font-size: 1rem;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .text .desc {
    font-size: 1.2rem;
    margin-top: 20px;
  }
}

.deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .image {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item .image {
    width: 50%;
  }
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item:nth-child(2) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
            flex-flow: row-reverse;
  }
}

@media print, screen and (min-width: 768px) {
  .deli-solution .inner .deli-solution-cont .deli-solution-list .deli-solution-item:nth-child(2) .text {
    margin-right: 0;
    margin-left: 20px;
  }
}

.deli-action .inner .tel {
  margin-top: 30px;
}

.deli-action .inner .tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #ca353b;
  -webkit-transition: color 0.5s;
  transition: color 0.5s;
}

@media print, screen and (min-width: 768px) {
  .deli-action .inner .tel a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: initial;
            flex-flow: initial;
  }
}

.deli-action .inner .tel a:hover {
  color: orange;
  -webkit-transition: color 0.5s;
  transition: color 0.5s;
}

.deli-action .inner .tel a .tel-desc {
  font-size: 1.3rem;
}

@media print, screen and (min-width: 768px) {
  .deli-action .inner .tel a .tel-desc {
    font-size: 1.8rem;
  }
}

.deli-action .inner .tel a .en {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .deli-action .inner .tel a .en {
    margin-right: 10px;
    font-size: 12px;
  }
}

.deli-action .inner .tel a .number {
  font-family: futura-pt, sans-serif;
  font-size: 2rem;
}

.deli-action .inner .contact-btn {
  margin-top: 0;
}

.vacant .vacant_top {
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top {
    margin-top: 70px;
  }
}

.vacant .vacant_top .inner .vacant_top-cont {
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont {
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image {
  /* ▼【重要】ここに追加：ボタン配置の基準点にします */
  position: relative;
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .sm {
  display: block;
  width: 100%;
  /* 画像幅を確保するために念のため追加推奨 */
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .sm {
    display: none;
  }
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .pc {
  display: none;
  width: 100%;
  /* 画像幅を確保するために念のため追加推奨 */
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .pc {
    display: block;
  }
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .vacant_top-link {
  background-color: transparent;
  border: none;
  position: absolute;
  /* ▼スマホ用の配置（ここはそのままでもOKですが、bottom推奨） */
  /* top: 75%; をやめて bottom にすると画像高さが変わっても安定します */
  bottom: 20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 90%;
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .vacant_top-link {
    width: 600px;
    /* ▼PC配置の修正 */
    /* スマホの left/transform 指定を解除する */
    /* top: 95% だとボタンが下にはみ出るため bottom で下端からの位置を指定 */
    top: auto;
    bottom: 30px;
    /* 画像の下端から30px上に配置 */
  }
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .vacant_top-link .vacant_top-btn {
  font-size: 1.2rem;
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .vacant_top-link .vacant_top-btn {
    width: 600px;
    font-size: 2rem;
  }
}

.vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item .image .vacant_top-link .vacant_top-btn:hover {
  background-color: #2EAE57;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .vacant .vacant_top .inner .vacant_top-cont .vacant_top-list .vacant_top-item {
    width: 100%;
  }
}

.vacant .text {
  font-size: 1.2rem;
}

.problem-cont {
  padding-top: 20px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 10px;
}

@media print, screen and (min-width: 768px) {
  .problem-cont {
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 10px;
  }
}

@media print, screen and (min-width: 768px) {
  .problem-cont .problem-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.problem-cont .problem-list .problem-item .image .sm {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .problem-cont .problem-list .problem-item .image .sm {
    display: none;
  }
}

.problem-cont .problem-list .problem-item .image .pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .problem-cont .problem-list .problem-item .image .pc {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .problem-cont .problem-list .problem-item {
    width: 100%;
  }
}

.problem-cont .problem-list .problem-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.problem-cont .problem-list .problem-item .text .capitalize {
  text-transform: capitalize;
}

.problem-cont .problem-list .problem-item .text .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.3rem;
}

.problem-cont .problem-list .problem-item .text .desc {
  padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .problem-cont .problem-list .problem-item .text .desc {
    font-size: 20px;
  }
}

.solution-cont {
  padding-top: 20px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 10px;
}

@media print, screen and (min-width: 768px) {
  .solution-cont {
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 10px;
  }
}

@media print, screen and (min-width: 768px) {
  .solution-cont .solution-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.solution-cont .solution-list .solution-item .image .sm {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .solution-cont .solution-list .solution-item .image .sm {
    display: none;
  }
}

.solution-cont .solution-list .solution-item .image .pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .solution-cont .solution-list .solution-item .image .pc {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .solution-cont .solution-list .solution-item {
    width: 100%;
  }
}

.solution-cont .solution-list .solution-item .act-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

.solution-cont .solution-list .solution-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.solution-cont .solution-list .solution-item .text .capitalize {
  text-transform: capitalize;
}

.solution-cont .solution-list .solution-item .text .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.3rem;
}

.solution-cont .solution-list .solution-item .text .desc {
  padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .solution-cont .solution-list .solution-item .text .desc {
    font-size: 20px;
  }
}

.cta-cont {
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
  .cta-cont {
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.cta-cont .cta-list .cta-item .image .sm {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list .cta-item .image .sm {
    display: none;
  }
}

.cta-cont .cta-list .cta-item .image .pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list .cta-item .image .pc {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list .cta-item {
    width: 100%;
  }
}

.cta-cont .cta-list .cta-item .cta-link {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 80%;
  right: 5%;
}

.cta-cont .cta-list .cta-item .cta-link .cta-btn {
  width: 100%;
  padding: 20px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 1.3rem;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list .cta-item .cta-link .cta-btn {
    width: 355px;
  }
}

.cta-cont .cta-list .cta-item .cta-link .cta-btn:hover {
  background-color: #2EAE57;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.cta-cont .cta-list .cta-item .cta-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
}

.cta-cont .cta-list .cta-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.cta-cont .cta-list .cta-item .text .capitalize {
  text-transform: capitalize;
}

.cta-cont .cta-list .cta-item .text .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.3rem;
}

.cta-cont .cta-list .cta-item .text .desc {
  padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .cta-cont .cta-list .cta-item .text .desc {
    font-size: 20px;
  }
}

.emphasis-cont {
  padding: 0;
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont {
    padding: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list .emphasis-item {
    width: 100%;
    position: relative;
  }
}

.emphasis-cont .emphasis-list .emphasis-item .image {
  width: 100%;
}

.emphasis-cont .emphasis-list .emphasis-item .image img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.emphasis-cont .emphasis-list .emphasis-item .image .sm {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list .emphasis-item .image .sm {
    display: none;
  }
}

.emphasis-cont .emphasis-list .emphasis-item .image .pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list .emphasis-item .image .pc {
    display: block;
  }
}

.emphasis-cont .emphasis-list .emphasis-item .emphasis-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
  background-color: transparent;
  border: none;
  /*
        position: absolute;
        top: 80%;
        right: 5%;
        */
}

.emphasis-cont .emphasis-list .emphasis-item .emphasis-link .cta-btn {
  width: 100%;
  padding: 20px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 3px 6px #00000029;
          box-shadow: 0px 3px 6px #00000029;
  background-color: #ff0000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 1.3rem;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list .emphasis-item .emphasis-link .cta-btn {
    width: 355px;
  }
}

.emphasis-cont .emphasis-list .emphasis-item .emphasis-link .cta-btn:hover {
  background-color: #2EAE57;
  -webkit-transition: background 0.5s;
  transition: background 0.5s;
}

.emphasis-cont .emphasis-list .emphasis-item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.emphasis-cont .emphasis-list .emphasis-item .text .capitalize {
  text-transform: capitalize;
}

.emphasis-cont .emphasis-list .emphasis-item .text .title {
  text-align: center;
  font-weight: bold;
  font-size: 1.3rem;
}

.emphasis-cont .emphasis-list .emphasis-item .text .desc {
  padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
  .emphasis-cont .emphasis-list .emphasis-item .text .desc {
    font-size: 20px;
  }
}
/*# sourceMappingURL=style.css.map */