/* Scss Document */
/*-----------------
MV
------------------*/
_:-ms-lang(x)::-ms-backdrop, #mv .color {
  top: 50px !important;
  position: relative; }

#mv {
  display: block;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#EFFFFD));
  background: -o-linear-gradient(top, #fff, #EFFFFD);
  background: linear-gradient(to bottom, #fff, #EFFFFD);
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    #mv {
      background: none; } }
  #mv > .container {
    background-image: url("../../top/img/mv_top_saidan_pc.jpg");
    /*background-position: top 45px left 30px;*/
    background-position: top 0 left 345px;
    background-repeat: no-repeat;
    /*background-size: 84%;*/
    background-size: 71%; }
    @media screen and (max-width: 1199px) {
      #mv > .container {
        /*background-position: top -20px left -73px;
        background-size: 100%;*/
        background-position: top -20px left 270px;
        background-size: 73%; } }
    @media screen and (max-width: 991px) {
      #mv > .container {
        background-position: bottom 250px left 0;
        background-size: 100%; } }
    @media screen and (max-width: 767px) {
      #mv > .container {
        background-image: url("../../top/img/mv_top_saidan_pc.jpg");
        background-position: top 6em left 0;
        background-size: 100%; } }
    @media screen and (max-width: 575px) {
      #mv > .container {
        /*background-size: 123%;*/
        background-position: center 7em; } }
  #mv h1 {
    display: block;
    width: 100%;
    text-align: left;
    font-size: 1.9375rem;
    /*color: $maincolor;*/
    color: #E40E77;
    font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: bold;
    /*margin: 30px auto -60px auto;*/
    margin: 0px auto -60px auto;
    line-height: 160%;
    /*padding: 0 10px;*/
    padding: 10px 10px 0; }
    @media screen and (max-width: 1199px) {
      #mv h1 {
        font-size: 1.5rem;
        line-height: 100%;
        padding: 10px 10px 0; } }
    @media screen and (max-width: 991px) {
      #mv h1 {
        margin: 30px auto 5px auto; } }
    @media screen and (max-width: 767px) {
      #mv h1 {
        margin: 30px auto 10px auto;
        font-size: 1.4375rem; } }
    @media screen and (max-width: 575px) {
      #mv h1 {
        margin: 10px auto 10px auto; } }
    #mv h1 .text-black {
      color: #333;
      font-size: 1.25rem;
      line-height: 150%;
      padding-top: 15px;
      display: block; }
      @media screen and (max-width: 767px) {
        #mv h1 .text-black {
          font-size: 1.0625rem;
          padding-top: 15px; } }
      @media screen and (max-width: 767px) {
        #mv h1 .text-black:last-child {
          /*padding-top: 0px*/ } }
      #mv h1 .text-black img {
        display: inline-block; }
        #mv h1 .text-black img.mv-logo01 {
          margin: -8px 2px auto 2px;
          width: 150px; }
          @media screen and (max-width: 1199px) {
            #mv h1 .text-black img.mv-logo01 {
              margin: 0 2px auto 2px;
              width: 120px; } }
          @media screen and (max-width: 767px) {
            #mv h1 .text-black img.mv-logo01 {
              width: 95px;
              margin: -2px 2px auto 2px; } }
        #mv h1 .text-black img.mv-logo02 {
          margin: -20px 5px auto;
          width: 270px; }
          @media screen and (max-width: 1199px) {
            #mv h1 .text-black img.mv-logo02 {
              margin: -10px 8px auto;
              width: 200px; } }
          @media screen and (max-width: 767px) {
            #mv h1 .text-black img.mv-logo02 {
              width: 159px;
              margin: -9px 5px auto; } }
  #mv .mv-grid-wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 220px auto auto;
    -ms-grid-columns: 660px 1fr;
    /*grid-template: 
	"grid-price grid-staff-img" 220px
	"grid-reason grid-staff-img" auto
	"grid-plan-additional grid-staff-img" auto/
	660px 1fr;*/
    grid-template: "grid-price grid-staff-img" 0px "grid-reason grid-staff-img" auto "grid-plan-additional grid-staff-img" auto/ 660px 1fr; }
    @media screen and (max-width: 1199px) {
      #mv .mv-grid-wrap {
        -ms-grid-rows: 220px auto auto;
        -ms-grid-columns: 530px 1fr;
        grid-template: "grid-price grid-staff-img" 0px "grid-reason grid-staff-img" auto "grid-plan-additional grid-staff-img" auto/ 530px 1fr; } }
    @media screen and (max-width: 991px) {
      #mv .mv-grid-wrap {
        -ms-grid-rows: 220px auto auto auto;
        -ms-grid-columns: 1fr;
        grid-template: "grid-price" 0px "grid-staff-img" auto "grid-reason" auto "grid-plan-additional" auto/ 1fr; } }
    @media screen and (max-width: 767px) {
      #mv .mv-grid-wrap {
        -ms-grid-rows: 95px auto auto auto;
        -ms-grid-columns: 1fr;
        grid-template: "grid-price" 5em "grid-staff-img" auto "grid-reason" auto "grid-plan-additional" auto;
        margin: 15px; } }
    #mv .mv-grid-wrap .grid-price {
      grid-area: grid-price;
      -ms-grid-column: 1;
      -ms-grid-row: 1; }
      #mv .mv-grid-wrap .grid-price .price-wrap {
        display: block;
        width: 100%;
        font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
        position: relative; }
        @media screen and (max-width: 991px) {
          #mv .mv-grid-wrap .grid-price .price-wrap {
            top: -70px;
            left: 115px; } }
        @media screen and (max-width: 767px) {
          #mv .mv-grid-wrap .grid-price .price-wrap {
            top: -50px;
            text-align: center;
            left: 5%; } }
        @media screen and (max-width: 575px) {
          #mv .mv-grid-wrap .grid-price .price-wrap {
            left: -5%; } }
        #mv .mv-grid-wrap .grid-price .price-wrap .tag {
          display: block;
          width: 95px;
          height: 95px;
          background-color: #03B8DF;
          border-radius: 50%;
          color: #fff;
          padding-top: 15px;
          line-height: 1;
          font-size: 1.875rem;
          text-align: center;
          font-weight: bold;
          position: absolute;
          top: 60px; }
          @media screen and (max-width: 767px) {
            #mv .mv-grid-wrap .grid-price .price-wrap .tag {
              width: 90px;
              height: 90px;
              font-size: 1.5625rem;
              padding-top: 19px; } }
          @media screen and (max-width: 575px) {
            #mv .mv-grid-wrap .grid-price .price-wrap .tag {
              width: 80px;
              height: 80px;
              padding-top: 15px;
              top: 69px; } }
          #mv .mv-grid-wrap .grid-price .price-wrap .tag > span {
            font-size: 1.375rem; }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .tag > span {
                font-size: 1.1875rem; } }
        #mv .mv-grid-wrap .grid-price .price-wrap .price {
          /*font-size: (70rem / $fontsize);*/
          font-size: 4rem;
          font-weight: bold;
          /*padding-left: 95px;*/
          padding-left: 45px;
          position: absolute;
          top: 6px;
          width: 100%;
          letter-spacing: -0.15rem; }
          @media screen and (max-width: 991px) {
            #mv .mv-grid-wrap .grid-price .price-wrap .price {
              font-size: 3.625rem; } }
          @media screen and (max-width: 767px) {
            #mv .mv-grid-wrap .grid-price .price-wrap .price {
              padding-left: 45px;
              font-size: 2.8125rem; } }
          #mv .mv-grid-wrap .grid-price .price-wrap .price > .color {
            /*font-size: (128rem / $fontsize);*/
            font-size: 7.5rem;
            color: #03B8DF;
            font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
            font-weight: normal;
            letter-spacing: -0.6rem;
            padding: 0px 5px 0 0; }
            @media screen and (max-width: 991px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .color {
                font-size: 6.875rem; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .color {
                font-size: 5.8125rem;
                display: inline-block;
                padding-right: 5px;
                position: absolute;
                left: 88px;
                top: 6px;
                letter-spacing: -0.7rem; } }
          #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-01 {
            display: inline-block;
            position: absolute;
            /*top: 72px;*/
            top: 75px;
            left: 260px; }
            @media screen and (max-width: 991px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-01 {
                top: 70px;
                left: 235px; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-01 {
                font-size: 2.9375rem;
                text-align: center;
                line-height: 1.1;
                left: 235px;
                top: 86px; } }
          #mv .mv-grid-wrap .grid-price .price-wrap .price > .tax {
            font-size: 1.75rem;
            display: inline-block;
            width: 28px;
            line-height: 1.3;
            position: absolute;
            top: 109px;
            left: 373px; }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .tax {
                font-size: 1.25rem;
                text-align: center;
                line-height: 1.1;
                top: 89px;
                left: 271px; } }
          #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-02 {
            display: inline-block;
            position: absolute;
            top: 75px;
            /*left: 437px;*/
            left: 390px; }
            @media screen and (max-width: 991px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-02 {
                left: 355px; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-price .price-wrap .price > .price-parts-02 {
                font-size: 2.25rem;
                text-align: center;
                line-height: 1.1;
                top: 90px;
                left: 328px; } }
    #mv .mv-grid-wrap .grid-staff-img {
      grid-area: grid-staff-img;
      -ms-grid-column: 2;
      -ms-grid-row: 1;
      -ms-grid-row-span: 3;
      position: relative; }
      @media screen and (max-width: 991px) {
        #mv .mv-grid-wrap .grid-staff-img {
          -ms-grid-column: 1;
          -ms-grid-row: 2;
          -ms-grid-row-span: 1; } }
      #mv .mv-grid-wrap .grid-staff-img > img {
        position: absolute;
        bottom: 0;
        width: 85%;
        right: -20px; }
        @media screen and (max-width: 1199px) {
          #mv .mv-grid-wrap .grid-staff-img > img {
            width: 102%;
            right: -25px; } }
        @media screen and (max-width: 991px) {
          #mv .mv-grid-wrap .grid-staff-img > img {
            /*width: 100%;
            max-width: 250px;
            bottom: -5px;*/
            max-width: 316px;
            position: relative;
            right: -25px; } }
        @media screen and (max-width: 767px) {
          #mv .mv-grid-wrap .grid-staff-img > img {
            width: 52%;
            position: relative;
            padding-top: 20px;
            right: 25px;
            top: 0px; } }
    #mv .mv-grid-wrap .grid-reason {
      grid-area: grid-reason;
      -ms-grid-column: 1;
      -ms-grid-row: 2; }
      @media screen and (max-width: 991px) {
        #mv .mv-grid-wrap .grid-reason {
          -ms-grid-column: 1;
          -ms-grid-row: 3; } }
      #mv .mv-grid-wrap .grid-reason .mv-reason-wrap {
        display: grid;
        /*justify-content: center;*/
        justify-content: left;
        align-items: stretch;
        /*margin: 10px -5px auto -5px;*/
        margin: 85px -5px 20px -5px; }
        @media screen and (max-width: 1199px) {
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap {
            margin: 60px -5px auto -5px; } }
        @media screen and (max-width: 991px) {
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap {
            flex-direction: column;
            background-color: #FFF7EC;
            border: solid 1px #FFEBD0;
            border-radius: 8px;
            /*margin: 0 -5px auto -5px;*/
            margin: 570px -5px auto -5px;
            padding: 20px; } }
        @media screen and (max-width: 767px) {
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap {
            margin: 340px -5px auto -5px;
            padding: 10px 20px; } }
        @media screen and (max-width: 575px) {
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap {
            margin: 54vw -5px auto -5px; } }
        #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item {
          line-height: 1.6;
          flex: 1 1 300px;
          align-content: center;
          position: relative;
          /*margin: 5px;*/
          margin: 15px 10px;
          border-radius: 8px;
          text-align: left;
          font-size: 1.125rem;
          font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
          /*padding: 45px 5px 5px;*/
          padding: 0px 10px 10px 1.5em;
          background-color: #FFF7EC;
          border: solid 1px #FFEBD0;
          min-width: 17em; }
          @media screen and (max-width: 1199px) {
            #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item {
              font-size: 0.875rem;
              margin: 5px 10px;
              min-width: 17em; } }
          @media screen and (max-width: 991px) {
            #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item {
              /*text-align: left;*/
              flex: 1 1 auto;
              padding: 5px;
              border-radius: 0;
              background: none;
              border: none; } }
          @media screen and (max-width: 767px) {
            #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item {
              font-size: 1.0625rem;
              margin: 0 5px;
              text-align: left;
              padding-left: 20px; } }
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item.item02 {
            /*padding: 30px 5px 15px 5px;*/
            padding: 0px 10px 15px 1.5em;
            /*text-align: center;*/ }
            @media screen and (max-width: 991px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item.item02 {
                padding: 5px; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item.item02 {
                padding: 5px 5px 5px 20px; } }
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item > em {
            font-style: normal;
            font-weight: bold;
            font-size: 1.375rem; }
            @media screen and (max-width: 1199px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item > em {
                font-size: 1.125rem; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item > em {
                font-size: 1.1875rem; } }
          #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item:before {
            display: block;
            content: "";
            width: 12px;
            height: 12px;
            background-color: #FABE00;
            border-radius: 50%;
            /*position: absolute;*/
            position: relative;
            top: 25px;
            left: calc(-1em - 0px); }
            @media screen and (max-width: 991px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item:before {
                display: inline-block;
                position: relative;
                top: auto;
                left: auto; } }
            @media screen and (max-width: 767px) {
              #mv .mv-grid-wrap .grid-reason .mv-reason-wrap .mv-reason-item:before {
                position: absolute;
                top: 15px;
                left: 0; } }
    #mv .mv-grid-wrap .grid-plan-additional {
      grid-area: grid-plan-additional;
      -ms-grid-column: 1;
      -ms-grid-row: 3; }
      @media screen and (max-width: 991px) {
        #mv .mv-grid-wrap .grid-plan-additional {
          -ms-grid-column: 1;
          -ms-grid-row: 4; } }
      @media screen and (max-width: 767px) {
        #mv .mv-grid-wrap .grid-plan-additional {
          /*display: none;*/ } }
      #mv .mv-grid-wrap .grid-plan-additional .plan-additional .text-link {
        text-align: left !important;
        margin: 0; }
        #mv .mv-grid-wrap .grid-plan-additional .plan-additional .text-link .link {
          /*margin: 5px 5px 5px 0;*/
          margin: 0 5px 0 0;
          text-shadow: 0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff; }
          @media screen and (max-width: 1199px) {
            #mv .mv-grid-wrap .grid-plan-additional .plan-additional .text-link .link {
              margin: 0; } }

