/* ################################################
     Common PC / SP
################################################ */
:root {
  --scale60: 0.6;
  --scale55: 0.55;
  --scale40: 0.4;

  --BaseFont: "Noto Sans JP", sans-serif;
  --EnFont: "Noto Sans", sans-serif;
  --CommonColorLightGray: #f2f6f7;
  --CommonColorBrown: #231815;
  --CommonColoOrange: #ef8200;
  --CommonColoGreen: #00c373;
  --CommonColoDarkGreen: #0ab285;
  --CommonColorWhite: rgba(255, 255, 255, 1);
  --CommonColorBlack: rgba(0, 0, 0, 1);

  --PagerColorGreen: #1fd090;
  --PagerColorLightGreen: #a5ecd3;

  --SliderColor1: #d2f5e8;
  --SliderColor2: #cae9ea;
  --SliderColor3: #91e1cc;

  /* 14/970 = vw（970以下で縮小） */
  --FontSize13: clamp(11px, 1.3402062vw, 13px);
  --FontSize14: clamp(11px, 1.443299vw, 14px);
  --FontSize16: clamp(12px, 1.6494845vw, 16px);
  --FontSize18: clamp(14px, 1.8556701vw, 18px);
  --FontSize20: clamp(16px, 2.0618557vw, 20px);
  --FontSize22: clamp(18px, 2.2680412vw, 22px);
  --FontSize24: clamp(20px, 2.4742268vw, 24px);
  --FontSize28: clamp(24px, 2.8865979vw, 28px);
  --FontSize32: clamp(28px, 3.2989691vw, 32px);
  --FontSize40: clamp(36px, 4.1237113vw, 40px);

  --BaseFontRegular: 400;
  --BaseFontMedium: 500;
  --BaseFontSemiBold: 600;
  --BaseFontBold: 700;
  --BaseFontBlack: 900;
}
@media screen and (max-width: 768px) {
  :root {
    --FontSize16: 2.13vw;
    --FontSize20: 2.66vw;
    --FontSize22: 2.93vw;
    --FontSize24: 3.2vw;
    --FontSize28: 3.73vw;
    --FontSize32: 4.26vw;
    --FontSize40: 5.333vw;
  }
}

/* img {
  width: 100%;
} */

/* --------------
	CMS Reset
-----------------*/

/* --------------
タイトル非表示
-----------------*/
.u-animation--fade-left.is-active {
  display: none;
}
.u-animation--fade-left {
  display: none;
}

/* --------------
日付非表示
-----------------*/
.u-animation--fade-left.is-active + .d-flex.align-items-center > p.u-fs-14 {
  display: none;
}

/* --------------
パンくず下余白削除
-----------------*/
@media (min-width: 640px) {
  .l-container.u-mt-sm-60 {
    margin-top: 0 !important;
  }
}
.l-container.u-mt-30 {
  margin-top: 0 !important;
}

/* ================================
        Layout
================================ */
#FoodSafety .pc {
  display: block;
}
#FoodSafety .sp {
  display: none;
}

@media screen and (max-width: 768px) {
  #FoodSafety .sp {
    display: block;
  }
  #FoodSafety .pc {
    display: none;
  }
}

#FoodSafety {
  font-family: var(--BaseFont);
  width: 100%;
  background-image:
    linear-gradient(
      var(--CommonColorLightGray) min(1.5px, 0.4vw),
      transparent min(1.5px, 0.4vw)
    ),
    linear-gradient(
      90deg,
      var(--CommonColorLightGray) min(1.5px, 0.4vw),
      transparent min(1.5px, 0.4vw)
    ) !important;
  background-size: min(33.5px, 3.4536082vw) min(33.5px, 3.4536082vw);
  background-repeat: repeat;
  background-position: top center;
}
@media screen and (max-width: 768px) {
  #FoodSafety {
    background-image:
      linear-gradient(
        var(--CommonColorLightGray) min(3px, 0.4vw),
        transparent min(3px, 0.4vw)
      ),
      linear-gradient(
        90deg,
        var(--CommonColorLightGray) min(3px, 0.4vw),
        transparent min(3px, 0.4vw)
      ) !important;
    background-size: min(67px, 8.93vw) min(67px, 8.93vw);
    background-repeat: repeat;
    background-position: top center;
  }
}

.FoodSafetyInner {
  width: min(1240px, 100%);
  margin-inline: auto;
  padding-inline: 20px;
}
@media screen and (max-width: 768px) {
  .FoodSafetyInner {
    padding-inline: 0;
  }
}

/* ================================
        Btn
================================ */
.CommonBtn + .CommonBtn {
  padding-top: min(16px, 2.133vw);
}

.CommonBtn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: min(282px, 37.6vw);
  height: min(95px, 12.66vw);
  line-height: 1.5;
  background: var(--CommonColorWhite);
  color: var(--CommonColorBrown);
  border: min(1.5px, 0.4vw) solid var(--CommonColoDarkGreen);
  border-radius: min(10px, 2.66vw);
  margin: 0 auto;
  transition: 0.3s;
  font-size: var(--FontSize24);
  font-weight: var(--BaseFontMedium);
  text-decoration: none;
  letter-spacing: -1px;
  box-shadow: min(3px, 0.8vw) min(3px, 0.8vw) 0px 0px rgba(0, 0, 0, 0.1);
}

.CommonBtn .Kern {
  margin-left: -0.6em;
}

.CommonBtn a:hover {
  text-decoration: none;
  transform: translateY(5px);
  box-shadow: none;
}

.CommonBtn a:after {
  content: "";
  width: min(10px, 1.0309278vw);
  height: min(10px, 1.0309278vw);
  border: 0;
  border-top: min(1.5px, 0.1546392vw) solid var(--CommonColoDarkGreen);
  border-right: min(1.5px, 0.1546392vw) solid var(--CommonColoDarkGreen);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: min(16px, 1.649vw);
}
@media screen and (max-width: 768px) {
  .CommonBtn a:after {
    width: min(14px, 1.86vw);
    height: min(14px, 1.86vw);
    border-top: min(3px, 0.4vw) solid var(--CommonColoDarkGreen);
    border-right: min(3px, 0.4vw) solid var(--CommonColoDarkGreen);
  }
}

