@charset "UTF-8";
/* まずはリセット */
* {
  margin: 0;
  padding: 0;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro",
 "MS P明朝", "MS PMincho", serif;
}

@media (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

html {
  scroll-behavior: smooth;
}

@media (min-width: 769px) {
  header ul {
    position: fixed;
    width: 100%;
    /*height: calc(80/1920*100vw);*/
    z-index: 1;
    background-color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: calc(24/1920*100vw);
  }
  header ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: calc(40/1920*100vw);
    padding: calc(10/1920*100vw) 0;
  }
  header ul li:first-of-type {
    margin-right: auto;
    margin-left: calc(40/1920*100vw);
    padding-bottom: 0;
  }
  header ul li a {
    color: #f98491;
    text-decoration: none;
  }
  header ul li a img {
    width: calc(156/1920*100vw);
  }
}

@media (max-width: 1240px) {
  header ul {
    font-size: calc(20/1240*100vw);
  }
  header ul li {
    margin-right: calc(30/1240*100vw);
  }
}

@media (max-width: 768px) {
  header .btn-gNav {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 3;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
  }
  header .btn-gNav span {
    position: absolute;
    width: 100%;
    height: 4px;
    background: #666;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
  }
  header .btn-gNav span:nth-child(1) {
    top: 0;
  }
  header .btn-gNav span:nth-child(2) {
    top: 10px;
  }
  header .btn-gNav span:nth-child(3) {
    top: 20px;
  }
  header .btn-gNav.open span:nth-child(1) {
    background: #fff;
    top: 6px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  header .btn-gNav.open span:nth-child(2), header .btn-gNav.open span:nth-child(3) {
    top: 6px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  header #gNav {
    position: fixed;
    top: 0;
    right: -100%;
    width: 70%;
    height: 100%;
    background: #444;
    font-size: 16px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 2;
    padding-top: 50px;
    -webkit-transition: .3s;
    transition: .3s;
  }
  header #gNav.open {
    right: 0px;
  }
  header .gNav-menu {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    margin: 0;
    padding: 0;
  }
  header .gNav-menu li {
    display: block;
    padding: 20px 30px;
  }
  header .gNav-menu li a {
    color: #ffffff;
    text-decoration: none;
  }
  header .gNav-menu li a img {
    width: 50%;
  }
}

.top {

  padding-bottom: calc(160/1920*100vw);
}

.top .top_box {
  position: relative;
  background: url(../images/header.png) left calc(607/1920*100vw) top calc(130/1920*100vw)/calc(706/1920*100vw) auto no-repeat;
  overflow: hidden;

  -webkit-animation-duration: 3s;
          animation-duration: 3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-name: kv;
          animation-name: kv;
}

@media (max-width: 1240px) {
  .top .top_box {
    background: url(../images/header.png) left calc(350/1240*100vw) top calc(130/1240*100vw)/calc(540/1240*100vw) auto no-repeat;
  }
}

@media (max-width: 768px) {
  .top .top_box {
    background: url(../images/header.png) left calc(77/768*100vw) top calc(100/768*100vw)/calc(600/768*100vw) auto no-repeat;
  }
}

.top .top_left,
.top .top_right {
  display: inline-block;
  position: absolute;
  font-size: calc(40/1920*100vw);
  font-weight: bold;
  background: linear-gradient(25deg, rgba(251, 112, 153, 0.75), rgba(254, 220, 69, 0.75));
  color: #2f2b2b;
  padding: calc(0/1920*100vw) calc(48/1920*100vw);
  opacity: 0;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@media (max-width: 1240px) {
  .top .top_left,
  .top .top_right {
    font-size: calc(30/1240*100vw);
  }
}

@media (max-width: 768px) {
  .top .top_left,
  .top .top_right {
    font-size: calc(42/768*100vw);
  }
}

.top .top_left {
  top: calc(390/1920*100vw);
  -webkit-animation-name: top_left;
          animation-name: top_left;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

@media (max-width: 1240px) {
  .top .top_left {
    top: calc(330/1240*100vw);
  }
}

@media (max-width: 768px) {
  .top .top_left {
    top: calc(730/768*100vw);
  }
}

@media (min-width: 769px) {
  @-webkit-keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(425/1920*100vw)) rotate(2deg);
              transform: translateX(calc(425/1920*100vw)) rotate(2deg);
    }
  }
  @keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(425/1920*100vw)) rotate(2deg);
              transform: translateX(calc(425/1920*100vw)) rotate(2deg);
    }
  }
}

