@charset "UTF-8";
#footer {
  display: none; }

.visual_page_container div, .visual_page_container span, .visual_page_container object, .visual_page_container iframe,
.visual_page_container h1, .visual_page_container h2, .visual_page_container h3, .visual_page_container h4, .visual_page_container h5, .visual_page_container h6, .visual_page_container p, .visual_page_container blockquote, .visual_page_container pre,
.visual_page_container abbr, .visual_page_container address, .visual_page_container cite, .visual_page_container code,
.visual_page_container del, .visual_page_container dfn, .visual_page_container em, .visual_page_container img, .visual_page_container ins, .visual_page_container kbd, .visual_page_container q, .visual_page_container samp,
.visual_page_container small, .visual_page_container strong, .visual_page_container sub, .visual_page_container sup, .visual_page_container var,
.visual_page_container b, .visual_page_container i,
.visual_page_container dl, .visual_page_container dt, .visual_page_container dd, .visual_page_container ol, .visual_page_container ul, .visual_page_container li,
.visual_page_container fieldset, .visual_page_container form, .visual_page_container label, .visual_page_container legend,
.visual_page_container table, .visual_page_container caption, .visual_page_container tbody, .visual_page_container tfoot, .visual_page_container thead, .visual_page_container tr, .visual_page_container th, .visual_page_container td,
.visual_page_container article, .visual_page_container aside, .visual_page_container canvas, .visual_page_container details, .visual_page_container figcaption, .visual_page_container figure,
.visual_page_container footer, .visual_page_container header, .visual_page_container hgroup, .visual_page_container menu, .visual_page_container nav, .visual_page_container section, .visual_page_container summary,
.visual_page_container time, .visual_page_container mark, .visual_page_container audio, .visual_page_container video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  background: transparent; }
.visual_page_container article, .visual_page_container aside, .visual_page_container details, .visual_page_container figcaption, .visual_page_container figure,
.visual_page_container footer, .visual_page_container header, .visual_page_container hgroup, .visual_page_container menu, .visual_page_container nav, .visual_page_container section {
  display: block; }
.visual_page_container ul, .visual_page_container li {
  list-style-type: none; }

a[href^="tel:"] {
  pointer-events: none; }

