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

/*ベースの要素の設定をリセット*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,input,p,blockquote,th,td {
margin:0;
padding:0;
}

/*画像の枠線をクリアして位置の初期値の設定*/
img{
border:0;
vertical-align: bottom;
}

/*リンク時の枠の点線をなしにする*/
a{
outline: none;
}

/*リスト要素の初期値をリセット*/
ul,ol{
list-style: none;
}

/*フロート解除用のハック*/
/*clearfixの設定*/
.clearfix:after{  
display: block;/*block要素にする*/
content: " ";  
clear: both;  
}  



/*==========================================
共通
============================================*/


body{
background-color:rgba(249,252,255,1.00);
font-size:1.1em;
font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
color:rgba(20,22,26,1.00)
;letter-spacing: 0.075em;
}

h2.ttl{
color:rgba(89,77,60,1.00);
}

h3{
color:rgba(51,46,39,1.00);
}


/*リンクの装飾の設定*/
a:link,
a:visited,
a:active{
color:rgba(89,77,60,1.00);
}

a:hover{
color:rgba(202,158,109,1.00);
text-decoration:none;
}


#container{
width:90%;
height: auto;
margin: 0 5% 0;
line-height: 35px;
border-right:0.5px solid rgba(89,77,60,1.00);
border-left: 0.5px solid rgba(89,77,60,1.00);
text-align: center;
}

/*header*/
#header{
width: 100%;
margin: 0 auto;
}


h1 img{
margin: 0 0 20px;
width: 80%;
height: auto;
max-width: 1080px;
max-height: 108px;
text-align: center;
}

.slide {
position: relative;
width: 100%;
padding-top: 67.5%;
overflow: hidden;
}
 
@keyframes slideshow {
  0% {
    opacity: 0;
  }
 
  10% {
    opacity: 1;
  }
 
  28% {
    opacity: 1
  }
 
  38% {
    opacity: 0;
  }
 
  100% {
    opacity: 0;
  }
}
 
.slide img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  opacity: 0;
  animation: slideshow 24s linear infinite;
}
 
.slide img:nth-child(2) {
  animation-delay: 8s;
}
 
.slide img:last-child {
  animation-delay: 16s;
}
.mv{
position:relative;
width: 80%;
margin: 0 10%;
height: auto;
text-align: center;
}

.mv video,img{
position: relative;
width: 100%;
height: auto;
}




.iframe-wrap {
position: relative;
width: 100%;
padding-top: 56.25%;
overflow:auto; 
-webkit-overflow-scrolling:touch;
border:2px solid #ccc; 
}

.iframe-wrap iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border:none;
display:block;
}

#go{
/* display:none; */ /* 通常時は非表示 */
position: fixed; /* bodyに対しての絶対位置指定 */
right: 5%;
top: 75%;
display: block;
width: 100px;
height: 100px;
cursor: pointer;
z-index: 3;
}

#go img{
display: block;
width: 100%;
height: auto;
margin-bottom: 15px;
}


/***** クリック前のボタン *****/


.mcontainer{
width: 80%;
height:auto;
padding: 0 10% 0px;
margin: 2% 0 0%;
float: left;
}

.mcontainer p{
font-size: 1.075em;
border-bottom: none;
margin-bottom: 2%;
}




h2.ttl img{
width: 80%;
height: auto;
max-width: 1080px;
max-height: 108px;
text-align: center;
margin: 1% 10%;
}

h2.ttl{
width: 40%;
margin: 30px 30% 30px;
text-align: center;
font-size: 1.5em;
display: block;
border-bottom: 1px solid rgba(89,77,60,1.00);
padding-bottom: 0.5%;
}



h3.underline{
font-size: 1.3em;
padding: 4% 0 2%;
}

.left_container{
width: 40%;
margin-left: 10%;
float: left;
text-align: center;
}

.left_container img{
width: 100%;
height: auto;
max-width: 446px;
}

.right_container{
width: 40%;
height: auto;
white-space:normal;
float: right;
text-align: left;
padding-bottom: 10px;
}

.right_container p{
border-bottom: none;
}

h3.lead{
text-decoration: none;
font-size:1.2em;
line-height: 30px;
margin: 0 0 10px;
font-weight:bolder;
}

