@charset "utf-8";
/* ===================================================================

 file name  :index.css
 style info :トップページ

=================================================================== */

/* =============================

	overwrite

=============================== */
#main {
  background: #fff;
  position: relative;
  z-index: 1000;
  /* padding-top: 130px; */
}
@media screen and (max-width: 767px) {
  #main {
    /* padding-top: 100px; */
  }
  #header {
    position: fixed;
    top: 0 !important;
  }
}

/* =================================== */

/*
#mv
---------------------------*/
#mv {
  position: relative;
  padding-bottom: 53.125%;
  /*
	height: calc(100vh - 120px);
	height: calc(var(--vh, 1vh) * 100 - 120px);
	*/
}
#mvSlider {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*
	position: fixed;
	height: calc(100vh - 120px);
	height: calc(var(--vh, 1vh) * 100 - 120px);
	*/
  opacity: 0;
  overflow: hidden;
}
.pre-anim-start .loaded #mvSlider {
  opacity: 1;
  transition: all ease 0.5s;
}
#mv .swiper-container {
  opacity: 0;
  transition: opacity ease 2.5s;
  height: 100%;
}
.pre-anim-start #mv.loaded .swiper-container.swiper-container-initialized {
  opacity: 1;
}
#mv .swiper-slide {
  overflow: hidden;
  position: relative;
  height: 100%;
}
#mv .swiper-slide .inner {
  position: relative;
}
#mv .swiper-slide .img {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
#mv .swiper-slide .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
@media screen and (max-width: 767px) {
  #mv {
    padding-bottom: 0;
    height: calc(100vh - 106px);
    height: calc(var(--vh2, 1vh) * 100 - 106px);
  }
  #mvSlider {
    position: fixed;
    top: 60px;
    height: calc(100vh - 106px);
    height: calc(var(--vh2, 1vh) * 100 - 106px);
  }
}
/* swiper animetion */
#mv .swiper-slide .img {
  display: block;
}
#mv .swiper-slide.move-zoom.run-anim .img {
  -ms-animation: zoomUp 10s linear 0s 1 normal both;
  -webkit-animation: zoomUp 10s linear 0s 1 normal both;
  animation: zoomUp 10s linear 0s 1 normal both;
}
#mv .swiper-slide.move-zoomout.run-anim .img {
  -ms-animation: zoomOut 10s linear 0s 1 normal both;
  -webkit-animation: zoomOut 10s linear 0s 1 normal both;
  animation: zoomOut 10s linear 0s 1 normal both;
}
#mv .swiper-slide.move-left .img,
#mv .swiper-slide.move-right .img {
  width: 110%;
  max-width: 110%;
}
#mv .swiper-slide.move-left.run-anim .img {
  -ms-animation: moveleft 10s linear 0s 1 normal both;
  -webkit-animation: moveleft 10s linear 0s 1 normal both;
  animation: moveleft 10s linear 0s 1 normal both;
}
#mv .swiper-slide.move-right.run-anim .img {
  -ms-animation: moveright 10s linear 0s 1 normal both;
  -webkit-animation: moveright 10s linear 0s 1 normal both;
  animation: moveright 10s linear 0s 1 normal both;
}

@-webkit-keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
@-ms-keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
@-webkit-keyframes zoomOut {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
@-ms-keyframes zoomOut {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zoomOut {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
@-webkit-keyframes moveright {
  0% {
    transform: translateX(-10%);
  }
  100% {
    transform: translateX(0);
  }
}
@-ms-keyframes moveright {
  0% {
    transform: translateX(-10%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes moveright {
  0% {
    transform: translateX(-10%);
  }
  100% {
    transform: translateX(0);
  }
}
@-webkit-keyframes moveleft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-10%);
  }
}
@-ms-keyframes moveleft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-10%);
  }
}
@keyframes moveleft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-10%);
  }
}

