@charset "UTF-8";
@media screen and (max-width: 900px) {
  .main_content .content.contact_download .flex_box {
    height: 45rem;
  }
}
@media screen and (max-width: 800px) {
  .mb00_sp {
    margin-bottom: 0rem !important;
  }
  .mb10_sp {
    margin-bottom: 1rem !important;
  }
  .mb20_sp {
    margin-bottom: 2rem !important;
  }
  .mb30_sp {
    margin-bottom: 3rem !important;
  }
  .mb40_sp {
    margin-bottom: 4rem !important;
  }
  .mb50_sp {
    margin-bottom: 5rem !important;
  }
  .mb60_sp {
    margin-bottom: 6rem !important;
  }
  .mb70_sp {
    margin-bottom: 7rem !important;
  }
  .mb80_sp {
    margin-bottom: 8rem !important;
  }
  .mb90_sp {
    margin-bottom: 9rem !important;
  }
  .mb100_sp {
    margin-bottom: 10rem !important;
  }
  .mb110_sp {
    margin-bottom: 11rem !important;
  }
  .mb120_sp {
    margin-bottom: 12rem !important;
  }
  .mb130_sp {
    margin-bottom: 13rem !important;
  }
  .mb140_sp {
    margin-bottom: 14rem !important;
  }
  .mb150_sp {
    margin-bottom: 15rem !important;
  }
  .mb160_sp {
    margin-bottom: 16rem !important;
  }
  .mb170_sp {
    margin-bottom: 17rem !important;
  }
  .mb180_sp {
    margin-bottom: 18rem !important;
  }
  .mb190_sp {
    margin-bottom: 19rem !important;
  }
  .mb200_sp {
    margin-bottom: 20rem !important;
  }
  .mb210_sp {
    margin-bottom: 21rem !important;
  }
  .mb220_sp {
    margin-bottom: 22rem !important;
  }
  .mb230_sp {
    margin-bottom: 23rem !important;
  }
  .mb240_sp {
    margin-bottom: 24rem !important;
  }
  .mb250_sp {
    margin-bottom: 25rem !important;
  }
  .mb260_sp {
    margin-bottom: 26rem !important;
  }
  .mb270_sp {
    margin-bottom: 27rem !important;
  }
  .mb280_sp {
    margin-bottom: 28rem !important;
  }
  .mb290_sp {
    margin-bottom: 29rem !important;
  }
  .mb300_sp {
    margin-bottom: 30rem !important;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .sp_flex {
    display: flex !important;
  }
  .sp_inline {
    display: inline-block !important;
  }
  .fo14 {
    font-size: 1.6rem !important;
  }
  .flex_box {
    flex-direction: column;
    align-items: center;
  }
  html {
    font-size: 8px;
  }
  .header {
    top: 1rem;
  }
  .header .logo {
    width: 14.5rem;
  }
  .header .btn {
    padding: 0.9rem 4rem 0.9rem 3rem;
    margin-right: 1%;
  }
  .header .btn p {
    font-size: 1.5rem;
    line-height: 1.4;
  }
  .main_visual .main_visualOuter {
    padding-top: 150%;
  }
  .main_visual .main_visualOuter .main_visualInner .main {
    width: 102.68%;
    left: 4.4%;
    top: 38.48%;
  }
  .main_visual .main_visualOuter .main_visualInner .text {
    top: 22.9%;
    left: 11.89%;
  }
  .main_visual .main_visualOuter .main_visualInner .text .main_text {
    width: 40vw;
  }
  .main_visual .main_visualOuter .main_visualInner .text .sub_text {
    font-size: 2.5vw;
  }
  .main_visual .main_visualOuter .main_visualInner .move_text > div img {
    width: 56.8vw;
  }
  .main_visual .main_visualOuter .main_visualInner .dec.dec01 {
    width: 26%;
    left: 77%;
    top: 8.6%;
  }
  .main_visual .main_visualOuter .main_visualInner .dec.dec02 {
    width: 18.2%;
    left: 70.1%;
    top: 18.9%;
  }
  .main_visual .main_visualOuter .main_visualInner .dec.dec03 {
    width: 25%;
    left: -14.64%;
    top: 25.9%;
  }
  .main_content .content {
    width: 92%;
  }
  .main_content .content.con01 {
    padding: 15rem 0rem 16rem;
  }
  .main_content .content.con01 .flex_box {
    flex-direction: column;
    align-items: center;
  }
  .main_content .content.con01 .flex_box .h_box {
    margin-bottom: 23rem;
  }
  .main_content .content.con01 .flex_box .h_box h2 span {
    margin-bottom: 1rem;
  }
  .main_content .content.con01 .flex_box .h_box .dec {
    right: 50%;
    transform: translateX(50%);
  }
  .main_content .content.con02 .flex_box {
    align-items: center;
  }
  .main_content .content.con02 .flex_box .voice {
    width: 100%;
    max-width: 60rem;
    margin-bottom: 3rem;
  }
  .main_content .content.con02 .flex_box .voice .main_text {
    text-underline-offset: 1.4rem;
  }
  .main_content .content.con04 h2 {
    text-align: center;
    font-size: min(3.8rem, 6vw);
  }
  .main_content .content.con04 .main_list {
    position: relative;
    margin-bottom: 3rem;
  }
  .main_content .content.con04 .main_list .bg {
    margin-top: 30%;
  }
  .main_content .content.con04 .main_list .human {
    top: auto;
    bottom: 10%;
    width: 7.57%;
  }
  .main_content .content.con04 .main_list .fukidasi {
    width: 30%;
  }
  .main_content .content.con04 .main_list .fukidasi.fukidasi01 {
    left: 0;
    bottom: 0%;
  }
  .main_content .content.con04 .main_list .fukidasi.fukidasi02 {
    left: 8.04%;
    top: 18%;
  }
  .main_content .content.con04 .main_list .fukidasi.fukidasi03 {
    top: 0;
    left: 35%;
  }
  .main_content .content.con04 .main_list .fukidasi.fukidasi04 {
    right: 8.04%;
    top: 18%;
  }
  .main_content .content.con04 .main_list .fukidasi.fukidasi05 {
    right: 0;
    bottom: 0%;
  }
  .main_content .content.con04 .other {
    width: 13rem;
  }
  .main_content .content.con04 .check_list li {
    width: 100%;
  }
  .main_content .content .feature_text_img {
    flex-direction: column;
  }
  .main_content .content .feature_text_img .feature_text {
    margin-bottom: 7rem;
    max-width: 63rem;
    margin-right: auto;
    margin-left: auto;
  }
  .main_content .content .feature_text_img .feature_text .feature {
    width: 100%;
  }
  .main_content .content .feature_text_img .feature_text h2 {
    font-size: min(3.6rem, 6.54vw);
    margin-top: max(-2.5rem, -4.54vw);
    margin-bottom: min(1rem, 1.82vw);
  }
  .main_content .content .feature_text_img .feature_text h3 {
    font-size: min(2.4rem, 4.36vw);
  }
  .main_content .content .feature_text_img .feature_img {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
  }
  .main_content .content.con05 .slider .slide > * {
    width: 95% !important;
    margin-left: auto;
    margin-right: auto;
    max-width: 50rem !important;
  }
  .main_content .content.contact_download {
    padding: 8rem 2.5%;
  }
  .main_content .content.contact_download::before {
    width: 300vw;
    height: 300vw;
  }
  .main_content .content.contact_download .flex_box {
    height: auto;
    max-width: 60rem;
  }
  .main_content .content.contact_download .flex_box .con {
    width: 100%;
  }
  .main_content .content.contact_download .flex_box .dot {
    width: 95%;
    height: 0.2rem;
  }
  .main_content .content.con06 .feature_text_img .feature_text .cir_list {
    width: 100%;
  }
  .main_content .content.con06 .feature_text_img .feature_text .cir_list li {
    width: 50% !important;
  }
  .main_content .content.con06 .ills .flex_box img {
    margin-bottom: 2rem;
  }
  .main_content .content.con06 .ills .flex_box:nth-of-type(1) {
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-around;
    flex-direction: row;
    align-items: center;
  }
  .main_content .content.con06 .ills .flex_box:nth-of-type(2) {
    margin-top: 0;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-around;
    flex-direction: row;
    align-items: center;
  }
  .main_content .content.con07 {
    padding-top: 20rem;
  }
  .main_content .content.con07 .feature_text_img .feature_text {
    margin-bottom: 1rem;
  }
  .main_content .content.con07 .feature_text_img .feature_text h2 {
    line-height: 1.5;
  }
  .main_content .content.con07 .feature_text_img .feature_img {
    width: 120% !important;
    margin-left: -20% !important;
  }
  .main_content .content.con07 .services {
    align-items: center;
    flex-direction: column;
    flex-wrap: nowrap;
  }
  .main_content .content.con07 .services .service {
    width: 100%;
    max-width: 50rem;
  }
  .main_content .content.con08 {
    padding-top: 23.8rem;
  }
  .main_content .content.con08 > p {
    font-size: 2.3rem;
  }
  .main_content .content.con08 .subcatch {
    width: 60%;
  }
  .main_content .content.con08 .maincatch .edu {
    height: 13vw;
    margin-bottom: 3vw;
  }
  .main_content .content.con08 .maincatch .x {
    width: 8%;
  }
  .main_content .content.con08 .maincatch .cre {
    height: 13vw;
  }
  .main_content .content.con08 .flex_box {
    align-items: center;
  }
  .main_content .content.con08 .flex_box p {
    width: 100%;
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 670px) {
  .main_content .content02 .works .work.work_b .work_con img {
    height: 60%;
  }
}
@media screen and (max-width: 720px) {
  .main_content .content.con06 .ills .flex_box {
    display: grid;
    /* template-columns と column-gap を合計して100%になるようにする */
    grid-template-columns: repeat(auto-fit, 33%);
    row-gap: 0;
    -moz-column-gap: 0%;
         column-gap: 0%;
    justify-content: center;
    justify-items: center;
    align-items: center;
  }
}
@media screen and (max-width: 420px) {
  .main_content .content.con06 .ills .flex_box {
    grid-template-columns: repeat(auto-fit, 50%);
  }
}/*# sourceMappingURL=style-sp.css.map */