@charset "UTF-8";

/* --------------------- 共通スタイル ---------------------  */

h4 {
	font-size: 6.4vw;
}

.ttl.ttlIn:before {
	bottom: 5px;
}

/* --------------------- End 共通スタイル ---------------------  */



/* --------------------- business ---------------------  */

#mainvisual .wrap {
	padding: 20% 0 17% 0;
}

#business #main #subsection {
	position: relative;
	padding: 20% 0 10% 0;
	/*background-color: #f2f2f2;*/
}

#business #main #subsection .wrapper {
	margin: 0 20px;
}

#business #main #subsection .description {
	text-align: center;
	margin-bottom: 30px;
}

#business #main #subsection .icons ul {
	display: block;
}

#business #main #subsection .icons ul li {
	border-bottom: 1px solid #000000;
	font-weight: 300;
}

#business #main #subsection .icons ul li:first-child {
	border-top: 1px solid #000000;
}

#business #main #subsection .icons ul li a {
	display: flex;
	justify-content: space-between;
	color: #000;
	text-decoration: none;
	padding: 30px 0;
}

#business #main #subsection .icons ul li a img {
	display: none;
}

#business #main #subsection .icons a span.arrow {
	position: relative;
	width: 12px;
	height: 24px;
	padding-left: 10px;
}

#business #main #subsection a span.arrow:before,
#business #main #subsection a span.arrow:after {
	position: absolute;
	display: block;
	content: '';
	top: 50%;
	width: 12px;
	height: 1px;
	background-color: #000;
}

#business #main #subsection a span.arrow:before {
	left: 0;
	transform: rotate(30deg);
}

#business #main #subsection a span.arrow:after {
	transform: rotate(-30deg);
}

#business #main #launch {
	position: relative;
	background-color: #f2f2f2;
	padding: 18% 0 0 0;
}

#business #main #launch .wrapper {
	margin: 0 20px;
}

#business #main #launch .wrapper h3 {
	margin-bottom: 16px;
}

#business #main #launch .wrapper p.description {
	margin-bottom: 40px;
}

#business #main #launch .wrapper .process {
	display: block;
	margin-bottom: 60px;
}

#business #main #launch .wrapper .howto h4 {
	margin-bottom: 35px;
}

#business #main #experiment {
	position: relative;
	background-color: #f2f2f2;
	padding: 20% 0 0 0;
}

#business #main #experiment .wrapper {
	margin: 0 20px;
}

#business #main #experiment .wrapper h3 {
	margin-bottom: 16px;
}

#business #main #experiment .wrapper h4 {
	margin-bottom: 30px;
}

#business #main #experiment .wrapper p.description {
	margin-bottom: 40px;
}

#business #main #experiment .wrapper .process {
	display: block;
}

#business #main #experiment .wrapper .boxList {
	margin-bottom: 30px;
}

#business #main #sale {
	position: relative;
	background-color: #f2f2f2;
	padding: 20% 0 0 0;
}

#business #main #sale .wrapper {
	margin: 0 20px;
}

#business #main #sale .wrapper h3 {
	margin-bottom: 16px;
}

#business #main #sale .wrapper p.description {
	margin-bottom: 40px;
}

#business #main #sale .wrapper .greyList {
	margin-bottom: 60px;
}

#business #main #sale .wrapper .greyList li {
	margin-bottom: 20px;
	padding: 12px 0;
	color: #fff;
	background-color: #a3a3a3;
	text-align: center;
}

#business #main #sale .wrapper .saleBnr {
	background-color: #fff;
	padding: 35px 20px;
}

#business #main #sale .wrapper .saleBnr h5 {
	margin-bottom: 20px;
	font-size: 5.4vw;
	text-align: center;
	font-weight: bold;
}

#business #main #sale .wrapper .saleBnr .image {
	width: 40%;
	margin: 0 auto;
	margin-bottom: 20px;
}

#business #main #sale .wrapper .saleBnr .txt {
	margin-bottom: 30px;
}
.saleBnr {
	background-color: #fff;
	padding: 35px 20px;
}

