@charset "utf-8";
/*------------------------------------------------------------
	トップページ
------------------------------------------------------------*/
#main .mainVisual .comBox {
	position: relative;
}
#main .mainVisual .txtBox {
	height: 100vh;
	padding-top: 1.1%;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
#main .mainVisual h2 {
	font-size: 4.4vw;
	font-weight: 700;
	line-height: 1.11;
	font-family: 'Roboto';
	letter-spacing: 1.5px;
}
#main .mainVisual h2 span {
	margin-top: 60px;
	display: block;
	font-size: 2.35vw;
	line-height: 1.26;
	letter-spacing: 1.2px;
}
@media all and (min-width: 1601px) {
	#main .mainVisual h2 {
		font-size: 7rem;
	}
	#main .mainVisual h2 span {
		font-size: 3.8rem;
	}
}

#main .mainVisual .comScroll {
	position: absolute;
	bottom: 50px;
	right: -16px;
}
#main .sec01 {
	padding: 200px 0 204px;
	background-color: #000;
	position: relative;
}
#main .sec01::after {
	content: "";
	background-color: #FFF;
	position: absolute;
	left: 0;
	top: 0px;
	z-index: 1;
	width: 100%;
	height: 100%;
	transform: scaleY(1);
	transform-origin: top;
	transition: 1.1s ease-in-out;
}
#main .sec01.on::after{
transform: scaleY(0);
}
#main .sec01 .headLine02 {
	padding-top: 27px;
	font-weight: 400;
}
#main .sec01 .headLine02:before {
    margin-top: 13px;
	}
#main .sec01 .inner {
	margin-bottom: 230px;
	position: relative;
}
#main .sec01 .slideBox {
	padding-left: 25.7%;
}

#main .sec01 .slideBox {
  width: 100%;
  margin: 30px auto 0;
}
#main .sec01 .slideBox .slick-list {
  padding: 0 14.2% 0 0;
	width: 85.8%;
}
#main .sec01 .slideBox li {
  margin: 0px;

}

#main .sec01 .slideBox .photo {
	width: 100%;
	position: relative;
}
#main .sec01 .slideBox .photo p{
	height: 100%;
	width: 100%;
	background-size: cover;
	background-position: center;
}

#main .sec01 .slideBox .photo img{
	width: 100%;
	opacity: 0 !important;
}

#main .sec01 .photo video{
	position: absolute;
	left: 0;
	top: 50%;
    transform: translateY(-50%);
    height: auto;
    width: 100%;
}
#main .sec01 .inner .comTtl_box {
	opacity: 0;
	display: none;
}

#main .sec01 .inner .comTtl {
	position: absolute;
	left: 10%;
	bottom: 20%;
	cursor: pointer;
}
#main .sec01 .comTtl box{
	visibility: hidden;
}
#main .sec01 .comLink a {
	color: #f0f0f0;
}
#main .sec01 .comLink a::after{
	background: url(../../img/common/icon01_w.png) no-repeat center bottom;
	background-size: 18px auto;
}
#main .sec02 {
	padding: 249px 0 0px;
}
#main .sec02 .headLine02 {
	margin-bottom: 154px;
}
#main .sec02 .comTtl {
	margin: 0 0 43px 11.7%;
	color: #676767;
	cursor: pointer;
}
#main .sec02 .comTtl span {
	margin-bottom: 15px;
	font-weight: 700;
	font-size: 4.1rem;
	color: #000;
}
@media all and (max-width: 1100px) {
#main .sec02 .comTtl span {
	font-size: 3.8rem;
}
}

#main .sec02 .comTtl .item_client{
	font-size: 21px;
	font-weight: bold;
	color: #000;
margin-bottom: 15px;
}
#main .sec02 .projects_item {
	margin-bottom: 240px;
}
#main .sec02 .projects_item a{
	cursor: default;
}

#main .sec02 .comBox>div:last-of-type {
	margin-bottom: 160px;
}
#main .sec02 .photo {
	margin: 0 9.8% 0 22.5%;
	background-size:cover;
	overflow: hidden;
	cursor: pointer;
}
#main .sec02 .photo p{
	background-position: center;
	background-size:cover;
	transition: transform .75s cubic-bezier(.165,.84,.44,1);
}

#main .sec02 .projects_item a .photo:hover p {
	-ms-transform: scale(1.1);
	transform: scale(1.1);
	transition: transform 1s cubic-bezier(.165,.84,.44,1);
	transition-delay: 0s;
}

#main .sec02 .photo{
	position: relative;
}
#main .sec02 .photo img {
	width: 100%;
	opacity: 0 !important;
}
#main .sec02 .photo video{
	position: absolute;
	left: 0;
	top: 50%;
    transform: translateY(-50%);
    height: auto;
    width: 100%;
}
#main .sec03 {
	padding: 200px 0 130px;
}
#main .sec03 .headLine02 {
	margin-bottom: 118px;
}
#main .sec03 ul {
	margin: 0 5.9% 14px;
	display: flex;
	flex-wrap: wrap;
}
#main .sec03 ul li {
	width: 29.85%;
}
#main .sec03 ul li:not(:nth-child(3n)) {
	margin-right: 5.2%;
}
#main .sec03 ul li a {
	display: block;
	position: relative;
	overflow: hidden;
	background: #000;
}
#main .sec03 ul li a img {
	width: 100%;
	opacity: 0 !important;
}
@media all and (min-width: 768px) {
#main .sec03 ul li a:hover>p{
	transform: scale(1.1);
}
}
#main .sec03 ul li a>p{
	transition:transform .3s;
	background-size: cover;
	background-position: center;
}
#main .sec03 ul li a>p::after{
	content: "";
	position: absolute;
	top:0;
	left: 0;

	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	z-index: 1;
	transition: opacity .4s;
}
@media all and (min-width: 768px) {
#main .sec03 ul li a:hover>p::after{

opacity: 1;
}
}
#main .sec03 ul li .txtBox {
	padding: 0 9.5%;
	position: absolute;
	bottom: 35px;
	z-index: 10;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	opacity: 0;
    -webkit-transform: translateY(120px) translateZ(0);
    transform: translateY(120px) translateZ(0);
    transition: .4s cubic-bezier(.215,.61,.355,1) .1s,-webkit-transform .4s cubic-bezier(.165,.84,.44,1) .1s;
}

#main .sec03 .comLink{
	padding-top: 150px;
}


	#main .sec03 ul li:hover .txtBox {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}


#main .sec03 ul li .txtBox p {
	color: #f0f0f0;
	font-size: 1.5rem;
	line-height: 1.53;
}
#main .sec03 ul li .txtBox p span {
	margin-bottom: 2px;
	display: block;
	font-size: 1.4rem;
	font-family: 'Roboto';
}
#main .sec03 ul li .txtBox .date {
	margin-top: 49px;
	display: block;
	font-size: 1.4rem;
	font-family: 'Roboto';
}

/*/////*/
#main .sec16 {
	padding: 200px 0 130px;
}
#main .sec16 .headLine02 {
	margin-bottom: 118px;
}
#main .sec16 .comBox{
	position: relative;
}
#main .sec16 ul.item_box {
	margin: 0 5.9% 14px;
	display: flex;
	flex-wrap: wrap;
}
#main .sec16 ul.item_box li {
	width: 29.85%;
	margin-bottom:  5.2%;
}
#main .sec16 ul.item_box li:not(:nth-child(3n)) {
	margin-right: 5.2%;
}
#main .sec16 ul.item_box li a {
	display: block;
	position: relative;
	overflow: hidden;
}
#main .sec16 ul.item_box li a p{
	background-position: center;
	background-size: cover;

}
#main .sec16 ul.item_box li a>p{
	transition: transform .4s;
}

#main .sec16 ul li a>p::after{
	content: "";
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	z-index: 1;
	transition: opacity .4s;
	z-index: 1;
}


@media all and (min-width: 768px) {
	#main .sec16 ul li a:hover>p::after{

	opacity: 1;
	}
#main .sec16 ul.item_box li a:hover>p{
	transform: scale(1.1);
}
}

