:root {
  --font-color: #3D3D3D;
  --font-jp: "Noto Sans JP", sans-serif;
  --font-en: "Roboto", sans-serif;
  --hover-opacity: .7;
  --hover-transition: .3s;
  --leading-trim: calc((1em - 1lh) / 2);
}

* {
  box-sizing: border-box;
}

html {
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

body {
  margin: 0;
  font-family: var(--font-jp);
  color: var(--font-color);
}

body.is-active {
  width: 100%;
  overflow: hidden;
}

body.is-fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
figure {
  padding: 0;
  margin: 0;
}

img {
  max-width: 100%;
  line-height: 0;
  vertical-align: bottom;
}

a {
  color: inherit;
}


/*.bg { background: #FFFCC9; }*/

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 8000;
  width: 100%;
  padding: 20px;
  background: #F9F7EF;
}
@container wrapper (max-width: 768px) {
  .l-header {
    padding: 6px 6px 6px 16px;
  }
}
.l-header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}
@container wrapper (max-width: 768px) {
  .l-header__inner {
    justify-content: flex-end;
  }
}
.l-header__logo {
  position: absolute;
  left: 0;
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .l-header__logo:hover {
    opacity: 0.5;
  }
}
.l-header__nav {
  display: flex;
  gap: 40px;
  align-items: center;
}
@container wrapper (min-width: 769px) and (max-width: 960px) {
  .l-header__nav {
    gap: 20px;
  }
}
.l-header__nav-list {
  display: flex;
  gap: 40px;
  align-items: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
@container wrapper (min-width: 769px) and (max-width: 960px) {
  .l-header__nav-list {
    gap: 20px;
  }
}
@container wrapper (max-width: 768px) {
  .l-header__nav-list {
    position: fixed;
    top: 56px;
    left: 0;
    z-index: -7000;
    flex-direction: column;
    width: 100%;
    height: calc(100svh - 56px);
    padding-top: 40px;
    pointer-events: none;
    background: #F9F7EF;
    opacity: 0;
    transition: opacity 0.3s;
  }
  .l-header__nav-list.is-active {
    z-index: 9999;
    pointer-events: auto;
    opacity: 1;
  }
}
.l-header__nav-link {
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  letter-spacing: 0.04em;
  text-decoration: none;
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .l-header__nav-link:hover {
    opacity: 0.5;
  }
}
.l-header__nav-right {
  display: flex;
  gap: 16px;
  align-items: center;
}
.l-header__sns-link {
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .l-header__sns-link:hover {
    opacity: 0.5;
  }
}

.l-hamburger {
  z-index: 9999;
  margin: 0 0 0 auto;
  line-height: 1;
  cursor: pointer;
  background: #E50112;
  border: 2px solid #fff;
  border-radius: 10px;
  filter: drop-shadow(6px 6px 16px rgba(0, 0, 0, 0.11));
}
.l-hamburger__inner {
  display: flex;
  flex-direction: column;
  gap: 5px;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 8px;
  transition: var(--hover-transition);
}
.l-hamburger__item {
  display: inline-block;
  width: 100%;
  height: 3px;
  background: #fff;
  transition: var(--hover-transition);
}
.l-hamburger__item:nth-of-type(1) {
  top: 0;
}
.l-hamburger__item:nth-of-type(2) {
  top: 11px;
}
.l-hamburger__item:nth-of-type(3) {
  bottom: 0;
}
.l-hamburger.is-active .l-hamburger__item:nth-of-type(1) {
  transform: translateY(8px) rotate(-45deg);
}
.l-hamburger.is-active .l-hamburger__item:nth-of-type(2) {
  opacity: 0;
}
.l-hamburger.is-active .l-hamburger__item:nth-of-type(3) {
  transform: translateY(-8px) rotate(45deg);
}
@container wrapper (min-width: 769px) {
  .l-hamburger {
    display: none;
  }
}
.l-hamburger--subpage .l-hamburger__item {
  background-color: #000;
}
.l-hamburger--subpage.is-active .l-hamburger__item {
  background-color: #fff;
}

.l-wrapper {
  container-name: wrapper;
  container-type: inline-size;
}

.l-main {
  padding: 0 min(0px, 5.5555555556vw) 0;
  background: #FFFCC9;
}
@container wrapper (max-width: 768px) {
  .l-main {
    padding: 0 0 0;
  }
}

.l-footer__cta {
  padding: 48px 20px;
  background: #FFE100;
}
@container wrapper (max-width: 768px) {
  .l-footer__cta {
    padding: 40px 20px;
  }
}
.l-footer__cta-inner {
  width: 800px;
  max-width: 100%;
  padding: 48px 20px 46px;
  margin-inline: auto;
  background: #fff;
  border-radius: 10px;
}
@container wrapper (max-width: 768px) {
  .l-footer__cta-inner {
    padding: 40px 20px;
  }
}
.l-footer__cta-text {
  margin-bottom: 24px;
  font-size: 40px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  text-align: center;
  letter-spacing: 1.6px;
}
@container wrapper (max-width: 768px) {
  .l-footer__cta-text {
    font-size: 27px;
  }
}
.l-footer__cta-link {
  display: block grid;
  place-items: center;
  width: 320px;
  max-width: 100%;
  height: 79px;
  margin-inline: auto;
  font-size: 18px;
  font-weight: 700;
  line-height: normal;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  background: #f00;
  border: 1px solid #fff;
  border-radius: 10px;
  filter: drop-shadow(6px 6px 16px rgba(0, 0, 0, 0.11));
}
@container wrapper (max-width: 768px) {
  .l-footer__cta-link {
    height: 84px;
  }
}
.l-footer__bottom {
  padding: 18px 20px 17px;
  background: #F9F7EF;
}
@container wrapper (max-width: 768px) {
  .l-footer__bottom {
    padding: 40px 20px;
  }
}
.l-footer__bottom-inner {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  width: 980px;
  max-width: 100%;
  margin-inline: auto;
}
@container wrapper (max-width: 768px) {
  .l-footer__bottom-inner {
    flex-direction: column;
    gap: 34px;
    align-items: center;
    justify-content: center;
  }
}
@container wrapper (max-width: 768px) {
  .l-footer__nav {
    display: flex;
    flex-direction: column;
    gap: 22px;
    align-items: center;
  }
  .l-footer__nav span {
    display: none;
  }
}
.l-footer__nav-link {
  font-size: 14px;
  font-weight: 400;
  line-height: 2.07;
  letter-spacing: 0.04em;
  text-decoration: none;
}
@container wrapper (max-width: 768px) {
  .l-footer__nav-link {
    line-height: normal;
  }
}
.l-footer__copyright {
  font-family: var(--font-en);
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
}

.c-image-grid01 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 48px 56px;
  width: 936px;
  max-width: 100%;
  margin-inline: auto;
}
@container wrapper (max-width: 768px) {
  .c-image-grid01 {
    grid-template-columns: repeat(1, 1fr);
    gap: 32px;
    width: calc(100% - 20px);
  }
}
.c-image-grid01__img {
  width: 100%;
}
.c-image-grid01__caption {
  margin-top: 12px;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.52;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .c-image-grid01__caption {
    margin-inline: -10px;
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.56;
  }
}