.CommonBtn._external a:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  transform: none;
  width: min(14px, 1.44vw);
  height: min(14px, 1.44vw);
  display: block;
  background-image: url("icon-external.png");
  background-size: 100%;
  background-repeat: no-repeat;
  border: none;
}
@media screen and (max-width: 768px) {
  .CommonBtn._external a:after {
    width: 2.66vw;
    height: 2.66vw;
  }
}

/* ================================
       Text
================================ */
#FoodSafety .CommonList {
  font-size: var(--FontSize14);
  font-weight: var(--BaseFontRegular);
  padding-top: min(20px, 2.66vw);
  line-height: 2;
}
@media screen and (max-width: 768px) {
  #FoodSafety .CommonList {
    margin: min(20px, 5.3333333vw) 0 0;
    padding-top: 0;
    font-size: var(--FontSize24);
  }
}

#FoodSafety .Note .CommonList {
  font-size: var(--FontSize16);
  padding-top: 64px;
}
#FoodSafety .Note .CommonList li {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  #FoodSafety .Note .CommonList {
    font-size: var(--FontSize24);
    /* padding-top: 13.866vw; */
    padding-top: 0;
  }
}

/* ================================
       Border
================================ */
.CommonBorderGreen {
  margin: min(32px, 3.2989691vw) 0;
  border: 0;
  border-top: 1px solid var(--CommonColoGreen);
}
@media screen and (max-width: 768px) {
  .CommonBorderGreen {
    margin: min(52px, 6.93vw) 0;
  }
}

/* ================================
        Modal
================================ */
.Modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  pointer-events: none;
}

.Modal h2 {
  font-size: var(--FontSize28);
  line-height: var(--LineHeight16);
}

.ModalOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  pointer-events: auto;
  z-index: 1;
}

.ModalWrapper {
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: auto;
  z-index: 2;
}

.ModalContent {
  max-width: 580px;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}

.ModalItem {
  line-height: 1.5;
  padding: min(40px, 5.33vw);
  background: var(--CommonColorWhite);
  color: var(--CommonColorBrown);
  border: min(3px, 0.4vw) solid var(--CommonColoGreen);
  border-radius: min(16px, 2.133vw);
  font-size: var(--FontSize28);
  font-weight: var(--BaseFontMedium);
  box-shadow: min(8px, 1.06vw) min(8px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
  letter-spacing: -0.05em;
}

.s .ModalItem {
  padding: 5.33vw;
  font-size: var(--FontSizeSp28);
}

/* ================================
        Page Top
================================ */
.Pagetop {
  position: fixed;
  z-index: 8;
  right: 15px;
  bottom: 20px;
}

.Pagetop a {
  display: block;
  width: 84px;
  height: 84px;
  background: url(pagetop.png) no-repeat;
  background-size: 100%;
  transition: 0.3s;
  filter: drop-shadow(5.1px 6.1px 0 rgba(0, 0, 0, 0.1));
}

.Pagetop a:hover {
  text-decoration: none;
  transform: translateY(5px);
  filter: none;
}

@media screen and (max-width: 768px) {
  .Pagetop {
    bottom: 3.2vw;
    right: 0;
    filter: drop-shadow(2.9px 3.5px 0 rgba(0, 0, 0, 0.1));
  }

  .Pagetop a {
    width: 18.13vw;
    height: 18.13vw;
  }

  .Pagetop a:hover {
    transform: translateY(0);
  }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    Top / PC
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ================================
        Mv
================================ */

#Top.Top {
  max-width: 970px;
  position: relative;
  margin-inline: auto;
  width: 100%;
  padding: min(48px, 4.9484536vw) 0 min(64px, 6.5979381vw);
}
@media screen and (max-width: 768px) {
  #Top.Top {
    padding: 6.4vw 0 8.5333333vw;
  }
}

#Top #Mv.Mv {
  padding-bottom: min(38px, 3.9175258vw);
}
@media screen and (max-width: 768px) {
  #Top #Mv.Mv {
    padding-bottom: 4.93vw;
  }
}

#Top #Mv h1 {
  width: min(737px, 75.9793vw);
  padding-bottom: min(30px, 3.0927835vw);
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  #Top #Mv h1 {
    width: 79.2vw;
    padding-bottom: min(64px, 4.53vw);
  }
}

#Top #Mv h2 {
  text-align: center;
  font-size: var(--FontSize20);
  line-height: 2;
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  #Top #Mv h2 {
    font-size: var(--FontSize28);
  }
}

#Top #Mv p {
  width: min(730px, 58.87vw);
  margin-inline: auto;
}

/* ================================
        List
================================ */
#Top #List ul {
  display: flex;
  justify-content: center;
  align-items: stretch;
  /* flex-wrap: wrap; */
  gap: min(20px, 2.66vw);
  width: 100%;
}

#Top #List ul li {
  width: calc((100% - min(20px, 2.66vw)) / 2);
  display: flex;
  flex: 1;
  flex-direction: column;
  border: 2.5px solid var(--CommonColoDarkGreen);
  background: var(--CommonColorWhite);
  position: relative;
  border-radius: 0 min(25px, 6.66vw) 0 min(25px, 6.66vw);
  padding: 24px;
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px) {
  #Top #List ul li {
    border-radius: 0 min(50px, 6.66vw) 0 min(50px, 6.66vw);
    padding: min(35px, 4.66vw) min(16px, 2.13vw);
  }
}

#Top #List .BtnList {
  margin-top: 0;
}

#Top #List h3 {
  padding-bottom: min(30px, 4vw);
}
@media screen and (max-width: 768px) {
  #Top #List h3 {
    padding-bottom: min(30px, 4vw);
  }
}

#Top #List h4 {
  position: relative;
  width: min(176px, 18.14vw);
  padding-bottom: min(40px, 4.123vw);
}

#Top #List h4::after {
  content: "";
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translateX(-50%);
  width: 65px;
  border: 2px solid var(--CommonColoDarkGreen);
}

