@keyframes yura {
  0% {
    transform: rotate(5deg); }
  25% {
    transform: rotate(-5deg); }
  50% {
    transform: rotate(5deg); }
  75% {
    transform: rotate(-5deg); }
  100% {
    transform: rotate(5deg); } }
@keyframes hoverin {
  0% {
    transform: translateX(-101%);
    opacity: 1; }
  100% {
    transform: translateX(0);
    opacity: 1; } }
@keyframes hoverout {
  0% {
    transform: translateY(0);
    left: 0;
    opacity: 1; }
  100% {
    transform: translateY(0);
    left: 101%;
    opacity: 1; } }
@keyframes hoverin_reverse {
  0% {
    transform: translateX(101%);
    opacity: 1; }
  100% {
    transform: translateX(0);
    opacity: 1; } }
@keyframes hoverout_reverse {
  0% {
    transform: translateY(0);
    left: 0;
    opacity: 1; }
  100% {
    transform: translateY(0);
    left: -101%;
    opacity: 1; } }
/*
.buruburu {
    display: inline-block;
    animation: hurueru .1s  infinite;
}*/
@keyframes hurueru {
  0% {
    transform: translate(0px, 0px) rotateZ(0deg); }
  25% {
    transform: translate(2px, 2px) rotateZ(1deg); }
  50% {
    transform: translate(0px, 2px) rotateZ(0deg); }
  75% {
    transform: translate(2px, 0px) rotateZ(-1deg); }
  100% {
    transform: translate(0px, 0px) rotateZ(0deg); } }
@keyframes wave {
  0% {
    background-position: 0 0; }
  100% {
    background-position: round-decimal(5.2083333333vw, 3) 0; } }
@media screen and (min-width: 768px) {
  @keyframes wave {
    0% {
      background-position: 0 0; }
    100% {
      background-position: 100px 0; } } }
@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes hoverin {
  0% {
    transform: translateX(-101%);
    opacity: 1; }
  100% {
    transform: translateX(0);
    opacity: 1; } }
@keyframes hoverout {
  0% {
    transform: translateY(0);
    left: 0;
    opacity: 1; }
  100% {
    transform: translateY(0);
    left: 101%;
    opacity: 1; } }
@keyframes hoverinr {
  0% {
    transform: translateX(101%);
    opacity: 1; }
  100% {
    transform: translateX(0);
    opacity: 1; } }
@keyframes hoveroutr {
  0% {
    transform: translateY(0);
    left: 0;
    opacity: 1; }
  100% {
    transform: translateY(0);
    left: -101%;
    opacity: 1; } }
#contents {
  background: #faf8f5; }

.first_area .mv {
  width: 100%;
  height: 133vw;
  position: relative;
  overflow: hidden; }
  .first_area .mv .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    .first_area .mv .bg img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .first_area .mv h1 {
    width: 67vw;
    position: absolute;
    left: 2vw;
    bottom: 14.7vw; }
