header {
  background-color: none;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, rgba(255, 255, 255, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
header .head_content .title .white {
  display: block;
}
header .head_content .title .black {
  display: none;
}
header .head_content nav .nav_list01 li {
  color: #fff;
}
header .head_content nav .nav_list01 li a, header .head_content nav .nav_list01 li span {
  color: #fff;
}
header .head_content .menu_box .link_list01 {
  border-left-color: #fff;
}
header .head_content .menu_box .link_list01 li {
  color: #fff;
}
header .head_content .menu_box .link_list01 li a, header .head_content .menu_box .link_list01 li span {
  color: #fff;
}
header .head_content .menu_box .btn_list01 li {
  color: #fff;
}
header .head_content .menu_box .btn_list01 li a, header .head_content .menu_box .btn_list01 li span {
  color: #fff;
  border-color: #fff;
}
header .head_content .menu_box .btn_list01 li.link_inq a, header .head_content .menu_box .btn_list01 li.link_inq span {
  border-color: #fff;
}

#sp_menu .link_list01 li.top a {
  background-image: url(../images/common/sp_menu_arrow_white.svg);
  background-color: #AA8E59;
}
#sp_menu .link_list01 li.top a .jp, #sp_menu .link_list01 li.top a .en {
  color: #fff;
}

main {
  padding-top: 0 !important;
}

#mv {
  position: relative;
  z-index: 2;
  overflow: hidden;
}
#mv .mv_block01, #mv .mv_block02, #mv .mv_block03 {
  width: 100%;
}
#mv .mv_block01 .txt, #mv .mv_block02 .txt, #mv .mv_block03 .txt {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}
#mv .mv_block01 .sub_txt, #mv .mv_block02 .sub_txt, #mv .mv_block03 .sub_txt {
  position: absolute;
  left: 2em;
  bottom: 1em;
  font-size: 0.9vw;
  letter-spacing: 0.1em;
  color: #fff;
  opacity: 1;
  z-index: 3;
}
@media screen and (max-width: 768px) {
  #mv .mv_block01 .sub_txt, #mv .mv_block02 .sub_txt, #mv .mv_block03 .sub_txt {
    font-size: 2.4vw;
  }
}
#mv .mv_block02, #mv .mv_block03 {
  position: absolute;
  top: 0;
  left: 0;
}
#mv .mv_block01 {
  z-index: 1;
}
#mv .mv_block02 {
  z-index: 2;
}
#mv .mv_block03 {
  z-index: 3;
}

#catch .wrap01 {
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1080px) {
  #catch .wrap01 {
    padding-top: 9.3vw;
    padding-bottom: 9.3vw;
  }
}
@media screen and (max-width: 768px) {
  #catch .wrap01 {
    padding-top: 9.3vw;
    padding-bottom: 10.4vw;
  }
}
#catch .wrap01 .txt_list01 {
  width: 600px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 1080px) {
  #catch .wrap01 .txt_list01 {
    width: 55.6vw;
  }
}
@media screen and (max-width: 768px) {
  #catch .wrap01 .txt_list01 {
    display: block;
    width: 98.4%;
  }
}
#catch .wrap01 .txt_list01 li {
  width: 47.5%;
}
@media screen and (max-width: 768px) {
  #catch .wrap01 .txt_list01 li {
    width: 100%;
  }
  #catch .wrap01 .txt_list01 li + li {
    margin-top: 6.7vw;
  }
}

#news {
  background-color: #fff;
}
#news .wrap01 {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 {
    padding-top: 5.6vw;
    padding-bottom: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 {
    padding-top: 20vw;
    padding-bottom: 20vw;
  }
}
#news .wrap01 h2 {
  text-align: center;
}
#news .wrap01 h2 img {
  display: inline-block;
  width: auto;
  height: 15px;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 h2 img {
    height: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 h2 img {
    height: 3.1vw;
  }
}
#news .wrap01 hr {
  display: block;
  width: 46px;
  height: 1px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  background-color: #333;
  border: none;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 hr {
    width: 4.3vw;
    margin-top: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 hr {
    width: 9.2vw;
    margin-top: 8vw;
  }
}
#news .wrap01 .news_list {
  width: 700px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 46px;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 .news_list {
    width: 64.8vw;
    margin-top: 4.3vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 .news_list {
    width: 96%;
    margin-top: 5.1vw;
  }
}
#news .wrap01 .news_list li {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 17px;
  line-height: 1.5;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 .news_list li {
    font-size: 1.6vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 .news_list li {
    font-size: 3.3vw;
  }
}
#news .wrap01 .news_list li + li {
  margin-top: 0.7em;
}
@media screen and (max-width: 768px) {
  #news .wrap01 .news_list li + li {
    margin-top: 5.3vw;
  }
}
#news .wrap01 .news_list li .date {
  width: 145px;
  color: #9FA0A0;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 .news_list li .date {
    width: 13.4vw;
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 .news_list li .date {
    width: 100%;
    margin-bottom: 0.6vw;
  }
}
#news .wrap01 .news_list li .title {
  width: calc(100% - 145px);
  color: #333;
}
@media screen and (max-width: 1080px) {
  #news .wrap01 .news_list li .title {
    width: calc(100% - 13.4vw);
  }
}
@media screen and (max-width: 768px) {
  #news .wrap01 .news_list li .title {
    width: 100%;
  }
}

#plan {
  margin-top: 200px;
}
@media screen and (max-width: 1080px) {
  #plan {
    margin-top: 18.5vw;
  }
}
@media screen and (max-width: 768px) {
  #plan {
    margin-top: 13.3vw;
  }
}

