@charset 'UTF-8';

/*  article>header  */
article>header{
  position: relative;
  left: 50%;
  z-index: 0;
  margin-bottom: calc(8.2rem + 3.1rem);
  width: 100vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: rgb(255, 238, 144);
}
article>header::before{
  content: '';
  display: block;
  padding-top: calc(218 / 375 * 100%);
  margin: 0 0 0 auto;
  width: calc(81 / 375 * 100%);
  -webkit-transform: skewX(13.5deg);
  transform: skewX(13.5deg);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  background-color: rgb(255, 238, 144);
}
@media screen and (min-width: 768px){
  article>header{
    margin-bottom: 0;
  }
  article>header::before{
    padding-top: calc(600 / 1920 * 100%);
    width: calc(340 / 1920 * 100%);
  }
}
article>header::after{
  content: '';
  position: absolute;
  top: 0;
  bottom: calc(36 / 600 * -100%);
  right: 0;
  width: calc(81 / 375 * 100%);
  -webkit-transform: skewX(-13.5deg);
  transform: skewX(-13.5deg);
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  background-color: rgb(247, 155, 155);
  mix-blend-mode: multiply;
}
_:-ms-lang(x)::-ms-backdrop, article>header::after{
  mix-blend-mode: normal;
  opacity: 0.5;
}
@media screen and (min-width: 768px){
  article>header::after{
    width: calc(340 / 1920 * 100%);
  }
}
body:not(.loaded) article>header::after{
  -webkit-transform: skewX(-13.5deg) translateX(100%);
  transform: skewX(-13.5deg) translateX(100%);
}
body.loaded article>header::after{
  -webkit-transform: skewX(-13.5deg);
  transform: skewX(-13.5deg);
  transition: 1s -webkit-transform ease-out;
  transition: 1s transform ease-out;
  transition: 1s transform ease-out, 1s -webkit-transform ease-out;
}
article>header h2{
  padding: 1.4rem calc(25 / 375 * 100vw);
  margin: 0;
  position: absolute;
  left: 0;
  right: 0;
  font-size: 0;
  font-weight: normal;
  background-color: rgb(255, 255, 255);
}
body:not(.loaded) article>header h2{
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}
body.loaded article>header h2{
  -webkit-transform: none;
  transform: none;
  transition: 1s -webkit-transform ease-out 1s;
  transition: 1s transform ease-out 1s;
  transition: 1s transform ease-out 1s, 1s -webkit-transform ease-out 1s;
}
@media screen and (min-width: 768px){
  article>header h2{
    padding: 0 calc(95 / 1920 * 100%) 0 0;
    top: calc(136 / 600 * 100%);
    left: auto;
    right: 0;
    z-index: 10;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    align-items: flex-end;
    background-color: transparent;
  }
}
article>header h2 span{
  display: block;
}
article>header h2 .ja{
  width: 9.6rem;
  font-size: 2.2rem;
  line-height: 1.5;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (min-width: 768px){
  article>header h2 span{
    background-color: rgb(255, 255, 255);
  }
  article>header h2 .ja{
    width: 17.2rem;
    font-size: 3.9rem;
    line-height: 1.8;
    border-left: calc(35 / 39 * 1em) solid rgb(255, 255, 255);
    border-right: calc(35 / 39 * 1em) solid rgb(255, 255, 255);
  }
}
article>header h2 .ja::before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  padding-top: calc(39 / 172 * 100%);
  margin-top: -.25em;
  width: 100%;
  background: url(../images/txt_access.svg) no-repeat 50% 50%;
  background-size: contain;
}
article>header h2 .en{
  font-family: 'Baloo Thambi 2', cursive;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: calc(0.52 / 26 * 1em);
  color: rgb(241, 132, 51);
}
@media screen and (min-width: 768px){
  article>header h2 .en{
    margin-top: 1.8rem;
    font-size: 1.8rem;
    border-left: calc(30 / 26 * 1em) solid rgb(255, 255, 255);
    border-right: calc(30 / 26 * 1em) solid rgb(255, 255, 255);
  }
}
body:not(.loaded) article>header h2 .ja{
  color: transparent;
}
body.loaded article>header h2 .ja{
  color: rgb(31, 31, 31);
  transition: 1s color 1.75s;
}
body:not(.loaded) article>header h2 .ja::before{
  opacity: 0;
}
body.loaded article>header h2 .ja::before{
  opacity: 1.0;
  transition: 1s opacity 1.75s;
}
body:not(.loaded) article>header h2 .en{
  color: transparent;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}
