@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@500&family=Noto+Sans+JP:wght@300;400;500;700&family=Zen+Old+Mincho&display=swap");
*, :after, :before {
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, html, i, iframe, img, ins, kbd, label, legend, li, main, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  border: 0;
  box-sizing: border-box;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: initial
}
article, aside, details, dialog, figcaption, figure, footer, header, main, menu, nav, section {
  display: block
}
audio, canvas, picture, video {
  display: inline-block
}
body {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%
}
ol, ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
  content: "";
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show
}
button, img, input, select, svg, textarea {
  vertical-align: middle
}
button, input, select, textarea {
  background: transparent
}
input::-ms-clear, input::-ms-reveal, input:focus::-ms-clear, input:focus::-ms-reveal {
  visibility: hidden
}
textarea {
  resize: none
}
a {
  color: currentColor;
  text-decoration: none
}
mark {
  background-color: initial;
  color: inherit
}
@keyframes fadeOut {
  0% {
    opacity: 1
  }
  to {
    opacity: 0
  }
}
.swiper-container {
  list-style: none;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding: 0;
  position: relative;
  z-index: 1
}
.swiper-container-no-flexbox .swiper-slide {
  float: left
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column
}
.swiper-wrapper {
  box-sizing: initial;
  display: flex;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%;
  z-index: 1
}
.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translateZ(0)
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap
}
.swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out
}
.swiper-slide {
  flex-shrink: 0;
  height: 100%;
  position: relative;
  transition-property: transform;
  width: 100%
}
.swiper-slide-invisible-blank {
  visibility: hidden
}
.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  transition-property: transform, height
}
.swiper-container-3d {
  perspective: 1200px
}
.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
  transform-style: preserve-3d
}
.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
  touch-action: pan-y
}
.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
  touch-action: pan-x
}
.swiper-button-next, .swiper-button-prev {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 27px 44px;
  cursor: pointer;
  height: 44px;
  margin-top: -22px;
  position: absolute;
  top: 50%;
  width: 27px;
  z-index: 10
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  cursor: auto;
  opacity: .35;
  pointer-events: none
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");
  left: 10px;
  right: auto
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");
  left: auto;
  right: 10px
}
.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")
}
.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")
}
.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")
}
.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")
}
.swiper-button-lock {
  display: none
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transform: translateZ(0);
  transition: opacity .3s;
  z-index: 10
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}
.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%
}
.swiper-pagination-bullets-dynamic {
  font-size: 0;
  overflow: hidden
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  position: relative;
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(.33)
}
.swiper-pagination-bullet {
  background: #000;
  border-radius: 100%;
  display: inline-block;
  height: 8px;
  opacity: .2;
  width: 8px
}
button.swiper-pagination-bullet {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}
.swiper-pagination-bullet-active {
  background: #007aff;
  opacity: 1
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0, -50%, 0)
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  display: block;
  margin: 6px 0
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: top .2s, -webkit-transform .2s;
  transition: transform .2s, top .2s;
  transition: transform .2s, top .2s, -webkit-transform .2s
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: left .2s, -webkit-transform .2s;
  transition: transform .2s, left .2s;
  transition: transform .2s, left .2s, -webkit-transform .2s
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: right .2s, -webkit-transform .2s;
  transition: transform .2s, right .2s;
  transition: transform .2s, right .2s, -webkit-transform .2s
}
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, .25);
  position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(0);
  transform-origin: left top;
  width: 100%
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}
.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  height: 4px;
  left: 0;
  top: 0;
  width: 100%
}
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  height: 100%;
  left: 0;
  top: 0;
  width: 4px
}
.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff
}
.swiper-pagination-progressbar.swiper-pagination-white {
  background: hsla(0, 0%, 100%, .25)
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff
}
.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000
}
.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, .25)
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000
}
.swiper-pagination-lock {
  display: none
}
.swiper-scrollbar {
  background: rgba(0, 0, 0, .1);
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none
}
.swiper-container-horizontal > .swiper-scrollbar {
  bottom: 3px;
  height: 5px;
  left: 1%;
  position: absolute;
  width: 98%;
  z-index: 50
}
.swiper-container-vertical > .swiper-scrollbar {
  height: 98%;
  position: absolute;
  right: 3px;
  top: 1%;
  width: 5px;
  z-index: 50
}
.swiper-scrollbar-drag {
  background: rgba(0, 0, 0, .5);
  border-radius: 10px;
  height: 100%;
  left: 0;
  position: relative;
  top: 0;
  width: 100%
}
.swiper-scrollbar-cursor-drag {
  cursor: move
}
.swiper-scrollbar-lock {
  display: none
}
.swiper-zoom-container {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  height: 100%;
  justify-content: center;
  text-align: center;
  width: 100%
}
.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain
}
.swiper-slide-zoomed {
  cursor: move
}
.swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s steps(12) infinite;
  height: 42px;
  left: 50%;
  margin-left: -21px;
  margin-top: -21px;
  position: absolute;
  top: 50%;
  transform-origin: 50%;
  width: 42px;
  z-index: 10
}
.swiper-lazy-preloader:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 100%;
  content: "";
  display: block;
  height: 100%;
  width: 100%
}
.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")
}
@keyframes swiper-preloader-spin {
  to {
    transform: rotate(1turn)
  }
}
.swiper-container .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-cube {
  overflow: visible
}
.swiper-container-cube .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: 100%;
  pointer-events: none;
  transform-origin: 0 0;
  visibility: hidden;
  width: 100%;
  z-index: 1
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}
.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 0
}
.swiper-container-cube .swiper-cube-shadow {
  background: #000;
  bottom: 0;
  filter: blur(50px);
  height: 100%;
  left: 0;
  opacity: .6;
  position: absolute;
  width: 100%;
  z-index: 0
}
.swiper-container-flip {
  overflow: visible
}
.swiper-container-flip .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  pointer-events: none;
  z-index: 1
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 0
}
.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 1200px
}
body {
  color: #222;
  font-family: Noto Sans JP, 游ゴシック Medium, Yu Gothic Medium, yugothic, Yu Gothic, ヒラギノ角ゴシック, Hiragino Sans, sans-serif;
  letter-spacing: 0;
  line-height: 1
}
svg {
  height: 100%
}
img, picture, svg {
  width: 100%
}
.step {
  opacity: 0;
  transition: opacity 1s
}
.step.show {
  opacity: 1
}
.heading-01 {
  font-weight: 500;
  letter-spacing: .1em
}
.btn {
  height: 200px;
  margin-bottom: 50px;
  width: 200px
}
.btn, .btn span {
  display: block;
  position: relative
}
.btn span {
  color: #000;
  line-height: 200px;
  text-align: center;
  transition: all .3s ease;
  z-index: 2
}
.btn svg {
  height: 200px;
  left: 0;
  position: absolute;
  top: 0;
  width: 200px;
  z-index: 1
}
.btn svg path {
  fill: #000;
  opacity: 0;
  stroke: #000;
  stroke-miterlimit: 10;
  transform: scale(.6, .4) skew(10deg, 5deg);
  transform-origin: center center 0;
  transition: all .3s ease
}
.btn:hover span {
  color: #fff;
  transition: all .7s ease
}
.btn:hover svg path {
  opacity: 1;
  transform: scale(1) skew(0, 0);
  transition: all .7s ease
}
div[data-scroll-container] {
  min-height: 100vh;
  overflow: hidden
}
.cursor {
  align-items: center;
  border: 1px solid rgba(0, 0, 0, .5);
  border-radius: 50%;
  display: flex;
  height: 100px;
  justify-content: center;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  text-align: center;
  top: 0;
  transition: all .5s ease;
  width: 100px;
  z-index: 99
}
.cursor._link {
  opacity: 1
}
.cursor._drag {
  background: #fff;
  border: 1px solid #fff;
  opacity: 1
}
.cursor._drag:after {
  color: #000;
  content: "DRAG";
  display: block;
  font-size: 16px;
  text-align: center
}
.c-arrow {
  align-items: center;
  border-radius: 50%;
  display: flex;
  justify-content: center
}
.c-arrow.--black .c-arrow-icon:before {
  border-color: transparent #222 transparent transparent
}
.c-arrow.--black .c-arrow-icon:after {
  background: #222
}
.c-arrow-icon {
  position: relative;
  transform: rotate(180deg)
}
.c-arrow-icon:before {
  border-color: transparent #fff transparent transparent;
  border-style: solid;
  height: 0;
  left: 0;
  top: 0;
  width: 0
}
.c-arrow-icon:after, .c-arrow-icon:before {
  content: "";
  display: block;
  position: absolute
}
.c-arrow-icon:after {
  background: #fff;
  right: 0
}
.c-txt {
  color: #222;
  letter-spacing: .05em
}
.c-txt small {
  display: block
}
.c-txt em, .c-txt strong {
  font-weight: 500
}
.c-txt em {
  display: block
}
.c-txt-head {
  color: #222
}
.c-head-sec-01, .c-txt-head {
  font-weight: 500;
  letter-spacing: .05em
}
.c-head-sec-01 {
  color: #a79363;
  line-height: 1.25;
  position: relative
}
.c-head-sec-01-num {
  display: block;
  font-family: Barlow, Noto Sans JP, sans-serif;
  line-height: 1
}
.c-head-sec-01-num em {
  display: inline-block;
  letter-spacing: .1em
}
.c-head-sec-01-txt {
  display: block
}
.c-head-sec-02 {
  align-items: center;
  color: #222;
  display: flex;
  font-weight: 500;
  position: relative
}
.c-head-sec-02.big {
    font-size: 44px;
    letter-spacing: .05em;
    line-height: 1.25;
    padding-left: 15px;
    color: #afafaf;
  }