.first_area .search {
  padding: 6vw 0 0; }
  .first_area .search .search_box h2 {
    width: 100%;
    height: 7.2vw; }
    .first_area .search .search_box h2 img {
      width: auto;
      height: 100%;
      max-width: inherit;
      margin: 0 auto; }
  .first_area .search .search_box .search_text {
    padding: 0 4vw; }
    .first_area .search .search_box .search_text .form_wrap {
      position: relative;
      margin-top: 4.5vw; }
    .first_area .search .search_box .search_text input[type="search"] {
      display: block;
      width: 100%;
      height: 10vw;
      border-radius: 1.5vw;
      border: solid 1px #ccc;
      padding: 0 16.4vw 0 5.7vw;
      background: #fff; }
      .first_area .search .search_box .search_text input[type="search"]::placeholder {
        color: #ccc; }
    .first_area .search .search_box .search_text .btn_search {
      display: block;
      width: 16.4vw;
      height: 10vw;
      position: absolute;
      right: 0;
      top: 0;
      border-radius: 0 1.5vw 1.5vw 0;
      background: #004098; }
      .first_area .search .search_box .search_text .btn_search input {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 0 1.5vw 1.5vw 0;
        color: #fff;
        font-size: 0; }
      .first_area .search .search_box .search_text .btn_search:before {
        content: "";
        width: 4.9vw;
        height: 4.9vw;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        background: url("/images/user/common/icon_search.png") no-repeat center center/contain;
        pointer-events: none;
        z-index: 999; }
    .first_area .search .search_box .search_text .keyword_sample {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 3.8vw 0 0; }
      .first_area .search .search_box .search_text .keyword_sample p, .first_area .search .search_box .search_text .keyword_sample .sample {
        font-size: 3vw; }
      .first_area .search .search_box .search_text .keyword_sample .sample {
        background: #fff;
        border-radius: 1vw;
        padding: 0 1.5vw; }
        .first_area .search .search_box .search_text .keyword_sample .sample + .sample {
          margin-left: 1.5vw; }
  .first_area .search .search_box .search_conditions {
    margin-top: 15vw; }
    .first_area .search .search_box .search_conditions h3 {
      display: flex;
      align-items: center;
      font-weight: 700;
      color: #004098;
      line-height: 1; }
      .first_area .search .search_box .search_conditions h3 span {
        font-size: 3.6vw;
        padding-top: 0.7vw; }
      .first_area .search .search_box .search_conditions h3 i {
        display: block;
        width: auto;
        height: 5vw;
        margin-right: 2.3vw; }
        .first_area .search .search_box .search_conditions h3 i img {
          width: auto;
          height: 100%;
          max-width: inherit; }
    .first_area .search .search_box .search_conditions form {
      padding: 0 4vw 0;
      margin-top: 4vw; }
      .first_area .search .search_box .search_conditions form .bg {
        background: #fff;
        border: solid 1px #ccc;
        border-radius: 3vw;
        padding: 4vw 4vw 4vw; }
      .first_area .search .search_box .search_conditions form .inner {
        padding: 0;
        background: #faf8f5;
        border-radius: 1.4vw; }
        .first_area .search .search_box .search_conditions form .inner + .inner {
          padding-top: 0;
          margin-top: 4vw; }
        .first_area .search .search_box .search_conditions form .inner h3 {
          background: #f2e8da;
          color: #004098;
          font-size: 3.6vw;
          font-weight: 700;
          padding: 1.5vw 3.6vw;
          border-radius: 1.4vw 1.4vw 0 0; }
        .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox {
          display: flex;
          flex-wrap: wrap;
          padding: 4vw;
          position: relative; }
          .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox.area label {
            display: none; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox.area label.active {
              display: block; }
          .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li {
              width: calc((100% - 2vw) / 2);
              height: 12vw;
              border: 1px solid #cccccc;
              border-radius: 0.8vw;
              font-size: 3.4vw;
              cursor: pointer;
              background: #fff;
              transition: opacity 0.3s; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                width: 100%;
                height: 100%;
                position: relative; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span:before, .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span:after {
                  content: "";
                  width: 2.6vw;
                  height: 1.6vw;
                  background: url("/images/user/common/icon_arr-blue.png") no-repeat center bottom/contain;
                  position: absolute;
                  right: 1.9vw;
                  top: 0;
                  bottom: 0;
                  margin: auto;
                  transform: rotate(-90deg); }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li:nth-of-type(n + 3) {
                margin-top: 2vw; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li:hover {
                opacity: 0.7; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul.aria_hidden {
              display: none; }
          .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label {
            display: inline-flex;
            justify-content: center;
            align-items: center;
            position: relative;
            width: calc((100% - 2vw) / 2);
            height: 12vw;
            border-radius: 6vw;
            border: solid 1px #ccc;
            background-color: #fff;
            transition: opacity 0.3s; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span {
              display: flex;
              align-items: center;
              justify-content: center;
              width: 100%;
              height: 100%;
              position: relative;
              pointer-events: none;
              border-radius: 6vw;
              border: 2px solid transparent;
              font-size: 3.4vw; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:before, .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:after {
                content: "";
                width: 3vw;
                height: 3vw;
                position: absolute;
                left: 4vw;
                top: 0;
                bottom: 0;
                margin: auto;
                background-repeat: no-repeat;
                background-size: contain;
                background-position: center center; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:before {
                background-image: url("/images/user/common/icon_check_gray.png"); }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:after {
                background-image: url("/images/user/common/icon_check_blue.png");
                opacity: 0; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span {
              border: 2px solid #004098;
              color: #004098;
              font-weight: 700;
              background: #fee7e3; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span:before {
                opacity: 0; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span:after {
                opacity: 1; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label:nth-of-type(even) {
              margin-left: 2vw; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label:nth-of-type(n + 3) {
              margin-top: 2vw; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label:hover {
              opacity: 0.7; }
      .first_area .search .search_box .search_conditions form .clear {
        text-align: center;
        margin: 1.5vw auto 0; }
        .first_area .search .search_box .search_conditions form .clear i {
          display: block;
          width: 2.9vw;
          height: 2.7vw;
          display: inline-block;
          margin-right: 2.1vw;
          vertical-align: middle; }
        .first_area .search .search_box .search_conditions form .clear input {
          color: #004098;
          text-decoration: underline;
          display: inline-block;
          cursor: pointer; }
        .first_area .search .search_box .search_conditions form .clear:hover input {
          text-decoration: none; }
    .first_area .search .search_box .search_conditions .btn_search {
      width: 100%;
      height: 14vw;
      background: #004098;
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 2vw;
      margin-top: 4vw; }
      .first_area .search .search_box .search_conditions .btn_search input {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
      .first_area .search .search_box .search_conditions .btn_search i {
        display: block;
        width: 3.3vw;
        height: 3.3vw;
        position: relative;
        margin-right: 2.7vw; }
        .first_area .search .search_box .search_conditions .btn_search i:before {
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          background: url("/images/user/common/icon_search.png") no-repeat center center/contain;
          pointer-events: none; }
      .first_area .search .search_box .search_conditions .btn_search span {
        font-size: 4vw;
        line-height: 1;
        color: #fff;
        padding: 0.5vw 0 0; }

#sec-pickup {
  padding: 11.7vw 0 0; }
  #sec-pickup h2 {
    width: 36.8vw;
    margin: 0 auto;
    position: relative;
    z-index: 50; }
  #sec-pickup .slider_wrap {
    margin-top: 12vw;
    position: relative;
    padding-bottom: 18vw;}
    #sec-pickup .slider_wrap:before, #sec-pickup .slider_wrap:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0; }
    #sec-pickup .slider_wrap:before {
      background: url("/images/user/top/sec-pickup_bg.png") no-repeat center top/cover;
      top: -19vw; }
    #sec-pickup .slider_wrap:after {
      background: #f2e8da;
      height: 50%;
      top: auto;
      bottom: 0; }
  #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide {
    width: 85vw;
    padding: 0 3.5vw;
    position: relative; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .bg_link {
      position: absolute;
      display: block;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: 10; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .swiper-slide_wrap {
      pointer-events: none;
      position: relative;
      z-index: 15; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .text {
      padding-left: 3vw;
      margin-top: 4vw; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide h3 {
      font-size: 3.6vw;
      color: #004098;
      font-weight: 700;
      padding-left: 3vw;
      position: relative; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide h3:before {
        content: "";
        width: 1.8vw;
        height: 1.2vw;
        background: url("/images/user/common/icon_arr-blue.png") no-repeat center bottom/contain;
        transform: rotate(-90deg);
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        margin: auto; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide h3 span {
        text-decoration: underline; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl {
      display: flex;
      flex-wrap: wrap; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dt, #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd {
        font-size: 3.2vw;
        color: #444444; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dt {
        width: 18vw;
        font-weight: 700; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd {
        width: calc(100% - 18vw); }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd a {
          display: inline-block;
          background: #fff;
          border-radius: 1vw;
          padding: 0 1vw;
          line-height: 2;
          margin: 0.7vw 0.35vw;
          font-size: 3vw;
          pointer-events: auto;
          transition: opacity 0.3s; }
          #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd a:hover {
            opacity: 0.7; }
  #sec-pickup .swiper.pickup .swiper-button-prev, #sec-pickup .swiper.pickup .swiper-button-next {
    width: 8vw;
    height: 8vw;
    background: #004098;
    border-radius: 50%;
    top: 21.4vw;
    display: block;
    position: absolute;
    overflow: hidden; }
    #sec-pickup .swiper.pickup .swiper-button-prev:before, #sec-pickup .swiper.pickup .swiper-button-next:before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      opacity: 0;
      transition: opacity 0.3s;
      background-image: linear-gradient(to right, #004098, #1267db);
      pointer-events: none; }
    #sec-pickup .swiper.pickup .swiper-button-prev:after, #sec-pickup .swiper.pickup .swiper-button-next:after {
      content: '';
      width: 2.6vw;
      height: 4.2vw;
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
    #sec-pickup .swiper.pickup .swiper-button-prev:hover:before, #sec-pickup .swiper.pickup .swiper-button-next:hover:before {
      opacity: 1; }
  #sec-pickup .swiper.pickup .swiper-button-prev {
    left: 2vw; }
    #sec-pickup .swiper.pickup .swiper-button-prev:after {
      background-image: url("/images/user/common/icon_prev.png");
      background-position: left center; }
  #sec-pickup .swiper.pickup .swiper-button-next {
    right: 2vw; }
    #sec-pickup .swiper.pickup .swiper-button-next:before {
      transform: rotate(180deg); }
    #sec-pickup .swiper.pickup .swiper-button-next:after {
      background-image: url("/images/user/common/icon_next.png");
      background-position: right center; }

#sec-service {
  padding: 20vw 0 18vw; }
  #sec-service .wrap_service h2 {
    width: 70.5vw;
    margin: 0 auto; }
  #sec-service .wrap_service .sec-service_box01 {
    padding: 0 4vw 13.3vw;
    position: relative;
    margin: 18.7vw 0 0; }
    #sec-service .wrap_service .sec-service_box01:before {
      content: "";
      width: 90vw;
      height: calc(100% - 8.2vw);
      background: #fff;
      border-radius: 0 2.7vw 2.7vw 0;
      position: absolute;
      left: 0;
      top: 8.2vw; }
    #sec-service .wrap_service .sec-service_box01 .detail {
      position: relative;
      z-index: 50; }
      #sec-service .wrap_service .sec-service_box01 .detail h3 {
        width: 58.4vw;
        margin: 0 auto; }
      #sec-service .wrap_service .sec-service_box01 .detail p {
        font-size: 3.4vw;
        line-height: 2.21;
        text-align: center;
        margin-top: 6.5vw; }
    #sec-service .wrap_service .sec-service_box01 .visual {
        width: 92vw;
        height: 51.8vw;
        margin-top: 9vw;
        position: relative;
        z-index: 50;
        aspect-ratio: 16 / 9;
        border: 1px solid #00358d;
        box-shadow: 2vw 2vw 2vw 0px rgba(0, 0, 0, 0.15); }
        #sec-service .wrap_service .sec-service_box01 .visual iframe {
          width: 100%;
          height: 100%; }
  #sec-service .wrap_service .sec-service_box02 {
    padding-top: 11vw; }
    #sec-service .wrap_service .sec-service_box02 h3 {
      width: 31vw;
      margin: 0 auto 10.6vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box h4 {
      margin-bottom: 7vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box .inner {
      display: flex;
      justify-content: space-between;
      padding: 0 3.5vw 0 8vw; }
      #sec-service .wrap_service .sec-service_box02 .detail_box .inner .img {
        width: 35vw;
        height: 37vw;
        border-radius: 4vw;
        background: #f2e8da;
        position: relative; }
        #sec-service .wrap_service .sec-service_box02 .detail_box .inner .img img {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          min-width: inherit;
          height: auto; }
      #sec-service .wrap_service .sec-service_box02 .detail_box .inner .text {
        width: calc(100% - 35vw);
        padding-left: 7vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box + .detail_box {
      margin-top: 16vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box_01 .img img {
      width: 40vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box_02 .inner {
      flex-direction: row-reverse;
      padding: 0 8vw 0 4vw; }
      #sec-service .wrap_service .sec-service_box02 .detail_box_02 .inner .text {
        padding-left: 0;
        padding-right: 7vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box_02 .img img {
      width: 43.5vw; }
    #sec-service .wrap_service .sec-service_box02 .detail_box_03 .img img {
      width: 45.4vw; }

#sec-flow-use {
  background: #f2e8da;
  padding: 20vw 0;
  text-align: center; }
  #sec-flow-use h2 {
    width: 52vw;
    margin: 0 auto 6.5vw; }
    #sec-flow-use h2 + p {
      font-size: 3.4vw; }
  #sec-flow-use .tab_wrap {
    padding: 0 4vw;
    border-radius: 4vw;
    overflow: hidden;
    margin-top: 7vw; }
    #sec-flow-use .tab_wrap .tab_btns {
      display: flex; }
      #sec-flow-use .tab_wrap .tab_btns li {
        width: 50%;
        height: 15vw;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        cursor: pointer; }
        #sec-flow-use .tab_wrap .tab_btns li:before {
          content: "";
          width: 100%;
          height: 100%;
          background: #fff;
          position: absolute;
          left: 0;
          top: 0;
          opacity: 0.6; }
        #sec-flow-use .tab_wrap .tab_btns li i {
          display: block;
          width: 2.8vw;
          height: 1.8vw;
          background: url("/images/user/common/icon_arr-blue.png") no-repeat center bottom/contain;
          position: relative;
          z-index: 50;
          margin-right: 4vw;
          transform: rotate(-90deg);
          transform-origin: center center;
          transition: transform 0.3s; }
        #sec-flow-use .tab_wrap .tab_btns li img {
          width: auto;
          min-width: inherit;
          height: 8.1vw;
          margin: 0 auto;
          position: relative;
          z-index: 50; }
        #sec-flow-use .tab_wrap .tab_btns li:nth-of-type(1):before {
          border-radius: 4vw 0 0 0; }
        #sec-flow-use .tab_wrap .tab_btns li:nth-of-type(2):before {
          border-radius: 0 4vw 0 0; }
        #sec-flow-use .tab_wrap .tab_btns li.active i {
          transform: rotate(0); }
        #sec-flow-use .tab_wrap .tab_btns li.active:before {
          opacity: 1; }
    #sec-flow-use .tab_wrap .tab_contents {
      background: #fff;
      padding-bottom: 8vw;
      border-radius: 0 0 4vw 4vw; }
      #sec-flow-use .tab_wrap .tab_contents .tab_box {
        display: none; }
        #sec-flow-use .tab_wrap .tab_contents .tab_box.active {
          display: block; }
        #sec-flow-use .tab_wrap .tab_contents .tab_box.tab_box_fadein ol {
          opacity: 1; }
        #sec-flow-use .tab_wrap .tab_contents .tab_box ol {
          padding: 13vw 0 0;
          opacity: 0;
          transition: opacity 0.5s 0.2s; }
          #sec-flow-use .tab_wrap .tab_contents .tab_box ol li {
            display: flex;
            align-items: center;
            padding: 0 8vw; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li + li {
              margin-top: 8vw; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .thumb {
              position: relative;
              width: 38vw; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .thumb span {
                width: auto;
                height: 6.3vw;
                position: absolute;
                left: 1.4vw;
                top: -3vw; }
                #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .thumb span img {
                  width: auto;
                  height: 100%;
                  max-width: 100%; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text {
              width: calc(100% - 38vw);
              text-align: left;
              padding: 0 0 0 4vw; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text h5 {
                width: auto;
                height: 3.7vw;
                width: 100%;
                margin: 0 0 2vw; }
                #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text h5 img {
                  width: auto;
                  height: 100%;
                  max-width: 100%; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text p {
                line-height: 1.72;
                width: 100%; }

#sec-flow-apply {
  padding: 17vw 0 0;
  background: #004098; }
  #sec-flow-apply h2 {
    width: 63.8vw;
    margin: 0 auto 10vw; }
  #sec-flow-apply ol {
    padding: 0 4vw 12vw;
    list-style: none; }
    #sec-flow-apply ol li {
      width: 100%;
      height: 37vw;
      list-style: none;
      position: relative; }
      #sec-flow-apply ol li .inner {
        height: 100%;
        padding: 0 0 0 11.4vw;
        position: relative;
        display: flex;
        align-items: center;
        background-color: #f2e8da;
        border-radius: 4vw; }
      #sec-flow-apply ol li + li {
        margin-top: 16vw; }
      #sec-flow-apply ol li .img {
        width: 21.5vw; }
      #sec-flow-apply ol li .text {
        width: calc(100% - 21.5vw);
        padding-left: 7.2vw; }
        #sec-flow-apply ol li .text h3 {
          width: 100%;
          height: 5.2vw; }
          #sec-flow-apply ol li .text h3 img {
            width: auto;
            height: 100%;
            max-width: 100%; }
        #sec-flow-apply ol li .text p {
          font-size: 3.4vw;
          line-height: 1.62;
          margin-top: 2vw; }
      #sec-flow-apply ol li:before {
        content: "";
        width: 12.7vw;
        height: 10.2vw;
        background: url("/images/user/top/sec-flow_icon-arr.png") no-repeat right center/contain;
        transform: rotate(90deg);
        position: absolute;
        top: -13vw;
        left: 0;
        right: 0;
        margin: auto; }
      #sec-flow-apply ol li:nth-of-type(1):before {
        content: none; }