@media screen and (max-width: 768px) {
  #Top #List h4 {
    position: absolute;
    width: min(19px, 2.53vw);
    top: min(35px, 4.66vw);
    right: min(16px, 2.13vw);
    transform: unset;
    margin: 0 auto;
  }
  #Top #List h4::after {
    display: none;
  }
}

#Top #List ul li > p {
  /* height: calc(min(219px, 29.2vw) * var(--scale46)); */
  flex-shrink: 0;
  margin-bottom: min(10px, 1.33vw);
}

@media screen and (max-width: 768px) {
  #Top #List ul li > p {
    flex-shrink: 0;
    margin-bottom: min(10px, 1.33vw);
  }
}

#Top #List ul li > p img {
  margin: auto;
}

/* --------------
	ListATQ
-----------------*/
#Top #List .ListATQ h3 {
  width: min(201px, 26.8vw);
  padding-bottom: 15px;
}
@media screen and (max-width: 768px) {
  #Top #List .ListATQ h3 {
    width: 33.8666667vw;
    padding-bottom: min(30px, 4vw);
  }
}

#Top #List .List-flex {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  margin-bottom: min(25px, 3.333333333vw);
}
@media screen and (max-width: 768px) {
  #Top #List .List-flex {
    display: block;
  }
}

#Top #List .List-flex-right {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 14px;
}

@media screen and (max-width: 768px) {
  #Top #List .List-flex-right {
    display: block;
    padding-top: 0;
  }
}

#Top #List .ListATQ p {
  width: min(224px, 29.86666666vw);
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 768px) {
  #Top #List .ListATQ p {
    width: 100%;
  }
}

/* --------------
	ListSecond
-----------------*/
#Top #List .ListSecond h3 {
  width: min(232px, 30.93vw);
}

@media screen and (max-width: 768px) {
  #Top #List .ListSecond h3 {
    width: 18.93vw;
  }
}

#Top #List .ListSecond p {
  width: min(163px, 21.73vw);
  margin-inline: auto;
  transform: translateY(max(-22px, -2.93vw));
}

/* --------------
	ListPI
-----------------*/
#Top #List .ListPI h3 {
  width: min(201px, 26.8vw);
  padding-bottom: 15px;
}
@media screen and (max-width: 768px) {
  #Top #List .ListPI h3 {
    width: 33.8666667vw;
    padding-bottom: min(30px, 4vw);
  }
}

#Top #List .ListPI p {
  width: min(224px, 29.8666666vw);
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 768px) {
  #Top #List .ListPI p {
    width: 100%;
  }
}

#Top .ListMore {
  width: min(855.61px, 88.2072165vw);
  margin-inline: auto;
  margin-top: min(50px, 5.1546392vw);
}

@media screen and (max-width: 768px) {
  #Top .ListMore {
    width: 72.26vw;
    margin-top: min(74px, 9.866vw);
  }
}

#Top .ListMore img {
  margin: auto;
}

#Top .CommonBtn a {
  width: 100%;
  font-size: var(--FontSize16);
  height: 70px;
  font-weight: var(--BaseFontBold);
  border: min(2px, 0.53vw) solid var(--CommonColoDarkGreen);
}

@media screen and (max-width: 768px) {
  #Top .CommonBtn a {
    font-size: var(--FontSize24);
    height: 23vw;
  }
}

@media screen and (max-width: 768px) {
  .CommonBtn a .Font {
    /* transform: translateX(max(-10px, -1.33vw)); */
    padding: 1.33vw 4vw 1.33vw 1.33vw;
  }
}
#Top .CommonBtn a ._small {
  font-size: var(--FontSize14);
  display: block;
  line-height: 1.6;
  font-weight: var(--BaseFontMedium);
}
@media screen and (max-width: 768px) {
  #Top .CommonBtn a ._small {
    font-size: var(--FontSize20);
  }
}

/* ################################################
    Sub
################################################ */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    Sub Common
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

#Sub.Sub {
  position: relative;
  max-width: 970px;
  margin-inline: auto;
  width: 100%;
  /* padding: min(24px, 3.2vw) 0 min(240px, 32vw); */
  padding: min(48px, 4.9484536vw) 0 min(64px, 6.5979381vw);
}
@media screen and (max-width: 768px) {
  #Sub.Sub {
    padding: 6.4vw 0 8.5333333vw;
  }
}

/* ================================
        Mv
================================ */
#Sub .Mv {
  max-width: 970px;
  margin-inline: auto;
  width: 100%;
  padding-bottom: 40px;
}

@media screen and (max-width: 768px) {
  #Sub .Mv {
    padding-bottom: 6.79vw;
  }
}

#Sub #Mv .MvArea {
  position: relative;
  /* margin-top: min(75px, 10vw); */
}

#Sub .Mv h2 {
  font-size: var(--FontSize18);
  line-height: 2;
}

@media screen and (max-width: 768px) {
  #Sub .Mv h2 {
    font-size: var(--FontSize28);
  }
}

#Sub .Mv h3 {
  position: absolute;
  width: min(17px, 2.266vw);
  top: 0;
  right: 0;
}

/* ================================
        Study
================================ */
#Sub .Study h2 {
  width: min(360px, 37.1134021vw);
  margin-inline: auto;
  padding: min(48px, 4.9484536vw) 0 min(32px, 3.2989691vw);
}
@media screen and (max-width: 768px) {
  #Sub .Study h2 {
    width: min(429px, 57.19vw);
    padding: min(60px, 16vw) 0 min(32px, 8.53vw);
  }
}

#Sub .Study h4 span {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: min(71px, 7.3195876vw);
  height: min(51px, 5.257732vw);
}
@media screen and (max-width: 768px) {
  #Sub .Study h4 span {
    padding-left: min(86px, 11.46vw);
    height: min(82px, 10.93vw);
  }
}

#Sub .Study h4 span::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: min(51px, 5.257732vw);
  aspect-ratio: 1/1;
  display: block;
  background-image: url("icon-q-pc.png");
  background-size: 100%;
  background-repeat: no-repeat;
}