.saleBnr h5 {
	margin-bottom: 20px;
	font-size: 5.4vw;
	text-align: center;
	font-weight: bold;
}

.saleBnr .txt {
	margin-bottom: 30px;
}

#business #main #sale .wrapper .saleBnr .txt {
	margin-bottom: 30px;
}

#business #main #development {
	position: relative;
	background-color: #f2f2f2;
	padding: 20% 0 0 0;
}

#business #main #development .wrapper {
	margin: 0 20px;
}

#business #main #development .wrapper h3 {
	margin-bottom: 16px;
}

#business #main #development .wrapper p.description {
	margin-bottom: 40px;
}

#business #main #development .wrapper .steps .item {
	position: relative;
	margin-bottom: 65px;
	border: 1px solid #000;
}

#business #main #development .wrapper .steps .item:last-child {
	margin-bottom: 0;
}

#business #main #development .wrapper .steps .item:before,
#business #main #development .wrapper .steps .item:after {
	position: absolute;
	display: block;
	content: '';
	left: 50%;
	bottom: -32px;
	width: 40px;
	height: 1px;
	background-color: #000;
	margin-left: -20px;
}

#business #main #development .wrapper .steps .item:before {
	transform: rotate(30deg);
	margin-left: -40px;
}

#business #main #development .wrapper .steps .item:after {
	transform: rotate(-30deg);
	margin-left: -5px;
}

#business #main #development .wrapper .steps .item:last-child:before,
#business #main #development .wrapper .steps .item:last-child:after {
	display: none;
}

#business #main #development .wrapper .steps .item h5 {
	padding: 12px 0;
	color: #fff;
	background-color: #000;
	text-align: center;
	font-weight: 300;
}

#business #main #development .wrapper .steps .item ul {
	list-style-type: disc;
	padding: 15px 15px 15px 30px;
}

#business #main #development .wrapper .steps .item ul li {
	margin-bottom: 15px;
	font-weight: 300;
}

#business #main #education {
	position: relative;
	padding: 20% 0 20% 0;
	background-color: #f2f2f2;
}

#business #main #education .wrapper {
	margin: 0 20px;
}

#business #main #education .wrapper h3 {
	margin-bottom: 16px;
}

#business #main #education .wrapper p.description {
	margin-bottom: 40px;
}

#business #main #education .wrapper .howto h4,
#business #main #education .wrapper .project h4 {
	margin-bottom: 30px;
}

#business #main #education .wrapper .howto p,
#business #main #education .wrapper .project p {
	margin-bottom: 35px;
	font-weight: 300;
  line-height: 9vw;
}

#business #main #education .wrapper .howto ul li {
	margin: 0 auto 35px auto;
}

#business #main #education .wrapper .howto ul li:nth-child(1) {
	width: 60%;
}

#business #main #education .wrapper .howto ul li:nth-child(2) {
	width: 44.68%;
}

#business #main #education .wrapper .howto ul li:nth-child(3) {
	width: 29.06%;
}

#business #main #education .wrapper .project .projectBnr {
	background-color: #fff;
	padding: 35px 20px;
}

#business #main #education .wrapper .project .projectBnr h5 {
	margin-bottom: 20px;
	font-size: 5.4vw;
	text-align: center;
	font-weight: bold;
}

#business #main #education .wrapper .project .projectBnr .image {
	width: 40%;
	max-width: 222px;
	margin: 0 auto;
	margin-bottom: 20px;
}

#business #main #education .wrapper .project .projectBnr .txt {
	margin-bottom: 35px;
}

.boxList li {
	margin-bottom: 50px;
	font-weight: 300;
}

.boxList li h5 {
	font-size: 4vw;
}

.boxList li:last-child {
	margin-bottom: 0;
	margin-right: 0;
}

.boxList li h5 {
	padding: 22px 0;
	margin-bottom: 20px;
	text-align: center;
	border: 1px solid #000;
}


/* --------------------- End TOP ---------------------  */


/* --------------------- Tablet ---------------------  */

