@charset "utf-8";
/* ===============================================
# 共通
=============================================== */
/*スライダーボタン*/
.box_swiper_arrow .arrow{
  width: 52px;
  padding: 10px 0;
  cursor: pointer;
}
.box_swiper_arrow .arrow:focus{
  outline: none;
}
.box_swiper_arrow .arrow img{
  width: 12px;
}
.box_swiper_arrow .arrow.next{
  text-align: right;
  border-left: solid 1px #dcdcdc;
}
.box_swiper_arrow .arrow.prev img{
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
/*タイトル*/
.ttl_01{
  font-size: 70px;
  font-size: 7rem;
  font-weight:500;
  margin-bottom: 50px;
}
.ttl_01::after{
  content: '';
  display: block;
  width:80px;
  height: 1px;
  background: #333333;
  margin-top: 40px;
}
@media screen and (max-width :834px){
  .ttl_01{
    font-size: 35px;
    font-size: 3.5rem;
  }
  .ttl_01::after{
    width:35px;
    margin-top: 25px;
  }
}
/*定義リスト*/
.cmn_list_dif{
  border-top: solid 1px #dcdcdc;
}
.cmn_list_dif dl{
  display: -webkit-box;
  display: -ms-flex;  
  display: -webkit-flex;
  display: flex;
  padding: 35px 0;
  border-bottom: solid 1px #dcdcdc;
}
.cmn_list_dif dt{
  width: 32.5%;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 600;
  padding-right: 5%;
}
.cmn_list_dif dt .add{
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 18px;
}
.cmn_list_dif dd{
  -webkit-box-flex: 1;
  flex: 1;
  line-height: 1.846;
}
.cmn_list_dif dd .note{
  font-size: 13px;
  font-size: 1.3rem;
  margin-top: 30px;
}
.cmn_list_dif dd .box_date{
  display: -webkit-box;
  display: -ms-flex;  
  display: -webkit-flex;
  display: flex;
  margin-bottom: 7px;
}
.cmn_list_dif dd .box_date .date{
  width: 225px;
}
.cmn_list_dif dd .box_date .time{
  -webkit-box-flex: 1;
  flex: 1;
}
.cmn_list_dif dd .box_price li{
  display: -webkit-box;
  display: -ms-flex;  
  display: -webkit-flex;
  display: flex;
}
.cmn_list_dif dd .box_price li:nth-child(n+2){
  margin-top: 5px;
}
.cmn_list_dif dd .box_price li p{
  width: 50%;
}

@media screen and (max-width :834px){
  .cmn_list_dif dl{
    display: block;
    padding: 35px 0;
  }
  .cmn_list_dif dt{
    width: 100%;
    font-size: 16px;
    font-size: 1.6rem;
    padding-right:0;
  }
  .cmn_list_dif dt .add{
    display: inline-block;
    margin-top: 0;
  }
  .cmn_list_dif dd{
    line-height: 1.667;
    padding-top: 30px
  }
  .cmn_list_dif dd .note{
    font-size: 12px;
    font-size: 1.2rem;
    margin-top:20px;
  }
  .cmn_list_dif dd .box_date{
    margin-bottom: 3px;
  }
  .cmn_list_dif dd .box_date .date{
    width: 73.8%;
    max-width: 250px;
  }
  .cmn_list_dif dd .box_date .time{
    min-width: 100px;
  }
  .cmn_list_dif dd .box_price li{
  }
  .cmn_list_dif dd .box_price li:nth-child(n+2){
    margin-top: 7px;
  }
  .cmn_list_dif dd .box_price li p.ttl{
    width: 80%;
    max-width: 250px;
  }
  .cmn_list_dif dd .box_price li p.price{
    -webkit-box-flex: 1;
    flex: 1;
    min-width: 65px;
  }
}
/*ボタン*/
.cmn_btn a{
  width: 620px;
  max-width: 100%;
  min-height: 90px;
  margin: 0 auto;
  display:-webkit-box;
  display:flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;  
  background: url("/en/common/img/ico_arrow_btn.svg")no-repeat right 40px center;
  background-size: 17px auto;
  background-color: #76b5d5;
  border:solid 1px #76b5d5;
  box-shadow: 0px 3px 0px 0px rgba(200, 226, 244, 1);
  border-radius: 45px;
}
.cmn_btn a span{
  display: inline-block;
  padding: 0 60px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.333;
  color: #fff;
  text-align: center;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;    
}
.cmn_btn a[target="_blank"] span::after{
  display: inline-block;
  content: '';
  width: 20px;
  height: 20px;
  margin-left: 0.5em;
  background: url("/en/common/img/ico_blank.svg")no-repeat right center;
  background-size: contain;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;  
}

@media screen and (min-width : 835px){
  .cmn_btn a:hover{
    background-color: #fff;
    background-image: url("/en/common/img/ico_arrow_btn_b.svg");
  }  
  .cmn_btn a:hover span{
    color: #76b5d5;
  }   
  .cmn_btn a[target="_blank"]:hover span::after{
    background-image: url("/en/common/img/ico_blank_b.svg");
  }  
}
@media screen and (max-width :834px){
  .cmn_btn a{
    width: 400px;
    min-height: 65px;
    background-position:right 15px center;
    background-size: 10px auto;
    box-shadow: 0px 2px 0px 0px rgba(200, 226, 244, 1);
    border-radius: 35px;
  }
  .cmn_btn a span{
    padding: 10px 30px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .cmn_btn a[target="_blank"] span::after{
    width: 15px;
    height: 15px;
  }
}

/* ===============================================
# sec_promo
=============================================== */
.sec_promo{
  position: relative;
  height: 1078px;
  height: calc(100vh);
  min-height: 750px;
}
.sec_promo::after{
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -2;
  width: 31.25%;
  height: 30.9%;
  background: #edf5f5;
}
/*タイトル*/
.sec_promo .box_ttl{
  position: absolute;
  top: 25.5%;
  left: 7.34%;
}
.sec_promo .box_ttl h1{
  font-size: 90px;
  font-size: 9rem;
  letter-spacing: 0.04em;
  font-weight: 600;
}
.sec_promo .box_ttl .place{
  position: relative;
  font-size: 32px;
  font-size: 3.2rem;
  margin-top: 100px;
}
.sec_promo .box_ttl .place::before{
  content: '';
  width: 80px;
  height: 1px;
  background: #000000;
  position: absolute;
  left:0;
  top: -40px;
}
/*スライダー*/
.sec_promo .swiper_promo{
  position: absolute;
  right: 0;
  top: 0;
  width: 78.12%;
  height: 100%;
  z-index: -1;
}
.sec_promo .swiper_promo ul{
  width: 100%;
  height: 100%;
}
.sec_promo .swiper_promo ul .swiper-slide {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.sec_promo .swiper_promo .swiper-slide-active .slide-img,
.sec_promo .swiper_promo .swiper-slide-duplicate-active .slide-img,
.sec_promo .swiper_promo .swiper-slide-prev .slide-img {
  position: relative;
  -webkit-animation: zoomUp 9s linear 0s;
  animation: zoomUp 9s linear 0s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.sec_promo .swiper_promo .slide-img {
  background-size: cover; 
  background-position: center center;
  height: 100%;
  -webkit-transform: scale(1.01);
  transform: scale(1.01);  
}
.sec_promo .swiper_promo ul li{
  position: relative;
}
.sec_promo .swiper_promo ul .box_txt{
  position: absolute;
  right: 4.4%;
  bottom: 38px;
  color: #fff;
  max-width: 410px;
}
.sec_promo .swiper_promo ul .box_txt .ttl{
  font-size: 28px;
  font-size: 2.8rem;
  margin-bottom: 10px;
  font-weight: 600;
}
@-webkit-keyframes zoomUp {
  0% {
      -webkit-transform: scale(1.01);
      transform: scale(1.01);
  }
  100% {
      -webkit-transform: scale(1.09);
      transform: scale(1.09);
  }
}

@keyframes zoomUp {
  0% {
      -webkit-transform: scale(1.01);
      transform: scale(1.01);
  }
  100% {
      -webkit-transform: scale(1.09);
      transform: scale(1.09);
  }
}

/*scroll*/
.sec_promo .scroll {
  position: absolute;
  left: 7.18%;
  bottom: -40px;
  height: 190px;
  -webkit-transition: 200ms ease;
  -o-transition: 200ms ease;
  transition: 200ms ease;
  overflow: hidden;
}
.sec_promo .scroll::after {
  content: '';
  position: absolute;
  top: 60px;
  left: 1em;
  height: 100px;
  width: 1px;
  background-color: #000000;
  -webkit-animation: scroll 2s 2s cubic-bezier(0.3, 0.4, 0.1, 1) infinite;
  animation: scroll 2s 2s cubic-bezier(0.3, 0.4, 0.1, 1) infinite;
}

.sec_promo .scroll p {
  display: inline-block;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  -webkit-transform: rotate(90deg) translate(-1em,-1em);
  transform: rotate(90deg) translate(-1em,-1em);
  transform-origin: bottom left;
}
@-webkit-keyframes scroll {
  0% {
    height: 0;
  }
  50% {
    height: 100px;
  }
  75% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}

@keyframes scroll_effect {
  0% {
    height: 0;
  }
  50% {
    height: 100px;
  }
  75% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
}
@media screen and (max-width :834px){
  .sec_promo{
    height: 575px;
    height: calc(100vh);
    min-height: 400px;
  }
  .sec_promo::after{
    width: 37%;
    height: 34%;
  }
  /*タイトル*/
  .sec_promo .box_ttl{
    top:20%;
    top: 20vw;
    left:6.4%;
  }
  .sec_promo .box_ttl h1{
    font-size: 42px;
    font-size: 4.2rem;
    letter-spacing: 0.08em;
  }
  .sec_promo .box_ttl .place{
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 45px;
  }
  .sec_promo .box_ttl .place::before{
    content: '';
    width: 37px;
    top: -20px;
  }
  /*スライダー*/
  .sec_promo .swiper_promo{
    width: 76.2%;
  }
  .sec_promo .swiper_promo ul .box_txt{
    right: 6.4%;
    bottom: 35px;
    width: 100%;
    padding-left: 17%;
    max-width: inherit;
  }
  .sec_promo .swiper_promo ul .box_txt .ttl{
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px;
  }


  /*scroll*/
  .sec_promo .scroll {
    left: 7%;
    bottom: -30px;
    height: 160px;
  }
  .sec_promo .scroll::after {
    top: 60px;
    height: 110px;
  }
  .sec_promo .scroll p {
    font-size: 10px;
    font-size: 1rem;
  }
}
/* ===============================================
# sec_concept
=============================================== */
.sec_concept{
  position: relative;
  padding-top: 190px;
}
.sec_concept::after{
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -2;
  width: 31.25%;
  height: 100%;
  background: #edf5f5;
}
.sec_concept .box_ttl::before{
  position: absolute;
  right: -158px;
  top: -26px;
  content: '';
  width:371px;
  height: 256px;
  background: url("/en/img/img_concept01.jpg")no-repeat center center;
  background-size: cover;
  z-index: -1;
}
.sec_concept h2{
  font-size: 60px;
  font-size: 6rem;
  font-weight: 600;
  line-height: 1.333;
}
.sec_concept .area_content{
  margin-top: 175px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.sec_concept .area_content > *{
  width: 50%;
}
.sec_concept .area_content figure{
  position: relative;
  overflow: hidden;
  height: 700px;
}
.sec_concept .area_content figure img{
  max-width: inherit;
  height: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sec_concept .area_content .box_txt{
  position: relative;
  max-width: 600px;
}
.sec_concept .area_content .box_txt::before{
  content: '';
  width: 363px;
  height: 411px;
  position: absolute;
  left: -150px;
  top: 170px;
  z-index: 1;
  background: url("/en/img/img_concept04.png") no-repeat center center;
  background-size: contain;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
.sec_concept .area_content .box_txt p{
  max-width: 466px;
  width: 90%;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 2;
}
.sec_concept .area_content .box_txt p.ttl{
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 1.429;
  margin-bottom: 40px;
}
.sec_concept .img_bottm{
  text-align: right;
  max-width: 996px;
}
.sec_concept .img_bottm img{
  width: 240px;
}
@media screen and (max-width :834px){
  .sec_concept{
    padding-top: 75px;
  }
  .sec_concept::after{
    width: 37%;
  }
  .sec_concept .box_ttl::before{
    display: block;
    margin: 0 -7.5% 0 auto;
    position: relative;
    top: 0;
    right: 0;
    width:165px;
    height: 115px;
    margin-bottom: 60px;
  }
  .sec_concept h2{
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.4;
  }
  .sec_concept .area_content{
    margin-top: 73px;
  }
  .sec_concept .area_content > *{
    width: 91.7%;
  }
  .sec_concept .area_content figure{
    height: 0;
    padding-top:67.6%;
    margin: 0 auto 0 0;
  }
  .sec_concept .area_content .box_txt{
    padding-top: 150px;
    margin: 0 auto;
    max-width: inherit;
  }
  .sec_concept .area_content .box_txt::before{
    width: 56%;
    height: 65%;
    left:50%;
    top: 0;
    -webkit-transform: translate(-50%,-45%);
    transform: translate(-50%,-45%);
  }
  .sec_concept .area_content .box_txt p{
    max-width: inherit;
    width: 100%;
    margin: 0;
  }
  .sec_concept .area_content .box_txt p.ttl{
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom:25px;
  }
  .sec_concept .img_bottm{
    margin: 45px 4% 0 0;
  }
  .sec_concept .img_bottm img{
    width: 157px;
  }
}
/* ===============================================
# sec_exhibition
=============================================== */
.sec_exhibition{
  position: relative;
  padding-top: 30px;
}
.sec_exhibition::after{
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -2;
  width: 31.25%;
  height:500px;
  background: #edf5f5;
}
/*contetns*/
.sec_exhibition .area_content{
  position: relative;
}
.sec_exhibition .area_content::before{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  z-index: -2;
  width: 100%;
  background: #edf5f5;
}
.sec_exhibition .area_content.seto::before{
  left: 0; 
  width: 31.25%;  
  height: 370px;
}
.sec_exhibition .area_content.ocean::before{
  right: 0;
  top: auto;
  bottom: 0;
  height: 64.8%;
}
.sec_exhibition .area_content.river::before{
  left: 0;
  height: 319px;
}
.sec_exhibition .area_content .inner{
  position: relative;
  padding-top: 127px;
  width: 100%;
  max-width: 1920px;  
}
.sec_exhibition .area_content.right .inner{
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
.sec_exhibition .area_content .box_ttl{
  position: relative;
  line-height: 1;
  width: 18.75%;
  /*min-width: 200px;*/
}
.sec_exhibition .area_content.right .box_ttl{
  -webkit-box-ordinal-group:2;
  order: 1;
}
.sec_exhibition .area_content h3{
  padding-right: 21.3%;
  text-align: right;
}
.sec_exhibition .area_content.right h3{
  text-align: left;
  padding-right: 0;
  padding-left: 21.3%;
}
.sec_exhibition .area_content h3 .jp{
  font-size: 120px;
  font-size: 12rem;
  color: #dcdcdc;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  white-space: nowrap;
}
.sec_exhibition .area_content h3 .jp span{
  font-size: 80px;
  font-size: 8rem;
}
.sec_exhibition .area_content h3 .en{
  position: absolute;
  z-index: 2;
  right: 0;
  top: -1em;
  display: inline-block;
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 600;
  -webkit-transform: rotate(90deg) translateX(100%);
  transform: rotate(90deg) translateX(100%);
  transform-origin: right bottom;
  white-space: nowrap;
}
.sec_exhibition .area_content.right h3 .en{
  right:auto;
  left: -1em;
  -webkit-transform: rotate(90deg) ;
  transform: rotate(90deg);
  transform-origin: left bottom;
}
.sec_exhibition .area_content h3 .en i{
  content: '';
  display: inline-block;
  width: 80px;
  height: 1px;
  margin-left: 30px;
  background: #333333;
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}
@media screen and (max-width :834px){
  .sec_exhibition{
    padding-top:90px;
  }
  .sec_exhibition::after{
    width: 37%;
    height:500px;
  }
  /*contetns*/
  .sec_exhibition .area_content::before{
    width: 100%;
  }
  .sec_exhibition .area_content.seto::before{
    width: 37%;
    height: 250px;
  }
  .sec_exhibition .area_content.ocean::before{
    height: 75%;
  }
  .sec_exhibition .area_content.river::before{
    height: 165px;
  }
  .sec_exhibition .area_content .inner{
    padding-top: 65px;
  }
  .sec_exhibition .area_content .inner::after{
    clear: both;
    content: '';
    display: block;
  }
  .sec_exhibition .area_content .box_ttl{
    width: 27.3%;
    min-width: inherit;
    float: left;    
  }
  .sec_exhibition .area_content.right .box_ttl{
    float: right;
  }
  .sec_exhibition .area_content h3{
    padding: 0 !important;
    text-align: center !important; 
  }
  .sec_exhibition .area_content h3 .jp{
    font-size: 45px;
    font-size: 4.5rem;
  }
  .sec_exhibition .area_content h3 .jp span{
    font-size: 30px;
    font-size: 3rem;
  }
  .sec_exhibition .area_content h3 .en{
    position: relative;
    top: auto;
    font-size: 12px;
    font-size: 1.2rem;
    margin-left: 49%;
    margin-top: 23px;
    -webkit-transform: rotate(90deg) translateY(-100%);
    transform: rotate(90deg) translateY(-100%);
    transform-origin: left top;
  }
  .sec_exhibition .area_content.right h3 .en{
    left: auto;
  }
  .sec_exhibition .area_content h3 .en i{
    width: 20px;
    margin-left: 15px;
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px);
  }
}
/*スライダーーーーーーーーーーーーーーーーーーーー*/
.sec_exhibition .area_content .area_swiper{
  margin-top: 50px;
  position: relative;
  max-width: 1560px;
  min-height: 512px;
  width: 81.25%;
}
.sec_exhibition .area_content.right .area_swiper{
  -webkit-box-ordinal-group:1;
  order: 0;
}
.sec_exhibition .area_content .box_txt{
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  width: 500px;
  padding: 30px 0 0;
  background: #fff;
  overflow: hidden;
}
.sec_exhibition .area_content.ocean .box_txt{
  background: #edf5f5;
}
.sec_exhibition .area_content.right .box_txt{
  left: auto;
  right: 0;
}
.sec_exhibition .area_content .box_txt li > div{
  width: 90%;
  max-width: 400px;
  margin: 0 auto;
}
.sec_exhibition .area_content .box_txt li .ttl{
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 15px
}

/*ボタン*/
.sec_exhibition .area_content .box_btn{
  margin: 25px auto 0;
  width: 90%;
  max-width: 400px;  
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;  
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.sec_exhibition .area_content .box_btn .pagination{
  display: -webkit-box;
  display: flex;
}
.sec_exhibition .area_content .box_btn .pagination > span:nth-child(n+2){
  margin-left: 30px;
}
.sec_exhibition .area_content .swiper-pagination-bullet{
  border-radius: 0;
  width: 24px;
  height: 1px;
}
.sec_exhibition .area_content .swiper-pagination-bullet-active{
  background: #000;
}
/*画像*/
.sec_exhibition .area_content .box_img{
  width: 89.7%;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.sec_exhibition .area_content.right .box_img{
  margin: 0 auto 0 0;
}
.sec_exhibition .area_content .box_img ul li{
  position: relative;
}
@media print,screen and (max-width :1400px) and (min-width :835px){
  .sec_exhibition .area_content .box_img ul li img{
    max-width: inherit;
    width: auto;
    height: 100%;
    position: absolute;
    left:50%;
    top:50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
  }
}
@media screen and (max-width :834px){
  .sec_exhibition .area_content .area_swiper{
    width: 100%;
    margin-top: 43px;
    position: relative;
    min-height: inherit;
  }
  .sec_exhibition .area_content .box_txt{
    clear: both;
    position: relative;
    width: 100%;
    padding: 30px 0 0;
    float: right;
  }
  .sec_exhibition .area_content .box_txt li > div{
    width: 87.2%;
    max-width: inherit;
  }
  .sec_exhibition .area_content .box_txt li .ttl{
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px
  }

  /*ボタン*/
  .sec_exhibition .area_content .box_btn{
    width: 87.2%;
    margin: 25px auto 0;
    max-width: inherit;  
  }
  .sec_exhibition .area_content .box_btn .pagination > span:nth-child(n+2){
    margin-left: 18px;
  }
  /*画像*/
  .sec_exhibition .area_content .box_img{
    width:72.7%;
    float: right;
  }
  .sec_exhibition .area_content.right .box_img{
    float: left;
  }
}
/* ===============================================
# sec_shurinzu
=============================================== */
.sec_shurinzu{
  margin-top: 215px;
}
.sec_shurinzu .img_main{
  text-align: center;
}
.sec_shurinzu h2{
  margin-top: 80px;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 600;
}
.sec_shurinzu h2::after{
  content: '';
  display: inline-block;
  width: 40px;
  height: 1px;
  background: #333;
  margin-left: 15px;
  vertical-align: middle;
}
.sec_shurinzu .lead{
  font-size: 20px;
  font-size: 2rem;
  margin-top: 25px;
}
.sec_shurinzu .txt{
  margin-top: 25px;
}
.sec_shurinzu .box_img{
  margin-top: 55px;
  margin-bottom: 55px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;  
}
.sec_shurinzu .box_img li{
  width: 49.2%;
}
@media screen and (max-width :834px){
  .sec_shurinzu{
    margin-top: 75px;
  }
  .sec_shurinzu h2{
    margin-top: 35px;
    font-size: 20px;
    font-size: 2rem;
  }
  .sec_shurinzu h2::after{
    width: 20px;
  }
  .sec_shurinzu .lead{
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 25px;
  }
  .sec_shurinzu .txt{
    margin-top: 25px;
  }
  .sec_shurinzu .box_img{
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .sec_shurinzu .box_img li{
    width: 100%;
  }
  .sec_shurinzu .box_img li:nth-child(n+2){
    margin-top: 10px;
  }
}
/* ===============================================
# sec_ryugu
=============================================== */
.sec_ryugu{
  position: relative;
  margin-top: 145px;  
}
.sec_ryugu::after{
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -2;
  width:76%;
  height: 79%;
  background: #edf5f5;
}
.sec_ryugu .area_content{
  padding-top: 200px;
  -webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;  
}

.sec_ryugu .area_content > *{
  width: 50%;
}
.sec_ryugu .area_content .box_video > div{
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}
.sec_ryugu .area_content .box_video video{
  max-width: inherit;
  height: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sec_ryugu .area_content .box_txt{
  position: relative;
  max-width: 600px;
}
.sec_ryugu .area_content .box_txt >*{
  max-width: 476px;
  width: 90%;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 2;
}
.sec_ryugu .area_content .box_txt h2{
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 15px;
}
.sec_ryugu .area_content .box_txt h2::before{
  content: '';
  max-width: 538px;
  width: 130%;
  height: 133px;
  position: absolute;
  left: -60px;
  top: -94px;;
  z-index: -1;
  background: url("/en/img/ttl_ryugu.svg")no-repeat center left;
  background-size: contain;
}
.sec_ryugu .area_content .box_txt h2::after{
  content: '';
  width:40px;
  height: 1px;
  background: #333333;
  display: inline-block;
  margin-left: 15px;
  vertical-align: middle;
}
.sec_ryugu .area_content .box_txt .lead{
  font-size: 20px;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 30px;
}
@media screen and (max-width :834px){
  .sec_ryugu{
    margin-top: 43px;
  }
  .sec_ryugu::after{
    width:80%;
    height: 72%;
  }
  .sec_ryugu .area_content{
    padding-top: 65px;
  }
  .sec_ryugu .area_content > *{
    width: 91.7%;
  }
  .sec_ryugu .area_content figure{
    height: 0;
    padding-top:56.55%;
  }
  .sec_ryugu .area_content .box_txt{
    padding-top: 60px;
    margin: 0 auto;
    max-width: inherit;
  }
  .sec_ryugu .area_content .box_txt >*{
    max-width: inherit;
    width: 100%;
    margin: 0;
  }
  .sec_ryugu .area_content .box_txt h2{
    width: 100%;
    font-size: 2px;
    font-size: 2rem;
    margin-bottom: 30px;
  }
  .sec_ryugu .area_content .box_txt h2::before{
    max-width: inherit;
    width: 76.45%;
    height: 60px;
    height: 16.5vw;
    left: 22%;
    top: 50%;
    background-position: bottom left;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .sec_ryugu .area_content .box_txt h2::after{
    width:25px;
  }
  .sec_ryugu .area_content .box_txt .lead{
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 33px;
  }
}
/* ===============================================
# sec_gallery
=============================================== */
.sec_gallery{
  position: relative;
  margin-top: 166px;
  padding-bottom: 136px;
  overflow: hidden;
}
.sec_gallery::after{
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -2;
  width: 100%;
  height: 56.55%;
  background: #edf5f5;
}
.sec_gallery .ttl_01{
  margin-bottom: 15px;
}
.sec_gallery .area_swiper{
  max-width: 1560px;
  width: 90%;
  margin: 0 0 0 auto;
  overflow: hidden;
}
.sec_gallery .area_swiper ul li{
  width: 35.64%;
  max-width: 556px;
}
.sec_gallery .box_swiper_arrow{
  width: 87.2%;
  max-width: 1200px;
  margin: 0 auto;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
  margin-bottom: 40px;
}
@media screen and (max-width :834px){
  .sec_gallery{
    margin-top: 94px;
    padding-bottom: 80px;
  }
  .sec_gallery::after{
    height: 54.5%;
  }
  .sec_gallery .ttl_01{
    margin-bottom: 5px;
  }
  .sec_gallery .area_swiper{
    width: 93.3%;
  }
  .sec_gallery .area_swiper ul li{
    width: 262px;
    max-width: 90%;
  }
  .sec_gallery .box_swiper_arrow{
    margin-bottom: 25px;
  }
}
/* ===============================================
# sec_shop
=============================================== */
.sec_shop{
  margin-top: 168px;
}
.sec_shop .ttl_01{
  margin-bottom: 100px;
}
.sec_shop .list_shop{
  flex-wrap: wrap;
}
.sec_shop .list_shop li{
  width: 46.6%;
}
.sec_shop .list_shop li:nth-child(even){
  margin-left: 6.8%;
}
.sec_shop .list_shop li:nth-child(n+3){
  margin-top: 60px;
}
.sec_shop .list_shop figure{
  margin-bottom: 37px;
}
.sec_shop .list_shop .ttl{
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 10px;
}
@media screen and (max-width :834px){
  .sec_shop{
    margin-top: 70px;
  }
  .sec_shop .ttl_01{
    margin-bottom: 50px;
  }
  .sec_shop .list_shop li{
    width: 100%;
  }
  .sec_shop .list_shop li:nth-child(even){
    margin-left: 0;
    margin-top: 43px;
  }
  .sec_shop .list_shop li:nth-child(n+3){
    margin-top: 43px;
  }
  .sec_shop .list_shop figure{
    margin-bottom: 20px;
  }
  .sec_shop .list_shop .ttl{
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 14px;
  }
}
/* ===============================================
# sec_info
=============================================== */
.sec_info{
  margin-top: 180px;
}
.sec_info .ttl_01{
  margin-bottom: 110px;
}
@media screen and (max-width :834px){
  .sec_info{
    margin-top: 75px;
  }
  .sec_info .ttl_01{
    margin-bottom: 50px;
  }
}
/* ===============================================
# sec_floor
=============================================== */
.sec_floor{
  margin-top: 158px;
}
.sec_floor .ttl_01{
  margin-bottom: 60px;
}
.sec_floor .map{
  max-width: 1002px;
  margin: 0 auto;
}
.sec_floor .map li:nth-child(n+2){
  margin-top: 100px;
}
@media screen and (max-width :834px){
  .sec_floor{
    margin-top: 80px;
  }
  .sec_floor .ttl_01{
    margin-bottom: 50px;
  }
  .sec_floor .map li:nth-child(n+2){
    margin-top: 50px;
  }
}
/* ===============================================
# sec_admission
=============================================== */
.sec_admission{
  margin-top: 230px;
}
.sec_admission .ttl_01{
  margin-bottom: 110px;
}
.sec_admission .cmn_btn{
  margin-top: 72px;
}
@media screen and (max-width :834px){
  .sec_admission{
    margin-top: 100px;
  }
  .sec_admission .ttl_01{
    margin-bottom: 50px;
  }  
  .sec_admission .cmn_btn{
    margin-top: 50px;
  }  
}
/* ===============================================
# sec_access
=============================================== */
.sec_access{
  margin-top: 160px;
  padding-bottom: 90px;
}
.sec_access .ttl_01{
  margin-bottom: 80px;
}
.sec_access .box_txt{
  width: 400px;
  -webkit-box-ordinal-group:1;
  order: 0;  
}
.sec_access .box_txt p.small{
  font-size: 13px;
  font-size: 1.3rem;
}
.sec_access .box_txt p:nth-of-type(n+2){
  margin-top: 30px;
}
.sec_access .box_map{
  position: relative;
  z-index:0;
  -webkit-box-flex: 1;
  flex: 1;
  -webkit-box-ordinal-group:2;
  order: 1;  
}
.sec_access .box_map figure{
  width: 113%;
  position: absolute;
  bottom: -16%;
  left: 0;
}
.sec_access .box_map figure > div{
  width: 94.33%;
  margin: 0 0 0 auto;
  position: relative;
}
.sec_access .box_map .point {
 display:block;
 width:9px;
 height:9px;
 background-color:#fde100;
 position:absolute;
 left:33%;
 top:47.3%;
 border-radius:50%;
 z-index: 2;
}
.sec_access .box_map .point span{
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.sec_access .box_map .point span:after {
 content:"";
 display:block;
 width:38px;
 height:38px;
 background:rgba(253,225,0,1);
 border-radius:50%;
 -webkit-animation:circleFade 2s ease-out 0s infinite;
 animation:circleFade 2s ease-out 0s infinite;
 
 position:absolute;
 left:-14.5px;
 top:-14.5px;
 z-index:10
}
.sec_access .box_btn{
  position: relative;
  z-index: 1;
  margin-top: 80px;
  display:-webkit-box;
  display:flex;
  -webkit-box-pack: justify;
	justify-content: space-between;
}
.sec_access .box_btn .cmn_btn{
  width: 32.5%;
  -webkit-box-align: center;
  align-items: center;  
}
.sec_access .box_btn .cmn_btn a{
  padding: 10px 50px;
  background-position: right 20px center;
  background-size: 10px auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column; 
  -webkit-box-align: center;
  align-items: center;
}
.sec_access .box_btn .cmn_btn a strong{
  color: #fff;  
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;  
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; 
  margin-bottom: 2px; 
  text-align: center;
}
.sec_access .box_btn .cmn_btn a span{
  padding: 0;
  font-size: 14px;
  font-size: 1.4rem;
}
.sec_access .cmn_btn a[target="_blank"] span::after{
  width: 15px;
  height: 15px;
}
@media screen and (min-width : 835px){
  .sec_access .cmn_btn a:hover strong{
    color: #76b5d5;
  }   
}
@media screen and (max-width :1024px){
  .sec_access .box_btn {
    display: block;
  } 
  .sec_access .box_btn .cmn_btn{
    width: 100%;
  }      
  .sec_access .cmn_btn+.cmn_btn{
    margin-top: 20px;
  }
}
@media screen and (max-width :834px){
  .sec_access{
    margin-top: 90px;
    padding-bottom: 0;
  }
  .sec_access .ttl_01{
    margin-bottom: 0;
  }
  .sec_access .box_txt{
    position: relative;
    z-index: 1;
    width: 100%;
    margin-top: -19.6vw;
  }
  .sec_access .box_txt p.small{
    font-size: 12px;
    font-size: 1.2rem;
  }
  .sec_access .box_txt p:nth-of-type(n+2){
    margin-top: 28px;
  }
  .sec_access .box_map{
    margin-top: -21.7vw;    
  }
  .sec_access .box_map figure{
    width: 112%;
    margin-left:-3%;
    position: relative;
  }
  .sec_access .box_map figure > div{
    width: 100%;
    margin: 0;
  }
  .sec_access .box_map .point {
   width:8px;
   height:8px;
   left:44.1%;
   top:42.6%;
  }
  .sec_access .box_map .point span:after {
   width:35px;
   height:35px;
   left:-13.5px;
   top:-13.5px;
  }
  .sec_access .box_btn{
    margin-top: 30px;
  }
  .sec_access .box_btn .cmn_btn a strong{
    font-size: 15px;
    font-size: 1.5rem;  
  }
  .sec_access .box_btn .cmn_btn a span{
    font-size: 13px;
    font-size: 1.3rem;
  }  
}
@-webkit-keyframes circleFade {
 0% {
  -webkit-transform:scale(0);
  transform:scale(0);
  opacity:1;
  filter:alpha(opacity=100)
 }
 to {
  -webkit-transform:scale(1);
  transform:scale(1);
  opacity:0;
  filter:alpha(opacity=0)
 }
}
@keyframes circleFade {
 0% {
  -webkit-transform:scale(0);
  transform:scale(0);
  opacity:1;
  filter:alpha(opacity=100)
 }
 to {
  -webkit-transform:scale(1);
  transform:scale(1);
  opacity:0;
  filter:alpha(opacity=0)
 }
}
/* ===============================================
# sec_map
=============================================== */
.sec_map{
  margin-top: 80px;
}
.sec_map .box_map{
  position: relative;
  padding-top: 520px;
}
.sec_map .box_map iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width :834px){
  .sec_map{
    margin-top: 50px;
  }
  .sec_map .box_map{
    padding-top: 260px;
  }
}








