@charset "UTF-8";
/* 
  css設定 @charsetが消されるsass仕様へのハック用コメントです。削除しないでください。新規作成時も必須！
 */
.lower .site-header {
  position: absolute;
  background: #fff;
}

.lower .page-header {
  padding: 0 0 70rem;
  text-align: center;
}

.lower .page-header .page-title {
  position: relative;
  padding-bottom: 15rem;
  padding-top: 58rem;
  font-size: 40rem;
  font-weight: normal;
}

.lower .page-header .ja {
  font-size: 14rem;
  line-height: 1.3;
}

.lower .page-header .images {
  position: relative;
}

.lower .page-header .images:after, .lower .page-header .images:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.lower .page-header .images:after {
  background-color: white;
  opacity: 1;
  transition: transform 1.7s,opacity 2.5s;
  transform: translateZ(0) scaleX(1);
  transform-origin: center left;
  z-index: 3;
}

.lower .page-header .images:before {
  background-color: rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: transform 1.6s .3s,opacity 2.5s;
  transform: translateZ(0) scaleX(1);
  transform-origin: center left;
  z-index: 2;
}

.lower .page-header .images.on:after {
  transform: translateZ(0) scaleX(0);
}

.lower .page-header .images.on:before {
  transform: translateZ(0) scaleX(0);
}

.lower .intro {
  padding-bottom: 100rem;
  text-align: center;
}

.lower .intro .title {
  font-size: 20rem;
  line-height: 1.5;
  padding-bottom: 30rem;
  font-weight: normal;
}

.lower .intro .lead {
  font-size: 13rem;
  line-height: 2;
}

.lower main .images,
.lower main .image {
  position: relative;
}

.lower .caption.noBg {
  color: #000;
  background: none;
}

.lower .caption.outSide {
  display: block;
  position: static;
  padding: 5rem 5rem 0;
  text-align: right;
  color: #000;
  background: none;
}

.lower .swipeArea {
  overflow-x: auto;
}

.lower .swipeArea img {
  min-width: 710px;
}

.lower .click-btn {
  max-width: 320px;
  margin: 20px auto 40px;
  text-align: center;
  clear: both;
}

.lower .click-btn a {
  position: relative;
}

.lower .click-btn a:hover {
  opacity: 0.8;
}

.lower .modal-wrapper {
  z-index: 9999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 200px 10px;
  text-align: center;
}

.lower .modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

.lower .modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s, visibility 0.4s;
  background: #fff !important;
}

.lower .modal-wrapper::after {
  display: inline-block;
  margin-left: -0.05em;
  vertical-align: middle;
  content: "";
}

.lower .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: 94%;
  max-width: 100%;
  padding: 0;
  border-radius: 2px;
  vertical-align: middle;
}

.lower .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
  text-align: left;
}

.lower .modal-window .modal-content .swipe-img img {
  width: 560px !important;
}

.lower .modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 0 !important;
  background: rgba(0, 0, 0, 0.8) !important;
}

.lower .modal-overlay:hover {
  opacity: 1 !important;
}

.lower .modal-close {
  z-index: 20;
  position: absolute !important;
  top: -35px;
  left: 0;
  width: 36px;
  color: #000 !important;
  font-size: 36px;
  font-weight: 700;
  line-height: 36px;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  padding: 0;
}

.lower .modal-close:hover {
  color: #ccc !important;
}

/*----------------
asset
----------------*/
#asset .intro {
  text-align: center;
}

#asset .intro .title {
  font-size: 20rem;
  font-weight: normal;
  line-height: 1.5;
  padding-bottom: 33rem;
}

#asset .intro .text {
  font-size: 13rem;
  line-height: 1.5;
}

#asset .sections {
  padding: 100rem 0;
}

#asset .sections .flex-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#asset .sections .title {
  text-align: center;
  font-weight: normal;
  letter-spacing: 0;
  padding-bottom: 67rem;
}

#asset .sections .title .en {
  font-size: 10rem;
  line-height: 1.2;
  padding-bottom: 2rem;
  display: block;
}

#asset .sections .title .num {
  font-size: 30rem;
  display: inline-block;
  border-bottom: 1px solid #000;
  padding-bottom: 2rem;
}

#asset .sections .lead01 {
  text-align: center;
  font-size: 20rem;
  line-height: 1.5;
  padding-bottom: 20rem;
}

#asset .sections .lead02 {
  text-align: center;
  font-size: 13rem;
  line-height: 2;
  padding-bottom: 60rem;
}

#asset .sections .name {
  font-size: 15rem;
  line-height: 1.8;
  padding-bottom: 15rem;
}

#asset .sections .name {
  font-size: 15rem;
  line-height: 1.8;
}

#asset .sections .annotation {
  padding-top: 60rem;
  font-size: 11rem;
  line-height: 1.8;
}

#asset .sections .section-annotation {
  text-align: right;
  font-size: 11rem;
  line-height: 1.5;
  padding-top: 15rem;
}

#asset .section01 {
  background-color: #EBF8FF;
}

#asset .section01 .body {
  margin: 0 auto;
  max-width: 600rem;
}

#asset .section02 {
  background-color: #FFFFFF;
}

#asset .section02 .image01 {
  margin-bottom: 60rem;
}

#asset .section02 .name-box {
  overflow: hidden;
  position: relative;
  padding: 20rem 0 15rem;
  text-align: center;
  font-size: 16rem;
  color: #56BEC1;
}

#asset .section02 .name-box span {
  display: inline-block;
  position: relative;
  padding: 0 8rem;
}

#asset .section02 .name-box span::after, #asset .section02 .name-box span::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 1000px;
  height: 1px;
  background-color: #56BEC1;
}

#asset .section02 .name-box span::before {
  right: 100%;
}

#asset .section02 .name-box span::after {
  left: 100%;
}

#asset .section02 .point {
  font-size: 16rem;
  line-height: 1.7;
  padding-bottom: 20rem;
  text-align: center;
}

#asset .section02 .text {
  font-size: 13rem;
  line-height: 1.8;
}

#asset .section02 .text span {
  font-size: 11px;
}

#asset .section02 .flex-box {
  flex-wrap: wrap;
  justify-content: center;
  align-items: start;
  margin-bottom: 50px;
}

#asset .section02 .flex-box li {
  width: 31%;
  padding-bottom: 30rem;
  margin: 0 1%;
}

#asset .section02 .wrap {
  margin: 0 auto;
  max-width: 900rem;
}

#asset .section02 .body02 {
  border: 1px solid #56BEC1;
  padding-bottom: 30px;
}

#asset .section02 .body02 .lead01 {
  background: #56BEC1;
  color: #fff;
  padding: 10px;
  margin-bottom: 30px;
}

#asset .section02 .image02 {
  margin: 0 auto 30px;
  max-width: 450rem;
  width: 90%;
}

#asset .section03 {
  background-color: #EBF8FF;
}

#asset .section03 .texts {
  padding-bottom: 60rem;
}

#asset .section03 .texts .text01 {
  text-align: center;
  font-size: 18rem;
  line-height: 1.5;
  padding-bottom: 30rem;
}

#asset .section03 .texts .text02 {
  font-size: 13rem;
  line-height: 1.8;
}

#asset .section03 .boxes {
  width: 32%;
}

#asset .section03 .boxes.box02 {
  width: 64%;
}

#asset .section03 .body {
  align-items: start;
}

#asset .section03 .wrap {
  margin: 0 auto;
  max-width: 900rem;
}

#asset .section04 {
  background-color: #fff;
}

#asset .section04 .body {
  align-items: start;
  margin: 0 auto;
  max-width: 900rem;
}

#asset .section04 .boxes {
  width: 48%;
}

#asset .section04 .boxes .img11 {
  width: 70%;
  margin: auto;
}

#asset .section04 .text01 {
  font-size: 18rem;
  line-height: 1.5;
  padding-bottom: 18rem;
}

#asset .section04 .text02 {
  font-size: 13rem;
  line-height: 1.5;
  padding-bottom: 28rem;
}

#asset .section04 .text02.bottom {
  padding-bottom: 67rem;
}

/*----------------
access
----------------*/
#access .page-header .txt {
  position: absolute;
  top: 50%;
  left: 55%;
  font-size: 30rem;
  line-height: 1.5;
  transform: translateY(-50%);
  text-align: left;
}

#access .intro {
  text-align: center;
}

#access .intro .title {
  font-size: 20rem;
  font-weight: normal;
  line-height: 1.5;
  padding-bottom: 33rem;
}

#access .intro .text {
  font-size: 13rem;
  line-height: 1.5;
}

#access .sections {
  padding: 80rem 0;
}

#access .sections .flex-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#access .sections .cap,
#access .sections .annotation {
  font-size: 11rem;
  text-align: right;
  padding-top: 4rem;
}

#access .sections .title {
  font-size: 30rem;
  line-height: 1.5;
  padding-bottom: 40rem;
  font-weight: normal;
}

#access .sections .lead01 {
  font-size: 20rem;
  line-height: 2;
  padding-bottom: 30rem;
}

#access .sections .lead02 {
  font-size: 13rem;
  line-height: 2;
}

#access .section01 {
  background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0) 100%);
}

#access .section01 .big-image {
  margin: 0 auto;
  max-width: 840rem;
  padding-bottom: 60rem;
}

#access .section01 .lists li {
  width: 23%;
}

#access .section01 .stations {
  padding-bottom: 40rem;
}

#access .section01 .texts {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#access .section01 .texts li {
  width: 32%;
  padding-bottom: 22rem;
}

#access .section01 .texts .text01 {
  font-size: 18rem;
  padding-bottom: 8rem;
}

#access .section01 .texts .text01 .big {
  font-size: 170%;
}

#access .section01 .texts .text01 .red {
  color: #57BEC1;
}

#access .section01 .texts .text02 {
  font-size: 11rem;
  line-height: 1.6;
}

#access .section02 {
  padding-top: 0;
  background-color: #EBF8FF;
}

#access .section02 .section-image .txt {
  position: absolute;
  top: 50%;
  left: 65%;
  transform: translateY(-50%);
  font-size: 30rem;
  line-height: 1.5;
}

#access .section02 .header {
  padding: 67rem 0 86rem;
  text-align: center;
}

#access .section02 .blocks {
  background-color: #fff;
  padding: 40rem 50rem;
}

#access .section02 .blocks .sub-title {
  text-align: center;
  padding: 15rem;
  background-color: #56BEC1;
  color: #fff;
  font-size: 20rem;
  line-height: 1.2;
  margin-bottom: 30rem;
  color: #fff;
  font-weight: normal;
}

#access .section02 .blocks .sub-title.color02 {
  background-color: #B8A280;
}

#access .section02 .blocks .sub-lead {
  font-size: 13rem;
  line-height: 2;
  text-align: center;
  padding-bottom: 30rem;
}

#access .section02 .blocks .train01 {
  padding-bottom: 60rem;
}

#access .section02 .blocks .train01 .lists {
  padding-top: 30rem;
}

#access .section02 .blocks .train01 .lists li {
  width: 49%;
}

#access .section02 .train {
  margin-bottom: 60rem;
}

#access .section03 {
  display: none;
  background-color: #fff;
}

#access .section03 .header {
  text-align: center;
  padding-bottom: 40rem;
}

#access .section03 .body .image {
  width: 45%;
}

#access .section03 .annotation {
  padding-top: 20rem;
}

/*----------------
design
----------------*/
#design .intro {
  text-align: center;
}

#design .intro .title {
  font-size: 20rem;
  font-weight: normal;
  line-height: 1.5;
  padding-bottom: 33rem;
}

#design .intro .text {
  font-size: 13rem;
  line-height: 1.5;
}

#design .design-image {
  position: relative;
}

#design .design-image .text {
  position: absolute;
  color: #fff;
  font-size: 30rem;
  line-height: 1.5;
  top: 50%;
  left: 65%;
  transform: translateY(-50%);
}

#design .sections {
  padding: 70rem 0 100rem;
}

#design .sections .header {
  text-align: center;
  padding-bottom: 50rem;
}

#design .sections .title {
  font-size: 30rem;
  line-height: 1.5;
  padding-bottom: 40rem;
  font-weight: normal;
}

#design .sections .lead01 {
  font-size: 20rem;
  line-height: 2;
  padding-bottom: 30rem;
}

#design .sections .lead02 {
  font-size: 13rem;
  line-height: 2;
}

#design .sections .flex-box {
  max-width: 1000px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#design .section01 {
  background-color: #EBF8FF;
}

#design .section01 .body {
  margin: 0 auto;
  max-width: 754rem;
}

#design .section01 .images {
  width: 50%;
}

#design .section01 .texts {
  width: 45%;
}

#design .section01 .text01 {
  font-size: 20rem;
  line-height: 1.6;
  padding-bottom: 38rem;
}

#design .section01 .text02 {
  font-size: 13rem;
  line-height: 2;
}

#design .section02 {
  background-color: #fff;
}

#design .section02 .logo {
  margin: 0 auto;
  max-width: 235rem;
  padding-bottom: 30rem;
}

#design .section02 .body {
  align-items: start;
}

#design .section02 .designer {
  width: 48%;
}

#design .section02 .designer .img {
  width: 50%;
}

#design .section02 .designer .txts {
  width: 45%;
}

#design .section02 .designer .txts .company {
  font-size: 11rem;
  line-height: 1.6;
  padding-bottom: 30rem;
}

#design .section02 .designer .txts .name01 {
  font-size: 11rem;
  line-height: 1.6;
  padding-bottom: 5rem;
}

#design .section02 .designer .txts .name02 {
  font-size: 20rem;
  line-height: 1.6;
  padding-bottom: 30rem;
}

#design .section02 .designer .txts .txt {
  font-size: 11rem;
  line-height: 1.8;
}

#design .section02 .lists {
  width: 48%;
}

#design .section02 .lists li {
  width: 49%;
}

#design .section02 .text {
  text-align: center;
  font-size: 11rem;
  line-height: 2;
  padding-top: 10rem;
}

#design .section03 {
  background-color: #E4DFE1;
}

#design .section03 .lists {
  width: 49%;
}

#design .section03 .text {
  font-size: 16rem;
  line-height: 1.9;
  padding-top: 25rem;
}

#design .section03 .images {
  max-width: 800px;
  margin: auto;
}

#design .section03.bg02 {
  background-color: #EFF1F4;
}

#design .section03 .spot {
  text-align: center;
  margin: 50px auto 0;
}

#design .section03 .spot .tit {
  font-size: 18rem;
  line-height: 1.6;
  margin-bottom: 30px;
}

#design .section03 .spot li {
  font-size: 13rem;
  line-height: 1.6;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  margin-bottom: 30px;
}

#design .section03 .spot li:first-child {
  max-width: 170px;
  padding-right: 20px;
}

#design .section03 .spot .txt02 {
  font-size: 11px;
  line-height: 1.6;
}

#design .section04 {
  background-color: #fff;
}

#design .section04 .common {
  max-width: 700px;
  width: 94%;
  margin: auto;
}

#design .section04 .common li {
  display: inline-block;
  width: 47%;
  margin-right: 4%;
  margin-bottom: 30px;
  vertical-align: text-top;
}

#design .section04 .common li:nth-child(2n) {
  margin-right: auto;
}

#design .section04 .common .text01 {
  font-size: 16rem;
  line-height: 1.9;
  padding-top: 10rem;
}

#design .section04 .common .text02 {
  font-size: 13rem;
  line-height: 2;
  padding-top: 5rem;
}

#design .section04 .common .text02 span {
  font-size: 11px;
}

#design .section04 .common02 {
  max-width: 700px;
  width: 94%;
  margin: auto;
}

#design .section04 .common02 .landplan {
  width: 48%;
  float: left;
  margin-left: auto;
}

#design .section04 .common02 .landplan .caption {
  background: none;
  color: #5D6970;
  bottom: -25px;
}

#design .section04 .common02 li {
  display: inline-block;
  width: 47%;
  margin-left: 4%;
  margin-bottom: 30px;
  vertical-align: text-top;
}

#design .section04 .common02 .text01 {
  font-size: 16rem;
  line-height: 1.9;
  padding-top: 10rem;
}

#design .section04 .common02 .text02 {
  font-size: 13rem;
  line-height: 2;
  padding-top: 5rem;
}

#design .section04 .common02 .text02 span {
  font-size: 11px;
}

/*----------------
merit
----------------*/
#merit .merits {
  margin-bottom: 55rem;
  box-shadow: 0px 0px 6px #ccc;
  background-color: #fff;
}

#merit .merits .header {
  display: flex;
  background-color: #E1F2F3;
  justify-content: stretch;
  align-items: center;
}

#merit .merits .header .title {
  width: 80rem;
}

#merit .merits .header .lead {
  padding: 10rem 45rem;
  font-size: 20rem;
}

#merit .merits .body {
  padding: 50rem 45rem 55rem;
}

#merit .merits .flex-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#merit .merits .flex-box > .images {
  width: 60%;
}

#merit .merits .flex-box > .text {
  width: 35%;
  font-size: 13rem;
  line-height: 2;
}

#merit .merit01 .flex-box {
  align-items: start;
}

#merit .merit01 li {
  width: 32%;
}

#merit .merit01 .name {
  font-size: 16rem;
  line-height: 1.8;
  padding-bottom: 15rem;
  padding-top: 19rem;
}

#merit .merit01 .name img {
  width: 20rem;
  margin-top: -4rem;
  margin-right: 5rem;
}

