@charset "UTF-8";
/* CSS Document */
#container{
	padding-top: 40px;
	padding-bottom: 10.94vw;
}

.pageTit{
	padding: 11.72vw 0 7.81vw;
}
.pageTit .tit_en{
	text-align: center;
	position: relative;
	padding-bottom:3.91vw;
	margin-bottom: 3.91vw;
}
.pageTit .tit_en::after{
	content: '';
	display: block;
	width: 13.28vw;
	height: 2px;
	background: #000;
	position: absolute;
	bottom:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.pageTit .tit_en img{
	height: 4.38vw;
	width: auto
}

.pageTit .tit_jp {
	text-align: center;
	font-size: 4.38vw;
}


/*=============================
message
=============================*/
.message#container{
	padding-top: 40px;
	padding-bottom: 0px;
}
.message article{
	background: url(../img/message/sp_message_bg.jpg) no-repeat center center/cover;
}
.message #contents{
	padding: 0 3.13vw 36vw 3.13vw;
}
.message #contents h2{
	font-size: 6.25vw;
	letter-spacing: 0.1em;
	text-align: center;
	font-weight: bold;
	margin-bottom: 5.47vw;
}
.message #contents .txt{
	font-size: 4.38vw;
	letter-spacing: 0.1em;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


/*=============================
company
=============================*/
.company #syakun{
	margin-bottom: 70px;
}
.company #syakun li:first-child{
	width: 16.5vw;
	height: 5.47vw;
	margin-left: auto;
	margin-right: auto;
	background: #000;
	text-align: center;
	font-size: 3.13vw;
	color: #FFF;
	padding-bottom: 2px;
	margin-bottom: 3.91vw;
}
.company #syakun li:last-child{
	text-align: center;
	font-size: 4.06vw;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.5;
}


.company section h2{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	margin-bottom: 4.69vw;
}


.company #bloc01{
	margin-bottom:10.16vw;
}
.company #bloc01 .inner{
	padding: 0 2.34vw;
}
.company #bloc01 dl.list{
	font-size: 4.38vw;
	line-height: 1.5;
	border: 1px solid #D1D1D1;
}
.company #bloc01 dl.list > dt{
	background: #E5E5E4;
	font-weight: bold;
}
.company #bloc01 dl.list a.mapLink{
	display: inline-block;
	background: #2ec448;
	color: #FFF;
	font-size: 2.50vw;
	height: 4.69vw;
	padding: 0 1vw;
	margin-left: 2.34vw;
	vertical-align: middle;
}
.company #bloc01 dl.list > dt{
	padding: 1vw 0 1vw 3.13vw;
}
.company #bloc01 dl.list > dd{
	padding: 3.13vw;
}
.company #bloc01 dl.list > dd h3{
	font-weight: bold;
}

.company #bloc01 .shopList{
	margin-bottom: 1em;
}
.company #bloc01 .shopList li{

}
.company #bloc01 .shopList li .name{
	margin-right: 1em;
	color: #2ec448;
}


.company #bloc02 .inner{
	padding: 0 2.34vw;
}

.company #bloc02 dl.list{
	font-size: 4.38vw;
	line-height: 1.5;
}
.company #bloc02 dl.list > dt{
	color: #2ec648;
	font-weight: bold;
}
.company #bloc02 dl.list > dd:not(:last-of-type){
	margin-bottom: 3.91vw;
}

/*=============================
business
=============================*/
#container.business{
	padding-bottom: 0px;
}
.business #bloc01{margin-bottom: 9.38vw;}
.business #bloc01 .inner{
	padding: 0 2.34vw;
}
.business #bloc01 h2{
	font-size: 4.38vw;
	font-weight: bold;
	text-align: center;
	margin-bottom: 3.13vw;
	white-space: nowrap;
}
.business #bloc01 .txt{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 7.03vw;
}
.business #bloc01 .txtList dt{
	font-size:4.38vw;
	line-height: 1.25;
	font-weight: bold;
	text-align: center;
}
.business #bloc01 .txtList dt span{
	display: inline-block;
	border-bottom: 2px solid #2ec448;
	padding-bottom: 2.34vw;
	margin-bottom: 3.91vw;
}
.business #bloc01 .txtList dd{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc01 .txtList dd:not(:last-of-type){
	margin-bottom: 8.59vw;
}


