@charset "utf-8";



/* common
------------------------------------------------------------------------*/
.caption-out {
font-size: 10px;
padding-top: 1em;
}
.txt-R{
text-align: right;
}

/*common-margin,padding-------------------------*/


/* margin_bottom_100*/

#main_Wrap {
  margin-bottom: 100px;
}

/* margin_bottom_６０*/

.c-sec_ttl {
  text-align: center;
  margin-bottom: 60px;
}

/* margin_bottom_40*/

.sec_location .c-sec_ttl {
  margin-bottom: 40px;
}

section {
  padding-bottom: 100px;
}

section:last-of-type {
  padding-bottom: 0px;
}

/*flex setting---------------------------*/


.c-flex-2column {
  display: flex;
  column-gap: 60px;
}

.item_text_2col {
  width: 50%;
  margin-top: 0px;
}

.item_pic_2col {
  width: 50%;
}

.c-flex-rev {
  flex-direction: row-reverse;
}

.c-flex-wrap {
  flex-wrap: wrap;
}


/*other---------------------------------*/

.tab_only {
  display: none;
}


section h3 {
  font-size: 28px;
  margin-bottom: 40px;
}

.c-lead {
  font-size: 21px;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 60px;
}

.c-sec_ttl img {
  width: auto;
  height: 54px;;
}

.c-f-lead {
  font-size: 21px;
  line-height: 1.6;
  margin-bottom:20px;
}

.c-f-text {
  line-height: 2;
}

.destination {
  font-size: clamp(13px, 1.84vw, 21px);
  letter-spacing: 0.12em;
  font-feature-settings: "palt";
  padding-top: 0.8em;
}
.destination.adjustment {
  padding-top: 1.5em;
}

figure img {
  position: relative;
  display: block;
}

figure figcaption {
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: -0.03em;
}

figure figcaption:nth-child(2) {
  margin-top: 10px;
}

.c-fig-right {
  text-align: right;
}

.c-f-large {
  font-size: 38px;
  letter-spacing: 0.05em;
  vertical-align: -2.5px;
  margin-right: .08em
}

.c-f-middle {
  font-size: 18px;
  letter-spacing: 0.1em;
  margin-right: .08em
}

.c-f-small {
  font-size: 12px;
  letter-spacing: 0.1em
}

.c-narrow {
  margin: 0 -0.4em;
}


/* main
------------------------------------------------------------------------*/


/*sec_river-----------------------------*/

.sec_river .c-flex-2column {
  align-items: center;
}

.p-pictures {
  position: relative;
/*  background: #000;*/
  height: 100%;
}

.p-pictures div:not(.p-pictures div:nth-child(1)) {
  position: absolute;
  display: block;
}

.p-pictures div:nth-child(2) {
  width: 15%;
  top: 0;
  left: 33%;
}
.p-pictures div:nth-child(3) {
  width: 25%;
  top: 10%;
  left: 0%;
  z-index: 1;
}
.p-pictures div:nth-child(4) {
  width: 48%;
  bottom: 0;
  left: 2.5%;
}
.p-pictures div:nth-child(5) {
  width: 12%;
  top: 32%;
  right:35%;
}
.p-pictures div:nth-child(6) {
  width: 15%;
  top: 10.5%;
  right:20%;
}
.p-pictures div:nth-child(7) {
  width: 15%;
  top: 36%;
  right:0;
  z-index:1 ;
}
.p-pictures div:nth-child(8) {
  width: 35%;
  bottom: 0;
  right: 2.5%;
}

/*sec_comfort---------------------------*/

.sec_comfort .c-sec_ttl {
  margin-bottom: 100px;
}

.sec_comfort .c-flex-2column {
  position: relative;
  margin-bottom: 100px;
}

.sec_comfort {
  background-color: #d0dae0;
  padding: 50px 0 0;
  color: #46626f;
}

.sec_comfort .u-flex {
  display: flex;
  gap: 20px;
  margin-bottom: 40px;
}