#merit .merit01 .text {
  font-size: 11rem;
  line-height: 1.85;
}

#merit .merit02 .header {
  background-color: #F9F4F4;
}

#merit .merit03 .header {
  background-color: #E8ECF5;
}

#merit .merit04 .header {
  background-color: #EEF7E4;
}

#merit .merit05 .header {
  background-color: #FDF4EA;
}

/*----------------
map
----------------*/
#map .page-header {
  background: url(../images/map/bg.jpg);
  background-size: cover;
  padding: 0 0 150rem;
  margin-bottom: 120rem;
}

#map .page-header .page-title {
  padding-top: 150rem;
}

#map .maps {
  text-align: center;
  padding-bottom: 100rem;
  margin: 0 auto;
  max-width: 695rem;
}

#map .maps .tit {
  font-size: 20rem;
  margin-bottom: 60rem;
}

#map .maps .map-img {
  margin: 0 auto 30rem;
}

#map .maps .address {
  font-size: 18rem;
  line-height: 1.6;
  text-align: center;
  margin: 0 auto 50rem;
}

#map .maps .address span {
  display: inline-block;
  padding-top: 10px;
  font-size: 11rem;
  line-height: 1.6;
  text-align: left;
}

#map .maps .links {
  display: block;
}

#map .maps .links .icon {
  display: inline-block;
  margin: 0 auto;
  width: 19rem;
  padding-bottom: 12rem;
}

#map .maps .links li {
  text-align: center;
  display: inline-block;
  margin-right: 5%;
}

#map .maps .links li:last-child {
  margin-right: auto;
}

#map .maps .links li:last-child .icon {
  width: 25rem;
}

#map .maps .links li a {
  display: block;
  color: #46484D;
}

#map .maps .links .text {
  font-size: 11rem;
  line-height: 1.6;
  letter-spacing: .05em;
}

#map .guides {
  text-align: center;
  margin-top: 50px;
}

#map .guides .movies {
  display: inline-block;
  width: 40%;
  margin: auto;
}

#map .guides .guide-movie {
  margin: 0 auto 100px;
}

#map .guides .guide-movie video {
  width: 100%;
  height: 100%;
}

#map .guides .guide-movie .click-btn {
  max-width: 560px;
  width: 100%;
  margin: auto;
  text-align: center;
  clear: both;
}

#map .guides .guide-movie video:focus {
  outline: none;
}

#map .guides .guide-movie .modal-wrapper {
  z-index: 9999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 10% 10px;
  text-align: center;
}

#map .guides .guide-movie .modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}

#map .guides .guide-movie .modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity .4s, visibility .4s;
  background: rgba(0, 0, 0, 0.8) !important;
}

#map .guides .guide-movie .modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: "";
}

#map .guides .guide-movie .modal-wrapper .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: 94%;
  max-width: 800px;
  padding: 0;
  border-radius: 2px;
  vertical-align: middle;
}

#map .guides .guide-movie .modal-wrapper .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
  text-align: left;
}

#map .guides .guide-movie .modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 0 !important;
  background: rgba(0, 0, 0, 0.8) !important;
}

#map .guides .guide-movie .modal-overlay:hover {
  opacity: 1 !important;
}

#map .guides .guide-movie .modal-wrapper .modal-close, #map .guides .guide-movie .modal-wrapper .modal-close02 {
  z-index: 20;
  position: absolute;
  top: -45px;
  right: -45px;
  left: auto;
  width: 45px;
  color: #fff !important;
  font-size: 45px;
  font-weight: 700;
  line-height: 45px;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  padding: 0;
}

#map .guides .guide-movie .modal-wrapper .modal-close:hover, #map .guides .guide-movie .modal-wrapper .modal-close02:hover {
  color: #2b2e38 !important;
}

#map .salon {
  display: none;
  text-align: center;
  margin: 0 auto 170rem;
  max-width: 600rem;
}

#map .salon .title {
  font-size: 20rem;
  line-height: 1.5;
  padding-bottom: 60rem;
  font-weight: normal;
  text-align: center;
}

#map .salon .inner .img {
  margin: 0 auto 50rem;
}

#map .salon .inner .texts {
  display: flex;
  justify-content: space-between;
}

#map .salon .inner .sub-title {
  font-size: 18rem;
  line-height: 1.4;
  padding-bottom: 20rem;
  font-weight: normal;
}

#map .salon .inner .address {
  font-size: 14rem;
  line-height: 1.9;
}

#map .salon .inner .sub-section {
  text-align: left;
}

#map .salon .inner dl {
  font-size: 14rem;
  line-height: 1.9;
}

#map .salon .inner dl + dl {
  padding-top: 20rem;
}

#map .salon .inner dt {
  padding-bottom: 20rem;
}

#map .salon .inner dd {
  display: flex;
  justify-content: space-between;
  font-size: 14rem;
  line-height: 1.9;
  padding: 8rem 0;
}

#map .salon .inner .links {
  margin: 30rem 0 0;
}

#map .salon .inner .links li {
  text-align: left;
}

#map .salon .js-subs {
  position: relative;
}

#map .salon .js-subs::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 30rem;
  width: 12rem;
  height: 12rem;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: translateY(-50%) rotate(-45deg);
}

#map .salon .js-subs .subs-wrap-in {
  line-height: 1.2;
}

@media screen and (min-width: 1025px) {
  #map .salon .js-subs:hover .subs-wrap span {
    transform: translateY(-129%);
  }
}

/*----------------
brand
----------------*/
#brand .page-header {
  background: url(../images/brand/bg.jpg);
  background-size: cover;
  padding: 0 0 150rem;
  margin-bottom: 120rem;
}

#brand .page-header .page-title {
  padding-top: 150rem;
}

#brand .contents .image {
  position: relative;
}

#brand .intro {
  text-align: center;
  margin-bottom: 100px;
}

#brand .intro .tit {
  font-size: 33px;
  margin-bottom: 20px;
}

#brand .intro .sub {
  font-size: 18px;
  margin-bottom: 100px;
}

#brand .intro .image {
  max-width: 360px;
  margin: 0 auto 80px;
}

#brand .intro .txt01 {
  font-size: 57px;
  line-height: 1.8;
  letter-spacing: .2em;
  margin-bottom: 80px;
}

#brand .intro .txt02 {
  font-size: 26px;
  line-height: 1.6;
  margin-bottom: 30px;
}

#brand .intro .lead {
  font-size: 16px;
  line-height: 2;
}

#brand .slick-slider {
  margin-bottom: 200px;
}

#brand .slick-dots {
  display: flex;
  justify-content: center;
  gap: 0 5rem;
  position: static;
  padding-top: 20px;
}

#brand .slick-dots li {
  width: 34rem;
  height: 4rem;
}

#brand .slick-dots li.slick-active button {
  background: #595757;
}

#brand .slick-dots li button {
  appearance: none;
  padding: 0;
  width: 100%;
  height: 100%;
  font-size: 0;
  background: #EAEAEA;
}

#brand .slick-dots li button:before {
  display: none;
}

#brand .promise {
  text-align: center;
  margin-bottom: 200px;
}

#brand .promise .tit {
  font-size: 26px;
  line-height: 1.8;
  margin-bottom: 30px;
}

#brand .promise .sub {
  font-size: 18px;
  margin-bottom: 100px;
}

#brand .promise .lists {
  background: #B6CBCF;
  margin-bottom: 50px;
}

#brand .promise .lists li {
  vertical-align: middle;
  display: inline-block;
  width: 30%;
}

#brand .promise .lists li:last-child {
  width: 69%;
}

#brand .promise .lists .txt01 {
  font-size: 30px;
  margin-bottom: 18px;
}

#brand .promise .lists .txt02 {
  font-size: 18px;
  margin-bottom: 50px;
}

#brand .promise .lists .lead {
  text-align: left;
  width: 76%;
  margin: auto;
  font-size: 14px;
  line-height: 2;
}

#brand .promise .list02 {
  background: #BDC1B1;
}

#brand .promise .list03 {
  background: #DBD1C1;
}

#brand .promise .list04 {
  background: #C7BBC8;
  margin-bottom: auto;
}

#brand .salon {
  display: none;
  text-align: center;
  margin-bottom: 200px;
}

#brand .salon .tit {
  font-size: 32px;
  margin-bottom: 50px;
}

#brand .salon .lead {
  font-size: 18px;
  line-height: 2;
  margin: 80px auto;
}

#brand .salon .image {
  max-width: 1200px;
  margin: auto;
}

#brand .cafe {
  text-align: center;
}

#brand .cafe .tit {
  font-size: 32px;
  margin-bottom: 50px;
}

#brand .cafe .lead {
  font-size: 18px;
  line-height: 2;
  margin: 0 auto 80px;
}

#brand .cafe .img01 {
  max-width: 1200px;
  margin: auto;
}

#brand .cafe .img01 .caption {
  color: #404040;
}

#brand .cafe .img02 {
  max-width: 1000px;
  width: 90%;
  margin: 80px auto 0;
}

#brand .achievement {
  text-align: center;
  background: #2E2E2E;
  padding: 140px 0;
  color: #fff;
  margin-bottom: 200px;
}

#brand .achievement .tit {
  font-size: 36px;
  margin-bottom: 10px;
}

#brand .achievement .sub {
  font-size: 20px;
  margin-bottom: 50px;
}

#brand .achievement li {
  display: inline-block;
  width: 48%;
  margin-right: 2%;
}

#brand .achievement li:last-child {
  margin-right: auto;
}

#brand .achievement .caps {
  text-align: right;
  font-size: 11px;
  line-height: 1.4;
  margin-top: 10px;
  color: #fff;
}

#brand .ginza {
  text-align: center;
  padding-bottom: 100px;
}

#brand .ginza .logo {
  display: none;
  max-width: 385px;
  margin: 0 auto 80px;
}

#brand .ginza ul {
  display: none;
  max-width: 1200px;
  margin: auto;
}

#brand .ginza li {
  display: inline-block;
  vertical-align: top;
  width: 40%;
  margin-right: 3%;
}

#brand .ginza li:last-child {
  width: 56%;
  margin-right: auto;
}

#brand .ginza .img04 {
  max-width: 198px;
  margin: 30px 0;
}

#brand .ginza .info {
  text-align: left;
  font-size: 14px;
  letter-spacing: .12em;
  line-height: 1.6;
}

#brand .ginza .sns {
  max-width: 74px;
  margin: 80px auto 0;
}

@media screen and (max-width: 1024px) {
  #brand .promise .lists .txt01 {
    font-size: 24px;
    margin-bottom: 10px;
  }
  #brand .promise .lists .txt02 {
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0;
    margin-bottom: 20px;
  }
  #brand .promise .lists .lead {
    width: 94%;
    line-height: 1.6;
  }
}

/*----------------
outline
----------------*/
#outline main {
  position: relative;
}

#outline .page-header {
  background: url(../images/brand/bg.jpg);
  background-size: cover;
  padding: 0 0 150rem;
  margin-bottom: 120rem;
}

#outline .page-header .page-title {
  padding-top: 150rem;
}

#outline .contents {
  text-align: center;
}

#outline .contents .info-area h3 {
  text-align: center;
  font-size: 26px;
  line-height: 1.8;
  letter-spacing: .3em;
  font-weight: normal;
  margin-bottom: 50px;
}

#outline .contents .info-area table {
  margin: auto;
  max-width: 1000px;
  border-collapse: separate;
  border-spacing: 10px 0;
}

#outline .contents .info-area table .info_terms td {
  border-bottom: none;
}

#outline .contents .info-area table .info_terms + .row_detail td {
  border-top: 1px solid rgba(52, 72, 87, 0.6);
}

#outline .contents .info-area table th,
#outline .contents .info-area table td {
  padding: 15px;
  vertical-align: middle;
  line-height: 1.4;
  font-size: 14px;
}

#outline .contents .info-area table th {
  border: none;
  text-align: center;
  border-bottom: 1px solid #fff;
  color: #fff;
  background: #57BEC1;
}

#outline .contents .info-area table td {
  text-align: left;
  border-bottom: 1px solid rgba(52, 72, 87, 0.4);
}

#outline .contents .info-area .row_detail + .info_terms h3 {
  padding-top: 60px;
}

#outline .contents .info-area .buken_comment {
  max-width: 1000px;
  margin: auto;
  text-align: left;
  padding: 40px 0;
  line-height: 1.7;
  font-size: 11px;
}

#outline .contents .info-area .buken_comment p {
  line-height: 1.7;
  font-size: 11px;
}

#outline .contents .info-area .buken_comment + .buken_comment {
  padding-top: 0;
}

@media (max-width: 768px) {
  #outline .page-header {
    padding: 0 0 115rem;
    margin-bottom: 40rem;
  }
  #outline .page-header .page-title {
    padding-top: 115rem;
  }
  #outline .contents .info-area h3 {
    font-size: 22px;
    margin-bottom: 20px;
  }
  #outline .contents .info-area table {
    display: block;
    border-collapse: collapse;
    border-spacing: 0;
  }
  #outline .contents .info-area table colgroup {
    display: block;
  }
  #outline .contents .info-area table .info_terms + .row_detail td {
    border-top: none;
    margin-bottom: 2px;
  }
  #outline .contents .info-area table th,
  #outline .contents .info-area table td {
    box-sizing: border-box;
    display: block;
    padding: 10px;
    font-size: 13px;
    width: 100%;
    margin-bottom: 2px;
  }
  #outline .contents .info-area .row_detail + .info_terms h3 {
    padding-top: 40px;
  }
  #outline .contents .info-area .buken_comment {
    padding: 30px 0;
    line-height: 1.4;
  }
  #outline .contents .info-area .buken_comment p {
    line-height: 1.4;
  }
}

/*----------------
lgente
----------------*/
#lgente .page-header {
  background: #E4DFE1;
}

#lgente .intro {
  background: #E4DFE1;
}

#lgente .intro .image {
  max-width: 770px;
  margin: 80px auto 0;
}

#lgente .intro .plan-bnr {
  max-width: 770px;
  width: 90%;
  margin: 80px auto 0;
}

#lgente .images li {
  float: left;
  width: 50%;
}

#lgente .images li:nth-child(2) {
  width: 25%;
}

#lgente .images li:last-child {
  width: 25%;
}

#lgente .sections {
  text-align: center;
  padding: 50px 0 100px;
}

#lgente .sections h3 {
  font-weight: normal;
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 60px;
}

#lgente .sections h3 span {
  font-size: 40px;
}

#lgente .sections .tit {
  font-size: 20px;
  line-height: 2;
}

#lgente .sections .texts {
  max-width: 800px;
  margin: auto;
}

#lgente .sections .texts li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 52%;
  margin-right: 2%;
}

#lgente .sections .texts li:last-child {
  width: 45%;
  margin-right: auto;
}

#lgente .sections .texts .icon, #lgente .sections .texts .info {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
}

#lgente .sections .texts .icon {
  max-width: 50px;
  width: 15%;
  padding-right: 10rem;
}

#lgente .sections .texts .info {
  width: 81%;
}

#lgente .sections .texts .txt {
  font-size: 18rem;
  line-height: 1.6;
  letter-spacing: .05em;
}

#lgente .sections .texts .top {
  margin-top: 30rem;
}

#lgente .sections .texts .mini {
  text-align: right;
  font-size: 11px;
  margin-top: 4px;
}

#lgente .kitchen {
  background: #EFF1F4;
}

#lgente .kitchen .image {
  max-width: 700px;
  margin: 0 auto 60px;
}

#lgente .kitchen .image .caption {
  background: none;
  color: #46484D;
}

#lgente .dresser {
  background: #fff;
}

#lgente .dresser .image {
  max-width: 511px;
  margin: 0 auto 60px;
}

#lgente .dresser .image .caption {
  background: none;
  color: #46484D;
}

#lgente .cafe {
  display: none;
  padding: 0;
}

/*----------------
position
----------------*/
#position {
  overflow: inherit;
}

#position .intro .image {
  margin: 60px auto 0;
}

#position .sections {
  text-align: center;
}

#position .sections h3 {
  font-size: 30px;
  font-weight: normal;
  margin-bottom: 30px;
}

#position .sections .tit {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 30px;
}

#position .sections .lead {
  font-size: 13px;
  line-height: 2;
}

#position .fujisawa {
  margin-bottom: 100px;
}

#position .fujisawa .img01 {
  margin: 60px auto 100px;
}

#position .fujisawa .list01 {
  max-width: 900px;
  margin: 0 auto 80px;
}

#position .fujisawa .list01 li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 2%;
}

#position .fujisawa .list01 li:last-child {
  margin-right: auto;
}

#position .fujisawa .list01 .name {
  font-size: 16px;
  margin: 10px 0;
}

#position .fujisawa .list01 .min {
  font-size: 11px;
}

#position .fujisawa .white-bg {
  background: #fff;
  max-width: 1200px;
  margin: auto;
  padding: 60px 0;
}

#position .fujisawa .white-bg .inner {
  width: 90%;
  margin: auto;
}

#position .fujisawa .white-bg .tit {
  margin-bottom: 10px;
}

#position .fujisawa .white-bg .list02 {
  max-width: 800px;
  margin: 60px auto 10px;
}

#position .fujisawa .white-bg .list02 li {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  width: 47%;
  margin-right: 5%;
}

#position .fujisawa .white-bg .list02 li:last-child {
  margin-right: auto;
}

#position .fujisawa .white-bg .list02 .txt01 {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 20px;
}

#position .fujisawa .white-bg .list02 .txt02 {
  font-size: 13px;
  line-height: 2;
}