.business #bloc02{
	background: #F0F0F0;
	padding-top:  7.03vw;
	padding-bottom: 15.63vw;
}
.business #bloc02 .inner{
	padding: 0 2.34vw;
}
.business #bloc02 h2{
	font-size: 4.38vw;
	font-weight: bold;
	text-align: center;
	margin-bottom: 5.47vw;
}
.business #bloc02 .bizList > dt{
	border: 1px solid #2ec448;
	color: #2ec448;
	font-size:4.06vw;
	font-weight: bold;
	text-align: center;
	height: 7.03vw;
	margin-bottom: 7.81vw;
}
.business #bloc02 .bizList > dd:not(:last-of-type){
	margin-bottom: 15.63vw;
}
.business #bloc02 .bizList dd.list01 li{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.business #bloc02 .bizList dd.list01 li:not(:last-child){
	margin-bottom: 50px;
}
.business #bloc02 .bizList dd.list01 li .txtArea{
	width: 83%;
	font-size: 4.38vw;
	line-height: 1.85;
}
.business #bloc02 .bizList dd.list01 li .txtArea .name{
	font-weight: bold;
	white-space: nowrap;
}
.business #bloc02 .bizList dd.list01 li .txtArea .txt{
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc02 .bizList dd.list01 li .logo{padding-top: 1.5vw;}
.business #bloc02 .bizList dd.list01 li .logo img{
	width: 11.72vw;
	height: auto;
}

.business #bloc02 .bizList dd.list02 h3{
	font-size: 4.38vw;
	font-weight: bold;
	text-align: center;
	margin-bottom:3.91vw;
}
.business #bloc02 .bizList dd.list02 .txt{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc02 .bizList dd.list02 .logo{
	text-align: right;
	margin-bottom: 7.03vw;
}
.business #bloc02 .bizList dd.list02 .logo img{
	width: 30vw;
	height: auto;
}
.business #bloc02 .bizList dd.list02 dl dt{
	font-size:4.38vw;
	font-weight: bold;
	text-align: center;
	margin-bottom: 3.91vw;
}
.business #bloc02 .bizList dd.list02 dl dd{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc02 .bizList dd.list02 dl dd:not(:last-of-type){
	margin-bottom: 7.03vw;
}
.business #bloc02 .bizList dd.list02 dl dd .linkBt{
	display: block;
	text-align: right;
}
.business #bloc02 .bizList dd.list02 dl dd a{
	font-size: 4.06vw;
	font-weight: bold;
	display: inline-block;
	height: 6.25vw;
	padding: 0 1em;
	background: #2ec448;
	color: #FFF;
	text-decoration: none;
	vertical-align: middle;
}


.business #bloc02 .bizList dd.list03 .txt{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc02 .bizList dd.list03 .txt01{
}
.business #bloc02 .bizList dd.list03 .logo{
	text-align: right;
	margin-bottom: 7.81vw;
}
.business #bloc02 .bizList dd.list03 .logo img{
	width:34vw;
	height: auto;
}


.business #bloc02 .bizList dd.list04 .txt{
	font-size: 4.38vw;
	font-weight: bold;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.business #bloc02 .bizList dd.list04 .txt span{
	font-weight: normal;
	display: block;
}

/*=============================
works
=============================*/
.works .pLink{
	margin-bottom:13.28vw;
	padding: 0 2.34vw;
}
.works .pLink li{
	height: 6.25vw;
	margin-bottom: 2.34vw;
}
.works .pLink li a{
	display: block;
	position: relative;
	height: 100%;
	text-align: center;
	font-size: 3.91vw;
	letter-spacing: 0.05em;
	color: #000;
	border: 1px solid #000;
}
.works .pLink li a::after{
	content: '';
	display: block;
	width: 2.34vw;
	height: 2.34vw;
	position: absolute;
	left:50%;
	top:50%;
	margin-left: 20vw;
	border-right:1px solid #000;
	border-bottom:1px solid #000;
	-webkit-transform:  translateY(-80%) rotate(45deg);
	transform:  translateY(-80%) rotate(45deg);
}

.works #bloc01{margin-bottom: 15.63vw;}
.works #bloc01 > .inner{
	padding: 0 2.34vw;
}
.works #bloc01 h2{
	font-size: 4.69vw;
	font-weight: bold;
	line-height: 1.35;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 3.91vw;
}
.works #bloc01 .txt{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.works #bloc01 .txt01{
	margin-bottom:5.47vw;
}

