/**************************************************
 Main Visual 
**************************************************/
.mainVisualArea {
  height: 510px;
  position: relative;
}

.mainVisualArea .photoContainer {
  height: 510px;
  position: relative;
  background: url(../img/about/bg_main_visual_top.jpg) no-repeat;
  background-size: cover;
}

.mainVisualArea .photoContainer .photo {
  width: 0;
  height: 510px;
  overflow: hidden;
  text-align: center;
  position: absolute;
}

.mainVisualArea .photoContainer .p0 {
  background: url(../img/bg_main_visual1.jpg) no-repeat left top;
}

.mainVisualArea .photoContainer .p1 {
  background: url(../img/bg_main_visual2.jpg) no-repeat left top;
}

.mainVisualArea .photoContainer .p2 {
  background: url(../img/bg_main_visual3.jpg) no-repeat left top;
}

.mainVisualArea .photoContainer .p3 {
  background: url(../img/bg_main_visual4.jpg) no-repeat left top;
}

.mainVisualArea .textContainer {
  position: absolute;
  text-align: center;
  width: 100%;
  bottom: 88px;
  color: #fff;
}

.mainVisualArea .textContainer .sub {
  font-size: 2em;
  color: #8D785A;
  font-family: "Open Sans", "Noto Sans Japanese", Meiryo, MS PGothic, sans-serif;
  opacity: 0;
}

.mainVisualArea .textContainer .title {
  font-size: 5em;
  font-weight: bold;
  font-family: "Open Sans", "Noto Sans Japanese", Meiryo, MS PGothic, sans-serif;
  display: inline-block;
  /*border-bottom:1px solid #fff;*/
  overflow: hidden;
  opacity: 0;
}

.mainVisualArea .textContainer .line {
  width: 0;
  height: 1px;
  margin: auto;
  background: #fff;
  margin-bottom: 20px;
}

.mainVisualArea .textContainer .text {
  margin-bottom: 40px;
  font-size: 1.1em;
  opacity: 0;
}

.mainVisualArea .textContainer .btn {
  width: 200px;
  margin: auto;
  opacity: 0;
}

.mainVisualArea .textContainer .btn a {
  color: #fff;
  display: block;
  padding: 8px 0 8px 0;
  transition: 0.2s;
  border: 1px solid #fff;
}

.mainVisualArea .textContainer .btn a:hover {
  background: #8D785A;
  transition: 0.2s;
  border: 1px solid #8D785A;
}

.mainVisualArea .thumbContainer {
  position: absolute;
  bottom: -25px;
  width: 100%;
}

.mainVisualArea .thumbContainer ul {
  width: 230px;
  margin: auto;
}

.mainVisualArea .thumbContainer ul li,
.mainVisualArea .thumbContainer ul li a {
  display: block;
  width: 50px;
  height: 50px;
}

.mainVisualArea .thumbContainer ul li {
  float: left;
}

.mainVisualArea .thumbContainer ul li a:hover {
  background: url(../img/icon_main_visual_select.png) no-repeat;
}

.mainVisualArea .thumbContainer ul li:nth-child(1) {
  background: url(../img/icon_main_visual1.png) no-repeat;
}

.mainVisualArea .thumbContainer ul li:nth-child(2) {
  background: url(../img/icon_main_visual2.png) no-repeat;
  margin-left: 10px;
}

.mainVisualArea .thumbContainer ul li:nth-child(3) {
  background: url(../img/icon_main_visual3.png) no-repeat;
  margin-left: 10px;
}

.mainVisualArea .thumbContainer ul li:nth-child(4) {
  background: url(../img/icon_main_visual4.png) no-repeat;
  margin-left: 10px;
}

.mainVisualArea .thumbContainer ul li.selected a {
  background: url(../img/icon_main_visual_select.png) no-repeat;
}

@media screen and (max-width: 820px) {
  .mainVisualArea .textContainer .sub {
    font-size: 1.5em;
  }
  .mainVisualArea .textContainer .title {
    font-size: 3.5em;
  }
  .mainVisualArea .textContainer .text {
    font-size: 0.75em;
  }
}

@media screen and (max-width: 640px) {
  .mainVisualArea {
    height: 325px;
  }
  .mainVisualArea .photoContainer {
    height: 325px;
  }
  .mainVisualArea .photoContainer .photo {
    height: 325px;
  }
  .mainVisualArea .textContainer {
    position: absolute;
    text-align: center;
    width: 100%;
    bottom: 58px;
    color: #fff;
  }
  .mainVisualArea .textContainer .sub {
    font-size: 0.8em;
  }
  .mainVisualArea .textContainer .title {
    font-size: 1.7em;
    /*
			margin-bottom:20px;
			border-bottom:none;
			*/
  }
  .mainVisualArea .textContainer .text {
    margin-bottom: 20px;
    font-size: 0.75em;
    padding-left: 10px;
    padding-right: 10px;
  }
  .mainVisualArea .textContainer .btn {
    width: 100px;
  }
  .mainVisualArea .textContainer .btn a {
    padding: 6px 0 6px 0;
    font-size: 0.75em;
  }
  .mainVisualArea .thumbContainer {
    display: none;
  }
}

/**************************************************
 News Area
**************************************************/
.newsArea {
  background: #eee;
  padding-top: 130px;
  text-align: center;
}

.newsArea .newAreaInner {
  max-width: 1400px;
  width: 87.5%;
  margin: auto;
}

.newsArea .newAreaInner h2 {
  font-size: 2em;
  margin-bottom: 10px;
}