#position .fujisawa .white-bg .mini {
  max-width: 800px;
  text-align: left;
  font-size: 13px;
  line-height: 2;
  margin: 0 auto 60px;
}

#position .sec01 {
  background: #fff;
  padding: 100px 0;
}

#position .sec01 .img01 {
  max-width: 900px;
  margin: 60px auto;
}

#position .sec01 .list {
  max-width: 900px;
  margin: auto;
}

#position .sec01 .list li {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  width: 61%;
  margin-right: 2%;
}

#position .sec01 .list li:last-child {
  width: 36%;
  margin-right: auto;
}

#position .sec01 .list .txt01 {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 20px;
}

#position .sec01 .list .txt02 {
  font-size: 13px;
  line-height: 2;
  margin-bottom: 20px;
}

#position .sec01 .list .caps {
  font-size: 11px;
  line-height: 1.8;
}

#position .sec02 {
  background: #EBF8FF;
  padding: 100px 0 44%;
}

#position .sec02 .lead {
  margin-bottom: 100px;
}

#position .sec02 .all_box {
  display: flex;
  justify-content: space-between;
  position: relative;
}

#position .sec02 .right_side {
  width: 35vw;
}

#position .sec02 .right_side div {
  width: 80%;
  margin: auto;
}

#position .sec02 .left_side {
  width: 65vw;
  height: 0;
  display: flex;
  align-items: center;
  position: sticky;
  position: -webkit-sticky;
  top: 0;
}

#position .sec02 .left_side p {
  height: 100vh;
  margin: auto;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  transition: .8s;
  opacity: 0;
}

#position .sec02 .left_side p .caption {
  top: 0;
  left: 0;
  bottom: auto;
  right: auto;
}

#position .sec02 .left_side p:first-child,
#position .sec02 .left_side p.active {
  visibility: visible;
  opacity: 1;
  position: relative;
}

#position .sec03 {
  background: #EBF8FF;
  padding: 200px 0 100px;
}

#position .sec03 .lists {
  max-width: 800px;
  margin: auto;
}

#position .sec03 .lists li {
  text-align: left;
  display: inline-block;
  vertical-align: middle;
  width: 49%;
  margin-right: 5%;
}

#position .sec03 .lists li:last-child {
  width: 45%;
  margin-right: auto;
}

#position .sec03 .lists .txt01 {
  font-size: 20px;
  line-height: 1.8;
  margin-bottom: 20px;
}

#position .sec03 .lists .txt02 {
  font-size: 13px;
  line-height: 2;
}

#position .sec03 .list02 {
  margin-top: 60px;
}

#position .sec03 .list02 li {
  width: 45%;
}

#position .sec03 .list02 li:last-child {
  width: 49%;
  margin-right: auto;
}

/*----------------
location
----------------*/
#location .intro .image {
  max-width: 1000px;
  margin: 80px auto 0;
}

#location .caption.no-bg {
  background: none;
  color: #46484D;
}

#location .sections {
  text-align: center;
}

#location .sections h3 {
  font-size: 30px;
  font-weight: normal;
  margin-bottom: 30px;
}

#location .sections .tit {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 30px;
}

#location .sections .lead {
  font-size: 13px;
  line-height: 2;
}

#location .sections .img00 {
  margin-bottom: 60px;
}

#location .shoping .lead {
  margin-bottom: 60px;
}

#location .shoping .lists {
  text-align: left;
  max-width: 900px;
  margin: auto;
}

#location .shoping .lists .name {
  font-size: 16px;
  margin: 10px 0 6px;
}

#location .shoping .lists .name span {
  font-size: 11px;
}

#location .shoping .lists .min {
  font-size: 11px;
}

#location .shoping .list01 {
  margin-bottom: 50px;
}

#location .shoping .list01 li {
  display: inline-block;
  vertical-align: top;
  width: 48%;
  margin-right: 3%;
}

#location .shoping .list01 li:nth-child(2),
#location .shoping .list01 li:last-child {
  margin-right: auto;
}

#location .shoping .list01 .info {
  margin: 30px auto 50px;
}

#location .shoping .list02 {
  margin-bottom: 50px;
}

#location .shoping .list02 li {
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
  margin-bottom: 50px;
}

#location .shoping .list02 li:nth-child(3n),
#location .shoping .list02 li:last-child {
  margin-right: auto;
}

#location .gourmet {
  background: #FFF0F0;
  padding-bottom: 50px;
}

#location .gourmet .lists {
  text-align: left;
}

#location .gourmet .lists .name {
  font-size: 24px;
  margin-bottom: 30px;
}

#location .gourmet .lists .name span {
  font-size: 11px;
}

#location .gourmet .lists .info {
  font-size: 13px;
  line-height: 2;
}

#location .gourmet .list01 {
  width: 82%;
  margin: 90px 0;
}

#location .gourmet .list01 li {
  display: inline-block;
  vertical-align: bottom;
  width: 61%;
  margin-right: 3%;
}

#location .gourmet .list01 li:last-child {
  width: 35%;
  margin-right: auto;
}

#location .gourmet .list01 .images {
  margin-top: 40px;
}

#location .gourmet .list01 .images .image {
  display: inline-block;
  width: 48%;
}

#location .gourmet .list01 .images .right {
  margin-right: 3%;
}

#location .gourmet .img04 {
  max-width: 900px;
  margin: 0 auto 60px;
}

#location .gourmet .list02 {
  text-align: right;
  width: 82%;
  margin: 0 0 90px auto;
}

#location .gourmet .list02 li {
  display: inline-block;
  vertical-align: middle;
  width: 33%;
  margin-right: 3%;
}

#location .gourmet .list02 li:first-child {
  text-align: left;
}

#location .gourmet .list02 li:nth-child(2) {
  width: 30%;
}

#location .gourmet .list02 li:last-child {
  width: 30%;
  margin-right: auto;
}

#location .gourmet .images {
  position: relative;
  max-width: 1100px;
  margin: 0 auto 90px;
}

#location .gourmet .images .image {
  max-width: 1000px;
  margin: 0;
}

#location .gourmet .images .texts {
  text-align: left;
  position: absolute;
  max-width: 490px;
  width: 45%;
  top: 0;
  right: 0;
}

#location .gourmet .images .texts .name {
  font-size: 24px;
  margin-bottom: 30px;
}

#location .gourmet .images .texts .name span {
  font-size: 11px;
}

#location .gourmet .images .texts .info {
  font-size: 13px;
  line-height: 2;
  word-break: break-all;
}

#location .gourmet .list03 {
  max-width: 900px;
  margin: auto;
}

#location .gourmet .list03 li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 48%;
  margin-right: 3%;
  margin-bottom: 50px;
}

#location .gourmet .list03 li:nth-child(2n) {
  margin-right: auto;
}

#location .gourmet .list03 .name {
  font-size: 16px;
  margin: 10px 0 6px;
}

#location .gourmet .list03 .name span {
  font-size: 11px;
}

#location .park {
  background: #F2FFF2;
  padding-bottom: 100px;
}

#location .park .lists {
  max-width: 900px;
  margin: auto;
}

#location .park .lists li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 48%;
  margin-right: 3%;
}

#location .park .lists li:last-child {
  margin-right: auto;
}

#location .park .lists .name {
  font-size: 16px;
  margin: 10px 0 6px;
}

#location .park .lists .name span {
  font-size: 11px;
}

#location .park .lists .min {
  font-size: 11px;
}

#location .park .list01 {
  margin: 60px auto 50px;
}

#location .park .list02 li {
  width: 31%;
  margin-right: 3%;
}

#location .park .list02 li:last-child {
  margin-right: auto;
}

#location .park .list02 .name {
  font-size: 14px;
}

#location .medical {
  background: #fff;
  padding: 100px 0;
}

#location .medical .list01 {
  max-width: 900px;
  margin: 60px auto 0;
}

#location .medical .list01 li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
}

#location .medical .list01 li:last-child {
  margin-right: auto;
}

#location .medical .list01 .name {
  font-size: 16px;
  margin: 10px 0 6px;
}

#location .medical .list01 .min {
  font-size: 11px;
}

#location .shonan {
  background: #fff;
}

#location .shonan .bg01 {
  background: #F2FFF2;
  padding-bottom: 25%;
}

#location .shonan .img01 {
  max-width: 1122px;
  margin: auto;
}

#location .shonan .img01 .no-bg {
  bottom: 80px;
}

#location .shonan .img01 .left {
  right: auto;
  left: 0;
}

#location .shonan .img02 {
  width: 88%;
  margin: -22% 0 10%;
}

#location .shonan .enoshima {
  background: linear-gradient(180deg, #fff 0%, #fff 8%, #FFF0F0 8%, #FFF0F0 100%);
  padding-bottom: 16%;
}

#location .shonan .enoshima .images {
  position: relative;
  width: 78%;
  margin: 0 0 100px auto;
}

#location .shonan .enoshima .images .image {
  width: 80%;
  margin: 0 0 0 auto;
}

#location .shonan .enoshima .images .texts {
  text-align: left;
  position: absolute;
  width: 36%;
  bottom: 0;
  left: 0;
  background: #FFF0F0;
  padding-top: 16px;
}

#location .shonan .enoshima .images .texts .place {
  font-size: 30px;
  margin-bottom: 30px;
}

#location .shonan .enoshima .images .texts .txt {
  font-size: 20px;
  line-height: 2;
  margin-bottom: 20px;
}

#location .shonan .enoshima .images .texts .info {
  font-size: 13px;
  line-height: 2;
}

#location .shonan .enoshima .lists {
  max-width: 900px;
  margin: auto;
}

#location .shonan .enoshima .lists li {
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  width: 56%;
  margin-right: 6%;
}

#location .shonan .enoshima .lists li:last-child {
  width: 33%;
  margin-right: auto;
}

#location .shonan .enoshima .lists .txt {
  font-size: 20px;
  line-height: 2;
  margin-bottom: 20px;
}

#location .shonan .enoshima .lists .info {
  font-size: 13px;
  line-height: 2;
}

#location .shonan .enoshima .list02 {
  margin: 60px auto 0;
}

#location .shonan .enoshima .list02 li {
  text-align: left;
  vertical-align: top;
  display: inline-block;
  width: 31%;
  margin-right: 3%;
}

#location .shonan .enoshima .list02 li:last-child {
  width: 31%;
  margin-right: auto;
}

#location .shonan .enoshima .list02 .name {
  font-size: 16px;
  margin: 10px 0;
}

#location .shonan .enoshima .list02 .name span {
  font-size: 11px;
}

#location .shonan .kamakura {
  margin: -10% 0 0;
}

#location .shonan .kamakura .images {
  position: relative;
  width: 78%;
  margin: 0 0 100px;
}

#location .shonan .kamakura .images .image {
  width: 80%;
  margin: 0;
}

#location .shonan .kamakura .images .image .caption {
  left: 0;
  right: auto;
}

#location .shonan .kamakura .images .texts {
  text-align: left;
  position: absolute;
  background: #fff;
  width: 36%;
  bottom: 0;
  right: 0;
  padding: 50px 0 0 50px;
  box-sizing: border-box;
}

#location .shonan .kamakura .images .texts .place {
  font-size: 30px;
  margin-bottom: 30px;
}

#location .shonan .kamakura .images .texts .txt {
  font-size: 20px;
  line-height: 2;
  margin-bottom: 20px;
}

#location .shonan .kamakura .images .texts .info {
  font-size: 13px;
  line-height: 2;
}

#location .shonan .kamakura .list {
  max-width: 900px;
  margin: 100px auto 10%;
}

#location .shonan .kamakura .list li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
}

#location .shonan .kamakura .list li:last-child {
  margin-right: auto;
}

#location .shonan .kamakura .list .name {
  font-size: 16px;
  margin: 10px 0;
}

#location .shonan .kamakura .list .name span {
  font-size: 11px;
}

#location .shonan .tsujido {
  background: linear-gradient(180deg, #fff 0%, #fff 8%, #EBF8FF 8%, #EBF8FF 100%);
  padding-bottom: 100px;
}

#location .shonan .tsujido .images {
  position: relative;
  width: 78%;
  margin: 0 0 100px auto;
}

#location .shonan .tsujido .images .image {
  width: 80%;
  margin: 0 0 0 auto;
}

#location .shonan .tsujido .images .texts {
  text-align: left;
  position: absolute;
  width: 36%;
  bottom: 0;
  left: 0;
  background: #EBF8FF;
  padding-top: 16px;
}

#location .shonan .tsujido .images .texts .place {
  font-size: 30px;
  margin-bottom: 30px;
}

#location .shonan .tsujido .images .texts .txt {
  font-size: 20px;
  line-height: 2;
  margin-bottom: 20px;
}

#location .shonan .tsujido .images .texts .info {
  font-size: 13px;
  line-height: 2;
}

#location .shonan .tsujido .list {
  max-width: 900px;
  margin: 100px auto 0;
}

#location .shonan .tsujido .list li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
}

#location .shonan .tsujido .list li:last-child {
  margin-right: auto;
}

#location .shonan .tsujido .list .name {
  font-size: 16px;
  margin: 10px 0;
}

#location .shonan .tsujido .list .name span {
  font-size: 11px;
}

#location .life-info {
  background: #fff;
  padding: 100px 0;
  text-align: center;
}

#location .life-info .tit {
  font-size: 36px;
  line-height: 1.6;
  margin-bottom: 40px;
}

#location .life-info .title {
  width: 100%;
  display: inline-block;
}

#location .life-info .title .note {
  width: 30%;
  font-size: 10px;
  float: right;
  text-align: left;
  line-height: 1.4;
  margin-top: 10px;
}

#location .life-info .logo {
  width: 65%;
  float: left;
  text-align: right;
  font-size: 19px;
  line-height: 2;
  margin-bottom: 10px;
  color: #5D6970;
}

#location .life-info .logo:before {
  content: url(../images/location/map-logo.svg);
  margin-right: 10px;
  vertical-align: middle;
}

#location .life-info .tabs {
  text-align: center;
  padding: 10px 0;
  font-size: 0;
  margin-bottom: 15px;
  position: relative;
  z-index: 1;
}

#location .life-info .tabs li {
  display: inline-block;
  width: 16%;
  padding: 0 1px;
  box-sizing: border-box;
}

#location .life-info .tabs a {
  display: block;
  color: #45565D;
  background: rgba(95, 137, 193, 0.1);
  font-size: 14px;
  padding: 15px 0;
}

#location .life-info .tabs a.current {
  background: #EB8181;
  color: #fff;
}

#location .life-info .maps {
  position: relative;
}

#location .life-info .googlemap {
  height: 730px;
  margin-right: 350px;
  background: #fff;
}

#location .life-info .list-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  width: 350px;
  height: 100%;
  min-height: 730px;
  background: #fff;
  box-sizing: border-box;
  text-align: left;
  padding: 9px 10px;
  border-left: 1px solid #eee;
}

#location .life-info .list-wrapper ol {
  counter-reset: lis;
  display: none;
}

#location .life-info .list-wrapper ol.current {
  display: block;
}

#location .life-info .list-wrapper li {
  padding: 7px 10px 7px 40px;
  list-style: none;
  border-bottom: 1px solid #eee;
  font-size: 12.5px;
  line-height: 1.2;
  position: relative;
}

#location .life-info .list-wrapper li:after {
  counter-increment: lis;
  content: counter(lis);
  display: block;
  width: 20px;
  height: 20px;
  line-height: 20px;
  border-radius: 20px;
  background: #EB8181;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0;
  text-align: center;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  position: absolute;
}

#location .life-info .list-wrapper .minite {
  display: none;
  font-size: 10px;
  padding-top: 4px;
  margin-left: 10px;
}

@media (max-width: 1024px) {
  #location .life-info .tabs {
    padding: 0;
    margin-bottom: 15px;
  }
  #location .life-info .tabs li {
    display: inline-block;
    width: 50%;
    margin-bottom: 2px;
  }
  #location .life-info .tabs a {
    font-size: 11px;
    padding: 13px 10px;
  }
  #location .life-info .googlemap {
    float: none;
    height: 328px;
    margin-right: auto;
  }
  #location .life-info .list-wrapper {
    position: static;
    float: none;
    width: auto;
    height: auto;
    min-height: 0;
    border: none;
  }
  #location .life-info .list-wrapper li {
    padding: 9px 10px 9px 30px;
  }
  #location .life-info .list-wrapper li:after {
    width: 20px;
    height: 20px;
    line-height: 20px;
    font-size: 11px;
  }
  #location .life-info .list-wrapper .minite {
    display: block;
    font-size: 10px;
    padding-top: 4px;
  }
}

/*----------------
plan
----------------*/
#plan .sections {
  text-align: center;
}

#plan .sections h3 {
  font-size: 30px;
  font-weight: normal;
  margin-bottom: 30px;
}

#plan .sections .tit {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 30px;
}

#plan .sections .lead {
  font-size: 13px;
  line-height: 2;
}

#plan .floor {
  margin-bottom: 120px;
}

#plan .floor .img01 {
  max-width: 544px;
  margin: 100px auto;
}

#plan .floor .img01 .caption {
  background: none;
  color: #46484D;
  bottom: -20px;
}

#plan .floor .list {
  text-align: left;
  max-width: 900px;
  margin: auto;
}

#plan .floor .list li {
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
}

#plan .floor .list li:last-child {
  margin-right: auto;
}

#plan .floor .list .name {
  font-size: 15px;
  letter-spacing: .08em;
  margin: 15px 0;
  line-height: 1.2;
}