.sec_comfort .u-flex figure {
   width: 50%;
}

.sec_comfort  .c-lead {
  margin-bottom: 60px;
}

/*dammy*/
.sec_comfort .dammy img {
  height: 200px;
}

.sec_comfort .u-flex-4column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 20px;
}

.u-flex-4column figure {
  width: calc(25% - 20px);
/*  margin-right: 20px;*/
}

/*
.u-flex-4column figure:nth-child(4),.u-flex-4column figure:nth-child(8) {
  margin-right: 0;
}
*/

.shop_img_list {
display: flex;
flex-wrap: wrap;
margin: 50px auto;
gap: 10px 20px;
}
.shop_img_list figure {
width: 30.87719298%;
}
.shop_img_list p {
display: inline-block;
width: 100%;
text-align: right;
color: #46626f;
font-size: 14px;
}
/*
.shop_img_list figure + p{
margin-top: -10px;
}
*/
.area_event {
}
.area_event h4 {
color: #46626f;
font-size: clamp(18px,1.75vw,21px);
letter-spacing: 0.08em;
margin-bottom: -0.15em;
line-height: 1;
}
.area_event .event_box {
width: 100%;
border: 1px solid #46626f;
}
.area_event .event_box > p {
color: #46626f;
font-size: clamp(14px,1.34vw,16px);
line-height: 1.6;
padding: 2em 2em;
}
.area_event .flex {
align-items: center;
color: #46626f;
border-top: 1px solid #46626f;
padding: 2em 2em;
}
.area_event .flex p {
width: 70%;
font-size: clamp(14px,1.34vw,16px);
line-height: 1.6;
}
.area_event .flex h5 {
width: 30%;
line-height: 1.6;
text-align: center;
}

.shop_bg{
background: #edf1f4;
padding: 80px 0;
}

.shopposi {
}
.shopposi.pc{
width: 94%;
max-width: 1200px;
margin: 0 auto;
}
.shopposi.pc .shop {
position: relative;
width: 100%;
height: 0;
padding: 20.70833333% 0;
}

[class^="shopposi_img_"] {
position: absolute;
}

.shopposi .shopposi_img_01 {
width: 18.66666667%;
top: 0;
left: 0;
}
.shopposi .shopposi_img_02 {
width: 15.16666667%;
top: 35.01006036%;
left: 0;
}
.shopposi .shopposi_img_03 {
width: 18.66666667%;
top: 11.26760563%;
left: 28.08333333%;
z-index: 2;
}
.shopposi .shopposi_img_04 {
width: 15.16666667%;
top: 38.22937626%;
left: 22.25%;
}
.shopposi .shopposi_img_05 {
width: 15.16666667%;
bottom: 0;
left: 30.08333333%;
}
.shopposi .shopposi_img_06 {
width: 18.66666667%;
top: 54.92957746%;
left: 46.66666667%;
}
.shopposi .shopposi_img_07 {
width: 18.66666667%;
top: 0;
left: 51%;
}
.shopposi .shopposi_img_08 {
width: 15.16666667%;
top: 16.90140845%;
left: 66.16666667%;
}
.shopposi .shopposi_img_09 {
width: 15.16666667%;
top: 38.22937626%;
right: 0;
}
.shopposi .shopposi_img_010 {
width: 18.66666667%;
bottom: 0;
left: 72.25%;
}

[class^="shop_name"] {
position: absolute;
font-size: clamp(10px,1.34vw,14px);
line-height: 1.4;
}

.shop_name01 {
top: 66.39839034%;
}

.shop_name02 {
top: 0;
left: 28.08333333%;
}

.shop_name03 {
bottom: 0;
left: 46.66666667%;
}

.shop_name04 {
top: 0;
left: 72%;
}

.shop_name05 {
top: 54.92957746%;
left: 72.25%;
}

