@charset "utf-8";



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

.txt_White {
  color:#FFF;
}
.txt_Blue {
  color:#46626f;
}

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


/* margin_bottom_100*/

#main_Wrap {
  margin-bottom: 100px;
}
#main_Wrap figcaption {
  bottom: 24%;
  right: 5px;
}

/* margin_bottom_６０*/

section {
  padding-bottom: 100px;
}

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

.c-sec_ttl {
  text-align: center;
  margin-bottom: 60px;
}
.c-sec_ttl.page-title {
  color:#a0b3bd;
  font-size: clamp( 24px, calc( -22.22222222222222px + 6.018518518518518vw ), 50px );
  font-family: 'Cinzel', serif !important;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 2px;
}

.sec__ttl {
  color: #a0b3bd;
  font-family: 'Cinzel', serif;
  font-weight: 400;
  font-size: clamp( 32px, calc( -53.33333333333333px + 11.11111111111111vw ), 80px );
  line-height: 1.15;
  letter-spacing: 0.15em;
  margin: 0 0 40px;
}

.sec__sttl {
  color: #a0b3bd;
  font-family: 'Cinzel', serif;
  font-weight: 400;
  font-size: clamp( 24px, calc( -22.22222222222222px + 6.018518518518518vw ), 50px );
  line-height: 1.15;
  letter-spacing: 0.15em;
  margin: 0 0 40px;
}

/* margin_bottom_40*/

.sec_location {
  margin-top: -130px;
  padding-bottom: 0;
}

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

.img_1 {
  margin-top: -80px;
}



/*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 {
  color:#46626f;
  font-size: 21px;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 60px;
}
.l-lead {
  color:#46626f;
  font-size: 21px;
  line-height: 1.8;
  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_yokogawa_st---------------------------*/
.sec_yokogawa_st {
  /* background: #4f6b77; */
  /*background: url(../img/bg01.png) no-repeat;
  background-position: center top -50px;
  background-size: contain;*/
  padding: 80px 0;
}

.yokogawa_bg{
/* background: #4f6b77;*/
position:relative;
width: 100%;
     padding: 0 0 10%;
}
.yokogawa_bg::before{
content: "";
position:absolute;
top: -81px;
left: 0;
display: block;
width: 100%;
height: 0;
padding-top:clamp(400px, 84.2%, 730px);
 background: #46626f;
}
.yokogawa_bg::after{
content: "";
position:absolute;
top: 69%;
left: 0;
display: block;
width: 100%;
height: 0;
padding-top: 25.10714286%;
background: url(../img/bg03.png) no-repeat;
  background-size: contain;
  z-index: -1;
}

/* 全体レイアウト */
.yokogawa_st_inner {
  display: flex;
  align-items: flex-start;
  max-width: 1400px;
  margin-left: auto;
  position: relative;
}

.float__title {
  position: absolute;
  top:2%;
  left:6%;
  z-index:3;
}

/* ===== 左テキスト ===== */
.yokogawa_st_text {
  width: 42%;
  padding: 25% 0 0 80px;
  color: #fff;
}

/* .yokogawa_st__title {
  color: #a0b3bd;
  font-family: 'Cinzel', serif;
  font-weight: 400;
  font-size: 80px;
  line-height: 1.15;
  letter-spacing: 0.15em;
  margin: 0 0 40px;
} */

.yokogawa_st__jp-title {
  font-size: clamp( 18px, calc( 7.333333333333334px + 1.3888888888888888vw ), 24px );
  margin-bottom: 24px;
}
.yokogawa_st__lead {
  font-size: clamp( 13px, calc( 7.666666666666667px + 0.6944444444444444vw ), 16px );
  margin-bottom: 24px;
}
.yokogawa_st__desc {
  font-size: clamp( 12px, calc( 8.444444444444445px + 0.4629629629629629vw ), 14px );
  line-height: 2;
  opacity: 0.9;
  margin-bottom: 40px;
}
.yokogawa_st__access {
  font-size: clamp( 13px, calc( 7.666666666666667px + 0.6944444444444444vw ), 16px );
  letter-spacing: 0.1em;
}
.yokogawa_st__access span {
  font-size: 300%;
  margin: 0 6px;
}