.works #bloc03 .btn {
	margin-top: 5vw;
	text-align: center;
}
.works #bloc03 .btn a {
	font-weight: bold;
	display: inline-block;
	padding: 0 15px;
	width: 180px;
	height: 40px;
	background: #2ec448;
	color: #FFF;
	font-size: 16px;
	text-decoration: none;
	vertical-align: middle;
}
.works #bloc03 .btn a:hover {
	opacity: 0.6 !important;
}


.works #bloc01 #tree {
	background: #E9F4F9;
	padding: 7.81vw 0 3.91vw;
	margin-bottom: 7.03vw;
}
.works #bloc01 #tree .treeList{
	background: url(../img/works/works_tree.png) no-repeat center center/contain;
	width: 100%;
	height: 83.5vw;
	margin-bottom:3.91vw;
	position: relative;
}
.works #bloc01 #tree .treeList li{
	
}
.works #tree .treeList li a.tree_bt{
	width: 6.25vw;
	height: 6.25vw;
	position: absolute;
	top:50%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.works #tree .treeList li.list01 a.tree_bt{margin-top: 28vw; margin-left: -19vw;}
.works #tree .treeList li.list02 a.tree_bt{margin-top: 33vw; margin-left: 23.5vw;}
.works #tree .treeList li.list03 a.tree_bt{margin-top: -21vw; margin-left: 27vw;}
.works #tree .treeList li.list04 a.tree_bt{margin-top: -16vw; margin-left: -27vw;}
.works #tree .treeList li.list05 a.tree_bt{margin-top: -43vw;}

.works #tree .treeList li a.tree_bt img{
	width: 6.25vw;
	height: 6.25vw;
}


/*treeModal
=============================*/
.works #tree .treeModal {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 600;
	background: rgba(255,255,255,1);
	display: none;
	text-align: center;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.works #tree .treeModal::after{
	content: "";
	height: 100%;
	margin-left: -0.05em;
}
.works #tree .treeModal::after,
.works #tree .treeModal .inner{
	display: inline-block;
	vertical-align: middle;
}
.works #tree .treeModal .inner{
	width: 99%;
}
.works #tree .treeModal .inner h3{
	font-size: 5.47vw;
	font-weight: bold;
	line-height: 1.35;
	color: #2ec648;
	text-align: center;
	margin-bottom: 4.69vw;
}
.works #tree .treeModal .inner h3 span{
	display: inline-block;
	border-bottom: 2px solid #2ec648;
	padding-bottom: 1vw;
}
.works #tree .treeModal .inner h4{
	text-align: center;
	font-size: 4.06vw;
	font-weight: bold;
	line-height: 1.45;
	margin-bottom: 3.13vw;
}
.works #tree .treeModal .inner .txt{
	text-align: center;
	font-size: 4.06vw;
	line-height: 1.45;
}

.works #tree .treeModal.opening {
	display: block;
	-webkit-animation: treeopening 0.8s ease 0s 1 normal both;
	animation: treeopening 0.8s ease 0s 1 normal both;
}
.works #tree .treeModal.opened{display: block;}

.works #tree .treeModal.closing {
	display: block;
	-webkit-animation: treeclosing 0.25s ease 0s 1 normal both;
	animation: treeclosing 0.25s ease 0s 1 normal both;
}
.works #tree .treeModal.closed{display: none;}


@-webkit-keyframes treeopening {
	0% {
		-moz-perspective:1300px;
		-webkit-perspective: 1300px;
				perspective: 1300px;
		-webkit-transform: scale(1.5);
		-ms-transform: scale(1.5);
			transform: scale(1.5);
		filter: alpha(opacity=000);
		opacity: 0.0;
	}
	100% {
		-webkit-transform: scale(1.0);
		-ms-transform: scale(1.0);
			transform: scale(1.0);
		filter: alpha(opacity=100);
		opacity: 1.0;
	}
}
@keyframes         treeopening {
	0% {
		-moz-perspective:1300px;
		-webkit-perspective: 1300px;
				perspective: 1300px;
		-webkit-transform: scale(1.5);
		-ms-transform: scale(1.5);
			transform: scale(1.5);
		filter: alpha(opacity=000);
		opacity: 0.0;
	}
	100% {
		-webkit-transform: scale(1.0);
		-ms-transform: scale(1.0);
			transform: scale(1.0);
		filter: alpha(opacity=100);
		opacity: 1.0;
	}
}

