@charset "UTF-8";
/*---------------------------------------------------------------
top/style.css
-----------------------------------------------------------------*/

@media print, screen and (min-width: 1001px){
.pcOnly {
		display: block;
}
.spOnly {
		display: none;
}


#main{
	width: 100%;
	position: relative;
}
#main .txt{
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 10;
	top: 0;
left: 0;
right: 0;
bottom: 0;
	margin: auto;
}
#main .img{
	width: 100%;
	height: auto;
}

.recruit{
	margin: 0 auto 105px;
	width: 640px;
}
.recruit img{
	width: 100%;
	height: auto;
}


#news{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 55px;
}
#news .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
}
#news #list{
	margin: 0 auto;
	width: 750px;
}
#news #list dl{
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #403937;
}
#news #list dt{
	float: left;
	margin: 0;
	padding: 30px 0 30px 15px;
	width: 160px;
	font-size: 14px;
	line-height: 140%;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#news #list dd{
	margin: 0 0 0 160px;
	padding: 30px 0;
	font-size: 14px;
	line-height: 140%;
	text-align: left;
}




#concept{
	width: 100%;
	text-align: center;
	padding-top: 65px;
	padding-bottom: 55px;
}
#concept .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 47px;
}
#concept .concept_img{
	width: 100%;
	padding-bottom: 55px;
}
#concept .concept_img img{
	width: 100%;
	height: auto;
}
#concept .sub{
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 25px;
}
#concept p{
	font-size: 14px;
	line-height: 33px;
	text-align: center;
	padding-bottom: 15px;
}



#theory{
	width: 100%;
	text-align: center;
	padding-top: 65px;
	padding-bottom: 95px;
}
#theory .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 47px;
}
#theory .theory_img{
	width: 100%;
	padding-bottom: 55px;
}
#theory .theory_img img{
	width: 100%;
	height: auto;
}
#theory .sub{
	font-size: 20px;
	line-height: 37px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 50px;
}
#theory .cover{
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
#theory .box{
	/*float: left;
	width: 300px;
	margin-right: 50px;
	height: auto;*/
	width: 45%;
  padding: 20px;
}
#theory .box:nth-child(3n){
	margin-right: 0px;
}
#theory .box .title{
	font-size: 22px;
	line-height: 26px;
	text-align: left;
	padding-top: 0;
	padding-bottom: 8px;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.03em;
}
#theory .box .eng{
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	padding-bottom: 10px;
}
#theory .box p{
	font-size: 12px;
	line-height: 22px;
	text-align: left;
	padding-bottom: 0;
}




#works{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 25px;
	background-color: #faf9f7;
}
#works .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 65px;
}
#works .sub{
	font-size: 20px;
	line-height: 37px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 15px;
}
#works p{
	font-size: 12px;
	line-height: 26px;
	text-align: center;
	padding-bottom: 15px;
}
#works .cover{
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 45px;
}
#works .box{
	float: left;
	width: 300px;
	margin-right: 50px;
	height: 438px;
}
#works .box:nth-child(3n){
	margin-right: 0px;
}
#works .box .photo{
	width: 100%;
}
#works .box .title{
	font-size: 14px;
	line-height: 25px;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 15px;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.05em;
}
#works .box .title.pad{
	padding-top: 35px;
}
#works .box p{
	font-size: 12px;
	line-height: 22px;
	text-align: center;
	padding-bottom: 20px;
}
#works .box .bt_works{
	width: 130px;
	margin-right: auto;
	margin-left: auto;
}
#works .box .bt_works img{
	width: 100%;
}


.modal-content{
	width: 100%;
	margin: 0;
	background: #fff;
	position: fixed;
	display: none;
	z-index:1000;
	padding-top: 155px;
	padding-bottom: 155px;
}
#modal-overlay {
	z-index: 1 ;
	display: none ;
	position: fixed ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 120% ;
	background-color: rgba( 0,0,0, 0.75 ) ;
}
.modal-content .inner{
	width: 920px;
	margin-right: auto;
	margin-left: auto;
}
.modal-content .inner .mbox{
	width: 205px;
	float: left;
	margin-right: 150px;
}
.modal-content .inner .mbox.end{
	margin-right: 0px;
}
.modal-content .inner .mbox .mtitle{
	font-size: 14px;
	text-align: left;
	font-weight: bold;
	color: #009987;
	padding-bottom: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #009987;
}
.modal-content .inner .mbox p{
	font-size: 12px;
	line-height: 27px;
	text-align: left;
	margin: 0px;
	padding-top: 20px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.modal-content .inner .close{
	margin-right: auto;
	margin-left: auto;
	height: 23px;
	width: 23px;
	padding-top: 75px;
}
.button-link,
.close{
	cursor: pointer;
	cursor: hand;
}
#modal-content-01 .inner .mbox2,
#modal-content-01 .inner .mbox3,
#modal-content-02 .inner .mbox1,
#modal-content-02 .inner .mbox3,
#modal-content-03 .inner .mbox1,
#modal-content-03 .inner .mbox2{
	opacity:0.4;
  filter: alpha(opacity=40);
}