.yokogawa_st_visual {
  width: 58%;
  margin-right: -60px; /* full-bleed */
}

.yokogawa_st__main-image {
  position: relative;
  height: 550px;
}

.yokogawa_st__main-image img {
  height: 100%;
  object-fit: cover;
}

/* 画像に被せるタイトル */
.yokogawa_st__image-title {
  position: absolute;
  left: -140px;
  bottom: 50px;

  font-family: 'Cinzel', serif;
  font-size: 80px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.15em;
  color: #a0b3bd;

  pointer-events: none;
  white-space: nowrap;
}

/* サムネイル */
.yokogawa_st__thumbs {
  display: flex;
  gap: 24px;
  margin-top: 24px;
}

.yokogawa_st__thumbs li {
  flex: 0 0 calc((100% - 48px) / 3);
}
.yokogawa_st__thumbs li img {
  height: 170px;
  object-fit: cover;
}

.stage {
  padding: 80px 0;
}

.stage .c-flex-2column {
}

.stage .item_pic_2col {
/*  width: 44%;*/
  width: 42.8%;
}
.stage .item_text_2col {
  width: 56%;
}

.stage ul.flex-2column {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}
.stage ul.flex-2column li {
  width:47.5%;
}
.stage ul.flex-2column li:nth-child(-n+2) {
  margin-bottom: 5%;
}

.stage .event_box {
  margin-top: 50px;
  border:1px solid #46626f;
  padding: 20px 20px;
  color:#46626f;
  align-items: center;
}
.stage .item__txt {
  width:60%;
}
.stage .item__txt .c-f-lead {
  font-size: 21px;
  line-height: 1.6;
  margin-bottom:10px;
}
.stage .item__event {
  width:38%;
}
.stage .item__event .ttl {
  width:120px;
  margin-right: 20px;
}
.stage .item__event ul.c-f-text {
  line-height: 1.1;
}
.stage .item__event ul li + li {
  margin-top: 0.5em;
}

.shop_slide_wrap {

}
.shop_slide_wrap > p{
text-align: center;
}


/* =========================
  共通
========================= */
.swiper {
  width: 100%;
}

/* =========================
  親Swiper
========================= */
.parent-swiper {
  padding: 30px 40px;
}

.parent-swiper .swiper-wrapper {
  /* padding-left: 30px; */
}

.parent-swiper .swiper-slide {
  background: #d6cabd;
  padding: 8px;
  box-sizing: border-box;
}

.parent-title {
  /* font-weight: bold;
  margin-bottom: 8px; */
  font-size: 14px;
  line-height: 1.5;
  padding: 0 8px;
}

/* 親ナビ矢印 */
.parent-prev,
.parent-next {
  color: #000;
}

/* =========================
  親Swiperの矢印を常に表示
========================= */
.parent-swiper .swiper-button-prev,
.parent-swiper .swiper-button-next {
  opacity: 1 !important;        /* ← 常に表示 */
  pointer-events: auto !important;
  display: flex !important;     /* ← 非表示防止 */
  z-index: 10;
}

/* 無効状態でも表示 */
.parent-swiper .swiper-button-disabled {
  opacity: 1 !important;        /* ← ★ここ重要 */
}

/* =========================
  親Swiper 矢印 共通
========================= */
.parent-swiper .swiper-button-prev,
.parent-swiper .swiper-button-next {
  width: 48px;                 /* ← サイズ自由 */
  height: 48px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  /* Swiperデフォルト無効 */
  color: transparent;
  z-index: 20;
}