.c-lead01 {
  margin-bottom: 32px;
  font-size: 27px;
  font-weight: 700;
  line-height: 1.85;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .c-lead01 {
    margin-bottom: 24px;
    font-size: 21px;
    line-height: 1.9;
  }
}

.c-title01 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 500px;
  height: 256px;
  padding-top: 15px;
  margin-inline: auto;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.53;
  text-align: center;
  letter-spacing: 0.04em;
  content: "";
  background: url("/decowrap/report/img/title_bg.webp") no-repeat center/contain;
}
@container wrapper (max-width: 768px) {
  .c-title01 {
    width: 310px;
    max-width: 100%;
    height: 160px;
    padding-top: 0;
    font-size: 24px;
    line-height: 1.46;
  }
}

.c-title02 {
  font-size: 40px;
  font-weight: 800;
  line-height: normal;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .c-title02 {
    font-size: 27px;
  }
}

.p-main-contents {
  width: 1280px;
  max-width: 100%;
  padding: 56px min(150px, 10.4166666667vw) 80px;
  margin-inline: auto;
  margin-bottom: 80px;
  overflow: clip;
  background: #fff;
  border-radius: 20px;
}
@container wrapper (max-width: 768px) {
  .p-main-contents {
    padding: 48px 20px 52px;
    margin-bottom: 64px;
  }
}

