@charset "UTF-8";
html {
  position: relative;
  min-height: 100%;
  overflow-x: hidden; }

section {
  overflow: visible;
  position: relative;
  text-align: center; }

body {
  width: 100%;
  font-size: 18px;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, sans-serif, "メイリオ", meiryo;
  color: #000;
  position: relative;
  line-height: 1.8;
  background: #fefefe;
  padding-bottom: 170px;
  overflow: hidden; }

img {
  width: auto;
  max-width: 100%;
  vertical-align: top;
  height: auto; }

.sp {
  display: none !important; }

.fax {
  pointer-events: none; }

@media screen and (max-width: 767px) {
  body {
    font-size: 3.2vw;
    padding-top: 0;
    padding-bottom: 20vw; }

  .pc {
    display: none !important; }

  .sp {
    display: inherit !important; } }
a {
  outline: none;
  text-decoration: none; }

a:hover {
  text-decoration: none; }

.pagetop {
  position: relative;
  display: block;
  z-index: 1100; }

.pagetop a {
  width: 50px;
  height: 50px;
  border-radius: 50px;
  color: #fff;
  display: block;
  z-index: 1100;
  overflow: hidden;
  position: relative; }
  .pagetop a:hover {
    opacity: 0.7;
    transition: 0.3s; }

.contents_wrap {
  max-width: 1240px;
  width: 90%;
  margin: 0 auto;
  position: relative; }

.contents_wrap2 {
  max-width: 1028px;
  width: 90%;
  margin: 0 auto; }

.fixed_cta {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #FDD03C;
  border-top: 4px #FF8E3B solid;
  padding: 10px 0;
  z-index: 10; }
  .fixed_cta .contents_wrap {
    width: 96%; }
  .fixed_cta .cta_flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: center; }
    .fixed_cta .cta_flex .illust {
      width: 6%; }
    .fixed_cta .cta_flex .ttl_area {
      width: 22%; }
      .fixed_cta .cta_flex .ttl_area .ttl {
        font-size: 27px;
        font-weight: 700;
        line-height: 1.2;
        text-align: left; }
    .fixed_cta .cta_flex .box {
      width: 33%; }
      .fixed_cta .cta_flex .box a {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-box;
        display: -webkit-flexbox;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: flex-start;
        height: auto;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        border-radius: 999px;
        padding: 15px;
        position: relative;
        bottom: 0; }
        .fixed_cta .cta_flex .box a .icon {
          width: 19%; }
        .fixed_cta .cta_flex .box a .txt {
          width: 78%;
          margin-left: 1%;
          color: #fff;
          text-align: center;
          font-weight: 500;
          line-height: 0.8; }
        .fixed_cta .cta_flex .box a.reserve {
          background: #0597AA;
          border: 3px #0B7583 solid;
          filter: drop-shadow(2px 4px 0 #0B7583); }
          .fixed_cta .cta_flex .box a.reserve .txt {
            font-size: 30px; }
            .fixed_cta .cta_flex .box a.reserve .txt em {
              font-size: 18px; }
        .fixed_cta .cta_flex .box a.tel {
          background: #F06E95;
          border: 3px #ED4376 solid;
          filter: drop-shadow(2px 4px 0 #ED4376); }
          .fixed_cta .cta_flex .box a.tel .txt {
            font-size: 30px;
            line-height: 1; }
            .fixed_cta .cta_flex .box a.tel .txt em {
              font-size: 18px; }
        .fixed_cta .cta_flex .box a:hover {
          bottom: -4px;
          filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));
          transition: 0.3s; }
    @media only screen and (min-width: 768px) and (max-width: 1270px) {
      .fixed_cta .cta_flex .ttl_area .ttl {
        font-size: calc(20px + 7 * (100vw - 768px) / 472); }
      .fixed_cta .cta_flex .box a.reserve .txt {
        font-size: calc(20px + 10 * (100vw - 768px) / 472); }
        .fixed_cta .cta_flex .box a.reserve .txt em {
          font-size: calc(13px + 5 * (100vw - 768px) / 472); }
      .fixed_cta .cta_flex .box a.tel .txt {
        font-size: calc(20px + 10 * (100vw - 768px) / 472); }
        .fixed_cta .cta_flex .box a.tel .txt em {
          font-size: calc(13px + 5 * (100vw - 768px) / 472); } }
    @media only screen and (max-width: 1060px) {
      .fixed_cta .cta_flex {
        justify-content: center; }
        .fixed_cta .cta_flex .illust {
          order: 2;
          width: 10%; }
        .fixed_cta .cta_flex .ttl_area {
          order: 1;
          width: 100%; }
          .fixed_cta .cta_flex .ttl_area .ttl {
            line-height: 1.5;
            text-align: center; }
          .fixed_cta .cta_flex .ttl_area br {
            display: none; }
        .fixed_cta .cta_flex .box {
          width: 43%;
          order: 3;
          margin: 0 1%; }
          .fixed_cta .cta_flex .box a {
            padding: 5px; } }

@media only screen and (max-width: 767px) {
  .fixed_cta {
    padding: 2vw 0; }
    .fixed_cta .cta_flex {
      align-items: stretch; }
      .fixed_cta .cta_flex .illust {
        display: none; }
      .fixed_cta .cta_flex .ttl_area .ttl {
        font-size: 3.6vw; }
      .fixed_cta .cta_flex .box {
        width: 48%; }
        .fixed_cta .cta_flex .box a {
          padding: 1vw;
          height: 100%; }
          .fixed_cta .cta_flex .box a .icon {
            width: 15%; }
          .fixed_cta .cta_flex .box a .txt {
            width: 80%; }
          .fixed_cta .cta_flex .box a.reserve {
            border: 0.6vw #0B7583 solid;
            filter: drop-shadow(0.4vw 0.8vw 0 #0B7583); }
            .fixed_cta .cta_flex .box a.reserve .txt {
              font-size: 3.5vw; }
              .fixed_cta .cta_flex .box a.reserve .txt em {
                font-size: 2.3vw; }
          .fixed_cta .cta_flex .box a.tel {
            border: 0.6vw #ED4376 solid;
            filter: drop-shadow(0.4vw 0.8vw 0 #ED4376); }
            .fixed_cta .cta_flex .box a.tel .txt {
              font-size: 3.5vw;
              line-height: 1.1; }
              .fixed_cta .cta_flex .box a.tel .txt em {
                font-size: 2.3vw; }
          .fixed_cta .cta_flex .box a:hover {
            bottom: -0.8vw;
            filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));
            transition: 0.3s; } }
/*=====================================================
MAIN
======================================================*/
#mainvisual {
  background: #FDD03C;
  position: relative;
  margin-bottom: 150px;
  overflow: visible; }
  #mainvisual .mv_wrap {
    max-width: 1500px;
    width: 100%;
    margin: 0 auto;
    position: relative; }
  #mainvisual .head_logo {
    width: 40%;
    max-width: 325px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4; }
  #mainvisual .main_copy {
    position: absolute;
    top: 18%;
    left: 50%;
    transform: translateX(-50%);
    width: 45%;
    z-index: 3; }
  #mainvisual .visual {
    position: relative;
    bottom: -50px;
    z-index: 2; }
    #mainvisual .visual .main_illust {
      position: relative;
      z-index: 3; }
    #mainvisual .visual .illust_a {
      position: absolute;
      top: 18%;
      left: 0;
      width: 9%;
      z-index: 2; }
    #mainvisual .visual .illust_b {
      position: absolute;
      top: 55%;
      right: 20%;
      width: 5.2%;
      z-index: 2; }
    #mainvisual .visual .illust_c {
      position: absolute;
      top: 52%;
      right: 7%;
      width: 5%;
      z-index: 2; }
  #mainvisual:after {
    content: "";
    width: 1500px;
    height: 121px;
    background-image: url("../img/main_bg_yellow_pc.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    position: absolute;
    top: 99.9%;
    left: 50%;
    transform: translateX(-50%); }