/* デフォルト矢印削除 */
.parent-swiper .swiper-button-prev::after,
.parent-swiper .swiper-button-next::after {
  display: none;
}

/* 前へ */
.parent-swiper .parent-prev {
  background-image: url("../img/arw_prev.svg");
}

/* 次へ */
.parent-swiper .parent-next {
  background-image: url("../img/arw_next.svg");
}

.parent-swiper .parent-prev {
  position: absolute;
  top: 55%;
  left: 5px;          /* ← 外に出す */
  transform: translateY(-50%);
}

.parent-swiper .parent-next {
  position: absolute;
  top: 55%;
  right: 5px;
  transform: translateY(-50%);
}


/* =========================
  子Swiper（画像フェード）
========================= */
.child-swiper {
  position: relative;
/*  height: 180px;*/ /* フェード用：高さ固定（必須） */
}

/* --- ul / li リセット --- */
.child-swiper .swiper-wrapper {
  list-style: none;
  padding: 0;
  margin: 0;
}

.child-swiper .swiper-slide {
  list-style: none;
  position: relative; /* ← 画像上に要素を載せるため【追加】 */
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

/* --- 画像表示調整【追加】 --- */
.child-swiper img {
  width: 100%;
  height: 100%;
  object-fit: cover;   /* ← 画像比率維持＋はみ出し防止【追加】 */
  display: block;      /* ← 余白防止【追加】 */
  pointer-events: none;/* ← ドラッグ誤操作防止【追加】 */
  user-select: none;   /* ← 選択防止【追加】 */
}


/* =========================
  店舗名＋矢印 横並び
========================= */
.parent-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
}

/* テキスト部分 */
.parent-title .title-text {
  font-size: 12px;
  line-height: 1.4;
}

/* =========================
  子Swiper 矢印
========================= */
.child-nav {
  display: flex;
  gap: 8px;
}
.child-nav .swiper-button-prev,
.child-nav .swiper-button-next {
  position: static;          /* ← Swiperのabsoluteを解除 */
  width: 32px;
  height: 32px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;

  /* Swiperデフォルト無効化 */
  color: transparent;
}

.child-nav .swiper-button-prev::after,
.child-nav .swiper-button-next::after {
  display: none;
}
.child-nav .swiper-button-prev {
  background-image: url("../img/arw_prev.svg");
}
.child-nav .swiper-button-next {
  background-image: url("../img/arw_next.svg");
}

@media (max-width: 768px) {

  .parent-swiper .swiper-wrapper {
    padding-left: 25px;
  }

  .child-swiper {
    /*height: 180px;*/ /* ← SP時の高さ調整 */
  }

  .parent-title {
    /* display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px; */
    margin-top: 0;
    flex-direction: column;
    text-align: center;
  }

  .parent-title .title-text {
    padding: 0 0 15px;
  }
}






/*sec_area---------------------------*/
.sec_area {
  background: #150201;
  color:#FFF;
  padding: 130px 0 0;
}

.sec_area .sec__ttl {
    color: #46626f;
}

.central_area {
  display: flex;
  align-items: flex-start;
  max-width: 1400px;
  margin-left: auto;
  position: relative;
}
.central_area_text {
  width: 100%;
  padding: 0 60px 40px;
}
.central_area_visual {
  width: 100%;
  margin-right: 0;
  margin-top: 8%;
}
.central_area_visual figcaption {
  max-width: 300px;
  width:90%;
  margin: 0 auto;
}

.redevelop_area {
  position: relative;
}
.redevelop_area .sttl_lead {
  position: absolute;
  top: 20%;
  left: 40%;
}
.redevelop_area .sttl_lead .sec__sttl {
  margin: 0 0 10px;
}
.redevelop_area figure {
    margin: -9% auto 0;
}
.redevelop_area figcaption {
    position: absolute;
    top: 41%;
    right: 27%;
    max-width: 250px;
    width: 90%;
    margin: 0 auto;
}