@media screen and (max-width: 768px) {
  #Sub .Study h4 span::before {
    width: min(70px, 9.33vw);
    background-image: url("icon-q.png");
  }
}

#Sub .StudyAnswer {
  margin-bottom: min(48px, 4.948vw);
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  #Sub .StudyAnswer {
    margin-bottom: 7.46vw;
  }
}

#Sub .StudyAnswerInner div {
  position: relative;
  /* display: flex;
  align-items: center; */
  padding-left: min(71px, 7.3195876vw);
  /* height: min(82px, 10.93vw); */
  line-height: 2;
}
@media screen and (max-width: 768px) {
  #Sub .StudyAnswerInner div {
    padding-left: min(86px, 11.46vw);
  }
}

#Sub .StudyAnswerInner div:first-child:before {
  content: "";
  position: absolute;
  top: 2%;
  left: 0;
  width: min(51px, 5.257732vw);
  aspect-ratio: 1/1;
  display: block;
  background-image: url("icon-a-pc.png");
  background-size: 100%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  #Sub .StudyAnswerInner div:first-child:before {
    width: min(70px, 9.33vw);
    background-image: url("icon-a.png");
  }
}

#Sub .StudyAnswer ._orange {
  color: var(--CommonColoOrange);
  font-weight: var(--BaseFontBold);
}

#Sub .StudyAnswer div p + p {
  padding-top: min(10px, 2.66vw);
}

#Sub .StudyIconA {
  flex: 0 0 min(70px, 9.33vw);
  transform: translateY(min(8px, 1.06vw));
}

/* ================================
        Breadcrumb
================================ */
#Sub .Breadcrumb {
  width: 100%;
  font-size: var(--FontSize24);
}

#Sub .BreadcrumbList {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

#Sub .BreadcrumbItem {
  display: flex;
  align-items: center;
  position: relative;
}

#Sub .BreadcrumbItem:first-child a {
  padding-left: min(41px, 5.46vw);
}

#Sub .BreadcrumbItem:first-child a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0px;
  margin: auto;
  width: min(30px, 4vw);
  aspect-ratio: 60 / 59;
  display: block;
  background-image: url("icon-home.png");
  background-size: contain;
  background-repeat: no-repeat;
}

#Sub .BreadcrumbItem + .BreadcrumbItem::before {
  content: "/";
  margin: 0 min(17px, 2.26vw);
  color: var(--CommonColorBrown);
}

#Sub .BreadcrumbItem a {
  display: flex;
  align-items: center;
  color: var(--CommonColorBrown);
  text-decoration: none;
}
#Sub .BreadcrumbItem a:hover {
  text-decoration: underline;
}

#Sub .BreadcrumbCurrent {
  color: var(--PagerColorGreen);
}

/* ================================
        Layout
================================ */

.Center {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: min(35px, 4.66vw);
  padding-right: min(35px, 4.66vw);
  max-width: 970px;
  position: relative;
}

/* ================================
        Parts
================================ */
#Sub .SubTag {
  display: inline-block;
  text-align: center;
  line-height: 1.5;
  background: var(--CommonColorWhite);
  color: var(--CommonColorBrown);
  border: min(1.5px, 0.4vw) solid var(--CommonColoGreen);
  border-radius: min(10px, 2.66vw);
  margin: 0 auto;
  font-size: var(--FontSize16);
  font-weight: var(--BaseFontMedium);
  padding: min(11px, 1.46vw) min(16px, 2.13vw);
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  #Sub .SubTag {
    font-size: var(--FontSize24);
    padding: min(12px, 3.2vw) min(16px, 4.2666667vw);
    margin-bottom: min(56px, 7.46vw);
  }
}

#Sub .SubGreenBox._small {
  background: var(--SliderColor1);
  border-radius: min(16px, 4.8vw);
  padding: min(40px, 4.1237113vw) min(56px, 5.7731959vw);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px) {
  #Sub .SubGreenBox._small {
    padding: min(56px, 7.466vw) min(28px, 3.73vw);
  }
}

#Sub .SubCautionBox {
  background: var(--CommonColoOrange);
  border-radius: min(16px, 3.2vw);
  padding: min(28px, 3.733vw) min(56px, 5.7731959vw);
  color: var(--CommonColorWhite);
  font-size: var(--FontSize20);
  font-weight: var(--BaseFontMedium);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(20px, 2.66vw);
  margin-top: min(40px, 5.33vw);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  #Sub .SubCautionBox {
    font-size: var(--FontSize28);
  }
}

#Sub .SubCautionBox span {
  flex: 0 0 min(36.8px, 3.7938144vw);
}
@media screen and (max-width: 768px) {
  #Sub .SubCautionBox span {
    flex: 0 0 min(60px, 8vw);
  }
}

#Sub .SubBorderBox {
  line-height: 1.5;
  padding: min(25px, 2.577vw) min(32px, 3.29vw);
  background: var(--CommonColorWhite);
  color: var(--CommonColorBrown);
  border: min(2px, 0.53vw) solid var(--CommonColoGreen);
  border-radius: min(16px, 4.8vw);
  font-size: var(--FontSize20);
  font-weight: var(--BaseFontMedium);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px) {
  #Sub .SubBorderBox {
    padding: 5.33vw;
    font-size: var(--FontSize28);
  }
}

#Sub .SubBorderBox + .SubBorderBox {
  margin-top: min(24.5px, 5.2vw);
}

#Sub .SubPointBox {
  padding: min(48px, 4.948vw) min(40px, 4.123vw) min(24px, 2.47422vw)
    min(40px, 4.123vw);
  background: var(--CommonColorWhite);
  color: var(--CommonColorBrown);
  border: min(2px, 0.53vw) solid var(--CommonColoGreen);
  border-radius: min(16px, 4.8vw);
  font-size: var(--FontSize16);
  font-weight: var(--BaseFontMedium);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
  letter-spacing: -0.05em;
  margin-top: min(60px, 6.185vw);
  position: relative;
  text-align: center;
  line-height: 26px;
}