/*
.swiper-pagination
---------------------------*/
#mv .swiper-pagination {
  top: 0;
  bottom: auto;
  left: auto;
  right: 60px;
  width: auto;
  height: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#mv .swiper-pagination-bullet {
  position: relative;
  display: block;
  margin: 5vh 0 !important;
  background: #fff;
  opacity: 1 !important;
}
@media screen and (min-height: 900px) {
  #mv .swiper-pagination-bullet {
    margin: 40px 0 !important;
  }
}
#mv .swiper-pagination-bullet.swiper-pagination-bullet::after {
  content: '';
  width: 60px;
  height: 60px;
  border-radius: 100%;
  border: 1px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: transform ease 0.5s;
  transform-origin: center center;
}
#mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #fff !important;
}
.no_touch #mv .swiper-pagination-bullet:hover::after,
#mv .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  transform: translate(-50%, -50%) scale(1);
}
@media screen and (max-width: 767px) {
  #mv .swiper-pagination {
    right: 30px;
    padding-bottom: 3%;
    justify-content: flex-end;
  }
  #mv .swiper-pagination-bullet {
    margin: 3.4vh 0 !important;
    width: 5px;
    height: 5px;
  }
  #mv .swiper-pagination-bullet.swiper-pagination-bullet::after {
    content: '';
    width: 44px;
    height: 44px;
  }
}
@media screen and (max-width: 767px) and (min-height: 900px) {
  #mv .swiper-pagination-bullet {
    margin: 40px 0 !important;
  }
}

/*
#mv .catch01
---------------------------*/
#mv .catch01 {
  position: absolute;
  width: 500px;
  bottom: 80px;
  left: 50px;
  z-index: 101;
  pointer-events: none;
}
#mv .catch02 {
  position: absolute;
  bottom: 54px;
  right: 68px;
  z-index: 100;
  pointer-events: none;
}
#vcopy {
  position: absolute;
  left: 40px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  z-index: 100;
  color: #fff;
  font-weight: 800;
  font-style: italic;
  font-size: 1.2rem;
  pointer-events: none;
  white-space: nowrap;
}
@media screen and (max-width: 1300px) {
  #mv .catch02 {
    bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  #mv .catch01 {
    width: 70%;
    bottom: 120px;
    left: 20px;
  }
  #mv .catch02 {
    display: none;
  }
  #vcopy {
    left: 12px;
    font-size: 1rem;
  }
}
@media screen and (min-aspect-ratio: 10/10) and (max-width: 767px) {
  #mv .catch01 {
    width: 50%;
    top: 20px;
    right: 50px;
    height: calc(90% - 20px);
    text-align: right;
  }
  #mv .catch01 img {
    height: 100% !important;
    width: auto !important;
  }
}

