/*
 Theme Name:   e_ver004 Child
 Description:  e_ver004の子テーマ
 Author:       adminadmin
 Template:     e_ver004
 Version:      1.0.0
*/

/* =============================================
COLOR OPTION（カラーオプション） 
==============================================*/
:root {
	--white: #ffffff;
	--black: #333333;
	--main-black:  #313131;
    --main-blue: #7FAAD0;
    --main-beige: #c1b78c;
    --main-green: #249D57;
    --main-navy: #01355C;
    --main-apricot: #fcbb4e;
    --main-pink:  #f3bdbf;
    --main: #9E2328;
  }

/* =============================================
3BOX（TOP3BOX） 
==============================================*/
/* おすすめポイントの高さ調整 */

.sec-3box .wrapper .box .name { 
/* 	min-height: 70px; */
}
.sec-3box ul li .point {
/*     min-height: 125px; */
}
.sec-3box .wrapper .box .name {
/* 	min-height: 70px; */
}
.sec-3box .wrapper .box .content {
/* 	min-height: 50px; */
}

.recommend-box.default p img{
	margin-bottom: 4rem;
}

.alt-table table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #E5E5E5;
}

.alt-table table th, 
.alt-table table td {
  border: 1px solid #E5E5E5;
  padding: 8px;
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
}

.alt-table table tr td.table_bg{
  background-color: #efefef;
  font-weight: 500;
}

@media (max-width:480px){
  .alt-table table td.table_bg {
      font-size: 1.4rem;
  }

  .alt-table table tbody td {
      font-size: 1.2rem;
  }
}

#contents-1 p + p {
	margin-top: 1.6rem;
}

.mvInner img.mv-logo {
    max-width: 800px;
}

@media screen and (min-width: 1024px) {
    .mvInner img.mv-logo {
        max-width: 1050px;
    }
}
.recommend-box.default p img{
	margin-bottom: 4rem;
}

.alt-table table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #E5E5E5;
}

.alt-table table th, 
.alt-table table td {
  border: 1px solid #E5E5E5;
  padding: 8px;
  text-align: left;
  font-weight: 400;
  line-height: 1.4;
}

.alt-table table tr td.table_bg{
  background-color: #efefef;
  font-weight: 500;
}

@media (max-width:480px){
  .alt-table table td.table_bg {
      font-size: 1.4rem;
  }

  .alt-table table tbody td {
      font-size: 1.2rem;
  }
}

#contents-1 p + p {
	margin-top: 1.6rem;
}

.mvInner img.mv-logo {
    max-width: 800px;
}

@media screen and (min-width: 1024px) {
    .mvInner img.mv-logo {
        max-width: 1050px;
    }
}

/* 施工事例（ギャラリー） */
.splideSlider-title {
    font-size: 18px;
    font-weight: 600;
    padding: 0 0 10px;
    margin: 0 0 16px;
    line-height: 1;
    border-bottom: 1px solid #D6D6D6;
}

/* メイン画像の調整 */
.splide__slide img {
    width: var(--main-slide-size) !important;
    height: auto !important;
    display: block;
    margin: 0 auto;
}

.thumbnails {
  margin: 0 !important;
  padding: 0 !important;
  list-style-type: none !important;
  list-style: none !important;
}

.slick-list {
  position: absolute;
    top: 0;
    left: 0;
  overflow: visible !important;
}

.splide__arrow {
    width: 1em !important;
    height: 1em !important;
    background: transparent !important;
    top: 50% !important;
    transform: translatey(-50%) !important;;
}

.splideSlider-wrapper.row.splide-plans .splide__arrow {
    top: 120px !important;
}

.splide__arrow svg,
.splide__arrow svg {
  color: #999 !important;
}

.splide__arrow--next {
  right: 0 !important;
}

.splide__arrow--prev {
    left: 0 !important;
}

.main-slider .quote {
    display: block;
    font-size: 10px;
    text-align: right;
    line-height: 1;
    margin: 10px 10px 0 auto;
    color: #999;
    cursor: pointer;
    position: relative;
    z-index: 20;
}
.main-slider .quote a {
  color: blue !important;
}

.splideSlider-wrapper.row #main-slider,
.splideSlider-wrapper.row .thumbnails {
    max-width: unset;
}

.splideSlider-wrapper.row .main-slider .splide__slide .img-wrap {
    display: block;
    text-decoration: none !important;
    width: 90%;
    height: 0;
/*  padding-top: 66.717%; */
    padding-top: 60.717%;
    user-select: none;
    max-width: 550px;
    margin: 0 auto;
    position: relative;
}

.subpage .splideSlider-wrapper.row .main-slider .splide__slide .img-wrap,
.single .splideSlider-wrapper.row .main-slider .splide__slide .img-wrap {
    max-width: 400px;
}

