@charset "UTF-8"; /*!
Risecomm web Version: 1.0.0
*/ /*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */ #map, .about__wrap, .intro01__wrap,.btn, .btn-top, .kv, .kv__copy .copy__wrap, .section-title, .team .member__photo, .works__slider {
  overflow: hidden
}
.contact__address .email a:hover, .kv__lang a, .kv__nav a, .spnav__list li, .works__thumb, .works__title, .btn a, .btn-top a, .btn-wrap a, .btn-wrap-caution a {
  text-decoration: none;
  color: #000
}
blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html, iframe, legend, li, ol, p, pre, textarea, ul {
  margin: 0;
  padding: 0
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 400
}
ul {
  list-style: none
}
button, input, select, textarea {
  margin: 0
}
html {
  box-sizing: border-box;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  overflow-y: scroll;
  text-rendering: optimizeLegibility
}
*, :after, :before {
  box-sizing: inherit
}
audio, embed, iframe, img, object, video {
  height: auto;
  max-width: 100%
}
iframe {
  border: 0
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
td, th {
  padding: 0;
  text-align: left
}
.about, .kv__copy {
  text-align: center
}
/*.intro01, .kv__copy {
  text-align: center
}*/
body {
  font-family: Roboto, sans-serif
}
.l-flex {
  display: flex
}
.l-justify-start {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start
}
.l-justify-center {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end
}
.l-justify-end {
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}
.l-justify-sb {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.l-vertical-top {
  align-items: flex-start
}
.l-vertical-center {
  align-items: center
}
.l-vertical-bottom {
  align-items: flex-end
}
.l-content {
  margin-left: 1rem;
  margin-right: 1rem;
}
.l-content-line {
  margin-left: 1rem;
  margin-right: 1rem;
  border-left: 5px solid #000;
}
.l-content-line--none {
  margin-left: 1rem;
  margin-right: 1rem;
}
#l-header {
  position: fixed;
  width: 100%;
  height: 100px;
  padding-left: 1rem;
  padding-right: 1rem;
  top: 0;
  left: 0;
  z-index: 100;
  transition: .3s
}
#l-side__inner, #l-wrap, .kv {
  position: relative
}
#l-header .logo-mark {
  display: none
}
#l-header.is-active {
  background: #FFF;
  box-shadow: 0 0 4px rgba(0, 0, 0, .15)
}
#l-header.is-active .menu__line {
  background: #000
}
.l-header__logo a {
  display: block;
  line-height: 0
}
.menu {
  display: flex;
  width: 24px;
  height: 24px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  cursor: pointer
}
.menu__line {
  width: 100%;
  height: 1px;
  background: #000
}
#l-container.is-blur {
  -webkit-filter: blur(3px);
  filter: blur(3px)
}
#l-wrap {
  width: 100%;
  padding-top: 100px
}