.c-head-sec-02:before {
  background: #a79363;
  content: "";
  display: block;
  left: 0;
  position: absolute
}
.c-head-sec-02 small {
  font-weight: 400
}
.c-head-sec-02 small.-m {
  font-weight: 500
}
.c-head-sec-02 a {
  border-bottom: 1px solid #444
}
.c-head-sec-02.-sb {
  justify-content: space-between
}
.c-breadcrumb {
  display: flex;
  flex-wrap: wrap
}
.c-breadcrumb-item {
  color: #999;
  display: inline-block;
  font-family: Barlow, Noto Sans JP, sans-serif;
  font-weight: 500;
  letter-spacing: .05em;
  line-height: 1.6666666667;
  position: relative
}
.c-breadcrumb-item a {
  color: #a79363
}
.c-breadcrumb-item:nth-child(n+2):before {
  content: "";
  display: block;
  position: absolute;
  transform: rotate(-45deg)
}
.c-icon-num {
  align-items: center;
  background: #222;
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  font-family: Barlow, Noto Sans JP, sans-serif;
  font-weight: 500;
  justify-content: center;
  letter-spacing: .05em;
  line-height: 1
}
.l-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%
}
.header {
  z-index: 9
}
.header-list {
  background: #222
}
.header-list-link {
  display: block;
  height: 100%
}
.header-list-txt {
  color: #fff;
  font-weight: 500;
  letter-spacing: .05em
}
.contact .header-logo, .sub .header-logo {
  opacity: 1;
  visibility: visible;
  z-index: 1
}
.footer-corp {
  text-align: center
}
.footer-copy {
  font-family: Zen Old Mincho, serif;
  letter-spacing: .025em
}
.footer .footer-logo-pt_izumi_pt_asahi {
  text-align: center
}
.footer .footer-logo-pt_izumi_pt_asahi a {
  display: block
}
.footer .footer-logo-pt_izumi_pt_asahi img {
  height: auto
}
.box-sub-header {
  background-repeat: no-repeat;
  background-size: 100% auto
}
.box-sub-header-breadcrumb, .box-sub-header-inner {
  position: relative
}
.box-sub-header-ttl-en {
  display: block;
  font-family: Barlow, Noto Sans JP, sans-serif;
  font-weight: 500;
  letter-spacing: .12em;
  line-height: 1;
  overflow: hidden
}
.box-sub-header-ttl-en.-tm01 svg {
  width: auto
}
.box-sub-header-ttl-txt {
  display: block !important
}
.box-sub-header-ttl-txt svg {
  max-width: 100%;
  width: auto
}
.box-sub-header-ttl-txt svg path {
  fill: #222;
  fill-rule: evenodd
}
.box-sub-header-ttl-txt .h1txt {
  font-family: Noto Sans JP, sans-serif;
  font-size:40px;
}
.an-spanTxt span {
  display: inline-block
}
.an-spanTxt.show span, .an-spanTxt.show svg g {
  opacity: 1;
  transform: translate(0)
}
.an-spanTxt g, .an-spanTxt span {
  opacity: 0
}
.an-spanTxt g:first-child, .an-spanTxt span:first-child {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .53s, transform .7s cubic-bezier(.39, .575, .565, 1) .53s;
  transition-delay: .53s
}
.an-spanTxt g:nth-child(2), .an-spanTxt span:nth-child(2) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .56s, transform .7s cubic-bezier(.39, .575, .565, 1) .56s;
  transition-delay: .56s
}
.an-spanTxt g:nth-child(3), .an-spanTxt span:nth-child(3) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .59s, transform .7s cubic-bezier(.39, .575, .565, 1) .59s;
  transition-delay: .59s
}
.an-spanTxt g:nth-child(4), .an-spanTxt span:nth-child(4) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .62s, transform .7s cubic-bezier(.39, .575, .565, 1) .62s;
  transition-delay: .62s
}
.an-spanTxt g:nth-child(5), .an-spanTxt span:nth-child(5) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .65s, transform .7s cubic-bezier(.39, .575, .565, 1) .65s;
  transition-delay: .65s
}
.an-spanTxt g:nth-child(6), .an-spanTxt span:nth-child(6) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .68s, transform .7s cubic-bezier(.39, .575, .565, 1) .68s;
  transition-delay: .68s
}
.an-spanTxt g:nth-child(7), .an-spanTxt span:nth-child(7) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .71s, transform .7s cubic-bezier(.39, .575, .565, 1) .71s;
  transition-delay: .71s
}
.an-spanTxt g:nth-child(8), .an-spanTxt span:nth-child(8) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .74s, transform .7s cubic-bezier(.39, .575, .565, 1) .74s;
  transition-delay: .74s
}
.an-spanTxt g:nth-child(9), .an-spanTxt span:nth-child(9) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .77s, transform .7s cubic-bezier(.39, .575, .565, 1) .77s;
  transition-delay: .77s
}
.an-spanTxt g:nth-child(10), .an-spanTxt span:nth-child(10) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .8s, transform .7s cubic-bezier(.39, .575, .565, 1) .8s;
  transition-delay: .8s
}
.an-spanTxt g:nth-child(11), .an-spanTxt span:nth-child(11) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .83s, transform .7s cubic-bezier(.39, .575, .565, 1) .83s;
  transition-delay: .83s
}
.an-spanTxt g:nth-child(12), .an-spanTxt span:nth-child(12) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .86s, transform .7s cubic-bezier(.39, .575, .565, 1) .86s;
  transition-delay: .86s
}
.an-spanTxt g:nth-child(13), .an-spanTxt span:nth-child(13) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .89s, transform .7s cubic-bezier(.39, .575, .565, 1) .89s;
  transition-delay: .89s
}
.an-spanTxt g:nth-child(14), .an-spanTxt span:nth-child(14) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .92s, transform .7s cubic-bezier(.39, .575, .565, 1) .92s;
  transition-delay: .92s
}
.an-spanTxt g:nth-child(15), .an-spanTxt span:nth-child(15) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .95s, transform .7s cubic-bezier(.39, .575, .565, 1) .95s;
  transition-delay: .95s
}
.an-spanTxt g:nth-child(16), .an-spanTxt span:nth-child(16) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .98s, transform .7s cubic-bezier(.39, .575, .565, 1) .98s;
  transition-delay: .98s
}
.an-spanTxt g:nth-child(17), .an-spanTxt span:nth-child(17) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.01s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.01s;
  transition-delay: 1.01s
}
.an-spanTxt g:nth-child(18), .an-spanTxt span:nth-child(18) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.04s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.04s;
  transition-delay: 1.04s
}
.an-spanTxt g:nth-child(19), .an-spanTxt span:nth-child(19) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.07s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.07s;
  transition-delay: 1.07s
}
.an-spanTxt g:nth-child(20), .an-spanTxt span:nth-child(20) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.1s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.1s;
  transition-delay: 1.1s
}
.an-spanTxt g:nth-child(21), .an-spanTxt span:nth-child(21) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.13s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.13s;
  transition-delay: 1.13s
}
.an-spanTxt g:nth-child(22), .an-spanTxt span:nth-child(22) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.16s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.16s;
  transition-delay: 1.16s
}
.an-spanTxt g:nth-child(23), .an-spanTxt span:nth-child(23) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.19s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.19s;
  transition-delay: 1.19s
}
.an-spanTxt g:nth-child(24), .an-spanTxt span:nth-child(24) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.22s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.22s;
  transition-delay: 1.22s
}
.an-spanTxt g:nth-child(25), .an-spanTxt span:nth-child(25) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) 1.25s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.25s;
  transition-delay: 1.25s
}
.box-sub-lead-inner {
  background: #f4f3ef;
  position: relative
}
.box-sub-lead-inner:before {
  background: #f4f3ef;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: translate(-100%);
  width: 100vw
}
.box-sub-lead-item-icon {
  vertical-align: text-bottom
}
.top-mv {
  background-position: 50%;
  background-size: cover;
  overflow: hidden;
  width: 100%
}
.top-mv, .top-mv-box {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative
}
.top-mv-logo {
  position: relative;
  z-index: 2
}
.top-mv-bird {
  position: absolute;
  z-index: 1
}
.top-mv-scroll {
  align-items: center;
  display: flex;
  position: absolute;
  transform: rotate(90deg)
}
.top-mv-scroll-txt {
  color: #fff;
  font-family: Barlow, sans-serif;
  font-weight: 500
}
.top-mv-scroll-line {
  background: hsla(0, 0%, 95.7%, .5);
  overflow: hidden;
  position: relative
}
.top-mv-scroll-line:after {
  background: #fff;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1
}
.top-cm {
  background: #f2f0e8
}
.top-cm-inner {
  margin: 0 auto;
  position: relative
}
.top-cm-ttl {
  position: relative;
  z-index: 2
}
.top-cm-ttl-img {
  display: block
}
.top-cm-lbl {
  position: absolute;
  z-index: 1
}
.top-cm-movie {
  overflow: hidden;
  position: relative
}
.top-cm-movie video {
  cursor: pointer;
  width: 100%
}
.top-cm-movie-bg {
  left: 0;
  position: absolute;
  top: 0;
  transition: all .7s ease;
  z-index: 1
}
.top-cm-movie-bg.off {
  opacity: 0
}
.top-cm-movie-icon {
  left: 0;
  margin: 0 auto;
  pointer-events: none;
  position: absolute;
  right: 0;
  transition: all .7s ease;
  z-index: 2
}
.top-cm-movie-icon.off {
  opacity: 0
}
.top-cm-cast {
  position: relative
}
.top-cm-cast-lbl {
  position: absolute;
  z-index: 1
}
.top-cm-cast-list {
  position: relative;
  z-index: 2
}
.top-cm-cast-ttl {
  font-weight: 500;
  letter-spacing: .025em
}
.top-cm-cast-txt {
  color: #646464;
  letter-spacing: .025em
}
.top-cm-link {
  align-items: center;
  background: #fff;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 3
}
.top-cm-link-txt {
  display: block;
  font-weight: 500
}
.top-hl {
  height: 100vh;
  position: relative;
  width: 100%
}
.top-hl-lbl {
  background: #fff;
  position: absolute;
  z-index: 8
}
.top-hl-lbl-img {
  display: block
}
.top-hl-lbl-img path {
  fill: #222
}
.top-hl-lbl-img-01 {
  display: block
}
.top-hl-lbl-img-01 path {
  fill: #222
}
.top-hl-lbl-img-02 {
  display: block
}
.top-hl-lbl-img-02 path {
  fill: #222
}
.top-hl-box {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 7
}
.top-hl-ttl {
  color: #fff;
  text-align: center
}
.top-hl-ttl-sub {
  display: block
}
.top-hl-ttl-main {
  display: block;
  margin: 0 auto
}
.top-hl-slider {
  height: 100%;
  overflow: hidden;
  width: 100%
}
.top-hl-img {
  background-position: 50%;
  background-size: cover;
  height: 100%;
  width: 100%
}
.top-sc-bg {
  background: #f4f3ef;
  position: relative
}
.top-sc-lbl {
  position: absolute;
  z-index: 3
}
.top-sc-content {
  position: relative
}
.top-sc-bird, .top-sc-bird-01, .top-sc-bird-02 {
  position: absolute;
  z-index: 3
}
.top-sc-border {
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0
}
.top-sc-top {
  background: rgba(167, 147, 99, .7);
  color: #fff;
  position: relative
}
.top-sc-top-ttl {
  font-family: Barlow, sans-serif;
  letter-spacing: .05em
}
.top-sc-top-lbl {
  align-items: center;
  display: flex;
  font-weight: 700;
  letter-spacing: .1em
}
.top-sc-top-link {
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1
}
.top-sc-middle {
  background: rgba(0, 0, 0, .5);
  color: #fff;
  position: relative;
  z-index: 2
}
.top-sc-middle-ttl {
  text-align: center
}
.top-sc-middle-txt {
  letter-spacing: .025em
}
.top-sc-middle-lbl {
  align-items: center;
  display: flex;
  font-weight: 700;
  justify-content: center
}
.top-sc-middle-link {
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1
}
.top-sc-bottom {
  position: relative;
  z-index: 1
}
.top-sc-bottom-item {
  background: hsla(0, 0%, 100%, .5);
  margin: 0 auto
}
.top-sc-bottom-ttl {
  font-family: Barlow, sans-serif;
  letter-spacing: .05em;
  text-align: center
}
.top-sc-bottom-lbl {
  align-items: center;
  display: flex;
  font-weight: 700;
  justify-content: center
}
.top-sc-bottom-link {
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1
}
.top-sc-illust {
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  z-index: 1
}
.top-sc-illust img {
  display: block;
  height: 100%;
  opacity: .2;
  width: 100%
}
.top-sc-inner {
  margin: 0 auto;
  position: relative;
  z-index: 2
}
.top-sc-ttl-img {
  display: block
}
.top-sc-txt {
  font-weight: 500;
  letter-spacing: .025em
}
.top-sc-box-ttl {
  font-weight: 500;
  letter-spacing: .05em
}
.top-sc-box-txt {
  letter-spacing: .025em
}
.top-sc-box-txt-dot:before {
  background: #222;
  border-radius: 50%;
  content: "";
  display: inline-block
}
.top-le-inner {
  margin: 0 auto;
  position: relative
}
.top-le-ttl-img {
  display: block
}
.top-le-bird, .top-le-lbl {
  position: absolute
}
.top-le-item, .top-le-list {
  position: relative
}
.top-le-box-no {
  font-family: Barlow, sans-serif
}
.top-le-box-ttl {
  font-weight: 500
}
.top-le-slider .swiper-slide {
  overflow: hidden
}
.top-le-slider .swiper-slide img, .top-le-slider .swiper-slide picture {
  height: 100%
}
.top-le-slider .swiper-button-prev {
  align-items: center;
  background-image: none;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center
}
.top-le-slider .swiper-button-prev:after {
  content: none
}
.top-le-slider .swiper-button-next {
  align-items: center;
  background-image: none;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center
}
.top-le-slider .swiper-button-next:after {
  content: none
}
.top-le-slider .swiper-button-next .swiper-button-arrow {
  transform: rotate(180deg)
}
.top-le-slider .swiper-button-arrow {
  position: relative
}
.top-le-slider .swiper-button-arrow:before {
  border-color: transparent #fff transparent transparent;
  border-style: solid;
  content: "";
  display: block;
  height: 0;
  left: 0;
  position: absolute;
  top: 0;
  width: 0
}
.top-le-slider .swiper-button-arrow:after {
  background: #fff;
  content: "";
  display: block;
  position: absolute;
  right: 0
}
.top-le-slider .swiper-counter {
  color: #fff;
  font-family: Barlow, sans-serif;
  position: absolute
}
.top-le-slider .swiper-counter span {
  letter-spacing: .05em
}
.top-ip-inner, .top-ip-top {
  position: relative
}
.top-ip-inner {
  margin: 0 auto
}
.top-ip-ttl-img {
  display: block
}
.top-ip-lbl {
  position: absolute
}
.top-ip-box {
  background: #f4f3ef;
  margin: 0 auto
}
.top-ip-box-ttl {
  font-weight: 500
}
.top-ip-box-txt {
  letter-spacing: .025em
}
.top-ip-bottom {
  margin: 0 auto
}
.top-ip-link {
  align-items: center;
  display: flex;
  justify-content: flex-end
}
.top-ip-link-txt {
  display: block;
  font-weight: 500;
  letter-spacing: .1em
}
.top-ip-link-icon {
  align-items: center;
  border-radius: 50%;
  box-sizing: border-box;
  display: block;
  display: flex;
  justify-content: center
}
.top-ip-link-icon-arrow {
  display: block;
  position: relative
}
.top-ip-link-icon-arrow:before {
  border-color: transparent transparent transparent #222;
  border-style: solid;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 0
}
.top-ip-link-icon-arrow:after {
  background: #222;
  content: "";
  display: block;
  left: 0;
  position: absolute
}
.top-ip-img {
  overflow: hidden
}
.top-ip-img-map {
  margin: 0 auto
}
.top-ip-txt {
  letter-spacing: .025em
}
.top-ms {
  overflow: hidden;
  position: relative
}
.top-ms-bg img, .top-ms-bg picture {
  display: block;
  height: 100%
}
.top-ms-inner {
  align-items: center;
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1
}
.top-ms-ttl-en {
  color: #fff;
  display: inline-block;
  font-family: Barlow, sans-serif;
  font-weight: 500;
  position: relative
}
.top-ms-ttl-en:after {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute
}
.top-ms-ttl-img, .top-ms-txt {
  display: block
}
body {
  animation: fadeIn 1s cubic-bezier(.39, .575, .565, 1) .5s forwards;
  opacity: 0
}
body.overflow-hidden {
  overflow-y: hidden
}
.header {
  animation: fadeIn 1s cubic-bezier(.39, .575, .565, 1) 1.5s forwards;
  opacity: 0
}
.top-mv-logo {
  animation: fadeIn 2.5s cubic-bezier(.39, .575, .565, 1) .5s forwards;
  opacity: 0
}
.top-mv-bird {
  overflow: hidden
}
.top-mv-bird svg {
  animation: bird 2.7s cubic-bezier(.39, .575, .565, 1) forwards;
  opacity: 0;
  transform: translate(400px, 500px) rotate(-45deg)
}
.top-mv-scroll {
  animation: fadeIn 1s cubic-bezier(.39, .575, .565, 1) 1.8s forwards;
  opacity: 0
}
.top-mv-scroll-line:after {
  animation: scroll 2.4s cubic-bezier(.54, 0, 0, .99) infinite
}
@keyframes fadeIn {
  0% {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes bird {
  0% {
    opacity: 0;
    transform: translate(400px, 500px) rotate(-45deg)
  }
  30% {
    opacity: 0
  }
  80% {
    opacity: 1
  }
  to {
    opacity: 1;
    transform: translate(0) rotate(0)
  }
}
@keyframes scroll {
  0% {
    transform: translate(-100%)
  }
  85% {
    transform: translate(98%)
  }
  to {
    transform: translate(100%)
  }
}
.top-sc-box-wrap .top-sc-box-01, .top-sc-box-wrap .top-sc-box-02, .top-sc-box-wrap .top-sc-box-03, .top-sc-box-wrap .top-sc-box-04 {
  opacity: 0
}
.top-sc-box-wrap.show .top-sc-box-01, .top-sc-box-wrap.show .top-sc-box-02, .top-sc-box-wrap.show .top-sc-box-03, .top-sc-box-wrap.show .top-sc-box-04 {
  opacity: 1 !important;
  transform: translate(0) !important
}
.top-sc-icon.show .g-1, .top-sc-icon.show .g-2, .top-sc-icon.show .g-3, .top-sc-icon.show .g-4 {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important
}
.top-sc-icon.show .l-x {
  opacity: 1 !important
}
.step-01 {
  transition: opacity .6s cubic-bezier(.215, .61, .355, 1) .2s, transform .8s cubic-bezier(.215, .61, .355, 1) .2s
}
.step-01-sp.show, .step-01.show, .step-02.show, .top-le-list.show:after, .top-sc-box-icon.show .l-sp {
  opacity: 1 !important;
  transform: translate(0) !important
}
.top-le-box-no {
  opacity: 0;
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .08s, transform 1s cubic-bezier(.39, .575, .565, 1) .08s
}
.top-le-box-no.show {
  opacity: 1;
  transform: translate(0)
}
.top-hl-lbl {
  opacity: 0;
  transition: all .75s cubic-bezier(.39, .575, .565, 1) .5s
}
.top-hl-lbl.show {
  opacity: 1
}
.top-hl-lbl-img-01.show svg g, .top-hl-lbl-img-02.show svg g, .top-hl-lbl-img.show svg g {
  opacity: 1;
  transform: translate(0)
}
.top-hl-lbl-img-01 svg g, .top-hl-lbl-img-02 svg g, .top-hl-lbl-img svg g {
  opacity: 0
}
.top-hl-lbl-img-01 svg g:first-child, .top-hl-lbl-img-02 svg g:first-child, .top-hl-lbl-img svg g:first-child {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .43s, transform .7s cubic-bezier(.39, .575, .565, 1) .43s
}
.top-hl-lbl-img-01 svg g:nth-child(2), .top-hl-lbl-img-02 svg g:nth-child(2), .top-hl-lbl-img svg g:nth-child(2) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .46s, transform .7s cubic-bezier(.39, .575, .565, 1) .46s
}
.top-hl-lbl-img-01 svg g:nth-child(3), .top-hl-lbl-img-02 svg g:nth-child(3), .top-hl-lbl-img svg g:nth-child(3) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .49s, transform .7s cubic-bezier(.39, .575, .565, 1) .49s
}
.top-hl-lbl-img-01 svg g:nth-child(4), .top-hl-lbl-img-02 svg g:nth-child(4), .top-hl-lbl-img svg g:nth-child(4) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .52s, transform .7s cubic-bezier(.39, .575, .565, 1) .52s
}
.top-hl-lbl-img-01 svg g:nth-child(5), .top-hl-lbl-img-02 svg g:nth-child(5), .top-hl-lbl-img svg g:nth-child(5) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .55s, transform .7s cubic-bezier(.39, .575, .565, 1) .55s
}
.top-hl-lbl-img-01 svg g:nth-child(6), .top-hl-lbl-img-02 svg g:nth-child(6), .top-hl-lbl-img svg g:nth-child(6) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .58s, transform .7s cubic-bezier(.39, .575, .565, 1) .58s
}
.top-hl-lbl-img-01 svg g:nth-child(7), .top-hl-lbl-img-02 svg g:nth-child(7), .top-hl-lbl-img svg g:nth-child(7) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .61s, transform .7s cubic-bezier(.39, .575, .565, 1) .61s
}
.top-hl-lbl-img-01 svg g:nth-child(8), .top-hl-lbl-img-02 svg g:nth-child(8), .top-hl-lbl-img svg g:nth-child(8) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .64s, transform .7s cubic-bezier(.39, .575, .565, 1) .64s
}
.top-hl-lbl-img-01 svg g:nth-child(9), .top-hl-lbl-img-02 svg g:nth-child(9), .top-hl-lbl-img svg g:nth-child(9) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .67s, transform .7s cubic-bezier(.39, .575, .565, 1) .67s
}
.top-hl-lbl-img-01 svg g:nth-child(10), .top-hl-lbl-img-02 svg g:nth-child(10), .top-hl-lbl-img svg g:nth-child(10) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .7s, transform .7s cubic-bezier(.39, .575, .565, 1) .7s
}
.top-hl-lbl-img-01 svg g:nth-child(11), .top-hl-lbl-img-02 svg g:nth-child(11), .top-hl-lbl-img svg g:nth-child(11) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .73s, transform .7s cubic-bezier(.39, .575, .565, 1) .73s
}
.top-hl-lbl-img-01 svg g:nth-child(12), .top-hl-lbl-img-02 svg g:nth-child(12), .top-hl-lbl-img svg g:nth-child(12) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .76s, transform .7s cubic-bezier(.39, .575, .565, 1) .76s
}
.top-hl-lbl-img-01 svg g:nth-child(13), .top-hl-lbl-img-02 svg g:nth-child(13), .top-hl-lbl-img svg g:nth-child(13) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .79s, transform .7s cubic-bezier(.39, .575, .565, 1) .79s
}
.top-hl-lbl-img-01 svg g:nth-child(14), .top-hl-lbl-img-02 svg g:nth-child(14), .top-hl-lbl-img svg g:nth-child(14) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .82s, transform .7s cubic-bezier(.39, .575, .565, 1) .82s
}
.top-hl-lbl-img-01 svg g:nth-child(15), .top-hl-lbl-img-02 svg g:nth-child(15), .top-hl-lbl-img svg g:nth-child(15) {
  transition: opacity .2s cubic-bezier(.39, .575, .565, 1) .85s, transform .7s cubic-bezier(.39, .575, .565, 1) .85s
}
.top-le-box-ttl.show span {
  opacity: 1;
  transform: translate(0)
}
.top-le-box-ttl span {
  display: inline-block;
  opacity: 0
}
.top-le-box-ttl span:first-child {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .08s, transform 1s cubic-bezier(.39, .575, .565, 1) .08s
}
.top-le-box-ttl span:nth-child(2) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .16s, transform 1s cubic-bezier(.39, .575, .565, 1) .16s
}
.top-le-box-ttl span:nth-child(3) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .24s, transform 1s cubic-bezier(.39, .575, .565, 1) .24s
}
.top-le-box-ttl span:nth-child(4) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .32s, transform 1s cubic-bezier(.39, .575, .565, 1) .32s
}
.top-le-box-ttl span:nth-child(5) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .4s, transform 1s cubic-bezier(.39, .575, .565, 1) .4s
}
.top-le-box-ttl span:nth-child(6) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .48s, transform 1s cubic-bezier(.39, .575, .565, 1) .48s
}
.top-le-box-ttl span:nth-child(7) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .56s, transform 1s cubic-bezier(.39, .575, .565, 1) .56s
}
.top-le-box-ttl span:nth-child(8) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .64s, transform 1s cubic-bezier(.39, .575, .565, 1) .64s
}
.top-le-box-ttl span:nth-child(9) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .72s, transform 1s cubic-bezier(.39, .575, .565, 1) .72s
}
.top-le-box-txt.show span span {
  opacity: 1;
  transform: translate(0)
}
.top-le-box-txt > span {
  display: block
}
.top-le-box-txt > span span {
  display: inline-block;
  opacity: 0
}
.top-le-box-txt > span span:first-child {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .05s, transform .7s cubic-bezier(.39, .575, .565, 1) .05s
}
.top-le-box-txt > span span:nth-child(2) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .1s, transform .7s cubic-bezier(.39, .575, .565, 1) .1s
}
.top-le-box-txt > span span:nth-child(3) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .15s, transform .7s cubic-bezier(.39, .575, .565, 1) .15s
}
.top-le-box-txt > span span:nth-child(4) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .2s, transform .7s cubic-bezier(.39, .575, .565, 1) .2s
}
.top-le-box-txt > span span:nth-child(5) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .25s, transform .7s cubic-bezier(.39, .575, .565, 1) .25s
}
.top-le-box-txt > span span:nth-child(6) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .3s, transform .7s cubic-bezier(.39, .575, .565, 1) .3s
}
.top-le-box-txt > span span:nth-child(7) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .35s, transform .7s cubic-bezier(.39, .575, .565, 1) .35s
}
.top-le-box-txt > span span:nth-child(8) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .4s, transform .7s cubic-bezier(.39, .575, .565, 1) .4s
}
.top-le-box-txt > span span:nth-child(9) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .45s, transform .7s cubic-bezier(.39, .575, .565, 1) .45s
}
.top-le-box-txt > span span:nth-child(10) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .5s, transform .7s cubic-bezier(.39, .575, .565, 1) .5s
}
.top-le-box-txt > span span:nth-child(11) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .55s, transform .7s cubic-bezier(.39, .575, .565, 1) .55s
}
.top-le-box-txt > span span:nth-child(12) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .6s, transform .7s cubic-bezier(.39, .575, .565, 1) .6s
}
.top-le-box-txt > span span:nth-child(13) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .65s, transform .7s cubic-bezier(.39, .575, .565, 1) .65s
}
.top-le-box-txt > span span:nth-child(14) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .7s, transform .7s cubic-bezier(.39, .575, .565, 1) .7s
}
.top-le-box-txt > span span:nth-child(15) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .75s, transform .7s cubic-bezier(.39, .575, .565, 1) .75s
}
.top-le-box-txt > span span:nth-child(16) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .8s, transform .7s cubic-bezier(.39, .575, .565, 1) .8s
}
.top-le-box-txt > span span:nth-child(17) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .85s, transform .7s cubic-bezier(.39, .575, .565, 1) .85s
}
.top-le-box-txt > span span:nth-child(18) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .9s, transform .7s cubic-bezier(.39, .575, .565, 1) .9s
}
.top-le-box-txt > span span:nth-child(19) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .95s, transform .7s cubic-bezier(.39, .575, .565, 1) .95s
}
.top-le-box-txt > span span:nth-child(20) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1s, transform .7s cubic-bezier(.39, .575, .565, 1) 1s
}
.top-le-box-txt > span span:nth-child(21) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.05s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.05s
}
.top-le-box-txt > span span:nth-child(22) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.1s, transform .7s cubic-bezier(.39, .575, .565, 1) 1.1s
}
.top-ms-ttl-en.show span {
  opacity: 1;
  transform: translate(0)
}
.top-ms-ttl-en.show:after {
  width: 100%
}
.top-ms-ttl-en span {
  display: inline-block;
  opacity: 0
}
.top-ms-ttl-en span:first-child {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .1s, transform .75s cubic-bezier(.39, .575, .565, 1) .1s
}
.top-ms-ttl-en span:nth-child(2) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .2s, transform .75s cubic-bezier(.39, .575, .565, 1) .2s
}
.top-ms-ttl-en span:nth-child(3) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .3s, transform .75s cubic-bezier(.39, .575, .565, 1) .3s
}
.top-ms-ttl-en span:nth-child(4) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .4s, transform .75s cubic-bezier(.39, .575, .565, 1) .4s
}
.top-ms-ttl-en span:nth-child(5) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .5s, transform .75s cubic-bezier(.39, .575, .565, 1) .5s
}
.top-ms-ttl-en span:nth-child(6) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .6s, transform .75s cubic-bezier(.39, .575, .565, 1) .6s
}
.top-ms-ttl-en span:nth-child(7) {
  transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .7s, transform .75s cubic-bezier(.39, .575, .565, 1) .7s
}
.top-ms-ttl-en:after {
  transition: all .75s cubic-bezier(.39, .575, .565, 1) 1s;
  width: 0
}
.top-ms-ttl-img svg path {
  fill: #fff
}
.top-ms-txt.show svg .ms-txt-g g {
  opacity: 1;
  transform: translate(0)
}
.top-ms-txt svg .ms-txt-g g {
  opacity: 0
}
.top-ms-txt svg path {
  fill: #fff
}
.top-sc-content .top-sc-border, .top-sc-content .top-sc-bottom, .top-sc-content .top-sc-middle, .top-sc-content .top-sc-top {
  opacity: 0
}
.top-sc-content.show .top-sc-border, .top-sc-content.show .top-sc-bottom, .top-sc-content.show .top-sc-middle, .top-sc-content.show .top-sc-top {
  opacity: 1
}
.top-sc-bottom-item.show, .top-sc-middle.show, .top-sc-top.show {
  opacity: 1 !important;
  transform: translate(0) !important
}
.contact-page-confirm .contact-content dl {
  align-items: center
}
.contact-page-confirm .contact-content dl.prefectures dd:after {
  content: none
}
.contact-page-confirm .contact-content dd span {
  display: block;
  letter-spacing: .025em
}
.contact-mv {
  position: relative
}
.contact-mv-img {
  position: absolute;
  right: 0
}
.contact-content dl.prefectures dd {
  position: relative
}
.contact-content dl.prefectures dd:after {
  box-sizing: border-box;
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
  transform: rotate(45deg)
}
.contact-content dt {
  display: flex;
  position: relative
}
.contact-content dt span {
  display: block;
  letter-spacing: .025em
}
.contact-content dt.required:after {
  background: #cf0404;
  color: #fff;
  content: "必須";
  display: block;
  text-align: center
}
.contact-content dd input[type=text] {
  letter-spacing: .025em;
  width: 100%
}
.contact-content dd input[type=text]::placeholder {
  color: #bbb
}
.contact-content dd .contact-btn {
  background: #f2f2f2;
  cursor: pointer;
  letter-spacing: .025em;
  text-align: center
}
.contact-content dd .contact-btn-02 {
  display: block;
  margin: 0 auto
}
.contact-content dd .contact-btn-03 {
  background: #404040;
  color: #fff;
  display: block
}
.contact-content dd select {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #404040;
  border-radius: 5px
}
.contact-content dd select::-ms-expand {
  display: none
}
.contact-content dd textarea {
  width: 100%
}
.contact-content dd .contact-txt {
  letter-spacing: .025em
}
.contact-content dd .contact-agreement {
  text-align: center
}
.contact-thanks {
  background: #f4f3ef
}
.contact-thanks-ttl {
  font-weight: 500
}
.contact-thanks-txt {
  letter-spacing: .025em
}
.sas {
  border-bottom: 1px solid #404040
}
.sas-section-inner {
  position: relative
}
.sas-section-inner.-bird01:after {
  background: url(../img/safe-and-secure/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute
}
.sas-hard-img {
  display: flex;
  justify-content: center
}
.sas-hard-img img {
  display: block
}
.sas-hard-head {
  background: #f2f2f2;
  color: #a79363;
  font-weight: 500;
  letter-spacing: .05em;
  line-height: 1.3;
  text-align: center
}
.tm {
  border-bottom: 1px solid #404040
}
.tm-section-lead-box-inner {
  position: relative
}
.tm-section-lead-box-inner.-bird01:after {
  background: url(../img/town-management/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute
}
.tm-section-img img {
  height: auto
}
.tm-cost-item-note {
  background: #f2f2f2
}
.eg-section.-bg {
  background: #f4f3ef
}
.eg-section-inner {
  position: relative
}
.eg-section-inner.-bird01:after {
  background: url(../img/energy/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute;
  z-index: 1
}
.eg-section-img {
  width: 100%
}
.eg-item {
  letter-spacing: .025em
}
.eg-item-lbl {
  color: #a79363;
  font-weight: 500
}
.eg-item-box {
  display: flex
}
.eg-item-img-txt {
  text-align: center
}
.eg-display-item {
  position: relative
}
.eg-display-item-cap {
  left: 0;
  letter-spacing: .025em;
  position: absolute
}
.wn-section.-bg {
  background: #f4f3ef
}
.wn-section-inner {
  position: relative
}
.wn-section-inner.-bird01:after {
  background: url(../img/wellness/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute;
  z-index: 1
}
.wn-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.wn-item-txt {
  font-weight: 500;
  letter-spacing: .025em
}
.wn-item-img {
  overflow: hidden
}
.cb-section.-bg {
  background: #f4f3ef
}
.cb-section-inner {
  position: relative
}
.cb-section-inner.-bird01:after {
  background: url(../img/community-bus/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute;
  z-index: 1
}
.cb-item {
  letter-spacing: .025em
}
.cb-item-02 {
  align-items: center;
  display: flex
}
.cb-item-lbl {
  color: #a79363;
  font-weight: 500
}
.cb-item-box {
  align-items: flex-end;
  display: flex
}
.cb-item-img-txt {
  text-align: center
}
.cb-time-item:nth-child(-n+3) .cb-time-item-lbl {
  background: #f2f2f2
}
.cb-time-item-lbl {
  background: #dfdddd;
  color: #a79363;
  font-weight: 500;
  letter-spacing: .025em;
  text-align: center
}
.cb-time-row {
  align-items: center;
  display: flex;
  justify-content: space-between
}
.cb-time-row:nth-child(odd) {
  background: rgba(167, 147, 99, .2)
}
.cb-time-row-txt {
  letter-spacing: .025em
}
.dp {
  border-bottom: 1px solid #404040
}
.dp-section-inner {
  position: relative
}
.dp-section-inner.-bird01:after {
  background: url(../img/digital-platform/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute;
  z-index: 1
}
.dp-portal {
  overflow: hidden;
  position: relative
}
.dp-portal-head {
  color: #222;
  font-weight: 500;
  letter-spacing: .05em;
  line-height: 1.6666666667
}
.dp-portal-img {
  position: relative;
  z-index: 1
}
.dp-portal-img img {
  height: auto
}
.cs-header-inner {
  position: relative
}
.cs-header-inner.-bird01:after {
  background: url(../img/community-support/img-bird-01.png) no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  position: absolute
}
.cs-house-img {
  overflow: hidden
}
.cs-house-img img {
  height: auto
}
.cs-house-caption {
  display: block;
  letter-spacing: .05em;
  line-height: 1.7857142857;
  text-align: right
}
.cs-floor-img img {
  height: auto
}
.cs-flow-note {
  background: #f2f2f2
}

/*分譲情報*/
ul.sales_list{
 display: flex;
 flex-wrap : wrap; 
justify-content: space-between;
align-items: stretch;
}
ul.sales_list li{
width: calc(52% - 40px);
border: solid 1px #e5e5e5;
margin-bottom: 30px;
border-radius: 8px;
padding: 20px 20px 80px 20px;
position: relative
}
ul.sales_list li .logo{
text-align: center
}
ul.sales_list li .logo img{
width: 65%;
height: auto
}
ul.sales_list li .name{
font-size: 18px;
font-weight: 600;
text-align: center
}
ul.sales_list li .thum{
padding-top: 15px;
padding-bottom: 15px;
}
ul.sales_list li .thum img{
width: 100%;
height: auto
}
ul.sales_list li .exp{
line-height: 2
}
ul.sales_list li .btn_link{
position: absolute;
bottom: 20px;
width: 90%;
margin-left: auto;
margin-right: auto;
}
ul.sales_list li .btn_link a{
background-color: #222222;
text-align: center;
padding: 10px;
display: block;
color: #FFF
}
ul.sales_list li .btn_link a:hover{
color: #DADADA
}
/*分譲情報202407*/
#sale_mv{
	background-image: url(../img/sale/mv.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	height: 100vh;
	text-align: center;
}
#sale_mv img{
width: 920px;
height: auto;
margin-top: 10vh
}
ul#sales_logo_list{
width: 90%;
text-align: center;
margin-left: auto;
margin-right: auto;
padding-bottom: 60px;
}
ul#sales_logo_list li{
width: calc(100% / 8);
display: inline-block
}
ul#sales_logo_list li img{
width: 100%;
height: auto
}
.sale_map{
text-align: center;
background-color: #F4F3EF
}
.sale_map img{
width: 1280px;
height: auto
}
.sale_map_ph{}
.sale_map_ph img{
width: 100%;
height: auto
}

/*分譲情報202409*/
.cFix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden
}
.cFix {
  min-height: 1px
}
* html .cFix {
  height: 1px
}
#owners_voice ul{
margin-top: 60px;
}
#owners_voice ul li{
margin-bottom: 40px;
}
#owners_voice ul .cont_txt{
width: 70%;
float: left
}#owners_voice ul .cont_txt.wide{
width: 100%;
float: none
}
#owners_voice ul .cont_txt .voice_txt{
font-size: 14px!important;
padding-top: 1em;
}
#owners_voice ul .cont_txt .voice_txt p{
margin-bottom: 1em!important
}
#owners_voice ul .c-head-sec-01-txt{
font-size: 22px;
}
#owners_voice ul .cont_ph{
width: 27%;
float: right;
}
#owners_voice ul .cont_ph img{
width: 100%;
height: auto;
object-fit: cover;
border-radius: 15px;
}
#owners_voice ul li:nth-child(2n) .cont_txt{
float: right;
}
#owners_voice ul li:nth-child(2n) .cont_ph{
float: left
}
#owners_voice .pdf_dl{
text-align: center
}
#owners_voice .pdf_dl a{
display: inline-block;
line-height: 1;
padding: 10px 40px;
border-radius: 100px;
background-color: #2A2A2A;
color: #FFF
}



