@charset "utf-8";
/* CSS Document */

.cate1 .boxwrap .box:not(:last-of-type){
	margin-bottom: 60px;
}
.cate1 .boxwrap .box .imgbox{
	width: 50%;
}
.cate1 .boxwrap .box .txtbox{
	width: 50%;
	padding-left: 5%;
}

.cate2{
	background-color: #F0F4F7;
}
.cate2 .boxwrap{
	align-items: flex-start;
	gap: 50px;
}
.cate2 .boxwrap .box{
	width: calc(100% / 3 - 100px / 3);
	gap: 20px;
}

.cate3 .boxwrap .box{
	align-items: stretch;
}
.cate3 .boxwrap .box h3,.cate3 .boxwrap .box > div{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: flex-start;
	flex-direction: column;
	padding: 25px 10px;
}
.cate3 .boxwrap .box:first-of-type h3,.cate3 .boxwrap .box:first-of-type > div{
	padding-top: 0;
}
.cate3 .boxwrap .box h3,.cate3 .boxwrap .box p{
	font-size: clamp(14px,1.6vw,18px);
}
.cate3 .boxwrap .box h3{
	width: 30%;
	border-bottom: 1px solid #9F9F9F;
}
.cate3 .boxwrap .box > div{
	width: 70%;
	border-bottom: 1px solid #D8D8D8;
}

.cate_wrap .cate4{
	overflow: hidden;
}
.cate_wrap .cate4 .boxwrap{
	justify-content: space-between;
	align-items: flex-start;
}
.cate_wrap .cate4 .boxwrap .box:not(:last-of-type){
	margin-bottom: 80px;
}
.cate_wrap .cate4 .boxwrap .txtbox {
	width: 60%;
}
.cate_wrap .cate4 .boxwrap .txtbox h2{
	padding: 30px 0 20px;
}
.cate_wrap .cate4 .boxwrap .imgbox {
	width: 30%;
	position: relative;
	z-index: 3;
}
.cate_wrap .cate4 .txtbox .namebox{
	padding: 20px 0;
	gap: 10px 30px;
	position: relative;
	margin-bottom: 30px;
}
.cate_wrap .cate4 .txtbox .namebox p{
	position: relative;
	z-index: 2;
	color: #fff;
}
.cate_wrap .cate4 .txtbox .namebox::after{
	content: "";
	position: absolute;
	width: 200vw;
	left: -100%;
	top: 0;
	height: 100%;
	background-color:#0E0E0F;
}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
	.cate2 .boxwrap{
		gap: 40px;
	}
	.cate2 .boxwrap .box{
		width: calc(100% / 3 - 80px / 3);
		gap: 20px;
	}
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
	.cate2 .boxwrap{
		gap: 30px;
	}
	.cate2 .boxwrap .box{
		width: calc(100% / 3 - 60px / 3);
		gap: 20px;
	}
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.cate1 .boxwrap .box:not(:last-of-type){
		margin-bottom: 50px;
	}
	.cate_wrap .cate4 .boxwrap .txtbox {
		width: 65%;
	}
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.cate1 .boxwrap .box:not(:last-of-type){
		margin-bottom: 40px;
	}
	.cate1 .boxwrap .box .imgbox{
		width: 100%;
		margin-bottom: 20px;
	}
	.cate1 .boxwrap .box .txtbox{
		width: 100%;
		padding-left: 0;
	}
	.cate2 .boxwrap{
		gap: 40px;
	}
	.cate2 .boxwrap .box{
		width: 100%;
		gap: 15px;
	}
	
	.cate3 .boxwrap .box h3{
		width: 100%;
		padding: 10px 5px;
		border-bottom: 1px solid #D8D8D8;
	}
	.cate3 .boxwrap .box > div{
		width: 100%;
		padding: 10px 5px;
		border-bottom: 1px solid #9F9F9F;
	}
	.cate3 .boxwrap .box:first-of-type > div{
		padding-top: 15px;
	}
	.cate_wrap .cate4 .boxwrap{
		justify-content: center;
	}
	.cate_wrap .cate4 .boxwrap .txtbox {
		width: 100%;
	}
	.cate_wrap .cate4 .boxwrap .txtbox h2{
		padding: 30px 20px 20px;
	}
	.cate_wrap .cate4 .boxwrap .imgbox {
		width: 60%;
		margin-bottom: 20px;
	}
	.cate_wrap .cate4 .txtbox .namebox{
		gap: 10px 20px;
		padding: 20px;
		margin-bottom: 0;
	}
	.cate_wrap .cate4 .boxwrap .box:not(:last-of-type){
		margin-bottom: 60px;
	}
}