@media screen and (max-width: 768px) {
  #Sub .SubPointBox {
    padding: 10.13vw 5.33vw 5.33vw 5.33vw;
    font-size: var(--FontSize28);
    margin-top: 13.06vw;
    text-align: left;
  }
}

#Sub .SubPointBoxTitle {
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -50%);

  white-space: nowrap;
  z-index: 1;
  font-size: var(--FontSize20);
  font-weight: var(--BaseFontBold);
  color: var(--CommonColorWhite);
  background: var(--CommonColoGreen);
  text-align: center;
  border-radius: min(8px, 2.13vw);
  padding: min(16px, 1.6494845vw) min(32px, 3.298vw);
  line-height: 1;
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px) {
  #Sub .SubPointBoxTitle {
    font-size: var(--FontSize28);
    padding: min(20px, 2.66vw) min(35px, 4.66vw);
    line-height: 1.4;
  }
}

#Sub .SubTriangleTitle {
  font-size: var(--FontSize20);
  font-weight: var(--BaseFontBold);
  text-align: center;
  margin-bottom: min(20px, 2.0618557vw);
  line-height: 1.4;
  position: relative;
}
@media screen and (max-width: 768px) {
  #Sub .SubTriangleTitle {
    font-size: var(--FontSize28);
    margin-bottom: min(40px, 5.33vw);
  }
}

#Sub .SubTriangleTitle ._small {
  font-size: var(--FontSize16);
  font-weight: var(--BaseFontMedium);
}
@media screen and (max-width: 768px) {
  #Sub .SubTriangleTitle ._small {
    font-size: var(--FontSize24);
  }
}

#Sub .SubTriangleTitle._ornament span {
  content: "";
  position: relative;
}

#Sub .SubTriangleTitle._ornament span::before {
  content: "";
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  left: max(-36px, -4.8vw);
  width: min(24px, 3.2vw);
  aspect-ratio: 48 / 38;
  background-image: url(icon-triangle-b.png);
  background-size: 100%;
  background-repeat: no-repeat;
}

#Sub .SubItemList {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: min(16px, 1.6494845vw);
}
@media screen and (max-width: 768px) {
  #Sub .SubItemList {
    gap: 0;
  }
}

#Sub .SubItemList li {
  width: calc((100% - min(32px, 3.2989691vw)) / 3);
  text-align: center;
}

@media screen and (max-width: 768px) {
  #Sub .SubItemList li {
    width: 100%;
    padding-bottom: min(20px, 5.3333333vw);
    text-align: left;
  }
  #Sub .SubItemList li:last-child {
    padding-bottom: min(12px, 1.6vw);
  }
}

#Sub .SubItemList li p {
  font-size: var(--FontSize14);
  letter-spacing: -0.07em;
}
@media screen and (max-width: 768px) {
  #Sub .SubItemList li p {
    font-size: var(--FontSize28);
  }
}

#Sub .SubItemTitle {
  font-size: var(--FontSize16);
  font-weight: var(--BaseFontBold);
  color: var(--CommonColorWhite);
  background: var(--CommonColoGreen);
  text-align: center;
  border-radius: 0 min(16px, 1.6494845vw) 0 min(16px, 1.6494845vw);
  width: min(197px, 20.3092784vw);
  padding: min(16px, 1.6494845vw) 0;
  line-height: 1.4;
  position: relative;
  margin: 0 auto min(16px, 1.6494845vw);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 768px) {
  #Sub .SubItemTitle {
    font-size: var(--FontSize24);
    border-radius: 0 min(16px, 4.2666667vw) 0 min(16px, 4.2666667vw);
    width: min(258px, 34.4vw);
    margin: 0 auto min(16px, 4.2666667vw);
    padding: min(20px, 2.66vw) 0;
  }
}

#Sub .SubNumberFlexArea {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: min(20px, 2.061vw);
}

@media screen and (max-width: 768px) {
  #Sub .SubNumberFlexArea {
    flex-direction: column;
    gap: 4vw;
  }
}

#Sub .SubNumberFlex {
  width: calc((100% - min(20px, 2.061vw)) / 2);
  background: var(--SliderColor1);
  border-radius: min(16px, 4.8vw);
  padding: min(32px, 3.298vw);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
  font-size: var(--FontSize16);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: min(28px, 2.886vw);
  min-height: 280px;
}

@media screen and (max-width: 768px) {
  #Sub .SubNumberFlex {
    width: 100%;
    padding: 5.333vw;
    font-size: var(--FontSize24);
    gap: 4.266vw;
    min-height: auto;
  }
}

#Sub .SubNumberFlex p {
  flex: 0 1 min(84px, 8.659vw);
}

@media screen and (max-width: 768px) {
  #Sub .SubNumberFlex p {
    flex: 0 1 16.53vw;
  }
}

#Sub .SubNumberFlex > div {
  flex: 1;
  transform: translateX(max(-10px, -1.03vw));
}

@media screen and (max-width: 768px) {
  #Sub .SubNumberFlex > div {
    transform: translateX(0);
  }
}

#Sub .SubNumberFlexTitle {
  font-weight: var(--BaseFontBold);
  font-size: var(--FontSize18);
  padding-bottom: 10px;
  margin-right: max(-15px, -1.546vw);
}

@media screen and (max-width: 768px) {
  #Sub .SubNumberFlexTitle {
    font-size: var(--FontSize28);
    padding-bottom: 1.33vw;
    margin-right: 0;
  }
}

/* ================================
        Anchor
================================ */
.SubAnchorList {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: min(18px, 2.4vw);
  margin-bottom: min(90px, 12vw);
}

.SubAnchorList li {
  width: calc((100% - min(72px, 9.6vw)) / 5);
}

@media screen and (max-width: 768px) {
  .SubAnchorList {
    gap: 4.8vw 2.4vw;
  }
  .SubAnchorList._2column {
    padding: 0 calc(((100% - min(39px, 4.8vw)) / 3) / 2);
  }
  .SubAnchorList li {
    width: calc((100% - min(39px, 4.8vw)) / 3);
  }
  .SubAnchorList._2column li {
    width: calc((100% - min(39px, 4.8vw)) / 2);
  }
}