@-webkit-keyframes treeclosing {
	0% {
		-webkit-transform: scale(1.0);
		-ms-transform: scale(1.0);
			transform: scale(1.0);
		filter: alpha(opacity=100);
		opacity: 1.0;
	}
	100% {
		-moz-perspective:1300px;
		-webkit-perspective: 1300px;
				perspective: 1300px;
		-webkit-transform: scale(1.5);
		-ms-transform: scale(1.5);
			transform: scale(1.5);
		filter: alpha(opacity=000);
		opacity: 0.0;
	}
}
@keyframes         treeclosing {
	0% {
		-webkit-transform: scale(1.0);
		-ms-transform: scale(1.0);
			transform: scale(1.0);
		filter: alpha(opacity=100);
		opacity: 1.0;
	}
	100% {
		-moz-perspective:1300px;
		-webkit-perspective: 1300px;
				perspective: 1300px;
		-webkit-transform: scale(1.5);
		-ms-transform: scale(1.5);
			transform: scale(1.5);
		filter: alpha(opacity=000);
		opacity: 0.0;
	}
}


/*treeCloseBt
=============================*/
#treeCloseBt {
	position: fixed;
	top:5px;
	right:5px;
	z-index:700;
	pointer-events:none;
	opacity: 0;
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
}
#treeCloseBt.show {
	pointer-events: auto;
	opacity: 1;
}
#treeCloseBt a{
	display: block;
	width:30px;
	height:30px;
	position: relative;
	border: 2px solid #2ec648;
}


#treeCloseBtBorder{
	z-index: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -11px;
	margin-top: -1px;
	display: block;
	width: 22px;
	height: 2px;
}
#treeCloseBtBorder::before {
	top: -8px;
	content: "";
	display: block;
	width: 22px;
	height: 2px;
	position: absolute;
	z-index: -1;
	background-color: #2ec648;
	top:0 !important;
	margin-top: 0 !important;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg)
}
#treeCloseBtBorder::after {
	top: 8px;
	content: "";
	display: block;
	width: 22px;
	height: 2px;
	position: absolute;
	z-index: -1;
	background-color: #2ec648;
	top:0 !important;
	margin-top: 0 !important;
	-webkit-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	transform:rotate(-45deg)
}







.works #bloc01 #tree .copy{
	text-align: center;
}
.works #bloc01 #tree .copy01{
	font-size: 4.69vw;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 2.34vw;
}
.works #bloc01 #tree .copy02{
	font-size: 4.06vw;
	letter-spacing: 0.05em;
}

.works #bloc01 .txtList dt{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	line-height: 1.25;
	margin-bottom: 4.69vw;
	white-space: nowrap;
}

.works #bloc01 .txtList dt span{
	display: inline-block;
	border-bottom: 2px solid #2ec448;
	padding-bottom: 2.34vw;
}
.works #bloc01 .txtList dd:not(:last-of-type){
	margin-bottom: 9.38vw;
}


.works section.pContents h2{
	font-size: 4.38vw;
	text-align: center;
	width: 95%;
	height: 7.03vw;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	border: 1px solid #000;
	margin-bottom: 5.47vw;
}

.works #bloc02{
	margin-bottom: 9.38vw;
}
.works #bloc02 .bgBox{
	background: #F0F0F0;
	padding: 4.69vw 2.34vw;
}
.works #bloc02 .box01{
	margin-bottom: 5.47vw;
}
.works #bloc02 .bgBox .txt{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.works #bloc02 .bgBox h3{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	color: #2ec448;
	margin-bottom: 7.03vw;
}
.works #bloc02 .bgBox h3 span{
	display: inline-block;
	font-weight: normal;
	color: #000;
	margin-top:1.56vw;
}

.works #bloc02 .bgBox dl dt{
	margin-bottom: 4.69vw;
	text-align: center;
}
.works #bloc02 .bgBox dl dt p{
	display: inline-block;
	height: 7.03vw;
	position: relative;
	background: #000;
	-webkit-border-radius: 2.5vw;
	border-radius: 2.5vw;
	padding: 0 1em;
	color: #FFF;
	font-size: 4.06vw;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.works #bloc02 .bgBox dl dd:not(:last-of-type){
	margin-bottom: 11.72vw;
}