#members{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 70px;
}
#members .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 60px;
}
#members .members_img{
	width: 100%;
	padding-bottom: 40px;
}
#members .members_img img{
	width: 100%;
}
#members p{
	font-size: 14px;
	line-height: 29px;
	text-align: center;
}




#president{
	width: 100%;
	text-align: center;
	padding-top: 40px;
	padding-bottom: 100px;
}
#president .title{
	margin: 0 auto 75px;
	width: 320px;
}
#president .cover{
	margin: 0 auto;
	width: 910px;
}
#president .cover .iwaki_img{
	float: right;
	width: 260px;
}
#president .cover .iwaki_img .cap{
	padding: 20px 0 0;
	font-size: 13px;
	text-align: left;
}
#president .cover .iwaki_img .cap img{
	margin: 10px 0 0;
	width: 150px;
	height: auto;
}
#president .cover .pre_txt{
	float: left;
	width: 520px;
}
#president .cover .pre_txt p{
	padding: 0 0 10px;
	width: 100%;
	font-size: 14px;
	line-height: 24px;
	text-align: left;
}
#president .cover .pre_txt .cap{
	display: none;
}




#company{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 40px;
	background-color: #faf9f7;
}
#company .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 65px;
}
#company .inner{
	width: 945px;
	margin-right: auto;
	margin-left: auto;
}

#company .inner .title{
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 30px;
	padding-left: 0px;
}
#company .inner .title.en{
	padding-top: 90px;
}

#company .inner table.tb{
	width: 50%;
	border-collapse: collapse;
}
#company .inner table.tb.left{
	float: left;
}
#company .inner table.tb.right{
	float: right;
}
#company .inner table.tb.right.com{
	width: 40%;
}
#company .inner table.tb th{
	font-size: 14px;
	font-weight: normal;
	text-align: left;
	width: 130px;
	padding-bottom: 30px;
}
#company .inner table.tb td{
	font-size: 13px;
	text-align: left;
	line-height: 25px;
	padding-bottom: 30px;
}
#company .inner table.tb.cam td{
	line-height: 20px;
}
#company .inner table.tb td .bt{
	float: left;
	width: 130px;
	padding-top: 10px;
}

#company .inner table.tb.left.histry{
}
#company .inner table.tb.left.histry th{
	text-align: right;
	width: 95px;
	padding-right: 35px;
}
#company .inner table.tb.right.histry{
	width: 40%;
}
#company .inner table.tb.right.histry th{
	text-align: right;
	width: 95px;
	padding-right: 35px;
}
#company .inner table.tb.left.histry th.min,
#company .inner table.tb.left.histry td.min,
#company .inner table.tb.right.histry th.min,
#company .inner table.tb.right.histry td.min{
	padding-bottom: 15px;
}





#shop{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: #faf9f7;
}
#shop .company_img{
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
}
#shop .company_img .tbc{
	width: 100%;
	border-collapse: collapse;
}
#shop .company_img .tbc td{
	width: 25%;
	height: auto;
	position: relative;
}
#shop .company_img .tbc td a{
	display: block;
}
#shop .company_img .tbc td img{
	width: 100%;
	height: auto;
	position: relative;
}
#shop .company_img .tbc td p{
	margin: auto;
	width: 100%;
	font-size: 14px;
	text-align: center;
	line-height: 100%;
	color: #000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 40px;
	z-index: 1;
}
#shop .company_img .tbc td a p {
	color:#000;
	text-decoration: none;
}
#shop .company_img .tbc td a:hover {
	opacity: 0.7;
  transition: 0.3s;
}
#shop .company_img .tbc td a:hover img {
	opacity: 1;
}
#shop .company_img .tbc td.w a p {
	color:#fff;
	text-decoration: none;
}
#shop .company_img .tbc td.g a p {
	color:#a99664;
	text-decoration: none;
}
#shop .company_img .tbc td.b a p {
	color:#b78556;
	text-decoration: none;
}
#shop .inner{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
#shop .box{
	float: left;
	width: 600px;
	position: relative;
}
#shop .box .logo{
	width: 302px;
	height: 158px;
	position: absolute;
	z-index: 10;
	top: 0px;