navi ul.pagenavi {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-start;
  height: auto;
  justify-content: space-between;
  align-items: stretch;
  padding: 30px 0 120px; }
  navi ul.pagenavi li {
    width: 32%;
    margin-bottom: 20px; }
    navi ul.pagenavi li a {
      width: 100%;
      border-radius: 999px;
      padding: 15px 10px 15px 30px;
      position: relative;
      bottom: 0;
      display: block;
      background: #FDD03C;
      border: 3px #FCA43D solid;
      filter: drop-shadow(2px 4px 0 #FCA43D);
      text-align: center;
      color: #000;
      font-size: 24px;
      font-weight: 700; }
      navi ul.pagenavi li a:hover {
        bottom: -4px;
        filter: drop-shadow(0 0 0 #FCA43D);
        transition: 0.3s; }
      navi ul.pagenavi li a:after {
        content: "\f0d7";
        width: 30px;
        height: 25px;
        background: #E94F37;
        color: #fff;
        border-radius: 100px;
        line-height: 1;
        text-align: center;
        padding-top: 5px;
        font-size: 20px;
        font-weight: bold;
        font-family: 'Font Awesome 5 Free';
        position: absolute;
        left: 15px;
        top: 50%;
        transform: translateY(-50%); }

.circle::before {
  content: "";
  width: 500px;
  height: 500px;
  border-radius: 9999px;
  position: absolute;
  top: -80px;
  left: 50%;
  transform: translateX(-50%); }

.triangle::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 90px transparent solid;
  border-top: 60px #FFF5D5 solid;
  z-index: 2; }

.sec_ttl {
  margin-bottom: 100px; }

#start {
  background: #FFF5D5;
  padding: 0 0 100px; }
  #start.circle::before {
    background: #FFF5D5; }
  #start .start_flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: stretch;
    text-align: left; }
    #start .start_flex .box {
      width: 49%; }
      #start .start_flex .box .txt01 {
        color: #E94F37;
        font-weight: 700;
        font-size: 20px; }
        #start .start_flex .box .txt01 span {
          font-size: 26px; }
      #start .start_flex .box .txt02 {
        font-size: 30px;
        font-weight: 700;
        line-height: 1.7; }
        #start .start_flex .box .txt02 span {
          background: #E94F37;
          color: #fff;
          padding: 5px 10px; }
          #start .start_flex .box .txt02 span em {
            font-size: 40px; }
      #start .start_flex .box .txt03 {
        color: #E94F37;
        font-weight: 700;
        font-size: 24px;
        padding-bottom: 20px;
        margin: 20px 0;
        border-bottom: 2px #FDD03C solid;
        line-height: 1.5; }
      #start .start_flex .box .txt04 {
        font-weight: 500; }
      @media only screen and (min-width: 768px) and (max-width: 1280px) {
        #start .start_flex .box .txt01 {
          font-size: calc(16px + 4 * (100vw - 768px) / 482); }
          #start .start_flex .box .txt01 span {
            font-size: calc(20px + 6 * (100vw - 768px) / 482); }
        #start .start_flex .box .txt02 {
          font-size: calc(18px + 12 * (100vw - 768px) / 482); }
          #start .start_flex .box .txt02 span em {
            font-size: calc(22px + 18 * (100vw - 768px) / 482); }
        #start .start_flex .box .txt03 {
          font-size: calc(16px + 8 * (100vw - 768px) / 482); }
        #start .start_flex .box .txt04 {
          font-size: calc(15px + 3 * (100vw - 768px) / 482); } }
      #start .start_flex .box .about {
        background: #fff;
        padding: 25px;
        font-size: 14px;
        position: relative;
        margin-top: 40px;
        border-bottom: 1px #FDD03C solid; }
        #start .start_flex .box .about:before {
          content: "";
          background: #FDD03C;
          height: 1px;
          width: calc(100% - 140px);
          position: absolute;
          top: -0.5px;
          right: 0; }
        #start .start_flex .box .about .ttl {
          color: #E94F37;
          font-weight: 500;
          padding: 0 0 0 30px;
          position: absolute;
          top: -18px;
          left: 0;
          font-size: 18px;
          background: url("../img/start_hand.svg") no-repeat left center;
          background-size: 25px; }
  #start .start_iida {
    background: #fff;
    margin: 80px 0 80px;
    border: 4px #FDD03C solid;
    border-radius: 15px;
    padding: 30px;
    text-align: left; }
    #start .start_iida .ttl {
      font-size: 30px;
      color: #E94F37;
      font-weight: 700;
      border-bottom: 1px #FDD03C solid;
      margin: 0 0 15px 75px;
      position: relative; }
      #start .start_iida .ttl:before {
        content: "";
        width: 65px;
        height: 66px;
        background: url("../img/icon_loupe.svg") no-repeat center;
        background-size: 100%;
        position: absolute;
        left: -75px;
        top: 50%;
        transform: translateY(-50%); }
    #start .start_iida .txt {
      font-weight: 500; }
      #start .start_iida .txt span {
        font-size: 22px;
        color: #E94F37;
        background: linear-gradient(transparent 70%, #FFDE77 30%); }

.omakase {
  background: #FDD03C;
  padding: 100px 0; }
  .omakase .sec_ttl {
    margin-bottom: 30px; }
  .omakase .omakase_txt01 {
    max-width: 820px;
    font-weight: 500;
    text-align: left;
    margin: 0 auto 80px; }
    .omakase .omakase_txt01 span {
      font-size: 22px;
      color: #E94F37; }
  .omakase .omakase_flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: stretch;
    margin-bottom: 100px; }
    .omakase .omakase_flex .box {
      width: 49%;
      background: #fff;
      border: 6px #FFF5D5 solid;
      border-radius: 20px;
      padding: 0 3% 30px;
      margin-bottom: 30px; }
      .omakase .omakase_flex .box .point_img {
        margin-bottom: 30px; }
        .omakase .omakase_flex .box .point_img.point01 {
          margin-top: 60px; }
        .omakase .omakase_flex .box .point_img.point02 {
          margin-top: -40px; }
        .omakase .omakase_flex .box .point_img.point03 {
          margin-top: -20px; }
        .omakase .omakase_flex .box .point_img.point04 {
          margin-top: 15px; }
      .omakase .omakase_flex .box p {
        text-align: left; }
  .omakase table {
    width: 100%;
    margin: 20px 0 80px; }
    .omakase table thead th, .omakase table thead td {
      color: #fff;
      width: 33.3%;
      vertical-align: middle;
      text-align: center; }
    .omakase table thead th {
      background: #FF8E3B;
      padding: 20px 0;
      font-size: 36px;
      font-weight: 700;
      border-right: 2px #fff solid; }
    .omakase table thead td {
      font-size: 24px;
      font-weight: 500;
      background: #A38062; }
    .omakase table tbody th, .omakase table tbody td {
      background: #fff;
      padding: 10px 20px;
      vertical-align: middle; }
    .omakase table tbody th {
      font-size: 24px;
      color: #E94F37;
      font-weight: 700;
      line-height: 1.4; }
    .omakase table tbody td {
      border-left: 2px #FF8E3B solid; }
      .omakase table tbody td p {
        text-align: left;
        padding: 20px 0 20px 55px;
        font-size: 16px;
        background-position: left center;
        background-size: 44px;
        background-repeat: no-repeat;
        line-height: 1.4; }
        .omakase table tbody td p.maru {
          background-image: url("../img/maru.svg"); }
        .omakase table tbody td p.sankaku {
          background-image: url("../img/sankaku.svg"); }
    .omakase table tbody tr:nth-child(even) th, .omakase table tbody tr:nth-child(even) td:nth-child(2) {
      background: #FFF5D5; }
    .omakase table tbody tr:nth-child(even) td:last-child {
      background: #F4E8DE; }

#type {
  background: #FFF5D5;
  padding: 20px 0 150px; }
  #type.circle::before {
    background: #FFF5D5; }
  #type .type_txt01 {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2; }
  #type .type_txt02 {
    max-width: 820px;
    font-weight: 500;
    text-align: left;
    margin: 30px auto 80px; }
  #type .propose_box {
    margin-bottom: 30px;
    border-radius: 15px;
    padding: 0 15px 15px;
    position: relative;
    text-align: left; }
    #type .propose_box:before {
      content: "";
      height: 100px;
      width: 100%;
      position: absolute;
      top: 0;
      left: 0;
      border-radius: 10px 10px 0 0; }
      @media only screen and (min-width: 768px) and (max-width: 1280px) {
        #type .propose_box:before {
          height: calc(60px + 40 * (100vw - 768px) / 482); } }
    #type .propose_box.green {
      background: #E8FAC8;
      border: 4px #38B54B solid; }
      #type .propose_box.green:before {
        background: #38B54B; }
    #type .propose_box.orange {
      background: #FFE9D9;
      border: 4px #F87007 solid; }
      #type .propose_box.orange:before {
        background: #F87007; }
    #type .propose_box.blue {
      background: #EDF4FF;
      border: 4px #3A83D9 solid; }
      #type .propose_box.blue:before {
        background: #3A83D9; }
    #type .propose_box .flex {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-box;
      display: -webkit-flexbox;
      display: -moz-flexbox;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: flex;
      -webkit-box-lines: multiple;
      -moz-box-lines: multiple;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: flex-start;
      height: auto;
      justify-content: space-between;
      position: relative;
      z-index: 2; }
      #type .propose_box .flex .left {
        width: 30%;
        padding-top: 10px; }
      #type .propose_box .flex .right {
        width: 67%; }
        #type .propose_box .flex .right .ttl {
          color: #fff;
          font-size: 26px;
          font-weight: 500;
          height: 100px;
          line-height: 100px;
          padding: 0 0 0 45px;
          background: url("../img/check.svg") no-repeat left center;
          background-size: 42px; }
          #type .propose_box .flex .right .ttl span {
            font-size: 34px; }
          @media only screen and (min-width: 768px) and (max-width: 1280px) {
            #type .propose_box .flex .right .ttl {
              padding: 0 0 0 calc(23px + 22 * (100vw - 768px) / 482);
              height: calc(60px + 40 * (100vw - 768px) / 482);
              line-height: calc(60px + 40 * (100vw - 768px) / 482);
              font-size: calc(18px + 8 * (100vw - 768px) / 482);
              background-size: calc(20px + 22 * (100vw - 768px) / 482); }
              #type .propose_box .flex .right .ttl span {
                font-size: calc(20px + 14 * (100vw - 768px) / 482); } }
        #type .propose_box .flex .right .txt {
          padding: 20px 0;
          font-weight: 500; }
          @media only screen and (min-width: 768px) and (max-width: 1280px) {
            #type .propose_box .flex .right .txt {
              font-size: calc(14px + 4 * (100vw - 768px) / 482); } }