#main .sec16 ul.item_box li a img {
	width: 100%;
	opacity: 0 !important;
}
#main .sec16 ul.item_box li .txtBox {
	padding: 0 9.5%;
	position: absolute;
	bottom: 35px;
	left: 0;
	z-index: 10;
	width: 100%;
	box-sizing: border-box;
	opacity: 0;
    -webkit-transform: translateY(120px) translateZ(0);
    transform: translateY(120px) translateZ(0);
    transition: opacity .4s cubic-bezier(.215,.61,.355,1) .1s,-webkit-transform .4s cubic-bezier(.165,.84,.44,1) .1s;
}
#main .sec16 .comLinkUl{
	position: absolute;
	right: 0;
	top:0;
	white-space: nowrap;
}
#main .sec16 .comLink{
	padding-top: 150px;
}
#main .sec16 .comLinkUl.comLinkUl_under{
	position:static;
	margin-top: 70px;
	bottom: 0;
	top:auto;
}


	#main .sec16 ul li:hover .txtBox {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}


#main .sec16 ul li .txtBox p {
	color: #f0f0f0;
	font-size: 1.5rem;
	line-height: 1.53;
}
#main .sec16 ul li .txtBox p span {
	margin-bottom: 2px;
	display: block;
	font-size: 1.4rem;
	font-family: 'Roboto';
}
#main .sec16 ul li .txtBox .date {
	margin-top: 49px;
	display: block;
	font-size: 1.4rem;
	font-family: 'Roboto';
}


#main .sec04 {
	padding: 210px 0 90px;
}
#main .sec04 .headLine02 {
	margin-bottom: 0;
}
#main .sec04 .comLinkUl {
    margin: -27px 0 127px;
}
#main .sec04 .photoUl {
	display: flex;
	justify-content: space-between;
	margin-bottom: 110px;
}
#main .sec04 .photoUl li {
	width: 48%;
}
#main .sec04 .photoUl .photo {
	overflow: hidden;
	margin-bottom: 35px;
}
#main .sec04 .photoUl .photo p{
	background-size: cover;
	background-position: center;
	transition: transform .75s cubic-bezier(.165,.84,.44,1);
}
#main .sec04 .photoUl .photo img {
	width: 100%;
	opacity: 0 !important;
}

	#main .sec04 .photoUl a:hover .photo p {
		-ms-transform: scale(1.1);
		transform: scale(1.1);
		transition: transform 1s cubic-bezier(.165,.84,.44,1);
		transition-delay: 0s;
	}

#main .sec04 .photoUl .comTtl {
	color: #676767;
}
#main .sec04 .photoUl .comTtl span {
	margin-bottom: 6px;
	font-weight: 700;
	color: #000;
	font-size: 2.8rem;
	line-height: 1.14;
	letter-spacing: 0.8px;
}
#main .sec04 .photoUl .comTtl .item_client{
	font-size: 16px;
	font-weight: bold;
	color: #000;
	margin-bottom: 10px;
}
#main .sec05 {
	background: no-repeat top center #000;
	background-size: cover;

}
#main .sec05 .comBox {
	height: 100vh;
	position: relative;
}
#main .sec05 .comTtl {
	position: absolute;
	left: 0;
	bottom: 64px;
}
/*
#main .sec05 .comTtl span{
	color: #000;
}*/
#main .sec05 .comScroll {
	position: absolute;
	bottom: 51px;
	right: -17px;
}
#main .sec05 .comScroll a {
	color: #f0f0f0;
	display: block;
}
#main .sec05 .comScroll a:after {
	background-color: #fff;
}
#main .sec05 .comScroll a:before {
    background-color: #343434;
}

#main .sec05 .video_box{
	overflow: hidden;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top:0;
	z-index: 0;
}

#main .sec06 {
	background-color: #FFF;
}
#main .sec06.black {
	background-color: #000;
}
#main .sec06 .inner01 {
	padding: 226px 0 179px;
}
#main .sec06 .inner01 ul {
	margin: 0 11.7%;
	display: flex;
	flex-wrap: wrap;
}
#main .sec06 .inner01 ul li {
	width: 15.7%;
}
#main .sec06 .inner01 ul li:nth-child(2) {
	width: 20.1%;
}
#main .sec06 .inner01 ul li:last-child {
	width: 64.2%;
}
#main .sec06 .inner01 ul p {
	color: #000;
	font-family: 'Roboto';
}
#main .sec06 .inner01 ul .ttl {
	font-weight: 500;
	color: #000;
}
.lb-outerContainer {
    position: relative;
		border-radius: 0 !important;
    background-color: transparent !important;
}
.lightbox .lb-image {
    border-radius: 0px !important;
	}

.lb-data .lb-close {
    width: 15px !important;
    height: 15px !important;
    background-size: cover !important;
	}
#main .sec06 .inner01 ul a {
	color: #000;
	font-family: 'Roboto';
	text-decoration: underline;
}
#main .sec06 .inner01 .down{
	float: right;
	margin-right: 120px;
}
#main .sec06 .inner01 .down a {
	color: #000;
	font-family: 'Roboto';
	text-decoration: none;
	display: inline-block;
	position: relative;
}

#main .sec06 .inner01 .down a::after{
	position: absolute;
	content: "";
	left: -25px;
	width: 20px;
	height: 1px;
	top:50%;
	transition: .3s;
	background: #000;
}
#main .sec06 .inner01 .down a:hover::after{
	width: 30px;
	left: -35px;
}
#main .sec06.black  .inner01 ul p {
	color: #BABABA;
	font-family: 'Roboto';
}
#main .sec06.black  .inner01 ul .ttl {
	font-weight: 500;
	color: #BABABA;
}
#main .sec06.black  .inner01 ul a {
	color: #BABABA;
	font-family: 'Roboto';
	text-decoration: underline;
}
#main .sec06 .inner01 ul a:hover {
	text-decoration: none;
}
#main .sec06 .inner01 ul .txt:not(:last-child) {
	margin-bottom: 27px;
}
#main .sec06 .pattern_text .pattern_text_box{
	padding-top: 273px;
}
#main .sec06 .pattern_text .ttl {
	margin: 0 11.7% 112px;
	color: #000;
	font-size: 2.6rem;
}
#main .sec06.black .pattern_text .ttl {
	margin: 0 11.7% 112px;
	color: #BABABA;
	font-size: 2.6rem;
}
#main .sec06 .pattern_text .txt {
	margin-left: 5%;
	text-align: left;
	color: #000;
	line-height: 1.93;
}

#main .sec06.black .pattern_text .txt {
	margin-left: 5%;
	text-align: left;
	color: #BABABA;
	line-height: 1.93;
}


#main .sec06 .pattern_text .txt span {
	text-align: left;
	display: inline-block;
	padding-left: 24.5%;
}
#main .sec06 .pattern_text .txt span a{
	text-decoration: underline;
}
#main .sec06 .pattern_text .txt span a:hover{
	text-decoration: none;
}
/*//////////////////////////*/
#main .sec06 .inner02 .headLine02 {
	font-weight: 400;
	margin-bottom: 152px;
	color: #000;
}
#main .sec06.black .inner02 .headLine02 {
	color: #BABABA;
}
#main .sec06 .pattern_a{
	padding-bottom: 278px;
}
#main .sec06 .pattern_a .photo {
	margin: 0 2% 0 11.7%;
}
#main .sec06 .pattern_a .photo iframe,
#main .sec06 .pattern_a .photo video,
#main .sec06 .pattern_a .photo img {
	width: 100%;
}
#main .sec06 .pattern_a .photo iframe{}

#main .sec06 .pattern_b {
	padding-bottom: 298px;
}
#main .sec06 .pattern_b .photo01 video,
#main .sec06 .pattern_b .photo01 img {
	width: 50.75%;
}
#main .sec06 .pattern_b .photo02 {
	text-align: right;
}
#main .sec06 .pattern_b .photo02 video,
#main .sec06 .pattern_b .photo02 img {
	width: 30.75%;
	margin-top: -84px;
}
#main .sec06 .pattern_c{
	padding-bottom: 297px;
}
#main .sec06 .pattern_c .photo {
	text-align: right;
	padding-right: 19.7%;
}
#main .sec06 .pattern_c .photo video,
#main .sec06 .pattern_c .photo img {
	width: 48.8%;
}
#main .sec06 .pattern_d {
	padding-bottom: 265px;
}
#main .sec06 .pattern_d .photo {
	padding-left: 11.7%;
}
#main .sec06 .pattern_d .photo video,
#main .sec06 .pattern_d .photo img {
	width: 64.45%;
}


