
/* ===============================================================

 project / campaign osaka-qira-2025

=============================================================== */
.c-keyvisual{
  margin-bottom: 80px;
}
.c-imagelinkbox__icon {
  position: absolute;
  top: -6px;
  right: 2px;
  width: auto;
}

.c-keyvisualimage{
  margin-bottom: 40px;
}

.c-text.-bold,
.-bold {
  font-weight: bold;
}
.c-text.--fs-large,
.--fs-large {
  font-size: 20px;
  line-height: 2;
}
.c-text.--fs-large .point{
  font-size: 38px;
  line-height: 1;
  color: #D680A7;
}
@media screen and (max-width: 767px) {
  .c-keyvisual .c-text.-center{
    text-align: left;
  }
}
.c-title__main.-gray .-main {
  color: #ffffff;
  background-color: #4e5b73;
}

.c-title__main.-gray .-main .u-fc__accent {
  color: #d680a7 !important;
}

.p-maparea01{
  padding: 40px 0;
}
.p-maparea01 h2{
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-maparea01 .map-img {
    padding: 0 4% 20px;
    overflow-x: scroll;
    width: 100%;
  }
  .p-maparea01 .map-img > .img {
    width: 480px;
  }
}
.shop-list {
  display: flex;
  flex-wrap: wrap;
}

.shop-list li {
  margin: 0 40px 20px 0;
}

.-fs20 {
  font-size: 20px !important;
}

.white-box {
  max-width: 880px;
  margin-right: auto;
  margin-left: auto;
  padding: 0.5em 1em;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
  background-color: #ffffff;
}

@media screen and (max-width: 767px) {
  .white-box {
    font-size: 14px;
    text-align: left;
  }
}

/* sec-shop */
@media screen and (max-width: 767px) {
  #sec-shop .l-gridblock__item {
    width: 48%;
    margin: 0 4% 11% 0;
  }

  #sec-shop .l-gridblock__item:nth-of-type(2n) {
    margin-right: 0;
  }

  #sec-shop .l-gridblock__item:last-child,
  #sec-shop .l-gridblock__item:nth-last-child(2):nth-child(odd) {
    margin-bottom: 0;
  }
}

/* tbl-container */
.tbl-container {
  display: grid;
  /* grid-template-columns: repeat(4, 1fr); */
  /* grid-template-rows: repeat(6, 1fr); */
  grid-template-columns: 320px 320px 320px;
  grid-template-rows: auto;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  border-top: 1px solid #eaeaea;
  border-left: 1px solid #eaeaea;
}
.tbl-container > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 25px;
  font-size: 14px;
  border-right: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  vertical-align: middle;
  word-break: break-all;
  line-height: 1.5em;
}
.tbl-container .div1 .c-list.-caution__default{
  font-size: 12px;
}
.tbl-container > div.cell-head {
  font-weight: 700;
  background-color: #f5f1ea;
  padding: 17px 21px;
}
.tbl-container > div.cell-head .c-list.-caution__default{
  font-weight: normal;
}
.tbl-container > div.cell-head.u-dp__sp {
  background-color: #fef2f6;
}

.tbl-container > div p {
  width: 100%;
  line-height: 1.7;
}

.tbl-container > div p > .u-fc__accent {
  font-size: 24px;
}

.tbl-container > div p .note {
  font-size: 12px;
}

@media screen and (min-width: 768px) {
  .tbl-container:nth-of-type(2) {
    border-top: 0;
  }
}

@media screen and (max-width: 767px) {

  .tbl-container:nth-of-type(2) {
    margin-top: 20px;
  }

  .tbl-container > div {
    padding: 16px;
    align-items: flex-start;
  }
  .tbl-container{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-rows: auto;
  }

  .tbl-container .div1 {
    grid-area: 1 / 1 / 2 / 3;
    display: block;
  }
  .tbl-container .div2 { grid-area: 3 / 1 / 4 / 2; }
  .tbl-container .div3 { grid-area: 3 / 2 / 4 / 3; }
  .tbl-container .div4 { grid-area: 2 / 1 / 3 / 3; }
  .tbl-container .div5 { grid-area: 4 / 1 / 5 / 2; }
  .tbl-container .div6 { grid-area: 4 / 2 / 5 / 3; }
}
@media screen and (min-width: 768px) {
  .l-gridblock.\-3col .l-gridblock__item:nth-child(n+4) {
    margin-top: 40px;
  }
}
.sec-shop_ttl .-main{
  font-size: 24px;
  text-align: center;
}
.c-button.-white.-single.-anker{
  width: 445px;
  font-size: 20px;
}
.c-button.-single.-white.-anker::after {
  transform: rotate(135deg);
}
@media screen and (max-width: 767px) {
  .c-button.-white.-anke{
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #tsuruyagolf .l-gridblock__inner{
    flex-direction: column-reverse;
  }
  #tsuruyagolf .l-gridblock.\-2col .l-gridblock__item:nth-child(n+2){
    margin-top: 0;
    margin-bottom: 40px;
  }
}
#specialoffer .c-slider--simple__list {
  width: calc(100% + 42px);
  margin-left: -42px;
}
#specialoffer .c-slider--simple__list__item{
  text-align: center;
  padding-left: 42px;
}
#specialoffer .c-slider--simple__arrow span {
  border-top: 2px solid #4E5B73;
  border-right: 2px solid #4E5B73;
}
#specialoffer .c-slider--simple__dottedbox .slick-dots li.slick-active button {
  background:  #4E5B73;
}
#specialoffer .c-slider--simple__list__item .shop{
  margin-top: 16px;
}
#specialoffer .c-slider--simple__list__item .benefits{
  margin-top: 8px;
  font-size: 20px;
  font-weight: bold;
  color: #E61728;
}

#others {
  margin-bottom: 100px;
  padding-bottom: 0;
}
#others .c-anchor__list{
  justify-content: center;
}
#others .c-list__item.u-fc__accent.-center_pc{
  text-align: center;
}
@media screen and (max-width: 767px) {
  #others .c-anchor__list {
    width:100%;
    padding:0 4%;
  }
  #others .c-anchor__list.\-4col__anchor .c-anchor__list__item {
    width: calc(100% / 3);
    border-bottom: 1px solid #EAEAEA;
  }
  #others .c-anchor__list.\-4col__anchor .c-anchor__list__item:last-child {
    border-right: 1px solid #EAEAEA;
  }
  #others .c-anchor__list__item .c-link.-anchor{
    padding: 16px 0 12px;
  }
  #others .c-list__item.u-fc__accent.-center_pc{
    text-align: left;
  }
}
.c-title__sub__inner h5{
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #others .l-gridblock.\-3col .l-gridblock__item {
    width: calc( (100% - 15px) / 2 );
  }
  #others .l-gridblock.\-3col .l-gridblock__item:nth-child(2n-1) {
    margin-right: 15px;
  }
  #others .l-gridblock.\-3col .l-gridblock__item:nth-child(-n+2){
    margin-top: 0;
  }
}
#lifestyle{
  margin-bottom: 100px;
}
#hotel{
  margin-bottom: 100px;
}
#point-table{
  padding-bottom: 80px;
}
.sec {
  padding: 40px 0;
}

.bg-blue {
  background-color: #f5fcff;
}

.bg-yellow {
  background-color: #FCFBF7;
}

.bg-pink {
  background-color: #FFF6FA;
}
.c-link.-underline{
  color: #2454B3;
}