@charset "UTF-8";
/* * {
  --keycolor_01: rgb(251, 234, 224);
  --keycolor_02: rgb(251, 151, 101);
} */
* {
  /* --keycolor_01: rgb(252, 241, 208);
  --keycolor_02: rgb(255, 164, 46); */
  --keycolor_01: rgb(230, 255, 216);
  --keycolor_02: rgb(98, 233, 44);
}

.pc-none {
  display: block;
}
@media only screen and (min-width: 1441px) {
  .pc-none {
    display: none;
  }
}

.tab-none {
  display: block;
}
@media only screen and (max-width: 767px) {
  .tab-none {
    display: none;
  }
}

.sp-none {
  display: block;
}
@media only screen and (max-width: 499px) {
  .sp-none {
    display: none;
  }
}

.only-sp {
  display: none;
}
@media only screen and (max-width: 499px) {
  .only-sp {
    display: block;
  }
}

.only-tab {
  display: none;
}
@media only screen and (max-width: 767px) {
  .only-tab {
    display: block;
  }
}

.only-pc {
  display: block;
}
@media only screen and (max-width: 767px) {
  .only-pc {
    display: none;
  }
}

body {
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 16rem;
  }
}

@media (min-width: 768px) {
  body {
    line-height: 2;
  }
}
img {
  min-width: 0;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

main {
  height: auto;
}

.col-1,
.col-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-top: 56rem;
}
@media only screen and (max-width: 767px) {
  .col-1,
  .col-2 {
    margin-top: 41px;
  }
}

.col-1 img {
  max-width: 100%;
}

.col-2 {
  gap: 4px;
}
.col-2 > *,
.col-2 img {
  width: auto;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .col-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 16px;
  }
  .col-2 img {
    width: 100%;
  }
}
.col-2.--height img:nth-of-type(1) {
  width: 29.4%;
}
@media only screen and (max-width: 767px) {
  .col-2.--height img:nth-of-type(1) {
    width: 100%;
    height: auto;
  }
}
.col-2.--height img:nth-of-type(2) {
  width: 67.5%;
}
@media only screen and (max-width: 767px) {
  .col-2.--height img:nth-of-type(2) {
    width: 100%;
    height: auto;
  }
}

.col-3 {
  gap: 28px;
  margin-top: 56rem;
}
@media only screen and (max-width: 767px) {
  .col-3 {
    gap: 12px;
  }
}
.col-3 > * {
  width: calc((100% - 56px) / 3);
}
@media only screen and (max-width: 767px) {
  .col-3 > * {
    width: calc((100% - 24px) / 3);
  }
}

main {
  padding-top: 0 !important;
}

@supports (height: 100svh) {
  .tu_header {
    height: calc(100svh - var(--heightHeaderPc) - 20rem);
  }
}
@supports not (height: 100svh) {
  .tu_header {
    height: calc(100vh - var(--heightHeaderPc) - 20rem);
  }
}
.mv-header {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .mv-header {
    height: auto;
  }
}

.tu_header {
  margin-top: 20rem;
  min-height: 769px;
  background: no-repeat center 118px/cover;
  background: url("../img/mv_01_pc.jpg") no-repeat left top/cover;
  border-top-left-radius: 100rem;
}
@media only screen and (max-width: 767px) {
  .tu_header {
    border-top-left-radius: 50px;
    margin-top: 10px;
    height: 110.6666666667vw;
    min-height: unset;
    position: relative;
    background-image: url("../img/mv_01_sp.jpg");
  }
}

.header-wrapper {
  position: absolute;
  bottom: 71rem;
  right: 0;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .header-wrapper {
    position: relative;
    bottom: unset;
    background-color: var(--keycolor_01);
    padding: 30px 20px;
    height: auto;
    text-align: left;
  }
}