#everyone {
  background-color: #81D1F5;
  background-image: url("../img/bg_cloud.svg");
  background-repeat: repeat-y;
  background-position: center;
  background-size: 1700px;
  padding: 20px 0 150px; }
  #everyone.circle::before {
    background: #81D1F5; }
  #everyone .sec_ttl {
    margin-bottom: 0; }
  #everyone .every_txt01 {
    max-width: 820px;
    font-weight: 500;
    text-align: left;
    margin: 30px auto 80px; }
  #everyone .every_img {
    margin-bottom: 80px; }

#risk {
  background: #FFF5D5;
  padding: 20px 0 150px; }
  #risk.circle::before {
    background: #FFF5D5; }
  #risk .risk_flex01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 80px; }
    #risk .risk_flex01 .left {
      width: 47%;
      text-align: left; }
      #risk .risk_flex01 .left .ttl {
        font-size: 40px;
        font-weight: 700;
        color: #E94F37;
        line-height: 1.4;
        border-bottom: 2px #FDD03C solid;
        margin-bottom: 15px;
        padding-bottom: 7px; }
      #risk .risk_flex01 .left .txt01 {
        font-size: 16px;
        font-weight: 500; }
        #risk .risk_flex01 .left .txt01 span {
          color: #E94F37; }
      #risk .risk_flex01 .left .txt02 {
        margin: 20px 0;
        font-weight: 500; }
        #risk .risk_flex01 .left .txt02 .orange {
          font-size: 22px;
          color: #E94F37; }
        #risk .risk_flex01 .left .txt02 .green {
          font-size: 22px;
          color: #38B54B; }
    #risk .risk_flex01 .right {
      width: 50%; }
  #risk .risk_ttl {
    margin-bottom: 60px; }
  #risk .risk_ttl02 {
    margin-bottom: 120px; }
  #risk .risk_five {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    background: #fff;
    border-radius: 15px;
    padding: 15px 30px;
    text-align: left; }
    #risk .risk_five .icon {
      width: 110px; }
    #risk .risk_five .ttl {
      width: 250px;
      color: #E94F37;
      font-size: 30px;
      font-weight: 700;
      border-right: 2px #E94F37 solid;
      padding: 15px 0;
      line-height: 1.2; }
    #risk .risk_five .txt {
      width: calc(100% - 430px);
      font-size: 20px;
      line-height: 1.4; }
  #risk .fee {
    background: #fff;
    margin: 80px auto 150px;
    width: 80%;
    border: 4px #FDD03C solid;
    border-radius: 15px;
    padding: 20px 30px;
    text-align: left; }
    #risk .fee .ttl {
      font-size: 30px;
      color: #E94F37;
      font-weight: 700;
      border-bottom: 1px #FDD03C solid;
      margin: 0 0 15px 75px;
      position: relative; }
      #risk .fee .ttl:before {
        content: "";
        width: 65px;
        height: 66px;
        background: url("../img/icon_loupe.svg") no-repeat center;
        background-size: 100%;
        position: absolute;
        left: -75px;
        top: 50%;
        transform: translateY(-50%); }
  #risk .type_txt01 {
    max-width: 1028px;
    font-weight: 500;
    text-align: left;
    margin: 0px auto 60px; }
  #risk .risk_flex02 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: stretch;
    margin-bottom: 80px; }
    #risk .risk_flex02 .box {
      background: #fff;
      border-radius: 15px;
      filter: drop-shadow(0 4px 0 #FFBE3C);
      width: 31.5%; }
      #risk .risk_flex02 .box .ttl {
        background: #38B54B;
        border-radius: 15px 15px 0 0;
        padding: 20px;
        line-height: 1;
        font-size: 40px;
        font-weight: 700;
        color: #fff; }
      #risk .risk_flex02 .box .txt {
        text-align: left;
        padding: 0 10% 30px;
        font-size: 16px;
        line-height: 1.8; }