@media screen and (min-width:768px) {

	/* --------------------- 共通スタイル ---------------------  */

	h4 {
		font-size: 32px;
	}

	.boxList {
		display: flex;
	}

	.boxList li h5 {
		font-size: 2vw;
		font-weight: 400;
	}

	.boxList li {
		width: calc(100% / 3 - 23px);
		margin-right: 35px;
		margin-bottom: 0;
		font-size: 20px;
		font-weight: 400;
	}

	.boxList li p {
		font-size: 1.4vw;
	}

	/* --------------------- End 共通スタイル ---------------------  */

	/* --------------------- TOP ---------------------  */

	#business #main #subsection {
		padding: 10% 0 40px 0;
	}
	#business #main #subsection .wrapper {
		flex-wrap: nowrap;
		margin: 0 40px;
	}
	#business #main #subsection .description {
		margin-bottom: 40px;
	}
	#business #main #subsection .icons ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#business #main #subsection .icons ul li,
	#business #main #subsection .icons ul li:first-child {
		display: flex;
		justify-content: center;
		width: calc(100% / 3);
		border: 0;
	}
	#business #main #subsection .icons ul li a {
		position: relative;
		display: block;
	}

	#business #main #subsection .icons ul li a img {
		display: block;
		margin: 0 auto;
	}

	#business #main #subsection .icons ul li:nth-child(1) a img {
		width: 92%;
		margin-bottom: 42px;
	}

	#business #main #subsection .icons ul li:nth-child(2) a img {
		width: 92%;
		margin-bottom: 42px;
	}

	#business #main #subsection .icons ul li:nth-child(3) a img {
		width: 96%;
		margin-bottom: 12px;
	}

	#business #main #subsection .icons ul li:nth-child(4) a img {
		width: 70%;
		margin-bottom: 18px;
	}

	#business #main #subsection .icons ul li:nth-child(5) a img {
		width: 90%;
		margin-bottom: 34px;
	}

	#business #main #subsection .icons a span {
		display: block;
		text-align: center;
	}

	#business #main #subsection .icons a span.arrow {
		display: block;
		margin: 20px auto 0 auto;
	}

	#business #main #subsection .icons a span.arrow:before,
	#business #main #subsection .icons a span.arrow:after {
		width: 22px;
	}

	#business #main #subsection .icons a span.arrow:before {
		left: -10px;
	}

	#business #main #subsection .icons a span.arrow:after {
		left: 9px;
	}

	#business #main #launch {
		padding: 60px 0 0 0;
	}

	#business #main #launch .wrapper {
		margin: 0 40px;
	}

	#business #main #launch .wrapper .process {
		margin-bottom: 80px;
	}

	#business #main #experiment {
		padding: 60px 0 0 0;
	}

	#business #main #experiment .wrapper {
		margin: 0 40px;
	}

	#business #main #experiment .wrapper p.description {
		margin-bottom: 80px;
	}

	#business #main #experiment .wrapper .boxList {
		margin-bottom: 80px;
	}

	#business #main #experiment .wrapper .boxList li {
		width: calc(100% / 2 - 20px);
		margin-right: 40px;
	}

	#business #main #experiment .wrapper .boxList li:last-child {
		margin-right: 0;
	}

	#business #main #sale {
		padding: 60px 0 0 0;
	}

	#business #main #sale .wrapper {
		margin: 0 40px;
	}

	#business #main #sale .wrapper .greyList {
		display: flex;
		flex-wrap: wrap;
	}

	#business #main #sale .wrapper .greyList li {
		width: calc(100% / 2 - 20px);
		font-size: 24px;
		margin-bottom: 50px;
	}

	#business #main #sale .wrapper .greyList li:nth-child(odd) {
		margin-right: 40px;
	}

	#business #main #sale .wrapper .saleBnr {
		padding: 35px;
	}

	#business #main #sale .wrapper .saleBnr .box {
		display: flex;
	}

	#business #main #sale .wrapper .saleBnr h5 {
		font-size: 24px;
	}

	#business #main #sale .wrapper .saleBnr .box .image {
		width: 165px;
		margin: 0 50px 0 0;
	}

	#business #main #sale .wrapper .saleBnr .txt {
		font-size: 22px;
		line-height: 44px;
	}

	#business #main #sale .wrapper .saleBnr .btnWrap {
		display: flex;
		justify-content: flex-end;
	}

	#business #main #sale .wrapper .saleBnr .btnWrap .btn {
		margin: 0
	}

	#business #main #development {
		padding: 60px 0 0 0;
	}

	#business #main #development .wrapper {
		margin: 0 40px;
	}

	#business #main #development .wrapper .steps .item h5 {
		font-size: 24px;
		padding: 30px 0 30px 30px;
		text-align: left;
	}

	#business #main #development .wrapper .steps .item:last-child {
		margin-right: 0;
	}

	#business #main #development .wrapper .steps .item ul {
		padding: 30px 15px 30px 45px;
	}

	#business #main #development .wrapper .steps .item ul li {
		font-size: 20px;
	}

	#business #main #education {
		padding: 60px 0 100px 0;
	}

	#business #main #education .wrapper {
		margin: 0 40px;
	}

	#business #main #education .wrapper p.description {
		margin-bottom: 60px;
	}

	#business #main #education .wrapper .howto p,
	#business #main #education .wrapper .project p {
		font-size: 18px;
		line-height: 42px;
		margin-bottom: 70px;
	}

	#business #main #education .wrapper .howto ul {
		display: flex;
		align-items: center;
		max-width: 988px;
		margin: 0 auto;
		margin-bottom: 50px;
	}

	#business #main #education .wrapper .howto ul li:nth-child(1) {
		width: 38%;
	}

	#business #main #education .wrapper .howto ul li:nth-child(2) {
		width: 28%;
	}

	#business #main #education .wrapper .howto ul li:nth-child(3) {
		width: 18%;
	}

	#business #main #education .wrapper .project .projectBnr .box {
		display: flex;
	}

	#business #main #education .wrapper .project .projectBnr .image {
		margin-bottom: 0;
	}

	#business #main #education .wrapper .project .projectBnr .btnWrap {
		display: flex;
		justify-content: flex-end;
	}

	#business #main #education .wrapper .project .projectBnr .btnWrap .btn {
		margin: 0
	}

	#business #main #education .wrapper .project .projectBnr h5 {
		font-size: 24px;
	}

}