.mv-ttl__name {
  position: relative;
  background-color: #fff;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 52rem;
  line-height: 1.3461538462;
  letter-spacing: 0em;
  font-weight: 700;
  font-size: clamp(50rem, 1.6111111111vw, 78rem);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-top: 4rem;
  padding-left: clamp(82rem, 5.6944444444vw, 123rem);
  padding-right: 32rem;
  border-top-left-radius: 20rem;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .mv-ttl__name {
    line-height: 0.8;
    position: absolute;
    bottom: 40px;
    padding-block: 0;
    padding-left: 0;
    background-color: unset;
  }
  .mv-ttl__name span {
    padding-right: 24rem;
    border-top-right-radius: 20px;
    font-size: 27px;
    line-height: 2.037037037;
    letter-spacing: 0em;
    font-weight: 700;
    background-color: #fff;
    font-family: "IBM Plex Sans JP", sans-serif;;
    padding-left: 23px;
    line-height: 1;
    padding-top: 4rem;
    padding-bottom: 0;
    position: relative;
  }
}
.mv-ttl__name::before {
  position: absolute;
  content: "";
  display: block;
  /* top: clamp(-313px, -20.8333333333vw, -265px); */
  top: clamp(-222px, -20.8333333333vw, -265px);
  /* left: 120px; */
  /* left: 460px; */
  right: 120px;
  width: clamp(840px, 58.3333333333vw, 940px);
  height: 23.6111111111vw;
  position: absolute;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1057.477" height="436.359" viewBox="0 0 1057.477 436.359"><path id="パス_1005" data-name="パス 1005" d="M-331.52-124.928q2.432-.256,2.688.9a3.165,3.165,0,0,1-.256,1.664,11.5,11.5,0,0,1-1.28,1.664,4.338,4.338,0,0,1-3.456,2.048l-74.24,6.528L-449.92-47.616q-14.976,23.424-19.328,32,.384-.256.7-.512a8.724,8.724,0,0,0,.7-.64,7.579,7.579,0,0,1,4.224-.9,5.014,5.014,0,0,1,2.688.64.522.522,0,0,1,.128.384q0,.384-2.3,2.3l-2.816,2.3a58.651,58.651,0,0,0-4.352,4.992l-5.12,6.528q-1.664,2.048-2.048,2.56-1.28,1.408-6.144,1.408-2.56,0-2.944-1.024a1.333,1.333,0,0,1,.128-.768,227.261,227.261,0,0,1,15.616-28.672q8.832-13.824,17.792-27.52L-416-111.616q-6.4.384-18.56.9l-24.96.64q-2.176.128-6.272.256h-5.248q-36.1,0-36.1-10.24,0-3.584,7.04-7.424A46.962,46.962,0,0,1-488.32-132.1a8.859,8.859,0,0,1,1.024-.256h.64q1.664,0,1.92.9.128.768-.9,1.792a51.141,51.141,0,0,1-6.912,2.816q-4.736,1.92-4.224,3.84.384,1.408,3.968,2.56,11.136,3.456,40.448,3.328,12.416,0,40.96-1.536l3.84-5.76q1.92-1.92,6.272-1.92,1.536,0,1.792.64a1.607,1.607,0,0,1-.384.64l-3.712,5.888,31.232-2.3Q-355.968-122.752-331.52-124.928ZM-416.128-29.44q-5.888,8.448-12.8,19.968l33.152-22.912q9.6-6.656,12.8-6.656,2.176,0,2.56,1.536.64,2.816-4.352,9.088a81.234,81.234,0,0,1-5.76,6.656,140.972,140.972,0,0,0-9.216,13.44q-1.792,2.944-4.608,8.832a6.316,6.316,0,0,0-.384,1.92,1.157,1.157,0,0,0,1.024.64q.9,0,5.632-2.432,15.616-8.064,34.048-27.264a4.012,4.012,0,0,1,1.024-.768,7.935,7.935,0,0,1,1.536-.512q1.28-.128,1.664.64a2.905,2.905,0,0,1-.9,1.664A170.9,170.9,0,0,1-380.416-6.912q-17.536,14.08-27.136,14.08-4.224,0-4.608-2.432a6.608,6.608,0,0,1,.256-3.072q.256-.768.512-1.792a55.825,55.825,0,0,1,7.3-12.8q3.584-4.352,10.368-13.184l2.048-2.944a5.165,5.165,0,0,0,.9-2.048l-20.1,14.08q-4.352,2.944-12.032,8.064l-7.3,4.992q-1.28,1.024-3.84,2.944A7.118,7.118,0,0,1-438.656.64q-2.944,0-3.328-1.152A2.061,2.061,0,0,1-441.6-1.92q2.048-3.072,11.648-16.9l60.8-87.552q.9-1.664,5.5-1.664,1.536,0,1.536.512v.512Zm91.392.9a5.41,5.41,0,0,1,3.968-1.28q.9,0,.9.384a2.225,2.225,0,0,1-.64,1.28A107.908,107.908,0,0,1-337.92-12.928q-9.344,6.656-11.392,7.936Q-357.76,0-362.5,0a4.2,4.2,0,0,1-4.48-3.456q-.64-2.56,1.024-6.528,2.048-4.864,10.24-15.744,4.352-5.76,10.752-13.312,1.152-1.408,4.864-1.408,1.536,0,1.792.64.128.512-.512,1.152-5.376,6.016-15.232,18.432a130.47,130.47,0,0,0-7.04,11.392q-1.152,2.56-.768,3.584a1.772,1.772,0,0,0,1.92,1.28,2.4,2.4,0,0,0,1.28-.256q-.384,0,1.536-.384Q-344.32-9.728-324.736-28.544Zm-.512-31.232q.256.512-2.176,3.2a43.478,43.478,0,0,1-3.072,3.328,5.885,5.885,0,0,1-3.456,1.28q-1.92.128-2.56-.9a3.849,3.849,0,0,1,.128-.64,58.982,58.982,0,0,1,3.84-4.736,7.694,7.694,0,0,1,5.76-2.176Q-325.5-60.288-325.248-59.776Zm48-1.664a1.836,1.836,0,0,1,1.664.448,1.007,1.007,0,0,1,0,1.344A24.118,24.118,0,0,1-285.824-48l-3.584,2.048L-294.4-28.544q-2.048,7.168-2.816,9.472a22.325,22.325,0,0,1-.64,2.688q-.9,2.176-2.944,6.272Q-307.328.384-320,0q-5.248-.128-6.016-2.944-1.024-4.1,8.448-11.776a5.093,5.093,0,0,1,3.328-1.152q1.28,0,1.536.64.128.512-2.048,2.56l-2.688,2.432q-2.944,2.688-2.688,3.968,0,.384.768.384a9.333,9.333,0,0,0,4.608-1.792,22.071,22.071,0,0,0,4.352-3.456,47.076,47.076,0,0,0,7.424-11.648q1.408-3.2,4.864-12.928l1.92-5.5-16.9,14.336q-3.968,3.2-10.88,8.96-2.56,2.176-5.12,4.48-3.584,2.944-5.76,2.944-1.28,0-1.408-.64-.256-.64,1.28-1.92l29.184-24.7q2.944-2.56,8.96-6.912l3.2-2.3,1.152-2.3Q-287.1-59.9-277.248-61.44Zm71.552,32.9a5.41,5.41,0,0,1,3.968-1.28q.9,0,.9.384a2.225,2.225,0,0,1-.64,1.28A107.907,107.907,0,0,1-218.88-12.928q-9.344,6.656-11.392,7.936Q-238.72,0-243.456,0a4.2,4.2,0,0,1-4.48-3.456q-.64-2.56,1.024-6.528,2.048-4.864,10.24-15.744,4.352-5.76,10.752-13.312,1.152-1.408,4.864-1.408,1.536,0,1.792.64.128.512-.512,1.152-5.376,6.016-15.232,18.432a130.465,130.465,0,0,0-7.04,11.392q-1.152,2.56-.768,3.584a1.772,1.772,0,0,0,1.92,1.28,2.4,2.4,0,0,0,1.28-.256q-.384,0,1.536-.384Q-225.28-9.728-205.7-28.544Zm-.512-31.232q.256.512-2.176,3.2a43.474,43.474,0,0,1-3.072,3.328,5.885,5.885,0,0,1-3.456,1.28q-1.92.128-2.56-.9a3.848,3.848,0,0,1,.128-.64,58.981,58.981,0,0,1,3.84-4.736,7.7,7.7,0,0,1,5.76-2.176Q-206.464-60.288-206.208-59.776Zm48-1.664a1.836,1.836,0,0,1,1.664.448,1.007,1.007,0,0,1,0,1.344A24.118,24.118,0,0,1-166.784-48l-3.584,2.048-4.992,17.408q-2.048,7.168-2.816,9.472a22.322,22.322,0,0,1-.64,2.688q-.9,2.176-2.944,6.272Q-188.288.384-200.96,0q-5.248-.128-6.016-2.944Q-208-7.04-198.528-14.72a5.093,5.093,0,0,1,3.328-1.152q1.28,0,1.536.64.128.512-2.048,2.56L-198.4-10.24q-2.944,2.688-2.688,3.968,0,.384.768.384a9.333,9.333,0,0,0,4.608-1.792,22.072,22.072,0,0,0,4.352-3.456,47.076,47.076,0,0,0,7.424-11.648q1.408-3.2,4.864-12.928l1.92-5.5-16.9,14.336q-3.968,3.2-10.88,8.96-2.56,2.176-5.12,4.48-3.584,2.944-5.76,2.944-1.28,0-1.408-.64-.256-.64,1.28-1.92l29.184-24.7q2.944-2.56,8.96-6.912l3.2-2.3,1.152-2.3Q-168.064-59.9-158.208-61.44Zm128,4.864q.64,2.048-1.152,6.272a53.783,53.783,0,0,1-7.552,12.288,18.4,18.4,0,0,0,7.424-3.072A4.623,4.623,0,0,1-28.8-42.112q1.536,0,1.536,1.28,0,1.408-1.92,2.688a34.9,34.9,0,0,1-13.568,4.992A240.831,240.831,0,0,1-60.16-16Q-78.08.256-88.7,3.968a12.332,12.332,0,0,1-4.1.768q-6.144,0-6.144-6.4,0-7.04,9.6-21.888-2.688,2.048-5.76,4.608Q-114.432-3.2-123.52-3.2a3.168,3.168,0,0,1-3.328-2.176,35.517,35.517,0,0,1,.768-5.888,26.294,26.294,0,0,1,4.1-7.552q7.552-9.856,15.744-18.816-4.736,1.792-6.016,2.24a6.863,6.863,0,0,1-1.664.448q-1.408,0-.64-1.664a6.153,6.153,0,0,1,2.432-2.048A64.153,64.153,0,0,0-100.736-44.8q3.2-2.176,4.864-1.792a1,1,0,0,1,.9,1.152,8.117,8.117,0,0,1-1.408,3.52,29.9,29.9,0,0,1-4.1,5.184l-5.248,5.248q-3.584,4.48-7.04,8.96a44.722,44.722,0,0,0-5.888,9.6q-1.536,3.84.128,4.736a5.349,5.349,0,0,0,.9.256q6.016,0,23.808-15.924Q-85.5-31.31-80.9-35.932q7.808-10.4,11.008-10.66,2.048-.128,2.3.9.64,1.8-7.936,10.14A7.257,7.257,0,0,0-76.544-34.4a126.461,126.461,0,0,0-8.064,12.836q-3.072,5.52-5.248,10.526-2.56,6.032-1.92,8.47Q-91.264-.64-88.832-.64q7.552,0,22.016-13.568A174.3,174.3,0,0,0-48.9-33.536,2.259,2.259,0,0,1-50.048-35.2q-.512-1.92,1.536-5.76Q-40.7-55.3-34.432-57.472a6.954,6.954,0,0,1,2.176-.512A1.87,1.87,0,0,1-30.208-56.576Zm-6.528,6.016q-2.3,1.152-4.736,6.4A14.167,14.167,0,0,0-42.5-40.576a.369.369,0,0,0,.256.128l.256-.384q1.92-2.816,4.992-8.32l.512-1.28A.369.369,0,0,0-36.736-50.56Zm17.664,21.12q-5.888,8.448-12.8,19.968L1.28-32.384q9.6-6.656,12.8-6.656,2.176,0,2.56,1.536.64,2.816-4.352,9.088a81.239,81.239,0,0,1-5.76,6.656A140.971,140.971,0,0,0-2.688-8.32Q-4.48-5.376-7.3.512a6.317,6.317,0,0,0-.384,1.92,1.157,1.157,0,0,0,1.024.64q.9,0,5.632-2.432Q14.592-7.424,33.024-26.624a4.012,4.012,0,0,1,1.024-.768,7.935,7.935,0,0,1,1.536-.512q1.28-.128,1.664.64a2.905,2.905,0,0,1-.9,1.664A170.9,170.9,0,0,1,16.64-6.912Q-.9,7.168-10.5,7.168q-4.224,0-4.608-2.432a6.608,6.608,0,0,1,.256-3.072q.256-.768.512-1.792a55.825,55.825,0,0,1,7.3-12.8Q-3.456-17.28,3.328-26.112l2.048-2.944a5.165,5.165,0,0,0,.9-2.048l-20.1,14.08Q-18.176-14.08-25.856-8.96l-7.3,4.992q-1.28,1.024-3.84,2.944A7.118,7.118,0,0,1-41.6.64q-2.944,0-3.328-1.152a2.061,2.061,0,0,1,.384-1.408Q-42.5-4.992-32.9-18.816l60.8-87.552q.9-1.664,5.5-1.664,1.536,0,1.536.512v.512ZM99.584-54.656q.768,3.456-11.136,19.84L79.872-23.04q-2.432,3.072-6.4,8.32l-5.5,7.936q6.4-3.328,7.424-3.328,1.664,0,.9,2.048A5,5,0,0,1,73.472-5.12Q70.912-3.84,62.592.64,40.576,31.36,23.3,51.712,2.56,76.032-6.784,76.032q-3.712,0-4.352-2.688-.768-3.456,2.3-9.984Q8.576,26.752,57.344-1.152,72.064-21.376,83.2-38.144,50.176-9.728,37.76-9.088q-3.584.128-4.1-2.048-1.024-4.1,7.936-16.64,6.016-8.32,13.568-17.152a7.158,7.158,0,0,1,3.712-1.664q2.688-.64,2.944.512.128.512-1.024,1.92A217.4,217.4,0,0,0,47.04-26.24Q40.7-17.024,40.832-15.36a1.23,1.23,0,0,0,1.152.768q1.792,0,7.168-3.2Q62.72-25.856,80.768-41.728a47.979,47.979,0,0,0,4.992-5.5Q92.544-55.3,97.408-55.68,99.2-55.808,99.584-54.656ZM28.032,38.272q10.5-13.44,23.168-30.72a180.1,180.1,0,0,0-28.416,23.04q-13.7,13.7-19.712,22.656Q-4.224,64-3.2,67.712a1.222,1.222,0,0,0,1.408,1.152Q4.1,68.864,28.032,38.272ZM229.5-56.576q.64,2.048-1.152,6.272A53.783,53.783,0,0,1,220.8-38.016a18.4,18.4,0,0,0,7.424-3.072,4.623,4.623,0,0,1,2.688-1.024q1.536,0,1.536,1.28,0,1.408-1.92,2.688a34.9,34.9,0,0,1-13.568,4.992A240.831,240.831,0,0,1,199.552-16Q181.632.256,171.008,3.968a12.332,12.332,0,0,1-4.1.768q-6.144,0-6.144-6.4,0-7.04,9.6-21.888-2.688,2.048-5.76,4.608Q145.28-3.2,136.192-3.2a3.168,3.168,0,0,1-3.328-2.176,35.518,35.518,0,0,1,.768-5.888,26.294,26.294,0,0,1,4.1-7.552q7.552-9.856,15.744-18.816-4.736,1.792-6.016,2.24a6.863,6.863,0,0,1-1.664.448q-1.408,0-.64-1.664a6.153,6.153,0,0,1,2.432-2.048A64.152,64.152,0,0,0,158.976-44.8q3.2-2.176,4.864-1.792a1,1,0,0,1,.9,1.152,8.117,8.117,0,0,1-1.408,3.52,29.905,29.905,0,0,1-4.1,5.184l-5.248,5.248q-3.584,4.48-7.04,8.96a44.721,44.721,0,0,0-5.888,9.6q-1.536,3.84.128,4.736a5.349,5.349,0,0,0,.9.256q6.016,0,23.808-15.924,8.32-7.45,12.928-12.072,7.808-10.4,11.008-10.66,2.048-.128,2.3.9.64,1.8-7.936,10.14a7.257,7.257,0,0,0-1.024,1.156A126.46,126.46,0,0,0,175.1-21.562q-3.072,5.52-5.248,10.526Q167.3-5,167.936-2.566,168.448-.64,170.88-.64q7.552,0,22.016-13.568a174.3,174.3,0,0,0,17.92-19.328,2.259,2.259,0,0,1-1.152-1.664q-.512-1.92,1.536-5.76,7.808-14.336,14.08-16.512a6.954,6.954,0,0,1,2.176-.512A1.87,1.87,0,0,1,229.5-56.576Zm-6.528,6.016q-2.3,1.152-4.736,6.4a14.167,14.167,0,0,0-1.024,3.584.369.369,0,0,0,.256.128l.256-.384q1.92-2.816,4.992-8.32l.512-1.28A.369.369,0,0,0,222.976-50.56ZM283.52-33.152A6.131,6.131,0,0,1,288-34.56q1.024,0,1.152.512a1.592,1.592,0,0,1-.512,1.152,126.726,126.726,0,0,1-14.976,12.928l-16,11.776Q252.032-4.1,246.016.256q-8.96,5.888-16.128,6.4-7.808.64-8.832-4.48-1.28-6.016,5.76-13.184a57.2,57.2,0,0,1,12.16-9.088,19.3,19.3,0,0,1-8.064-1.152,4.284,4.284,0,0,1-3.072-2.944q-.768-2.944,4.608-8.064,8.064-7.552,23.68-12.416A47.455,47.455,0,0,1,269.184-47.1q5.632-.128,6.016,1.792.384,2.3-3.584,5.376-5.12,3.968-8.064,3.968-1.92,0-2.048-.9-.256-1.024,2.176-2.3,4.864-2.688,4.736-3.2,0-.64-1.792-.512a51.533,51.533,0,0,0-13.312,3.712q-19.84,7.808-18.688,13.44a1.753,1.753,0,0,0,1.536,1.28,21.12,21.12,0,0,0,6.656,0,58.509,58.509,0,0,0,9.088-1.664,6.823,6.823,0,0,1,1.536-.128,1.548,1.548,0,0,1,1.536.768q.256,1.408-3.456,3.328-2.688,1.28-5.12,2.5a63.052,63.052,0,0,0-7.3,4.672Q228.48-7.424,227.328-1.408q0,3.84,2.944,3.84,7.04,0,27.776-14.848A232.491,232.491,0,0,0,283.52-33.152Zm51.072,3.712q-5.888,8.448-12.8,19.968l33.152-22.912q9.6-6.656,12.8-6.656,2.176,0,2.56,1.536.64,2.816-4.352,9.088a81.234,81.234,0,0,1-5.76,6.656,140.972,140.972,0,0,0-9.216,13.44q-1.792,2.944-4.608,8.832a6.316,6.316,0,0,0-.384,1.92,1.157,1.157,0,0,0,1.024.64q.9,0,5.632-2.432,15.616-8.064,34.048-27.264a4.012,4.012,0,0,1,1.024-.768,7.935,7.935,0,0,1,1.536-.512q1.28-.128,1.664.64a2.905,2.905,0,0,1-.9,1.664A170.9,170.9,0,0,1,370.3-6.912q-17.536,14.08-27.136,14.08-4.224,0-4.608-2.432a6.608,6.608,0,0,1,.256-3.072q.256-.768.512-1.792a55.825,55.825,0,0,1,7.3-12.8q3.584-4.352,10.368-13.184l2.048-2.944a5.165,5.165,0,0,0,.9-2.048l-20.1,14.08q-4.352,2.944-12.032,8.064l-7.3,4.992q-1.28,1.024-3.84,2.944A7.118,7.118,0,0,1,312.064.64q-2.944,0-3.328-1.152a2.061,2.061,0,0,1,.384-1.408q2.048-3.072,11.648-16.9l60.8-87.552q.9-1.664,5.5-1.664,1.536,0,1.536.512v.512Zm91.392.9a5.41,5.41,0,0,1,3.968-1.28q.9,0,.9.384a2.225,2.225,0,0,1-.64,1.28A107.908,107.908,0,0,1,412.8-12.928q-9.344,6.656-11.392,7.936Q392.96,0,388.224,0a4.2,4.2,0,0,1-4.48-3.456q-.64-2.56,1.024-6.528,2.048-4.864,10.24-15.744,4.352-5.76,10.752-13.312,1.152-1.408,4.864-1.408,1.536,0,1.792.64.128.512-.512,1.152-5.376,6.016-15.232,18.432a130.47,130.47,0,0,0-7.04,11.392q-1.152,2.56-.768,3.584a1.772,1.772,0,0,0,1.92,1.28,2.4,2.4,0,0,0,1.28-.256q-.384,0,1.536-.384Q406.4-9.728,425.984-28.544Zm-.512-31.232q.256.512-2.176,3.2a43.478,43.478,0,0,1-3.072,3.328,5.885,5.885,0,0,1-3.456,1.28q-1.92.128-2.56-.9a3.849,3.849,0,0,1,.128-.64,58.982,58.982,0,0,1,3.84-4.736,7.694,7.694,0,0,1,5.76-2.176Q425.216-60.288,425.472-59.776Zm54.016-44.8q1.152-1.792,5.5-1.792,1.28,0,1.536.64a.741.741,0,0,1-.128.512Q478.336-91.9,460.928-66.432,452.1-53.632,435.2-27.776q16.256-16.768,27.776-16.64,2.944,0,3.328,1.664.64,2.816-4.48,8.832-12.416,14.592-32.64,22.528L448.512,8.96q7.552,7.808,14.848,15.1a.71.71,0,0,1,.128.9,2.024,2.024,0,0,1-.768,1.024,5.833,5.833,0,0,1-1.408.832,3.694,3.694,0,0,1-1.408.32,2.605,2.605,0,0,1-1.92-.768L424.832-9.472q-1.792,2.816-6.144,8.7Q417.408.9,413.184.9q-1.408,0-1.408-.512a.741.741,0,0,1,.128-.512q10.5-17.408,33.664-52.224,12.16-18.3,19.84-30.208ZM458.112-39.808a31.23,31.23,0,0,0-4.864,2.944A113.822,113.822,0,0,0,429.824-15.1a65.144,65.144,0,0,0,25.344-18.56,22.272,22.272,0,0,0,3.584-5.376q.512-.512.128-.768A1.184,1.184,0,0,0,458.112-39.808Zm66.3,6.656a6.131,6.131,0,0,1,4.48-1.408q1.024,0,1.152.512a1.592,1.592,0,0,1-.512,1.152A126.721,126.721,0,0,1,514.56-19.968l-16,11.776Q492.928-4.1,486.912.256q-8.96,5.888-16.128,6.4-7.808.64-8.832-4.48-1.28-6.016,5.76-13.184a57.2,57.2,0,0,1,12.16-9.088,19.3,19.3,0,0,1-8.064-1.152,4.284,4.284,0,0,1-3.072-2.944q-.768-2.944,4.608-8.064,8.064-7.552,23.68-12.416A47.455,47.455,0,0,1,510.08-47.1q5.632-.128,6.016,1.792.384,2.3-3.584,5.376-5.12,3.968-8.064,3.968-1.92,0-2.048-.9-.256-1.024,2.176-2.3,4.864-2.688,4.736-3.2,0-.64-1.792-.512a51.533,51.533,0,0,0-13.312,3.712q-19.84,7.808-18.688,13.44a1.753,1.753,0,0,0,1.536,1.28,21.12,21.12,0,0,0,6.656,0,58.509,58.509,0,0,0,9.088-1.664,6.823,6.823,0,0,1,1.536-.128,1.548,1.548,0,0,1,1.536.768q.256,1.408-3.456,3.328-2.688,1.28-5.12,2.5a63.05,63.05,0,0,0-7.3,4.672Q469.376-7.424,468.224-1.408q0,3.84,2.944,3.84,7.04,0,27.776-14.848A232.485,232.485,0,0,0,524.416-33.152Z" transform="translate(523.911 248.195) rotate(-13)" fill="rgb(98, 233, 44)"/></svg>') no-repeat left top/contain;
}
@media only screen and (max-width: 767px) {
  .mv-ttl__name::before {
    width: 90.6666666667vw;
    height: 53.3333333333vw;
    background-size: contain;
    left: 15px;
    top: -30vw;
  }
}
.mv-ttl__main {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 21rem;
  /* line-height: 2; */
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: clamp(32rem, 2.2222222222vw, 48rem);
  color: #fff;
  margin-top: clamp(32rem, 2.2222222222vw, 48rem);
  margin-left: clamp(82rem, 5.6944444444vw, 123rem);
  margin-bottom: clamp(32rem, 2.2222222222vw, 48rem);
  text-shadow: 1px 1px 5px black;
}
@media only screen and (max-width: 767px) {
  .mv-ttl__main {
    margin-top: 0;
    color: #000;
    margin-left: 0;
    font-size: 19px;
    line-height: 2;
    letter-spacing: 0em;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 0.6em;
    text-shadow: none;
  }
}