.SubAnchorList a {
  position: relative;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px;
  padding: 12px 0 20px;
  border: min(2px, 0.53vw) solid var(--CommonColoGreen);
  border-radius: 0 min(14px, 3.73vw) 0 min(14px, 3.73vw);
  background-color: var(--CommonColorWhite);
  font-size: var(--FontSize16);
  text-align: center;
  font-weight: var(--BaseFontBold);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
  transition: 0.3s;
}

@media screen and (max-width: 768px) {
  .SubAnchorList a {
    height: min(192px, 25.6vw);
    padding: min(36px, 4.8vw) 0 min(56px, 7.46vw);
    font-size: var(--FontSize24);
    letter-spacing: -0.08em;
  }
}

.SubAnchorList a:hover {
  text-decoration: none;
  transform: translateY(5px);
  box-shadow: none;
}

.SubAnchorList a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -15px;
  width: 30px;
  aspect-ratio: 1 / 1;
  display: block;
  background-image: url("icon-anchor-arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  box-shadow: min(8px, 1.06vw) min(8px, 1.06vw) 0px max(-4px, -0.53vw)
    rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  transition: 0.3s;
}

@media screen and (max-width: 768px) {
  .SubAnchorList a::after {
    width: min(64px, 8.53vw);
    bottom: max(-32px, -4.26vw);
  }
}

.SubAnchorList a:hover::after {
  text-decoration: none;
  box-shadow: none;
}

/* ================================
        Accordion
================================ */

#Sub .AccordionItem {
  background-color: var(--CommonColorWhite);
  border-radius: min(16px, 4.26vw);
  border: min(2px, 0.53vw) solid var(--CommonColoGreen);
  box-shadow: min(4px, 1.06vw) min(4px, 1.06vw) 0px 0px rgba(0, 0, 0, 0.1);
}
#Sub .AccordionItem + .AccordionItem {
  margin-top: min(48px, 12.8vw);
}

#Sub .AccordionHeader,
#Sub .AccordionContent {
  width: 100%;
  position: relative;
  line-height: 1.8;
}
#Sub .AccordionHeader {
  display: flex;
  align-items: center;
}

#Sub .AccordionHeader {
  /* cursor: pointer; */
  padding: min(32px, 3.2989691vw);
}
@media screen and (max-width: 768px) {
  #Sub .AccordionHeader {
    padding: min(53px, 7.06vw) min(40px, 5.33vw);
  }
}

#Sub .AccordionHeader._open::before {
  transform: rotate(180deg);
}

#Sub .AccordionHeader._open::after {
  transform: rotate(180deg);
}

#Sub .AccordionHeader::before {
  display: none;
  
  position: absolute;
  content: "";
  top: 50%;
  right: min(40px, 5.333vw);
  width: min(40px, 5.333vw);
  height: min(4px, 0.53vw);
  background-color: var(--CommonColoGreen);
  border-radius: 10px;
  transform: rotate(90deg);
  transition: all 0.3s ease-in-out;
}

#Sub .AccordionHeader::after {
  display: none;
  
  position: absolute;
  content: "";
  top: 50%;
  right: min(40px, 5.333vw);
  width: min(40px, 5.333vw);
  height: min(4px, 0.53vw);
  background-color: var(--CommonColoGreen);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
}

#Sub .AccordionContent {
  /* display: none; */
  position: relative;
  font-size: var(--FontSize16);
  padding: min(32px, 3.2989691vw);
}
@media screen and (max-width: 768px) {
  #Sub .AccordionContent {
    font-size: var(--FontSize28);
    padding: min(56px, 7.46vw) min(40px, 5.33vw) min(86px, 11.46vw);
  }
}

#Sub .AccordionContent::before {
  content: "";
  position: absolute;
  top: 0;
  left: min(40px, 5.33vw);
  right: min(40px, 5.33vw);
  border-top: 2px solid var(--SliderColor1);
}

#Sub .StudyImgArea {
  display: flex;
  justify-content: center;
  gap: min(16px, 1.6494845vw);
}

@media screen and (max-width: 768px) {
  #Sub .StudyImgArea {
    flex-direction: column;
    gap: 0;
  }
}

#Sub .Study .AccordionItem h4 span img {
  display: block;
  width: auto;
  max-width: 100%;
}

#Sub .Study .AccordionItem h4 span img._lines1 {
  height: calc(min(31px, 3.196vw) * 0.7);
}

#Sub .Study .AccordionItem h4 span img._lines2 {
  height: calc(min(81px, 8.351vw) * 0.7);
}

@media screen and (max-width: 768px) {
  #Sub .Study .AccordionItem h4 span img._lines1,
  #Sub .Study .AccordionItem h4 span img._lines2 {
    height: auto;
  }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    allergen / アレルゲン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ================================
        Mv
================================ */
#Sub #Info .Mv h1 {
  width: min(554.75px, 57.1907216vw);
  padding-bottom: 30px;
}

@media screen and (max-width: 768px) {
  #Sub #Info .Mv h1 {
    width: 83.9333333vw;
    padding-bottom: 6vw;
  }
}

/* ================================
        Study
================================ */
#Sub #Info .StudyIngredients {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: min(16px, 1.6494845vw) min(16px, 1.6494845vw);
}

#Sub #Info .StudyIngredients,
#Sub #Info .StudyIngredients.StudyIngredientsPcCol6 {
  margin: 0
    calc(((100% - min(112px, 11.5463918vw)) / 8 + min(16px, 1.6494845vw)));
}

@media screen and (max-width: 768px) {
  #Sub #Info .StudyIngredients,
  #Sub #Info .StudyIngredients.StudyIngredientsPcCol6 {
    gap: min(28px, 3.73vw) min(14px, 1.86vw);
    margin: 0;
    justify-content: flex-start;
  }
}

#Sub #Info .StudyIngredients .sp {
  display: inline-block;
}

#Sub #Info .StudyIngredients:first-of-type {
  padding-bottom: min(32px, 3.2989691vw);
}
@media screen and (max-width: 768px) {
  #Sub #Info .StudyIngredients:first-of-type {
    padding-bottom: min(64px, 8.53vw);
  }
}

