@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,600;1,600&family=Poppins:wght@100;600&display=swap');


/*	 Font family
===================================================== */
  /*明朝系*/
  .font-mincho { font-family: var(--font-mincho); }

  /*数字*/
  .font-jost {
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    }

  /*英字*/
  .font-poppins {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: normal;
    }


/*	 Text
===================================================== */
  /*マーカー風の装飾*/
  .c-marker {
    background: url("../img/common/decor_marker.png") no-repeat left bottom;
    background-size: contain;
    padding-bottom: 0.25em;
    padding-left: 0.3em;
    padding-right: 0.3em;
    }

  /*縁取り文字*/
  .c-tit--fuchidori {
    font-family: var(--font-poppins);
    font-weight: 600;
    font-style: normal;
    -webkit-text-stroke: 2px #FFFFFF;
    text-stroke: 2px #FFFFFF;
    letter-spacing: 0.05em;
    color: transparent;
    }
  .c-tit--fuchidori.-brown {
    -webkit-text-stroke: 2px var(--color-brown);
    text-stroke: 2px var(--color-brown);
    }
  .c-tit--fuchidori.-brown-dark {
    -webkit-text-stroke: 2px var(--color-brown-dark);
    text-stroke: 2px var(--color-brown-dark);
    }
  .c-tit--fuchidori.-green {
    -webkit-text-stroke: 2px var(--color-green);
    text-stroke: 2px var(--color-green);
    }

@media (min-width: 1400px) {
  /*縁取り文字+縦書き表示*/
  .c-tit--fuchidori.-vertical {
    writing-mode: vertical-rl;
    line-height: 1;
    margin-left: calc(50% - 48vw);
    position: absolute;
    top: 5rem;
    left: 0;
    }
}

  .text-shadow-beige {
    text-shadow: 0 0 10px var(--color-beige), 0 0 10px var(--color-beige), 0 0 10px var(--color-beige);
    }
  .text-shadow-green {
    text-shadow: 0 0 5px var(--color-green), 0 0 5px var(--color-green);
    }



/*	 Btn
===================================================== */
	.btn {
    font-weight: 700;
		text-decoration: none;
    cursor: inherit;
		}
  .btn:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(13,110,253,1);
    }
  
  .btn-basic {
    padding: 1rem 1.5rem;
    min-width: 85%;
    border-radius: 50rem;
    }
@media (min-width: 768px) {
  .btn-basic {
    min-width: 350px;
    }
}
  
  .btn-orange {
    background-color: var(--color-orange) !important;
    color: #FFFFFF !important;
    }
  .btn-green {
    background-color: var(--color-green) !important;
    color: #FFFFFF !important;
    }
  .btn-green2 {
    background-color: var(--color-green2) !important;
    color: #FFFFFF !important;
    }
  .btn-cyan {
    background-color: var(--color-cyan) !important;
    color: #FFFFFF !important;
    }
  .btn-brown {
    background-color: var(--color-brown) !important;
    color: #FFFFFF !important;
    }
  .btn-outline-brown {
    background-color: #FFFFFF !important;
    color: var(--color-brown) !important;
    border-color: var(--color-brown) !important;
    }
    .btn-outline-brown.current {
      background-color: var(--color-brown) !important;
      color: #FFFFFF !important;
      border-color: #FFFFFF;
      }
  .btn-brown2 {
    background-color: var(--color-brown2) !important;
    color: #FFFFFF !important;
    }
  .btn-brown-dark {
    background-color: var(--color-brown-dark) !important;
    color: #FFFFFF !important;
    }
  .btn-beige {
    background-color: var(--color-beige) !important;
    color: #FFFFFF !important;
    }
  .btn-outline-beige {
    background-color: #FFFFFF !important;
    color: var(--color-beige) !important;
    }