#plan .floor .list .name span {
  color: #fff;
  background: #84C3CC;
  border-radius: 50px;
  padding: 0 6px 1px 8px;
  margin-right: 6px;
}

#plan .floor .list .name span.color02 {
  background: #8298C7;
}

#plan .floor .list .name span.color03 {
  background: #ED7B68;
}

#plan .floor .list .info {
  font-size: 11px;
  line-height: 1.8;
}

#plan .view {
  position: relative;
  padding: 0 0 100px;
  margin-top: 100px;
}

#plan .view .floor-num {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  font-size: 22px;
  background: #fff;
  padding: 10px 15px;
}

#plan .view .images {
  max-width: 1000px;
  margin: 0 auto 20px;
}

#plan .view .tab-inner {
  display: none;
}

#plan .view .tab-inner.current {
  display: block;
}

#plan .view .change-buttons {
  text-align: center;
  max-width: 346px;
  margin: 0 auto;
}

#plan .view .change-buttons li {
  text-align: center;
  display: inline-block;
  width: 23%;
  margin-right: 1%;
  margin-bottom: 10px;
}

#plan .view .change-buttons li:nth-child(2) {
  margin-right: 0;
}

#plan .view .change-buttons li:nth-child(3) {
  clear: both;
}

#plan .view .change-buttons li:last-child {
  margin-right: 0;
}

#plan .view .change-buttons .button {
  display: block;
  color: #9DA1AD;
  font-size: 18px;
  border: 1px solid;
  border-radius: 26px;
}

#plan .view .change-buttons .button.current {
  pointer-events: none;
  color: #fff;
  background: #46484D;
}

#plan .view .change-buttons .button span {
  display: inline-block;
  padding: 6px 0;
}

#plan .view .change-buttons .button:hover {
  opacity: 1;
  color: #fff;
  background: #46484D;
  transition: .3s;
}

#plan .slides {
  margin: 0 auto 50%;
  position: relative;
}

#plan .slides img {
  width: 100%;
}

#plan .slides-list li {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 1.2s ease-in-out;
}

#plan .slides-list li.current {
  opacity: 1;
}

#plan .thumbnails {
  position: absolute;
  top: 20px;
  right: 20px;
}

#plan .thumbnails li {
  float: left;
  margin-right: 5px;
  width: 170px;
  cursor: pointer;
  opacity: 0.5;
  user-select: none;
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer */
  -khtml-user-select: none;
  /* KHTML browsers (e.g. Konqueror) */
  -webkit-user-select: none;
  /* Chrome, Safari, and Opera */
  -webkit-touch-callout: none;
  /* Disable Android and iOS callouts*/
}

#plan .thumbnails li.current {
  opacity: 1;
  pointer: default;
  pointer-events: none;
}

#plan .room {
  margin-bottom: 100px;
}

#plan .room .btns {
  text-align: center;
  max-width: 900px;
  margin: 60px auto 0;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: stretch;
}

#plan .room .btns li {
  flex: 0 0 32%;
  background: #fff;
  padding: 30px 0;
}

#plan .room .btns li a {
  color: #46484D;
}

#plan .room .btns .texts {
  margin-bottom: 20px;
}

#plan .room .btns .texts .type {
  font-size: 20px;
  margin-bottom: 10px;
}

#plan .room .btns .texts .type span {
  font-size: 40px;
}

#plan .room .btns .texts .spec {
  font-size: 22px;
  margin-bottom: 10px;
}

#plan .room .btns .texts .spec span {
  font-size: 30px;
}

#plan .room .btns .texts .spec01 {
  font-size: 14px;
  margin-bottom: 10px;
}

#plan .room .btns .texts .spec01 span {
  font-size: 26px;
}

#plan .room .btns .texts .width {
  font-size: 11px;
  margin-bottom: 20px;
}

#plan .room .btns .texts .width span {
  font-size: 24px;
}

#plan .room .btns .texts .width.mb40 {
  margin-bottom: 40px;
}

#plan .room .btns .texts .payment {
  display: block;
  background: #57BEC1;
  max-width: 180px;
  margin: 0 auto 20px;
  font-size: 14px;
  color: #fff;
  padding: 10px 0;
}

#plan .room .btns .texts .term {
  display: block;
  border: 1px solid #57BEC1;
  max-width: 180px;
  margin: 0 auto 10px;
  font-size: 14px;
  color: #57BEC1;
  padding: 10px 0;
}

#plan .room .btns .image {
  position: relative;
  width: 90%;
  margin: 0 auto;
}

#plan .room .btns .image .text {
  position: absolute;
  top: 50%;
  left: 30%;
  transform: translate(-20%, -50%);
  color: #fff;
  font-size: 16px;
  line-height: 1.6;
}

#plan .room .btns .point {
  width: 90%;
  margin: 20px auto 0;
}

#plan .room .btns .limited {
  background: #57BEC1;
}

#plan .room .btns .limited a {
  color: #fff;
}

#plan .equipment {
  background: #fff;
  padding: 100px 0 50px;
}

#plan .equipment .list {
  max-width: 900px;
  margin: 100px auto 0;
}

#plan .equipment .list .caption.no-bg {
  background: none;
  color: #46484D;
}

#plan .equipment .list li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
  margin-bottom: 50px;
}

#plan .equipment .list li:nth-child(3n) {
  margin-right: auto;
}

#plan .equipment .list .name {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: .05em;
  margin: 15px 0;
}

#plan .equipment .list .info {
  font-size: 11px;
  line-height: 1.8;
}

#plan .equipment .list .info span {
  font-size: 10px;
}

#plan .equipment .list.full {
  border: 1px solid;
  padding: 30px 0;
}

#plan .equipment .list.full li {
  vertical-align: middle;
  margin-bottom: 0;
}

#plan .equipment .list.full li .logo {
  max-width: 170px;
  margin-bottom: 15px;
}

#plan .equipment .list.full li.function {
  width: 55%;
}

#plan .equipment .list.full li.function .item {
  display: inline-flex;
  margin-bottom: 10px;
}

#plan .equipment .list.full li.function .item .image {
  max-width: 133px;
  margin-right: 20px;
}

#plan .equipment .list.full li.function .item .name {
  font-size: 13px;
}

#plan .equipment .list.full .info.pc {
  text-align: left;
  padding-left: 37px;
}

#plan .fixed-bnr {
  position: fixed;
  top: 50%;
  right: 0;
  width: 230px;
  z-index: 10000;
  transition: .5s;
  opacity: 0;
}

#plan .fixed-bnr .close {
  position: absolute;
  right: 0;
  top: -25px;
  width: 25px;
}

/*----------------
plan.detail
----------------*/
#plan.detail main {
  padding-bottom: 140rem;
}

#plan.detail .banners {
  max-width: 720px;
  width: 80%;
  margin: 30px auto;
}

#plan.detail .intro {
  text-align: center;
  padding-bottom: 40rem;
}

#plan.detail .intro .type {
  font-size: 40px;
  margin-bottom: 10px;
}

#plan.detail .intro .type span {
  font-size: 20px;
}

#plan.detail .intro .spec {
  font-size: 28px;
  margin-bottom: 10px;
}

#plan.detail .intro .spec span {
  font-size: 18px;
}

#plan.detail .intro .width {
  font-size: 28px;
  margin-bottom: 10px;
}

#plan.detail .intro .width span {
  font-size: 16px;
}

#plan.detail .intro .sub {
  font-size: 11px;
  margin-bottom: 10px;
}

#plan.detail .intro .sub span {
  font-size: 17px;
}

#plan.detail .intro .repayment {
  max-width: 500px;
  margin: 30px auto;
  width: 94%;
}

#plan.detail .plans {
  max-width: 1200px;
  margin: auto;
}

#plan.detail .plans li {
  display: inline-block;
  vertical-align: bottom;
  width: 20%;
  margin-right: 4%;
}

#plan.detail .plans li:nth-child(2) {
  width: 50%;
  margin-right: 0;
}

#plan.detail .plans li:last-child {
  margin-right: auto;
  margin-left: 4%;
}

#plan.detail .plans .room-img {
  position: relative;
}

#plan.detail .plans .icon {
  position: absolute;
  max-width: 26px;
}

#plan.detail .plans .icon a img {
  animation: pins 1.5s ease infinite;
  width: 95%;
}

#plan.detail .plans .icon a {
  pointer-events: none;
}

@keyframes pins {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(0);
  }
}

#plan.detail .plans .guide {
  max-width: 508px;
  margin: 40px auto 10px;
}

#plan.detail .plans .guide-spec {
  font-size: 11px;
  line-height: 1.3;
  margin-bottom: 20px;
}

#plan.detail .plans .guide-txt {
  text-align: left;
  font-size: 11px;
  line-height: 1.6;
}

#plan.detail .plans .tab-inner {
  display: none;
}

#plan.detail .plans .tab-inner.current {
  display: block;
}

#plan.detail .plans .change-buttons {
  text-align: center;
  max-width: 500px;
  margin: 0 auto 60px;
}

#plan.detail .plans .change-buttons li {
  text-align: center;
  display: inline-block;
  width: 48%;
  margin-right: 3%;
  font-family: 'Shippori Mincho', serif;
}

#plan.detail .plans .change-buttons li:last-child {
  margin: 0;
}

#plan.detail .plans .change-buttons .button {
  display: block;
  color: #fff;
  font-size: 14px;
  background: rgba(93, 105, 112, 0.5);
}

#plan.detail .plans .change-buttons .button.current {
  pointer-events: none;
  color: #fff;
  background: #5D6970;
}

#plan.detail .plans .change-buttons .button span {
  display: inline-block;
  padding: 12px 0;
}

#plan.detail .plans .change-buttons .button:hover {
  opacity: 1;
  color: #fff;
  background: #5D6970;
  transition: .3s;
}

#plan.detail .plans .modal-close {
  color: #fff !important;
  left: auto;
  right: 0;
}

#plan.detail .more-btn {
  max-width: 320rem;
  margin: 60rem auto 0;
}

#plan.detail .more-btn a {
  font-size: 15rem;
  position: relative;
  background-color: transparent;
  border: 1px solid #57BEC1;
  color: #57BEC1;
}

#plan.detail .more-btn a::after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  right: 40rem;
  width: 9rem;
  height: 9rem;
  border-right: 1px solid #57BEC1;
  border-bottom: 1px solid #57BEC1;
  transform: translateY(-50%) rotate(-45deg);
}

#plan.detail .more-btn a::before {
  background-color: #57BEC1;
}

#plan.detail .more-btn a:hover {
  color: #fff;
}

#plan.detail .more-btn a:hover::after {
  border-color: #fff;
}

#plan.detail .room .btns {
  justify-content: space-evenly;
}

#plan.detail .plans.atype .room-img {
  width: 66%;
  margin: auto;
}

#plan.detail .plans.atype .icon01 {
  top: 50%;
  left: 16%;
}

#plan.detail .plans.atype .icon02 {
  bottom: 32%;
  left: 30%;
}

#plan.detail .plans.atype .icon03 {
  top: 40%;
  left: 3%;
}

#plan.detail .plans.atype .icon03-02 {
  bottom: 29%;
  left: 3%;
}

#plan.detail .plans.atype .icon04 {
  top: 10%;
  right: 19%;
}

#plan.detail .plans.atype .icon05 {
  top: 36%;
  left: 30%;
}

#plan.detail .plans.atype .icon00 {
  top: 41.5%;
  left: 30%;
}

#plan.detail .plans.btype .room-img {
  width: 68%;
  margin: auto;
}

#plan.detail .plans.btype .icon01 {
  top: 53%;
  left: 18%;
}

#plan.detail .plans.btype .icon02 {
  bottom: 33%;
  left: 33%;
}

#plan.detail .plans.btype .icon03 {
  bottom: 12%;
  left: 9%;
}

#plan.detail .plans.btype .icon03-02 {
  bottom: 12%;
  right: 21%;
}

#plan.detail .plans.btype .icon04 {
  top: 23%;
  left: 41%;
}

#plan.detail .plans.btype .icon05 {
  top: 37%;
  right: 30%;
}

#plan.detail .plans.btype .icon06 {
  top: 37%;
  right: 37%;
}

#plan.detail .plans.ctype .room-img {
  width: 63%;
  margin: auto;
}

#plan.detail .plans.ctype .icon01 {
  top: 12%;
  left: 40%;
}

#plan.detail .plans.ctype .icon02 {
  top: 16%;
  left: 47%;
}

#plan.detail .plans.ctype .icon03 {
  top: 39%;
  left: 26%;
}

#plan.detail .plans.ctype .icon04 {
  bottom: 37%;
  right: 25%;
}

#plan.detail .plans.ctype .icon05 {
  bottom: 29%;
  right: 41%;
}

#plan.detail .plans.ctype .icon06 {
  bottom: 27%;
  right: 7%;
}

#plan.detail .fixed-banner {
  position: fixed;
  max-width: 215px;
  height: auto;
  top: 56%;
  right: 10px;
  z-index: 10000;
  transition: .5s;
  opacity: 1;
}

#plan.detail .fixed-banner .close {
  position: absolute;
  display: block;
  right: 0;
  top: -25px;
  width: 25px;
}

/*----------------
life-quality
----------------*/
#life-quality .page-header {
  background: none;
  padding: 0 0 102rem;
}

#life-quality .page-header .image {
  margin-bottom: 40rem;
}

#life-quality .intro {
  text-align: center;
}

#life-quality .intro .txt {
  font-size: 25rem;
  line-height: 1.8;
  margin-bottom: 35rem;
}

#life-quality .intro .lead {
  font-size: 13rem;
  line-height: 2;
}

#life-quality .tab-btn {
  text-align: center;
  max-width: 1100px;
  margin: 0 auto 100px;
}

#life-quality .tab-btn li {
  display: inline-block;
  width: 14%;
  margin-right: 5px;
}

#life-quality .tab-btn li:last-child {
  margin: auto;
}

#life-quality .tab-btn li:nth-child(3) {
  width: 25%;
}

#life-quality .tab-btn a {
  display: block;
  color: #fff;
  background: #57BEC1;
  font-size: 15px;
  padding: 16px 0;
}

#life-quality .tab-btn a.current {
  background: #fff;
  color: #57BEC1;
  border: 1px solid #57BEC1;
}

#life-quality .tab-btn a:hover {
  background: #fff;
  color: #57BEC1;
  border: 1px solid #57BEC1;
  transition: .3s;
}

#life-quality .items {
  max-width: 1000px;
  margin: auto;
  padding-bottom: 100px;
  text-align: center;
}

#life-quality .items .image {
  position: relative;
}

#life-quality .items .intro .tit {
  color: #454D67;
}

#life-quality .items .tit {
  font-size: 26px;
  line-height: 1.8;
  margin-bottom: 30px;
  color: #46484D;
}

#life-quality .items .sub-tit {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 50px;
}

#life-quality .items .lists {
  text-align: left;
  max-width: 1000px;
  margin: auto;
}

#life-quality .items .lists li {
  text-align: left;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
  margin-bottom: 50px;
}

#life-quality .items .lists li.full {
  width: 99%;
  margin-right: auto;
}

#life-quality .items .lists li:nth-child(3n) {
  margin-right: auto;
}

#life-quality .items .lists .name {
  font-size: 15px;
  line-height: 1.8;
  margin: 20px 0 10px;
}

#life-quality .items .lists .info {
  font-size: 13px;
  line-height: 2;
}

#life-quality .items .lists .mini {
  font-size: 11px;
  line-height: 1.6;
  margin-top: 10px;
}

#life-quality .items.powder .lists li.img-list {
  text-align: center;
  width: 65%;
  margin-right: auto;
  border: 1px solid #5D6970;
  padding: 20px 0 10px;
  box-sizing: border-box;
}

#life-quality .items.powder .lists li.img-list .images {
  display: inline-block;
  margin-bottom: 10px;
  width: 28%;
  margin-right: 2%;
}

#life-quality .items.powder .lists li.img-list .images .name {
  text-align: left;
  font-size: 12px;
  margin: 5px 0 0;
  line-height: 1.4;
}

#life-quality .items.powder .lists li.img-list .images .name .mini {
  font-size: 10px;
}

#life-quality .items.powder .lists li.img-list .images:nth-child(3) {
  margin-right: auto;
}

#life-quality .items.powder .lists li.img-list .images:nth-child(6) {
  margin-right: auto;
}

#life-quality .items.powder .lists li:nth-child(3) {
  margin-right: auto;
}

#life-quality .items.powder .lists li:nth-child(8) {
  margin-right: auto;
}

#life-quality .items.powder .lists li:nth-child(11) {
  margin-right: auto;
}

#life-quality .items.powder .lists li:nth-child(6) {
  margin-right: 3%;
}

#life-quality .items.powder .lists li:nth-child(9) {
  margin-right: 3%;
}

#life-quality .items.bath .lists li.img-list {
  text-align: center;
  width: 65%;
  margin-right: auto;
  border: 1px solid #46484D;
  padding: 10px;
  box-sizing: border-box;
}

#life-quality .items.bath .lists li.img-list .images {
  display: inline-block;
  margin-bottom: 5px;
  width: 28%;
  margin-right: 2%;
}

#life-quality .items.bath .lists li.img-list .images .name {
  text-align: left;
  font-size: 12px;
  margin: 10px 0 0;
  line-height: 1.4;
}

#life-quality .items.bath .lists li.img-list .images:nth-child(3) {
  margin-right: auto;
}

