@charset "UTF-8";
/*----------------------------------------

	index CSS

	- common
	- block01

-----------------------------------------*/

/*----------------------------------------
	common
-----------------------------------------*/
#headline {
	background-image: url("../../../img/about/headline_bg01s.jpg");
}
@media print, screen and (min-width:768px) {
	#headline {
		background-image: url("../../../img/about/headline_bg01.jpg");
	}
}

/*----------------------------------------
	block01
-----------------------------------------*/
.block01 .bg {
	padding: 40px 15px 50px;
	background: #fefcda;
}
.block01 .box01 h2 {
	margin: 0 0 15px;
}
.block01 .box02 {
	margin: 0 0 40px;
}
.block01 .box02 figure {
	width: 96%;
	margin: 0 auto 30px;
}
.block01 .box02 .txt {
	position: relative;
	z-index: 1;
	padding: 38px 25px 32px;
	border-radius: 10px;
	background: #fac906;
}
.block01 .box02 .txt::before {
	content: '';
	display: block;
	position: absolute;
	z-index: -1;
	top: 10px;
	bottom: 10px;
	left: 10px;
	right: 10px;
	background: #fff;
	border-radius: 10px;
}
.block01 .box02 .txt::after {
	content: '';
	position: absolute;
	top: -66px;
	right: 0;
	width: 60px;
	height: 66px;
	background: url("../../../img/about/mascot/i_01_p02.png") 0 0 no-repeat;
	background-size: contain;
}
.block01 .box02 .txt > p {
	margin: 0 0 13px;
	line-height: 1.7;
}
.block01 .box02 .txt > ul > li {
	display: flex;
	align-items: flex-start;
	margin: 0 0 10px;
}
.block01 .box02 .txt > ul > li > p:nth-child(1) {
	width: 70px;
	margin: 0 10px 0 0;
	background: #f56600;
	border-radius: 100px;
}
.block01 .box02 .txt > ul > li > p:nth-child(2) {
	flex: 1;
}
.block01 .box03 {
	margin: 0 0 90px;
}
.block01 .box03 > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 30px;
}
.block01 .box03 > ul > li {
	width: calc(50% - 20px);
	margin: 0 5px 20px;
}
.block01 .box03 .c-btn01 {
	margin: 0 auto;
}
.block01 .box04 {
	padding: 30px 19px 50px;
	border: 1px solid #222;
	border-radius: 10px;
	background: #fff;
}
.block01 .box04 > h3 {
	position: relative;
	margin: 0 0 20px;
}
.block01 .box04 > h3::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	width: 100%;
	border-bottom: 1px solid #222;
}
.block01 .box04 > h3 > span {
	display: block;
	position: relative;
	width: 190px;
	margin: 0 auto;
	padding: 0 20px;
	background: #fff;
}
.block01 .box04 > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 30px;
}
.block01 .box04 > ul > li {
	width: calc(50% - 5px);
	margin: 0 0 10px;
}
.block01 .box04 .c-btn01 {
	margin: 0 auto;
}
@media print, screen and (min-width:768px) {
	.block01 {
		padding: 50px 0 0;
	}
	.block01 .bg {
		padding: 40px 0 50px;
	}
	.block01 .box01 h2 {
		width: 53%;
		margin: 0 auto;
	}
	.block01 .box02 {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin: 0 5% 30px;
	}
	.block01 .box02 figure {
		width: 48%;
		margin: 0;
	}
	.block01 .box02 .txt {
		width: 47%;
		padding: 38px 40px 32px;
	}
	.block01 .box02 .txt::after {
		right: -3px;
	}
	.block01 .box03 > ul {
		justify-content: center;
		margin: 0 0 50px;
	}

	.block01 .box03 > ul > li {
		width: 130px;
		margin: 0 15px;
	}
	.block01 .box04 {
		margin: 0 3%;
		padding: 30px 44px 50px;
	}
	.block01 .box04 > ul > li {
		width: calc(33.3333% - 12px);
		margin: 0 0 20px;
	}
}
@media print, screen and (min-width:960px) {
	.block01 .box02 {
		margin: 0 10% 30px;
	}
	.block01 .box04 {
		margin: 0 6%;
	}
}