left: 0;
right: 0;
	margin: auto;
}
#shop .box .name{
	color: #FFF;
	font-size: 14px;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 158px;
left: 0;
right: 0;
	margin: auto;
}
#shop .box p{
	color: #FFF;
	font-size: 12px;
	line-height: 22px;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 190px;
	left: 0;
	right: 0;
	margin: auto;
}
#shop .box p a:link ,
#shop .box p a:visited {
	color:#fff;
	text-decoration: underline;
}
#shop .box p a:active ,
#shop .box p a:hover {
	color:#fff;
	text-decoration: none;
}
#shop .box .photo{
	width: 100%;
	height: auto;
}




#contact{
	width: 100%;
	text-align: center;
	padding-top: 120px;
	padding-bottom: 75px;
}
#contact .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 55px;
}
#contact .inner{
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
}
#contact .inner .txt{
	padding: 15px;
	width: 100%;
	font-size: 14px;
	line-height: 100%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 22px;
}
#contact .inner .rBox{
	padding: 15px 15px 5px;
	width: 100%;
	font-size: 14px;
	line-height: 150%;
	color: #403937;
	text-align: left;
	border: 1px solid #403937;
	margin-bottom: 22px;
}
#contact .inner .rBox .rLeft{
	float: left;
	width: 160px;
}
#contact .inner .rBox .rRight{
	float: right;
	width: 436px;
}
#contact .inner .rBox .rRight label{
	padding: 0 0 10px;
	width: 48%;
	display: inline-block;
}
#contact .inner textarea{
	padding: 15px;
	width: 100%;
	font-size: 14px;
	line-height: 150%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 12px;
	height: 100px;
}
:placeholder-shown {
    color: #403937; }
::-webkit-input-placeholder {
    color: #403937; }
:-moz-placeholder {
    color: #403937; opacity: 1; }
::-moz-placeholder {
    color: #403937; opacity: 1; }
:-ms-input-placeholder {
    color: #403937; }
#contact .inner .bt_send{
	margin: 30px auto 0;
	width: 110px;
}
#contact .inner .bt_send img{
	width: 100%;
	cursor: pointer;
	cursor: hand;
}
#contact .inner .att{
	font-size: 12px;
	line-height: 23px;
	text-align: left;
	padding-top: 45px;
}
#contact .inner .end{
	font-size: 12px;
	line-height: 23px;
	text-align: left;
	padding-top: 5px;
	padding-bottom: 200px;
}





}
@media screen and (max-width: 1000px) and (min-width: 950px){
.pcOnly {
		display: block;
}
.spOnly {
		display: none;
}



#main{
	width: 100%;
	position: relative;
}
#main .txt{
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 10;
	top: 0;
left: 0;
right: 0;
bottom: 0;
	margin: auto;
}
#main img{
	width: 100%;
	height: auto;
}

.recruit{
	margin: 0 auto 105px;
	width: 640px;
}
.recruit img{
	width: 100%;
	height: auto;
}

.moved{
	margin: 0 auto;
	padding: 80px 0 20px;
	width: 1000px;
	height: auto;
}
.moved .img{
	width: 100%;
	height: auto;
}


#news{
	width: 100%;
	text-align: center;
	padding-top: 100px;
	padding-bottom: 55px;
}
#news .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
}
#news #list{
	margin: 0 auto;
	width: 750px;
}
#news #list dl{
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #403937;
}
#news #list dt{
	float: left;
	margin: 0;
	padding: 30px 0 30px 15px;
	width: 160px;
	font-size: 14px;
	line-height: 140%;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#news #list dd{
	margin: 0 0 0 160px;
	padding: 30px 0;
	font-size: 14px;
	line-height: 140%;
	text-align: left;
}



#concept{
	width: 100%;
	text-align: center;
	padding-top: 65px;
	padding-bottom: 55px;
}
#concept .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 47px;
}
#concept .concept_img{
	width: 100%;
	padding-bottom: 55px;
}
#concept .concept_img img{
	width: 100%;
	height: auto;
}
#concept .sub{
	font-size: 24px;
	line-height: 28px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 25px;
}
#concept p{
	font-size: 14px;
	line-height: 33px;
	text-align: center;
	padding-bottom: 15px;
}