#l-side {
  display: none
}
#l-side__inner {
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: .3s
}
#l-side__inner.is-active {
  opacity: 1
}
.kv__bg, .kv__copy .copy__text, .kv__nav li {
  opacity: 0
}
.kv {
  display: flex;
  width: 100%;
  height: 100vh;
  z-index: 5;
  justify-content: center;
  align-items: center
}
.kv__copy, .kv__scroll {
  z-index: 1;
  color: #FFF;
  font-family: 'Fjalla One', sans-serif
}
.kv__copy {
  line-height: 1.2
}
.kv__copy .copy__wrap {
  position: relative;
  display: inline-block;
  margin-bottom: 20px
}
.kv__copy .copy__wrap:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: #FFF;
  -webkit-transform: translateX(-110%);
  transform: translateX(-110%)
}
.kv__scroll, .kv__scroll .scroll__text {
  -webkit-transform: translateX(-50%);
  left: 50%
}
.kv__copy .copy__wrap:nth-of-type(1):before {
  -webkit-animation: slideStart .6s 1.5s forwards, slideEnd .6s 2.1s forwards;
  animation: slideStart .6s 1.5s forwards, slideEnd .6s 2.1s forwards
}
.kv__copy .copy__wrap:nth-of-type(1) .copy__text {
  -webkit-animation: fadeIn 0s 2.1s forwards;
  animation: fadeIn 0s 2.1s forwards
}
.kv__copy .copy__wrap:nth-of-type(2):before {
  -webkit-animation: slideStart .6s 1.7s forwards, slideEnd .6s 2.3s forwards;
  animation: slideStart .6s 1.7s forwards, slideEnd .6s 2.3s forwards
}
.kv__copy .copy__wrap:nth-of-type(2) .copy__text {
  -webkit-animation: fadeIn 0s 2.3s forwards;
  animation: fadeIn 0s 2.3s forwards
}
.kv__copy .copy__name {
  font-size: 46px;
  letter-spacing: .2rem
}
.kv__copy .copy__descriotion {
  font-size: 48px;
  line-height: 1.6;
  letter-spacing: .1rem
}
.kv__scroll {
  position: absolute;
  display: flex;
  width: 70px;
  height: 110px;
  flex-direction: column;
  align-items: center;
  font-size: 10px;
  letter-spacing: .2rem;
  bottom: 0;
  transform: translateX(-50%);
  cursor: pointer;
  opacity: 0;
  -webkit-animation: fadeIn .5s 2s forwards;
  animation: fadeIn .5s 2s forwards
}
.kv__scroll a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #FFF
}
.kv__scroll .scroll__text {
  position: absolute;
  bottom: 90px;
  margin-left: 2px;
  transform: translateX(-50%)
}
.kv__scroll .scroll__line {
  position: absolute;
  display: block;
  width: 1px;
  height: 80px;
  margin-top: 5px;
  background: #FFF;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-animation: kvSlideLine cubic-bezier(.215, .61, .355, 1) 2.5s infinite forwards;
  animation: kvSlideLine cubic-bezier(.215, .61, .355, 1) 2.5s infinite forwards
}
.kv__logo, .kv__nav {
  position: absolute;
  left: 50px;
  z-index: 1
}
.kv__logo {
  display: none;
  /*position: fixed;*/
  top: 10px;
}
.kv__logo a {
  display: block;
  line-height: 0
}
.about__description, .service__detail p {
  font-size: 12px;
  line-height: 2
}
.intro01__detail p {
  font-size: 20px;
  line-height: 2
}
/*.intro01__description .service__detail p{
  font-size: 12px;
  line-height: 2
}*/
.kv__nav {
  display: none;
  top: 50%;
  font-size: 12px;
  font-weight: 700;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.kv__nav li {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 2rem;
  -webkit-transform: translateX(10px);
  transform: translateX(10px)
}
.kv__bg, .kv__lang {
  position: absolute
}
.kv__nav li:last-of-type {
  margin-bottom: 0
}
.kv__nav li:before {
  content: "";
  width: 5px;
  height: 2px;
  margin-right: 8px;
  background: #FFF;
  transition: .3s
}
.kv__nav li:nth-of-type(1) {
  -webkit-animation: leftSlideFadeIn .3s 2.625s forwards;
  animation: leftSlideFadeIn .3s 2.625s forwards
}
.kv__nav li:nth-of-type(2) {
  -webkit-animation: leftSlideFadeIn .3s 2.75s forwards;
  animation: leftSlideFadeIn .3s 2.75s forwards
}
.kv__nav li:nth-of-type(3) {
  -webkit-animation: leftSlideFadeIn .3s 2.875s forwards;
  animation: leftSlideFadeIn .3s 2.875s forwards
}
.kv__nav li:nth-of-type(4) {
  -webkit-animation: leftSlideFadeIn .3s 3s forwards;
  animation: leftSlideFadeIn .3s 3s forwards
}
.kv__nav li:nth-of-type(5) {
  -webkit-animation: leftSlideFadeIn .3s 3.125s forwards;
  animation: leftSlideFadeIn .3s 3.125s forwards
}
.kv__nav li:nth-of-type(6) {
  -webkit-animation: leftSlideFadeIn .3s 3.25s forwards;
  animation: leftSlideFadeIn .3s 3.25s forwards
}
.kv__nav li:nth-of-type(7) {
  -webkit-animation: leftSlideFadeIn .3s 3.375s forwards;
  animation: leftSlideFadeIn .3s 3.375s forwards
}
.kv__nav li:hover:before {
  width: 15px
}
.kv__nav a {
  color: #FFF;
  transition: .3s
}
.kv__bg {
  width: 102%;
  height: 43%;
  left: -1%;
	top: 20%;
  /*top: -1%;*/
  background-size: cover;
  background-position: center;
  -webkit-transform: scale(1.2) translate3d(0, 0, 0);
  transform: scale(1.2) translate3d(0, 0, 0);
  transition: 2s;
  will-change: transform
}
.kv__lang {
  display: none;
    top: 100px;
    right: 0;
    padding: 0 50px 0 0;

  z-index: 1
}
.kv__lang ul {
  display: flex
}
.kv__lang li {
  font-size: 12px;
  font-weight: 700
}
.kv__lang li + li:before {
  display: inline-block;
  content: "/";
  margin: 0 6px;
  color: #353535;
  opacity: .4
}
.about__wrap:before, .locations__item a:after, .service__image__inner:before {
  content: "";
  left: 0
}
.intro01__image__inner:before {
  content: "";
  left: 0
}
/*.intro01__wrap:before .locations__item a:after, .service__image__inner:before {
  content: "";
  left: 0
}*/
.kv__lang li.is-current a {
  opacity: 1
}
.kv__lang a {
  color: #000;
  opacity: .4;
  transition: .3s
}
.kv__lang a:hover {
  opacity: 1
}
.kv.is-view .kv__bg {
  opacity: 1;
  -webkit-transform: scale(1) translate3d(0, 0, 0);
  transform: scale(1) translate3d(0, 0, 0)
}
.about {
  margin-bottom: 240px;
  padding-top: 40px
}
.about__wrap {
  position: relative;
  height: 800px
}
.about__wrap:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.about__wrap.is-view:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.about__wrap.is-view .about__content {
  -webkit-animation: topSlideFadeIn .6s 1s forwards;
  animation: topSlideFadeIn .6s 1s forwards
}
.about__wrap.is-view .about__inner {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.about__inner {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  background-size: cover;
  background-position: center;
  opacity: 0
}
.about__content {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  padding: 2.5rem 2rem 2rem;
  background: #FFF;
  opacity: 0;
  -webkit-transform: translateX(20px);
  transform: translateX(20px)
}
.about__description {
  text-align: left
}
.about__logo {
  margin-bottom: 20px;
  text-align: center
}
.about__logo svg {
  width: 200px
}
/*.intro01 {
  margin-bottom: 240px;
  padding-top: 40px
}
.intro01__wrap {
  position: relative;
  height: 800px;
}
.intro01__wrap:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.intro01__wrap.is-view:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.intro01__wrap.is-view .intro01__content {
  -webkit-animation: topSlideFadeIn .6s 1s forwards;
  animation: topSlideFadeIn .6s 1s forwards
}
.intro01__wrap.is-view .intro01__inner {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.intro01__inner {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  background-size: cover;
  background-position: center;
  opacity: 0
}
.intro01__content {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
  padding: 2.5rem 2rem 2rem;
  background: #FFF;
  opacity: 0;
  -webkit-transform: translateX(20px);
  transform: translateX(20px)
}
.intro01__description {
  text-align: left
}
.intro01__logo {
  margin-bottom: 20px;
  text-align: center
}
.intro01__logo svg {
  width: 200px
}*/
.service {
  margin-bottom: 100px;
  padding-top: 40px;
  text-align: center
}
.service__section {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-bottom: 40px
}
.locations, .tips {
  margin-bottom: 240px
}
.service__section.is-view .service__detail {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.service__section.is-view .service__image__inner:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.service__section.is-view .service__image__inner img {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.service__detail {
  order: 2;
  padding: 1.5rem 1rem;
  text-align: left;
  z-index: 2
}
.service__image {
  order: 1;
  line-height: 0
}
.service__image__inner {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  overflow: hidden
}
.service__image__inner img {
  opacity: 0
}
.service__image__inner:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.intro01 {
  margin-bottom: 100px;
  padding-top: 40px;
  text-align: center
}
.intro01__section {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-bottom: 40px
}
.locations, .tips {
  margin-bottom: 240px
}
.intro01__section.is-view .intro01__detail {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.intro01__section.is-view .intro01__image__inner:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.intro01__section.is-view .intro01__image__inner img {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.intro01__detail {
  order: 2;
  padding: 1.5rem 1rem;
  text-align: left;
  z-index: 2
}
.intro01__image {
  order: 1;
  line-height: 0
}
.intro01__image__inner {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  overflow: hidden
}
.intro01__image__inner img {
  opacity: 0
}
.intro01__image__inner:before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.locations, .tips {
  margin-bottom: 240px
}
.tips {
  padding-top: 40px;
  text-align: center
}
.tips__item {
  transition: .6s;
  border-bottom: 1px solid #000
}
.tips__item.is-view .tips__item__title {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.tips__item:first-of-type {
  border-top: 1px solid #000
}
.tips__item__title {
  position: relative;
  padding: 1.5rem;
  font-weight: 700;
  cursor: pointer;
  transition: .6s;
  opacity: 0;
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
  text-align: left
}
.tips__item__title svg {
  position: absolute;
  width: 16px;
  top: 50%;
  right: 1.5rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: .3s
}
.tips__item__title:hover {
  color: #FFF;
  background: #000
}
.tips__item__title:hover svg {
  fill: #FFF
}
.tips__item__title.is-open {
  color: #FFF;
  background: #000
}
.tips__item__title.is-open svg {
  fill: #FFF;
  -webkit-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg)
}
.tips__item__detail {
  display: none;
  padding: 1.5rem;
  font-size: 14px;
  line-height: 1.8;
  text-align: left
}
.locations, .team, .works, .about-us {
  text-align: center
}
.tips__item__detail.is-open {
  display: block
}
.locations {
  padding-top: 40px
}
.locations__item {
  /*display: none;*/
  width: 100%;
  height: 220px;
  margin-bottom: 1rem
}
.locations__item a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  cursor: -webkit-zoom-in;
  cursor: zoom-in
}
.works__next, .works__prev {
  cursor: pointer
}
.locations__item a:after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  opacity: 0;
  transition: .3s;
  background: rgba(0, 0, 0, .6)
}
.works__slider, .works__wrap {
  position: relative
}
.locations__item a:hover:after {
  opacity: 1
}
.locations__item.is-hide {
  display: none;
  opacity: 0
}
.locations__item:nth-of-type(1), .locations__item:nth-of-type(2), .locations__item:nth-of-type(3), .locations__item:nth-of-type(4), .locations__item:nth-of-type(5), .locations__item:nth-of-type(6) {
  display: block;
  opacity: 0
}
.locations__item:nth-of-type(1).is-view {
  -webkit-animation: fadeIn .5s .1s forwards;
  animation: fadeIn .5s .1s forwards
}
.locations__item:nth-of-type(2).is-view {
  -webkit-animation: fadeIn .5s .2s forwards;
  animation: fadeIn .5s .2s forwards
}
.locations__item:nth-of-type(3).is-view {
  -webkit-animation: fadeIn .5s .3s forwards;
  animation: fadeIn .5s .3s forwards
}
.locations__item:nth-of-type(4).is-view {
  -webkit-animation: fadeIn .5s .4s forwards;
  animation: fadeIn .5s .4s forwards
}
.locations__item:nth-of-type(5).is-view {
  -webkit-animation: fadeIn .5s .5s forwards;
  animation: fadeIn .5s .5s forwards
}
.locations__item:nth-of-type(6).is-view {
  -webkit-animation: fadeIn .5s .6s forwards;
  animation: fadeIn .5s .6s forwards
}
.lum-lightbox {
  background: rgba(0, 0, 0, .9) !important;
  z-index: 100
}
.lum-lightbox-inner {
  top: 1.5rem !important;
  right: 1rem !important;
  bottom: 1rem !important;
  left: 1.5rem !important
}
.works__slider:before, .works__thumb:before {
  content: "";
  top: 0;
  width: 100%
}
.lum-gallery-button {
  display: none !important
}
.lum-img {
  max-width: 100% !important
}
.works {
  margin-bottom: 240px;
  padding-top: 40px
}
.works__slider:before {
  position: absolute;
  height: 100%;
  left: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.works__slider__inner {
  position: relative;
  opacity: 0
}
.works__slider.is-view:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.works__slider.is-view .works__slider__inner {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.works__thumb {
  position: relative;
  display: flex;
  width: 100%;
  height: 260px;
  background-size: cover;
  background-position: center;
  justify-content: center;
  align-items: center;
  color: #FFF
}
.works__thumb:before {
  position: absolute;
  height: 100%;
  left: 0;
  opacity: 0;
  background: rgba(0, 0, 0, .6);
  transition: .3s
}
.works__summary {
  margin-top: 16px
}
.works__title {
  margin-bottom: 8px;
  font-weight: 700;
  letter-spacing: .15rem;
  line-height: 1.6
}
.works__country, .works__supervisor {
  display: inline-block;
  font-size: 12px;
  color: #999
}
.works__country:before {
  display: inline-block;
  content: "/";
  color: #999;
  margin: 0 6px 0 2px
}
.works__nav {
  position: absolute;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 0 1rem;
  top: 120px
}
.contact, .team {
  padding-top: 40px
}
.contact, .about-us {
  padding-top: 40px
}
.works__nav svg {
  width: 24px;
  fill: #FFF;
  transition: .3s
}
.works__nav li.swiper-button-disabled {
  pointer-events: none;
  opacity: .2
}
.works__prev svg {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.contact__location, .team .member__summary {
  opacity: 0;
  -webkit-transform: translateY(20px)
}
.contact__location, .about-us .member__summary {
  opacity: 0;
  -webkit-transform: translateY(20px)
}
.team {
  margin-bottom: 200px
}
.team__member {
  margin-bottom: 64px;
  text-align: left
}
.team__member.is-view .member__photo:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.team__member.is-view .member__photo__inner {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.team__member.is-view .member__summary {
  -webkit-animation: topSlideFadeIn .6s .8s forwards;
  animation: topSlideFadeIn .6s .8s forwards
}
.team .member__name {
  margin-bottom: 8px;
  font-size: 30px;
  font-weight: 300
}
.team .member__name-large {
  margin-bottom: 8px;
  font-size: 35px;
  font-weight: 900;
}
.team .member__name-large-j {
  margin-bottom: 8px;
  font-size: 35px;
  font-weight: 300;
}
.team .member__occupation {
  margin-bottom: 16px;
  font-size: 12px;
  color: #999
}
.team .member__summary {
  transform: translateY(20px);
	padding: 0 20px 0 20px;
}
.team .member__photo {
  position: relative;
  width: 100%;
  height: 220px;
  margin-bottom: 16px;
  line-height: 0;
  text-align: center;
}
.team .member__photo:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.team .member__photo__inner {
  width: 100%;
  height: 100%;
  background-size: cover;
  opacity: 0
}
.team .member__profile {
  margin-bottom: 16px;
  font-size: 20px;
  line-height: 2
}
p.indent-1 {
padding-left:1em;
text-indent:-1em;
}
.about-us {
  margin-bottom: 200px
}
.about-us__member {
  margin-bottom: 64px;
  text-align: left
}
.about-us__member.is-view .member__photo:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.about-us__member.is-view .member__photo__inner {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
.about-us__member.is-view .member__summary {
  -webkit-animation: topSlideFadeIn .6s .8s forwards;
  animation: topSlideFadeIn .6s .8s forwards
}
.about-us .member__name {
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 700
}
.about-us .member__occupation {
  margin-bottom: 16px;
  font-size: 12px;
  color: #999
}
.about-us .member__summary {
  transform: translateY(20px)
}
.about-us .member__photo {
  position: relative;
  width: 100%;
  height: 220px;
  margin-bottom: 16px;
  line-height: 0;
  text-align: center
}
.about-us .member__photo:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #000;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
.about-us .member__photo__inner {
  width: 100%;
  height: 100%;
  background-size: cover;
  opacity: 0
}
.about-us .member__profile {
  margin-bottom: 16px;
  font-size: 12px;
  line-height: 2
}
.contact {
  text-align: center
}
.contact__location {
  transform: translateY(20px)
}
.contact__inquiry, .photography__title {
  -webkit-transform: translateY(20px);
  opacity: 0
}
.contact__location.is-view {
  -webkit-animation: topSlideFadeIn .6s forwards;
  animation: topSlideFadeIn .6s forwards
}
.contact__inquiry {
  transform: translateY(20px)
}
.contact__inquiry.is-view {
  -webkit-animation: topSlideFadeIn .6s forwards;
  animation: topSlideFadeIn .6s forwards
}
.contact__address {
  margin-bottom: 10rem;
  font-style: normal;
  font-size: 45px;
  line-height: 2;
  text-align: left
}
.contact__address .phone svg {
  width: 30px;
  margin-right: 5px;
  vertical-align: -3px
}
.contact__address .email svg {
  width: 30px;
  margin-right: 5px;
  vertical-align: -4px
}
.contact__address .email a {
  color: #000
}
.wpcf7-form {
  margin-top: 40px;
  border-top: 1px solid #E6E6E6;
  text-align: left
}
.wpcf7-form dl {
  width: 100%;
  padding: 2rem 0;
  align-items: center;
  border-bottom: 1px solid #E6E6E6
}
.wpcf7-form dt {
  margin-bottom: 20px;
  font-size: 20px;
  font-weight: 400;
}
.wpcf7-form dt .required {
  margin-left: 8px;
  padding: 4px 6px;
  font-weight: 400;
  color: #FFF;
  background: #E6A0A0
}
.wpcf7-form dd{
  width: 100%;
  padding: 14px;
  font-size: 20px;
  font-weight: 300;
}
.wpcf7-form .wpcf7-not-valid-tip {
  display: inline-block;
  margin-top: 8px;
  font-size: 12px;
  color: #F33
}
.wpcf7-form .wpcf7-response-output {
  margin-top: 60px;
  padding: 1rem;
  text-align: center;
  font-size: 12px;
  line-height: 1.8;
  border: 1px solid #000
}
.screen-reader-response, .wpcf7-form .wpcf7-display-none {
  display: none
}
.photography {
  margin: 200px 0 120px
}
.photography__title {
  margin-bottom: 64px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  transform: translateY(20px)
}
.photography__title.is-view {
  -webkit-animation: topSlideFadeIn .6s forwards;
  animation: topSlideFadeIn .6s forwards
}
.photography__wrap {
  margin-left: 1rem;
  margin-right: 1rem;
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px)
}
.photography__wrap.is-view {
  -webkit-animation: topSlideFadeIn .6s forwards;
  animation: topSlideFadeIn .6s forwards
}
.photography__logo {
  margin-bottom: 10px;
  text-align: center
}
.photography__info {
  font-size: 12px;
  line-height: 2.5
}
.copyright {
  padding: 40px 0;
  text-align: center;
  font-size: 12px
}
.spnav {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
  background: rgba(0, 0, 0, .8);
  opacity: 0;
  visibility: hidden;
  transition: .3s
}
.spnav.is-show, .spnav.is-show .spnav__lang, .spnav.is-show .spnav__sns {
  visibility: visible;
  opacity: 1
}
.spnav.is-show .spnav__list li {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.spnav.is-show .spnav__list li:nth-of-type(1) {
  transition-delay: .1s
}
.spnav.is-show .spnav__list li:nth-of-type(2) {
  transition-delay: .2s
}
.spnav.is-show .spnav__list li:nth-of-type(3) {
  transition-delay: .3s
}
.spnav.is-show .spnav__list li:nth-of-type(4) {
  transition-delay: .4s
}
.spnav.is-show .spnav__list li:nth-of-type(5) {
  transition-delay: .5s
}
.spnav.is-show .spnav__list li:nth-of-type(6) {
  transition-delay: .6s
}
.spnav.is-show .spnav__list li:nth-of-type(7) {
  transition-delay: .7s
}
.spnav__close {
  position: relative;
  height: 70px
}
.spnav__close__wrap {
  position: absolute;
  display: flex;
  width: 60px;
  height:98px;
  right: 0;
  top: 0;
  justify-content: center;
  align-items: center;
  cursor: pointer
}
.spnav .close__line {
  position: absolute;
  display: block;
  width: 24px;
  height: 1px;
  background: #FFF
}
.btn, .spnav__list li {
  position: relative;
  cursor: pointer
}
.spnav .close__line:nth-of-type(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.spnav .close__line:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.spnav__list {
  margin-left: 3rem
}
.spnav__list li {
  display: flex;
  align-items: center;
  margin-bottom: 1.2rem;
  opacity: 0;
  -webkit-transform: translateX(20px);
  transform: translateX(20px);
  transition: .3s;
  text-align: left;
  color: #FFF;
  /*font-family: 'Fjalla One', sans-serif;*/
    font-family: 'Roboto', sans-serif;
  font-size: 15px;
  letter-spacing: .4rem
}
.spnav__lang ul, .spnav__sns ul {
  display: inline-flex
}
.btn:before, .section-title:before {
  -webkit-transform: translateX(-101%)
}
.btn-top:before, .section-title:before {
  -webkit-transform: translateX(-101%)
}
.spnav__lang, .spnav__sns {
  opacity: 0;
  transition: .5s .6s;
  text-align: center;
  visibility: hidden
}
.btn, .spnav__lang li a {
  font-size: 14px;
  font-weight: 300;
  text-decoration: none
}
.spnav__list li:before {
  content: "";
  width: 12px;
  height: 2px;
  background: #FFF;
  margin-right: 18px
}
.spnav__sns {
  margin-top: 30px
}
.spnav__sns li {
  margin: 0 14px
}
.spnav__sns svg {
  fill: #FFF
}
.spnav__lang {
  margin-top: 30px
}
.spnav__lang li + li:before {
  display: inline-block;
  content: "/";
  margin: 0 6px;
  color: #FFF;
  opacity: .4
}
.spnav__lang li a {
  color: #FFF;
  opacity: .4
}
.spnav__lang li.is-current a {
  opacity: 1
}
.btn {
  display: inline-flex;
  width: 300px;
  height: 40px;
  align-items: center;
  justify-content: center;
  font-family: Roboto, sans-serif;
  text-align: center;
  border: 1px solid #000;
  background: 0 0;
  letter-spacing: .15rem;
  z-index: 1
}
.btn svg, .btn:before {
  position: absolute;
  transition: .3s
}
.btn:before {
  content: "";
  width: 100%;
  height: 100%;
  background: #000;
  transform: translateX(-101%);
  z-index: -1
}
.btn svg {
  width: 28px;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-3px);
  transform: translateY(-3px)
}
.btn:hover {
  color: #FFF
}
.btn:hover svg {
  right: 0;
  fill: #FFF
}
.btn:hover:before {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.btn--white {
  color: #FFF;
  border-color: #FFF
}
.btn--white .btn__arrow, .btn--white .btn__arrow:after, .btn--white .btn__arrow:before {
  background: #FFF
}
.btn-wrap-caution {
  margin: 2rem 0;
  text-align: left;
}
.btn-wrap {
  margin: 2rem 0;
  text-align: center;
}

.btn-top {
  display: inline-flex;
  width: 300px;
  height: 30px;
  /*align-items: center;
  justify-content: center;*/
	font-weight: 700;
  font-family: Roboto, sans-serif;
  text-align: center;
  /*border-bottom: 5px solid #C6EE0E;*/
  background: 0 0;
  letter-spacing: .15rem;
  z-index: 1
}
.long{
 width: 350px;
}
.short{
 width: 250px;	
}
.under {
  background: linear-gradient(transparent 50%, #C6EE0E 50%);
}
.btn-top svg, .btn-top:before {
  position: absolute;
  transition: .3s
}
.btn-top svg {
  width: 28px;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-3px);
  transform: translateY(-3px)
}
.btn-top:hover {
  color: #ccc
}
.btn-top:hover svg {
  right: 0;
  fill: #FFF
}
.btn-top:hover:before {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}
.btn-top--white {
  color: #FFF;
  border-color: #FFF
}
.btn-top--white .btn-top__arrow, .btn-top--white .btn-top__arrow:after, .btn-top--white .btn-top__arrow:before {
  background: #FFF
}
.btn-top-wrap-caution {
  margin: 2rem 0;
  text-align: left;
}
.btn-top-wrap {
  margin: 2rem 0;
  text-align: center;
}
.black{
	color: #000
}
.articles {
  width: 100%
}
.articles__item {
  flex-basis: 33.33%
}
.articles__thumb {
  display: block;
  width: 100%;
  height: 240px;
  background-size: cover;
  background-position: center
}
#map:before, .section-title:before {
  background: #000;
  width: 100%;
  height: 100%;
  content: ""
}
.articles__title {
  color: #FFF;
  text-decoration: none
}
.globalnav li.is-current > a, .globalnav li:hover > a {
  color: #000
}
.section-title {
  position: relative;
  display: inline-block;
  margin-bottom: 3rem;
  /*font-family: 'Fjalla One', sans-serif;*/
    font-family: 'Roboto', sans-serif;
  font-size: 32px;
  text-align: center;
  letter-spacing: .2rem;
  white-space: nowrap;
}
#pagetop, .globalnav, .switch-lang a {
  font-size: 12px;
  font-weight: 700
}
.section-title:before {
  position: absolute;
  transform: translateX(-101%)
}
.section-title__text {
  position: relative;
  opacity: 0;
}
.section-title__text01 {
  position: relative;
  opacity: 0;
    text-align: center;
}
.section-title.is-view:before {
  -webkit-animation: slideStart .4s 0s forwards, slideEnd .4s .4s forwards;
  animation: slideStart .4s 0s forwards, slideEnd .4s .4s forwards
}
.section-title.is-view .section-title__text {
  -webkit-animation: fadeIn 0s .4s forwards;
  animation: fadeIn 0s .4s forwards
}
.heading-title {
  font-size: 2.5rem;
  margin-bottom: .5rem;
  font-weight: 400;
  text-align: left
}
#map {
  position: relative;
  width: 100%;
  height: 300px;
  margin-bottom: 16px
}
#map:before {
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform: translateX(-101%);
  transform: translateX(-101%);
  z-index: 1
}
#map__canvas {
  width: 100%;
  height: 100%;
  opacity: 0
}
#map.is-view #map__canvas {
  -webkit-animation: fadeIn 0s .6s forwards;
  animation: fadeIn 0s .6s forwards
}
#map.is-view:before {
  -webkit-animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards;
  animation: slideStart .6s 0s forwards, slideEnd .6s .6s forwards
}
.globalnav {
  position: absolute;
  top: 50%;
  left: 30px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.globalnav li {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 2rem
}
#sidelogo, .share, .switch-lang {
  position: absolute
}
.globalnav li:last-of-type {
  margin-bottom: 0
}
.globalnav li:before {
  content: "";
  width: 5px;
  height: 2px;
  margin-right: 8px;
  background: #C9C9C9;
  transition: .3s
}
.globalnav li.is-current:before, .globalnav li:hover:before {
  width: 15px;
  background: #000
}
.globalnav a {
  color: #C9C9C9;
  text-decoration: none;
  transition: .3s
}
.sns__item {
  display: inline-block
}
.sns__icon {
  display: inline-flex;
  width: 32px;
  height: 32px;
  margin-right: 4px;
  justify-content: center;
  align-items: center;
  border: 1px solid #CCC;
  border-radius: 50%;
  text-decoration: none;
  transition: .5s
}
.sns__icon:hover {
  border-color: #000
}
.sns__icon:hover svg {
  fill: #000
}
.sns__icon svg {
  width: 12px;
  fill: #999;
  transition: .5s
}
#sidelogo, .l-header__logo {
  width: 140px;
}
.logo-mark {
  fill: #000
}
.logo-mark--white {
  fill: #FFF
}
#sidelogo {
  top: 30px;
  left: 30px;
  z-index: 1
}
#sidelogo a {
  display: block;
  line-height: 0
}
.share {
  left: 90px;
  bottom: 70px
}
.share__list {
  display: flex
}
.share__list li {
  margin: 0 8px
}
.share__list li a {
  display: block;
  line-height: 0
}
.share__list svg {
  width: 18px;
  transition: .3s
}
.share--facebook a:hover svg {
  fill: #3B5998
}
.share--twitter a:hover svg {
  fill: #55acee
}
.share--instagram a svg {
  fill: #000
}
.share--instagram a:hover svg {
  fill: #C92BB7
}
.instagram__start {
  stop-color: #3051F1
}
.instagram__end {
  stop-color: #C92BB7
}
.switch-lang {
  /*left: 78px;*/
	left: 48px;
  bottom: 20px
}
.switch-lang ul {
  display: flex
}
.switch-lang li + li:before {
  display: inline-block;
  content: "/";
  margin: 0 6px;
  color: #CCC
}
.switch-lang li.is-current a {
  color: #000
}
.switch-lang a {
  text-decoration: none;
  color: #999;
  transition: .3s
}
#pagetop a, .switch-lang a:hover {
  color: #000
}
#pagetop {
  position: fixed;
  display: none;
  visibility: hidden;
  opacity: 0;
  bottom: 100px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  letter-spacing: .15rem;
  transition: .3s
}
#pagetop span {
  display: inline-block;
  transition: .3s
}
#pagetop a {
  text-decoration: none
}
#pagetop a:hover span {
  -webkit-transform: translateX(-12px);
  transform: translateX(-12px)
}
#pagetop a svg {
  width: 33px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
