@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@700&display=swap");
* {
  box-sizing: border-box; }

html {
  font-size: 16px; }
  @media (max-width: 1346px) {
    html {
      font-size: 14px; } }
  @media (max-width: 780px) {
    html {
      font-size: 14px; } }
  @media (max-width: 622px) {
    html {
      font-size: 13.5px; } }
  html body {
    color: #000;
    line-height: 1.5;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }
    html body br.sp {
      display: none; }
      @media (max-width: 622px) {
        html body br.sp {
          display: inline; } }
    html body .fixed_banner {
      position: fixed;
      right: 0;
      border-radius: 1rem 0 0 1rem;
      background-color: white;
      width: 25rem;
      bottom: 2rem;
      padding: 1rem 1rem;
      box-shadow: 0 0 13px #999;
      z-index: 111;
      right: -100%;
      transition: all ease 2s;
      transition-delay: 3s; }
      @media (max-width: 622px) {
        html body .fixed_banner {
          display: none; } }
      html body .fixed_banner.animated {
        right: 0; }
      html body .fixed_banner.none {
        right: -100%; }
      html body .fixed_banner .close {
        position: absolute;
        width: 2rem;
        height: 2rem;
        left: -0.5rem;
        top: -0.5rem;
        box-shadow: 0 0 6px #999;
        border-radius: 6rem;
        background-color: white;
        cursor: pointer; }
        html body .fixed_banner .close:after, html body .fixed_banner .close:before {
          cursor: pointer;
          content: "";
          display: block;
          height: 2px;
          width: 70%;
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
          margin: auto;
          background-color: #333; }
        html body .fixed_banner .close::after {
          transform: rotate(45deg); }
        html body .fixed_banner .close::before {
          transform: rotate(-45deg); }
      html body .fixed_banner .inner p.big {
        font-size: 2.5rem;
        color: #1571DA;
        font-weight: bold;
        text-align: center;
        margin: 0; }
      html body .fixed_banner .inner p {
        font-weight: bold;
        text-align: center;
        font-size: 120%;
        margin: 0.5rem auto; }
      html body .fixed_banner .inner .cta {
        margin-top: 1rem; }
        html body .fixed_banner .inner .cta a {
          font-size: 1rem;
          padding: auto;
          padding: 1rem;
          width: 100%;
          min-width: 1px; }
          html body .fixed_banner .inner .cta a:hover {
            transform: scale(1.05); }
    html body main {
      overflow: hidden; }
      html body main #first_view {
        background-color: #1571DA;
        position: relative;
        min-height: 100vh;
        display: flex;
        align-items: center;
        overflow: hidden; }
        @media (max-width: 622px) {
          html body main #first_view {
            padding-top: 9rem;
            min-height: 1px; } }
        html body main #first_view .firstview_inner {
          padding-top: 3rem;
          max-width: 80rem;
          margin: auto;
          padding: 0 1rem;
          width: 100%; }
          html body main #first_view .firstview_inner .image {
            width: 60%;
            margin-left: auto;
            position: absolute;
            right: 0;
            top: 15vmin;
            max-width: 900px; }
            @media (max-width: 622px) {
              html body main #first_view .firstview_inner .image {
                position: relative;
                width: 100%;
                margin-top: -2rem; } }
            html body main #first_view .firstview_inner .image:after, html body main #first_view .firstview_inner .image:before {
              height: 6px;
              width: 150%;
              content: "";
              display: block;
              position: absolute;
              background-color: white;
              transform-origin: left top; }
            html body main #first_view .firstview_inner .image:after {
              bottom: 27%;
              left: 5%;
              transform: rotate3d(4, 0.8, 1, 45deg); }
            html body main #first_view .firstview_inner .image:before {
              bottom: 31%;
              left: 15%;
              transform: rotate3d(4, 0.3, 1, 45deg); }
            html body main #first_view .firstview_inner .image .first {
              position: absolute;
              top: 0;
              width: 30%;
              height: auto;
              z-index: 20;
              opacity: 0;
              transition: all ease-in-out 0.8s; }
              html body main #first_view .firstview_inner .image .first.animated {
                opacity: 1; }
            html body main #first_view .firstview_inner .image .first1 {
              width: 16%;
              right: 10%;
              transition-delay: 1s; }
            html body main #first_view .firstview_inner .image .first2 {
              left: 30%;
              top: 3%;
              transition-delay: 1.5s; }
            html body main #first_view .firstview_inner .image .first3 {
              right: auto;
              left: 20%;
              bottom: 43%;
              top: auto;
              transition-delay: 2s; }
            html body main #first_view .firstview_inner .image .first4 {
              top: auto;
              bottom: 18%;
              left: 10%;
              transition-delay: 2.5s; }
            html body main #first_view .firstview_inner .image figure {
              width: 100%;
              position: relative;
              z-index: 10; }
              html body main #first_view .firstview_inner .image figure img {
                width: 100%;
                height: auto;
                transform: translate3d(753px, 170px, 0);
                transition: all ease 2s;
                transition-delay: 1s; }
                html body main #first_view .firstview_inner .image figure img.animated {
                  transform: translate3d(0, 0, 0); }
          html body main #first_view .firstview_inner .detail {
            margin-right: auto;
            width: 100%;
            position: relative;
            z-index: 30; }
            html body main #first_view .firstview_inner .detail h1 {
              width: 65%;
              position: relative;
              z-index: 11; }
              html body main #first_view .firstview_inner .detail h1 img {
                width: 100%;
                height: auto;
                filter: drop-shadow(0 0 5px #1571DA); }
              @media screen and (max-width: 1680px) {
                html body main #first_view .firstview_inner .detail h1 {
                  max-width: 48vw; } }
              @media (max-width: 622px) {
                html body main #first_view .firstview_inner .detail h1 {
                  position: relative;
                  max-width: 100%;
                  width: 100%; } }
            html body main #first_view .firstview_inner .detail p {
              letter-spacing: 0.2em;
              font-size: 1.25rem;
              margin-top: 3rem;
              font-weight: bold;
              color: white;
              line-height: 1.8;
              position: relative;
              z-index: 11; }
              @media (max-width: 622px) {
                html body main #first_view .firstview_inner .detail p {
                  font-size: 1rem;
                  margin-top: 2rem;
                  letter-spacing: 0em; } }
            html body main #first_view .firstview_inner .detail .link_wrap {
              margin-top: 3rem;
              position: relative;
              z-index: 11; }
              @media (max-width: 622px) {
                html body main #first_view .firstview_inner .detail .link_wrap {
                  padding: 0; } }
              html body main #first_view .firstview_inner .detail .link_wrap a {
                margin-left: 0;
                font-size: 22px; }
                @media (max-width: 622px) {
                  html body main #first_view .firstview_inner .detail .link_wrap a {
                    font-size: 1.2rem;
                    width: 100%; } }
        html body main #first_view header {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%; }
          html body main #first_view header .inner.headerflex {
            display: flex;
            justify-content: space-between;
            padding: 1rem; }
            html body main #first_view header .inner.headerflex .logo {
              display: block;
              font-family: 'Roboto', sans-serif;
              color: white;
              font-weight: 700; }
              html body main #first_view header .inner.headerflex .logo img {
                width: 180px;
                height: auto; }
                @media (max-width: 622px) {
                  html body main #first_view header .inner.headerflex .logo img {
                    width: 120px; } }
            html body main #first_view header .inner.headerflex .tel {
              display: flex;
              color: white;
              align-items: center;
              line-height: 1; }
              html body main #first_view header .inner.headerflex .tel p {
                font-weight: bold;
                font-size: 1.15rem; }
                @media (max-width: 622px) {
                  html body main #first_view header .inner.headerflex .tel p {
                    display: none; } }
              html body main #first_view header .inner.headerflex .tel .number {
                position: relative;
                margin-left: 1rem; }
                html body main #first_view header .inner.headerflex .tel .number small {
                  position: absolute;
                  bottom: -1rem;
                  right: 0;
                  font-weight: bold;
                  font-size: 1rem; }
                  @media (max-width: 350px) {
                    html body main #first_view header .inner.headerflex .tel .number small {
                      font-size: .8rem; } }
                html body main #first_view header .inner.headerflex .tel .number a {
                  font-weight: 700;
                  font-size: 2.2rem;
                  font-family: 'Roboto', sans-serif; }
                  @media (max-width: 622px) {
                    html body main #first_view header .inner.headerflex .tel .number a {
                      font-size: 2rem; } }
                  @media (max-width: 350px) {
                    html body main #first_view header .inner.headerflex .tel .number a {
                      font-size: 1.5rem; } }
                html body main #first_view header .inner.headerflex .tel .number:before {
                  content: "";
                  width: 2rem;
                  height: 2rem;
                  background-position: center;
                  background-repeat: no-repeat;
                  background-image: url(../svg/tel_header.svg);
                  display: inline-block;
                  background-size: contain; }
                  @media (max-width: 622px) {
                    html body main #first_view header .inner.headerflex .tel .number:before {
                      width: 1.5rem;
                      height: 1.5rem; } }
      html body main .link_wrap {
        margin-top: 4rem; }
        @media (max-width: 622px) {
          html body main .link_wrap {
            padding: 0 1rem;
            margin-top: 2rem; } }
        html body main .link_wrap.big a {
          max-width: 45rem; }
        html body main .link_wrap.small {
          margin: 0; }
          html body main .link_wrap.small a {
            max-width: 25rem; }
        html body main .link_wrap.white a {
          background-color: white;
          color: #1571DA;
          font-size: 150%; }
          html body main .link_wrap.white a:hover {
            background-color: #FF273D;
            color: white; }
        html body main .link_wrap.border a {
          background-color: white;
          color: #1571DA;
          border: 2px solid #1571DA; }
          html body main .link_wrap.border a:hover {
            background-color: #1571DA;
            color: white; }
        html body main .link_wrap.navy a:hover {
          background-color: #1571DA;
          color: white; }
        html body main .link_wrap.cta a {
          background-color: #FF273D; }
          html body main .link_wrap.cta a:hover {
            transform: scale(1.1); }
        html body main .link_wrap a {
          background-color: #081059;
          border-radius: 0.5rem;
          color: white;
          padding: 2rem 1rem;
          display: flex;
          align-items: center;
          justify-content: center;
          max-width: 30rem;
          margin: auto;
          font-weight: bold;
          font-size: 1.125rem;
          transition: all ease 0.5s; }
      html body main section {
        padding-top: 5rem;
        padding-bottom: 5rem;
        overflow: hidden; }
        @media (max-width: 622px) {
          html body main section {
            padding-top: 2rem;
            padding-bottom: 2rem; } }
        html body main section div.inner {
          max-width: 80rem;
          margin: auto; }
          html body main section div.inner.flex {
            display: flex;
            align-items: center;
            padding: 0 1rem; }
            @media (max-width: 622px) {
              html body main section div.inner.flex {
                display: block;
                padding: 0 1rem; } }
            html body main section div.inner.flex .section_title {
              width: 50%; }
              @media (max-width: 622px) {
                html body main section div.inner.flex .section_title {
                  width: 100%; } }
            html body main section div.inner.flex .half {
              width: 50%; }
              @media (max-width: 622px) {
                html body main section div.inner.flex .half {
                  width: 100%; } }
              html body main section div.inner.flex .half img {
                width: 100%;
                height: auto; }
          html body main section div.inner .section_title {
            padding-bottom: 2rem; }
            @media (max-width: 622px) {
              html body main section div.inner .section_title {
                padding-bottom: 1.5rem; } }
            html body main section div.inner .section_title.center h2, html body main section div.inner .section_title.center p {
              text-align: center; }
            html body main section div.inner .section_title.center h2 {
              margin-left: -0.3em; }
            html body main section div.inner .section_title.narrow {
              max-width: 70rem;
              margin: auto;
              padding-left: 1rem;
              padding-right: 1rem; }
            html body main section div.inner .section_title h2, html body main section div.inner .section_title p {
              font-weight: bold; }
            html body main section div.inner .section_title h2 {
              font-size: 2.25rem;
              color: #1571DA;
              letter-spacing: 0.3em;
              padding-bottom: 1rem; }
              @media (max-width: 622px) {
                html body main section div.inner .section_title h2 {
                  font-size: 1.5rem;
                  letter-spacing: 0; } }
            html body main section div.inner .section_title p {
              color: #081059;
              line-height: 2; }
              @media (max-width: 622px) {
                html body main section div.inner .section_title p {
                  line-height: 1.65; } }
              html body main section div.inner .section_title p.bold {
                font-size: 1.25rem; }
                @media (max-width: 622px) {
                  html body main section div.inner .section_title p.bold {
                    font-size: 1rem; } }
              html body main section div.inner .section_title p.upper {
                font-size: 1.375rem; }
                @media (max-width: 622px) {
                  html body main section div.inner .section_title p.upper {
                    font-size: 1rem; } }
          html body main section div.inner .point_article_wrap {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            padding: 0 1rem; }
            @media (max-width: 622px) {
              html body main section div.inner .point_article_wrap {
                display: block; } }
            html body main section div.inner .point_article_wrap article {
              background-color: white;
              box-shadow: 0 0 12px #999;
              width: 32%;
              display: flex;
              align-items: center;
              padding: 2rem;
              border-radius: 0.5rem; }
              @media (max-width: 622px) {
                html body main section div.inner .point_article_wrap article {
                  width: 100%;
                  margin-bottom: 1rem; } }
              html body main section div.inner .point_article_wrap article figure {
                width: 30%;
                margin-right: 1rem; }
                html body main section div.inner .point_article_wrap article figure img {
                  width: 100%;
                  height: auto; }
              html body main section div.inner .point_article_wrap article .detail {
                width: 70%; }
                html body main section div.inner .point_article_wrap article .detail h3 {
                  color: #1571DA;
                  font-weight: bold;
                  margin-bottom: 0.75rem;
                  font-size: 1.25rem; }
                html body main section div.inner .point_article_wrap article .detail p {
                  font-size: 0.875rem; }
              html body main section div.inner .point_article_wrap article:nth-of-type(1), html body main section div.inner .point_article_wrap article:nth-of-type(2) {
                width: 49%;
                margin-bottom: 2%; }
                html body main section div.inner .point_article_wrap article:nth-of-type(1) figure, html body main section div.inner .point_article_wrap article:nth-of-type(2) figure {
                  max-width: 130px; }
                @media (max-width: 622px) {
                  html body main section div.inner .point_article_wrap article:nth-of-type(1), html body main section div.inner .point_article_wrap article:nth-of-type(2) {
                    width: 100%;
                    margin-bottom: 1rem; } }
          html body main section div.inner .spec_wrap {
            display: flex;
            justify-content: space-between;
            background-color: #F5F5F5;
            position: relative;
            padding: 2rem 1rem; }
            @media (max-width: 622px) {
              html body main section div.inner .spec_wrap {
                flex-direction: column-reverse; } }
            html body main section div.inner .spec_wrap:before {
              content: "";
              display: block;
              background-color: #F5F5F5;
              position: absolute;
              left: -100%;
              top: 0;
              width: 100%;
              height: 100%; }
            html body main section div.inner .spec_wrap .spac_detail {
              width: 49%; }
              @media (max-width: 622px) {
                html body main section div.inner .spec_wrap .spac_detail {
                  width: 100%; } }
              html body main section div.inner .spec_wrap .spac_detail dl {
                display: flex;
                padding: 1rem 1rem;
                border-bottom: 1px dotted #777; }
                html body main section div.inner .spec_wrap .spac_detail dl:first-of-type {
                  border-top: 1px dotted #777; }
                html body main section div.inner .spec_wrap .spac_detail dl dt, html body main section div.inner .spec_wrap .spac_detail dl dd {
                  font-size: 0.875rem; }
                html body main section div.inner .spec_wrap .spac_detail dl dt {
                  width: 30%;
                  font-weight: bold; }
                html body main section div.inner .spec_wrap .spac_detail dl dd {
                  width: 70%; }
            html body main section div.inner .spec_wrap .spec_image_wrap {
              width: 49%; }
              @media (max-width: 622px) {
                html body main section div.inner .spec_wrap .spec_image_wrap {
                  width: 100%;
                  margin-bottom: 2rem; } }
              html body main section div.inner .spec_wrap .spec_image_wrap .auto_swiper .swiper-slide {
                border-radius: 1rem;
                overflow: hidden; }
                html body main section div.inner .spec_wrap .spec_image_wrap .auto_swiper .swiper-slide img {
                  width: 100%;
                  height: auto; }
          html body main section div.inner .flow_wrap p.bold {
            font-weight: bold;
            text-align: center;
            color: #081059;
            padding: 2rem 0;
            font-size: 1.375rem; }
            @media (max-width: 622px) {
              html body main section div.inner .flow_wrap p.bold {
                padding: 2rem 1rem;
                font-size: 1rem; } }
          html body main section div.inner .flow_wrap .flow_article_wrap {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            padding: 0 1rem; }
            html body main section div.inner .flow_wrap .flow_article_wrap article {
              background-color: #1571DA;
              box-shadow: 0 0 12px #999;
              width: 32%;
              display: flex;
              align-items: center;
              padding: 2rem;
              border-radius: 0.5rem; }
              @media (max-width: 622px) {
                html body main section div.inner .flow_wrap .flow_article_wrap article {
                  width: 100%;
                  margin-bottom: 1rem; } }
              html body main section div.inner .flow_wrap .flow_article_wrap article figure {
                width: 30%;
                margin-right: 1rem;
                background-color: white;
                border-radius: 10rem;
                box-shadow: 0 0 12px #888; }
                html body main section div.inner .flow_wrap .flow_article_wrap article figure img {
                  width: 100%;
                  height: auto; }
              html body main section div.inner .flow_wrap .flow_article_wrap article .detail {
                width: 70%; }
                html body main section div.inner .flow_wrap .flow_article_wrap article .detail h3 {
                  color: #1571DA;
                  font-weight: bold;
                  margin-bottom: 0.75rem;
                  font-size: 1.25rem;
                  color: white; }
                html body main section div.inner .flow_wrap .flow_article_wrap article .detail p {
                  font-size: 0.875rem;
                  color: white; }
          html body main section div.inner .flow_wrap .flow {
            display: flex;
            padding: 1rem 0; }
            @media (max-width: 622px) {
              html body main section div.inner .flow_wrap .flow {
                display: block; } }
            html body main section div.inner .flow_wrap .flow li {
              position: relative;
              width: 20%;
              background-position: center;
              background-size: cover; }
              @media screen and (min-width: 622px) {
                html body main section div.inner .flow_wrap .flow li:nth-of-type(1) {
                  z-index: 105;
                  right: -4%; }
                html body main section div.inner .flow_wrap .flow li:nth-of-type(2) {
                  z-index: 104;
                  right: -2%; }
                html body main section div.inner .flow_wrap .flow li:nth-of-type(3) {
                  z-index: 103; }
                html body main section div.inner .flow_wrap .flow li:nth-of-type(4) {
                  z-index: 102;
                  left: -2%; }
                html body main section div.inner .flow_wrap .flow li:nth-of-type(5) {
                  z-index: 101;
                  left: -4%; } }
              @media (max-width: 622px) {
                html body main section div.inner .flow_wrap .flow li {
                  width: 80%;
                  border-radius: 0.5rem;
                  text-align: left;
                  margin: auto;
                  padding: 1rem;
                  background-color: #1571DA;
                  margin-bottom: 2rem;
                  position: relative; }
                  html body main section div.inner .flow_wrap .flow li br {
                    display: none; }
                  html body main section div.inner .flow_wrap .flow li:after {
                    left: 4px;
                    width: 1rem;
                    height: 1rem;
                    border-top: 2px solid #1571DA;
                    border-right: 2px solid #1571DA;
                    -webkit-transform: rotate(45deg);
                    transform: rotate(45deg);
                    content: "";
                    display: block;
                    position: absolute;
                    transform: rotate(135deg);
                    left: 0;
                    right: 0;
                    margin: auto;
                    bottom: -1rem; }
                  html body main section div.inner .flow_wrap .flow li:last-of-type:after {
                    display: none; } }
              html body main section div.inner .flow_wrap .flow li img {
                width: 100%;
                height: auto;
                filter: drop-shadow(3px 0px 4px #333); }
                @media (max-width: 622px) {
                  html body main section div.inner .flow_wrap .flow li img {
                    display: none; } }
              html body main section div.inner .flow_wrap .flow li span {
                text-align: center;
                height: 3rem;
                position: absolute;
                left: -2rem;
                right: 0;
                bottom: 0;
                top: 0;
                margin: auto;
                z-index: 111;
                font-weight: bold;
                color: white;
                display: inline-flex;
                align-items: center;
                justify-content: center; }
                @media (max-width: 622px) {
                  html body main section div.inner .flow_wrap .flow li span {
                    color: white;
                    position: inherit;
                    text-align: center;
                    display: block;
                    left: 0;
                    height: auto; } }
          html body main section div.inner .casestudy_wrap {
            display: flex;
            flex-wrap: wrap; }
            html body main section div.inner .casestudy_wrap article {
              width: 25%;
              margin-bottom: 1rem;
              padding: 0 0.5rem;
              display: block;
              position: relative; }
              @media (max-width: 622px) {
                html body main section div.inner .casestudy_wrap article {
                  width: 49%; } }
              html body main section div.inner .casestudy_wrap article .figure_wrap {
                position: relative; }
                html body main section div.inner .casestudy_wrap article .figure_wrap .category {
                  background-color: #fafafa;
                  position: absolute;
                  bottom: -15%;
                  padding: 0.5rem 1rem;
                  color: #081059;
                  z-index: 1; }
                  @media (max-width: 1346px) {
                    html body main section div.inner .casestudy_wrap article .figure_wrap .category {
                      bottom: -15%; } }
                  @media (max-width: 622px) {
                    html body main section div.inner .casestudy_wrap article .figure_wrap .category {
                      bottom: -15%;
                      font-size: 80%; } }
                html body main section div.inner .casestudy_wrap article .figure_wrap figure {
                  position: relative;
                  overflow: hidden; }
                  html body main section div.inner .casestudy_wrap article .figure_wrap figure .method {
                    border-radius: 10rem;
                    background-color: #1571DA;
                    color: white;
                    width: auto;
                    height: auto;
                    position: absolute;
                    right: 0.5rem;
                    top: 0.5rem;
                    display: flex;
                    align-items: center;
                    padding: 0.25rem 1rem;
                    justify-content: center;
                    font-size: 0.7rem;
                    z-index: 1; }
                    html body main section div.inner .casestudy_wrap article .figure_wrap figure .method.hand {
                      background-color: yellow;
                      color: black; }
                  html body main section div.inner .casestudy_wrap article .figure_wrap figure img {
                    width: 100%;
                    height: auto;
                    transition: all ease 0.5s; }
              html body main section div.inner .casestudy_wrap article h3 {
                padding: 2rem 0 1rem;
                font-weight: bold;
                color: #081059; }
          html body main section div.inner .method_container h3 {
            font-weight: bold;
            color: #1571DA;
            font-size: 1.75rem;
            line-height: 1.65; }
            @media (max-width: 622px) {
              html body main section div.inner .method_container h3 {
                font-size: 1.5rem; } }
          html body main section div.inner .method_container .tab_wrap {
            display: flex;
            justify-content: center; }
            html body main section div.inner .method_container .tab_wrap .tab {
              background-color: white;
              padding: 1.5rem 1rem;
              border-radius: 0.5rem;
              width: 30%;
              text-align: center;
              font-weight: bold;
              margin: 0 1rem;
              cursor: pointer;
              transition: all ease-in-out 0.5s; }
              @media (max-width: 622px) {
                html body main section div.inner .method_container .tab_wrap .tab {
                  width: 48%; } }
              html body main section div.inner .method_container .tab_wrap .tab.active {
                background-color: #1571DA;
                color: white; }
              html body main section div.inner .method_container .tab_wrap .tab:hover {
                box-shadow: 0 0 12px #1571DA; }
          html body main section div.inner .method_container .method_wrap {
            display: none;
            margin-top: 2rem;
            background-color: white;
            position: relative;
            padding: 2rem 2rem; }
            @media (max-width: 622px) {
              html body main section div.inner .method_container .method_wrap {
                padding: 2rem 1rem; } }
            html body main section div.inner .method_container .method_wrap.active {
              display: block; }
            html body main section div.inner .method_container .method_wrap:before {
              content: "";
              display: block;
              background-color: #fff;
              position: absolute;
              right: -100%;
              top: 0;
              width: 100%;
              height: 100%; }
            html body main section div.inner .method_container .method_wrap .method_split {
              display: flex;
              margin-top: 1rem;
              margin-bottom: 2rem;
              justify-content: space-between; }
              @media (max-width: 622px) {
                html body main section div.inner .method_container .method_wrap .method_split {
                  flex-direction: column-reverse; } }
              html body main section div.inner .method_container .method_wrap .method_split .method_detail {
                width: 49%; }
                @media (max-width: 622px) {
                  html body main section div.inner .method_container .method_wrap .method_split .method_detail {
                    width: 100%; } }
                html body main section div.inner .method_container .method_wrap .method_split .method_detail p {
                  line-height: 1.65; }
                html body main section div.inner .method_container .method_wrap .method_split .method_detail ul {
                  margin-top: 1rem; }
                  html body main section div.inner .method_container .method_wrap .method_split .method_detail ul li {
                    font-size: 1.375rem;
                    font-weight: bold;
                    color: #081059;
                    display: flex;
                    align-items: center;
                    margin-bottom: 1rem; }
                    @media (max-width: 622px) {
                      html body main section div.inner .method_container .method_wrap .method_split .method_detail ul li {
                        font-size: 1.15rem; } }
                    html body main section div.inner .method_container .method_wrap .method_split .method_detail ul li figure {
                      margin-right: 1rem;
                      width: 3.5rem;
                      height: 3.5rem;
                      min-width: 3.5rem;
                      max-height: 3.5rem;
                      border-radius: 5rem;
                      box-shadow: 0 0 12px #999;
                      background-color: white;
                      display: flex;
                      align-items: center;
                      justify-content: center; }
                      html body main section div.inner .method_container .method_wrap .method_split .method_detail ul li figure img {
                        width: 50%;
                        height: auto; }
              html body main section div.inner .method_container .method_wrap .method_split .method_slider {
                width: 45%; }
                @media (max-width: 622px) {
                  html body main section div.inner .method_container .method_wrap .method_split .method_slider {
                    width: 100%;
                    margin-bottom: 2rem; } }
                html body main section div.inner .method_container .method_wrap .method_split .method_slider .swiper .swiper-wrapper .swiper-slide {
                  overflow: hidden;
                  border-radius: 0.5rem; }
                  html body main section div.inner .method_container .method_wrap .method_split .method_slider .swiper .swiper-wrapper .swiper-slide img {
                    width: 100%;
                    height: auto; }
            html body main section div.inner .method_container .method_wrap .method_article {
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap;
              margin-top: 2rem; }
              html body main section div.inner .method_container .method_wrap .method_article:after {
                content: "";
                display: block;
                width: 32%; }
                @media (max-width: 622px) {
                  html body main section div.inner .method_container .method_wrap .method_article:after {
                    width: 48%; } }
              html body main section div.inner .method_container .method_wrap .method_article article {
                width: 32%; }
                @media (max-width: 622px) {
                  html body main section div.inner .method_container .method_wrap .method_article article {
                    width: 48%; } }
                html body main section div.inner .method_container .method_wrap .method_article article figure {
                  overflow: hidden;
                  border-radius: 1rem; }
                  html body main section div.inner .method_container .method_wrap .method_article article figure img {
                    width: 100%;
                    height: auto; }
                html body main section div.inner .method_container .method_wrap .method_article article h4 {
                  padding: 0.5rem 1rem;
                  font-weight: bold;
                  font-size: 1.25rem; }
                html body main section div.inner .method_container .method_wrap .method_article article p {
                  padding: 0rem 1rem;
                  font-size: 0.875rem;
                  line-height: 1.8; }
        html body main section.point_section {
          background-color: #FFFDC7; }
        html body main section.method_section {
          background-color: #ACD9FD; }
        html body main section.Seismic_section {
          background-color: #F2F2F2; }
        html body main section.cta_section {
          background-color: #1571DA;
          position: relative; }
          html body main section.cta_section .floating {
            position: absolute;
            right: 0;
            height: 90%;
            width: auto;
            bottom: 0;
            filter: drop-shadow(0px 0px 22px #1571DA); }
            @media screen and (max-width: 1000px) {
              html body main section.cta_section .floating {
                right: -15%; } }
            @media screen and (max-width: 767px) {
              html body main section.cta_section .floating {
                display: none; } }
          html body main section.cta_section .inner {
            position: relative;
            z-index: 1;
            padding: 0 1rem; }
          html body main section.cta_section .tel_wrap {
            display: flex;
            justify-content: flex-start;
            margin-left: 0; }
          html body main section.cta_section .link_wrap a {
            margin-left: 0; }
          html body main section.cta_section .related_wrap {
            background-color: white;
            display: flex;
            max-width: 926px;
            margin: auto;
            justify-content: space-between;
            align-items: center;
            padding: 2rem;
            margin-left: 0; }
            @media (max-width: 622px) {
              html body main section.cta_section .related_wrap {
                display: block;
                margin: auto;
                width: calc(100% - 2rem); } }
            html body main section.cta_section .related_wrap p {
              font-weight: bold;
              font-size: 1.25rem; }
              @media (max-width: 622px) {
                html body main section.cta_section .related_wrap p {
                  text-align: center;
                  margin-bottom: 1rem; } }
            html body main section.cta_section .related_wrap .link_wrap {
              min-width: 40%; }
              @media (max-width: 622px) {
                html body main section.cta_section .related_wrap .link_wrap a {
                  margin: auto; } }
          html body main section.cta_section .tel_wrap {
            max-width: 926px;
            margin: auto;
            padding: 2rem 1rem;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            margin-left: 0; }
            @media (max-width: 780px) {
              html body main section.cta_section .tel_wrap {
                display: block; } }
            html body main section.cta_section .tel_wrap p {
              color: white;
              font-weight: bold;
              font-size: 1.5rem;
              margin-right: 1rem; }
              @media (max-width: 780px) {
                html body main section.cta_section .tel_wrap p {
                  text-align: left;
                  margin: auto; } }
              @media (max-width: 622px) {
                html body main section.cta_section .tel_wrap p {
                  text-align: center;
                  font-size: 4vw; } }
            html body main section.cta_section .tel_wrap .tel {
              margin-right: 0.5rem;
              display: flex;
              align-items: center;
              font-size: 3rem;
              font-family: 'Roboto', sans-serif;
              font-weight: 700;
              color: white; }
              @media (max-width: 622px) {
                html body main section.cta_section .tel_wrap .tel {
                  font-size: 10vw; } }
              @media (max-width: 350px) {
                html body main section.cta_section .tel_wrap .tel {
                  font-size: 1.5rem; } }
              html body main section.cta_section .tel_wrap .tel:before {
                background-image: url(../png/tel.png);
                width: 3rem;
                height: 3rem;
                background-size: cover;
                content: "";
                display: inline-block;
                margin-right: 1rem; }
              @media (max-width: 780px) {
                html body main section.cta_section .tel_wrap .tel {
                  justify-content: flex-start; } }
              @media (max-width: 622px) {
                html body main section.cta_section .tel_wrap .tel {
                  justify-content: center; } }
            html body main section.cta_section .tel_wrap small {
              color: white;
              font-size: 1rem;
              font-weight: bold; }
              @media (max-width: 780px) {
                html body main section.cta_section .tel_wrap small {
                  text-align: left;
                  margin: auto;
                  width: 100%;
                  display: block; } }
              @media (max-width: 622px) {
                html body main section.cta_section .tel_wrap small {
                  text-align: center;
                  font-size: 4vw; } }
          html body main section.cta_section .cta_title .detail p {
            font-weight: bold;
            color: white; }
            @media (max-width: 622px) {
              html body main section.cta_section .cta_title .detail p {
                text-align: center; } }
          html body main section.cta_section .cta_title .detail h2 {
            font-size: 2.8rem;
            color: white;
            font-weight: bold;
            letter-spacing: 0.1em; }
            @media (max-width: 622px) {
              html body main section.cta_section .cta_title .detail h2 {
                font-size: 1.5rem;
                text-align: center; } }
        html body main section.gimon_shitsumon {
          background-color: #ACD9FF; }
          html body main section.gimon_shitsumon .bold {
            font-size: 1.5rem;
            text-align: center;
            font-weight: bold;
            line-height: 1.65;
            color: #5F5F5F; }
            @media (max-width: 622px) {
              html body main section.gimon_shitsumon .bold {
                font-size: 1.25rem; } }
          html body main section.gimon_shitsumon .gimon_article_wrap {
            max-width: 80rem;
            margin: auto;
            display: flex;
            flex-wrap: wrap; }
            html body main section.gimon_shitsumon .gimon_article_wrap article {
              padding: 0 1rem;
              width: calc(100% / 3);
              position: relative; }
              @media (max-width: 622px) {
                html body main section.gimon_shitsumon .gimon_article_wrap article {
                  width: 100%; } }
              html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(odd) figure {
                margin-left: auto; }
              html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(odd) .fukidashi {
                margin-right: auto; }
                html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(odd) .fukidashi .tri {
                  transform: rotate(-25deg);
                  right: 15%; }
              html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(even) figure {
                margin-right: auto; }
              html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(even) .fukidashi {
                margin-left: auto; }
                html body main section.gimon_shitsumon .gimon_article_wrap article:nth-of-type(even) .fukidashi .tri {
                  transform: rotate(25deg);
                  left: 15%; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon1 .fukidashi {
                background-color: #FDC5C5; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon1 .fukidashi .tri {
                  border-color: #FDC5C5 transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon2 .fukidashi {
                background-color: #FFEAB7; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon2 .fukidashi .tri {
                  border-color: #FFEAB7 transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon3 .fukidashi {
                background-color: #D2EBEF; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon3 .fukidashi .tri {
                  border-color: #D2EBEF transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon4 .fukidashi {
                background-color: #DBF0CB; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon4 .fukidashi .tri {
                  border-color: #DBF0CB transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon5 .fukidashi {
                background-color: #CCDEF7; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon5 .fukidashi .tri {
                  border-color: #CCDEF7 transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article.gimon6 .fukidashi {
                background-color: #E4DFEB; }
                html body main section.gimon_shitsumon .gimon_article_wrap article.gimon6 .fukidashi .tri {
                  border-color: #E4DFEB transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article .fukidashi {
                width: 90%;
                border-radius: 1rem;
                background-color: gray;
                position: relative;
                padding: 2rem 1rem; }
                html body main section.gimon_shitsumon .gimon_article_wrap article .fukidashi p {
                  font-weight: bold;
                  text-align: center;
                  font-size: 1.25rem; }
                html body main section.gimon_shitsumon .gimon_article_wrap article .fukidashi .tri {
                  position: absolute;
                  width: 0;
                  height: 0;
                  border-style: solid;
                  border-width: 60px 30px 0 30px;
                  border-color: #007bff transparent transparent transparent; }
              html body main section.gimon_shitsumon .gimon_article_wrap article figure {
                position: relative;
                top: -2rem;
                width: 6rem;
                height: 6rem; }
                html body main section.gimon_shitsumon .gimon_article_wrap article figure img {
                  width: 100%; }
          html body main section.gimon_shitsumon .gimon_title {
            max-width: 80rem;
            margin: auto;
            position: relative;
            align-items: center;
            padding: 1rem; }
            html body main section.gimon_shitsumon .gimon_title .title {
              margin-left: auto;
              position: absolute;
              right: 0;
              top: 0;
              bottom: 0;
              width: 60%;
              display: flex;
              flex-direction: column;
              justify-content: center; }
              @media (max-width: 622px) {
                html body main section.gimon_shitsumon .gimon_title .title {
                  position: relative;
                  width: 100%; } }
              html body main section.gimon_shitsumon .gimon_title .title h2 img {
                width: 100%;
                height: auto; }
              html body main section.gimon_shitsumon .gimon_title .title p {
                margin-top: 2rem;
                font-weight: bold;
                font-size: 1.25rem;
                color: #5F5F5F; }
            html body main section.gimon_shitsumon .gimon_title figure {
              width: 40%;
              left: -5%;
              top: 0;
              bottom: 0;
              position: relative; }
              @media (max-width: 622px) {
                html body main section.gimon_shitsumon .gimon_title figure {
                  position: initial;
                  width: 80%;
                  margin: auto;
                  letter-spacing: 0;
                  margin-bottom: 1rem; } }
              html body main section.gimon_shitsumon .gimon_title figure img {
                width: 100%;
                height: auto; }
    html body footer {
      background-color: #081059;
      padding: 2rem 1rem;
      color: white; }
      html body footer .logo {
        display: block;
        margin: auto;
        text-align: center;
        max-width: 14rem;
        margin: 2rem auto; }
        html body footer .logo img {
          width: 100%;
          height: auto; }
      html body footer p {
        text-align: center; }

.button-prev.swiper-button-disabled, .button-next.swiper-button-disabled {
  opacity: 0.6;
  cursor: auto; }

.button-prev {
  border-radius: 5rem;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 5%;
  width: 2rem;
  height: 2rem;
  z-index: 111;
  cursor: pointer; }
  .button-prev:after {
    content: "";
    left: 0;
    top: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    width: 12px;
    height: 12px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(-135deg);
    display: block;
    margin-right: 25%;
    position: absolute; }

.button-next {
  border-radius: 5rem;
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 5%;
  width: 2rem;
  height: 2rem;
  z-index: 111;
  cursor: pointer; }
  .button-next:after {
    content: "";
    left: 0;
    top: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    width: 12px;
    height: 12px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    display: block;
    margin-left: 25%;
    position: absolute; }