/*-----------------
bnr
------------------*/
@media screen and (max-width: 767px) {
  .bnr img {
    padding: 0 20px 5px 20px; } }

/*-----------------
reason
------------------*/
#reason h2.h2 {
  font-size: 1.875rem;
  line-height: 0.5;
  margin-bottom: 90px; }
  @media screen and (max-width: 767px) {
    #reason h2.h2 {
      font-size: 1.25rem;
      margin-bottom: 30px; } }
  #reason h2.h2 span {
    font-size: 1.5rem; }
    @media screen and (max-width: 767px) {
      #reason h2.h2 span {
        font-size: 1.25rem; } }
  #reason h2.h2 strong {
    font-size: 2.125rem; }
    @media screen and (max-width: 767px) {
      #reason h2.h2 strong {
        font-size: 1.5rem; } }
#reason .reason-item {
  display: block;
  width: calc(100% - 3px);
  padding: 40px 5px 10px 5px;
  position: relative;
  background-color: #fff;
  height: 100%;
  margin-bottom: 20px; }
  @media screen and (max-width: 991px) {
    #reason .reason-item {
      padding: 15px; } }
  #reason .reason-item p {
    text-align: left;
    padding: 0 30px;
    line-height: 170%; }
    @media screen and (max-width: 1199px) {
      #reason .reason-item p {
        padding: 0 15px; } }
  #reason .reason-item .reason-tag {
    display: block;
    width: 60px;
    height: 60px;
    background-color: #009D85;
    color: #fff;
    font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: 500;
    text-align: center;
    border-radius: 50%;
    font-size: 1.5rem;
    line-height: 1.2;
    padding-top: 10px;
    position: absolute;
    top: -20px;
    left: calc(50% - 30px); }
    #reason .reason-item .reason-tag > span {
      display: block;
      font-size: 0.875rem; }
  #reason .reason-item .reason-title {
    font-size: 1.75rem;
    color: #009D85;
    font-family: fot-tsukuardgothic-std, "Hiragino Sans", Meiryo, "sans-serif";
    font-weight: bold;
    text-align: center;
    letter-spacing: -0.1rem;
    margin: 20px 0;
    line-height: 140%; }
    @media screen and (max-width: 991px) {
      #reason .reason-item .reason-title {
        font-size: 1.375rem;
        display: block;
        margin: 35px 0 20px 0; } }