@media (min-width: 992px) {
  .btn {
    border-width: 2px;
    }
  
  .btn-orange:hover {
    background-color: #FFFFFF !important;
    color: var(--color-orange) !important;
    border-color: var(--color-orange);
    }
  .btn-green:hover {
    background-color: #FFFFFF !important;
    color: var(--color-green) !important;
    border-color: var(--color-green);
    }
  .btn-green2:hover {
    background-color: #FFFFFF !important;
    color: var(--color-green2) !important;
    border-color: var(--color-green2);
    }
  .btn-cyan:hover {
    background-color: #FFFFFF !important;
    color: var(--color-cyan) !important;
    border-color: var(--color-cyan);
    }
  .btn-brown:hover {
    background-color: #FFFFFF !important;
    color: var(--color-brown) !important;
    border-color: var(--color-brown);
    }
  .btn-outline-brown:hover {
    background-color: var(--color-brown) !important;
    color: #FFFFFF !important;
    border-color: #FFFFFF;
    }
  .btn-brown2:hover {
    background-color: #FFFFFF !important;
    color: var(--color-brown2) !important;
    border-color: var(--color-brown2);
    }
  .btn-brown-dark:hover {
    background-color: #FFFFFF !important;
    color: var(--color-brown-dark) !important;
    border-color: var(--color-brown-dark);
    }
  .btn-beige:hover {
    background-color: #FFFFFF !important;
    color: var(--color-beige) !important;
    border-color: var(--color-beige);
    }
  .btn-outline-beige:hover {
    background-color: var(--color-beige) !important;
    color: #FFFFFF !important;
    border-color: #FFFFFF;
    }
}

  .arrowBtn-row {
    margin-left: calc(1.5em / 2);
    }
@media (min-width: 992px) {
  .arrowBtn-row i {
    font-size: 1.5em;
    -webkit-transition: all .2s;
		transition: all .2s;
    }
  a:hover .arrowBtn-row i.fa-circle-chevron-right,
  button:hover .arrowBtn-row i.fa-circle-chevron-right {
    transform: translateX(3px);
    }
}



/*	 Card
===================================================== */
  .card {
    border: none;
    }
  .card-footer {
    background-color: inherit;
    padding: 0.5rem 0;
    text-align: right;
    }
  .img-thumbnail {
    padding: 0;
    border: none;
    position: relative;
    overflow: hidden;
    }

  /*【TOP】施工実績*/  
  .card-works {
    max-width: 250px;
    margin-inline: auto;
    }
  .card-works .card-title {
    font-size: 100%;
    font-weight: normal;
    margin-top: 1rem;
    }  

  img.card-img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition-duration: 0.4s;
    }
    img.card-img-square {
      aspect-ratio: 1;
      }
  img.trimming-top { /*トリミングの位置：上*/
    object-position: left top;
    }
  img.trimming-bottom { /*トリミングの位置：下*/
    object-position: left bottom;
    }
  .card .card-title {
    flex: 1 1 auto;
    }
  .card-works .card-footer {
    border-color: var(--color-brown2);
    }
  a.card-moreLink {
    text-decoration: none;
    color: inherit;
    }
@media (min-width: 992px) {
  .card-works {
    background-color: inherit;
    max-width: inherit;
    }
  a.card-moreLink:hover {
    cursor: pointer;
    }
  a.card-moreLink:hover img.card-img {
    transform: scale(1.10, 1.10);
    filter: brightness(70%);
    }
  a.card-moreLink:hover .card-title {
    text-decoration: underline;
    }
}


/*	 Table
===================================================== */
  .table {
    color: inherit;
    margin-bottom: 0;
    }
  .table caption {
    caption-side: top;
    color: inherit;
    padding: inherit;
    }
  .table td, .table th {
    vertical-align: middle;
    }
  .table thead th {
    border-bottom: none;
    }

  .th-text-center th {
    text-align: center;
    }
@media (min-width: 768px) {
  .th-md-text-center th { text-align: center; }
  .th-md-w-20 th { width: 20%; }
  .th-md-w-25 th { width: 25%; }
  .th-md-w-30 th { width: 30%; }
  .table.-th-md-black th { color: inherit; }
}

  .table-layout-responsive th,
  .table-layout-responsive td {
    display: block;
    }
@media (min-width: 768px) {
  .table-layout-responsive th,
  .table-layout-responsive td {
    display: table-cell;
    }
}

  .table-layout-a th,
  .table-layout-a td {
    background-color: inherit;
    }
  .table-layout-a th {
    border-bottom: none;
    padding-bottom: 0.25rem;
    }
  .table-layout-a td {
    border-bottom: solid 1px var(--color-brown2);
    padding-top: 0;
    }

