.AboutArea,
.FunctionsArea,
.FeaturesArea {
	position: relative;
	width: 100%;
	display: block;
	margin: 0px 0px 40px 0px;
	overflow: hidden;
}
.AboutArea p {
	position: relative;
	width: 50%;
    /*width: calc(100% - 440px);*/
	font-size: 14px;
	line-height: 200%;
    padding: 0 40px 0 0;
	float: left;
    box-sizing: border-box;
	margin: 0;
}
.AboutArea .ImageBox {
	position: relative;
	width: 50%;
	height: auto;
	padding: 16px 0 0;
	float: right;
}
.AboutArea .ImageBox img {
	width: 440px;
	margin: 0 0 auto 0;
	display: block;
}
.AboutArea .ImageBox span {
	position: absolute;
	top: 0;
	right: 0;
	width: 96px;
	height: 96px;
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	line-height: 152%;
	background-color: #f06000;
	border-radius: 52px;
	box-sizing: border-box;
	transform: rotate(15deg);
	padding: 22px 0;
	display: block;
}
.FunctionsArea {
    background-color: #F0F0F0;
    padding: 0 0 40px;
}
.FunctionsBox {
	position: relative;
	margin: 0;
	padding: 16px 0 0;
}
.BalloonBox {
	position: absolute;
	z-index: 1;
}
.BalloonBox:first-of-type {
	top: 64px;
	left: 128px;
}
.BalloonBox:nth-of-type(2) {
	top: 16px;
	right: 40px;
}
.BalloonBox:nth-of-type(3) {
	top: 168px;
	left: 48px;
}
.BalloonBox:nth-of-type(4) {
	top: 128px;
	right: 8px;
}
.BalloonBox:nth-of-type(5) {
	bottom: 24px;
	left: 168px;
}
.BalloonBox:nth-of-type(6) {
	bottom: 32px;
	right: 8px;
}
.BalloonBox p {
	height: 48px;
	font-size: 14px;
	text-align: center;
	line-height: 160%;
	border: solid 2px #f06000;
	border-radius: 24px;
	background-color: #fff;
	box-sizing: border-box;
	margin: 0;
	padding: 12px 24px;
	z-index: 1;
}
.BalloonBox p::after {
	position: absolute;
	width: 0;
	height: 0;
	border-top: 38px solid #fff;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	content: "";
	margin: 0;
}
.BalloonBox:first-of-type p::after {
	top: 34px;
	right: 37px;
	transform: rotate(-40deg);
}
.BalloonBox:nth-of-type(2) p::after {
	top: 9px;
	left: -16px;
	transform: rotate(75deg);
}
.BalloonBox:nth-of-type(3) p::after {
	top: 16px;
	right: -16px;
	transform: rotate(-75deg);
}
.BalloonBox:nth-of-type(4) p::after {
	top: 16px;
	left: -16px;
	transform: rotate(75deg);
}
.BalloonBox:nth-of-type(5) p::after {
	top: 0;
	right: -16px;
	transform: rotate(-105deg);
}
.BalloonBox:nth-of-type(6) p::after {
	top: 0;
	left: -16px;
	transform: rotate(105deg);
}
.BalloonBox span {
	position: absolute;
	width: 16px;
	height: 40px;
	z-index: -1;
}
.BalloonBox:first-of-type span {
	top: 37px;
	right: 32px;
	transform: rotate(-40deg);
}
.BalloonBox:nth-of-type(2) span {
	top: 10px;
	left: -24px;
	transform: rotate(75deg);
}
.BalloonBox:nth-of-type(3) span {
	top: 16px;
	right: -23px;
	transform: rotate(-75deg);
}
.BalloonBox:nth-of-type(4) span {
	top: 17px;
	left: -24px;
	transform: rotate(75deg);
}
.BalloonBox:nth-of-type(5) span {
	top: -3px;
	right: -24px;
	transform: rotate(-105deg);
}
.BalloonBox:nth-of-type(6) span {
	top: -3px;
	left: -24px;
	transform: rotate(105deg);
}
.BalloonBox span:before {
	position: absolute;
	width: 0;
	height: 0;
	border-top: 40px solid #f06000;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	content: "";
	margin: 0;
}
.FunctionsBox img {
	width: 360px;
	margin: 0 auto;
	display: block;
}
#FeaturesBoxes {
    position: relative;
    margin: 20px 0 0;
}
#FeaturesBoxes:before,
#FeaturesBoxes:after {
    position: absolute;
    width: 424px;
    height: 424px;
    background-size: 424px 424px;
    opacity: .5;
    z-index: 0;
    content: "";
}
#FeaturesBoxes:before {
    top: 0;
    right: 0;
    background-image: url("../kurashiai/future_back_1.jpg");
}
#FeaturesBoxes:after {
    bottom :0;
    left: 0;
    background-image: url("../kurashiai/future_back_2.jpg");
}
.FeaturesBox {
    position: relative;
    width: 48%;
    margin: 0 auto;
    padding: 16px 0 0;
    z-index: 1;
}
.FeaturesBox:last-of-type {
    margin: 32px auto 0;
}
.FeaturesBox .InnerBox {
    position: relative;
    width: 100%;
    border-radius: 16px;
    padding: 24px;
    box-sizing: border-box;
}
.FeaturesBox:first-of-type .InnerBox {
    background-color: rgba(255, 120, 0, 0.2);
}
.FeaturesBox:last-of-type .InnerBox {
    background-color: rgba(255, 192, 0, .2);
}
.FeaturesBox .InnerBox h3 {
    position: absolute;
    top: -16px;
    left: 50%;
    width: 120px;
    height: 32px;
    font-size: 14px;
    text-align: center;
    line-height: 1;
    border-radius: 16px;
    background-color: #fff;
    padding: 8px 0 0;
    margin: 0;
    transform: translateX(-50%);
    box-sizing: border-box;
}
.FeaturesBox:first-of-type .InnerBox h3 {
    border: solid 2px #ef6f00;
}
.FeaturesBox:last-of-type .InnerBox h3 {
    border: solid 2px #ffca00;
}
.FeaturesBox .InnerBox ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.FeaturesBox .InnerBox ul li {
    position: relative;
    height: 56px;
    font-size: 14px;
    line-height: 56px;
    margin: 0 0 8px;
    padding: 0 0 0 72px;
}
.FeaturesBox .InnerBox ul li:last-of-type {
    margin: 0;
}
.FeaturesBox .InnerBox ul li img {
    position: absolute;
    top: 0;
    left: 0;
    width: 56px;
}













