@charset "UTF-8";
/* ----- フッターのスタイル ----- */

.l-footer {
	margin-top: 15%;
	font-size:var(--f-size-s);

	/* フッター上部 */
	.l-footer__top {
		background: var(--color-white);
		font-size: var(--f-size-xs);
		padding: 0;
	}

	.l-footer__inner.u-container {
		width: 100%;
		max-width: 100%;    
		margin: 0;
	}

	.l-footer__top-item {
		width: 100%;
	}

	.l-footer__top-item:nth-child(2) {
		margin: 0;
	}

	.l-footer__top-title {
		text-align: center;
		border-bottom: 1px solid #D6D6D6;
		padding-bottom: 4px;
		margin-bottom: 20px;
		display: none;
	}

	.l-footer__toggle-title {
		display: block;
		position: relative;
		margin: 0;
		padding: 12px 20px 10px;
		font-size: 14px;
		font-weight: normal;
		color: #594C3E;
		border-bottom: 1px solid #EDEAE0;
		background: #F8F8F5;
		cursor: pointer;
	}

	.l-footer__toggle-title:after {
		content: "";
		position: absolute;
		right: 20px;
		top: 42%;
		transition: all 0.2s ease-in-out;
		display: block;
		width: 8px;
		height: 8px;
		border-top: solid 2px #BFB193;
		border-right: solid 2px #BFB193;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}

	.l-footer__toggle-title.is-open:after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 45%;
	}

	.l-footer__top-content{
		display: none;
		padding: 20px 3%;
	}
	
	.l-footer__banner-text{
		display:none;
		font-size: 14px;
		line-height: 160%;
		font-weight: bold;
	}
	
	.l-footer__banner-main-text {
		font-size: 18px;
		font-weight: 700;
		line-height: 160%;
		&::before {
			content: none;
		}
	}
	
	.l-footer__tel-number{
		background: url("../images/common/fIcon01.png") no-repeat left center;
		background-size: 15px auto;
		font-size: 20px;
		margin-top: -5px;
		padding-left: 18px;
	}

	.l-footer__inquiry-link{
		background: url("../images/common/fIcon02.png") no-repeat left center;
		padding-top: 2px;
		padding-left: 30px;
	}
	
	.l-footer__inqest-link{
		background: url("../images/common/fIcon03.png") no-repeat left center;
		padding-top: 3px;
		padding-left: 30px;
		margin: 10px 0;
	}
	
	.l-footer__faq-link {
		background: url("../images/common/fIcon04.png") no-repeat left center;
		padding-top: 3px;
		padding-left: 30px;
	}

	.l-footer__trust.u-mt-20.u-mt-sm-10{
		margin-top: min(2.60vw, 20px) !important;
	}

	.l-footer__trust-list {
		display: flex;
		align-items: center;
	}

	.l-footer__trust-item {
		width: auto;
		img{
			height: min(8vw, 60px);
		}
	}
	.l-footer__trust-image {
		height: min(8vw, 60px);
	}
	
	.l-footer__trust p.u-mt-20{
		font-size: clamp(10px, 1.56vw, 12px); !important;
		margin-top: min(1.30vw, 10px) !important;
	}

	/* フッター下部 */
	.l-footer__bottom {
		background: #1a1a1a;
		padding: 50px 0;
		border-top: 1px solid #000;
	}

	.l-footer__bottom a {
		color: #D1D1D1;
		text-decoration: none;
	}

	.l-footer__index {
		position: relative;
		overflow: hidden;
		display: none;
	}

	.l-footer__index-list {
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		width:100%;
		max-width:830px;
		margin:0 auto;
	}

	.l-footer__index-item {
		flex: 0 0 auto;
	}

	.l-footer__index-sub-list {
		overflow: hidden;
	}

	.l-footer__index-sub-item {
		position: relative;
		padding-left: 15px;
		margin-bottom: 15px;
		line-height: 140%;
	}

	.l-footer__index-sub-item:last-child {
		margin-bottom: 0;
	}

	.l-footer__index-sub-item::after {
		content: "";
			position: absolute;
			left: 0;
			top: 50%;
			margin-top: -3px;
			transition: all .2s;
			width: 5px;
			height: 5px;
			border-top: solid 1px #fff;
			border-right: solid 1px #fff;
			transform: rotate(45deg);
	}

	.l-footer__index-sub-item:hover::after {
		left: .3em;
	}

	.l-footer__index-sub-link:hover{
		opacity: .7;
	}

	.l-footer__bottom-logo {
		margin: 0 auto;
		width: 100%;
		max-width: 266px;
	}

	.l-footer__bottom-logo img {
		width: 100%;
	}

	.l-footer__copyright {
		background: #000;
		color: #fff;
		text-align: center;
		border-top: 1px solid #000;
		padding: 10px;
	}

	@media (min-width: 751px) {
		.l-footer__top {
			background: var(--color-bg);
			padding: 40px 0;
		}
		
		.l-footer__inner.u-container{
			max-width: 90%;
			margin: auto;
			overflow: hidden;
		}
		
		.l-footer__top-list {
			display:flex;
		}
		
		.l-footer__top-item {
			width: 31.333%;
		}
		
		.l-footer__top-item:nth-child(2) {
			margin: 0 3%;
		}
		
		.l-footer__top-title {
			display: block;
		}
		
		.l-footer__toggle-title {
		  display: none;
		}
		
		.l-footer__top-content{
		    display: block;
		    padding: 0;
		}
		
		.l-footer__banner-text{
			display: block;
			font-size: 16px;
		}
		
		.l-footer__index {
			display: block;
		}
		
		.l-footer__bottom-logo {
			margin: 50px auto 0;
		}
	}
	
	@media screen and (min-width:751px) {
		.l-footer__banner-text{
			disply:block;
		}
		
		.l-footer__banner-main-text {
			font-size: 30px;
			line-height: 110%;
			position: relative;
			padding: 5px 0 0 60px;
			margin-top: 5px;
			&::before {
				content: url("../images/common/truck.png");
				position: absolute;
				left: 0;
				top: 0;
			}
		}
		
		.l-footer__trust-list{
			column-gap: min(1.7vw, 20px);
			.l-footer__trust-image {
				width:auto;
				height: min(5vw, 60px);
			}
		}
	}
	
	@media screen and (min-width:769px) {
		.l-footer__trust.u-mt-20.u-mt-sm-10{
			margin-top: min(1.67vw,20px) !important;
		}
		.l-footer__trust p.u-mt-20{
			font-size: clamp(10px, 1vw, 12px) !important;
			margin-top: min(.83vw, 10px) !important;
		}
	}
	
	@media screen and (min-width:751px) {
		.l-footer__trust-list{
			column-gap: min(1.7vw, 20px);
			.l-footer__trust-image {
				width:auto;
				height: min(5vw, 60px);
			}
		}
	}
	
	@media screen and (min-width:851px) {
		.l-footer__index-item:nth-child(2) {
			margin: 0;
		}
	}

	@media (min-width: 901px) {
		margin-top: 100px;
		
		.l-footer__top {
			font-size: 14px;
			padding: 50px 0;
		}
		
		.l-footer__top-item {
			width: 31%;
		}
		
		.l-footer__top-item:nth-child(2) {
			margin: 0 3.5%;
		}
		
		.l-footer__tel-number{
			background-size: auto;
			font-size: 26px;
			margin-top: -11px;
			padding-left: 25px;
			padding-bottom: 4px;
		}
		
		.l-footer__inquiry-link{
			padding-top: 0;
		}
		
		.l-footer__inqest-link{
			padding-top: 0;
		}
		
		.l-footer__faq-link {
			padding-top: 0;
		}
		.l-footer__top-title {
			display: block;
		}
	}
	
	@media screen and (min-width: 1281px) {
		.l-footer__inner.u-container {
			max-width: 1200px;
		}
	}
}
