@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Cormorant+Infant:ital,wght@0,300..700;1,300..700&display=swap");
article #h1Header p {
  font-size: 18px;
  line-height: 1.67; }

@media only screen and (max-width: 979px) {
  article #h1Header p {
    padding: 0 10px; } }

article > nav {
  background: #838f96;
  padding: 20px 0; }
  article > nav ul {
    width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: center; }
    article > nav ul li {
      line-height: 1.5;
      border-left: 1px solid #c1cad0; }
      article > nav ul li:last-child {
        border-right: 1px solid #c1cad0; }
      article > nav ul li a {
        display: block;
        text-decoration: none;
        padding: 0 15px; }
        article > nav ul li a p {
          color: #fff;
          text-align: center; }
          article > nav ul li a p.en {
            font-size: 13px;
            font-family: "Zen Kaku Gothic New", sans-serif;
            font-weight: 400;
            font-style: normal; }
          article > nav ul li a p.ja {
            font-size: 15px; }
  @media only screen and (max-width: 979px) {
    article > nav {
      padding: 0; }
      article > nav ul {
        width: 100%;
        flex-wrap: wrap; }
        article > nav ul li {
          width: 33.333333%;
          border-left: none;
          padding: 0; }
          article > nav ul li:nth-child(n + 4) {
            width: 50%; }
          article > nav ul li:nth-child(2), article > nav ul li:nth-child(3), article > nav ul li:nth-child(5), article > nav ul li:nth-child(7) {
            border-left: 1px solid #d1d1d1; }
          article > nav ul li:nth-child(n + 4) {
            border-top: 1px solid #d1d1d1; }
          article > nav ul li:last-child {
            border-right: none; }
          article > nav ul li a {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            height: 14vw;
            padding: 0; }
            article > nav ul li a p {
              line-height: 1; }
              article > nav ul li a p.en {
                font-size: 3vw; }
              article > nav ul li a p.ja {
                font-size: 3vw;
                margin: 1.5vw 0 0; } }

article section {
  font-size: 20px;
  color: #333333; }
  @media only screen and (max-width: 979px) {
    article section {
      font-size: 3.5vw; } }
  article section em {
    font-style: normal;
    font-weight: bold;
    color: #4b8eb1; }
  article section > header {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    line-height: 1;
    position: relative;
    margin: 0 0 50px;
    z-index: 2; }
    article section > header p {
      font-family: "Cormorant Infant", serif;
      font-optical-sizing: auto;
      font-weight: 500;
      font-style: normal;
      font-size: 50px;
      line-height: 1;
      color: #8bb2ca;
      padding: 0 40px;
      position: relative; }
      article section > header p span {
        color: #4b8eb1;
        font-size: 70px; }
      article section > header p::before, article section > header p::after {
        content: "";
        display: block;
        width: 10px;
        height: 10px;
        background: #8bb2ca;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%) rotate(45deg); }
      article section > header p::before {
        left: 0; }
      article section > header p::after {
        right: 0; }
    article section > header h2 {
      font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
      font-size: 22px;
      color: #72858f;
      margin: 10px 0 0;
      position: relative; }
    @media only screen and (max-width: 979px) {
      article section > header {
        margin: 0 0 7vw; }
        article section > header h2 {
          font-size: 3.5vw;
          margin: 1.5vw 0 0; }
        article section > header p {
          font-size: 9vw;
          padding: 0 6vw; }
          article section > header p span {
            font-size: 12vw; }
          article section > header p::before, article section > header p::after {
            width: 2vw;
            height: 2vw; } }
  article section.s-mv {
    text-align: center;
    background: url(/assets/slimming/injection/images/mv_bg.jpg) center top no-repeat; }
    @media only screen and (max-width: 979px) {
      article section.s-mv {
        background: none; } }
  article section.s-recommend {
    padding: 75px 0 100px; }
    article section.s-recommend .container {
      max-width: 1300px;
      background: url(/assets/slimming/injection/images/recommend01.jpg) center top/cover no-repeat;
      margin: 0 auto;
      border-radius: 100px 0; }
      article section.s-recommend .container-inner {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        width: 980px;
        min-height: 540px;
        margin: 0 auto;
        padding: 50px 35px; }
        article section.s-recommend .container-inner ul {
          width: 600px;
          background: rgba(44, 69, 69, 0.3);
          padding: 60px 20px 65px 80px;
          border-radius: 10px; }
          article section.s-recommend .container-inner ul li {
            font-size: 22px;
            font-weight: 700;
            color: #fff;
            background: url(/assets/slimming/injection/images/recommend02.svg) left 3px/28px auto no-repeat;
            padding: 0 0 0 40px; }
            article section.s-recommend .container-inner ul li + li {
              margin-top: 15px; }
            article section.s-recommend .container-inner ul li em {
              color: #f5e6d0; }
    article section.s-recommend .banner {
      max-width: 980px;
      margin: 60px auto 0; }
      article section.s-recommend .banner p {
        font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
        font-size: 24px;
        font-weight: 700;
        color: #4b8eb1;
        text-align: center; }
        article section.s-recommend .banner p + .heading-image {
          margin-top: 5px; }
      article section.s-recommend .banner .heading-image + .heading-image,
      article section.s-recommend .banner .heading-image + p {
        margin-top: 25px; }
      article section.s-recommend .banner .campaign_header {
        display: flex;
        justify-content: center;
        align-items: center;
        line-height: 1.2; }
        article section.s-recommend .banner .campaign_header:before, article section.s-recommend .banner .campaign_header:after {
          content: "";
          width: 36px;
          height: 1px;
          box-sizing: border-box;
          background: #4b8eb1; }
        article section.s-recommend .banner .campaign_header:before {
          transform: rotate(50deg); }
        article section.s-recommend .banner .campaign_header:after {
          transform: rotate(-50deg); }
    @media only screen and (max-width: 979px) {
      article section.s-recommend {
        padding: 9vw 0 12vw; }
        article section.s-recommend .container {
          max-width: 95vw;
          border-radius: 12vw 0;
          background-position: left -22vw center; }
          article section.s-recommend .container-inner {
            width: 100%;
            min-height: inherit;
            padding: 7vw 5vw; }
            article section.s-recommend .container-inner ul {
              width: 70vw;
              padding: 5vw 2vw 7vw 4vw;
              background: rgba(44, 69, 69, 0.4);
              border-radius: 2vw; }
              article section.s-recommend .container-inner ul li {
                font-size: 3.5vw;
                line-height: 1.4;
                background: url(/assets/slimming/injection/images/recommend02.svg) left 0/4.5vw auto no-repeat;
                padding: 0 0 0 6vw; }
                article section.s-recommend .container-inner ul li + li {
                  margin-top: 2vw; }
        article section.s-recommend .banner {
          max-width: 95%;
          margin: 7vw auto 0; }
          article section.s-recommend .banner p {
            font-size: 4.5vw; }
            article section.s-recommend .banner p + .heading-image {
              margin-top: 1vw; }
          article section.s-recommend .banner .heading-image + .heading-image,
          article section.s-recommend .banner .heading-image + p {
            margin-top: 3vw; }
          article section.s-recommend .banner .campaign_header:before, article section.s-recommend .banner .campaign_header:after {
            width: 10vw; } }
  article section.s-what {
    background: url(/assets/slimming/injection/images/what01.jpg) center top/cover no-repeat;
    padding: 75px 0 100px; }
    article section.s-what .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-what .container .img {
        text-align: center;
        margin: 30px 0 0; }
    @media only screen and (max-width: 979px) {
      article section.s-what {
        padding: 9vw 0 12vw;
        background-position: left -25vw center; }
        article section.s-what .container {
          width: 95%; }
          article section.s-what .container .img {
            margin: 3vw 0 0; } }
  article section.s-point {
    background: url(/assets/slimming/injection/images/point01.jpg) center top/cover no-repeat;
    padding: 75px 0 100px; }
    article section.s-point .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-point .container ul li {
        display: flex;
        justify-content: center;
        padding: 40px;
        background: #fff; }
        article section.s-point .container ul li + li {
          margin-top: 20px; }
        article section.s-point .container ul li .text {
          flex: 1;
          font-size: 18px;
          padding: 0 0 0 40px; }
          article section.s-point .container ul li .text > header {
            display: flex;
            justify-content: center;
            align-items: center;
            border-bottom: 1px dashed #8bb2ca;
            padding: 0 0 15px;
            margin: 0 0 25px; }
            article section.s-point .container ul li .text > header p {
              display: flex;
              justify-content: center;
              align-items: center;
              width: 70px;
              height: 70px;
              background: #99b5c2;
              background: radial-gradient(circle, #99b5c2 25%, #778f9d 100%);
              border-radius: 100%;
              overflow: hidden;
              margin: 0 30px 0 0;
              position: relative; }
              article section.s-point .container ul li .text > header p::before {
                content: "";
                width: 170%;
                height: 115%;
                display: block;
                background: #fff;
                background: radial-gradient(circle, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.5) 100%);
                border-radius: 100%;
                position: absolute;
                left: -75%;
                top: -50%; }
              article section.s-point .container ul li .text > header p span {
                display: inline-flex;
                font-family: "Cormorant Infant", serif;
                font-optical-sizing: auto;
                font-weight: 500;
                font-style: normal;
                font-size: 36px;
                line-height: 1;
                color: #fff; }
            article section.s-point .container ul li .text > header h3 {
              font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
              font-size: 24px;
              line-height: 1.3;
              flex: 1;
              color: #4b8eb1; }
              article section.s-point .container ul li .text > header h3 em {
                font-size: 30px; }
    @media only screen and (max-width: 979px) {
      article section.s-point {
        padding: 9vw 0 12vw;
        background-position: left -65vw center; }
        article section.s-point .container {
          width: 95%; }
          article section.s-point .container ul li {
            flex-direction: column-reverse;
            padding: 4vw; }
            article section.s-point .container ul li + li {
              margin-top: 3vw; }
            article section.s-point .container ul li .text {
              font-size: 3.2vw;
              padding: 0; }
              article section.s-point .container ul li .text > header {
                padding: 0 0 2vw;
                margin: 0 0 3vw; }
                article section.s-point .container ul li .text > header p {
                  width: 12vw;
                  height: 12vw;
                  margin: 0 3vw 0 0; }
                  article section.s-point .container ul li .text > header p span {
                    font-size: 8vw; }
                article section.s-point .container ul li .text > header h3 {
                  font-size: 4vw; }
                  article section.s-point .container ul li .text > header h3 em {
                    font-size: 4.5vw; }
            article section.s-point .container ul li .img {
              padding: 3vw 10vw; } }
  article section.s-reason {
    padding: 75px 0 100px; }
    article section.s-reason .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-reason .container ul {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 30px 10px; }
        article section.s-reason .container ul li {
          width: 320px;
          height: 110px;
          display: flex;
          justify-content: center;
          align-items: center;
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 19px;
          font-weight: 700;
          text-align: center;
          color: #4b8eb1;
          line-height: 1.5;
          border: 2px solid #4b8eb1;
          border-radius: 200px; }
          article section.s-reason .container ul li:nth-child(1) {
            margin-left: 100px; }
          article section.s-reason .container ul li:nth-child(2) {
            margin-right: 100px; }
    @media only screen and (max-width: 979px) {
      article section.s-reason {
        padding: 9vw 0 12vw; }
        article section.s-reason .container {
          width: 95%; }
          article section.s-reason .container ul {
            gap: 3vw 2vw; }
            article section.s-reason .container ul li {
              width: 45vw;
              height: 17vw;
              font-size: 3.5vw;
              line-height: 1.3; }
              article section.s-reason .container ul li:nth-child(1) {
                margin-left: 0; }
              article section.s-reason .container ul li:nth-child(2) {
                margin-right: 0; } }
  article section.s-menu {
    background: #e3e7ee;
    padding: 75px 0 100px; }
    article section.s-menu .container {
      width: 980px;
      margin: 0 auto;
      padding: 30px 0 0; }
      article section.s-menu .container > ul > li {
        background: #fff;
        padding: 1px 45px 45px;
        position: relative; }
        article section.s-menu .container > ul > li + li {
          margin-top: 60px; }
        article section.s-menu .container > ul > li .new {
          position: absolute;
          width: 145px;
          height: 145px;
          -webkit-clip-path: polygon(0 0, 100% 0, 0 100%);
                  clip-path: polygon(0 0, 100% 0, 0 100%);
          background: #fff100;
          position: absolute;
          left: 0;
          top: 0;
          overflow: hidden; }
          article section.s-menu .container > ul > li .new p {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            height: 100%;
            font-size: 32px;
            font-weight: 700;
            line-height: 1;
            transform: rotate(-45deg);
            padding: 0 0 1.8em; }
        article section.s-menu .container > ul > li h3 {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 500px;
          min-height: 60px;
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 34px;
          font-weight: 700;
          line-height: 1.5;
          color: #fff;
          background: #838f96;
          border-radius: 100px;
          margin: -30px auto 25px;
          padding: 3px 0 0;
          position: relative; }
          article section.s-menu .container > ul > li h3 ruby rt {
            font-size: 11px; }
          article section.s-menu .container > ul > li h3 span {
            font-size: 22px; }
        article section.s-menu .container > ul > li .catch {
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 36px;
          font-weight: 700;
          text-align: center;
          color: #4b8eb1;
          line-height: 1.5;
          margin: 0 0 25px; }
          article section.s-menu .container > ul > li .catch span {
            color: #333;
            font-size: 60%; }
        article section.s-menu .container > ul > li .inner {
          display: flex;
          justify-content: space-between;
          gap: 0 30px; }
          article section.s-menu .container > ul > li .inner .text {
            font-size: 18px;
            flex: 1; }
            article section.s-menu .container > ul > li .inner .text .part {
              display: flex;
              justify-content: center;
              align-items: center;
              flex-wrap: wrap;
              gap: 10px;
              margin: 0 0 20px; }
              article section.s-menu .container > ul > li .inner .text .part li {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 215px;
                font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                font-size: 19px;
                font-weight: 700;
                color: #4b8eb1;
                border: 2px solid #4b8eb1;
                border-radius: 10px;
                position: relative; }
                article section.s-menu .container > ul > li .inner .text .part li.long {
                  width: 250px; }
                article section.s-menu .container > ul > li .inner .text .part li.short {
                  width: 180px; }
                article section.s-menu .container > ul > li .inner .text .part li [class^="icon"] {
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  width: 40px;
                  height: 40px;
                  font-size: 13px;
                  font-weight: 700;
                  line-height: 1.1;
                  border-radius: 100px;
                  color: #4b8eb1;
                  background: #fff100;
                  position: absolute;
                  left: -11px;
                  top: -11px; }
            article section.s-menu .container > ul > li .inner .text .price-wrap {
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin: 20px 0 0; }
              article section.s-menu .container > ul > li .inner .text .price-wrap + .price-wrap {
                margin-top: 10px; }
              article section.s-menu .container > ul > li .inner .text .price-wrap .price-left p {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                width: 190px;
                min-height: 60px;
                font-size: 20px;
                line-height: 1.2;
                text-align: center;
                color: #4b8eb1;
                border: 1px solid #4b8eb1; }
                article section.s-menu .container > ul > li .inner .text .price-wrap .price-left p span {
                  display: block;
                  font-size: 14px; }
              article section.s-menu .container > ul > li .inner .text .price-wrap .price-right {
                flex: 1;
                text-align: right;
                padding: 0 0 5px; }
                article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price {
                  font-family: "EB Garamond", "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                  font-optical-sizing: auto;
                  font-weight: 500;
                  font-style: normal;
                  font-size: 70px;
                  line-height: 1; }
                  article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price > span {
                    font-size: 32px;
                    position: relative; }
                    article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price > span > span {
                      font-size: 13px;
                      position: absolute;
                      left: 50%;
                      bottom: 40px;
                      transform: translate(-50%, 0);
                      white-space: nowrap; }
        article section.s-menu .container > ul > li .btn {
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 30px 0 0; }
          article section.s-menu .container > ul > li .btn a {
            min-width: 570px;
            min-height: 55px;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 20px;
            font-weight: 700;
            color: #fff;
            text-align: center;
            background: #4b8eb1;
            text-decoration: none;
            border-radius: 100px;
            position: relative; }
            article section.s-menu .container > ul > li .btn a::before {
              content: "";
              display: block;
              width: 9px;
              height: 100%;
              background: url(/assets/images/common/ico_chevron-right-invert.png) center center/100% auto no-repeat;
              position: absolute;
              right: 20px;
              top: 0; }
        article section.s-menu .container > ul > li.monthly {
          margin-top: 150px;
          position: relative; }
          article section.s-menu .container > ul > li.monthly .campaign_ttl {
            position: absolute;
            top: -110px;
            left: 0;
            right: 0;
            width: 100%;
            margin: auto;
            text-align: center; }
            article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon {
              display: inline-block;
              position: relative;
              height: 60px;
              text-align: center;
              box-sizing: border-box;
              width: 90%; }
              article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon:before {
                content: '';
                position: absolute;
                width: 10px;
                bottom: -10px;
                left: -42px;
                border: 28px solid #fb637e;
                border-left-color: transparent; }
              article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon:after {
                content: '';
                position: absolute;
                width: 10px;
                bottom: -10px;
                right: -42px;
                border: 28px solid #fb637e;
                border-right-color: transparent; }
              article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon p {
                display: block;
                position: relative;
                margin: 0;
                padding: 0 10px;
                line-height: 60px;
                color: #FFF;
                background: #f74566;
                font-weight: bold;
                font-size: 32px;
                z-index: 2; }
                article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon p:before {
                  position: absolute;
                  content: '';
                  top: 100%;
                  left: 0;
                  border: none;
                  border-bottom: solid 10px transparent;
                  border-right: solid 15px #b52c44; }
                article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon p:after {
                  position: absolute;
                  content: '';
                  top: 100%;
                  right: 0;
                  border: none;
                  border-bottom: solid 10px transparent;
                  border-left: solid 15px #b52c44; }
    @media only screen and (max-width: 979px) {
      article section.s-menu {
        padding: 9vw 0 12vw; }
        article section.s-menu .container {
          width: 95%;
          padding: 5vw 0 0; }
          article section.s-menu .container > ul > li {
            padding: 1px 5vw 5vw; }
            article section.s-menu .container > ul > li + li {
              margin-top: 9vw; }
            article section.s-menu .container > ul > li .new {
              width: 20vw;
              height: 20vw; }
              article section.s-menu .container > ul > li .new p {
                font-size: 4vw; }
            article section.s-menu .container > ul > li h3 {
              width: 70vw;
              min-height: 10vw;
              font-size: 4.5vw;
              margin: -5vw auto 3.5vw;
              padding: 0.5vw 0 0; }
              article section.s-menu .container > ul > li h3 ruby rt {
                font-size: 2vw; }
              article section.s-menu .container > ul > li h3 span {
                font-size: 3.5vw; }
            article section.s-menu .container > ul > li .catch {
              font-size: 4.5vw;
              margin: 0 0 3.5vw; }
            article section.s-menu .container > ul > li .inner {
              flex-direction: column;
              gap: 3vw 0; }
              article section.s-menu .container > ul > li .inner .img {
                padding: 0 10vw; }
              article section.s-menu .container > ul > li .inner .text {
                font-size: 3.5vw; }
                article section.s-menu .container > ul > li .inner .text .part {
                  gap: 2.5vw;
                  margin: 0 0 3vw; }
                  article section.s-menu .container > ul > li .inner .text .part li {
                    width: 45%;
                    height: 8vw;
                    font-size: 3.5vw;
                    border-radius: 1.5vw; }
                    article section.s-menu .container > ul > li .inner .text .part li.long {
                      width: 55%; }
                    article section.s-menu .container > ul > li .inner .text .part li.short {
                      width: 35%; }
                    article section.s-menu .container > ul > li .inner .text .part li [class^="icon"] {
                      width: 8vw;
                      height: 8vw;
                      font-size: 2.5vw;
                      left: -2.5vw;
                      top: -2.5vw; }
                article section.s-menu .container > ul > li .inner .text .price-wrap {
                  margin: 4vw 0 0; }
                  article section.s-menu .container > ul > li .inner .text .price-wrap + .price-wrap {
                    margin-top: 2vw; }
                  article section.s-menu .container > ul > li .inner .text .price-wrap .price-left p {
                    width: 35vw;
                    min-height: 10vw;
                    font-size: 4vw;
                    padding: 1vw; }
                    article section.s-menu .container > ul > li .inner .text .price-wrap .price-left p span {
                      font-size: 3vw; }
                  article section.s-menu .container > ul > li .inner .text .price-wrap .price-right {
                    padding: 0 0 1vw; }
                    article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price {
                      font-size: 13vw; }
                      article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price > span {
                        font-size: 7vw; }
                        article section.s-menu .container > ul > li .inner .text .price-wrap .price-right .price > span > span {
                          font-size: 2.5vw;
                          bottom: 8vw; }
            article section.s-menu .container > ul > li .btn {
              margin: 4vw 0 0; }
              article section.s-menu .container > ul > li .btn a {
                display: block;
                min-width: 70vw;
                min-height: 10vw;
                font-size: 3.5vw;
                line-height: 1.4;
                padding: 2vw 7vw; }
                article section.s-menu .container > ul > li .btn a::before {
                  width: 1.2vw;
                  right: 3vw;
                  top: 0; }
            article section.s-menu .container > ul > li.monthly {
              margin-top: 24vw; }
              article section.s-menu .container > ul > li.monthly .campaign_ttl {
                top: -17vw; }
                article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon {
                  height: 40px;
                  width: 86%; }
                  article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon:before {
                    left: -25px;
                    border: 20px solid #fb637e;
                    border-left-color: transparent; }
                  article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon:after {
                    content: '';
                    position: absolute;
                    right: -25px;
                    border: 20px solid #fb637e;
                    border-right-color: transparent; }
                  article section.s-menu .container > ul > li.monthly .campaign_ttl .ribbon p {
                    line-height: 40px;
                    font-size: 18px; } }
  article section.s-case {
    padding: 75px 0 100px; }
    article section.s-case .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-case .container ul {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 40px 0; }
        article section.s-case .container ul li {
          width: 484px; }
          article section.s-case .container ul li h3 {
            font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
            font-size: 24px;
            font-size: 700;
            line-height: 1.5;
            text-align: center;
            color: #4b8eb1;
            margin: 0 0 15px; }
          article section.s-case .container ul li .mhlw-risk {
            margin: 15px 0 0; }
    @media only screen and (max-width: 979px) {
      article section.s-case {
        padding: 9vw 0 12vw; }
        article section.s-case .container {
          width: 90%; }
          article section.s-case .container ul {
            flex-direction: column;
            gap: 5vw 0; }
            article section.s-case .container ul li {
              width: 100%; }
              article section.s-case .container ul li h3 {
                font-size: 4.5vw;
                margin: 0 0 2.5vw; }
              article section.s-case .container ul li .mhlw-risk {
                margin: 3vw 0 0; }
                article section.s-case .container ul li .mhlw-risk > .mhlw-risk-single {
                  margin: 0;
                  padding: 2vw;
                  font-size: 2.5vw; } }
  article section.s-comparison {
    background: url(/assets/slimming/injection/images/comparison01.jpg) center top/cover no-repeat;
    padding: 75px 0 100px; }
    article section.s-comparison .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-comparison .container .table-box table tr th,
      article section.s-comparison .container .table-box table tr td {
        font-size: 15px;
        line-height: 1.4;
        text-align: center;
        padding: 10px 5px;
        border: 1px solid #bfbfbf; }
      article section.s-comparison .container .table-box table tr th {
        font-weight: bold;
        background: #fffdd7; }
      article section.s-comparison .container .table-box table thead tr th {
        font-size: 20px;
        line-height: 1.3; }
        article section.s-comparison .container .table-box table thead tr th a {
          line-height: 1.3;
          color: #fff;
          text-decoration: none;
          background: linear-gradient(transparent calc(100% - 1px), #fff calc(100% - 1px)); }
        article section.s-comparison .container .table-box table thead tr th span {
          display: inline-flex;
          font-size: 14px; }
        article section.s-comparison .container .table-box table thead tr th .caution {
          font-size: 12px;
          line-height: 1.2; }
        article section.s-comparison .container .table-box table thead tr th:not(:first-child) {
          width: 175px; }
        article section.s-comparison .container .table-box table thead tr th.color01 {
          background: #dd3491; }
        article section.s-comparison .container .table-box table thead tr th.color02 {
          background: #2cb7c3; }
        article section.s-comparison .container .table-box table thead tr th.color03 {
          background: #f48823; }
        article section.s-comparison .container .table-box table thead tr th.color04 {
          background: #e886b7; }
        article section.s-comparison .container .table-box table thead tr th.color05 {
          background: #7d66d2; }
      article section.s-comparison .container .table-box table tbody tr td p {
        font-weight: 700; }
        article section.s-comparison .container .table-box table tbody tr td p + p {
          margin-top: 0.3em; }
        article section.s-comparison .container .table-box table tbody tr td p .caution {
          font-size: 14px;
          font-weight: 300; }
        article section.s-comparison .container .table-box table tbody tr td p .price {
          font-size: 22px; }
      article section.s-comparison .container .table-box table tbody tr td.color01 .star {
        color: #dd3491; }
      article section.s-comparison .container .table-box table tbody tr td.color02 .star {
        color: #2cb7c3; }
      article section.s-comparison .container .table-box table tbody tr td.color03 .star {
        color: #f48823; }
      article section.s-comparison .container .table-box table tbody tr td.color04 .star {
        color: #e886b7; }
      article section.s-comparison .container .table-box table tbody tr td.color05 .star {
        color: #7d66d2; }
      article section.s-comparison .container .mhlw-risk {
        margin: 25px 0 0; }
        article section.s-comparison .container .mhlw-risk > .mhlw-risk-single {
          background: #fff;
          margin: 0;
          padding: 25px; }
      article section.s-comparison .container .conclusion {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        padding: 1px 20px 60px;
        background: #fff;
        margin: 70px 0 0; }
        article section.s-comparison .container .conclusion-index {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 500px;
          min-height: 60px;
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 34px;
          font-weight: 700;
          line-height: 1.5;
          color: #fff;
          background: #838f96;
          border-radius: 100px;
          margin: -30px auto 50px;
          padding: 3px 0 0; }
        article section.s-comparison .container .conclusion ul li {
          display: flex;
          justify-content: space-between;
          align-items: center;
          text-align: left; }
          article section.s-comparison .container .conclusion ul li + li {
            margin-top: 30px; }
          article section.s-comparison .container .conclusion ul li p {
            line-height: 1.4; }
            article section.s-comparison .container .conclusion ul li p:first-child {
              width: 140px;
              font-weight: 700;
              border: 1px solid #333;
              text-align: center;
              padding: 2px; }
            article section.s-comparison .container .conclusion ul li p:last-child {
              flex: 1;
              font-size: 24px;
              padding: 0 0 0 40px; }
    @media only screen and (max-width: 979px) {
      article section.s-comparison {
        padding: 9vw 0 12vw;
        background-position: left -65vw center; }
        article section.s-comparison .container {
          width: 95%; }
          article section.s-comparison .container .table-box table {
            width: 210vw; }
            article section.s-comparison .container .table-box table tr th,
            article section.s-comparison .container .table-box table tr td {
              font-size: 3vw;
              padding: 1.5vw 1vw; }
            article section.s-comparison .container .table-box table thead tr th {
              font-size: 3.5vw; }
              article section.s-comparison .container .table-box table thead tr th span {
                font-size: 3vw; }
              article section.s-comparison .container .table-box table thead tr th .caution {
                font-size: 2.5vw; }
              article section.s-comparison .container .table-box table thead tr th:not(:first-child) {
                width: 37vw; }
            article section.s-comparison .container .table-box table tbody tr td p .caution {
              font-size: 2.5vw; }
            article section.s-comparison .container .table-box table tbody tr td p .price {
              font-size: 4vw; }
          article section.s-comparison .container .mhlw-risk {
            margin: 3vw 0 0; }
            article section.s-comparison .container .mhlw-risk > .mhlw-risk-single {
              margin: 0;
              padding: 2vw;
              font-size: 2.5vw; }
          article section.s-comparison .container .conclusion {
            padding: 1px 3vw 7vw;
            margin: 10vw 0 0; }
            article section.s-comparison .container .conclusion-index {
              width: 80vw;
              min-height: 10vw;
              font-size: 4.5vw;
              margin: -5vw auto 6vw;
              padding: 0.5vw 0 0; }
            article section.s-comparison .container .conclusion ul li + li {
              margin-top: 3vw; }
            article section.s-comparison .container .conclusion ul li p:first-child {
              width: 25vw;
              padding: 0.5vw; }
            article section.s-comparison .container .conclusion ul li p:last-child {
              font-size: 4vw;
              padding: 1vw 0 0 6vw; } }
  article section.s-with {
    background: url(/assets/slimming/injection/images/with01.jpg) center top/cover no-repeat;
    padding: 75px 0 100px; }
    article section.s-with .container {
      text-align: center; }
      article section.s-with .container .contents01 > p.text01 {
        font-size: 24px;
        margin: 0 0 10px; }
      article section.s-with .container .contents01 > p.text02 {
        margin: 20px 0 0; }
        article section.s-with .container .contents01 > p.text02 em {
          color: #cc0000; }
      article section.s-with .container .contents01 ul {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 0 120px;
        position: relative; }
        article section.s-with .container .contents01 ul::before, article section.s-with .container .contents01 ul::after {
          content: "";
          display: block;
          width: 50px;
          height: 50px;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%); }
        article section.s-with .container .contents01 ul::before {
          background: linear-gradient(45deg, rgba(75, 142, 177, 0) 50%, #4b8eb1 50%, #4b8eb1 calc(50% + 1px), rgba(75, 142, 177, 0) calc(50% + 1px)); }
        article section.s-with .container .contents01 ul::after {
          background: linear-gradient(-45deg, rgba(75, 142, 177, 0) 50%, #4b8eb1 50%, #4b8eb1 calc(50% + 1px), rgba(75, 142, 177, 0) calc(50% + 1px)); }
        article section.s-with .container .contents01 ul li {
          width: 300px;
          height: 300px;
          border-radius: 100%;
          border: 10px solid #eef1f5;
          background: #7ab5cf;
          background: radial-gradient(circle, #7ab5cf 40%, #4e90b2 90%);
          overflow: hidden;
          box-shadow: 0 0 25px rgba(67, 72, 74, 0.05); }
          article section.s-with .container .contents01 ul li .inner {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100%;
            flex-direction: column; }
            article section.s-with .container .contents01 ul li .inner .img {
              display: flex;
              justify-content: center;
              align-items: center;
              flex: 1;
              width: 100%;
              background: #fff; }
            article section.s-with .container .contents01 ul li .inner .text {
              display: flex;
              justify-content: center;
              align-items: center;
              height: 100px;
              padding: 0 0 5px; }
              article section.s-with .container .contents01 ul li .inner .text h3 {
                font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                font-size: 28px;
                font-weight: 700;
                color: #fff;
                line-height: 1.2; }
      article section.s-with .container .contents02 {
        width: 980px;
        margin: 50px auto 0; }
        article section.s-with .container .contents02-index {
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 26px;
          font-weight: 700;
          line-height: 1.5;
          color: #fff;
          background: #838f96;
          margin: 0 auto 30px;
          padding: 10px; }
        article section.s-with .container .contents02 ul {
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          flex-wrap: wrap;
          gap: 40px 0; }
          article section.s-with .container .contents02 ul li {
            width: 484px; }
            article section.s-with .container .contents02 ul li h3 {
              font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
              font-size: 21px;
              font-size: 700;
              line-height: 1.5;
              text-align: center;
              color: #4b8eb1;
              margin: 0 0 15px; }
            article section.s-with .container .contents02 ul li .mhlw-risk {
              margin: 15px 0 0; }
              article section.s-with .container .contents02 ul li .mhlw-risk > .mhlw-risk-single {
                margin: 0; }
      article section.s-with .container .banner {
        max-width: 980px;
        margin: 60px auto 0; }
        article section.s-with .container .banner p {
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 24px;
          font-weight: 700;
          color: #4b8eb1;
          text-align: center; }
          article section.s-with .container .banner p + .heading-image {
            margin-top: 5px; }
        article section.s-with .container .banner .heading-image + .heading-image,
        article section.s-with .container .banner .heading-image + p {
          margin-top: 25px; }
    @media only screen and (max-width: 979px) {
      article section.s-with {
        padding: 9vw 0 12vw;
        background-position: left center; }
        article section.s-with .container .contents01 > p.text01 {
          font-size: 4vw;
          margin: 0 0 1.5vw; }
        article section.s-with .container .contents01 > p.text02 {
          margin: 2.5vw 0 0; }
        article section.s-with .container .contents01 ul {
          gap: 0 10vw; }
          article section.s-with .container .contents01 ul::before, article section.s-with .container .contents01 ul::after {
            width: 7vw;
            height: 7vw; }
          article section.s-with .container .contents01 ul li {
            width: 40vw;
            height: 40vw;
            border: 1vw solid #eef1f5;
            box-shadow: 0 0 3vw rgba(67, 72, 74, 0.05); }
            article section.s-with .container .contents01 ul li .inner .img img {
              width: auto;
              height: 13vw; }
            article section.s-with .container .contents01 ul li .inner .text {
              height: 15vw;
              padding: 0 0 0.5vw; }
              article section.s-with .container .contents01 ul li .inner .text h3 {
                font-size: 4vw; }
            article section.s-with .container .contents01 ul li:last-child .inner .img img {
              height: 18vw; }
        article section.s-with .container .contents02 {
          width: 95%;
          margin: 7vw auto 0; }
          article section.s-with .container .contents02-index {
            font-size: 4.5vw;
            margin: 0 auto 4vw;
            padding: 1vw; }
          article section.s-with .container .contents02 ul {
            width: 90%;
            gap: 5vw 0;
            margin: 0 auto; }
            article section.s-with .container .contents02 ul li {
              width: 100%; }
              article section.s-with .container .contents02 ul li h3 {
                font-size: 4.5vw;
                margin: 0 0 2.5vw; }
              article section.s-with .container .contents02 ul li .mhlw-risk {
                margin: 2.5vw 0 0; }
                article section.s-with .container .contents02 ul li .mhlw-risk > .mhlw-risk-single {
                  padding: 2vw;
                  font-size: 2.5vw; }
        article section.s-with .container .banner {
          max-width: 95%;
          margin: 7vw auto 0; }
          article section.s-with .container .banner p {
            font-size: 4.5vw; }
            article section.s-with .container .banner p + .heading-image {
              margin-top: 1vw; }
          article section.s-with .container .banner .heading-image + .heading-image,
          article section.s-with .container .banner .heading-image + p {
            margin-top: 3vw; } }
  article section.s-qa {
    background: url(/assets/slimming/injection/images/qa01.jpg) center top/cover no-repeat;
    padding: 75px 0 100px; }
    article section.s-qa .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-qa .container ul li {
        background: #fff;
        padding: 30px 40px; }
        article section.s-qa .container ul li + li {
          margin-top: 20px; }
        article section.s-qa .container ul li .qaq,
        article section.s-qa .container ul li .qaa {
          padding: 0 0 0 65px;
          position: relative; }
          article section.s-qa .container ul li .qaq::before,
          article section.s-qa .container ul li .qaa::before {
            display: flex;
            justify-content: center;
            align-items: center;
            font-family: "Cormorant Infant", serif;
            font-optical-sizing: auto;
            font-weight: 500;
            font-style: normal;
            font-size: 34px;
            line-height: 1;
            width: 40px;
            height: 40px;
            position: absolute;
            left: 0; }
        article section.s-qa .container ul li .qaq::before {
          content: "Q";
          background: #4b8eb1;
          color: #fff;
          padding: 0 0 3px; }
        article section.s-qa .container ul li .qaq h3 {
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 26px;
          font-weight: 700;
          color: #4b8eb1;
          line-height: 1.5; }
        article section.s-qa .container ul li .qaa {
          margin-top: 15px;
          padding-top: 15px;
          border-top: 1px dashed #4b8eb1; }
          article section.s-qa .container ul li .qaa::before {
            content: "A";
            background: #fff;
            color: #4b8eb1;
            border: 1px solid #4b8eb1;
            top: 20px; }
          article section.s-qa .container ul li .qaa p {
            font-size: 18px; }
    @media only screen and (max-width: 979px) {
      article section.s-qa {
        padding: 9vw 0 12vw; }
        article section.s-qa .container {
          width: 95%; }
          article section.s-qa .container ul li {
            padding: 3vw 4vw; }
            article section.s-qa .container ul li + li {
              margin-top: 3vw; }
            article section.s-qa .container ul li .qaq,
            article section.s-qa .container ul li .qaa {
              padding: 0 0 0 9.5vw; }
              article section.s-qa .container ul li .qaq::before,
              article section.s-qa .container ul li .qaa::before {
                font-size: 6vw;
                width: 7vw;
                height: 7vw; }
            article section.s-qa .container ul li .qaq::before {
              padding: 0 0 0.5vw; }
            article section.s-qa .container ul li .qaq h3 {
              font-size: 4.5vw; }
            article section.s-qa .container ul li .qaa {
              margin-top: 2.5vw;
              padding-top: 2.5vw; }
              article section.s-qa .container ul li .qaa::before {
                top: 2.5vw; }
              article section.s-qa .container ul li .qaa p {
                font-size: 3.5vw; } }
  article section.s-inquiry {
    width: 980px;
    text-align: center;
    background: #f7f6f5;
    padding: 15px 28px 20px;
    margin: 50px auto 0; }
    article section.s-inquiry > p {
      font-size: 29px;
      font-weight: bold;
      margin: 0 0 10px; }
    article section.s-inquiry > div {
      display: flex;
      justify-content: space-between; }
      article section.s-inquiry > div > div {
        width: 450px;
        background: #fff;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        font-size: 18px;
        line-height: 1.3;
        margin: 0;
        padding: 15px; }
        article section.s-inquiry > div > div:first-child > p:nth-child(2) a {
          font-size: 45px;
          font-weight: bold;
          color: #4b8eb1;
          background: url("/assets/liposuction/injection/images/inquiry.png") left 10px no-repeat;
          padding: 0 0 0 45px;
          filter: brightness(0) saturate(100%) invert(52%) sepia(54%) saturate(418%) hue-rotate(156deg) brightness(89%) contrast(87%); }
        article section.s-inquiry > div > div:first-child > p:nth-child(3) {
          font-size: 16px;
          color: #4b8eb1; }
        article section.s-inquiry > div > div:last-child > p:last-child a {
          width: 380px;
          display: block;
          background: #4b8eb1;
          color: #fff;
          font-size: 20px;
          font-weight: bold;
          text-align: center;
          text-decoration: none;
          padding: 10px 0;
          border-radius: 10px;
          position: relative;
          margin: 10px auto 0; }
          article section.s-inquiry > div > div:last-child > p:last-child a::before {
            content: "";
            position: absolute;
            right: 15px;
            top: 50%;
            width: 10px;
            height: 10px;
            border-top: 2px solid #fff;
            border-right: 2px solid #fff;
            transform: translate(0, -50%) rotate(45deg); }
    @media only screen and (max-width: 979px) {
      article section.s-inquiry {
        width: 95%;
        padding: 2.5vw 3vw 3vw;
        margin: 7vw auto; }
        article section.s-inquiry > p {
          font-size: 4.5vw;
          line-height: 1.3;
          margin: 0 0 2vw; }
        article section.s-inquiry > div {
          flex-direction: column; }
          article section.s-inquiry > div > div {
            width: auto;
            font-size: 3.5vw;
            padding: 3vw; }
            article section.s-inquiry > div > div:first-child > p:nth-child(2) a {
              font-size: 7vw;
              background-size: auto 6vw;
              background-position: left 1.5vw;
              padding: 0 0 0 8vw;
              text-decoration: none; }
            article section.s-inquiry > div > div:first-child > p:nth-child(3) {
              font-size: 3.5vw; }
            article section.s-inquiry > div > div:last-child {
              margin-top: 3vw; }
              article section.s-inquiry > div > div:last-child > p:last-child a {
                width: auto;
                font-size: 4.5vw;
                padding: 2vw 7vw;
                border-radius: 2vw;
                margin: 2vw auto 0; }
                article section.s-inquiry > div > div:last-child > p:last-child a::before {
                  right: 2.5vw;
                  width: 2.5vw;
                  height: 2.5vw;
                  border-top: 0.6vw solid #fff;
                  border-right: 0.6vw solid #fff; } }