#life-quality .items.bath .lists li.img-list .images:nth-child(6) {
  margin-right: auto;
}

#life-quality .items.bath .lists li:nth-child(3n) {
  margin-right: auto;
}

#life-quality .bg01 {
  background: #fff;
  padding-top: 100px;
}

#life-quality .safety .txt {
  font-size: 30px;
  line-height: 1.6;
  margin-bottom: 50px;
}

#life-quality .safety .lead {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 50px;
}

#life-quality .safety .img01 {
  margin-bottom: 50px;
}

#life-quality .safety .column02 li {
  width: 100%;
  margin: auto;
}

#life-quality .safety .column02 li:last-child {
  width: 100%;
  margin: 0 auto 50px;
}

#life-quality .bg02 {
  background: #EFF1F4;
  padding: 100px 0 0;
}

#life-quality .bg03 {
  background: #fff;
  padding: 100px 0 0;
}

#life-quality .bg04 {
  background: #E4DFE1;
  padding: 100px 0 0;
}

#life-quality .structure .column02 li {
  width: 65%;
}

#life-quality .structure .column02 li:last-child {
  width: 31%;
  margin: 0 auto 50px;
}

#life-quality .btn {
  max-width: 300px;
  margin: 0 auto;
  padding-bottom: 100px;
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.2));
}

#life-quality .btn a {
  display: block;
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  padding: 5px 15px;
  background: #fff;
  color: #454D67;
  border-radius: 5px;
}

@media screen and (max-width: 1024px) {
  #life-quality .tab-btn li {
    display: inline-block;
    width: 30%;
    margin-bottom: 10px;
  }
  #life-quality .tab-btn li:nth-child(3n) {
    margin-right: auto;
  }
  #life-quality .tab-btn li:nth-child(3) {
    width: 30%;
  }
}

/*----------------
modelroom
----------------*/
#modelroom .commonTitle01 {
  padding-bottom: 80rem;
  text-align: center;
  line-height: 1.7;
  font-size: 26px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}

#modelroom section.intro .inSec01 {
  text-align: center;
}

#modelroom section.intro .inSec01 .title {
  font-size: 18px;
  color: #76A479;
  margin-bottom: 20px;
}

#modelroom section.intro .inSec01 .lead {
  font-size: 18px;
  line-height: 2.6;
  padding-bottom: 80rem;
}

#modelroom .sec01 .inner {
  max-width: 1200rem;
  width: 100%;
  margin: auto;
}

#modelroom .sec01 .img02 {
  max-width: 800px;
  width: 67%;
  margin: 0 0 180px;
  padding: 150px 0 0;
}

#modelroom .sec01 .img03 {
  max-width: 1200px;
  width: 84%;
  margin: 0;
  position: relative;
  z-index: 2;
}

#modelroom .sec02 {
  padding-bottom: 180px;
}

#modelroom .sec02 .list {
  padding-top: 180px;
  width: 84%;
  margin: 0 0 0 auto;
}

#modelroom .sec02 .list li {
  float: left;
  width: 40%;
  margin-right: 8%;
}

#modelroom .sec02 .list li:last-child {
  float: right;
  width: 52%;
  margin-right: auto;
}

#modelroom .sec02 .list .txt01 {
  font-size: 18px;
  color: #76A479;
  margin-bottom: 20px;
}

#modelroom .sec02 .list .txt02 {
  font-size: 26px;
  line-height: 1.8;
  margin-bottom: 80px;
}

#modelroom .sec02 .list .txt03 {
  font-size: 14px;
  line-height: 2;
}

#modelroom .sec03 {
  padding-bottom: 180px;
}

#modelroom .sec03 .img05 {
  max-width: 1200px;
  width: 84%;
  margin: 0 0 100px auto;
}

#modelroom .sec03 .list {
  width: 84%;
  margin: 0 auto 0 0;
}

#modelroom .sec03 .list li {
  float: right;
  width: 37%;
  margin-left: 8%;
}

#modelroom .sec03 .list li:last-child {
  float: left;
  width: 52%;
  margin-left: auto;
}

#modelroom .sec03 .list .txt01 {
  font-size: 18px;
  color: #76A479;
  margin-bottom: 20px;
}

#modelroom .sec03 .list .txt02 {
  font-size: 26px;
  line-height: 1.8;
  margin-bottom: 80px;
}

#modelroom .sec03 .list .txt03 {
  font-size: 14px;
  line-height: 2;
}

#modelroom .sec05 {
  padding-bottom: 180px;
}

#modelroom .sec05 .inner {
  max-width: 1200rem;
  width: 100%;
  margin: auto;
}

#modelroom .sec05 .img02 {
  max-width: 800px;
  width: 50%;
  margin: 0 0 180px;
  padding: 150px 0 0;
}

#modelroom .sec05 .img03 {
  max-width: 1200px;
  width: 84%;
  margin: 0;
  padding: 150px 0 0;
  position: relative;
  z-index: 2;
}

/*----------------
oneldk
----------------*/
#oneldk main {
  padding-bottom: 0;
}

#oneldk .page-header {
  background: #fff;
}

#oneldk .intro {
  text-align: center;
  background: #fff;
}

#oneldk .intro .tit {
  font-size: 32px;
  line-height: 1.6;
  font-weight: normal;
  margin-bottom: 16px;
}

#oneldk .intro .img00 {
  max-width: 230px;
  margin: 0 auto 30px;
}

#oneldk .intro .lead {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 120px;
}

#oneldk .sec01 {
  background: #fff;
  padding-bottom: 120px;
}

#oneldk .sec01 .card {
  width: 100%;
  margin: 0 auto 16px;
  background: #FDF4EA;
}

#oneldk .sec01 .card .lists {
  width: 85%;
  margin: 0 0 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#oneldk .sec01 .card li {
  width: 12%;
  margin-right: 3%;
}

#oneldk .sec01 .card li:nth-child(2) {
  width: 32%;
  margin-right: 4%;
}

#oneldk .sec01 .card li:last-child {
  width: 52%;
  margin: auto;
}

#oneldk .sec01 .card .point {
  max-width: 140px;
  margin-bottom: 16px;
}

#oneldk .sec01 .card .txt {
  font-size: 22px;
  line-height: 1.5;
  margin-bottom: 16px;
}

#oneldk .sec01 .card .lead {
  font-size: 16px;
  line-height: 1.5;
}

#oneldk .sec01 .card01 li {
  width: 10%;
  margin-right: 4%;
}

#oneldk .sec01 .card03 {
  margin: auto;
}

#oneldk .sec02 {
  text-align: center;
  background: url(../images/oneldk/bg.jpg);
  background-size: cover;
  padding: 0 0 120px;
}

#oneldk .sec02 .img00 {
  margin-bottom: 120px;
}

#oneldk .sec02 .ribbon {
  max-width: 570px;
  margin: 0 auto 20px;
}

#oneldk .sec02 .txt01 {
  font-size: 24px;
  line-height: 1.8;
  margin-bottom: 40px;
}

#oneldk .sec02 .txt02 {
  font-size: 16px;
  line-height: 2;
}

#oneldk .sec02 .img01 {
  margin: 0 auto 100px;
}

#oneldk .sec02 .txt03 {
  font-size: 24px;
  line-height: 1.8;
  margin-bottom: 40px;
}

#oneldk .sec02 .type {
  font-size: 24px;
  margin-bottom: 15px;
}

#oneldk .sec02 .type span {
  font-size: 40px;
}

#oneldk .sec02 .spec {
  font-size: 32px;
  margin-bottom: 15px;
}

#oneldk .sec02 .width {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 40px;
}

#oneldk .sec02 .width .big {
  font-size: 32px;
}

#oneldk .sec02 .width .mini {
  font-size: 11px;
}

#oneldk .sec02 .width .num {
  font-size: 16px;
}

#oneldk .sec02 .tab-inner {
  display: none;
}

#oneldk .sec02 .tab-inner.current {
  display: block;
}

#oneldk .sec02 .change-buttons {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 60px;
}

#oneldk .sec02 .change-buttons li {
  text-align: center;
  display: inline-block;
  width: 47%;
  margin-right: 4%;
}

#oneldk .sec02 .change-buttons li:last-child {
  margin-right: 0;
}

#oneldk .sec02 .change-buttons .button {
  display: block;
  color: #fff;
  font-size: 14px;
  letter-spacing: .2em;
  background: #5F696F;
  opacity: .5;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
  border-radius: 5px;
}

#oneldk .sec02 .change-buttons .button.current {
  pointer-events: none;
  color: #fff;
  opacity: 1;
}

#oneldk .sec02 .change-buttons .button span {
  display: inline-block;
  padding: 16px 0;
}

#oneldk .sec02 .change-buttons .button:hover {
  opacity: 1;
  color: #fff;
  transition: .3s;
}

#oneldk .sec02 .list {
  margin-bottom: 100px;
}

#oneldk .sec02 .list li {
  display: inline-block;
  vertical-align: top;
  width: 20%;
}

#oneldk .sec02 .list li:nth-child(2) {
  width: 40%;
  margin: 0 8%;
}

#oneldk .sec02 .price {
  max-width: 970px;
  margin: auto;
}

#oneldk .sec02 .repayment {
  max-width: 500px;
  margin: 0 auto 50px;
  text-align: center;
}

#oneldk .sec02 .repayment .tit {
  background: #57BEC1;
  color: #fff;
  font-size: 20px;
  padding: 10px 0;
  margin-bottom: 20px;
}

#oneldk .sec02 .repayment .tit span {
  font-size: 24px;
}

#oneldk .sec02 .repayment .type {
  font-size: 32px;
  margin-bottom: 10px;
}

#oneldk .sec02 .repayment .type .garamond {
  font-size: 40px;
}

#oneldk .sec02 .repayment .type .mini {
  font-size: 16px;
}

#oneldk .sec02 .repayment .price {
  font-size: 32px;
  margin-bottom: 20px;
}

#oneldk .sec02 .repayment .price .garamond {
  font-size: 40px;
}

#oneldk .sec02 .repayment .caps {
  font-size: 11px;
  text-align: left;
  line-height: 1.8;
  margin: 0 auto 30px;
  padding: 0 20px;
}

#oneldk .sec03 {
  text-align: center;
  background: #fff;
  padding: 120px 0 60px;
}

#oneldk .sec03 .tit {
  font-size: 40px;
  margin-bottom: 60px;
}

#oneldk .sec03 .txt {
  font-size: 24px;
  margin-bottom: 30px;
}

#oneldk .sec03 .lead {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 60px;
}

#oneldk .sec03 .img01 {
  max-width: 1000px;
  margin: 0 auto 80px;
}

#oneldk .sec03 .list {
  max-width: 900px;
  margin: auto;
}

#oneldk .sec03 .list li {
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-right: 3%;
  margin-bottom: 60px;
}

#oneldk .sec03 .list li:nth-child(3n) {
  margin-right: auto;
}

#oneldk .sec03 .list .name {
  text-align: left;
  font-size: 16px;
  line-height: 1.5;
  margin: 10px auto 20px;
}

#oneldk .sec03 .list .info {
  text-align: left;
  font-size: 13px;
  line-height: 1.8;
}

#oneldk .sec03 .caption.nobg {
  background: none;
  color: #000000;
}