/*
#scroll
---------------------------*/
#scroll {
  position: absolute;
  left: 50%;
  bottom: 65px;
  padding-bottom: 1em;
  transform: translateX(-50%);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  z-index: 1001;
  color: #fff;
  font-weight: 800;
  font-size: 1.2rem;
  font-style: italic;
}
#scroll::before,
#scroll::after {
  content: '';
  height: 65px;
  width: 1px;
  background: #fff;
  position: absolute;
  bottom: -65px;
  left: 50%;
  z-index: 2;
  transform-origin: left top;
}
#scroll::before {
  animation: effect_rundown-anim 2s 0.2s ease normal infinite;
}
#scroll::after {
  height: 105px;
  background: #000;
  bottom: -105px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #scroll {
    font-size: 1rem;
    bottom: 45px;
  }
  #scroll::before {
    height: 45px;
    bottom: -45px;
  }
  #scroll::after {
    height: 70px;
    bottom: -70px;
  }
}
@-webkit-keyframes effect_rundown-anim {
  0% {
    -webkit-transform: translateY(0);
    opacity: 0;
  }
  20% {
    -webkit-transform: translateY(0);
    opacity: 0;
  }
  40% {
    -webkit-transform: translateY(0);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateY(200%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(200%);
    opacity: 0;
  }
}
@keyframes effect_rundown-anim {
  0% {
    -webkit-transform: translateY(0);
    opacity: 0;
  }
  20% {
    -webkit-transform: translateY(0);
    opacity: 0;
  }
  40% {
    -webkit-transform: translateY(0);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateY(200%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(200%);
    opacity: 0;
  }
}

/*
#landforsale
---------------------------*/
#landforsale {
  padding: 120px 0 80px;
}
#landforsale.has-texture::before {
  top: 50px;
}
#landforsale > ul {
  display: flex;
  /*justify-content: space-between;*/
  justify-content: center;
  flex-wrap: wrap;
}
#landforsale > ul > li {
  /*width: 550px;*/
  position: relative;
}
/* #landforsale > ul > li .btn-primary {
  display: block;
  width: 350px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
} */
#landforsale > ul > li .btn-primary {
  display: block;
  width: 350px;
  position: absolute;
  top: 65%;
  left: 20%;
  transform: translateX(-20%);
}
#landforsale > ul > li.bnr-bunjo ul {
  display: flex;
  justify-content: space-between;
  width: 470px;
  position: absolute;
  left: 50%;
  bottom: 138px;
  transform: translateX(-50%);
}
#landforsale > ul > li.bnr-bunjo ul li.btn-primary {
  width: 220px;
  position: relative;
  left: 0;
  top: 0;
  transform: none;
  margin: 0;
}
#landforsale > ul > li.bnr-bunjo .btn-primary {
  bottom: 138px;
}
#landforsale > ul > li.bnr-tochisoudan .btn-primary {
  bottom: 75px;
}
#landforsale > ul > li .btn-primary a {
  padding: 0.9em 0;
  transition: background ease 0.3s;
  font-size: 1.6rem;
}
#landforsale > ul > li.bnr-bunjo .btn-primary a {
  background: #fff;
  color: #1a2d59;
  border-color: #1a2d59;
}
#landforsale > ul > li.bnr-bunjo .animation-effect_light-stream .animation_inner::after {
  background: linear-gradient(
    45deg,
    rgba(176, 172, 111, 0) 0%,
    rgba(176, 172, 111, 0) 27%,
    rgba(176, 172, 111, 0.2) 39%,
    rgba(176, 172, 111, 0.7) 57%,
    rgba(176, 172, 111, 0) 73%,
    rgba(176, 172, 111, 0) 100%
  );
}
#landforsale .bnr-bunjo .btn-primary a::after {
  background-image: url('../img/common/ico_arrow_blue.svg');
}
.no_touch #landforsale .bnr-bunjo .btn-primary a:hover {
  background: #fff;
}
.no_touch #landforsale .bnr-bunjo .btn-primary a:hover::after {
  background-image: url(../img/common/ico_arrow_blue.svg);
}
#landforsale > ul > li .btn-primary.comingsoon a {
  pointer-events: none;
}
#landforsale > ul > li .btn-primary.comingsoon a::before {
  background: #fff;
  content: 'COMING SOON';
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  width: calc(100% - 40px);
  text-align: center;
}
#landforsale > ul > li .btn-primary.comingsoon.black a::before {
  background: #2e2e2e;
}
#landforsale > ul > li .btn-primary.comingsoon a::after,
.comingsoon.animation-effect_light-stream.comingsoon .animation_inner::after {
  display: none;
}

@media screen and (max-width: 767px) {
  #landforsale {
    padding: 0 0 70px;
  }
  #landforsale.has-texture::before {
    top: 50px;
  }
  #landforsale > ul {
    margin: 0 auto;
  }
  #landforsale > ul > li {
    margin: 0 auto 2.6%;
  }
  #landforsale > ul > li.bnr-bunjo ul {
    width: 86%;
    bottom: 30%;
  }
  #landforsale > ul > li.bnr-bunjo ul li.btn-primary {
    width: 47.3%;
    margin: 0;
  }

  #landforsale > ul > li.bnr-tochisoudan {
    width: 96%;
    padding-left: 4%;
    margin-bottom: 0;
  }
  #landforsale > ul > li.bnr-bunjo .btn-primary {
    bottom: 28.4%;
    width: 76.5%;
    left: 50%;
    transform: translateX(-50%);
    top: 125%;
  }
  #landforsale > ul > li.bnr-tochisoudan .btn-primary {
    bottom: 14%;
    width: 70%;
  }
  #landforsale > ul > li .btn-primary a {
    padding: 0.65em 0;
    font-size: 1.8rem;
  }
  #landforsale > ul > li.bnr-bunjo ul li.btn-primary a {
    padding: 0.65em 0;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 479px) {
  #landforsale > ul > li .btn-primary a {
    font-size: 3.7vw;
  }
  #landforsale > ul > li.bnr-bunjo ul li.btn-primary a {
    font-size: 3vw;
  }
}
@media screen and (max-width: 320px) {
  #landforsale > ul > li .btn-primary a {
    font-size: 1.2rem;
  }
  #landforsale > ul > li.bnr-bunjo ul li.btn-primary a {
    font-size: 1rem;
  }
}

