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



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

article h1{
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 10;
  width: 360px;
}
article h1 a{
  width: 100%;
}
article h1 a img{
  width: 100%;
}

header{
  width: 100%;
  background-image: url(../../img/opneBack.png);
  background-size: cover;
  background-position: center;
  height: 90px;
}

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

article{
  background-image: url("../img/pageBack.jpg");
  background-size: cover;
  background-position: top center;
  border: 20px solid #2a2608;
  border-top: none;
  text-align: center;
  width: 100%;
  padding-bottom: 50px;
}

.headTitle{
  display: block;
  width: 400px;
  margin: 0 auto;
  margin-bottom: 50px;
}

.titleImg{
  margin-bottom: 30px;
  max-width: 80%;
}

@media screen and (max-width: 800px) { 
  header{
    height: 56px;
    display: none;
  }
  
  article h1{
    display: none;
  }
  
  article{
    border: 10px solid #2a2608;
    border-top: none;
  }
  
  .headTitle{
    margin-top: 56px;
    margin-bottom: 50px;
    max-width: 90%;
  }
  
  .titleImg{
    margin-bottom: 10px;
  }
}

.imageBtn{
  display: inline-block;
  max-width: calc(100% - 30px);
}

.imageBtn img{
  width: 100%;
}

/*==============================
メイン
==============================*/

article > div:first-of-type{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto 50px;
  display: flex;
  justify-content: center;
}

article > div:first-of-type a{
  display: block;
  margin: 0 20px;
}

#movWrap{
  position: relative;
  margin-bottom: 100px;
}

#movWrap > img{
  display: block;
  width: 90%;
  max-width: 800px;
  margin: 0 auto 30px;
}

#movWrap > iframe{
  width: 800px;
  height: 450px;
  margin-bottom: 20px;
}

#movWrap > ul{
  position: relative;
  display: flex;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: space-between;
}

#movWrap > ul > img{
  position: absolute;
  top: -250px;
}

#movWrap > ul > img:first-of-type{
  width: 100px;
  left: -2%;
}

#movWrap > ul > img:last-of-type{
  width: 80px;
  right: -2%;
}

#movWrap > ul li{
  width: 24%;
	margin-bottom: 5px;
}

#movWrap > ul li a{
  display: block;
  width: 100%;
}

#movWrap > ul li a img{
  width: 100%;
}

#yamamotoWrap{
  margin-bottom: 100px;
}

#yamamotoWrap > img{
  width: 90%;
  max-width: 800px;
  margin-bottom: 50px;
}

#yamamotoWrap > div{
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px;
  padding-top: 0;
  background-color: #fbf3e6;
}

#yamamotoWrap > div > img:first-of-type{
  position: relative;
  top: -30px;
  width: 100%;
  max-width: 500px;
}

.masterTitle{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 20px;
}

.masterTitle > img{
  margin-right: 15px;
}

.masterTitle > h3{
  font-size: 26px;
  letter-spacing: 1px;
}

#yamamotoWrap > div > div:nth-of-type(2){
  position: relative;
  top: -50px;
  display: flex;
  align-items: center;
}

#yamamotoWrap > div > div:nth-of-type(2) img{
  position: relative;
  width: 25%;
  left: -3%;
  margin-right: 20px;
}

#yamamotoWrap > div > div:nth-of-type(2) table{
  border-collapse: collapse;
  border-spacing: 0;
  width: 75%;
}

#yamamotoWrap > div > div:nth-of-type(2) table tr{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#yamamotoWrap > div > div:nth-of-type(2) table th,
#yamamotoWrap > div > div:nth-of-type(2) table td{
  padding: 12px 0px 10px;
  text-align: left;
  vertical-align: top;
}

#yamamotoWrap > div > div:nth-of-type(2) table th::before{
  content: "●";
  color: #8a6239;
}

#yamamotoWrap > div > div:nth-of-type(2) table th{
	width: 40%;
}

#yamamotoWrap > div > div:nth-of-type(2) table td:first-of-type{
  width: 60%;
}

#yamamotoWrap > div > div:nth-of-type(2) table td:last-of-type{
	width: 100%;
	height: 4px;
	padding: 0;
	background-image: url(../img/tableBar.png);
	background-position: bottom;
}