@media screen and (max-width: 768px) {
  .lower .site-header {
    position: fixed;
  }
  .lower .page-header {
    padding: 0 0 50rem;
  }
  .lower .page-header .page-title {
    padding-top: 48rem;
    padding-bottom: 12rem;
    font-size: 40rem;
  }
  .lower .page-header .ja {
    font-size: 14rem;
  }
  .lower .intro {
    padding-bottom: 75rem;
  }
  .lower .intro .title {
    font-size: 20rem;
    line-height: 1.5;
    padding-bottom: 38rem;
    letter-spacing: 0;
  }
  .lower .caption.noBg {
    color: #000;
    background: none;
  }
  .lower .swipeArea {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .lower .swipeArea::-webkit-scrollbar {
    display: none;
  }
  .lower .swipeArea:after {
    content: '';
    display: block;
    position: sticky;
    right: 0;
    bottom: 0;
    left: 0;
    margin-top: 15rem;
    height: 57rem;
    background: url(../images/common/icon_swipe.png) no-repeat center center;
    background-size: auto 100%;
  }
  .lower .swipeArea .caption {
    position: sticky;
    left: 0;
    padding: 0 3rem 0 0;
    text-align: right;
  }
  /*----------------
access
----------------*/
  #access .page-header .txt {
    font-size: 15rem;
    left: 49%;
  }
  #access .sections {
    padding: 50rem 0;
  }
  #access .sections .flex-box {
    display: block;
  }
  #access .sections .title {
    font-size: 24rem;
    padding-bottom: 20rem;
  }
  #access .sections .lead01 {
    font-size: 18rem;
    padding-bottom: 20rem;
  }
  #access .section01 .big-image {
    padding-bottom: 0;
  }
  #access .section01 .big-image .annotation {
    padding-top: 10rem;
  }
  #access .section01 .flex-box {
    display: block;
  }
  #access .section01 .flex-box li {
    display: inline-block;
    width: 48% !important;
  }
  #access .section01 .flex-box li:nth-child(2n) {
    margin-left: 2%;
  }
  #access .section01 .lists li {
    width: auto;
    padding-bottom: 20rem;
  }
  #access .section01 .stations {
    padding-bottom: 40rem;
  }
  #access .section01 .texts {
    display: block;
  }
  #access .section01 .texts li {
    width: auto;
    padding-bottom: 22rem;
  }
  #access .section01 .texts .text01 {
    font-size: 16rem;
    padding-bottom: 8rem;
  }
  #access .section01 .texts .text02 {
    font-size: 11rem;
    line-height: 1.6;
  }
  #access .section02 {
    padding-top: 0;
  }
  #access .section02 .section-image .txt {
    position: absolute;
    top: 50%;
    left: 58%;
    font-size: 15rem;
    line-height: 1.5;
  }
  #access .section02 .header {
    padding: 37rem 0 46rem;
  }
  #access .section02 .blocks {
    background-color: #fff;
    padding: 20rem 18rem;
  }
  #access .section02 .blocks .sub-title {
    padding: 12rem;
    font-size: 18rem;
    margin-bottom: 30rem;
  }
  #access .section02 .blocks .sub-lead {
    font-size: 13rem;
    text-align: left;
    padding-bottom: 30rem;
  }
  #access .section02 .blocks .sub-lead br {
    display: none;
  }
  #access .section02 .blocks .train01 {
    padding-bottom: 60rem;
  }
  #access .section02 .blocks .train01 .img00 {
    width: 80%;
    margin: auto;
  }
  #access .section02 .blocks .train01 .lists {
    padding-top: 30rem;
  }
  #access .section02 .blocks .train01 .lists li {
    width: auto;
    padding-bottom: 20rem;
  }
  #access .section02 .blocks .train02 .img03 {
    width: 80%;
    margin: auto;
  }
  #access .section02 .train {
    margin-bottom: 60rem;
  }
  #access .section03 {
    background-color: #fff;
  }
  #access .section03 .header {
    text-align: center;
    padding-bottom: 40rem;
  }
  #access .section03 .body .image {
    width: auto;
    margin-bottom: 30rem;
  }
  #access .section03 .annotation {
    padding-top: 20rem;
  }
  /*----------------
asset
----------------*/
  #asset .intro .title {
    font-size: 20rem;
    padding-bottom: 33rem;
  }
  #asset .intro .text {
    font-size: 13rem;
  }
  #asset .sections {
    padding: 70rem 0;
  }
  #asset .sections .flex-box {
    display: block;
  }
  #asset .sections .title {
    padding-bottom: 47rem;
  }
  #asset .sections .title .en {
    font-size: 10rem;
  }
  #asset .sections .title .num {
    font-size: 30rem;
    padding-bottom: 2rem;
  }
  #asset .sections .lead01 {
    font-size: 17rem;
    line-height: 1.5;
    padding-bottom: 20rem;
  }
  #asset .sections .lead02 {
    text-align: left;
    padding-bottom: 45rem;
  }
  #asset .sections .lead02 br {
    display: none;
  }
  #asset .sections .name {
    font-size: 14rem;
    padding-bottom: 15rem;
  }
  #asset .sections .name {
    font-size: 14rem;
  }
  #asset .sections .annotation {
    padding-top: 40rem;
    font-size: 11rem;
  }
  #asset .sections .section-annotation {
    text-align: left;
  }
  #asset .section02 .image01 {
    margin-bottom: 20rem;
  }
  #asset .section02 .image01 .swipe-img img {
    width: 700px !important;
  }
  #asset .section02 .name-box {
    padding: 20rem 0 15rem;
    font-size: 16rem;
  }
  #asset .section02 .name-box span {
    padding: 0 8rem;
  }
  #asset .section02 .point {
    font-size: 16rem;
    padding-bottom: 20rem;
  }
  #asset .section02 .text {
    font-size: 13rem;
    line-height: 1.8;
  }
  #asset .section02 .flex-box li {
    width: auto;
    padding-bottom: 30rem;
    margin: 0 1% 0rem;
  }
  #asset .section03 .texts {
    padding-bottom: 40rem;
  }
  #asset .section03 .texts .text01 {
    font-size: 15rem;
    line-height: 1.5;
    padding-bottom: 30rem;
  }
  #asset .section03 .texts .text02 {
    font-size: 13rem;
  }
  #asset .section03 .boxes {
    width: auto;
    padding-bottom: 30rem;
  }
  #asset .section03 .boxes .image {
    width: 75%;
    margin: auto;
  }
  #asset .section03 .boxes.box02 {
    width: 100%;
  }
  #asset .section04 .boxes {
    width: auto;
    padding-bottom: 30rem;
  }
  #asset .section04 .text01 {
    font-size: 15rem;
    line-height: 1.5;
    padding-bottom: 18rem;
  }
  #asset .section04 .text02 {
    font-size: 13rem;
    line-height: 1.5;
    padding-bottom: 28rem;
  }
  #asset .section04 .text02.bottom {
    padding-bottom: 28rem;
  }
  #asset .section04 .img10 {
    width: 90%;
    margin: auto;
  }
  /*----------------
design
----------------*/
  #design .intro .title {
    font-size: 20rem;
    padding-bottom: 33rem;
  }
  #design .intro .text {
    font-size: 13rem;
  }
  #design .design-image {
    position: relative;
  }
  #design .design-image .text {
    font-size: 13rem;
    top: 50%;
    left: 50%;
  }
  #design .sections {
    padding: 70rem 0 80rem;
  }
  #design .sections .header {
    padding-bottom: 30rem;
  }
  #design .sections .title {
    font-size: 22rem;
    padding-bottom: 20rem;
  }
  #design .sections .lead01 {
    font-size: 17rem;
    padding-bottom: 22rem;
  }
  #design .sections .lead02 {
    font-size: 13rem;
  }
  #design .sections .flex-box {
    display: block;
  }
  #design .section01 .body {
    max-width: inherit;
  }
  #design .section01 .images {
    width: auto;
  }
  #design .section01 .texts {
    padding-top: 20rem;
    width: auto;
  }
  #design .section01 .text01 {
    font-size: 17rem;
    line-height: 1.6;
    padding-bottom: 18rem;
  }
  #design .section02 {
    background-color: #fff;
  }
  #design .section02 .logo {
    margin: 0 auto;
    max-width: 235rem;
    padding-bottom: 30rem;
  }
  #design .section02 .designer {
    width: auto;
  }
  #design .section02 .designer .img {
    max-width: 360px;
    width: 80%;
    margin: 0 auto 20rem;
  }
  #design .section02 .designer .txts {
    width: auto;
    padding-bottom: 30rem;
  }
  #design .section02 .designer .txts .company {
    padding-bottom: 10rem;
  }
  #design .section02 .designer .txts .name01 {
    padding-bottom: 5rem;
  }
  #design .section02 .designer .txts .name02 {
    padding-bottom: 10rem;
  }
  #design .section02 .designer .txts .txt {
    font-size: 11rem;
    line-height: 1.8;
  }
  #design .section02 .lists {
    width: auto;
    display: flex;
    align-items: start;
  }
  #design .section02 .lists li {
    width: 49%;
  }
  #design .section03 .lists {
    width: auto;
    padding-bottom: 30rem;
  }
  #design .section03 .text {
    font-size: 13rem;
    line-height: 1.9;
    padding-top: 10rem;
  }
  #design .section03 .spot {
    margin: 30px auto 0;
  }
  #design .section03 .spot .tit {
    margin-bottom: 10px;
  }
  #design .section03 .spot li {
    margin-bottom: 20px;
  }
  #design .section03 .spot li:first-child {
    padding-right: 0;
    margin-bottom: 10px;
  }
  #design .section03 .spot .txt02 {
    text-align: left;
  }
  #design .section04 .common li {
    width: 48%;
    margin-right: 3%;
  }
  #design .section04 .common li .text01 {
    font-size: 13rem;
    padding-top: 10rem;
  }
  #design .section04 .common li .text02 {
    font-size: 12rem;
    padding-top: 10rem;
  }
  #design .section04 .common02 .landplan {
    width: 80%;
    float: none;
    margin: auto;
  }
  #design .section04 .common02 li {
    display: inline-block;
    width: 48%;
    margin-right: 3%;
    margin-left: auto;
  }
  #design .section04 .common02 li:nth-child(3) {
    margin: auto;
  }
  #design .section04 .common02 .text01 {
    font-size: 13rem;
    padding-top: 10rem;
  }
  #design .section04 .common02 .text02 {
    font-size: 12rem;
    padding-top: 10rem;
  }
  /*----------------
merit
----------------*/
  #merit .merits {
    margin-bottom: 50rem;
  }
  #merit .merits .header {
    display: block;
  }
  #merit .merits .header .title {
    width: 100%;
  }
  #merit .merits .header .lead {
    padding: 25rem 20rem;
    font-size: 20rem;
  }
  #merit .merits .body {
    padding: 20rem 20rem 30rem;
  }
  #merit .merits .flex-box {
    display: block;
  }
  #merit .merits .flex-box > .images {
    width: auto;
    margin-bottom: 20rem;
  }
  #merit .merits .flex-box > .text {
    width: auto;
  }
  #merit .merit01 li {
    width: auto;
  }
  #merit .merit01 li + li {
    padding-top: 30rem;
  }
  #merit .merit01 .name {
    padding-bottom: 15rem;
    padding-top: 15rem;
  }
  #merit .merit01 .text {
    font-size: 11rem;
    line-height: 1.85;
  }
  /*----------------
map
----------------*/
  #map .page-header {
    padding: 0 0 115rem;
    margin-bottom: 40rem;
  }
  #map .page-header .page-title {
    padding-top: 115rem;
  }
  #map .maps {
    max-width: inherit;
    width: 90%;
    padding-bottom: 60rem;
  }
  #map .maps .tit {
    margin-bottom: 20rem;
  }
  #map .maps .walk {
    padding-top: 0;
  }
  #map .maps .links .icon {
    display: block;
    padding-bottom: 2rem;
  }
  #map .maps .links li:last-child {
    display: none;
  }
  #map .maps .links .text {
    font-size: 13rem;
    text-decoration: underline;
  }
  #map .maps .links .text .none {
    display: none;
  }
  #map .guides {
    text-align: center;
    margin-bottom: 60px;
  }
  #map .guides .movies {
    display: block;
    width: 90%;
    margin: 0 auto 20px;
  }
  #map .guides .guide-movie {
    margin-bottom: 0;
  }
  #map .guides .guide-movie .modal-wrapper .modal-close, #map .guides .guide-movie .modal-wrapper .modal-close02 {
    right: -10px;
  }
  #map .salon {
    width: 90%;
    margin: 0 auto 100rem;
  }
  #map .salon .title {
    letter-spacing: .05em;
    padding-bottom: 30rem;
  }
  #map .salon .inner {
    display: block;
  }
  #map .salon .inner .img {
    width: auto;
    margin-bottom: 35rem;
  }
  #map .salon .inner .texts {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  #map .salon .inner .sub-title {
    font-size: 18rem;
    padding-bottom: 16rem;
  }
  #map .salon .inner .address {
    font-size: 14rem;
    line-height: 1.9;
  }
  #map .salon .inner .sub-section {
    padding-bottom: 33rem;
  }
  #map .salon .inner dl {
    font-size: 14rem;
  }
  #map .salon .inner dl + dl {
    padding-top: 16rem;
  }
  #map .salon .inner dt {
    padding-bottom: 4rem;
  }
  #map .salon .inner dd {
    display: flex;
    justify-content: space-between;
    font-size: 14rem;
    line-height: 1.9;
    padding: 5rem 0;
  }
  #map .salon .inner .links {
    margin: 0 0 50rem;
  }
  #map .salon .inner .links li {
    text-align: center;
  }
  /*----------------
brand
----------------*/
  #brand .page-header {
    padding: 0 0 115rem;
    margin-bottom: 40rem;
  }
  #brand .page-header .page-title {
    padding-top: 115rem;
  }
  #brand .intro {
    margin-bottom: 80px;
  }
  #brand .intro .sub {
    margin-bottom: 50px;
  }
  #brand .intro .image {
    max-width: 203px;
    margin: 0 auto 50px;
  }
  #brand .intro .txt01 {
    font-size: 34px;
    margin-bottom: 50px;
  }
  #brand .intro .txt02 {
    font-size: 22px;
  }
  #brand .slick-slider {
    margin-bottom: 80px;
  }
  #brand .promise {
    margin-bottom: 80px;
  }
  #brand .promise .tit {
    font-size: 22px;
  }
  #brand .promise .sub {
    margin-bottom: 50px;
  }
  #brand .promise .lists {
    padding-top: 30px;
  }
  #brand .promise .lists li {
    display: block;
    width: 86%;
    margin: 0 auto 30px;
  }
  #brand .promise .lists li:last-child {
    width: 100%;
  }
  #brand .promise .lists .txt01 {
    font-size: 22px;
  }
  #brand .promise .lists .txt02 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  #brand .promise .lists .lead {
    width: 100%;
    margin: auto;
    font-size: 14px;
    line-height: 1.8;
  }
  #brand .promise .list04 {
    margin-bottom: auto;
  }
  #brand .salon {
    margin-bottom: 100px;
  }
  #brand .salon .tit {
    font-size: 22px;
  }
  #brand .salon .lead {
    text-align: left;
    font-size: 16px;
    line-height: 1.8;
    margin: 50px auto;
  }
  #brand .cafe .tit {
    font-size: 22px;
    margin-bottom: 50px;
  }
  #brand .cafe .lead {
    text-align: left;
    font-size: 16px;
    line-height: 1.8;
    margin: 0 auto 50px;
  }
  #brand .cafe .img02 {
    margin: 50px auto 0;
  }
  #brand .achievement {
    padding: 60px 0;
    margin-bottom: 100px;
  }
  #brand .achievement li {
    display: block;
    width: 100%;
  }
  #brand .achievement li:last-child {
    margin-top: 20px;
  }
  #brand .ginza {
    padding-bottom: 60px;
  }
  #brand .ginza .logo {
    max-width: 280px;
    margin: 0 auto 50px;
  }
  #brand .ginza li {
    display: block;
    width: 100%;
  }
  #brand .ginza li:last-child {
    width: 90%;
    margin: 50px auto 0;
  }
  #brand .ginza .img04 {
    margin: 50px 0 30px 3%;
  }
  #brand .ginza .sns {
    max-width: 74px;
    margin: 50px auto 0;
  }
  /*----------------
lgente
----------------*/
  #lgente .intro .image {
    width: 90%;
    margin: 40px auto 0;
  }
  #lgente .images li {
    float: left;
    width: 100%;
  }
  #lgente .images li:nth-child(2) {
    width: 50%;
  }
  #lgente .images li:last-child {
    width: 50%;
  }
  #lgente .sections {
    text-align: center;
    padding: 50px 0;
  }
  #lgente .sections h3 {
    margin-bottom: 30px;
  }
  #lgente .sections h3 span {
    font-size: 30px;
  }
  #lgente .sections .tit {
    width: 90%;
    margin: auto;
    text-align: left;
  }
  #lgente .sections .texts {
    width: 90%;
    margin: auto;
  }
  #lgente .sections .texts li {
    text-align: left;
    display: block;
    width: 100%;
    margin-bottom: 30px;
  }
  #lgente .sections .texts li:last-child {
    width: 100%;
    margin: auto;
  }
  #lgente .sections .texts .icon, #lgente .sections .texts .info {
    text-align: left;
    display: inline-block;
    vertical-align: middle;
  }
  #lgente .sections .texts .txt {
    font-size: 15rem;
    line-height: 1.6;
    letter-spacing: .05em;
  }
  #lgente .kitchen .image {
    margin: 0 auto 40px;
  }
  #lgente .dresser .image {
    margin: 0 auto 40px;
  }
  /*----------------
position
----------------*/
  #position .intro .image {
    margin: 60px auto 0;
  }
  #position .sections .tit {
    text-align: left;
  }
  #position .sections .lead {
    text-align: left;
  }
  #position .fujisawa {
    margin-bottom: 60px;
  }
  #position .fujisawa .img01 {
    margin: 30px auto 0;
  }
  #position .fujisawa .list01 {
    text-align: left;
    width: 94%;
    margin: 0 auto 50px;
  }
  #position .fujisawa .list01 li {
    display: inline-block;
    width: 48%;
    margin-right: 2%;
    margin-bottom: 20px;
  }
  #position .fujisawa .list01 li:nth-child(2),
  #position .fujisawa .list01 li:last-child {
    margin-right: auto;
  }
  #position .fujisawa .list01 .name {
    font-size: 14px;
  }
  #position .fujisawa .white-bg {
    padding: 50px 0;
  }
  #position .fujisawa .white-bg .inner {
    width: 90%;
    margin: auto;
  }
  #position .fujisawa .white-bg .tit {
    margin-bottom: 10px;
  }
  #position .fujisawa .white-bg .list02 {
    margin: 30px auto 10px;
  }
  #position .fujisawa .white-bg .list02 li {
    display: block;
    width: 100%;
    margin-bottom: 50px;
  }
  #position .fujisawa .white-bg .list02 li:last-child {
    margin: auto;
  }
  #position .fujisawa .white-bg .list02 .caption {
    bottom: -36px;
    line-height: 1.3;
    background: none;
    color: #5D6970;
  }
  #position .sec01 {
    padding: 50px 0;
  }
  #position .sec01 .img01 {
    margin: 30px auto;
  }
  #position .sec01 .list {
    width: 94%;
    margin: auto;
  }
  #position .sec01 .list li {
    display: block;
    width: 100%;
    margin-bottom: 30px;
  }
  #position .sec01 .list li:last-child {
    width: 100%;
    margin: auto;
  }
  #position .sec01 .list .caps {
    margin-top: 10px;
  }
  #position .sec02 {
    padding: 50px 0;
  }
  #position .sec02 .lead {
    margin-bottom: 40px;
  }
  #position .sec02 .all_box {
    display: block;
  }
  #position .sec02 .right_side {
    width: 100vw;
  }
  #position .sec02 .right_side div {
    width: 98%;
    margin: auto;
  }
  #position .sec02 .left_side {
    width: 100vw;
    height: 0;
    display: block;
    align-items: center;
    position: relative;
    top: 0;
  }
  #position .sec02 .left_side p {
    height: 100vh;
    margin: auto;
    display: block;
    visibility: hidden;
    position: absolute;
    top: 0;
    transition: .8s;
    opacity: 0;
  }
  #position .sec02 .click-btn {
    padding-top: 71%;
  }
  #position .sec03 {
    padding: 0 0 60px;
  }
  #position .sec03 .lists {
    max-width: 800px;
    margin: auto;
  }
  #position .sec03 .lists li {
    display: block;
    width: 94%;
    margin: auto;
  }
  #position .sec03 .lists li:last-child {
    width: 94%;
    margin: auto;
  }
  #position .sec03 .lists .txt01 {
    font-size: 20px;
    line-height: 1.8;
    margin: 20px 0;
  }
  #position .sec03 .lists .txt02 {
    font-size: 13px;
    line-height: 2;
  }
  #position .sec03 .list02 {
    margin-top: 60px;
  }
  #position .sec03 .list02 li {
    width: 94%;
  }
  #position .sec03 .list02 li .image {
    width: 60%;
    margin: auto;
  }
  #position .sec03 .list02 li:last-child {
    width: 94%;
    margin-right: auto;
  }
  /*----------------
location
----------------*/
  #location .intro .image {
    margin: 40px auto 0;
  }
  #location .sections .tit {
    text-align: left;
  }
  #location .sections .lead {
    text-align: left;
  }
  #location .sections .img00 {
    margin-bottom: 50px;
  }
  #location .shoping .lead {
    margin-bottom: 30px;
  }
  #location .shoping .lists {
    width: 94%;
  }
  #location .shoping .lists .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .shoping .list01 {
    margin-bottom: 50px;
  }
  #location .shoping .list01 li {
    display: block;
    width: 100%;
    margin: auto;
  }
  #location .shoping .list01 li:last-child {
    margin: auto;
  }
  #location .shoping .list01 .info {
    margin: 20px auto 30px;
  }
  #location .shoping .list02 {
    margin-bottom: 50px;
  }
  #location .shoping .list02 li {
    display: inline-block;
    vertical-align: top;
    width: 48%;
    margin-right: 2%;
    margin-bottom: 30px;
  }
  #location .shoping .list02 li:nth-child(3n) {
    margin-right: 2%;
  }
  #location .shoping .list02 li:nth-child(2n),
  #location .shoping .list02 li:last-child {
    margin-right: auto;
  }
  #location .gourmet {
    padding-bottom: 50px;
  }
  #location .gourmet .lists {
    text-align: left;
  }
  #location .gourmet .lists .name {
    font-size: 20px;
    margin-bottom: 20px;
  }
  #location .gourmet .lists .name span {
    font-size: 11px;
  }
  #location .gourmet .lists .info {
    font-size: 13px;
    line-height: 2;
  }
  #location .gourmet .list01 {
    width: 100%;
    margin: 40px 0;
  }
  #location .gourmet .list01 li {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }
  #location .gourmet .list01 li:last-child {
    width: 94%;
    margin: auto;
  }
  #location .gourmet .list01 .images {
    margin-top: 20px;
  }
  #location .gourmet .img04 {
    margin: 0 auto 40px;
  }
  #location .gourmet .list02 {
    text-align: center;
    width: 100%;
    margin: 0 auto 60px;
  }
  #location .gourmet .list02 li {
    display: inline-block;
    vertical-align: top;
    width: 94%;
    margin-bottom: 20px;
  }
  #location .gourmet .list02 li:nth-child(2) {
    width: 45%;
  }
  #location .gourmet .list02 li:last-child {
    width: 45%;
    margin: auto;
  }
  #location .gourmet .images {
    margin: 0 auto 60px;
  }
  #location .gourmet .images .image {
    max-width: 1000px;
    margin: 0;
  }
  #location .gourmet .images .texts {
    position: inherit;
    width: 94%;
    margin: 20px auto;
    right: auto;
  }
  #location .gourmet .images .texts .name {
    font-size: 20px;
    margin-bottom: 20px;
  }
  #location .gourmet .list03 {
    width: 94%;
    margin: auto;
  }
  #location .gourmet .list03 li {
    margin-bottom: 30px;
  }
  #location .gourmet .list03 .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .park {
    padding-bottom: 50px;
  }
  #location .park .lists {
    width: 94%;
    margin: auto;
  }
  #location .park .lists .name {
    font-size: 14px;
    margin: 10px 0 6px;
    line-height: 1.3;
  }
  #location .park .lists .name span {
    font-size: 11px;
  }
  #location .park .lists .min {
    font-size: 11px;
  }
  #location .park .list01 {
    margin: 40px auto 20px;
  }
  #location .park .list02 {
    text-align: left;
  }
  #location .park .list02 li {
    width: 48%;
    margin-right: 3%;
    margin-bottom: 30px;
  }
  #location .park .list02 li:nth-child(2),
  #location .park .list02 li:last-child {
    margin-right: auto;
  }
  #location .park .list02 .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .medical {
    padding: 60px 0;
  }
  #location .medical .list01 {
    text-align: left;
    width: 94%;
    margin: 40px auto 0;
  }
  #location .medical .list01 li {
    display: inline-block;
    width: 48%;
    margin-right: 3%;
    margin-bottom: 30px;
  }
  #location .medical .list01 li:nth-child(2),
  #location .medical .list01 li:last-child {
    margin-right: auto;
  }
  #location .medical .list01 .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .shonan {
    background: #fff;
  }
  #location .shonan .bg01 {
    background: #F2FFF2;
    padding-bottom: 25%;
  }
  #location .shonan .img01 {
    margin: 20px auto;
  }
  #location .shonan .img01 .no-bg {
    bottom: 35%;
  }
  #location .shonan .img01 .no-bg.left {
    bottom: -9%;
    text-align: left;
    left: 0;
    right: auto;
    line-height: 1.4;
  }
  #location .shonan .click-btn {
    margin-top: 15%;
  }
  #location .shonan .img02 {
    width: 88%;
    margin: -22% 0 60px;
  }
  #location .shonan .enoshima {
    background: #FFF0F0;
    padding-bottom: 50px;
  }
  #location .shonan .enoshima .images {
    position: relative;
    width: 100%;
    margin: 0 auto 50px;
  }
  #location .shonan .enoshima .images .image {
    width: 100%;
    margin: 0 0 0 auto;
  }
  #location .shonan .enoshima .images .texts {
    text-align: left;
    position: inherit;
    width: 94%;
    left: auto;
    margin: auto;
    padding-top: 20px;
  }
  #location .shonan .enoshima .lists {
    width: 94%;
    margin: auto;
  }
  #location .shonan .enoshima .lists li {
    vertical-align: top;
    display: inline-block;
    width: 100%;
    margin-bottom: 30px;
  }
  #location .shonan .enoshima .lists li:last-child {
    width: 100%;
    margin: auto;
  }
  #location .shonan .enoshima .list02 {
    text-align: left;
    margin: 50px auto 0;
  }
  #location .shonan .enoshima .list02 li {
    display: inline-block;
    width: 48%;
    margin-right: 3%;
  }
  #location .shonan .enoshima .list02 li:nth-child(2n),
  #location .shonan .enoshima .list02 li:last-child {
    width: 48%;
    margin-right: auto;
  }
  #location .shonan .enoshima .list02 .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .shonan .kamakura {
    margin: 0 auto 20px;
  }
  #location .shonan .kamakura .images {
    position: relative;
    width: 100%;
    margin: 0 0 50px;
  }
  #location .shonan .kamakura .images .image {
    width: 100%;
    margin: 0;
  }
  #location .shonan .kamakura .images .image .caption {
    left: auto;
    right: 0;
  }
  #location .shonan .kamakura .images .texts {
    text-align: left;
    position: inherit;
    width: 94%;
    bottom: 0;
    right: 0;
    margin: auto;
    padding: 30px 0 0;
    box-sizing: border-box;
  }
  #location .shonan .kamakura .list {
    text-align: left;
    width: 94%;
    margin: 50px auto 0;
  }
  #location .shonan .kamakura .list li {
    width: 48%;
    margin-right: 3%;
    margin-bottom: 30px;
  }
  #location .shonan .kamakura .list li:nth-child(2n),
  #location .shonan .kamakura .list li:last-child {
    margin-right: auto;
  }
  #location .shonan .kamakura .list .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .shonan .tsujido {
    background: #EBF8FF;
    padding-bottom: 10px;
  }
  #location .shonan .tsujido .images {
    position: relative;
    width: 100%;
    margin: 0 auto 50px;
  }
  #location .shonan .tsujido .images .image {
    width: 100%;
    margin: 0 0 0 auto;
  }
  #location .shonan .tsujido .images .texts {
    position: inherit;
    width: 94%;
    bottom: 0;
    left: auto;
    margin: auto;
    padding-top: 20px;
  }
  #location .shonan .tsujido .list {
    text-align: left;
    width: 94%;
    margin: 50px auto 0;
  }
  #location .shonan .tsujido .list li {
    width: 48%;
    margin-right: 3%;
    margin-bottom: 30px;
  }
  #location .shonan .tsujido .list li:nth-child(2),
  #location .shonan .tsujido .list li:last-child {
    margin-right: auto;
  }
  #location .shonan .tsujido .list .name {
    font-size: 14px;
    line-height: 1.3;
  }
  #location .life-info {
    padding: 50px 0;
  }
  #location .life-info .tit {
    font-size: 24px;
  }
  #location .life-info .title {
    display: block;
  }
  #location .life-info .title .logo, #location .life-info .title .note {
    width: 100%;
    float: none;
    text-align: center;
    margin-top: 0;
    margin-bottom: 20px;
  }
  #location .life-info .title .logo {
    margin-bottom: 0;
  }
  #location .life-info .tabs {
    padding: 0;
    z-index: 1;
  }
  #location .life-info .tabs li {
    display: inline-block;
    width: 50%;
    margin-bottom: 2px;
  }
  /*----------------
plan
----------------*/
  #plan .sections .tit {
    text-align: left;
  }
  #plan .sections .lead {
    text-align: left;
  }
  #plan .floor {
    margin-bottom: 50px;
  }
  #plan .floor .img01 {
    width: 84%;
    margin: 50px auto;
  }
  #plan .floor .img01 .caption {
    background: none;
    color: #46484D;
    bottom: -20px;
  }
  #plan .floor .list {
    width: 94%;
    margin: auto;
  }
  #plan .floor .list li {
    display: block;
    width: 100%;
    margin-bottom: 30px;
  }
  #plan .floor .list li:last-child {
    margin: auto;
  }
  #plan .slides {
    margin: 0 auto 56%;
  }
  #plan .slides .thumbnails {
    position: absolute;
    top: 6px;
    right: 0;
  }
  #plan .slides .thumbnails li {
    width: 78px;
  }
  #plan .room {
    margin-bottom: 50px;
  }
  #plan .room .btns {
    width: 84%;
    margin: 50px auto 0;
    display: block;
  }
  #plan .room .btns li {
    flex: 0 0 100%;
    margin-bottom: 40px;
  }
  #plan .room .btns li .image .text {
    font-size: 14px;
    left: 50%;
    transform: translate(-50%, -40%);
  }
  #plan .equipment {
    padding: 50px 0;
  }
  #plan .equipment .list {
    width: 94%;
    margin: 50px auto 0;
  }
  #plan .equipment .list li {
    text-align: left;
    display: block;
    width: 100%;
    margin-bottom: 30px;
  }
  #plan .equipment .list li:last-child {
    margin: auto;
  }
  #plan .equipment .list.full {
    padding-bottom: 20px;
  }
  #plan .equipment .list.full li {
    width: 94%;
    margin: 0 auto 20px;
    vertical-align: text-top;
  }
  #plan .equipment .list.full li.function {
    width: 94%;
    margin: auto;
  }
  #plan .equipment .list.full li.function .item {
    display: inline-block;
    width: 48%;
    margin-bottom: auto;
    margin-right: 3%;
  }
  #plan .equipment .list.full li.function .item .image {
    max-width: none;
    margin-right: auto;
  }
  #plan .equipment .list.full li.function .item:last-child {
    margin-right: auto;
    vertical-align: top;
  }
  #plan .view {
    padding: 50px 0;
    margin-top: 50px;
  }
  #plan .view .swipe-img img {
    width: 800px !important;
  }
  #plan .fixed-bnr-sp {
    top: 55%;
    right: 0;
    width: 200px;
  }
  #plan .fixed-bnr-sp .close {
    right: 0;
    top: -25px;
    width: 25px;
  }
  /*----------------
plan.detail
----------------*/
  #plan.detail main {
    padding-bottom: 70rem;
  }
  #plan.detail .intro {
    padding-bottom: 20rem;
  }
  #plan.detail .intro .tap {
    width: 90%;
    margin: 20px auto 0;
  }
  #plan.detail .plans {
    max-width: 1200px;
    margin: auto;
  }
  #plan.detail .plans li {
    width: 100%;
    margin: auto;
  }
  #plan.detail .plans li:nth-child(2) {
    width: 90%;
  }
  #plan.detail .plans li:first-child,
  #plan.detail .plans li:last-child {
    display: none;
  }
  #plan.detail .plans .change-buttons {
    margin: 0 auto 30px;
  }
  #plan.detail .plans .change-buttons li:first-child,
  #plan.detail .plans .change-buttons li:last-child {
    display: inline-block;
    width: 48%;
  }
  #plan.detail .plans .icon a {
    pointer-events: inherit;
  }
  #plan.detail .plans .more-btn {
    max-width: 320rem;
    margin: 30rem auto 0;
  }
  #plan.detail .plans.atype .room-img {
    width: 80%;
    margin: auto;
  }
  #plan.detail .plans.btype .room-img {
    width: 80%;
    margin: auto;
  }
  #plan.detail .plans.ctype .room-img {
    width: 80%;
    margin: auto;
  }
  /*----------------
life-quality
----------------*/
  #life-quality .page-header {
    padding: 0 0 60rem;
  }
  #life-quality .tab-btn {
    margin: 0 auto 50px;
  }
  #life-quality .tab-btn li {
    width: 48%;
    margin-bottom: 10px;
  }
  #life-quality .tab-btn li:nth-child(2n) {
    margin-right: auto;
  }
  #life-quality .tab-btn li:nth-child(3) {
    width: 48%;
  }
  #life-quality .tab-btn li:nth-child(3n) {
    margin-right: 5px;
  }
  #life-quality .tab-btn li:last-child {
    margin-right: auto;
  }
  #life-quality .tab-btn a {
    font-size: 12px;
  }
  #life-quality .tab-btn a .txt {
    letter-spacing: 0;
  }
  #life-quality .items {
    padding-bottom: 80px;
  }
  #life-quality .items .sub-tit {
    font-size: 18px;
  }
  #life-quality .items .lists li {
    display: block;
    width: 100%;
    margin-right: auto;
    margin-bottom: 30px;
  }
  #life-quality .items .lists li.full {
    margin-bottom: 50px !important;
  }
  #life-quality .items .lists li .info {
    font-size: 12px;
  }
  #life-quality .items .lists li:last-child {
    margin-bottom: auto;
  }
  #life-quality .items.powder .lists li.img-list {
    width: 100%;
    padding: 20px;
  }
  #life-quality .items.powder .lists li.img-list .images {
    width: 48%;
    margin-right: 2%;
    vertical-align: text-top;
  }
  #life-quality .items.powder .lists li.img-list .images .name {
    text-align: left;
    font-size: 11px;
    margin: 10px 0 0;
    line-height: 1.4;
  }
  #life-quality .items.powder .lists li.img-list .images:nth-child(2n) {
    margin-right: auto;
  }
  #life-quality .items.powder .lists li.img-list .images:nth-child(3) {
    margin-right: 2%;
  }
  #life-quality .items.bath .lists li.img-list {
    width: 100%;
    padding: 20px;
  }
  #life-quality .items.bath .lists li.img-list .images {
    width: 48%;
    margin-right: 2%;
    vertical-align: text-top;
  }
  #life-quality .items.bath .lists li.img-list .images .name {
    text-align: left;
    font-size: 11px;
    margin: 10px 0 0;
    line-height: 1.4;
  }
  #life-quality .items.bath .lists li.img-list .images:nth-child(2n) {
    margin-right: auto;
  }
  #life-quality .items.bath .lists li.img-list .images:nth-child(3) {
    margin-right: 2%;
  }
  #life-quality .bg01 {
    padding: 30px 0 0;
  }
  #life-quality .safety .lists li {
    display: inline-block;
    width: 48%;
    margin-right: 2%;
  }
  #life-quality .safety .lists li:nth-child(2n) {
    margin-right: auto;
  }
  #life-quality .safety .txt {
    text-align: left;
    font-size: 24px;
    line-height: 1.6;
    margin-bottom: 30px;
  }
  #life-quality .safety .lead {
    text-align: left;
    font-size: 14px;
    line-height: 2;
    margin-bottom: 50px;
  }
  #life-quality .safety .img01 {
    margin-bottom: auto;
  }
  #life-quality .safety .img01 .swipe-img img {
    width: 758px !important;
  }
  #life-quality .safety .swipe {
    margin-bottom: 50px;
  }
  #life-quality .safety .column02 li {
    width: 100%;
    margin-bottom: 20px;
  }
  #life-quality .safety .column02 li:last-child {
    width: 100%;
    margin: 0 auto 50px;
  }
  #life-quality .bg02 {
    padding: 80px 0 0;
  }
  #life-quality .bg03 {
    padding: 80px 0 0;
  }
  #life-quality .structure .column02 li {
    width: 100%;
    margin-bottom: 20px;
  }
  #life-quality .structure .column02 li:last-child {
    width: 100%;
    margin: auto;
  }
  #life-quality .structure .list02 li {
    width: 100%;
    margin: 30px auto;
  }
  #life-quality .structure .list02 li:last-child {
    width: 100%;
    margin: 30px auto;
  }
  /*----------------
modelroom
----------------*/
  #modelroom .commonTitle01 {
    padding-bottom: 35rem;
    text-align: left;
    font-size: 18rem;
  }
  #modelroom section.intro .inSec01 {
    text-align: left;
  }
  #modelroom section.intro .inSec01 .commonTitle01 {
    font-size: 18px;
  }
  #modelroom section.intro .inSec01 .lead {
    font-size: 14px;
    line-height: 2;
    padding-bottom: 50rem;
  }
  #modelroom .sec01 .img02 {
    width: 84%;
    margin: 0 0 50px;
    padding: 50px 0 0;
  }
  #modelroom .sec01 .img03 {
    width: 90%;
  }
  #modelroom .sec02 {
    padding-bottom: 50px;
  }
  #modelroom .sec02 .list {
    padding-top: 50px;
    width: 100%;
    margin: auto;
  }
  #modelroom .sec02 .list li {
    float: none;
    width: 90%;
    margin: auto;
  }
  #modelroom .sec02 .list li:last-child {
    float: right;
    width: 90%;
    margin: 0 0 0 auto;
  }
  #modelroom .sec02 .list .txt01 {
    font-size: 18px;
  }
  #modelroom .sec02 .list .txt02 {
    font-size: 18px;
    margin-bottom: 30px;
  }
  #modelroom .sec02 .list .txt03 {
    margin-bottom: 50px;
  }
  #modelroom .sec03 {
    padding-bottom: 50px;
  }
  #modelroom .sec03 .img05 {
    width: 90%;
    margin: 0 0 50px auto;
  }
  #modelroom .sec03 .list {
    width: 100%;
    margin: 0 auto 0 0;
  }
  #modelroom .sec03 .list li {
    float: none;
    width: 90%;
    margin: auto;
  }
  #modelroom .sec03 .list li:last-child {
    float: none;
    width: 90%;
    margin: 0 auto 0 0;
  }
  #modelroom .sec03 .list .txt01 {
    font-size: 18px;
  }
  #modelroom .sec03 .list .txt02 {
    font-size: 18px;
    margin-bottom: 30px;
  }
  #modelroom .sec03 .list .txt03 {
    margin-bottom: 50px;
  }
  #modelroom .sec05 {
    padding-bottom: 50px;
  }
  #modelroom .sec05 .img02 {
    width: 70%;
    margin: 0 0 50px;
    padding: 50px 0 0;
  }
  #modelroom .sec05 .img03 {
    width: 90%;
    padding: 50px 0 0;
  }
  /*----------------
oneldk
----------------*/
  #oneldk main {
    padding-bottom: 0;
  }
  #oneldk .page-header {
    padding: 0 0 16rem;
  }
  #oneldk .intro {
    text-align: center;
  }
  #oneldk .intro .tit {
    text-align: left;
    font-size: 24px;
    margin: 40px auto 16px;
  }
  #oneldk .intro .lead {
    text-align: left;
    margin-bottom: 40px;
  }
  #oneldk .intro .lead br {
    display: none;
  }
  #oneldk .intro .image.img00 {
    width: 50%;
  }
  #oneldk .sec01 {
    margin: auto;
    padding: 0;
  }
  #oneldk .sec01 .card {
    width: 100%;
    margin: 0 auto 30px;
    padding: 70px 0 0;
  }
  #oneldk .sec01 .card .lists {
    width: 100%;
    margin: auto;
    display: block;
    position: relative;
  }
  #oneldk .sec01 .card li {
    width: 100%;
  }
  #oneldk .sec01 .card li:nth-child(2) {
    width: 90%;
    margin: 0 auto 40px;
  }
  #oneldk .sec01 .card li:last-child {
    width: 100%;
    margin: auto;
  }
  #oneldk .sec01 .card .icon {
    max-width: 123px;
    width: 26%;
    position: absolute;
    right: 10%;
    top: -14%;
  }
  #oneldk .sec01 .card01 .icon {
    max-width: 103px;
    width: 22%;
    position: absolute;
    right: 10%;
    top: -23%;
  }
  #oneldk .sec01 .card02 .icon {
    max-width: 103px;
    width: 19%;
    position: absolute;
    right: 10%;
    top: -9%;
  }
  #oneldk .sec01 .card03 {
    margin-bottom: 80px;
  }
  #oneldk .sec01 .card03 .icon {
    top: -10%;
  }
}

