@charset "utf-8";
/* CSS Document */

#inner02{
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
}

.residenceConceptBlock,
.residenceConceptBlock *,
.residenceConceptBlock *::before,
.residenceConceptBlock *::after {
  box-sizing: border-box !important;
}

.residenceConceptBlock {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #6e5743 !important;
  font-family: "Times New Roman", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN",
    "Hiragino Mincho Pro", "MS PMincho", serif !important;
  isolation: isolate !important;
}

.residenceConceptBlock__inner {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-height: 900px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
}

.residenceConceptBlock__label {
  position: absolute !important;
  top: 44px !important;
  right: 13vw !important;
  z-index: 5 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 25px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0.22em !important;
  color: #6e5743 !important;
  writing-mode: horizontal-tb !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.residenceConceptBlock__lead {
  position: absolute !important;
  top: 185px !important;
  left: 36vw !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: row-reverse !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 46px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.residenceConceptBlock__title,
.residenceConceptBlock__subtitle {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  writing-mode: vertical-rl !important;
  text-orientation: mixed !important;
  text-align: left !important;
  white-space: nowrap !important;
  font-weight: 400 !important;
  transform: none !important;
}

.residenceConceptBlock__title {
  font-size: 33px !important;
  line-height: 1.65 !important;
  letter-spacing: 0.1em !important;
  color: #a78f6d !important;
}

.residenceConceptBlock__subtitle {
  font-size: 22px !important;
  line-height: 1.9 !important;
  letter-spacing: 0.12em !important;
  color: #80664d !important;
}

.residenceConceptBlock__body {
  position: absolute !important;
  top: 185px !important;
  left: 18vw !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: row-reverse !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 26px !important;
  width: auto !important;
  height: 255px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  transform: none !important;
}

.residenceConceptBlock__body span {
  display: block !important;
  width: auto !important;
  height: 255px !important;
  margin: 0 !important;
  padding: 0 !important;
  writing-mode: vertical-rl !important;
  text-orientation: mixed !important;
  text-align: left !important;
  white-space: nowrap !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0.12em !important;
  color: #5f6670 !important;
}

.residenceConceptBlock__english {
  position: absolute !important;
  left: 18vw !important;
  top: 580px !important;
  bottom: auto !important;
  z-index: 4 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0.52em !important;
  color: #9a8065 !important;
  writing-mode: horizontal-tb !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.residenceConceptBlock__visual {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 79vw !important;
  max-width: 1320px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.residenceConceptBlock__image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: bottom !important;
}

.residenceConceptBlock__caption {
  position: absolute !important;
  right: 1.2vw !important;
  bottom: 1vw !important;
  z-index: 2 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0.08em !important;
  color: #8d8d8d !important;
  writing-mode: horizontal-tb !important;
  text-align: left !important;
  white-space: nowrap !important;
}

@media screen and (max-width: 1024px) {
  .residenceConceptBlock__inner {
    min-height: auto !important;
    padding: 36px 5vw 0 !important;
  }

  .residenceConceptBlock__label {
    position: static !important;
    margin: 0 0 70px !important;
    text-align: right !important;
    font-size: 22px !important;
  }

  .residenceConceptBlock__lead {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    margin-left: 36vw !important;
    gap: 34px !important;
  }

  .residenceConceptBlock__body {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    margin-top: 70px !important;
    margin-left: 4vw !important;
    height: 255px !important;
    gap: 24px !important;
  }

  .residenceConceptBlock__english {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    margin-top: 70px !important;
    margin-left: 4vw !important;
  }

  .residenceConceptBlock__visual {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    width: 115% !important;
    max-width: none !important;
    margin: -30px -5vw 0 auto !important;
  }
}

@media screen and (max-width: 767px) {
  .residenceConceptBlock__inner {
    padding: 28px 20px 0 !important;
  }

  .residenceConceptBlock__label {
    margin-bottom: 56px !important;
    font-size: 16px !important;
  }

  .residenceConceptBlock__lead {
    display: block !important;
    margin-left: 0 !important;
  }

  .residenceConceptBlock__title,
  .residenceConceptBlock__subtitle {
    writing-mode: horizontal-tb !important;
    white-space: normal !important;
  }

  .residenceConceptBlock__title {
    font-size: 31px !important;
    line-height: 1.7 !important;
  }

  .residenceConceptBlock__subtitle {
    margin-top: 28px !important;
    font-size: 16px !important;
    line-height: 2 !important;
  }

  .residenceConceptBlock__body {
    display: block !important;
    height: auto !important;
    margin-top: 42px !important;
    margin-left: 0 !important;
  }

  .residenceConceptBlock__body span {
    display: inline !important;
    height: auto !important;
    writing-mode: horizontal-tb !important;
    white-space: normal !important;
    font-size: 14px !important;
    line-height: 2.1 !important;
    letter-spacing: 0.08em !important;
  }

  .residenceConceptBlock__body span::after {
    content: "\A" !important;
    white-space: pre !important;
  }

  .residenceConceptBlock__english {
    margin-top: 46px !important;
    margin-left: 0 !important;
    font-size: 12px !important;
    line-height: 1.8 !important;
    letter-spacing: 0.28em !important;
    white-space: normal !important;
  }

  .residenceConceptBlock__visual {
    width: calc(100% + 40px) !important;
    margin: 36px -20px 0 !important;
  }

  .residenceConceptBlock__caption {
    right: 12px !important;
    bottom: 8px !important;
    font-size: 9px !important;
  }
}


.fade-in {
  opacity: 0;
  transition-duration: 1.5s;
  transition-property: opacity, transform
}
.fade-in_moveY {
  opacity: 0;
  transition-duration: 1.5s;
  transition-property: opacity, transform
}
.delay01 {
  transition-duration: 1s
}
.delay02 {
  transition-duration: 2s
}
.delay03 {
  transition-delay: 3s
}
.fade-in-up {
  transform: translate(0, 100px)
}
.fade-in-up_moveY {
  transform: translate(0, 100px)
}
@media(max-width: 768px) {
  .fade-in-up_moveY {
    transform: translate(0, 200px)
  }
}
.fade-in-down {
  transform: translate(0, -100px)
}
.fade-in-left {
  transform: translate(-50px, 0)
}
.fade-in-right {
  transform: translate(50px, 0)
}
.fade-blur {
  opacity: .1;
  filter: blur(20px)
}
.scroll-in {
  opacity: 1;
  transform: translate(0, 0)
}
.scroll-in_move_Y {
  opacity: 1;
  transform: translate(0, 0)
}
@media(max-width: 768px) {
  .scroll-in_move_Y {
    transform: translate(0, 50%)
  }
}
.luxDesignMain {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.luxDesignMain__image {
  display: block;
  width: 100%;
  height: auto;
}

/* 白文字 */
.luxDesignMain__textArea {
  position: absolute;
  left: 3.5%;
  top: 46%;
  transform: translateY(-50%);
  z-index: 2;
}

.luxDesignMain__title {
  margin: 0;
  color: #fff;
  font-family: "Times New Roman", "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-size: clamp(52px, 6vw, 120px);
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.luxDesignMain__caption {
  position: absolute;
  right: 2%;
  bottom: 2%;
  z-index: 2;
  margin: 0;
  color: #fff;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: right;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.7);
	  padding: 5px 8px;
  background: rgba(0, 0, 0, 0.35);
}

/* PC：画像フル表示 */
@media screen and (min-width: 769px) {
  .luxDesignMain__image {
    width: 100%;
    height: auto;
  }
}

/* スマホ */
@media screen and (max-width: 768px) {
  .luxDesignMain {
    height: 70vh;
    min-height: 420px;
  }

  .luxDesignMain__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left center;
  }

  .luxDesignMain__textArea {
    left: 6%;
    top: 43%;
  }

  .luxDesignMain__title {
    font-size: clamp(42px, 16vw, 72px);
  }
}



/* secDesign */
.secDesign { font-size: 60%!important;
	padding: 120px 0 175px;	box-sizing: border-box;
  -ms-overflow-style: scrollbar
}
*, ::after, ::before {
  box-sizing: inherit}

.secDesign .secHead .jp02 {
    font-size: 84%;
    line-height: 2.5;
    letter-spacing: 0.1em;
}
.secDesign .secHead .under_h3 { font-size: 180%;line-height: 1.6;}
.secDesign.hasBg {
    background-image: url("../img/design/bg-content@1.5x.jpg");
    color: #fff;
}
.secDesign .designImg { margin-top: 135px;}
@media only screen and (max-width: 1000px) {
    .secDesign { padding: 120px 0!important;}
    .secDesign .designImg { margin-top: 0;}
    .secDesign .secHead .jp02 { line-height: 2;}
}
@media only screen and (max-width: 767px) {
    .secDesign { padding: 60px 0!important;}
    .secDesign .secHead .jp02 { text-align: left;}
}
/* secFacade */
.secFacade { padding: 150px 0 235px;}
.facadeImg { margin: 65px auto 165px; }
.facadeImg .facadePhoto { 
    position: relative;
    padding-bottom: 10px;
}
.facadeImg .facadePhoto .pic_cap { right:60px; }
.materialBlock { margin-top: 155px;}
.materialBlock .boxLine {
    border-top: 1px solid #dcd1cc;
    border-bottom: 1px solid #dcd1cc;
    padding: 15px 0 30px;
}
.materialBlock .headCont { margin-bottom: 40px;}
.materialBlock .headCont .ttl {
    font-size: 1.8rem;
    letter-spacing: 0.06em;
    line-height: 1.7;
    margin-bottom: 20px;
}
.materialBlock .headCont .ttl .en { color: #dcd1cc;}
.materialBlock .headCont .ttl .jp {
    font-size: 89%;
    letter-spacing: 0.1em;
    display: block;
}
.materialBlock .headCont .txt {
    font-size: 1.4rem;
    line-height: 2.1;
    letter-spacing: 0.06em;
}
.materialBlock .personBox { display: flex;}
.materialBlock .personBox + .personBox { margin-top: 15px;}
.materialBlock .personBox .avt { width: 128px;}
.materialBlock .personBox .info {
    flex: 1;
    background-color: #252625;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 7px 7px 15px;
}
.materialBlock .personBox .txt {
    font-size: 1.2rem;
    letter-spacing: 0;
    line-height: 1.5;
    margin-bottom: 10px;
}
.materialBlock .personBox .name {
    font-size: 1.6rem;
    letter-spacing: 0.08em;
    line-height: 1.5;
}
.materialBlock .listPhoto.row {
    margin-left: -10px;
    margin-right: -10px;
}
.materialBlock .listPhoto.row [class^="col"] {
    padding-left: 10px;
    padding-right: 10px;
}
.materialBlock .listPhoto.row [class^="col"]:nth-child(n+3) { margin-top: 40px;}
.materialBlock .listPhoto .txt {
    font-size: 1.2rem;
    letter-spacing: 0.08em;
    line-height: 1.3;
    margin-top: 10px;
}
.materialBlock02 .iconParkers { max-width: 160px;}
.materialBlock02 .boxLine { padding: 20px 0;}
@media only screen and (min-width: 768px){
    .materialBlock.row > .col-md-7 {
        -ms-flex: 0 0 65%;
        flex: 0 0 65%;
        max-width: 65%;
    }
    .materialBlock.row > .col-md-5 {
        flex: 1;
        max-width: initial;
    }
    .materialBlock02 .row > .col-md-7 {
        -ms-flex: 0 0 61.5%;
        flex: 0 0 61.5%;
        max-width: 61.5%;
    }
    .materialBlock02 .row > .col-md-5 {
        flex: 1;
        max-width: initial;
    }
    .materialBlock .personRow.row {
        margin-left: -10px;
        margin-right: -10px;
    }
    .materialBlock .personRow.row > [class^="col"] {
        padding-left: 10px;
        padding-right: 10px;
    }
}
@media only screen and (min-width: 1001px){
    .materialBlock.row {
        margin-left: -30px;
        margin-right: -30px;
    }
    .materialBlock.row > [class^="col"] {
        padding-left: 30px;
        padding-right: 30px;
    }
    .materialBlock.row > .col-md-7 {
        -ms-flex: 0 0 61%;
        flex: 0 0 61%;
        max-width: 61%;
    }
    .materialBlock02 .row {
        margin-left: -35px;
        margin-right: -35px;
    }
    .materialBlock02 .row > [class^="col"] {
        padding-left: 35px;
        padding-right: 35px;
    }
    .materialBlock .personRow.row {
        margin-left: -15px;
        margin-right: -15px;
    }
    .materialBlock .personRow.row > [class^="col"] {
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media only screen and (max-width: 1000px){
    .facadeImg { margin: 0 auto 60px;}
    .facadeImg .facadePhoto .pic_cap { right:0; }
    .materialBlock { margin-top: 60px;}
    .materialBlock .headCont .ttl {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
    .materialBlock .headCont .txt {
        font-size: 1.2rem;
        letter-spacing: 0.01em;
    }
    .materialBlock .personBox .avt { width: 100px;}
    .materialBlock .personBox .txt {
        font-size: 1.1rem;
        margin-bottom: 5px;
    }
    .materialBlock .personBox .name { font-size: 1.4rem; }
    .materialBlock .listPhoto .txt { font-size: 1.1rem; }
}
@media only screen and (max-width: 767px) {
    .facadeImg { margin: 0 auto 40px; }
    .materialBlock { margin-top: 40px;}
    .materialBlock .boxLine { padding: 20px 0;}
    .materialBlock .headCont { margin-bottom: 20px;}
    .materialBlock .headCont .ttl { text-align: center;}
    .materialBlock .personRow.row > [class^="col"] + [class^="col"] { margin-top: 10px;}
    .materialBlock .listPhoto.row { margin-top: 20px;}
    .materialBlock .listPhoto.row [class^="col"]:nth-child(n+3) { margin-top: 20px;}
    .materialBlock .personBox + .personBox { margin-top: 10px;}
    .materialBlock02 .row > [class^="col"] + [class^="col"] { margin-top: 20px;}
    .materialBlock02 .iconParkers { margin: auto;}
}
/* secLandscape */
.secLandscape { padding: 145px 0 220px;}
.landscapeList { margin-top: 190px;}
.landscapeList .landscapeHead .ttl {
    font-size: 1.6rem;
    letter-spacing: 0.158em;
    font-weight: 300;
    padding-bottom: 10px;
    margin-bottom: 15px;
    color: #4d3a28;
    border-bottom: 1px solid #4d3a28;
}
.landscapeList .landscapeHead .txt {
    font-size:1.1rem;
    letter-spacing: 0.1em;
    font-weight: 300;
    line-height: 1.8;
    color: #231815;
}
.landscapeList .landscapeHead + .landscapeHead { margin-top: 35px;}
.landscapeList .landscapeNotes {
    width: 53.5%;
    position: absolute;
    bottom: 0%;
    left: 7%;
}
@media only screen and (max-width: 1000px){
    .landscapeList { margin-top: 60px;}
    .landscapeList .landscapeHead .ttl {
        font-size: 1.4rem;
        padding-bottom: 8px;
        margin-bottom: 10px;
    }
    .landscapeList .landscapeHead .txt { font-size: 1.1rem;}
    .landscapeList .landscapeHead + .landscapeHead { margin-top: 20px;}
}
@media only screen and (max-width: 767px){
    .landscapeList { margin-top: 30px; }
    .landscapeList .pic_cap { letter-spacing: 0;}
}
/* secEntrance */
.secEntrance { padding: 125px 0 230px;}
.etranceImg { margin: 110px 0 185px;}
.etranceBlock { display: flex;}
.etranceBlock + .etranceBlock { margin-top: 170px;}
.etranceBlock .detail {
    width: 54.5%;
    padding: 0 60px 0 0;
}
.etranceBlock .img { flex: 1;}
.etranceBlock .pos_rel {
    margin-right: calc(-1*(100vw - 970px) / 2);
    width: calc(100% + (100vw - 970px) / 2);
}
.etranceBlock .detail .cont {
    display: flex;
    align-items: flex-end;
    height: 100%;
}
.etranceBlock .etranceHead .ttl {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    line-height: 2.2;
    font-weight: 300;
    margin-bottom: 10px;
}
.etranceBlock .etranceHead .txt {
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    line-height: 2.5;
    font-weight: 300;
}
.etranceBlock.reverse { flex-direction: row-reverse;}
.etranceBlock.reverse .detail {
    width: 31%;
    padding: 0 0 0 60px;
}
.etranceBlock.reverse .cont { margin-right: -100px;}
.etranceBlock.reverse .pos_rel {
    margin-left: calc(-1*(100vw - 970px) / 2);
    margin-right: auto;
    width: calc(100% + (100vw - 970px) / 2);
}
@media only screen and (max-width: 1200px) {
    .etranceBlock.reverse .cont { margin-right: 0;}
    .etranceBlock.reverse .detail {
        width: 38%;
        padding: 0 0 0 2%;
    }
    .etranceBlock .detail { padding: 0 2% 0 0;}
    .etranceBlock .etranceHead .ttl {
        font-size: 1.7rem;
        line-height: 2;
    }
    .etranceBlock .etranceHead .txt {
        font-size: 1.4rem;
        line-height: 2;
    }
}

@media only screen and (max-width: 1000px) {
    .etranceImg { margin: 0 0 60px;}
    .etranceBlock.reverse .pos_rel {
        margin-left: -15px;
        width: auto;
    }
    .etranceBlock .pos_rel {
        margin-right: -15px;
        width: auto;
    }
    .etranceBlock + .etranceBlock { margin-top: 60px;}
    .etranceBlock .etranceHead .ttl {
        font-size: 1.6rem;
        line-height: 1.8;
        letter-spacing: 0.01em;
    }
    .etranceBlock .etranceHead .txt {
        font-size: 1.3rem;
        letter-spacing: 0.01em;
        line-height: 1.8;
    }
}
@media only screen and (max-width: 767px) {
    .etranceImg { margin: 0 0 40px;}
    .etranceBlock { display: block;}
    .etranceBlock + .etranceBlock { margin-top: 40px;}
    .etranceBlock.reverse .detail,
    .etranceBlock .detail {
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }
    .etranceBlock .pos_rel { margin-right: 0;}
    .etranceBlock.reverse .pos_rel { margin-left: 0;}
    .etranceBlock .detail .cont {
        text-align: center;
        justify-content: center;
    }
}

.switchPhotos {
    position: relative;
    height: auto;
    width: 100%;
}
.switchPhotos > .photo02 {
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    filter: blur(5px);
    transition: all ease-in-out 1.5s;
}
.switchPhotos.isChange > .photo02 {
    opacity: 1;
    visibility: visible;
    filter: blur(0px);
}
.c_brown02{color: #A09271 !important;}
.c_white{color: #fff !important;}
.c_blk{color: #231815 !important;}
.c_brown{color: #4D3A28 !important;}
.border_brown{background: #A09271 !important;}

/* */
.pa_ttl{color: #D8CD9B; font-size: 240%; margin-top: 40px; line-height: 2.0;}
.pa_ttl + p {font-size: 160%; margin-top: 2em; line-height: 2.2;}
.etranceImg.des_pa{margin-top: 80px;}
.flex_des_p{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 80%;
	margin-left: 0;
	margin-right: auto;
}
.flex_des_p .item_01{width: 70%;}
.flex_des_p .item_02{width: 26%;}
@media only screen and (max-width: 767px) {
	.etranceImg.des_pa{margin-top: 40px;}
	.flex_des_p, .flex_des_p .item_01, .flex_des_p .item_02{width: 100%; max-width: 100%;}
	.flex_des_p .item_02{margin-top: 15px;}
	.item_02_copy{padding-left: 15px; padding-right: 15px;}
	.pa_ttl{margin-top: 0;line-height: 1.8;}
	.pa_ttl + p {margin-top: 1.8em; line-height: 1.8;}
}




/*==================================================================
	Contents setting
===================================================================*/

img {
	max-width: 100%;
	height: auto;
}
.inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
}
@media only screen and (min-width: 1001px) and (max-width: 1200px) {
	.inner {max-width: 92%;}
}


/* lower section title */
.secHead {
    font-size: 2.2em;
    letter-spacing: 0.1em;
    margin-bottom: 60px;
    position: relative;
    text-align: center;
}
.secHead .en {
    color: #283243;
    display: block;
    font-size: 2.2rem;
    text-transform: uppercase;
}
.secHead .jp {
    color: #191b28;
    display: block;
	line-height: 2.0;
    margin-top: 40px;
}
.secHead .jp02 {
    color: #191b28;
    display: block;
	font-size: 90%;
	line-height: 2.0;
    margin-top: 40px;
}
.secHead .lines {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	content: "";
	height: 8px;
	width: 100%;
	max-width: 165px;
	margin: 0 auto;
	position: absolute;
	top: 40px;
	right: 0;
	left: 0;
	z-index: 1;
}
.secHead .lines .line1 {
	/* background-color: rgba(82, 27, 20, 0.6); */
	height: 1px;
	width: 95%;
	overflow: hidden;
	margin-left: auto;
	position: relative;
}
.secHead .lines .line1 > span {
	background: linear-gradient(to right, rgba(161,125,65,1) 0%,rgba(215,199,173,1) 40%,rgba(255,255,255,1) 63%,rgba(121,84,42,1) 100%);
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    height: 100%;
    width: 100%;
	opacity: 0;
}
.secHead.on .lines .line1 > span {
    -webkit-animation: secHeadLine01 1s forwards linear;
    -moz-animation: secHeadLine01 1s forwards linear;
    animation: secHeadLine01 1s forwards linear;
	opacity: 1;
}
@keyframes secHeadLine01 {
	0% {
		left: -100%;
	}
	100% {
		left: 0;
	}
}
.secHead .lines .line2 {
	/* background-color: rgba(82, 27, 20, 0.6); */
	height: 1px;
	width: 95%;
	overflow: hidden;
	margin-right: auto;
	position: relative;
}
.secHead .lines .line2 > span {
	background: linear-gradient(to left, rgba(161,125,65,1) 0%,rgba(215,199,173,1) 40%,rgba(255,255,255,1) 63%,rgba(121,84,42,1) 100%);
    display: block;
    position: absolute;
    top: 0;
    right: -100%;
    height: 100%;
    width: 100%;
	opacity: 0;
}




.stage5{
	max-width:1000px;
	height: 80px;
	margin: 0px auto;
	position: relative;
}

.stage img{
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1;
	transition:opacity 0.3s;
	width:100%;
	height:auto;
}

.stage6{
	max-width:1000px;
	height:auto;
	margin: 0px auto;
	position: relative;
}
.stage7{
	width:100%;
	max-width:1115px;
	height:auto;
	margin: 0px auto;
	position: relative;
	text-align:center;
	
}
.stage13{
	width:100%;
	max-width:1000px;
	height:auto;
	margin: 0px auto;
	position: relative;
	text-align:center;
	
}

.stage12{
	width:100%;
	max-width:1115px;
	height:auto;
	margin: 0px auto;
	position: relative;
	text-align:center;
	margin-top:20px;
}

.stage8{
	max-width:1000px;
	height:auto;
	margin: 0px auto;
	background-color:#C1BEB2;
	position: relative;
}


.stage9{
	max-width:1000px;
	height:auto;
	margin: 0px auto;
	position: relative;
}

.stage10{
	max-width:1000px;
	height:auto;
	margin: 0px auto;
	position: relative;
}
.stage11{
	max-width:900px;
	height:auto;
	margin: 0px auto;
	float:center;
	font-family: 'Cinzel', serif;
	
	color: #BCA989;
}

.secHead.on .lines .line2 > span {
    -webkit-animation: secHeadLine02 1s forwards linear;
    -moz-animation: secHeadLine02 1s forwards linear;
    animation: secHeadLine02 1s forwards linear;
	opacity: 1;
}
@keyframes secHeadLine02 {
	0% {
		right: -100%;
	}
	100% {
		right: 0;
	}
}

@media only screen and (max-width:767px){
    .secHead {
        font-size: 1.6rem;
        margin-bottom: 30px;
    }
}

/* secEntrance */
.secEntrance { padding: 125px 0 230px;}
.etranceImg { margin: 110px 0 185px;}
.etranceBlock { display: flex;}
.etranceBlock + .etranceBlock { margin-top: 170px;}
.etranceBlock .detail {
    width: 54.5%;
    padding: 0 60px 0 0;
}
.etranceBlock .img { flex: 1;}
.etranceBlock .pos_rel {
    margin-right: calc(-1*(100vw - 970px) / 2);
    width: calc(100% + (100vw - 970px) / 2);
}
.etranceBlock .detail .cont {
    display: flex;
    align-items: flex-end;
    height: 100%;
}
.etranceBlock .etranceHead .ttl {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    line-height: 2.2;
    font-weight: 300;
    margin-bottom: 10px;
}
.etranceBlock .etranceHead .txt {
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    line-height: 2.5;
    font-weight: 300;
}
.etranceBlock.reverse { flex-direction: row-reverse;}
.etranceBlock.reverse .detail {
    width: 31%;
    padding: 0 0 0 60px;
}
.etranceBlock.reverse .cont { margin-right: -100px;}
.etranceBlock.reverse .pos_rel {
    margin-left: calc(-1*(100vw - 970px) / 2);
    margin-right: auto;
    width: calc(100% + (100vw - 970px) / 2);
}
@media only screen and (max-width: 1200px) {
    .etranceBlock.reverse .cont { margin-right: 0;}
    .etranceBlock.reverse .detail {
        width: 38%;
        padding: 0 0 0 2%;
    }
    .etranceBlock .detail { padding: 0 2% 0 0;}
    .etranceBlock .etranceHead .ttl {
        font-size: 1.7rem;
        line-height: 2;
    }
    .etranceBlock .etranceHead .txt {
        font-size: 1.4rem;
        line-height: 2;
    }
}

@media only screen and (max-width: 1000px) {
    .etranceImg { margin: 0 0 60px;}
    .etranceBlock.reverse .pos_rel {
        margin-left: -15px;
        width: auto;
    }
    .etranceBlock .pos_rel {
        margin-right: -15px;
        width: auto;
    }
    .etranceBlock + .etranceBlock { margin-top: 60px;}
    .etranceBlock .etranceHead .ttl {
        font-size: 1.6rem;
        line-height: 1.8;
        letter-spacing: 0.01em;
    }
    .etranceBlock .etranceHead .txt {
        font-size: 1.3rem;
        letter-spacing: 0.01em;
        line-height: 1.8;
    }
}
@media only screen and (max-width: 767px) {
    .etranceImg { margin: 0 0 40px;}
    .etranceBlock { display: block;}
    .etranceBlock + .etranceBlock { margin-top: 40px;}
    .etranceBlock.reverse .detail,
    .etranceBlock .detail {
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }
    .etranceBlock .pos_rel { margin-right: 0;}
    .etranceBlock.reverse .pos_rel { margin-left: 0;}
    .etranceBlock .detail .cont {
        text-align: center;
        justify-content: center;
    }
}

.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}


/** 設備
===================================*/
.eq_tittle{
	max-width:1000px;
	text-align:center;
	height:35px;
	margin-bottom:40px;
}

.ep_photo_box{
	max-width:900px;
	width:100%;
	height:auto;
	margin:0 auto;
}

.ep_photo_box_left{
	float:left;
	max-width:658px;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}

.ep_photo_box_left02{
	float:left;
	max-width:430px;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}

.ep_photo_box_m_left02{
	float:left;
	max-width:430px;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}

.ep_photo_box_m_right02{
	float:right;
	max-width:430px;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}
.ep_photo_box_center{
	max-width:900px;
	height:auto;
	padding-bottom: 20px;
}



.photo_box02{
	max-width:210px;
	float:left;
	margin-right:14px;
	margin-bottom:15px!important;
}

.photo_box03{
	max-width:230px;
	height:auto;
	float:left;
	margin-right:10px;
	margin-left:10px;
	margin-bottom:15px!important;
}

.photo_box04{
	max-width:230px;
	float:left;
	margin-right:0px;
	margin-bottom:15px!important;
}

.eg_photo_box_right{
	max-width:210px;
	height:140px;
}

.iot_photo_box_right{
	max-width:230px;
	height:370px;
}
.iot_write_box_right{
	max-width:230px;
	height:230px;
}

.eg_photo_box_right02{
	max-width:210px;
	height:122px;
}

.eg_photo_box_right03{
	max-width:210px;
	height:80px;
}

.st_box02{
	max-width:290px;
	float:left;
	margin-right:10px;
}

.st_box_l{
	max-width:440px;
	float:left;
	margin-right:10px;
}

.st_photo_box_right{
	max-width:280px;
	height:140px;
}

.st_photo_box_right02{
	max-width:420px;
	height:300px;
}

.st_photo_box_right03{
	max-width:280px;
	height:80px;
}

p.eq_cap_midasi{
	max-width:210px;
	height:15px;
	font-size:14px;
	font-weight:900;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-top:10px;
	margin-bottom:10px;
	color: #422D13;
}

p.iot_cap_midasi{
	max-width:210px;
	height:15px;
	font-size:14px;
	font-weight:900;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-top:20px;
	margin-bottom:20px;
	color: #422D13;
}

p.eq_cap{
	max-width:210px;
	font-size:13px;
	line-height:17px;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	text-align:justify;
	color: #422D13;
	padding-bottom:15px;
}

p.st_cap_midasi{
	max-width:440px;
	height:40px;
	font-size:20px;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-top:10px;
	margin-bottom:40px;
	color: #422D13;
}

p.st_cap{
	max-width:400px;
	font-size:15px;
	line-height:25px;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	text-align:justify;
	color: #422D13;
	margin-left:auto;
	margin-right:auto;
}

p.eq_cap_m_midasi{
	max-width:410x;
	height:15px;
	font-size:14px;
	font-weight:900;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-top:10px;
	margin-bottom:10px;
	color: #422D13;
}

p.eq_cap_m{
	max-width:410px;
	height: 50pt;
	font-size:13px;
	line-height:17px;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	text-align:justify;
	color: #422D13;
}

@media screen and (max-width:899px) { 

.ep_photo_box{
	width:100%;
	height:auto;
	margin:0 auto;

}

.ep_photo_box img{
	width:100%;
	height:auto;
}
	
.iot_photo_box_right img{
	width:100%;
	height:auto;
}
	


	
.iot_write_box_right{
	float:none;
		max-width:100%;
	width:100%;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}
	
.ep_photo_box_left{
	float:none;
		max-width:100%;
	width:100%;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}

.eg_photo_box_right{
	max-width:100%;
	height:140px;
}

.ep_photo_box_m_right02{
	float:none;
	max-width:100px;
	height:auto;
	margin-right: 14px;
	padding-bottom: 20px;
}

.ep_fle_box{
	display:flex;
	flex-wrap:wrap;
	flex-direction: row-reverse;
	align-content: space-between;

}
	
.photo_box03{
	max-width:60%;
	float:none;
	margin-top:15px;
}

.photo_box02{
	max-width:30%;
	float:none;
	margin-top:15px;
}
.eg_photo_box_right{
	max-width:100%;
	height:auto;
}

}


@media screen and (max-width:520px) {

.photo_box02{
	max-width:45%;
	float:none;
	margin-bottom:15px;
	padding-bottom:20px;
}
	
.photo_box03{
	max-width:44%;
	float:none;
	margin-top:5px;
	margin-bottom:20px!important;
}
	
.iot_photo_box_right img{
	width:100%;
	height:auto;
}
	
.iot_write_box_right{
	float:none;
		max-width:100%;
	width:100%;
	height:auto;
	margin-right: 14px;
	padding-bottom: 5px;
}

}


p.top_midasi{
   animation-duration: 1s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	letter-spacing: .32em;
	line-height: calc(54 / 32);
	line-height: 1.688;
	margin-bottom:40px;
    max-width: 1000px;
    height: auto;
    font-size: 22px;
    text-align: center;
  
}


@media screen and (max-width:559px) { 

p.top_midasi{
	font-size:24px;
	line-height:1.8em;
	letter-spacing:0.5px;

}
}

@media screen and (max-width:359px) { 

p.top_midasi{
	font-size:24px;
	line-height:1.6em;
	letter-spacing:0.5px;

}
}


p.top_midasiA {
    animation-duration: 3s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
    max-width: 1000px;
    height: 20px;
    font-size: 18px;
    font-weight: 300;
	letter-spacing: 8px;
    text-align: center;
    font-family: 'Trajan Pro Regular';
    margin-top: 30px;
    margin-bottom: 40px;
  
}

p.desi_midasi{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:25px;
	font-size:15px;
	font-weight:100;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:20px;
	margin-bottom:10px;
	letter-spacing: 2px;
	color: #9FA0A0;
	padding:0 20px;
}

p.desi_midasi2{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:25px;
	font-size:18px;
	font-weight:100;
	text-align:left;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:70px;
	margin-bottom:10px;
	letter-spacing: 2px;
	color: #3B362C;
	padding:0 20px;
}

p.desi_bun_L{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:auto;
	font-size:24px;
	font-weight:0;
		text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:10px;
	margin-bottom:-5px;
	letter-spacing: 4px;
	color: #3B362C;
	padding:0 20px;
}

p.bon_bun_L{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:auto;
	font-size:24px;
	font-weight:0;
		text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:10px;
	margin-bottom:-5px;
	letter-spacing: 4px;
	color: #3B362C;
	padding:0 20px;
}

@media screen and (max-width:559px) {
	p.desi_bun_L{
		font-size:20px;
	letter-spacing: 0px;
		
	}
	p.desi_bun_M{
		margin-top:-10px;
	}
}


@media screen and (max-width:359px) {
	p.desi_bun_L{
		font-size:16px;
	letter-spacing: 0.5px;
		
	}
	p.bon_bun_M{
		font-size:10px;
		line-height:32px;
}
}
p.desi_bun_M{
	max-width:860px;
	height:auto;
	font-size:14px;
	font-weight:100;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:10px;
	margin-bottom:30px;
	letter-spacing: 1px;
	line-height:30px;
	color: #3B362C;
	padding:0 20px;
}

p.bon_bun_M{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:auto;
	font-size:14px;
	font-weight:100;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:10px;
	margin-bottom:30px;
	letter-spacing: 4px;
	line-height:30px;
	color: #3B362C;
	padding:0 20px;
}

p.desi_bun_M_center{
	animation-duration: 2s;/* アニメーション時間 */
    animation-name: RightToLeft;/* アニメーション名 */
	max-width:860px;
	height:auto;
    font-size: 18px;
	line-height:54px;
	font-weight:100;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-left: auto;
	margin-right: auto;
	margin-top:10px;
	margin-bottom:30px;
	letter-spacing: 0.5px;
	color: #3B362C;
}


@media screen and (max-width:559px) {
	p.bon_bun_M{
		font-size:12px;
		line-height:34px;
        letter-spacing:0.2px;
		line-height:20px;

	}}
	
p.page_midasi{
	max-width:1000px;
	height:138px;
	font-size:36px;
	font-weight:900;
	text-align:center;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	margin-top:10px;
	margin-bottom:10px;
	color: #3B362C;
}

.eq_cyui{
	clear:both;
	max-width:940px;
	text-align:right;
	margin-bottom: 16px;
}

.eq_cyui2{
	clear:both;
	max-width:1000px;
	text-align:right;
	margin-bottom: 60px;
}


.eq_cyui3{
	clear:both;
	max-width:1000px;
	text-align:right;
	margin-bottom: 0px;
}


p.cyui{
	font-size:12px;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	color:#3B362C;
	padding-top:0.7em;
}

p.ac{
	font-size:8px;
	font-family :"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	color:#3B362C;
	padding-top:0.7em;
}

.loading span {
  display: inline-block;
  margin: 0 -.05em;
  animation: loading 1.4s infinite alternate;
}
loading span:nth-child(2) {
  animation-delay: .1s;
}
loading span:nth-child(3) {
  animation-delay: .2s;
}
loading span:nth-child(4) {
  animation-delay: .3s;
}
loading span:nth-child(5) {
  animation-delay: .4s;
}
loading span:nth-child(6) {
  animation-delay: .5s;
}
loading span:nth-child(7) {
  animation-delay: .6s;
}
@keyframes loading {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.contentArea {
  max-width: 980px;
  margin: 0 auto;
}


#map_style{
	  width: 100%;
  max-width:980px;
  height:auto;
  margin:0 auto;
  padding:10px;
}

#map_style img{
	  width: 100%;
  height:auto;
}


.map_tittle{
	padding-top:20px;
}

.map_tittle h2{
	font-size:50px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.map_tittle p{
	font-size:20px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	padding-bottom:20px;
}



.mapBlock {
	margin-top: 40px;
  position: relative;
}

@media screen and (min-width: 769px) {
  .mapBlock {
    height: 640px;
  }
}

@media (max-width: 768px) {
  .mapBlock {
    height: 480px;
    width: 100%;
  }
}

.mapBlock .mapWindow {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3) !important;
          box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3) !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 50%;
  overflow: visible !important;
  min-height: 100px !important;
  padding: 25px 20px !important;
  box-sizing: border-box !important;
  position: absolute;
  text-align: center;
  -webkit-transform: translate(-50%, -160px);
          transform: translate(-50%, -160px);
  white-space: nowrap;
  width: auto;
}

@media screen and (min-width: 769px) {
  .mapBlock .mapWindow {
    font-size: 13px;
  }
}

@media (max-width: 768px) {
  .mapBlock .mapWindow {
    font-size: 12px;
  }
}

.mapBlock .mapWindow:after {
  background: linear-gradient(45deg, white 50%, rgba(255, 255, 255, 0) 51%, rgba(255, 255, 255, 0) 100%) #ffffff;
  bottom: -4px;
  content: '';
  height: 15px;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 0) rotate(-45deg);
          transform: translate(-50%, 0) rotate(-45deg);
  width: 15px;
}

.mapBlock .centerLabel {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6) !important;
          box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6) !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  height: 62px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: visible !important;
  min-height: 80px !important;
  padding: 20px 20px 10px !important;
  box-sizing: border-box !important;
  text-align: center;
  -webkit-transform: translate(-50%, -150px);
          transform: translate(-50%, -150px);
}

.mapBlock .centerLabel:after {
  background: linear-gradient(45deg, white 50%, rgba(255, 255, 255, 0) 51%, rgba(255, 255, 255, 0) 100%) #ffffff;
  bottom: -4px;
  content: '';
  height: 15px;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 0) rotate(-45deg);
          transform: translate(-50%, 0) rotate(-45deg);
  width: 15px;
}

@media screen and (min-width: 769px) {
  .mapBlock .centerLabel__logo {
    height: 45px;
    margin-top: 10px;
    width: 68px;
  }
}

@media (max-width: 768px) {
  .mapBlock .centerLabel__logo {
    height: 34px;
    margin-top: 10px;
    width: 52px;
  }
}

.mapBlock .centerLabel img {
  height: 28px;
}

.mapBlock .centerLabel--lower {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.mapBlock .centerLabel--lower:after {
  bottom: unset;
  top: 0;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.mapBlock.is-clicked .centerLabel {
  display: none !important;
}



@media screen and (min-width: 769px) {
  .mapBtn + .mapBlock {
    margin-top: 50px;
  }
}

@media (max-width: 768px) {
  .mapBtn + .mapBlock {
    margin-top: 40px;
  }
}


/***********************/
/*    outline          */
/***********************/


#outline a{
    color: #6F6F6D;
}

#outline{
	max-width:980px;
	width:90%;
	height:auto;
	margin:0 auto;
	text-align:left;
	padding:20px;
}



.testt{
	width:100%;
	height:20px;
	background-color:#999;
}

.outline_box h3{
	float: left;
	width: 95px;
	text-align: left;
	vertical-align: top;
	font-size: 16px;
	line-height: 24px;
	padding-left: 5px;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.outline_box_b h3{
	float:left;
	width:95px;
	text-align:left;
	vertical-align:top;
	font-size:16px;
	height:24px;
	line-height:20px;
	padding-left:5px;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.outline_box2{
	float:left;
	width:100px;
	text-align:left;
	vertical-align:top;
	font-size:12px;
	line-height:20px;
}


.outline_box3{
	float:left;
	width:100px;
	text-align:left;
	vertical-align:top;
	font-size:12px;
	height:100px;
	line-height:20px;
}

.loca_box{
	max-width:1000px;
	height:auto;
	text-align:center;
	padding-top:20px;
	padding-bottom:10px;
	background-color: #fff;
}

body#outline .outline_box p{
	float:left;
	width:80%;
	padding-left:5px;
	text-align:left;
	font-size:16px;
}

body#outline .outline_box_b p{
	float:left;
	width:80%;
	padding-left:5px;
	text-align:left;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.outline_box{
	border-top:#c4c3c3 solid 1px;
	clear:both;
	padding-top:5px;
	padding-bottom:10px;
	width:100%;
	max-width:980px;
}
.outline_box_b{
	border-top:#c4c3c3 solid 1px;
	border-bottom:#c4c3c3 solid 1px;
		padding-top:5px;
	padding-bottom:10px;
	clear:both;
}


body#outline h2{
	background-image: url(../img/outline/contentsH3.gif);
	text-indent: -9999px;
	height: 70px;
	width: 900px;
	margin: 0 auto;
	background-repeat: no-repeat;
	background-position: left center;
}



body#outoline .right{
	border-top:#666 solid 1px;
	width:750px;
}


/* --------------------------------
  point
-------------------------------- */
#container section#point {
  padding: clamp(60px, 8vw, 120px) 0;
}

#container section#point ul {
  list-style: none;
  margin: 0 auto;
  padding: 0;
}

#container section#point .imgBox {
  width: 100%;
}

#container section#point img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* 上段 */
#container section#point .pointST {
  width: min(94%, 1320px);
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 4px solid rgba(135, 125, 108, 0.3);
  padding-bottom: clamp(18px, 2vw, 28px);
  gap: clamp(24px, 4vw, 70px);
}

#container section#point .pointST li {
  width: calc((100% - clamp(48px, 8vw, 140px)) / 3);
}

