@charset "EUC-JP";
.slider_top {
    padding-top: 8px;
  }
.slick-slide{
  margin-right: 1vw!important;
  margin-left: 1vw!important;
}
/*dots*/
.slider_top .slick-dots li.slick-active button:before {
  color: #2C4617;
}
/* arrow */
.slider_top .slick-next {
  right: 0;
}
.slider_top .slick-prev {
  left: 0;
  z-index: 1;
}
.slider_top .slick-prev,
.slider_top .slick-next {
  width: 40px;
  height: 40px;
}
.slider_top .slick-prev:before,
.slider_top .slick-next:before {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  .slider_top .slick-prev,
  .slider_top .slick-next {
    width: 30px;
    height: 30px;
  }
  .slider_top .slick-prev:before,
  .slider_top .slick-next:before {
    font-size: 30px;
  }
}
/*** When no slideshow is configured ***/
.c-top-firstView{
  --firstViewSlideHeight:100vh;
}
.c-top-firstView.withNews{
  --firstViewSlideHeight:calc(100vh - 70px);
}
.c-top-firstView{
  width:100%;
  height:var(--firstViewSlideHeight);
  overflow:hidden;
}
.c-top-firstView a,
.c-top-firstView img,
.c-top-firstView picture{
  width:100%;
  height:var(--firstViewSlideHeight);
  display:block;
  outline:none;
}
.c-top-firstView img{
  object-fit:cover;
  object-position:center;
}
.c-top-firstView a:hover{
  opacity:1;
}

@media screen and (max-width:1024px){
  .c-top-firstView{
    --firstViewSlideHeight:calc(100vh - 60px);
    --firstViewSlideHeight:calc(100svh - 60px);
  }
  .c-top-firstView.withNews{
    --firstViewSlideHeight:calc(100vh - 60px - 100px);
    --firstViewSlideHeight:calc(100svh - 60px - 100px);
  }
}

/* NEWS */
.head-title{
  display: flex;
  flex-direction: column;
  color: #7F9278;
  margin-bottom: 30px;
}
.head-sub{
  font-size: 14px;
}
.head-main{
  font-size: 24px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .head-main{
    font-size: 22px;
  }
}
.c-top-news{
  --topNewsHeight:70px;
  width:100%;
  height:var(--topNewsHeight);
  position:relative;
  z-index:2;
}
.c-top-news::before{
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  background:#A8B5A2;
}
.c-top-news .l-content{
  height:var(--topNewsHeight);
  overflow:hidden;
  position:relative;
}

@media screen and (min-width:1025px){
  .c-top-news .l-content{
    padding-right:120px;
  }
}
.c-top-news span{
  color:#FAF6F5;
}
.c-top-news a{
  color:var(--defaultColor);
}
.c-top-news a,.c-top-news span{
  font-size:16px;
  height:var(--topNewsHeight);
  line-height:var(--topNewsHeight);
  white-space:nowrap;
  width:100%;
  text-overflow:ellipsis;
  display:block;
  overflow:hidden;
}
.c-top-news a:hover{
  text-decoration:underline;
}
.c-top-newsListNext,.c-top-newsListPrev{
  width:60px;
  height:var(--topNewsHeight);
  position:absolute;
  top:0;
  right:0;
  cursor:pointer;
  z-index:3;
}
.c-top-newsListPrev{
  right:60px;
}
.c-top-newsListNext::before,.c-top-newsListPrev::before{
  content:"";
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0;
  background:#A8B5A2;
  opacity:0.05;
}
.c-top-newsListNext::after,.c-top-newsListPrev::after{
  content:"";
  width:10px;
  height:10px;
  position:absolute;
  top:calc(50% - 5px);
  transition:right 0.2s ease-out,left 0.2s ease-out;
}
.c-top-newsListPrev::after{
  right:5px;
  border-top:1px solid #FFFFFF;
  border-left:1px solid #FFFFFF;
  transform:rotate(-45deg);
}
.c-top-newsListNext::after{
  left:5px;
  border-top:1px solid #FFFFFF;
  border-right:1px solid #FFFFFF;
  transform:rotate(45deg);
}