/*
#event
---------------------------*/
#event {
  position: relative;
  border-top: 1px solid #bfbfbf;
  padding: 160px 0 150px;
}
/* #event::after {
  content: '';
  width: 1px;
  height: 90px;
  background: #bfbfbf;
  position: absolute;
  top: -45px;
  left: 50%;
} */
#event .has-texture.has-texture-right::before {
  top: -185px;
}
#event > .sec-inner-1200 > .ttl-h01 {
  margin-bottom: 60px;
}

#event #sumainosankanbi {
  padding-bottom: 80px;
}
#event #sumainosankanbi h2 {
  margin: 0 auto 30px;
  text-align: center;
}
#event #sumainosankanbi h2 img {
  max-height: 100px;
  width: auto;
}
#event #sumainosankanbi .catch {
  margin-bottom: 80px;
  text-align: center;
  font-size: 1.8rem;
}
#event #sumainosankanbi #sumainosankanbi_list {
  overflow: hidden;
}
.Pc #event #sumainosankanbi #sumainosankanbi_list .slidelength-1 .swiper-wrapper,
.Pc #event #sumainosankanbi #sumainosankanbi_list .slidelength-2 .swiper-wrapper,
.Pc #event #sumainosankanbi #sumainosankanbi_list .slidelength-3 .swiper-wrapper {
  padding-left: 20px;
  justify-content: center;
}
#event #sumainosankanbi #sumainosankanbi_list .swiper-wrapper li > div,
#event #sumainosankanbi #sumainosankanbi_list .swiper-ccnavigations {
  opacity: 0;
  transform: translateY(50px);
  transition: all ease 0.8s 1s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#event #sumainosankanbi #sumainosankanbi_list.sc-show .swiper-container-initialized li > div,
#event #sumainosankanbi #sumainosankanbi_list.sc-show .swiper-container-initialized + .swiper-ccnavigations {
  opacity: 1;
  transform: translateY(0);
  transition: all ease 0.8s;
}
#event #sumainosankanbi #sumainosankanbi_list ul li {
  width: 270px;
}
#event #genbakengaku {
  padding: 100px 0;
}
#event #soudankai {
  padding: 100px 0 140px;
}
#event #soudankai .eventlist ul li a .notes p {
  display: none;
}
#event #soudankai #soudan_list {
  overflow: hidden;
}
.Pc #event #soudankai #soudan_list .slidelength-1 .swiper-wrapper,
.Pc #event #soudankai #soudan_list .slidelength-2 .swiper-wrapper,
.Pc #event #soudankai #soudan_list .slidelength-3 .swiper-wrapper {
  padding-left: 20px;
  justify-content: center;
}
#event #soudankai #soudan_list .swiper-wrapper li > div,
#event #soudankai #soudan_list .swiper-ccnavigations {
  opacity: 0;
  transform: translateY(50px);
  transition: all ease 0.8s 1s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#event #soudankai #soudan_list.sc-show .swiper-container-initialized li > div,
#event #soudankai #soudan_list.sc-show .swiper-container-initialized + .swiper-ccnavigations {
  opacity: 1;
  transform: translateY(0);
  transition: all ease 0.8s;
}
#event #soudankai #soudan_list ul li {
  width: 270px;
}
@media screen and (max-width: 767px) {
  #event {
    padding: 60px 0 60px;
  }
  #event::after {
    height: 75px;
    top: -37px;
  }
  #event .has-texture.has-texture-right::before {
    top: -90px;
  }
  #event > .sec-inner-1200 > .ttl-h01 {
    margin-bottom: 40px;
  }
  #event #sumainosankanbi {
    background: #f2f2f3;
    padding: 45px 20px;
    margin: 0 -20px;
  }
  #event #sumainosankanbi h2 {
    max-width: 245px;
    margin: 0 auto 15px;
  }
  #event #sumainosankanbi .catch {
    margin-bottom: 40px;
    font-size: 1.4rem;
  }
  #event #sumainosankanbi #sumainosankanbi_list {
    overflow: visible;
  }
  #event #sumainosankanbi #sumainosankanbi_list ul li {
    width: 81.3%;
    padding: 0 3%;
  }
  #event #sumainosankanbi .swiper-ccnavigations .swiper-ccpagination .swiper-pagination-bullet {
    margin: 0 7px !important;
  }
  #event #genbakengaku {
    padding: 40px 0;
  }
  #event #soudankai {
    padding: 40px 0 60px;
  }
  #event #soudankai #soudan_list {
    overflow: visible;
  }
  #event #soudankai #soudan_list ul li {
    width: 81.3%;
    padding: 0 3%;
  }
  #event #soudankai .swiper-ccnavigations .swiper-ccpagination .swiper-pagination-bullet {
    margin: 0 7px !important;
  }
}
@media screen and (max-width: 374px) {
  #event #sumainosankanbi {
    padding: 45px 10px;
    margin: 0 -10px;
  }
}