/*イベント情報*/
.eve_fig img{
width: 100%;
height: auto
}
.btn_link_housemaker{
margin-left: auto;
margin-right: auto;
margin-bottom: 20px;
}
.btn_link_housemaker a{
	text-align: center;
	padding: 10px;
	display: block;
	color: #FFF;
	font-size: 20px;
	background-image: -webkit-linear-gradient(270deg,rgba(70,168,101,1.00) 0%,rgba(19,145,58,1.00) 100%);
	background-image: -moz-linear-gradient(270deg,rgba(70,168,101,1.00) 0%,rgba(19,145,58,1.00) 100%);
	background-image: -o-linear-gradient(270deg,rgba(70,168,101,1.00) 0%,rgba(19,145,58,1.00) 100%);
	background-image: linear-gradient(180deg,rgba(70,168,101,1.00) 0%,rgba(19,145,58,1.00) 100%);
}
.dl_link{
text-align: center
}

.event2024winter{
padding: 2em 4em;
font-size: 16px;
line-height: 2.0
}
.event2024winter .ttl{
font-size: 20px;
font-weight: bold;
margin-bottom: 1em;
text-align: center
}

.event2024winter .dl_link{
text-align: center;
margin-top: 1em;
margin-bottom: 1em
}
.event2024winter .dl_link a{
font-size: 20px;
font-weight: bold;
background-color: #C30D23;
color: #FFF;
padding: 1em;
display: block;

} 

/*お問い合わせ*/
#mailformpro table{
width: 100%;
text-align: left;
line-height: 2.2;
border-top: 1px solid #868686;
}
#mailformpro table th,#mailformpro table td{
	border-bottom: 1px solid #868686;
	padding: 30px;
}
#mailformpro table th{
white-space: nowrap;
vertical-align: top;
}
#mailformpro .privacy{
font-size: 12px;
}
#mailformpro .privacy a{
text-decoration: underline
}
#mailformpro table .form_field{
	width: calc(100% - 24px)!important;
	padding: 10px!important;
	border: 1px solid #D2D2D2;
}
#mailformpro .req{
	border-left: 4px solid #FF0004;
	padding-left: 1em
}
#mailformpro .any{
	border-left: 4px solid #8F9093;
	padding-left: 1em
}
#mailformpro .label_notice{
text-align: right;
font-size: 12px;
padding-bottom: 1em
}
#mailformpro .label_notice span{
margin-left: 2em
}

#mailformpro .submit_btn {
	padding: 10px 20px;
	font-size: 16px;
	border: none;
	color: #FFF;
	background-color: #000;
	cursor: pointer;
	outline: none;
}



















