@charset "UTF-8";
/*全共通*/
/* line 21, ../sass/variable.scss */
.slide-in {
  overflow: hidden;
  display: inline-block;
}

/* line 26, ../sass/variable.scss */
.slide-in_inner {
  display: inline-block;
}

/*左右のアニメーション*/
/* line 32, ../sass/variable.scss */
.leftAnime {
  opacity: 0;
  /*事前に透過0にして消しておく*/
}

/* line 37, ../sass/variable.scss */
.slideAnimeLeftRight {
  animation-name: slideTextX100;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideTextX100 {
  from {
    transform: translateX(-100%);
    /*要素を左の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}
/* line 59, ../sass/variable.scss */
.slideAnimeRightLeft {
  animation-name: slideTextX-100;
  animation-duration: 1.2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes slideTextX-100 {
  from {
    transform: translateX(100%);
    /*要素を右の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0);
    /*要素を元の位置に移動*/
    opacity: 1;
  }
}
@keyframes bgchange {
  0% {
    background: #78b9bf;
  }
  /*変化させたい色*/
  15% {
    background: #63acb2;
  }
  /*変化させたい色*/
  35% {
    background: #6b92b9;
  }
  /*変化させたい色*/
  55% {
    background: #b8b4ff;
  }
  /*変化させたい色*/
  75% {
    background: #fff0b4;
  }
  85% {
    background: #ee98af;
  }
  95% {
    background: #facad2;
  }
  /*変化させたい色*/
  100% {
    background: #78b9bf;
  }
  /*変化させたい色*/
}
@keyframes fluidrotate {
  0%,
    100% {
    border-radius: 63% 37% 54% 46%/55% 48% 52% 45%;
  }
  14% {
    border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
  }
  28% {
    border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
  }
  42% {
    border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
  }
  56% {
    border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
  }
  70% {
    border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
  }
  84% {
    border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
  }
}
@media screen and (max-width: 780px) {
  /* line 9, ../sass/responsive.scss */
  header .container .logo img {
    width: 140px;
  }
  /* line 15, ../sass/responsive.scss */
  header .container .btn a {
    padding: 8px 16px;
    font-size: 12px;
  }

  /* line 23, ../sass/responsive.scss */
  header {
    padding: 8px 0;
  }

  /* line 27, ../sass/responsive.scss */
  .container {
    width: 96%;
    padding: 0 2%;
  }

  /* line 34, ../sass/responsive.scss */
  #intro .kadais {
    width: 70%;
  }

  /* line 41, ../sass/responsive.scss */
  #about .container .flow {
    width: 70%;
  }

  /* line 47, ../sass/responsive.scss */
  .solu {
    width: 90%;
    box-sizing: border-box;
    padding: 40px;
  }

  /* line 56, ../sass/responsive.scss */
  #voices .voice .solu.yobo,
  #voices .voice .solu.kaiketsu {
    width: 60%;
  }

  /* line 65, ../sass/responsive.scss */
  #qa .container .qa-list {
    width: 70%;
  }

  /* line 72, ../sass/responsive.scss */
  footer .container {
    padding-left: 20px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 620px) {
  /* line 82, ../sass/responsive.scss */
  body,
  html {
    font-size: 14px;
  }

  /* line 87, ../sass/responsive.scss */
  .sp {
    display: block !important;
  }

  /* line 91, ../sass/responsive.scss */
  .pc {
    display: none !important;
  }

  /* line 96, ../sass/responsive.scss */
  #head .container {
    position: relative;
    z-index: 0;
    background: none;
    padding: 50px 10px;
  }
  /* line 102, ../sass/responsive.scss */
  #head .container h1 {
    font-size: 32px;
    margin-bottom: 10px;
  }
  /* line 106, ../sass/responsive.scss */
  #head .container h1 span {
    font-size: larger;
  }
  /* line 110, ../sass/responsive.scss */
  #head .container h1 small {
    font-size: smaller;
  }
  /* line 115, ../sass/responsive.scss */
  #head .container h2 {
    font-size: 34px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
  }
  /* line 121, ../sass/responsive.scss */
  #head .container h2 img {
    width: 32px;
    margin-top: 4px;
  }
  /* line 127, ../sass/responsive.scss */
  #head .container p {
    text-align: center;
    font-size: 20px;
    margin-bottom: 50px;
  }
  /* line 134, ../sass/responsive.scss */
  #head .container .btns .btn {
    width: 100%;
    margin: 10px auto;
  }
  /* line 140, ../sass/responsive.scss */
  #head .container .sp-head {
    width: 60%;
    margin: 20px 20%;
  }

  /* line 150, ../sass/responsive.scss */
  #intro h2 {
    font-size: 18px;
  }
  /* line 154, ../sass/responsive.scss */
  #intro h3 {
    font-size: 24px;
  }
  /* line 158, ../sass/responsive.scss */
  #intro .kadais {
    width: 96%;
  }
  /* line 162, ../sass/responsive.scss */
  #intro .kadais .kadai p {
    font-size: 15px;
  }
  /* line 167, ../sass/responsive.scss */
  #intro .kadais:before, #intro .kadais:after {
    display: none;
  }

  /* line 177, ../sass/responsive.scss */
  #solution .container h2 {
    font-size: 25px;
    margin-left: 5%;
    line-height: 45px;
  }
  /* line 182, ../sass/responsive.scss */
  #solution .container h2.center {
    font-size: 20px;
  }
  /* line 187, ../sass/responsive.scss */
  #solution .container img {
    width: 60%;
    margin-left: -20px;
  }
  /* line 192, ../sass/responsive.scss */
  #solution .container .ys:after {
    top: -30px;
    right: 0;
    width: 266px;
    height: 287px;
  }
  /* line 200, ../sass/responsive.scss */
  #solution .container .tk h2 {
    margin-right: 5%;
  }
  /* line 204, ../sass/responsive.scss */
  #solution .container .tk:after {
    top: -30px;
    right: 0;
    width: 266px;
    height: 287px;
  }
  /* line 214, ../sass/responsive.scss */
  #solution .container .merits ul {
    margin: 0 0 80px 30px;
  }
  /* line 218, ../sass/responsive.scss */
  #solution .container .merits ul li img {
    width: 34px;
  }
  /* line 222, ../sass/responsive.scss */
  #solution .container .merits ul li p {
    font-size: 20px;
    line-height: 27px;
  }
  /* line 230, ../sass/responsive.scss */
  #solution .container .merits h3 {
    font-size: 26px;
  }

  /* line 240, ../sass/responsive.scss */
  .solu h3 {
    width: 90%;
    font-size: 13px;
  }
  /* line 245, ../sass/responsive.scss */
  .solu p {
    width: 100%;
    font-size: 14px;
  }

  /* line 252, ../sass/responsive.scss */
  #about .container {
    box-sizing: border-box;
  }
  /* line 255, ../sass/responsive.scss */
  #about .container h2 {
    font-size: 20px;
  }
  /* line 260, ../sass/responsive.scss */
  #about .container .flows .flow {
    width: 100%;
    padding: 20px 20px 40px 20px;
    box-sizing: border-box;
  }
  /* line 265, ../sass/responsive.scss */
  #about .container .flows .flow h3 {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  /* line 271, ../sass/responsive.scss */
  #about .container .flows .flow .concept:after {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -10px;
  }
  /* line 278, ../sass/responsive.scss */
  #about .container .flows .flow .script:after {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -10px;
  }
  /* line 285, ../sass/responsive.scss */
  #about .container .flows .flow .photograph:after {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -10px;
  }
  /* line 292, ../sass/responsive.scss */
  #about .container .flows .flow .videoedit:after {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -10px;
  }
  /* line 299, ../sass/responsive.scss */
  #about .container .flows .flow .report:after {
    width: 50px;
    height: 50px;
    top: -10px;
    right: -10px;
  }
  /* line 306, ../sass/responsive.scss */
  #about .container .flows .flow p {
    padding: 0;
  }
  /* line 311, ../sass/responsive.scss */
  #about .container .flows:after {
    left: 50px;
  }

  /* line 320, ../sass/responsive.scss */
  .titleimage img {
    width: 130px;
  }
  /* line 325, ../sass/responsive.scss */
  .titleimage h3 {
    font-size: 18px;
  }

  /* line 331, ../sass/responsive.scss */
  #voices .titleimage {
    margin: 0 0 80px 20px;
  }
  /* line 336, ../sass/responsive.scss */
  #voices .voice .voice-title {
    box-sizing: border-box;
    font-size: 15px;
    width: 90%;
  }
  /* line 341, ../sass/responsive.scss */
  #voices .voice .voice-title span {
    font-size: 13px;
    letter-spacing: 1px;
  }
  /* line 347, ../sass/responsive.scss */
  #voices .voice .voice-title .center img {
    width: 50px;
  }
  /* line 354, ../sass/responsive.scss */
  #voices .voice .solu h3 {
    padding: 7px 0;
    top: -18px;
  }
  /* line 359, ../sass/responsive.scss */
  #voices .voice .solu.yobo, #voices .voice .solu.kaiketsu {
    width: 84%;
    box-sizing: border-box;
  }
  /* line 364, ../sass/responsive.scss */
  #voices .voice .solu.yobo:before, #voices .voice .solu.kaiketsu:before {
    width: 45px;
    background-size: contain;
    height: 52px;
    top: -30px;
    right: -20px;
  }

  /* line 378, ../sass/responsive.scss */
  #plan .container .titleimage {
    margin: 0 0 80px 20px;
  }
  /* line 382, ../sass/responsive.scss */
  #plan .container .plans {
    padding: 60px 20px;
  }
  /* line 385, ../sass/responsive.scss */
  #plan .container .plans .sp-plan {
    border-radius: 12px;
    margin-bottom: 50px;
  }
  /* line 389, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-title {
    background-color: #f7f7f7;
    border-top-right-radius: 12px;
    border-top-left-radius: 12px;
    padding: 40px 12px 24px 12px;
    text-align: center;
  }
  /* line 396, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-title h3 {
    font-size: 20px;
    font-weight: bold;
  }
  /* line 400, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-title h3 small {
    color: #484848;
    letter-spacing: 1px;
    font-size: 14px;
  }
  /* line 408, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content {
    padding: 24px 12px 40px 12px;
    background-color: #fff;
    border-bottom-right-radius: 12px;
    border-bottom-left-radius: 12px;
  }
  /* line 414, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
  }
  /* line 420, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly .mo {
    background-color: #eebd2c;
    height: 100%;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  /* line 429, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly .mo h4 {
    font-weight: bold;
    padding: 0 20px;
    font-size: 12px;
  }
  /* line 436, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly .num {
    background-color: #f7f7f7;
    height: 100%;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  /* line 445, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly .num p {
    text-align: center;
    padding: 0 20px;
    font-size: 12px;
  }
  /* line 450, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .monthly .num p span {
    font-family: "Open Sans", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 30px;
  }
  /* line 462, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content ul {
    margin: 30px 20px;
  }
  /* line 465, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content ul li {
    font-size: 14px;
    margin: 8px 0;
  }
  /* line 469, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content ul li img {
    width: 22px;
    margin-right: 10px;
  }
  /* line 474, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content ul li.close {
    color: #484848;
  }
  /* line 477, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content ul li.close img {
    width: 20px;
    margin: 0 12px 0 2px;
  }
  /* line 485, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .price {
    text-align: center;
    font-size: 14px;
  }
  /* line 489, ../sass/responsive.scss */
  #plan .container .plans .sp-plan .plan-content .price span {
    font-family: "Open Sans", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 30px;
  }

  /* line 505, ../sass/responsive.scss */
  #qa .container h2 {
    font-size: 22px;
  }
  /* line 508, ../sass/responsive.scss */
  #qa .container h2 img {
    width: 50px;
  }
  /* line 513, ../sass/responsive.scss */
  #qa .container .qa-list {
    width: 80%;
  }
  /* line 516, ../sass/responsive.scss */
  #qa .container .qa-list dl:before {
    border: none;
  }

  /* line 525, ../sass/responsive.scss */
  #form .container form {
    width: 100%;
    padding: 60px 30px;
  }

  /* line 532, ../sass/responsive.scss */
  #footer-btn {
    width: 90%;
    margin: 0 5%;
  }
  /* line 536, ../sass/responsive.scss */
  #footer-btn .balloon1 {
    width: 84%;
    padding: 8px 0;
  }
  /* line 540, ../sass/responsive.scss */
  #footer-btn .balloon1 p {
    font-size: 12px;
  }
  /* line 545, ../sass/responsive.scss */
  #footer-btn .btn {
    width: auto;
  }
  /* line 548, ../sass/responsive.scss */
  #footer-btn .btn a {
    font-size: 14px;
  }
}
@media screen and (max-width: 420px) {
  /* line 557, ../sass/responsive.scss */
  #intro h3 {
    font-size: 22px;
  }

  /* line 565, ../sass/responsive.scss */
  #merits ul li p {
    font-size: 18px;
  }
}