#container section#point .pointST li .imgBox {
  height: clamp(48px, 6vw, 86px);
}

/* 下段 */
#container section#point .pointList {
  width: min(94%, 1320px);
  display: flex;
  justify-content: center;
  align-items: stretch;
  padding-top: clamp(28px, 4vw, 58px);
}

#container section#point .pointList li {
  width: 25%;
  padding: 0 clamp(18px, 3vw, 42px);
  display: flex;
  align-items: center;
  justify-content: center;
}

#container section#point .pointList li + li {
  border-left: 1px solid #bcb49a;
}

#container section#point .pointList li .imgBox {
  height: clamp(52px, 5.2vw, 76px);
}

/* typo修正 */
#container section#point .pointLead {
  width: 100%;
  background: #bcb49a;
  margin: 0;
  padding: 6% 20%;
}

/* --------------------------------
  tablet / sp
-------------------------------- */
@media screen and (max-width: 750px) {
  #container section#point {
    padding: 14% 0;
  }

  #container section#point .pointST,
  #container section#point .pointList {
    width: 84%;
    display: block;
  }

  #container section#point .pointST {
    padding-bottom: 6%;
    border-bottom: 3px solid rgba(135, 125, 108, 0.3);
  }

  #container section#point .pointST li {
    width: 100%;
    margin-bottom: 7%;
  }

  #container section#point .pointST li:last-child {
    margin-bottom: 0;
  }

  #container section#point .pointST li .imgBox {
    height: 12vw;
    min-height: 44px;
  }

  #container section#point .pointList {
    padding-top: 2%;
  }

  #container section#point .pointList li {
    width: 100%;
    border-left: none;
    border-bottom: 1px solid #bcb49a;
    padding: 7% 0;
  }

  #container section#point .pointList li + li {
    border-left: none;
  }

  #container section#point .pointList li:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  #container section#point .pointList li .imgBox {
    height: 14vw;
    min-height: 46px;
  }
}