/*//////////////////////////*/
#main .sec06 .pattern_e{
	padding-bottom: 278px;
}
#main .sec06 .pattern_e .photo {
	margin: 0 auto;
	text-align: center;
}
#main .sec06 .pattern_e .photo video,
#main .sec06 .pattern_e .photo img {
	width: 60.6%;
}

#main .sec06 .pattern_f {
	padding-bottom: 298px;
}
#main .sec06 .pattern_f .photo01{
	text-align: left;
}
#main .sec06 .pattern_f .photo01 video,
#main .sec06 .pattern_f .photo01 img {
	width: 44.5%;
	margin-left: 9%;
}
#main .sec06 .pattern_f .photo02 {
	text-align:right;
}
#main .sec06 .pattern_f .photo02 video,
#main .sec06 .pattern_f .photo02 img {
	width: 28.77%;
	margin-right: 9%;
	margin-top: -244px;
}
#main .sec06 .pattern_g{
	padding-bottom: 298px;
}
#main .sec06 .pattern_g .photo {
	text-align: left;

}
#main .sec06 .pattern_g .photo video,
#main .sec06 .pattern_g .photo img {
	width: 47.6%;

	margin-left: 22%;
}
#main .sec06 .pattern_h {
	padding-bottom: 265px;
}
#main .sec06 .pattern_h .photo {

	text-align: right;
}
#main .sec06 .pattern_h .photo video,
#main .sec06 .pattern_h .photo img {
	width: 35.5%;
	margin-right:20.5%;
}

#main .sec06 .pattern_i {
	padding-bottom: 265px;
}
#main .sec06 .pattern_i .photo {
	padding-left: 0%;
}
#main .sec06 .pattern_i .photo video,
#main .sec06 .pattern_i .photo img {
	width: 30%;
}


#main .sec06 .next_project{
	padding: 0;
	height: 400px;
	display: table;
	width: 100%;
	vertical-align: middle;
	background-size: cover;
	background-position: center;
	position: relative;
}

#main .sec06 .next_project .bg{
	opacity: 0;
	position: absolute;
	left: 0;
	top:0;
	width: 100%;
	height: 100%;
	z-index: 0;
	transition: .8s;
}
#main .sec06 .next_project:hover .bg{
	opacity: 1;

}

#main .sec06 .next_project .comLink{
	display: table-cell;
	vertical-align: middle;
z-index: 100;
position: absolute;
width: 100%;
height: 0;
z-index: 1;
left: 0;
top:50%;
}

#main .sec06 .next_project .comLink a{
	line-height: 1.7;
	color: #FFF !important;
	opacity: 1 !important;
width: 100%;
	transform: translateY(-50%);
}

#main .sec06 .next_project .comLink a span{
	color: #000 !important;
	font-size: 16px;
	font-weight: 400;
transition: .3s;
}

#main .sec06 .next_project .comLink a b{
	color: #FFF !important;
	font-size: 43px;
	display: inline-block;
	line-height: 1.3;
	margin-top: 20px;
}
#main .sec06 .next_project .comLink a b box{
	height: 1.4em;

}

#main .sec06.black .next_project .comLink a span{
	color: #000;
	font-size: 16px;
	font-weight: 400;
	transition: .3s;
}


#main .sec06 .next_project .comLink a b{
	color: #000 !important;
transition: .3s;
}


#main .sec06.black .next_project .comLink a b{
	color: #000;
	font-size: 43px;
	transition: .3s;
}


#main .sec06.black .next_project .comLink a span{
	color: #FFF !important;
	display: inline-block;
}


#main .sec06.black .next_project .comLink a b{
	color: #FFF !important;

}
#main .sec06 .next_project .comLink a {
	background:url("");
	padding-bottom: 0;
}
#main .sec06 .next_project .comLink a::after{
	display: none;
}
#main .sec06 .next_project .comLink a .atr{
height: 48px;
	    display: inline-block;
width: 100%;

	    background: url(../../img/common/icon01_b.png) no-repeat center bottom;
	    background-size: 18px auto;
			transition: .3s;
			opacity: 0 !important;
}
#main .sec06 .next_project .comLink a:hover .atr.on{

	    background: url(../../img/common/icon01_w.png) no-repeat center bottom;
	    background-size: 18px auto;
}
#main .sec06 .next_project .comLink a .atr.on{
	opacity: 0.4 !important;
}

#main .sec06.black .next_project .comLink a .atr{
height: 48px;
	    display: inline-block;
width: 100%;

	    background: url(../../img/common/icon01_w.png) no-repeat center bottom;
	    background-size: 18px auto;
			transform: translateX(5px);
}

#main .sec06 .next_project .comLink a:hover .atr.on{
	transform: translateX(5px) !important;
	opacity: 1 !important;
}


#main .sec06 .next_project:hover .comLink a b{
	color: #FFF !important;
}


#main .sec06 .next_project:hover  .comLink a span{
	color: #FFF !important;

}


#main .sec06 .next_project:hover  .comLink a span{
	color: #BABABA;
}

#main .sec06 .next_project:hover  .comLink a b{
	color: #BABABA;
}




#main .sec07 {
	padding: 44px 0 271px;
	background-color: #000;
}
#main .sec07 .topBox {
	padding: 0 3.7%;
	margin-bottom: 227px;
}
#main .sec07 .topBox .textImg {
	float: left;
	width: 234px;
}
#main .sec07 .topBox .comLinkUl {
	margin-top: -2px;
	float: right;
	width: 350px;
}
#main .sec07 .topBox .comLinkUl li a {
	color: #BABABA;
	font-weight: 500;
	font-size: 1.6rem;
}
#main .sec07 .topBox .comLinkUl .on a {
	padding-bottom: 5px;
	color: #BABABA;
	border-bottom: 2px solid #fff;
}
@media all and (min-width: 768px) {
	#main .sec07 .topBox .comLinkUl a:after {
		background-color: #fff;
	}
}
#main .sec07 .headLine01 {
	color: #FFF;
	padding-top: 208px;
}
#main .sec07 .topTxt {
	margin: -2px 11.5% 204px;
	color: #BABABA;
	font-size: 1.6rem;
	line-height: 1.875;
	opacity: 0;
}
#main .sec07 .headLine02 {
	margin-bottom: 96px;
}
#main .sec07 .inner {
	position: relative;
}
#main .sec07 .imgBox {
	display: flex;
	justify-content: center;
	align-items: end;
}
#main .sec07 .imgBox .img {
	margin: 0 auto;
	padding: 30px 0px 0px 7%;
	width: 70%;
	box-sizing: border-box;
}
#main .sec07 .imgBox .txtBox {
	width: 30%;
line-height: 1.8;
	padding-left: 11.5%;
	margin: 50px auto 0;
	color: #BABABA;
	min-height: 400px;
}
#main .sec07 .imgBox .txtBox p {
	color: #BABABA;
	padding-bottom: 50px;
	margin-left: -40%;

	line-height: 1.1 !important;
}
#main .sec07 .imgBox .txtBox .ttl {
	margin-bottom: 12px;
	font-size: 4.3rem;
	color: #F0F0F0;
	font-weight: 500;
	font-family: 'Roboto';
	line-height: 1.4;
}