@media (min-width: 768px) {
  .table-layout-a th,
  .table-layout-a td {
    border-bottom: solid 1px var(--color-brown2);
    }
  .table-layout-a th {
    padding: .75rem;
    }
  .table-layout-a td {
    padding: .75rem;
    }
}



/* =====================================================================

	Page Visual
	
======================================================================== */
  .pageVisual {
    position: relative;
    height: 200px;
    background: #fff center center no-repeat;
    background-size: cover;
    margin-bottom: calc(((75 / 1920) * 100%));
    }
  .pageVisual::after {
    display: inline-block;
    content: "";
    background-image: url("../img/common/pageVisual_decor.webp");
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    width: 100%;
    height: 75px;
    position: relative;
    z-index: -1;
    }
  .pageVisual-contents {
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    }

  .pageVisual .pageTitle {
    color: #ffffff;
    text-shadow: 0 0 6px rgba(0,0,0,0.5);
    font-weight: 800;
    }
  .pageVisual .c-tit--fuchidori {
    line-height: 1;
    position: absolute;
    bottom: -8px;
    }
@media (min-width: 992px) {
  .pageVisual {
    height: 420px;
    margin-bottom: 75px;
  	}
  .pageVisual::after {
    background-size: auto;
    width: 100%;
    }
  .pageVisual-contents {
    padding-top: 100px;
    }
  .pageVisual .c-tit--fuchidori {
    bottom: -10px;
    }
}

  .pageVisual-company   { background-image: url(../img/company/pageVisual_company.jpg); }
  .pageVisual-common    { background-image: url(../img/news/pageVisual_news.jpg); }
  .pageVisual-services  { background-image: url(../img/services/pageVisual_services.jpg); }



/* =====================================================================

	Breadcrumb
	
======================================================================== */
  #breadcrumb {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding-left: 0;
    font-size: 90%;
    position: relative;
    z-index: 1;
    }
  #breadcrumb a {
    text-decoration: none;
    color: var(--bs-text-color);
    }
  #breadcrumb a::after {
    content: ">";
    color: var(--bs-text-color);
    padding-left: 0.5em;
    padding-right: 0.5em;
    }
@media (min-width: 992px) {
  #breadcrumb a:hover {
    color: var(--color-orange);
    }
}



/* =====================================================================

	Section Title :: タイトル装飾
	
======================================================================== */

/*	左右にボーダーライン
===================================================== */
  .c-tit-borderline {
    overflow: hidden;
    text-align: center;
    color: var(--color-green);
    font-family: var(--font-poppins);
    font-weight: 600;
    font-style: normal;
    }
    .c-tit-borderline span {
      position: relative;
      display: inline-block;
      padding: 0 10%;
      letter-spacing: 0.1rem;
      font-weight: bold;
      }
    .c-tit-borderline span::before,
    .c-tit-borderline span::after {
      position: absolute;
      top: 50%;
      content: '';
      width: 400%;
      height: 1px;
      background-color: var(--color-green);
      }
    .c-tit-borderline span::before { right: 100%; }
    .c-tit-borderline span::after { left: 100%; }

  .c-tit-borderline.-brown {
    color: var(--color-brown);
    }
  .c-tit-borderline.-brown span::before,
  .c-tit-borderline.-brown span::after {
    background-color: var(--color-brown);
    }

@media (min-width: 992px) {
  .c-tit-borderline {
    max-width: 800px;
    margin-inline: auto;
    }
}

/*	吹き出し（下向き）
===================================================== */
  .c-tit-blowing {
    color: #FFFFFF;
    background-color: var(--color-green);
    text-align: center;
    position: relative;
    margin-bottom: 15px;
    }
  .c-tit-blowing::after {
    content: '';
		position: absolute;
		right: 0;
		bottom: -15px;
		left: 0;
		width: 0px;
		height: 0px;
		margin: auto;
		border-style: solid;
		border-color: var(--color-green) transparent transparent transparent;
    border-width: 15px 15px 0 15px;
    }