@media print, screen and (min-width:769px) {
  body {
    min-width: 1280px;
    overflow: hidden
  }
  .only-sp {
    display: none
  }
  .heading-01 {
    font-size: 56px
  }
  .pagetop {
    display: none
  }
  .c-arrow {
    border: 1px solid #fff;
    height: 24px;
    width: 24px
  }
  .c-arrow.--large {
    height: 32px;
    width: 32px
  }
  .c-arrow.--large .c-arrow-icon {
    width: 14px
  }
  .c-arrow.--large .c-arrow-icon:before {
    border-width: 3.5px 4px 3.5px 0
  }
  .c-arrow.--large .c-arrow-icon:after {
    top: 3px;
    width: 11px
  }
  .c-arrow.--black {
    border: 1px solid #222
  }
  .c-arrow-icon {
    height: 6px;
    width: 12px
  }
  .c-arrow-icon:before {
    border-width: 2.5px 3px 2.5px 0;
    transition: all .5s ease
  }
  .c-arrow-icon:after {
    height: 1px;
    top: 2px;
    transition: all .5s ease;
    width: 9px
  }
  .c-txt {
    font-size: 16px;
    line-height: 1.625
  }
  .c-txt small {
    font-size: 13px;
    margin-top: 2px
  }
  .c-txt strong {
    font-size: 18px
  }
  .c-txt a {
    transition: opacity .3s ease
  }
  .c-txt a:hover {
    opacity: .7
  }
  .c-txt-head {
    font-size: 18px;
    line-height: 1.6666666667
  }
  .c-head-sec-01 {
    border-bottom: 1px solid #a79363;
    font-size: 24px;
    padding-bottom: 6px
  }
  .c-head-sec-01-num {
    font-size: 20px;
    margin-bottom: 8px
  }
  .c-head-sec-01-num em {
    font-size: 32px;
    margin-left: 6px
  }
  .c-head-sec-01-txt {
    letter-spacing: .125em
  }
  .c-head-sec-01-txt.-yaku {
    margin-left: -16px
  }
  .c-head-sec-02 {
    font-size: 24px;
    letter-spacing: .05em;
    line-height: 1.25;
    padding-left: 15px
  }
  .c-head-sec-02:before {
    height: calc(100% - 6px);
    top: 3px;
    width: 4px
  }
  .c-head-sec-02 small {
    font-size: 16px;
    line-height: 1.625;
    margin-left: 12px
  }
  .c-head-sec-02 a {
    transition: opacity .3s ease
  }
  .c-head-sec-02 a:hover {
    opacity: .7
  }
  .c-breadcrumb-item {
    font-size: 12px
  }
  .c-breadcrumb-item:nth-child(n+2) {
    padding-left: 18px
  }
  .c-breadcrumb-item:nth-child(n+2):before {
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    height: 4px;
    left: 4px;
    top: 8px;
    width: 4px
  }
  .c-icon-num {
    font-size: 16px;
    height: 32px;
    width: 32px
  }
  .c-bg-sub {
    background-image: url(../img/common/bg-sub-fv.png);
    background-position: 50% 0;
    background-repeat: repeat-x;
    background-size: 1400px auto
  }
  .l-container {
    max-width: 1000px
  }
  .header {
    display: flex;
    justify-content: space-between;
    left: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%
  }
  .header-logo {
    display: block;
    margin: 10px 20px;
    opacity: 0;
    pointer-events: all;
    transition: all .5s ease;
    visibility: hidden;
    z-index: -1
  }
  .header-logo.on {
    opacity: 1;
    visibility: visible;
    z-index: 1
  }
  .header-logo-img {
    width: 70px
  }
  .header-list {
    border-radius: 0 0 0 10px;
    display: flex;
    height: 56px;
    justify-content: flex-end;
    padding: 0 16px;
    pointer-events: all
  }
  .header-list-item:not(:last-child) .header-list-txt {
    border-right: 1px solid #404040
  }
  .header-list-link {
    padding: 16px 0;
    transition: all .5s ease
  }
  .header-list-link:hover {
    opacity: .7
  }
  .header-list-txt {
    font-size: 16px;
    line-height: 24px;
    padding: 0 16px
  }
  .header-drawer {
    display: none
  }
  .contact .header-logo, .sub .header-logo {
    margin-top: 23px
  }
  .footer {
    padding: 36px 0 11px
  }
  .footer-corp {
    font-size: 16px;
    margin-bottom: 24px
  }
  .footer-logo {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: 16px
  }
  .footer-logo-m {
    height: 48px;
    margin-right: 72px;
    width: 141px
  }
  .footer-logo-p {
    height: 49px;
    margin-right: 72px;
    width: 206px
  }
  .footer-logo-k {
    height: 41px;
    width: 189px
  }
  
  .footer-logo-partner{
  width: 520px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
  }
    .footer-logo-partner ul li{
	width: 47.5%;
	margin-right: 5%;
	float: left;
	margin-bottom: 20px;
	}
	.footer-logo-partner ul li:nth-child(2n){
	margin-right: 0%;
	}
	.footer-logo-partner ul li img{
	width: 100%!important;
	height: auto!important
	}
  
  
  .footer-copy {
    font-size: 10px;
    margin-right: 32px;
    text-align: right
  }
  .footer .footer-logo-pt_izumi_pt_asahi {
    font-size: 16px;
    margin-bottom: 50px
  }
  .footer .footer-logo-pt_izumi_pt_asahi img {
    margin-top: 20px;
    width: 520px
  }
  .box-sub-header {
    padding-top: 20px
  }
  .box-sub-header-breadcrumb {
    width: 50%;
    z-index: 10
  }
  .box-sub-header-ttl {
    margin-top: 115px
  }
  .box-sub-header-ttl-en {
    font-size: 30px;
    margin-bottom: 15px
  }
  .box-sub-header-ttl-en.-tm01 {
    height: 28px;
    width: 200px
  }
  .box-sub-header-ttl-txt.only-sp {
    display: none !important
  }
  .box-sub-header-ttl-txt.-sas {
    height: 45px;
    width: 506px
  }
  .box-sub-header-ttl-txt.-tm02 {
    height: 50px;
    width: 885px
  }
  .box-sub-header-ttl-txt.-dp {
    height: 50px;
    width: 1000px
  }
  .box-sub-header-ttl-txt.-cs {
    height: 45px;
    width: 796px
  }
  .box-sub-header-ttl-txt.-eg {
    height: 46px;
    width: 554px
  }
  .box-sub-header-ttl-txt.-wn {
    height: 45px;
    width: 553px
  }
  .box-sub-header-ttl-txt.-cb {
    height: 45px;
    width: 703px
  }
  .box-sub-header-ttl-txt .h1txt {
  font-family: Noto Sans JP, sans-serif;
  font-size:32px;
}
  .an-spanTxt span {
    min-width: 10px
  }
  .an-spanTxt g, .an-spanTxt span {
    transform: translateY(20px)
  }
  .box-sub-lead-inner {
    border-radius: 0 15px 15px 0;
    padding: 57px 103px 62px 0
  }
  .box-sub-lead-txt {
    margin-top: 5px
  }
  .box-sub-lead-txt + .box-sub-lead-txt {
    margin-top: 8px
  }
  .box-sub-lead-txt.-tm {
    margin-top: 22px
  }
  .box-sub-lead-item:nth-child(n+2), .box-sub-lead-list {
    margin-top: 40px
  }
  .box-sub-lead-item-icon {
    margin-right: 8px
  }
  .box-sub-lead-item-txt {
    margin-top: 10px
  }
  .top-mv {
    /*background-image: url(/assets/img/top/mv.jpg);*/
    height: 100vh
  }
  .top-mv-box {
    height: 496px;
    margin-top: 68px;
    width: 960px;
	z-index: 99;
  }
  .top-mv-logo {
    height: 300px;
    margin-bottom: 68px;
    width: 208px
  }
  .top-mv-bird {
    left: 0;
    top: 0
  }
  .top-mv-bird, .top-mv-bird svg {
    height: 500px;
    width: 469px
  }
  .top-mv-scroll {
    bottom: 98px;
    left: -6px
  }
  .top-mv-scroll-txt {
    font-size: 12px;
    margin-right: 10px
  }
  .top-mv-scroll-line {
    height: 1px;
    width: 61px
  }
  
  
#slide_main{
height: 100vh;
position: absolute;
width: 100%
}
#slide_main .swiper-slide{
	height: 100vh;
	width: 100%;
	background-position: center center;
	background-size: cover;
}
#slide_main .swiper-slide.sl01{
	background-image: url(../img/top/mv01.jpg);
}
#slide_main .swiper-slide.sl02{
	background-image: url(../img/top/mv02.jpg);
}
#slide_main .swiper-slide.sl03{
	background-image: url(../img/top/mv03.jpg);	
}
#slide_main .swiper-slide.sl04{
	background-image: url(../img/top/mv04.jpg);	
} 
#slide_main .swiper-slide.sl05{
	background-image: url(../img/top/mv05.jpg);	
}  
  
  
  .top-cm {
    margin-bottom: 64px;
    padding: 129px 0 56px
  }
  .top-cm-inner {
    width: 1000px
  }
  .top-cm-ttl {
    margin-bottom: 32px
  }
  .top-cm-ttl-img {
    height: 42px;
    width: 180px
  }
  .top-cm-lbl {
    right: -78px;
    top: -80px;
    width: 427px
  }
  .top-cm-movie {
    border-radius: 15px;
    margin-bottom: 64px
  }
  .top-cm-movie-bg {
    pointer-events: none
  }
  .top-cm-movie-icon {
    height: 100px;
    top: 232px;
    width: 100px
  }
  .top-cm-cast-lbl {
    bottom: 179px;
    left: -145px;
    width: 427px
  }
  .top-cm-cast-list {
    margin-left: auto;
    width: 770px
  }
  .top-cm-cast-item {
    display: flex;
    justify-content: space-between
  }
  .top-cm-cast-item:not(:last-child) {
    margin-bottom: 40px
  }
  .top-cm-cast-img {
    width: 230px
  }
  .top-cm-cast-box {
    width: 500px
  }
  .top-cm-cast-ttl {
    border-bottom: 1px solid #222;
    font-size: 18px;
    margin-bottom: 11px;
    padding-bottom: 9px
  }
  .top-cm-cast-ttl small {
    font-size: 14px;
    margin-left: 16px
  }
  .top-cm-cast-txt {
    font-size: 14px;
    line-height: 1.42857
  }
  .top-cm-link {
    border-radius: 5px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .15);
    height: 38px;
    margin: -38px 0 0 auto;
    width: 280px
  }
  .top-cm-link-txt {
    font-size: 14px;
    margin-right: 5px
  }
  .top-cm-link-icon {
    height: 16px;
    width: 21px
  }
  .top-hl {
    padding: 56px
  }
  .top-hl-lbl {
    border-radius: 0 0 15px 0;
    left: 0;
    padding: 88px 35px 31px 56px;
    top: 2px
  }
  .top-hl-lbl-img {
    height: 27px;
    width: 450px
  }
  .top-hl-ttl-sub {
    height: 25px;
    margin: 0 auto 20px;
    width: 201px
  }
  .top-hl-ttl-main {
    height: 58px;
    width: 147px
  }
  .top-hl-slider {
    border-radius: 15px
  }
  .top-hl-img-01 {
    background-image: url(/assets/img/top/hl-01.jpg)
  }
  .top-hl-img-02 {
    background-image: url(/assets/img/top/hl-02.jpg)
  }
  .top-hl-img-03 {
    background-image: url(/assets/img/top/hl-03.jpg)
  }
  .top-sc {
    padding-top: 227px
  }
  .top-sc-bg {
    height: 1012px
  }
  .top-sc-lbl {
    right: -92px;
    top: -252px;
    width: 448px
  }
  .top-sc-bird {
    right: 33px;
    top: -162px;
    width: 172px
  }
  .top-sc-bird-01 {
    right: 129px;
    top: -162px;
    width: 70px
  }
  .top-sc-bird-02 {
    right: 27px;
    top: -86px;
    width: 54px
  }
  .top-sc-border {
    top: -65px;
    width: 732px
  }
  .top-sc-top {
    align-items: center;
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .15);
    display: flex;
    height: 80px;
    justify-content: center;
    margin: 40px auto 0;
    padding: 0 32px;
    width: 560px
  }
  .top-sc-top:hover .c-arrow {
    background: #fff;
    border: 1px solid #222
  }
  .top-sc-top:hover .c-arrow-icon:before {
    border-color: transparent #222 transparent transparent
  }
  .top-sc-top:hover .c-arrow-icon:after {
    background: #222 !important
  }
  .top-sc-top-box {
    align-items: center;
    display: flex
  }
  .top-sc-top-ttl {
    border-right: 1px solid #fff;
    font-size: 22px;
    line-height: 40px;
    margin-right: 20px;
    padding-right: 20px
  }
  .top-sc-top-txt {
    font-size: 14px;
    letter-spacing: .025em;
    line-height: 1.5
  }
  .top-sc-top-lbl {
    font-size: 12px
  }
  .top-sc-top-lbl .c-arrow {
    margin-left: 10px
  }
  .top-sc-top-lbl .c-arrow, .top-sc-top-lbl .c-arrow-icon:after, .top-sc-top-lbl .c-arrow-icon:before {
    transition: all .5s cubic-bezier(.25, .46, .45, .94)
  }
  .top-sc-middle {
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .15);
    margin: 0 auto;
    padding: 36px 24px 24px;
    width: 322px
  }
  .top-sc-middle:hover .c-arrow {
    background: #fff;
    border: 1px solid #222
  }
  .top-sc-middle:hover .c-arrow-icon:before {
    border-color: transparent #222 transparent transparent
  }
  .top-sc-middle:hover .c-arrow-icon:after {
    background: #222 !important
  }
  .top-sc-middle-ttl {
    border-bottom: 1px solid #fff;
    font-size: 22px;
    letter-spacing: .05em;
    line-height: 1.27273;
    margin-bottom: 11px;
    padding-bottom: 8px
  }
  .top-sc-middle-ttl-sub {
    font-size: 18px
  }
  .top-sc-middle-txt {
    font-size: 16px;
    line-height: 1.5625;
    margin-bottom: 16px;
    text-align: center
  }
  .top-sc-middle-lbl {
    font-size: 16px;
    letter-spacing: .1em;
    margin-left: 48px
  }
  .top-sc-middle-lbl .c-arrow {
    margin-left: 16px
  }
  .top-sc-middle-lbl .c-arrow, .top-sc-middle-lbl .c-arrow-icon:after, .top-sc-middle-lbl .c-arrow-icon:before {
    transition: all .5s cubic-bezier(.25, .46, .45, .94)
  }
  .top-sc-bottom {
    height: 532px;
    margin-top: -252px;
    width: 100%
  }
  .top-sc-bottom-item {
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .15);
    padding: 30px 19px 24px;
    position: absolute;
    width: 273px
  }
  .top-sc-bottom-item:hover .c-arrow {
    background: #222
  }
  .top-sc-bottom-item:hover .c-arrow-icon:before {
    border-color: transparent #fff transparent transparent
  }
  .top-sc-bottom-item:hover .c-arrow-icon:after {
    background: #fff !important
  }
  .top-sc-bottom-item-0 {
    left: 0;
    top: 0
  }
  .top-sc-bottom-item-1 {
    bottom: 0;
    left: 0
  }
  .top-sc-bottom-item-2 {
    bottom: 0;
    left: 0;
    margin: 0 auto;
    right: 0
  }
  .top-sc-bottom-item-3 {
    bottom: 0;
    right: 0
  }
  .top-sc-bottom-item-4 {
    right: 0;
    top: 0
  }
  .top-sc-bottom-ttl {
    border-bottom: 1px solid #222;
    font-size: 22px;
    line-height: 1.27273;
    margin-bottom: 10px;
    padding-bottom: 6px
  }
  .top-sc-bottom-txt {
    font-size: 16px;
    letter-spacing: .025em;
    line-height: 1.5625;
    margin-bottom: 16px;
    text-align: center
  }
  .top-sc-bottom-lbl {
    font-size: 16px;
    letter-spacing: .1em;
    margin-left: 48px
  }
  .top-sc-bottom-lbl .c-arrow {
    margin-left: 16px
  }
  .top-sc-bottom-lbl .c-arrow, .top-sc-bottom-lbl .c-arrow-icon:after, .top-sc-bottom-lbl .c-arrow-icon:before {
    transition: all .5s cubic-bezier(.25, .46, .45, .94)
  }
  .top-sc-illust {
    height: 398px;
    top: 340px;
    width: 1400px
  }
  .top-sc-icon {
    left: 0;
    margin: 0 auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 145px;
    transform: translateX(11px);
    z-index: 3
  }
  .top-sc-icon, .top-sc-icon svg {
    height: 564px;
    width: 553px
  }
  .top-sc-inner {
    height: 100%;
    width: 1000px
  }
  .top-sc-ttl {
    margin: 0 auto 4px;
    transform: translateY(-29px);
    width: 1200px
  }
  .top-sc-ttl-img {
    height: 51px;
    width: 396px
  }
  .top-sc-txt {
    font-size: 18px;
    line-height: 1.6666666667;
    margin-bottom: 140px
  }
  .top-sc-box {
    position: absolute
  }
  .top-sc-box-01 {
    left: 0;
    top: 216px;
    width: 424px
  }
  .top-sc-box-02 {
    right: 0;
    top: 112px;
    width: 442px
  }
  .top-sc-box-03 {
    bottom: 125px;
    left: 0;
    width: 307px
  }
  .top-sc-box-04 {
    bottom: 116px;
    right: 100px;
    width: 378px
  }
  .top-sc-box-ttl {
    font-size: 26px;
    line-height: 1.5384615385;
    margin-bottom: 12px
  }
  .top-sc-box-txt {
    font-size: 16px;
    line-height: 1.5625
  }
  .top-sc-box-txt:not(:last-child) {
    margin-bottom: 14px
  }
  .top-sc-box-txt-dot:before {
    height: 8px;
    margin: 0 8px 2px 0;
    width: 8px
  }
  .top-le {
    padding-top: 280px
  }
  .top-le-inner {
    width: 1200px
  }
  .top-le-ttl {
    margin-bottom: 48px
  }
  .top-le-ttl-img {
    height: 54px;
    width: 254px
  }
  .top-le-lbl {
    right: 0;
    top: -132px;
    width: 748px
  }
  .top-le-bird {
    right: 10px;
    top: 46px;
    width: 172px
  }
  .top-le-list {
    padding: 120px 0
  }
  .top-le-list:after {
    background: #222;
    border-radius: 1.07vw 0 0 1.07vw;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 57.14vw;
    z-index: -1
  }
  .top-le-item {
    display: flex;
    justify-content: space-between
  }
  .top-le-item:not(:last-child) {
    margin-bottom: 120px
  }
  .top-le-box {
    margin-left: 7.14vw;
    padding-top: 5.71vw
  }
  .top-le-box-no {
    border-bottom: 1px solid #222;
    font-size: 24px;
    margin-bottom: 24px;
    padding-bottom: 4px;
    width: 24px
  }
  .top-le-box-ttl {
    font-size: 24px;
    letter-spacing: .1em;
    margin-bottom: 32px
  }
  .top-le-box-txt {
    font-size: 16px;
    letter-spacing: .025em;
    line-height: 1.625;
    margin-bottom: 14px
  }
  .top-le-slider {
    height: 35.57vw;
    margin: 0;
    min-height: 498px;
    min-width: 938px;
    padding: 2.29vw 0 4.71vw 2.71vw;
    width: 67vw
  }
  .top-le-slider .swiper-slide {
    border-radius: 1.07vw
  }
  .top-le-slider .swiper-slide.swiper-slide-active {
    box-shadow: 0 10px 40px rgba(0, 0, 0, .3)
  }
  .top-le-slider .swiper-button-prev {
    border: 1px solid #fff;
    bottom: 0;
    height: 3vw;
    left: auto;
    right: 10.71vw;
    top: auto;
    transition: all .5s ease;
    width: 3vw
  }
  .top-le-slider .swiper-button-prev:hover {
    background: #fff
  }
  .top-le-slider .swiper-button-prev:hover .swiper-button-arrow:before {
    border-color: transparent #222 transparent transparent
  }
  .top-le-slider .swiper-button-prev:hover .swiper-button-arrow:after {
    background: #222
  }
  .top-le-slider .swiper-button-next {
    border: 1px solid #fff;
    bottom: 0;
    height: 3vw;
    left: auto;
    right: 6.57vw;
    top: auto;
    width: 3vw
  }
  .top-le-slider .swiper-button-next:hover {
    background: #fff
  }
  .top-le-slider .swiper-button-next:hover .swiper-button-arrow:before {
    border-color: transparent #222 transparent transparent
  }
  .top-le-slider .swiper-button-next:hover .swiper-button-arrow:after {
    background: #222
  }
  .top-le-slider .swiper-button-arrow {
    height: .71vw;
    width: 1.36vw
  }
  .top-le-slider .swiper-button-arrow:before {
    border-width: .36vw .36vw .36vw 0;
    transition: all .5s ease
  }
  .top-le-slider .swiper-button-arrow:after {
    height: .14vw;
    top: .29vw;
    transition: all .5s ease;
    width: 1.14vw
  }
  .top-le-slider .swiper-counter {
    right: 6.57vw;
    top: 0
  }
  .top-le-slider .swiper-counter .count {
    font-size: 1.57vw;
    margin-right: .5vw
  }
  .top-le-slider .swiper-counter .slash {
    font-size: 1.14vw;
    margin-right: .29vw
  }
  .top-le-slider .swiper-counter .total {
    font-size: 1.14vw
  }
  .top-ip {
    margin-bottom: 156px;
    padding-top: 356px
  }
  .top-ip-top {
    margin-bottom: 56px
  }
  .top-ip-top:after {
    background: #f4f3ef;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 50%;
    z-index: -1
  }
  .top-ip-inner {
    width: 1200px
  }
  .top-ip-ttl {
    left: 0;
    position: absolute;
    top: -29px
  }
  .top-ip-ttl-img {
    height: 54px;
    width: 412px
  }
  .top-ip-lbl {
    right: 0;
    top: -230px;
    width: 745px
  }
  .top-ip-box {
    border-radius: 0 15px 15px 0;
    padding: 84px 0 50px;
    width: 1000px
  }
  .top-ip-box-ttl {
    font-size: 24px;
    letter-spacing: .1em;
    margin-bottom: 27px;
    width: 898px
  }
  .top-ip-box-txt {
    font-size: 18px;
    line-height: 1.6666666667;
    width: 898px
  }
  .top-ip-bottom {
    width: 1000px
  }
  .top-ip-link {
    margin: 0 0 80px auto;
    width: 204px
  }
  .top-ip-link:hover .top-ip-link-icon {
    background: #222
  }
  .top-ip-link:hover .top-ip-link-icon-arrow:before {
    border-color: transparent transparent transparent #fff
  }
  .top-ip-link:hover .top-ip-link-icon-arrow:after {
    background: #fff
  }
  .top-ip-link-txt {
    font-size: 20px;
    margin-right: 28px
  }
  .top-ip-link-icon {
    border: 1px solid #222;
    height: 42px;
    transition: all .5s ease;
    width: 42px
  }
  .top-ip-link-icon-arrow {
    height: 10px;
    width: 19px
  }
  .top-ip-link-icon-arrow:before {
    border-width: 5px 0 5px 5px;
    transition: all .5s ease
  }
  .top-ip-link-icon-arrow:after {
    height: 2px;
    top: 4px;
    transition: all .5s ease;
    width: 16px
  }
  .top-ip-img {
    border: 1px solid #c2c2c2;
    border-radius: 15px;
    height: 614px;
    padding: 28px 0;
    width: 100%
  }
  .top-ip-img-map {
    height: 530px;
    width: 862px
  }
  .top-ip-txt {
    font-size: 16px;
    line-height: 1.5625;
    margin-top: 36px
  }
  .top-ms-bg {
    height: 42.86vw
  }
  .top-ms-inner {
    justify-content: center
  }
  .top-ms-box {
    display: flex;
    width: 1000px
  }
  .top-ms-ttl {
    margin: 37px 149px 0 0
  }
  .top-ms-ttl-en {
    font-size: 24px;
    margin-bottom: 24px;
    padding-bottom: 9px
  }
  .top-ms-ttl-en:after {
    height: 1px
  }
  .top-ms-ttl-img {
    height: 27px;
    width: 434px
  }
  .top-ms-txt {
    height: 222px;
    width: 368px
  }
  .top-sc-box-wrap .top-sc-box-01 {
    transform: translateY(100px);
    transition: all 1.5s cubic-bezier(.39, .575, .565, 1) .4s
  }
  .top-sc-box-wrap .top-sc-box-02 {
    transform: translateX(-100px);
    transition: all 1.5s cubic-bezier(.39, .575, .565, 1) 1.4s
  }
  .top-sc-box-wrap .top-sc-box-03 {
    transform: translateX(100px);
    transition: all 1.5s cubic-bezier(.39, .575, .565, 1) 2.4s
  }
  .top-sc-icon {
    height: 0;
    transition: all 1.5s cubic-bezier(.39, .575, .565, 1) .2s
  }
  .top-sc-icon .g-1 {
    opacity: 0;
    transform: translate(299px, 400px) scale(.1);
    transition: opacity .75s cubic-bezier(.39, .575, .565, 1) .4s, transform 1.5s cubic-bezier(.39, .575, .565, 1) .4s
  }
  .top-sc-icon .g-2 {
    opacity: 0;
    transform: translate(275px, 376px) scale(.1);
    transition: opacity .75s cubic-bezier(.39, .575, .565, 1) 1.4s, transform 1.5s cubic-bezier(.39, .575, .565, 1) 1.4s
  }
  .top-sc-icon .g-3 {
    opacity: 0;
    transform: translate(322px, 376px) scale(.1);
    transition: opacity .5s cubic-bezier(.39, .575, .565, 1) 2.4s, transform 1.5s cubic-bezier(.39, .575, .565, 1) 2.4s
  }
  .top-sc-icon.show {
    height: 564px
  }
  .step-01, .step-02 {
    transform: translateY(50px)
  }
  .step-02 {
    transition: opacity .6s cubic-bezier(.215, .61, .355, 1) .4s, transform .8s cubic-bezier(.215, .61, .355, 1) .4s
  }
  .top-le-list:after {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity .75s cubic-bezier(.215, .61, .355, 1) .6s, transform 1s cubic-bezier(.215, .61, .355, 1) .6s
  }
  .top-hl-lbl-img-01 svg g, .top-hl-lbl-img-02 svg g, .top-hl-lbl-img svg g, .top-le-box-no, .top-le-box-ttl span {
    transform: translateY(20px)
  }
  .top-le-box-txt > span span {
    transform: translateY(10px)
  }
  .top-ms-ttl-en span {
    transform: translateY(10px)
  }
  .top-ms-ttl-img.show svg g {
    opacity: 1;
    transform: translate(0)
  }
  .top-ms-ttl-img svg g {
    opacity: 0;
    transform: translateY(20px)
  }
  .top-ms-ttl-img svg g:first-child {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .04s, transform .7s cubic-bezier(.39, .575, .565, 1) .04s
  }
  .top-ms-ttl-img svg g:nth-child(2) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .08s, transform .7s cubic-bezier(.39, .575, .565, 1) .08s
  }
  .top-ms-ttl-img svg g:nth-child(3) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .12s, transform .7s cubic-bezier(.39, .575, .565, 1) .12s
  }
  .top-ms-ttl-img svg g:nth-child(4) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .16s, transform .7s cubic-bezier(.39, .575, .565, 1) .16s
  }
  .top-ms-ttl-img svg g:nth-child(5) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .2s, transform .7s cubic-bezier(.39, .575, .565, 1) .2s
  }
  .top-ms-ttl-img svg g:nth-child(6) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .24s, transform .7s cubic-bezier(.39, .575, .565, 1) .24s
  }
  .top-ms-ttl-img svg g:nth-child(7) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .28s, transform .7s cubic-bezier(.39, .575, .565, 1) .28s
  }
  .top-ms-ttl-img svg g:nth-child(8) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .32s, transform .7s cubic-bezier(.39, .575, .565, 1) .32s
  }
  .top-ms-ttl-img svg g:nth-child(9) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .36s, transform .7s cubic-bezier(.39, .575, .565, 1) .36s
  }
  .top-ms-ttl-img svg g:nth-child(10) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .4s, transform .7s cubic-bezier(.39, .575, .565, 1) .4s
  }
  .top-ms-ttl-img svg g:nth-child(11) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .44s, transform .7s cubic-bezier(.39, .575, .565, 1) .44s
  }
  .top-ms-ttl-img svg g:nth-child(12) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .48s, transform .7s cubic-bezier(.39, .575, .565, 1) .48s
  }
  .top-ms-ttl-img svg g:nth-child(13) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .52s, transform .7s cubic-bezier(.39, .575, .565, 1) .52s
  }
  .top-ms-ttl-img svg g:nth-child(14) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .56s, transform .7s cubic-bezier(.39, .575, .565, 1) .56s
  }
  .top-ms-ttl-img svg g:nth-child(15) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .6s, transform .7s cubic-bezier(.39, .575, .565, 1) .6s
  }
  .top-ms-txt svg .ms-txt-g g {
    transform: translateY(20px)
  }
  .top-ms-txt svg .ms-txt-g g:first-child {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .85s, transform .9s cubic-bezier(.39, .575, .565, 1) .85s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(2) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .9s, transform .9s cubic-bezier(.39, .575, .565, 1) .9s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(3) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .95s, transform .9s cubic-bezier(.39, .575, .565, 1) .95s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(4) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1s, transform .9s cubic-bezier(.39, .575, .565, 1) 1s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(5) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.05s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.05s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(6) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.1s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.1s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(7) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.15s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.15s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(8) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.2s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.2s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(9) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.25s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.25s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(10) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.3s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.3s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(11) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.35s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.35s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(12) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.4s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.4s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(13) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.45s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.45s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(14) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.5s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.5s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(15) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.55s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.55s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(16) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.6s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.6s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(17) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.65s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.65s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(18) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.7s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.7s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(19) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.75s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.75s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(20) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.8s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.8s
  }
  .top-sc-content .top-sc-top {
    transition: all 1.4s cubic-bezier(.25, .46, .45, .94) 1.9s
  }
  .top-sc-content .top-sc-middle {
    transition: all 1.4s cubic-bezier(.25, .46, .45, .94) .5s
  }
  .top-sc-content .top-sc-border, .top-sc-content .top-sc-bottom {
    transition: all 1.4s cubic-bezier(.25, .46, .45, .94) 1.2s
  }
  .contact-page {
    border-bottom: 1px solid #000;
    padding-bottom: 102px
  }
  .contact-page-confirm .contact-content dl {
    margin-bottom: 18px
  }
  .contact-page-confirm .contact-content dl.contents {
    margin-bottom: 80px
  }
  .contact-page-confirm .contact-content dt {
    padding-top: 0 !important
  }
  .contact-page-confirm .contact-content dd span {
    font-size: 18px;
    line-height: 1.6666666667
  }
  .contact-mv {
    margin: 218px auto 180px;
    width: 1200px
  }
  .contact-mv-ttl {
    font-size: 60px;
    letter-spacing: .1em
  }
  .contact-mv-img {
    top: -54px;
    width: 517px
  }
  .contact-content {
    margin: 0 auto;
    width: 800px
  }
  .contact-content dl {
    display: flex;
    justify-content: space-between;
    margin-bottom: 38px
  }
  .contact-content dl.post input[type=text] {
    width: 280px
  }
  .contact-content dl.prefectures dd:after {
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    height: 10px;
    left: 252px;
    top: 16px;
    width: 10px
  }
  .contact-content dl.address02 {
    margin-bottom: 19px
  }
  .contact-content dl.mail, .contact-content dl.tel {
    margin-bottom: 29px
  }
  .contact-content dl.contents dt {
    padding-top: 100px
  }
  .contact-content dt {
    align-items: flex-start;
    justify-content: space-between;
    padding-top: 10px;
    width: 212px
  }
  .contact-content dt span {
    font-size: 18px;
    line-height: 1.6666666667;
    width: 156px
  }
  .contact-content dt small {
    display: block;
    font-size: 14px;
    line-height: 1.4285714286
  }
  .contact-content dt.required:after {
    border-radius: 5px;
    font-size: 14px;
    line-height: 26px;
    margin-top: 4px;
    width: 50px
  }
  .contact-content dd {
    width: 576px
  }
  .contact-content dd input[type=text] {
    font-size: 18px;
    padding: 14px 24px
  }
  .contact-content dd .contact-btn, .contact-content dd input[type=text] {
    border: 1px solid #404040;
    border-radius: 5px
  }
  .contact-content dd .contact-btn-01 {
    font-size: 16px;
    line-height: 32px;
    margin-left: 10px;
    width: 122px
  }
  .contact-content dd .contact-btn-02, .contact-content dd .contact-btn-03 {
    font-size: 20px;
    line-height: 52px;
    width: 252px
  }
  .contact-content dd .contact-btn-03 {
    margin-left: 22px
  }
  .contact-content dd .contact-btn-wrap {
    display: flex;
    justify-content: center
  }
  .contact-content dd select {
    font-size: 18px;
    height: 51px;
    padding: 0 24px;
    width: 280px
  }
  .contact-content dd textarea {
    border: 1px solid #404040;
    border-radius: 5px;
    font-size: 18px;
    height: 241px;
    padding: 14px 24px
  }
  .contact-content dd textarea.personal {
    font-size: 16px
  }
  .contact-content dd .contact-txt {
    font-size: 16px;
    line-height: 1.5;
    margin: 36px 0 28px
  }
  .contact-content dd .contact-agreement {
    margin: 28px 0 40px
  }
  .contact-content dd .contact-agreement label {
    font-size: 18px;
    margin-left: 14px
  }
  .contact-thanks {
    border-radius: 15px;
    margin: 0 auto 38px;
    padding: 72px 100px 76px;
    width: 1000px
  }
  .contact-thanks-ttl {
    font-size: 24px;
    letter-spacing: .1em;
    line-height: 1.6666666667;
    margin-bottom: 28px
  }
  .contact-thanks-txt {
    font-size: 16px;
    line-height: 1.5625
  }
  .sas {
    padding-bottom: 170px
  }
  .sas-section {
    margin-top: 80px
  }
  .sas-section + .sas-section {
    margin-top: 113px
  }
  .sas-section-inner.-bird01:after {
    height: 124px;
    left: 50%;
    top: -5px;
    transform: translate(calc(-100% + -40px), -50%);
    width: 203px
  }
  .sas-hard-list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px
  }
  .sas-hard-item {
    flex: 0 0 30.3%;
    margin-left: 4.55%
  }
  .sas-hard-item:nth-child(3n+1) {
    margin-left: 0
  }
  .sas-hard-item:nth-child(n+4) {
    margin-top: 50px
  }
  .sas-hard-img {
    height: 120px;
    margin: 0 auto
  }
  .sas-hard-img.-img01 img {
    margin-top: -15px;
    width: 96px
  }
  .sas-hard-img.-img02 img {
    margin-top: 15px;
    width: 91px
  }
  .sas-hard-img.-img03 img {
    margin-top: -18px;
    width: 134px
  }
  .sas-hard-img.-img04 img {
    margin-left: 8px;
    width: 151px
  }
  .sas-hard-img.-img05 img {
    margin-top: -9px;
    width: 96px
  }
  .sas-hard-img.-img06 img {
    margin-top: 5px;
    width: 143px
  }
  .sas-hard-img.-img07 img {
    margin-right: -5px;
    margin-top: 5px;
    width: 138px
  }
  .sas-hard-img.-img08 img {
    margin-top: 14px;
    width: 125px
  }
  .sas-hard-head {
    border-radius: 25px;
    font-size: 20px;
    margin-top: 10px;
    padding: 7px 5px
  }
  .sas-hard-txt {
    margin-top: 18px;
    padding-left: 4px
  }
  .tm {
    padding-bottom: 170px
  }
  .tm-section {
    margin-top: 77px
  }
  .tm-section + .tm-section {
    margin-top: 113px
  }
  .tm-section-lead-box-inner.-bird01:after {
    bottom: -14px;
    height: 150px;
    right: 102px;
    transform: translateY(50%);
    width: 161px
  }
  .tm-section-lead {
    margin-top: 27px
  }
  .tm-section-box {
    margin-top: 58px
  }
  .tm-section-box + .tm-section-box {
    margin-top: 60px
  }
  .tm-section-box.-mtS {
    margin-top: 30px
  }
  .tm-section-img {
    margin-bottom: 30px;
    margin-top: 20px
  }
  .tm-section-txt {
    margin-top: 17px
  }
  .tm-cost-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 22px
  }
  .tm-cost-item {
    flex: 0 0 47%
  }
  .tm-cost-item:nth-child(n+3) {
    margin-top: 43px
  }
  .tm-cost-head-icon {
    margin-right: 8px;
    vertical-align: top
  }
  .tm-cost-txt {
    margin-top: 10px
  }
  .tm-cost-item-note {
    border-radius: 5px;
    margin-left: -12px;
    padding: 17px 20px 18px 24px
  }
  .tm-cost-inner {
    margin-top: 20px
  }
  .tm-cost-box {
    display: flex;
    justify-content: space-between;
    margin-top: 10px
  }
  .tm-cost-box-item {
    flex: 0 0 47%
  }
  .eg {
    border-bottom: 1px solid #b55c5c;
    padding-bottom: 120px
  }
  .eg-section {
    margin-top: 77px
  }
  .eg-section + .eg-section {
    margin-top: 113px
  }
  .eg-section.-bg {
    padding: 120px 0
  }
  .eg-section-inner.-bird01:after {
    height: 63px;
    right: 196px;
    top: -143px;
    transform: translateY(-50%);
    width: 190px
  }
  .eg-section-img {
    margin-top: 40px
  }
  .eg-section-ttl {
    margin-top: 56px
  }
  .eg-section-txt {
    margin-top: 17px
  }
  .eg-list {
    margin-top: 84px
  }
  .eg-list-02 {
    margin-top: 60px
  }
  .eg-item:not(:last-child) {
    margin-bottom: 38px
  }
  .eg-item-02 {
    align-items: center;
    display: flex
  }
  .eg-item-lbl {
    font-size: 18px;
    margin-bottom: 10px
  }
  .eg-item-box {
    align-items: flex-end;
    border-left: 1px solid #a79363;
    margin-left: 64px;
    padding-bottom: 5px;
    padding-left: 64px
  }
  .eg-item-img-01 {
    margin-right: 72px;
    width: 214px
  }
  .eg-item-img-02 {
    width: 94px
  }
  .eg-item-img-txt {
    font-size: 14px
  }
  .eg-item-img-txt-01 {
    margin-top: 40px
  }
  .eg-item-img-txt-02 {
    margin-top: 12px
  }
  .eg-display-ttl {
    margin-top: 32px
  }
  .eg-display-list {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    margin-top: 36px
  }
  .eg-display-item {
    width: 304px
  }
  .eg-display-item-lbl {
    font-size: 16px;
    letter-spacing: .05em;
    margin-bottom: 18px
  }
  .eg-display-item-txt {
    font-size: 17px;
    letter-spacing: .025em;
    line-height: 1.64706;
    margin-bottom: 20px
  }
  .eg-display-item-txt-bottom {
    font-size: 14px;
    letter-spacing: .035em;
    line-height: 1.5;
    margin-top: 16px;
    min-height: 56px
  }
  .eg-display-item-cap {
    bottom: 1px;
    font-size: 14px;
    line-height: 1.5
  }
  .eg-flow-list {
    margin-top: 24px
  }
  .eg-flow-item:nth-child(n+2) {
    margin-top: 25px
  }
  .eg-flow-head-icon {
    margin-right: 8px;
    vertical-align: top
  }
  .wn {
    border-bottom: 1px solid #404040;
    padding-bottom: 158px
  }
  .wn-section {
    margin-top: 77px
  }
  .wn-section + .wn-section {
    margin-top: 113px
  }
  .wn-section.-bg {
    padding: 120px 0
  }
  .wn-section-inner.-bird01:after {
    height: 71px;
    right: 260px;
    top: -28px;
    transform: translateY(-50%);
    width: 125px
  }
  .wn-section-txt {
    margin-top: 17px
  }
  .wn-list {
    margin-top: 60px
  }
  .wn-item:nth-child(-n+2) {
    margin-bottom: 32px
  }
  .wn-item-txt {
    font-size: 18px;
    margin-bottom: 8px
  }
  .wn-item-img {
    border-radius: 15px
  }
  .cb {
    border-bottom: 1px solid #404040;
    padding-bottom: 158px
  }
  .cb-section {
    margin-top: 77px
  }
  .cb-section + .cb-section {
    margin-top: 113px
  }
  .cb-section.-bg {
    padding: 120px 0
  }
  .cb-section-inner.-bird01:after {
    height: 102px;
    right: 0;
    top: -260px;
    transform: translateY(-50%);
    width: 165px
  }
  .cb-section-img {
    border-radius: 15px;
    margin-top: 4px;
    width: 100%
  }
  .cb-section-ttl {
    margin-top: 56px
  }
  .cb-section-txt {
    margin-top: 24px
  }
  .cb-section-txt.-right {
    text-align: right
  }
  .cb-section-txt-02 {
    margin-top: 34px
  }
  .cb-section-txt-03 {
    margin-top: 54px
  }
  .cb-section-txt-04 {
    margin-top: 2px
  }
  .cb-list {
    margin-top: 84px
  }
  .cb-list-02 {
    margin-top: 60px
  }
  .cb-item:not(:last-child) {
    margin-bottom: 38px
  }
  .cb-item-lbl {
    font-size: 18px;
    margin-bottom: 10px
  }
  .cb-item-box {
    border-left: 1px solid #a79363;
    margin-left: 64px;
    padding-bottom: 5px;
    padding-left: 64px
  }
  .cb-item-img-01 {
    margin-right: 72px;
    width: 214px
  }
  .cb-item-img-02 {
    width: 94px
  }
  .cb-item-img-txt {
    font-size: 14px
  }
  .cb-item-img-txt-01 {
    margin-top: 40px
  }
  .cb-item-img-txt-02 {
    margin-top: 12px
  }
  .cb-time-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 64px
  }
  .cb-time-item {
    width: 304px
  }
  .cb-time-item:nth-child(-n+3) {
    margin-bottom: 64px
  }
  .cb-time-item-lbl {
    border-radius: 20px;
    font-size: 20px;
    line-height: 40px;
    margin-bottom: 26px
  }
  .cb-time-row {
    height: 40px;
    padding: 0 10px 0 8px
  }
  .cb-time-row-txt {
    font-size: 16px
  }
  .dp {
    padding-bottom: 170px
  }
  .dp-section {
    margin-top: 75px
  }
  .dp-section + .dp-section {
    margin-top: 116px
  }
  .dp-section-inner.-bird01:after {
    height: 132px;
    right: 0;
    top: 11px;
    transform: translateY(-50%);
    width: 190px
  }
  .dp-portal {
    border-radius: 15px;
    margin-top: 20px
  }
  .dp-portal-inner {
    height: 100%;
    left: 50%;
    padding: 80px 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 2
  }
  .dp-portal-list {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }
  .dp-portal-item {
    flex: 0 0 40%
  }
  .dp-portal-item:nth-child(n+3) {
    margin-top: 52px
  }
  .dp-portal-item:nth-child(2) .dp-portal-item-inner, .dp-portal-item:nth-child(5) .dp-portal-item-inner, .dp-portal-item:nth-child(6) .dp-portal-item-inner {
    margin-left: auto
  }
  .dp-portal-item.-item01, .dp-portal-item.-item02, .dp-portal-item.-item03 {
    order: 1
  }
  .dp-portal-item.-item04 {
    margin-top: -24px;
    order: 3
  }
  .dp-portal-item.-item05 {
    order: 4
  }
  .dp-portal-item.-item06 {
    order: 2
  }
  .dp-portal-item-inner {
    max-width: 256px
  }
  .dp-portal-head {
    background: #fff;
    border: 2px solid #404040;
    border-radius: 5px;
    font-size: 18px;
    padding: 7px 10px;
    text-align: center
  }
  .dp-portal-head-icon {
    display: none
  }
  .dp-portal-txt {
    margin-top: 10px
  }
  .dp-portal-caption {
    bottom: 0;
    bottom: 34px;
    position: absolute;
    right: 0;
    right: 40px;
    z-index: 2
  }
  .cs {
    border-bottom: 1px solid #404040;
    padding-bottom: 158px
  }
  .cs-header-inner.-bird01:after {
    bottom: -3px;
    height: 113px;
    right: 0;
    width: 178px
  }
  .cs-section {
    margin-top: 80px
  }
  .cs-section + .cs-section {
    margin-top: 120px
  }
  .cs-house-img {
    border-radius: 15px
  }
  .cs-house-caption {
    font-size: 14px;
    margin-right: -10px;
    margin-top: 10px
  }
  .cs-floor {
    margin-top: 42px
  }
  .cs-floor-list {
    margin-top: 4px
  }
  .cs-floor-item:nth-child(n+2) {
    margin-top: 10px
  }
  .cs-floor-img {
    margin-left: 16px;
    margin-top: 45px;
    max-width: 839px
  }
  .cs-section-txt {
    margin-top: 20px
  }
  .cs-section-box {
    margin-top: 54px
  }
  .cs-section-box + .cs-section-box {
    margin-top: 70px
  }
  .cs-section-lead {
    margin-top: 27px
  }
  .cs-flow {
    margin-top: 54px
  }
  .cs-flow-list {
    margin-top: 20px
  }
  .cs-flow-item:nth-child(n+2) {
    margin-top: 25px
  }
  .cs-flow-head-icon {
    margin-right: 8px;
    vertical-align: top
  }
  .cs-flow-txt {
    margin-top: 10px
  }
  .cs-flow-note {
    border-radius: 5px;
    margin-top: 15px;
    max-width: 736px;
    padding: 15px 5px 23px 24px
  }
  .cs-flow-caption {
    margin-top: 8px
  }
}
@media screen and (min-width:769px) and (max-width:1400px) {
  .top-le-list:after {
    border-radius: 15px 0 0 15px;
    width: 800px
  }
  .top-le-box {
    margin-left: 12px;
    padding-top: 80px
  }
  .top-le-slider {
    padding: 32px 0 66px 38px
  }
  .top-le-slider .swiper-slide {
    border-radius: 15px
  }
  .top-le-slider .swiper-button-prev {
    height: 42px;
    right: 150px;
    width: 42px
  }
  .top-le-slider .swiper-button-next {
    height: 42px;
    right: 92px;
    width: 42px
  }
  .top-le-slider .swiper-button-arrow {
    height: 10px;
    width: 19px
  }
  .top-le-slider .swiper-button-arrow:before {
    border-width: 5px 5px 5px 0
  }
  .top-le-slider .swiper-button-arrow:after {
    height: 2px;
    top: 4px;
    width: 16px
  }
  .top-le-slider .swiper-counter {
    right: 92px
  }
  .top-le-slider .swiper-counter .count {
    font-size: 22px;
    margin-right: 7px
  }
  .top-le-slider .swiper-counter .slash {
    font-size: 16px;
    margin-right: 4px
  }
  .top-le-slider .swiper-counter .total {
    font-size: 16px
  }
}
@media screen and (max-width:768px) {
  .only-pc {
    display: none
  }
  .heading-01 {
    font-size: 10.13vw
  }
  .pagetop {
    bottom: 3.73vw;
    opacity: 0;
    position: fixed;
    right: 3.73vw;
    transition: all .5s ease;
    visibility: hidden;
    width: 10.13vw;
    z-index: -1
  }
  .pagetop.on {
    opacity: 1;
    visibility: visible;
    z-index: 99
  }
  .pagetop-txt {
    font-family: Barlow, sans-serif;
    font-size: 3.2vw;
    font-weight: 500;
    margin-bottom: 1.33vw;
    text-align: center
  }
  .pagetop-link {
    display: block
  }
  .pagetop-link-icon {
    align-items: center;
    border: .27vw solid #222;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
    display: flex;
    height: 10.13vw;
    justify-content: center;
    transform: rotate(-90deg);
    width: 10.13vw
  }
  .pagetop-link-icon-arrow {
    display: block;
    height: 2.4vw;
    position: relative;
    width: 4.93vw
  }
  .pagetop-link-icon-arrow:before {
    border-color: transparent transparent transparent #222;
    border-style: solid;
    border-width: 1.13vw 0 1.13vw 1.13vw;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 0
  }
  .pagetop-link-icon-arrow:after {
    background: #222;
    content: "";
    display: block;
    height: .27vw;
    left: 0;
    position: absolute;
    top: .93vw;
    width: 4vw
  }
  .c-arrow {
    border: .27vw solid #fff;
    height: 8.53vw;
    width: 8.53vw
  }
  .c-arrow.--black {
    border: .27vw solid #222
  }
  .c-arrow-icon {
    height: 1.87vw;
    width: 3.73vw
  }
  .c-arrow-icon:before {
    border-width: .93vw 1.07vw .93vw 0
  }
  .c-arrow-icon:after {
    height: .27vw;
    top: .8vw;
    width: 2.93vw
  }
  .c-txt {
    font-size: 4.27vw;
    line-height: 1.71875
  }
  .c-txt small {
    font-size: 3.73vw;
    line-height: 1.4285714286;
    margin-top: 2.93vw
  }
  .c-txt strong {
    font-size: 4.53vw;
    line-height: 1.4705882353
  }
  .c-txt.-smallSp {
    font-size: 3.47vw;
    line-height: 1.5384615385
  }
  .c-txt.-smallSp small {
    font-size: 3.2vw;
    letter-spacing: 0;
    margin-top: 1.33vw
  }
  .c-txt-head {
    font-size: 4.53vw;
    line-height: 1.6176470588
  }
  .c-txt-head.-yaku {
    font-feature-settings: "palt";
    letter-spacing: .08em;
    margin-right: -1.6vw
  }
  .c-head-sec-01 {
    border-bottom: .27vw solid #a79363;
    font-size: 3.2vw;
    padding-bottom: 2.67vw
  }
  .c-head-sec-01-num {
    font-size: 4vw;
    margin-bottom: 1.33vw
  }
  .c-head-sec-01-num em {
    font-size: 6.4vw;
    margin-left: 1.6vw
  }
  .c-head-sec-01-txt {
    line-height: 1.27778
  }
  .c-head-sec-01-txt, .c-head-sec-02 {
    font-size: 4.8vw;
    letter-spacing: .1em
  }
  .c-head-sec-02 {
    flex-wrap: wrap;
    line-height: 1.2777777778;
    padding-left: 4.8vw
  }
  .c-head-sec-02:before {
    height: 4.8vw;
    top: 1.07vw;
    width: 1.07vw
  }
  .c-head-sec-02 small {
    font-size: 4.27vw;
    line-height: 1.4375;
    margin-left: -4.8vw;
    margin-top: 3.47vw
  }
  .c-breadcrumb-item {
    font-size: 2.67vw
  }
  .c-breadcrumb-item:nth-child(n+2) {
    padding-left: 4.8vw
  }
  .c-breadcrumb-item:nth-child(n+2):before {
    border-bottom: .13vw solid #222;
    border-right: .13vw solid #222;
    height: 1.07vw;
    left: 1.6vw;
    top: 1.6vw;
    width: 1.07vw
  }
  .c-icon-num {
    font-size: 3.2vw;
    height: 6.27vw;
    width: 6.27vw
  }
  .c-bg-sub {
    background-image: url(../img/common/bg-sub-fv-sp.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-top: 11.2vw
  }
  .l-container {
    padding: 0 3.73vw
  }
  .header {
    left: 3.73vw;
    position: absolute;
    top: 5.33vw
  }
  .header-logo {
    display: none
  }
  .header-logo-img {
    width: 16.67vw
  }
  .header-list {
    border-radius: 0 0 0 2vw;
    opacity: 0;
    padding: 14vw 0 8.67vw;
    position: fixed;
    right: 0;
    top: 0;
    transition: all .5s ease;
    visibility: hidden;
    width: 57.73vw;
    z-index: -1
  }
  .header-list.on {
    opacity: 1;
    visibility: visible;
    z-index: 8
  }
  .header-list-item:not(:last-child) .header-list-txt {
    border-bottom: .13vw solid #404040
  }
  .header-list-item {
    margin: 0 auto;
    width: 36vw
  }
  .header-list-txt {
    font-size: 4.27vw;
    padding: 4.53vw 0;
    text-align: right
  }
  .header-drawer {
    background: #222;
    border-radius: 0 0 0 2vw;
    height: 18.67vw;
    position: fixed;
    right: 0;
    top: 0;
    width: 18.67vw;
    z-index: 9
  }
  .header-drawer.on span:first-child {
    margin-top: 6.67vw;
    transform: rotate(25deg)
  }
  .header-drawer.on span:last-child {
    margin-top: -.53vw;
    transform: rotate(-25deg)
  }
  .header-drawer span {
    background: #fff;
    display: block;
    height: .53vw;
    transition: all .5s ease;
    width: 9.33vw
  }
  .header-drawer span:first-child {
    margin: 6.93vw auto 0
  }
  .header-drawer span:last-child {
    margin: 3.6vw auto 0
  }
  .contact .header-logo, .sub .header-logo {
    display: block
  }
  .footer {
    padding: 10.67vw 0 2.67vw
  }
  .footer-corp {
    font-size: 4vw;
    line-height: 1.26667;
    margin-bottom: 5.33vw
  }
  .footer-logo {
    margin-bottom: 7.2vw
  }
  .footer-logo-m {
    height: 10.93vw;
    margin: 0 auto 7.47vw;
    width: 32.13vw
  }
  .footer-logo-p {
    height: 10.53vw;
    margin: 0 auto 7.2vw;
    width: 44.13vw
  }
  .footer-logo-k {
    height: 9.33vw;
    margin: 0 auto;
    width: 43.07vw
  }
  
    .footer-logo-partner{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
  }
    .footer-logo-partner ul li{
	width: 47.5%;
	margin-right: 5%;
	float: left;
	margin-bottom: 20px;
	}
	.footer-logo-partner ul li:nth-child(2n){
	margin-right: 0%;
	}
	.footer-logo-partner ul li img{
	width: 100%!important;
	height: auto!important
	}
  
  
  .footer-copy {
    font-size: 2.67vw;
    text-align: center
  }
  .footer .footer-logo-pt_izumi_pt_asahi {
    font-size: 4vw;
    line-height: 1.26667;
    margin-bottom: 10.67vw
  }
  .footer .footer-logo-pt_izumi_pt_asahi img {
    margin-top: 5.33vw;
    width: 100%
  }
  .box-sub-header {
    padding-top: 22.4vw
  }
  .box-sub-header-breadcrumb {
    z-index: 8
  }
  .box-sub-header-ttl {
    margin-top: 9.87vw
  }
  .box-sub-header-ttl-en {
    font-size: 5.33vw;
    margin-bottom: 4vw
  }
  .box-sub-header-ttl-en.-tm01 {
    height: 4.8vw;
    width: 34vw
  }
  .box-sub-header-ttl-txt.only-pc {
    display: none !important
  }
  .box-sub-header-ttl-txt.-sas {
    height: 7.2vw;
    width: 81.07vw
  }
  .box-sub-header-ttl-txt.-tm02 {
    height: 19.73vw;
    width: 86.27vw
  }
  .box-sub-header-ttl-txt.-dp {
    height: 17.6vw;
    width: 85.87vw
  }
  .box-sub-header-ttl-txt.-cs {
    height: 17.87vw;
    width: 77.73vw
  }
  .box-sub-header-ttl-txt.-eg {
    height: 7.47vw;
    width: 88.53vw
  }
  .box-sub-header-ttl-txt.-wn {
    height: 7.33vw;
    width: 88.4vw
  }
  .box-sub-header-ttl-txt.-cb {
    height: 17.73vw;
    width: 62.67vw
  }
  
  .box-sub-header-ttl-txt .h1txt {
  font-family: Noto Sans JP, sans-serif;
  font-size:32px;
}

  .an-spanTxt span {
    min-width: 1.87vw
  }
  .an-spanTxt g, .an-spanTxt span {
    transform: translateY(2.67vw)
  }
  .box-sub-lead-inner {
    padding: 14.53vw 3.73vw 14.4vw
  }
  .box-sub-lead-txt {
    margin-top: 1.33vw
  }
  .box-sub-lead-txt small {
    margin-top: 8vw
  }
  .box-sub-lead-list {
    margin-top: 9.07vw
  }
  .box-sub-lead-item:nth-child(n+2) {
    margin-top: 8.53vw
  }
  .box-sub-lead-item-icon {
    margin-right: 2.13vw
  }
  .box-sub-lead-item-txt {
    margin-top: 1.87vw
  }
  .top-mv {
    /*background-image: url(/assets/img/top/mv-sp.jpg);*/
    height: 100%
  }
  .top-mv-box {
    height: 123.73vw;
    width: 100%
  }
  .top-mv-logo {
    height: 68.13vw;
    width: 47.2vw
  }
  .top-mv-bird {
    left: 21.33vw;
    top: -26.4vw;
    transform: rotate(-8deg)
  }
  .top-mv-bird, .top-mv-bird svg {
    height: 140.8vw;
    width: 132vw
  }
  .top-mv-scroll {
    bottom: 29.33vw;
    left: -8vw
  }
  .top-mv-scroll-txt {
    font-size: 3.2vw;
    margin-right: 1.87vw
  }
  .top-mv-scroll-line {
    height: .13vw;
    width: 26.67vw
  }
  
  
  
  #slide_main{
height: 100vh;
position: absolute;
width: 100%
}
#slide_main .swiper-slide{
	height: 100vh;
	width: 100%;
	background-position: center center;
	background-size: cover;
}
#slide_main .swiper-slide.sl01{
	background-image: url(../img/top/mv01.jpg);
}
#slide_main .swiper-slide.sl02{
	background-image: url(../img/top/mv02.jpg);
}
#slide_main .swiper-slide.sl03{
	background-image: url(../img/top/mv03.jpg);	
}
#slide_main .swiper-slide.sl04{
	background-image: url(../img/top/mv04.jpg);	
} 
#slide_main .swiper-slide.sl05{
	background-image: url(../img/top/mv05.jpg);	
}   
  
  
  
  
  
  .top-cm {
    padding: 5vw 3.73vw 5vw
  }
  .top-cm-ttl {
    margin-bottom: 10.67vw
  }
  .top-cm-ttl-img {
    height: 7.33vw;
    width: 27.2vw
  }
  .top-cm-lbl {
    right: -4.4vw;
    top: -13.87vw;
    width: 90.8vw
  }
  .top-cm-movie {
    border-radius: 2vw;
    height: 52vw;
    margin-bottom: 0vw
  }
  .top-cm-movie-icon {
    display: none;
    height: 16vw;
    top: 18.13vw;
    width: 16vw
  }
  .top-cm-cast-lbl {
    left: .53vw;
    top: -29.6vw;
    width: 64.93vw
  }
  .top-cm-cast-item:not(:last-child) {
    margin-bottom: 15.2vw
  }
  .top-cm-cast-img {
    height: 36.67vw;
    margin: 0 auto 7.47vw;
    width: 52.8vw
  }
  .top-cm-cast-img img, .top-cm-cast-img picture {
    height: 100%
  }
  .top-cm-cast-box {
    width: 100%
  }
  .top-cm-cast-ttl {
    font-size: 4vw;
    margin-bottom: 4.27vw;
    text-align: center
  }
  .top-cm-cast-ttl:after {
    background: #222;
    content: "";
    display: block;
    height: .53vw;
    margin: 5.33vw auto 0;
    width: 6.67vw
  }
  .top-cm-cast-ttl small {
    font-size: 2.93vw;
    margin-left: 2.67vw
  }
  .top-cm-cast-txt {
    font-size: 3.73vw;
    line-height: 1.42857
  }
  .top-cm-link {
    border-radius: 1.33vw;
    box-shadow: 0 1.33vw 2.67vw rgba(0, 0, 0, .15);
    height: 9.33vw;
    margin: 9.87vw auto 0;
    width: 68.67vw
  }
  .top-cm-link-txt {
    font-size: 3.47vw;
    margin-right: 1.33vw
  }
  .top-cm-link-icon {
    height: 3.6vw;
    width: 5.2vw
  }
  .top-hl {
    padding: 10.67vw 5.33vw
  }
  .top-hl-lbl-01 {
    top: 20.8vw;
    z-index: 3
  }
  .top-hl-lbl-01, .top-hl-lbl-02 {
    border-radius: 0 2vw 2vw 0;
    left: 4.8vw;
    padding: 3.07vw 5.73vw 3.07vw .53vw
  }
  .top-hl-lbl-02 {
    top: 30.4vw;
    z-index: 2
  }
  .top-hl-lbl-img-01 {
    height: 5.87vw;
    width: 63.73vw
  }
  .top-hl-lbl-img-02 {
    height: 6vw;
    width: 30.13vw
  }
  .top-hl-lbl span {
    background: #fff;
    display: inline-block
  }
  .top-hl-lbl span:first-child {
    border-radius: 0 1.33vw 1.33vw 0;
    padding: 2.67vw 0
  }
  .top-hl-lbl span:last-child {
    border-radius: 0 0 1.33vw 0;
    margin-top: -.53vw;
    padding: .53vw 0 2.67vw
  }
  .top-hl-ttl-sub {
    height: 6vw;
    margin: 0 auto 5.07vw;
    width: 47.73vw
  }
  .top-hl-ttl-main {
    height: 13.2vw;
    width: 33.6vw
  }
  .top-hl-slider {
    border-radius: 2vw
  }
  .top-hl-img-01 {
    background-image: url(/assets/img/top/hl-01-sp.jpg)
  }
  .top-hl-img-02 {
    background-image: url(/assets/img/top/hl-02-sp.jpg)
  }
  .top-hl-img-03 {
    background-image: url(/assets/img/top/hl-03-sp.jpg)
  }
  .top-sc {
    padding-top: 30.67vw
  }
  .top-sc-bg {
    padding-bottom: 29.47vw
  }
  .top-sc-lbl {
    right: 1.6vw;
    top: -44.4vw;
    width: 88.8vw
  }
  .top-sc-content {
    margin-top: 32vw
  }
  .top-sc-bird {
    right: 6.4vw;
    top: -100.8vw;
    width: 40vw
  }
  .top-sc-bird-01 {
    right: 19.2vw;
    top: -96.93vw;
    width: 14vw
  }
  .top-sc-bird-02 {
    right: 6.93vw;
    top: -82.13vw;
    width: 11.07vw
  }
  .top-sc-border {
    top: -11.73vw;
    width: 94.13vw
  }
  .top-sc-top {
    border-radius: 2vw;
    box-shadow: 0 1.33vw 2.67vw rgba(0, 0, 0, .15);
    margin: 7.47vw auto 0;
    padding: 8vw 5.33vw 5.33vw;
    width: 80vw
  }
  .top-sc-top-ttl {
    border-bottom: .27vw solid #fff;
    font-size: 5.87vw;
    margin-bottom: 1.6vw;
    padding-bottom: 2.93vw;
    text-align: center
  }
  .top-sc-top-txt {
    font-size: 4.27vw;
    line-height: 1.59375;
    margin-bottom: 2.93vw
  }
  .top-sc-top-lbl {
    font-size: 4.27vw;
    justify-content: center;
    margin-left: 14.13vw
  }
  .top-sc-top-lbl .c-arrow {
    margin-left: 5.33vw
  }
  .top-sc-middle {
    border-radius: 2vw;
    box-shadow: 0 1.33vw 2.67vw rgba(0, 0, 0, .15);
    margin: 0 auto 7.47vw;
    padding: 8.53vw 5.33vw 5.33vw;
    width: 80vw
  }
  .top-sc-middle-ttl {
    border-bottom: .27vw solid #fff;
    font-size: 5.6vw;
    line-height: 1.28571;
    margin-bottom: 1.6vw;
    padding-bottom: 2.4vw
  }
  .top-sc-middle-ttl-sub {
    font-size: 4.8vw
  }
  .top-sc-middle-txt {
    font-size: 4.27vw;
    line-height: 1.59375;
    margin-bottom: 1.87vw
  }
  .top-sc-middle-lbl {
    font-size: 4.27vw;
    margin-left: 14.13vw
  }
  .top-sc-middle-lbl .c-arrow {
    margin-left: 5.33vw
  }
  .top-sc-bottom-item {
    border-radius: 2vw;
    box-shadow: 0 1.33vw 2.67vw rgba(0, 0, 0, .15);
    padding: 6.67vw 5.33vw 5.33vw;
    position: relative;
    width: 80vw
  }
  .top-sc-bottom-item:not(:last-child) {
    margin-bottom: 7.47vw
  }
  .top-sc-bottom-ttl {
    border-bottom: .27vw solid #222;
    font-size: 5.87vw;
    margin-bottom: 1.6vw;
    padding-bottom: 2.93vw
  }
  .top-sc-bottom-txt {
    font-size: 4.27vw;
    line-height: 1.59375;
    margin-bottom: 1.87vw
  }
  .top-sc-bottom-lbl {
    font-size: 4.27vw;
    margin-left: 14.13vw
  }
  .top-sc-bottom-lbl .c-arrow {
    margin-left: 5.33vw
  }
  .top-sc-illust {
    top: 73.47vw;
    width: 100%
  }
  .top-sc-ttl {
    padding: 0 3.73vw;
    transform: translateY(-4.67vw)
  }
  .top-sc-ttl-img {
    height: 8.53vw;
    width: 66.8vw
  }
  .top-sc-txt {
    font-size: 4.8vw;
    line-height: 1.5833333333;
    margin-top: 3.2vw;
    padding: 0 3.73vw
  }
  .top-sc-box {
    position: relative
  }
  .top-sc-box:not(:last-child) {
    margin-bottom: 20vw
  }
  .top-sc-box-01 {
    padding-top: 20vw
  }
  .top-sc-box-01 .top-sc-box-illust {
    top: 5.87vw
  }
  .top-sc-box-02 .top-sc-box-illust, .top-sc-box-03 .top-sc-box-illust, .top-sc-box-04 .top-sc-box-illust {
    top: -13.73vw
  }
  .top-sc-box-icon {
    height: 56.27vw;
    margin: 0 auto 4.8vw;
    position: relative;
    width: 40vw;
    z-index: 2
  }
  .top-sc-box-illust {
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 1
  }
  .top-sc-box-ttl {
    font-size: 6.4vw;
    line-height: 1.5833333333;
    margin-bottom: 4.27vw;
    padding: 0 3.73vw
  }
  .top-sc-box-txt {
    font-size: 4.27vw;
    line-height: 1.59375;
    padding: 0 3.73vw
  }
  .top-sc-box-txt:not(:last-child) {
    margin-bottom: 2.67vw
  }
  .top-sc-box-txt-dot:before {
    height: 2.67vw;
    margin: 0 2.13vw .27vw 0;
    width: 2.67vw
  }
  .top-le {
    padding-top: 61.87vw
  }
  .top-le-ttl {
    margin-bottom: 16vw;
    padding: 0 3.73vw
  }
  .top-le-ttl-img {
    height: 8.4vw;
    width: 39.73vw
  }
  .top-le-lbl {
    right: .8vw;
    top: -50.4vw;
    width: 92.27vw
  }
  .top-le-bird {
    right: 22.67vw;
    top: 0;
    width: 28.4vw
  }
  .top-le-item:not(:last-child) {
    margin-bottom: 14.93vw
  }
  .top-le-item:after {
    background: #222;
    bottom: 0;
    content: "";
    display: block;
    height: 57.6vw;
    left: 0;
    position: relative;
    position: absolute;
    width: 100%;
    z-index: -1
  }
  .top-le-box {
    margin-bottom: 9.33vw
  }
  .top-le-box-no {
    border-bottom: .27vw solid #222;
    font-size: 6.4vw;
    margin: 0 3.73vw 6.4vw;
    padding-bottom: 1.87vw;
    width: 6.67vw
  }
  .top-le-box-ttl {
    font-size: 6.4vw;
    letter-spacing: .05em;
    margin-bottom: 9.6vw;
    padding: 0 3.73vw
  }
  .top-le-box-txt {
    font-size: 4.27vw;
    letter-spacing: .005em;
    line-height: 1.71875;
    margin-bottom: 3.2vw;
    padding: 0 3.73vw
  }
  .top-le-slider {
    border-radius: 2vw;
    height: 77.07vw;
    margin: 0 auto;
    padding: 3.73vw 3.73vw 20vw;
    width: 100%
  }
  .top-le-slider .swiper-slide {
    border-radius: 2vw;
    height: 53.33vw
  }
  .top-le-slider .swiper-slide.swiper-slide-active {
    box-shadow: 0 1.33vw 5.33vw rgba(0, 0, 0, .3)
  }
  .top-le-slider .swiper-button-prev {
    right: 20.4vw
  }
  .top-le-slider .swiper-button-next, .top-le-slider .swiper-button-prev {
    border: .27vw solid #fff;
    bottom: 5.33vw;
    height: 11.33vw;
    left: auto;
    top: auto;
    width: 11.33vw
  }
  .top-le-slider .swiper-button-next {
    right: 3.73vw
  }
  .top-le-slider .swiper-button-arrow {
    height: 2.4vw;
    width: 4.93vw
  }
  .top-le-slider .swiper-button-arrow:before {
    border-width: 1.13vw 1.13vw 1.13vw 0
  }
  .top-le-slider .swiper-button-arrow:after {
    height: .27vw;
    top: .93vw;
    width: 4vw
  }
  .top-le-slider .swiper-counter {
    bottom: 12.53vw;
    left: 3.73vw
  }
  .top-le-slider .swiper-counter .count {
    font-size: 5.87vw;
    margin-right: 1.6vw
  }
  .top-le-slider .swiper-counter .slash {
    font-size: 4.27vw;
    margin-right: 1.33vw
  }
  .top-le-slider .swiper-counter .total {
    font-size: 4.27vw
  }
  .top-ip {
    margin-bottom: 20vw;
    padding-top: 72.67vw
  }
  .top-ip-top {
    background: #f4f3ef;
    margin-bottom: 7.47vw
  }
  .top-ip-ttl {
    margin-bottom: 3.47vw;
    padding: 0 3.73vw;
    transform: translateY(-5.33vw)
  }
  .top-ip-ttl-img {
    height: 9.07vw;
    width: 69.47vw
  }
  .top-ip-lbl {
    right: .67vw;
    top: -61.6vw;
    width: 87.47vw
  }
  .top-ip-box {
    padding-bottom: 15.2vw
  }
  .top-ip-box-ttl {
    font-size: 6.4vw;
    letter-spacing: .05em;
    margin-bottom: 6.13vw
  }
  .top-ip-box-ttl, .top-ip-box-txt {
    line-height: 1.5833333333;
    padding: 0 3.73vw
  }
  .top-ip-box-txt {
    font-size: 4.8vw
  }
  .top-ip-bottom {
    padding: 0 3.73vw
  }
  .top-ip-link {
    margin-bottom: 16vw
  }
  .top-ip-link-txt {
    font-size: 4.8vw;
    margin-right: 2.93vw
  }
  .top-ip-link-icon {
    border: .27vw solid #222;
    height: 10.13vw;
    width: 10.13vw
  }
  .top-ip-link-icon-arrow {
    height: 2.4vw;
    width: 4.93vw
  }
  .top-ip-link-icon-arrow:before {
    border-width: 1.13vw 0 1.13vw 1.13vw
  }
  .top-ip-link-icon-arrow:after {
    height: .27vw;
    top: .93vw;
    width: 4vw
  }
  .top-ip-img {
    border: .27vw solid #c2c2c2;
    border-radius: 2vw;
    padding: 3.2vw;
    width: 100%
  }
  .top-ip-img-map {
    height: 47.2vw;
    width: 76.8vw
  }
  .top-ip-txt {
    font-size: 4.27vw;
    line-height: 1.59375;
    margin-top: 3.73vw
  }
  .top-ms-bg {
    height: 143.6vw
  }
  .top-ms-inner {
    justify-content: flex-start;
    padding: 0 3.73vw
  }
  .top-ms-ttl {
    margin-bottom: 10.67vw
  }
  .top-ms-ttl-en {
    font-size: 6.4vw;
    margin-bottom: 5.07vw;
    padding-bottom: 1.6vw
  }
  .top-ms-ttl-en:after {
    height: .27vw
  }
  .top-ms-ttl-img {
    height: 18.27vw;
    width: 77.2vw
  }
  .top-ms-txt {
    height: 52.8vw;
    width: 87.47vw
  }
  .step-01 {
    transform: translateY(4vw)
  }
  .step-01-sp, .step-02 {
    transform: translateY(4vw);
    transition: opacity .75s cubic-bezier(.215, .61, .355, 1) .3s, transform 1s cubic-bezier(.215, .61, .355, 1) .3s
  }
  .top-sc-box-icon .l-sp {
    transform: translateY(-32.53vw);
    transition: opacity .5s cubic-bezier(.215, .61, .355, 1) .3s, transform 1s cubic-bezier(.215, .61, .355, 1) 1s
  }
  .top-hl-lbl-img-01 svg g, .top-hl-lbl-img-02 svg g, .top-hl-lbl-img svg g, .top-le-box-no, .top-le-box-ttl span {
    transform: translateY(2.67vw)
  }
  .top-le-box-txt > span span {
    transform: translateY(1.33vw)
  }
  .top-ms-ttl-en span {
    transform: translateY(1.33vw)
  }
  .top-ms-ttl-img.show svg .ms-ttl-g g {
    opacity: 1;
    transform: translate(0)
  }
  .top-ms-ttl-img svg .ms-ttl-g g {
    opacity: 0;
    transform: translateY(2.67vw)
  }
  .top-ms-ttl-img svg .ms-ttl-g g:first-child {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .06s, transform .9s cubic-bezier(.39, .575, .565, 1) .06s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(2) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .12s, transform .9s cubic-bezier(.39, .575, .565, 1) .12s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(3) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .18s, transform .9s cubic-bezier(.39, .575, .565, 1) .18s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(4) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .24s, transform .9s cubic-bezier(.39, .575, .565, 1) .24s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(5) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .3s, transform .9s cubic-bezier(.39, .575, .565, 1) .3s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(6) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .36s, transform .9s cubic-bezier(.39, .575, .565, 1) .36s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(7) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .42s, transform .9s cubic-bezier(.39, .575, .565, 1) .42s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(8) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .48s, transform .9s cubic-bezier(.39, .575, .565, 1) .48s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(9) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .54s, transform .9s cubic-bezier(.39, .575, .565, 1) .54s
  }
  .top-ms-ttl-img svg .ms-ttl-g g:nth-child(10) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .6s, transform .9s cubic-bezier(.39, .575, .565, 1) .6s
  }
  .top-ms-txt svg .ms-txt-g g {
    transform: translateY(2.67vw)
  }
  .top-ms-txt svg .ms-txt-g g:first-child {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .55s, transform .9s cubic-bezier(.39, .575, .565, 1) .55s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(2) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .6s, transform .9s cubic-bezier(.39, .575, .565, 1) .6s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(3) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .65s, transform .9s cubic-bezier(.39, .575, .565, 1) .65s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(4) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .7s, transform .9s cubic-bezier(.39, .575, .565, 1) .7s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(5) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .75s, transform .9s cubic-bezier(.39, .575, .565, 1) .75s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(6) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .8s, transform .9s cubic-bezier(.39, .575, .565, 1) .8s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(7) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .85s, transform .9s cubic-bezier(.39, .575, .565, 1) .85s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(8) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .9s, transform .9s cubic-bezier(.39, .575, .565, 1) .9s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(9) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) .95s, transform .9s cubic-bezier(.39, .575, .565, 1) .95s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(10) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1s, transform .9s cubic-bezier(.39, .575, .565, 1) 1s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(11) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.05s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.05s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(12) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.1s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.1s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(13) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.15s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.15s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(14) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.2s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.2s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(15) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.25s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.25s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(16) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.3s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.3s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(17) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.35s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.35s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(18) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.4s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.4s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(19) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.45s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.45s
  }
  .top-ms-txt svg .ms-txt-g g:nth-child(20) {
    transition: opacity .3s cubic-bezier(.39, .575, .565, 1) 1.5s, transform .9s cubic-bezier(.39, .575, .565, 1) 1.5s
  }
  .top-sc-content {
    opacity: 1 !important
  }
  .top-sc-content .top-sc-border {
    transition: all 1.4s cubic-bezier(.25, .46, .45, .94)
  }
  .top-sc-bottom-item, .top-sc-middle, .top-sc-top {
    transform: translateY(4vw);
    transition: all 1s cubic-bezier(.25, .46, .45, .94)
  }
  .contact-page {
    border-bottom: .27vw solid #000;
    padding: 46.13vw 0 10.67vw
  }
  .contact-page-confirm .contact-content dd span {
    font-size: 4.8vw;
    line-height: 1.5833333333
  }
  .contact-mv {
    margin-bottom: 16vw
  }
  .contact-mv-ttl {
    font-size: 10.13vw;
    letter-spacing: 0;
    padding: 0 3.73vw
  }
  .contact-mv-img {
    top: -28.27vw;
    width: 67.87vw
  }
  .contact-content {
    padding: 0 3.73vw
  }
  .contact-content dl {
    margin-bottom: 10.67vw
  }
  .contact-content dl.post input[type=text] {
    width: 53.33vw
  }
  .contact-content dl.prefectures dd:after {
    border-bottom: .27vw solid #222;
    border-right: .27vw solid #222;
    height: 1.87vw;
    left: 48.53vw;
    top: 4.27vw;
    width: 1.87vw
  }
  .contact-content dt {
    align-items: center;
    margin-bottom: 4.53vw
  }
  .contact-content dt span {
    font-size: 4.8vw;
    line-height: 1.5833333333
  }
  .contact-content dt.required:after {
    border-radius: .67vw;
    font-size: 3.2vw;
    line-height: 6.13vw;
    margin-left: 3.73vw;
    width: 11.73vw
  }
  .contact-content dd input[type=text] {
    border: .27vw solid #020202;
    border-radius: .67vw;
    font-size: 4.8vw;
    padding: 2.93vw 5.33vw
  }
  .contact-content dd .contact-btn {
    border: .27vw solid #404040;
    border-radius: .67vw
  }
  .contact-content dd .contact-btn-01 {
    font-size: 3.87vw;
    line-height: 7.73vw;
    margin-left: 2.13vw;
    width: 33.33vw
  }
  .contact-content dd .contact-btn-02, .contact-content dd .contact-btn-03 {
    font-size: 5.33vw;
    letter-spacing: .1em;
    line-height: 13.6vw;
    width: 66.67vw
  }
  .contact-content dd .contact-btn-03 {
    margin: 4.8vw auto 0
  }
  .contact-content dd select {
    font-size: 4.8vw;
    height: 12vw;
    padding: 0 5.33vw;
    width: 53.33vw
  }
  .contact-content dd textarea {
    border: .27vw solid #020202;
    border-radius: .67vw;
    font-size: 4.8vw;
    height: 48vw;
    padding: 2.93vw 5.33vw
  }
  .contact-content dd textarea.personal {
    font-size: 4.27vw
  }
  .contact-content dd .contact-txt {
    font-size: 4.27vw;
    line-height: 1.71875;
    margin: 14.4vw 0 3.73vw
  }
  .contact-content dd .contact-agreement {
    margin: 10.67vw 0
  }
  .contact-content dd .contact-agreement label {
    font-size: 4.27vw;
    margin-left: 1.07vw
  }
  .contact-thanks {
    border-radius: .67vw;
    margin: 0 auto 16vw;
    padding: 14.13vw 5.33vw 16.13vw;
    width: 92.53vw
  }
  .contact-thanks-ttl {
    font-size: 6.4vw;
    letter-spacing: .05em;
    line-height: 1.5833333333;
    margin-bottom: 6.93vw
  }
  .contact-thanks-txt {
    font-size: 4.8vw;
    line-height: 1.5833333333
  }
  .sas {
    padding-bottom: 12vw
  }
  .sas-section {
    margin-top: 32vw
  }
  .sas-section + .sas-section {
    margin-top: 20.8vw
  }
  .sas-section-inner.-bird01:after {
    height: 24.53vw;
    right: 3.73vw;
    top: 2.67vw;
    transform: translateY(-50%);
    width: 40.4vw
  }
  .sas-hard-list {
    margin-top: 9.87vw
  }
  .sas-hard-item:nth-child(n+2) {
    margin-top: 10.13vw
  }
  .sas-hard-img {
    align-items: flex-end
  }
  .sas-hard-img.-img01 img {
    margin-top: 5.87vw;
    width: 23.2vw
  }
  .sas-hard-img.-img02 img {
    width: 24.27vw
  }
  .sas-hard-img.-img03 img {
    width: 35.73vw
  }
  .sas-hard-img.-img04 img {
    width: 40.27vw
  }
  .sas-hard-img.-img05 img {
    width: 23.2vw
  }
  .sas-hard-img.-img06 img {
    width: 34.93vw
  }
  .sas-hard-img.-img07 img {
    width: 33.87vw
  }
  .sas-hard-img.-img08 img {
    width: 32.8vw
  }
  .sas-hard-head {
    border-radius: 6.67vw;
    font-size: 4.27vw;
    margin: 5.33vw auto 0;
    max-width: 66.67vw;
    padding: 1.87vw 1.33vw
  }
  .sas-hard-txt {
    margin-top: 4vw
  }
  .tm {
    padding-bottom: 19.2vw
  }
  .tm-section {
    margin-top: 20vw
  }
  .tm-section + .tm-section {
    margin-top: 20.27vw
  }
  .tm-section-lead-box-inner.-bird01:after {
    bottom: -5.87vw;
    height: 32.13vw;
    right: 3.73vw;
    transform: translateY(50%);
    width: 34.53vw
  }
  .tm-section-lead {
    margin-top: 6.4vw
  }
  .tm-section-box, .tm-section-box + .tm-section-box {
    margin-top: 13.33vw
  }
  .tm-section-box.-mtS {
    margin-top: 4vw
  }
  .tm-section-img {
    margin-bottom: 5.33vw;
    margin-top: 5.33vw
  }
  .tm-cost-list, .tm-section-txt {
    margin-top: 3.73vw
  }
  .tm-cost-list {
    padding-bottom: 2.13vw
  }
  .tm-cost-item:nth-child(n+2) {
    margin-top: 7.47vw
  }
  .tm-cost-head {
    display: flex
  }
  .tm-cost-head-icon {
    flex: 0 0 auto;
    margin-right: 2.13vw;
    margin-top: .8vw
  }
  .tm-cost-txt {
    margin-top: .53vw
  }
  .tm-cost-item-note {
    border-radius: 1.33vw;
    margin-top: -3.2vw;
    padding: 4vw
  }
  .tm-cost-item-note-caption {
    margin-top: 1.6vw
  }
  .tm-cost-inner {
    margin-top: 5.33vw
  }
  .tm-cost-box {
    margin-top: 3.2vw
  }
  .tm-cost-box-item:nth-child(n+2) {
    margin-top: 2.67vw
  }
  .eg {
    border-bottom: .13vw solid #404040
  }
  .eg-section {
    margin-top: 31.73vw
  }
  .eg-section + .eg-section {
    margin-top: 21.33vw
  }
  .eg-section.-bg {
    padding: 20.67vw 0 16vw
  }
  .eg-section-inner.-bird01:after {
    height: 15.73vw;
    right: -44.27vw;
    top: -26.93vw;
    transform: translate(-100%, -50%);
    width: 48.4vw
  }
  .eg-section-img {
    height: 29.07vw;
    margin-top: 10.67vw
  }
  .eg-section-img img, .eg-section-img picture {
    display: block;
    height: 100%
  }
  .eg-section-ttl {
    margin-top: 14.67vw
  }
  .eg-section-txt {
    margin-top: 3.2vw
  }
  .eg-section-txt small {
    margin-top: 6.67vw
  }
  .eg-list {
    margin-top: 12vw
  }
  .eg-item:not(:last-child) {
    margin-bottom: 9.87vw
  }
  .eg-item-lbl {
    font-size: 4.53vw;
    margin-bottom: 3.47vw
  }
  .eg-item-box {
    align-items: center;
    margin-top: 5.33vw;
    padding-bottom: 8vw
  }
  .eg-item-img-01 {
    height: 17.73vw;
    margin-right: 11.73vw;
    width: 51.73vw
  }
  .eg-item-img-02 {
    height: 31.47vw;
    width: 22.8vw
  }
  .eg-item-img img, .eg-item-img picture {
    display: block;
    height: 100%
  }
  .eg-item-img-txt {
    font-size: 4vw
  }
  .eg-item-img-txt-01 {
    margin-top: 10.67vw
  }
  .eg-item-img-txt-02 {
    margin-top: 4vw
  }
  .eg-display-ttl {
    margin-top: 8.53vw
  }
  .eg-display-list {
    margin-bottom: 22.93vw;
    margin-top: 8vw
  }
  .eg-display-item:not(:last-child) {
    margin-bottom: 10.13vw
  }
  .eg-display-item:first-child .eg-display-item-img {
    height: 84vw
  }
  .eg-display-item-lbl {
    font-size: 4.27vw;
    letter-spacing: .01em;
    margin-bottom: 4.27vw
  }
  .eg-display-item-txt {
    font-size: 4.27vw;
    letter-spacing: .005em;
    line-height: 1.71875;
    margin-bottom: 5.07vw
  }
  .eg-display-item-txt-bottom {
    font-size: 3.73vw;
    letter-spacing: .01em;
    line-height: 1.6;
    margin-top: 1.33vw
  }
  .eg-display-item-cap {
    bottom: .67vw;
    font-size: 3.73vw;
    line-height: 1.42857
  }
  .eg-display-item-img {
    height: 55.73vw;
    width: 100%
  }
  .eg-display-item-img img, .eg-display-item-img picture {
    display: block;
    height: 100%
  }
  .eg-flow-list {
    margin-top: 3.2vw
  }
  .eg-flow-item:nth-child(n+2) {
    margin-top: 3.73vw
  }
  .eg-flow-head {
    display: flex
  }
  .eg-flow-head-icon {
    flex: 0 0 auto;
    margin-right: 2.13vw;
    margin-top: 1.33vw
  }
  .wn {
    border-bottom: .13vw solid #404040;
    padding-bottom: 20.27vw
  }
  .wn-section {
    margin-top: 31.73vw
  }
  .wn-section + .wn-section {
    margin-top: 21.33vw
  }
  .wn-section-inner.-bird01:after {
    height: 15.2vw;
    right: -10.93vw;
    top: -6.4vw;
    transform: translate(-100%, -50%);
    width: 26.4vw
  }
  .wn-section-txt {
    margin-top: 3.47vw
  }
  .wn-list {
    margin-top: 14.93vw
  }
  .wn-item {
    width: 100%
  }
  .wn-item:not(:last-child) {
    margin-bottom: 5.6vw
  }
  .wn-item:first-child {
    order: 2
  }
  .wn-item:nth-child(2) {
    order: 1
  }
  .wn-item:nth-child(3) {
    order: 3
  }
  .wn-item:nth-child(4) {
    order: 4
  }
  .wn-item:nth-child(5) {
    order: 5
  }
  .wn-item-txt {
    font-size: 4.53vw;
    margin-bottom: 3.2vw
  }
  .wn-item-img {
    border-radius: 3.33vw;
    height: 49.33vw;
    width: 100%
  }
  .wn-item-img img, .wn-item-img picture {
    display: block;
    height: 100%
  }
  .cb {
    border-bottom: .13vw solid #404040;
    padding-bottom: 21.33vw
  }
  .cb-section {
    margin-top: 21.33vw
  }
  .cb-section-inner.-bird01:after {
    height: 24.27vw;
    left: 100%;
    margin-left: -6.13vw;
    top: -88.4vw;
    transform: translate(-100%, -50%);
    width: 39.6vw
  }
  .cb-section-img {
    height: 61.73vw;
    margin: 2.67vw -3.73vw 0;
    width: calc(100% + 7.47vw)
  }
  .cb-section-img img, .cb-section-img picture {
    display: block;
    height: 100%
  }
  .cb-section-ttl {
    margin-top: 8.27vw
  }
  .cb-section-txt {
    margin-top: 3.2vw
  }
  .cb-section-txt small {
    font-size: 3.2vw;
    margin-top: 6.67vw
  }
  .cb-time-item {
    margin-top: 10.67vw
  }
  .cb-time-item:nth-child(4) {
    margin-top: 21.33vw
  }
  .cb-time-item-lbl {
    border-radius: 4.4vw;
    font-size: 4.27vw;
    line-height: 8.8vw;
    margin: 0 auto 5.33vw;
    width: 40vw
  }
  .cb-time-row {
    height: 10.67vw;
    padding: 0 6.4vw 0 5.33vw
  }
  .cb-time-row-txt {
    font-size: 4.27vw
  }
  .dp-section {
    margin-top: 21.33vw
  }
  .dp-section + .dp-section {
    margin-top: 20.53vw
  }
  .dp-section-inner.-bird01:after {
    height: 27.87vw;
    right: 5.33vw;
    top: -6.4vw;
    transform: translateY(-100%);
    width: 40.27vw
  }
  .dp-portal {
    background: #f4f3ef;
    margin: 4.8vw -3.73vw 0;
    padding-bottom: 22.93vw
  }
  .dp-portal-inner {
    margin: 1.87vw 3.73vw 0
  }
  .dp-portal-item:nth-child(n+2) {
    margin-top: 8vw
  }
  .dp-portal-head {
    font-size: 4.53vw
  }
  .dp-portal-head-icon {
    margin-right: 2.13vw
  }
  .dp-portal-txt {
    margin-top: 2.13vw
  }
  .dp-portal-caption {
    margin: 8vw 3.73vw 0
  }
  .cs {
    border-bottom: .13vw solid #404040;
    padding-bottom: 20.27vw
  }
  .cs-header-inner.-bird01:after {
    bottom: -1.87vw;
    height: 24vw;
    right: 6.4vw;
    transform: translateY(100%);
    width: 37.73vw;
    z-index: 1
  }
  .cs-section {
    margin-top: 21.33vw
  }
  .cs-house-img {
    border-radius: 2vw
  }
  .cs-house-caption {
    font-size: 2.93vw;
    margin-right: -1.33vw;
    margin-top: .8vw
  }
  .cs-floor {
    margin-top: 14.67vw
  }
  .cs-floor-list {
    margin-top: 1.6vw
  }
  .cs-floor-item:nth-child(n+2) {
    margin-top: 1.33vw
  }
  .cs-floor-img {
    margin: 9.87vw -2.13vw -.53vw
  }
  .cs-section-txt {
    margin-top: 2.67vw
  }
  .cs-section-box {
    margin-top: 13.87vw
  }
  .cs-section-box + .cs-section-box {
    margin-top: 18.13vw
  }
  .cs-section-lead {
    margin-top: 6.4vw
  }
  .cs-flow {
    margin-top: 13.33vw
  }
  .cs-flow-list {
    margin-top: 2.67vw
  }
  .cs-flow-item:nth-child(n+2) {
    margin-top: 7.47vw
  }
  .cs-flow-head {
    display: flex
  }
  .cs-flow-head-icon {
    flex: 0 0 auto;
    margin-right: 2.13vw;
    margin-top: 1.33vw
  }
  .cs-flow-note {
    border-radius: 1.33vw;
    line-height: 1.71875;
    margin-bottom: 8.53vw;
    margin-top: 4vw;
    padding: 3.47vw 3.2vw 5.33vw 4vw
  }
  .cs-flow-note-txt {
    font-feature-settings: "palt";
    line-height: 1.85
  }
  .cs-flow-caption {
    margin-top: 1.87vw
  }
  
  /*分譲情報*/