.mv-lead {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 16rem;
  /* line-height: 2.0625; */
  line-height: 1.8;
  letter-spacing: 0.07em;
  font-weight: 400;
  color: #fff;
  margin-left: clamp(82rem, 5.6944444444vw, 123rem);
  margin-top: -16rem;
  text-shadow: 1px 1px 5px black;
}
@media only screen and (max-width: 767px) {
  .mv-lead {
    margin-top: 1em;
    margin-left: 0;
    color: #000;
    font-size: 15px;
    line-height: 1.8;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
    text-shadow: none;
  }
}

.header-bottom__wrapper {
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 767px) {
  .header-bottom__wrapper {
    position: relative;
  }
}

.credit {
  background-color: #000;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 11rem;
  line-height: 2.7272727273;
  letter-spacing: 0.07em;
  font-weight: 400;
  text-align: right;
  padding-inline: 24rem;
  padding-top: 3rem;
  padding-bottom: 4rem;
}
@media only screen and (max-width: 767px) {
  .credit {
    font-size: 10px;
    line-height: 1.7;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
    padding-block: 10px;
    text-align: left;
    padding-inline: 20px;
  }
}

.article-lead {
  font-family: 'Noto Sans JP', sans-serif;;
  background-color: #e5e5e4;
  border-bottom-right-radius: 60px;
  font-size: 16rem;
  line-height: 2.0625;
  letter-spacing: 0.07em;
  font-weight: 400;
  padding-block: 40px;
}
@media only screen and (max-width: 767px) {
  .article-lead {
    font-size: 15px;
    line-height: 1.8;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
  }
}