#question {
  padding: 20px 0 150px;
  background: #fff; }
  #question.circle::before {
    background: #fff; }
  #question .q_ttl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px #38B54B solid;
    padding: 10px;
    text-align: left;
    cursor: pointer;
    position: relative;
    margin-top: 50px; }
    #question .q_ttl .q_icon {
      width: 52px; }
    #question .q_ttl .ttl {
      width: calc(100% - 75px);
      font-size: 22px;
      font-weight: 500;
      color: #38B54B;
      line-height: 1.3;
      padding-right: 75px; }
    #question .q_ttl:after {
      content: "\f0d7";
      color: #38B54B;
      font-size: 30px;
      font-weight: bold;
      font-family: 'Font Awesome 5 Free';
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%);
      transition: 0.3s; }
    #question .q_ttl.active::after {
      transform: translateY(-50%) scale(-1);
      transition: 0.3s; }
  #question .a_detail {
    display: none; }
    #question .a_detail .a_flex {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-box;
      display: -webkit-flexbox;
      display: -moz-flexbox;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: flex;
      -webkit-box-lines: multiple;
      -moz-box-lines: multiple;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      align-items: flex-start;
      height: auto;
      justify-content: space-between;
      background: #EDFAF2;
      border-radius: 0 0 15px 15px;
      padding: 30px;
      text-align: left; }
      #question .a_detail .a_flex .a_icon {
        width: 55px; }
      #question .a_detail .a_flex .txt {
        width: calc(100% - 75px);
        font-size: 20px;
        padding-top: 0px; }