@media (max-width: 1240px) {
  @-webkit-keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(220/1240*100vw)) rotate(2deg);
              transform: translateX(calc(220/1240*100vw)) rotate(2deg);
    }
  }
  @keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(220/1240*100vw)) rotate(2deg);
              transform: translateX(calc(220/1240*100vw)) rotate(2deg);
    }
  }
}

@media (max-width: 768px) {
  @-webkit-keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(152/768*100vw));
              transform: translateX(calc(152/768*100vw));
    }
  }
  @keyframes top_left {
    0% {
      opacity: 0;
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(152/768*100vw));
              transform: translateX(calc(152/768*100vw));
    }
  }
}

.top .top_right {
  top: calc(488/1920*100vw);
  -webkit-animation-name: top_right;
          animation-name: top_right;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

@media (max-width: 1240px) {
  .top .top_right {
    top: calc(400/1240*100vw);
  }
}

@media (max-width: 768px) {
  .top .top_right {
    top: calc(810/768*100vw);
  }
}

@media (min-width: 769px) {
  @-webkit-keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(1920/1920*100vw));
              transform: translateX(calc(1920/1920*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(808/1920*100vw)) rotate(-2deg);
              transform: translateX(calc(808/1920*100vw)) rotate(-2deg);
    }
  }
  @keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(1920/1920*100vw));
              transform: translateX(calc(1920/1920*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(808/1920*100vw)) rotate(-2deg);
              transform: translateX(calc(808/1920*100vw)) rotate(-2deg);
    }
  }
}

@media (max-width: 1240px) {
  @-webkit-keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(1240/1240*100vw));
              transform: translateX(calc(1240/1240*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(520/1240*100vw)) rotate(-2deg);
              transform: translateX(calc(520/1240*100vw)) rotate(-2deg);
    }
  }
  @keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(1240/1240*100vw));
              transform: translateX(calc(1240/1240*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(520/1240*100vw)) rotate(-2deg);
              transform: translateX(calc(520/1240*100vw)) rotate(-2deg);
    }
  }
}

@media (max-width: 768px) {
  @-webkit-keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(768/768*100vw));
              transform: translateX(calc(768/768*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(60/768*100vw));
              transform: translateX(calc(60/768*100vw));
    }
  }
  @keyframes top_right {
    0% {
      opacity: 0;
      -webkit-transform: translateX(calc(768/768*100vw));
              transform: translateX(calc(768/768*100vw));
    }
    100% {
      opacity: 1;
      -webkit-transform: translateX(calc(60/768*100vw));
              transform: translateX(calc(60/768*100vw));
    }
  }
}

.top_under {
  position: absolute;
  color: #2f2b2b;
  top: calc(888/1920*100vw);
  width: 100%;
  text-align: center;
  font-size: calc(24/1920*100vw);
  font-weight: bold;
  -webkit-animation-duration: 3s;
          animation-duration: 3s;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
  opacity: 0;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-name: kv;
          animation-name: kv;
}

@media (max-width: 1240px) {
  .top_under {
    top: calc(758/1240*100vw);
    font-size: calc(24/1240*100vw);
  }
}

@media (max-width: 768px) {
  .top_under {
    top: calc(958/768*100vw);
    font-size: calc(24/768*100vw);
    line-height: 150%;
  }
}