.hiroshima_st_area {
  padding: 80px 0 0;
}
.hiroshima_st_inner {
  display: flex;
  align-items: flex-start;
  max-width: 1400px;
  margin-right: auto;
  position: relative;
}
.hiroshima_st_area_text {
  width: 80%;
  padding: 0 60px 40px;
}
.hiroshima_st_area_visual {
  width: 100%;
  margin-left: 0;
  position: relative;
}
.hiroshima_st_area_visual figcaption {
  position: absolute;
  top:3%;
  right:0;
  max-width: 250px;
  width:90%;
  margin: 0 auto;
}




/*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 100px;
}
.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);
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  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;
}
*/

.sec_lifeInfo figcaption {
background: #d0dae0;
color:#46626f;
}

/*access-----------------------------------*/
.sec_access {
  background: linear-gradient(#46626f 50%, white 50%);
  padding: 0 0 50px;
}
.sec_access .bg02 {
  background: url(../img/bg02.png) no-repeat;
  background-position: center top 50%;
  background-size: contain;
  padding: 0 0 50px;
}
.sec_access .ttl_wrap {
  position: relative;
  /* background: #46626f; */
}
.sec_access .sec__ttl {
  position: absolute;
  bottom:120px;
  left: 50%;
  transform: translateX(-50%);
  z-index:3;

  max-width: 1200px;
  width:90%;
  color:#46626f;
}

.sec_access .inner {
  margin-top:-95px;
  color:#FFF;
}

.sec_access .l-lead {
  color:#FFF;
}

.sec_access .fig_access {
  padding: 60px 0 0;
}
.sec_access .sec__sttl {

}

section.sec_access h3 {
  font-size: 28px;
  line-height: 1.8;
  margin-bottom: 20px;
}
section.sec_access h3.f-80 {
  font-size: 22px;
}

.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 #FFF;
}

.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;
}





/*===========================================
  TAB
===========================================*/

@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;
}

}