#title {
  margin-top: 149px;
}
@media screen and (max-width: 1080px) {
  #title {
    margin-top: 13.8vw;
  }
}
@media screen and (max-width: 768px) {
  #title {
    margin-top: 20vw;
  }
}
#title h1 {
  text-align: center;
}
#title h1 img {
  display: block;
  width: 271px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1080px) {
  #title h1 img {
    width: 25.1vw;
  }
}
@media screen and (max-width: 768px) {
  #title h1 img {
    width: 46.9vw;
  }
}
#title h1 .txt {
  display: inline-block;
  font-size: 38px;
  font-weight: normal;
  text-align: center;
  margin-top: 50px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1080px) {
  #title h1 .txt {
    font-size: 3.5vw;
    margin-top: 4.6vw;
  }
}
@media screen and (max-width: 768px) {
  #title h1 .txt {
    font-size: 6.7vw;
    margin-top: 6.7vw;
  }
}

#message {
  max-width: 1400px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 150px;
}
@media screen and (max-width: 1400px) {
  #message {
    margin-top: 10.7vw;
  }
}
@media screen and (max-width: 768px) {
  #message {
    margin-top: 13.1vw;
  }
}
#message .img_box {
  width: 1120px;
  margin-left: auto;
  margin-right: 0;
  padding-bottom: 85px;
  position: relative;
}
@media screen and (max-width: 1400px) {
  #message .img_box {
    width: 80vw;
    padding-bottom: 6.1vw;
  }
}
@media screen and (max-width: 768px) {
  #message .img_box {
    width: 100%;
    padding-bottom: 0;
    padding-top: 53.3vw;
  }
}
#message .img_box .img01 {
  width: 100%;
}
#message .img_box .txt01 {
  position: absolute;
  left: -80px;
  bottom: 0;
  font-size: 15px;
  line-height: 3.3em;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1400px) {
  #message .img_box .txt01 {
    left: -5.7vw;
    font-size: 1.1vw;
  }
}
@media screen and (max-width: 768px) {
  #message .img_box .txt01 {
    left: 8.9vw;
    bottom: auto;
    top: 0;
    font-size: 3.1vw;
    line-height: 2.7em;
    letter-spacing: 0.05em;
  }
}
#message .img_box .txt01 strong {
  font-weight: normal;
  font-size: 20px;
  line-height: 3em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1400px) {
  #message .img_box .txt01 strong {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #message .img_box .txt01 strong {
    font-size: 4.1vw;
    line-height: 2.7em;
  }
}

#info {
  margin-top: 170px;
}
@media screen and (max-width: 1080px) {
  #info {
    margin-top: 15.7vw;
  }
}
@media screen and (max-width: 768px) {
  #info {
    margin-top: 20vw;
  }
}
#info .wrap01 {
  padding-bottom: 200px;
}
@media screen and (max-width: 1080px) {
  #info .wrap01 {
    padding-bottom: 18.5vw;
  }
}
@media screen and (max-width: 768px) {
  #info .wrap01 {
    padding-bottom: 20vw;
  }
}
#info h2 {
  text-align: center;
}
#info h2 img {
  display: inline-block;
  width: auto;
  height: 15px;
}
@media screen and (max-width: 1080px) {
  #info h2 img {
    height: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #info h2 img {
    height: 3.1vw;
  }
}
#info hr {
  display: block;
  width: 46px;
  height: 1px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  background-color: #333;
  border: none;
}
@media screen and (max-width: 1080px) {
  #info hr {
    width: 4.3vw;
    margin-top: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  #info hr {
    width: 9.2vw;
    margin-top: 8vw;
  }
}
#info .txt01 {
  font-size: 40px;
  font-weight: normal;
  text-align: center;
  margin-top: 30px;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1080px) {
  #info .txt01 {
    font-size: 3.7vw;
    margin-top: 2.8vw;
  }
}
@media screen and (max-width: 768px) {
  #info .txt01 {
    font-size: 8vw;
    margin-top: 6.7vw;
  }
}
#info .ban_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 80px;
}
@media screen and (max-width: 1080px) {
  #info .ban_box {
    margin-top: 7.4vw;
  }
}
@media screen and (max-width: 768px) {
  #info .ban_box {
    margin-top: 12vw;
  }
}
#info .ban_box > p {
  width: 48.2%;
}
@media screen and (max-width: 768px) {
  #info .ban_box > p {
    width: 100%;
  }
  #info .ban_box > p + p {
    margin-top: 4vw;
  }
}
#info .ban01 a, #info .ban02 a {
  display: block;
  width: 100%;
}
#info .ban01 a img, #info .ban02 a img {
  display: block;
  width: 100%;
  box-shadow: 5px 5px 10px 8px rgba(0, 0, 0, 0.05);
}

#mv .mv_block01 {
  opacity: 1;
}
#mv .mv_block01 .txt {
  opacity: 1;
}
#mv .mv_block02 {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: ease-in-out;
}
#mv .mv_block02.act {
  opacity: 1;
}
#mv .mv_block02 .txt {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 2s;
  transition-timing-function: ease-in-out;
  animation-delay: 1s;
}
#mv .mv_block02 .txt.act {
  opacity: 1;
}
#mv .mv_block03 {
  opacity: 0;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: ease-in-out;
}
#mv .mv_block03.act {
  opacity: 1;
}
#mv .mv_block03 .txt {
  opacity: 0;
  transition-property: opacity, transform;
  transition-duration: 2.2s;
  transition-timing-function: ease-in-out;
  transform: translateY(0%);
}
#mv .mv_block03 .txt.act {
  opacity: 1;
  transform: translateY(0%);
}

@keyframes zoomIn {
  0% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zoomIn2 {
  0% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}/*# sourceMappingURL=style_top.css.map */