/***********************************************************
	フレックスボックス
************************************************************/
@media screen and (max-width: 650px) {

	/* フレックスボックス（画面幅がPC:横並び、画面幅がスマホ:縦並び） */
	.flex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
			-ms-flex-direction: column;
				flex-direction: column;
			-ms-flex-wrap: nowrap;
				flex-wrap: nowrap;
	}
}

/***********************************************************
	メイン	メインビジュアル
************************************************************/
#mainVisual {
	background-color: #2a2a2a;
	position:relative;
}

#philosophy {
	position:absolute;
	top: -4px;
	right:24px;
	z-index: 10;
	width: 300px;
}

#mainVisualCover {
	position:absolute;
	width:100%;
	height: 300px;
	top: 0px;
	left:0px;
	background: rgba(0,0,0,0.6);
	z-index: 9;
}

.mainVisualRow {
	width: 100%;
	max-width :2000px;
	margin: 0 auto;
}

.mainVisualRow div {
	width: 100px;
	height: 100px;
	text-align: center;
}

.mainVisualRow div img {
	height: 100%;
}

@media screen and (max-width: 2020px) {
	.mainVisualRow {max-width :1900px;}
	.panel19 {display:none;}
}

@media screen and (max-width: 1920px) {
	.mainVisualRow {max-width :1800px;}
	.panel18 {display:none;}
}

@media screen and (max-width: 1820px) {
	.mainVisualRow {max-width :1700px;}
	.panel17 {display:none;}
}

@media screen and (max-width: 1720px) {
	.mainVisualRow {max-width :1600px;}
	.panel16 {display:none;}
}

@media screen and (max-width: 1620px) {
	.mainVisualRow {max-width :1500px;}
	.panel15 {display:none;}
}

@media screen and (max-width: 1520px) {
	.mainVisualRow {max-width :1400px;}
	.panel14 {display:none;}
}

@media screen and (max-width: 1420px) {
	.mainVisualRow {max-width :1300px;}
	.panel13 {display:none;}
}

@media screen and (max-width: 1320px) {
	.mainVisualRow {max-width :1200px;}
	.panel12 {display:none;}
}

@media screen and (max-width: 1220px) {
	.mainVisualRow {max-width :1100px;}
	.panel11 {display:none;}
}

@media screen and (max-width: 1120px) {
	.mainVisualRow {max-width :1000px;}
	.panel10 {display:none;}
}

@media screen and (max-width: 1020px) {
	.mainVisualRow {max-width :900px;}
	.panel09 {display:none;}
}

@media screen and (max-width: 920px) {
	.mainVisualRow {max-width :800px;}
	.panel08 {display:none;}
}

@media screen and (max-width: 820px) {
	.mainVisualRow {max-width :700px;}
	.panel07 {display:none;}
}

@media screen and (max-width: 720px) {
	.mainVisualRow {max-width :600px;}
	.panel06 {display:none;}
}

@media screen and (max-width: 620px) {
	.mainVisualRow {max-width :500px;}
	.panel05 {display:none;}
}

@media screen and (max-width: 520px) {
	.mainVisualRow {max-width :400px;}
	.panel04 {display:none;}
}

@media screen and (max-width: 420px) {
	.mainVisualRow {max-width :300px;}
	.panel03 {display:none;}
}

/***********************************************************
	セクション
************************************************************/
@media screen and (max-width: 639px) {
	section.middle {
		width: calc(100% - 32px);
	}
}

/***********************************************************
	ボタングループ
************************************************************/
#btnGroup {
	justify-content: space-around;
	margin: auto auto;
}

#btnGroup div {
	width: 130px;
	height: 130px;
	margin: 4px;
	background-color: #2a2a2a;
	text-align: center;
	border-radius: 9999px;
	color: white;
	font-weight: bold;
	cursor: pointer;
}

#btnGroup div:hover {
	background-color: #5a5a5a;
}


#btnGroup div img {
	padding-top: 20px;
	width: 70%;
}


#btnSub3 {
	display:block;
}


@media screen and (max-width: 950px) {
	#btnSub3 {
		display:none;
	}
}

@media screen and (max-width: 639px) {
	#btnSub3 {
		display:block;
	}
}

@media screen and (max-width: 490px) {
	#btnSub3 {
		display:none;
	}
}


/***********************************************************
	プロダクト
************************************************************/
.product {
	margin: 24px auto 48px auto;	/* 上 | 右 | 下 | 左 */
	width: calc(100% - 16px);
	display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
		-ms-flex-direction: row;
			flex-direction: row;
		-ms-flex-wrap: nowrap;
			flex-wrap: nowrap;
}