p.text{
font-size: 1.1em;
line-height: 35px;
margin-bottom: 20px;
}

.instabanner{
width: auto;
height: 160px;
margin-top: 20px;
}


.instabanner img{
width: 100%;
height: auto;
max-width: 540px;
max-height: 72px;
margin: 0 0 45px;
}


.movie{
position:relative;
width: 100%;
height: auto;
margin: 0 0%;
text-align: center;
float: left;
}

.feat{
position:relative;
width: 50%;
height: auto;
margin: 0 0%;
text-align: center;
float: left;
}






.photo{
position:relative;
width: 90%;
margin: 0 5%;
height: auto;
text-align: center;
}


#profile .instabanner{
margin-top:0;
height: 230px;
}



#form{
border: solid;
border-width:1px;
border-color:rgba(65,65,65,1.00);
margin: 0 0 10px;
}

#form ul{
text-align: center;
}

#form ul li:after{  
display: block;/*block要素にする*/
clear: both;  
}  

#contactbox li {
padding: 5px 0px;
min-height: 27px;
}

#contactbox p{
text-align: center;
line-height: 25px;
}

#contact{
margin: 0 0 2%;
}


#form strong{
font-size: 1.5em;
}

.sentence{
width: 100%;
}



.lcontainer{
margin: 2% 0;
}

.detail :link{
line-height: 40px;
}

p.detail{
margin: 1% 0;
}
.mbox{
width: 90%;
height:auto;
padding: 0 5% 0px;
margin: 1% 0 0%;
float: left;
display: flex;
overflow-x: scroll;
}

.mbox p{
font-size: 1.075em;
border-bottom: none;
margin-bottom: 2%;
}

h2.sub{
width: 80%;
margin: 0 10%;
display: block;
text-decoration: underline;
}

.topic{
width: 50%;
flex-shrink: 0;
}

.topic ul{
width: 100%;
float: left;
margin: 0% 2% 0 2%;
max-height: 200px;
overflow-y:scroll;
text-align:left; 
padding: 0 0%;
}

.topic li{
width: 90%;
padding: 0% 5% 1%;
font-size: 0.95em;
float: left;
line-height: 20px;
}

.scontainer{
width: 50%;
flex-shrink: 0;
margin: 0 0 1%;
padding-bottom: 1%;
}

.scontainer ul{
width: 46%;
float: left;
margin: 0% 2% 0 2%;
max-height: 500px;
overflow-y:scroll;
text-align:left; 
padding: 0 0%;
}

.scontainer li{
padding: 0% 0 1%;
font-size: 0.95em;
}

.scontainer li img{
float: left;
position:relative;
width: 100%;
height: auto;
}

.scontainer p{
font-size: 0.9em;
line-height: 20px;
}



.menu{
font-size:1.1em;
font-weight:bolder;
line-height: 30px;
text-decoration: underline;
}

ul.list{
z-index: 3;
position: fixed;
right: 0%;
width: 100%;
text-align: center;
background:rgba(65,65,65,0.8);
margin: -1% 0 0;
}

li.list{
font-weight:bolder;
line-height: 30px;
padding:0 0.5%;
float: right;

}

li.list
a{
color:rgba(255,255,255,1.00);
}

.menu li
a:link,
a:visited,
a:active{
color:rgba(0,0,0,1.00);
}
.news{
font-size:0.95em;
line-height: 40px;
font-weight:bolder;
}

#news{
background:rgba(65,65,65,0.8);
color:rgba(255,255,255,1.00);
}
#news a{
color:rgba(255,255,255,1.00);
}

#news h2{
color:rgba(255,255,255,1.00);
}

time{
padding: 0 2%;
}

.career time{
padding: 0 2% 0 0;
}



#News{
border-right: 2px solid rgba(89,77,60,1.00);
box-sizing: border-box;
}


#footer {
padding: 30px 0;
font-size: 0.7em;
text-align: center;
}

p.brown{
color: rgba(89,77,60,1.00);
}

span.new{
color: rgba(0,21,70,1.00);
}

.btn1{
border:none;
border: 2px solid rgba(65,65,65,0.8);
box-sizing: border-box;
margin: 1% 0% 2%;
}

.box a {
font-weight: lighter;
line-height: 28px;
padding: 2% 5%;
text-align: left;
display: block;
text-decoration: none;
color:rgba(62,51,45,1.00);
}