/*
#showroom
---------------------------*/
#showroom {
  margin-top: -120px;
  padding-top: 120px;
}
#showroom .outer {
  padding: 130px 0 0;
}
#showroom #showroom_list {
  overflow: hidden;
}
#showroom #showroom_list > ul > li {
  width: 380px;
  height: auto;
}
#showroom #showroom_list > ul > li .inner {
  position: relative;
  padding: 15px 15px 130px;
  background: #fff;
  height: 100%;
  border-radius: 5px;
}
#showroom #showroom_list > ul > li .inner figure {
  position: relative;
}
#showroom #showroom_list > ul > li .inner figcaption {
  background: #2e2e2e;
  color: #fff;
  text-align: right;
  font-size: 1.2rem;
  padding: 0.3em 0.5em;
  position: absolute;
  bottom: 0;
  width: 100%;
}
#showroom #showroom_list > ul > li .notes h3 {
  margin: 1em 0;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
#showroom #showroom_list > ul > li .notes ul {
  border-left: 1px solid #c3c3c3;
  padding-left: 10px;
}
#showroom #showroom_list > ul > li .notes ul li {
  margin: 0.5em 0;
}
#showroom #showroom_list > ul > li .notes ul li dl {
  display: flex;
  justify-content: space-between;
}
#showroom #showroom_list > ul > li .notes ul li dl dt {
  width: 5em;
  font-size: 1.4rem;
  font-weight: 700;
  color: #4b807f;
}
#showroom #showroom_list > ul > li .notes ul li dl dd {
  width: calc(100% - 5em);
  font-size: 1.4rem;
}
#showroom #showroom_list > ul > li .notes ul li dl dd a {
  color: #000;
}
#showroom #showroom_list > ul > li .brn-reserve {
  position: absolute;
  bottom: 34px;
  left: 50%;
  transform: translateX(-50%);
  right: 0;
  width: calc(90% - 30px);
}
@media screen and (max-width: 767px) {
  #showroom {
    margin-top: -60px;
    padding-top: 60px;
  }
  #showroom .outer {
    padding: 0 0 70px;
  }
  #showroom .ttl-h02 {
    margin-bottom: 50px;
  }
  #showroom #showroom_list {
    overflow: visible;
  }
  #showroom #showroom_list > ul > li {
    width: 82.66%;
    padding: 0 2%;
  }
  #showroom #showroom_list > ul > li .inner {
    padding: 10px 10px 87px;
  }
  #showroom #showroom_list > ul > li .inner img {
    width: 100%;
  }
  #showroom #showroom_list > ul > li .notes h3 {
    font-size: 1.6rem;
  }
  #showroom #showroom_list > ul > li .notes ul {
    padding-left: 5px;
  }
  #showroom #showroom_list > ul > li .notes ul li dl dt {
    font-size: 1rem;
  }
  #showroom #showroom_list > ul > li .notes ul li dl dd {
    font-size: 1rem;
  }
  #showroom #showroom_list > ul > li .brn-reserve {
    bottom: 24px;
    width: calc(90% - 20px);
  }
}