@media screen and (max-width: 991px) {
  #reason .top-reason-row > *[class^="col-"] {
    padding: 20px; } }

/*-----------------
about-group
------------------*/
#about-group .main-text {
  text-align: center; }
  @media screen and (max-width: 767px) {
    #about-group .main-text {
      text-align: left;
      padding: 0 20px; } }
#about-group .img-logo {
  width: calc(100% - 10px);
  margin: 5px;
  max-width: 130px; }
#about-group .top-slider-wrap .slide-item {
  width: 400px;
  display: block;
  overflow: hidden;
  border-right: 1px solid #fff; }
  #about-group .top-slider-wrap .slide-item img {
    width: 100%; }

/*-----------------
knowledge
------------------*/
#knowledge .knowledge-item {
  display: block;
  width: calc(100% - 30px);
  margin: 15px;
  background-color: #fff;
  padding: 30px;
  text-decoration: none; }
  #knowledge .knowledge-item .knowledge-tag {
    display: block;
    width: 100%;
    height: 20px;
    line-height: 20px;
    font-size: 0.75rem;
    background-color: #009D85;
    color: #fff; }
  #knowledge .knowledge-item img {
    width: 100%; }
  #knowledge .knowledge-item .text-wrap {
    display: block;
    padding-left: 15px; }
    #knowledge .knowledge-item .text-wrap .knowledge-title {
      font-family: source-han-sans-japanese, "Hiragino Sans", Meiryo, "sans-serif";
      font-size: 1rem;
      color: #009D85;
      font-weight: bold;
      margin-bottom: 0; }
    #knowledge .knowledge-item .text-wrap .date {
      font-size: 0.75rem;
      color: #333; }
    #knowledge .knowledge-item .text-wrap .main-text {
      font-size: 1rem;
      line-height: 1.2;
      color: #333;
      text-decoration: underline; }

.top-hurry-box a.btn-hurry:hover {
  color: #fff;
  opacity: 0.7; }
.top-hurry-box .btn-hurry {
  margin: 0 20px 10px 20px;
  font-size: 1.2rem; }
  .top-hurry-box .btn-hurry:before {
    width: 23px;
    height: 23px;
    line-height: 20px;
    font-size: 1.2rem;
    margin-right: 0.5rem; }
.top-hurry-box .top-request-box {
  background-color: #009D85;
  width: 100%;
  padding: 30px 0 16px 0; }
  @media screen and (max-width: 575px) {
    .top-hurry-box .top-request-box {
      padding: 0; } }