#sec-faq {
  margin-top: 0;
  padding-top: 20vw;
  padding-bottom: 15vw;
  background: #f2e8da; }
  #sec-faq h2 {
    width: 59.5vw;
    margin: 0 auto 10vw; }
  #sec-faq .faq_list {
    padding: 0 4vw; }
    #sec-faq .faq_list .item {
      border-top: 1px solid #ccc;
      padding: 0 0 6vw; }
      #sec-faq .faq_list .item .question, #sec-faq .faq_list .item .answer {
        position: relative; }
        #sec-faq .faq_list .item .question:before, #sec-faq .faq_list .item .answer:before {
          content: "";
          position: absolute;
          left: 0;
          top: 0; }
      #sec-faq .faq_list .item .question {
        font-size: 4vw;
        line-height: 1.38;
        font-weight: 600;
        padding: 7.5vw 12vw 0 8vw;
        cursor: pointer;
        transition: color 0.3s; }
        #sec-faq .faq_list .item .question i {
          display: block;
          width: 6vw;
          height: 6vw;
          position: absolute;
          right: 0;
          top: 7vw; }
          #sec-faq .faq_list .item .question i:before, #sec-faq .faq_list .item .question i:after {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            background: #004098; }
          #sec-faq .faq_list .item .question i:before {
            width: 100%;
            height: 0.4vw;
            top: 50%;
            margin-top: -0.2vw; }
          #sec-faq .faq_list .item .question i:after {
            width: 0.4vw;
            height: 100%;
            left: 50%;
            margin-left: -0.2vw;
            transform-origin: center center;
            transition: opacity 0.3s,transform 0.3s; }
        #sec-faq .faq_list .item .question:before {
          width: 5.6vw;
          height: 4.5vw;
          background: url(/images/user/common/icon-question.png) no-repeat center center/contain;
          top: 7.2vw; }
        #sec-faq .faq_list .item .question:hover {
          color: #004098; }
      #sec-faq .faq_list .item .answer {
        padding: 0 0 0 8vw;
        margin: 4vw 0 0;
        display: none; }
        #sec-faq .faq_list .item .answer:before {
          width: 5.5vw;
          height: 4.2vw;
          background: url("/images/user/common/icon-answer.png") no-repeat center center/contain;
          top: 0.8vw; }
      #sec-faq .faq_list .item:last-of-type {
        border-bottom: 1px solid #ccc; }
      #sec-faq .faq_list .item.active .question i:after {
        opacity: 0;
        transform: rotate(90deg); }