#pagetop.is-active {
  visibility: visible;
  opacity: 1
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes kvSlideLine {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: scaleY(0);
    transform: scaleY(0)
  }
  50% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
  }
  75% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
  }
  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: scaleY(0);
    transform: scaleY(0)
  }
}
@keyframes kvSlideLine {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: scaleY(0);
    transform: scaleY(0)
  }
  50% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
  }
  75% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
  }
  100% {
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-transform: scaleY(0);
    transform: scaleY(0)
  }
}
@-webkit-keyframes leftSlideFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}
@keyframes leftSlideFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}
@-webkit-keyframes topSlideFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px)
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@keyframes topSlideFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px)
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@-webkit-keyframes slideStart {
  0% {
    -webkit-transform: translateX(-101%);
    transform: translateX(-101%)
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}
@keyframes slideStart {
  0% {
    -webkit-transform: translateX(-101%);
    transform: translateX(-101%)
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}
@-webkit-keyframes slideEnd {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
  100% {
    -webkit-transform: translateX(101%);
    transform: translateX(101%)
  }
}
@keyframes slideEnd {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
  100% {
    -webkit-transform: translateX(101%);
    transform: translateX(101%)
  }
}
@-webkit-keyframes zoomOut {
  0% {
    -webkit-filter: blur(3px);
    filter: blur(3px);
    -webkit-transform: scale(1.6) translate3d(0, 0, 0);
    transform: scale(1.6) translate3d(0, 0, 0)
  }
  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: scale(1) translate3d(0, 0, 0);
    transform: scale(1) translate3d(0, 0, 0)
  }
}
@keyframes zoomOut {
  0% {
    -webkit-filter: blur(3px);
    filter: blur(3px);
    -webkit-transform: scale(1.6) translate3d(0, 0, 0);
    transform: scale(1.6) translate3d(0, 0, 0)
  }
  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: scale(1) translate3d(0, 0, 0);
    transform: scale(1) translate3d(0, 0, 0)
  }
}
.u-m8 {
  margin: 8px
}
.u-mt8 {
  margin-top: 8px
}
.u-mr8 {
  margin-right: 8px
}
.u-mb8 {
  margin-bottom: 8px
}
.u-ml8 {
  margin-left: 8px
}
.u-p8 {
  padding: 8px
}
.u-pt8 {
  padding-top: 8px
}
.u-pr8 {
  padding-right: 8px
}
.u-pb8 {
  padding-bottom: 8px
}
.u-pl8 {
  padding-left: 8px
}
.u-m16 {
  margin: 16px
}
.u-mt16 {
  margin-top: 16px
}
.u-mr16 {
  margin-right: 16px
}
.u-mb16 {
  margin-bottom: 16px
}
.u-ml16 {
  margin-left: 16px
}
.u-p16 {
  padding: 16px
}
.u-pt16 {
  padding-top: 16px
}
.u-pr16 {
  padding-right: 16px
}
.u-pb16 {
  padding-bottom: 16px
}
.u-pl16 {
  padding-left: 16px
}
.u-m24 {
  margin: 24px
}
.u-mt24 {
  margin-top: 24px
}
.u-mr24 {
  margin-right: 24px
}
.u-mb24 {
  margin-bottom: 24px
}
.u-ml24 {
  margin-left: 24px
}
.u-p24 {
  padding: 24px
}
.u-pt24 {
  padding-top: 24px
}
.u-pr24 {
  padding-right: 24px
}
.u-pb24 {
  padding-bottom: 24px
}
.u-pl24 {
  padding-left: 24px
}
.u-m32 {
  margin: 32px
}
.u-mt32 {
  margin-top: 32px
}
.u-mr32 {
  margin-right: 32px
}
.u-mb32 {
  margin-bottom: 32px
}
.u-ml32 {
  margin-left: 32px
}
.u-p32 {
  padding: 32px
}
.u-pt32 {
  padding-top: 32px
}
.u-pr32 {
  padding-right: 32px
}
.u-pb32 {
  padding-bottom: 32px
}
.u-pl32 {
  padding-left: 32px
}
.u-m40 {
  margin: 40px
}
.u-mt40 {
  margin-top: 40px
}
.u-mr40 {
  margin-right: 40px
}
.u-mb40 {
  margin-bottom: 40px
}
.u-ml40 {
  margin-left: 40px
}
.u-p40 {
  padding: 40px
}
.u-pt40 {
  padding-top: 40px
}
.u-pr40 {
  padding-right: 40px
}
.u-pb40 {
  padding-bottom: 40px
}
.u-pl40 {
  padding-left: 40px
}
.u-m48 {
  margin: 48px
}
.u-mt48 {
  margin-top: 48px
}
.u-mr48 {
  margin-right: 48px
}
.u-mb48 {
  margin-bottom: 48px
}
.u-ml48 {
  margin-left: 48px
}
.u-p48 {
  padding: 48px
}
.u-pt48 {
  padding-top: 48px
}
.u-pr48 {
  padding-right: 48px
}
.u-pb48 {
  padding-bottom: 48px
}
.u-pl48 {
  padding-left: 48px
}
.u-m56 {
  margin: 56px
}
.u-mt56 {
  margin-top: 56px
}
.u-mr56 {
  margin-right: 56px
}
.u-mb56 {
  margin-bottom: 56px
}
.u-ml56 {
  margin-left: 56px
}
.u-p56 {
  padding: 56px
}
.u-pt56 {
  padding-top: 56px
}
.u-pr56 {
  padding-right: 56px
}
.u-pb56 {
  padding-bottom: 56px
}
.u-pl56 {
  padding-left: 56px
}
.u-m64 {
  margin: 64px
}
.u-mt64 {
  margin-top: 64px
}
.u-mr64 {
  margin-right: 64px
}
.u-mb64 {
  margin-bottom: 64px
}
.u-ml64 {
  margin-left: 64px
}
.u-p64 {
  padding: 64px
}
.u-pt64 {
  padding-top: 64px
}
.u-pr64 {
  padding-right: 64px
}
.u-pb64 {
  padding-bottom: 64px
}
.u-pl64 {
  padding-left: 64px
}
.u-m72 {
  margin: 72px
}
.u-mt72 {
  margin-top: 72px
}
.u-mr72 {
  margin-right: 72px
}
.u-mb72 {
  margin-bottom: 72px
}
.u-ml72 {
  margin-left: 72px
}
.u-p72 {
  padding: 72px
}
.u-pt72 {
  padding-top: 72px
}
.u-pr72 {
  padding-right: 72px
}
.u-pb72 {
  padding-bottom: 72px
}
.u-pl72 {
  padding-left: 72px
}
.u-m80 {
  margin: 80px
}
.u-mt80 {
  margin-top: 80px
}
.u-mr80 {
  margin-right: 80px
}
.u-mb80 {
  margin-bottom: 80px
}
.u-ml80 {
  margin-left: 80px
}
.u-p80 {
  padding: 80px
}
.u-pt80 {
  padding-top: 80px
}
.u-pr80 {
  padding-right: 80px
}
.u-pb80 {
  padding-bottom: 80px
}
.u-pl80 {
  padding-left: 80px
}
.u-m88 {
  margin: 88px
}
.u-mt88 {
  margin-top: 88px
}
.u-mr88 {
  margin-right: 88px
}
.u-mb88 {
  margin-bottom: 88px
}
.u-ml88 {
  margin-left: 88px
}
.u-p88 {
  padding: 88px
}
.u-pt88 {
  padding-top: 88px
}
.u-pr88 {
  padding-right: 88px
}
.u-pb88 {
  padding-bottom: 88px
}
.u-pl88 {
  padding-left: 88px
}
.u-m96 {
  margin: 96px
}
.u-mt96 {
  margin-top: 96px
}
.u-mr96 {
  margin-right: 96px
}
.u-mb96 {
  margin-bottom: 96px
}
.u-ml96 {
  margin-left: 96px
}
.u-p96 {
  padding: 96px
}
.u-pt96 {
  padding-top: 96px
}
.u-pr96 {
  padding-right: 96px
}
.u-pb96 {
  padding-bottom: 96px
}
.u-pl96 {
  padding-left: 96px
}
.u-m104 {
  margin: 104px
}
.u-mt104 {
  margin-top: 104px
}
.u-mr104 {
  margin-right: 104px
}
.u-mb104 {
  margin-bottom: 104px
}
.u-ml104 {
  margin-left: 104px
}
.u-p104 {
  padding: 104px
}
.u-pt104 {
  padding-top: 104px
}
.u-pr104 {
  padding-right: 104px
}
.u-pb104 {
  padding-bottom: 104px
}
.u-pl104 {
  padding-left: 104px
}
.u-m112 {
  margin: 112px
}
.u-mt112 {
  margin-top: 112px
}
.u-mr112 {
  margin-right: 112px
}
.u-mb112 {
  margin-bottom: 112px
}
.u-ml112 {
  margin-left: 112px
}
.u-p112 {
  padding: 112px
}
.u-pt112 {
  padding-top: 112px
}
.u-pr112 {
  padding-right: 112px
}
.u-pb112 {
  padding-bottom: 112px
}
.u-pl112 {
  padding-left: 112px
}
.u-m120 {
  margin: 120px
}
.u-mt120 {
  margin-top: 120px
}
.u-mr120 {
  margin-right: 120px
}
.u-mb120 {
  margin-bottom: 120px
}
.u-ml120 {
  margin-left: 120px
}
.u-p120 {
  padding: 120px
}
.u-pt120 {
  padding-top: 120px
}
.u-pr120 {
  padding-right: 120px
}
.u-pb120 {
  padding-bottom: 120px
}
.u-pl120 {
  padding-left: 120px
}
@media screen and (min-width:960px) {
  #l-side, .kv {
    height: 100vh
  }
  .about, .service {
    text-align: left
  }