@media screen and (max-width: 768px) and (min-width: 640px) {
  #oneldk .sec01 .card .icon {
    top: -23%;
  }
  #oneldk .sec01 .card02 .icon {
    top: -6%;
    right: 5%;
  }
  #oneldk .sec01 .card03 .icon {
    top: -5%;
  }
}

@media screen and (max-width: 768px) {
  #oneldk .sec02 {
    background: url(../images/oneldk/bg-sp.jpg);
    background-size: cover;
    padding: 0 0 80px;
  }
  #oneldk .sec02 .img00 {
    margin-bottom: 60px;
  }
  #oneldk .sec02 .ribbon {
    max-width: 330px;
    margin: 0 auto 20px;
  }
  #oneldk .sec02 .txt01 {
    text-align: left;
    font-size: 22px;
    margin-bottom: 30px;
  }
  #oneldk .sec02 .txt02 {
    text-align: left;
    margin-bottom: 16px;
  }
  #oneldk .sec02 .txt02 br {
    display: none;
  }
  #oneldk .sec02 .img01 {
    max-width: 752px;
    margin: 0 auto 40px;
  }
  #oneldk .sec02 .click-btn {
    margin-bottom: 80px;
  }
  #oneldk .sec02 .txt03 {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 40px;
  }
  #oneldk .sec02 .change-buttons {
    margin: 0 auto 40px;
    display: flex;
    flex-wrap: wrap;
  }
  #oneldk .sec02 .change-buttons li {
    display: block;
  }
  #oneldk .sec02 .list {
    margin-bottom: 40px;
  }
  #oneldk .sec02 .list li {
    display: block;
    width: 100%;
  }
  #oneldk .sec02 .list li:first-child {
    display: none;
  }
  #oneldk .sec02 .list li:nth-child(2) {
    width: 100%;
    margin: 0 auto 40px;
  }
  #oneldk .sec02 .list li:last-child {
    display: none;
  }
  #oneldk .sec02 .sp-swipe-box {
    overflow: auto;
    margin-bottom: 20rem;
  }
  #oneldk .sec02 .cards {
    text-align: center;
    display: flex !important;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: 490vw;
  }
  #oneldk .sec02 .cards li {
    width: 95vw;
    margin-right: 5vw;
    margin-bottom: 0;
  }
  #oneldk .sec02 .repayment {
    max-width: 700px;
    margin: 0 auto;
  }
  #oneldk .sec02 .repayment .inner {
    width: 90%;
    margin: auto;
  }
  #oneldk .sec02 .repayment .type {
    text-align: left;
    line-height: 1.4;
  }
  #oneldk .sec02 .repayment .price {
    text-align: left;
  }
  #oneldk .sec02 .repayment .caps {
    padding: 0;
  }
  #oneldk .sec03 {
    padding: 0 0 60px;
  }
  #oneldk .sec03 .tit {
    text-align: left;
    line-height: 1.3;
    margin-bottom: 30px;
  }
  #oneldk .sec03 .txt {
    text-align: left;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  #oneldk .sec03 .lead {
    text-align: left;
    margin-bottom: 30px;
  }
  #oneldk .sec03 .img01 {
    margin: 0 auto;
  }
  #oneldk .sec03 .img01 .swipe-img img {
    width: 710px !important;
  }
  #oneldk .sec03 .list {
    display: flex;
    flex-wrap: wrap;
    margin: 50px auto 0;
  }
  #oneldk .sec03 .list li {
    width: 100%;
    margin-bottom: 30px;
    margin-right: auto;
  }
  #oneldk .sec03 .list li:last-child {
    margin: auto;
  }
}