.works #bloc02 .box01 dl dd.list01 .txt{
	margin-bottom: 3.91vw;
}
.works #bloc02 .box01 dl dd.list01 .logoList{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
  justify-content: center;
   -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
}
.works #bloc02 .box01 dl dd.list01 .logoList li{
	margin: 0 1.56vw;
}
.works #bloc02 .box01 dl dd.list01 .logoList li img{
	width: 12.50vw;
	height: auto;
}

.works #bloc02 .box01 dl dd.list02 .careerList {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}
.works #bloc02 .box01 dl dd.list02 .careerList li{
   padding: 1.56vw 1vw 3.91vw;
   position: relative;
   width: 7.81vw;
   margin: 0 3.91vw;
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list01{
	background: #3EA6CB
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list02{
	background: #35A4AC
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list03{
	background: #2BA38A
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list04{
	background: #21A16A
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list05{
	background: #1CA05A
}
.works #bloc02 .box01 dl dd.list02 .careerList li .gnum{
	text-align: center;
	padding-bottom: 1.56vw;
	margin-bottom: 1.56vw;
	border-bottom: 1px solid #FFF;
}
.works #bloc02 .box01 dl dd.list02 .careerList li .gnum img{
	height: 3.59vw;
	width: auto;
}

.works #bloc02 .box01 dl dd.list02 .careerList li .txt{
	display: inline-block;
	font-size: 4.38vw;
	font-weight: bold;
	color: #FFF;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	position: relative;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
	letter-spacing: 0.1em;
	margin-bottom: 3em;
}


.works #bloc02 .box01 dl dd.list02 .careerList li:not(:last-child)::before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 1.5vw 0 1.5vw 2.50vw;
	position: absolute;
	top:50%;
	right:-5vw;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list01::before{
	border-color: transparent transparent transparent #3BA6C2;
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list02::before{
	border-color: transparent transparent transparent #31A4A0;
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list03::before{
	border-color: transparent transparent transparent #27A27F;
}
.works #bloc02 .box01 dl dd.list02 .careerList li.list04::before{
	border-color: transparent transparent transparent #1DA05E;
}

.works #bloc02 .box01 dl dd.list02 .sp_career {
	overflow: scroll;
    padding: 5vw;
    background: #fff;
}
.works #bloc02 .box01 dl dd.list02 .sp_career p {
	height: 96vw;
}
.works #bloc02 .box01 dl dd.list02 .sp_career p img {
	width: 800px;
}


.works #bloc02 .box02 dl dd.list01 .logo{text-align: center; margin-top: 4.69vw;}
.works #bloc02 .box02 dl dd.list01 .logo img{
	height: 15vw;
	width: auto;
}
.works #bloc02 .box02 dl dd.list02 .txt02{
	font-weight: bold;
	text-align: center;
}

.works #bloc02 .box02 dl dd.list02 .txt03 img{
	float: right;
	width: 30vw;
	height: auto;
	margin-left: 3.13vw;
	margin-top: 1vw;
}

.works #bloc02 .box02 dl dd.list02 .flex .right_col {
	margin: 5.128vw auto 0;
	
}

.works #bloc02 .box02 dl dd.list02 .flex .right_col > p {
	margin: 0 auto;
	text-align: center;
}
.works #bloc02 .box02 dl dd.list02 .flex .right_col img {
	width: 52.821vw;
}
.works #bloc02 .box02 dl dd.list02 .flex .right_col .txt {
	margin-top: 2.821vw;
	font-size: 4.103vw;
	font-weight: 700;
	text-align: center;
	line-height: 1.625;
	letter-spacing: 0.2em;
}