/* information_teaser */
.information_teaser {
padding: 4vw 0 0; }
.information_teaser .info_container {
  width: 92vw;
  margin: 0 auto;
  background: #dadada;
  padding: 4vw; }
  .information_teaser .info_container h2 {
    font-weight: bold;
    font-size: 1.3em;
    margin-bottom: 0.4em; }
  .information_teaser .info_container dl {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px solid #888; }
  .information_teaser .info_container dt {
    font-weight: bold; }
  .information_teaser .info_container dd + dd {
    margin-top: 1em;
    line-height: 1.5em; }
/* information_teaser */
@media screen and (max-width: 767px) {
  .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox.area {
    padding: 2vw 2vw 4vw; }
    .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox.area label {
      width: calc((100% - 4vw) / 2);
      margin-top: 2vw;
      margin-left: 1vw;
      margin-right: 1vw; }
      .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox.area label:nth-of-type(n + 3) {
        margin-top: 2vw; }

  #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .img {
              width: 70%;
              height: 210px;
              border-radius: 10px 10px 0 0;
              overflow: hidden;
              display: table-cell;
              text-align: center;
              vertical-align: middle;
              background: #ccc;
          }
  #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .img img {
      object-fit: contain;
      width: auto;
      height: auto;
      max-width: 100%;
      max-height: 210px;
      vertical-align: top;
      margin: auto;
  }
  #sec-service .wrap_service .sec-service_box02 .detail_box .inner .text {
    margin-top: -1.3vw; }
  #sec-service .wrap_service .sec-service_box02 .detail_box_01 .inner .img img {
    top: 42%;
    left: 46%; }
  #sec-service .wrap_service .sec-service_box02 .detail_box_02 .inner .img img {
    top: 44%;
    left: 49%; }
  #sec-service .wrap_service .sec-service_box02 .detail_box_03 .inner .img img {
    top: 46%;
    left: 46%; } }