#theory{
	width: 100%;
	text-align: center;
	padding-top: 65px;
	padding-bottom: 95px;
}
#theory .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 47px;
}
#theory .theory_img{
	width: 100%;
	padding-bottom: 55px;
}
#theory .theory_img img{
	width: 100%;
	height: auto;
}
#theory .sub{
	font-size: 20px;
	line-height: 37px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 50px;
}
#theory .cover{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0;
}
#theory .box{
	float: left;
	width: 30%;
	margin-right: 5%;
	height: auto;
}
#theory .box:nth-child(3n){
	margin-right: 0px;
}
#theory .box .title{
	font-size: 22px;
	line-height: 26px;
	text-align: left;
	padding-top: 0;
	padding-bottom: 8px;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.03em;
}
#theory .box .eng{
	font-size: 13px;
	line-height: 20px;
	text-align: left;
	padding-bottom: 10px;
}
#theory .box p{
	font-size: 12px;
	line-height: 22px;
	text-align: left;
	padding-bottom: 0;
}



#works{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 25px;
	background-color: #faf9f7;
}
#works .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 65px;
}
#works .sub{
	font-size: 20px;
	line-height: 37px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 15px;
}
#works p{
	font-size: 12px;
	line-height: 26px;
	text-align: center;
	padding-bottom: 15px;
}
#works .cover{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 45px;
}
#works .box{
	float: left;
	width: 30%;
	margin-right: 5%;
	height: 4638px;
}
#works .box:nth-child(3n){
	margin-right: 0px;
}
#works .box .photo{
	width: 100%;
}
#works .box .title{
	font-size: 14px;
	line-height: 25px;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 15px;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.05em;
}
#works .box .title.pad{
	padding-top: 35px;
}
#works .box p{
	font-size: 12px;
	line-height: 22px;
	text-align: center;
	padding-bottom: 20px;
}
#works .box .bt_works{
	width: 130px;
	margin-right: auto;
	margin-left: auto;
}
#works .box .bt_works img{
	width: 100%;
}


.modal-content{
	width: 100%;
	margin: 0;
	background: #fff;
	position: fixed;
	display: none;
	z-index:1000;
	padding-top: 155px;
	padding-bottom: 155px;
}
#modal-overlay {
	z-index: 1 ;
	display: none ;
	position: fixed ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 120% ;
	background-color: rgba( 0,0,0, 0.75 ) ;
}
.modal-content .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.modal-content .inner .mbox{
	width: 205px;
	float: left;
	margin-right: 80px;
}
.modal-content .inner .mbox.end{
	margin-right: 0px;
}
.modal-content .inner .mbox .mtitle{
	font-size: 14px;
	text-align: left;
	font-weight: bold;
	color: #009987;
	padding-bottom: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #009987;
}
.modal-content .inner .mbox p{
	font-size: 12px;
	line-height: 27px;
	text-align: left;
	margin: 0px;
	padding-top: 20px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.modal-content .inner .close{
	margin-right: auto;
	margin-left: auto;
	height: 23px;
	width: 23px;
	padding-top: 75px;
}
.button-link,
.close{
	cursor: pointer;
	cursor: hand;
}
#modal-content-01 .inner .mbox2,
#modal-content-01 .inner .mbox3,
#modal-content-02 .inner .mbox1,
#modal-content-02 .inner .mbox3,
#modal-content-03 .inner .mbox1,
#modal-content-03 .inner .mbox2{
	opacity:0.4;
  filter: alpha(opacity=40);
}




#members{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 70px;
}
#members .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 60px;
}
#members .members_img{
	width: 100%;
	padding-bottom: 40px;
}
#members .members_img img{
	width: 100%;
}
#members p{
	font-size: 14px;
	line-height: 29px;
	text-align: center;
}




#company{
	width: 100%;
	text-align: center;
	padding-top: 80px;
	padding-bottom: 40px;
	background-color: #faf9f7;
}
#company .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 65px;
}
#company .inner{
	width: 945px;
	margin-right: auto;
	margin-left: auto;
}

#company .inner .title{
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 30px;
	padding-left: 0px;
}
#company .inner .title.en{
	padding-top: 90px;
}

#company .inner table.tb{
	width: 50%;
	border-collapse: collapse ;
}
#company .inner table.tb.left{
	float: left;
}
#company .inner table.tb.right{
	float: right;
}
#company .inner table.tb th{
	font-size: 14px;
	font-weight: normal;
	text-align: left;
	width: 130px;
	padding-bottom: 30px;
}
#company .inner table.tb td{
	font-size: 13px;
	text-align: left;
	line-height: 25px;
	padding-bottom: 30px;
}
#company .inner table.tb.cam td{
	line-height: 20px;
}
#company .inner table.tb td .bt{
	float: left;
	width: 130px;
	padding-top: 10px;
}

