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

/*=======================
#works
=======================*/
#works_img {
	margin:0;
	background-image:url(../img/bg_works.jpg);
	background-repeat:no-repeat;
	background-color:white;
	height:600px;
}
/* ウィンドウ幅が1201px以上の場合の記述 */
@media screen and (min-width:1201px) {
#works_img {
background-size:cover;
}
}
#works_img p{
	text-align:center;
	padding-top:240px;
	position: relative;
	z-index: 10;
}
#works_txt{
	background-color:#404040;
	color:white;
	padding-bottom:130px;
	position: relative;
}
#works_detail{
	max-width: 1100px;
	width: 100%;
	margin:0 auto 0 auto;
	padding-bottom:70px;
	letter-spacing: -.40em;
	text-align: center;
}
#works_detail p{
	max-width: 200px;
	width: 18.1818%;
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	/*margin-right: 1.8181%;*/
}
#works_detail p:last-of-type{
	margin-right: 0;
}
#works_detail p img{
	width: 100%;
	height: auto;
}
#works_detail p a:hover{
	opacity:0.7;
}
#works_txt p a:hover{
	opacity:0.7;
}

#works_txt .contaier{
	position: relative;/*
	height: 287px;*/
    height: 500px;
}
#works_txt .contaier .title_block{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}
#works_txt .contaier h2{
	position: absolute;
	top: 18px;
	left: 0;
	right: 0;
	margin: auto;
}
#works_txt .contaier h2 + p{
	position: absolute;
	left: 0;
	right: 0;
	top: 95px;
	margin: auto;
}
#works_txt .contaier .txt_block{
	position: absolute;
	left: 0;
	right: 0;
	top: 112px;
	margin: auto;
}
#works_txt .contaier .txt_block2{
	position: absolute;
	left: 0;
	right: 0;
	top: 100px;
	margin: auto;
}

#works_detail{
	position: relative;
	/*height: 400px;*/
	padding-top: 36.3636%;
}

#works_content5{
    width: 1100px;
    text-align: left;
    color: #37c786;
    line-height: 2;
    padding-top: 220px;
}

@media screen and (min-width:1100px) {
#works_detail{
	position: relative;
	height: 400px;
	padding-top: 0;
}
}
#works_detail p{
	position: absolute;
	top: 0;
}
#works_detail p:nth-of-type(1){
	left: 0;
}
#works_detail p:nth-of-type(2){
	left: 20.5%;
}
#works_detail p:nth-of-type(3){
	left: 0;
	right: 0;
	margin: auto;
}
#works_detail p:nth-of-type(4){
	right: 20.5%;
}
#works_detail p:nth-of-type(5){
	right: 0;
}
#works_detail + p{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100px;
	margin: auto;
}

/*=======================
#access
=======================*/
#access_bar{
	margin:0;
	font-size:1px;
	color:white;
	background-color:white;
}
#access_img {
	margin:0;
	background-image:url(../img/bg_access.jpg);
	background-repeat:no-repeat;
	background-color:#404040;
	height:600px;
}
/* ウィンドウ幅が1201px以上の場合の記述 */
@media screen and (min-width:1201px) {
#access_img {
	background-size:cover;
}
}
#access_img p{
	text-align:center;
	padding-top:240px;
	position: relative;
	z-index: 10;
}
#about_txt2{
	/*height:400px;*/
	padding-bottom: 60px;/*
	background:#E8EAEB;*/
    background: #fff;
}
#about_txt2 table{
	max-width:760px;
	width: 100%;
	margin:0 auto 0 auto;
}
#about_txt2 table tr td{
	padding:10px;
}
.tbl1{
	color:#37CD8C;
	text-align:right;
}
.tbl2{
	text-align:left;
}

/*=======================
#about
=======================*/
#about_txt2 .contaier{
	max-width:770px;
	width: 100%;
	margin: auto;
	letter-spacing: -.40em;
}
#about_txt2 .contaier dl {
	width: 50%;
	display: inline-block;
	vertical-align: top;
    margin-top: 20px;
}
#about_txt2 .contaier dl dt,
#about_txt2 .contaier dl dd{
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	padding: 10px;
	box-sizing: border-box;
}
#about_txt2 .contaier dl dt{
	color:#37CD8C;
	text-align:right;
	max-width: 105px;
	width: 27.2727%;
}
#about_txt2 .contaier dl dd{
	width: 72.7273%;
	text-align: left;
}
#about_txt2 .contaier dl dd p{
	padding-bottom: 20px;
}
#about_txt2 .contaier dl dd a{
	text-decoration: none;
	color: #404040;
}

#about_txt3 {
    background: #f8f8f8;
}
#about_txt3 p img{
    width: 50%;
    margin: 0 auto;
}
#about_txt3 .contaier dl {
    width: 900px;
    display: inline-block;
    vertical-align: top;
    margin-top: 20px;
    margin-bottom: 80px;
}
#about_txt3 .contaier dl dt,
#about_txt3 .contaier dl dd{
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    padding: 10px;
    box-sizing: border-box;
}
#about_txt3 .contaier dl dt{
    text-align:left;
    max-width: 700px;
    width: 77%;
    line-height: 1.7;
    font-size: 16px;
}
#about_txt3 .contaier dl dd{
    width:22%;
    text-align: left;
    font-size: 18px;
}
#about_txt3 .contaier dl dd span{
    font-size: 12px;
}
#about_txt3 .contaier dl dd em{
    font-size: 9px;
    font-style: normal;
}