.p-hero {
  margin-bottom: 56px;
}
@container wrapper (max-width: 768px) {
  .p-hero {
    margin-bottom: 40px;
  }
}
.p-hero__title {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: center;
  margin-bottom: 56px;
}
@container wrapper (max-width: 768px) {
  .p-hero__title {
    gap: 12px;
    margin-bottom: 40px;
  }
}
.p-hero__title-main {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 45px;
  font-weight: 800;
  line-height: 1.47;
  text-align: center;
}
@container wrapper (max-width: 768px) {
  .p-hero__title-main {
    font-size: 27px;
    font-weight: 700;
    line-height: 1.67;
  }
}
.p-hero__title-sub {
  width: 542px;
  max-width: 100%;
  padding: 4px 20px;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  background: #FFFCC9;
  border-radius: 50px;
}
@container wrapper (max-width: 768px) {
  .p-hero__title-sub {
    width: calc(100% - 20px);
    padding: 8px 10px;
    font-size: 21px;
    line-height: 24px;
  }
}
.p-hero__images {
  display: grid;
}
@container wrapper (max-width: 768px) {
  .p-hero__images {
    margin-inline: -20px;
  }
}
.p-hero__image--01 {
  grid-area: 1/1/2/4;
}
.p-hero__image--02 {
  grid-area: 2/1/3/2;
}
.p-hero__image--03 {
  grid-area: 2/2/3/3;
}
.p-hero__image--04 {
  grid-area: 2/3/3/4;
}
.p-hero__image--02 img, .p-hero__image--03 img, .p-hero__image--04 img {
  width: 100%;
  height: 100%;
  aspect-ratio: 327/223;
  object-fit: cover;
}

.p-about {
  padding: 40px 23px 64px;
  margin-bottom: 83px;
  border: 2px solid #E8E8E8;
  border-radius: 16px;
}
@container wrapper (max-width: 768px) {
  .p-about {
    padding: 30px 30px 33px;
    margin-bottom: 62px;
  }
}
.p-about__title {
  margin-bottom: 40px;
  font-size: 40px;
  font-weight: 800;
  line-height: normal;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-about__title {
    margin-bottom: 25px;
    font-size: 27px;
  }
}
.p-about__text {
  font-size: 27px;
  font-weight: 700;
  line-height: 1.85;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-about__text {
    margin-bottom: 35px;
    font-size: 21px;
    text-align: left;
  }
  .p-about__text br {
    display: none;
  }
}
@container wrapper (max-width: 768px) {
  .p-about__image {
    margin-inline: -22px;
  }
}

.p-feature {
  padding-bottom: 88px;
  margin-bottom: 72px;
  background: url("/decowrap/report/img/border_pc.svg") no-repeat center bottom;
}
@container wrapper (max-width: 768px) {
  .p-feature {
    padding-bottom: 79px;
    margin-bottom: 48px;
    background-image: url("/decowrap/report/img/border_sp.svg");
  }
}
.p-feature__title {
  margin-bottom: 45px;
}
@container wrapper (max-width: 768px) {
  .p-feature__title {
    margin-bottom: 32px;
  }
}

.p-work {
  padding-bottom: 88px;
  margin-bottom: 72px;
  background: url("/decowrap/report/img/border_pc.svg") no-repeat center bottom;
}
@container wrapper (max-width: 768px) {
  .p-work {
    padding-bottom: 72px;
    margin-bottom: 56px;
    background-image: url("/decowrap/report/img/border_sp.svg");
  }
}
.p-work__title {
  margin-bottom: 30px;
}
@container wrapper (max-width: 768px) {
  .p-work__title {
    margin-bottom: 20px;
  }
}
.p-work__lead--02 {
  margin-top: 77px;
}
@container wrapper (max-width: 768px) {
  .p-work__lead--02 {
    margin-top: 64px;
  }
}