/*===========================================
  SP
===========================================*/
@media screen and (max-width: 767px) {

  .tab_only {
    display: none;
  }
.sp_center{
text-align: center;
}

/*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.06em;
text-align: center;
}
.destination.adjustment {
  padding-top: 1em;
}

/* main
------------------------------------------------------------------------*/
.sec_location {
  margin-top: -20px;
  padding-bottom: 0;
}

.sec_location .cap_R {
  right: unset;
  left: 5px;
}




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

.img_1 {
  margin-top: -20px;
}
.yokogawa_bg {
    padding: 0%;
}
.yokogawa_bg::before {
    content: unset;
}
.yokogawa_bg::after {
    content: unset;
}
/*sec_yokogawa_st-----------------------------*/
.sec_yokogawa_st {
  background: url(../img/bg01.png) no-repeat;
  background-position: center top 25%;
  background-size: contain;
  padding: 0 0 40px;
}
.yokogawa_st_inner {
  flex-direction: column;
}

.yokogawa_st__title {
  color: #a0b3bd;
  font-size: 32px;
  font-family: 'Cinzel', serif;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.15em;
  margin: 0 0 40px;
}

.yokogawa_st_text {
  width: 100%;
  padding: 40px 20px 20px;
  background: #4f6b77;
}

.yokogawa_st_visual {
  width: 100%;
  margin-right: 0;
}
.yokogawa_st_visual .destination.sp{
  color: #fff;
}


.yokogawa_st__main-image {
  height: 280px;
}

.yokogawa_st__image-title {
  left: 20px;
  bottom: 20px;
  font-size: 36px;
  letter-spacing: 0.1em;
}

.yokogawa_st__thumbs {
  width:100%;
  padding: 0 0;
  gap: 12px;
}
.yokogawa_st__thumbs li {
  flex: 0 0 calc((100% - 25px) / 3);
}

.yokogawa_st__thumbs li img {
  height: 81px;
}



.stage {
  padding: 80px 0 40px;
}

.stage .c-flex-2column {
}

.stage .item_pic_2col {
  width: 100%;
}
.stage .item_text_2col {
  width: 100%;
}

.stage ul.flex-2column {
  margin: 20px auto 0;
}


.stage .event_box {
  margin: 30px auto;
/*  margin: 0px auto 30px;*/
  padding: 10px 20px;
  flex-direction: column;
}
.stage .item__txt {
  width:100%;
}
.stage .item__txt .c-f-lead {
  font-size: 21px;
  line-height: 1.6;
  margin-bottom:10px;
  text-align: center;
}
.stage .item__txt .c-f-text {
  line-height: 1.6;
}
.stage .item__event {
  width:100%;
  flex-direction: column;
}
.stage .item__event .ttl {
  width:100%;
  margin: 0 0 10px;
  background: #a0b3bd;
  padding: 8px 10px;
  color:#FFF;
  text-align: center;
}

.shop_slide_wrap > p{
margin-bottom: 0;
}

/*sec_area---------------------------*/
.sec_area {
  padding: 60px 0 0;
}
.central_area {
  flex-direction: column;
  max-width: 100%;
  margin-left: auto;
  position: relative;
}
.central_area_text {
  width: 100%;
  padding: 0 30px 20px;
}

.central_area_visual {
  width: 100%;
  margin-right: 0;
  margin-top: 0;
}
.central_area_visual figcaption {
  max-width: 100%;
  width:60%;
  margin: 0 auto;
}

.redevelop_area {
  position: relative;
  padding: 100px 0 0;
}
.redevelop_area .sttl_lead {
  position: static;
}
.redevelop_area .sttl_lead .sec__sttl {
  margin: 0 0 10px;
}
.redevelop_area figure {
    margin: 0 auto 0;
}
.redevelop_area figcaption {
  position: absolute;
  top:28%;
  right:23%;
  max-width: 100%;
  width:40%;
  margin: 0 auto;
}

.hiroshima_st_area {
  padding: 40px 0 0;
}
.hiroshima_st_area .sec__ttl {
  padding: 0 20px 0;
}
.hiroshima_st_inner {
  flex-direction: column;
  max-width: 100%;
  margin-right: auto;
  position: relative;
}
.hiroshima_st_area_text {
  width: 100%;
  padding: 0 30px 20px;
}
.hiroshima_st_area_visual {
  width: 100%;
  margin-left: 0;
  padding: 30px 0 0;
  position: relative;
}
.hiroshima_st_area_visual figcaption {
  position: absolute;
  top:-5%;
  right:20px;
  max-width: 100%;
  width:40%;
  margin: 0 auto;
}


/*lifeInfo------------------------------*/
.sec_lifeInfo {
    padding: 40px 0;
}


.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;
}

.u-flex-4column figure {
  width: calc(50% - 10px);
  margin-right: 0px;
}

/*access-----------------------------------*/
.sec_access {
  padding: 0 0 30px;
}
.sec_access .bg02 {
  /* background: url(../img/bg02.png) no-repeat;
  background-position: center top 50%;
  background-size: contain; */
  padding: 0;
}

.sec_access .ttl_wrap {
  position:static;
}
.sec_access .sec__ttl {
  position:static;
  transform: translateX(0%);

  font-size: 32px;
  color:#FFF;
  margin: 0 0 20px;
}
.sec_access .inner {
  margin-top:0;
  color:#FFF;
}
.sec_access .l-lead {
  font-size: 17px;
}

.sec_access .fig_access {
  padding: 30px 0 0;
}
.sec_access .sec__sttl {
  margin: 0 0 20px;
}

section.sec_access h3 {
  font-size: 21px;
  line-height: 1.3;
  margin-bottom: 20px;
}
section.sec_access h3.f-80 {
    font-size: 17px;
}

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




.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 {
  color:#46626f;
}

.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;
}

}