.works #bloc03{
	margin-bottom: 7.03vw;
}
.works #bloc03 .copy{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	line-height: 1.35;
	margin-bottom: 7.81vw;
	letter-spacing: 0.05em;
}
.works #bloc03 h3{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	margin-bottom: 5.47vw;
	letter-spacing: 0.05em;
}
.works #bloc03 .bosyu{
	border: 1px solid #B5B7B9;
	border-bottom: none;
	font-size: 4.38vw;
	border: 1px solid #9B9B9B;
	margin: 0 2.34vw;
}
.works #bloc03 .bosyu dt{
	background: #E5E5E4;
	padding: 1.5vw 0 1.5vw 3.91vw;
	font-weight: bold;
}
.works #bloc03 .bosyu dd{
	padding: 2.34vw 3.91vw 7.03vw 3.91vw;
	line-height: 1.75;
}
.works #bloc03 .bosyu dd a.linkBt{
	font-size: 4.06vw;
	font-weight: bold;
	display: inline-block;
	height:6.25vw;
	padding: 0 1em;
	background: #2ec448;
	color: #FFF;
	text-decoration: none;
	vertical-align: middle;
	margin-left: 1em;
}

.works #bloc03 .bosyu dd ul.list{
	margin-top: 5.47vw;
}
.works #bloc03 .bosyu dd ul.list li{
	text-align: center;
}

.works #bloc03 .bosyu dd ul.list li.telimg img{
	height: 5.47vw;
	width: auto;
}

.works #bloc03 .bosyu dd ul.list li.teltxt {

}
.works #bloc03 .bosyu dd ul.list li.teltxt span{
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}
.works #bloc03 .bosyu dd ul.list li.teltxt span.icon{
	border: 1px solid #000;
	padding: 1vw 2.5vw;
	font-size:3.44vw;
	margin-right: 1.5vw;
}
.works #bloc03 .bosyu dd ul.list li.teltxt span.txt{
	font-size: 5.47vw;
}
.works #bloc03 .bosyu dd ul.list li.entryBt {
	margin-top: 1.5vw;
}
.works #bloc03 .bosyu dd ul.list li.entryBt a{
	display: block;
	width: 60vw;
	height: 7vw;
	margin-left: auto;
	margin-right: auto;
	background: #ff8933;
	text-align: center;
}
.works #bloc03 .bosyu dd ul.list li.entryBt img{
	height: 3.75vw;
	width: auto;
}



.works #bloc04{

}
.works #bloc04 .pnav{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
   padding: 0 2.34vw;
}
.works #bloc04 .pnav li{
	width: 22vw;
	height: 22vw;
}
.works #bloc04 .pnav li a{
	display: block;
	color: #000;
	height: 100%;
	text-decoration: none;
}
.works #bloc04 .pnav li .ph{
	position: relative;
	height: 100%;
	width: 100%;
	overflow: hidden;
}
.works #bloc04 .pnav li .ph img{
	width: 130%;
	height: auto;
	position: absolute;
	top:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.works #bloc04 .pnav li:not(:first-child) .ph img{
	width: 130%;
	height: auto;
	position: absolute;
	top:-7%;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.works #bloc04 .pnav li:nth-child(3) .ph img{
	-webkit-transform: translateX(-45%);
	transform: translateX(-45%);
}
/*worksMem
=============================*/
.worksMem#container{
	padding-bottom: 0;
}
.worksMem #main{
	position: relative;
	margin-bottom: 65px;
}
.worksMem #main .mainPh img{
	width: 100%;
	height: auto;
}
.worksMem #main .txtArea{
	background: #40464a;
	padding: 5.47vw 3.91vw;
}
.worksMem #main .txtArea .copy{
	font-size: 4.69vw;
	font-weight: bold;
	color: #FFF;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-bottom: 3.91vw;
}
.worksMem #main .txtArea .prof{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
      flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	   align-items: center;

	font-size:3.44vw;
	color: #FFF;
}
.worksMem #main .txtArea .prof li{
	margin-right: 0.5em;
	margin-bottom: 1.5vw;
	white-space: nowrap;
}
.worksMem #main .txtArea .prof li.name{
	font-weight: bold;
}

.worksMem #contents .txtList{
	padding: 0 2.34vw;
	margin-bottom: 2.34vw
}
.worksMem #contents .txtList dt{
	text-align: center;
	font-size: 4.38vw;
	font-weight: bold;
	margin-bottom: 3.91vw;
}
.worksMem #contents .txtList dt span{
	display: inline-block;
	border-bottom: 1px solid #40464a;
	padding-bottom: 1.56vw;
}
.worksMem #contents .txtList dd{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}

.worksMem #contents .txtList dd:not(:last-of-type){
	margin-bottom: 7.03vw;
}