/*urban------------------------------*/
.sec_urban {
  padding: 50px 0;
}
.sec_urban .u-flex {
  display: flex;
  gap: 20px;
  margin-bottom: 100px;
}

.sec_urban .u-flex figure {
   width: 50%;
}

.sec_urban .c-flex-2column {
  margin-bottom: 100px;
}

/*lifeInfo------------------------------*/
.sec_lifeInfo {
background: #d0dae0;
padding: 80px 0 50px;
}
.sec_lifeInfo .c-sec_ttl img{
height: 41px;
}

.p-nav {
  display: flex;
  width: 90%;
  margin: 0 auto 60px auto;
  justify-content: space-between;
}

.p-nav li {
  position: relative;
  cursor: pointer;
  transition: all 300ms ease;
}

.p-info-flex {
  display: flex;
}

.p-nav li::before,
.p-nav li::after {
  content: "";
  position: absolute;
  bottom: -10px;
  height: 5px;
  width: 0;
  background: #a0b3bd;
  transition: width 0.3s ease;
}

.p-nav li::before{
  left: 50%;
}

.p-nav li::after{
  right: 50%;
}

.p-nav li:hover {
    opacity: 0.7;
}

.p-nav li:hover::before,
.p-nav li:hover::after{
  width: 55%;
}

.sec_lifeInfo .u-flex-4column {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin: 20px auto 0;
}
.sec_lifeInfo .u-flex-4column .lifeinfo_cat_ttl{
  width: 100%;
  text-align: center;
  color: #46626f;
  letter-spacing: 0.1em;
  margin: 60px auto 1.5em;
}
.sec_lifeInfo .u-flex-4column .lifeinfo_cat_ttl h4{
    position: relative;
  font-size: clamp(18px,1.75vw,21px);
  padding-bottom: 1em;
}
.sec_lifeInfo .u-flex-4column .lifeinfo_cat_ttl h4::after{
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 16em;
  height: 1px;
  background: #46626f;
}

.u-flex-4column figure {
  width: calc(25% - 20px);
/*  margin-right: 20px;*/
}

/*
.u-flex-4column figure:nth-child(4),.u-flex-4column figure:nth-child(8) {
  margin-right: 0;
}
*/
  
/*access-----------------------------------*/
.sec_access {
  padding: 80px 0 50px;
}
.sec_access .c-lead {
  margin-bottom: 100px;
}

.sec_access .c-flex-2column {
  margin-bottom: 100px;
}
.sec_access .c-flex-2column.secspace {
  margin-bottom: 50px;
}

.sec_access .item_text_2col {
  margin-top: 10px;
}

.sec_access .c-f-text {
  margin-bottom: 40px;
}

.sec_access .u-flex {
  display: flex;
  gap: 20px;
}
.sec_access .u-flex.sp {
 display: none;
}

.sec_access .u-flex.u-flex figure {
  width: 50%;
}

.sec_access .u-mgtp50  {
  margin-top: 50px;
}

.sec_access .u-lh {
  line-height: 2;
}

.c-3col_h {
  font-size: 22px;
  margin-bottom: 30px;
}

.c-flex-3column {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}

.c-flex-3column figure {
  width: 25%;
  text-align: center;

}

.c-flex-3column figure:not(.c-flex-3column figure:last-child) {
  padding-right: 6.249999999999%;
  border-right: 1px solid #000;
}

.c-flex-3column figure img {
  margin-bottom: 10px;
}

.c-flex-3column figure figcaption:nth-child(2) {
  margin-top: 0px;
}

.c-flex-3column figure figcaption {
  font-size: 24px;
  line-height: normal;
}

.c-flex-3column figure div figcaption:nth-child(2) {
  font-size: 16px;
}


.c-flex-3column figure div figcaption:nth-child(2) span {
  font-size: 34px;
  padding: 0 3px;
}

.u-fig-flex {
  display: flex;
  justify-content: center;
  align-items: center;
}


.u-fig-flex div:nth-child(1) {
  align-items:last baseline;
  margin-right: 0.5em;
}