.visual_page_container {
  padding-top: 80px; }
  .visual_page_container .oswald {
    font-family: 'Oswald', sans-serif; }
  .visual_page_container .meiryo {
    font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro',sans-serif; }
  .visual_page_container .mincho {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
  .visual_page_container .questrial {
    font-family: 'Questrial', sans-serif; }
  .visual_page_container img {
    border: none;
    vertical-align: bottom;
    max-width: 100%;
    width: initial; }
  .visual_page_container a {
    color: inherit;
    text-decoration: none; }
    .visual_page_container a:hover {
      opacity: 0.8;
      transition: all .3s; }

.clearfix {
  *zoom: 1; }
  .clearfix::after {
    content: "";
    display: table;
    clear: both; }

/*
.box {
@extend .clearfix;  //.clearfixにextend
padding: 10px;
・・・
}
*/
/********************************
	flexbox 基本class
********************************/
*.flexbox {
  display: flex; }

/********************************
  contents
********************************/
.visual_page_container {
  width: 100%;
  max-width: 2000px;
  min-width: 1200px;
  margin: 0 auto;
  line-height: 1;
  color: #000;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400; }

.visual_page_container .inner {
  width: 1200px;
  margin: 0 auto;
  position: relative; }

.visual_page_container {
  /**------------------------------------
    --fv
  ------------------------------------**/
  /**------------------------------------
    --footer
  ------------------------------------**/ }
  .visual_page_container .fv {
    background: url(../images/fv_bg.jpg) center top no-repeat;
    height: 900px;
    padding-top: 40px; }
    .visual_page_container .fv .text1 {
      color: #464646;
      font-size: 22px;
      text-align: center;
      line-height: 1.5;
      letter-spacing: 0.05em;
      width: 295px;
      margin-left: 94px;
      margin-bottom: 36px; }
      .visual_page_container .fv .text1 span {
        color: #000;
        font-size: 32px;
        font-weight: 900;
        letter-spacing: normal; }
    .visual_page_container .fv h1 {
      text-align: center;
      margin-bottom: 40px; }
    .visual_page_container .fv .text2 {
      font-size: 24px;
      font-weight: 700;
      line-height: 1.45;
      letter-spacing: 0.02em;
      text-align: center;
      margin-bottom: 20px; }
      .visual_page_container .fv .text2 span {
        color: #464646;
        font-size: 18px;
        font-weight: normal; }
    .visual_page_container .fv .img2 {
      text-align: center; }
  .visual_page_container .sec01 {
    background-color: #f3f3f3;
    padding-top: 120px;
    padding-bottom: 80px; }
    .visual_page_container .sec01 .caption {
      width: 644px;
      height: 62px;
      background: url(../images/sec01_img1.png) center top no-repeat;
      background-size: contain;
      font-size: 42px;
      font-weight: 700;
      text-align: center;
      margin: 0 auto; }
    .visual_page_container .sec01 .sec01_list {
      width: 1000px;
      margin: 40px auto;
      justify-content: space-between; }
      .visual_page_container .sec01 .sec01_list li {
        background: url(../images/sec01_img2.png) center top no-repeat;
        width: 310px;
        height: 220px;
        background-size: contain;
        padding-top: 70px;
        font-size: 24px;
        line-height: 1.58;
        font-weight: 700;
        text-align: center; }
        .visual_page_container .sec01 .sec01_list li span {
          color: #464646; }
    .visual_page_container .sec01 .text1 {
      margin-bottom: 16px;
      text-align: center;
      font-size: 22px;
      color: #282828;
      letter-spacing: 0.04em; }
    .visual_page_container .sec01 .text2 {
      font-size: 30px;
      text-align: center;
      letter-spacing: 0.04em;
      font-weight: 700; }
      .visual_page_container .sec01 .text2 .marker {
        background: linear-gradient(transparent 0.8em, #ffff00 0, #ffff00 1.3em, transparent 0); }
  .visual_page_container .sec02 {
    background-color: #fff;
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center; }
    .visual_page_container .sec02 .text1 {
      justify-content: center;
      margin: 0 auto 56px; }
      .visual_page_container .sec02 .text1 span {
        display: block; }
      .visual_page_container .sec02 .text1 .text1_1 {
        font-size: 28px;
        color: #282828;
        letter-spacing: 0.04em;
        line-height: 60px; }
      .visual_page_container .sec02 .text1 .text1_2 {
        font-size: 30px;
        font-weight: bold;
        color: #ffffff;
        line-height: 60px;
        text-align: center;
        background: url(../images/sec02_img1.png) center top 5px no-repeat;
        margin: 0 10px;
        height: 65px;
        width: 396px;
        background-size: contain; }
    .visual_page_container .sec02 .text2 {
      justify-content: space-between;
      margin: 0 30px 12px; }
      .visual_page_container .sec02 .text2 .text2_1 {
        font-size: 28px;
        font-weight: bold;
        color: #181818;
        letter-spacing: 0.04em; }
    .visual_page_container .sec02 .img2 {
      width: 1200px;
      margin-bottom: 55px; }
    .visual_page_container .sec02 .text3 {
      font-size: 30px;
      font-weight: bold;
      letter-spacing: 0.06em;
      position: relative;
      margin-bottom: 32px; }
      .visual_page_container .sec02 .text3::before, .visual_page_container .sec02 .text3::after {
        position: absolute;
        content: "";
        top: 50%;
        left: 0px;
        height: 1px;
        width: 260px;
        background-color: #000; }
      .visual_page_container .sec02 .text3::after {
        right: 0;
        left: unset; }
  .visual_page_container .sec03 {
    background: url(../images/sec03_bg.jpg) center top no-repeat;
    height: 800px;
    background-size: cover;
    text-align: center; }
    .visual_page_container .sec03 .inner {
      padding-top: 70px; }
    .visual_page_container .sec03 .balloon {
      position: absolute;
      top: -20px;
      left: calc(50% - 270px); }
    .visual_page_container .sec03 h2 {
      font-size: 60px;
      font-weight: 900;
      letter-spacing: 0.06em;
      line-height: 1.33; }
    .visual_page_container .sec03 .img_wrap {
      justify-content: center;
      margin-top: 40px; }
      .visual_page_container .sec03 .img_wrap .img2 {
        margin-right: 12px; }
      .visual_page_container .sec03 .img_wrap .img3 {
        margin-left: 12px; }
  .visual_page_container .sec04 {
    text-align: center; }
    .visual_page_container .sec04 .sec04box {
      position: relative;
      background: url(../images/sec04_img2.png) left top no-repeat;
      height: 530px;
      padding-left: 526px;
      padding-top: 80px; }
      .visual_page_container .sec04 .sec04box .text1 {
        height: 102px;
        width: 614px;
        background: url(../images/sec04_img3.png) left 30px top no-repeat;
        font-size: 30px;
        font-weight: 500;
        line-height: 1.3;
        letter-spacing: 0.08em;
        text-align: center; }
        .visual_page_container .sec04 .sec04box .text1 span {
          font-size: 52px;
          font-weight: 900;
          letter-spacing: 0.04em; }
      .visual_page_container .sec04 .sec04box ul.iconbox {
        justify-content: space-between;
        margin-top: 50px; }
        .visual_page_container .sec04 .sec04box ul.iconbox li {
          width: 218px;
          height: 210px;
          background: url(../images/sec04_img4.png) center top no-repeat;
          background-size: contain;
          padding-top: 32px;
          font-size: 23px;
          font-weight: bold;
          color: #182447;
          line-height: 1.17;
          letter-spacing: -0.02em;
          text-align: center; }
      .visual_page_container .sec04 .sec04box .note {
        margin-top: 26px;
        font-size: 14px;
        color: #464646;
        letter-spacing: 0.12em;
        margin-right: 1em;
        text-align: right; }
      .visual_page_container .sec04 .sec04box .que_icon {
        position: absolute;
        width: 22px;
        right: 0;
        top: 220px; }
  .visual_page_container .sec05 {
    height: 310px;
    border-bottom: 4px solid #dc82b4;
    border-image: linear-gradient(to right, #dc82b4 0%, #78c8ff 100%);
    border-image-slice: 1; }
    .visual_page_container .sec05 .slider_area {
      height: 310px; }
      .visual_page_container .sec05 .slider_area .slider_back {
        padding-top: 9.5px; }
  .visual_page_container .sec06 {
    position: relative; }
    .visual_page_container .sec06 .caption {
      text-align: center;
      margin-top: -50px; }
    .visual_page_container .sec06 .befor_after_wrap {
      padding-top: 60px;
      flex-wrap: wrap; }
      .visual_page_container .sec06 .befor_after_wrap .befor_after_box {
        width: 600px;
        margin-bottom: 56px;
        flex-wrap: wrap; }
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box .befor_box,
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box .after_box {
          width: 265px; }
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .befor_box .icon,
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .after_box .icon {
            text-align: center;
            margin-bottom: 13px; }
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .befor_box .image_page,
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .after_box .image_page {
            width: 265px; }
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box .arrow_icon {
          width: 40px;
          margin-top: 220px; }
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box .text_area {
          margin-top: 16px;
          width: 600px; }
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .text_area .company_name {
            font-size: 20px;
            font-weight: bold;
            color: #282828;
            letter-spacing: 0.04em; }
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .text_area hr {
            height: 1px;
            background-color: #666666;
            border: none; }
          .visual_page_container .sec06 .befor_after_wrap .befor_after_box .text_area .memo {
            font-size: 16px;
            color: #282828;
            letter-spacing: 0.04em; }
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box:nth-of-type(odd) {
          padding-right: 30px; }
        .visual_page_container .sec06 .befor_after_wrap .befor_after_box:nth-of-type(even) {
          padding-left: 30px; }
    .visual_page_container .sec06 .btn_more a {
      width: 800px;
      background: #fff;
      color: #282828;
      font-size: 21px;
      padding: 15px 0;
      margin: 0 auto;
      text-align: center;
      font-weight: bold;
      border-radius: 30px;
      display: block;
      text-decoration: none;
      border: 2px solid #dc82b4; }
    .visual_page_container .sec06 .lp_list .list .lp_box .text .company {
      border-bottom: 1px solid #282828; }
  .visual_page_container .sec07 {
    margin-bottom: 100px;
    text-align: center; }
  .visual_page_container .sec08 {
    background-color: #ebebeb;
    border-bottom: 8px solid #dc82b4;
    border-top: 8px solid #dc82b4;
    border-image: linear-gradient(to right, #dc82b4 0%, #78c8ff 100%);
    border-image-slice: 1;
    height: 360px;
    padding-top: 60px;
    text-align: center; }
    .visual_page_container .sec08 .text1 {
      font-size: 34px;
      font-weight: bold;
      letter-spacing: 0.03em; }
      .visual_page_container .sec08 .text1 span {
        font-size: 28px; }
    .visual_page_container .sec08 .img1 {
      margin: 35px 0; }
  .visual_page_container .sec09 {
    background: url(../images/sec09_bg.jpg) center top no-repeat;
    background-size: cover;
    height: 2040px;
    padding-top: 90px;
    text-align: center; }
    .visual_page_container .sec09 .img2 {
      margin-top: 26px;
      margin-bottom: 46px; }
    .visual_page_container .sec09 .text1 {
      width: 870px;
      margin: 0 auto 114px;
      font-size: 20px;
      color: #282828;
      letter-spacing: 0.04em;
      line-height: 2; }
    .visual_page_container .sec09 .textbox .caption {
      font-size: 54px;
      font-weight: 900;
      text-align: left; }
    .visual_page_container .sec09 .textbox .text {
      margin-top: 46px;
      font-size: 18px;
      line-height: 2.1;
      color: #282828;
      text-align: left; }
      .visual_page_container .sec09 .textbox .text b {
        font-weight: bold; }
    .visual_page_container .sec09 .textbox.box1 {
      margin-left: 630px; }
      .visual_page_container .sec09 .textbox.box1 .text {
        width: 520px; }
    .visual_page_container .sec09 .textbox.box2 {
      margin-top: 210px;
      margin-left: 50px; }
      .visual_page_container .sec09 .textbox.box2 .text {
        width: 480px; }
    .visual_page_container .sec09 .textbox.box3 {
      margin-top: 246px;
      margin-left: 630px; }
      .visual_page_container .sec09 .textbox.box3 .text {
        width: 520px; }
  .visual_page_container .sec10 {
    background: url(../images/sec10_bg.jpg) center top no-repeat;
    background-size: cover;
    height: 1790px;
    padding-top: 120px; }
    .visual_page_container .sec10 .img1 {
      text-align: center;
      margin-bottom: 40px; }
    .visual_page_container .sec10 .pink_blue_box {
      width: 1100px;
      height: 320px;
      background: url(../images/sec10_img2.png) center top no-repeat;
      background-size: contain;
      margin: 0 auto; }
      .visual_page_container .sec10 .pink_blue_box .title {
        width: 100%;
        align-items: center;
        justify-content: center;
        height: 84px;
        color: #ffffff;
        font-size: 34px;
        font-weight: bold;
        text-align: center;
        letter-spacing: 0.04em; }
        .visual_page_container .sec10 .pink_blue_box .title p.s1 {
          font-size: 62px;
          padding: 0 2px 10px; }
        .visual_page_container .sec10 .pink_blue_box .title p.s2 {
          font-size: 40px; }
      .visual_page_container .sec10 .pink_blue_box .textbox_wrap {
        justify-content: center;
        padding-top: 36px; }
        .visual_page_container .sec10 .pink_blue_box .textbox_wrap .textbox {
          width: 550px;
          padding: 0 50px; }
          .visual_page_container .sec10 .pink_blue_box .textbox_wrap .textbox .caption {
            font-size: 32px;
            font-weight: bold;
            text-align: center;
            letter-spacing: 0.08em;
            margin-bottom: 20px; }
          .visual_page_container .sec10 .pink_blue_box .textbox_wrap .textbox .text {
            font-size: 18px;
            line-height: 2.1;
            color: #282828; }
    .visual_page_container .sec10 .img3 {
      margin-top: 18px;
      text-align: center; }
    .visual_page_container .sec10 .img4 {
      text-align: center;
      margin-bottom: 131px; }
    .visual_page_container .sec10 .img5 {
      position: relative;
      width: 1030px;
      height: 590px;
      margin: 0 auto;
      background: url(../images/sec10_img5.png) center top no-repeat; }
      .visual_page_container .sec10 .img5 .img5_box {
        position: absolute;
        width: 210px; }
        .visual_page_container .sec10 .img5 .img5_box .caption2 {
          font-size: 20px;
          font-weight: bold;
          letter-spacing: 0.08em;
          text-align: center;
          margin-bottom: 8px; }
        .visual_page_container .sec10 .img5 .img5_box .text2 {
          font-size: 16px;
          line-height: 1.75;
          color: #282828; }
        .visual_page_container .sec10 .img5 .img5_box.box1 {
          top: 114px;
          left: 42px; }
        .visual_page_container .sec10 .img5 .img5_box.box2 {
          top: 114px;
          right: 45px; }
        .visual_page_container .sec10 .img5 .img5_box.box3 {
          top: 365px;
          left: 42px; }
        .visual_page_container .sec10 .img5 .img5_box.box4 {
          top: 345px;
          right: 45px; }
  .visual_page_container .sec11 {
    background-color: #f0f0f0;
    border-bottom: 8px solid #dc82b4;
    border-top: 8px solid #dc82b4;
    border-image: linear-gradient(to right, #dc82b4 0%, #78c8ff 100%);
    border-image-slice: 1;
    padding: 80px 0 90px; }
    .visual_page_container .sec11 h2 {
      font-size: 40px;
      font-weight: bold;
      letter-spacing: 0.07em;
      text-align: center;
      margin-bottom: 12px; }
    .visual_page_container .sec11 .text1 {
      font-size: 22px;
      color: #282828;
      letter-spacing: 0.04em;
      text-align: center;
      margin-bottom: 48px; }
    .visual_page_container .sec11 ul.sec11_list {
      margin: 0 100px 60px;
      justify-content: space-between; }
      .visual_page_container .sec11 ul.sec11_list li {
        padding-top: 140px;
        text-align: center;
        width: 300px;
        height: 220px;
        filter: drop-shadow(10px 20px 10px rgba(0, 0, 0, 0.2)); }
        .visual_page_container .sec11 ul.sec11_list li .caption {
          font-size: 22px;
          font-weight: bold;
          letter-spacing: 0.08em;
          margin-bottom: 10px; }
        .visual_page_container .sec11 ul.sec11_list li .text {
          font-size: 16px;
          color: #282828; }
        .visual_page_container .sec11 ul.sec11_list li:nth-of-type(1) {
          background: url(../images/sec11_list_bg1.png) center top no-repeat;
          background-size: contain; }
        .visual_page_container .sec11 ul.sec11_list li:nth-of-type(2) {
          background: url(../images/sec11_list_bg2.png) center top no-repeat;
          background-size: contain; }
        .visual_page_container .sec11 ul.sec11_list li:nth-of-type(3) {
          background: url(../images/sec11_list_bg3.png) center top no-repeat;
          background-size: contain; }
    .visual_page_container .sec11 .tabbox {
      width: 1000px;
      height: 280px;
      background: url(../images/sec11_img1.png) center top no-repeat;
      background-size: contain;
      margin: 0 100px; }
      .visual_page_container .sec11 .tabbox .lavel {
        padding-left: 40px;
        height: 40px;
        font-size: 22px;
        font-weight: bold;
        color: #ffffff;
        letter-spacing: 0.08em;
        line-height: 40px; }
      .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox {
        width: 450px;
        padding-top: 40px;
        margin-left: 40px; }
        .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .text2 {
          font-size: 22px;
          color: #464646;
          padding-left: 30px;
          position: relative; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .text2::before {
            position: absolute;
            content: "";
            top: 0;
            left: 0;
            background: url(../images/sec11_icon1.png) center top no-repeat;
            background-size: contain;
            width: 20px;
            height: 20px; }
        .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .price {
          margin-top: 5px;
          padding-left: 30px;
          font-size: 84px;
          font-weight: 500;
          color: #c45853;
          position: relative; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .price span.p1 {
            font-size: 44px;
            font-weight: bold; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .price span.p2 {
            position: absolute;
            font-size: 14px;
            color: #464646;
            font-weight: 400;
            vertical-align: top;
            top: 20px;
            right: 115px; }
        .visual_page_container .sec11 .tabbox .textbox_wrap .leftbox .note {
          font-size: 16px;
          color: #464646;
          padding-left: 30px;
          margin-top: 20px; }
      .visual_page_container .sec11 .tabbox .textbox_wrap .rightnpx {
        width: 350px;
        margin: 15px 112px 0 48px; }
        .visual_page_container .sec11 .tabbox .textbox_wrap .rightnpx ul.tabbox_list li {
          display: flex;
          height: 40px;
          border-bottom: 1px dotted #b9b9b9;
          font-size: 16px;
          color: #282828;
          line-height: 40px; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .rightnpx ul.tabbox_list li .li_caption {
            width: 155px;
            padding-left: 10px;
            font-weight: 500; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .rightnpx ul.tabbox_list li .li_text {
            font-weight: bold; }
          .visual_page_container .sec11 .tabbox .textbox_wrap .rightnpx ul.tabbox_list li:last-of-type {
            border-bottom: none; }
  .visual_page_container .sec12 {
    background-color: #ffffff;
    padding-top: 68px;
    padding-bottom: 70px; }
    .visual_page_container .sec12 h2 {
      font-size: 34px;
      font-weight: bold;
      letter-spacing: 0.07em;
      text-align: center;
      margin-bottom: 45px; }
    .visual_page_container .sec12 ul.flow_box_list {
      justify-content: space-between;
      margin-left: 100px;
      background: url(../images/sec12_img1.png) left top no-repeat;
      width: 1023px;
      height: 375px;
      background-size: contain;
      padding-top: 146px;
      padding-left: 28px;
      padding-right: 47px; }
      .visual_page_container .sec12 ul.flow_box_list li {
        width: 180px; }
        .visual_page_container .sec12 ul.flow_box_list li .flow_caption {
          color: #242424;
          font-size: 18px;
          font-weight: 500;
          text-align: center;
          letter-spacing: -0.05em; }
        .visual_page_container .sec12 ul.flow_box_list li .flow_text {
          margin-top: 1em;
          color: #282828;
          font-size: 14px;
          font-weight: 400;
          line-height: 1.57;
          letter-spacing: normal; }
  .visual_page_container .sec13 {
    padding-top: 90px;
    padding-bottom: 90px;
    background: linear-gradient(60deg, rgba(220, 130, 180, 0.5), rgba(120, 200, 255, 0.5)); }
    .visual_page_container .sec13 .mail_icon {
      text-align: center;
      margin-bottom: 12px; }
    .visual_page_container .sec13 h2 {
      font-size: 20px;
      font-weight: bold;
      letter-spacing: 0.04em;
      text-align: center;
      margin-bottom: 30px; }
    .visual_page_container .sec13 .dummy_form {
      text-align: center; }
  .visual_page_container #form .text {
    border-top: 0;
    padding-top: 0; }
  .visual_page_container #form .form-table {
    font-size: 14px;
    margin: 0 auto 60px; }
  .visual_page_container #form .form-head {
    display: table-cell;
    line-height: 1.428;
    padding: 25px 0;
    vertical-align: top;
    width: 180px; }
  .visual_page_container #form .form-label {
    padding-left: 50px; }
  .visual_page_container #form .form-data {
    padding: 10px 0;
    vertical-align: top; }
  .visual_page_container #form .form-txt, .visual_page_container #form .thanks-txt {
    font-size: 14px;
    line-height: 1.928;
    margin-bottom: 30px; }
    .visual_page_container #form .form-txt a, .visual_page_container #form .thanks-txt a {
      text-decoration: underline; }
  .visual_page_container .sec14 {
    padding-top: 58px;
    padding-bottom: 75px; }
    .visual_page_container .sec14 .qa_icon {
      text-align: center; }
    .visual_page_container .sec14 h2 {
      font-size: 20px;
      font-weight: bold;
      letter-spacing: 0.04em;
      text-align: center;
      margin-bottom: 35px; }
    .visual_page_container .sec14 .qa_box_wrap {
      width: 1000px;
      margin: 0 100px; }
      .visual_page_container .sec14 .qa_box_wrap .qa_box {
        width: 1000px;
        padding: 50px 45px;
        font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
        border: 2px solid #dc82b4;
        border-image: linear-gradient(to right, #dc82b4 0%, #78c8ff 100%);
        border-image-slice: 1;
        margin-bottom: 26px; }
        .visual_page_container .sec14 .qa_box_wrap .qa_box .q_text {
          background: url(../images/sec14_q_icon.png) left 10px top 0 no-repeat;
          padding-left: 58px;
          font-size: 24px;
          line-height: 1.3;
          padding-bottom: 30px;
          border-bottom: 1px #464646 dotted; }
        .visual_page_container .sec14 .qa_box_wrap .qa_box .a_box {
          padding-left: 110px;
          padding-top: 28px;
          background: url(../images/sec14_a_icon.png) left 78px top 28px no-repeat; }
          .visual_page_container .sec14 .qa_box_wrap .qa_box .a_box .a_title {
            font-size: 22px;
            font-weight: bold;
            line-height: 1.3;
            letter-spacing: 0.08em;
            margin-bottom: 12px; }
          .visual_page_container .sec14 .qa_box_wrap .qa_box .a_box .a_text {
            font-size: 16px;
            line-height: 1.52;
            letter-spacing: 0.08em; }
            .visual_page_container .sec14 .qa_box_wrap .qa_box .a_box .a_text span {
              font-weight: bold; }
  .visual_page_container footer {
    height: 140px;
    background-color: #ffffff;
    border-top: #cacaca 1px solid; }
    .visual_page_container footer .footer_wrap {
      margin: 0 100px;
      height: 140px;
      align-items: center; }
      .visual_page_container footer .footer_wrap .footer_logo {
        margin-right: 15px; }
      .visual_page_container footer .footer_wrap .address {
        font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
        font-size: 12px;
        color: #1a1a1a;
        line-height: 1.58;
        margin-right: 115px; }

/*# sourceMappingURL=visual_page.css.map */