#company .inner table.tb.left.histry{
}
#company .inner table.tb.left.histry th{
	text-align: right;
	width: 95px;
	padding-right: 35px;
}
#company .inner table.tb.right.histry{
	width: 40%;
}
#company .inner table.tb.right.histry th{
	text-align: right;
	width: 95px;
	padding-right: 35px;
}
#company .inner table.tb.left.histry th.min,
#company .inner table.tb.left.histry td.min,
#company .inner table.tb.right.histry th.min,
#company .inner table.tb.right.histry td.min{
	padding-bottom: 15px;
}




#shop{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: #faf9f7;
}
#shop .company_img{
	margin: 0 auto;
	width: 100%;
}
#shop .company_img .tbc{
	width: 100%;
	border-collapse: collapse;
}
#shop .company_img .tbc td{
	width: 50%;
	height: auto;
	position: relative;
}
#shop .company_img .tbc td img{
	width: 100%;
	height: auto;
	position: relative;
	z-index: 1;
}
#shop .company_img .tbc td p{
	margin: auto;
	padding: 0;
	width: 100%;
	height: auto;
	font-size: 14px;
	text-align: center;
	line-height: 100%;
	color: #000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 40px;
	z-index: 2;
}
#shop .company_img .tbc td a p {
	color:#000;
	text-decoration: none;
}
#shop .company_img .tbc td a:hover {
	opacity: 0.7;
  transition: 0.3s;
}
#shop .company_img .tbc td a:hover img {
	opacity: 1;
}
#shop .company_img .tbc td.w a p {
	color:#fff;
	text-decoration: none;
}
#shop .company_img .tbc td.g a p {
	color:#a99664;
	text-decoration: none;
}

#shop .inner{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
#shop .box{
	float: left;
	width: 600px;
	position: relative;
}
#shop .box .logo{
	width: 302px;
	height: 158px;
	position: absolute;
	z-index: 10;
	top: 0px;
left: 0;
right: 0;
	margin: auto;
}
#shop .box .name{
	color: #FFF;
	font-size: 14px;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 158px;
left: 0;
right: 0;
	margin: auto;
}
#shop .box p{
	color: #FFF;
	font-size: 12px;
	line-height: 22px;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 190px;
	left: 0;
	right: 0;
	margin: auto;
}
#shop .box p a:link ,
#shop .box p a:visited {
	color:#fff;
	text-decoration: underline;
}
#shop .box p a:active ,
#shop .box p a:hover {
	color:#fff;
	text-decoration: none;
}
#shop .box .photo{
	width: 100%;
	height: auto;
}




#contact{
	width: 100%;
	text-align: center;
	padding-top: 120px;
	padding-bottom: 100px;
}
#contact .title{
	width: 262px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 55px;
}
#contact .inner{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
#contact .inner .txt{
	padding: 15px;
	width: 100%;
	font-size: 14px;
	line-height: 100%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 22px;
}
#contact .inner .rBox{
	padding: 15px 15px 5px;
	width: 100%;
	font-size: 14px;
	line-height: 150%;
	color: #403937;
	text-align: left;
	border: 1px solid #403937;
	margin-bottom: 22px;
}
#contact .inner .rBox .rLeft{
	float: left;
	width: 160px;
}
#contact .inner .rBox .rRight{
	float: right;
	width: 436px;
}
#contact .inner .rBox .rRight label{
	padding: 0 0 10px;
	width: 48%;
	display: inline-block;
}
#contact .inner textarea{
	padding: 15px;
	width: 100%;
	font-size: 14px;
	line-height: 150%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 12px;
	height: 100px;
}
:placeholder-shown {
    color: #403937; }
::-webkit-input-placeholder {
    color: #403937; }
:-moz-placeholder {
    color: #403937; opacity: 1; }
::-moz-placeholder {
    color: #403937; opacity: 1; }
:-ms-input-placeholder {
    color: #403937; }
#contact .inner .bt_send{
	margin: 30px auto 0;
	width: 110px;
}
#contact .inner .bt_send img{
	width: 100%;
}
#contact .inner .bt_send img{
	width: 100%;
}
#contact .inner .att{
	font-size: 12px;
	line-height: 23px;
	text-align: left;
	padding-top: 45px;
}



}