@media screen and (min-width:1024px) {

}

@media screen and (min-width:1280px) {

	/* --------------------- 共通スタイル ---------------------  */

	.ttl {
		font-size: 48px;
	}

	h4 {
		font-size: 36px;
	}

	.boxList {
		display: flex;
	}

	.boxList li h5 {
		font-size: 24px;
	}

	.boxList li {
		width: calc(100% / 3 - 23px);
		margin-right: 35px;
		margin-bottom: 0;
	}

	.boxList li p {
		font-size: 20px;
	}

	/* --------------------- End 共通スタイル ---------------------  */

	/* --------------------- TOP ---------------------  */

	#business #main #subsection {
		padding: 6.2% 0 0 0;
	}
	#business #main #subsection .wrapper {
		flex-wrap: nowrap;
		margin: 0 auto;
		padding: 0;
	}
	#business #main #subsection .description {
		margin-bottom: 80px;
	}
	#business #main #subsection .icons ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#business #main #subsection .icons ul li,
	#business #main #subsection .icons ul li:first-child {
		display: flex;
		justify-content: center;
		width: calc(100% / 3);
		border: 0;
	}

	#business #main #subsection .icons ul li a {
		position: relative;
		font-size: 20px;
	}

	#business #main #subsection .icons ul li a img {
		display: block;
		margin: 0 auto;
	}

	#business #main #subsection .icons ul li:nth-child(1) a img {
		width: 278px;
		margin-bottom: 52px;
	}

	#business #main #subsection .icons ul li:nth-child(2) a img {
		width: 224px;
		margin-bottom: 33px;
	}

	#business #main #subsection .icons ul li:nth-child(3) a img {
		width: 232px;
		margin-bottom: 12px;
	}

	#business #main #subsection .icons ul li:nth-child(4) a img {
		width: 190px;
		margin-bottom: 38px;
	}

	#business #main #subsection .icons ul li:nth-child(5) a img {
		width: 224px;
		margin-bottom: 23px;
	}

	#business #main #launch {
		padding: 160px 0 0 0;
	}

	#business #main #launch .wrapper {
		margin: 0 auto;
	}

	#business #main #launch .wrapper .process {
		margin-bottom: 150px;
	}

	#business #main #experiment {
		padding: 160px 0 50px 0;
	}

	#business #main #experiment .wrapper {
		margin: 0 auto;
	}

	#business #main #experiment .wrapper .boxList li {
		width: calc(100% / 2 - 20px);
		margin-right: 40px;
	}

	#business #main #experiment .wrapper .boxList li:last-child {
		margin-right: 0;
	}

	#business #main #sale {
		padding: 160px 0 80px 0;
	}

	#business #main #sale .wrapper {
		margin: 0 auto;
	}

	#business #main #sale .wrapper .greyList {
		display: flex;
		flex-wrap: wrap;
	}

	#business #main #sale .wrapper .greyList li {
		width: calc(100% / 2 - 40px);
	}

	#business #main #sale .wrapper .greyList li:nth-child(odd) {
		margin-right: 80px;
	}

	#business #main #sale .wrapper .saleBnr {
		padding: 35px;
	}

	#business #main #sale .wrapper .saleBnr .box {
		display: flex;
	}

	#business #main #sale .wrapper .saleBnr h5 {
		font-size: 28px;
	}

	#business #main #sale .wrapper .saleBnr .box .image {
		width: 165px;
		margin: 0 50px 0 0;
	}

	#business #main #development {
		padding: 160px 0 0 0;
	}

	#business #main #development .wrapper {
		margin: 0 auto;
	}

	#business #main #development .wrapper .steps {
		display: flex;
	}

	#business #main #development .wrapper .steps .item {
		width: calc(100% / 3);
		margin-right: 38px;
		margin-bottom: 0;
	}

	#business #main #development .wrapper .steps .item:before {
		top: 24px;
		left: auto;
		right: -24px;
		width: 0;
		height: 0;
		margin: 0;
		border-style: solid;
		border-width: 24px 0 24px 24px;
		background-color: transparent;
		border-color: transparent transparent transparent #000000;
		transform: rotate(0);
	}

	#business #main #development .wrapper .steps .item:after {
		display: none;
	}

	#business #main #development .wrapper .steps .item:last-child {
		margin-right: 0;
	}

	#business #main #education {
		padding: 160px 0 200px 0;
	}

	#business #main #education .wrapper {
		margin: 0 auto;
	}

	#business #main #education .wrapper p.description {
		margin-bottom: 130px;
	}

	#business #main #education .wrapper .howto p,
	#business #main #education .wrapper .project p {
		font-size: 24px;
		line-height: 48px;
		margin-bottom: 70px;
	}

	#business #main #education .wrapper .howto ul {
		display: flex;
		margin-bottom: 140px;
	}

	#business #main #education .wrapper .project .projectBnr {
		padding: 35px;
	}

	#business #main #education .wrapper .project .projectBnr .box {
		display: flex;
	}

	#business #main #education .wrapper .project .projectBnr h5 {
		font-size: 28px;
	}

	#business #main #education .wrapper .project .projectBnr .image {
		margin-bottom: 0;
	}

	#business #main #education .wrapper .howto ul li:nth-child(1) {
		width: 334px;
		margin: 0;
	}

	#business #main #education .wrapper .howto ul li:nth-child(2) {
		width: 286px;
		margin: 0 88px 0 98px;
	}

	#business #main #education .wrapper .howto ul li:nth-child(3) {
		width: 184px;
		margin: 0;
	}
	
	#business #main #education .wrapper .howto ul li:nth-child(4) {
		width: 184px;
		margin: 0 88px 0 98px;
	}

}