.worksMem #contents .phArea {
	padding: 0 2.34vw;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
   margin-bottom: 9.38vw;
}
.worksMem #contents .phArea li{
	width: 48%;
}
.worksMem #contents .phArea li img{
	width: 100%;
	height: auto;
}



.worksMem .pnav{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
   background: #31363a;
   padding: 9.38vw 2.34vw;
}
.worksMem .pnav li{
	width: 22vw;
	height: 22vw;
}
.worksMem .pnav li a{
	display: block;
	color: #000;
	height: 100%;
	text-decoration: none;
}
.worksMem .pnav li .ph{
	position: relative;
	height: 100%;
	width: 100%;
	overflow: hidden;
}
.worksMem .pnav li .ph img{
	width: 130%;
	height: auto;
	position: absolute;
	top:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.worksMem .pnav li:not(:first-child) .ph img{
	width: 130%;
	height: auto;
	position: absolute;
	top:-7%;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.worksMem .pnav li:nth-child(3) .ph img{
	-webkit-transform: translateX(-45%);
	transform: translateX(-45%);
}
.worksMem .pnav li .txt{display: none;}
/*=============================
contact
=============================*/
.contact #contents > .inner{
	padding: 0 2.34vw;
}

.contact #reqTxt{
	font-size: 4.38vw;
	margin-bottom:3vw;
}
.contact .must,
.contact .red,
.contact .error{
	color: #f1001d;
}

.contact #contact_sub{
	font-size: 4.38vw;
	margin-bottom: 6.25vw;
}
.contact #contact_sub span{
	margin-bottom: 1.56vw;
}


.contact #formArea {

}
.contact #formArea dt{
	font-size: 4.38vw;
	font-weight: normal;
	position: relative;
}
.contact #formArea dt .vmTxt{
	position: static;
}
.contact #formArea dd{
	font-size: 4.38vw;
	margin-bottom: 9.38vw;
}


.contact #formArea .w15{width:15% !important;}
.contact #formArea .w25{width:30% !important;}
.contact #formArea .w50{width:50% !important;}
.contact #formArea .w100{width:100% !important;}

.contact #formArea input,
.contact #formArea textarea {
	max-width: 100%;
}
.contact #formArea input,
.contact #formArea textarea{
	border: solid 1px #959292;
	/*border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;*/
	padding: 1.5vw 2vw;
	vertical-align: middle;
}
.mfp_element_checkbox,
.mfp_element_radio,
.contact input[type="checkbox"],
.contact input[type="radio"]{
	vertical-align: middle;
	margin: 0px 2px;
}
.contact input[type="radio"]{
	position:relative;
	top:-2px;
}
.contact #formArea dd.kanji,
.contact #formArea dd.kana{
	-js-display: flex !important;
	display: -webkit-flex !important;
	display: flex !important;
}
.contact #formArea dd.kanji label,
.contact #formArea dd.kana label{
	width: 40%;
	margin-right: 1em;
}
.contact #formArea dd .mwform-radio-field{
	display: inline-block;
	margin-right: 15px;
}
.contact #formArea dd p:not(:first-of-type){
	margin-top: 10px;
}

.contact .submitBt {
	text-align: center;
  margin-top: 30px;
}
.contact .submitBt input{
	width: 100%;
	height: 9.38vw;
	border: none;
	color: #FFF;
	font-weight: bold;
	font-size: 4.69vw;
	position: relative;
	cursor: pointer;
	margin-bottom: 3vw;
}
.contact .submitBt input.backBt{
	background-color: #9a9a9a;
}
.contact .submitBt input.confirmBt{
	background-color: #2ec448;
}


.contact .submitBt input.on.backBt,
.contact .submitBt input.on.confirmBt{
	opacity: 0.5;
}


.contact #privacy{
	margin-top: 9.38vw;
}
.contact #privacy dt{
	font-size: 4.69vw;
	font-weight: bold;
	color: #2ec448;
	margin-bottom: 3.91vw;
}
.contact #privacy dd{
	font-size: 4.38vw;
	line-height: 1.75;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.contact #privacy dd:not(:last-of-type){
	margin-bottom: 7.81vw;
}
.contact #privacy dd ul li{
	text-indent: -0.8em;
	padding-left: 0.8em;
}