#yamamotoWrap > div > div:nth-of-type(4){
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

#yamamotoWrap > div > div:nth-of-type(4) img{
  align-self: flex-start;
}

#yamamotoWrap > div > div:nth-of-type(4) p{
  text-align: justify;
  margin-right: 20px;
}

#yamamotoWrap > div > img:last-of-type{
  width: 95%;
}


#naoyaWrap > img{
  width: 90%;
  max-width: 800px;
  margin-bottom: 50px;
}

#naoyaWrap > div{
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px;
  padding-top: 0;
  background-color: #fbf3e6;
}

#naoyaWrap > div > img:first-of-type{
  position: relative;
  top: -30px;
  width: 100%;
  max-width: 500px;
}

#naoyaWrap > div > div:nth-of-type(2){
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}

#naoyaWrap > div > div:nth-of-type(2) img{
  position: relative;
  width: 25%;
  margin-right: 20px;
}

#naoyaWrap > div > div:nth-of-type(2) table{
  border-collapse: collapse;
  border-spacing: 0;
  width: calc(75% - 20px);
}

#naoyaWrap > div > div:nth-of-type(2) table tr{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#naoyaWrap > div > div:nth-of-type(2) table th,
#naoyaWrap > div > div:nth-of-type(2) table td{
  padding: 12px 0px 10px;
  text-align: left;
  vertical-align: top;
}

#naoyaWrap > div > div:nth-of-type(2) table th::before{
  content: "●";
  color: #8a6239;
}

#naoyaWrap > div > div:nth-of-type(2) table th{
	width: 40%;
}

#naoyaWrap > div > div:nth-of-type(2) table td:first-of-type{
  width: 60%;
}

#naoyaWrap > div > div:nth-of-type(2) table td:last-of-type{
	width: 100%;
	height: 4px;
	padding: 0;
	background-image: url(../img/tableBar.png);
	background-position: bottom;
}

#naoyaWrap > div > div:nth-of-type(4){
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

#naoyaWrap > div > div:nth-of-type(4) img{
  align-self: flex-start;
}

#naoyaWrap > div > div:nth-of-type(4) p{
  text-align: justify;
  margin-right: 20px;
}

#naoyaWrap > div > div:nth-of-type(6){
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

#naoyaWrap > div > div:nth-of-type(6) img{
  align-self: flex-start;
}

#naoyaWrap > div > div:nth-of-type(6) p{
  text-align: justify;
  margin-right: 20px;
}

#naoyaWrap > div > div:nth-of-type(8){
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

#naoyaWrap > div > div:nth-of-type(8) img{
  align-self: flex-start;
}

#naoyaWrap > div > div:nth-of-type(8) p{
  text-align: justify;
  margin-right: 20px;
}

#naoyaWrap > div > img:last-of-type{
  width: 95%;
}

/*==============================
レスポンシブ
==============================*/

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

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

@media screen and (max-width: 1200px) {
  #movWrap{
    padding-right: 15px;
    padding-left: 15px;
  }
  
  #movWrap > ul > img:first-of-type{
    left: 5%;
  }
  
  #movWrap > ul > img:last-of-type{
    right: 5%;
  }
}

@media screen and (max-width: 1000px) {
  #movWrap > ul > img{
    top: -180px;
  }
  #movWrap > ul > img:first-of-type{
    width: 80px;
    left: 0%;
  }
  
  #movWrap > ul > img:last-of-type{
    width: 60px;
    right: 0%;
  }
  
  #movWrap > iframe {
    width: 600px;
    height: 335px;
    margin-bottom: 20px;
  }
  
  #yamamotoWrap > div > div:nth-of-type(2){
    top: 0;
    margin-bottom: 30px;
  }
  
  #yamamotoWrap > div > div:nth-of-type(2) img{
    left: 0;
		width: auto;
		max-width: 100%;
  }
  
  #naoyaWrap > div > div:nth-of-type(2){
    top: 0;
    margin-bottom: 30px;
  }
  
  #naoyaWrap > div > div:nth-of-type(2) img{
    left: 0;
		width: auto;
		max-width: 100%;
  }
}