　.intro01 {
    text-align: left
  }
  .l-content {
    margin-left: 2.5rem;
    margin-right: 2.5rem
  }
	.l-content-line {
    margin-left: 2.5rem;
    margin-right: 2.5rem
  }
   .l-content-line-none {
    margin-left: 2.5rem;
    margin-right: 2.5rem
  }
  #l-header, .menu {
    display: none
  }
  #l-side, .kv__lang, .kv__logo, .kv__nav {
    display: block
  }
  #l-wrap {
    padding: 100px 0 0 200px;
    background: #F9F9F9;
  }
  #l-wrap-top {
    padding: 0 0 10px 0;
    background: #fff;
  }
  #l-side {
    position: fixed;
    width: 200px;
    top: 0;
    left: 0;
    background: #FFF
  }
  .kv__copy .copy__name {
    font-size: 90px;
    letter-spacing: .5rem
  }
  .kv__copy .copy__descriotion {
    font-size: 60px;
    letter-spacing: .4rem
  }
  .kv__logo {
    width: 150px;
    opacity: 0;
    -webkit-animation: fadeIn .3s 2s forwards;
    animation: fadeIn .3s 2s forwards
  }
  .kv__lang {
    opacity: 0;
    -webkit-animation: fadeIn .3s 2s forwards;
    animation: fadeIn .3s 2s forwards
  }
  .about__wrap {
    height: 600px
  }
  .about__content {
    display: flex;
    max-width: 880px;
    align-items: center;
    margin-left: 3rem;
    margin-right: 3rem;
    padding: 40px
  }
  /*.about__description {
    margin-left: 30px;
    padding-left: 30px;
    border-left: 1px solid #000
  }*/
  .about__logo {
    margin: 0
  }
  .about__logo svg {
    width: 140px
  }
  .service {
    margin-bottom: 240px
  }
  .service__section {
    margin-bottom: 100px
  }
  .service__detail {
    position: absolute;
    width: 520px;
    padding: 32px;
    right: 40px;
    bottom: 40px;
    background: #FFF;
    opacity: 0;
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
    transition: .6s 1s;
    box-shadow: 0 0 3px rgba(0, 0, 0, .1)
  }
  .service__image__inner {
    max-width: 960px
  }
  .service__image__inner img {
    width: 100%
  }
  .service__section:nth-of-type(odd) > .service__detail {
    right: auto;
    left: 40px
  }
  .service__section:nth-of-type(odd) > .service__image {
    text-align: right
  }
 .intro01 {
    margin-bottom: 240px
  }
  .intro01__section {
    /*margin-bottom: 100px*/
      margin-bottom: 280px
  }
  .intro01__detail {
    position: absolute;
    width: 700px;
    padding: 32px;
    right: 40px;
    bottom: 40px;
    background: #FFF;
    opacity: 0;
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
    transition: .6s 1s;   
  }
	.intro01__detail p {
		font-size: 16px;
  }
  .intro01__image__inner {
    max-width: 960px
  }
  .intro01__image__inner img {
    width: 100%;
    height: 100%;
  }