.p-food {
  padding-bottom: 97px;
  margin-bottom: 92px;
  /*background: url("/decowrap/report/img/border_pc.svg") no-repeat center bottom;*/
}
@container wrapper (max-width: 768px) {
  .p-food {
    padding-bottom: 72px;
    margin-bottom: 132px;
    /*background-image: url("/decowrap/report/img/border_sp.svg");*/
  }
}
.p-food__title {
  margin-bottom: 30px;
}
@container wrapper (max-width: 768px) {
  .p-food__title {
    margin-bottom: 20px;
  }
}

.p-effect {
  padding-bottom: 126px;
  margin-bottom: 100px;
  /*background: url("/decowrap/report/img/border_pc.svg") no-repeat center bottom;*/
}
@container wrapper (max-width: 768px) {
  .p-effect {
    padding-bottom: 90px;
    margin-bottom: 64px;
    /*background-image: url("/decowrap/report/img/border_sp.svg");*/
  }
}
.p-effect__header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 89px;
}
@container wrapper (max-width: 768px) {
  .p-effect__header {
    margin-bottom: 96px;
  }
}
.p-effect__header::after {
  position: relative;
  z-index: 1;
  display: block;
  width: 289px;
  height: 155px;
  margin-left: -75px;
  content: "";
  background: url("/decowrap/report/img/effect_title.webp") no-repeat center/contain;
}
@container wrapper (max-width: 768px) {
  .p-effect__header::after {
    position: absolute;
    top: -54px;
    right: -5px;
    width: 165px;
    height: 88px;
  }
}
.p-effect__title {
  position: relative;
  z-index: 2;
  margin-inline: 0;
  margin-bottom: 0;
}
.p-effect__list {
  display: grid;
  gap: 98px;
  width: 920px;
  max-width: 100%;
  margin-inline: auto;
}
@container wrapper (max-width: 768px) {
  .p-effect__list {
    gap: 99px;
  }
}
.p-effect__item {
  position: relative;
  padding: 80px 10px 57px;
  background: #FFFCC9;
  border-radius: 16px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item {
    padding: 50px 20px 40px;
  }
}
.p-effect__item::before, .p-effect__item::after {
  position: absolute;
  display: block;
  content: "";
  background: url("/decowrap/report/img/cloud.webp") no-repeat center/contain;
}
.p-effect__item::before {
  width: 242px;
  height: 124px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item::before {
    width: 135px;
    height: 69px;
  }
}
.p-effect__item::after {
  width: 126px;
  height: 64px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item::after {
    width: 82px;
    height: 42px;
  }
}
.p-effect__item--01::before {
  top: -40px;
  right: -53px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--01::before {
    top: -38px;
    right: -38px;
  }
}
.p-effect__item--01::after {
  top: 43px;
  left: -36px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--01::after {
    top: auto;
    bottom: -27px;
    left: -28px;
  }
}
.p-effect__item--02::before {
  top: -62px;
  left: 27px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--02::before {
    top: auto;
    bottom: -45px;
    left: -40px;
  }
}
.p-effect__item--02::after {
  right: -25px;
  bottom: -32px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--02::after {
    top: -58px;
    right: 0;
    bottom: auto;
  }
}
.p-effect__item--03::before {
  right: -84px;
  bottom: 25px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--03::before {
    top: auto;
    right: -40px;
    bottom: -32px;
  }
}
.p-effect__item--03::after {
  top: 24px;
  left: 27px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item--03::after {
    inset: -63px 0 auto auto;
  }
}
.p-effect__item-title {
  position: absolute;
  top: -40px;
  left: 50%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  justify-content: center;
  width: 113px;
  aspect-ratio: 1;
  padding-bottom: 6px;
  background: #FFFCC9;
  border-radius: 50%;
  transform: translateX(-50%);
}
@container wrapper (max-width: 768px) {
  .p-effect__item-title {
    top: -53px;
    width: 108px;
    padding-bottom: 12px;
  }
}
.p-effect__item-label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
@container wrapper (max-width: 768px) {
  .p-effect__item-label {
    font-size: 16px;
  }
}
.p-effect__item-number {
  font-family: var(--font-en);
  font-size: 36px;
  font-weight: 700;
  line-height: 18px;
}
@container wrapper (max-width: 768px) {
  .p-effect__item-number {
    font-size: 30px;
  }
}
.p-effect__item-text {
  font-size: 27px;
  font-weight: 700;
  line-height: 1.85;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-effect__item-text {
    font-size: 21px;
    line-height: 40px;
    text-align: left;
  }
}