.mv-deco {
  position: absolute;
  top: 0;
  left: 102rem;
  width: 43.75vw;
}

main {
  font-weight: 400;
  line-height: 1;
  text-align: justify;
  font-size: 16px;
}
@media only screen and (max-width: 767px) {
  main {
    font-size: 16rem;
  }
}

@media only screen and (max-width: 767px) {
  .article-single-share_wrap + .sec-content {
    /* margin-top: 80px;
    padding-top: 40px; */
    padding-top: 60px;
  }
}

.sec-content {
  padding-top: 110rem;
}
@media only screen and (max-width: 767px) {
  .sec-content {
    padding-top: 100rem;
  }
}
.sec-content.bg-dot {
  position: relative;
}
.sec-content.bg-dot::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: calc(100% - min(20.1388888889vw, 290px));
  background: url(../img/bg_section_dot_01.svg);
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .sec-content.bg-dot::after {
    height: calc(100% - 27.7333333333vw);
  }
}
.sec-content:nth-last-child(1 of .sec-content) {
  padding-bottom: 100rem;
}

.article-ttl {
  position: relative;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 26rem;
  line-height: 1.6071428571;
  letter-spacing: 0.07em;
  font-weight: 700;
  height: 2em;
  text-align: center;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1439" height="31.783" viewBox="0 0 1439 31.783"> <g id="グループ_5136" data-name="グループ 5136" transform="translate(-1 -1050.5)"> <path id="パス_918" data-name="パス 918" d="M-93.993,1050.914l20.574,20.574s3.931,7.6,20.391,7.6H831.689s17.692-5.248,21.538-10.633S870.15,1050,870.15,1050Z" transform="translate(331.993 2)" fill="rgb(230, 255, 216)"/> <g id="グループ_5135" data-name="グループ 5135"> <g id="グループ_5132" data-name="グループ 5132" transform="translate(0 2)"> <path id="パス_916" data-name="パス 916" d="M-331,1050.914H-92.935l19,19s6.461,8.78,18.009,8.78H418.6" transform="translate(332 -0.414)" fill="none" stroke="rgb(48,35,23)" stroke-width="4"/> <path id="パス_917" data-name="パス 917" d="M358,1050.914H119.934l-19,19s-6.461,8.78-18.009,8.78H-332" transform="translate(1082.001 -0.414)" fill="none" stroke="rgb(48,35,23)" stroke-width="4"/> </g> </g> </g> </svg>') no-repeat center/100%;
}
@media only screen and (max-width: 767px) {
  .article-ttl {
    /* font-size: 22px; */
    font-size: 20px;
    line-height: 1.3636363636;
    letter-spacing: 0em;
    font-weight: 700;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="375" height="25.69" viewBox="0 0 375 25.69"> <g id="グループ_5148" data-name="グループ 5148" transform="translate(0 -1019)"> <path id="パス_928" data-name="パス 928" d="M-93.993,1050.69l16.3,15.164s3.115,5.6,16.159,5.6H131.99l83.538,2.234s14.021-3.868,17.068-7.836,13.411-13.607,13.411-13.607Z" transform="translate(111 -29)" fill="rgb(230, 255, 216)"/> <g id="グループ_5144" data-name="グループ 5144" transform="translate(-171 1021)"> <path id="パス_916" data-name="パス 916" d="M-160,1050.914h18.347l15.114,14.364a19.121,19.121,0,0,0,14.323,6.636H39" transform="translate(331 -1050.914)" fill="none" stroke="rgb(48,35,23)" stroke-width="4"/> <path id="パス_917" data-name="パス 917" d="M44,1050.914H27.449l-15.114,14.364a19.121,19.121,0,0,1-14.323,6.636H-137" transform="translate(502 -1050.914)" fill="none" stroke="rgb(48,35,23)" stroke-width="4"/> </g> </g> </svg> ');
  }
}
.article-ttl > span {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block;
  width: 100%;
  max-width: 61.8055555556vw;
  margin-inline: auto;
  padding-bottom: 24rem;
}
@media only screen and (max-width: 767px) {
  .article-ttl > span {
    bottom: -0.5em;
    max-width: 77.3333333333vw;
    padding-bottom: 28px;
  }
}