.mainVisual {
  position: relative;
  width: 100%;
  z-index: 6;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .mainVisual {
    height: calc((890/1440)*100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual {
    height: 100vh;
  }
}

.mainVisual__inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.mainVisual__opening {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
  -webkit-filter: brightness(0.1) sepia(100%);
          filter: brightness(0.1) sepia(100%);
  will-change: filter;
}

.mainVisual__openingBg {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mainVisual__openingBgAfter {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
}

.mainVisual__picture {
  position: relative;
  -webkit-transform: scale(1.25);
          transform: scale(1.25);
  width: 100%;
  height: 100%;
}

.mainVisual__cover {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-filter: blur(15px);
          filter: blur(15px);
  will-change: filter;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.mainVisual__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.mainVisual__openingTxt {
  font-family: 'Noto Serif JP', serif;
  position: absolute;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  letter-spacing: 0.08em;
  text-orientation: upright;
  font-size: 18px;
  line-height: 2.2;
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .mainVisual__openingTxt {
    top: calc((213/750)*100vw);
    width: calc((115/750)*100vw);
  }
}

@media screen and (min-width: 768px) {
  .mainVisual__openingTxt {
    font-size: 24px;
    top: 50%;
    height: auto;
    white-space: nowrap;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: calc((825/1440)*100vw);
  }
}

.mainVisual__openingTxt .en {
  display: inline-block;
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
  margin-bottom: 0.2em;
}

.mainVisual__openingTxt .upperKakko {
  display: inline-block;
  margin-top: -0.8em;
}

.mainVisual__openingTxt .lowerKakko {
  display: inline-block;
  margin-bottom: -0.4em;
}

.mainVisual__image {
  width: 100%;
}

.mainVisual__ttlArea {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  top: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .mainVisual__ttlArea {
    top: calc((120/1440)*100vw);
  }
}

.mainVisual__ttlArea .word {
  -webkit-transition: 1.5s ease;
  transition: 1.5s ease;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  will-change: filter;
}

.mainVisual__ttlArea .word:nth-child(1) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.mainVisual__ttlArea .word:nth-child(2) {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.mainVisual__ttlArea .word:nth-child(3) {
  -webkit-transition-delay: 1.4s;
          transition-delay: 1.4s;
}

.mainVisual__ttlArea .word:nth-child(4) {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}

.mainVisual__ttlArea .word:nth-child(5) {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

.mainVisual__ttlArea .word:nth-child(6) {
  -webkit-transition-delay: 2.0s;
          transition-delay: 2.0s;
}

.mainVisual__logo {
  width: 25px;
  margin-left: auto;
  margin-right: auto;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  will-change: filter;
}

@media screen and (min-width: 768px) {
  .mainVisual__logo {
    width: calc((26/1440)*100vw);
  }
}

.mainVisual__ttl {
  margin-top: 22.5px;
  letter-spacing: 0.2em;
}

@media screen and (min-width: 768px) {
  .mainVisual__ttl {
    width: calc((52/1440)*100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__ttl {
    width: 38px;
  }
}

.mainVisual__capIn {
  bottom: 8px;
  position: absolute;
  right: 8px;
}

@media screen and (max-width: 768px) {
  .mainVisual__capIn {
    color: #666666;
  }
}

.mainVisual__effect {
  position: absolute;
  -webkit-transform-origin: center right;
          transform-origin: center right;
  z-index: 3;
}

@media screen and (min-width: 768px) {
  .mainVisual__effect {
    left: -89px;
    bottom: calc((67/1440)*100vw);
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__effect {
    left: -100px;
    bottom: 63.5px;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

.is-pageOpen .mainVisual .mainVisual__opening {
  -webkit-transition: 3s ease;
  transition: 3s ease;
  -webkit-filter: brightness(1) sepia(0);
          filter: brightness(1) sepia(0);
}

.is-pageOpen .mainVisual .mainVisual__openingBgAfter {
  -webkit-transition: 2s ease 1s;
  transition: 2s ease 1s;
  opacity: 1;
}

.is-firstScene .mainVisual .mainVisual__openingTxt {
  opacity: 1;
  -webkit-transition: 1.5s;
  transition: 1.5s;
}

.is-secondScene .mainVisual .mainVisual__openingTxt {
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.is-secondScene .mainVisual .mainVisual__picture {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all 3s ease;
  transition: all 3s ease;
}

.is-secondScene .mainVisual .mainVisual__cover {
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transition: 2s ease;
  transition: 2s ease;
}

.is-secondScene .mainVisual .mainVisual__opening {
  opacity: 0;
  -webkit-transition: 1.5s ease;
  transition: 1.5s ease;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transform-origin: center center;
          transform-origin: center center;
}

.is-secondScene .mainVisual .mainVisual__logo {
  opacity: 1;
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transition: 1.5s ease 1s;
  transition: 1.5s ease 1s;
}

.is-secondScene .mainVisual .mainVisual__ttlArea {
  opacity: 1;
  -webkit-transition: 1.5s ease 1s;
  transition: 1.5s ease 1s;
}

.is-secondScene .mainVisual .mainVisual__ttlArea .word {
  opacity: 1;
  -webkit-filter: blur(0);
          filter: blur(0);
}

.acc_box{max-width:1056px;margin:0 auto;}

.access_box{max-width:1056px;margin:0 auto 30px}
@media screen and (max-width:767px){.access_box{margin-bottom:15px}}
.access_box-list{text-align:left;margin-bottom:50px
}@media screen and (min-width:768px){.access_box-list{display:flex;justify-content:space-between;flex-wrap:wrap}}.access_box-list>li{flex:0 0 33.13725%;line-height:1.15;margin-bottom:20px;letter-spacing:.1em}@media screen and (max-width:767px){.access_box-list>li{margin-bottom:20px!important}}.access_box-list>li span{letter-spacing:.1em}.access_box-list>li .num{margin-left:5px}.access_box-list>li>figure{margin-bottom:8px}.
p-access-express{background-color:#f9f6f3;padding:80px 18px}@media screen and (max-width:767px){.p-access-express{padding:35px 18px}}.p-access-express-flex{max-width:1020px;margin:0 auto}@media screen and (min-width:768px){.p-access-express-flex{display:flex}}.p-access-express-flex>figure{flex:0 0 49.21569%;margin-right:58px}@media screen and (max-width:767px){.p-access-express-flex>figure{margin:0 auto}}.p-access-express-flex>div{display:flex;flex-flow:column;text-align:left}@media screen and (max-width:767px){.p-access-express-flex>div{margin-top:15px}}.p-access-express-flex .access_main-txt{flex:0 0 31.25%;margin-top:-3px}.p-access-express-flex ul li{letter-spacing:.125em;	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}.p-access-express-flex ul li .fnt12{font-family:游明朝体,Yu Mincho,YuMincho,"Noto Serif JP",ヒラギノ明朝 Pro,Hiragino Mincho Pro,MS P明朝,MS PMincho,serif}.p-access-express-flex ul li .num{letter-spacing:.125em}@media screen and (max-width:767px){.p-access-express-flex ul li{line-height:1.2;margin-top:10px}}.p-access-express-flex-note{margin-top:auto;font-size:1.2rem}@media screen and (max-width:767px){.p-access-express-flex-note{margin-top:20px}}.p-access-car{max-width:1056px;margin:0 auto 50px}



#access_search .inner{max-width: 970px;}

.a_searchWrap p.fade_in{
	margin-bottom:20px;
}

#start{width: 45%; padding: 0 10px; float:left; margin-bottom:20px;}
#start span{width: 30%; background: #9a8c56; color: #fff; padding: 8px 20px; font-size: 18px;}
#start input{width: 70%; border: none; padding: 8px; font-size: 18px;}

#goal{width: 45%;  padding: 0 10px; float:right; margin-bottom:20px}
#goal span{width: 30%; background: #9a8c56; color: #fff; padding: 8px 20px; font-size: 18px;}
#goal input{width: 70%; border: none; padding: 8px; font-size: 18px;}


#submit input{background: #333; border: none; color: #fff; padding: 10px 30px; clear:both;}
#submit input:hover{opacity: 0.7; cursor: pointer;}





@media screen and (max-width: 640px){
	#access_search{padding: 0 0 40px;}

	#access_search h3{font-size: 18px; padding: 8px 0;}
#start{width: 100%; float:none; margin-left:-15px;}
#goal{width: 100%; float:none; margin-left:-15px;}
}



section#access .titleArea .titleTxtBox h2 {
  margin-bottom: 0;
}
section#access .accImgList {
  margin: 0 auto 10%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
section#access .accImgList li {
  width: 33.3333333333%;
}
section#access .accImgList li .listTxt {
  text-align: left;
  font-size: 10px;
  font-size: 0.625rem;
  margin-bottom: 5px;
  padding-left: 5px;
}
section#access .routemapBox {
  width: 80%;
  margin: 0 auto 6%;
}
section#access .routemapBox h3 {
  text-align: left;
  margin-bottom: 10px;
}
section#access .routemapBox h3.title01 {
  color: #b7a272;
}
section#access .routemapBox h3.title02 {
  color: #c81166;
}
section#access .slideArea {
  margin-bottom: 10%;
}
section#access .slideArea .txtBlock {
  width: 80%;
  font-size: 18px;
  font-size: 1.5rem;
  margin: 0 auto 10px;
}
section#access .slideArea .Slider01 {
  margin: 0;
}
section#access .slideArea .Slider01 li {
  margin: 0 5px;
}
section#access .slideArea .Slider01 li .imgBox {
  margin-bottom: 20px;
}

.imgBox .imgCaption {
  position: absolute;
  bottom: 10px;
  right: 10px;
  left: 10px;
  text-align: right;
  font-size: 10px;
  font-size: 0.625rem;
  color: #FFF;
  line-height: 1.3;
  text-shadow: 0px 0px 3px rgb(0, 0, 0), 0px 0px 3px rgb(0, 0, 0), 0px 0px 3px rgb(0, 0, 0);
}

section#access .slideArea .Slider01 {
  margin: 0;
  padding: 0;
  list-style: none;
}

