@charset "utf-8";


/*
	有限会社山田塗装店　会社概要用CSS
	/company/index.html

	create	20210819
*/

/* ---------------------------------------------------------
	約560px未満の画面向けスタイル mobile first
--------------------------------------------------------- */



/* ---------------------------------------- */
/* 共通 */
/* ---------------------------------------- */
.pankuzu {
/*	display: none; */
}
main {
	margin: 0;
}
main .yamadaBlock {
	color: #333;
	margin: 0;
	padding: 50px 0 50px;
	position: relative;
	background-image: url(../img/asiatoBg2.png);
	background-repeat: no-repeat;
	background-position: calc(100% + 20px) calc(100% + 20px);
	background-size: 200px;
}
main .yamadaBlock .aisatuBlock {
	margin: 0 0 50px;
	padding: 0;
}
main .yamadaBlock h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0 10px 15px;
	padding: 0 0 0 40px;
	background-image: url(../img/asiatoMark2.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .yamadaBlock h2 span {
	font-size: 0.5em;
	font-weight: normal;
	margin: 0 0 0 10px;
}
main .yamadaBlock .asiatoBar {
	margin: 0 10px 15px;
	padding: 0 0 10px;
	background-image: url(../img/asiatoBar.png);
	background-repeat: repeat-x;
	background-position: center left;
	background-size: 150px;
	position: relative;
	display: block;
}
main .yamadaBlock .asiatoBar span {
	margin: 0 0 10px;
	width: 80px;
	padding: 0 0 80px;
	background-image: url(../img/pIllustNattoku.png);
	background-repeat: repeat-x;
	background-position: center right;
	background-size: cover;
	position: absolute;
	bottom: -15px;
	right: 0px;
	display: block;
}
main .yamadaBlock .aisatuBlock {
	margin: 0 10px;
	padding: 0 0 50px;
}
main .yamadaBlock .aisatuBlock h3 {
	font-size: 2rem;
	text-align: left;
	margin: 0 0 15px;
	padding: 0 0 0 30px;
	background-image: url(../img/hakeBlue.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .yamadaBlock .aisatuBlock .card {
	width: 100%;
	margin: 0 auto;
}
main .yamadaBlock .aisatuBlock .daihyoBox {
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox {
	width: 100%;
	margin: -65px 0 0;
	padding: 30px 20px 20px;
	border: 1px solid #ccc;
	background-color: #fff;
/*	box-shadow: 1px 1px 3px #333; */
	position: relative;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .pin1,
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .pin2 {
	width: 17px;
	height: 17px;
	background-image: url(../company/img/pin.png);
	background-repeat: no-repeat;
	position: absolute;
	top: 10px;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .pin1 {
	left: 10px;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .pin2 {
	right: 10px;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox::before {
	content: "";
	width: 20px;	 /* 幅を20pxに指定 */
	height: 20px;	/* 高さを20pxに指定 */
	background: linear-gradient(-45deg, #FFF 48%, #000 48%, #000 52%, #fff 52%);	/* グラデーションで1pxの線を引く */
	border-top: 1px solid #ccc;			/* 上に線を引く */
	border-left: 1px solid #ccc;		 /* 左に線を引く */
	box-shadow: -1px -1px 2px #ccc;	/* うっすら影を作る */
	display: inline-block; /* インラインブロック要素にする */
	position: absolute; /* 相対位置に指定 */
	bottom: -1px; /* 下から-1ｐxの位置に配置 */
	right: -1px;	/* 右から-1ｐxの位置に配置 */
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox p {
	font-size: 1.6rem;
	text-align: left;
	line-height: 1.8;
	margin: 0;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox p.name {
	font-weight: bold;
	text-align: right;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .syumiBox {
	width: 100%;
	margin: 0;
	padding: 45px 34px 45px;
	background-image: url(../company/img/waku01.png);
/*
	background-image: url(../company/img/mokume1.png);
*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	position: relative;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .syumiBox ul {
	font-size: 1.6rem;
	text-align: left;
	line-height: 1.8;
	margin: 0 0 0 25px;
}
main .yamadaBlock .aisatuBlock .daihyoBox .textBox .syumiBox span.waku {
	width: 100%;
	height: 51px;
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url(../company/img/waku01end.png);
	background-size: cover;
/*
	background-image: url(../company/img/mokume1end.png);
	background-size: contain;
*/
	background-repeat: no-repeat;
	background-position: bottom center;
	display: block;
}

main .yamadaBlock .aisatuBlock .staffBlock .staffBox {
	margin: 0 0 30px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox {
	width: 100%;
	margin: -65px 0 0;
	padding: 30px 20px 20px;
	border: 1px solid #ccc;
	background-color: #fff;
	position: relative;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .pin1,
main .yamadaBlock .aisatuBlock .staffBlock .textBox .pin2 {
	width: 17px;
	height: 17px;
	background-image: url(../company/img/pin.png);
	background-repeat: no-repeat;
	position: absolute;
	top: 10px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .pin1 {
	left: 10px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .pin2 {
	right: 10px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox::before {
	content: "";
	width: 20px;	 /* 幅を20pxに指定 */
	height: 20px;	/* 高さを20pxに指定 */
	background: linear-gradient(-45deg, #FFF 48%, #000 48%, #000 52%, #fff 52%);	/* グラデーションで1pxの線を引く */
	border-top: 1px solid #ccc;			/* 上に線を引く */
	border-left: 1px solid #ccc;		 /* 左に線を引く */
	box-shadow: -1px -1px 2px #ccc;	/* うっすら影を作る */
	display: inline-block; /* インラインブロック要素にする */
	position: absolute; /* 相対位置に指定 */
	bottom: -1px; /* 下から-1ｐxの位置に配置 */
	right: -1px;	/* 右から-1ｐxの位置に配置 */
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox p {
	font-size: 1.6rem;
	text-align: left;
	line-height: 1.8;
	margin: 0;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox p.name {
	font-weight: bold;
	text-align: center;
	margin: 0 0 15px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .syumiBox {
	margin: 0;
	padding: 45px 34px 48px;
	background-image: url(../company/img/waku01.png);
/*
	background-image: url(../company/img/mokume2.png);
*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	position: relative;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .syumiBox img {
	width: 100%;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .syumiBox ul {
	font-size: 1.4rem;
	text-align: left;
	line-height: 1.8;
	margin: 0 0 0 25px;
}
main .yamadaBlock .aisatuBlock .staffBlock .textBox .syumiBox span.waku {
	width: 100%;
	height: 51px;
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url(../company/img/waku01end.png);
	background-size: cover;
/*
	background-image: url(../company/img/mokume2end.png);
	background-size: contain;
*/
	background-repeat: no-repeat;
	background-position: bottom center;
	display: block;
}
main .yamadaBlock .pchan1 {
	width: 100px;
	height: 100px;
	background-image: url(../img/pIllustNattoku.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 30px;
	right: 10px;
}

/* カード本体 */
.card {
	width: 30%; /* 任意の横幅を指定 */
	position: relative;
	cursor: pointer;
}
/* 擬似要素とpadding-topでカードの高さを指定 */
.card::before {
	content: "";
	display: block;
	padding-top: 110%;
}
/* カード内の画像 */
.card img {
	width: 100%;
}
/* カード裏面・表面の共通スタイル */
.card .back,
.card .front {
	transition: all 0.6s;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	backface-visibility: hidden;
}
/* カード表面のスタイル */
.card .front {
	transform: rotateY(-180deg);
}
/* ホバー時のカード裏面 */
.card:hover .back {
	transform: rotateY(180deg);
}
/* ホバー時のカード表面 */
.card:hover .front {
	transform: rotateY(0);
}
main .gaiyoBlock {
	color: #333;
	margin: 0;
	padding: 50px 10px 50px;
	background-color: #F5F0CE;
	background-image: url(../img/cloudBgHigh_yellow.svg),url(../img/cloudBgLow_yellow.svg);
	background-repeat: repeat-x,repeat-x;
	background-size: 800px,800px;
	background-position: center top,center calc(100% + 2px);
}
main .gaiyoBlock h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0 0 15px;
	padding: 0 0 0 30px;
	background-image: url(../img/hakeGreen.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .gaiyoBlock h2:last-of-type {
	background-image: url(../img/hakeYellow.png);
}
main .gaiyoBlock figure {
	width: 100%;
	margin: 15px 0;
}
main .gaiyoBlock figure img {
	width: 100%;
	margin: 0 0 5px;
	padding: 8px;
	background-color: #fff;
	box-shadow: 1px 1px 3px #333;
}
main .gaiyoBlock p {
	text-align: left;
	line-height: 1.8;
	margin: 0 0 30px;
	padding: 10px;
}
main .gaiyoBlock dl {
	text-align: left;
	line-height: 1.8;
	width: 100%;
	margin: 0 0 30px;
	padding: 0 10px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
main .gaiyoBlock dl dt {
	width: 100px;
	margin: 0 0 10px;
}
main .gaiyoBlock dl dd {
	width: calc(100% - 100px);
	margin: 0 0 10px;
}
main .gaiyoBlock dl dd span {
	display: block;
}

main .jigyoBlock {
	color: #333;
	margin: 0;
	padding: 50px 10px 50px;
}
main .jigyoBlock h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0 0 15px;
	padding: 0 0 0 30px;
	background-image: url(../img/hakeRed.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .jigyoBlock > p {
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
}
main .jigyoBlock .jigyoBox {
	margin: 20px 0 0;
	padding: 20px 20px 80px 20px;
	border: 1px solid #999;
	border-radius: 10px;
	background-image: url(../img/hakeRed.png),url(../img/penkiRed.png);
	background-position: calc(100% - 65px) calc(100% - 15px),calc(100% - 15px) calc(100% - 15px);
	background-repeat: no-repeat,no-repeat;
	position: relative;
}
main .jigyoBlock .jigyoBox h4 {
	text-align: left;
	margin: 0 0 20px;
}
main .jigyoBlock .jigyoBox ul {
	list-style-position: outside;
	list-style-image: url(../img/asiatoMark.png);
}
main .jigyoBlock .jigyoBox ul li {
	text-align: left;
	line-height: 1.5;
	margin: 0 0 20px 30px;
	padding: 0;
}
main .jigyoBlock .jigyoBox .pchan1 {
	width: 100px;
	height: 100px;
	background-image: url(../img/pIllustPenki.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -40px;
	right: -10px;
}

main .accessBlock {
	color: #333;
	margin: 0;
	padding: 50px 0 50px;
}
main .accessBlock h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0 10px 15px;
	padding: 0 0 0 30px;
	background-image: url(../img/hakePurple.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .accessBlock iframe {
	width: 100%;
	height: 350px;
}

main .nagareBlock {
	color: #333;
	margin: 0;
	padding: 80px 10px 80px;
	background-color: #F5F0CE;
	background-image: url(../img/asiatoBg.png),url(../img/cloudBgHigh_yellow.svg),url(../img/cloudBgLow_yellow.svg);
	background-repeat: no-repeat,repeat-x,repeat-x;
	background-size: 200px,800px,800px;
	background-position: -100px calc(100% - 20px),center top,center calc(100% + 2px);
}
main .nagareBlock h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0 10px 15px;
	padding: 0 0 0 30px;
	background-image: url(../img/hakeRed.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
}
main .nagareBlock > p {
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
	margin: 0 10px 15px;
}
main .nagareBlock .nagareBox .nagare {
	width: 100%;
	margin: 0 0 20px;
	padding: 15px;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 1px 1px 3px #333;
	position: relative;
}
main .nagareBlock .nagareBox .nagare h4 {
	font-size: 1.6rem;
	text-align: center;
	margin: 0 0 10px;
}
main .nagareBlock .nagareBox .nagare > p {
	font-size: 1.4rem;
	text-align: left;
	line-height: 1.8;
}
main .nagareBlock .nagareBox .nagare .pchan1 {
	width: 80px;
	height: 80px;
	background-image: url(../img/pIllustOsyaberi.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: right;
}
main .nagareBlock .nagareBox .nagare .pchan2 {
	width: 80px;
	height: 80px;
	background-image: url(../img/pIllustMegane.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: right;
}
main .nagareBlock .nagareBox .nagare .pchan3 {
	width: 80px;
	height: 80px;
	background-image: url(../img/pIllustNattoku.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 8;
	float: right;
}
main .nagareBlock .nagareBox .nagare .kokomade {
	font-size: 1.4rem;
	color: #fff;
	width: 150px;
	height: 80px;
	margin: 0;
	padding: 32px 0 0;
	background-image: url(../company/img/kokomade.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -46px;
	right: 0;
	z-index: 7;
}
main .nagareBlock .nagareBox .nagare .yajirusi {
	width: 31px;
	height: 80px;
	background-image: url(../company/img/yajirusiTate.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	bottom: -50px;
	right: 10px;
	z-index: 9;
}
main .nagareBlock .nagareBox .nagare .yajirusiUp {
	width: 31px;
	height: 80px;
	background-image: url(../company/img/yajirusiTate.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	top: -62px;
	right: 10px;
	z-index: 9;
}
main .nagareBlock .nagareBox .fukidasi {
	font-size: 1.4rem;
	line-height: 1.5;
	text-align: left;
	width: 260px;
	height: 150px;
	margin: -20px auto 10px;
	padding: 55px 20px 0 50px;
	background-image: url(../company/img/fukidasiBg.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	z-index: 8;
}



@media screen and (min-width: 375px){
	/*	約375px以上の画面向けスタイル second tablet */

}



@media screen and (min-width: 560px){
	/*	約560px以上の画面向けスタイル second tablet */

	/* ---------------------------------------- */
	/* 共通 */
	/* ---------------------------------------- */
	main .yamadaBlock {
		padding: 50px 0 0;
		background-position: calc(100% + 20px) calc(100%);
		background-size: 250px;
	}
	main .yamadaBlock .aisatuBlock .asiatoBar {
		margin: 0 0 15px;
	}

	/* 概要
	---------------------------------------- */
	main .yamadaBlock .aisatuBlock .asiatoBar span {
		bottom: -31px;
	}

	/* ごあいさつ */
	main .yamadaBlock .aisatuBlock {
		margin: 0 10px;
	}
	main .yamadaBlock .aisatuBlock .daihyoBox {
		display: flex;
		justify-content: space-between;
		gap: 30px;
	}
	main .yamadaBlock .aisatuBlock .daihyoBox .card {
		width: 500px;
		order: 2;
	}
	main .yamadaBlock .aisatuBlock .daihyoBox .textBox {
		margin: 0;
	}
	main .yamadaBlock .aisatuBlock .daihyoBox .textBox .syumiBox {
		width: 338px;
	}

	/* スタッフ紹介 */
	main .yamadaBlock .aisatuBlock .staffBlock {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 20px;
	}
	main .yamadaBlock .aisatuBlock .staffBlock .staffBox {
		width: calc((100% - 20px) / 2);
	}
	main .yamadaBlock .aisatuBlock .staffBlock .textBox {
		margin: -45px 0 0;
	}
	main .yamadaBlock .pchan1 {
		width: 150px;
		height: 150px;
		right: calc(50% - 400px);
		bottom: 30px;
	}

	main .gaiyoBlock {
		padding: 80px 10px 50px;
	}
	main .gaiyoBlock h2 {
		font-size: 2.4rem;
	}
	main .gaiyoBlock figure {
		width: 50%;
		float: right;
		margin: 15px 0 0 15px;
	}
	main .gaiyoBlock dl {
		width: calc(50% - 15px);
	}
	main .gaiyoBlock dl dt {
		width: 120px;
	}
	main .gaiyoBlock dl dd {
		width: calc(100% - 120px);
	}

	main .jigyoBlock h2 {
		font-size: 2.4rem;
	}

	main .accessBlock h2 {
		font-size: 2.4rem;
	}

	main .nagareBlock {
		padding: 80px 10px 160px;
		background-size: 250px,800px,800px;
	}
	main .nagareBlock h2 {
		font-size: 2.4rem;
	}
	main .nagareBlock .nagareBox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
			-ms-flex-pack: justify;
				justify-content: space-between;
		position: relative;
	}
	main .nagareBlock .nagareBox .nagare {
		width: calc(25% - 20px);
		height: 200px;
	}
	main .nagareBlock .nagareBox .nagare .pchan1 {
		float: none;
		position: absolute;
		bottom: 0;
		left: calc(50% - 40px);
	}
	main .nagareBlock .nagareBox .nagare .pchan2 {
		float: none;
		position: absolute;
		bottom: 0;
		left: calc(50% - 40px);
	}
	main .nagareBlock .nagareBox .nagare .pchan3 {
		float: none;
		position: absolute;
		bottom: 0;
		left: calc(50% - 40px);
	}
	main .nagareBox .fukidasi {
		position: absolute;
		bottom: -120px;
		left: calc(50% - 100px);
	}
	main .nagareBlock .nagareBox .nagare .yajirusi {
		bottom: auto;
		right: -30px;
		top: -20px;
		transform: rotate(-90deg);
	}
	main .nagareBlock .nagareBox .nagare .yajirusiUp {
		left: -30px;
		top: -20px;
		transform: rotate(-90deg);
	}
}





@media screen and (min-width: 980px){
	/*	約980px以上の画面向けスタイル pc style */

	main {
		position: relative;
	}
	main .yamadaBlock {
		padding: 80px calc(50% - 480px);
		background-position: calc(100% - 10px) bottom;
		background-size: 300px;
	}
	main .yamadaBlock h2 {
		font-size: 3rem;
	}
	main .yamadaBlock .aisatuBlock {
/*		padding: 0 calc(50% - 480px) 50px; */
	}
	main .yamadaBlock .aisatuBlock h3 {
		font-size: 2.4rem;
		padding: 0 0 0 50px;
	}
	main .yamadaBlock .aisatuBlock .staffBlock .staffBox {
		width: calc((100% - 40px) / 3);
	}
	main .yamadaBlock .pchan1 {
		right: calc(50% - 480px);
	}
	main .gaiyoBlock {
		padding: 80px calc(50% - 480px);
	}
	main .jigyoBlock {
		padding: 80px calc(50% - 480px);
	}
	main .accessBlock h2 {
		margin: 0 calc(50% - 480px) 10px;
	}
	main .nagareBlock {
		padding: 80px calc(50% - 480px) 160px;
		background-size: 290px,800px,800px;
	}
	main .snsBlock {
		margin: 12px auto 0;
		background: none!important;
		position: absolute;
		top: 0;
		right: calc(50% - 480px);
	}

	/* フッタ */
	footer .pchanIllustFoot {
		left: calc(50% - 480px);
	}
	footer .footBtn {
		right: calc(50% - 480px);
	}
}



@media screen and (min-width: 1200px){
	/*	約1200px以上の画面向けスタイル pc style */

	/* ---------------------------------------- */
	/* 共通 */
	/* ---------------------------------------- */
	/* フッタ */
	footer .pchanIllustFoot {
		left: calc(50% - 580px);
	}
	footer .footBtn {
		right: calc(50% - 580px);
	}


	/* 一覧
	---------------------------------------- */
	main .yamadaBlock {
		padding: 80px calc(50% - 600px);
	}
	main .yamadaBlock .aisatuBlock {
/*		padding: 0 calc(50% - 600px) 50px; */
	}
	main .yamadaBlock .aisatuBlock .staffBlock .staffBox {
/*		width: calc((100% - 60px) / 4); */
	}
	main .yamadaBlock .pchan1 {
		right: calc(50% - 600px);
	}

	main .gaiyoBlock {
		padding: 80px calc(50% - 600px);
	}

	main .jigyoBlock {
		padding: 80px calc(50% - 600px);
	}
	main .accessBlock h2 {
		margin: 0px calc(50% - 600px) 20px;
	}

	main .nagareBlock {
		padding: 80px calc(50% - 600px) 160px;
	}

	main .snsBlock {
		right: calc(50% - 600px);
	}
}



@media screen and (min-width: 1600px){
	/*	約1200px以上の画面向けスタイル pc style */

/*
	main .yamadaBlock .aisatuBlock .staffBlock .staffBox {
		width: calc((100% - 80px) / 5);
	}
*/
}