/*
#accesss
---------------------------*/
#access {
  margin-top: -120px;
  padding-top: 120px;
  padding-bottom: 140px;
  background: #fff;
}
#access.has-bg::before {
  top: 260px;
  height: calc(100% - 260px);
  z-index: 1;
}
#access.has-bg.has-tab::before {
  top: 390px;
  height: calc(100% - 390px);
}
#access .sec-inner {
  width: 100%;
  max-width: 1200px;
  padding-left: 20px;
  padding-right: 20px;
  margin: 0 auto;
  position: relative;
  padding-top: 963px;
  z-index: 2;
}
#access.no-photo .sec-inner {
  padding-top: 580px;
}
#access .shop .photo {
  position: absolute;
  top: -410px;
  left: 0;
  margin: 0 0 0 96px;
}
#access .shop .shop-detail {
  max-width: 920px;
  display: flex;
  justify-content: space-between;
}
#access .shop .shop-detail.has-texture::before {
  top: auto;
  bottom: -90px;
}
#access .shop .shop-detail .ttl-wrap {
  width: 320px;
}
#access .shop .shop-detail .ttl-wrap .ttl-h01,
#access .shop .shop-detail .ttl-wrap .ttl-h01 .ja {
  text-align: left;
}
#access .shop .shop-detail .detail {
  width: 540px;
}
#access .shop .shop-detail .detail h3 {
  margin-bottom: 2em;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.2em;
}
#access .shop .shop-detail .detail ul {
  display: flex;
  margin-bottom: 2em;
  flex-wrap: wrap;
}
#access .shop .shop-detail .detail ul li {
  padding-left: 20px;
  margin-bottom: 20px;
  margin-right: 20px;
  border-left: 1px solid #c3c3c3;
}
#access .shop .shop-detail .detail ul li dl {
  position: relative;
}
#access .shop .shop-detail .detail ul li dl dt {
  margin-bottom: 0.8em;
  color: #1b2d5a;
  position: absolute;
}
#access .shop .shop-detail .detail ul li dl dd {
  padding-left: 3em;
}
#access .shop .shop-detail .detail ul li:nth-child(3) dl dd {
  padding-left: 5em;
}
#access .shop .shop-detail .detail ul li:nth-child(4) dl dd {
  padding-left: 4em;
}
#access .shop .shop-detail .detail ul li dl dd a {
  color: #000;
}
#access .shop .shop-detail .detail .root {
  margin-bottom: 2em;
  text-decoration: underline;
}
#access .shop .shop-detail .detail .caption {
  font-size: 1.4rem;
}

#access .gmap {
  position: absolute;
  top: 0;
  max-width: 1160px;
  width: 100%;
}
#access .gmap .map {
  height: 490px;
  margin-bottom: 60px;
}
#access .gmap .map iframe {
  width: 100% !important;
  height: 100% !important;
}
#access .gmap .btn-map {
  max-width: 300px;
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  #access {
    margin-top: -60px;
    padding-top: 60px;
    padding-bottom: 60px;
  }
  #access .sec-inner {
    padding-top: 0 !important;
  }
  #access .panel-wrap {
    padding-top: 120px;
  }
  #access .shop .photo {
    position: static;
    width: 87.6923%;
    margin: 0 0 25px;
  }
  #access .shop .shop-detail {
    display: block;
  }
  #access .shop .shop-detail.has-texture::before {
    display: none;
  }

  #access .shop .shop-detail .ttl-wrap {
    width: 100%;
  }
  #access.has-tab .shop .shop-detail .ttl-wrap {
    position: absolute;
    top: -215px;
  }

  #access .shop .shop-detail .detail {
    width: 100%;
  }
  #access .shop .shop-detail .detail h3 {
    margin-bottom: 1em;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
  }
  #access .shop .shop-detail .detail ul li {
    padding-left: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
  }
  #access .shop .shop-detail .detail .caption {
    margin-bottom: 2em;
    font-size: 1rem;
  }
  #access .shop .shop-detail .detail ul li dl dt {
    margin-bottom: 0.3em;
  }

  #access .gmap {
    width: auto;
    margin: 0 -20px;
    position: static;
  }
  #access.has-tab .gmap {
    width: 100%;
    margin: 0;
  }
  #access .gmap .map {
    height: 240px;
    margin-bottom: 26px;
  }
  #access .gmap .btn-map {
    width: 60%;
    margin-right: auto;
  }
}
@media screen and (max-width: 374px) {
  #access .sec-inner {
    padding-left: 10px;
    padding-right: 10px;
  }
  #access .gmap {
    margin: 0 -10px;
  }
}