.u-fig-flex div:nth-child(2) {
  font-size: 12px;
  line-height: 1.4;
}




@media screen and (max-width: 1024px) {

.tab_only {
  display: block;
}

/*other---------------------------------*/

.c-lead {
  font-size: clamp(17px, 2.1vw, 21px);
  margin-bottom: 60px;
}

.c-sec_ttl img {
  height: 5.8vw;
}

section h3 {
  font-size: clamp(21px, 3.2vw, 32px);
  margin-bottom: 40px;
}

.c-f-lead {
  font-size: clamp(17px, 2.1vw, 21px);
}

.c-f-text {
  font-size: clamp(14px, 1.58vw, 16px);
}

.c-f-large {
  font-size: clamp(29.5px, 3.75vw, 38px);
  letter-spacing: 0.05em;
  vertical-align: -2.5px;
  margin-right: .08em
}

.c-f-middle {
  font-size: clamp(15px, 1.78vw, 18px);
  letter-spacing: 0.1em;
  margin-right: .08em
}
.c-3col_h {
margin-bottom: 20px;
font-size: 17px;
}

/*lifeInfo------------------------------*/

.p-nav li {
  line-height: 1.3;
  text-align: center;
  font-size: clamp(14px, 1.58vw, 16px);
}

.c-flex-3column figure figcaption {
  font-size: clamp(18px, 2.37vw, 24px);
}

.c-flex-3column figure div figcaption:nth-child(2) {
  font-size: clamp(14px, 1.58vw, 16px);
}


.c-flex-3column figure div figcaption:nth-child(2) span {
  font-size: clamp(26px, 3.33vw, 34px);
  padding: 0 3px;
}

/*access-------------------------------*/

.u-fig-flex div:nth-child(2) {
  font-size: clamp(10px, 1.18vw, 12px);
  line-height: 1.4;
}

}

@media screen and (max-width: 767px) {

  .tab_only {
    display: none;
  }


/*common-margin,padding-------------------------*/

#main_Wrap {
  margin-bottom: 40px;
}

.c-sec_ttl {
  text-align: center;
  margin-bottom: 40px;
}

section {
  padding-bottom: 60px;
}

/*flex setting---------------------------*/

.c-flex-2column {
  flex-wrap: wrap;
}

.item_text_2col {
  width: 100%;
  margin-top: 0px;
}

.item_pic_2col {
  width: 100%;
}

/*other---------------------------------*/

.c-sec_ttl img {
  height: 5.8vw;
}
.sec_lifeInfo .c-sec_ttl img {
  height: 5.8vw;
}

.c-lead {
  margin-bottom: 30px;
}

.c-f-lead {
  margin-bottom:20px;
}

.c-f-text {
  margin-bottom:20px;
}
.destination {
/*  letter-spacing: 0.04em;*/
}
.destination.adjustment {
  padding-top: 0.0em;
}

/* main
------------------------------------------------------------------------*/


/*sec_river-----------------------------*/

.sec_river .item_pic_2col {
  margin-bottom: 20px;
}
.p-pictures {
    height: 0;
    padding: 80% 0;
}
.p-pictures div:nth-child(2) {
    width: 60%;
    top: 4%;
    left: 40%;
}
.p-pictures div:nth-child(3) {
    width: 40%;
    top: 54%;
    left: 3%;
    z-index: 1;
}
.p-pictures div:nth-child(4) {
    width: 70%;
    bottom: 42%;
    left: 0;
}
    .p-pictures div:nth-child(5) {
        width: 34%;
        top: 22%;
        right: 0;
        display: none!important;
    }
.p-pictures div:nth-child(6) {
    width: 40%;
    top: 0;
    right: unset;
    left: 6%;
}
.p-pictures div:nth-child(7) {
    width: 45%;
    top: 66%;
    right: 0;
    z-index: 1;
}
    .p-pictures div:nth-child(8) {
        width: 60%;
        bottom: 0;
        right: unset;
        left:0;
    }