@media screen and (min-width: 768px) {
  #siteHeader .header_nav {
    background: none;
    transition: background 0.3s; }
    #siteHeader .header_nav.fixed {
      background: #fff; }

  .first_area .mv {
    width: 100%;
    height: 100vh;
    padding: 130px 40px 20px;
    position: relative;
    overflow: hidden; }
    .first_area .mv .bg {
      overflow: hidden;
      position: relative;
      top: auto;
      left: auto;
      border-radius: 30px; }
    .first_area .mv h1 {
      width: auto;
      height: calc((724 / 1800) * 100vh);
      left: auto;
      right: 17%;
      top: calc((468 / 1800) * 150vh);
      bottom: auto; }
      .first_area .mv h1 img {
        width: auto;
        height: 100%;
        max-width: inherit; }
  .first_area .search {
    position: relative;
    padding: 40px 40px 0;
    width: 1180px;
    background: #faf8f5;
    margin: -120px auto 0;
    border-radius: 30px; }
    .first_area .search .search_box h2 {
      height: 36px; }
      .first_area .search .search_box h2 img {
        margin: 0; }
    .first_area .search .search_box .search_text {
      padding: 0;
      display: flex;
      justify-content: space-between; }
      .first_area .search .search_box .search_text h2 {
        width: 376px; }
      .first_area .search .search_box .search_text .form_wrap {
        width: 650px;
        margin-top: 0; }
      .first_area .search .search_box .search_text input[type="search"] {
        height: 40px;
        border-radius: 30px;
        padding: 0 160px 0 30px; }
      .first_area .search .search_box .search_text .btn_search {
        border-radius: 0 20px 20px 0;
        width: 160px;
        height: 40px; }
        .first_area .search .search_box .search_text .btn_search input {
          border-radius: 0 20px 20px 0;
          font-size: 17px;
          position: relative;
          z-index: 99;
          padding-left: 30px; }
        .first_area .search .search_box .search_text .btn_search:before {
          width: 16.5px;
          height: 16.5px;
          left: 40px;
          z-index: 999; }
      .first_area .search .search_box .search_text .keyword_sample {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 11px 0 0; }
        .first_area .search .search_box .search_text .keyword_sample p, .first_area .search .search_box .search_text .keyword_sample .sample {
          font-size: 15px; }
        .first_area .search .search_box .search_text .keyword_sample .sample {
          border-radius: 5px;
          padding: 0 7.5px; }
          .first_area .search .search_box .search_text .keyword_sample .sample + .sample {
            margin-left: 7.5px; }
    .first_area .search .search_box .search_conditions {
      margin-top: 55px; }
      .first_area .search .search_box .search_conditions h3 {
        display: flex;
        align-items: center;
        font-weight: 700;
        color: #004098;
        line-height: 1; }
        .first_area .search .search_box .search_conditions h3 span {
          font-size: 18px;
          padding-top: 6.5px; }
        .first_area .search .search_box .search_conditions h3 i {
          height: 25px;
          margin-right: 11.5px; }
      .first_area .search .search_box .search_conditions form {
        padding: 0;
        margin-top: 15px; }
        .first_area .search .search_box .search_conditions form .bg {
          border-radius: 15px;
          padding: 16.5px 16.5px;
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
        .first_area .search .search_box .search_conditions form .inner {
          padding: 0;
          width: calc(50% - 7px);
          border-radius: 7.5px;
          overflow: hidden; }
          .first_area .search .search_box .search_conditions form .inner + .inner {
            padding-top: 0;
            margin-top: 0; }
          .first_area .search .search_box .search_conditions form .inner h3 {
            font-size: 18px;
            font-weight: 700;
            padding: 7px 16px;
            border-radius: 7.5px 7.5px 0 0; }
          .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox {
            display: flex;
            flex-wrap: wrap;
            padding: 7px 6px 16px; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul {
              display: flex;
              justify-content: space-between;
              flex-wrap: wrap;
              padding: 0 6px; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li {
                width: 160px;
                height: 60px;
                border: 1px solid #cccccc;
                border-radius: 4px;
                font-size: 17px;
                cursor: pointer;
                background: #fff;
                margin-top: 9px; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span {
                  display: inline-flex;
                  align-items: center;
                  justify-content: center;
                  width: 100%;
                  height: 100%;
                  position: relative; }
                  .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span:before, .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li span:after {
                    content: "";
                    width: 13px;
                    height: 8px;
                    background: url("/images/user/common/icon_arr-blue.png") no-repeat center bottom/contain;
                    position: absolute;
                    right: 9.5px;
                    top: 0;
                    bottom: 0;
                    margin: auto;
                    transform: rotate(-90deg); }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li:nth-of-type(n + 3) {
                  margin-top: 9px; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox ul li:nth-of-type(n + 4) {
                  margin-top: 10px; }
            .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label {
              width: 160px;
              height: 60px;
              border-radius: 30px;
              margin: 9px 4.5px 0; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span {
                border-radius: 30px;
                border: 2px solid transparent;
                font-size: 17px;
                padding-left: 2.5px; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:before, .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label span:after {
                  width: 15px;
                  height: 15px;
                  left: 12px; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span {
                border: 2px solid #004098;
                color: #004098;
                font-weight: 700;
                background: #fee7e3; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span:before {
                  opacity: 0; }
                .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label input:checked + span:after {
                  opacity: 1; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label:nth-of-type(even) {
                margin-left: 4.5px; }
              .first_area .search .search_box .search_conditions form .inner .search_conditions_checkbox label:nth-of-type(n + 3) {
                margin-top: 9px; }
        .first_area .search .search_box .search_conditions form .clear {
          text-align: center;
          margin: 15px auto 0; }
          .first_area .search .search_box .search_conditions form .clear i {
            display: block;
            width: 14.5px;
            height: 13.5px;
            display: inline-block;
            margin-right: 10.5px;
            vertical-align: middle; }
          .first_area .search .search_box .search_conditions form .clear span {
            color: #004098;
            text-decoration: underline;
            display: inline-block; }
      .first_area .search .search_box .search_conditions .btn_search {
        height: 70px;
        border-radius: 10px;
        margin-top: 14px; }
        .first_area .search .search_box .search_conditions .btn_search i {
          display: block;
          width: 16.5px;
          height: 16.5px;
          margin-right: 13.5px; }
        .first_area .search .search_box .search_conditions .btn_search span {
          font-size: 20px;
          padding: 5px 0 0; }

  .menuevent_trigger {
    position: absolute;
    left: 0;
    top: 100vh;
    width: 100%;
    height: 100%;
    pointer-events: none; }

  .sec-ad {
    padding: 3vw 0;
  }

  .sec-ad .wrap{
    width: 50vw;
  }

  .sec-ad .wrap .lead {
    text-align: center;
    color: #004098;
    text-decoration: underline;
  }

  #sec-pickup {
    padding: 80px 0 0; }
    #sec-pickup h2 {
      width: 184px; }
    #sec-pickup .slider_wrap {
      margin-top: 60px;
      padding-bottom: 90px; }
      #sec-pickup .slider_wrap:before, #sec-pickup .slider_wrap:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0; }
      #sec-pickup .slider_wrap:before {
        background: url("/images/user/top/sec-pickup_bg@pc.png") no-repeat center top/cover;
        top: -95px; }
      #sec-pickup .slider_wrap:after {
        background: #f2e8da;
        height: 50%;
        top: auto;
        bottom: 0; }
    #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide {
      width: 410px;
      padding: 0 10px; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .img {
            width: 390px;
            height: 230px;
            border-radius: 10px 10px 0 0;
            overflow: hidden;
            display: table-cell;
            text-align: center;
            vertical-align: middle;
            background: #ccc;
        }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .img img {
            object-fit: contain;
            width: auto;
            height: auto;
            max-width: 100%;
            max-height: 230px;
            vertical-align: top;
            margin: auto;
        }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide .text {
        padding-left: 15px;
        margin-top: 20px; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide h3 {
        font-size: 18px;
        padding-left: 15px;
        position: relative; }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide h3:before {
          width: 9px;
          height: 6px; }
      #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl {
        display: flex;
        flex-wrap: wrap; }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dt, #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd {
          font-size: 16px; }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dt {
          width: 98px; }
        #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd {
          width: calc(100% - 98px); }
          #sec-pickup .swiper.pickup .swiper-wrapper .swiper-slide dl dd a {
            border-radius: 5px;
            padding: 0 5px;
            line-height: 2;
            margin: 3.5px 1.75px;
            font-size: 15px; }
    #sec-pickup .swiper.pickup .swiper-button-prev, #sec-pickup .swiper.pickup .swiper-button-next {
      width: 60px;
      height: 60px;
      top: 113px; }
      #sec-pickup .swiper.pickup .swiper-button-prev:after, #sec-pickup .swiper.pickup .swiper-button-next:after {
        width: 13px;
        height: 21px; }
    #sec-pickup .swiper.pickup .swiper-button-prev {
      left: 40px; }
    #sec-pickup .swiper.pickup .swiper-button-next {
      right: 40px; }

  #sec-service {
    padding: 150px 0 190px; }
    #sec-service .wrap_service h2 {
      width: 1180px;
      margin: 0 auto;
      padding-left: 40px; }
      #sec-service .wrap_service h2 img {
        width: 440px; }
    #sec-service .wrap_service .sec-service_box01 {
      width: 1180px;
      padding: 0 80px 0;
      margin: 132px auto 0;
      height: 342.5px; }
      #sec-service .wrap_service .sec-service_box01:before {
        width: 900px;
        height: 300px;
        border-radius: 13.5px;
        position: absolute;
        left: 40px;
        top: 41px; }
      #sec-service .wrap_service .sec-service_box01 .detail {
        text-align: left;
        width: 398px; }
        #sec-service .wrap_service .sec-service_box01 .detail h3 {
          width: 365px;
          margin: 0 0 0 20px; }
        #sec-service .wrap_service .sec-service_box01 .detail p {
          font-size: 17px;
          margin-top: 54px;
          text-align: left; }
      #sec-service .wrap_service .sec-service_box01 .visual {
        width: 595px;
        height: 335px;
        border-radius: 15px;
        margin-top: 0;
        overflow: hidden;
        position: absolute;
        top: -130px;
        left: 545px; }
    #sec-service .wrap_service .sec-service_box02 {
      position: relative;
      padding: 0 27.5px 0;
      z-index: 50;
      margin-top: 235px; }
      #sec-service .wrap_service .sec-service_box02 h3 {
        width: 495px;
        margin: 0 auto;
        margin: -21px auto 60px;
        text-align: right;
        padding-right: 150px; }
        #sec-service .wrap_service .sec-service_box02 h3 img {
          width: 194px;
          display: inline-block; }
      #sec-service .wrap_service .sec-service_box02 .detail {
        display: flex;
        justify-content: space-between;
        padding: 0 27.5px; }
      #sec-service .wrap_service .sec-service_box02 .detail_box {
        width: calc((100% - 113px) / 3);
        position: relative; }
        #sec-service .wrap_service .sec-service_box02 .detail_box h4 {
          width: 100%;
          margin-bottom: 0;
          position: relative;
          z-index: 50;
          position: absolute;
          top: 10.5px;
          left: 0;
          right: 0;
          margin: auto; }
          #sec-service .wrap_service .sec-service_box02 .detail_box h4 img {
            width: auto;
            height: 55px;
            max-width: inherit;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%); }
        #sec-service .wrap_service .sec-service_box02 .detail_box .inner {
          display: block;
          padding: 0; }
          #sec-service .wrap_service .sec-service_box02 .detail_box .inner .img {
            width: 100%;
            height: 250px;
            border-radius: 20px; }
            #sec-service .wrap_service .sec-service_box02 .detail_box .inner .img img {
              top: 167px; }
          #sec-service .wrap_service .sec-service_box02 .detail_box .inner .text {
            width: 100%;
            padding-top: 70px;
            padding-left: 0;
            padding-right: 0; }
        #sec-service .wrap_service .sec-service_box02 .detail_box + .detail_box {
          margin-top: 0; }
      #sec-service .wrap_service .sec-service_box02 .detail_box_01 .img img {
        width: 250px; }
      #sec-service .wrap_service .sec-service_box02 .detail_box_02 .inner {
        flex-direction: row;
        padding: 0; }
      #sec-service .wrap_service .sec-service_box02 .detail_box_02 .img img {
        width: 272px; }
      #sec-service .wrap_service .sec-service_box02 .detail_box_03 .img img {
        width: 284px; }

  #sec-flow-use {
    text-align: center;
    padding-top: 0;
    padding-bottom: 150px; }
    #sec-flow-use .wrap_sec-flow-use {
      width: 1100px;
      margin: 0 auto;
      padding: 71px 0 0;
      position: relative; }
    #sec-flow-use h2 {
      width: 324px;
      margin: 0;
      position: absolute;
      left: 40px;
      top: -87px; }
      #sec-flow-use h2 + p {
        font-size: 17px;
        padding-left: 47px;
        text-align: left; }
    #sec-flow-use .tab_wrap {
      padding: 0;
      border-radius: 20px;
      overflow: hidden;
      margin-top: 45px; }
      #sec-flow-use .tab_wrap .tab_btns li {
        height: 60px; }
        #sec-flow-use .tab_wrap .tab_btns li:before {
          content: "";
          width: 100%;
          height: 100%;
          background: #fff;
          position: absolute;
          left: 0;
          top: 0;
          opacity: 0.6; }
        #sec-flow-use .tab_wrap .tab_btns li i {
          display: block;
          width: 14px;
          height: 9px;
          position: relative;
          z-index: 50;
          margin-right: 20px; }
        #sec-flow-use .tab_wrap .tab_btns li img {
          height: 20.5px; }
        #sec-flow-use .tab_wrap .tab_btns li:nth-of-type(1):before {
          border-radius: 20px 0 0 0; }
        #sec-flow-use .tab_wrap .tab_btns li:nth-of-type(2):before {
          border-radius: 0 20px 0 0; }
        #sec-flow-use .tab_wrap .tab_btns li.active i {
          transform: rotate(0); }
        #sec-flow-use .tab_wrap .tab_btns li.active:before {
          opacity: 1; }
      #sec-flow-use .tab_wrap .tab_contents {
        padding-bottom: 40px;
        border-radius: 0 0 20px 20px; }
        #sec-flow-use .tab_wrap .tab_contents .tab_box ol {
          padding: 60px 40px 0;
          display: flex;
          justify-content: space-between; }
          #sec-flow-use .tab_wrap .tab_contents .tab_box ol li {
            width: 235px;
            display: block;
            padding: 0; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li + li {
              margin-top: 0; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .thumb {
              width: 235px; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .thumb span {
                height: 31.5px;
                left: 7px;
                top: -15px; }
            #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text {
              width: 100%;
              padding: 0 7.5px; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text h5 {
                width: auto;
                height: 18.5px;
                width: 100%;
                margin: 17px 0 10px 0; }
                #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text h5 img {
                  width: auto;
                  height: 100%;
                  max-width: 100%;
                  margin: 0 auto; }
              #sec-flow-use .tab_wrap .tab_contents .tab_box ol li .text p {
                font-size: 16px;
                line-height: 1.72;
                width: 100%; }

  #sec-flow-apply {
    padding: 0;
    background: none; }
    #sec-flow-apply:before {
      content: "";
      width: 100%;
      height: calc(100% - 49.5px);
      background: #004098;
      position: absolute;
      left: 0;
      top: 50px; }
    #sec-flow-apply .wrap_flow {
      width: 1100px;
      margin: -50px auto 0;
      background: #004098;
      border-radius: 25px 25px 0 0;
      padding: 100px 0 0; }
    #sec-flow-apply h2 {
      width: 394px;
      margin: 0 auto 60px; }
    #sec-flow-apply ol {
      padding: 0;
      display: flex;
      justify-content: center; }
      #sec-flow-apply ol li {
        width: 435px;
        height: 185px; }
        #sec-flow-apply ol li .inner {
          height: 100%;
          padding: 0 0 0 44px;
          position: relative;
          display: flex;
          align-items: center;
          border-radius: 20px; }
        #sec-flow-apply ol li + li {
          margin-top: 0;
          margin-left: 95.5px; }
        #sec-flow-apply ol li .img {
          width: 107.5px; }
        #sec-flow-apply ol li .text {
          width: calc(100% - 107.5px);
          padding-left: 36px; }
          #sec-flow-apply ol li .text h3 {
            height: 26px; }
          #sec-flow-apply ol li .text p {
            font-size: 17px;
            line-height: 1.62;
            margin-top: 10px; }
        #sec-flow-apply ol li:before {
          width: 63.5px;
          height: 51px;
          transform: rotate(0);
          top: 0;
          bottom: 0;
          left: -79px;
          right: auto;
          margin: auto; }
        #sec-flow-apply ol li:nth-of-type(1):before {
          content: none; }

  #sec-faq {
    margin-top: 0;
    width: 100%;
    margin: 0 auto;
    padding: 0; }
    #sec-faq .faq_wrap {
      margin-top: 0;
      width: 1180px;
      margin: 0 auto;
      padding: 130px 40px 125px; }
    #sec-faq h2 {
      width: 387px;
      margin: 0 0 78.5px; }
      #sec-faq h2 img {
        margin: 0; }
    #sec-faq .faq_list {
      padding: 0; }
      #sec-faq .faq_list .item {
        border-top: 1px solid #ccc;
        padding: 0 0 30px; }
        #sec-faq .faq_list .item .question, #sec-faq .faq_list .item .answer {
          position: relative; }
          #sec-faq .faq_list .item .question:before, #sec-faq .faq_list .item .answer:before {
            content: "";
            position: absolute;
            left: 0;
            top: 0; }
        #sec-faq .faq_list .item .question {
          font-size: 20px;
          line-height: 1.38;
          font-weight: 600;
          padding: 33px 60px 0 60px; }
          #sec-faq .faq_list .item .question i {
            display: block;
            width: 30px;
            height: 30px;
            top: 30px;
            right: 15px; }
            #sec-faq .faq_list .item .question i:before, #sec-faq .faq_list .item .question i:after {
              content: "";
              position: absolute;
              left: 0;
              top: 0;
              background: #004098; }
            #sec-faq .faq_list .item .question i:before {
              width: 100%;
              height: 2px;
              top: 50%;
              margin-top: -1px; }
            #sec-faq .faq_list .item .question i:after {
              width: 2px;
              height: 100%;
              left: 50%;
              margin-left: -1px; }
          #sec-faq .faq_list .item .question:before {
            width: 28px;
            height: 22.5px;
            top: 32px;
            left: 20px; }
        #sec-faq .faq_list .item .answer {
          padding: 0 60px 0 60px;
          margin: 20px 0 0; }
          #sec-faq .faq_list .item .answer:before {
            width: 27.5px;
            height: 21px;
            top: 4px;
            left: 20px; }

