/*----------------------------------------------------
　
------------------------------------------------------*/
#main{
background: url("img/main.jpg") no-repeat center top;
}
#main h2 {
position: relative;
height:500px;
line-height: 500px;
background: none;
filter: drop-shadow(3px 3px 5px #000);
}
#main h2 img{
max-width: 302px;
vertical-align: middle;
}

@media screen and (max-width: 1280px) {
#main{
background-image: url('img/main_sp.jpg');
background-size: 100% auto;
}
#main h2 img{
width: 60%;

}
}
@media screen and (max-width: 640px) {
#main{
background-size: auto 100%;
}
}

@media screen and (max-width: 480px) {
#main{
max-height:360px;
background-size: auto 100%;
}
#main h2 {
max-height:340px;
line-height: 340px;
box-sizing: inherit;
padding-top: 20px;
}

}
@media screen and (max-width: 390px) {
#main{
max-height:270px;
}
#main h2 {
max-height:270px;
line-height: 270px;
}
}



/*----------------------------------------------------
　
------------------------------------------------------*/


.title{
  clear: both;
  position: relative;
  margin: 0 0 38px;
  padding: 0 0 0.5em;
  font-size:23px;
  font-weight:bold;
  line-height: 1.2;
  text-align: left;
  border-bottom: 2px solid #fff;
}

.title:before{
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 90px;
  border-bottom: 2px solid #bbaf5b;
}
.title:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 45px;
  height: inherit;
  border-bottom: 2px solid #73588b;
}
.title .eng{
display: block;
color: #bbaf5b;
font-size:12px;
font-weight: normal;
font-family: chaparral-pro, serif;
}



@media screen and (max-width: 1280px) {
.title{
font-size: 16px;
}
.title:before{
  width: 64px;
}
.title:after {
  width: 32px;
}
.title .eng{
font-size:6px;
}


}






/*----------------------------------------------------
　#text01
------------------------------------------------------*/
#text01{
clear: both;
overflow: hidden;
margin: 0 0 120px;
padding: 115px 6.3% 0 0;
text-align: left;

}

#text01 .cont{
float:right;
width: 48%;
}
#text01 h3{
margin: 0 0 0.5em;
font-size:43px;
font-family: a-otf-futo-min-a101-pr6n, serif;
line-height: 1.4;
}
#text01 h4{
color: #563265;
font-size: 25px;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#text01 .text{
margin: 0 0 1em;
font-size:25px;
line-height: 1.9;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#text01 .img{
float:left;
width: 48%;
}
#text01 .img img{
width: 100%;
}
#text01 table{
width: 100%;
}
#text01 table th{
width: 6em;
padding:0.5em;
font-size: 18px;
text-align: center;
background: #e3dee8;
border: 1px solid #bebebe;
}
#text01 table td{
padding:0.5em 0.5em 0.5em 1em;
font-size: 18px;
background: #fff;
border: 1px solid #bebebe;
}




@media screen and (min-width: 1920px) {
#text01{
padding-right: 0;
}
#text01 .cont{
float:none;
width:800px;
position: absolute;
left: 50%;
margin-left: 2%;
}

#text01 h3 span{
display: block;
}
}
@media screen and (max-width: 1680px) {
#text01 h3{
font-size:40px;
}

}
@media screen and (max-width: 1280px) {
#text01 {
padding:0;
margin: 40px 0 50px;
}
#text01 .cont{
float:none;
width: 90%;
margin:0 auto;
}

#text01 h3{
font-size:25px;
}
#text01 h3 span{
display: inline;
}
#text01 h4{
font-size: 20px;
}

#text01 .text{
font-size:14px;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#text01 .img{
float:none;
width: 100%;
margin: 0 0 1em; 
}

#text01 table th{
width: 6em;
padding:0.5em;
font-size: 14px;

}
#text01 table td{
font-size: 17px;
}
}


@media screen and (max-width: 480px) {
#text01 h3{
font-size:21px;
}
}

/*----------------------------------------------------
　#text02
------------------------------------------------------*/
#text02{
clear: both;
max-width: 1680px;
margin: 0 auto 90px;
position: relative;
}
#text02 ul.list{
overflow: hidden;
}
#text02 ul.list li{
float: left;
width: 31.4%;
margin:0 2.9% 50px 0;
text-align: center;
}
#text02 ul.list li:nth-child(3n){
margin-right: 0;
}
#text02 ul.list li h3{
font-size: 30px;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#text02 ul.list li .text{
padding: 0 2em;
font-size: 17px;
text-align: left;
}

@media screen and (max-width: 1680px) {
#text02{
width: 90%;
}
}
@media screen and (max-width: 1280px) {
#text02 {
padding:0;
margin: 40px auto 50px;
}
#text02 ul.list li{
float: left;
width: 100%;
margin:0 0 25px 0;
text-align: center;
}
#text02 ul.list li h3{
font-size: 20px;
}
#text02 ul.list li .text{
font-size: 14px;
}
}



/*----------------------------------------------------
　#cm
------------------------------------------------------*/
#cm{
clear: both;
overflow: hidden;
margin: 0 auto 120px;
text-align: center;
background: url("img/jumokusou_body.jpg") no-repeat center top;

}
#cm img{
width: 100%;
max-width: 1680px;

}
@media screen and (max-width: 1680px) {
#cm{
background:none;
}
}
@media screen and (max-width: 1280px) {
#cm{
margin: 0 auto 50px;
}
}



/*----------------------------------------------------
　#staff
------------------------------------------------------*/
#staff{
clear: both;
overflow: hidden;
margin: 0 0 120px;
padding: 0 0 0 6.3%;
text-align: left;

}

#staff .cont{
/*float:left;
width: 48%;*/
max-width: 1680px;
margin: 0 auto;
}
#staff h3{
margin: 0 0 0.5em;
font-size:43px;
font-family: a-otf-futo-min-a101-pr6n, serif;
line-height: 1.4;
}
#staff .text{
margin: 0 0 1em;
font-size:25px;
line-height: 1.9;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#staff .img{
float:right;
width: 48%;
}
#staff .img img{
width: 100%;
}
#staff ul.img2{
clear: both;
overflow: hidden;
max-width:1680px;
margin: 0 auto;
padding: 50px 0 0;
}
#staff ul.img2 li{
float: left;
width: 48%;
margin: 0 4% 0 0;
}
#staff ul.img2 li:nth-child(2n){
margin-right: 0;
}

@media screen and (min-width: 1920px) {
#staff{
padding-left: 0;
}
#staff .cont{
/*float:none;
width:800px;
position: absolute;
left: 50%;
margin-left: -840px;*/
}
#staff h3 span{
display: block;
}
#staff ul.img2 li{
float: left;
width: 800px;
margin: 0 80px 0 0;
}
}
@media screen and (max-width: 1680px) {
#staff h3{
font-size:40px;
}

}
@media screen and (max-width: 1280px) {
#staff {
padding:0;
margin: 0 0 50px;
}
#staff .cont{
float:none;
width: 90%;
margin:0 auto 1.5em;
}

#staff h3{
font-size:25px;
}
#staff h3 span{
display: inline;
}
#staff .text{
font-size:14px;
font-family: a-otf-futo-min-a101-pr6n, serif;
}
#staff .img{
float:none;
width: 100%;
margin: 0 0 1em;
}

#staff ul.img2{
clear: both;
padding: 1em 0 0;
}
#staff ul.img2 li{
float: none;
width: 100%;
margin: 0 0 1em;
}

}


@media screen and (max-width: 480px) {
#staff h3{
font-size:21px;
}
}