@container wrapper (max-width: 768px) {}
.p-voices__title {
  margin-bottom: 42px;
}
@container wrapper (max-width: 768px) {
  .p-voices__title {
    margin-bottom: 32px;
  }
}
.p-voices__list {
  display: grid;
  gap: 40px;
}
.p-voices__item {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 26px 30px;
}
@container wrapper (max-width: 768px) {
  .p-voices__item {
    grid-template-columns: 1fr;
  }
}
@container wrapper (max-width: 768px) {
  .p-voices__figure {
    display: flex;
    gap: 35px;
    align-items: center;
  }
}
.p-voices__thumb {
  text-align: center;
}
.p-voices__comment-icon {
  margin-top: -2px;
  margin-bottom: 3px;
  text-align: center;
}
.p-voices__img {
  width: 120px;
}
.p-voices__caption {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.56;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-voices__caption {
    margin-top: 0;
  }
}
.p-voices__caption-top {
  font-size: 14px;
}
.p-voices__content {
  display: grid;
  gap: 8px;
  padding: 40px;
  margin-top: 4px;
  background: #FFFCC9;
  border-radius: 16px;
}
@container wrapper (max-width: 768px) {
  .p-voices__content {
    padding: 20px;
  }
}
.p-voices__item-title {
  font-size: 27px;
  font-weight: 700;
  line-height: 1.85;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-voices__item-title {
    font-size: 19px;
    line-height: 1.47;
  }
}
.p-voices__item-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 2.07;
  letter-spacing: 0.04em;
}

.p-cases {
  width: 980px;
  max-width: 100%;
  padding-bottom: 80px;
  margin-inline: auto;
}
@container wrapper (max-width: 768px) {
  .p-cases {
    max-width: calc(100% - 75px);
    padding-bottom: 64px;
  }
}
.p-cases__title {
  margin-bottom: 32px;
}
@container wrapper (max-width: 768px) {
  .p-cases__title {
    margin-bottom: 26px;
  }
}
.p-cases__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px 17px;
}
@container wrapper (max-width: 1024px) {
  .p-cases__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@container wrapper (max-width: 768px) {
  .p-cases__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
  }
}
.p-cases__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
  overflow: clip;
  text-decoration: none;
  background: #fff;
  border-radius: 16px;
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .p-cases__item:hover {
    opacity: 0.7;
  }
}
.p-cases__item--no-link {
  pointer-events: none;
  cursor: default;
}
.p-cases__thumb {
  position: relative;
}
.p-cases__thumb::after {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 36px;
  aspect-ratio: 1;
  content: "";
  background: url("/decowrap/report/img/cases_arrow.svg") no-repeat center/contain;
}
.p-cases__thumb--no-link::after {
  display: none;
}
.p-cases__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@container wrapper (max-width: 768px) {
  .p-cases__img {
    aspect-ratio: 300/220;
  }
}
.p-cases__item-title {
  display: block grid;
  place-items: center;
  padding: 10px 20px 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-cases__item-title {
    padding: 24px 20px 0;
    font-size: 19px;
  }
}
.p-cases__item-text {
  padding: 6px 20px 20px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.71;
  letter-spacing: 0.04em;
}
@container wrapper (max-width: 768px) {
  .p-cases__item-text {
    padding: 12px 20px 20px;
    line-height: 24px;
  }
}