.newsArea .newAreaInner h2 span {
  color: #8D785A;
}

.newsArea .newAreaInner .caption {
  margin-bottom: 50px;
}

.newsArea .newAreaInner .boxContainer {
  text-align: left;
  /*display:table;*/
  display: inline-block;
  width: 100%;
  padding-bottom: 40px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*
            .box:nth-child(2),
            .box:nth-child(3),
            .box:nth-child(4) {
                margin-left:2%;
            }
            */
}

.newsArea .newAreaInner .boxContainer .space {
  width: 2%;
  /*display:table-cell;*/
}

.newsArea .newAreaInner .boxContainer .index_box {
  border-top: 4px solid #8D785A;
  width: 100%;
  float: left;
  /*display:table-cell*/
  background: #fff;
  margin-bottom: 20px;
  text-indent: 2em;
}

.newsArea .newAreaInner .boxContainer .index_box .inner {
  padding: 30px 25px 40px 25px;
}

.newsArea .newAreaInner .boxContainer .box {
  border-top: 4px solid #8D785A;
  width: 23.5%;
  float: left;
  /*display:table-cell*/
  background: #fff;
  margin-bottom: 20px;
  cursor: pointer;
}

.newsArea .newAreaInner .boxContainer .box .inner {
  padding: 30px 25px 40px 25px;
}

.newsArea .newAreaInner .boxContainer .box .inner .date {
  color: #8D785A;
  margin-bottom: 10px;
}

.newsArea .newAreaInner .boxContainer .box .inner .text {
  font-size: 0.9em;
}

.newsArea .newAreaInner .boxContainer .box:nth-child(4n+2),
.newsArea .newAreaInner .boxContainer .box:nth-child(4n+3),
.newsArea .newAreaInner .boxContainer .box:nth-child(4n+4) {
  margin-left: 2%;
}

@media screen and (max-width: 1000px) {
  .newsArea {
    padding-top: 80px;
  }
  .newsArea .newAreaInner .boxContainer {
    /*
            .box:nth-child(4) {
                margin-left:0;
            }
            */
  }
  .newsArea .newAreaInner .boxContainer .box {
    width: 32%;
  }
  .newsArea .newAreaInner .boxContainer .box .inner {
    padding: 30px 25px 30px 25px;
  }
  .newsArea .newAreaInner .boxContainer .box:nth-child(3n+1) {
    margin-left: 0;
  }
  .newsArea .newAreaInner .boxContainer .box:nth-child(3n+2),
  .newsArea .newAreaInner .boxContainer .box:nth-child(3n+3) {
    margin-left: 2%;
  }
}

@media screen and (max-width: 640px) {
  .newsArea {
    padding-top: 50px;
  }
  .newsArea .newAreaInner h2 {
    font-size: 1.1em;
  }
  .newsArea .newAreaInner .caption {
    font-size: 0.75em;
    margin-bottom: 30px;
  }
  .newsArea .newAreaInner .boxContainer {
    padding-bottom: 15px;
    /*
            .box:nth-child(3) {
                margin-left:0;
            }
            
            .box:nth-child(4) {
                margin-left:2%;
            }
            */
  }
  .newsArea .newAreaInner .boxContainer .box {
    width: 49%;
  }
  .newsArea .newAreaInner .boxContainer .box .inner {
    padding: 15px 13px 25px 13px;
  }
  .newsArea .newAreaInner .boxContainer .box .inner .date {
    font-size: 0.75em;
  }
  .newsArea .newAreaInner .boxContainer .box .inner .text {
    font-size: 0.75em;
  }
  .newsArea .newAreaInner .boxContainer .box:nth-child(2n+1) {
    margin-left: 0;
  }
  .newsArea .newAreaInner .boxContainer .box:nth-child(2n+2) {
    margin-left: 2%;
  }
}
/**************************************************
mynaviBanner Area
**************************************************/
.mynaviBannerArea {
  padding: 20px 0 80px 0;
}
.mynaviBannerArea .mynaviBannerAreaInner {
  display: table;
  max-width: 1400px;
  width: 87.5%;
  margin: auto;
  background: #fff;
  height: 76px;
  padding: 15px 30px 14px 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.mynaviBannerArea .mynaviBannerAreaInner:hover .text {
  color: #8D785A;
}
.mynaviBannerArea .img {
  display: table-cell;
  width: 25px;
  vertical-align: middle;
  text-align: center;
}
.mynaviBannerArea .img img {
  vertical-align: top;
}
.mynaviBannerArea .text {
  display: table-cell;
  vertical-align: middle;
  padding-left: 30px;
}
@media screen and (max-width: 850px) {
  .mynaviBannerArea .mynaviBannerAreaInner {
    display: block;
    width: 87.5%;
    height: auto;
  }
  .mynaviBannerArea .img {
    display: block;
    margin: 0 auto;
  }
  .mynaviBannerArea .text {
    display: block;
    padding-top: 6px;
    padding-left: 0;
  }
}
@media screen and (max-width: 640px) {
  .mynaviBannerArea {
    padding: 15px 0 50px 0;
    font-size: 0.75em;
  }
  .mynaviBannerArea .img {
    width: 100px;
  }
  .mynaviBannerArea .img img{
    width: 100%;
    height: auto;
  }
  .mynaviBannerArea .mynaviBannerAreaInner {
    padding: 19px 7% 22px 7%;
  }
  .mynaviBannerArea .mynaviBannerAreaInner:hover .text {
    color: #333;
  }
}


/******************************************************/
@media screen and (max-width: 640px) {
  .sp {
    display: inline;
  }
}
