@charset "UTF-8";
/* --- @mixin box-center
-------------------------------------------*/
/* ---スマホ用フォントサイズ
-------------------------------------------*/
/* ---PC用フォントサイズ（max-1100px）
-------------------------------------------*/
/* ---フォントタイプ指定
-------------------------------------------*/
/* ---カラー指定
-------------------------------------------*/
/* --- PC/SP　メディアクエリ
-------------------------------------------*/
/* ---フォントサイズ指定
-------------------------------------------*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
.w100 {
  font-weight: 100; }

.w200 {
  font-weight: 200; }

.w300 {
  font-weight: 300; }

.w400 {
  font-weight: 400; }

.w500 {
  font-weight: 500; }

.w700 {
  font-weight: 700; }

.w900 {
  font-weight: 900; }

@media screen and (max-width: 750px) {
  .pc-on {
    display: none; } }
@media screen and (min-width: 751px) {
  .pc-on {
    display: inline; } }

@media screen and (min-width: 751px) {
  .sp-on {
    display: none; } }
@media screen and (max-width: 750px) {
  .sp-on {
    display: inline; } }

@media (min-width: 751px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
.txt-l {
  text-align: left; }

.txt-c {
  text-align: center; }

.txt-r {
  text-align: right; }

table {
  width: 100%; }

img {
  vertical-align: bottom; }

a:hover {
  opacity: .6;
  transition: .5s; }

/* fadeUp */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger {
  opacity: 0; }

/* --- body
-------------------------------------------*/
* {
  margin: 0;
  padding: 0; }

body {
  background: #c3c3d2;
  color: #111111;
  font-weight: 400;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-size: 11px;
  font-size: 3.4375vw; }
  @media screen and (min-width: 751px) {
    body {
      font-size: min(1.82vw, 20px); } }

ruby, ruby rt {
  line-height: 1; }

.img-vtop {
  vertical-align: top !important; }

.img-vbottom {
  vertical-align: bottom !important; }

/* --- common
-------------------------------------------*/
.wrapp {
  /*max-width: $media-pc-max;*/
  display: block;
  margin-left: auto;
  margin-right: auto; }

.inner {
  max-width: 960px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box; }
  @media screen and (max-width: 1100px) {
    .inner {
      padding: 0 5%;
      box-sizing: border-box; } }

