@charset "UTF-8";
/* --------------- variables --------------------- */
/* Break Point */
/* Color */
/*メインカラー*/
/*アクセントカラー*/
/*テキストに使うフォントカラー*/
/*テキスト内で使うリンクカラー*/
/* Font */
@import url(https://fonts.googleapis.com/css?family=Montserrat:400i,500i&display=swap);
@import url(https://fonts.googleapis.com/css?family=Montserrat&display=swap);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif+JP:500&display=swap);
/*日本語用（メイリオ）*/
/*英語用*/
@media screen and (max-width: 1079px) {
  .top-mv {
    position: relative;
    height: 350px;
    background: url("../images/home/sp/mv.jpg") center top no-repeat;
    background-size: cover; }
  .top-mv__txt {
    position: absolute;
    z-index: 1;
    display: -webkit-box;
    display: flex;
    overflow: hidden;
    -webkit-transform: skewX(-15deg);
            transform: skewX(-15deg);
    color: #ffffff;
    background-color: #192f60;
    -webkit-box-align: center;
            align-items: center;
    bottom: -210px;
    left: -20%;
    box-sizing: border-box;
    width: 100%;
    padding: 28px 4%; }
    .top-mv__txt > div {
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg); }
    .top-mv__txt h2,
    .top-mv__txt h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .top-mv__txt h2 {
      font-size: 6.2rem;
      font-size: 4vw;
      margin-bottom: 20px; }
    .top-mv__txt p {
      font-size: 1.2vw;
      line-height: 1.4;
      margin-bottom: 40px; }
    .top-mv__txt h3 {
      font-size: 1.8vw;
      letter-spacing: 0.05em; }
    .top-mv__txt::before {
      position: absolute;
      z-index: -1;
      top: 0;
      right: -20%;
      bottom: -20%;
      left: 0;
      display: block;
      width: 140%;
      height: 100%;
      content: '';
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      background: url("../images/common/bg_dot.png");
      mix-blend-mode: color-burn; }
    .top-mv__txt div {
      margin-left: 23%; }
    .top-mv__txt h2 {
      font-size: 3.2rem; }
    .top-mv__txt p {
      font-size: 1.3rem;
      margin-bottom: 20px; }
    .top-mv__txt h3 {
      font-size: 1.9rem; }
    .top-mv__txt .logo {
      display: none; }
  .top-info {
    position: relative;
    max-width: 900px;
    margin: 200px auto 100px;
    margin: 240px auto 50px; }
    .top-info::before {
      position: absolute;
      z-index: -1;
      display: block;
      width: 884px;
      height: 252px;
      content: '';
      background: url("../images/home/top_info_bg.png") center no-repeat;
      background-size: contain; }
    .top-info h2 {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 5.8rem;
      font-weight: 500;
      font-weight: 500;
      font-style: italic;
      margin-bottom: 40px;
      letter-spacing: 0;
      color: #e5005a; }
      .top-info h2 span {
        font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 2.8rem;
        font-style: normal;
        display: block;
        color: #192f60; }
    .top-info::before {
      top: -18px;
      right: 20px;
      width: 240px;
      height: 69px; }
    .top-info h2 {
      font-size: 4rem; }
      .top-info h2 span {
        font-size: 2.1rem; }
  .top-info__wrap {
    margin-bottom: 45px;
    padding: 0 70px;
    margin-bottom: 30px;
    padding: 0 calc(4% * 2); }
  .top-info__list {
    padding: 0 4%; }
    .top-info__list li {
      display: -webkit-box;
      display: flex;
      box-sizing: border-box;
      color: #ffffff;
      -webkit-box-align: center;
              align-items: center; }
    .top-info__list li {
      font-size: 1.7rem;
      padding: 26px;
      background-color: #192f60; }
      .top-info__list li:not(:last-child) {
        margin-bottom: 13px; }
    .top-info__list img {
      display: block;
      width: 59px;
      height: auto;
      margin-right: 26px; }
    .top-info__list p br {
      display: none; }
  .top-news {
    max-width: 900px;
    margin: 0 auto 140px;
    padding: 0 calc(4% * 2); }
  .top-news__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    margin-bottom: 50px;
    text-align: center; }
  .top-news-list {
    margin-bottom: 60px; }
    .top-news-list li {
      font-size: 1.6rem; }
    .top-news-list li {
      margin-bottom: 15px;
      padding-bottom: 14px;
      border-bottom: 1px solid #192f60; }
  .top-news-list__info {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    margin-bottom: 10px; }
    .top-news-list__info span {
      font-size: 1.4rem;
      line-height: 1;
      display: inline-block;
      width: 9em;
      margin-right: 20px;
      padding: 4px 6px;
      text-align: center;
      letter-spacing: 0;
      border: 1px solid #192f60; }
    .top-news-list__info time {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.8rem;
      font-weight: 500;
      font-style: italic;
      color: #e5005a; }
  .top-news__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000; }
    .top-news__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .top-news__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .top-news__btn a:hover::before {
        opacity: 0.7; }
  .top-section {
    margin-bottom: 100px; }
    .top-section section {
      position: relative; }
      .top-section section:not(:last-child) {
        margin-bottom: 80px; }
  .top-section-img {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-bottom: 30px; }
    .top-section-img img {
      width: 50%;
      height: auto;
      -webkit-clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
              clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%); }
    section:nth-of-type(even) .top-section-img {
      text-align: right; }
      section:nth-of-type(even) .top-section-img img {
        -webkit-clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%);
                clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%); }
    .top-section-img img {
      width: 85%; }
    .top-section-img span {
      position: absolute;
      z-index: -1;
      right: -10%;
      bottom: -30px;
      display: block;
      overflow: hidden;
      width: 85%;
      height: 100%;
      -webkit-transform: skewX(-15deg);
              transform: skewX(-15deg);
      background-color: #192f60; }
      section:nth-of-type(even) .top-section-img span {
        right: inherit;
        left: -10%; }
      .top-section-img span::before {
        position: absolute;
        top: 0;
        right: -5%;
        bottom: 0;
        left: -5%;
        display: block;
        width: 110%;
        height: 100%;
        content: '';
        -webkit-transform: skewX(15deg);
                transform: skewX(15deg);
        background: url("../images/common/bg_dot.png");
        mix-blend-mode: color-burn; }
  .top-section-num {
    position: relative;
    z-index: 5;
    display: -webkit-box;
    display: flex;
    margin: -15px auto 20px;
    -webkit-box-pack: justify;
            justify-content: space-between; }
    section:nth-of-type(even) .top-section-num span::before {
      right: inherit;
      left: 0; }
    .top-section-num span {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 9rem;
      font-weight: 400;
      font-style: italic;
      position: relative;
      display: table;
      color: #e5005a; }
      .top-section-num span::before {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 157px;
        height: 5px;
        content: '';
        background: url("../images/common/strip_line.png") repeat-x; }
    .top-section-num img {
      display: block;
      width: auto;
      height: 75px; }
    section:nth-of-type(even) .top-section-num {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
              flex-direction: row-reverse; }
    .top-section-num span {
      font-size: 5.6rem;
      margin-top: -40px;
      padding-left: 40px; }
    .top-section-num img {
      height: 41px;
      margin: 0 4%; }
  .top-section-box {
    z-index: -1;
    overflow: hidden;
    box-sizing: border-box;
    margin: auto;
    width: 100%; }
    .top-section-box h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.3vw;
      line-height: 1.2;
      margin-bottom: 30px; }
      .top-section-box h3 span {
        font-size: 3.3rem;
        display: block; }
    .top-section-box p {
      margin-bottom: 20px; }
    .top-section-box h3 {
      font-size: 3.2rem;
      margin-bottom: 15px; }
      .top-section-box h3 span {
        font-size: 2.4rem; }
  .top-section-box__wrap {
    padding: 0 4%; }
  .top-section-box__btn {
    text-align: right;
    text-align: center; }
    .top-section-box__btn a {
      position: relative;
      display: inline-block;
      padding: 13px 68px;
      -webkit-transform: skewX(-15deg);
              transform: skewX(-15deg);
      color: #ffffff;
      background: #e5005a url("../images/common/arrow.png") no-repeat;
      background-position: right 16px center; }
      .top-section-box__btn a::before {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 7px;
        content: '';
        background-color: #f280ad; }
      .top-section-box__btn a:hover {
        background-position: right 10px center; }
        .top-section-box__btn a:hover::before {
          background-color: #ffffff; }
      .top-section-box__btn a span {
        display: inline-block;
        -webkit-transform: skewX(15deg);
                transform: skewX(15deg); }
  .flow {
    padding: 100px 40px;
    padding: 50px 0 0; }
  .flow__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    margin-bottom: 20px;
    text-align: center;
    color: #ffffff;
    font-size: 3.2rem; }
    .flow__tit + p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.2rem;
      margin-bottom: 75px;
      text-align: center;
      color: #ffffff; }
    .flow__tit + p {
      font-size: 1.8rem; }
  .flow-step {
    max-width: 1150px;
    margin: 0 auto 60px;
    color: #ffffff;
    margin: 0 4% 30px; }
  .flow-step__box {
    position: relative;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; }
    .flow-step__box::before {
      line-height: 1;
      position: absolute;
      overflow: hidden;
      box-sizing: border-box;
      width: 85%;
      height: 1em; }
    .flow-step__box:not(:last-child)::before {
      content: '・・・・・・・・・・・・・・・・・・・・・・・・'; }
    .flow-step__box::before {
      font-size: 1rem;
      top: 100%;
      left: 18%;
      width: 1em;
      height: 35px;
      letter-spacing: -0.2em;
      letter-spacing: 1;
      -webkit-writing-mode: vertical-lr;
          -ms-writing-mode: tb-lr;
              writing-mode: vertical-lr; }
    .flow-step__box:not(:last-child) {
      margin-bottom: 45px; }
  .flow-step__img {
    display: -webkit-box;
    display: flex;
    width: 38%;
    flex-flow: wrap; }
    .flow-step__img h3 {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 2.6rem;
      font-weight: 400;
      font-style: italic;
      display: -webkit-box;
      display: flex;
      box-sizing: border-box;
      width: 77px;
      height: 77px;
      margin: 0 auto 20px;
      text-align: center;
      border: 1px solid #ffffff;
      border-radius: 50%;
      flex-flow: wrap;
      -webkit-box-pack: center;
              justify-content: center;
      align-content: center; }
      .flow-step__img h3 span {
        font-size: 1.2rem;
        display: block;
        width: 100%; }
    .flow-step__img img {
      display: block;
      height: auto;
      margin: 0 auto 6px; }
    .flow-step__img p {
      font-size: 1.8rem;
      text-align: center; }
      .flow-step__img p span {
        font-size: 1.2rem;
        display: block; }
    .flow-step__img h3 {
      font-size: 1.5rem;
      line-height: 1;
      width: 45px;
      height: 45px;
      border: 2px solid #ffffff; }
      .flow-step__img h3 span {
        font-size: 1.4rem;
        -webkit-transform: scale(0.5);
                transform: scale(0.5); }
    .flow-step__img img {
      width: auto;
      max-height: 50px; }
    .flow-step__img p {
      width: 100%; }
  .flow-step__txt {
    width: 60%; }
    .flow-step__txt p {
      font-size: 1.6rem; }
  .flow-quick {
    position: relative;
    box-sizing: border-box;
    max-width: 1150px;
    margin: auto;
    padding: 65px 75px;
    background-color: #e9eef4;
    padding: 37px 4%; }
    .flow-quick::before, .flow-quick::after {
      position: absolute;
      right: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
    .flow-quick::before {
      top: 0; }
    .flow-quick::after {
      bottom: 0; }
    .flow-quick > img {
      display: block;
      width: 100%;
      height: auto;
      margin-bottom: 30px; }
    .flow-quick > p {
      max-width: 680px;
      margin: 0 auto 30px; }
  .flow-quick__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-bottom: 50px;
    text-align: center; }
    .flow-quick__tit > span {
      font-size: 2.6rem;
      position: relative;
      z-index: 2;
      display: inline-block;
      padding: 0 10px;
      color: #e5005a;
      background-color: #e9eef4; }
    .flow-quick__tit h2 {
      font-size: 2vw;
      position: relative;
      margin-top: -20px;
      padding: 25px 0; }
      .flow-quick__tit h2::before, .flow-quick__tit h2::after {
        position: absolute;
        right: 0;
        left: 0;
        width: 100%;
        height: 4px;
        content: '';
        border-top: 1px solid #192f60;
        border-bottom: 1px solid #192f60; }
      .flow-quick__tit h2::before {
        top: 0; }
      .flow-quick__tit h2::after {
        bottom: 0; }
      .flow-quick__tit h2 span {
        font-size: 2.2rem; }
    .flow-quick__tit > span {
      font-size: 1.8rem; }
    .flow-quick__tit h2 {
      font-size: 2.4rem;
      margin-top: -15px; }
      .flow-quick__tit h2 span {
        font-size: 1.3rem;
        display: block; }
  .flow-quick__btn {
    text-align: center; }
  .marketing {
    overflow: hidden;
    box-sizing: border-box;
    margin: 150px 40px;
    margin: 60px 4%; }
  .marketing__wrap {
    overflow: hidden;
    box-sizing: border-box;
    max-width: 1366px;
    margin: auto;
    padding: 7.75%;
    border: 1px solid #192f60;
    padding: 30px 4% 0; }
  .marketing__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    position: relative;
    z-index: 1;
    margin-bottom: 80px;
    text-align: center;
    font-size: 2.6rem;
    margin-bottom: 30px; }
    .marketing__tit::before, .marketing__tit::after {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      content: ''; }
    .marketing__tit::before {
      z-index: -2;
      width: 100%;
      height: 3px;
      border-top: 1px solid #192f60;
      border-bottom: 1px solid #192f60; }
    .marketing__tit::after {
      z-index: -1;
      width: 14em;
      height: 1em;
      background-color: #ffffff; }
    .marketing__tit::after {
      width: 8em; }
  .marketing-list ul {
    margin-bottom: 60px; }
  .marketing-list li:not(:last-child) {
    margin-bottom: 40px; }
  .marketing-list a {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; }
    .marketing-list a:hover {
      text-decoration: none; }
  .marketing-list__img {
    width: 36%; }
    .marketing-list__img img {
      display: block;
      width: 100%;
      height: auto; }
  .marketing-list__txt {
    width: 60%; }
    .marketing-list__txt span {
      font-size: 1.4rem;
      line-height: 1;
      display: inline-block;
      box-sizing: border-box;
      min-width: 9em;
      margin-bottom: 10px;
      padding: 6px;
      text-align: center;
      border: 1px solid #192f60; }
      a:hover .marketing-list__txt span {
        border-color: #e5005a; }
    .marketing-list__txt p {
      font-size: 1.6rem; }
      a:hover .marketing-list__txt p {
        text-decoration: underline; }
    .marketing-list__txt span {
      font-size: 1.2rem; }
    .marketing-list__txt p {
      font-size: 1.4rem; }
  .marketing-list__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000;
    width: 100%;
    margin-bottom: 40px; }
    .marketing-list__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .marketing-list__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .marketing-list__btn a:hover::before {
        opacity: 0.7; }
    .marketing-list__btn a {
      width: 100%; }
  .marketing-new {
    box-sizing: border-box; }
    .marketing-new > p {
      font-size: 2rem;
      line-height: 1.4;
      text-align: center; }
      .marketing-new > p span {
        font-size: 1.5rem;
        display: block; }
    .marketing-new > p {
      font-size: 1.9rem;
      margin-bottom: 20px; }
      .marketing-new > p span {
        font-size: 1.3rem; }
  .marketing-new__tit {
    font-size: 2rem;
    line-height: 34px;
    position: relative;
    display: table;
    box-sizing: border-box;
    margin: -17px auto 32px;
    padding: 0 30px;
    text-align: center;
    color: #ffffff;
    background-color: #e5005a;
    margin: 0 auto 30px; }
    .marketing-new__tit::before, .marketing-new__tit::after {
      position: absolute;
      z-index: 1;
      width: 0px;
      height: 0px;
      content: ''; }
    .marketing-new__tit::before {
      top: 0;
      left: 0;
      border-width: 17px 0px 17px 12px;
      border-style: solid;
      border-color: transparent transparent transparent #ffffff; }
    .marketing-new__tit::after {
      top: 0;
      right: 0;
      border-width: 17px 12px 17px 0px;
      border-style: solid;
      border-color: transparent #ffffff transparent transparent; }
  .marketing-new__img {
    margin-bottom: 35px;
    margin-bottom: 20px; }
    .marketing-new__img img {
      display: block;
      margin: auto; }
  .marketing-new__btn {
    max-width: 345px;
    margin: 0 auto 35px; }
    .marketing-new__btn img {
      display: block;
      width: 100%;
      height: auto; }
    .marketing-new__btn:hover {
      opacity: .7; }
  #footer {
    min-width: 100px; }
  .founder {
    position: relative;
    height: 360px;
    background: url("../images/common/founder.jpg") center no-repeat;
    background-size: cover;
    height: auto;
    padding: 0 0 25px;
    background: #f0fafd url("../images/common/sp/founder.jpg") center top no-repeat;
    background-size: contain; }
  .founder__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    position: relative;
    position: absolute;
    letter-spacing: 0;
    color: #ffffff;
    font-size: 2.6rem;
    top: 8%;
    left: 50%;
    margin-bottom: 30px;
    color: #192f60; }
    .founder__tit::before {
      position: absolute;
      bottom: -20px;
      left: 0;
      display: block;
      width: 2.6em;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
    .founder__tit::before {
      bottom: -5px;
      height: 2.5px; }
  .founder__name {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    position: absolute;
    top: 22%;
    left: 52%; }
    .founder__name > span {
      font-size: 1.4rem;
      display: block;
      margin-bottom: 4px; }
    .founder__name p {
      font-size: 2.8rem;
      line-height: 1; }
      .founder__name p span {
        font-family: "Montserrat", "sans-serif", "meiryo";
        font-size: 1.6rem;
        font-weight: 500;
        font-style: italic;
        letter-spacing: 0;
        color: #e5005a; }
    .founder__name > span {
      font-size: 1.1rem; }
    .founder__name p {
      font-size: 2.2rem; }
      .founder__name p span {
        font-size: 1.2rem;
        display: block;
        margin-top: 8px; }
  .founder__txt {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2.2rem;
    font-size: 1.7rem;
    line-height: 1.6;
    margin-bottom: 6%;
    padding: 58% calc(4% * 2) 0; }
    .founder__txt br {
      display: none; }
  .founder__btn {
    padding: 0 calc(4% * 2);
    text-align: right; }
  .footer-contact {
    position: relative;
    padding: 110px 0 135px;
    text-align: center;
    color: #ffffff;
    background-color: #192f60;
    padding: 50px 0 68px; }
    .footer-contact::before {
      position: absolute;
      right: 0;
      bottom: 20px;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-y; }
    .footer-contact p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.8rem;
      margin-bottom: 30px; }
    .footer-contact::before {
      height: 7px; }
  .footer-info__box {
    font-size: 1.4rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .footer-address {
    padding: 20px 4% 0; }
    .footer-address img {
      display: block;
      width: 200px;
      height: auto;
      margin-right: 60px; }
    .footer-address p {
      font-size: 1.4rem; }
    .footer-address img {
      width: 145px;
      margin-bottom: 20px; }
  .footer-nav {
    background-color: #192f60; }
    .footer-nav ul {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center; }
    .footer-nav li a {
      font-size: 1.6rem; }
    .footer-nav ul {
      padding: 5px 4%;
      -webkit-box-pack: center;
              justify-content: center; }
    .footer-nav li {
      position: relative; }
      .footer-nav li:not(:first-child) {
        margin-left: 10px;
        padding-left: 9px; }
        .footer-nav li:not(:first-child)::before {
          position: absolute;
          top: 0;
          bottom: -4px;
          left: 0;
          display: block;
          width: 1px;
          height: 50%;
          margin: auto;
          content: '';
          background-color: #ffffff; }
      .footer-nav li a {
        font-size: 1.4rem;
        color: #ffffff; }
  .footer-nav__contact {
    padding: 0 4% 20px;
    background-color: #ffffff; }
    .footer-nav__contact a {
      position: relative;
      padding-left: 22px; }
      .footer-nav__contact a::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        display: inline-block;
        width: 16px;
        height: 16px;
        margin: auto;
        content: '';
        background: url("../images/common/icon_mail_blue.png") no-repeat;
        background-size: contain; }
    .footer-nav__contact a {
      font-size: 1.4rem; }
      .footer-nav__contact a::before {
        width: 16px;
        height: 16px; }
  #copyright {
    padding: 12px 60px;
    text-align: right;
    background-color: #192f60;
    padding: 0 0 5px;
    text-align: center; }
    #copyright small {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.2rem;
      font-weight: 500;
      font-weight: 400;
      color: #ffffff; }
    #copyright small {
      font-size: 1rem; }
  #header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999; } }

@media screen and (min-width: 1079px) {
  .top-mv {
    position: relative; }
  .top-mv__txt {
    position: absolute;
    z-index: 1;
    display: -webkit-box;
    display: flex;
    overflow: hidden;
    -webkit-transform: skewX(-15deg);
            transform: skewX(-15deg);
    color: #ffffff;
    background-color: #192f60;
    -webkit-box-align: center;
            align-items: center; }
    .top-mv__txt h2,
    .top-mv__txt h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .top-mv__txt h2 {
      font-size: 6.2rem;
      font-size: 4vw;
      margin-bottom: 20px; }
    .top-mv__txt p {
      font-size: 1.2vw;
      line-height: 1.4;
      margin-bottom: 40px; }
    .top-mv__txt h3 {
      font-size: 1.8vw;
      letter-spacing: 0.05em; }
    .top-mv__txt::before {
      position: absolute;
      z-index: -1;
      top: 0;
      right: -20%;
      bottom: -20%;
      left: 0;
      display: block;
      width: 140%;
      height: 100%;
      content: '';
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      background: url("../images/common/bg_dot.png");
      mix-blend-mode: color-burn; }
  .top-info {
    position: relative;
    max-width: 900px;
    margin: 200px auto 100px; }
    .top-info::before {
      position: absolute;
      z-index: -1;
      display: block;
      width: 884px;
      height: 252px;
      content: '';
      background: url("../images/home/top_info_bg.png") center no-repeat;
      background-size: contain; }
    .top-info h2 {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 5.8rem;
      font-weight: 500;
      font-weight: 500;
      font-style: italic;
      margin-bottom: 40px;
      letter-spacing: 0;
      color: #e5005a; }
      .top-info h2 span {
        font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 2.8rem;
        font-style: normal;
        display: block;
        color: #192f60; }
  .top-info__wrap {
    margin-bottom: 45px;
    padding: 0 70px; }
  .top-info__list li {
    display: -webkit-box;
    display: flex;
    box-sizing: border-box;
    color: #ffffff;
    -webkit-box-align: center;
            align-items: center; }
  .top-news {
    max-width: 900px;
    margin: 0 auto 140px; }
  .top-news__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    margin-bottom: 50px;
    text-align: center; }
  .top-news-list {
    margin-bottom: 60px; }
    .top-news-list li {
      font-size: 1.6rem; }
  .top-news-list__info {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
    .top-news-list__info span {
      font-size: 1.4rem;
      line-height: 1;
      display: inline-block;
      width: 9em;
      margin-right: 20px;
      padding: 4px 6px;
      text-align: center;
      letter-spacing: 0;
      border: 1px solid #192f60; }
    .top-news-list__info time {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.8rem;
      font-weight: 500;
      font-style: italic;
      color: #e5005a; }
  .top-news__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000; }
    .top-news__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .top-news__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .top-news__btn a:hover::before {
        opacity: 0.7; }
  .top-section {
    margin-bottom: 100px; }
    .top-section section {
      position: relative; }
      .top-section section:not(:last-child) {
        margin-bottom: 80px; }
  .top-section-img {
    position: relative;
    z-index: 2;
    width: 100%; }
    .top-section-img img {
      width: 50%;
      height: auto;
      -webkit-clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
              clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%); }
    section:nth-of-type(even) .top-section-img {
      text-align: right; }
      section:nth-of-type(even) .top-section-img img {
        -webkit-clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%);
                clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%); }
  .top-section-num {
    position: relative;
    z-index: 5; }
    section:nth-of-type(even) .top-section-num span::before {
      right: inherit;
      left: 0; }
    .top-section-num span {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 9rem;
      font-weight: 400;
      font-style: italic;
      position: relative;
      display: table;
      color: #e5005a; }
      .top-section-num span::before {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 157px;
        height: 5px;
        content: '';
        background: url("../images/common/strip_line.png") repeat-x; }
    .top-section-num img {
      display: block;
      width: auto;
      height: 75px; }
  .top-section-box {
    z-index: -1;
    overflow: hidden;
    box-sizing: border-box;
    margin: auto; }
    .top-section-box h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.3vw;
      line-height: 1.2;
      margin-bottom: 30px; }
      .top-section-box h3 span {
        font-size: 3.3rem;
        display: block; }
    .top-section-box p {
      margin-bottom: 20px; }
  .top-section-box__btn {
    text-align: right; }
    .top-section-box__btn a {
      position: relative;
      display: inline-block;
      padding: 13px 68px;
      -webkit-transform: skewX(-15deg);
              transform: skewX(-15deg);
      color: #ffffff;
      background: #e5005a url("../images/common/arrow.png") no-repeat;
      background-position: right 16px center; }
      .top-section-box__btn a::before {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 7px;
        content: '';
        background-color: #f280ad; }
      .top-section-box__btn a:hover {
        background-position: right 10px center; }
        .top-section-box__btn a:hover::before {
          background-color: #ffffff; }
      .top-section-box__btn a span {
        display: inline-block;
        -webkit-transform: skewX(15deg);
                transform: skewX(15deg); }
  .flow {
    padding: 100px 40px; }
  .flow__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    margin-bottom: 20px;
    text-align: center;
    color: #ffffff; }
    .flow__tit + p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.2rem;
      margin-bottom: 75px;
      text-align: center;
      color: #ffffff; }
  .flow-step {
    max-width: 1150px;
    margin: 0 auto 60px;
    color: #ffffff; }
  .flow-step__box {
    position: relative; }
    .flow-step__box::before {
      line-height: 1;
      position: absolute;
      overflow: hidden;
      box-sizing: border-box;
      width: 85%;
      height: 1em; }
    .flow-step__box:not(:last-child)::before {
      content: '・・・・・・・・・・・・・・・・・・・・・・・・'; }
  .flow-step__img h3 {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 2.6rem;
    font-weight: 400;
    font-style: italic;
    display: -webkit-box;
    display: flex;
    box-sizing: border-box;
    width: 77px;
    height: 77px;
    margin: 0 auto 20px;
    text-align: center;
    border: 1px solid #ffffff;
    border-radius: 50%;
    flex-flow: wrap;
    -webkit-box-pack: center;
            justify-content: center;
    align-content: center; }
    .flow-step__img h3 span {
      font-size: 1.2rem;
      display: block;
      width: 100%; }
  .flow-step__img img {
    display: block;
    height: auto;
    margin: 0 auto 6px; }
  .flow-step__img p {
    font-size: 1.8rem;
    text-align: center; }
    .flow-step__img p span {
      font-size: 1.2rem;
      display: block; }
  .flow-step__txt p {
    font-size: 1.6rem; }
  .flow-quick {
    position: relative;
    box-sizing: border-box;
    max-width: 1150px;
    margin: auto;
    padding: 65px 75px;
    background-color: #e9eef4; }
    .flow-quick::before, .flow-quick::after {
      position: absolute;
      right: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
    .flow-quick::before {
      top: 0; }
    .flow-quick::after {
      bottom: 0; }
    .flow-quick > img {
      display: block;
      width: 100%;
      height: auto;
      margin-bottom: 30px; }
    .flow-quick > p {
      max-width: 680px;
      margin: 0 auto 30px; }
  .flow-quick__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-bottom: 50px;
    text-align: center; }
    .flow-quick__tit > span {
      font-size: 2.6rem;
      position: relative;
      z-index: 2;
      display: inline-block;
      padding: 0 10px;
      color: #e5005a;
      background-color: #e9eef4; }
    .flow-quick__tit h2 {
      font-size: 2vw;
      position: relative;
      margin-top: -20px;
      padding: 25px 0; }
      .flow-quick__tit h2::before, .flow-quick__tit h2::after {
        position: absolute;
        right: 0;
        left: 0;
        width: 100%;
        height: 4px;
        content: '';
        border-top: 1px solid #192f60;
        border-bottom: 1px solid #192f60; }
      .flow-quick__tit h2::before {
        top: 0; }
      .flow-quick__tit h2::after {
        bottom: 0; }
      .flow-quick__tit h2 span {
        font-size: 2.2rem; }
  .flow-quick__btn {
    text-align: center; }
  .marketing {
    overflow: hidden;
    box-sizing: border-box;
    margin: 150px 40px; }
  .marketing__wrap {
    overflow: hidden;
    box-sizing: border-box;
    max-width: 1366px;
    margin: auto;
    padding: 7.75%;
    border: 1px solid #192f60; }
  .marketing__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    position: relative;
    z-index: 1;
    margin-bottom: 80px;
    text-align: center; }
    .marketing__tit::before, .marketing__tit::after {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      content: ''; }
    .marketing__tit::before {
      z-index: -2;
      width: 100%;
      height: 3px;
      border-top: 1px solid #192f60;
      border-bottom: 1px solid #192f60; }
    .marketing__tit::after {
      z-index: -1;
      width: 14em;
      height: 1em;
      background-color: #ffffff; }
  .marketing-list ul {
    margin-bottom: 60px; }
  .marketing-list li:not(:last-child) {
    margin-bottom: 40px; }
  .marketing-list a {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; }
    .marketing-list a:hover {
      text-decoration: none; }
  .marketing-list__img img {
    display: block;
    width: 100%;
    height: auto; }
  .marketing-list__txt span {
    font-size: 1.4rem;
    line-height: 1;
    display: inline-block;
    box-sizing: border-box;
    min-width: 9em;
    margin-bottom: 10px;
    padding: 6px;
    text-align: center;
    border: 1px solid #192f60; }
    a:hover .marketing-list__txt span {
      border-color: #e5005a; }
  .marketing-list__txt p {
    font-size: 1.6rem; }
    a:hover .marketing-list__txt p {
      text-decoration: underline; }
  .marketing-list__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000; }
    .marketing-list__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .marketing-list__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .marketing-list__btn a:hover::before {
        opacity: 0.7; }
  .marketing-new {
    box-sizing: border-box; }
    .marketing-new > p {
      font-size: 2rem;
      line-height: 1.4;
      text-align: center; }
      .marketing-new > p span {
        font-size: 1.5rem;
        display: block; }
  .marketing-new__tit {
    font-size: 2rem;
    line-height: 34px;
    position: relative;
    display: table;
    box-sizing: border-box;
    margin: -17px auto 32px;
    padding: 0 30px;
    text-align: center;
    color: #ffffff;
    background-color: #e5005a; }
    .marketing-new__tit::before, .marketing-new__tit::after {
      position: absolute;
      z-index: 1;
      width: 0px;
      height: 0px;
      content: ''; }
    .marketing-new__tit::before {
      top: 0;
      left: 0;
      border-width: 17px 0px 17px 12px;
      border-style: solid;
      border-color: transparent transparent transparent #ffffff; }
    .marketing-new__tit::after {
      top: 0;
      right: 0;
      border-width: 17px 12px 17px 0px;
      border-style: solid;
      border-color: transparent #ffffff transparent transparent; }
  .marketing-new__img {
    margin-bottom: 35px; }
    .marketing-new__img img {
      display: block;
      margin: auto; }
  .marketing-new__btn {
    max-width: 345px;
    margin: 0 auto 35px; }
    .marketing-new__btn img {
      display: block;
      width: 100%;
      height: auto; }
    .marketing-new__btn:hover {
      opacity: .7; }
  #footer {
    min-width: 100px; }
  .founder {
    position: relative;
    height: 360px;
    background: url("../images/common/founder.jpg") center no-repeat;
    background-size: cover; }
  .founder__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    position: relative;
    position: absolute;
    letter-spacing: 0;
    color: #ffffff; }
    .founder__tit::before {
      position: absolute;
      bottom: -20px;
      left: 0;
      display: block;
      width: 2.6em;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
  .founder__name {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .founder__name > span {
      font-size: 1.4rem;
      display: block;
      margin-bottom: 4px; }
    .founder__name p {
      font-size: 2.8rem;
      line-height: 1; }
      .founder__name p span {
        font-family: "Montserrat", "sans-serif", "meiryo";
        font-size: 1.6rem;
        font-weight: 500;
        font-style: italic;
        letter-spacing: 0;
        color: #e5005a; }
  .founder__txt {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2.2rem; }
  .footer-contact {
    position: relative;
    padding: 110px 0 135px;
    text-align: center;
    color: #ffffff;
    background-color: #192f60; }
    .footer-contact::before {
      position: absolute;
      right: 0;
      bottom: 20px;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-y; }
    .footer-contact p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.8rem;
      margin-bottom: 30px; }
  .footer-info__box {
    font-size: 1.4rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .footer-address img {
    display: block;
    width: 200px;
    height: auto;
    margin-right: 60px; }
  .footer-address p {
    font-size: 1.4rem; }
  .footer-nav ul {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .footer-nav li a {
    font-size: 1.6rem; }
  .footer-nav__contact a {
    position: relative;
    padding-left: 22px; }
    .footer-nav__contact a::before {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      display: inline-block;
      width: 16px;
      height: 16px;
      margin: auto;
      content: '';
      background: url("../images/common/icon_mail_blue.png") no-repeat;
      background-size: contain; }
  #copyright {
    padding: 12px 60px;
    text-align: right;
    background-color: #192f60; }
    #copyright small {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.2rem;
      font-weight: 500;
      font-weight: 400;
      color: #ffffff; }
  #header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999; } }

@media print, screen and (min-width: 1080px) {
  .top-mv {
    position: relative;
    min-height: 790px;
    margin: 0 45px 45px;
    background: url("../images/home/mv.jpg") right top 45px no-repeat; }
  .top-mv__txt {
    position: absolute;
    z-index: 1;
    display: -webkit-box;
    display: flex;
    overflow: hidden;
    -webkit-transform: skewX(-15deg);
            transform: skewX(-15deg);
    color: #ffffff;
    background-color: #192f60;
    -webkit-box-align: center;
            align-items: center;
    top: -45px;
    left: calc(-11% + -48px);
    width: 58%;
    height: calc(100% + 120px);
    padding-left: 10%;
    -webkit-box-pack: center;
            justify-content: center; }
    .top-mv__txt h2,
    .top-mv__txt h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .top-mv__txt h2 {
      font-size: 6.2rem;
      font-size: 4vw;
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      margin-bottom: 20px; }
    .top-mv__txt p {
      font-size: 1.2vw;
      line-height: 1.4;
      margin-bottom: 40px;
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      margin-left: 53px; }
    .top-mv__txt h3 {
      font-size: 1.8vw;
      letter-spacing: 0.05em;
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      margin-left: 73px; }
    .top-mv__txt::before {
      position: absolute;
      z-index: -1;
      top: 0;
      right: -20%;
      bottom: -20%;
      left: 0;
      display: block;
      width: 140%;
      height: 100%;
      content: '';
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      background: url("../images/common/bg_dot.png");
      mix-blend-mode: color-burn; }
    .top-mv__txt .logo {
      width: 16vw;
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      margin-left: -25px; }
  .top-info {
    position: relative;
    max-width: 900px;
    margin: 200px auto 100px; }
    .top-info::before {
      position: absolute;
      z-index: -1;
      display: block;
      width: 884px;
      height: 252px;
      content: '';
      background: url("../images/home/top_info_bg.png") center no-repeat;
      background-size: contain; }
    .top-info h2 {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 5.8rem;
      font-weight: 500;
      font-weight: 500;
      font-style: italic;
      margin-bottom: 40px;
      letter-spacing: 0;
      color: #e5005a; }
      .top-info h2 span {
        font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        font-size: 2.8rem;
        font-style: normal;
        display: block;
        color: #192f60; }
    .top-info::before {
      top: -120px;
      left: 200px; }
    .top-info h2 span br {
      display: none; }
  .top-info__wrap {
    margin-bottom: 45px;
    padding: 0 70px; }
  .top-info__list {
    display: -webkit-box;
    display: flex;
    flex-flow: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between; }
    .top-info__list li {
      display: -webkit-box;
      display: flex;
      box-sizing: border-box;
      color: #ffffff;
      -webkit-box-align: center;
              align-items: center; }
    .top-info__list li {
      position: relative;
      z-index: 1;
      overflow: hidden;
      width: 49.5%;
      padding: 15px;
      -webkit-transform: skewX(-15deg);
              transform: skewX(-15deg);
      background-color: #192f60; }
      .top-info__list li::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: -5%;
        bottom: 0;
        left: -5%;
        display: block;
        width: 110%;
        margin: auto;
        content: '';
        -webkit-transform: skewX(15deg);
                transform: skewX(15deg);
        background: url("../images/common/bg_dot.png");
        mix-blend-mode: color-burn; }
    .top-info__list div,
    .top-info__list p {
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      font-size: 17px; }
    .top-info__list img {
      width: 52px;
      height: auto;
      margin-right: 15px; }
  .top-news {
    max-width: 900px;
    margin: 0 auto 140px; }
  .top-news__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    margin-bottom: 50px;
    text-align: center; }
  .top-news-list {
    margin-bottom: 60px; }
    .top-news-list li {
      font-size: 1.6rem; }
    .top-news-list li {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: baseline;
              align-items: baseline; }
      .top-news-list li:not(:last-child) {
        margin-bottom: 35px; }
  .top-news-list__info {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    position: relative;
    width: 305px; }
    .top-news-list__info span {
      font-size: 1.4rem;
      line-height: 1;
      display: inline-block;
      width: 9em;
      margin-right: 20px;
      padding: 4px 6px;
      text-align: center;
      letter-spacing: 0;
      border: 1px solid #192f60; }
    .top-news-list__info time {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.8rem;
      font-weight: 500;
      font-style: italic;
      color: #e5005a; }
    .top-news-list__info::after {
      position: absolute;
      top: 0;
      right: 25px;
      bottom: 0;
      display: block;
      width: 13px;
      height: 1px;
      margin: auto;
      content: '';
      background-color: #e5005a; }
  .top-news-list__txt {
    width: calc(100% - 305px); }
  .top-news__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000; }
    .top-news__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .top-news__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .top-news__btn a:hover::before {
        opacity: 0.7; }
  .top-section {
    margin-bottom: 100px; }
    .top-section section {
      position: relative; }
      .top-section section:not(:last-child) {
        margin-bottom: 80px; }
  .top-section-img {
    position: relative;
    z-index: 2;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    .top-section-img img {
      width: 50%;
      height: auto;
      -webkit-clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%);
              clip-path: polygon(0 0, 100% 0%, 85% 100%, 0% 100%); }
    section:nth-of-type(even) .top-section-img {
      text-align: right; }
      section:nth-of-type(even) .top-section-img img {
        -webkit-clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%);
                clip-path: polygon(15% 0, 100% 0%, 100% 100%, 0% 100%); }
    section:nth-of-type(even) .top-section-img {
      right: 0;
      left: inherit; }
  .top-section-wrap {
    width: 70%;
    max-width: 1200px;
    margin: 0 0 0 20%; }
    section:nth-of-type(even) .top-section-wrap {
      margin: 0 0 0 12%; }
  .top-section-num {
    position: relative;
    z-index: 5;
    margin: 0 0 -50px 50%; }
    section:nth-of-type(even) .top-section-num span::before {
      right: inherit;
      left: 0; }
    .top-section-num span {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 9rem;
      font-weight: 400;
      font-style: italic;
      position: relative;
      display: table;
      color: #e5005a; }
      .top-section-num span::before {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 157px;
        height: 5px;
        content: '';
        background: url("../images/common/strip_line.png") repeat-x; }
    .top-section-num img {
      display: block;
      width: auto;
      height: 75px; }
    section:nth-of-type(even) .top-section-num {
      margin: 0 0 -50px 9%; }
      section:nth-of-type(even) .top-section-num span {
        margin-left: 55%; }
  .top-section-box {
    z-index: -1;
    overflow: hidden;
    box-sizing: border-box;
    margin: auto;
    padding: 70px 10% 40px 45%;
    -webkit-transform: skewX(-15deg);
            transform: skewX(-15deg);
    color: #ffffff;
    background-color: #192f60; }
    .top-section-box h3 {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.3vw;
      line-height: 1.2;
      margin-bottom: 30px; }
      .top-section-box h3 span {
        font-size: 3.3rem;
        display: block; }
    .top-section-box p {
      margin-bottom: 20px; }
    section:nth-of-type(even) .top-section-box {
      padding: 70px 45% 40px 10%; }
    .top-section-box::before {
      position: absolute;
      top: 0;
      right: -5%;
      bottom: 0;
      left: -5%;
      display: block;
      width: 110%;
      height: 100%;
      content: '';
      -webkit-transform: skewX(15deg);
              transform: skewX(15deg);
      background: url("../images/common/bg_dot.png");
      mix-blend-mode: color-burn; }
  .top-section-box__wrap {
    -webkit-transform: skewX(15deg);
            transform: skewX(15deg); }
  .top-section-box__btn {
    text-align: right; }
    .top-section-box__btn a {
      position: relative;
      display: inline-block;
      padding: 13px 68px;
      -webkit-transform: skewX(-15deg);
              transform: skewX(-15deg);
      color: #ffffff;
      background: #e5005a url("../images/common/arrow.png") no-repeat;
      background-position: right 16px center; }
      .top-section-box__btn a::before {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 7px;
        content: '';
        background-color: #f280ad; }
      .top-section-box__btn a:hover {
        background-position: right 10px center; }
        .top-section-box__btn a:hover::before {
          background-color: #ffffff; }
      .top-section-box__btn a span {
        display: inline-block;
        -webkit-transform: skewX(15deg);
                transform: skewX(15deg); }
  .flow {
    padding: 100px 40px; }
  .flow__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    margin-bottom: 20px;
    text-align: center;
    color: #ffffff; }
    .flow__tit + p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.2rem;
      margin-bottom: 75px;
      text-align: center;
      color: #ffffff; }
    .flow__tit + p br {
      display: none; }
  .flow-step {
    max-width: 1150px;
    margin: 0 auto 60px;
    color: #ffffff;
    display: -webkit-box;
    display: flex;
    flex-flow: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between; }
  .flow-step__box {
    position: relative;
    width: 20%; }
    .flow-step__box::before {
      line-height: 1;
      position: absolute;
      overflow: hidden;
      box-sizing: border-box;
      width: 85%;
      height: 1em; }
    .flow-step__box:not(:last-child)::before {
      content: '・・・・・・・・・・・・・・・・・・・・・・・・'; }
    .flow-step__box::before {
      top: 30px;
      left: calc(50% + 48px); }
  .flow-step__img h3 {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 2.6rem;
    font-weight: 400;
    font-style: italic;
    display: -webkit-box;
    display: flex;
    box-sizing: border-box;
    width: 77px;
    height: 77px;
    margin: 0 auto 20px;
    text-align: center;
    border: 1px solid #ffffff;
    border-radius: 50%;
    flex-flow: wrap;
    -webkit-box-pack: center;
            justify-content: center;
    align-content: center; }
    .flow-step__img h3 span {
      font-size: 1.2rem;
      display: block;
      width: 100%; }
  .flow-step__img img {
    display: block;
    height: auto;
    margin: 0 auto 6px; }
  .flow-step__img p {
    font-size: 1.8rem;
    text-align: center; }
    .flow-step__img p span {
      font-size: 1.2rem;
      display: block; }
  .flow-step__img img {
    width: 85px; }
  .flow-step__img p {
    min-height: 2.5em;
    margin-bottom: 12px; }
  .flow-step__txt p {
    font-size: 1.6rem; }
  .flow-quick {
    position: relative;
    box-sizing: border-box;
    max-width: 1150px;
    margin: auto;
    padding: 65px 75px;
    background-color: #e9eef4; }
    .flow-quick::before, .flow-quick::after {
      position: absolute;
      right: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
    .flow-quick::before {
      top: 0; }
    .flow-quick::after {
      bottom: 0; }
    .flow-quick > img {
      display: block;
      width: 100%;
      height: auto;
      margin-bottom: 30px; }
    .flow-quick > p {
      max-width: 680px;
      margin: 0 auto 30px; }
  .flow-quick__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-bottom: 50px;
    text-align: center; }
    .flow-quick__tit > span {
      font-size: 2.6rem;
      position: relative;
      z-index: 2;
      display: inline-block;
      padding: 0 10px;
      color: #e5005a;
      background-color: #e9eef4; }
    .flow-quick__tit h2 {
      font-size: 2vw;
      position: relative;
      margin-top: -20px;
      padding: 25px 0; }
      .flow-quick__tit h2::before, .flow-quick__tit h2::after {
        position: absolute;
        right: 0;
        left: 0;
        width: 100%;
        height: 4px;
        content: '';
        border-top: 1px solid #192f60;
        border-bottom: 1px solid #192f60; }
      .flow-quick__tit h2::before {
        top: 0; }
      .flow-quick__tit h2::after {
        bottom: 0; }
      .flow-quick__tit h2 span {
        font-size: 2.2rem; }
  .flow-quick__btn {
    text-align: center; }
  .marketing {
    overflow: hidden;
    box-sizing: border-box;
    margin: 150px 40px; }
  .marketing__wrap {
    overflow: hidden;
    box-sizing: border-box;
    max-width: 1366px;
    margin: auto;
    padding: 7.75%;
    border: 1px solid #192f60; }
  .marketing__tit {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 4.4rem;
    position: relative;
    z-index: 1;
    margin-bottom: 80px;
    text-align: center; }
    .marketing__tit::before, .marketing__tit::after {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      content: ''; }
    .marketing__tit::before {
      z-index: -2;
      width: 100%;
      height: 3px;
      border-top: 1px solid #192f60;
      border-bottom: 1px solid #192f60; }
    .marketing__tit::after {
      z-index: -1;
      width: 14em;
      height: 1em;
      background-color: #ffffff; }
    .marketing__tit br {
      display: none; }
  .marketing-list {
    float: left;
    width: calc(100% - 435px); }
    .marketing-list ul {
      margin-bottom: 60px; }
    .marketing-list li:not(:last-child) {
      margin-bottom: 40px; }
    .marketing-list a {
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: justify;
              justify-content: space-between; }
      .marketing-list a:hover {
        text-decoration: none; }
  .marketing-list__img {
    width: 35%;
    padding-right: 20px; }
    .marketing-list__img img {
      display: block;
      width: 100%;
      height: auto; }
  .marketing-list__txt {
    width: calc(100% - 296px);
    width: calc(100% - (35% + 20px)); }
    .marketing-list__txt span {
      font-size: 1.4rem;
      line-height: 1;
      display: inline-block;
      box-sizing: border-box;
      min-width: 9em;
      margin-bottom: 10px;
      padding: 6px;
      text-align: center;
      border: 1px solid #192f60; }
      a:hover .marketing-list__txt span {
        border-color: #e5005a; }
    .marketing-list__txt p {
      font-size: 1.6rem; }
      a:hover .marketing-list__txt p {
        text-decoration: underline; }
  .marketing-list__btn {
    width: 300px;
    margin: auto;
    text-align: center;
    border-radius: 50px;
    background-color: #000000; }
    .marketing-list__btn a {
      font-size: 2rem;
      line-height: 1;
      position: relative;
      z-index: 1;
      display: inline-block;
      box-sizing: border-box;
      width: 300px;
      padding: 18px;
      text-decoration: none;
      color: #ffffff;
      border-radius: 50px;
      box-shadow: 0px 4px 0px 0px #dde0e6; }
      .marketing-list__btn a::before {
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        content: '';
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border-radius: 50px;
        background: -webkit-gradient(linear, left bottom, left top, from(#192f60), to(#253242));
        background: linear-gradient(to top, #192f60, #253242); }
      .marketing-list__btn a:hover::before {
        opacity: 0.7; }
  .marketing-new {
    box-sizing: border-box;
    float: right;
    width: 395px;
    margin-top: 15px;
    border: 1px solid #192f60; }
    .marketing-new > p {
      font-size: 2rem;
      line-height: 1.4;
      text-align: center; }
      .marketing-new > p span {
        font-size: 1.5rem;
        display: block; }
  .marketing-new__tit {
    font-size: 2rem;
    line-height: 34px;
    position: relative;
    display: table;
    box-sizing: border-box;
    margin: -17px auto 32px;
    padding: 0 30px;
    text-align: center;
    color: #ffffff;
    background-color: #e5005a; }
    .marketing-new__tit::before, .marketing-new__tit::after {
      position: absolute;
      z-index: 1;
      width: 0px;
      height: 0px;
      content: ''; }
    .marketing-new__tit::before {
      top: 0;
      left: 0;
      border-width: 17px 0px 17px 12px;
      border-style: solid;
      border-color: transparent transparent transparent #ffffff; }
    .marketing-new__tit::after {
      top: 0;
      right: 0;
      border-width: 17px 12px 17px 0px;
      border-style: solid;
      border-color: transparent #ffffff transparent transparent; }
  .marketing-new__img {
    margin-bottom: 35px; }
    .marketing-new__img img {
      display: block;
      margin: auto; }
  .marketing-new__btn {
    max-width: 345px;
    margin: 0 auto 35px; }
    .marketing-new__btn img {
      display: block;
      width: 100%;
      height: auto; }
    .marketing-new__btn:hover {
      opacity: .7; }
  #footer {
    min-width: 100px; }
  .founder {
    position: relative;
    height: 360px;
    background: url("../images/common/founder.jpg") center no-repeat;
    background-size: cover; }
  .founder__inner {
    max-width: 1080px;
    position: relative;
    height: 360px;
    margin: 0 auto; }
  .founder__tit {
    font-family: "Montserrat", "sans-serif", "meiryo";
    font-size: 4.8rem;
    font-weight: 500;
    font-style: italic;
    position: relative;
    position: absolute;
    letter-spacing: 0;
    color: #ffffff;
    top: 0;
    bottom: 0;
    left: 6%;
    height: 1em;
    margin: auto; }
    .founder__tit::before {
      position: absolute;
      bottom: -20px;
      left: 0;
      display: block;
      width: 2.6em;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-x; }
  .founder__name {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    position: absolute;
    top: 200px;
    left: 50%;
    margin-left: -10%; }
    .founder__name > span {
      font-size: 1.4rem;
      display: block;
      margin-bottom: 4px; }
    .founder__name p {
      font-size: 2.8rem;
      line-height: 1; }
      .founder__name p span {
        font-family: "Montserrat", "sans-serif", "meiryo";
        font-size: 1.6rem;
        font-weight: 500;
        font-style: italic;
        letter-spacing: 0;
        color: #e5005a; }
    .founder__name p {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center; }
      .founder__name p span {
        display: inline-block;
        margin-left: 32px;
        padding-top: 2px; }
  .founder__txt {
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 2.2rem;
    position: absolute;
    bottom: 180px;
    left: 50%;
    margin-left: -10%; }
  .founder__btn {
    position: absolute;
    top: 205px;
    right: 0; }
  .footer-contact {
    position: relative;
    padding: 110px 0 135px;
    text-align: center;
    color: #ffffff;
    background-color: #192f60; }
    .footer-contact::before {
      position: absolute;
      right: 0;
      bottom: 20px;
      left: 0;
      display: block;
      width: 100%;
      height: 4px;
      content: '';
      background: url("../images/common/strip_line.png") repeat-y; }
    .footer-contact p {
      font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-size: 2.8rem;
      margin-bottom: 30px; }
  .footer-info {
    display: -webkit-box;
    display: flex;
    padding: 35px 60px;
    -webkit-box-pack: justify;
            justify-content: space-between; }
  .footer-info__box {
    font-size: 1.4rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
  .footer-address {
    display: -webkit-box;
    display: flex;
    width: calc(100% - 400px);
    -webkit-box-align: center;
            align-items: center; }
    .footer-address img {
      display: block;
      width: 200px;
      height: auto;
      margin-right: 60px; }
    .footer-address p {
      font-size: 1.4rem; }
  .footer-nav {
    display: -webkit-box;
    display: flex;
    width: 440px;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: end;
            justify-content: flex-end; }
    .footer-nav ul {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center; }
    .footer-nav li a {
      font-size: 1.6rem; }
    .footer-nav li:not(:last-child) {
      margin-right: 14px; }
  .footer-nav__contact {
    margin-right: 14px; }
    .footer-nav__contact a {
      position: relative;
      padding-left: 22px; }
      .footer-nav__contact a::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        display: inline-block;
        width: 16px;
        height: 16px;
        margin: auto;
        content: '';
        background: url("../images/common/icon_mail_blue.png") no-repeat;
        background-size: contain; }
  #copyright {
    padding: 12px 60px;
    text-align: right;
    background-color: #192f60; }
    #copyright small {
      font-family: "Montserrat", "sans-serif", "meiryo";
      font-size: 1.2rem;
      font-weight: 500;
      font-weight: 400;
      color: #ffffff; }
  #header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background: url(../images/common/header_line.png) no-repeat bottom #fff;
    height: 92px;
    padding: 0;
    -webkit-box-pack: start;
            justify-content: flex-start;
    padding-left: 1.5vw; }
    #header.fixed .header-sns {
      display: none; }
    #header.fixed .global-nav-list a {
      color: #192f60;
      font-size: 14px; }
      #header.fixed .global-nav-list a:hover {
        color: #e5005a; }
    #header.fixed .global-nav-list li:not(:last-child) {
      margin: 0 0.9vw; }
    #header.fixed .haeder-btn .haeder-btn__login a {
      width: 80px;
      height: 90px; }
      #header.fixed .haeder-btn .haeder-btn__login a span {
        font-size: 13px; }
    #header.fixed .haeder-btn .haeder-btn__contact a {
      width: 110px;
      height: 90px; }
      #header.fixed .haeder-btn .haeder-btn__contact a span {
        font-size: 13px;
        padding-left: 0;
        padding-top: 10px; }
        #header.fixed .haeder-btn .haeder-btn__contact a span:before {
          display: block;
          position: relative;
          top: -2px; }
    #header.fixed .header__logo {
      display: inline-block;
      padding-right: 0.7vw; } }

/*# sourceMappingURL=map/home.css.map */