#main .sec07 .comNext {
	left: 11.5%;
	bottom: -40px;
	text-align: left;
}
#main .sec07 .comNext .num{
	padding-right: 0;

}
#main .sec07 .comNext .num::before{
	display: none;
}
#main .sec07 .comNext .next span{

}
#main .sec07 .comNext .num::after{
	display: none;
}
#main .sec08 {
    padding: 189px 0 127px;
}
#main .sec08 .headLine02 {
    margin-bottom: 133px;
}
#main .sec08 h3 {
    margin: 0 auto 97px;
    font-size: 3.4rem;
    font-weight: 400;
    width: 76.8%;
    letter-spacing: 0.5px;
}
#main .sec08 .txtBox {
    margin: 0 auto;
    width: 57.24%;
}
#main .sec08 .txtBox p {
    margin-bottom: 30px;
    font-size: 1.6rem;
    line-height: 1.875;
}
#main .sec08 .txtBox .txt {
    margin-bottom: 90px;
}
#main .sec09 {
	  margin-top: 104px;
		padding-top: 100px;
    margin-bottom: 204px;
}
#main .sec09 .headLine02 {
    margin-bottom: 122px;
}
#main .sec09 ul {
    margin: 0 auto 93px;
    width: 88.16%;
    display: flex;
    flex-wrap: wrap;
}

#main .sec09 ul li {
    padding-bottom: 71px;
    margin-right: 5.225%;
    width: 29.85%;
		opacity: 0;

}
#main .sec09 ul li a{

}

#main .sec09 ul li img{
	opacity: 1;
	transition: .3s;
}
#main .sec09 ul li:hover img{
	opacity: 0.5;
}
#main .sec09 ul li:nth-child(3n) {
    margin-right: 0;
}
#main .sec09 ul li a {
    display: block;
    color: #BABABA;
    position: relative;
}
#main .sec09 ul li a>img{
	opacity: 1 !important;
}

#main .sec09 ul li a span>img{
	opacity: 1 !important;
}

#main .sec09 ul li a:before {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: rgba(0,0,0,0);
    content: "";
    opacity: 0;

    transition: .4s ;
}

#main .sec09 ul li a:hover:before {
	opacity: 1;
	background: rgba(0,0,0,0.8);
}

#main .sec09 ul li .txt {
    position: absolute;
    left: 0;
    top: 50%;
	margin-top: -35px;
    right: 0;
    font-size: 1.9rem;
    text-align: center;

    opacity: 0;
    -webkit-transform: translateY(0px) translateZ(0);
    transform: translateY(0px) translateZ(0);
    transition: opacity .4s cubic-bezier(.215,.61,.355,1) .1s,-webkit-transform .4s cubic-bezier(.165,.84,.44,1) .1s;
}
#main .sec09 ul li .txt:hover{
opacity: 1;
}
#main .sec09 ul li .txt span {
    margin-bottom: 9px;
    display: block;
    font-size: 1.3rem;
}
#main .sec09 ul li .txt img {
    width: 44px;
		display: block;
		margin: 15px auto 20px;
}
@media all and (max-width: 1024px) {
	#main .sec09 ul li .txt span {
    margin-bottom: 9px;
}
	#main .sec09 ul li .txt img {
	    width: 30px;
			display: block;
			margin: 10px auto;
	}
	#main .sec16 ul.item_box li:not(:nth-child(3n)) {
		    margin-right: 0%;
	}
	#main .sec16 ul.item_box li:not(:nth-child(2n)) {
		    margin-right: 5%;
	}
	#main .sec16 ul.item_box li {
		width: 47.5%;
	}
#main .mainVisual h2 span{
	    font-size: 3.35vw;
			margin-top: 40px;
}
}

#main .sec10 {
    margin-bottom: 297px;
    display: flex;
    align-items: center;
}
#main .sec10 .photo {
    width: 50%;
    order: 1;
}
#main .sec10 .textBox {
    width: 50%;
}
#main .sec10 .textBox dl {
    margin-left: 38.7%;
    line-height: 1.93;
    letter-spacing: 1.5px;
		padding-right: 30px;
}
#main .sec10 .textBox dt {
    margin-bottom: 13px;
    font-family: 'Roboto';
    font-weight: 500;
}
#main .sec10 .textBox dd {
    margin-bottom: 41px;
    letter-spacing: 0.5px;
}
#main .sec10 .textBox dd:last-child {
    margin-bottom: 0;
}
#main .sec10 .textBox dd a:hover{
	text-decoration: underline;
}
#main .sec11 {
    margin: 0 auto 200px;
    width: 71%;
}
#main .sec11 .inner {
    padding: 0 0 150px 6.8%;
}
#main .sec11 .inner .lBox {
    float: left;
    width: 50%;
}
#main .sec11 .inner .rBox {
    float: right;
    width: 40.7%;
}
#main .sec11 .btm {
    margin: 0 6.8%;
}
#main .sec11 .btm p {
    margin-top: -2px;
    font-family: 'Roboto';
    line-height: 1.71;
    font-weight: 400;
    letter-spacing: 0.85px;
}
#main .sec11 .headLine03{
	font-weight: 600;
}
#main .sec12 {
	padding-top: 210px;
    margin-bottom: 90px;
}
#main .sec12 .comBack {
    margin: 0 auto 136px;
    width: 82.5%;
}
#main .sec12 .comBox {
    margin: 0 auto;
    width: 51.16%;
}
#main .sec12 .photo {
    margin-bottom: 116px;
}
#main .sec12 .photo img {
    width: 447px;

}
#main .sec12 dt {
    margin-top: 4px;
    float: left;
    font-size: 2.6rem;
}
#main .sec12 dt span {
    display: block;
    font-size: 1.5rem;
}
#main .sec12 dd {
    padding-left: 13em;
    line-height: 1.93;
    letter-spacing: -0.5px;
}
#main .sec12 dd a{
	text-decoration: underline;
	transition: opacity .3s;;
}
#main .sec12 dd a:hover{
	opacity: 0.5;
}
#main .sec13 {
    margin: 0 auto 0px;
    width: 64.2%;
		padding-bottom: 188px;
}
#main .sec13 .headLine03 {
    margin-left: 25%;
}
#main .sec13 .comDl {
    margin-left: 25%;
}
#main .sec14 {
   margin-bottom: 188px;
    padding: 200px 0 0px;
}
#main .sec14 .comBox{
	position: relative;
}
#main .sec14 .topBox {
    margin-bottom: 100px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#main .sec14 .topBox .headLine02 {
    margin-bottom: 0;
    width: 30%;
    box-sizing: border-box;
}
#main .sec14 .topBox .comLinkUl {
    width: 70%;
}

#main .sec14 .comLinkUl.ul_end {
    padding-top: 180px;
}

#main .sec14 .comBack{
	position: absolute;
	left: 0;
	bottom: 0;
}
#main .sec14 p{

}
#main .sec14 p {
    margin: 0 auto 30px;
    width: 65.7%;
    font-size: 1.6rem;
    line-height: 1.6;
}
#main .sec14 .ttl {
    margin-bottom: 87px;
    font-size: 2.6rem;
}
#main .sec14 .ttl span {
    margin-top: 22px;
    letter-spacing: 1.1px;
    display: block;
    font-family: 'Roboto';
    font-size: 1.4rem;
}
#main .sec14 .ttl span a {
    margin-left: 20px;
    display: inline-block;
    color: #9E9E9E;
    text-decoration: underline;
}
#main .sec14 .ttl span a:hover {
    text-decoration: none;
}
#main .sec14 .photo {
    margin: 0 auto 132px;
    max-width: 80.32%;
	position: relative;
}

#main .sec14 .photo {
    margin: 0 auto 132px;
    max-width: 80.32%;
    position: relative;
}
#main .sec14 .post_content img{
	height: auto !important;
	    width: 63vw !important;

}
#main .sec14 .post_content .img-in-div{
	margin-left:-7vw;
	margin-bottom: 132px;
    width: 63vw !important;
}

#main .sec14 .post_content .copyright{
	display: block;
	opacity: 0.85;
	width: 100%;
	text-align: right;
	font-size: 12px;
	font-family: 'Roboto',sans-serif　;
	color: #676767;
}
#main .sec14 .post_content{
	margin: 0 auto 30px;
    width: 65%;
    font-size: 1.6rem;
    line-height: 1.875;
}
#main .sec14 .post_content a{
	text-decoration: underline;
	background-position: left 1px top 9px !important;
	transition: .3s;
}

