@charset "UTF-8";
/* Scss Document */
/* Scss Document */
/*naga add*/
/* 下からフェードイン(初期値) */
.js-fadeUp, .js-fadeUpSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateY(30px);
  /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 下からフェードイン(スクロールした後) */
.js-fadeUp.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: 0s;
  /*開始を遅らせる */
}

.js-fadeUpSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 左からフェードイン(初期値) */
.js-fadeIn, .js-fadeInSlow {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateX(-100px);
  /* 左に100pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 左からフェードイン(スクロールした後) */
.js-fadeIn.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: 0s;
  /* 開始を遅らせる */
}

.js-fadeInSlow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 用紙サイズの指定（A4） */
@page {
  margin: 8mm;
  size: 210mm 297mm;
  /* A4縦 */
}
@media print {
  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時でも背景色や背景画像を表示 */
    width: 1400px;
    /* 印刷時の全ページ幅を統一 */
    zoom: 0.8;
    /* なるべく多くのブラウザで切れないようにするため */
    /*no animation*/
  }
  body header {
    position: absolute !important;
    max-width: 1400px;
    width: 1400px !important;
  }
  body .header--flex {
    width: 1400px !important;
  }
  body .btnBox {
    display: none;
  }
  body #btn_pagetop {
    display: none;
  }
  body .js-fadeUp,
  body .js-fadeIn {
    opacity: 1;
  }
  body .js-fadeIn {
    transform: translateX(0);
  }
  body .js-fadeUp {
    transform: translateY(0);
  }
  body .js-fadeUp.is-view,
  body .js-fadeIn.is-view {
    animation-name: none;
  }
}
.tmv {
  width: 100%;
  height: auto;
  margin: 199px 0 0;
  padding: 0;
  position: relative;
  z-index: 1;
}
.tmv:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/plan/tmv.jpg");
  /*のちのち透明度をつけるので疑似要素で使用*/
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top right 30%;
  z-index: -1;
}
@media screen and (min-width: 1441px) {
  .tmv:before {
    background-position: top center;
  }
}
@media screen and (max-width: 767px) {
  .tmv:before {
    opacity: 0.3;
    filter: alpha(opacity=30);
    -ms-filter: alpha(opacity=30);
  }
}
@media screen and (max-width: 899px) {
  .tmv {
    margin-top: 90px;
  }
}
.tmv__inner {
  display: flex;
  height: 260px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 100px;
  margin: 0 auto;
  max-width: 1440px;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
@media screen and (max-width: 1279px) {
  .tmv__inner {
    padding: 0 20px;
  }
}
@media screen and (max-width: 899px) {
  .tmv__inner {
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .tmv__inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.tmv__hl {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px 120px 30px 0;
  font: 600 36px/1.5 "Klee One", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "Meiryo UI", "メイリオ", "Meiryo", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  color: #3674b5;
  text-shadow: 2px 2px 4px #fff, 0px 0px 10px #fff;
  background-image: url("../img/plan/headlline.png");
  background-size: 104px;
  background-repeat: no-repeat;
  background-position: center right;
}
@media screen and (max-width: 479px) {
  .tmv__hl {
    font-size: 28px;
    background-size: 80px;
    padding: 20px 90px 30px 0;
  }
}

.ctnr__inner {
  margin: 0 auto;
  max-width: 1240px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px 55px;
}
@media screen and (max-width: 767px) {
  .ctnr__inner {
    padding: 0 15px 55px;
  }
}
.ctnr__inner .paragraph {
  max-width: 1240px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font: 500 18px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  margin: 0 auto;
}
.ctnr__hl {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 50px;
  padding-bottom: 40px;
  font: 600 36px/1.5 "Klee One", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "Meiryo UI", "メイリオ", "Meiryo", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  color: #1d1d1d;
}
@media screen and (max-width: 479px) {
  .ctnr__hl {
    font-size: 28px;
  }
}

.planList {
  max-width: 1240px;
  margin: 80px auto 0;
  padding-left: 20px;
  padding-right: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .planList {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.planList__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 150px 40px;
  padding: 0 100px 250px;
}
@media screen and (max-width: 1279px) {
  .planList__grid {
    padding-bottom: 150px;
    gap: 120px 20px;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  }
}
@media screen and (min-width: 1441px) {
  .planList__grid {
    padding: 0 20px 250px;
  }
}
@media screen and (max-width: 767px) {
  .planList__grid {
    padding: 0 15px 100px;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 479px) {
  .planList__grid {
    gap: 100px;
    padding-bottom: 180px;
  }
}
.planList__grid__wrap {
  padding: 0;
  position: relative;
}
.planList__grid__wrap .comment {
  width: 100%;
  font: 600 30px/1.5 "Klee One", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "Meiryo UI", "メイリオ", "Meiryo", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  color: #1d1d1d;
  text-align: center;
  position: absolute;
  top: -60px;
}
@media screen and (max-width: 1279px) {
  .planList__grid__wrap .comment {
    top: -70px;
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .planList__grid__wrap .comment {
    top: -50px;
  }
}
@media screen and (max-width: 479px) {
  .planList__grid__wrap .comment {
    font-size: 20px;
  }
}
@media screen and (max-width: 369px) {
  .planList__grid__wrap .comment {
    font-size: 18px;
    line-height: 1.3;
  }
}
.planList__grid__wrap .comment span {
  display: inline-block;
  position: relative;
  padding: 0 50px;
}
.planList__grid__wrap .comment span > em {
  font-style: normal;
  background: linear-gradient(transparent 75%, #fffc09 75%);
}
@media screen and (max-width: 479px) {
  .planList__grid__wrap .comment span {
    padding: 0 30px;
  }
}
.planList__grid__wrap .comment span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%) rotate(55deg);
  display: block;
  width: 28px;
  /* 線の高さ */
  height: 1px;
  /* 線の太さ */
  background-color: #1d1d1d;
}
.planList__grid__wrap .comment span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(-55deg);
  display: block;
  width: 28px;
  /* 線の高さ */
  height: 1px;
  /* 線の太さ */
  background-color: #1d1d1d;
}
@media screen and (max-width: 767px) {
  .planList .planBox {
    max-width: 480px;
    margin: 0 auto;
  }
}
.planList .planBox__tl {
  height: 90px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 15px;
  padding-left: 5px;
  padding-right: 5px;
  text-align: center;
  font: 600 30px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #fff;
  border-radius: 10px 10px 0 0;
}
@media screen and (max-width: 1279px) {
  .planList .planBox__tl {
    height: 110px;
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .planList .planBox__tl {
    height: 90px;
    padding-top: 5px;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox__tl {
    line-height: 1.3;
    padding-top: 10px;
  }
}
.planList .planBox__tl span {
  font-size: 36px;
}
@media screen and (max-width: 1279px) {
  .planList .planBox__tl span {
    font-size: 26px;
    display: block;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox__tl span {
    font-size: 24px;
  }
}
.planList .planBox__inner {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 40px 50px;
  box-shadow: 0 0 6.4px 1.6px rgba(191, 191, 191, 0.28);
  background-color: #fff;
  text-align: center;
  border-radius: 0 0 10px 10px;
}
@media screen and (max-width: 1279px) {
  .planList .planBox__inner {
    padding: 30px 30px 50px;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox__inner {
    padding: 30px 20px 40px;
  }
}
.planList .planBox .flex {
  display: flex;
  /*align-items: center;*/
  gap: 20px;
  margin-bottom: 30px;
}
@media screen and (max-width: 1279px) {
  .planList .planBox .flex {
    gap: 10px;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox .flex {
    gap: 20px;
  }
}
.planList .planBox .flex .lt img {
  /*display: block;
  height: auto;
  max-width:100%;*/
}
.planList .planBox .flex .rt p {
  text-align: left;
  font: 500 24px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
}
@media screen and (max-width: 1279px) {
  .planList .planBox .flex .rt p {
    font-size: 18px;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox .flex .rt p {
    font-size: 16px;
    line-height: 1.3;
  }
}
.planList .planBox__image {
  margin-bottom: 40px;
}
.planList .planBox__image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin: 0 auto;
}
.planList .planBox__link {
  text-align: center;
}
.planList .planBox__link a {
  width: 330px;
  height: auto;
  min-height: 60px;
  max-width: 100%;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 13px 24px;
  margin: 0 auto;
  border-radius: 5px;
  background-color: #1b1a55;
  font: 600 24px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #fff !important;
  border: 2px solid #1b1a55;
  text-align: center;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (max-width: 1279px) {
  .planList .planBox__link a {
    font-size: 18px;
    padding: 13px 8px;
  }
}
@media screen and (max-width: 479px) {
  .planList .planBox__link a {
    width: 100%;
    min-height: 50px;
    padding: 10px 15px;
    font-size: 18px;
    border: 1px solid #1b1a55;
  }
}
@media screen and (max-width: 329px) {
  .planList .planBox__link a {
    font-size: 16px;
  }
}
.planList .planBox__link a:hover {
  text-decoration: none;
}
@media (hover: hover) {
  .planList .planBox__link a:hover {
    background-color: #fff;
    color: #1b1a55 !important;
  }
}
.planList .planBox__cost {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px 20px;
  margin-bottom: 30px;
  flex-wrap: wrap;
}
.planList .planBox__cost--lt {
  width: 180px;
  height: auto;
  min-height: 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px;
  border-radius: 30px;
  background-color: #f1f4fb;
  font: 500 20px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  text-align: center;
}
.planList .planBox__cost--rt {
  text-align: center;
  font: 500 20px/1.5 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
}
@media screen and (max-width: 479px) {
  .planList .planBox__cost--rt {
    font-size: 18px;
  }
}
.planList .planBox__cost--rt span {
  font: 600 40px/1.2 "Zen Old Mincho", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  display: block;
}
@media screen and (max-width: 767px) {
  .planList .planBox__cost--rt span {
    font-size: 30px;
  }
}
.planList .plan-a .planBox__tl {
  background-color: #beaac5;
}
.planList .plan-b .planBox__tl {
  background-color: #c5aab3;
}
.planList .plan-c .planBox__tl {
  background-color: #a7bda3;
}
.planList .plan-d .planBox__tl {
  background-color: #9290c3;
}
.planList .plan-e .planBox__tl {
  background-color: #a2a2a2;
}
@media screen and (max-width: 1279px) {
  .planList .plan-e .planBox__tl {
    height: 70px;
  }
}
@media screen and (max-width: 767px) {
  .planList .plan-e .planBox__tl {
    height: 55px;
  }
}