/*  .heading-title {
  font-size: 2.5rem;
  margin-bottom: .5rem;
  font-weight: 400;
  text-align: left
}*/
  /*.intro01__section:nth-of-type(odd) > .intro01__detail {
    right: auto;
    left: 450px;
      bottom: -150px
  }*/  
  .intro01__section:nth-of-type(odd) > .intro01__image {
    text-align: right
  }   
  .locations, .tips, .works {
    text-align: left
  }
  .locations__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .locations__list:after {
    content: "";
    width: 32%;
  }
  .locations__item {
    /*width: 32%;
    height: 280px*/
	  width: 50%;
    height: 500px;
  }
	.pad-l {
		padding-left: 20px;
		padding-top: 20px;
  }
	.pad-r {
		padding-right: 20px;
		padding-top: 20px;
  }
	.pad-insta {
		padding-left: 10px;
		padding-top: 10px;
		width: 32%;
        height: 320px
  }
  .works__thumb {
    height: 440px
  }
  .works__thumb:hover:before {
    opacity: 1
  }
  .works__thumb:hover + .works__summary {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
  }
  .works__summary {
    position: absolute;
    text-align: center;
    margin-top: 0;
    z-index: 2;
    top: 50%;
    left: 50%;
    opacity: 0;
    -webkit-transform: translate(-50%, -35%);
    transform: translate(-50%, -35%);
    transition: .3s;
    pointer-events: none
  }
  .contact, .section-title, .team {
    text-align: left
  }
  .contact, .section-title, .about-us {
    text-align: left
  }	
  .works__country, .works__country:before, .works__supervisor, .works__title {
    color: #FFF
  }
  .works__nav {
    position: static;
    margin-top: 24px;
    padding: 0;
    justify-content: center
  }
  .works__nav svg {
    width: 20px;
    fill: #999
  }
  .works__prev {
    margin-right: 24px
  }
  .works__next:hover svg, .works__prev:hover svg {
    fill: #000
  }
  .team__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
  }
  .team__member {
    flex-basis: 48%;
    margin-bottom: 40px
  }
  .team .member__photo {
    height: 300px
  }
  .about-us__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
  }
  .about-us__member {
    flex-basis: 48%;
    margin-bottom: 40px
  }
  .about-us .member__photo {
    height: 300px
  }

  .wpcf7-form dl {
    display: flex
  }
  .wpcf7-form dt {
    flex-basis: 360px;
    margin-bottom: 0
  }
  .wpcf7-form dd {
    flex: 1
  }
  .wpcf7-form dd input[type=text], .wpcf7-form dd input[type=email], .wpcf7-form dd textarea {
    font-size: 20px
  }
  .photography__wrap {
    display: flex;
    justify-content: center;
    align-items: center
  }
  .photography__logo {
    margin-right: 15px
  }
  .photography__info {
    margin-left: 15px
  }
  .spnav {
    display: none
  }
  .section-title {
    font-size: 45px;
    margin-left: 20px;
  }
  #map {
    height: 500px
  }
  #pagetop {
    display: block;
    right: -3%
  }
}
@media screen and (min-width:1281px) {
  #l-header {
    display: none;
  }
  .kv__logo {
    top: 1px;
}
  #l-main-top {
	margin-top: -150px;
}
  .service__detail {
    width: 600px
  }
  .service__image__inner {
    max-width: 1100px
  }
  .intro01__detail {
    width: 900px;

  }
  .intro01__image__inner {
    max-width: 1600px;
	  max-height: 600px;
  }
  .team .member__photo {
    height: 500px
  }
  .about-us .member__photo {
    height: 380px
  }
  .section-title {
    margin-bottom: 4rem;
  }
  #pagetop {
    right: -2%
  }
	.l-content {
    margin-left: 2.5rem;
    margin-right: 12rem
  }
}
@media screen and (min-width:1481px) {
  .kv__logo {
  top: 15px;
}
  .l-content {
    margin-left: 0;
    margin-right: 12rem
  }
  .l-content-line {
    margin-left: 0;
    margin-right: 0
  }
  .l-content-line-none {
    margin-left: 0;
    margin-right: 0
  }	
  #l-main {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto
  }
    #l-main-top {
    /*max-width: 1280px;*/
		max-width: 1500px;
		margin-top: -200px;
    margin-left: auto;
    margin-right: auto
  }
  #pagetop {
    right: -.9%
  }
}
/*@media screen and (max-width:480px) {
  .section-title {
      font-size: 1.2rem;
  }
    .l-header__logo {
        width: 20%;
        height: auto;
  }
    .kv__bg {
        
        height: 100%;
	    top: 0;
    }
}*/
@media screen and (max-width:896px) {
  .section-title {
      font-size: 1.2rem;
  }
    .l-header__logo {
        width: 20%;
        height: auto;
  }
    .kv__bg {
        width: 102%;
        height: 100%;
	    top: 100px
    }
	.intro01__detail p {
  font-size: 12px;
  line-height: 2
}
	.heading-title {
  font-size: 1.2rem;
  margin-bottom: .5rem;
  font-weight: 400;
  text-align: left
}
	.team .member__photo {
    height: 200px;

  }
	.team .member__profile {
  margin-bottom: 16px;
  font-size: 12px;
  line-height: 2
}
	.team .member__name-large {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 900;
}
	.team .member__name-large-j {
  font-size: 18px;
  font-weight: 300;
}
	.team .member__name {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 300
}
	.contact__address {
  font-size: 25px;
}
	.wpcf7-form dt {
  font-size: 16px
}
.wpcf7-form dd {
  font-size: 16px
}    
}
@media screen and (min-width:600px) and (max-width:960px) {
	
	.team .member__photo {
    height: 380px
  }
  .about-us .member__photo {
    height: 380px
  }
}