#Sub #Info .StudyIngredients li,
#Sub #Info .StudyIngredients.StudyIngredientsPcCol6 li {
  width: calc((100% - min(80px, 8.2474227vw)) / 6);
}

@media screen and (max-width: 768px) {
  #Sub #Info .StudyIngredients li,
  #Sub #Info .StudyIngredients.StudyIngredientsPcCol6 li {
    width: calc((100% - min(42px, 5.6vw)) / 4);
  }
}

#Sub #Info .StudyIngredients ._jp {
  font-size: var(--FontSize13);
  font-weight: var(--BaseFontMedium);
  text-align: center;
  padding-top: min(10px, 1.33vw);
  line-height: 1.4;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  #Sub #Info .StudyIngredients ._jp {
    font-size: var(--FontSize24);
  }
}

#Sub #Info .StudyIngredients ._jp._adjust {
  margin-inline: max(-4px, -0.53vw);
}

#Sub #Info .StudyIngredients ._en {
  font-size: var(--FontSize13);
  color: var(--CommonColoOrange);
  font-family: var(--EnFont);
  font-weight: var(--BaseFontSemiBold);
  text-align: center;
  line-height: 1.3;
  letter-spacing: -0.8px;
  overflow-wrap: break-word;
  hyphens: auto;
  margin-inline: max(-5px, -0.66vw);
}

@media screen and (max-width: 768px) {
  #Sub #Info .StudyIngredients ._en {
    font-size: var(--FontSize24);
    margin-inline: 0;
  }
}

#Sub #Info .Study .StudyTitleh5 {
  margin-inline: auto;
  padding-bottom: min(56px, 7.46vw);
}

/* --------------
	Study _first
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._first h4 span img {
    width: 59.59vw;
  }
}

/* --------------
	Study _second
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._second h4 span img {
    width: 59.59vw;
  }
}

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._second .StudyImg1 {
    margin-bottom: min(56px, 7.46vw);
  }
}

#Sub #Info .Study .AccordionItem._second .StudyTitleh5._first {
  width: min(190px, 25.33vw);
}

#Sub #Info .Study .AccordionItem._second .StudyTitleh5._second {
  width: min(383px, 51.06vw);
}

/* --------------
	Study _third
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._third h4 span img {
    width: min(448px, 59.73vw);
  }
}

#Sub #Info .Study .AccordionItem._third .StudyTitleh5 {
  width: min(248px, 33.06vw);
}

/* --------------
	Study _fourth
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fourth h4 span img {
    width: min(448px, 59.73vw);
  }
}

#Sub #Info .Study .AccordionItem._fourth .StudyIngredients:first-of-type {
  padding-bottom: 0;
}

/* --------------
	Study _fifth
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth h4 span img {
    width: min(446px, 59.46vw);
  }
}

#Sub #Info .Study .AccordionItem._fifth .SubGreenBox._small {
  padding: min(40px, 4.1237113vw) min(24px, 2.474vw);
}

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .SubGreenBox._small {
    padding: 7.466vw 5.33vw;
  }
}

#Sub #Info .Study .AccordionItem._fifth .StudyImg1 {
  position: relative;
}
#Sub #Info .Study .AccordionItem._fifth .StudyImg1::after {
  content: "";
  position: absolute;
  bottom: min(3px, 0.3092784vw);
  right: min(24px, 2.4742268vw);
  height: min(99px, 10.2vw);
  aspect-ratio: 92/99;
  background-image: url("info-study5-person1-pc.png");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
}
@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .StudyImg1::after {
    background-image: url("info-study5-person1-sp.png");
    height: 19.86vw;
    aspect-ratio: 140 / 149;
    bottom: 1vw;
    right: 4.1333vw;
  }
}

#Sub #Info .Study .AccordionItem._fifth .StudyImg2 {
  position: relative;
}

#Sub #Info .Study .AccordionItem._fifth .StudyImg2::after {
  content: "";
  position: absolute;
  bottom: min(3px, 0.3092784vw);
  right: min(24px, 2.4742268vw);
  height: min(97px, 10vw);
  aspect-ratio: 67/97;
  background-image: url("info-study5-person2-pc.png");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: bottom center;
}

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .StudyImg2::after {
    background-image: url("info-study5-person2-sp.png");
    height: 18.53vw;
    aspect-ratio: 96 / 137;
    bottom: 1vw;
    right: 5.33vw;
  }
}

#Sub #Info .Study .AccordionItem._fifth .StudyImgFifth {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}
@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .StudyImgFifth {
    gap: 0;
  }
}

#Sub #Info .Study .AccordionItem._fifth .StudyImgFifthItem {
  width: calc((100% - min(32px, 3.2989691vw)) / 2);
}

@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .StudyImgFifthItem {
    width: 100%;
  }
}

#Sub #Info .Study .AccordionItem._fifth .StudyImgFifth .NextArrow {
  display: block;
  /* position: absolute;
  top: 50%;
  left: 50%;
  margin-left: min(-11px, -1.1340206vw); */
  width: min(20px, 2.0618557vw);
  height: min(20px, 2.0618557vw);
  margin: min(36px, 3.7113402vw) min(6px, 0.6185567vw) 0;
  background: url("icon-triangle-g-left.png") no-repeat center / contain;
}
@media screen and (max-width: 768px) {
  #Sub #Info .Study .AccordionItem._fifth .StudyImgFifth .NextArrow {
    position: static;
    width: 100%;
    width: min(64px, 8.53vw);
    height: min(56px, 7.46vw);
    margin: min(16px, 4.2666667vw) auto;
    background: url("icon-triangle-g.png") no-repeat center / contain;
  }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    Management / 一貫管理
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ================================
        Mv
================================ */
#Sub #Management .Mv h1 {
  width: min(361px, 37.21vw);
  padding-bottom: 30px;
}

@media screen and (max-width: 768px) {
  #Sub #Management .Mv h1 {
    width: 54.4vw;
  }
}

