@charset "utf-8";

:root {
  --colorGreen: #00B4BE;
  --colorGrey: #544A47;
}

.tac {text-align: center;}
.pcOnly,.pcDisplay,.isPc{display:none!important}

@media screen and (min-width: 767.5px) {
  .spOnly,.spDisplay,.isSp{display:none!important}
  .pcOnly,.pcDisplay,.isPc{display:block!important}
}

.linkList01 a {
  position: relative;
  display: inline-block;
  padding-right: 1em;
}
.linkList01 a::after {
  content: '';
  display: block;
  width: .5334em;
  height: .5334em;
  border-top: 2px solid var(--colorGreen);
  border-right: 2px solid var(--colorGreen);
  position: absolute;
  top: 50%;
  right: .2667em;
  transform: translateY(-50%) rotate(45deg);
}

/* == mainVisual == */
.mainVisual01 > .inner {
  position: relative;
}
.mainVisual01 .textBlock01 {
  z-index: 2;
  color: #fff;
}
.mainVisual01 .imageBlock01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

@media screen and (max-width: 767.5px) {
  .mainVisual01 > .inner {
    height: 107.1795vw;
  }
  .mainVisual01 .textBlock01 {
    position: absolute;
    left: 50%;
    bottom: 32px;
    transform: translateX(-50%);
    width: 100%;
    text-align: center;
  }
  .mainVisual01 .textBlock01 .text01,
  .mainVisual01 .textBlock01 .text02 {
    text-shadow: 0px 0px 20px rgba(97, 62, 47, 0.898);
  }
  .mainVisual01 .textBlock01 .text01 {
    margin-bottom: 16px;
    font-size: 2.2rem;
    font-weight: 600;
  }
  .mainVisual01 .textBlock01 .text02 {
    font-size: 1.4rem;
    line-height: 1.5715;
  }
  .mainVisual01 .textBlock01 .text02 + .text02 {
    margin-top: 13px;
  }
  .mainVisual01 .imageBlock01,
  .mainVisual01 .imageBlock01 img {
    width: 100%;
    height: 107.1795vw;
  }
}

@media screen and (min-width: 767.5px) {
  .mainVisual01 > .inner {
    width: 1280px;
    height: 400px;
    margin: 0 auto;
    overflow: hidden;
  }
  .mainVisual01 .textBlock01 {
    position: relative;
    margin: 98px 0 0 140px;
  }
  .mainVisual01 .textBlock01 .text01,
  .mainVisual01 .textBlock01 .text02 {
    text-shadow: 0px 0px 11px #613E2F;
  }
  .mainVisual01 .textBlock01 .text01 {
    margin-bottom: 26px;
    font-size: 2.6rem;
    font-weight: 600;
    letter-spacing: 6px;
  }
  .mainVisual01 .textBlock01 .text02 {
    font-size: 1.5rem;
    line-height: 1.4667;
  }
  .mainVisual01 .textBlock01 .text02 + .text02 {
    margin-top: 16px;
  }
  .mainVisual01 .imageBlock01,
  .mainVisual01 .imageBlock01 img {
    width: 1280px;
    height: 400px;
  }
}

/* == section == */
.secTtl02 {
  color: var(--colorGreen);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 3px;
  text-align: center;
}

