/*=============================================================
 what
=============================================================*/
.container img{max-width: 100%;}
.only-pc{display: none;}
.only-sp{display: block;}
.mAuto{margin: 0 auto;}
@media only screen and (min-width: 769px) {
	.only-pc{display: block;}
	.only-sp{display: none;}
}
/* l-wrapper */
.l-wrapper{
	background: url("/public/images/what-bg.png") no-repeat;
	background-position: top 40px right -20px;
	background-size: 140%;
}
@media only screen and (min-width: 769px) {
	.l-wrapper{
		background-position: top 40px right -20px;
		background-size: 100%;
	}
}
/* ttl-h2 */
.ttl-h2{
	font-size: 24px;
	margin: 50px 0 20px;
	font-weight: 500;
	line-height: 1.2;
	color: #646464;
}
.color-red{color: #e90011;}
@media only screen and (min-width: 769px) {
	.ttl-h2{
			font-size: 26px;
			margin: 80px 0 20px;
	}
}
/* list-philosophy */
.list-philosophy{
	display: flex;
	flex-wrap: wrap;	
	gap: 15px 6px;
	margin-top: 30px;
}
.list-philosophy dt{width: 80px;}
.list-philosophy.sizeL dt{width: 110px;}
.philosophy-l dt{width: auto;}
.list-philosophy dt span{
	font-size: 14px;
	line-height: 1.2;
	padding: 5px 7px;
	box-sizing: border-box;
	display: block;
	text-align: center;
	width: 100%;
	background-color: #865b2a;
	border-radius: 50px;
	color: #fff;
}
.list-philosophy dd{
	font-size: 15px;
	line-height: 30px;
	width: 100%;
}
.list-philosophy.sizeL dd,
.philosophy-l dd{width: inherit;}
.list-philosophy .list-philosophy-blod,
.list-philosophy .list-philosophy-blod p{
	font-size: 16px;
	font-weight: 500;
}
@media only screen and (min-width: 769px) {
	.list-philosophy{
		gap: 15px 12px;
		margin-top: 24px;
	}
	.list-philosophy dt span{
		font-size: 15px;
	}
	.list-philosophy dt{width: 85px;}
	.list-philosophy.sizeL dt{width: 120px;}
	.list-philosophy dd{
		font-size: 16px;
		line-height: 30px;
		width: calc((99.6% - 97px));
	}
	.list-philosophy.sizeL dd{width: calc((99.6% - 132px));}
}
/* col-graph */
.col-graph{
	display: block;
	margin-top: 35px;
}
.col-graph>*{width: 100%;}
.col-graph>* + *{margin-top: 20px;}
@media only screen and (min-width: 769px) {
	.col-graph{
		display: flex;
		gap:20px 180px;
		margin-top: 35px;
	}
	.col-graph>*{width: calc((100% - 180px) / 2);}
	.col-graph>* + *{margin-top: 0;}
}

/* sp-scroll */
.sp-scroll{
	overflow: auto;
	table-layout: auto;
	-webkit-overflow-scrolling: touch;
	position: relative;
	z-index: 2;
}
.sp-scroll .arwSc {
	background: url("/public/images/table-arw.png") no-repeat 0 0 / auto 139px;
	width: 139px;
	height: 139px;
	margin: -50px 0 0 -50px;
	position: absolute;
	top: calc(50%);
	left: 50%;
	z-index: 2;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	transition: opacity 0.2s ease-out;
}
.sp-scroll.sc .arwSc{
	opacity:0.4;
	visibility:visible;
}
.sp-scroll>figure{width: 800px;}
@media only screen and (min-width: 769px) {
	
}
/* list-banner */
.list-banner{
	display: flex;
	gap:20px;
	margin: 50px 0 125px; 
}
.list-banner>*{width: calc((100% - 40px) / 3);}

/* footer-banner */
.footer-banner{
	background: #f1ede4;
	padding: 68px 0 68px;
	box-sizing: border-box;
}
.footer-banner .list{
	display: flex;
	flex-direction: column;
	text-align: center;
	max-width: 1040px;
	margin: 0 auto;
}
.footer-banner .list .item{
	width: 100%;
	margin-right: 0;
	transition: all .4s;
	margin-bottom: 51px;
}
.footer-banner .list .item img{max-width: 100%;}
.footer-banner .list .item .box{margin-top: 14px;}
.footer-banner .list .item p.btn-m{
	display: inline-block;
	position: relative;
	padding-left: 35px;
	font-size: 20px;
	color: #654a2f;
	letter-spacing: .025em;
  line-height: 1.4;
  text-align: left;
}
@media only screen and (min-width: 769px) {
	.footer-banner .list{
		display: flex;
		flex-direction: row;
		text-align: left;
	}
	.footer-banner .list .item{
		width: calc((100% - 54px) / 4);
		margin-right: 18px;
		margin-bottom: 0;
	}
	.footer-banner .list .item:not(:last-of-type){margin-bottom: 0;}
	.footer-banner .list .item:last-of-typ{margin-right: 0;}
	.footer-banner .list .item:hover p.btn-m{
		color: #e60020;
		transition: all .4s;
	}
}

.footer-banner .list .item .btn-m::before{
	position: absolute;
	content: "";
	display: block;
	background-color: #e60020;
	border-radius: 100px;
	left: 0;
	top: 1px;
}

.footer-banner .list .item .btn-m::before{
  width: 25px;
  height: 25px;
}

.footer-banner .list .item .btn-m::after{
	position: absolute;
	content: "";
	display: block;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	top: 11px;
	transform: rotate(45deg);
	z-index: 1;
}
@media only screen and (min-width: 769px) {
.footer-banner .list .item .btn-m::before{
  top: 2px;
  transform: translateY(0);
}
.footer-banner .list .item a:hover .btn-m::before{
  background-color:#fff;
  border:2px solid #e60020;
}
.footer-banner .list .item a:hover .btn-m::after{
	border-top: 1px solid #e60020;
	border-right: 1px solid #e60020;
}
}
.footer-banner .list .item .btn-m::after{
	width: 6px;
	height: 6px;
	left: 8.5px;
}
@media only screen and (min-width: 769px) {
.footer-banner .list .item .btn-m::after{
  top: 11px;
}
}