@-webkit-keyframes kv {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes kv {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.yellow {
  background-color: #fbd777;
}

.white {
  background-color: #f5f5f5;
}

.greet,
.service,
.affiliat,
.recruit,
.company,
.contact {
  color: #2f2b2b;
  padding-bottom: calc(120/1920*100vw);
}

.greet .hidden,
.service .hidden,
.affiliat .hidden,
.recruit .hidden,
.company .hidden,
.contact .hidden {
  position: relative;
  overflow: hidden;
}

.service h2,
.affiliat h2,
.recruit h2,
.company h2,
.contact h2 {
  font-size: calc(54/1920*100vw);
  text-align: center;
  padding: calc(120/1920*100vw) 0;
}

@media (max-width: 768px) {
  .service h2,
  .affiliat h2,
  .recruit h2,
  .company h2,
  .contact h2 {
    font-size: calc(54/768*100vw);
  }
}

.news {
  color: #2f2b2b;
}

.news .news_circle {
  margin-top: calc(-100/1920*100vw);
  text-align: center;
  margin-bottom: calc(-20/1920*100vw);
}

@media (max-width: 1240px) {
  .news .news_circle {
    margin-top: calc(-60/1240*100vw);
  }
}

@media (max-width: 768px) {
  .news .news_circle {
    margin-top: calc(-90/768*100vw);
    margin-bottom: calc(-20/768*100vw);
  }
}

.news .news_circle h2 {
  font-size: calc(48/1920*100vw);
  display: inline-block;
  background-color: #fbd777;
  padding-top: calc(32/1920*100vw);
  width: calc(400/1920*100vw);
  height: calc(75/1920*100vw);
  border-top-left-radius: calc(200/1920*100vw) calc(100/1920*100vw);
  border-top-right-radius: calc(200/1920*100vw) calc(100/1920*100vw);
}

@media (max-width: 768px) {
  .news .news_circle h2 {
    font-size: calc(48/768*100vw);
    padding-top: calc(32/768*100vw);
    width: calc(400/768*100vw);
    height: calc(75/768*100vw);
    border-top-left-radius: calc(200/768*100vw) calc(100/768*100vw);
    border-top-right-radius: calc(200/768*100vw) calc(100/768*100vw);
  }
}

.news .news_box {
  background-color: #fbd777;
  font-size: calc(30/1920*100vw);
  padding: calc(40/1920*100vw) calc(200/1920*100vw);
  margin: 0 auto;
  line-height: 200%;
}

@media (max-width: 1240px) {
  .news .news_box {
    padding: calc(40/1240*100vw) calc(120/1240*100vw);
  }
}

@media (max-width: 768px) {
  .news .news_box {
    font-size: calc(30/768*100vw);
    padding: calc(40/768*100vw) calc(40/768*100vw);
  }
}

.news .news_box dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.news .news_box dl dt {
  width: calc(180/1920*100vw);
}

@media (max-width: 1240px) {
  .news .news_box dl dt {
    width: calc(180/1240*100vw);
  }
}

@media (max-width: 768px) {
  .news .news_box dl dt {
    width: calc(180/768*100vw);
  }
}

.news .news_box dl dd {
  width: calc(1300/1920*100vw);
  margin-bottom: calc(40/1920*100vw);
}

@media (max-width: 1240px) {
  .news .news_box dl dd {
    width: calc(790/1240*100vw);
  }
}

@media (max-width: 768px) {
  .news .news_box dl dd {
    width: calc(460/768*100vw);
  }
}

.greet h2 {
  font-size: calc(54/1920*100vw);
  text-align: center;
  padding: calc(120/1920*100vw) 0;
}

@media (max-width: 768px) {
  .greet h2 {
    font-size: calc(50/768*100vw);
    margin: 0 calc(30/768*100vw);
    line-height: 150%;
    padding: calc(120/768*100vw) 0;
  }
  .greet h2 img {
    width: 100%;
  }
}

.greet ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.greet ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.greet ul .greet_left {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  width: calc(860/1920*100vw);
  margin-right: calc(120/1920*100vw);
  opacity: 0;
  -webkit-transform: translateX(calc(-200/1920*100vw));
          transform: translateX(calc(-200/1920*100vw));
}

@media (max-width: 768px) {
  .greet ul .greet_left {
    width: calc(708/768*100vw);
    margin: 0 calc(30/768*100vw) calc(120/768*100vw);
  }
}

.greet ul .greet_left.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.greet ul .greet_left p {
  margin-bottom: calc(48/1920*100vw);
  font-size: calc(30/1920*100vw);
}

@media (max-width: 768px) {
  .greet ul .greet_left p {
    font-size: calc(30/768*100vw);
    line-height: 175%;
    margin-bottom: calc(48/768*100vw);
  }
}

.greet ul .greet_right {
  opacity: 0;
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
}

.greet ul .greet_right.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

@media (max-width: 768px) {
  .greet ul .greet_right {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.greet ul .greet_right .greet_right_top {
  width: calc(339/1920*100vw);
  margin-right: calc(40/1920*100vw);
}

@media (max-width: 768px) {
  .greet ul .greet_right .greet_right_top {
    width: calc(589/768*100vw);
    margin-right: 0;
  }
}

.greet ul .greet_right .greet_right_top img {
  width: 100%;
}

.greet ul .greet_right .greet_right_under {
  font-size: calc(30/1920*100vw);
}

@media (max-width: 768px) {
  .greet ul .greet_right .greet_right_under {
    font-size: calc(30/768*100vw);
    line-height: 175%;
  }
}

.fade_top {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 1s;
  transition: 1s;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}

.fade_top.active {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.service .service_box {
  margin: 0 auto;
  color: #ffffff;
  padding: 0 calc(40/1920*100vw);
  overflow: hidden;
}

@media (max-width: 768px) {
  .service .service_box {
    padding: 0 calc(40/768*100vw);
  }
}

.service .service_box h3 {
  font-size: calc(55/1920*100vw);
  padding: calc(30/1920*100vw) 0;
}

@media (max-width: 768px) {
  .service .service_box h3 {
    font-size: calc(64/768*100vw);
    padding: calc(60/768*100vw) 0;
  }
}

.service .service_box .service_top {
  background: url(../images/service1.png) left top 0/calc(1747/1920*100vw) auto no-repeat;
  background-size: cover;
  margin: 0 auto;
  width: calc(1746/1920*100vw);
  overflow: hidden;
  opacity: 0;
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
}

.service .service_box .service_top:before {
  content: '';
  background: inherit;
  -webkit-filter: blur(4px);
  -moz-filter: blur(4px);
  -o-filter: blur(4px);
  -ms-filter: blur(4px);
  filter: blur(4px);
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  z-index: -1;
}

@media (max-width: 768px) {
  .service .service_box .service_top {
    width: calc(648/768*100vw);
  }
}

.service .service_box .service_top.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.service .service_box .service_top p {
  width: calc(800/1920*100vw);
  margin: 0 auto calc(30/1920*100vw);
}

.service .service_box .service_under {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (max-width: 768px) {
  .service .service_box .service_under {
    -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;
  }
}

.service .service_box .service_under .service_under_left {
  background: url(../images/service2.png) left top 0/calc(873/1920*100vw) auto no-repeat;
  background-size: cover;
  width: calc(873/1920*100vw);
  opacity: 0;
  -webkit-transform: translateX(calc(-200/1920*100vw));
          transform: translateX(calc(-200/1920*100vw));
}

@media (max-width: 768px) {
  .service .service_box .service_under .service_under_left {
    width: calc(648/768*100vw);
  }
}

.service .service_box .service_under .service_under_left.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.service .service_box .service_under .service_under_left p {
  width: calc(740/1920*100vw);
  margin: 0 auto calc(40/1920*100vw);
}

.service .service_box .service_under .service_under_right {
  background: url(../images/service3.png) left top 0/calc(874/1920*100vw) auto no-repeat;
  background-size: cover;
  width: calc(874/1920*100vw);
  opacity: 0;
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
  overflow: hidden;
}

.service .service_box .service_under .service_under_right:before {
  content: '';
  background: inherit;
  -webkit-filter: blur(2px);
  -moz-filter: blur(2px);
  -o-filter: blur(2px);
  -ms-filter: blur(2px);
  filter: blur(2px);
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  z-index: -1;
}

@media (max-width: 768px) {
  .service .service_box .service_under .service_under_right {
    width: calc(648/768*100vw);
  }
}

.service .service_box .service_under .service_under_right.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.service .service_box .service_under .service_under_right p {
  width: calc(740/1920*100vw);
  margin: 0 auto calc(40/1920*100vw);
}

.service .service_box .service_top,
.service .service_box .service_under_left,
.service .service_box .service_under_right {
  text-align: center;
  padding: calc(30/1920*100vw) 0;
}

@media (max-width: 768px) {
  .service .service_box .service_top,
  .service .service_box .service_under_left,
  .service .service_box .service_under_right {
    padding: calc(30/768*100vw) 0;
  }
}

.service .service_box .service_top p,
.service .service_box .service_under_left p,
.service .service_box .service_under_right p {
  font-size: calc(24/1920*100vw);
}

@media (max-width: 768px) {
  .service .service_box .service_top p,
  .service .service_box .service_under_left p,
  .service .service_box .service_under_right p {
    font-size: calc(30/768*100vw);
    width: calc(590/768*100vw) !important;
    line-height: 150%;
  }
}

.service .service_box .detail {
  font-size: calc(45/1920*100vw);
  color: #ffffff;
  text-decoration: none;
  border: 2px #ffffff solid;
  border-radius: calc(60/1920*100vw);
  padding: calc(16/1920*100vw) 0;
  width: calc(600/1920*100vw);
  display: block;
  margin: 0 auto;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media (max-width: 768px) {
  .service .service_box .detail {
    font-size: calc(45/768*100vw);
    width: calc(460/768*100vw);
    border-radius: calc(60/768*100vw);
    padding: calc(16/768*100vw) 0;
  }
}

.service .service_box .detail:hover {
  background-color: #ffffff;
  color: #2f2b2b;
}

.affiliat h3 {
  font-size: calc(48/1920*100vw);
  padding: calc(48/1920*100vw) 0;
  margin-bottom: calc(48/1920*100vw);
  border-bottom: 1px solid #2f2b2b;
}

@media (max-width: 768px) {
  .affiliat h3 {
    font-size: calc(48/768*100vw);
  }
}

.affiliat .group3 h3 {
  padding: 0 0 calc(19/1920*100vw) 0;
}

.affiliat ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding: 0 calc(80/1920*100vw);
}

@media (max-width: 768px) {
  .affiliat ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.affiliat ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  width: calc(520/1920*100vw);
}

@media (max-width: 768px) {
  .affiliat ul li {
    width: calc(700/768*100vw);
    margin-bottom: calc(100/768*100vw);
  }
}

.affiliat ul li img {
  width: 100%;
}

.affiliat ul li .box {
  border: 1px solid #2f2b2b;
  padding: calc(48/1920*100vw);
  height: calc(848/1920*100vw);
}

@media (max-width: 768px) {
  .affiliat ul li .box {
    height: initial;
    padding: calc(24/768*100vw);
  }
}

.affiliat ul li .box .group_img {
  margin-bottom: calc(36/1920*100vw);
}

.affiliat ul li p {
  font-size: calc(30/1920*100vw);
}

@media (max-width: 768px) {
  .affiliat ul li p {
    font-size: calc(30/768*100vw);
    line-height: 175%;
    margin-bottom: calc(60/768*100vw);
  }
}

.affiliat ul li a {
  display: block;
  color: #2f2b2b;
  width: calc(240/1920*100vw);
  text-align: center;
  font-size: calc(30/1920*100vw);
  border: 1px solid #2f2b2b;
  padding: calc(10/1920*100vw);
  margin: calc(30/1920*100vw) 0 0 auto;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media (max-width: 768px) {
  .affiliat ul li a {
    font-size: calc(30/768*100vw);
    width: calc(240/768*100vw);
    padding: calc(16/768*100vw);
  }
}

.affiliat ul li a:hover {
  color: #f5f5f5;
  background-color: #2f2b2b;
}

.affiliat ul .group1,
.affiliat ul .group2,
.affiliat ul .group3 {
  opacity: 0;
}

.affiliat ul .group1.show,
.affiliat ul .group2.show,
.affiliat ul .group3.show {
  opacity: 1;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.affiliat ul .group1 {
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
}

.affiliat ul .group1.show {
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
}

.affiliat ul .group2 {
  -webkit-transform: translateX(calc(-100/1920*100vw));
          transform: translateX(calc(-100/1920*100vw));
}

.affiliat ul .group2.show {
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
}

.affiliat ul .group3 {
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
}

.affiliat ul .group3.show {
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
}

.recruit h3 {
  font-size: calc(40/1920*100vw);
  text-align: center;
  padding: calc(16/1920*100vw) 0;
  color: #2f2b2b;
}

@media (max-width: 768px) {
  .recruit h3 {
    font-size: calc(40/768*100vw);
  }
}

.recruit ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding: 0 calc(80/1920*100vw);
}

@media (max-width: 768px) {
  .recruit ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.recruit ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  width: calc(835/1920*100vw);
}

@media (max-width: 768px) {
  .recruit ul li {
    width: calc(700/768*100vw);
    margin-bottom: calc(100/768*100vw);
  }
}

.recruit ul li img {
  width: 100%;
}

.recruit ul li a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.recruit ul li a:hover {
  opacity: 0.85;
}

.recruit ul .recruit1,
.recruit ul .recruit2 {
  opacity: 0;
}

.recruit ul .recruit1.show,
.recruit ul .recruit2.show {
  opacity: 1;
}

.recruit ul .recruit1 {
  -webkit-transform: translateX(calc(100/1920*100vw));
          transform: translateX(calc(100/1920*100vw));
}

.recruit ul .recruit1.show {
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.recruit ul .recruit2 {
  -webkit-transform: translateX(calc(-100/1920*100vw));
          transform: translateX(calc(-100/1920*100vw));
}

.recruit ul .recruit2.show {
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.company dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: calc(30/1920*100vw);
  width: calc(1000/1920*100vw);
  -webkit-transition: 1s;
  transition: 1s;
  opacity: 0;
  margin: 0 auto;
  -webkit-transform: translateY(calc(-150/1920*100vw));
          transform: translateY(calc(-150/1920*100vw));
}

@media (max-width: 768px) {
  .company dl {
    font-size: calc(30/768*100vw);
    width: calc(700/768*100vw);
  }
}

.company dl.show {
  opacity: 1;
  -webkit-transform: translate(0px) !important;
          transform: translate(0px) !important;
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
  -webkit-transition-duration: 2s;
          transition-duration: 2s;
}

.company dl dt,
.company dl dd {
  margin-bottom: calc(20/1920*100vw);
  border-bottom: 2px solid #c1c1c1;
}

@media (max-width: 768px) {
  .company dl dt,
  .company dl dd {
    margin-bottom: calc(40/768*100vw);
    padding-bottom: calc(12/768*100vw);
  }
}

.company dl dt {
  width: calc(300/1920*100vw);
}

@media (max-width: 768px) {
  .company dl dt {
    width: calc(300/768*100vw);
  }
}

.company dl dd {
  width: calc(700/1920*100vw);
  text-indent: 0;
}

@media (max-width: 768px) {
  .company dl dd {
    width: calc(400/768*100vw);
  }
}

.contact h2 {
  padding-bottom: calc(60/1920*100vw);
}

.contact .form_box {
  width: calc(840/1920*100vw);
  margin: 0 auto;
}

@media (max-width: 768px) {
  .contact .form_box {
    width: calc(636/768*100vw);
  }
}

.contact .form_box .form_form {
  margin: calc(40/1920*100vw) 0;
}

.contact .form_box .form_input {
  display: block;
  border: none;
  border-bottom: 1px solid #11B093;
  border-radius: calc(12/1920*100vw);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(98%, transparent), color-stop(2%, #11B093)) no-repeat;
  background: linear-gradient(to bottom, transparent 98%, #11B093 2%) no-repeat;
  background-position: calc(-900/1920*100vw) 0;
  background-size: 100% 100%;
  background-color: #ffe9ac;
  font-size: calc(30/1920*100vw);
  width: calc(800/1920*100vw);
  margin-bottom: calc(30/1920*100vw);
  padding: calc(18/1920*100vw);
  -webkit-transition: .3s;
  transition: .3s;
}

@media (max-width: 768px) {
  .contact .form_box .form_input {
    background-position: calc(-868/768*100vw) 0;
    font-size: calc(30/768*100vw);
    width: calc(600/768*100vw);
    padding: calc(18/768*100vw);
  }
}

.contact .form_box .form_input:focus, .contact .form_box .form_input:valid {
  outline: none;
  background-position: 0 0;
}

.contact .form_box .form_input:focus::-webkit-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_input:focus:-ms-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_input:focus::-ms-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_input:focus::placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_area {
  border: 1px solid #11B093;
  background-color: #ffe9ac;
  width: calc(800/1920*100vw);
  height: calc(200/1920*100vw);
  padding: calc(18/1920*100vw);
  font-size: calc(30/1920*100vw);
  border-radius: calc(12/1920*100vw);
  -webkit-transition: .3s;
  transition: .3s;
}

@media (max-width: 768px) {
  .contact .form_box .form_area {
    font-size: calc(30/768*100vw);
    width: calc(620/768*100vw);
    height: calc(200/768*100vw);
  }
}

.contact .form_box .form_area:focus, .contact .form_box .form_area:valid {
  outline: none;
  border: 2px solid #11B093;
}

.contact .form_box .form_area:focus::-webkit-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_area:focus:-ms-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_area:focus::-ms-input-placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_area:focus::placeholder {
  color: #ffe9ac;
}

.contact .form_box .form_p {
  font-size: calc(24/1920*100vw);
  margin: 0 auto calc(40/1920*100vw);
}

@media (max-width: 768px) {
  .contact .form_box .form_p {
    font-size: calc(24/768*100vw);
    line-height: 175%;
    margin-bottom: calc(24/768*100vw);
  }
}

.contact .form_box .p_mark {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: calc(40/1920*100vw);
}

.contact .form_box .p_mark img {
  width: 80px;
}

.contact .form_box .p_mark .pmark-text-posi {
  margin-left: calc(24/1920*100vw);
}

.contact .form_box .form_agree {
  font-size: calc(24/1920*100vw);
  margin: calc(20/1920*100vw) 0 calc(60/1920*100vw);
}

@media (max-width: 768px) {
  .contact .form_box .form_agree {
    font-size: calc(24/768*100vw);
    margin-bottom: calc(48/768*100vw);
  }
}

.contact .form_box .form_agree input[type=checkbox] {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

.contact .form_box .form_agree label {
  margin-left: calc(16/1920*100vw);
}

@media (max-width: 768px) {
  .contact .form_box .form_agree label {
    margin-left: calc(16/768*100vw);
  }
}

.contact .form_box .form_btn {
  -webkit-appearance: none;
  display: block;
  color: #ffffff;
  background-color: #11B093;
  font-size: calc(30/1920*100vw);
  width: calc(400/1920*100vw);
  margin: 0 auto;
  padding: calc(20/1920*100vw) 0;
  border: none;
  border-radius: calc(12/1920*100vw);
  -webkit-box-shadow: -3px -3px 4px -2px gray inset;
          box-shadow: -3px -3px 4px -2px gray inset;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

@media (max-width: 768px) {
  .contact .form_box .form_btn {
    font-size: calc(30/768*100vw);
    width: calc(400/768*100vw);
    height: calc(120/768*100vw);
    border-radius: calc(12/768*100vw);
  }
}

.contact .form_box .form_btn:hover {
  background-color: #14ccac;
  cursor: pointer;
}

.contact .terms_check_box {
  border: 1px solid #ccc;
  padding: calc(30/1920*100vw) calc(20/1920*100vw);
  margin: 0 auto calc(30/1920*100vw);
  width: calc(800/1920*100vw);
  height: calc(300/1920*100vw);
  overflow-x: hidden;
  overflow-y: scroll;
}

@media (max-width: 768px) {
  .contact .terms_check_box {
    width: calc(636/768*100vw);
    padding: calc(30/768*100vw) calc(20/768*100vw);
    margin: 0 auto calc(80/768*100vw);
  }
}

.contact .terms_check_box .terms_txt {
  font-size: calc(24/1920*100vw);
}

@media (max-width: 768px) {
  .contact .terms_check_box .terms_txt {
    font-size: calc(24/768*100vw);
  }
}

.contact .terms_check_box .terms_txt h4 {
  margin-bottom: calc(20/1920*100vw);
}

.contact .terms_check_box .terms_txt dt {
  font-weight: bold;
  margin-bottom: 4calc 8/"1920*100vw";
}

.contact .terms_check_box .terms_txt dd {
  margin-bottom: calc(20/1920*100vw);
  line-height: 150%;
}

@media (max-width: 768px) {
  .contact .terms_check_box .terms_txt dd {
    margin-bottom: calc(20/768*100vw);
  }
}

.contact .terms_check {
  text-align: center;
  margin-bottom: calc(30/1920*100vw);
  font-weight: bold;
  font-size: calc(24/1920*100vw);
}

@media (max-width: 768px) {
  .contact .terms_check {
    font-size: calc(24/768*100vw);
    margin-bottom: calc(30/768*100vw);
  }
}

.contact .terms_check input[type=checkbox] {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

.contact .terms_check label {
  margin-left: calc(16/1920*100vw);
}

@media (max-width: 768px) {
  .contact .terms_check label {
    margin-left: calc(16/768*100vw);
  }
}

footer {
  color: #2f2b2b;
  font-size: calc(20/1920*100vw);
  padding: calc(30/1920*100vw);
}

@media (max-width: 768px) {
  footer {
    font-size: calc(20/768*100vw);
  }
}

footer ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin: 0 auto;
  margin-bottom: calc(20/1920*100vw);
}

footer ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

footer ul li a {
  color: #2f2b2b;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

footer ul li a:hover {
  opacity: 0.75;
}

footer div {
  text-align: center;
}

/** ここから応募フォーム確認画面 **/
.confirm {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro",
 "MS P明朝", "MS PMincho", serif;
}

.confirm .title-box {
  margin: calc(60/1920*100vw);
  text-align: center;
}

@media (max-width: 768px) {
  .confirm .title-box {
    margin: calc(60/768*100vw) calc(36/768*100vw);
  }
}

.confirm .title-box .contact-title {
  font-size: calc(36/1920*100vw);
  font-weight: bold;
  margin-bottom: calc(30/1920*100vw);
}

@media (max-width: 768px) {
  .confirm .title-box .contact-title {
    font-size: calc(40/768*100vw);
    margin-bottom: calc(60/768*100vw);
  }
}

.confirm .answer_box {
  width: calc(1000/1920*100vw);
  max-width: 800px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .confirm .answer_box {
    width: calc(600/768*100vw);
  }
}

.confirm .answer_box .answer_group {
  margin-bottom: calc(16/1920*100vw);
}

@media (max-width: 768px) {
  .confirm .answer_box .answer_group {
    margin-bottom: calc(16/768*100vw);
  }
}

.confirm .answer_box .answer_group .answer_title {
  font-size: calc(30/1920*100vw);
  font-weight: bold;
  margin-bottom: calc(10/1920*100vw);
}

@media (max-width: 768px) {
  .confirm .answer_box .answer_group .answer_title {
    font-size: calc(30/768*100vw);
    margin-bottom: calc(10/768*100vw);
  }
}

.confirm .answer_box hr {
  margin-bottom: calc(60/1920*100vw);
}

@media (max-width: 768px) {
  .confirm .answer_box hr {
    margin-bottom: calc(60/768*100vw);
  }
}

.confirm .submit_box {
  margin: calc(20/1920*100vw) 0 calc(60/1920*100vw) 0;
  text-align: center;
}

@media (max-width: 768px) {
  .confirm .submit_box {
    margin: calc(20/768*100vw) 0 calc(100/768*100vw) 0;
  }
}

.confirm .submit_box .btn-back,
.confirm .submit_box .btn-submit {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-size: calc(30/1920*100vw);
  padding: calc(16/1920*100vw) calc(60/1920*100vw);
  border-radius: calc(16/1920*100vw);
  border: none;
  -webkit-box-shadow: 0px -5px 5px -2px rgba(0, 0, 0, 0.4) inset;
          box-shadow: 0px -5px 5px -2px rgba(0, 0, 0, 0.4) inset;
}

@media (max-width: 768px) {
  .confirm .submit_box .btn-back,
  .confirm .submit_box .btn-submit {
    font-size: calc(30/768*100vw);
    padding: calc(20/768*100vw) calc(60/768*100vw);
  }
}

.confirm .submit_box .btn-back {
  background-color: #dcdcdc;
  margin-right: calc(100/1920*100vw);
  /* safariバグ対策*/
  -webkit-appearance: none;
}

.confirm .submit_box .btn-back:hover {
  background-color: #c8c8c8;
}

.confirm .submit_box .btn-submit {
  background-color: #11B093;
  color: #ffffff;
}

.confirm .submit_box .btn-submit:hover {
  background: #14ccac;
}

/** ここから応募フォーム完了画面 **/
.thanks {
  width: 80%;
  margin: calc(60/1920*100vw) auto;
}

@media (max-width: 768px) {
  .thanks {
    margin: calc(60/768*100vw) auto;
  }
}

.thanks h1 {
  margin-bottom: calc(60/1920*100vw);
}

@media (max-width: 768px) {
  .thanks h1 {
    margin-bottom: calc(60/768*100vw);
  }
}

.thanks .textbox2 {
  margin: 3vw 0;
}

.thanks .textbox2 p {
  margin: 2vw 0;
  line-height: 150%;
}

.thanks .textbox2 .c-info {
  margin: calc(20/1920*100vw) 0;
}

.thanks .textbox2 h3 {
  margin: calc(40/1920*100vw) 0 calc(40/1920*100vw) 0;
}

@media (max-width: 768px) {
  .thanks .textbox2 h3 {
    margin: calc(40/768*100vw) 0 calc(40/768*100vw) 0;
  }
}

.thanks .textbox2 .btn-thanks {
  padding: calc(16/1920*100vw);
}

@media (max-width: 768px) {
  .thanks .textbox2 .btn-thanks {
    padding: calc(16/768*100vw);
  }
}

.thanks .textbox2 hr {
  margin: calc(60/1920*100vw) 0;
}

@media (max-width: 768px) {
  .thanks .textbox2 hr {
    margin: calc(60/768*100vw) 0;
  }
}

.red {
  color: #ff0000;
}

.bold {
  font-weight: bold;
}

.bg_yellow {
  background-color: yellow;
}

.indent {
  text-indent: -1em;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 0 0 1em;
}

.special {
  background-color: #ff2b69;
  color: #ffffff;
  font-size: 2vw;
  text-align: center;
  letter-spacing: 0.3vw;
  padding: 1vw;
}

@media screen and (max-width: 767px) {
  .special {
    font-size: 6vw;
    padding: 4vw 1vw;
    line-height: 150%;
  }
}
/*# sourceMappingURL=top.css.map */