@media screen and (max-width: 949px){
.pcOnly {
		display: none;
}
.spOnly {
	display: block;
}


#main{
	width: 100%;
	position: relative;
}
#main .txt{
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 10;
	top: 0;
left: 0;
right: 0;
bottom: 0;
	margin: auto;
}
#main .img{
	width: 100%;
	height: auto;
}

.recruit{
	margin: 0 auto 3em;
	width: 90%;
}
.recruit img{
	width: 100%;
	height: auto;
}

.moved{
	margin: 0 auto;
	padding: 3em 0 0;
	width: 90%;
	height: auto;
}
.moved img{
	width: 100%;
	height: auto;
}


#news{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 1em;
}
#news .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
}
#news .title img{
	width: 100%;
}
#news #list{
	margin: 0 auto;
	width: 95%;
}
#news #list dl{
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #403937;
}
#news #list dt{
	float: left;
	margin: 0;
	padding: 1.5em 0 1.5em 1%;
	width: 24%;
	font-size: 100%;
	line-height: 140%;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#news #list dd{
	margin: 0 0 0 24%;
	padding: 1.5em 0;
	font-size: 100%;
	line-height: 140%;
	text-align: left;
}



#concept{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 3em;
}
#concept .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3em;
}
#concept .title img{
	width: 100%;
}
#concept .concept_img{
	width: 100%;
	padding-bottom: 3em;
}
#concept .concept_img img{
	width: 100%;
	height: auto;
}
#concept .sub{
	font-size: 130%;
	line-height: 160%;
	font-weight: bold;
	text-align: center;
	padding-bottom: 1em;
}
#concept p{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	font-size: 100%;
	line-height: 180%;
	text-align: left;
	padding-bottom: 15px;
}



#theory{
	width: 100%;
	text-align: center;
	padding-top: 2em;
	padding-bottom: 1em;
}
#theory .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3em;
}
#theory .title img{
	width: 100%;
}
#theory .theory_img{
	width: 100%;
	padding-bottom: 55px;
}
#theory .theory_img img{
	width: 100%;
	height: auto;
}
#theory .sub{
	font-size: 130%;
	line-height: 160%;
	font-weight: bold;
	text-align: center;
	padding-bottom: 50px;
}
#theory .cover{
	width: 95%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 0;
}
#theory .box{
	float: none;
	width: 90%;
	margin: 0 auto;
	height: auto;
}
#theory .box:nth-child(3n){
	margin: 0 auto;
}
#theory .box .title{
	font-size: 150%;
	line-height: 150%;
	text-align: center;
	padding-top: 0;
	padding-bottom: 5px;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.03em;
}
#theory .box .eng{
	font-size: 100%;
	line-height: 150%;
	text-align: center;
	padding-bottom: 15px;
}
#theory .box p{
	font-size: 90%;
	line-height: 160%;
	text-align: left;
	padding-bottom: 3em;
}

#works{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 3em;
	background-color: #faf9f7;
}
#works .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3em;
}
#works .title img{
	width: 100%;
}
#works .sub{
	font-size: 130%;
	line-height: 160%;
	font-weight: bold;
	text-align: center;
	padding-bottom: 15px;
}
#works p{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	font-size: 100%;
	line-height: 180%;
	text-align: left;
	padding-bottom: 15px;
}
#works .cover{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 2em;
}
#works .box{
	float: left;
	width: 49%;
	margin-right: 2%;
	height: auto;
	padding-bottom: 2em;
}
#works .box:nth-child(2n){
	margin-right: 0px;
}
#works .box .photo{
	width: 100%;
}
#works .box .title{
	font-size: 90%;
	line-height: 150%;
	text-align: center;
	padding-top: 1em;
	padding-bottom: 1em;
	font-weight: bold;
	margin: 0px;
	height: auto;
	width: 100%;
	padding-right: 0px;
	padding-left: 0px;
	letter-spacing: -0.05em;
}
#works .box .title.pad{
	padding-top: 1.8em;
}
#works .box .p_sp{
}
#works .box p{
	font-size: 90%;
	line-height: 160%;
	text-align: left;
	padding-bottom: 0px;
}
#works .box .bt_works{
	width: 130px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 1em;
}
#works .box .bt_works img{
	width: 100%;
}