/* ================================
        Study
================================ */
/* --------------
	Study _first
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._first h4 span img {
    width: 59.46vw;
  }
}

/* --------------
	Study _second
-----------------*/

#Sub #Management .Study .AccordionItem._second .SubGreenBox._small {
  padding: min(40px, 4.1237113vw) min(28px, 2.886vw);
}

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._second .SubGreenBox._small {
    padding: min(56px, 7.466vw) min(40px, 5.333vw);
  }
}

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._second h4 span img {
    width: 46vw;
  }
}

#Sub #Management .Study .AccordionItem._second .StudyImg1 {
  width: min(800px, 82.474vw);
  margin-inline: auto;
  margin-top: min(48px, 4.94vw);
}
@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._second .StudyImg1 {
    width: 76.93vw;
    margin-top: 7.6vw;
  }
}

#Sub #Management .Study .AccordionItem._second .StudyTitleh5 {
  font-size: var(--FontSize24);
  font-weight: var(--BaseFontBold);
  text-align: center;
  padding-bottom: min(32px, 3.298vw);
}

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._second .StudyTitleh5 {
    font-size: var(--FontSize32);
    padding-bottom: 7.46vw;
  }
}

@media screen and (max-width: 768px) {
  #Sub .SubSolutionTitleArea {
    display: contents;
  }
}

#Sub #Management .SubSolution {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(24px, 2.47vw);
}

@media screen and (max-width: 768px) {
  #Sub #Management .SubSolution {
    display: block;
  }
}

#Sub #Management .SubSolution > p.pc {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}

#Sub .SubSolutionTitle {
  color: var(--CommonColoOrange);
  font-size: var(--FontSize24);
  font-weight: var(--BaseFontBold);
  display: flex;
  justify-content: space-between;
  /* align-items: flex-start; */
  align-items: center;
  margin-bottom: min(10px, 1.03vw);
}

@media screen and (max-width: 768px) {
  #Sub .SubSolutionTitle {
    font-size: var(--FontSize32);
    margin-bottom: 4vw;
  }
}

#Sub .SubSolution p {
  flex: 0 0 min(104px, 10.72vw);
  font-size: var(--FontSize16);
}

@media screen and (max-width: 768px) {
  #Sub .SubSolution p {
    flex: 0 0 15.2vw;
    font-size: var(--FontSize28);
  }
}

@media screen and (min-width: 767px) {
  #Sub #Management .Study .AccordionItem._second .StudyTitleh5 {
    padding-bottom: 0;
  }

  #Sub #Management .SubBorderBoxItems {
    display: flex;
    justify-content: center;
    align-items: end;
    gap: min(20px, 2.06185vw);
  }

  #Sub #Management .SubBorderBox {
    padding: 20px;
    margin-top: 32px;
    flex-basis: 270px;
    height: 309px;
    position: relative;
  }

  #Sub #Management .SubSolution {
    flex-direction: column-reverse;
    gap: 20px;
  }

  #Sub .SubSolutionTitle {
    font-size: clamp(14px, 7.12px + 0.8942vw, 20px);
    height: 58px;
  }

  #Sub #Management .SubBorderBox:nth-child(1) img {
    width: min(120px, 12.37vw);
  }

  #Sub #Management .SubBorderBox:nth-child(2) img {
    width: min(108px, 11.13vw);
  }

  #Sub #Management .SubBorderBox:nth-child(3) img {
    width: min(100px, 12.37vw);
  }
}

/* --------------
	Study _third
-----------------*/

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._third h4 span img {
    width: 50.66666vw;
  }
}

#Sub #Management .Study .AccordionItem._third .StudyImg1 {
  width: min(176px, 18.14vw);
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._third .StudyImg1 {
    width: 43.06vw;
    margin-top: 7.46vw;
  }
}

#Sub #Management .Study .AccordionItem._third .StudyAnswer {
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._third .StudyAnswer {
    display: block;
    gap: 0;
  }
}

#Sub #Management .Study .AccordionItem._third .StudyAnswerInner {
  flex: 1;
  letter-spacing: -0.06em;
}
@media screen and (max-width: 768px) {
  #Sub #Management .Study .AccordionItem._third .StudyAnswerInner {
    flex: none;
    letter-spacing: 0;
  }
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    Control
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ================================
        Mv
================================ */
#Sub #Control .Mv h1 {
  width: min(569px, 75.86vw);
  padding-bottom: min(60px, 8vw);
}

/* ================================
        Policy
================================ */
#Sub #Control .Policy h2 {
  text-align: center;
  font-weight: var(--BaseFontBold);
  padding-bottom: 50px;
}

.CircleMenu {
  position: relative;
  width: 640px;
  height: 640px;
  margin-inline: auto;

  background-image: url(management-policy-bg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.CircleMenu__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.CircleMenu__item {
  position: absolute;
}

/* 上：中央揃え */
.CircleMenu__item--top {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

/* 右上・右下：left位置を揃えて左右対称の基準にする */
.CircleMenu__item--upperRight {
  top: 28%;
  left: 78%;
}

.CircleMenu__item--lowerRight {
  top: 68%;
  left: 78%;
}

/* 左上・左下：rightで指定し、upperRight/lowerRightと対称の値にする */
.CircleMenu__item--upperLeft {
  top: 28%;
  right: 78%;
}

.CircleMenu__item--lowerLeft {
  top: 68%;
  right: 78%;
}

.CircleMenu__link {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: #222;
  white-space: nowrap;
  text-decoration: underline;
}

.CircleMenu__link._column {
  flex-direction: column-reverse;
}

.CircleMenu__link:hover {
  text-decoration: none;
}

.CircleMenu__link._reverse {
  flex-direction: row-reverse;
}

.CircleMenu__link::before {
  content: "";
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  background-image: url(icon-arrow-r.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.CircleMenu__label {
  font-weight: bold;
  /* text-decoration: underline; */
  line-height: 1.5;
  text-align: center;
}

@media (max-width: 767px) {
  .CircleMenu {
    width: 340px;
    height: 340px;
  }

  .CircleMenu__link::before {
    width: 28px;
    height: 28px;
  }
}