#main .sec14 .post_content h1{
	font-size: 2.6rem;
	font-weight: 500;
}
#main .sec14 .post_content h2{
	font-size: 2rem;
	font-weight: 500;
}
#main .sec14 .post_content h3{
	font-size: 1.7rem;
	font-weight: 500;
}
#main .sec14 .post_content h4{
	font-size: 1.4rem;
	font-weight: 500;
}
#main .sec14 .post_content h5{
	font-size: 1.2rem;
	font-weight: 500;
}

#main .sec14 .post_content a:hover{
	opacity: .5;
}
#main .sec14 .photo::after{
	content: attr(data-copy);
	position: absolute;
	margin-bottom: -18px;

	font-size: 11px;
	letter-spacing: 0.078em;
	color: #888;
	bottom: 0;
	right: 0;
}

#main .sec14 .photo img {
    width: 100%;
}
#main .sec14 p:last-child {
    margin-bottom: 0;
}
#main .sec14 p a {
    text-decoration: underline;
}
#main .sec14 p a:hover {
    text-decoration: none;
}




#main .sec15 {
	padding-top: 260px;
	padding-bottom: 160px;
    box-sizing: border-box;
}
#main .sec15 .headLine01 {
    margin-bottom: 41px;
}
#main .sec15 .comBox .headLine01 {
    margin-bottom: 59px;
    line-height: 1.2;
		font-weight: 600;
}
#main .sec15 .topBox .comBack {
    float: left;
    width: 30%;
}
#main .sec15 .topBox .comLinkUl {
    float: right;
    width: 70%;
}
#main .sec15 .topTxt {
    margin: 0 auto 177px;
    width: 76%;
    font-size: 1.6rem;
    line-height: 1.875;
}
#main .sec15 .headLine02 {
    margin-bottom: 112px;
    color: #000;
}
#main .sec15 .headLine02::before {
    background: #000;
}
#main .sec15 .tableBox {
    margin: 0 auto 4px;
    width: 78%;
}
#main .sec15 .tableBox table {
    width: 100%;
    border-collapse: collapse;
}
#main .sec15 .tableBox table td,
#main .sec15 .tableBox table th {
    padding: 13px 0 12px 10px;
    font-weight: 400;
    text-align: left;
    vertical-align: middle;
    letter-spacing: 0.3px;
}
#main .sec15 .tableBox table th {
    width: 22.7%;
    letter-spacing: 0.5px;
		vertical-align: top;
}
#main .sec15 .tableBox table a{
	text-decoration: underline;
}

#main .sec15 .comLink{
	padding-top:165px

}
#main .sec15 .tableBox table tr:first-child td,
#main .sec15 .tableBox table tr:first-child th {
    padding: 13px 0 20px 10px;
}
#main .sec15 .tableBox table td span {
	display: block;
}
#main .sec17 {
	padding-top: 252px;
	padding-bottom: 160px;
    box-sizing: border-box;
}
#main .sec17 .formBox {
    position: relative;
    margin: 0 auto 85px;
    width: 80%;
}
#main .sec17 form {
    margin: 0 auto;
    font-weight: 500;
    font-size: 1.5rem;
    font-family: 'Roboto' !important;
    width: 74.8%;
    box-sizing: border-box;
}
#main .sec17 .headLine_s{
margin-left: 11.6%;
	line-height: 1.69;
}

#main .sec17 .formBox .formUl {
    margin-right: 25%;
		margin-left: 11.6%;
    display: flex;
    flex-wrap: wrap;
    letter-spacing: 1.5px;
}

#main .sec17 .formUl input {
    font-size: 1.5rem;
    height: 40px;
    width: 100%;
    font-family: 'Roboto' !important;
		font-weight: 500;
    border-radius: 0;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#main .sec17 .formUl textarea {
    font-size: 1.5rem;
    min-height: 26px;
		height: 26px;
    width: 100%;
		line-height: 1.6;
    font-family: 'Roboto' !important;
		font-weight: 500;
    border-radius: 0;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
		min-width: 100%;
		resize: vertical;
}

#main .sec17 .formUl li {
    padding-bottom: 3px;
    margin: 0 6.4% 50px 0;
    width: 46.8%;
    display: table;
	cursor: pointer;
    border-bottom: 1px solid #BABABA;
		transition:border-bottom .3s;
}
div.wpcf7-validation-errors{
	width: auto !important;
	    display: inline-block;
			border-color: #F00 !important;
			margin-left: 0 !important;

}
div.wpcf7 .screen-reader-response{
	display: none !important;
	position: static !important;
	width: 600px;

	margin:40px auto 0 !important;

	overflow: visible !important;
	left: 50% !important;
	pointer-events: none !important;
	width: auto !important;
	height: auto !important;
	clip:auto !important;
}
#main .sec17 .formUl li:nth-child(2n) {
    margin-right: 0;
}
#main .sec17 .formUl li:last-child {
    width: 100%;
    margin: 0;
}
#main .sec17 .formUl li > span {
    display: table-cell;
    text-align: left;
    vertical-align: middle;
		font-family: 'Roboto' !important;
		font-weight: bold;
}

#main .sec17 .formUl li > span.mes {
    display: table-cell;
    text-align: left;
    vertical-align: top;
}
#main .sec17 .formUl li > span {
    display: table-cell;
    text-align: left;
    vertical-align: middle;
}
#main .sec17 .formUl li .must {
    margin-left: 3px;
    color: #BABABA;
}
#main .sec17 .formUl li .txt {
    width: 22%;
		white-space: nowrap;
		cursor: default !important;
}
#main .sec17 .formUl li .input {
    padding: 0;
    width: 85%;
}
#main .sec17 .formUl li:last-child .txt {
    width: 12%;
}
#main .sec17 .formUl li:last-child .input {
    width: 88%;
}
#main .sec17 .submit {
    position: absolute;
    width: 14.75%;
    right: -10px;
    bottom: 1px;
}
#main .sec17 .submit li {
    padding-right: 40px;
    cursor: pointer;
    transition: .3s;
		position: relative;
}
#main .sec17 .submit input {
    padding: 19px 0;
    position: relative;
    width: 100%;
		min-width: 120px;
    border-radius: 0;
    border: none;
    text-align: left;
    font-size: 1.5rem;
    font-weight: 500;
    font-family: 'Roboto';
    letter-spacing: 1.5px;
    background: url("../img/common/icon01.png") no-repeat left 75px center;
    background-size: 18px 13px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: .3s;

}
div.wpcf7 .ajax-loader{
	display: none !important;
}
#main .sec17 .submit li::after {
	content: "";
	background: #000;
	height: 3px;
	width: 140px;
	transform-origin: left;
	transform: scaleX(0);
	position: absolute;
	left: 0;
	bottom: 0px;
	transition: 1s;
}
#main .sec17 .submit li.on::after {
	transform: scaleX(1);
}