.clearfix::after {
  clear: both;
  display: block;
  content: "";
}

@container wrapper (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

@container wrapper (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

.u-visibility-hidden {
  visibility: hidden;
}

.u-keep-all-break-word {
  word-break: keep-all;
  overflow-wrap: break-word;
  overflow-wrap: anywhere;
}


#report { background: #FFFCC9; }

#report .page-tit { background-color: #fcf4e9; }
#report .page-tit .inner { background-image: url("./img/main_bg.png") ,url("./img/main_bg.png"); background-position: top,bottom; background-repeat: repeat-x; background-size: 1500px 8px; display: flex; justify-content: center; align-items: center; }
#report .page-tit .inner h1 { font-size: 4.5em; font-weight: bold; color: #ed865d; margin: 0 auto; display: block; padding: 20px 0; text-align: center; }

#report .anchor-link { display: flex; max-width: 940px; margin: 30px auto; }
#report .anchor-link li { flex: 1; margin: 0 10px; }
#report .anchor-link li a { display: flex; align-items: center; justify-content: center; height: 100%; text-align: center; content: ""; background: url("./img/title_bg.webp") no-repeat center/contain; max-width: 320px; height: 153px; }
#report .anchor-link li a span { display: block; font-size: 20px; font-weight: 800; }

#report .p-food { margin-bottom: 0; padding-bottom: 0; }
#report .p-effect { margin-bottom: 0; padding-bottom: 0; }
#report .block-tit { font-size: 40px; font-weight: 800; text-align: center; padding: 0 0 15px; margin: 0 0 20px; position: relative; }
#report .block-tit::before { content: ""; display: block; width: 120px; height: 8px; background: #ed865d; position: absolute; bottom: 0; left: calc(50% - 60px); }
#report .block-tit-sm { font-size: 36px; font-weight: 800; text-align: center; margin: 0 0 20px; }

#example .idx-list { margin: 40px 0 0; }
.card { margin: -4vw 0 0 -3vw; } 
.card li { width: calc(33.333% - 3vw); float: left; margin: 4vw 0 0 3vw; padding: 0 0 40px; background: #f4f4f4; transition: all 0.2s; position: relative; }
.card li:hover { transform: scale(1.02); }
.card li a { text-decoration: none; display: block; }
.card li p { font-size: 16px; text-align: left; line-height: 1.5; padding: 10px 20px 0; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.card li p.date { font-size: 12px; color: #aaaaaa; position: absolute; bottom: 6px; right: 0; }

#report #example { margin-top: -90px; padding-top: 90px; }
#report #work { margin-top: -90px; padding-top: 90px; }
#report #effect { margin-top: -90px; padding-top: 90px; }


/* detail */
.article { margin: 60px 0 0; }
.detail .frame { position: relative; }
.detail .title-header { text-align: center; }
.detail .title-header h1.tit { font-size: 40px; font-weight: 800; display: inline-block; position: relative; z-index: 2; }
.detail .title-header .lead { font-size: 16px; font-weight: 500; margin: 30px 0 0; }
.detail .title-header .date { font-size: 14px; font-weight: 500; margin: 50px 0 0; }
.detail ol { text-align: left; margin: 40px 0 0; border-top: 1px solid #707070; }
.detail ol li { padding: 60px 0; border-bottom: 1px solid #707070; }
.detail ol li:last-child { padding-bottom: 0; border-bottom: none; }
.detail ol li .box-l { width: 35%; float: left; }
.detail ol li .box-l .mov-wid { width: 100%; aspect-ratio: 16 / 9; }
.detail ol li .box-l .mov-wid iframe { width: 100%; height: 100%; }
.detail ol li .box-l .mov-len { width: 100%; aspect-ratio: 9 / 16; }
.detail ol li .box-l .mov-len iframe { width: 100%; height: 100%; }
.detail ol li .txt { width: 65%; float: left; }
.detail ol li .txt h4 { font-size: 30px; font-weight: 500; padding: 0 0 30px 80px; }
.detail ol li .txt p { font-size: 14px; padding: 0 80px; }
.detail h2 { position: relative; z-index: 2; }
.detail h3 { font-size: 30px; font-weight: 500; line-height: 1.6em; padding: 50px 0 30px; position: relative; z-index: 2; }
.detail .bg { position: absolute; top: 0; left: 0; z-index: 1; }
.btn-back-idx { padding: 0 0 80px; text-align: center; }
.btn-back-idx a { color: #fff; font-size: 16px; line-height: 1; text-align: center; text-decoration: none; background: #e49134; border-radius: 80px; padding: 20px 40px 24px; display: inline-block; margin: 0 auto; transition: all 0.2s; }
.btn-back-idx a:hover { transform: scale(1.02); }

.detail .main-pic { padding: 80px 160px 0; }
.detail .toc { text-align: left; margin: 80px 70px 0; padding: 60px 0; border-top: 1px solid #707070; border-bottom: 1px solid #707070; }
.detail .toc p { font-size: 24px; margin: 0 0 15px; }
.detail .toc ul li { font-size: 24px; margin: 0 0 10px; }
.detail .toc ul li:last-child { margin-bottom: 0; }
.detail .topics-block { text-align: left; margin: 0 70px; padding: 20px 0 100px; }
.detail .topics-block h2 { font-size: 24px; }
.detail .topics-block h2.line { text-decoration: underline; text-decoration-color: #FAD2E6; text-decoration-thickness: 13px;text-underline-offset: -5px; text-decoration-skip-ink: none; }
.detail .topics-block h3 { font-size: 24px !important; padding: 20px 0 !important; }
.detail .topics-block .pic .notes { color: #707070; font-size: 14px; text-align: right; padding: 8px 0 0; }
.detail .topics-block p .line { text-decoration: underline; text-decoration-color: #FAD2E6; text-decoration-thickness: 9px;text-underline-offset: -5px; text-decoration-skip-ink: none;  }
.detail #block-A { padding: 100px 0 0; }
.detail #block-B { padding: 100px 0 0; }
.detail #block-B .pic  { padding: 10px 70px 20px; }
.detail #block-C { padding: 100px 0 0; }
.detail #block-C .pic { padding: 10px 270px 30px 0; }
.detail .pic-topics  { padding: 30px 70px 20px; }
.detail ol li.seotopics { padding: 60px 0; padding-bottom: 0; border-bottom: none; }
[id^="block-"] { position: relative; }
[id^="block-"]::before { content: ""; display: block; height: 110px; margin-top: -110px;}
.detail .pic-topics  { padding: 30px 70px 20px; text-align: center;}
.detail .pic-topics img  {width: 60%;}
.notes { font-size: 12px; margin: 10px 0; }
.detail .mokuji { text-align: left; margin: 80px 70px 0; padding: 0 0 60px; border-bottom: 1px solid #707070; }
.detail .mokuji p { font-size: 20px; margin: 0 0 15px; }
.detail .mokuji ul li { font-size: 24px; margin: 0 0 10px; }
.detail .mokuji ul li:last-child { margin-bottom: 0; }
.detail .mrk { float: left; width: 140px; }
.detail .pic-topics100  { padding: 30px 10px 20px; text-align: center;}
.detail .pic-topics100 img  {width: 100%;}
.detail .pic-topics80  { padding: 30px 10px 20px; text-align: center;}
.detail .pic-topics80 img  {width: 80%;}
.detail h2.chef-name {font-size: 20px; padding: 0 80px;}
.detail h2.topic-ttl {font-size: 20px;}

@media screen and (max-width: 767px) {
	
	#report .page-tit { height: auto; }
	#report .page-tit .inner { background-size: 750px 4px; height: auto; }
	#report .page-tit .inner h1 { padding:10px 3%; font-size: 2.2em; }	

	#report .anchor-link { margin: 20px auto; padding: 0 5px; }
	#report .anchor-link li { margin: 0 2px; }
	#report .anchor-link li a { height: 73px; }
	#report .anchor-link li a span { display: block; font-size: 13px; }
		
	#report .block-tit { font-size: 28px; padding: 0 0 10px; margin: 0 0 15px; }
	#report .block-tit::before { width: 100px; height: 6px; left: calc(50% - 50px); }
	#report .block-tit-sm { font-size: 26px; margin: 0 0 15px; }
	
	#example .idx-list { margin: 30px 0 0; }
	.card { margin: -20px 0 0 -10px; } 
	.card li { width: calc(50% - 10px); margin: 20px 0 0 10px; padding: 0 0 30px; }
	.card li:hover { transform: scale(1.0); }
	.card li p { font-size: 14px; line-height: 1.6; padding: 10px 10px 0; }

	#report #example { margin-top: -60px; padding-top: 60px; }
	#report #work { margin-top: -60px; padding-top: 60px; }
	#report #effect { margin-top: -60px; padding-top: 60px; }	
	.p-effect { margin-top: 80px; }
	
	/* detail */
	.article { margin: 30px 0 0; }	
	.detail .title-header h1.tit { font-size: 24px; }
	.detail .title-header .lead { font-size: 15px; margin: 15px 0 0; text-align: left; }
	.detail .title-header .date { margin: 20px 0 0; }
	.detail ol { margin: 30px 0 0;  }
	.detail ol li { padding: 30px 0; }
	.detail ol li .box-l { width: 100%; }
	.detail ol li .txt { width: 100%; }
	.detail ol li .txt h4 { font-size: 18px; padding: 10px 0; }
	.detail ol li .txt p { padding: 0; margin: 10px 0 0; }
	.detail h3 { font-size: 20px; padding: 25px 0 15px; text-align: left; }
	.btn-back-idx { padding:  0 4.4vw 60px; }
	.btn-back-idx a { font-size: 15px; padding: 16px 0 20px; display: block; }
	.btn-back-idx a:hover { transform: scale(1.0); }
	.detail .main-pic { padding: 30px 0 0; }
	.detail .toc { margin: 40px 0 0; padding: 25px 0; }
	.detail .toc p { font-size: 20px; margin: 0 0 10px; }
	.detail .toc ul li { font-size: 20px; margin: 0 0 10px; }
	.detail .topics-block { margin: 0; padding: 0 0 40px; }
	.detail .topics-block h2 { font-size: 20px;  }
	.detail .topics-block h3 { font-size: 20px !important; padding: 15px 0 !important; }
	.detail .topics-block .pic .notes { font-size: 11px; padding: 5px 0 0; }
	.detail #block-A { padding: 40px 0 0; }	
	.detail #block-B { padding: 40px 0 0; }
	.detail #block-B .pic  { padding: 0 0 20px; }
	.detail #block-C { padding: 40px 0 0; }
	.detail #block-C .pic { padding: 0 0 20px; }
	.detail .pic-topics  { padding: 0 0 20px; }
	.detail ol li.seotopics { padding: 30px 0; }
	 [id^="block-"] { position: relative; }
	[id^="block-"]::before { content: ""; display: block; height: 60px; margin-top: -60px;}
	.detail .pic-topics  { padding: 20px 0 20px; text-align: center;}
	.detail .pic-topics img  { width: 60%;}
	.notes { font-size: 11px; margin: 10px 0; }
	.detail .mokuji { margin: 40px 0 0; padding: 0 0 20px; }
	.detail .mokuji p { font-size: 14px; margin: 0 0 10px; }
	.detail .mokuji ul li { font-size: 20px; margin: 0 0 10px; }
	.detail .pic-topics100  { padding: 20px 0 20px; text-align: center;}
	.detail .pic-topics100 img  { width: 100%;}
	.detail .pic-topics80  { padding: 20px 0 20px; text-align: center;}
	.detail .pic-topics80 img  { width: 100%;}
	.detail h2.chef-name {font-size: 18px; padding: 10px 0 0 0;}
	.detail h2.topic-ttl {font-size: 18px;}
	}