#flow {
  background: #FFF5D5;
  padding: 20px 0 150px; }
  #flow.circle::before {
    background: #FFF5D5; }
  #flow .step_area {
    position: relative;
    max-width: 1060px;
    width: 100%;
    margin: 0 auto 80px;
    text-align: left; }
    #flow .step_area:after {
      content: "";
      background: #FDD03C;
      width: 10px;
      height: calc(100% - 150px);
      position: absolute;
      top: 20px;
      left: 40px; }
    #flow .step_area .step_ttl {
      background: #FDD03C;
      border-radius: 100px 15px 0 100px;
      padding: 10px 10px 10px 110px;
      position: relative;
      z-index: 2; }
      #flow .step_area .step_ttl p {
        font-size: 36px;
        font-weight: 700;
        color: #E94F37; }
        @media only screen and (min-width: 768px) and (max-width: 1100px) {
          #flow .step_area .step_ttl p {
            font-size: calc(30px + 6 * (100vw - 768px) / 332); } }
      #flow .step_area .step_ttl .step_icon {
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%); }
    #flow .step_area .step_detail {
      background: #fff;
      border-radius: 0 0 15px 15px;
      padding: 20px 30px;
      margin: 0 0 50px 90px;
      position: relative; }
      #flow .step_area .step_detail:after {
        content: "";
        position: absolute;
        bottom: -60px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border: 25px transparent solid;
        border-top: 20px #E94F37 solid; }
      #flow .step_area .step_detail:last-child::after {
        display: none; }
      #flow .step_area .step_detail p {
        font-size: 20px; }
      #flow .step_area .step_detail .btn_flex {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-box;
        display: -webkit-flexbox;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: flex-start;
        height: auto;
        margin-top: 15px; }
        #flow .step_area .step_detail .btn_flex a {
          display: -webkit-box;
          display: -moz-box;
          display: -ms-box;
          display: -webkit-flexbox;
          display: -moz-flexbox;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: flex;
          -webkit-box-lines: multiple;
          -moz-box-lines: multiple;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          align-items: flex-start;
          height: auto;
          justify-content: flex-start;
          align-items: center;
          max-width: 385px;
          width: 48%;
          margin-right: 2%;
          border-radius: 999px;
          padding: 6px;
          position: relative;
          bottom: 0; }
          #flow .step_area .step_detail .btn_flex a .icon {
            width: 13%; }
          #flow .step_area .step_detail .btn_flex a .txt {
            width: 85%;
            margin-left: 1%;
            color: #fff;
            text-align: center;
            font-weight: 500;
            font-size: 24px;
            line-height: 1; }
            #flow .step_area .step_detail .btn_flex a .txt em {
              font-size: 18px; }
            @media only screen and (min-width: 768px) and (max-width: 1100px) {
              #flow .step_area .step_detail .btn_flex a .txt {
                font-size: calc(18px + 6 * (100vw - 768px) / 332); } }
          #flow .step_area .step_detail .btn_flex a.reserve {
            background: #0597AA;
            border: 3px #0B7583 solid;
            filter: drop-shadow(2px 4px 0 #0B7583); }
          #flow .step_area .step_detail .btn_flex a.tel {
            background: #F06E95;
            border: 3px #ED4376 solid;
            filter: drop-shadow(2px 4px 0 #ED4376); }
          #flow .step_area .step_detail .btn_flex a:hover {
            bottom: -4px;
            filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));
            transition: 0.3s; }
  #flow .flow_txt {
    max-width: 1060px;
    margin: 0 auto;
    text-align: left; }