section#access .slideArea .slick-list {
  margin: 0;
  padding: 0 !important;
}

section#access .slideArea .slick-track {
  margin-left: 0;
}

section#access .slideArea .Slider01 li {
  margin: 0 5px;
}

section#access .slideArea .Slider01 li:first-child {
  margin-left: 0;
}



/* access_search ================*/
#access_search{padding: 0 0 80px;}
#access_search .inner{max-width: 970px;}

#access_search h3{text-align: center; background: #9a8c56; color: #fff;
 	font-size: 24px; letter-spacing: 2px; padding: 13px 0;}
#access_search .a_searchWrap{background: #eeebe2; padding: 30px 60px; text-align: center;}
#access_search .a_searchWrap ul{display: flex; flex-wrap: wrap; justify-content: center; margin: 20px 0;}
#access_search .a_searchWrap ul li{width: 50%; padding: 0 10px;}
#access_search .a_searchWrap ul li span{width: 30%; display: inline-block; background: #9a8c56; color: #fff; padding: 8px 20px; font-size: 18px;}
#access_search .a_searchWrap ul li input{width: 70%; border: none; padding: 8px; font-size: 18px;}
#access_search .a_search_submit input{background: #333; border: none; color: #fff; padding: 10px 30px;}
#access_search .a_search_submit input:hover{opacity: 0.7; cursor: pointer;}

