@charset "UTF-8";

/**************************************************************
* フォント初期化
**************************************************************/

/* @font-face {} */


/**************************************************************
* カスタムプロパティ
**************************************************************/

:root {
  --base-background-color: #dddddd;
  --base-inverted-color: #dddddd;
  --accent-color-1: #001722;
  --accent-color-2: #023a6e;
  --accent-color-3: #95aeba;
  --base-color: var(--accent-color-1);
  --alphabetic-font-family: "Poppins", "Arial", sans-serif;
  --base-font-size: 16; /* default mid-desktop (1200px) */
  --base-bg: #ededed url(../images/common/noise_bg.png);
  --form-control-bg: #ffffff;
  --form-control-readonly-bg: #dfdfdf;
}

@media all and (min-width: 768px) and (max-width: 1279px) {
  :root {
    --base-font-size: 14;
  }
}
@media all and (min-width: 640px) and (max-width: 767px) {
  :root {
    --base-font-size: 16;
  }
}
@media all and (max-width: 639px) {
  :root {
    --base-font-size: 14;
  }
}
@media all and (max-width: 374px) {
  :root {
    --base-font-size: 12;
  }
}


/**************************************************************
* フォームリセット
**************************************************************/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid transparent;
  -webkit-text-fill-color: #000000;
  -webkit-box-shadow: 0 0 0px 1000px　#ffffff inset;
  box-shadow: 0 0 0px 1000px #ffffff inset;
  transition: background-color 5000s ease-in-out 0s;
}

input:-webkit-autofill:read-only,
textarea:-webkit-autofill:read-only,
select:-webkit-autofill:read-only,
input[type="text"]:not(#acceptance):read-only,
input[type="tel"]:not(#acceptance):read-only,
input[type="email"]:not(#acceptance):read-only,
textarea:not(.privacy-textarea):read-only {
  border-color: transparent;
  -webkit-text-fill-color: #000000;
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
  box-shadow: 0 0 0px 1000px #ffffff inset;
  transition: background-color 5000s ease-in-out 0s;
}

/* //MEMO
    特定の入力フォームのデザインを変更する場合は、以下のCSSを使用してフォームの入力部分をカスタマイズします。
.c-form-control__input,
.c-form-control__textarea {
  color: #000000 !important;
  background: #ffffff !important;
}
*/



/**************************************************************
* SPLIDE (Carousel) CORE STYLES
**************************************************************/
@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}

.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}
.splide__pagination{bottom:1.5em;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ffffff;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#ffffff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #999999;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #999999;outline-offset:3px}


/**************************************************************
* 背景画像の指定
**************************************************************/

/** 共通
************************************************************ */

.free-btn-icn {
  background-image: url("../images/common/tel_icn.svg");
}

/** MV
************************************************************ */
.mv-body__block.has-bg::before {
  background-image: url(../images/main-visual/second_block_visual_bg.jpg);
}

/** BUILDING
************************************************************ */
.building-data .update-status::before {
  background-image: url(../images/common/update_icn.svg);
}

.building-carousel__arrow {
  background-image: url(../images/common/carrousel_1_arrow_icn.svg);
}

/** BUSINESS
************************************************************ */
.business::before {
  background-image: url(../images/business/slide_1_cover_bg.jpg);
  background-image: url(../images/business/slide_2_cover_bg.jpg);
  background-image: url(../images/business/slide_3_cover_bg.jpg);
}
.business[class*="is-slide-1"]::before {
  background-image: url(../images/business/slide_1_cover_bg.jpg);
}
.business[class*="is-slide-2"]::before {
  background-image: url(../images/business/slide_2_cover_bg.jpg);
}
.business[class*="is-slide-3"]::before {
  background-image: url(../images/business/slide_3_cover_bg.jpg);
}

/** MERITS
************************************************************ */
.merit-item__numb::after {
  background-image: url(../images/merits/point_bg.svg);
}

.merits-list li:nth-child(1) .merit-item__visual {
  background-image: url(../images/merits/item_1_visual_bg.jpg);
}
.merits-list li:nth-child(2) .merit-item__visual {
  background-image: url(../images/merits/item_2_visual_bg.jpg);
}
.merits-list li:nth-child(3) .merit-item__visual {
  background-image: url(../images/merits/item_3_visual_bg.jpg);
}

/** CONTACT
************************************************************ */
.contact {
  background-image: url(../images/contact/bg.jpg);
}