@media all and (max-width: 1024px) {
	#main .sec01 .inner .comTtl {
		left: 6%;
	}
	#main .sec02 .comTtl {
		margin-left: 5.7%;
	}
	#main .sec02 .photo {
		margin: 0 4.9% 14px 15%;
	}
	#main .sec03 ul {
		margin: 0 0 14px;
	}
	#main .sec03 ul li .txtBox {
		bottom: 10px;
	}

	#main .sec07 .imgBox .img {
		margin: 0 4% 0 1.5%;
	}
	#main .sec09 ul {
		width: auto;
	}
	#main .sec06 .inner01 ul {
		margin: 0 5.7%;
	}
	#main .sec09 ul li .txt {
		margin-top: -34px;
	}
	#main .sec10 .photo {
	    width: 50%;
			height: 520px;
			overflow: hidden;
	}
	#main .sec10 .photo img{
	    width: auto;

			max-width: none;
			height: 520px;
	}
	#main .sec10 .textBox dl{
		padding-right:30px;
		box-sizing: border-box;
	}
		#main .sec14 p {
	    margin: 0 auto 30px;
	    width: 90%;
		}
		#main .sec14 .post_content .copyright{
			width: 100% !important;
			max-width: 100vw !important;
		}
		#main .sec14 .post_content .img-in-div{
			width: 100% !important;
			max-width: 100vw !important;
			margin-left: 0;

		}
		#main .sec14 .post_content {
    margin: 0 auto 30px;
    width: 86.5%;
	}
	#main .sec14 .post_content img {
    max-width: 100vw !important;
		  width: 100% !important;
	}
	#main .sec07 .imgBox .img {
		margin: 0 0 41px;
		padding: 0;
		padding-bottom: 0;
		width: auto;
	}
	#main .sec07 .imgBox{
		display: block;
	}
	#main .sec07 .imgBox .img.pc{
		display: none;
	}
	#main .sec07 .imgBox .img.sp{
		display: block !important;
		text-align: center;
	}
	#main .sec07 .imgBox .img img {
		width: 80%;
		display: inline-block;
	}
	#main .sec07 .imgBox .txtBox {
		width: auto;
		margin: 0 48px;
				padding-left: 0px;
				height: auto;
	}
	#main .sec07 .imgBox .txtBox p {
		margin-bottom: 23px;
		margin-left: 0;
		padding-bottom: 0;
		line-height: 1.83;
	}
	#main .sec07 .imgBox .txtBox .ttl {
		margin-bottom: 18px;
		font-size: 3rem;
		line-height: 1.2;

	}
}

    #main .sec09 ul li a:hover:before {
        opacity: 1;
    }
    #main .sec09 ul li a:hover .txt {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
    #main .sec17 .submit li:hover {

    }
    #main .sec17 .submit li:hover input {
        background-position: left 85px center;
    }
	#main .sec17 .formUl li:hover {
		border-color: #000;
	}

	#main .mainVisual h2 p.title_tt{
	margin-bottom:10px;
	}
	#main .mainVisual h2 p.title_tt img{
		width: 73.5%;
		height: auto;
	}

@media all and (max-width: 767px) {
	#main .sec14 .post_content h1{
		font-size: 2.3rem;
		font-weight: 500;
	}
	#main .sec14 .post_content h2{
		font-size: 1.8rem;
		font-weight: 500;
	}
	#main .sec14 .post_content h3{
		font-size: 1.5rem;
		font-weight: 500;
	}
	#main .sec14 .post_content h4{
		font-size: 1.2rem;
		font-weight: 500;
	}
	#main .sec14 .post_content h5{
		font-size: 1.1rem;
		font-weight: 500;
	}

	#main .mainVisual .txtBox {
		padding-top: 0;
	}
	#main .mainVisual h2 {
		margin-top: -81px;
		font-size: 7.8vw;
		line-height: 1.12;
		letter-spacing: 0;
	}
	#main .mainVisual h2 p.title_tt{
	margin-bottom:-13px;
	}
	#main .mainVisual h2 p img{
		width: 100%;
	}
	#main .mainVisual h2 p.title_tt img{
		width: 73.5%;
	}
	#main .mainVisual h2 span {
		margin-top: 5px;
		font-size: 3.8vw;
		line-height: 1.18;
		letter-spacing: 0.7px
	}
	#main .mainVisual .comScroll {
		bottom: 27px;
		right: 50%;
		margin-right: -33px;
	}
	#main .sec01 {
		padding: 137px 0 103px;
	}
	#main .sec01 .headLine02 {
		font-size: 1.3rem;
	}
	#main .sec01 .comTtl {
		margin: 0 0px 38px;
	}
	#main .sec01 .inner {
		margin-bottom: 140px;
	}

	#main .sec01 .slideBox {
		padding-left: 27px;
		margin-top: 200px;
		margin-bottom: 40px;
	}
	#main .sec01 .inner .comTtl {
		left: 0;
		pointer-events: none;
		top:-132px;
		margin-left: 27px;
	}
	#main .sec02 {
		padding: 131px 0 25px;
	}
	#main .sec02 .headLine02 {
		margin-bottom: 76px;
	}
	#main .sec02 .comTtl {
		margin: 0 0 24px;
	}
	#main .sec02 .comTtl .item_client{
		font-size: 14px;
		font-weight: bold;
		color: #000;
	margin-bottom: 0px;
	}
	#main .sec02 .comTtl span {
		margin-bottom: 6px;
		font-size: 2.2rem;
	}
	#main .sec02 .photo {
		margin: 0 0.4% 15px 14.4%;
	}
	#main .sec02 .comBox>div {
    margin-bottom: 90px;
	}
	#main .sec02 .comBox>div:last-of-type {
    margin-bottom: 80px;
	}

	#main .sec03 {
			padding: 80px 0 100px;
	}
	#main .sec03 .comLink {
    padding-top: 80px;
}
	#main .sec03 .headLine02 {
		margin-bottom: 72px;
	}
	#main .sec03 ul {
		margin: 0;
		display: inherit;
		overflow: hidden;
	}
	#main .sec03 ul li {
		width: 225px;
		margin: 0 !important;
		float: left;
	}





	#main .sec03 ul li:not(:nth-child(3n)) {
		margin-right: 0;
	}
	#main .sec03 ul li .txtBox {
		padding: 0 20px;
		bottom: 12px;
		opacity: 1;
		-webkit-transform: none;
        transform: none;
				position:static;
				background: #FFF !important;
				color: #000 !important;
				padding: 13px 0px 0!important;
	}
	#main .sec03 ul li .txtBox .date {
		margin-top: 13px !important;
	}
	#main .sec03 ul li .txtBox p {
		color: #000 !important;
}
	#main .sec03 ul li .txtBox p {
		font-size: 1.2rem;
		line-height: 1.83;
	}
	#main .sec03 ul li .txtBox p span {
		font-size: 1.2rem;
	}
	#main .sec03 ul li .txtBox .date {
		margin-top: 33px;
		font-size: 1.2rem;
	}

	#main .sec03 .news_slide {
		width: calc(100% + 27px);
		margin: 30px auto 0;
	}
	#main .sec03 .news_slide .slick-list {
		padding: 0 80% 0 30px;
		width: calc(80% - 30px);
	}
	#main .sec03 .news_slide li {
		padding-right:32px;
		box-sizing: border-box;

	}

	#main .sec06 .pattern_text .txt span {
		text-align: left;
		display: inline-block;
		padding-left: 0;
	}

	#main .sec16 ul.item_box {
		margin: 0;
		display:block;
		flex-wrap:nowrap;
	}
	#main .sec16 ul.item_box li {
		width: 100%;
		margin-bottom: 60px;
	}
	#main .sec16 ul.item_box li:not(:nth-child(3n)) {
		margin-right: 0%;
	}

	#main .sec16 ul.item_box li .txtBox{
		position: static;
		opacity: 1;
		transform: translateY(0);
		padding: 0;
	}
	#main .sec16 ul.item_box li .txtBox p {
	    color: #000;
		}

		#main .sec16 .comLinkUl{
			position: static;
		}




	#main .sec16 {
		padding: 160px 0 11px;
	}
	#main .sec16 .headLine02 {
		margin-bottom: 36px;
	}
	#main .sec16 .comLinkUl {
		margin-bottom: 65px;
	}
	#main .sec16 ul.item_box li .txtBox p {
		margin-top: 17px;
		font-size: 1.4rem;
		line-height: 1.83;
	}
	#main .sec16 ul.item_box li .txtBox p span {
		font-size: 1.2rem;
		display: block;
		font-family: 'Roboto';
	}
	#main .sec16 ul.item_box li .txtBox .date {
		margin-top: 25px;
		font-size: 1.2rem;
		font-family: 'Roboto';
	}




	#main .sec04 {
    padding: 160px 0 90px;
}
	#main .sec04 .headLine02 {
		margin-bottom: 40px;
	}
	#main .sec04 .comLinkUl {
		margin: 0 0 61px;
	}
	#main .sec04 .photoUl {
		display: inherit;
	}
	#main .sec04 .photoUl li {
		width: auto;
	}
	#main .sec04 .photoUl li:first-child {
		margin-bottom: 75px;
	}
	#main .sec04 .photoUl .photo {
		margin-bottom: 24px;
	}
	#main .sec04 .photoUl .comTtl span {
		margin-bottom: 6px;
		font-size: 2.2rem;
		line-height: 1.04;
		letter-spacing: 0.4px;
	}
	#main .sec04 .photoUl .comTtl .item_client{
		font-size: 12px;
		font-weight: bold;
		margin-top: -6px;
		color: #000;
		margin-bottom: 6px;
	}

	#main .sec05 .comTtl {
		bottom: 22.5%;
	}
	#main .sec05 .comScroll {
		bottom: 25px;
		right: 50%;
		margin-right: -32px;
	}
	#main .sec06 .inner01 {
		padding: 121px 0 170px;
	}
	#main .sec06 .inner01 ul {
		margin: 0;
	}
	#main .sec06 .inner01 ul li {
		width: 42%;
	}
	#main .sec06 .inner01 ul li:nth-child(2) {
		width: 58%;
	}
	#main .sec06 .inner01 ul li:last-child {
		width: 100%;
		margin-top: 28px;
	}
	#main .sec06 .inner01 ul a:hover {
		text-decoration: underline;
	}
	#main .sec06 .inner01 ul .txt:not(:last-child) {
		margin-bottom: 28px;
	}
	#main .sec06 .pattern_text .pattern_text_box{
		    padding-top: 74px;
	}
	#main .sec06.black .pattern_text .ttl,
	#main .sec06 .pattern_text .ttl {
		margin: 0 0 30px;
		font-size: 1.5rem;
		line-height: 1.66;
	}
	#main .sec06.black .pattern_text .txt
	#main .sec06 .pattern_text .txt {
		margin: 0 30px 0 46px;
		line-height: 1.83;
	}



	/*//////////////////////////*/
	#main .sec06 .inner02 .headLine02 {
		margin-bottom: 72px;
	}
	#main .sec06 .pattern_a{
		padding-bottom: 132px;
	}
	#main .sec06 .pattern_a .photo {
		margin: 0;
	}

	#main .sec06 .pattern_b {
		padding: 0 0 173px;
	}
	#main .sec06 .pattern_b .photo01 {
		margin: 0 77px 72px 0;
	}
	#main .sec06 .pattern_b .photo01 video,
	#main .sec06 .pattern_b .photo01 img {
		width: 100%;
	}
	#main .sec06 .pattern_b .photo02 {
		margin: 0 2px 0 74px;
	}
	#main .sec06 .pattern_b .photo02 video,
	#main .sec06 .pattern_b .photo02 img {
		width: 60%;
		margin-top: 0;
	}
	#main .sec06 .pattern_c{
		padding: 0 0 173px;
	}
	#main .sec06 .pattern_c .photo {
		text-align: center;
		padding: 0 56px;
	}
	#main .sec06 .pattern_c .photo video,
	#main .sec06 .pattern_c .photo img {
		width: 100%;
	}
	#main .sec06 .pattern_d {
		padding: 0 0 173px;
	}
	#main .sec06 .pattern_d .photo {
		padding-left: 0;
	}
	#main .sec06 .pattern_d .photo video,
	#main .sec06 .pattern_d .photo img {
		width: 100%;
	}
	#main .sec06 .pattern_d .photo01 {
		margin: 173px 56px 0 57px;
	}
	#main .sec06 .pattern_d .photo01 video,
	#main .sec06 .pattern_d .photo01 img {
		width: 100%;
	}