.box{
height: auto;
border: none;
}

.btn1 a:hover {
color:rgba(62,51,45,0.8);
text-decoration: underline;
}

.exp{
font-size: 0.75em;
}

@media screen and (max-width: 1440px) {

#container{
line-height: 30px;
font-size: 0.9em;
}

.left_container{
margin:0;
}

.left_container img{
width: 100%;
height: auto;
max-width: 446px;
}

.right_container{
margin: 0 5%;
}

p.text{
font-size: 0.9em;
line-height: 30px;
}
	
#profile .instabanner{
height:194px;
}

#go{
width: 50px;
height: 50px;
}

}

@media screen and (max-width: 1024px) {
#container{
line-height: 25px;
font-size: 0.8em;
}

.left_container img{
width: 100%;
height: auto;
max-width: 446px;
}

p.text{
font-size: 1em;
line-height: 25px;
margin-bottom: 10px;
}
	
.instabanner{
margin-top: 10px;
height: 120px;
}

.instabanner img{
margin-top: 0;
}
	
h3.underline{
padding: 10px 0 0 ;
font-size: 0.9em;
}
	
h2.ttl{
width: 50%;
margin: 0px 25% 25px;
}
	
}



@media screen and (max-width: 768px) {

h2.ttl{
width: 70%;
margin: 0px 15% 25px;
}
	
#container{
line-height: 25px;
font-size: 0.7em;
}

.mcontainer{
margin-top: 0;
padding-bottom: 30px;
padding-top: 10%;
}
.left_container{
width: 100%;
padding-bottom: 20px;
}

.left_container img{
width: 30%;
margin: 0 35%;
}

.right_container{
width: 100%;
margin: 0;
float: left;
}
	
.instabanner{
margin-top: 10px;
}


.instabanner img{
margin-top: 10px;
}
	
h3.underline{
font-size: 0.9em;
padding-top: 5px;
line-height: 20px;
}
	
h3.lead{
font-size:1em;
line-height: 25px;
}

	
p.text{
line-height: 20px;
}

#form ul{
width: 100%;
margin: 0 auto;
padding: 0;
}
#form ul input, #form ul textarea {
width: 100%;
}
#form ul textarea {
height:300px;
}
	

	
.scontainer{
width: 50%;
text-align: center;
float: left;
}
	
#News{
border-right: none;
box-sizing: border-box;
}
	
.feat{
position:relative;
width: 90%;
height: auto;
margin: 0% 5%;
text-align: center;
float: left;
}

}

@media screen and (max-width: 480px) {
#container{
width:100%;
height: auto;
margin: 0 0% 0;
border: none;
	}
.mbox{
width: 90%;
max-height:1200px;
padding: 0 5% 0px;
margin: 1% 0 0%;
float: left;
display: flex;
overflow-y: scroll;
}

.mbox p{
font-size: 0.75em;
border-bottom: none;
margin-bottom: 0.5%;
}


.menu{
font-size:1.1em;
font-weight:bolder;
line-height: 20px;
text-decoration: underline;
}

.scontainer{
width: 95%;
height: 600px;
flex-shrink: 0;
margin: 0 0 1%;
border-right:none;
padding-bottom: 2%;
overflow-y: scroll;
}

.scontainer ul{
width: 90%;
float: left;
margin: 0% 5% 0;
max-height: 300px;
overflow-y:scroll;
text-align:left; 
padding: 0 0%;
}

.scontainer li{
padding: 0% 0 0.5%;
font-size: 0.95em;
}

.scontainer li img{
float: left;
position:relative;
width: 100%;
height: auto;
max-height: 400px;
text-align: center;
}

.scontainer p{
font-size: 1.075em;
}


	
#go{
top: 80%;
right: 2%;
width: 35px;
height: 35px;
margin-bottom: 5px;
}
#profile .instabanner{
height: 125px;
}
h2.ttl{
width: 90%;
margin: 0px 5% 25px;
font-size: 1.2em;
}

.mcontainer{
width: 90%;
padding: 2% 5%;
}
	
#form strong{
font-size: 1em;
}
	
.news{
font-size:0.95em;
line-height: 25px;
font-weight:bolder;
}

}