.modal-content{
	width: 100%;
	margin: 0;
	background: #fff;
	position: fixed;
	display: none;
	z-index:1000;
	padding-top: 2em;
	padding-bottom: 2em;
}
#modal-overlay {
	z-index: 1 ;
	display: none ;
	position: fixed ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 120% ;
	background-color: rgba( 0,0,0, 0.75 ) ;
}
.modal-content .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.modal-content .inner .mbox{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	float: none;
	margin-right: 0px;
	padding-bottom: 2em;
}
.modal-content .inner .mbox.end{
	margin-right: 0px;
}
.modal-content .inner .mbox .mtitle{
	font-size: 110%;
	text-align: left;
	font-weight: bold;
	color: #009987;
	padding-bottom: 15px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #009987;
}
.modal-content .inner .mbox p{
	font-size: 100%;
	line-height: 150%;
	text-align: left;
	margin: 0px;
	padding-top: 20px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.modal-content .inner .close{
	margin-right: auto;
	margin-left: auto;
	height: 23px;
	width: 23px;
	padding-top: 0em;
}
.button-link,
.close{
	cursor: pointer;
	cursor: hand;
}
#modal-content-01 .inner .mbox2,
#modal-content-01 .inner .mbox3,
#modal-content-02 .inner .mbox1,
#modal-content-02 .inner .mbox3,
#modal-content-03 .inner .mbox1,
#modal-content-03 .inner .mbox2{
	opacity:0.4;
  filter: alpha(opacity=40);
}





#members{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 3em;
}
#members .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3.5em;
}
#members .title img{
	width: 100%;
}
#members .members_img{
	width: 100%;
	padding-bottom: 30px;
}
#members .members_img img{
	width: 100%;
}
#members p{
	font-size: 100%;
	line-height: 160%;
	text-align: center;
}




#president{
	width: 100%;
	text-align: center;
	padding-top: 2em;
	padding-bottom: 5em;
}
#president .title{
	margin: 0 auto 3.5em;
	width: 74%;
}
#president .title img{
	width: 100%;
	height: auto;
}
#president .cover{
	margin: 0 auto;
	width: 90%;
}
#president .cover .iwaki_img{
	float: none;
	margin: 0 auto;
	width: 45%;
}
#president .cover .iwaki_img img{
	width: 100%;
	height: auto;
}
#president .cover .iwaki_img .cap{
	display: none;
}
#president .cover .pre_txt{
	float: none;
	margin: 0 auto;
	padding: 20px 0 0;
	width: 100%;
}
#president .cover .pre_txt p{
	padding: 0 0 12px;
	width: 98%;
  margin-right: auto;
  margin-left: auto;
	font-size: 100%;
	line-height: 175%;
	text-align: left;
}
#president .cover .pre_txt .cap{
	padding: 10px 0 0;
	font-size: 90%;
	text-align: left;
	display: block;
}
#president .cover .pre_txt .cap img{
	margin: -5px 0 0 6%;
	width: 28%;
	height: auto;
	vertical-align: middle;
}




#company{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 3em;
	background-color: #faf9f7;
}
#company .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3em;
}
#company .title img{
	width: 100%;
}
#company .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

#company .inner .title{
	width: 100%;
	font-size: 120%;
	font-weight: bold;
	text-align: center;
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 1em;
	padding-left: 0px;
}
#company .inner .title.en{
	padding-top: 2em;
}

#company .inner table.tb{
	width: 100%;
	border-collapse: collapse ;
}
#company .inner table.tb.left{
	float: none;
}
#company .inner table.tb.right{
	float: none;
}
#company .inner table.tb th{
	font-size: 90%;
	font-weight: normal;
	text-align: left;
	width: 30%;
	padding-bottom: 1.5em;
}
#company .inner table.tb td{
	font-size: 90%;
	text-align: left;
	line-height: 160%;
	padding-bottom: 1.5em;
}
#company .inner table.tb.cam td{
	line-height: 150%;
}
#company .inner table.tb td .bt{
	float: left;
	width: 105px;
	padding-top: 5px;
	margin-right: 5px;
}
#company .inner table.tb td .bt img{
	width: 100%;
}

#company .inner table.tb.left.histry{
}
#company .inner table.tb.left.histry th{
	text-align: right;
	width: 36%;
	padding-right: 10%;
}
#company .inner table.tb.right.histry{
	/*width: auto;*/
	width: 100%;
}
#company .inner table.tb.right.histry th{
	text-align: right;
	width: 36%;
	padding-right: 10%;
}
#company .inner table.tb.left.histry th.min,
#company .inner table.tb.left.histry td.min,
#company .inner table.tb.right.histry th.min,
#company .inner table.tb.right.histry td.min{
	padding-bottom: 1em;
}