/*contact 確認
=============================*/
.contact.check h3{
	text-align: center;
	font-size: 4.38vw;
	letter-spacing: 0.05em;
	font-weight: bold;
	margin-bottom: 7.81vw;
}
.contact.check .emTxt,
.contact.check .mCheck{
	display: none;
}

/*contact 送信完了
=============================*/
.contact.thx h3{
	text-align: center;
	font-size:4.38vw;
	line-height: 1.5;
	letter-spacing: 0.05em;
	font-weight: bold;
	margin-top: 7.81vw;
}
.contact.thx .txt{
	font-size: 4.38vw;
	font-weight: normal;
	line-height: 1.75;
	margin-top: 7.81vw;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.contact.thx .txt span{
	display: block;
	text-align: center;
}

/*=============================
news
=============================*/
.news #contents > .inner{
	padding: 0 2.34vw;
}
.news .newsList > li:not(:last-child){
	margin-bottom: 7.81vw;
}
.news .newsList > li > a{
	text-decoration: none;
	display: block;
}
.news .newsList ul.titArea{
	color: #2ec448;
	font-size: 4.38vw;
	line-height: 1.5;
	font-weight: bold;
}
.news .newsList ul.titArea .data{

}
.news .newsList ul.titArea .tit{
	position: relative;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.news .newsList ul.titArea.pdf .tit{
}
.news .newsList ul.titArea.pdf .tit::after{
	display: inline-block;
	content: '';
	width: 4.38vw;
	height: 4.38vw;
	background: url(../img/etc/icon_pdf.svg) no-repeat right bottom/auto 100%;
	vertical-align: middle;
}
.news .newsList li .txt{
	font-size: 4.38vw;
	color: #a1a1a1;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-top: 3.13vw;
	position: relative;
}
.news .newsList li .txt::after{
	content: '･･･詳細';
	position: absolute;
	bottom:0;
	right: 0;
}

.wp-pagenavi {
	margin-top: 12.5vw;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}
.wp-pagenavi > a,
.wp-pagenavi > span.current{
	display: inline-block;
	border-left: 1px solid #b3b3b3;
	font-size: 4.38vw;
	padding: 0 1.5vw;
	text-decoration: none;
}
.wp-pagenavi > a{
	color: #b3b3b3;
}
.wp-pagenavi > sapn{
	color: #000;
}
.wp-pagenavi > a:first-child,
.wp-pagenavi > span.current:first-child{border: none}



.newsDetail #contents .inner{
	padding: 0 2.34vw;
}
.newsDetail ul.titArea{
	color: #2ec448;
	font-size:4.38vw;
	line-height: 1.5;
	font-weight: bold;
	margin-bottom: 7.81vw;
}

.newsDetail ul.titArea .tit{
	position: relative;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.newsDetail .txtArea{
	font-size: 4.38vw;
	line-height: 1.75;
	overflow: hidden;
	margin-bottom: 15.63vw;
}
.newsDetail .txtArea img{
	max-width: 100%;
	height: auto;
}
.newsDetail .txtArea .bt_pdf{
	width:65vw;
	height: 9.38vw;
	margin-left: auto;
	margin-right: auto;
	margin-top: 7.81vw;
}
.newsDetail .txtArea .bt_pdf a{
	text-align: center;
	display: block;
	height: 100%;
	color: #000;
	border: 1px solid #000;
	position: relative;
	font-size: 3.75vw;
	font-weight: bold;
	background: url(../img/etc/icon_pdf.svg) no-repeat right 18px center/auto 6.25vw;
}

.newsDetail .bt_back {text-align: center}
.newsDetail .bt_back a{
	font-size: 4.38vw;
	color: #000;
	text-decoration: none;
}


/*=============================
404notFound
=============================*/
#container.notFound{
	min-height: calc(100vh - 25.63vw);/*footer分差し引き*/
}
.notFound h3{
	text-align: center;
	font-size: 5.47vw;
	letter-spacing: 0.05em;
	font-weight: bold;
	margin-top: 4.69vw;
	margin-bottom: 7.81vw;
}
.notFound .txt{
	text-align: center;
	font-size: 4.38vw;
	font-weight: normal;
	line-height: 1.75;
}
.notFound .bt{
	text-align: center;
	margin-top: 7.81vw;
}
.notFound .bt a{
	display: inline-block;
	padding: 1.5vw 3vw;
	font-size: 4.38vw;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	background:#2ec448;
}