/* section01 */
.latestArticlesList .ttl {
  margin-bottom: 8px;
  color: var(--colorGrey);
  font-size: 1.4rem;
}
.latestArticlesList .offer {
  color: #8C8C8C;
  font-size: 1.1rem;
}
.latestArticlesList .bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  width: 100%;
  color: #8C8C8C;
  font-size: 1.1rem;
}
.latestArticlesList a {
  height: 100%;
}
.latestArticlesList .img {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
}
.latestArticlesList .img .label {
  display: inline-block;
  border-radius: 4px;
  background-color: var(--colorGreen);
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
}
.btnMoreWrap01 {
  margin-top: 24px;
  text-align: center;
}
.btnMore01 {
  display: inline-block;
  width: 200px;
  padding: 15px 10px;
  border-radius: 10px;
  background-color: #F4F8F8;
  color: var(--colorGreen);
  font-size: 1.5rem;
}
.btnMore01 > span {
  position: relative;
  display: inline-block;
  padding: 0 20px 0 10px;
}
.btnMore01 > span::after {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  width: 10px;
  height: 10px;
  margin-top: -2px;
  border-left: 2px solid var(--colorGreen);
  border-bottom: 2px solid var(--colorGreen);
}
.btnMoreWrap01.-load,
.btnMoreWrap01.-hide .btnMore01 {
  display: none;
}
.btnMoreWrap01.-hide .moreCategoryBlock01 {
  display: block;
}
.moreCategoryBlock01 {
  display: none;
  border-radius: 32px;
  border: 2px solid #E9E9E9;
  background-color: #fff;
}
.moreCategoryBlock01 > .ttl {
  color: var(--colorGreen);
  font-weight: 500;
  letter-spacing: 1px;
}
.moreCategoryList > .item > span {
  position: relative;
}
.moreCategoryList > .item > span {
  display: inline-block;
  padding-right: 14px;
}
.moreCategoryList > .item > span::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 9px;
  height: 9px;
  margin-top: 1px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: translateY(-50%) rotate(-45deg);
}
.moreCategoryList > .item.lunch > span::after {border-color: #F08E56;}
.moreCategoryList > .item.nightout > span::after {border-color: #000;}
.moreCategoryList > .item.snap > span::after {border-color: #c55093;}
.moreCategoryList > .item.store > span::after {border-color: #e6ddd9;}
.moreCategoryList > .item.news > span::after {border-color: #53bba9;}
.moreCategoryList > .item.trip > span::after {border-color: #c8eee4;}
.moreCategoryList > .item.gift > span::after {border-color: #ad8bab;}
.moreCategoryList > .item.geek > span::after {border-color: #f2c327;}
.moreCategoryList > .item.interview > span::after {border-color: #fee69c;}
.moreCategoryList > .item.ai > span::after {border-color: #e9e9e9;}

@media screen and (max-width: 767.5px) {
  .topSection > .inner,
  .topSection > .innerWrap > .inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .secTtl02 {
    margin-bottom: 25px;
    font-size: 2rem;
  }
  .topSection.section01 {
    margin-top: 26px;
  }
  .topSection.section01 > .inner {
    min-height: 120px;
    padding-top: 23px;
    background: url(/article/images/top_bg_01_sp.png) top center no-repeat;
    background-size: 100% auto;
  }
  .latestArticlesList > li + li {
    margin-top: 20px;
  }
  .latestArticlesList a {
    display: flex;
    justify-content: space-between;
  }
  .latestArticlesList .img {
    width: 43.3334vw;
    min-height: 24.2667vw;
    background-size: cover;
  }
  .latestArticlesList .img .label {
    margin: 4px 0 0 4px;
    padding: 3px 4px;
  }
  .latestArticlesList .ttl {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
  }
  .latestArticlesList .pr .ttl {
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
  .latestArticlesList .textBlock {
    position: relative;
    padding-bottom: 1.7rem;
    width: 43.3334vw;
  }
  .moreCategoryBlock01 {
    padding: 26px 10px 35px;
  }
  .moreCategoryBlock01 > .ttl {
    font-size: 1.6rem;
  }
  .moreCategoryBlock01 .logo {
    height: 13px;
  }
  .moreCategoryBlock01 .logo.ai {
    height: 17px;
  }
  .moreCategoryList {
    margin-top: 23px;
  }
  .moreCategoryList > .item + .item {
    margin-top: 19px;
  }
}

@media screen and (min-width: 767.5px) {
  .topSection > .inner,
  .topSection > .innerWrap > .inner {
    width: 864px;
    margin: 0 auto;
  }
  .secTtl02 {
    margin-bottom: 40px;
    font-size: 2.4rem;
  }
  .topSection.section01 {
    margin-top: 52px;
  }
  .topSection.section01 > .inner {
    min-height: 200px;
    background: url(/article/images/top_bg_01.png) top center no-repeat;
  }
  .latestArticlesList {
    display: flex;
    flex-wrap: wrap;
  }
  .latestArticlesList > li {
    width: 264px;
  }
  .latestArticlesList > li:nth-child(3n + 2),
  .latestArticlesList > li:nth-child(3n + 3) {
    margin-left: 31px;
  }
  .latestArticlesList > li:nth-child(n + 4) {
    margin-top: 50px;
  }
  .latestArticlesList .img {
    height: 139px;
    margin-bottom: 15px;
  }
  .latestArticlesList .img .label {
    width: 60px;
    margin: 6px 0 0 6px;
    padding: 3px;
  }
  .latestArticlesList a {
    position: relative;
    display: block;
    padding-bottom: 1.7rem;
  }
  .latestArticlesList .ttl {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
  }
  .btnMoreWrap01 {
    margin-top: 56px;
  }
  .btnMore01 {
    cursor: pointer;
  }
  .moreCategoryBlock01 {
    padding: 31px 50px 38px;
  }
  .moreCategoryBlock01 > .ttl {
    font-size: 2rem;
  }
  .moreCategoryBlock01 .logo {
    height: 14px;
  }
  .moreCategoryBlock01 .logo.ai {
    height: 19px;
  }
  .moreCategoryList {
    display: flex;
    flex-wrap: wrap;
    margin-top: 23px;
  }
  .moreCategoryList > .item {
    width: 33.3%;
  }
  .moreCategoryList > .item:nth-child(n+4) {
    margin-top: 21px;
  }
}

/* section02 */
.topSection.section02 {
  position: relative;
  background: linear-gradient(transparent 71%, rgba(246, 238, 224, 0.5) 71%);
}
.section02 .textBox01 {
  border-radius: 32px;
  color: var(--colorGrey);
}
.section02 .textBox01 .linkBlock01 a {
  color: var(--colorGreen);
}
.section02 .imgSp01,
.section02 .imgPc01,
.section02 .imgPc02 {
  position: absolute;
}
.section02 .textBox01 .linkList01 {
  font-size: 1.5rem;
}
.section02 .textBox01 .linkList01 > li + li {
  margin-top: 3px;
}
.section02 .textBox01 .logo01 {
  width: 22px;
  height: 22px;
  margin-right: 5px;
  vertical-align: middle;
}

@media screen and (max-width: 767.5px) {
  .topSection.section02 {
    margin-top: 73px;
    padding-bottom: 40px;
  }
  .section02 .textBox01 {
    margin-top: 24.6154vw;
    padding: 16.6667vw 20px 28px;
    background: #fff url(/article/images/top_bg_02_sp.png) 0 0 no-repeat;
    background-size: cover;
    font-size: 1.4rem;
    line-height: 1.4286;
    text-align: center;
  }
  .section02 .textBox01 > p + p {
    margin-top: 16px;
  }
  .section02 .textBox01 .linkBlock01 {
    margin-top: 23px;
  }
  .section02 .imgSp01 {
    top: 55px;
    left: 0;
  }
}
@media screen and (max-width: 375px) {
  .section02 .textBox01 {
    padding: 16.6667vw 10px 28px;
  }
}

@media screen and (min-width: 767.5px) {
  .topSection.section02 {
    margin-top: 115px;
    padding-bottom: 56px;
  }
  .topSection.section02 > .innerWrap {
    position: relative;
    width: 1280px;
    margin-left: auto;
    margin-right: auto;
  }
  .topSection.section02 > .innerWrap > .inner {
    width: 1004px;
  }
  .section02 .textBox01 {
    width: 608px;
    padding: 40px 64px;
    background: #fff url(/article/images/top_bg_02.png) 0 0 no-repeat;
    background-size: cover;
    font-size: 1.5rem;
    line-height: 1.4667;
  }
  .section02 .textBox01 > p + p {
    margin-top: 18px;
  }
  .section02 .textBox01 .linkBlock01 {
    margin-top: 30px;
    margin-right: 32px;
    text-align: right;
  }
  .section02 .imgPc01 {
    top: 58px;
    right: 0;
  }
  .section02 .imgPc02 {
    top: 158px;
    left: 0;
  }
}

/* section03 */
.topSection.section03 {
  background-color: rgba(246, 238, 224, 0.5);
}
.topAsideList {
  display: flex;
  flex-wrap: wrap;
}
.topAsideList a {
  color: var(--colorGrey);
}
.topAsideList .photo {
  border-style: solid;
  border-bottom-width: 4px;
}
.topAsideList .lunch .photo {border-color: #F08E56;}
.topAsideList .nightout .photo {border-color: #000;}
.topAsideList .snap .photo {border-color: #c55093;}
.topAsideList .store .photo {border-color: #e6ddd9;}
.topAsideList .news .photo {border-color: #53bba9;}
.topAsideList .trip .photo {border-color: #c8eee4;}
.topAsideList .gift .photo {border-color: #ad8bab;}
.topAsideList .geek .photo {border-color: #f2c327;}
.topAsideList .interview .photo {border-color: #fee69c;}
.topAsideList .ai .photo {border-color: #e9e9e9;}
.topAsideList .logo {
  text-align: center;
}
.illustBlock01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.illustBlock01 .balloon01 {
  position: relative;
  border-radius: 12px;
  background-color: #fff;
  color: var(--colorGrey);
}
.illustBlock01 .balloon01::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 767.5px) {
  .topSection.section03 {
    padding: 41px 0;
  }
  .topAsideList > li {
    width: 48%;
  }
  .topAsideList > li:nth-child(even) {
    margin-left: 4%;
  }
  .topAsideList > li:nth-child(n+3) {
    margin-top: 31px;
  }
  .topAsideList .logo {
    margin-top: 10px;
  }
  .topAsideList .logo > img {
    height: 13px;
  }
  .topAsideList .logo.ai > img {
    height: 17px;
  }
  .topAsideList .description {
    margin-top: 11px;
    font-size: 1.3rem;
    line-height: 1.5385;
  }
  .illustBlock01 {
    width: 320px;
    margin: 32px auto 0;
  }
  .illustBlock01 .img01 {
    height: 120px;
  }
  .illustBlock01 .balloon01 {
    width: 250px;
    padding: 17px 20px;
    font-size: 1.3rem;
    line-height: 1.5385;
  }
  .illustBlock01 .balloon01::before {
    left: -11px;
    width:0;
    height:0;
    border-style:solid;
    border-width: 8px 12px 8px 0;
    border-color: transparent #fff transparent transparent;
  }
}

@media screen and (min-width: 767.5px) {
  .topSection.section03 {
    padding: 66px 0 57px;
  }
  .topSection.section03 > .inner {
    position: relative;
  }
  .topAsideList > li {
    width: 264px;
  }
  .topAsideList > li:nth-child(3n+2),
  .topAsideList > li:nth-child(3n+3) {
    margin-left: 36px;
  }
  .topAsideList > li:nth-child(n+4) {
    margin-top: 50px;
  }
  .topAsideList .logo {
    margin-top: 16px;
  }
  .topAsideList .logo > img {
    height: 17px;
  }
  .topAsideList .logo.ai > img {
    height: 22px;
  }
  .topAsideList .description {
    margin-top: 10px;
    font-size: 1.4rem;
    line-height: 1.4286;
  }
  .illustBlock01 {
    position: absolute;
    right: 55px;
    bottom: 43px;
    width: 448px;
  }
  .illustBlock01 .img01 {
    height: 184px;
  }
  .illustBlock01 .balloon01 {
    width: 350px;
    padding: 17px 25px;
    font-size: 1.5rem;
    line-height: 1.4667;
    box-shadow: 0px 0px 8px 0px #00000026;
  }
  .illustBlock01 .balloon01::before {
    left: -16px;
    width: 16px;
    height: 14px;
    background: url(/article/images/top_img_05.png) 0 0 no-repeat;
  }
}

/* appWrap02 */
.appWrap02 .heading01 {
  display: flex;
  align-items: center;
  color: var(--colorGreen);
  font-weight: 500;
  letter-spacing: 1px;
}
.appWrap02 .stepList01 {
  text-align: center;
}
.appWrap02 .stepList01 .box01 {
  border-radius: 32px;
  background-color: #e6f8f9;
}
.appWrap02 .stepList01 .text01 {
  color: var(--colorGreen);
  font-weight: 600;
  font-size: 2rem;
}
.appWrap02 .stepList01 .text02 {
  color: var(--colorGrey);
  font-size: 1.5rem;
  line-height: 1.4667;
}

@media screen and (max-width: 767.5px) {
  .topSection.appWrap02 {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .appWrap02 .heading01 {
    flex-direction: column;
  }
  .appWrap02 .heading01 .logo {
    width: 48px;
  }
  .appWrap02 .stepList01 {
    margin-top: 24px;
  }
  .appWrap02 .stepList01 .box01 {
    padding-top: 14px;
  }
  .appWrap02 .heading01 .txt01 {
    margin-top: 8px;
    font-size: 1.6rem;
    line-height: 1.5625;
    text-align: center;
  }
  .appWrap02 .stepList01 .box01 > img {
    height: 191px;
  }
  .appWrap02 .stepList01 .text01 {
    margin-top: 10px;
    margin-bottom: 2px;
  }
  .appWrap02 .stepList01 > li + li {
    margin-top: 23px;
  }
  .appWrap02 .bnrList01 {
    margin-top: 80px;
  }
  .appWrap02 .bnrList01 > li + li {
    margin-top: 8px;
  }
}
@media screen and (max-width: 375px) {
  .appWrap02 .heading01 {
    letter-spacing: 0;
  }
}

@media screen and (min-width: 767.5px) {
  .topSection.appWrap02 {
    margin-top: 64px;
    margin-bottom: 56px;
  }
  .appWrap02 .heading01 {
    justify-content: center;
  }
  .appWrap02 .heading01 .logo {
    width: 100px;
    margin-right: 24px;
  }
  .appWrap02 .heading01 .txt01 {
    font-size: 2rem;
    line-height: 1.5;
  }
  .appWrap02 .stepList01 {
    display: flex;
    justify-content: space-between;
    margin-top: 40px
  }
  .appWrap02 .stepList01 .box01 {
    padding-top: 16px;
  }
  .appWrap02 .stepList01 .box01 img {
    height: 265px;
  }
  .appWrap02 .stepList01 > li {
    width: 400px;
  }
  .appWrap02 .stepList01 .text01 {
    margin-top: 22px;
    margin-bottom: 6px;
  }
  .appWrap02 .bnrList01 {
    display: flex;
    justify-content: center;
    margin-top: 118px;
  }
  .appWrap02 .bnrList01 > li:not(:first-child) {
    margin-left: 32px;
  }
}