/* information_teaser */
  .information_teaser {
    padding: 40px 0 0; }
    .information_teaser .info_container {
      width: 1180px;
      margin: 0 auto;
      background: #dadada;
      padding: 40px; }

  /* information_teaser */ }

.mv {
  opacity: 0;
  transition: opacity 1s; }

h1 {
  opacity: 0;
  transform: translateX(9%);
  transition: 1s 1s; }

@media screen and (max-width: 767px) {
  h1 {
    opacity: 0;
    transform: translateX(-9%);
    transition: 1s 1s; } }
.windowloaded .mv {
  opacity: 1; }
.windowloaded h1 {
  opacity: 1;
  transform: translate(0); }

#sec-flow-apply ol li .inner {
  opacity: 0;
  transition: opacity 0.5s; }
#sec-flow-apply ol li:nth-of-type(1) .inner {
  transition-delay: 0.5s; }
#sec-flow-apply ol li:nth-of-type(2) .inner {
  transition-delay: 1.5s; }
#sec-flow-apply ol li:before {
  opacity: 0;
  transition: opacity 0.5s 1s; }
#sec-flow-apply .btns_contact {
  opacity: 0;
  transform: translateY(20px);
  transition: 1s 2s; }
#sec-flow-apply.show ol li .inner {
  opacity: 1; }
#sec-flow-apply.show ol li:before {
  opacity: 1; }
#sec-flow-apply.show .btns_contact {
  opacity: 1;
  transform: translate(0); }