.productReverse {
	margin: 24px auto 48px auto;	/* 上 | 右 | 下 | 左 */
	width: calc(100% - 16px);
	height: 250px;
	display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
			flex-direction: row-reverse;
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
}

@media screen and (max-width: 639px) {
	.product, .productReverse {
		height: auto;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
			-ms-flex-direction: column;
				flex-direction: column;
	}
}

/***********************************************************
	プロダクト 詳細
************************************************************/
.product>div.middle, .productReverse>div.middle {
	width: 50%;
	position: relative;
}
@media screen and (max-width: 639px) {
	.product>div.middle, .productReverse>div.middle {
		width: 100%;
	}
}

.product>div.middle:last-child, .productReverse>div.middle:last-child {
	margin-top: 8px;
}

.productReverse>div:first-child  {
	z-index: 1;
}



@keyframes slideImg {
	0%	 { object-position: 0% 0%;}
	10%	 { object-position: 0% 0%;}
	90% { object-position: 0% 100%;}
	100% { object-position: 0% 100%;}
}

.pjDescription {
	padding: 4px 16px 8px 16px; /* 上 | 右 | 下 | 左 */
	font-size: 0.8em;
	line-height: 150%
}

.tag {
	border: 1px solid black;
	color: white;
	background-color: black;
	font-size: 0.8em;
	padding-left: 4px;
	padding-right: 4px;
}

.tag>a {
	color: white;
}

.tag2 {
	border: 1px solid black;
	color: black;
	background-color: white;
	font-size: 0.8em;
	padding-left: 4px;
	padding-right: 4px;
	font-weight: bold;
}

.blockquote {
	color: black;
	padding: 8px 4px 8px 8px; /* 上 | 右 | 下 | 左 */
	border-radius: 5px;
	position: relative;
}

.blockquote:before {
	font-size: 4.0em;
	font-weight: bold;
	display: inline-block;
	position: absolute;
	top: 16px;
	left:16px;
	content: "introduction";
	color: #ffffff81;
	line-height: 1;
}

.blockquote p {
	position: relative;
}


/***********************************************************
	プロダクト詳細：PrairiePet
************************************************************/
#pjPrairiePet>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjPrairiePet>div:first-child>img:hover {
	animation: slideImg 4s linear infinite;
}

/***********************************************************
	プロダクト詳細：VILLLAINS HOMME
************************************************************/
#pjVillainsHomme>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjVillainsHomme>div:first-child>img:hover, #pjVillainsHomme>div:first-child>img:active {
	animation: slideImg 10s linear infinite;
}

/***********************************************************
	プロダクト詳細：WhichColor?
************************************************************/
#pjWhichColor>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjWhichColor>div:first-child>img:hover, #pjWhichColor>div:first-child>img:active {
	animation: slideImg 10s linear infinite;
}

/***********************************************************
	プロダクト詳細：星駆中学校
************************************************************/
#pjHoshicyu>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjHoshicyu>div:first-child>img:hover, #pjHoshicyu>div:first-child>img:active {
	animation: slideImg 10s linear infinite;
}

/***********************************************************
	プロダクト詳細：バケーションしたいので部下に仕事全振りしたいと思います。
************************************************************/
#pjVacation>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjVacation>div:first-child>img:hover, #pjVacation>div:first-child>img:active {
	animation: slideImg 10s linear infinite;
}

/***********************************************************
	プロダクト詳細：猫の手も借りたい
************************************************************/
#pjNeconoteTool>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjNeconoteTool>div:first-child>img:hover, #pjNeconoteTool>div:first-child>img:active {
	animation: slideImg 10s linear infinite;
}

/***********************************************************
	プロダクト詳細：星駆水族館
************************************************************/
#pjAquarium>div:first-child>img {
	object-fit: cover;
	width:100%;
	height: 250px;
	object-position: 0% 0%
}

#pjAquarium>div:first-child>img:hover, #pjAquarium>div:first-child>img:active {
	animation: slideImg 12s linear infinite;
}


/***********************************************************
	文字装飾
************************************************************/
.strong {
	font-weight: bold;
}

.strongYellow {
	font-weight: bold;
	background-color: yellow;
}

.strongOrange {
	font-weight: bold;
	background-color: orange;
}

/***********************************************************
	リンク装飾
************************************************************/
.lnkMark {
	text-align: right;
	position:relative;
	display:block;
	padding-left:17px;
}

.lnkMark:after {
	content: "";
	display:inline-block;
	width: 0;
	height: 0;
	border-top: solid 6px transparent;
	border-right: solid 6px transparent;
	border-bottom: solid 6px transparent;
	border-left: solid 6px #666;
	position: absolute;
	top: 50%;
	right: 100px;
	margin-top:-6px;
}