.splideSlider-wrapper.row .main-slider .splide__slide img {
    height: 100% !important;
    object-fit: cover;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.splideSlider-wrapper.row .text-wrap {
    margin-top: 16px;
}
.splideSlider-wrapper.row .text-wrap dl{
    display: table;
    padding: 10px 0;
    margin: 0;
    vertical-align: top;
    border-top: 1px solid #d6d6d6;
    width: 100%;
}
.splideSlider-wrapper.row .text-wrap dl:last-child {
    border-bottom: 1px solid #d6d6d6;
}
.splideSlider-wrapper.row .text-wrap dl dt {
    width: 100px;
    display: table-cell;
    vertical-align: top;
    padding: 0;
    margin: 0;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.splideSlider-wrapper.row .text-wrap dl dd {
    max-width: 100%;
    display: table-cell;
    vertical-align: top;
    padding: 0;
    margin: 0;
}
.splideSlider-wrapper.row .text-wrap dl dd p {
    margin: 0 !important;
}
.splideSlider-wrapper.row .text-wrap dl dd p + p{
    margin-top: 10px !important;
}

.splideSlider-wrapper .thumbnails {
    opacity: 1 !important;
    margin: 16px 0 0 !important
}
.splideSlider-wrapper.row .thumbnails{
    display: flex;
    flex-wrap: wrap;
}

.splideSlider-wrapper.row .thumbnails li a{
    display: block;
    height: 0;
    padding-top: 100%;
    position: relative;
    user-select: none;
}
.splideSlider-wrapper.row .thumbnails .thumbnail {
    cursor: pointer;
    opacity: 1 !important;
    position: relative;
    width: 18.464%;
    margin: 1.92% 1.92% 0 0;
    padding: 0 !important;
    border: none !important;
}
.splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(-n+5) {
    margin-top: 0;
}
.splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(5n) {
    margin-right: 0;
}
.splideSlider-wrapper.row .thumbnails .thumbnail img {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

@media (min-width: 768px){
    .splideSlider-wrapper.row {
        display: grid;
        grid-template-columns: 65% 35%;
        grid-template-rows: auto auto;
        align-items: flex-start;
        justify-content: space-between;
    }
    
    .splideSlider-wrapper.row .main-slider {
          grid-column: 1 / 2;
          grid-row: 1 / 2;
    }
    .splideSlider-wrapper .thumbnails {
        grid-column: 2 / 2;
        grid-row: 1 / 2;
        margin: 0 0 0 3% !important;
    }
  .splideSlider-wrapper.row .main-slider .splide__slide .img-wrap {
    width: 100%;
  }
    .splideSlider-wrapper.row .thumbnails li:nth-of-type(1), 
    .splideSlider-wrapper.row .thumbnails li:nth-of-type(2), 
    .splideSlider-wrapper.row .thumbnails li:nth-of-type(3) {
        margin-top: 0 !important;
    }
    .splideSlider-wrapper.row .thumbnails li {
        width: 100px !important;
        height: 100px !important;
    }
   .single .splideSlider-wrapper.row .thumbnails li,
   .subpage .splideSlider-wrapper.row .thumbnails li {
     width: 60px !important;
     height: 60px !important;
  }

    .splideSlider-wrapper.row .thumbnails .thumbnail {
        width: 32.5%;
        margin: 2.25% 2.25% 0 0 !important;
    }
    .splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(-n+5) {
        margin-top: unset;
    }
    .splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(5n) {
        margin-right: unset;
    }
    .splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(-n+3) {
        margin-top: 0 !important;
    }
    .splideSlider-wrapper.row .thumbnails .thumbnail:nth-child(3n) {
        margin-right: 0 !important;
    }
  .splideSlider-wrapper.row.splide-plans .splide__arrow {
    top: 175px !important;
}
}

/* カスタムプロパティ（変数） */
:root {
  --main-slide-size: 100%;
}

.orange_line {
    background: rgba(0, 0, 0, 0) linear-gradient(transparent 0%, #FFE8BB 0%) repeat scroll 0 0;
}

/* 目次の簡略化　企業のみデフォルト表示 */
#toc_container .toc_list_pickuplist .toc-link {
    font-weight: 400;
	border-bottom: 0.1rem solid var(--main);
}

#toc_container .toc_list_pickuplist .toc-link a {
    padding: 1rem 0 1rem 2rem;
    position: relative;
    width: 100%;
}

#toc_container .toc_list_pickuplist .toc-link a:hover {
    text-decoration: underline;
    opacity: 0.5;
    transition: 0.3s;
}

#toc_container .toc_list_pickuplist .toc-link a::before {
	content: "\f054";
	font-family: "Font Awesome 5 Free";
	font-size: 1.2rem;
	font-weight: 900;
	left: 0;
	line-height: 1;
	position: absolute;
	top: calc((100% - 1.2rem) / 2);
	color: var(--sub2);
}


/*スクエア画像のサイズ調整*/
.square-banner{
	margin:40px auto;
	text-align:center;
}
.square-banner img{
	max-width:400px !important;
}

/* ウィジェット内のpタグの上下余白をリセットして調整 */
.custom-box p {
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	line-height: 1.6;
}
/* 見出し直後の余白をさらに詰める */
.custom-box p.heading {
	margin-bottom: 4px !important;
}