#entry .site-header {
  position: absolute;
}

#entry .page-header {
  background: none;
  padding: 0 0 100rem;
}

#entry main {
  color: #fff;
  background: url("../images/entry/bg.jpg") center;
  background-size: cover;
  min-height: 80vh;
  padding: 61rem 0;
  margin-top: 0;
}

#entry .main-header {
  text-align: center;
  padding-bottom: 111rem;
}

#entry .page-title {
  font-size: 50rem;
  line-height: 1.3;
  font-weight: normal;
  padding-bottom: 22rem;
}

#entry .page-lead {
  font-size: 14rem;
}

#entry .error {
  font-size: 14rem;
  text-decoration: underline;
  padding-bottom: 30rem;
}

#entry .contents {
  text-align: center;
}

#entry .error {
  display: none;
}

#entry .texts .text01 {
  font-size: 26rem;
  line-height: 1.4;
  padding-bottom: 25rem;
}

#entry .texts .text02 {
  font-size: 14rem;
  line-height: 2.1;
  padding-bottom: 42rem;
}

#entry .texts .text03 {
  font-size: 18rem;
  line-height: 1.5;
  padding-bottom: 21rem;
}

#entry .forget-box {
  padding-top: 110rem;
  margin: 0 auto;
  max-width: 600rem;
}

#entry .forget-box .txt01 {
  font-size: 18rem;
  line-height: 1.4;
  padding-bottom: 25rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 26rem;
}

#entry .forget-box .txt02 {
  font-size: 14rem;
  line-height: 2.2;
  padding-bottom: 20rem;
}

#entry .forget-box.box02 {
  display: inline-block;
  max-width: none;
  padding: 30rem;
  margin-top: 110rem;
  border: 1px solid;
}

#entry .forget-box.box02 .txt01 {
  border-bottom: none;
  font-size: 16rem;
  line-height: 1.7;
  margin-bottom: 0;
  padding-bottom: 35rem;
}

#entry .forget-box.box02 .entryButton .common-button01 {
  max-width: 230px;
  padding: 16rem 24rem 18rem;
  margin: auto;
}

#entry .forget-box .lists {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 620rem;
}

#entry .forget-box .lists li {
  box-sizing: border-box;
}

#entry .forget-box .lists li a {
  display: block;
  color: #fff;
  position: relative;
  padding: 15rem 0;
  padding-left: 30rem;
  text-align: left;
}

#entry .forget-box .lists li a:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

#entry .forget-box .lists .list01 {
  padding-right: 25rem;
  border-right: 1px solid #fff;
  width: 50%;
  font-size: 14rem;
}

#entry .forget-box .lists .list01 a:after {
  background: url("../images/entry/mail.svg") no-repeat center;
  background-size: 25rem 17rem;
  width: 25rem;
  height: 17rem;
}

#entry .forget-box .lists .list02 {
  padding-left: 25rem;
  width: 42%;
  font-size: 22rem;
}

#entry .forget-box .lists .list02 a {
  padding-left: 27rem;
}

#entry .forget-box .lists .list02 a:after {
  background: url("../images/entry/tel.svg") no-repeat center;
  background-size: 19rem 19rem;
  width: 19rem;
  height: 19rem;
}

#entry form.login .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  width: 433rem;
}

#entry form.login input {
  display: block;
  box-sizing: border-box;
  padding: 12rem;
  width: 100%;
  font-size: 16rem;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.4);
  font-family: 'EB Garamond','Noto Serif JP', serif;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  height: 44rem;
  line-height: 44rem;
}

#entry form.login input[type="text"] {
  width: calc(100% - 115rem);
  margin-bottom: 19rem;
  border: 1px solid #707070;
}

#entry form.login input[type="text"]::placeholder {
  color: #68603E;
  opacity: .2;
}

#entry form.login input[type="submit"] {
  cursor: pointer;
  width: 115rem;
  padding: 3rem;
  border: none;
  background: #9F8B7A;
  color: #fff;
  border-radius: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
}

@media (min-width: 1025px) {
  #entry form.login input[type="submit"]:hover {
    opacity: .7;
  }
}

@media screen and (max-width: 768px) {
  #entry .site-header {
    position: static;
  }
  #entry main {
    background-image: url("../images/entry/bg-sp.jpg");
    padding: 50rem 0 51rem;
  }
  #entry .page-header {
    padding-bottom: 50rem;
  }
  #entry .page-title {
    font-size: 30rem;
    padding-bottom: 17rem;
  }
  #entry .error {
    font-size: 14rem;
    padding-bottom: 15rem;
  }
  #entry .texts .text01 {
    font-size: 20rem;
    line-height: 1.9;
    padding-bottom: 25rem;
  }
  #entry .texts .text02 {
    line-height: 1.8;
  }
  #entry .texts .text03 {
    font-size: 18rem;
    line-height: 1.9;
    padding-bottom: 44rem;
  }
  #entry .forget-box {
    padding-top: 75rem;
  }
  #entry .forget-box .txt01 {
    line-height: 1.8;
    padding-bottom: 15rem;
  }
  #entry .forget-box .txt02 {
    padding-bottom: 54rem;
  }
  #entry .forget-box.box02 {
    padding: 30rem 15rem;
  }
  #entry .forget-box .lists {
    display: block;
    width: auto;
  }
  #entry .forget-box .lists li a {
    display: inline-block;
    padding: 15rem 0;
    padding-left: 30rem;
    text-align: center;
  }
  #entry .forget-box .lists .list01 {
    padding-right: 0;
    border-right: none;
    width: auto;
    font-size: 14rem;
    border-bottom: 1px solid #fff;
  }
  #entry .forget-box .lists .list01 a:after {
    background: url("../images/entry/mail.svg") no-repeat center;
    background-size: 25rem 17rem;
    width: 25rem;
    height: 17rem;
  }
  #entry .forget-box .lists .list02 {
    padding-left: 0;
    width: auto;
    font-size: 22rem;
  }
  #entry .forget-box .lists .list02 a {
    padding-left: 27rem;
  }
  #entry .forget-box .lists .list02 a:after {
    background-size: 19rem 19rem;
    width: 19rem;
    height: 19rem;
  }
  #entry form.login .inner {
    width: auto;
    display: block;
  }
  #entry form.login input[type="text"] {
    width: 100%;
    margin-bottom: 19rem;
  }
  #entry form.login input[type="submit"] {
    width: 100%;
  }
}

#limited main {
  background: rgba(228, 223, 225, 0.2);
  min-height: 100vh;
  padding: 123rem 0 0;
  color: #454D67;
}

#limited .page-title {
  font-size: 40rem;
  line-height: 1.3;
  font-weight: normal;
  padding-bottom: 9rem;
}

#limited .pageTitle {
  text-align: center;
  padding-bottom: 105rem;
}

#limited .pageTitle .ja {
  font-size: 14rem;
  line-height: 1.3;
  font-weight: normal;
}

#limited .btn-lists {
  text-align: center;
  max-width: 830px;
  margin: 0 auto;
}

#limited .btn-lists li {
  display: inline-block;
  vertical-align: top;
  width: 47%;
  margin-right: 5%;
  box-shadow: 0 3px 20px rgba(0, 0, 0, 0.16);
  background: #73BCC0;
  color: #fff;
}

#limited .btn-lists li:last-child {
  margin-right: auto;
}

#limited .btn-lists .texts {
  padding: 30px 0 40px;
  color: #fff;
}

#limited .btn-lists .texts .name {
  font-size: 22px;
  background: #30A5AC;
  border-radius: 22px;
  padding: 7px 0;
  max-width: 280px;
  margin: 0 auto 15px;
}

#limited .btn-lists .texts .info {
  font-size: 14px;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  #limited .wrap {
    width: 84%;
  }
  #limited main {
    padding: 0;
  }
  #limited .main-header {
    padding-bottom: 61rem;
  }
  #limited .page-title {
    font-size: 30rem;
    padding-bottom: 10rem;
  }
  #limited .btn-lists {
    margin: 0 auto 100rem;
    padding-top: 0;
  }
  #limited .btn-lists li {
    display: block;
    width: 100%;
    margin-bottom: 50px;
  }
  #limited .btn-lists li:last-child {
    margin-right: auto;
  }
  #limited .btn-lists .texts .name {
    font-size: 18px;
    margin-bottom: 15px;
  }
}

#limited.plans main {
  text-align: center;
  background: url("../images/limited/bg.jpg") center;
  background-size: cover;
  min-height: 100vh;
  padding: 123rem 0 0;
}

#limited.plans .page-title {
  font-size: 40rem;
  line-height: 1.3;
  font-weight: normal;
  padding-bottom: 9rem;
}

#limited.plans .pageTitle {
  text-align: center;
  padding-bottom: 50rem;
}

#limited.plans .pageTitle .ja {
  font-size: 14rem;
  line-height: 1.3;
  font-weight: normal;
}

#limited.plans .tit {
  font-size: 27px;
  margin-bottom: 10px;
}

#limited.plans .sub {
  font-size: 14px;
  margin-bottom: 50px;
}

#limited.plans .btns {
  text-align: center;
  max-width: 960px;
  margin: auto;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: stretch;
}

#limited.plans .btns li {
  flex: 0 0 300rem;
  background: #fff;
  padding: 0 0 30px;
}

#limited.plans .btns li a {
  color: #46484D;
}

#limited.plans .btns .texts {
  margin-bottom: 20px;
}

#limited.plans .btns .texts .copy {
  font-size: 15px;
  color: #fff;
  background: #57BEC1;
  padding: 15px 0;
  margin: 0 auto 20px;
}

#limited.plans .btns .texts .copy.none {
  background: none;
}

#limited.plans .btns .texts .type {
  font-size: 20px;
  margin-bottom: 10px;
}

#limited.plans .btns .texts .type span {
  font-size: 40px;
}

#limited.plans .btns .texts .spec {
  font-size: 22px;
  margin-bottom: 10px;
}

#limited.plans .btns .texts .spec span {
  font-size: 30px;
}

#limited.plans .btns .texts .spec01 {
  font-size: 14px;
  margin-bottom: 10px;
}

#limited.plans .btns .texts .spec01 span {
  font-size: 26px;
}

#limited.plans .btns .texts .width {
  font-size: 11px;
  margin-bottom: 42px;
}

#limited.plans .btns .texts .width span {
  font-size: 24px;
}

#limited.plans .btns li:first-child .texts .width {
  margin-bottom: 20px;
}

#limited.plans .btns .image {
  width: 90%;
  margin: 0 auto;
}

#limited.plans .btns .point {
  width: 90%;
  margin: 20px auto 0;
}

#limited.plans .btns .button {
  width: 84%;
  margin: auto;
}

#limited.plans .view {
  background: #fff;
  padding: 100px 0;
  margin-top: 100px;
}

#limited.plans .view .images {
  max-width: 1000px;
  margin: 0 auto 20px;
}

#limited.plans .view .tab-inner {
  display: none;
}

#limited.plans .view .tab-inner.current {
  display: block;
}

#limited.plans .view .change-buttons {
  text-align: center;
  max-width: 346px;
  margin: 0 auto;
}

#limited.plans .view .change-buttons li {
  text-align: center;
  display: inline-block;
  width: 23%;
  margin-right: 1%;
}

#limited.plans .view .change-buttons li:last-child {
  margin-right: 0;
}

#limited.plans .view .change-buttons .button {
  display: block;
  color: #9DA1AD;
  font-size: 18px;
  border: 1px solid;
  border-radius: 26px;
}

#limited.plans .view .change-buttons .button.current {
  pointer-events: none;
  color: #fff;
  background: #46484D;
}

#limited.plans .view .change-buttons .button span {
  display: inline-block;
  padding: 6px 0;
}

#limited.plans .view .change-buttons .button:hover {
  opacity: 1;
  color: #fff;
  background: #46484D;
  transition: .3s;
}

@media screen and (max-width: 768px) {
  #limited.plans .wrap {
    width: 84%;
  }
  #limited.plans main {
    background-image: url("../images/limited/bg-sp.jpg");
    padding: 0 0 51rem;
  }
  #limited.plans .main-header {
    padding-bottom: 61rem;
  }
  #limited.plans .page-title {
    font-size: 30rem;
    padding-bottom: 17rem;
  }
  #limited.plans .tit {
    font-size: 25px;
    margin-bottom: 10px;
  }
  #limited.plans .sub {
    font-size: 14px;
    margin-bottom: 20px;
  }
  #limited.plans .btns {
    max-width: 1000px;
    margin: auto;
    display: block;
  }
  #limited.plans .btns li {
    flex: 0 0 100%;
    margin-bottom: 40px;
  }
  #limited.plans .view {
    padding: 50px 0;
    margin-top: 50px;
  }
  #limited.plans .view .swipe-img img {
    width: 800px !important;
  }
}

/*# sourceMappingURL=lower.css.map */
