@charset "utf-8";

.bg-grid { background: url("../img/home/grid.png");}
.t-pink { color: #F26FAB; }


.wave { position: relative; padding: 80px 0; }
.wave-t,.wave-b { position: relative; }
.wave::before,
.wave::after,
.wave-t::before,
.wave-b::after { content: ''; width: 100%; height: 17px; background: inherit; position: absolute; left: 0; right: 0; display: block; margin: auto; }
.wave-t::before,
.wave::before  { bottom: 100%; mask: url("../img/home/wave-top.svg") repeat-x center center / auto 100%; }
.wave::after,
.wave-b::after{ top: 100%; mask: url("../img/home/wave-bottom.svg") repeat-x center center / auto 100%; }

.sp-only  { display: none; }
@media screen and (max-width: 900px) {
  .pc-only { display: none; }
  .sp-only { display: inline; }
}


.page-title { text-align: center; padding: 225px 0 100px; background: #FFE5EB; position: relative; margin-bottom: 80px; }
.page-title::before { content: ''; width: 100%; height: 120%; background: url(../img/common/head.png) no-repeat center center / auto 100%; display: block; position: absolute; top: 0; left: 0; right: 0;  margin: auto; z-index: 3; }
.page-title::after { content: ''; width: 100%; height: 17px; background: inherit; position: absolute; left: 0; right: 0; display: block; margin: auto; top: 100%; mask: url("../img/home/wave-bottom.svg") repeat-x center center / auto 100%; }
.page-title span { display: block; color: #F26FAB; font-size: 4em; display: block; font-family: "Plus Jakarta Sans", sans-serif;}


@media screen and (max-width: 900px) {
  .page-title  { padding: 125px 0 60px; }
  .page-title span { font-size: 3rem; }
  
}

@media screen and (max-width: 600px) {
  .page-title  { padding: 80px 0 50px; }
  .page-title span { font-size: 2.5rem; }
  
}
.columnConts { display: flex; justify-content: space-between; }
.columnConts .mainColumn { width: 70%; }
.columnConts .sideColumn { width: 25%; }

@media screen and (max-width: 900px) {
  .columnConts { flex-direction: column; }
  .columnConts .mainColumn { width: 100%; margin-bottom: 5rem;  }
  .columnConts .sideColumn { width: 100%; }
}

.title-side { border-bottom: 2px solid #F26FAB; font-size: 1.25rem; font-family: "Plus Jakarta Sans", sans-serif; font-weight: 600; padding-bottom: .5em; }

.backnumber .title-side { border-color: #50C270; }

.btn-s,
a.btn-s{ mask: url("../img/common/button-s.png") no-repeat center center / 100% 100%; display: flex; align-items: center; justify-content: center; padding: 1em; font-size: 1.25rem; font-weight: bold; color: #FFF; }

.btn-s,
a.btn-s{ mask: url("../img/common/button-s.png") no-repeat center center / 100% 100%; display: flex; align-items: center; justify-content: center; padding: 1em; font-size: 1.25rem; font-weight: bold; color: #FFF; }

.btn-l,
a.btn-l{ mask: url("../img/common/btn-l.png") no-repeat center center / 100% 100%; display: flex; align-items: center; justify-content: center; padding: 1em; font-size: 1.25rem; font-weight: bold; color: #FFF; }
.btn-s .icon { margin-right: .5em; }
.btn-yellow { background: #F2B313; }
.btn-blue { background: #4F9AD7; }
.btn-pink { background: #F26FAB; }

.common-cta { background: #FFF; position: relative; padding: 50px 0; text-align: center; }
.common-cta .deco-l { position: absolute; top: 50%; left: 0; margin: auto; pointer-events: none; z-index: 2; transform: translateY(-50%); }
.common-cta .deco-r { position: absolute; top: 50%; right: 0; margin: auto; pointer-events: none; z-index: 2;transform: translateY(-50%); }
.title-cta { width: 900px; margin: 0 auto 40px; max-width: 90%; position: relative; z-index: 3; }
.cta-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1em;  position: relative; z-index:3;  }

@media screen and (max-width: 900px) {
  .cta-links { grid-template-columns: 1fr; gap: .5em; max-width: 400px; margin: 0 auto; }
  
  .common-cta .deco-l { width: 20%; transform: none; bottom: -5%;  top: auto; }
  .common-cta .deco-r { width: 20%; transform: none; top: -5%; }
  
}
.lead { text-align: center; line-height: 2; font-size: 1.25rem; }

@media screen and (max-width: 900px) {
  .lead { font-size: 1rem; }
  
}


.home-lead { background: #FFF; }
.title-lead { width: 90%; max-width: 960px; margin: 0 auto 2em; }
.home-lead .cta-links { margin-top: 2em; }


.mainvisual { padding: 80px 0; background:#FFE5EB url(../img/home/bg-main.png) no-repeat center center; overflow: hidden; position: relative; }
.mv-slider { width: 930px; height: 850px; margin: 0 auto; overflow: visible; position: relative; }
.mv-slider .swiper-slide { width: 310px; transition: width .3s; margin-top: 150px; }
.mv-slider .swiper-slide-active { width: 100%; margin-top: 0; }
.mainvisual .maincopy { position: absolute; left: 5%; bottom: 3rem; margin: auto; z-index: 10; }

.mv-button-prev,
.mv-button-next  { position: absolute; top: 30%;  margin: auto; width: 90px; height: 90px; z-index: 10; }
.mv-button-prev { left: -60px;  }
.mv-button-next { right: -60px;  }

@media screen and (max-width: 900px) {
  .mainvisual { padding-bottom: 50vw; background-size: 150% auto; }
  .mv-slider { width: 80vw; height: 70vw; }
  .mv-slider .swiper-slide { width: 100%; margin-top: 0;  }
  .mainvisual .maincopy { width: 70%; }
  
  .mv-button-prev,
  .mv-button-next { width: 60px; height: 60px; }
  
  .mv-button-prev { left: -40px;  }
  .mv-button-next { right: -40px;  }
}

.home-brand { padding: 85px 0; background: #FFD7E0 url("../img/home/grid.png") repeat center center / 50px 50px; }
.title-brand { width: 450px; max-width: 70%; margin: 0 auto 30px; }
.home-brand .list { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; }
.home-brand .list .item { background: #FFF; box-shadow: 6px 6px 0 0 #FFACBE; border-radius: 20px; flex-shrink: 0; flex-grow: 1;   text-align: center; padding: 1.5em .5em; position: relative; }
.home-brand .list .item:nth-child(-n + 3) { width: 30%; }
.home-brand .list .item dt { font-size: 1.125rem; margin-bottom: .5em; }
.home-brand .list .item dd { line-height: 1.2;  }
.home-brand .list .item .deco1,
.home-brand .list .item .deco2 { position: absolute; margin: auto; }

.home-brand .list .item:nth-child(1) dd { color: #F48D86; font-size: 3.375rem; line-height: 1; }
.home-brand .list .item:nth-child(1) dd .num { font-size: 1.7em;line-height: 1;  }
.home-brand .list .item:nth-child(1) .deco1 { left: -.5em; top: 1em; width: 20%;  }
.home-brand .list .item:nth-child(1) .deco2 { right: 1em; top: 1em; width: 35px; height: auto; width: 10%; }
.home-brand .list .item:nth-child(1) .deco3 { position: absolute; right: 3em; top: 3em; width: 48px; height: auto; width: 10%; }

.home-brand .list .item:nth-child(2) dd { color: #50C270; font-size: 3.375rem;line-height: 1; }
.home-brand .list .item:nth-child(2) dd .num { font-size: 1.7em; line-height: 1; }
.home-brand .list .item:nth-child(2) .deco1 { left: 1em; top: 3em; width: 15%; }
.home-brand .list .item:nth-child(2) .deco2 { right: 5%; top: -.5em; width: 20%; }

.home-brand .list .item:nth-child(3) dd { color: #995389; font-size: 3rem; }
.home-brand .list .item:nth-child(3) .deco1 { left: 1.5em; top: -.5em; width: 15%; }
.home-brand .list .item:nth-child(3) .deco2 { right: -5%; top: 2em; width: 76px; width: 20%; }

.home-brand .list .item:nth-child(4) dd { color: #4F9AD7; font-size: 3.125rem; }
.home-brand .list .item:nth-child(4) dd .sub { font-size: .8em; }
.home-brand .list .item:nth-child(4) .deco1 { left: -5px; top: -5px; width: 30%; }
.home-brand .list .item:nth-child(4) .deco2 { right: -5px; top: -5px; width: 30%; }

.home-brand .list .item:nth-child(5) dd { color: #F2B313; font-size: 3rem; }
.home-brand .list .item:nth-child(5) dd span { font-size: 1.25em; }
.home-brand .list .item:nth-child(5) .deco1 { left: 2em; top: 2em; width: 5%; }
.home-brand .list .item:nth-child(5) .deco2 { right: -5%; top: -5px; width: 23%; }

@media screen and (max-width: 1300px) {
  .home-brand .list .item:nth-child(n) dd { font-size: 2.5em; }
}
@media screen and (max-width: 1100px) {
  .home-brand .list .item:nth-child(n) dd { font-size: 2em; }
}
@media screen and (max-width: 900px) {
  .home-brand .list .item dt { font-size: .9rem; }
  .home-brand .list .item:nth-child(1) .deco2 { right: 2%; top: 2%; }
  .home-brand .list .item:nth-child(1) .deco3 { position: absolute; right: 10%; top: 10%; }
  .home-brand .list .item:nth-child(2) .deco1 { left: -2%; top: 3em; width: 15%; }
  .home-brand .list .item:nth-child(2) .deco2 { right: 5%; top: -.5em; width: 20%; }

  .home-brand .list .item:nth-child(-n + 3) { width: auto; }
  .home-brand .list .item:nth-child(n) dd { font-size: 1.5em; }
}


.title-enjoy { width: 90%; max-width: 820px; margin: 0 auto 3em; }
.home-enjoy { padding: 80px 0; background: #FFE5EB linear-gradient(to right bottom, rgba(255,233, 238, 1) 25%, transparent 25%, transparent 50%, rgba(255,233, 238, 1) 50%, rgba(255,233, 238, 1) 75%, transparent 75%, transparent 100%) repeat center top / 50px 50px; position: relative; }
.home-enjoy::before { content: ''; width: 100%; height: 17px; background: inherit; background-position: center bottom; position: absolute; left: 0; right: 0; display: block; margin: auto; bottom: 100%; mask: url("../img/home/wave-top.svg") repeat-x center center / auto 100%; }

.home-enjoy .lead { line-height: 2; text-align: center; margin-bottom: 3em; }
.enjoy-lead-large { font-size: 1.5rem; margin-top: 1em; }
.enjoy-lead-large img { width: 200px; height: auto; vertical-align: baseline; margin: 0 .5em; }

@media screen and (max-width: 900px) {
  .enjoy-lead-large { font-size: 1.25rem; }
}
@media screen and (max-width: 600px) {
  .enjoy-lead-large { font-size: 1.125rem; }
}

.home-enjoy .list > li { background: #FFF3F6;  padding: 70px 0; border-radius: 30px; position: relative; }
.home-enjoy .list > li + li { margin-top: 30px; }
.home-enjoy .list .inner { width: 1000px; max-width: 90%; display: flex; justify-content: space-between;  margin: 0 auto; }
.home-enjoy .list > li:nth-child(2n) .inner { flex-direction: row-reverse; }
.home-enjoy .list .img { width: 35%; aspect-ratio: 16/ 9; position: relative; }
.home-enjoy .list .img iframe { position: absolute; inset: 0; margin: auto; width: 100%; height: 100%; }
.home-enjoy .list .text { width: 60%; }
.home-enjoy .list .deco1 { width: auto; height: 60px; position: absolute; top: 0; left: 30px;  margin: auto; display: block;}
.home-enjoy .list .deco2 { width: auto; height: 60px; position: absolute; bottom: 0; right: 30px; margin: auto; display: block;}
.home-enjoy .list .title { font-size: 2rem; font-weight: bold; margin: .5em 0; line-height: 1.5; }


@media screen and (max-width: 900px) {
  .home-enjoy .list > li { padding: 50px 0; }
  .home-enjoy .list > li:nth-child(n) .inner { flex-direction: column; }
  .home-enjoy .list .img { width: 100%; margin-bottom: 1em;  }
  .home-enjoy .list .text { width: 100%; }
  .home-enjoy .list .title { font-size: 1.5rem; }
  .home-enjoy .list .deco1,
  .home-enjoy .list .deco2 { height: 30px; }
}

@media screen and (max-width: 900px) {
  .home-enjoy .list > li { padding: 30px 0; }
  .home-enjoy .list .deco1,
  .home-enjoy .list .deco2 { height: 20px; }
}
.title-service { widows: 90%; max-width: 880px; margin: 0 auto 2em; }
.home-service { padding: 70px 0 80px; position: relative; }

.home-service .lead { line-height: 2; margin-bottom: 3em; text-align: center; }

.home-service .head { display: flex; align-items: center; margin-bottom: 4em; }
.home-service .head .img { width: 55%; }
.home-service .head .text {
 margin-left: -3em; position: relative; z-index: 2; 
  font-size: 1.25rem; font-weight: bold;  
}
.home-service .head .text > span { background: #FFF; padding: 0 .5em; line-height: 2; margin-bottom: .5em; display: block; width: fit-content; }
.home-service .list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; position: relative; z-index: 2; }
.home-service .head .text > span + span { margin-top: .5em; }
.home-service .list .title { width: fit-content; margin: 0 auto; position: relative; padding: .7em 2em; }
.home-service .list .title::before { content: '';  width: 1005; height: 200%; background: #FFE5EB;position: absolute; top: 0; left: 0; right: 0; margin: auto; border-radius: 100px; display: block; z-index: -1; }
.home-service .list .title-s { font-size: 1.5rem; font-weight: bold; margin-bottom: .2em; letter-spacing: .06em;  line-height: 1.6; margin-bottom: .5em; }
.home-service .list .conts { background: #FFE5EB; padding: 30px 30px 50px; border-radius: 30px; display: flex; justify-content: space-between; align-items: flex-start; }
.home-service .list .conts img { width: 26%; }
.home-service .list .conts .text { width: 70%;}

@media screen and (max-width: 900px) {
  .home-service .head { flex-wrap: wrap; }
  .home-service .head .img { width: 100%; }
  .home-service .head .text { margin-left: 0; margin-top: -2em; }
  .home-service .head .text > span { font-size: .9rem; }
  .home-service .list { grid-template-columns: 1fr; }
  .home-service .list .title img { width: auto; height: 1.5rem; }
  .home-service .list .title-s  { font-size: 1.25rem; }
  .home-service .list .conts { padding: 20px 20px 30px; }
}
@media screen and (max-width: 600px) {
  .home-service .head .text > span { font-size: .85rem; white-space: nowrap; }
  .home-service .list .title-s  { font-size: 1.125rem; }
}

.title-achievements { width: 90%; max-width: 800px; margin: 0 auto 3em; }
.home-trust .lead { line-height: 2; margin-bottom: 3em; text-align: center; }
.home-trust { background: #FFE5EB; padding: 90px 0 60px; position: relative; z-index: 2; }
.home-trust .block { background:#FFF3F6; border-radius: 30px; padding: 40px 90px; display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 1rem; }
.home-trust .block + .block { margin-top: 30px; }
.home-trust .list .title { font-size: 1.25rem; font-weight: bold; }
.home-trust .list > li { padding-left: 50px; min-height: 53px;background-position: left top; background-size: 40px auto; background-repeat: no-repeat;  }
.home-trust .list > li + li { margin-top: 1em; }

.home-trust .yellow .title { color: #F2B313; }
.home-trust .yellow .list > li { background-image: url(../img/home/icon-achievements-yellow.svg); }
.home-trust .blue .title { color: #4F9AD7; }
.home-trust .blue .list > li { background-image: url("../img/home/icon-achievements-blue.svg"); }
.home-trust .green .title { color: #54C250; }
.home-trust .green .list > li { background-image: url(../img/home/icon-achievements-green.svg); }

@media screen and (max-width: 1200px) {
  .home-trust .block { padding: 30px; }
}
@media screen and (max-width: 900px) {
  .home-trust .block { grid-template-columns: 1fr; }
  .home-trust .title-block img,
  .home-trust .title-block picture { width: auto; height: 30px; display: block; margin-bottom: 1em; }
  .home-trust .list > li { background-size: 30px auto; }
  .home-trust .list .title { font-size: 1.125rem; }
}



.title-flow { max-width: 900px; width: 80%; margin: 0 auto 2em; }
.title-flow-s { max-width: 200px; width: 60%; margin: 4em auto 2em; }

.home-flow { padding: 80px 0; background: url("../img/home/grid.png") repeat center top / 50px 50px; }
.home-flow .lead { text-align: center; margin: 2em 0; }
.home-flow .list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); position: relative; z-index: 2; }
.home-flow .list > li { text-align: center; display: flex; align-items: center; justify-content: center; flex-direction: column; aspect-ratio: 1 / 1; position: relative; margin-top: 60px; }
.home-flow .list > li::before { content: ''; width: calc(100% + 80px); height: calc(100% + 80px); background: rgba(255, 255, 255, .6); display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 50%; z-index: -1; }
.home-flow .list > li:not(:last-child)::after { content: ''; width: 1rem; height: 1rem; display: block; border-top: 2px solid #F26FAB; border-right: 2px solid #F26FAB; display: block; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; transform: rotate(45deg); z-index: 3; }
.home-flow .list > li > * { position: relative; z-index: 3; }
.home-flow .list .num { width: auto; height: 50px; }
.home-flow .list .title { font-weight: bold; margin: 1em 0; font-size: 1.5rem;}
.home-flow .list .icon { margin-bottom: 1em; }
.home-flow .list p { line-height: 2; }

@media screen and (max-width: 1400px) {
  .home-flow  { width: 90%; margin: 0 auto; }
  .home-flow .list .num { height: 40px; }
  .home-flow .list .title { font-size: 1.3rem; }
  .home-flow .list .icon { height: 80px; }
  .home-flow .list > li { margin-top: 40px; }
  .home-flow .list > li::before { content: ''; width: calc(100% + 60px); height: calc(100% + 60px);}
  
}
@media screen and (max-width: 1200px) {
  .home-flow .list .num { height: 30px; }
  .home-flow .list .icon { height: 60px; }
  .home-flow .list p { font-size: .9rem; }
  
}
@media screen and (max-width: 1000px) {
  .home-flow .list .num { height: 20px; }
  .home-flow .list .icon { height: 50px; }
  .home-flow .list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-flow .list > li { margin-top: 20px; }
  .home-flow .list > li::before { content: ''; width: calc(100% + 40px); height: calc(100% + 40px);}
}
@media screen and (max-width: 768px) {
  .home-flow .list { grid-template-columns: 1fr; widows: 80%; max-width: 400px; margin: 0 auto; }
  .home-flow .list > li { margin-top: 0px; }
  .home-flow .list > li:not(:last-child)::after { top: auto; bottom: 0; left: 0; transform: rotate(135deg); }
}
.title-about-us { max-width: 320px; width: 80%; margin: 0 auto 3em; display: block; }

.home-about { padding: 60px 0;  background: #FFC9D6 linear-gradient(to right bottom, #FFCFDA 25%, transparent 25%, transparent 50%, #FFCFDA 50%, #FFCFDA 75%, transparent 75%, transparent 100%) repeat center top / 50px 50px; color: #FFF; text-align: center; }
.home-about .lead p { margin-bottom: 2em; }
.home-about .list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.home-about .list .item { background: #FFF3F6; border-radius: 30px; padding: 40px 0; color: #333; }
.home-about .list .photo { width: 280px; max-width: 60%; margin: 0 auto 1em; display: block; }
.home-about .list .name { width: auto; height: 48px; display: block; margin: 0 auto .5em; }
.home-about .list .role { font-weight: bold; font-size: 1.125rem; margin-bottom: 1em; }

@media screen and (max-width: 900px) {
  .home-about .list { grid-template-columns: 1fr; }
  .home-about .list .item  { padding: 25px 0; }
}

@media screen and (max-width: 600px) {
  .home-about .list .photo { width: 200px; }
  .home-about .list .name { width: auto; height: 36px; }
  .home-about .list .role { font-size: 1rem; }
}

.home-value { background: #FFE5EB; z-index: 3; }


.value-conts-wrap { position: relative; }
.value-bg { overflow: hidden; border-radius: 200px; aspect-ratio: 1950 / 1131; position: relative; }
.value-bg img { position: absolute; inset: 0; margin: auto; object-fit: cover; opacity: 0; transition: opacity .3s; }
.value-bg img.active { z-index: 2; opacity: 1; }
.value-item.value1 { background: #F26FAB; }
.value-item.value2 { background: #4F9AD7; }
.value-item.value3 { background: #F2B313; }
.value-item.value4 { background: #F48D86; }
.value-item.value5 { background: #50C270; }


.value-item { mask: url("../img/home/heart.png") no-repeat center center / 100% 100%;  width: 100%;text-align: center; color: #FFF; margin: auto; aspect-ratio: 540 /498; }



.home-value .inner { overflow: hidden; margin: 0 auto; }
.value-slider-wrapper { width: 540px; height: fit-content;  margin: auto; position: absolute; inset: 0; z-index: 3; }
.value-slider .swiper-slide { margin-bottom: 100px; width: 217px;  }
.value-slider .swiper-slide-active { width: 540px; margin-bottom: 30px; }

.home-value .inner { overflow: hidden; max-width: 1550px; margin: 0 auto; }
.value-slider { margin: 0 auto; width: 540px; }
.value-slider .swiper-wrapper { align-items: flex-end; }


.value-item .off { position: absolute; top: 0; left: 0; right: 0; margin: auto; display: none; }
.value-slider .swiper-slide-prev,
.value-slider .swiper-slide-next { margin-bottom: 0!important; }
.value-slider .swiper-slide .title { width: 70%; height: 5em; object-fit: contain; }
.value-slider .swiper-slide p { display: block; font-size: 1.25rem; line-height: 1.8; margin-top: 1em; }
.value-slider .swiper-slide .off img { width: 70%; height: 5em; object-fit: contain; }


.value-slider .swiper-slide .on { display: none; }
.value-slider .swiper-slide .off,
.value-slider .swiper-slide-active .on { height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column;  }

.value-slider .swiper-slide-active .off { display: none; }

@media screen and (max-width: 1300px) {
  .value-slider-wrapper { width: 430px; }
  .value-slider .swiper-slide { width: 180px; margin-bottom: 50px }
  .value-slider { width: 430px; }
  .value-slider .swiper-slide-active { width: 430px;  }
  .value-slider .swiper-slide p { font-size: 1rem; }
  .value-slider .swiper-slide-active { margin-bottom: 20px; }
}


@media screen and (max-width: 900px) {
  .value-bg { border-radius: 50px; }
  .value-slider .swiper-slide { width: 200px; margin-bottom: 30px }
  .value-slider-wrapper { width: 350px; position: relative; margin-top: -50px; }
  .value-slider { width: 350px; }
  .value-slider .swiper-slide-active { width: 350px;  }
  .value-slider .swiper-slide .title { width: 60%;  height: 3.5em; }
  .value-slider .swiper-slide p { font-size: .9rem; }
  .value-slider .swiper-slide-active { margin-bottom: 15px; }
  
}

@media screen and (max-width: 600px) {
  .value-slider .swiper-slide { width: 150px; margin-bottom: 30px }
  .value-slider-wrapper { width: 250px;  }
  .value-slider { width: 250px; }
  .value-slider .swiper-slide-active { width: 250px;  }
  .value-slider .swiper-slide p { font-size: .8rem; line-height: 1.6; }
  
}


.what-we-do-head { padding: 150px 0 50px; background: #FFE5EB url("../img/what-we-do/bg.png") no-repeat left top / 95% auto; }
.what-we-do-head .inner { display: flex; align-items: center; }

.what-we-do-head .title .en { display: block; width: 150px; max-width: 20%; margin-bottom: 1em;  }
.what-we-do-head .title .ja { width: 80%;  display: block; margin-bottom: 2em; }
.what-we-do-head p { font-size: 1.25rem; line-height: 2; margin-top: 1em; }

.what-we-do-head .text { width: 70%; position: relative; z-index: 2; }
.what-we-do-head .img { width: 50%; margin: 0 -5% 0 -10%; }


.what-we-do-main { background: #FFF; padding: 100px 0; }

@media screen and (max-width: 1100px) {
  .what-we-do-head p { font-size: 1.125rem; margin-bottom: 1em;  }
}
@media screen and (max-width: 900px) {
  .what-we-do-head { padding-top: 80px; background-size: 200% auto; background-position: top right; }
  .what-we-do-head .inner { flex-direction: column; }
  .what-we-do-head .text { width: 100%;  }
  .what-we-do-head .img { width: 100%; margin: 0 auto;  }
}

.wwd-search .title { width: 250px; margin: 0 auto 1em; }
.wwd-search .lead { margin-bottom: 2em; }

.list-purpose { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 30px; }
.list-purpose a { border: 1px solid #FFACBE; border-radius: 20px; box-shadow: 6px 6px 0 #FFACBE; display: block; text-align: center; padding: 1.5rem .5em; height: 100%; }
.list-purpose a.active { background: #F26FAB; color: #FFF; }
.list-purpose a.active .icon { filter: brightness(25); }

.list-purpose .icon { width: 80px; height: 80px; object-fit: contain; margin: 0 auto; }
.list-purpose .ttl { font-size: 1.125rem; margin: .5em 0; font-weight: 500; min-height: 3em; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.list-purpose .desc { font-size: .8135rem; }

@media screen and (max-width: 1200px) {
  .list-purpose { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media screen and (max-width: 1000px) {
  .list-purpose { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .list-purpose a { padding: 1rem .5em; }
  .list-purpose .icon { width: 60px; height: 60px; }
}

@media screen and (max-width: 768px) {
  .list-purpose { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .list-purpose .icon { width: 40px; height: 40px; }
  .list-purpose .ttl { font-size: 1rem; }
}
@media screen and (max-width: 600px) {
  .list-purpose { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


.wwd-theme { margin: 60px 0; }
.wwd-theme .title { font-size: 1.25rem; font-weight: bold; margin-bottom: 1em; }
.wwd-theme .title::before { content: '●'; font-size: .7em; color: #F26FAB; margin-right: .5em; } 
.list-theme { display: flex; flex-wrap: wrap; }
.list-theme > li { margin: 0 10px 10px 0; }
.list-theme a { display: block; padding: 0 1em; border-radius:2em; line-height: 2.5; background: #FAFAFA; }
.list-theme a.active { background: #F26FAB; color: #FFF; }


.list-post-archive { display: grid; grid-template-columns: repeat( 3, minmax(0, 1fr)); gap: 2rem; }

.post-card .time { color: #F26FAB; font-size: .7rem; margin-bottom: .5em; display: block; }
.post-card .thumbnail { width: 100%; aspect-ratio: 3 / 2; background: #EDEDED; margin-bottom: .5em; }
.post-card .thumbnail img { width: 100%; height: 100%; object-fit: cover; }
.post-card .cat span { font-size: .75rem; color: #FFF; background: #50C270; display: inline-block; margin-right: 5px; margin-bottom: 5px; padding: 0 1em; border-radius: 2em; line-height: 2; }
.post-card .title { margin: .5em 0; font-weight: bold; line-height: 1.6; }
.post-card .more { width: 117px; margin: 10px 0 0 auto; display: block; }

@media screen and (max-width: 900px) {
  .list-post-archive { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


.post-title { font-size: 2rem; font-weight: bold; border-bottom: #F26FAB 2px solid; ; margin-bottom: .2em; padding-bottom: .2em; line-height: 1.5; }

.post-date { font-size: .8375rem; color: #F26FAB; margin-bottom: 1em; font-family: 'Plus Jakarta Sans', sans-serif; }

@media screen and (max-width: 900px) {
  .post-title { font-size: 1.5rem;}
}


.post-body h2 { font-weight: bold; border-bottom: 2px solid #F26FAB; margin-top: 2em;  margin-bottom: 1em; padding-bottom: .5em; font-size: 1.3rem;  }
.post-body h3 { font-weight: bold; border-bottom: 1px solid #F26FAB; margin-top: 2em;  margin-bottom: 1em; padding-bottom: .5em; font-size: 1.125rem; }
.post-body h4 { font-weight: bold; margin-top: 2em;  margin-bottom: 1em; font-size: 1.125rem; }
.post-body .wp-block-image { margin-bottom: 2em; }
.post-body .wp-block-paragraph { margin-bottom: 1.5em; }

.post-body .wp-block-list { margin: 1.5em 0; }
.post-body ul.wp-block-list > li { padding-left: 1em; }
.post-body ul.wp-block-list > li::before { content: '・'; margin-left: -1em; width: 1em; display: inline-block;  }

.post-body ol.wp-block-list { counter-reset: listnum; }
.post-body ol.wp-block-list > li { padding-left: 1.5em; counter-increment: listnum;  }
.post-body ol.wp-block-list > li::before { content: counter(listnum)'.'; margin-left: -1.5em; width: 1.5em; display: inline-block;  }


.post-body .wp-block-table table { width: 100%; border-collapse: separate; border-spacing: 10px 0;  }
.post-body .wp-block-table td { border: none; border-bottom: 1px solid #F4BCD6; padding: 1em 0; }
.post-body .wp-block-table td:first-child { width: 30%; border-bottom: 1px solid #F26FAB; }


.bottom-pagination { display: flex; margin: 5em auto; justify-content: center; }
.bottom-pagination .list { border-left: 1px solid; border-right: 1px solid; padding: 0 1em; margin: 0 1em; }
.bottom-pagination .disable { opacity: .3; }
.bottom-pagination .prev::before,
.bottom-pagination .next::after { content: ''; width: 1em; height: 1em; display: inline-block; background: url("../img/common/next-post.svg") no-repeat center center / contain; vertical-align: middle; }
.bottom-pagination .prev::before { transform: rotate(180deg); margin-right: .5em; }
.bottom-pagination .next::after{ margin-left: .5em; }

.wp-pagenavi { display: flex; flex-wrap: wrap; justify-content: center; margin: 5em 0; }
.wp-pagenavi .page,
.wp-pagenavi .current,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink { display: block; width: 2em; height: 2em; text-align: center; line-height: 2; border-radius: 3px; background: #FFF; margin: 2px; font-family: 'Plus Jakarta Sans', sans-serif; }
.wp-pagenavi .current { background: #F48D86; color: #FFF; }
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink { color: #F48D86; }




.conts-side + .conts-side { margin-top: 70px; }

.list-post > li { border-bottom: 1px solid #F26FAB; }
.list-post a { display: block; padding: .7em 1.5em .7em 0; background: url("../img/circlearrow-green.svg") no-repeat right center / 1.25em auto; font-weight: 500; line-height: 1.6; }




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

.archive-year { border-bottom: 1px solid #F26FAB; }
.archive-year__button { width: 100%; border: none;  padding: 1em 1.5em 1em 0; text-align: left; background: none; font-size: 1rem; cursor: pointer; position: relative; }
.archive-year__button::after { content: ''; width: 1.25rem; height: 1.25rem; background: url("../img/circlearrow-green.svg") no-repeat center center / 100% 100%; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; transition: transform .3s; }
.archive-month { display: none;border-top: 1px solid #F26FAB; padding: .5em 0 .5em 1em; }
.archive-month a { display: block;padding: .5em; position: relative; }
.archive-month a::after { content: ''; width: .5em ;height: .5em; display: block; position: absolute; right: .5em; top: 0; bottom: 0; margin: auto; border-top: 2px solid; border-right: 2px solid; transform: rotate(45deg); }

.page-main { margin-bottom: 150px; }

