@charset "utf-8";
body{background-color:#e8ecf5;}
#mvLead .leadTxt{line-height:2.2;}
#mvLead .leadTxt strong{
	display:block;
	font-weight:normal;
	text-decoration:underline;
	color:#6888b8;
}
.historySec .txtBox p strong{
	font-weight:normal;
	text-decoration:underline;
	color:#6888b8;
}
.historySec .historyFg img{
	max-width:initial;
	overflow:hidden;
}
.historySec .historyTtl{
	display:grid;
	grid-template-columns:auto 1fr;
	grid-template-rows:auto auto;
	line-height:1.0;
}
.historySec .historyTtl > *{display:block;}
.historySec .historyTtl span{
	grid-column:1 / 2;
	grid-row:1 / 3;
	align-self:center;
	background:url("../img/page-history/num-bg.svg") no-repeat center center / contain;
	color:#fff;
	text-align:center;
	vertical-align:middle;
}
.historySec .historyTtl strong{
	grid-column:2 / 3;
	grid-row:1 / 3;
	color:#6888b8;
}
.historySec .historyTtl small{
	grid-column:2 / 3;
	grid-row:2 / 3;
	color:#bfd0ea;
	line-height:1.666;
}
.historySec[data-full] .txtBox{
	margin:0 auto;
	background-color:#e8ecf5;
}
.historySec[data-full] .txtBox{
	position:relative;
	z-index:1;
}
.historySec .txtBox p{line-height:2.111;}
#checkPointBox{
	background:url("../img/page-history/check-bg.png") repeat-x center top;
	background-size:auto 100%;
}
#checkPointBox .inner{
	position:relative;
	margin:0 auto;
	background-color:#fff;
	border-radius:10px;
}
#checkPointBox .aboutList li a{
	color:#d29576;
	text-decoration:none;
}
#checkPointBox .aboutList li a:hover{opacity:0.7;}
#checkPointBox .aboutList li a,
#checkPointBox .aboutList li *{display:block;}
#checkPointBox .aboutList li strong:after{
	content:"";
	display:inline-block;
	background:url(../img/common/slider-next.svg) no-repeat center center / contain;
}
#product{background-color:#f2eae6;}
@media screen and (max-width:1159.999px){
	main > *:not([data-full]){width:80vw;}
	#mvLead{
		margin-bottom:180px;
		text-align:center;
	}
	#mvLead > *{margin:0 auto;}
	#mvLead .leadTtl{width:96px;}
	#mvLead .leadTtl img{margin-top:-35px;}
	#mvLead .leadTxt{
		margin:35px auto 72px;
		font-size:1.6rem;
	}
	.historySec+.historySec{margin-top:56px;}
	.historySec:not([data-full]) .historyFg img{border-radius:10px;}
	.historySec[data-full] .historyFg{
		position:relative;
		width:100vw;
		height:53.333vw;
	}
	.historySec[data-full] .historyFg img{
		width:100%;
		height:100%;
		object-fit:cover;
		object-position:center center;
	}
	.historySec .historyTtl span{
		width:57px;
		height:60px;
		margin-right:12px;
		font-size:2.2rem;
		line-height:6.0rem;
	}
	.historySec .historyTtl strong{
		padding-top:8px;
		font-size:2.2rem;
	}
	.historySec .historyTtl small{
		margin-top:3px;
		font-size:1.2rem;
	}
	.historySec:not([data-full]) .txtBox{margin-top:35px;}
	.historySec[data-full] .txtBox{
		width:93.866vw;
		padding:25px 6.933vw;
		border-radius:10px;
	}
	.historySec[data-full] .historyFg+.txtBox{margin-top:-25px;}
	.historySec .txtBox p{margin-top:24px;}
	#checkPointBox{
		width:100vw;
		padding:140px 0 78px;
		text-align:center;
	}
	#checkPointBox .inner{
		width:80vw;
		margin:0 auto;
		padding:30px 1vw;
	}
	#checkPointBox .menuTtl{
		position:absolute;
		wdth:332px;
		top:-38px;
		left:-14px;
	}
	#checkPointBox .aboutList{
		width:260px;
		margin:0 auto;
	}
	#checkPointBox .aboutList li{width:100%;}
	#checkPointBox .aboutList li+li{margin-top:30px;}
	#checkPointBox .aboutList li a{display:block;}
	#checkPointBox .aboutList li span{
		margin-top:13px;
		color:#707070;
		line-height:1.4;
		font-size:1.1rem;
	}
	#checkPointBox .aboutList li strong{
		margin-top:14px;
		font-size:1.6rem;
	}
	#checkPointBox .aboutList li strong:after{
		width:18px;
		height:18px;
		margin-left:10px;
		vertical-align:-2px;
	}
}
@media screen and (min-width:1160px){
	main > *:not([data-full]){width:1140px;}
	#mvLead{
		display:flex;
		justify-content:space-between;
		padding-left:118px;
		margin-bottom:180px;
	}
	#mvLead .leadTtl{width:164px;}
	#mvLead .leadTtl img{margin-top:-135px;}
	#mvLead .leadTxt{
		flex-grow:1;
		padding:73px 136px 0 80px;
		font-size:2.0rem;
	}
	.historySec+.historySec{margin-top:170px;}
	.historySec:not([data-full]){
		display:flex;
		justify-content:space-between;
	}
	.historySec[data-dir="right"]{flex-direction:row-reverse;}
	.historySec:not([data-full]) .historyFg{width:480px;}
	.historySec:not([data-full]) .historyFg img{
		width:600px;
		border-radius:16px;
	}
	.historySec[data-dir="right"] .historyFg img{margin-right:-120px;}
	.historySec[data-dir="left"] .historyFg img{margin-left:-120px;}
	.historySec:not([data-full]) .txtBox{width:660px;}
	.historySec[data-full] .txtBox{
		width:1140px;
		padding:30px 70px;
		border-radius:18px;
	}
	.historySec[data-full] .historyFg+.txtBox{margin-top:-88px;}
	.historySec[data-full] .txtBox+.historyFg{margin-top:-120px;}
	.historySec[data-dir="right"] .txtBox{padding-right:110px;}
	.historySec[data-dir="left"] .txtBox{padding-left:62px;}
	.historySec .historyTtl span{
		width:95px;
		height:102px;
		margin-right:25px;
		font-size:4.0rem;
		line-height:10.2rem;
	}
	.historySec .historyTtl strong{
		padding-top:16px;
		font-size:3.6rem;
	}
	.historySec .historyTtl small{
		margin-top:18px;
		font-size:2.0rem;
	}
	.historySec .txtBox p{
		margin-top:58px;
		font-size:1.8rem;
	}
	#history06 .historyFg,
	#history06 .historyFg img{padding:0 80px;}
	#history06 .historyFg img{
		max-width:1760px;
		border-radius:18px;
	}
	#history06 .txtBox{
		position:relative;
		padding-right:244px;
	}
	#history06 .txtBox:after{
		content:"";
		display:block;
		width:333px;
		height:267px;
		position:absolute;
		right:-129px;
		bottom:-72px;
		background:url("../img/page-history/history-point-logo.png") no-repeat;
	}
	#checkPointBox{
		width:100%;
		padding:252px 0 164px;
		padding-right:calc(50% - 590px);
		padding-left:calc(50% - 590px);
	}
	#checkPointBox .inner{
		width:1140px;
		margin-top:100px;
		padding:30px 35px;
	}
	#checkPointBox .menuTtl{
		position:absolute;
		wdth:420px;
		top: -60px;
		left:-20px;
	}
	#checkPointBox .aboutList{
		display:flex;
		justify-content:space-between;
	}
	#checkPointBox .aboutList li{width:500px;}
	#checkPointBox .aboutList li a{display:table;}
	#checkPointBox .aboutList li a > *{
		display:table-cell;
		text-align:left;
		vertical-align:middle;
	}
	#checkPointBox .aboutList li .txtBox{padding-left:30px;}
	#checkPointBox .aboutList li span{
		color:#707070;
		line-height:1.4;
		font-size:1.2rem;
	}
	#checkPointBox .aboutList li strong{
		margin-top:14px;
		font-size:2.0rem;
	}
	#checkPointBox .aboutList li strong:after{
		width:24px;
		height:24px;
		margin-left:6px;
		vertical-align:-2px;
	}
}