/*	 アコーディオン（開閉）パネル　*Bootstrap5
===================================================== */
  .accordion {
    --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z'/%3e%3c/svg%3e");
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 513' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z'/%3e%3c/svg%3e");
    }
  .accordion-button::after {
    margin-left: inherit;
    margin-top: -2px;
    }
  .accordion-item {
    border: none;
    background-color: inherit;
    }



/* =====================================================================

	お知らせ（投稿）
	
========================================================================

/*	 【トップページ】お知らせ
===================================================== */
  .index-news-list {
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: solid 1px #CCCCCC;
    position: relative;
    }
    .index-news-list:first-of-type {
      padding-top: 0.5rem;
      }
  .index-news-list a {
    color: var(--bs-text-color);
    }
  .index-news-date {
    font-weight: bold;
    }
  .index-news-title {
    font-size: inherit;
    font-weight: bold;
    }
@media (min-width: 992px) {
  .index-news-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 2rem;
    padding-right: 2rem;
    }
  .index-news-list a {
    text-decoration: none;
    }
  .index-news-list a:hover {
    color: var(--color-orange);
    text-decoration: underline;
    }
}


/*	 投稿　アーカイブ／シングルページ
===================================================== */

  /* カテゴリーナビゲーション */
  .row-categoryNav {
    list-style: none;
    padding-left: 0;
    grid-row-gap: 1rem;
    }
    .row-categoryNav .btn-basic {
      min-width: 100%;
      padding: 0.75rem;
      }
  
  .post {
    margin-top: 3rem;
    }
  .post-time {
    font-family: var(--font-poppins);
    font-weight: 600;
    font-style: normal;
    display: flex;
    align-items: center;
    line-height: 1;
    }
    .post-time .day {
      font-size: 160%;
      padding: 0.5rem 0 0.5rem 0.5rem;
      margin-left: 0.5rem;
      border-left: solid 1px var(--bs-text-color);
      }
  .cate-tag {
    border-radius: 50rem;
    color: #FFFFFF;
    background-color: var(--color-brown);
    text-align: center;
    font-weight: bold;
    padding: 0.5rem 0.75rem;
    }
  .post-title {
    font-weight: bold;
    color: var(--color-green);
    margin-top: 1rem;
    margin-bottom: 0.75rem;
    }
  .post .card-footer {
    border: none;
    padding: 0;
    text-align: left;
    }

@media (min-width: 992px) {
  .post {
    margin-top: 4rem;
    }  
  a.card-moreLink:hover .post-title {
    text-decoration: underline;
    }
}


/*	 投稿　シングルページ
===================================================== */
  .post-body {
    margin-top: 1.5rem;
    line-height: 1.75;
    }
@media (min-width: 1200px) {
  .post-body {
    max-width: 1000px;
    margin-inline: auto;
    }
}

  .post-body a {
    text-decoration: underline;
    }
  .post-body a:hover {
    opacity: 0.7;
    }

  /* post-body 装飾 */
	.post-body h3, .post-body h4, .post-body h5, .post-body h6 {
    margin-bottom: 0.5rem;
		}
  .post-body p:not(:last-child) {
    margin-bottom: 1rem;
    }
  .post-body blockquote {
    border-left: 4px solid #000;
    background-color: #f8f9fa;
    padding: 1rem 1.5rem;
    }
  .post-body blockquote p {
    margin: 0;
    }
    .post-body blockquote p+p {
      margin-top: 1rem;
      }
  .post-body ul {
    list-style-type: disc;
    margin-left: 1.5rem;
    margin-bottom: 1rem;
    }
  .post-body ol {
    list-style-type: decimal;
    margin-left: 1.5rem;
    margin-bottom: 1rem;
    }
    .post-body ul li+li,
    .post-body ol li+li {
      margin-top: .5rem;
      }


/*	 .wp-pagenavi(ページ送り「PageNavi」プラグイン使用)
     .pagination（シングルページのページ送り）
===================================================== */
  .wp-pagenavi {
    display: flex;
    justify-content: center;
    }
	.wp-pagenavi a,
	.wp-pagenavi span,
  .pagination a {
		text-align: center;
    white-space: nowrap;
    margin: 5px;
    text-decoration: none;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50rem;
    border: solid 1px var(--color-orange);
    background-color: #FFFFFF;
    color: var(--color-orange);
    cursor: pointer;
		}
	.wp-pagenavi span.current {
		background-color: var(--color-orange);
    color: #FFFFFF;
		}
	a.nextpostslink,
	a.prevpostslink {
		background-color: FFFFFF;
		}

  .pagination {
    gap: 0.5em;
    }
  .pagination a,
  a.archivelink {
    width: inherit;
    height: inherit;
    padding: 0.3rem 1.5rem;
    color: inherit;
    }