@media screen and (max-width: 800px) { 
  article > div:first-of-type a{
    width: 45%;
  }
  article > div:first-of-type a img{
    width: 100%;
  }
  
  #movWrap > iframe {
    width: 400px;
    height: 225px;
    margin-bottom: 20px;
  }
  
  #movWrap > ul li{
    width: 31%;
  }
  
  #yamamotoWrap > div > div:nth-of-type(2){
    flex-wrap: wrap;
  }
  
  #yamamotoWrap > div > div:nth-of-type(2) img{
    margin: 0 auto;
  }
  
  #yamamotoWrap > div > div:nth-of-type(2) table{
    width: 100%;
  }
  
  #yamamotoWrap > div > div:nth-of-type(4){
    flex-wrap: wrap;
  }
  
  #yamamotoWrap > div > div:nth-of-type(4) p{
    margin: 0 0 20px;
  }
  
  #yamamotoWrap > div > div:nth-of-type(4) img{
    margin: 0 auto;
    max-width: 80%;
  }
  
  #naoyaWrap > div > div:nth-of-type(2){
    flex-wrap: wrap;
  }
  
  #naoyaWrap > div > div:nth-of-type(2) img{
    margin: 0 auto;
  }
  
  #naoyaWrap > div > div:nth-of-type(2) table{
    width: 100%;
  }
  
  #naoyaWrap > div > div:nth-of-type(4){
    flex-wrap: wrap;
  }
  
  #naoyaWrap > div > div:nth-of-type(4) p{
    margin: 0 0 20px;
  }
  
  #naoyaWrap > div > div:nth-of-type(4) img{
    margin: 0 auto;
    max-width: 80%;
  }
  
  #naoyaWrap > div > div:nth-of-type(6){
    flex-wrap: wrap;
  }
  
  #naoyaWrap > div > div:nth-of-type(6) p{
    margin: 0 0 20px;
  }
  
  #naoyaWrap > div > div:nth-of-type(6) img{
    margin: 0 auto;
    max-width: 80%;
  }
  
  #naoyaWrap > div > div:nth-of-type(8){
    flex-wrap: wrap;
  }
  
  #naoyaWrap > div > div:nth-of-type(8) p{
    margin: 0 0 20px;
  }
  
  #naoyaWrap > div > div:nth-of-type(8) img{
    margin: 0 auto;
    max-width: 80%;
  }
}

@media screen and (max-width: 600px){
  .headTitle{
    margin-bottom: 30px;
  }
  
  article > div:first-of-type{
    flex-wrap: wrap;
    max-width: 300px;
    margin-bottom: 30px;
  }
  article > div:first-of-type a{
    width: 100%;
		margin-bottom: 15px;
  }
  
  #movWrap{
    margin-bottom: 30px;
  }
  
  #movWrap > img{
    width: 100%;
  }
  
  #movWrap > iframe {
    width: 85vw;
    height: 47vw;
    margin-bottom: 20px;
  }
  #movWrap > ul > img{
    display: none;
  }
  
  #movWrap > ul li{
    width: 48%;
  }
  
  #yamamotoWrap{
    margin-bottom: 50px;
  }
  
  #yamamotoWrap > div{
    padding: 15px;
    padding-top: 0;
  }
  
  .masterTitle > img{
    width: 30px;
    margin-right: 10px;
  }
  
  .masterTitle > h3{
    font-size: 18px;
    letter-spacing: 0px;
    text-align: left;
  }
  
  #naoyaWrap{
    margin-bottom: 50px;
  }
  
  #naoyaWrap > div{
    padding: 15px;
    padding-top: 0;
  }
  #yamamotoWrap > div > div:nth-of-type(2) table th,
	#naoyaWrap > div > div:nth-of-type(2) table th{
		width: 100%;
		padding-bottom: 0;
	}
  #yamamotoWrap > div > div:nth-of-type(2) table td:first-of-type,
	#naoyaWrap > div > div:nth-of-type(2) table td:first-of-type{
		width: 100%;
		text-align: justify;
		padding-top: 0;
	}
}

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