.contents_width p:not([class]) {
  font-size: 17rem;
  line-height: 1.8823529412;
  letter-spacing: 0.05em;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;;
  color: #000;
}
@media only screen and (max-width: 767px) {
  .contents_width p:not([class]) {
    font-size: 16px;
    line-height: 1.75;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
    line-height: 2;
  }
}
.contents_width p:not([class]) + p:not([class]) {
  margin-top: 1em;
}
.contents_width .caption {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.07em;
  font-weight: 400;
  margin-top: 6rem;
}
@media only screen and (max-width: 767px) {
.contents_width .caption {
    line-height: 1.6;
    letter-spacing: 0;
    margin-top: 10px;
  }
}

.ttl-q {
  margin-top: 60rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 15rem;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 18rem;
  line-height: 2.1666666667;
  letter-spacing: 0em;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .ttl-q {
    gap: 10px;
    margin-top: 40px;
    /* font-size: 18px; */
    font-size: 16px;
    line-height: 1.6111111111;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 700;
  }
}
.ttl-q::before {
  content: "";
  display: block;
  width: 39rem;
  height: 1px;
  background-color: #000;
  -webkit-transform: translateY(0.75em);
          transform: translateY(0.75em);
}
.ttl-q:first-child {
  margin-top: 42rem;
}
@media only screen and (max-width: 767px) {
  .ttl-q:first-child {
    margin-top: 24px;
  }
}
.ttl-q + p {
  margin-top: 16rem;
}
@media only screen and (max-width: 767px) {
  .ttl-q + p {
    margin-top: 20px;
  }
}