@media screen and (max-width:1024px){
  .c-top-news{
    --topNewsHeight:100px;
    display:flex;
    align-items:center;
  }
  .c-top-news::before{
    width:100%;
  }
  .c-top-news a,.c-top-news span{
    font-size:14px;
    line-height:20px;
    height:60px;
    white-space:normal;
    width:100%;
    padding-right:0;
    margin-top:20px;
    display:-webkit-box;
    display:box;
    overflow:hidden;
    -webkit-line-clamp:3;
    line-clamp:3;
    -webkit-box-orient:vertical;
    box-orient:vertical;
  }
  .c-top-newsListNext,.c-top-newsListPrev{
    width:35px;
    height:35px;
  }
  .c-top-newsListPrev{
    right:37px;
  }
  .c-top-newsListNext::before,.c-top-newsListPrev::before{
    content:none;
  }
  .c-top-newsListNext::after,.c-top-newsListPrev::after{
    content:"";
    width:6px;
    height:6px;
    position:absolute;
    top:calc(50% - 3px);
    transition:right 0.2s ease-out,left 0.2s ease-out;
  }
  .c-top-newsListPrev::after{
    right:5px;
    border-top:1px solid #FFFFFF;
    border-left:1px solid #FFFFFF;
    transform:rotate(-45deg);
  }
  .c-top-newsListNext::after{
    left:5px;
    border-top:1px solid #FFFFFF;
    border-right:1px solid #FFFFFF;
    transform:rotate(45deg);
  }
}
.c-top-information{
  margin-top:60px;
}
.c-top-informationImage{
  width:100%;
  position:relative;
  background-image: url(<{$conceptimg}>);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.c-top-informationImage::before{
  content:"";
  padding-top:59.61%;
  display:block;
}
.c-top-informationMessage{
  width: 1020px;
  max-width: 100%;
  padding: 60px;
  line-height: 200%;
  margin: 60px;
  background: #FAF9F6;
  border-radius: 12px;
}

@media screen and (max-width:1024px){
  .c-top-informationMessage{
    width: 100%;
    max-width: 100%;
    padding: 40px 30px;
    line-height: 180%;
    border-radius: 12px;
    margin-inline: auto;
  }
}
.c-top-interval,
.c-top-ranking,
.c-top-message,
.c-top-freespace{
  margin-top:100px;
}

@media screen and (max-width:1024px){
  .c-top-interval,
  .c-top-ranking,
  .c-top-message,
  .c-top-freespace{
    margin-top:90px;
  }
}
.c-top-intervalImage{
  width:100%;
  max-height: 40vw;
  position:relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.c-top-intervalImage img{
  position:static;
}
.c-top-ranking .c-sliderPrev{
  position:absolute;
  right:52px;
  top:50%;
  transform:translatey(-50%);
}
.c-top-ranking .c-sliderNext{
  position:absolute;
  right:0;
  top:50%;
  transform:translatey(-50%);
}

@media screen and (max-width:1024px){
  .c-top-ranking .c-sliderPrev{
    right:37px;
  }
}
/** MESSAGE **/
.c-top-message{
  position: relative;
  display: flex;
  align-items: center;
  gap: 90px;
  padding: 60px;
  background: #F1F5EE;
}
.c-top-message::before{
  content: "";
  display: inline-block;
  width: 130px;
  height: 144px;
  background-image: url('https://img21.shop-pro.jp/PA01523/239/etc_base64/YmdfaW1hZ2UwMQ.png?cmsp_timestamp=20260623143943');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 40px;
  left: 20px;
}
.c-top-message::after{
  content: "";
  display: inline-block;
  width: 327px;
  height: 278px;
  background-image: url('https://img21.shop-pro.jp/PA01523/239/etc_base64/YmdfaW1hZ2UwMg.png?cmsp_timestamp=20260623144757');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
  right:0;
}
.c-top-messageImage{
  padding-block: 100px;
}
.c-top-messageManagerName{
  color: #7F9278;
  font-size: 28px;
  letter-spacing: 4%;
}

@media screen and (max-width:980px){
  .c-top-message {
    flex-direction: column;
    gap: 60px;
    padding: 60px 0;
  }
  .c-top-messageImage{
    width: 100%;
    position: relative;
    order: 1;
    padding: 0 18px;
  }
  .c-top-message .l-content{
    display:block;
  }
  .c-top-messageManager{
    width:100%;
    text-align:center;
  }
  .c-top-messageComment{
    width:100%;
    line-height:180%;
    margin-top:40px;
  }
  .c-top-messageManagerName{
    font-size:20px;
  }
  .c-top-messageLink{
    display:inline-block;
    margin-top:1em;
    color:var(--defaultColor);
    font-size:16px;
    line-height:150%;
    position:relative;
  }
}
/* RECOMMEND  */
.c-recommend{
  background: #F1F5EE;
  padding-block: 60px;
}

/* CATEGORY MENU */
.category-menu {
  margin-block: 60px 40px;
}
.category-menu ul{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px;
  width: 100%;
  padding-inline: 60px;
  margin-inline: auto;
}
@media screen and (max-width:1560px){
  .category-menu ul{
    max-width: 800px;
  }
}
.category-menu li {
  max-width: 200px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.category-menu p {
  padding-top: 8px;
}

.category-menu-sec {
  margin-block: 40px 60px;
}
.category-menu-sec ul{
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 50px;
  margin-inline: 70px;
}
.category-menu-sec li {
  max-width: 200px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.category-menu-sec p {
  padding-top: 8px;
}
@media screen and (max-width:767px){
  .category-menu ul {
    gap: 24px;
    padding-inline: 0;
    margin: 32px 0 0;
  }
  .category-menu li {
    width: calc((100% - 24px) / 2);
    font-size: 15px;
  }
  .category-menu-sec {
    margin-top: 60px;
  }
  .category-menu-sec ul {
    flex-wrap: wrap;
    gap: 16px;
    margin: 32px 0 0;
  }
  .category-menu-sec li {
    width: calc((100% - (16px *2)) /3);
    font-size: 15px;
  }
  
}

/** SPECIAL FEATURE **/
.all-items-btn {
  display: block;
  text-align: center;
  margin-top: 60px;
}

/** BLOG **/
.p-column-inner {
  width: min(100% - 40px, 1080px);
  margin: 0 auto;
}

.p-column-head {
  text-align: center;
  margin-bottom: 60px;
}

.p-column-title {
  margin: 0;
  color: #7F9278;
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.14em;
}

.p-column-lead {
  margin: 22px 0 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.08em;
}

.p-column-body {
  display: grid;
  grid-template-columns: 450px 550px;
  align-items: start;
  justify-content: space-between;
  gap: 80px;
}

/* 左：注目記事 */
.p-column-main-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.p-column-main-image {
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 450 / 270;
}

.p-column-main-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.p-column-main-content {
  margin-top: 20px;
}

.p-column-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 3px;
  background: #7F9278;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
}

.p-column-main-title {
  margin: 12px 0 0;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.06em;
}

/* 右：よく読まれている記事 */
.p-column-side {
  padding: 46px 40px 42px;
  border-radius: 16px 0 0 16px;
  background: #f4f7ef;
}

.p-column-side-heading {
  margin: 0 0 30px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.08em;
}

.p-column-side-list {
  display: grid;
  gap: 30px;
}

.p-column-side-link {
  display: grid;
  grid-template-columns: 200px 1fr;
  align-items: center;
  gap: 30px;
  color: inherit;
  text-decoration: none;
}

.p-column-side-image {
  overflow: hidden;
  border-radius: 12px;
  aspect-ratio: 200 / 120;
}

.p-column-side-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.p-column-side-title {
  margin: 12px 0 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
.p-column-button-wrap {
  text-align: center;
  margin-top: 60px;
}
@media screen and (max-width:980px){
  .p-column-inner {
    margin-inline: 18px;
  }
  .p-column-head {
    margin-bottom: 48px;
  }
  .p-column-lead {
    font-size: 14px;
  }
  .p-column-body {
    display: flex;
    flex-direction: column;
    gap: 60px;
  }
  .p-column-side {
    padding: 40px 24px;
    margin-right: -18px;
  }
  .p-column-side-heading {
    font-size: 20px;
    margin: 0 0 24px;
  }
  .p-column-side-link {
    grid-template-columns: 140px 1fr;
    gap: 20px;
  }
  .p-column-side-title {
    font-size: 14px;
  }
  .p-column-button-wrap {
    margin-block: 56px 0;
  }
}
/** SUPPORT **/
.bg-line{
  position: relative;
  background: #FAF9F6;
  padding-block: 100px;
  overflow: hidden;
}
.bg-line::before{
  content: "";
  position: absolute;
  top: 40px;
  left: 0;
  right: 0;
  bottom: 0;

  background-image: url('https://img21.shop-pro.jp/PA01523/239/etc_base64/YmctbGluZQ.png?cmsp_timestamp=20260623190404');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;

  z-index: 0;
  pointer-events: none;
}
.support-section {
  padding: 90px 20px 100px;
}
.support-inner {
  position: relative;
  max-width: 1120px;
  min-height: 760px;
  margin: 0 auto;
}

.support-text {
  position: absolute;
  top: 260px;
  left: 0;
  z-index: 2;
}

.support-label {
  margin: 0 0 18px;
  font-size: 14px;
  letter-spacing: 0.08em;
  color: #222;
}

.support-text h2 {
  margin: 0 0 34px;
  font-size: 28px;
  line-height: 1.6;
  letter-spacing: 0.12em;
  color: #819577;
  font-weight: 600;
}

.support-desc {
  margin: 0;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #222;
  font-weight: 600;
}

.support-images {
  position: relative;
  height: 620px;
}

.support-img {
  position: absolute;
  display: block;
  object-fit: cover;
  border-radius: 10px;
}

.img-main {
  top: 0;
  right: 120px;
  width: 340px;
  height: 430px;
}

.img-sub01 {
  top: 300px;
  right: 405px;
  width: 220px;
  height: 315px;
}

.img-sub02 {
  top: 485px;
  right: 0;
  width: 250px;
  height: 190px;
}

.support-btn {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 350px;
  padding: 18px 50px 16px;
  background: #809476;
  color: #fff;
  text-align: center;
  text-decoration: none;
  border-radius: 7px;
  box-sizing: border-box;
}

.support-btn-wrap {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: min(100%, 350px);
  transform: translateX(-50%);
}

.support-btn-wrap .common-btn {
  width: 100%;
}

/* SP */
@media (max-width: 1024px) {
  .bg-line {
    padding-block: 60px;
  }
  .bg-line::before {
    top: 0;
  }
  .support-section {
    padding: 48px 18px 0;
  }

  .support-inner {
    max-width: 390px;
    min-height: auto;
    margin: 0 auto;
  }

  .support-text {
    position: static;
    text-align: center;
    margin-bottom: 58px;
  }

  .support-label {
    margin-bottom: 14px;
    font-size: 14px;
  }

  .support-text h2 {
    margin-bottom: 26px;
    font-size: 22px;
    letter-spacing: 0.12em;
  }

  .support-desc {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.06em;
  }

  .support-img {
    position: absolute;
    border-radius: 7px;
    object-fit: cover;
  }

  .img-main {
    top: 0;
    right: 16px;
    width: 78%;
    height: 300px;
  }

  .img-sub01 {
    top: 245px;
    left: 0;
    width: 44%;
    height: 220px;
    z-index: 2;
  }

  .img-sub02 {
    top: 365px;
    right: 0;
    width: 44%;
    height: 115px;
    z-index: 2;
  }
}
/** GOOD INFO **/
.c-lineIcon,
.c-mailIcon,
.c-docEditIcon{
  display: block;
  color: #7F9278;
}
.c-lineIcon {
  width: 36px;
  height: 36px;
}
.c-mailIcon {
  width: 32px;
  height: 26px;
}
.c-docEditIcon {
  width: 34px;
  height: 35px;
}
.txt-c{
  text-align:center;
}
.good-info .txt-c{
  margin-block: 30px;
}
.good-info ul{
  display: flex;
  justify-content: center;
  gap: 60px;
  list-style: none;
  margin: 0;
}
.good-info li a{
  display: block;
  max-width: 300px;
  width: 100%;
  padding: 40px 25px;
  background: #F1F5EE;
  border-radius: 8px;
}
.good-info-box{
  display: flex;
  align-items: center;
  gap: 20px;
}
.good-info-boxtxt h3{
  font-size: 16px;
  margin: 0;
}
@media (max-width: 767px) {
  .good-info ul {
    flex-direction: column;
    gap: 30px;
  }
  .good-info li a {
    max-width: 100%;
    padding: 20px;
  }
}