#attention {
  background: #212121;
  color: #fff;
  padding: 80px 0; }
  #attention .attention_ttl {
    display: inline-block;
    font-size: 30px;
    font-weight: 700;
    padding-left: 50px;
    background: url("../img/icon_attention.svg") no-repeat left center;
    border-bottom: 1px #fff solid;
    padding-bottom: 7px; }
  #attention .attention_wrap {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto; }
  #attention .ttl {
    font-size: 20px;
    font-weight: 500;
    margin-top: 30px;
    text-align: left; }
  #attention .txt {
    text-align: left;
    font-size: 16px; }

footer {
  padding: 80px 0; }
  footer .footer_flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    justify-content: center;
    align-items: center; }
    footer .footer_flex .f_logo {
      width: 36%; }
      footer .footer_flex .f_logo img {
        max-width: 392px;
        width: 100%; }
    footer .footer_flex .f_txt {
      width: 58%;
      margin: 0 3%;
      text-align: left;
      font-size: 16px; }

@media screen and (max-width: 767px) {
  #mainvisual {
    margin-bottom: 20vw; }
    #mainvisual .head_logo {
      width: 50%;
      max-width: none; }
    #mainvisual .main_copy {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 75%; }
    #mainvisual .visual {
      bottom: -5vw; }
      #mainvisual .visual .main_illust {
        position: relative;
        z-index: 3;
        width: 100%;
        max-width: none; }
      #mainvisual .visual .illust_a {
        position: absolute;
        top: 50%;
        left: -5%;
        width: 15%;
        z-index: 2; }
      #mainvisual .visual .illust_b {
        position: absolute;
        top: 82%;
        right: -2%;
        width: 9%;
        z-index: 2; }
      #mainvisual .visual .illust_c {
        position: absolute;
        top: 7%;
        right: 45%;
        width: 8%;
        z-index: 2; }
    #mainvisual:after {
      width: 100%;
      height: 10vw;
      background-image: url("../img/main_bg_yellow_sp.svg"); }

  navi ul.pagenavi {
    padding: 0vw 0 15vw; }
    navi ul.pagenavi li {
      width: 49%;
      margin-bottom: 3vw; }
      navi ul.pagenavi li a {
        padding: 1vw 1vw 1vw 5vw;
        border: 0.6vw #FCA43D solid;
        filter: drop-shadow(0.4vw 0.8vw 0 #FCA43D);
        font-size: 3.4vw; }
        navi ul.pagenavi li a:hover {
          bottom: -0.8vw; }
        navi ul.pagenavi li a:after {
          width: 4vw;
          height: 3.5vw;
          padding-top: 0.5vw;
          font-size: 3vw;
          left: 1vw; }

  .circle::before {
    content: "";
    width: 80vw;
    height: 80vw;
    top: -10vw; }

  .triangle::after {
    border: 15vw transparent solid;
    border-top: 10vw #FFF5D5 solid; }

  .sec_ttl {
    margin-bottom: 12vw;
    width: 80vw;
    max-width: none; }

  #start {
    padding: 0 0 8vw; }
    #start .start_flex .box {
      width: 100%;
      margin-bottom: 6vw; }
      #start .start_flex .box .txt01 {
        font-size: 4vw; }
        #start .start_flex .box .txt01 span {
          font-size: 5vw; }
      #start .start_flex .box .txt02 {
        font-size: 5vw; }
        #start .start_flex .box .txt02 span {
          padding: 1vw 2vw; }
          #start .start_flex .box .txt02 span em {
            font-size: 6vw; }
      #start .start_flex .box .txt03 {
        font-size: 3.8vw;
        padding-bottom: 4vw;
        margin: 4vw 0;
        border-bottom: 0.4vw #FDD03C solid; }
      #start .start_flex .box .about {
        padding: 5vw;
        font-size: 2.8vw;
        margin-top: 7vw; }
        #start .start_flex .box .about:before {
          width: calc(100% - 30vw);
          top: -0.1vw; }
        #start .start_flex .box .about .ttl {
          padding: 0 0 0 6vw;
          top: -3.6vw;
          font-size: 3.6vw;
          background-size: 5vw; }
    #start .start_iida {
      margin: 6vw 0 12vw;
      border: 0.8vw #FDD03C solid;
      border-radius: 3vw;
      padding: 4vw; }
      #start .start_iida .ttl {
        font-size: 4.5vw;
        line-height: 1.3;
        padding-bottom: 2vw;
        margin: 0 0 3vw 10vw; }
        #start .start_iida .ttl:before {
          width: 9vw;
          height: 9vw;
          left: -10vw; }
      #start .start_iida .txt span {
        font-size: 4vw; }

  .omakase {
    padding: 18vw 0 20vw; }
    .omakase .sec_ttl {
      margin-bottom: 6vw; }
    .omakase .omakase_txt01 {
      margin: 0 auto 10vw; }
      .omakase .omakase_txt01 span {
        font-size: 4vw; }
    .omakase .omakase_flex {
      margin-bottom: 12vw;
      justify-content: center; }
      .omakase .omakase_flex .box {
        width: 90%;
        border: 1.2vw #FFF5D5 solid;
        border-radius: 4vw;
        padding: 0 5% 6vw;
        margin-bottom: 10vw; }
        .omakase .omakase_flex .box .point_img {
          margin-bottom: 5vw; }
          .omakase .omakase_flex .box .point_img.point01 {
            margin-top: 7vw; }
          .omakase .omakase_flex .box .point_img.point02 {
            margin-top: -6vw; }
          .omakase .omakase_flex .box .point_img.point03 {
            margin-top: -4vw; }
          .omakase .omakase_flex .box .point_img.point04 {
            margin-top: 3vw; }
    .omakase table {
      margin: 4vw 0 10vw; }
      .omakase table thead th {
        padding: 4vw 0;
        font-size: 4.5vw;
        border-right: 0.4vw #fff solid; }
      .omakase table thead td {
        font-size: 3.2vw; }
      .omakase table tbody th, .omakase table tbody td {
        padding: 2vw 2vw; }
      .omakase table tbody th {
        font-size: 3.8vw; }
      .omakase table tbody td {
        border-left: 0.4vw #FF8E3B solid; }
        .omakase table tbody td p {
          padding: 12vw 0 4vw;
          font-size: 3vw;
          background-position: top center;
          background-size: 10vw; }

  #type {
    padding: 4vw 0 15vw; }
    #type .type_txt01 {
      font-size: 5vw; }
    #type .type_txt02 {
      margin: 4vw auto 10vw; }
    #type .type_ttl {
      width: 80vw; }
    #type .propose_box {
      margin-bottom: 6vw;
      border-radius: 3vw;
      padding: 0 3vw 3vw; }
      #type .propose_box:before {
        height: 25vw;
        border-radius: 2vw 2vw 0 0; }
      #type .propose_box.green {
        border: 0.8vw #38B54B solid; }
      #type .propose_box.orange {
        border: 0.8vw #F87007 solid; }
      #type .propose_box.blue {
        border: 0.8vw #3A83D9 solid; }
      #type .propose_box .flex .left {
        width: 35%;
        padding-top: 2vw; }
      #type .propose_box .flex .right {
        width: 60%; }
        #type .propose_box .flex .right .ttl {
          font-size: 4vw;
          height: 25vw;
          line-height: 1.4;
          padding: 3vw 0 0 7vw;
          background: url("../img/check.svg") no-repeat left top 2vw;
          background-size: 6vw; }
          #type .propose_box .flex .right .ttl span {
            font-size: 5vw; }
        #type .propose_box .flex .right .txt {
          width: 165%;
          margin-left: -65%;
          padding: 4vw 0; }

  #everyone {
    padding: 4vw 0 15vw; }
    #everyone .every_txt01 {
      margin: 6vw auto 12vw; }
    #everyone .every_img {
      margin-bottom: 10vw;
      width: 100%; }

  #risk {
    padding: 4ve 0 15vw; }
    #risk .risk_flex01 {
      margin-bottom: 10vw; }
      #risk .risk_flex01 .left {
        width: 100%; }
        #risk .risk_flex01 .left .ttl {
          font-size: 7vw;
          border-bottom: 0.4vw #FDD03C solid;
          margin-bottom: 3vw;
          padding-bottom: 1.4vw; }
        #risk .risk_flex01 .left .txt01 {
          font-size: 3.2vw; }
        #risk .risk_flex01 .left .txt02 {
          margin: 4vw 0; }
          #risk .risk_flex01 .left .txt02 .orange {
            font-size: 4vw;
            color: #E94F37; }
          #risk .risk_flex01 .left .txt02 .green {
            font-size: 4vw;
            color: #38B54B; }
      #risk .risk_flex01 .right {
        width: 100%; }
    #risk .risk_ttl {
      margin-bottom: 8vw; }
    #risk .risk_ttl02 {
      margin-bottom: 12vw;
      width: 80vw;
      max-width: none; }
    #risk .risk_five {
      margin-bottom: 4vw;
      border-radius: 3vw;
      padding: 3vw 6vw; }
      #risk .risk_five .icon {
        width: 20%; }
      #risk .risk_five .ttl {
        width: 70%;
        color: #E94F37;
        font-size: 5vw;
        border: none;
        padding: 3vw 0; }
      #risk .risk_five .txt {
        width: 100%;
        border-top: 0.4vw #E94F37 solid;
        font-size: 4vw;
        padding: 3vw 2vw;
        margin-top: 3vw; }
    #risk .fee {
      margin: 10vw auto 20vw;
      width: 100%;
      border: 0.8vw #FDD03C solid;
      border-radius: 3vw;
      padding: 4vw 6vw; }
      #risk .fee .ttl {
        font-size: 6vw;
        margin: 0 0 3vw 12vw; }
        #risk .fee .ttl:before {
          content: "";
          width: 10vw;
          height: 10vw;
          left: -12vw; }
    #risk .type_txt01 {
      margin: 0px auto 10vw; }
    #risk .risk_flex02 {
      justify-content: center;
      margin-bottom: 10vw; }
      #risk .risk_flex02 .box {
        border-radius: 3vw;
        margin-bottom: 5vw;
        filter: drop-shadow(0 0.8vw 0 #FFBE3C);
        width: 80%; }
        #risk .risk_flex02 .box .ttl {
          border-radius: 3vw 3vw 0 0;
          padding: 4vw;
          font-size: 7vw; }
        #risk .risk_flex02 .box .txt {
          padding: 0 10% 6vw;
          font-size: 3.2vw;
          line-height: 1.8; }

  #question {
    padding: 4vw 0 25vw; }
    #question .q_ttl {
      padding: 2vw;
      margin-top: 8vw; }
      #question .q_ttl .q_icon {
        width: 10%; }
      #question .q_ttl .ttl {
        width: 85%;
        font-size: 3.8vw;
        padding-right: 5vw; }
      #question .q_ttl:after {
        font-size: 6vw;
        right: 0; }
    #question .a_detail .a_flex {
      border-radius: 0 0 3vw 3vw;
      padding: 4vw; }
      #question .a_detail .a_flex .a_icon {
        width: 10%; }
      #question .a_detail .a_flex .txt {
        width: 85%;
        font-size: 3.2vw; }

  #flow {
    padding: 4vw 0 12vw; }
    #flow .step_area {
      width: 100%;
      margin: 0 auto 10vw; }
      #flow .step_area:after {
        content: "";
        background: #FDD03C;
        width: 2vw;
        height: calc(100% - 50vw);
        position: absolute;
        top: 5vw;
        left: 7vw; }
      #flow .step_area .step_ttl {
        border-radius: 20vw 3vw 0 20vw;
        padding: 2vw 4vw 2vw 16vw;
        min-height: 14vw; }
        #flow .step_area .step_ttl p {
          font-size: 4.8vw;
          line-height: 12vw; }
        #flow .step_area .step_ttl .step_icon {
          left: 2vw;
          width: 12vw; }
        #flow .step_area .step_ttl:first-child p {
          line-height: 1.3; }
      #flow .step_area .step_detail {
        border-radius: 0 0 3vw 3vw;
        padding: 4vw;
        margin: 0 0 10vw 16vw;
        position: relative; }
        #flow .step_area .step_detail:after {
          bottom: -12vw;
          border: 5vw transparent solid;
          border-top: 4vw #E94F37 solid; }
        #flow .step_area .step_detail p {
          font-size: 3.8vw; }
        #flow .step_area .step_detail .btn_flex {
          margin-top: 3vw; }
          #flow .step_area .step_detail .btn_flex a {
            max-width: none;
            width: 100%;
            margin: 0 0 3vw;
            padding: 1.2vw; }
            #flow .step_area .step_detail .btn_flex a .txt {
              font-size: 4vw; }
              #flow .step_area .step_detail .btn_flex a .txt em {
                font-size: 3.6vw; }
            #flow .step_area .step_detail .btn_flex a.reserve {
              border: 0.6vw #0B7583 solid;
              filter: drop-shadow(0.4vw 0.8vw 0 #0B7583); }
            #flow .step_area .step_detail .btn_flex a.tel {
              background: #F06E95;
              border: 0.6vw #ED4376 solid;
              filter: drop-shadow(0.4vw 0.8vw 0 #ED4376); }
            #flow .step_area .step_detail .btn_flex a:hover {
              bottom: -0.8vw;
              filter: drop-shadow(0 0 0 rgba(0, 0, 0, 0));
              transition: 0.3s; }

  #attention {
    padding: 12vw 0; }
    #attention .attention_ttl {
      font-size: 6vw;
      padding-left: 10vw;
      padding-bottom: 1.4vw; }
    #attention .ttl {
      font-size: 4vw;
      margin-top: 5vw; }
    #attention .txt {
      font-size: 3.2vw; }

  footer {
    padding: 12vw 0; }
    footer .footer_flex .f_logo {
      width: 90%;
      margin-bottom: 10vw; }
      footer .footer_flex .f_logo img {
        max-width: none;
        width: 100%; }
    footer .footer_flex .f_txt {
      width: 90%;
      font-size: 3.2vw; } }
/*767px*/