body.loaded article>header h2 .en{
  color: rgb(241, 132, 51);
  -webkit-transform: none;
  transform: none;
  transition: 1s color 2.5s, 1s -webkit-transform ease-out 1.75s;
  transition: 1s color 2.5s, 1s transform ease-out 1.75s;
  transition: 1s color 2.5s, 1s transform ease-out 1.75s, 1s -webkit-transform ease-out 1.75s;
}
article>header .image{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -10;
  width: calc(346 / 375 * 100%);
  background: url(../images/bg_access.jpg) no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
@media screen and (min-width: 768px){
  article>header .image{
    width: calc(1724 / 1920 * 100%);
  }
}

/*  article>feature  */
article>.feature{
  padding-bottom: 3.5rem;
  text-align: center;
  white-space: nowrap;
}
article>.feature::before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.1rem;
  width: 0;
  height: 6.3rem;
  border-right: solid 2px rgb(83, 83, 83);
  -webkit-transform: rotate(-23deg);
  transform: rotate(-23deg);
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}
article>.feature::after{
  content: '';
  display: inline-block;
  vertical-align: middle;
  margin-left: 1.1rem;
  width: 0;
  height: 6.3rem;
  border-left: solid 2px rgb(83, 83, 83);
  -webkit-transform: rotate(23deg);
  transform: rotate(23deg);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}
article>.feature p{
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.67;
  letter-spacing: calc(1.2 / 24 * 1em);
  text-align: right;
}
article>.feature a{
  color: rgb(241, 132, 51);
  transition: none;
}
article>.feature a:hover{
  opacity: 1;
}
@media screen and (min-width: 768px){
  article>.feature{
    padding-bottom: 4.3rem;
    padding-left: 6.0rem;
    padding-right: 6.0rem;
    margin-top: 15.6rem;
    text-align: left;
  }
  article>.feature::before{
    margin-right: 3.6rem;
    height: 7.6rem;
  }
  article>.feature::after{
    margin-left: 3.6rem;
    height: 7.6rem;
  }
  article>.feature p{
    font-size: 2.4rem;
  }
}

/*  article>guidemap  */
article>.guidemap{
  padding-top: 2.3rem;
  background-color: rgb(255, 248, 222);
  border-radius: 13px;
}
article>.guidemap p{
  margin: 0;
}
article>.guidemap .welcome{
  padding: 3.3rem 3.5rem 3.9rem 4.2rem;
  margin: 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: calc(0.9 / 18 * 1em);
  text-align: center;
  background: url(../images/bg_access_welcome.svg) no-repeat 50% 50%;
  background-size: contain;
}
article>.guidemap .image{
  margin: 1.0rem auto 2.6rem auto;
  max-width: 21.8rem;
}
article>.guidemap .map{
  position: relative;
}
article>.guidemap .map::before{
  content: '';
  display: block;
  padding-top: calc(390 / 325 * 100%);
}
article>.guidemap .map iframe{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px){
  article>.guidemap{
    padding-top: 0;
    position: relative;
  }
  article>.guidemap .welcome{
    padding: 4.1rem 4.4rem 4.9rem 5.4rem;
    font-size: 1.8rem;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-transform: translateY(-75%);
    transform: translateY(-75%);
  }
  article>.guidemap .image{
    margin: 0 auto 0.7rem auto;
    max-width: 42.6rem;
    -webkit-transform: translateY(-1.3rem);
    transform: translateY(-1.3rem);
  }
  article>.guidemap .map::before{
    padding-top: calc(680 / 1100 * 100%);
  }
}

/*  article>notes  */
article>.notes{
  padding: 3.0rem 0;
  margin: 0;
  list-style: none;
}
article>.notes li{
  padding-left: 1.05em;
  text-indent: -1.05em;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: calc(0.7 / 14 * 1em);
}
article>.notes li::before{
  content: '\30FB';
  display: inline;
}
@media screen and (min-width: 768px){
  article>.notes{
    padding: 2.5rem 0;
  }
  article>.notes li{
    font-size: 1.6rem;
    line-height: 1.88;
  }
}

/*  article>photos  */
article>.photos{
  padding: 2.0rem 0 4.0rem 0;
  position: relative;
  left: 50%;
  width: 100vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
article>.photos .fadein:nth-of-type(2){
  transition-delay: .5s;
}
article>.photos .fadein:nth-of-type(3){
  transition-delay: 1.0s;
}
@media screen and (min-width: 768px){
  article>.photos{
    padding: 8.5rem 0 10.0rem 0;
    display: -webkit-box;
    display: flex;
  }
  article>.photos .image{
    flex-basis: calc(1 / 3 * 100%);
  }
}

/* media queries */
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx){
}
@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 3dppx){
}
@media screen and (min-width: 480px){
  /* sp_horizon- */
}
@media screen and (min-width: 768px){
  /* tablet- */
}
@media screen and (min-width: 1024px){
  /* pc- */
}

/*  ie hack  */
_:-ms-lang(x)::-ms-backdrop, .selector{

}