/*=======================
#contact
=======================*/
.txt_box2 h2{
	color:white;
}
.txt_box2 p{
	color:white;
}

/* SP */
@media screen and (max-width: 750px){

	/*=======================
	#works
	=======================*/
	#works_img {
		height:280px;
		background-size: 150% auto;
	}
	#works_img p{
		padding: 0;
		display: block;
		max-width: 120px;
		width: 16%;
		margin: auto;
		position: relative;
		top: 50%;
		left: 0;
		right: 0;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	#works_img p img{
		width: 100%;
		height: auto;
	}
#works_txt .contaier .title_block{
    text-align:center;
}
#works_txt .contaier .title_block img {
  width:9.733333333333333%;
  height:auto;
}

	#works_detail{
		max-width: 640px;
		width: 85.3333%;
		/* margin:0 auto 0 auto; */
		padding-bottom:35px;
		letter-spacing: -.40em;
		text-align: left;
	}
	#works_detail p{
		max-width: 200px;
		width: 31.25%;
		display: inline-block;
		letter-spacing: normal;
		vertical-align: top;
		margin-right: 2.6667%;
		margin-bottom: 8px;
	}
	#works_detail p:nth-child(3n){
		margin-right: 0;
	}
	#works_detail p img{
		width: 100%;
		height: auto;
	}
	#works_detail p a:hover{
		opacity:1;
	}
	#works_txt{
		padding-bottom: 90px;
	}
	#works_txt p a:hover{
		opacity:1;
	}
	#works_detail + p{
		display: block;
		max-width: 301px;
		width: 40.1333%;
		margin: auto;
	}
	#works_detail + p img{
		width: 100%;
		height: auto;
	}
#works_content5{
		width: 90%;
}

	/*=======================
	#access
	=======================*/
	#access_img {
		height:280px;
		background-size: 150% auto;
	}
	#access_img p{
		padding: 0;
		display: block;
		max-width: 120px;
		width: 16%;
		margin: auto;
		position: relative;
		top: 50%;
		left: 0;
		right: 0;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	#access_img p img{
		width: 100%;
		height: auto;
	}

	/*=======================
	#about
	=======================*/
#about_txt2{
    padding-bottom: 30px;
}
#about_txt2 .contaier{
    width: 100%;
    margin: auto;
    font-size: 10.5px;
}
#about_txt2 .contaier dl {
    width: 100%;
    display: inline-block;
    vertical-align: top;
    letter-spacing: -.40em;
}
#about_txt2 .contaier dl dt,
#about_txt2 .contaier dl dd{
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    padding: 5px;
    box-sizing: border-box;
}
#about_txt2 .contaier dl dt{
    color:#37CD8C;
    text-align:right;
    width: 24.4736%;
}
#about_txt2 .contaier dl dd{
    width: 75.5264%;
    text-align: left;
}
#about_txt2 .contaier dl dd p{
    padding-bottom: 10px;
}
#about_txt3{
    padding-bottom: 30px;
}
#about_txt3 .contaier{
    width: 100%;
    margin: auto;
    font-size: 10.5px;
}
#about_txt3 h3{
    font-size: 20px;
}
#about_txt3 .contaier dl {
    width: 90%;
    display: inline-block;
    vertical-align: top;
    letter-spacing: -.40em;
}
#about_txt3 .contaier dl dt,
#about_txt3 .contaier dl dd{
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
    padding: 5px;
    box-sizing: border-box;
}
#about_txt3 .contaier dl dt{
    width: 100%;
    font-size: 10.5px;
}
#about_txt3 .contaier dl dd{
    width: 100%;
    text-align: center;
    padding-top: 30px;
}

	#works_txt .contaier{
		position: relative;/*
		height: 169px;*/
        height: 350px;
	}
	#works_txt .contaier h2{
		position: absolute;
		//top: 15px;
        top: calc(21px - (((1em * 1.5) - 1em) / 2));
		left: 0;
		right: 0;
		margin: auto;
    padding:0;
	}
	#works_txt .contaier h2 + p{
		position: absolute;
		left: 0;
		right: 0;
		top: 84px;
		margin: auto;
    text-align:center;
	}
	#works_txt .contaier h2 + p img{
    width: 13.3333333%;
    height: auto;
	}
	#works_txt .contaier .txt_block{
		position: absolute;
		left: 0;
		right: 0;
		//top: 142px;
    top: 101px;
		margin: auto;
    padding:0;
	}
	#works_txt .contaier .txt_block2{
		position: absolute;
		left: 0;
		right: 0;
		//top: 142px;
    top: 200px;
		margin: auto;
    padding:0;
	}

	#works_detail{
		position: relative;
		padding-top: 110%;
	}
	#works_detail p{
		position: absolute;
	}
	#works_detail p:nth-of-type(1){
		top: 0;
		left: 0;
	}
	#works_detail p:nth-of-type(2){
		top: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	#works_detail p:nth-of-type(3){
		top: 0;
		right: 0;
	}
	#works_detail p:nth-of-type(4){
		top: 50%;
		left: 0;
	}
	#works_detail p:nth-of-type(5){
		top: 50%;
		left: 0;
		right: 0;
		margin: auto;
	}
	#works_detail + p{
		position: absolute;
		left: 0;
		right: 0;
		bottom: 50px;
		margin: auto;
	}
}