.ReferenceArea p {
	width: 960px;
	font-size: 14px;
	margin: 20px 0px 0px 0px;
}
.LeftGraphArea,
.RightGraphArea {
	position: relative;
	width: 480px;
	height: 260px;
	margin: 10px 0px 20px;
}
.LeftGraphArea {
	float: left;
}
.RightGraphArea {
	float: right;
}
.LeftGraphArea img,
.RightGraphArea img {
	width: 480px;
	height: 260px;
}
.LeftGraphArea p,
.RightGraphArea p {
	position: absolute;
	top: 9px;
	left: 0px;
	width: 140px;
	font-size: 14px;
	color: #FFFFFF;
	margin: 0px;
	text-align: center;
	line-height: 160%;
}

.RescueImg {
	position: relative;
	width: 960px;
	height: 260px;
}
.RescueImg img {
	width: 960px;
	height: 260px;
}
.RescueImg strong {
	position: absolute;
	top: 30px;
	left: 0px;
	width: 960px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.RescueImg p {
	position: absolute;
	bottom: 0px;
	left: 0px;
	font-size: 12px;
	line-height: 200%;
	margin: 0px;
}
.RescueImg span {
	font-size: 10px;
	display: block;
}

.WritingInfoArea {
	position: relative;
	width: 960px;
	margin: 40px 0px 0px;
}
.WritingInfoArea table {
	margin: 20px auto 0px;
}
.WritingInfoArea td {
	width: 200px;
	height: 30px;
	font-size: 14px;
	text-align: center;
	background-color: #E0E0E0;
}
.WritingInfoArea th {
	height: 30px;
	font-size: 14px;
	text-align: center;
	font-weight: lighter;
	color: #FFFFFF;
	background-color: #0080FF;
}
.WritingInfoArea p {
	font-size: 14px;
	margin: 15px 0px 0px;
	text-align: center;
}
.WritingInfoArea p > span {
	width: 30px;
	height: 15px;
	display: inline-block;
	vertical-align: -2px;
	background-color: #0080FF;
	margin: 0px 4px;
}
.WritingInfoArea #Comment {
	font-size: 12px;
}

.ResultArea ul {
	list-style: none;
	padding: 0px;
	margin: 20px 0px 0px;
}
.ResultArea ul li {
	font-size: 14px;
	line-height: 280%;
}

#SmallTitle {
	width: 960px;
	font-size: 14px;
	font-weight: bold;
	margin: 20px auto 0px;
	display: block;
}
