@charset "utf-8";
/* 既存サイトのクラスをそのまま使っているパーツ（見出し・FAQ・お客様の声・お問合せ・運営事務所）を、
   エリアページのリキッド（area.css の --u）に合わせるための上書き。
   既存CSS（base/index/page/style.css）のSP用の値を calc(N * var(--u)) に置き換えたもの。PC（992px〜）も同様に置き換え（ファイル後半） */
@media (max-width: 991px) {
  /* フォーム部品はブラウザ既定の文字サイズ（13.3333px）なので個別に比例させる */
  .area-lp :is(input, textarea, select) {
    font-size: calc(13.3333 * var(--u));
  }
  .area-lp .inner {
    max-width: calc(1024 * var(--u));
    margin: 0 calc(15 * var(--u));
  }
  .area-lp > section {
    padding: calc(50 * var(--u)) 0;
  }
  .area-lp .time-list li {
    font-size: calc(14 * var(--u));
  }
  .area-lp .time-list .time-bg {
    border-radius: calc(10 * var(--u));
  }
  .area-lp .contact-block {
    padding: 0 0 calc(50 * var(--u));
  }
  .area-lp .reg-title {
    font-size: calc(30 * var(--u));
  }
  .area-lp .sline-title {
    font-size: calc(30 * var(--u));
  }
  .area-lp .sline-title .line {
    padding: 0 calc(60 * var(--u));
  }
  .area-lp .center-title {
    font-size: calc(26 * var(--u));
  }
  .area-lp .center-title .big {
    font-size: calc(30 * var(--u));
  }
  .area-lp .band-title {
    font-size: calc(22 * var(--u));
  }
  .area-lp .band-title .block {
    font-size: calc(16 * var(--u));
  }
  .area-lp .band-title .mini {
    font-size: calc(18 * var(--u));
  }
  .area-lp .ub-line-title {
    border-top: calc(2 * var(--u)) solid #333;
    border-bottom: calc(2 * var(--u)) solid #333;
    font-size: calc(26 * var(--u));
  }
  .area-lp .slide-btn {
    border-radius: calc(10 * var(--u));
    font-size: calc(16 * var(--u));
  }
  .area-lp .slide-contents p {
    font-size: calc(12 * var(--u));
  }
  .area-lp .slide-contents p.slide-contents-img {
    max-width: calc(540 * var(--u));
  }
  .area-lp .reg-form {
    max-width: calc(1200 * var(--u));
    margin: 0 0 calc(40 * var(--u));
  }
  .area-lp .reg-form dt,
  .area-lp .reg-form dd {
    font-size: calc(16 * var(--u));
  }
  .area-lp .reg-form input[type=text],
  .area-lp .reg-form input[type=email],
  .area-lp .reg-form input[type=tel],
  .area-lp .reg-form textarea {
    border-radius: calc(10 * var(--u));
    font-size: calc(16 * var(--u));
  }
  .area-lp .reg-form .must,
  .area-lp .reg-form .optional {
    border-radius: calc(3 * var(--u));
    font-size: calc(12 * var(--u));
    margin-left: calc(10 * var(--u));
  }
  .area-lp .reg-form .ex-txt {
    font-size: calc(12 * var(--u));
  }
  .area-lp .form-btn {
    max-width: calc(350 * var(--u));
  }
  .area-lp .form-btn input[type=submit] {
    border: calc(2 * var(--u)) solid #333;
    border-radius: calc(50 * var(--u));
    box-shadow: calc(2 * var(--u)) calc(2 * var(--u)) 0px rgba(0, 0, 0, 0.4);
    font-size: calc(20 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card {
    box-shadow: 0px 0px calc(10 * var(--u)) rgba(0, 0, 0, 0.2);
  }
  .area-lp .swiper-wrapper .swiper-card .thumbnail {
    margin: 0 auto calc(20 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card h3 {
    font-size: calc(16 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card h3 .bg-mcl {
    border-radius: calc(10 * var(--u));
  }
  .area-lp .swiper-wrapper .txt-area p {
    font-size: calc(12 * var(--u));
  }
  .area-lp .swiper-wrapper .txt-area p.review-name {
    font-size: calc(14 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-prev {
    left: calc(-20 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-next {
    right: calc(-20 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-slide {
    margin: 0 calc(10 * var(--u)) !important;
  }
  .area-lp .slick-prev,
  .area-lp .slick-next {
    width: calc(25 * var(--u)) !important;
    height: calc(25 * var(--u)) !important;
  }
  .area-lp .accordion-area {
    max-width: calc(900 * var(--u));
  }
  .area-lp .accordion-area .box {
    font-size: calc(12 * var(--u));
    padding: 2em calc(30 * var(--u)) 1em calc(54 * var(--u));
  }
  .area-lp .accordion-area .box p:first-child {
    font-size: calc(14 * var(--u));
  }
  .area-lp .accordion-area li {
    margin: calc(10 * var(--u)) 0;
  }
  .area-lp .title-q {
    border-radius: calc(10 * var(--u));
    font-size: calc(14 * var(--u));
    padding: 1.25em calc(35 * var(--u)) 1.25em calc(15 * var(--u));
  }
  .area-lp .title-q span {
    padding: 0 0 0 calc(38 * var(--u));
  }
  .area-lp .contact-sup {
    border-radius: calc(4 * var(--u));
    margin: calc(-10 * var(--u)) auto calc(20 * var(--u));
  }
  .area-lp .contact-tel-box {
    border: calc(2 * var(--u)) solid #0e5a88;
    border-radius: calc(20 * var(--u));
  }
  .area-lp .contact-tel-box .tel-top {
    font-size: calc(14 * var(--u));
  }
  .area-lp .contact-tel-box .tel a {
    font-size: calc(32 * var(--u));
  }
  .area-lp .contact-tel-box .tel .icon {
    padding: 0 0 0 calc(50 * var(--u));
  }
  .area-lp .contact-tel-box .time-txt {
    font-size: calc(14 * var(--u));
  }
  .area-lp .contact-tel-box .time-list li {
    font-size: calc(12 * var(--u));
  }
  .area-lp div.gmap_outer {
    width: 100%;
    margin: 0 auto calc(30 * var(--u));
  }
  .area-lp .office-item .txt {
    font-size: calc(14 * var(--u));
  }
  .area-lp .office-item .add {
    font-size: calc(12 * var(--u));
  }
  .area-lp .office-item .indent {
    font-size: calc(12 * var(--u));
  }
}

/* PC（992px〜）：既存CSSのPC用の値を calc(N * var(--u)) に置き換えたもの（1440px基準のリキッド） */
@media (min-width: 992px) {
  .area-lp :is(input, textarea, select) {
    font-size: calc(13.3333 * var(--u));
  }
  .area-lp .inner {
    max-width: calc(1024 * var(--u));
  }
  .area-lp > section {
    padding: calc(100 * var(--u)) 0;
  }
  .area-lp .time-list li {
    font-size: calc(16 * var(--u));
  }
  .area-lp .time-list .time-bg {
    border-radius: calc(20 * var(--u));
  }
  .area-lp .contact-block {
    padding: 0 0 calc(100 * var(--u));
  }
  .area-lp .reg-title {
    font-size: calc(40 * var(--u));
  }
  .area-lp .sline-title {
    font-size: calc(40 * var(--u));
  }
  .area-lp .sline-title .line {
    padding: 0 calc(110 * var(--u));
  }
  .area-lp .center-title {
    font-size: calc(34 * var(--u));
  }
  .area-lp .center-title .big {
    font-size: calc(48 * var(--u));
  }
  .area-lp .band-title {
    font-size: calc(46 * var(--u));
  }
  .area-lp .band-title .block {
    font-size: calc(28 * var(--u));
  }
  .area-lp .band-title .mini {
    font-size: calc(40 * var(--u));
  }
  .area-lp .ub-line-title {
    border-top: calc(2 * var(--u)) solid #333;
    border-bottom: calc(2 * var(--u)) solid #333;
    font-size: calc(40 * var(--u));
  }
  .area-lp .slide-btn {
    border-radius: calc(10 * var(--u));
    width: calc(650 * var(--u));
    font-size: calc(20 * var(--u));
  }
  .area-lp .slide-contents {
    width: calc(650 * var(--u));
  }
  .area-lp .slide-contents p {
    font-size: calc(13 * var(--u));
  }
  .area-lp .slide-contents p.slide-contents-img {
    max-width: calc(540 * var(--u));
  }
  .area-lp .reg-form {
    max-width: calc(1200 * var(--u));
    margin: 0 0 calc(40 * var(--u));
  }
  .area-lp .reg-form dt,
  .area-lp .reg-form dd {
    font-size: calc(18 * var(--u));
    margin: 0 0 calc(2 * var(--u));
  }
  .area-lp .reg-form input[type=text],
  .area-lp .reg-form input[type=email],
  .area-lp .reg-form input[type=tel],
  .area-lp .reg-form textarea {
    border-radius: calc(10 * var(--u));
    font-size: calc(18 * var(--u));
  }
  .area-lp .reg-form .must,
  .area-lp .reg-form .optional {
    border-radius: calc(3 * var(--u));
    font-size: calc(12 * var(--u));
    margin-left: calc(15 * var(--u));
  }
  .area-lp .reg-form .ex-txt {
    font-size: calc(12 * var(--u));
  }
  .area-lp .form-btn {
    max-width: calc(350 * var(--u));
  }
  .area-lp .form-btn input[type=submit] {
    border: calc(2 * var(--u)) solid #333;
    border-radius: calc(50 * var(--u));
    box-shadow: calc(2 * var(--u)) calc(2 * var(--u)) 0px rgba(0, 0, 0, 0.4);
    font-size: calc(22 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card {
    box-shadow: 0px 0px calc(10 * var(--u)) rgba(0, 0, 0, 0.2);
  }
  .area-lp .swiper-wrapper .swiper-card .thumbnail {
    margin: 0 auto calc(20 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card h3 {
    font-size: calc(20 * var(--u));
  }
  .area-lp .swiper-wrapper .swiper-card h3 .bg-mcl {
    border-radius: calc(10 * var(--u));
  }
  .area-lp .swiper-wrapper .txt-area p {
    font-size: calc(14 * var(--u));
  }
  .area-lp .swiper-wrapper .txt-area p.review-name {
    font-size: calc(16 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-prev {
    left: calc(-40 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-next {
    right: calc(-40 * var(--u));
  }
  .area-lp .swiper-wrapper .slick-slide {
    margin: 0 calc(10 * var(--u)) !important;
  }
  .area-lp .slick-prev,
  .area-lp .slick-next {
    width: calc(25 * var(--u)) !important;
    height: calc(25 * var(--u)) !important;
  }
  .area-lp .accordion-area {
    max-width: calc(900 * var(--u));
  }
  .area-lp .accordion-area .box {
    font-size: calc(16 * var(--u));
    padding: 1.5em calc(40 * var(--u)) 1em calc(78 * var(--u));
  }
  .area-lp .accordion-area .box p:first-child {
    font-size: calc(20 * var(--u));
  }
  .area-lp .accordion-area li {
    margin: calc(15 * var(--u)) 0;
  }
  .area-lp .title-q {
    border-radius: calc(10 * var(--u));
    font-size: calc(20 * var(--u));
    padding: 1em calc(50 * var(--u)) 0.8em calc(20 * var(--u));
  }
  .area-lp .title-q span {
    padding: 0 0 0 calc(55 * var(--u));
  }
  .area-lp .contact-sup {
    border-radius: calc(4 * var(--u));
    width: calc(960 * var(--u));
    margin: calc(-50 * var(--u)) auto 0;
  }
  .area-lp .contact-tel-box {
    border: calc(2 * var(--u)) solid #0e5a88;
    border-radius: calc(20 * var(--u));
    width: calc(660 * var(--u));
    margin: calc(90 * var(--u)) auto calc(30 * var(--u));
  }
  .area-lp .contact-tel-box .tel-top {
    font-size: calc(14 * var(--u));
  }
  .area-lp .contact-tel-box .tel a {
    font-size: calc(60 * var(--u));
  }
  .area-lp .contact-tel-box .tel .icon {
    padding: 0 0 0 calc(70 * var(--u));
  }
  .area-lp .contact-tel-box .time-txt {
    font-size: calc(18 * var(--u));
  }
  .area-lp .contact-tel-box .time-list li {
    font-size: calc(18 * var(--u));
  }
  .area-lp div.gmap_outer {
    width: calc(100% - calc(590 * var(--u)));
  }
  .area-lp .office-item .txt {
    width: calc(570 * var(--u));
    font-size: calc(18 * var(--u));
  }
  .area-lp .office-item .add {
    font-size: calc(12 * var(--u));
  }
  .area-lp .office-item .indent {
    font-size: calc(12 * var(--u));
  }
}
