@media (max-width: 1280px) {
  header {
    height: 80px;
  }
  header nav li {
    display: none;
  }
  #hero {
    width: 100%;
    padding-left: 0;
    margin-top: 80px;
  }
  #hero::before {
    background: linear-gradient(to right, white, white 60%, rgba(255, 255, 255, 0.25)), linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) 70%, white);
  }
  section.prologue .contents-inner {
    width: 90%;
  }
  section.question .contents-inner {
    width: 90%;
  }
  section.question .contents-inner .flex-container {
    align-items: flex-end;
  }
  section.question .contents-inner .flex-container img {
    display: block;
    max-width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  section.question .contents-inner .flex-container ul {
    padding-bottom: 3em;
  }
  section.solution .inner1280 {
    width: 90%;
  }
  section.solution .inner1280 .flex-container {
    display: block;
  }
  section.solution .inner1280 .flex-container .container01 {
    width: 100%;
    text-align: center;
  }
  section.solution .inner1280 .flex-container .container01 h3 {
    animation: toBottom 1s linear infinite alternate;
  }
  @keyframes toBottom {
    0% {
      translate: 0 0;
    }
    100% {
      translate: 0 0.5em;
    }
  }
  section.solution .inner1280 .flex-container .container02 {
    width: 100%;
    padding-top: 4%;
  }
  section.solution .inner1280 .flex-container .container02 p {
    margin-left: 0;
  }
  section#strength .flex-container {
    width: 90%;
  }
  section.jirei .inner1120 {
    width: 90%;
  }
  section.jirei .inner1120 .box {
    height: 640px;
  }
  section.company .inner1280 {
    width: 90%;
  }
  #contact-form-page .main-area .wrapper {
    width: 90%;
  }
  #contact-form-page .thanks-area {
    width: 90%;
  }
}
@media (max-width: 1024px) {
  header button {
    width: 256px;
    font-size: 1em;
  }
  #hero .text-area {
    position: static;
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  #hero .text-area h1 {
    font-size: 2em;
  }
  #hero .text-area ul.sephiroth-area li .lawrel-text {
    font-size: 1.25em;
  }
  #hero .underbtn {
    display: none;
  }
  section.prologue .contents-inner {
    font-size: 1em;
  }
  section.prologue .contents-inner h3 {
    font-size: 1.25em;
  }
  section.merit {
    width: 90%;
    margin: 0 auto;
    text-align: center;
    padding-top: 8%;
  }
  section.merit h3 {
    font-size: 1.75em;
  }
  section.merit .container {
    text-align: center;
  }
  section.merit .container::after {
    display: none;
  }
  section.question .contents-inner h3 {
    font-size: 1.5em;
  }
  section.question .contents-inner .flex-container {
    display: block;
  }
  section.question .contents-inner .flex-container img {
    display: none;
  }
  section.question .contents-inner .flex-container ul {
    width: 100%;
    padding-left: 0;
  }
  section.solution {
    padding: 4% 0;
  }
  section.solution .inner1280 .flex-container .container02 p {
    text-align: left;
  }
  section.solution .inner1280 .flex-container .container02 p .strong {
    font-size: 1.5em;
  }
  section.flow {
    width: 90%;
    margin: 0 auto;
    padding: 4% 0;
  }
  section.flow .underline {
    font-size: 1.25em;
  }
  section.flow .underline span:before {
    display: none;
  }
  section.jirei {
    padding-bottom: 8%;
  }
  section.jirei .inner1120 .box {
    width: 100%;
    height: 544px;
    margin: 3.5em 0 2em;
  }
  section.jirei .inner1120 .box .box-area .text p {
    padding-bottom: 0.5em;
  }
  .slick-prev {
    left: -25px;
  }
  .slick-next {
    right: -5px;
  }
  section.contact-us .flex-container {
    width: 90%;
    margin: 0 auto;
    display: block;
  }
  section.contact-us .flex-container .box01 {
    text-align: center;
  }
  section.contact-us .flex-container .vertical-line {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #fff;
    margin-top: 4%;
  }
  section.contact-us .flex-container .box02 {
    padding-top: 4%;
  }
  section.faq {
    width: 90%;
    margin: 0 auto;
  }
  section.faq .faq-area {
    width: 100%;
  }
  section.faq dl .accordion-title {
    padding-right: 0;
  }
  section#emphasis p {
    width: 90%;
    margin: 0 auto;
    padding: 8% 0;
    font-size: 2em;
  }
  section.company .inner1280 .flex-container {
    display: block;
  }
  section.company .inner1280 .flex-container::before {
    font-size: 3em;
    top: 480px;
    right: 0;
  }
  section.company .inner1280 .flex-container .container01 {
    width: 100%;
    padding: 4% 0;
  }
  section.company .inner1280 .flex-container .container01 .entrance {
    width: 100%;
  }
  section.company .inner1280 .flex-container .container01 .entrance::before {
    display: none;
  }
  section.company .inner1280 .flex-container .container02 {
    width: 100%;
    padding-top: 4%;
  }
  section.company .inner1280 table {
    width: 100%;
  }
  footer .inner1024 {
    width: 90%;
    font-size: 0.75em;
  }
  footer .inner1024 .flex-wrapper02 {
    padding-top: 4%;
  }
  #contact-form-page .contact-form-header {
    height: 80px;
  }
  #contact-form-page .contact-form-header .wrapper {
    width: 90%;
  }
  #contact-form-page .form-area .text {
    width: 90%;
    margin: 0 auto;
  }
  #contact-form-page .form-area table {
    width: 90%;
  }
  #contact-form-page .form-area table tr th {
    width: 40%;
  }
  #contact-form-page .form-area table tr td {
    width: 60%;
  }
}
@media (max-width: 768px) {
  header {
    height: 64px;
  }
  header .logo {
    margin-left: 1em;
    width: 142px;
    height: auto;
  }
  #hero {
    height: auto;
    margin-top: 64px;
    padding-top: 2em;
    background-position: 75% 0;
  }
  #hero::before {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)), linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) 70%, white);
  }
  #hero .text-area {
    width: 90%;
  }
  #hero .text-area .midashi01 {
    font-size: 1em;
  }
  #hero .text-area h1 {
    font-size: 1.5em;
  }
  #hero .text-area h2 {
    font-size: 1em;
  }
  #hero .text-area ul.sephiroth-area li .lawrel-text {
    font-size: 1em;
  }
  #hero .text-area ul.sephiroth-area li:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 84px;
    height: 145px;
    background-image: url(../img/sephiroth.png);
  }
  #hero .text-area ul.sephiroth-area li:after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 84px;
    height: 145px;
    background-image: url(../img/sephiroth.png);
    transform: scale(-1, 1);
    right: 0;
  }
  #hero .text-area .text {
    font-size: 1em;
  }
  #hero .text-area button {
    width: 100%;
  }
  section.prologue .contents-inner {
    padding-top: 3em;
    font-size: 1em;
    text-align: left;
  }
  section.prologue .contents-inner h3 {
    font-size: 1em;
  }
  section.prologue .contents-inner h3 br {
    display: none;
  }
  section.prologue .contents-inner span {
    font-size: 1.25em;
    color: #d6c657;
  }
  section.prologue .contents-inner span::before {
    display: none;
  }
  section.merit {
    padding: 8% 0;
  }
  section.merit h3 {
    font-size: 1.25em;
  }
  section.merit .container {
    text-align: left;
  }
  section.merit .container .strong {
    font-size: 1em;
  }
  section.question .contents-inner h3 br.spbr {
    display: block;
  }
  section.question .contents-inner h3 .strong {
    font-size: 1.25em;
  }
  section.question .contents-inner .flex-container ul {
    font-size: 1em;
  }
  section.question .contents-inner .flex-container ul li {
    font-weight: 500;
  }
  section.solution {
    padding-bottom: 8%;
  }
  section.solution .inner1280 .flex-container .container02 {
    padding-top: 12%;
  }
  section.solution .inner1280 .flex-container .container02 p {
    display: block;
    align-items: flex-end;
    text-align: left;
  }
  section.solution .inner1280 .flex-container .container02 p .strong {
    font-size: 1.25em;
    padding: 0 0.25em;
  }
  section.solution .inner1280 .flex-container .container02 p img {
    width: 1.5em;
    margin-right: 0.5em;
  }
  section#strength {
    width: 100%;
  }
  section#strength h3 {
    width: 90%;
    margin: 0 auto;
    font-size: 1.5em;
  }
  section#strength h3 span {
    font-size: 1.5em;
    padding: 0 0.1em 0;
    color: #d6c657;
    -webkit-text-stroke: 1px #030303;
  }
  section#strength .flex-container {
    display: block;
  }
  section#strength .flex-container .img-area {
    width: 100%;
    height: 144px;
  }
  section#strength .flex-container .text-area {
    width: 100%;
  }
  section#strength .flex-container .text-area h4 .strong {
    font-size: 1em;
  }
  section#strength .flex-container .text-area h4 .strong .strong {
    font-size: 1.25em;
  }
  section#strength .flex-container .text-area h4 .title {
    font-size: 1.25em;
  }
  section.flow h3 {
    font-size: 1.5em;
    padding-top: 4%;
  }
  section.flow img {
    margin: 8% 0;
  }
  section.jirei {
    padding-top: 5em;
    margin-top: 8%;
  }
  section.jirei h3 {
    font-size: 1.5em;
  }
  section.jirei .inner1120 .box {
    margin-top: 2em;
    height: auto;
  }
  section.jirei .inner1120 .box .box-area .text p {
    padding-bottom: 35%;
  }
  section.contact-us h3 {
    font-size: 1.5em;
  }
  section.contact-us p.text {
    width: 90%;
    font-size: 1em;
    margin: 0 auto;
  }
  section.contact-us .flex-container .box01 {
    text-align: center;
  }
  section.contact-us .flex-container .box01 .number {
    font-size: 2.5em;
  }
  section.contact-us .flex-container .box01 p {
    font-size: 1em;
  }
  section.contact-us .flex-container .box02 {
    padding-top: 4%;
  }
  section.contact-us .flex-container .box02 p {
    font-size: 1em;
  }
  section.contact-us .flex-container .box02 a {
    font-size: 1em;
    padding: 1.5em 1em;
  }
  section.faq {
    padding: 8% 0;
  }
  section.faq h3 {
    font-size: 1.5em;
  }
  section.faq h4 {
    font-size: 1.25em;
  }
  section.faq .faq-area {
    font-size: 1em;
  }
  section.faq .faq-area dl dt {
    font-weight: 600;
  }
  section#emphasis p {
    font-size: 1.5em;
  }
  section.company .inner1280 {
    padding: 8% 0;
  }
  section.company .inner1280 .flex-container::before {
    display: none;
  }
  section.company .inner1280 .flex-container .container01 .entrance {
    height: 160px;
    background-position: top 10% right 50%;
  }
  section.company .inner1280 .flex-container .container01 .entrance:after {
    display: block;
    position: absolute;
    content: "ABOUT US";
    font-family: "Raleway";
    font-size: 2em;
    font-weight: bold;
    color: transparent;
    -webkit-text-stroke: 1px #030303;
    top: 160px;
    right: 0;
    z-index: 3;
    opacity: 0.5;
    transform: translateY(-50%);
  }
  section.company .inner1280 .flex-container .container02 {
    padding: 0;
  }
  section.company .inner1280 .flex-container .container02 h2 {
    font-size: 1.5em;
    padding-top: 0.5em;
  }
  section.company .inner1280 .flex-container .container02 h2 span {
    font-size: 1em;
  }
  section.company table tr th {
    width: 40%;
  }
  section.company table tr td {
    width: 60%;
    vertical-align: middle;
  }
  footer {
    padding: 12% 0 4% 0;
  }
  footer .inner1024 .flex-wrapper02 {
    display: none;
  }
  #contact-form-page .contact-form-header {
    height: 64px;
  }
  #contact-form-page .contact-form-header .logo {
    width: 142px;
    height: auto;
  }
  #contact-form-page .form-area .text {
    text-align: left;
  }
  #contact-form-page .form-area table tr th {
    display: block;
    width: 100%;
    margin-top: 4%;
  }
  #contact-form-page .form-area table tr td {
    display: block;
    width: 100%;
    padding: 1em 0 4% 0;
  }
  #contact-form-page .privacy-policy {
    width: 90%;
  }
}
@media (max-width: 635px) {
  .send-btn-area .send-btn {
    width: 90%;
    margin-top: 3em;
  }
}
@media (max-width: 652px) {
  section.jirei .inner1120 .box .box-area .text p {
    padding-bottom: 55%;
  }
}
@media (max-width: 500px) {
  section.jirei .inner1120 .box .box-area .text p {
    padding-bottom: 65%;
  }
}
@media (max-width: 480px) {
  header button {
    width: 176px;
    font-size: 0.75em;
  }
  header .logo {
    margin-left: 1em;
    width: 126px;
    height: auto;
  }
  #hero .text-area {
    border-bottom: 1px dashed #030303;
  }
  #hero .text-area .midashi01 span {
    font-size: 1em;
  }
  #hero .text-area h1 {
    font-size: 1.25em;
  }
  #hero .text-area ul.sephiroth-area {
    margin-top: 1em;
  }
  #hero .text-area ul.sephiroth-area li {
    position: relative;
    width: 304px;
    height: 50px;
  }
  #hero .text-area ul.sephiroth-area li .lawrel-text {
    font-size: 0.75em;
  }
  #hero .text-area ul.sephiroth-area li:before {
    width: 84px;
    height: 50px;
    background-size: contain;
    background-repeat: no-repeat;
  }
  #hero .text-area ul.sephiroth-area li:after {
    width: 84px;
    height: 50px;
    background-size: contain;
    background-repeat: no-repeat;
  }
  #hero .text-area .text {
    padding-top: 1em;
  }
  #hero .text-area button {
    padding: 4%;
    font-size: 1em;
    margin-bottom: 8%;
  }
  #hero .text-area button span.icon {
    left: 1em;
  }
  section.question .contents-inner h3 {
    font-size: 1.25em;
  }
  section.solution .inner1280 .flow-line {
    margin-bottom: 4%;
  }
  section.solution .inner1280 .flex-container .container01 h3 {
    font-size: 1.2em;
  }
  section.solution .inner1280 .flex-container .container02 {
    padding-top: 3em;
  }
  section#strength h3 {
    font-size: 1.25em;
    line-height: 1.25;
  }
  section.jirei .inner1120 .box {
    height: auto;
  }
  section.jirei .inner1120 .box.user_mansion01::before, section.jirei .inner1120 .box.user_mansion02::before, section.jirei .inner1120 .box.user_mansion03::before {
    height: 20%;
  }
  section.jirei .inner1120 .box .box-area .flex-wrapper .container .title {
    font-size: 1em;
  }
  section.jirei .inner1120 .box .box-area .text p {
    margin-bottom: 5.25em;
    padding-bottom: 20%;
  }
  section.company .inner1280 table tr {
    border-bottom: none;
  }
  section.company .inner1280 table tr th {
    display: block;
    width: 100%;
    padding-bottom: 0.25em;
    border-bottom: 1px dashed #030303;
    font-weight: bold;
  }
  section.company .inner1280 table tr td {
    display: block;
    width: 100%;
    padding-top: 0.25em;
  }
  footer .go-to-top_btn {
    font-size: 1em;
  }
  #contact-form-page .main-area {
    height: 9em;
  }
  #contact-form-page .main-area .wrapper h2 {
    font-size: 1.5em;
  }
  #contact-form-page .progressbar {
    width: 90%;
    margin-top: 3em;
  }
  #contact-form-page .form-area .text {
    padding-top: 1.5em;
  }
  #contact-form-page .thanks-area h3 {
    font-size: 1.25em;
  }
  #contact-form-page .thanks-area p {
    text-align: left;
  }
  #contact-form-page .thanks-area a {
    width: 100%;
  }
}/*# sourceMappingURL=responsive.css.map */