@media screen and (max-width: 767px) {
  #sec-service .wrap_service h2 {
    width: 64.9vw !important; }
  #sec-service .wrap_service .sec-service_box01 {
    margin: 10vw 0 0; }
    #sec-service .wrap_service .sec-service_box01:before {
      width: 93vw !important;
      height: calc(100% - 1.8vw) !important;
      top: -3.8vw !important; }
    #sec-service .wrap_service .sec-service_box01 .detail p + p {
      font-size: 3vw !important;
      line-height: 5.5vw !important;
      margin-top: 6vw !important; }
    #sec-service .wrap_service .sec-service_box01 .detail .attention {
      color: #d52f21; }

  #sec-flow-apply ol li .inner {
    padding: 0 0 0 8.4vw !important; } }
@media screen and (min-width: 768px) {
  .first_area .link_online {
    position: absolute;
    top: 90px;
    right: 70px;
    z-index: 10; }
    .first_area .link_online a {
      font-size: 15px; }
    .first_area .link_online a:link {
      color: #004098;
      text-decoration: underline; }
    .first_area .link_online a:active {
      color: #004098;
      text-decoration: none; }
    .first_area .link_online a:hover {
      color: #004098;
      text-decoration: none; }
    .first_area .link_online a:visited {
      color: #004098;
      text-decoration: underline; }

  .sec-service .wrap_service h2 img {
    width: 406px;
    margin: 0 auto; }
  .sec-service .wrap_service .sec-service_box01 {
    height: 500px !important;
    margin: 80px auto 0; }
    .sec-service .wrap_service .sec-service_box01:before {
      height: 405px !important;
      top: -40px !important; }
    .sec-service .wrap_service .sec-service_box01 .detail p + p {
      font-size: 15px !important;
      line-height: 27.5px !important;
      margin-top: 33px !important; }
    .sec-service .wrap_service .sec-service_box01 .detail .attention {
      color: #d52f21; }
    .sec-service .wrap_service .sec-service_box01 .visual {
      top: -70px !important; }

  #sec-flow-apply ol li:nth-child(1) .inner {
    padding: 0 0 0 37px !important; }
    #sec-flow-apply ol li:nth-child(1) .inner .text {
      padding-left: 25px !important; } }