.radius-l {
  border-top-left-radius: 40rem;
}

.radius-r {
  border-top-right-radius: 40rem;
}

.ttl-prof {
  font-size: 23rem;
  line-height: 1.9565217391;
  letter-spacing: 0.07em;
  font-weight: 700;
  margin-top: 28rem;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .ttl-prof {
    font-size: 20px;
  }
}

.prof-name {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 29rem;
  line-height: 1.5517241379;
  letter-spacing: 0.07em;
  font-weight: 700;
  margin-top: 4rem;
}
@media only screen and (max-width: 767px) {
  .prof-name {
    font-size: 24px;
  }
}
.prof-name--kana {
  font-size: 20rem;
  line-height: 2.25;
  letter-spacing: 0.07em;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .prof-name--kana {
    font-size: 14px;
  }
}
.prof-txt {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 15rem;
  /* line-height: 1.9333333333; */
  line-height: 1.6;
  letter-spacing: 0.07em;
  font-weight: 400;
  margin-top: 10rem;
}
@media only screen and (max-width: 767px) {
  .prof-txt {
    /* font-size: 16px; */
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1.6;
  }
}

.sec-product {
  padding-bottom: 100rem;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .sec-product {
    margin-top: 0;
  }
}

.bg-color {
  position: relative;
}
.bg-color::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -7.9861111111vw;
  width: 100%;
  height: 100%;
  background-color: var(--keycolor_01);
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .bg-color::after {
    bottom: -23.2vw;
  }
}

.product-mv {
  position: relative;
}
.product-mv__wrapper {
  position: absolute;
  width: 960rem;
  max-width: 960rem;
  bottom: 94rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 767px) {
  .product-mv__wrapper {
    width: 100%;
    bottom: 31px;
    padding-inline: 20px;
  }
}
.product-mv__ttl {
  position: relative;
  font-size: 62rem;
  line-height: 1.0322580645;
  letter-spacing: 0.05em;
  font-weight: 600;
  font-size: clamp(62rem, 2.9166666667vw, 63rem);
  color: var(--keycolor_02);
  text-align: left;
  line-height: 1.25;
  word-break: keep-all;
}
@media only screen and (max-width: 767px) {
  .product-mv__ttl {
    font-size: 40px;
    line-height: 1.025;
    letter-spacing: 0.02em;
    font-weight: 600;
  }
}
.product-mv__ttl::before {
  position: absolute;
  top: -200rem;
  /* left: -150rem; */
  left: 470rem;
  content: "";
  display: block;
  width: 457rem;
  height: 325rem;
  background: url(../img/deco_02.svg) no-repeat center/contain;
}
@media only screen and (max-width: 767px) {
  .product-mv__ttl::before {
    width: 300px;
    left: 0;
  }
}
@media only screen and (max-width: 499px) {
  .product-mv__ttl::before {
    /* width: 62.6666666667vw; */
    width: 46.6666666667vw;
    height: 49.3333333333vw;
    left: 0;
    background-image: url(../img/deco_03.svg);
    top: -200px;
    left: 0;
  }
}
.product-mv__ttl--second {
  margin-top: 33rem;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 33rem;
  line-height: 1.3636363636;
  /* letter-spacing: 0.05em; */
  letter-spacing: 0;
  font-weight: 700;
  color: #fff;
  text-shadow: 1px 1px 5px black;
}
@media only screen and (max-width: 767px) {
  .product-mv__ttl--second {
    font-size: 18px;
    line-height: 1.4444444444;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-top: 20px;
  }
}
.product-mv__lead {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 18rem;
  /* line-height: 2.2777777778; */
  line-height: 1.6;
  letter-spacing: 0em;
  font-weight: 400;
  color: #fff;
  margin-top: 10rem;
  text-shadow: 1px 1px 5px black;
}
@media only screen and (max-width: 767px) {
  .product-mv__lead {
    /* font-size: 16px; */
    font-size: 15px;
    line-height: 1.875;
    letter-spacing: 0em;
    font-weight: 400;
    line-height: 1.5;
    text-shadow: 1px 1px 3px black;
  }
}
.product-mv__img {
  width: 100%;
  border-top-left-radius: 80rem;
  -o-object-fit: cover;
     object-fit: cover;
  min-height: 634px;
  -o-object-position: right;
     object-position: right;
}
@media only screen and (max-width: 499px) {
  .product-mv__img.--pc {
    display: none;
  }
}
.product-mv__img.--sp {
  display: none;
}
@media only screen and (max-width: 499px) {
  .product-mv__img.--sp {
    display: block;
    border-top-left-radius: 50px;
  }
}