ul.sales_list{
 display: flex;
 flex-wrap : wrap; 
justify-content: space-between;
align-items: stretch;
}
ul.sales_list li{
width: calc(100% - 0px);
border: solid 1px #e5e5e5;
margin-bottom: 30px;
border-radius: 8px;
padding: 20px 20px 80px 20px;
position: relative
}
ul.sales_list li .logo{
text-align: center
}
ul.sales_list li .logo img{
width: 65%;
height: auto
}
ul.sales_list li .name{
font-size: 16px;
font-weight: 600;
text-align: center
}
ul.sales_list li .thum{
padding-top: 15px;
padding-bottom: 15px;
}
ul.sales_list li .thum img{
width: 100%;
height: auto
}
ul.sales_list li .exp{
line-height: 2
}
ul.sales_list li .btn_link{
position: absolute;
bottom: 20px;
width: 90%;
margin-left: auto;
margin-right: auto;
}
ul.sales_list li .btn_link a{
background-color: #222222;
text-align: center;
padding: 10px;
display: block;
color: #FFF
}
ul.sales_list li .btn_link a:hover{
color: #DADADA
}

/*分譲情報202407*/
#sale_mv{
	background-image: url(../img/sale/mv_bk.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	height: 75vh;
  text-align: center;
  margin-top: 10vh;
}
#sale_mv img{
width: 70%;
height: auto;
margin-top: 8vh
}
ul#sales_logo_list{
width: 100%;
text-align: center;
margin-left: auto;
margin-right: auto;
padding-bottom: 60px;
}
ul#sales_logo_list li{
width: calc(100% / 2.3);
display: inline-block
}
ul#sales_logo_list li img{
width: 100%;
height: auto
}
.sale_map{
text-align: center;
background-color: #F4F3EF
}
.sale_map img{
width: 100%;
height: auto
}
.sale_map_ph{}
.sale_map_ph img{
width: 100%;
height: auto
}