/*//////////////////////////*/

#main .sec06 .pattern_e{
	padding-bottom: 132px;
}
#main .sec06 .pattern_e .photo {
	margin: 0;
	padding: 0 56px;
}
#main .sec06 .pattern_e .photo video,
#main .sec06 .pattern_e .photo img {
	width: 100%;
}

#main .sec06 .pattern_f {
	padding: 0 0 173px;
}
#main .sec06 .pattern_f .photo01 {
	margin: 0 77px 0 0;
}
#main .sec06 .pattern_f .photo01 video,
#main .sec06 .pattern_f .photo01 img {
	width: 66%;
	margin-left: 0;
}
#main .sec06 .pattern_f .photo02 {
	margin: -80px 5px 0 74px;
}
#main .sec06 .pattern_f .photo02 video,
#main .sec06 .pattern_f .photo02 img {
	width: 36%;
	margin-right: 5%;
	margin-top: 0;
}
#main .sec06 .pattern_g{
	padding: 0 0 173px;
}
#main .sec06 .pattern_g .photo {
	text-align: center;
	padding: 0 56px;
}
#main .sec06 .pattern_g .photo video,
#main .sec06 .pattern_g .photo img {
	width: 70%;
	margin-left: 0;
}
#main .sec06 .pattern_h {
	padding: 0 0 173px;
}
#main .sec06 .pattern_h .photo {
	padding-left: 0;
	text-align: left;
}
#main .sec06 .pattern_h .photo video,
#main .sec06 .pattern_h .photo img {
	width: 50%;
	margin-left: 2.5%;
}

#main .sec06 .pattern_i {
	padding: 0 0 173px;
}
#main .sec06 .pattern_i .photo {
	padding-left: 0;
	text-align: center;
}
#main .sec06 .pattern_i .photo video,
#main .sec06 .pattern_i .photo img {
	width: 50%;
	margin-left: 10%;
}

#main .sec06.black .next_project .comLink{
	padding: 0 27px;
	box-sizing: border-box;
}
#main .sec06.black .next_project .comLink a span {
    font-size: 12px;
}

#main .sec06.black .next_project .comLink a b{
    font-size: 22px;
}