/*sec_comfort---------------------------*/

.sec_comfort .c-sec_ttl {
  margin-bottom: 60px;
}

.sec_comfort .c-flex-2column {
  position: relative;
  margin-bottom: 40px;
}

.sec_comfort .u-flex {
  gap: 10px;
  margin-bottom: 20px;
}

.sec_comfort .item_text_2col {
  margin-bottom: 10px;
}

.sec_comfort .u-flex-4column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 10px;
}

.u-flex-4column figure {
  width: calc(50% - 10px);
  margin-right: 0px;
}
.sec_comfort .u-flex-4column.shop {
gap: 30px 0;
}
.sec_comfort .u-flex-4column.shop > div{
display: flex;
flex-wrap: wrap;
width: 94%;
margin: 0 auto;
gap: 0 4%;
}
.sec_comfort .u-flex-4column.shop > div figure{
width: calc(50% - 2%);
}
.sec_comfort .u-flex-4column.shop > div .shop_nam{
width: 100%;
padding-top: 0.5em;
line-height: 1.4;
}

.sec_comfort  .c-lead {
  margin-bottom: 40px;
}
.shop_img_list {
    margin: 30px auto;
    gap: 10px 5%;
}
.shop_img_list figure {
    width: 30%;
}
.area_event .event_box > p {
    padding: 1em;
}
.area_event .flex {
    padding: 1em 1em;
}
.shop_bg {
    padding: 30px 0;
}

/*urban------------------------------*/
.sec_urban {
  padding: 30px 0;
}
.sec_urban .u-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 40px;
}
.sec_urban .u-flex figure {
    width: 100%;
}
.sec_urban .u-flex figure {
    width: 100%;
}
.sec_urban .c-flex-2column {
  margin-bottom: 20px;
/*  flex-direction: column-reverse;*/
  gap: 20px 0;
}
.sec_lifeInfo {
    padding: 40px 0;
}

/*lifeInfo------------------------------*/


.p-nav {
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto 20px auto;
}

.p-nav li {
  font-size: 12px;
  width: 50%;
  text-align: left;
  line-height: 2.5;
}

.p-info-flex {
  flex-wrap: wrap;
}

.p-nav li::before,
.p-nav li::after {
  content: none;
}
.sec_lifeInfo .u-flex-4column .lifeinfo_cat_ttl {
    margin: 40px auto 1em;
}

/*access-----------------------------------*/
.sec_access {
  padding: 30px 0 30px;
}

.sec_access .c-flex-2column {
  margin-bottom: 30px;
  flex-direction: column-reverse;
}
.sec_access .c-flex-2column.secspace {
  margin-bottom: 30px;
}

.sec_access .c-sec_ttl {
  margin-bottom: 40px;
}

.sec_access .c-lead {
  margin-bottom: 40px;
}

.sec_access .c-f-text {
  margin-bottom: 20px;
}

.sec_access .u-flex {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}
.sec_access .u-flex.pc {
  display: none;
}

.sec_access .u-lh {
  line-height: 1;
}

.sec_access .u-mgtp50  {
  margin-top: 0px;
}

.c-flex-3column {
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.c-flex-3column figure {
  width: 100%;
  margin-bottom: 10px;
}

.c-flex-3column figure:last-child {
  margin-bottom: 0px;
}

.c-flex-3column figure:not(.c-flex-3column figure:last-child) {
  padding-right: 0;
  border-right: none;
}

.c-flex-3column figure img {
  margin-bottom: 0px;
}

.c-flex-3column figure div {
  display: flex;
  align-items: center;
}

.c-flex-3column figure div figcaption:nth-child(1) {
  margin-right: 0.5em;
}

.c-flex-3column figure div figcaption:nth-child(2) {
  margin-bottom: 5px;
}

.sec_comfort {
  padding: 30px 0 0;
}

}