.product-item:first-of-type {
  border-bottom: 1px solid rgba(112, 112, 112, 0.24);
  padding-bottom: 70rem;
}
@media only screen and (max-width: 767px) {
  .product-item:first-of-type {
    padding-bottom: 40px;
  }
}
.product-ttl {
  font-family: "IBM Plex Sans JP", sans-serif;;
  display: -webkit-box;;
  display: -webkit-flex;;
  display: -ms-flexbox;;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15rem;
  border-bottom: 1px solid #707070;
  margin-top: 103rem;
}
@media only screen and (max-width: 767px) {
  .product-ttl {
    margin-top: 56px;
    padding-bottom: 3px;
  }
}
.product-ttl::before {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  content: "ITEM";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Heebo", sans-serif;;
  background-color: #000;
  border-radius: 50%;
  width: 56rem;
  height: 56rem;
  color: #fff;
  font-size: 15rem;
  line-height: 2;
  letter-spacing: 0em;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .product-ttl::before {
    width: 45px;
    height: 45px;
    font-size: 11px;
    line-height: 2;
    letter-spacing: 0em;
    font-weight: 700;
    gap: 13px;
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start;
    margin-top: 4px;
  }
}
.product-ttl__sub {
  /* font-size: 23rem; */
  font-size: 19rem;
  line-height: 1.6086956522;
  letter-spacing: 0.07em;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .product-ttl__sub {
    font-size: 17px;
    line-height: 1.7058823529;
    letter-spacing: 0.07em;
    font-weight: 700;
  }
}
.product-ttl__main {
  /* font-size: 29rem; */
  font-size: 24rem;
  line-height: 1.275862069;
  line-height: 2.4;
  letter-spacing: 0.07em;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .product-ttl__main {
    /* font-size: 22px; */
    font-size: 20px;
    line-height: 1.3181818182;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 700;
  }
}
.product-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  padding-top: 26rem;
  padding-bottom: 25rem;
  padding-right: 68rem;
  padding-left: 72rem;
  margin-top: 42rem;
  gap: 82rem;
}
@media only screen and (max-width: 767px) {
  .product-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-inline: 30px;
    margin-top: 28px;
    gap: 0;
  }
}
.product-figure {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 300rem;
}
@media only screen and (max-width: 767px) {
  .product-figure {
    width: 64.5333333333vw;
    margin-inline: auto;
  }
}
.product-img {
  width: 100%;
}
.product-txt {
  padding-top: 32rem;
}
@media only screen and (max-width: 767px) {
  .product-txt {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.product-txt > p:not([class]) {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 16rem;
  line-height: 1.9375;
  /* letter-spacing: 0.07em; */
  letter-spacing: 0;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .product-txt > p:not([class]) {
    font-size: 16px;
    line-height: 1.9375;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
    line-height: 1.6;
  }
}
.product-summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 53rem;
  margin-top: 50rem;
}
@media only screen and (max-width: 1200px) {
  .product-summary {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
    margin-top: 40px;
  }
}
.product-comment {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 28rem;
}
@media only screen and (max-width: 767px) {
  .product-comment {
    gap: 21px;
  }
}
.product-comment__figure {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.product-comment__img {
  border-radius: 50%;
  width: 90rem;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .product-comment__img {
    width: 74px;
  }
}
.product-comment__ttl {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 23rem;
  line-height: 1.6086956522;
  letter-spacing: 0.07em;
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .product-comment__ttl {
    font-size: 17px;
    line-height: 1.5882352941;
    letter-spacing: 0.07em;
    font-weight: 700;
  }
}
.product-comment__txt {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 16rem;
  line-height: 1.625;
  letter-spacing: 0.07em;
  font-weight: 400;
  letter-spacing: 0;
  margin-top: 1em;
}
@media only screen and (max-width: 767px) {
  .product-comment__txt {
    font-size: 14px;
    line-height: 1.7142857143;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
  }
}

.product-spec {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.product-spec__ttl {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 19rem;
  line-height: 1.9473684211;
  letter-spacing: 0.07em;
  font-weight: 700;
}
@media only screen and (max-width: 1200px) {
  .product-spec__ttl {
    padding-left: 118rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec__ttl {
    font-size: 17px;
    line-height: 1.5882352941;
    letter-spacing: 0.07em;
    font-weight: 700;
    padding-left: 95px;
  }
}
.product-spec__txt {
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 15rem;
  line-height: 1.6666666667;
  letter-spacing: 0.07em;
  font-weight: 700;
}
@media only screen and (max-width: 1200px) {
  .product-spec__txt {
    padding-left: 118rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-spec__txt {
    font-size: 15px;
    line-height: 1.6666666667;
    letter-spacing: 0.07em;
    font-weight: 700;
    padding-left: 95px;
  }
}

@media only screen and (max-width: 1200px) {
  .product-link__wrapper {
    padding-left: 118rem;
  }
}
@media only screen and (max-width: 767px) {
  .product-link__wrapper {
    padding-left: 0;
    margin-top: 40px;
  }
}

.product-link {
  position: relative;
  bottom: 0;
  right: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 195rem;
  padding-top: 12rem;
  padding-bottom: 14rem;
  background: #000;
  color: #fff;
  font-size: 14rem;
  font-weight: 500;
  border-radius: 25px;
  margin-top: 20rem;
}
.product-link:not(:last-of-type) {
  margin-right: 20rem;
}
@media only screen and (max-width: 767px) {
  .product-link:not(:last-of-type) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-right: unset;
    margin-inline: auto;
  }
}
@media only screen and (max-width: 767px) {
  .product-link:not(:first-of-type) {
    margin-top: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .product-link {
    padding-top: 12px;
    padding-bottom: 13px;
    font-size: 14px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border-radius: 25rem;
    width: 244px;
    margin-inline: auto;
  }
}
.product-link:hover {
  background: #827b73;
}
.product-link::after {
  position: absolute;
  right: 24px;
  top: 50%;
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform: translateY(-50%) rotate(225deg);
          transform: translateY(-50%) rotate(225deg);
}
.product-link.--wh {
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
}
.product-link.--wh::after {
  border-color: #000;
}
.product-link.--wh:hover {
  background-color: #cdcac7;
}

.sec-product--others {
  padding-top: 60rem;
  padding-bottom: 80rem;
}
@media only screen and (max-width: 767px) {
  .sec-product--others {
    padding-top: 40px;
  }
}

.product-others__ttl {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 21rem;
  line-height: 1.4761904762;
  letter-spacing: 0.07em;
  font-weight: 700;
  border-bottom: 1px solid #707070;
  font-size: 21px;
  line-height: 1.4761904762;
  letter-spacing: 0.07em;
  font-weight: 700;
  padding-bottom: 6rem;
}
.product-others__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 25rem;
  -webkit-column-gap: 20rem;
     -moz-column-gap: 20rem;
          column-gap: 20rem;
  row-gap: 10rem;
}
@media only screen and (max-width: 767px) {
  .product-others__list {
    grid-template-columns: 1fr;
    row-gap: 10px;
    margin-top: 12px;
  }
}
.product-others__link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 15rem;
  line-height: 1.7333333333;
  letter-spacing: 0.07em;
  font-weight: 400;
  gap: 6rem;
}
@media only screen and (max-width: 767px) {
  .product-others__link {
    font-size: 15px;
    line-height: 1.7333333333;
    /* letter-spacing: 0.07em; */
    letter-spacing: -0.02em;
    font-weight: 400;
  }
}
.product-others__link:hover {
  opacity: 0.8;
}
.product-others__link::before {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
  content: "";
  display: block;
  background: url(../img/icon_others_01.svg) no-repeat center/cover;
  width: 16rem;
  height: 16rem;
}
@media only screen and (max-width: 767px) {
  .product-others__link::before {
    -webkit-align-self: start;
        -ms-flex-item-align: start;
            align-self: start;
    margin-top: 0.4em;
  }
}
.product-others--more {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: min(960px, 100% - 20px);
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 19rem;
  line-height: 1.6315789474;
  letter-spacing: 0.07em;
  font-weight: 700;
  gap: 30rem;
  margin-top: 60rem;
  margin-inline: auto;
  border: 1px solid #302317;
  border-radius: 9999px;
  padding-block: 28rem;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .product-others--more {
    max-width: calc(100% - 12px);
    padding-block: 8rem;
    font-size: 14px;
    gap: 12px;
    line-height: 1.25;
  }
}
.product-others--more img {
  width: 245rem;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .product-others--more img {
    width: 100px;
  }
}
.product-others--more span {
  padding-top: 6rem;
}
.product-others--more::after {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #302317;
  border-left: 2px solid #302317;
  -webkit-transform: translateY(10%) rotate(225deg);
          transform: translateY(10%) rotate(225deg);
}
@media only screen and (max-width: 767px) {
  .product-others--more::after {
    -webkit-transform: translateY(10%) rotate(225deg);
            transform: translateY(10%) rotate(225deg);
  }
}
.product-others--more:hover {
  background-color: rgba(48, 35, 23, 0.2);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.link-ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #000;
  width: 100%;
  gap: 30px;
  padding-top: 22px;
  padding-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .link-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
  }
}
.link-ttl--main {
  position: relative;
  display: inline-block;
  height: 100%;
  color: #fff;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 39rem;
  line-height: 1.5384615385;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .link-ttl--main {
    font-size: 24px;
    line-height: 1;
  }
}
.link-ttl--main::before {
  content: "";
  display: block;
  background-color: #fff;
  width: 2px;
  height: 38px;
  position: absolute;
  left: -30px;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media only screen and (max-width: 767px) {
  .link-ttl--main::before {
    display: none;
  }
}
.link-ttl--sub {
  position: relative;
  display: inline-block;
  height: 100%;
  color: #fff;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 18rem;
  line-height: 3.1111111111;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .link-ttl--sub {
    font-size: 16px;
    line-height: 1;
  }
}
.link-ttl--sub::after {
  content: "";
  display: block;
  background-color: #fff;
  width: 2px;
  height: 38px;
  position: absolute;
  right: -25px;
  bottom: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  .link-ttl--sub::after {
    display: none;
  }
}

.link-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .link-list {
    grid-template-columns: 1fr;
  }
}
.link-list__item:hover {
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.link-list__link {
  position: relative;
  display: block;
  width: 100%;
  height: 297rem;
}
@media only screen and (max-width: 767px) {
  .link-list__link {
    height: 155px;
  }
}
.link-list__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.link-list__name {
  position: absolute;
  bottom: 51rem;
  left: 40rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-family:  "Zen Kaku Gothic New", sans-serif;;
  font-size: 67rem;
  line-height: 1.6268656716;
  letter-spacing: 0.07em;
  font-weight: 700;
  font-size: clamp(48rem, 4.4444444444vw, 96rem);
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .link-list__name {
    font-size: 34px;
    line-height: 1.6176470588;
    letter-spacing: 0.07em;
    font-weight: 900;
    bottom: 29px;
    gap: 10px;
  }
}
.link-list__name--main {
  display: block;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 51rem;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .link-list__name--main {
    font-size: 28px;
  }
}
.link-list__name--sub {
  display: block;
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 23rem;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .link-list__name--sub {
    font-size: 16px;
  }
}

.sec-contact {
  margin-top: 20rem;
  padding-top: 62rem;
}
@media only screen and (max-width: 767px) {
  .sec-contact {
    margin-top: 20px;
    margin-bottom: 0;
    padding-top: 24px;
    padding-bottom: 20px;
    border-radius: 20px 20px 0 0;
  }
}

.contact-ttl {
  font-family: "IBM Plex Sans JP", sans-serif;;
  font-size: 21rem;
  line-height: 1;
  letter-spacing: 0.07em;
  font-weight: 700;
  color: #000;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .contact-ttl {
    font-size: 16px;
    line-height: 0.6875;
    letter-spacing: 0.07em;
    font-weight: 700;
  }
}
.contact-body {
  border-radius: 20rem 20rem 0 0;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  .contact-body {
    margin-top: 18px;
    border-radius: 10rem 10rem 0 0;
  }
}
.contact-wrapper {
  padding-block: 36rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-inline: auto;
  gap: 32rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.contact-wrapper:hover {
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .contact-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    padding-block: 20px;
  }
}
.contact-logo {
  width: 275rem;
}
@media only screen and (max-width: 767px) {
  .contact-logo {
    width: 140px;
  }
}
.contact-txt {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.contact-link {
  font-family:  "Zen Kaku Gothic New", sans-serif;;
  font-size: 19rem;
  line-height: 1.6315789474;
  letter-spacing: 0.07em;
  font-weight: 700;
  gap: 6rem;
}
@media only screen and (max-width: 767px) {
  .contact-link {
    font-size: 16px;
    line-height: 1.9375;
    letter-spacing: 0.07em;
    font-weight: 700;
  }
}

.swiper-container {
  position: relative;
  margin-top: 28rem;
}
@media only screen and (max-width: 767px) {
  .swiper-container {
    margin-top: 18px;
  }
}

.swiper-button-next,
.swiper-button-prev {
  top: 7.9861111111vw;
  width: 57px !important;
  height: 57px !important;
}
@media only screen and (max-width: 767px) {
  .swiper-button-next,
  .swiper-button-prev {
    top: 22.9333333333vw;
    width: 8.8vw !important;
    height: 8.8vw !important;
  }
}

.swiper-button-next:after {
  color: transparent;
  width: 100% !important;
  height: 100% !important;
  background: url(../img/btn_next.svg) no-repeat center/cover;
}

.swiper-button-prev:after {
  color: transparent;
  width: 100% !important;
  height: 100% !important;
  background: url(../img/btn_prev.svg) no-repeat center/cover;
}

.slide-caption {
  color: #000;
  font-family: 'Noto Sans JP', sans-serif;;
  font-size: 14rem;
  line-height: 1.4;
  letter-spacing: 0;
  font-weight: 400;
  margin-top: 10rem;
  padding: 0 0.5em;
}
@media only screen and (max-width: 767px) {
  .slide-caption {
    font-size: 14px;
    line-height: 1.5;
    /* letter-spacing: 0.07em; */
    letter-spacing: 0;
    font-weight: 400;
    margin-top: 11px;
  }
}

@media only screen and (max-width: 767px) {
  .article-single-share__list {
    margin-top: 0;
  }
  .article-single-share_wrap {
    margin-top: 24rem;
    margin-bottom: 24rem;
  }
}
.sp-nav {
  display: none;
}
@media only screen and (max-width: 767px) {
  .sp-nav {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 999;
  }
}
.sp-nav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: rgba(48, 35, 23, 0.85);
  -webkit-box-pack: stretch;
  -webkit-justify-content: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
}
.sp-nav__item {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding-top: 18px;
  padding-bottom: 19px;
  text-align: center;
}
.sp-nav__link {
  color: #fff;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.07em;
  font-weight: 400;
}/*# sourceMappingURL=style.css.map */

.pc-80 {
  margin: 0 auto;
  width: 80%;
}
.pbt28r {
  padding-bottom: 28rem;
}
.max_w300 {
  max-width: 375rem; 
}
.color_linkblue {
 color: #0757D8;
}
@media only screen and (max-width: 767px) {
.pc-80 {
  margin: 0 auto;
  width: 100%;
}
.max_w300 {
  max-width: none; 
}
}

.pc-80 {
  margin: 0 auto;
  width: 80%;
}
.pbt28r {
  padding-bottom: 28rem;
}
.color_linkblue {
 color: #0757D8;
}
@media only screen and (max-width: 767px) {
.pc-80 {
  margin: 0 auto;
  width: 100%;
}
.max_w300 {
  max-width: none; 
}
}

.mgt60 {
  margin-top: 60rem;
  font-size: 17rem;
  line-height: 1.8823529412;
  letter-spacing: 0.05em;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif;
  color: #000;
}
@media only screen and (max-width: 767px) {
.mgt60 {
  margin-top: 40rem;
  font-size: 16px;
  letter-spacing: 0;
  font-weight: 400;
  line-height: 2;
} 
}

.swiper-slide {
  margin-right: 50px !important;
}
@media only screen and (max-width: 767px) {
  .swiper-slide {
    margin-right: 14px !important;
  }
}

.product-supplement {
  font-size: 13px;
  font-weight: 500;
  margin-top: 1em;
  text-align: right;
}