.bg-w {
  background: #fff; }

.bg-g {
  background: #c3c3d2; }

p.normal {
  line-height: 1.6; }
  @media screen and (min-width: 751px) {
    p.normal {
      line-height: 2; } }

section {
  padding: 8vw 0; }
  @media screen and (min-width: 751px) {
    section {
      padding: min(60px, 5.45vw) 0; } }

/* メインタイトル（紺背景）　*/
.main-tl {
  position: relative;
  margin-bottom: 6vw;
  padding: 8vw 0;
  text-align: center;
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  background: #050534;
  font-size: 15px;
  font-size: 4.6875vw;
  color: #fff;
  line-height: 1.4; }
  @media screen and (min-width: 751px) {
    .main-tl {
      margin-bottom: min(50px, 4.5vw); } }
  @media screen and (min-width: 751px) {
    .main-tl {
      padding: min(30px, 2.7vw) 0;
      font-size: min(3.64vw, 40px);
      line-height: 1.6; } }
  .main-tl .large {
    font-size: 18px;
    font-size: 5.625vw; }

.main-tl:before {
  position: absolute;
  content: '';
  top: 0;
  left: -50vw;
  overflow: hidden;
  width: 70vw;
  height: 40vw;
  background-color: rgba(255, 255, 255, 0.5);
  clip-path: polygon(50% 40vw, 0% 0%, 70vw 0%); }

/* タイトル（アンダーラインあり）　*/
.tl-under {
  position: relative;
  margin-bottom: 6.5vw;
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  color: #050534;
  text-align: center;
  font-size: 16px;
  font-size: 5vw; }
  @media screen and (min-width: 751px) {
    .tl-under {
      margin-bottom: min(50px, 5.5vw);
      font-size: min(3.64vw, 40px); } }

.tl-under:before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -10px;
  display: inline-block;
  width: 30vw;
  height: 2px;
  background-color: #050534; }
  @media screen and (min-width: 751px) {
    .tl-under:before {
      bottom: -15px;
      width: 10vw; } }

.cv-area {
  padding-top: min(50px, 5.5vw); }
  .cv-area a {
    display: block;
    max-width: 520px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6vw; }
    @media screen and (min-width: 751px) {
      .cv-area a {
        margin-top: min(30px, 3vw); } }

.cv-area a:first-child {
  margin-top: 0; }

.red {
  color: #8f1407; }

.navy {
  color: #050534; }

.btn__financing {
  position: relative;
  padding: 3vw;
  background: #e1e1e9;
  border: 1px solid #050534;
  box-sizing: border-box;
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 18px;
  font-size: 5.625vw;
  line-height: 1.4;
  text-align: center; }
  @media screen and (min-width: 751px) {
    .btn__financing {
      padding: 1.5vw;
      font-size: min(2.91vw, 32px); } }
.btn__financing:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5vw;
  font: var(--fa-font-solid);
  content: "\f138";
  color: #56567c; }
.btn__financing:visited {
  color: #050534; }

/* --- header
-------------------------------------------*/
.header {
  background: #fff; }
  .header .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: inherit;
    padding: 0 3%; }
    @media screen and (max-width: 750px) {
      .header .inner {
        min-height: 15vw; } }
    @media screen and (min-width: 751px) {
      .header .inner {
        height: min(100px, 10vw); } }
  .header__logo {
    max-width: 320px; }
    @media screen and (max-width: 750px) {
      .header__logo {
        width: 45%; } }
    @media screen and (min-width: 751px) {
      .header__logo {
        height: min(40px, 2.67vw); } }
  .header__cv {
    position: fixed;
    display: flex;
    z-index: 100;
    width: 45%;
    max-width: 360px;
    top: 0;
    right: 0; }
    @media screen and (max-width: 750px) {
      .header__cv {
        min-height: 15vw; } }
    @media screen and (min-width: 751px) {
      .header__cv {
        width: 35%;
        height: min(100px, 10vw); } }
  .header__cv li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 50%; }
  .header__cv li a {
    display: block;
    font-size: 10px;
    font-size: 3.125vw; }
    @media screen and (min-width: 751px) {
      .header__cv li a {
        font-size: min(1.82vw, 20px); } }
  .header__cv li a .icon {
    display: block;
    width: 45%;
    max-width: 54px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: .5vw; }
  .header__cv__consult {
    background: #050534; }
    .header__cv__consult a {
      color: #fff; }
  .header__cv__contact {
    background: #c3c3d2; }
    .header__cv__contact a {
      color: #050534; }
      .header__cv__contact a .icon {
        width: 40%;
        max-width: 46px; }

.header__cv__contact .icon {
  filter: invert(7%) sepia(33%) saturate(4015%) hue-rotate(219deg) brightness(95%) contrast(108%); }

/* --- profile
-------------------------------------------*/
.profile {
  padding-top: 0; }
  .profile .inner {
    width: 100%; }
    @media screen and (min-width: 751px) {
      .profile .inner {
        width: 960px; } }
  .profile__midashi {
    display: flex;
    align-items: center;
    height: 29vw;
    margin-bottom: 5vw;
    background: url("../images/profile-tl-img.png") no-repeat right top;
    background-size: contain; }
    @media screen and (min-width: 751px) {
      .profile__midashi {
        margin-bottom: min(40px, 4vw); } }
    @media screen and (min-width: 751px) {
      .profile__midashi {
        height: 16vw; } }
  @media screen and (max-width: 750px) {
    .profile .lp-kaiketsu__midashi__txt {
      text-align: left; } }
  @media screen and (min-width: 751px) {
    .profile .lp-kaiketsu__midashi__txt {
      width: 100%; } }
  .profile__table {
    width: 100%; }
  .profile__table__tl {
    text-align: left;
    font-weight: normal; }
    @media screen and (max-width: 750px) {
      .profile__table__tl {
        display: block;
        width: 100%;
        margin-bottom: 2vw; } }
    @media screen and (min-width: 751px) {
      .profile__table__tl {
        width: 25%; } }
    .profile__table__tl span {
      position: relative;
      display: inline-block;
      align-items: center;
      padding: 2vw 12vw 2vw 4vw;
      box-sizing: border-box;
      background: #050534;
      color: #fff;
      line-height: 1;
      clip-path: polygon(0 0, 100% 0, 68% 100%, 0 100%); }
      @media screen and (min-width: 751px) {
        .profile__table__tl span {
          display: block;
          width: 80%;
          padding: .5vw; } }
  .profile__table__txt {
    padding-bottom: 1rem;
    line-height: 1.6; }
    @media screen and (min-width: 751px) {
      .profile__table__txt {
        padding-bottom: 2rem; } }
    @media screen and (max-width: 750px) {
      .profile__table__txt {
        display: block;
        width: 100%;
        line-height: 1.4; } }
    .profile__table__txt ul {
      margin-left: 1rem; }
    .profile__table__txt ul li {
      list-style: disc;
      padding-bottom: .25rem; }

/* --- omoi
-------------------------------------------*/
.omoi__box {
  background: url("../images/omoi-bg.png") no-repeat right bottom;
  background-size: cover; }
  @media screen and (min-width: 751px) {
    .omoi__box {
      max-width: 1100px;
      display: block;
      margin-left: auto;
      margin-right: auto;
      background-size: 70%; } }
  .omoi__box .normal {
    padding-bottom: 1rem;
    text-shadow: 2px 2px 1px white; }
    @media screen and (max-width: 750px) {
      .omoi__box .normal {
        line-height: 1.8; } }

/* --- seminer
-------------------------------------------*/
.seminer {
  padding-top: 0; }
  .seminer .main-tl {
    background: #d7f54c;
    color: #050534; }
  .seminer .tl-under {
    font-size: 14px;
    font-size: 4.375vw; }
    @media screen and (min-width: 751px) {
      .seminer .tl-under {
        font-size: min(2.18vw, 24px); } }
  @media screen and (min-width: 751px) {
    .seminer .inner {
      display: flex;
      justify-content: center;
      flex-wrap: wrap; } }
  .seminer__box {
    display: flex;
    flex-direction: column;
    margin-bottom: 5vw;
    padding: min(20px, 2vw);
    box-sizing: border-box;
    background: #fff; }
    @media screen and (min-width: 751px) {
      .seminer__box {
        margin-bottom: min(40px, 4vw); } }
    @media screen and (min-width: 751px) {
      .seminer__box {
        padding: min(10px, 1.5vw); } }
    @media screen and (min-width: 751px) {
      .seminer__box {
        width: 47%;
        margin: 2vw 1% 0 1%; } }
  .seminer__box__inner {
    padding: 0 3%; }
  .seminer__box:nth-last-of-type(1) {
    margin-bottom: 0; }
  .seminer__box__tl {
    margin-bottom: 3vw; }
    @media screen and (min-width: 751px) {
      .seminer__box__tl {
        margin-bottom: min(20px, 1.5vw); } }
  .seminer__box__schedule__wrapp {
    margin-bottom: 5vw; }
    @media screen and (min-width: 751px) {
      .seminer__box__schedule__wrapp {
        margin-bottom: min(40px, 4vw); } }
    .seminer__box__schedule__wrapp p {
      display: block;
      margin-top: 1.5vw;
      padding: 2vw;
      line-height: 1;
      box-sizing: border-box;
      border-radius: 8px; }
      @media screen and (min-width: 751px) {
        .seminer__box__schedule__wrapp p {
          margin-top: 1vw;
          padding: 1vw; } }
      @media screen and (max-width: 750px) {
        .seminer__box__schedule__wrapp p {
          font-size: 12px;
          font-size: 3.75vw; } }
    .seminer__box__schedule__wrapp p:nth-child(odd) {
      background: #e1e1e9; }
    .seminer__box__schedule__wrapp p:first-child {
      margin-top: 0; }
  .seminer__reserve-btn {
    position: relative;
    display: block;
    padding: 3vw 0;
    background: #8f1407;
    color: #fff;
    text-align: center;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 16px;
    font-size: 5vw; }
    @media screen and (min-width: 751px) {
      .seminer__reserve-btn {
        margin-top: auto;
        padding: 1.5vw 0;
        font-size: min(2.55vw, 28px); } }
  .seminer__reserve-btn:before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 2vw;
    font: var(--fa-font-solid);
    content: "\f0da";
    color: #fff; }
  .seminer__detail-btn__wrapp {
    text-align: center; }
  .seminer__detail-btn {
    position: relative;
    display: inline-block;
    text-align: center;
    margin-bottom: .5rem;
    padding-left: 1rem; }
  .seminer__detail-btn::before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    font: var(--fa-font-solid);
    content: "\f105";
    color: #56567c; }

.btn-contact {
  position: relative;
  display: block;
  margin-bottom: 5vw;
  padding: 4vw 2vw;
  box-sizing: border-box;
  background: #050534;
  border: 1px solid #fff;
  color: #fff;
  font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 16px;
  font-size: 5vw;
  text-align: center; }
  @media screen and (min-width: 751px) {
    .btn-contact {
      width: 50%;
      padding: 1.5vw 1vw;
      font-size: min(2.55vw, 28px);
      text-align: left; } }

.btn-contact:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5vw;
  font: var(--fa-font-solid);
  content: "\f138";
  color: #e1e1e9; }

/* --- footer
-------------------------------------------*/
.footer {
  padding: 8vw 0;
  background: #050534;
  color: #fff; }
  @media screen and (min-width: 751px) {
    .footer {
      padding: 3vw 0; } }
  @media screen and (min-width: 751px) {
    .footer .inner {
      display: flex;
      justify-content: space-between;
      align-items: flex-start; } }
  .footer__logo {
    -webkit-mask: url("../images/logo.svg") no-repeat center center/contain;
    mask-image: url("../images/logo.svg");
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    width: 60vw;
    height: 5vw;
    display: block;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff; }
    @media screen and (min-width: 751px) {
      .footer__logo {
        width: min(25vw, 240px);
        height: 2vw;
        left: 0; } }
    @media screen and (max-width: 750px) {
      .footer__logo {
        margin-top: 3vw; } }
  .footer__link {
    display: flex;
    flex-wrap: wrap;
    padding-top: 1rem;
    text-align: center; }
    @media screen and (max-width: 750px) {
      .footer__link {
        justify-content: center; } }
    @media screen and (max-width: 750px) {
      .footer__link li {
        margin-bottom: 1.5vw; } }
    .footer__link a {
      display: inline-block;
      position: relative;
      padding: 0 1.5rem 0 1rem;
      color: #fff;
      line-height: 1;
      white-space: nowrap; }
      @media screen and (min-width: 751px) {
        .footer__link a {
          font-size: min(1.27vw, 14px); } }
    .footer__link a::before {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      font: var(--fa-font-solid);
      content: "\f105";
      color: #56567c; }
  @media screen and (min-width: 751px) {
    .footer__contents {
      flex: 1;
      padding-left: 4vw; } }
  @media screen and (min-width: 751px) {
    .footer .btn-contact {
      width: 45%; } }

/*-------------------------------------------*/
/* --- LP
-------------------------------------------*/
/* --- LP fv
-------------------------------------------*/
.lp-fv {
  position: relative; }
  .lp-fv__tl {
    position: absolute;
    width: 80%;
    max-width: 1198px;
    top: 4vw;
    left: 18.67vw; }
    @media screen and (min-width: 751px) {
      .lp-fv__tl {
        width: 60%;
        left: 25vw; } }

/* --- lp-intro
-------------------------------------------*/
.lp-intro__midashi {
  padding-bottom: .5rem;
  font-size: 14px;
  font-size: 4.375vw;
  color: #050534;
  font-weight: 700;
  line-height: 1; }
  @media screen and (min-width: 751px) {
    .lp-intro__midashi {
      padding-bottom: 1.5rem;
      font-size: min(3.64vw, 40px); } }
  .lp-intro__midashi small {
    font-size: 75%; }
.lp-intro__block p {
  padding-bottom: min(14px, 2vw); }
.lp-intro__line {
  font-style: normal;
  text-decoration: underline; }

/* --- lp-nayami
-------------------------------------------*/
.lp-nayami {
  position: relative; }
  .lp-nayami .inner {
    max-width: 1100px; }
  .lp-nayami__midashi {
    margin-bottom: 5vw;
    font-size: 14px;
    font-size: 4.375vw;
    color: #050534;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    text-align: center; }
    @media screen and (min-width: 751px) {
      .lp-nayami__midashi {
        margin-bottom: min(40px, 4vw); } }
    @media screen and (min-width: 751px) {
      .lp-nayami__midashi {
        font-size: min(3.64vw, 40px); } }
  .lp-nayami__list {
    display: block;
    padding: min(20px, 2vw);
    box-sizing: border-box;
    background: #fff; }
    @media screen and (min-width: 751px) {
      .lp-nayami__list {
        padding: min(10px, 1.5vw); } }
    @media screen and (min-width: 751px) {
      .lp-nayami__list {
        display: flex;
        justify-content: space-between; } }
  @media screen and (max-width: 750px) {
    .lp-nayami__list__item {
      margin-bottom: 5vw; } }
  @media screen and (min-width: 751px) {
    .lp-nayami__list__item {
      width: calc(33.3% - 10px); } }
  .lp-nayami__list__item:nth-last-of-type(1) {
    margin-bottom: 0; }
  .lp-nayami__list__item__tlbox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2.5vw;
    padding: min(15px, 2vw);
    background: #e1e1e9; }
    @media screen and (min-width: 751px) {
      .lp-nayami__list__item__tlbox {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-bottom: min(15px, 1.5vw); } }
  .lp-nayami__list__item__tl {
    font-size: 12px;
    font-size: 3.75vw;
    color: #050534;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    line-height: 1.5; }
    @media screen and (min-width: 751px) {
      .lp-nayami__list__item__tl {
        display: block;
        height: 4em;
        font-size: min(2vw, 22px); } }
  .lp-nayami__list__item__img {
    display: block;
    width: 45%;
    text-align: center; }
    @media screen and (min-width: 751px) {
      .lp-nayami__list__item__img {
        width: 100%;
        padding-top: 20px; } }
    .lp-nayami__list__item__img img {
      width: 75%; }
      @media screen and (min-width: 751px) {
        .lp-nayami__list__item__img img {
          height: min(120px, 12vw);
          width: auto; } }

@media screen and (max-width: 750px) {
  .lp-nayami__list__item:nth-of-type(even) .lp-nayami__list__item__tlbox {
    flex-direction: row-reverse; } }

@media screen and (min-width: 751px) {
  .lp-nayami p.normal {
    padding: 0 1vw;
    font-size: min(1.45vw, 16px);
    line-height: 1.6; } }

.lp-nayami::before {
  position: absolute;
  content: '';
  top: 0;
  left: -50vw;
  overflow: hidden;
  width: 70vw;
  height: 40vw;
  background-color: rgba(255, 255, 255, 0.5);
  clip-path: polygon(50% 40vw, 0% 0%, 70vw 0%); }

/* --- lp-kaiketsu
-------------------------------------------*/
.lp-kaiketsu {
  padding: 0; }
  .lp-kaiketsu__midashi {
    display: flex;
    align-items: center;
    height: 53.33vw;
    margin-bottom: 5vw;
    background: url("../images/lp/kaiketsu-tl-sp.png") no-repeat right top;
    background-size: contain; }
    @media screen and (min-width: 751px) {
      .lp-kaiketsu__midashi {
        margin-bottom: min(40px, 4vw); } }
    @media screen and (min-width: 751px) {
      .lp-kaiketsu__midashi {
        display: flex;
        height: 24vw;
        background: url("../images/lp/kaiketsu-tl-pc.png") no-repeat right top;
        background-size: contain; } }
    .lp-kaiketsu__midashi .large {
      font-size: 16px;
      font-size: 5vw; }
      @media screen and (min-width: 751px) {
        .lp-kaiketsu__midashi .large {
          font-size: min(4vw, 44px); } }
    .lp-kaiketsu__midashi .inner {
      width: 100%; }
      @media screen and (max-width: 750px) {
        .lp-kaiketsu__midashi .inner {
          padding-right: 0; } }
  .lp-kaiketsu__midashi__txt {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    color: #050534;
    font-size: 14px;
    font-size: 4.375vw; }
    @media screen and (min-width: 751px) {
      .lp-kaiketsu__midashi__txt {
        width: 70%;
        text-align: center;
        font-size: min(3.64vw, 40px); } }

/* --- lp-support
-------------------------------------------*/
.lp-support {
  padding-bottom: 0; }
  .lp-support .main-tl {
    margin-bottom: 0; }
  .lp-support__subtl {
    display: flex;
    align-items: center;
    margin-bottom: 6.5vw;
    margin-top: 6vw;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    color: #050534; }
    @media screen and (min-width: 751px) {
      .lp-support__subtl {
        margin-bottom: min(55px, 5vw);
        margin-top: min(55px, 5vw); } }
  .lp-support__subtl__num {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 13.33vw;
    height: 13.33vw;
    line-height: 1;
    background: #d7f54c;
    font-size: 18px;
    font-size: 5.625vw; }
    @media screen and (min-width: 751px) {
      .lp-support__subtl__num {
        width: min(80px, 10vw);
        height: min(80px, 10vw);
        font-size: min(3.64vw, 40px); } }
  .lp-support__subtl__txt {
    position: relative;
    flex: 1;
    padding-left: 2vw;
    box-sizing: border-box;
    text-align: center;
    font-size: 14px;
    font-size: 4.375vw; }
    @media screen and (min-width: 751px) {
      .lp-support__subtl__txt {
        font-size: min(3.27vw, 36px); } }
  .lp-support__subtl__txt:before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -10px;
    display: inline-block;
    width: 30vw;
    height: 2px;
    background-color: #050534; }
    @media screen and (min-width: 751px) {
      .lp-support__subtl__txt:before {
        bottom: -15px;
        width: 10vw; } }
  .lp-support__column {
    display: block;
    margin-top: 5vw;
    padding: 3vw;
    box-sizing: border-box;
    background: #e1e1e9;
    border-radius: 8px;
    font-size: 10px;
    font-size: 3.125vw; }
    @media screen and (min-width: 751px) {
      .lp-support__column {
        margin-top: min(40px, 3.5vw);
        padding: 1.5vw;
        font-size: min(1.45vw, 16px); } }
    .lp-support__column .normal {
      flex: 1; }
  .lp-support__column__pic {
    display: block; }
    @media screen and (max-width: 750px) {
      .lp-support__column__pic {
        margin-top: 3vw; } }
    @media screen and (min-width: 751px) {
      .lp-support__column__pic {
        display: block;
        width: 60%;
        margin-top: min(40px, 3vw);
        display: block;
        margin-left: auto;
        margin-right: auto; } }

.lp-support .cv-area {
  padding: min(70px, 10vw) 0; }

/* --- lp-seminer
-------------------------------------------*/
.lp-seminer {
  padding-top: 0; }
  .lp-seminer__main {
    margin-bottom: 6vw;
    background: url("../images/lp/seminer-bg-sp.png") no-repeat;
    background-size: cover; }
    @media screen and (min-width: 751px) {
      .lp-seminer__main {
        margin-bottom: min(50px, 4.5vw); } }
    @media screen and (min-width: 751px) {
      .lp-seminer__main {
        background: url("../images/lp/seminer-bg-pc.png") no-repeat; } }
  .lp-seminer__main__tl {
    width: 80%;
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding: 4vw 0; }
    @media screen and (min-width: 751px) {
      .lp-seminer__main__tl {
        width: min(75%, 650px); } }
  .lp-seminer__list {
    width: 90%;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .lp-seminer__list__item {
    padding-bottom: 1rem;
    font-size: 14px;
    font-size: 4.375vw;
    font-weight: 700;
    color: #050534; }
    @media screen and (min-width: 751px) {
      .lp-seminer__list__item {
        text-align: center;
        font-size: min(2.18vw, 24px); } }
    .lp-seminer__list__item span {
      background: linear-gradient(transparent 70%, #d7f54c 30%); }

/* --- lp-voice
-------------------------------------------*/
.lp-voice__box {
  padding: min(20px, 2vw);
  box-sizing: border-box;
  background: #fff; }
  @media screen and (min-width: 751px) {
    .lp-voice__box {
      padding: min(10px, 1.5vw); } }
  @media screen and (min-width: 751px) {
    .lp-voice__box {
      width: 100%;
      display: flex;
      justify-content: space-between; } }
@media screen and (min-width: 751px) {
  .lp-voice__box__contents {
    width: 49%;
    border: 1px solid #e1e1e9; } }
.lp-voice__box__name {
  display: flex;
  align-items: center;
  margin-bottom: 3vw;
  padding: min(20px, 2vw);
  box-sizing: border-box;
  background: #e1e1e9 url("../images/lp/voice-profile-img.svg") no-repeat top right;
  background-size: 20%;
  font-weight: normal;
  line-height: 1; }
  @media screen and (min-width: 751px) {
    .lp-voice__box__name {
      margin-bottom: min(20px, 1.5vw); } }
  @media screen and (min-width: 751px) {
    .lp-voice__box__name {
      padding: min(10px, 1.5vw); } }
  @media screen and (min-width: 751px) {
    .lp-voice__box__name {
      background-size: 13%; } }
.lp-voice__box__name__profile {
  display: inline-block;
  margin-right: 1rem;
  padding: 2vw 3vw;
  color: #fff;
  background: #050534;
  border-radius: 50px; }
  @media screen and (min-width: 751px) {
    .lp-voice__box__name__profile {
      padding: .5vw 1.5vw;
      font-size: min(1.45vw, 16px); } }
.lp-voice__box__name__notes {
  color: #050534;
  font-size: 9px;
  font-size: 2.8125vw; }
  @media screen and (min-width: 751px) {
    .lp-voice__box__name__notes {
      font-size: min(1.27vw, 14px); } }
.lp-voice__box__midashi {
  font-weight: normal;
  font-size: 12px;
  font-size: 3.75vw;
  color: #050534; }
  @media screen and (min-width: 751px) {
    .lp-voice__box__midashi {
      padding: 0 1.5vw;
      font-size: min(1.64vw, 18px); } }

.lp-voice__box__contents .normal {
  padding-bottom: 3vw; }
  @media screen and (min-width: 751px) {
    .lp-voice__box__contents .normal {
      padding: 0 1.5vw 2vw 1.5vw;
      font-size: min(1.45vw, 16px); } }

/*-------------------------------------------*/
/* --- TOP
-------------------------------------------*/
main.top {
  background: #fff; }

/* --- TOP fv
-------------------------------------------*/
.top-fv {
  position: relative;
  height: 54.27vw;
  background: url("../images/top/fv-bg.jpg") no-repeat top center;
  background-size: 100%; }
  @media screen and (min-width: 751px) {
    .top-fv {
      height: 35vw;
      background: url("../images/top/fv-bg.jpg") no-repeat bottom center;
      background-size: cover; } }
  .top-fv__kanzaki {
    position: absolute;
    width: 32%;
    left: 0;
    bottom: -8vw; }
    @media screen and (min-width: 751px) {
      .top-fv__kanzaki {
        width: 20%;
        top: 0; } }
  .top-fv__tl {
    display: block;
    padding: 10vw 0 0 32vw; }
    @media screen and (min-width: 751px) {
      .top-fv__tl {
        padding: 8vw 0 0 35vw; } }
  .top-fv__tl__sub {
    position: relative;
    display: block;
    margin: 0 0 1vw 5vw;
    font-size: 11px;
    font-size: 3.4375vw;
    color: #050534; }
    @media screen and (min-width: 751px) {
      .top-fv__tl__sub {
        font-size: min(2.55vw, 28px);
        text-shadow: 2px 2px 1px white; } }
  .top-fv__tl__sub:before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -5vw;
    width: 4.5vw;
    height: 1px;
    background: #050534; }
  .top-fv__tl__main {
    display: inline-block;
    margin-bottom: .5rem;
    padding: 0 12px;
    background: #fff;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    color: #050534;
    font-size: 18px;
    font-size: 5.625vw; }
    @media screen and (min-width: 751px) {
      .top-fv__tl__main {
        margin-bottom: 1rem;
        font-size: min(66px, 3.4vw); } }

/* --- TOP intro
-------------------------------------------*/
.top-intro {
  padding-top: 4vw; }
  @media screen and (min-width: 751px) {
    .top-intro .inner {
      padding-left: min(150px, 8vw);
      box-sizing: border-box; } }
  .top-intro__midashi {
    display: block;
    box-sizing: border-box;
    padding-bottom: 1rem;
    color: #050534;
    font-weight: 700;
    line-height: 1.5; }
    @media screen and (max-width: 750px) {
      .top-intro__midashi {
        padding-bottom: .5rem;
        padding-left: 25vw;
        font-size: 14px;
        font-size: 4.375vw; } }
    @media screen and (min-width: 751px) {
      .top-intro__midashi {
        font-size: min(2.91vw, 32px); } }

/* --- TOP jobs
-------------------------------------------*/
.jobs {
  background: #e1e1e9 url("../images/top/seminer-bg.png") no-repeat center bottom;
  background-size: cover; }
  .jobs__box {
    background: #fff;
    background-color: rgba(255, 255, 255, 0.9);
    padding: min(20px, 2vw);
    box-sizing: border-box; }
    @media screen and (min-width: 751px) {
      .jobs__box {
        padding: min(10px, 1.5vw); } }
  .jobs__tl {
    margin-bottom: 3vw;
    padding: min(10px, 1.5vw);
    background: #d7f54c;
    color: #050534;
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 12px;
    font-size: 3.75vw;
    clip-path: polygon(0 0, 100% 0, 86% 100%, 0 100%); }
    @media screen and (min-width: 751px) {
      .jobs__tl {
        margin-bottom: min(20px, 1.5vw); } }
    @media screen and (min-width: 751px) {
      .jobs__tl {
        margin-bottom: 15px;
        font-size: min(2vw, 22px); } }
  .jobs .normal {
    padding-bottom: 1.5rem; }

/* --- TOP omoi
-------------------------------------------*/
.top .omoi {
  padding-top: 0; }

/* --- PRIVACY
-------------------------------------------*/
main.privacy {
  padding-top: 6vw;
  background: #fff;
  font-size: 9px;
  font-size: 2.8125vw; }
  @media screen and (min-width: 751px) {
    main.privacy {
      padding-top: 4vw;
      font-size: min(1.27vw, 14px); } }
  main.privacy section {
    padding-top: 0;
    padding-bottom: 2rem; }
  main.privacy h2 {
    margin-bottom: .75rem;
    font-size: 12px;
    font-size: 3.75vw;
    border-bottom: 1px solid #56567c; }
    @media screen and (min-width: 751px) {
      main.privacy h2 {
        font-size: min(1.64vw, 18px); } }
  main.privacy p {
    padding-bottom: .5rem; }
  main.privacy ul {
    margin-left: 1.25rem; }
  main.privacy ul li {
    list-style: disc; }
  main.privacy .privacy__type {
    margin-top: .5rem;
    padding-top: .5rem;
    border-top: 2px solid #c3c3d2; }

/* --- CONTACT
-------------------------------------------*/
main.contact {
  padding-top: 6vw;
  background: #fff; }
  @media screen and (min-width: 751px) {
    main.contact {
      padding-top: 4vw; } }
  main.contact label {
    display: inline-block; }
  main.contact .cf7-form {
    border-bottom: 1px dotted #d8d8d8;
    padding-bottom: 15px;
    margin-bottom: 20px;
    margin-top: 10px; }
  main.contact input {
    width: 100%; }
  main.contact input[type="submit"] {
    background: #050534;
    color: #ffffff;
    padding: 3vw; }
    @media screen and (min-width: 751px) {
      main.contact input[type="submit"] {
        padding: 1.5vw;
        font-size: min(2vw, 22px); } }
  main.contact input[type="submit"]:hover {
    background: #050534;
    opacity: 0.7; }
  main.contact .cf7-hissu {
    background: #8f1407;
    color: #ffffff;
    text-align: center;
    padding: .5vw;
    margin-left: .75rem;
    font-size: 10px;
    font-size: 3.125vw; }
    @media screen and (min-width: 751px) {
      main.contact .cf7-hissu {
        font-size: min(1.45vw, 16px); } }
  main.contact a:visited {
    color: #fff; }

/* ページ遷移時にふわっと表示　*/
.wrapp {
  display: none; }