#main .sec06 .next_project {
    padding: 0px 0 ;
		height: 307px;
}
#main .sec06 .next_project .bg{
	opacity: 1 ;

}



	#main .sec07 {
		padding: 33px 0 145px;
	}
	#main .sec07 .topBox {
		padding: 0 27px;
		position: relative;
		margin-bottom: 134px;
	}
	#main .sec07 .topBox .textImg {
		float: none;
		width: 171px;
	}
	#main .sec07 .topBox .comLinkUl {
		display: none;
	}
	#main .sec07 .topBox .menu {
		position: absolute;
		right: 28px;
		top: 3px;
		width: 25px;
	}
	#main .sec07 .headLine01 {
		padding-top: 176px;
		margin-bottom: 18px;
		font-size: 3.3rem;
		line-height: 1.12;
	}
	#main .sec07 .topTxt {
		margin: 0 20px 165px 47px;
		font-size: 1.3rem;
		line-height: 1.69;
	}
	#main .sec07 .headLine02 {
		margin-bottom: 67px;
	}
	#main .sec07 .imgBox {
		display: inherit;
		flex-flow: row-reverse;
	}
	#main .sec07 .imgBox .img {
		margin: 0 0 41px;
		padding: 0;
		padding-bottom: 0;
		width: auto;
	}
	#main .sec07 .imgBox .img img {
		width: 100%;
	}
	#main .sec07 .imgBox .txtBox {
		width: auto;
		margin: 0 48px;
		    padding-left: 0px;
				height: auto;
	}
	#main .sec07 .imgBox .txtBox p {
		margin-bottom: 23px;
		margin-left: 0;
		padding-bottom: 0;
		line-height: 1.83;
	}
	#main .sec07 .imgBox .txtBox .ttl {
		margin-bottom: 18px;
		font-size: 3rem;
		line-height: 1.2;

	}
	#main .sec07 .comNext {
		margin: 0;
		margin-top: 10px;
	}
		#main .sec06 .next_project .comLink{
			transform: scale(1) !important;
		}
	#main .sec06 .next_project .comLink a span{
		color: #FFF !important;
		font-size: 12px;
		font-weight: 400;
	}

	#main .sec06 .next_project .comLink a b{
		color: #FFF !important;
		font-size: 22px;
	}
	#main .sec06 .inner01 .down{
		float: right;
		margin-top: 30px;
		margin-right: 10px;
	}


	#main .sec08 {
		padding: 127px 0 95px;
	}
	#main .sec08 .headLine02 {
		margin-bottom: 64px;
	}
	#main .sec08 h3 {
		margin: 0 auto 47px;
		font-size: 2.2rem;
		width: auto;
		letter-spacing: 0.5px;
	}
	#main .sec08 .txtBox {
		width: auto;
	}
	#main .sec08 .txtBox p {
		margin: 0 25px 25px 46px;
		font-size: 1.3rem;
		line-height: 1.92;
	}
	#main .sec08 .txtBox .txt {
		margin-bottom: 75px;
	}
	#main .sec09 {
		margin-bottom: 102px;
	    margin-top: 77px;
			padding-top: 50px;
	}
	#main .sec09 .headLine02 {
		margin-bottom: 71px;
	}
	#main .sec09 ul {
		margin: 0 16px 38px;
		width: auto;
		justify-content: space-between;
	}

	#main .sec09 ul li .txt {
		opacity: 1;
		font-size: 1.5rem;
	}
	#main .sec09 ul li {
		padding-bottom: 43px;
		margin-right: 0;
		width: 45.6%;
	}
	/*#main .sec09 ul li a{
		background-color: #FFF;
	}
	#main .sec09 ul li a:before {
		display: none;
	}
	#main .sec09 ul li .txt {
		position: static;
		font-size: 1.5rem;
		opacity: 1;
		-webkit-transform: none;
        transform: none;
		color: #000;
		font-weight: 500;
		text-align: left;
		margin: 6px 0 0;
		display: block;
	}
	#main .sec09 ul li .txt span {
		margin: -2px 0 0;
		font-size: 1.2rem;
		font-weight: 400;
	}
	#main .sec09 ul li .txt img {
		display: none;
	}*/
	#main .sec09 ul li a:before {
	    background: rgba(0,0,0,0.5);
			opacity: 1 !important;
		}

	#main .sec10 {
		margin: 0 0 143px 74px;
		display: inherit;
	}
	#main .sec10 .photo {
		width: auto;
		margin-bottom: 78px;
		height: 230px;
	}
	#main .sec10 .textBox {
		width: auto;
	}
	#main .sec10 .textBox dl {
		margin-left: 0;
		line-height: 1.83;
		letter-spacing: 0.6px;
	}
	#main .sec10 .textBox dt {
		margin-bottom: 8px;
	}
	#main .sec10 .textBox dd {
		margin-bottom: 35px;
		letter-spacing: 0;
	}
	#main .sec10 .textBox dd:last-child {
		margin-bottom: 0;
	}

	#main .sec10 .photo img{
			height: 230px;
	}


	#main .sec11 {
		margin: 0 27px 160px;
		width: auto;
	}
	#main .sec11 .inner {
		padding: 0 0 69px;
	}
	#main .sec11 .inner .lBox {
		margin-bottom: 69px;
		float: none;
		width: auto;
	}
	#main .sec11 .inner .rBox {
		float: none;
		width: auto;
	}
	#main .sec11 .btm {
		margin: 0;
	}
	#main .sec11 .btm p {
		margin-top: -4px;
		line-height: 2;
	}
	#main .sec12 {
		padding-top:170px;
		margin-bottom: 99px;
	}
	#main .sec12 .comBack {
		margin: 0 27px 108px;
		width: auto;
	}
	#main .sec12 .comBox {
		margin: 0 27px;
	}
	#main .sec12 .photo {
		margin: 0 77px 61px 1px;
	}
	#main .sec12 .photo img {
		width: 100%;
	}
	#main .sec12 dt {
		margin: 0 0 19px;
		float: none;
		font-size: 2.2rem;
	}
	#main .sec12 dt span {
		font-size: 1.3rem;
	}
	#main .sec12 dd {
		padding-left: 0;
		line-height: 1.83;
		letter-spacing: 0;
	}
	#main .sec13 {
		margin: 0 27px 80px;
		width: auto;
	}
	#main .sec13 .headLine03 {
		margin-left: 0;
	}
	#main .sec13 .comDl {
		margin-left: 0;
	}
	#main .sec14 {
		padding: 160px 0 100px;
		margin-bottom: 75px;
	}
	#main .sec14 .topBox {
        margin-bottom: 62px;
        display: block;
    }
    #main .sec14 .topBox .headLine02 {
        width: auto;
    }
    #main .sec14 .topBox .comLinkUl {
        margin-top: 36px;
        width: auto;
    }
		#main .sec14 .photo::after{
			border-bottom: -18px;
			font-size: 11px;

		}



		#main .sec14 .comLinkUl.ul_end{
			padding-top: 80px;
		}
    #main .sec14 p {
        margin-bottom: 22px;
        width: auto;
        font-size: 1.2rem;
        line-height: 1.6;
    }
    #main .sec14 .ttl {
        margin-bottom: 50px;
        font-size: 1.8rem;
        line-height: 1.55;
    }
    #main .sec14 .ttl span {
        margin: 16px 2px 0;
        font-size: 1.2rem;
    }
    #main .sec14 .ttl span a {
        margin-left: 23px;
    }
    #main .sec14 .ttl span a:hover {
        text-decoration: underline;
    }
    #main .sec14 .photo {
        margin: 0 0 45px 1px;
        max-width: inherit;
    }

		#main .sec14 .post_content img{
			max-width: 100% !important;
			width: 100% !important;
			height: auto !important;

			margin-left:0vw;
		}
		#main .sec14 .post_content .copyright{
			width:  100% !important;
			max-width: 100vw !important;
				margin-bottom: 45px;

		}
		#main .sec14 .post_content .img-in-div{
			width:   100% !important;
				max-width: 100vw !important;
				margin-left:0vw;
				margin-bottom: 0;

		}
		#main .sec14 .post_content{
			margin: 0 auto 30px;
		    width: 100%;
		    font-size: 1.2rem;
		    line-height: 1.875;
		}

    #main .sec14 p a:hover {
        text-decoration: underline;
    }
	#main .sec15 {
		padding-top: 180px;
		padding-bottom: 110px;
	}
	#main .sec15 .headLine01 {
		margin-bottom: -9px;
	}
	#main .sec15 .comLink {
    padding-top:60px;
	}
	#main .sec15 .comBox .headLine01 {
		margin-bottom: 22px;
	}
	#main .sec15 .topBox .comBack {
		display: none;
	}
	#main .sec15 .topBox .comLinkUl {
		width: auto;
	}
	#main .sec15 .topTxt {
		margin: 0 20px 150px 50px;
		width: auto;
		font-size: 1.3rem;
		line-height: 1.92;
	}
	#main .sec15 .headLine02 {
		margin-bottom: 71px;
	}
	#main .sec15 .tableBox {
		margin: 0 auto;
		width: auto;
	}
	#main .sec15 .tableBox table td,
	#main .sec15 .tableBox table th {
		padding: 0 0 33px !important;
		letter-spacing: 0;
		display: block;
		width: 100% !important;
		box-sizing: border-box;
	}
	#main .sec15 .tableBox table th {
		padding: 0 0 10px !important;
		letter-spacing: 0;
	}
	#main .sec15 .tableBox table td span {
		margin: 30px 0;
	}
	#main .sec17 {
		padding-top: 120px;
		padding-bottom: 110px;
	}
	#main .sec17 .formBox {
		margin: -14px 27px 30px;
		width: auto;
	}
	#main .sec17 form {
		font-size: 1.3rem;
		width: auto;
	}
	#main .sec17 .formBox .formUl {
		margin: 0 0 52px;
		display: inherit;
		letter-spacing: 1.5px;
	}
	#main .sec17 .formUl textarea,
	#main .sec17 .formUl input {
		font-size: 1.3rem;
		height: 35px;
	}
	#main .sec17 .formUl li {
		padding: 26px 0 2px;
		margin: 0;
		width: 100%;
	}
	#main .sec17 .submit {
		position: static;
		width: 200px;
	}
	#main .sec17 .submit li {
		padding-right: 0;
	}
	#main .sec17 .submit input {
		padding: 16px 0;
		font-size: 1.3rem;
		background: url("../img/common/icon01.png") no-repeat left 70px center;
		background-size: 14px auto;
	}
	#main .sec17 .submit li::after {
		content: "";
		background: #000;
		height: 2px;
		width: 110px;
		position: absolute;
		left: 0;
		bottom: 0px;
	}
	#main .sec17 .headLine_s{
		margin-top: 20px;
	font-size: 1.3rem;
			line-height: 1.69;
		}

}
