/*
@mixin font-size($size) {
	font-size: $size + px;
	font-size: ($size/10) + rem;

	@include mq( $sp , $pc-l )  {
		font-size: ($size/8) + px;
		font-size: ($size/12.5) + rem;
	}
}*/
@-webkit-keyframes fuwa {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fuwa {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes rotation01 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotation01 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes rotation02 {
  0% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes rotation02 {
  0% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@-webkit-keyframes rotationx {
  0% {
    -webkit-transform: rotateX(0);
            transform: rotateX(0);
  }
  100% {
    -webkit-transform: rotateX(360deg);
            transform: rotateX(360deg);
  }
}
@keyframes rotationx {
  0% {
    -webkit-transform: rotateX(0);
            transform: rotateX(0);
  }
  100% {
    -webkit-transform: rotateX(360deg);
            transform: rotateX(360deg);
  }
}
@-webkit-keyframes rotationy {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes rotationy {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@-webkit-keyframes rotationx2 {
  0% {
    -webkit-transform: rotateX(360deg);
            transform: rotateX(360deg);
  }
  100% {
    -webkit-transform: rotateX(0);
            transform: rotateX(0);
  }
}
@keyframes rotationx2 {
  0% {
    -webkit-transform: rotateX(360deg);
            transform: rotateX(360deg);
  }
  100% {
    -webkit-transform: rotateX(0);
            transform: rotateX(0);
  }
}
@-webkit-keyframes rotationy2 {
  0% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
}
@keyframes rotationy2 {
  0% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
}
@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(1px);
    -moz-filter: blur(1px);
    -ms-filter: blur(1px);
    -o-filter: blur(1px);
    filter: blur(1px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(2px);
    -moz-filter: blur(2px);
    -ms-filter: blur(2px);
    -o-filter: blur(2px);
    filter: blur(2px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
body.ccd-recruit .page-title-wrapper {
  background: url(../../img/bg_pagetitle.jpg) no-repeat 50% 0;
  background-size: cover;
}

@media screen and (max-width: 1022px) {
  .container {
    padding-left: 1em;
    padding-right: 1em;
  }
}

.list-wrap ul.list li {
  margin-bottom: 15px;
}
@media print, screen and (min-width: 768px) {
  .list-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .list-wrap ul.list {
    width: calc(50% - 25px);
  }
  .list-wrap ul.list li {
    margin-bottom: 30px;
  }
  .list-wrap ul.list li:last-child {
    margin-bottom: 0;
  }
}

.narrow-box {
  max-width: 710px;
  margin-top: 2em;
  margin-left: auto;
  margin-right: auto;
}
.narrow-box table dl.type {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 1em;
}
.narrow-box table dl.type dt {
  width: 122px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.narrow-box table dl.type dt .icon {
  width: 116px;
  height: 33px;
  border-radius: 16.5px;
  border: 1px solid #F09183;
  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: #F09183;
  font-size: 15px;
  font-size: 1.5rem;
}
.narrow-box table dl.type dd {
  padding-left: 1em;
}
@media print, screen and (min-width: 768px) {
  .narrow-box table td {
    padding-left: 2em;
  }
  .narrow-box table dl.type dd {
    padding-left: 0;
  }
}

.center .btn__default {
  margin-left: auto;
  margin-right: auto;
}

.within {
  position: relative;
}
.within .recruit-instagram {
  position: absolute;
  top: 1.5em;
  left: 30px;
  z-index: 600;
}
.within .recruit-instagram.fixed {
  position: fixed;
  top: 30px;
  left: 30px;
}
.within .recruit-instagram a {
  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;
  width: 190px;
  height: 80px;
  border-radius: 20px;
  -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 1px 3px 6px 0px rgba(0, 0, 0, 0.16);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 14px;
  font-size: 1.4rem;
  color: #5F5E5E;
  text-align: center;
  line-height: 1.2;
  position: relative;
  padding: 10px;
}
.within .recruit-instagram a::before {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(255, 0, 105)), to(rgb(255, 214, 0)));
  background-image: linear-gradient(180deg, rgb(255, 0, 105), rgb(255, 214, 0));
  z-index: -2;
  position: absolute;
  top: 0;
  left: 0;
}
.within .recruit-instagram a::after {
  content: " ";
  display: block;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border-radius: 17px;
  background: #fff;
  z-index: -1;
  position: absolute;
  top: 3px;
  left: 3px;
}
.within .recruit-instagram a span {
  display: block;
  width: 40px;
  margin-left: 3px;
}
@media screen and (max-width: 1022px) {
  .within {
    padding-top: 100px;
  }
  .within .recruit-instagram {
    top: 30px;
    left: 50%;
    margin-left: -95px;
  }
  .within .recruit-instagram.fixed {
    top: 20px;
    left: 50%;
  }
}

.point__inner {
  margin-top: 6em;
}
.point__item {
  border: 11px solid #FEF0E4;
  border-radius: 30px;
  background: #fff;
  padding: 1.5em;
}
.point__item h3 {
  width: 280px;
  height: 100px;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 450;
  color: #fff;
  text-align: center;
  background: url(../../../recruit/img/bg_head.svg) 0 50% no-repeat;
  background-size: 100%;
  padding: 1.1em 0.8em 0 0;
  margin: -75px auto 0;
}
.point__item p {
  font-weight: 300;
}
.point__item p .em {
  color: #F09183;
  font-weight: 400;
}
.point__item dl.point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 0;
}
.point__item dl.point dt, .point__item dl.point dd {
  margin: 5px 0;
}
.point__item dl.point dt {
  width: 45px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.point__item dl.point dt .icon {
  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;
  width: 44px;
  height: 44px;
  border-radius: 22px;
  background: #F09183;
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
}
.point__item dl.point dd {
  width: calc(100% - 50px);
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 400;
  color: #F09183;
}
.point__item ul.list {
  font-size: 18px;
  font-size: 1.8rem;
  color: #F09183;
  margin-top: 0;
}
.point__item .img {
  margin-top: 0;
}
.point__item .img img {
  display: block;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.point__item .txt {
  margin-top: 2em;
  padding-top: 10px;
  background: url(../../../recruit/img/line_dot.svg) 50% 0 no-repeat;
  background-size: 183px;
}
.point__img img {
  max-width: 300px;
}
@media screen and (max-width: 767px) {
  .point__item {
    margin-top: 5em;
  }
  .point__img {
    text-align: center;
  }
}
@media print, screen and (min-width: 768px) {
  .point__wrap.item-01 {
    position: relative;
  }
  .point__wrap.item-01::after {
    content: " ";
    display: block;
    width: 50%;
    max-width: 645px;
    height: 240px;
    background: url(../../img/bg_dot01.svg) no-repeat;
    background-position: top 0 left 0;
    background-size: cover;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .point__wrap.item-01 .container {
    position: relative;
  }
  .point__wrap.item-01 .container::before {
    content: " ";
    width: 190px;
    height: 190px;
    background: url(../../../recruit/img/obj_004.svg) 50% 50% no-repeat;
    background-size: 100%;
    position: absolute;
    top: -180px;
    left: -90px;
  }
  .point__wrap.item-01 .point__inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .point__wrap.item-01 .point__img {
    text-align: right;
    position: relative;
  }
  .point__wrap.item-01 .point__img::after {
    content: " ";
    display: block;
    width: 250px;
    height: 250px;
    background: url(../../../recruit/img/obj_001.svg) 50% 50% no-repeat;
    background-size: cover;
    position: absolute;
    bottom: -100px;
    left: 0;
  }
  .point__wrap.item-01 .point__img img {
    width: 350px;
    position: relative;
    z-index: 5;
  }
  .point__wrap.item-02 {
    position: relative;
    z-index: 7;
  }
  .point__wrap.item-02 .point__item:nth-child(1) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: -25em;
  }
  .point__wrap.item-02 .point__item:nth-child(2) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .point__wrap.item-03 {
    position: relative;
  }
  .point__wrap.item-03::before {
    content: " ";
    display: block;
    width: 50%;
    max-width: 645px;
    height: 240px;
    background: url(../../img/bg_dot02.svg) no-repeat;
    background-position: top 0 left 0;
    background-size: cover;
    position: absolute;
    top: -120px;
    left: 0;
  }
  .point__wrap.item-03 .container {
    position: relative;
  }
  .point__wrap.item-03 .container::before {
    content: " ";
    width: 190px;
    height: 190px;
    background: url(../../../recruit/img/obj_002.svg) 50% 50% no-repeat;
    background-size: 100%;
    position: absolute;
    top: -280px;
    right: -90px;
  }
  .point__wrap.item-03 .point__inner {
    margin-top: 4em;
  }
  .point__wrap.item-03 .point__item {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: -12em;
    position: relative;
    z-index: 8;
  }
  .point__wrap.item-03 .point__img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    text-align: right;
    position: relative;
  }
  .point__wrap.item-03 .point__img::before {
    content: " ";
    display: block;
    width: 250px;
    height: 250px;
    background: url(../../../recruit/img/obj_001.svg) 50% 50% no-repeat;
    background-size: cover;
    position: absolute;
    top: -100px;
    left: 0;
  }
  .point__wrap.item-03 .point__img img {
    width: 350px;
    position: relative;
    z-index: 5;
  }
  .point__wrap.item-04 {
    position: relative;
  }
  .point__wrap.item-04::after {
    content: " ";
    display: block;
    width: 50%;
    max-width: 645px;
    height: 240px;
    background: url(../../img/bg_dot01.svg) no-repeat;
    background-position: top 0 left 0;
    background-size: cover;
    position: absolute;
    bottom: -150px;
    right: 0;
  }
  .point__wrap.item-04 .point__inner {
    margin-top: 0;
  }
  .point__wrap.item-04 .point__item {
    position: relative;
    z-index: 10;
  }
  .point__wrap.item-04 .point__img {
    margin-top: -2em;
    position: relative;
  }
  .point__wrap.item-04 .point__img::after {
    content: " ";
    display: block;
    width: 250px;
    height: 250px;
    background: url(../../../recruit/img/obj_006.svg) 50% 50% no-repeat;
    background-size: cover;
    position: absolute;
    bottom: -100px;
    right: 20px;
  }
  .point__wrap.item-04 .point__img img {
    width: 100%;
    position: relative;
    z-index: 6;
  }
  .point__wrap.item-05 .container {
    position: relative;
  }
  .point__wrap.item-05 .container::before {
    content: " ";
    width: 190px;
    height: 190px;
    background: url(../../../recruit/img/obj_005.svg) 50% 50% no-repeat;
    background-size: 100%;
    position: absolute;
    top: -100px;
    left: -90px;
  }
  .point__wrap.item-05 .point__inner {
    margin-top: 2em;
  }
  .point__wrap.item-05 .point__item {
    width: 100%;
    position: relative;
    z-index: 9;
  }
  .point__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .point__item {
    width: calc(50% - 15px);
    margin-top: 2em;
  }
  .point__img {
    width: calc(50% - 25px);
  }
  .point__img p {
    margin-top: 0;
  }
  .point__img img {
    max-width: inherit;
  }
}
@media print, screen and (min-width: 1023px) {
  .point__item {
    padding: 2.5em;
    width: calc(50% - 25px);
  }
  .point__item h3 {
    width: 310px;
    height: 125px;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 1.45em 0.8em 0 0;
  }
}

.interview__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.interview__item {
  width: 100%;
  margin-top: 3em;
}
.interview__item h3 {
  width: 270px;
  height: 45px;
  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;
  background: -webkit-gradient(linear, left top, right top, from(rgb(240, 145, 131)), to(rgb(248, 184, 86)));
  background: linear-gradient(90deg, rgb(240, 145, 131), rgb(248, 184, 86));
  border-radius: 22.5px;
  color: #fff;
  margin: 0 auto;
}
.interview__item .img {
  text-align: center;
  margin-top: 2.4em;
}
.interview__item .img img {
  max-width: 220px;
}
.interview__item dl.faq {
  margin-top: 0;
}
.interview__item dl.faq dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px;
  font-size: 1.5rem;
  color: #F09183;
  line-height: 1;
  margin-top: 3em;
}
.interview__item dl.faq dt::before {
  content: "Q";
  font-size: 28px;
  font-size: 2.8rem;
  margin-right: 0.5em;
}
.interview__item dl.faq dd {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 300;
  margin: 1em 0 0;
  padding-left: 50px;
  position: relative;
}
.interview__item dl.faq dd::before {
  content: " ";
  display: block;
  width: 30px;
  height: 1px;
  background: #CACACA;
  position: absolute;
  top: 0.8em;
  left: 10px;
}
@media print, screen and (min-width: 768px) {
  .interview__wrap {
    margin-top: 2em;
  }
  .interview__item {
    width: calc(50% - 25px);
  }
  .interview__item .img img {
    max-width: 300px;
  }
}