/*分譲情報202409*/
.cFix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden
}
.cFix {
  min-height: 1px
}
* html .cFix {
  height: 1px
}
#owners_voice ul{
margin-top: 30px;
}
#owners_voice ul li{
margin-bottom: 20px;
}
#owners_voice ul .cont_txt{
width: 100%;
float: none
}
#owners_voice ul .cont_txt .voice_txt{
font-size: 14px!important;
padding-top: 1em;
}
#owners_voice ul .cont_txt .voice_txt p{
margin-bottom: 1em!important
}
#owners_voice ul .c-head-sec-01-txt{
font-size: 16px;
}
#owners_voice ul .cont_ph{
width: 70%;
float: none;
margin-left: auto;
margin-right: auto
}
#owners_voice ul .cont_ph img{
width: 100%;
height: auto;
object-fit: cover;
border-radius: 15px;
}
#owners_voice ul li:nth-child(2n) .cont_txt{
float: none;
}
#owners_voice ul li:nth-child(2n) .cont_ph{
float: none
}
#owners_voice .pdf_dl{
text-align: center
}
#owners_voice .pdf_dl a{
display: inline-block;
line-height: 1;
padding: 10px 40px;
border-radius: 100px;
background-color: #2A2A2A;
color: #FFF
}


/*お問い合わせ*/
#mailformpro table{
width: 100%;
text-align: left;
line-height: 2.2;
border-top: 1px solid #868686;
}
#mailformpro table th,#mailformpro table td{
	border-bottom: 1px solid #868686;
	padding: 5px 15px;
	display: block;
}
#mailformpro table th{
white-space: nowrap;
vertical-align: top;
background-color: #F3F3F3
}
#mailformpro .privacy{
font-size: 12px;
}
#mailformpro .privacy a{
text-decoration: underline
}
#mailformpro table .form_field{
	width: calc(100% - 24px)!important;
	padding: 10px!important;
	border: 1px solid #D2D2D2;
}
#mailformpro .any{
	border-left: 4px solid #8F9093;
	padding-left: 1em
}
#mailformpro .label_notice{
text-align: right;
font-size: 12px;
padding-bottom: 1em
}
#mailformpro .label_notice span{
margin-left: 2em
}
#mailformpro .submit_btn {
	padding: 10px 20px;
	font-size: 16px;
	border: none;
	color: #FFF;
	background-color: #000;
	cursor: pointer;
	outline: none;
}




}