@media (min-width: 992px) {
	.wp-pagenavi a:hover,
  a.nextpostslink:hover,
  a.prevpostslink:hover {
		background-color: var(--color-orange);
		color: #FFF;
		}
  .pagination a:hover,
  a.archivelink:hover {
    background-color: var(--color-orange);
    }
}




/* =====================================================================

	会社概要
	
======================================================================== */

/*	 代表あいさつ
===================================================== */
  .sec-greeting {
    background: url("../img/company/bg_greeting.jpg") no-repeat right bottom;
    background-size: contain;
    }
  .sec-greeting .card {
    border-radius: 0;
    background-color: transparent;
    }
  .row-greeting dt {
    font-weight: bold;
    font-size: 110%;
    }
@media (max-width: 991.98px) {
  .sec-greeting .container {
    background-color: rgba(255,255,255, 0.7);
    }
  .sec-greeting .card {
    padding: 1rem;
    }
}
@media (min-width: 992px) {
  .sec-greeting {
    height: 915px;
    background-size: cover;
    display: flex;
    align-items: center;
    }
  .sec-greeting .container {
    color: #FFFFFF;
    text-shadow: 0 0 5px #000000,0 0 10px #000000;
    }
  .sec-greeting .card {
    color: #FFFFFF;
    }
  .row-greeting .col + .col {
    border-left: solid 1px #FFFFFF;
    }
}


/*	 会社概要
===================================================== */
  .sec-company {
    background-color: var(--color-beige-light);
    padding-bottom: calc( var(--decor-forest-h) * 1.5 );
    }


/*	 ACCESS MAP
===================================================== */
  .sec-bgGreen {
    background-color: var(--color-green);
    position: relative;
    }
  .sec-bgGreen::before {
    display: inline-block;
    content: "";
    background-image: var(--decor-forest-green);
    background-size: var(--decor-forest-w) var(--decor-forest-h);
    width: var(--decor-forest-w);
    height: var(--decor-forest-h);
    position: absolute;
    top: calc( var(--decor-forest-h) * -1 );
    right: calc(50% - 50vw);
    }


/*	 中間にあるオレンジ背景の案内
===================================================== */
  .sec-middle-announce {
    background-color: var(--color-orange);
    color: #FFFFFF;
    text-align: center;
    position: relative;
		padding-top: 20px;
    }
  .sec-middle-announce::before {
		content: '';
		position: absolute;
		right: 0;
		top: 0;
		left: 0;
		width: 0px;
		height: 0px;
		margin: auto;
		border-style: solid;
		border-color: #FFFFFF transparent transparent transparent;
    border-width: 20px 20px 0 20px;
    }



/* =====================================================================

	フジヤマロガーのおしごと
	
======================================================================== */

/*	 施工までの流れ
===================================================== */
  .dl-flow {
    line-height: 1.75;
    }
  .dl-flow dt {
    color: var(--color-green);
    font-weight: bold;
    border-bottom: solid 1px #CCC;
    margin-bottom: 0.75rem;
    padding-bottom: 0.25rem;
    }
  .flow-payment {
    border: solid 2px var(--color-brown2);
    color: var(--color-brown);
    font-weight: bold;
    border-radius: 5px;
    }

/*	 料金の目安
===================================================== */
  .p-priceCard {
    display: flex;
    background-color: #FFFFFF;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    align-items: center;
    }
  .p-priceCard dt,
  .p-priceCard dd {
    font-weight: bold;
    text-align: center;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding: 0.5rem 0.75rem;
    }
  .p-priceCard dt {
    border-right: solid 1px #CCCCCC;
    }

/*	 対応エリア
===================================================== */
  .sec-area {
    position: relative;
    padding-bottom: calc( var(--decor-forest-h) * 1.5 );
    }