@media screen and (max-width: 767px) {
  .notice {
    width: 92vw;
    margin: 8vw auto 0;
    padding: 8vw;
    border: 1px solid #004098;
    background: #fff; }
    .notice dl dt {
      font-size: 4vw;
      font-weight: bold;
      color: #004098; }

  .anchor_btn ul {
    width: 92vw;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    .anchor_btn ul li {
      width: 45vw; }
      .anchor_btn ul li a {
        background: #004098;
        border: 1px solid #004098;
        border-radius: 2vw;
        width: 100%;
        padding: 3vw 0 6vw;
        display: block;
        color: #fff;
        text-align: center;
        font-size: 4vw;
        line-height: 5.8vw;
        font-weight: bold;
        position: relative; }
        .anchor_btn ul li a span::after {
          content: "";
          display: block;
          background: url("/images/user/top/icon_arrow_anchor.png") no-repeat center top/cover;
          width: 2.2vw;
          height: 1.6vw;
          position: absolute;
          bottom: 3vw;
          left: 50%;
          margin-left: -1.1vw;
          z-index: 1; }
  .anchor_btn p {
    width: 92vw;
    margin: 5vw auto 15vw;
    padding: 4vw 8vw;
    border: 1px solid #004098;
    background: #fff;
    text-align: center; }

  .sec-worries {
    padding: 16vw 0 0; }
    .sec-worries h2 {
      font-size: 0;
      background: url("/images/user/top/sec-worries_catch.png") no-repeat top center/cover;
      width: 59.2vw;
      height: 26.3vw;
      margin: 0 auto 8vw; }
    .sec-worries ul {
      width: 92vw;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .sec-worries ul li {
        width: 44vw; }
        .sec-worries ul li a figure {
          font-size: 0;
          width: 44vw;
          height: 26.5vw;
          border: 1px solid #ccc;
          border-radius: 2vw;
          position: relative; }
          .sec-worries ul li a figure::after {
            content: "";
            display: block;
            background: url("/images/user/top/worries_figure_icon.png") no-repeat top center/cover;
            width: 9vw;
            height: 9vw;
            position: absolute;
            top: 2vw;
            right: 2vw; }
        .sec-worries ul li a p {
          color: #004098;
          font-weight: bold;
          line-height: 5vw;
          text-decoration: underline;
          padding: 2vw 2vw 5vw; }
        .sec-worries ul li:nth-child(1) a figure {
          background: url("/images/user/top/worries_figure01.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(2) a figure {
          background: url("/images/user/top/worries_figure02.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(3) a figure {
          background: url("/images/user/top/worries_figure03.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(4) a figure {
          background: url("/images/user/top/worries_figure04.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(5) a figure {
          background: url("/images/user/top/worries_figure05.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(6) a figure {
          background: url("/images/user/top/worries_figure06.jpg") no-repeat top center/cover; }


  .sec-ad {
    padding: 10vw 0;
  }

  .sec-ad .wrap {
    width: 75vw;
  }

  .sec-ad .wrap .lead {
    text-align: center;
    color: #004098;
    text-decoration: underline;
  }
  .sec-service_box01 .explanes {
    position: relative;
    padding: 15vw 0 0; }
    .sec-service_box01 .explanes h4 {
      font-size: 0;
      background: url("/images/user/top/sec-service_find.png") no-repeat top center/cover;
      width: 73.4vw;
      height: 13vw;
      margin-bottom: 8.5vw; }
    .sec-service_box01 .explanes ul li {
      width: 92vw;
      border: 2px solid #004098;
      border-radius: 4vw;
      position: relative; }
      .sec-service_box01 .explanes ul li:nth-child(1) {
        margin-bottom: 8vw; }
      .sec-service_box01 .explanes ul li h5 {
        font-size: 4vw;
        font-weight: bold;
        line-height: 1;
        color: #004098;
        position: absolute;
        top: -0.5em;
        left: 6vw; }
        .sec-service_box01 .explanes ul li h5 span {
          position: relative;
          z-index: 1; }
          .sec-service_box01 .explanes ul li h5 span::before {
            content: "";
            display: block;
            background: #fff;
            width: 116%;
            height: 1em;
            position: absolute;
            top: 0;
            left: -2vw;
            z-index: -1; }
      .sec-service_box01 .explanes ul li p {
        padding: 6vw;
        font-size: 3.4vw;
        line-height: 7.5vw;
        letter-spacing: 0.08em;
        text-align: justify; }
        .sec-service_box01 .explanes ul li p .attention {
          font-size: 2.8vw; }

  .sec-flow-use .link_btn {
    margin-top: 10vw; }
    .sec-flow-use .link_btn a {
      background: #004098;
      border: 1px solid #004098;
      border-radius: 2vw;
      width: 64vw;
      margin: 0 auto;
      padding: 6vw 0;
      display: block;
      color: #fff;
      text-align: center;
      font-size: 4vw;
      line-height: 1;
      font-weight: bold;
      position: relative; }
      .sec-flow-use .link_btn a span::before {
        content: "";
        display: table-cell;
        background: url("/images/user/top/icon_arrow_btn.png") no-repeat left top/1.6vw auto;
        width: 3.2vw;
        height: 2.6vw; }

  .sec-price {
    padding: 20vw 0; }
    .sec-price h2 {
      width: 42.8vw;
      margin: 0 auto 6vw; }
    .sec-price .lead {
      font-size: 4vw;
      font-weight: bold;
      text-align: center; }
    .sec-price ul {
      width: 84vw;
      margin: 10vw auto; }
      .sec-price ul li {
        width: 100%;
        height: 49vw;
        border: 3px solid #004098;
        border-radius: 3vw;
        font-size: 0; }
        .sec-price ul li:nth-child(1) {
          background: url("/images/user/top/sec-price_txt01.png") no-repeat center center/51.3vw auto, #fff;
          position: relative;
          margin-bottom: 22.2vw; }
          .sec-price ul li:nth-child(1)::after {
            content: "";
            display: block;
            background: url("/images/user/top/sec-price_icon.png") no-repeat center center/14vw auto;
            width: 84vw;
            height: 22.2vw;
            position: absolute;
            bottom: -22.8vw; }
        .sec-price ul li:nth-child(2) {
          background: url("/images/user/top/sec-price_txt02.png") no-repeat center center/50.4vw auto, #004098; }
    .sec-price .catch {
      font-size: 0;
      background: url("/images/user/top/sec-price_catch02.png") no-repeat top center/cover;
      width: 76.4vw;
      height: 16.2vw;
      margin: 0 auto 6vw; }
    .sec-price .attention {
      text-align: center; } }
@media screen and (min-width: 768px) {
  .notice {
    width: 1100px;
    margin: -120px auto 150px;
    padding: 40px;
    border: 1px solid #004098;
    background: #fff;
    position: relative; }
    .notice dl dt {
      font-size: 20px;
      font-weight: bold;
      color: #004098; }

  .anchor_btn ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    .anchor_btn ul li {
      width: 535px;
      text-align: center; }
      .anchor_btn ul li a {
        background: #004098;
        border-radius: 10px;
        width: 100%;
        padding: 25px 0;
        display: block;
        position: relative; }
        .anchor_btn ul li a span {
          color: #fff;
          font-size: 20px;
          line-height: 1;
          font-weight: bold;
          position: relative;
          z-index: 10;
          text-indent: 30px; }
          .anchor_btn ul li a span::before {
            content: "";
            display: table-cell;
            background: url("/images/user/top/icon_arrow_anchor.png") no-repeat left top/auto 8px;
            width: 22px;
            height: 10px; }
  .anchor_btn p {
    width: 100%;
    border: 1px solid #004098;
    background: #fff;
    text-align: center;
    margin: 25px 0 70px;
    padding: 15px; }

  .sec-worries {
    padding: 85px 0 0; }
    .sec-worries h2 {
      font-size: 0;
      background: url("/images/user/top/sec-worries_catch_pc.png") no-repeat top center/cover;
      width: 634.5px;
      height: 87.5px;
      margin: 0 auto 50px; }
    .sec-worries ul {
      width: 1100px;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .sec-worries ul li {
        width: 340px; }
        .sec-worries ul li a figure {
          font-size: 0;
          width: 340px;
          height: 205px;
          border: 1px solid #ccc;
          border-radius: 10px;
          position: relative; }
          .sec-worries ul li a figure::after {
            content: "";
            display: block;
            background: url("/images/user/top/worries_figure_icon.png") no-repeat top center/cover;
            width: 45px;
            height: 45px;
            position: absolute;
            top: 15px;
            right: 15px; }
        .sec-worries ul li a p {
          color: #004098;
          font-weight: bold;
          line-height: 25px;
          text-decoration: underline;
          padding: 10px 10px 35px;
          letter-spacing: 0.06em;
          text-align: justify; }
        .sec-worries ul li a:hover p {
          text-decoration: none; }
        .sec-worries ul li:nth-child(1) a figure {
          background: url("/images/user/top/worries_figure01.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(2) a figure {
          background: url("/images/user/top/worries_figure02.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(3) a figure {
          background: url("/images/user/top/worries_figure03.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(4) a figure {
          background: url("/images/user/top/worries_figure04.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(5) a figure {
          background: url("/images/user/top/worries_figure05.jpg") no-repeat top center/cover; }
        .sec-worries ul li:nth-child(6) a figure {
          background: url("/images/user/top/worries_figure06.jpg") no-repeat top center/cover; }

  .sec-service_box01 {
    height: 735px !important; }
    .sec-service_box01::before {
      width: 1025px !important;
      height: 635px !important; }
    .sec-service_box01 .explanes {
      position: relative;
      padding: 50px 0 0; }
      .sec-service_box01 .explanes h4 {
        font-size: 0;
        background: url("/images/user/top/sec-service_find_pc.png") no-repeat top center/cover;
        width: 592px;
        height: 25.5px;
        margin-bottom: 50px; }
      .sec-service_box01 .explanes ul {
        width: 940px;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between; }
        .sec-service_box01 .explanes ul li {
          width: 460px;
          border: 2px solid #004098;
          border-radius: 20px;
          position: relative; }
          .sec-service_box01 .explanes ul li h5 {
            font-size: 20px;
            font-weight: bold;
            line-height: 1;
            color: #004098;
            position: absolute;
            top: -0.5em;
            left: 30px; }
            .sec-service_box01 .explanes ul li h5 span {
              position: relative;
              z-index: 1; }
              .sec-service_box01 .explanes ul li h5 span::before {
                content: "";
                display: block;
                background: #fff;
                width: 116%;
                height: 1em;
                position: absolute;
                top: 0;
                left: -10px;
                z-index: -1; }
          .sec-service_box01 .explanes ul li p {
            padding: 30px;
            font-size: 17px;
            line-height: 37.5px;
            letter-spacing: 0.08em;
            text-align: justify; }
            .sec-service_box01 .explanes ul li p .attention {
              font-size: 14px; }

  .sec-flow-use .link_btn a {
    display: block;
    border-radius: 10px;
    width: 320px;
    height: 100%;
    padding: 20px 0;
    margin: 50px auto 0;
    position: relative;
    background: #004098; }
    .sec-flow-use .link_btn a span {
      color: #fff;
      font-size: 20px;
      font-weight: bold;
      position: relative;
      z-index: 10; }
      .sec-flow-use .link_btn a span::before {
        content: "";
        display: table-cell;
        background: url("/images/user/top/icon_arrow_btn.png") no-repeat left top/8px auto;
        width: 16px;
        height: 13px; }

  .sec-price {
    padding: 100px 0; }
    .sec-price h2 {
      width: 214px;
      margin: 0 auto 30px; }
    .sec-price .lead {
      font-size: 20px;
      font-weight: bold;
      text-align: center; }
    .sec-price ul {
      width: 843.5px;
      margin: 70px auto 30px;
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between; }
      .sec-price ul li {
        width: 362px;
        height: 245px;
        border: 3px solid #004098;
        border-radius: 15px;
        font-size: 0; }
        .sec-price ul li:nth-child(1) {
          background: url("/images/user/top/sec-price_txt01.png") no-repeat center center/256.5px auto, #fff;
          position: relative; }
          .sec-price ul li:nth-child(1)::after {
            content: "";
            display: block;
            background: url("/images/user/top/sec-price_icon.png") no-repeat center center/cover;
            width: 70px;
            height: 70px;
            position: absolute;
            top: 88px;
            right: -95px; }
        .sec-price ul li:nth-child(2) {
          background: url("/images/user/top/sec-price_txt02.png") no-repeat center center/252px auto, #004098; }
    .sec-price .catch {
      font-size: 0;
      background: url("/images/user/top/sec-price_catch02.png") no-repeat top center/cover;
      width: 382px;
      height: 81px;
      margin: 0 auto 30px; }
    .sec-price .attention {
      text-align: center; } }
@media screen and (min-width: 768px) {
  .anchor_btn ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    .anchor_btn ul li {
      width: 535px;
      text-align: center; }
      .anchor_btn ul li a {
        background: #004098;
        border-radius: 10px;
        width: 100%;
        padding: 25px 0;
        display: block;
        position: relative; }
        .anchor_btn ul li a span {
          color: #fff;
          font-size: 20px;
          line-height: 1;
          font-weight: bold;
          position: relative;
          z-index: 10;
          text-indent: 30px; }
          .anchor_btn ul li a span::before {
            content: "";
            display: table-cell;
            background: url("/images/user/top/icon_arrow_anchor.png") no-repeat left top/auto 8px;
            width: 22px;
            height: 10px; }
  .anchor_btn p {
    width: 100%;
    border: 1px solid #004098;
    background: #fff;
    text-align: center;
    margin: 25px 0 70px;
    padding: 15px; } }