@media screen and (max-width: 640px){
	#access_search{padding: 0 0 40px;}

	#access_search h3{font-size: 18px; padding: 8px 0;}
	#access_search .a_searchWrap{padding: 20px;}
	#access_search .a_searchWrap ul li{width: 100%; margin-bottom: 10px;}
	#access_search .a_searchWrap ul li span{padding: 6px 10px; font-size: 15px;}
	#access_search .a_searchWrap ul li input{padding: 6px; font-size: 15px;}
	#access_search .a_search_submit input{font-size: 15px;}
}

/* access_transportation ================*/
#access_transportation{padding: 0 0 80px;}

#access_transportation .access_station .station_box{width: 49%;}
#access_transportation .access_station .station_box .kakoi{display: block;border: 1px solid #9a8c56;padding: 5px 0;text-align: center;font-size: 14px;margin-bottom: 10px;}

#access_transportation .shinkansen_read{margin-bottom: 45px;}
#access_transportation .airport_read{margin-bottom: 20px;}

.a_transportation_wrap{display: flex; flex-wrap: wrap; justify-content: space-between;}
.a_transportation_box{width: 47%;}
.a_transportation_box h4{font-size: 20px; font-weight: bold; letter-spacing: 2px; line-height: 1.6; color: #9a8c56; margin: 20px 0;}
.a_transportation_box p{}

.a_transportation_wrap .shinkansen_wrap{padding: 84px 0 0; border-bottom: none;}
.a_transportation_wrap .airport_wrap{padding: 25px 0 0; border-bottom: none;}

@media screen and (max-width: 640px){
	#access_transportation{padding: 0 0 40px;}

	#access_transportation .shinkansen_read{margin-bottom: 15px;}
	#access_transportation .airport_read{margin-bottom: 15px;}

	.a_transportation_box{width: 100%; border-top: 1px solid #9a8c56;}
	.a_transportation_box figure{margin-left: -15px; margin-right: -15px;}
	.a_transportation_box h4{font-size: 16px; line-height: 1.6; letter-spacing: 4px; margin-bottom: 15px;}
	.a_transportation_box h4,
	.a_transportation_box .a_transportation_box_text p{padding: 0 25px;}
	.a_transportation_wrap .shinkansen_wrap{padding: 18px 0;}
}