/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}
.shoplist_section {
  padding: 0 20px;
}

.shoplist_inner {
  width: 100%;
  max-width: 1164px;
  margin: 0 auto;
}

.shoplist_head {
  margin-bottom: 24px;
}

.shoplist_title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4;
  color: #131313;
}

.shoplist_table {
  width: 100%;
  border-top: 1px solid #dbdbdb;
  border-left: 1px solid #dbdbdb;
}

.shoplist_row {
  display: flex;
  width: 100%;
}

.shoplist_cell {
  background: #f5f5f5;
  border-right: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
  padding: 18px 20px;
  box-sizing: border-box;
}

.shoplist_cell p {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #131313;
  font-weight: 600;
  word-break: break-word;
}

.shoplist_row_head .shoplist_cell {
  background: #21374f;
}

.shoplist_row_head .shoplist_cell p {
  color: #fff;
}

.shoplist_pref {
  width: 15.4639%;
}

.shoplist_name {
  width: 27.4055%;
}

.shoplist_tel {
  width: 19.1589%;
}

.shoplist_address {
  width: 26.8900%;
}

.shoplist_install {
  width: 11.0817%;
}

.shoplist_tel a {
  display: inline-block;
  text-decoration: none;
}

.shoplist_tel a p {
  color: #131313;
}

.shoplist_sp_label {
  display: none;
}

.shoplist_pref_sp {
  display: none;
}

.shoplist_pref_pc.is-empty-pref {
  min-height: 1.6em;
}

@media screen and (max-width: 1280px) {
  .shoplist_section {
    padding: 0 16px;
  }

  .shoplist_title {
    font-size: 28px;
  }

  .shoplist_cell {
    padding: 16px 18px;
  }
}

@media screen and (max-width: 1080px) {
  .shoplist_title {
    font-size: 24px;
  }

  .shoplist_cell {
    padding: 14px 16px;
  }

  .shoplist_cell p {
    font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .shoplist_table {
    border: none;
  }

  .shoplist_row {
    display: block;
    margin-bottom: 16px;
    border: 1px solid #dbdbdb;
  }

  .shoplist_row_head {
    display: none;
  }

  .shoplist_cell {
    width: 100%;
    border-right: none;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
  }

  .shoplist_sp_label {
    display: block;
    width: 88px;
    min-width: 88px;
    color: #21374f !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;
  }

  .shoplist_pref_pc {
    display: none;
  }

  .shoplist_pref_sp {
    display: block;
    flex: 1;
  }

  .shoplist_cell > p:last-child,
  .shoplist_cell > a,
  .shoplist_cell > a p {
    flex: 1;
  }

  .shoplist_install.is-empty {
    display: none;
  }
}

@media screen and (max-width: 576px) {
  .shoplist_section {
    padding: 0 12px;
  }

  .shoplist_head {
    margin-bottom: 18px;
  }

  .shoplist_title {
    font-size: 22px;
  }

  .shoplist_row {
    margin-bottom: 12px;
  }

  .shoplist_cell {
    padding: 12px;
    gap: 12px;
  }

  .shoplist_cell p {
    font-size: 12px;
  }

  .shoplist_sp_label {
    width: 78px;
    min-width: 78px;
    font-size: 12px !important;
  }
}