#shop{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: #faf9f7;
}
#shop .company_img{
	margin: 0 auto;
	width: 100%;
}
#shop .company_img .tbc{
	width: 100%;
	border-collapse: collapse;
}
#shop .company_img .tbc td{
	width: 50%;
	height: auto;
	position: relative;
}
#shop .company_img .tbc td img{
	width: 100%;
	height: auto;
	position: relative;
	z-index: 1;
}
#shop .company_img .tbc td p{
	margin: auto;
	padding: 0;
	width: 100%;
	height: auto;
	font-size: 90%;
	text-align: center;
	line-height: 100%;
	color: #000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2em;
	z-index: 2;
}
#shop .company_img .tbc td a p {
	color:#000;
	text-decoration: none;
}
#shop .company_img .tbc td a:hover {
	opacity: 0.7;
  transition: 0.3s;
}
#shop .company_img .tbc td a:hover img {
	opacity: 1;
}
#shop .company_img .tbc td.w a p {
	color:#fff;
	text-decoration: none;
}
#shop .company_img .tbc td.g a p {
	color:#a99664;
	text-decoration: none;
}
#shop .company_img .tbc td.b a p {
	color:#b78556;
	text-decoration: none;
}


#shop .inner{
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
#shop .box{
	float: none;
	width: 100%;
	position: relative;
}
#shop .box .logo{
	width: 45%;
	height: auto;
	position: absolute;
	z-index: 10;
	top: -5px;
left: 0;
right: 0;
	margin: auto;
}
#shop .box .logo img{
	width: 100%;
	height: auto;
}
#shop .box .name{
	color: #FFF;
	font-size: 110%;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 45%;
left: 0;
right: 0;
	margin: auto;
}
#shop .box p{
	color: #FFF;
	font-size: 85%;
	line-height: 140%;
	text-align: center;
	position: absolute;
	z-index: 10;
	top: 60%;
	left: 0;
	right: 0;
	margin: auto;
}
#shop .box p a:link ,
#shop .box p a:visited {
	color:#fff;
	text-decoration: underline;
}
#shop .box p a:active ,
#shop .box p a:hover {
	color:#fff;
	text-decoration: none;
}
#shop .box .photo{
	width: 100%;
	height: auto;
}




#contact{
	width: 100%;
	text-align: center;
	padding-top: 4em;
	padding-bottom: 3em;
}
#contact .title{
	width: 60%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 3em;
}
#contact .title img{
	width: 100%;
}
#contact .inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#contact .inner .txt{
	padding: 1em;
	width: 100%;
	font-size: 100%;
	line-height: 100%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 1.5em;
	
	box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
}
#contact .inner .rBox{
	padding: 1em 1em 0.7em;
	width: 100%;
	font-size: 100%;
	line-height: 150%;
	color: #403937;
	text-align: left;
	border: 1px solid #403937;
	margin-bottom: 1.5em;
	
	box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
}
#contact .inner .rBox .rLeft{
	float: none;
	padding: 0 0 0.5em;
	width: 100%;
}
#contact .inner .rBox .rRight{
	float: none;
	width: 100%;
}
#contact .inner .rBox .rRight label{
	padding: 0 0 0.3em;
	width: 100%;
	display: inline-block;
}
#contact .inner textarea{
	padding: 1em;
	width: 100%;
	font-size: 100%;
	line-height: 150%;
	color:#403937;
	border: 1px solid #403937;
	margin-bottom: 0.5em;
	height: 100px;
	
	box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
}
:placeholder-shown {
    color: #403937; }
::-webkit-input-placeholder {
    color: #403937; }
:-moz-placeholder {
    color: #403937; opacity: 1; }
::-moz-placeholder {
    color: #403937; opacity: 1; }
:-ms-input-placeholder {
    color: #403937; }
#contact .inner .bt_send{
	margin: 1.5em auto 0;
	width: 40%;
}
#contact .inner .bt_send img{
	width: 100%;
}
#contact .inner .att{
	font-size: 90%;
	line-height: 150%;
	text-align: left;
	padding-top: 2em;
}
}
/*お問い合わせ追記BHW*/
.contactBtn {
	margin: 120px auto 80px;
    text-align: center;
}
.contactBtn a {
	font-size: 14px;
    display: inline-block;
    text-decoration: none;
    color: #FFF;
    background-color: #9bbb06;
    padding: 18px 3em;
    transition: .4s;
}
.contactBtn a:hover {
    background-color: #151515;
}