@media (min-width: 1200px) {
  .sec-area {
    background-image: url("../img/services/bg_area.png");
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center center;
    height: 990px;
    }
}
  .p-targetArea {
    line-height: 1.75;
    align-items: center;
    justify-content: center;
    }
  .p-targetArea dt,
  .p-targetArea dd {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    }
  .p-targetArea dt {
    font-weight: bold;
    color: #668863;
    }
  .p-targetArea dd {
    border-left: solid 1px #E6E6E6;
    }

/*	 薪販売
===================================================== */
  .sec-firewood {
    background: url("../img/services/bg_firewood.jpg") no-repeat center bottom;
    background-size: cover;
    }




/* =====================================================================

	お問合せ
	
======================================================================== */
	.badge-must {
		background-color: #C00;
    color: #FFF;
		padding: 2px 6px;
		font-size: 11px;
    font-weight: bold;
		}
	.badge-any {
		background-color: #888;
    color: #FFF;
		padding: 2px 6px;
		font-size: 11px;
    font-weight: bold;
		}

  .form-control {
    border-radius: 0;
    border-color: var(--color-beige-light);
    background-color: var(--color-beige-light);
    font-size: inherit;
    }
  .form-control:focus {
    background-color: var(--color-beige-light);
    }

  .col-form-label {
    font-weight: bold;
    }
  .form-check-input {
    border-color: #CCC;
    }

  /*送信ボタン、キャンセルボタン*/
  button.mfp_element_button {
    border: none;
    outline: none;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    
    padding: 1rem 1.5rem;
    min-width: 85%;
    border-radius: 50rem;
    margin-top: 1.5rem;
    }
  button#mfp_button_send {
    background-color: var(--color-green) !important;
    color: #FFFFFF !important;
    border-color: var(--color-green) !important;
    }
  button#mfp_button_cancel {
    background-color: var(--bs-gray-300) !important;
    color: #000 !important;
    }
@media (min-width: 768px) {
  button.mfp_element_button {
    min-width: 350px;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }
}
@media (min-width: 992px) {
  button.mfp_element_button {
    border: solid 2px #CCC !important;
    }
  button#mfp_button_send:hover {
    background-color: #FFFFFF !important;
    color: var(--color-green) !important;
    }
  button#mfp_button_cancel:hover {
    background-color: #FFF !important;
    }
}

/*エラー文章*/
  #mfp_warning {
    border-width: 2px !important;
    margin-bottom: 2rem;
    text-align: center;
  }
/*エラー時のアラート画像の位置調整
  div.mfp_err {
    font-size: inherit;
    background-position: left center;
  }*/
/*エラー時の背景色*/
  .problem {
    background-color: #FCC !important;
    border-color: #FCC !important;
  }

/*------- 以下、カスタマイズ --------*/
  textarea.form-control {
    width: 100% !important;
    height: 150px !important;
    }

.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
  border: none;
  border-radius: inherit;
  box-shadow: inherit;
}
form#mailformpro label {
  margin: 0;
}
  .mfp_element_submit,.mfp_element_reset,.mfp_element_button,button.mfp_next,button.mfp_prev {
    text-shadow: none;
    /*border-radius: inherit;*/
    background: inherit;
  }
  .mfp_element_submit:hover,.mfp_element_reset:hover,.mfp_element_button:hover,button.mfp_next:hover,button.mfp_prev:hover {
    background: inherit;
    box-shadow: inherit;
  }

	/*確認画面*/
  #mfp_phase_confirm {
    margin-top: 5rem;
    }
	#mfp_phase_confirm_inner h4 {
		margin-bottom: 2rem;
		font-weight: bold;
		}
	#mfp_phase_confirm_inner th,
	#mfp_phase_confirm_inner td {
		font-size: 1.6rem !important;
		padding: 12px !important;
		font-size: 100% !important;
		}
	.mfp_buttons {
		padding: 1.6rem 0 !important;
		}

@media (max-width: 991.98px) {
		#mfp_phase_confirm_inner th,
		#mfp_phase_confirm_inner td {
			display: block !important;
			}
    #mfp_phase_confirm_inner th {
			border-bottom: none !important;
      padding-bottom: 0 !important;
      width: 100% !important;
			}
		#mfp_phase_confirm_inner td {
			border-top: none !important;
			}
}