@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Albert+Sans&family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=EB+Garamond&display=swap");
article section {
  font-size: 16px;
  color: #404040; }
  @media only screen and (max-width: 979px) {
    article section {
      font-size: 3.5vw; } }
  article section em {
    font-style: normal; }
  article section > header {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin: 0 0 60px; }
    article section > header p {
      font-size: 72px;
      font-family: "EB Garamond", serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      line-height: 1;
      background: -webkit-linear-gradient(0deg, #54caa2, #3fb1ac);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent; }
    article section > header h2 {
      line-height: 1;
      margin: 5px 0 0; }
      article section > header h2 em {
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 22px;
        padding: 6px 35px;
        position: relative; }
        article section > header h2 em::before, article section > header h2 em::after {
          content: "";
          display: block;
          width: 6px;
          height: 100%;
          border: 1px solid #404040;
          border-right: none;
          position: absolute;
          top: 0; }
        article section > header h2 em::before {
          left: 0; }
        article section > header h2 em::after {
          right: 0;
          transform: scale(-1, 1); }
    @media only screen and (max-width: 979px) {
      article section > header {
        margin: 0 0 7vw; }
        article section > header p {
          font-size: 12vw; }
        article section > header h2 {
          margin: 1vw 0 0; }
          article section > header h2 em {
            font-size: 3.5vw;
            padding: 1vw 6vw; }
            article section > header h2 em::before, article section > header h2 em::after {
              width: 1.5vw; } }
  article section.s-mv {
    background: url(/assets/gynecology/laser/special-tightening/images/mv_bg.jpg) center top no-repeat;
    text-align: center; }
    @media only screen and (max-width: 979px) {
      article section.s-mv {
        background: none; } }
  article section.s-caution_monitor {
    padding: 45px 0 70px; }
    article section.s-caution_monitor .ac_ly_001._mb-s {
      width: 980px;
      margin: 0 auto !important; }
    @media only screen and (max-width: 979px) {
      article section.s-caution_monitor {
        padding: 5vw 0 7vw; }
        article section.s-caution_monitor .ac_ly_001._mb-s {
          width: 95%; }
          article section.s-caution_monitor .ac_ly_001._mb-s p {
            font-size: 3vw !important;
            padding: 2vw !important; } }
  article section.s-what {
    background: url(/assets/gynecology/laser/special-tightening/images/what01.jpg) center top no-repeat;
    padding: 80px 0 0;
    position: relative;
    z-index: 2; }
    article section.s-what .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-what .container .inner_worries {
        width: 640px;
        margin: 0 0 0 35px; }
        article section.s-what .container .inner_worries > h3 {
          font-size: 34px;
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          text-align: center;
          line-height: 1; }
          article section.s-what .container .inner_worries > h3 em {
            font-size: 42px;
            position: relative; }
            article section.s-what .container .inner_worries > h3 em::before {
              content: "";
              display: block;
              width: 100%;
              height: 30px;
              background: url(/assets/gynecology/laser/special-tightening/images/what02.svg) center top/100% auto no-repeat;
              position: absolute;
              left: 50%;
              bottom: -15px;
              transform: translate(-50%, 0);
              z-index: -1; }
        article section.s-what .container .inner_worries ul {
          margin: 30px 0 0; }
          article section.s-what .container .inner_worries ul li {
            font-size: 22px;
            background: url(/assets/gynecology/laser/special-tightening/images/what03.svg) 33px center/27px auto no-repeat #fff;
            padding: 5px 5px 5px 75px; }
            article section.s-what .container .inner_worries ul li + li {
              margin-top: 13px; }
      article section.s-what .container .inner_laser {
        margin: 135px 0 0; }
        article section.s-what .container .inner_laser > h3 {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 744px;
          height: 122px;
          font-size: 32px;
          text-align: center;
          line-height: 1;
          color: #fff;
          background: url(/assets/gynecology/laser/special-tightening/images/what04.svg) top center/100% auto no-repeat;
          margin: 0 auto 45px;
          padding: 0 0 30px; }
        article section.s-what .container .inner_laser > p {
          font-size: 26px;
          font-weight: bold;
          text-align: center; }
        article section.s-what .container .inner_laser .flow {
          margin: 55px 0 0;
          position: relative; }
          article section.s-what .container .inner_laser .flow::before {
            content: "";
            display: block;
            width: 90%;
            height: 60px;
            box-shadow: 0 25px 15px rgba(38, 100, 91, 0.1);
            position: absolute;
            left: 5%;
            bottom: -1px; }
          article section.s-what .container .inner_laser .flow .inner {
            background: #fff;
            display: flex;
            justify-content: center;
            align-items: flex-end;
            position: relative;
            padding: 0 20px 70px; }
            article section.s-what .container .inner_laser .flow .inner .img + .img {
              padding-left: 120px;
              position: relative; }
              article section.s-what .container .inner_laser .flow .inner .img + .img::before {
                content: "";
                display: block;
                width: 33px;
                height: 66px;
                background: url(/assets/gynecology/laser/special-tightening/images/what07.svg) top center/100% auto no-repeat;
                position: absolute;
                left: 45px;
                top: 50%;
                transform: translate(0, -50%); }
    @media only screen and (max-width: 979px) {
      article section.s-what {
        background-size: 245vw;
        background-position: top right -45vw;
        padding: 8vw 0 0; }
        article section.s-what .container {
          width: 95%;
          margin: 0 auto; }
          article section.s-what .container .inner_worries {
            width: 100%;
            margin: 0; }
            article section.s-what .container .inner_worries > h3 {
              font-size: 5vw; }
              article section.s-what .container .inner_worries > h3 em {
                font-size: 6vw; }
                article section.s-what .container .inner_worries > h3 em::before {
                  height: 3.5vw;
                  bottom: -1.8vw; }
            article section.s-what .container .inner_worries ul {
              margin: 4vw 0 0; }
              article section.s-what .container .inner_worries ul li {
                font-size: 3.5vw;
                background: url(/assets/gynecology/laser/special-tightening/images/what03.svg) 2vw center/4.5vw auto no-repeat #fff;
                padding: 1vw 1vw 1vw 8vw; }
                article section.s-what .container .inner_worries ul li + li {
                  margin-top: 2vw; }
          article section.s-what .container .inner_laser {
            margin: 9vw 0 0; }
            article section.s-what .container .inner_laser > h3 {
              width: 80vw;
              height: 13.5vw;
              font-size: 4vw;
              margin: 0 auto 6vw;
              padding: 0 0 3.5vw; }
            article section.s-what .container .inner_laser > p {
              font-size: 4vw; }
            article section.s-what .container .inner_laser .flow {
              margin: 4vw 0 0; }
              article section.s-what .container .inner_laser .flow::before {
                width: 90%;
                height: 7vw;
                box-shadow: 0 3vw 2vw rgba(38, 100, 91, 0.1); }
              article section.s-what .container .inner_laser .flow .inner {
                padding: 0 2.5vw 8vw; }
                article section.s-what .container .inner_laser .flow .inner .img + .img {
                  padding-left: 7vw; }
                  article section.s-what .container .inner_laser .flow .inner .img + .img::before {
                    width: 5vw;
                    height: 10vw;
                    left: 2vw; } }
  article section.s-features {
    background: #e2efeb;
    padding: 255px 0 430px;
    margin: -155px 0 0;
    position: relative;
    z-index: 1; }
    article section.s-features > p {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 0 5px; }
      article section.s-features > p span {
        font-size: 30px;
        font-weight: bold;
        line-height: 1.2;
        padding: 0 30px;
        position: relative; }
        article section.s-features > p span::before, article section.s-features > p span::after {
          content: "";
          display: block;
          position: absolute;
          width: 1px;
          height: 95%;
          background: #404040;
          bottom: 5%; }
        article section.s-features > p span::before {
          left: 0;
          transform: rotate(-25deg); }
        article section.s-features > p span::after {
          right: 0;
          transform: rotate(25deg); }
    article section.s-features > h2 {
      font-size: 40px;
      font-weight: bold;
      text-align: center;
      margin: 0 0 30px; }
    article section.s-features > ul {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      width: 980px;
      margin: 0 auto; }
      article section.s-features > ul li {
        width: 450px;
        background: #fff;
        padding: 30px 0 50px;
        margin: 0 0 0 20px; }
        article section.s-features > ul li:nth-child(n + 3) {
          margin-top: 45px; }
        article section.s-features > ul li > header {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          margin: 0 0 40px -20px; }
          article section.s-features > ul li > header p {
            font-family: "DM Sans", sans-serif;
            font-optical-sizing: auto;
            font-style: normal;
            color: #b5b5b5;
            line-height: 1; }
            article section.s-features > ul li > header p.en {
              font-size: 13px;
              font-weight: 400;
              border-bottom: 1px solid #b5b5b5;
              padding: 0 0 5px 70px; }
            article section.s-features > ul li > header p.num {
              font-size: 32px;
              font-weight: 300;
              margin: 0 0 0 13px; }
        article section.s-features > ul li .container {
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 0 30px 0 50px; }
          article section.s-features > ul li .container .img {
            width: 95px;
            text-align: center; }
          article section.s-features > ul li .container .text {
            flex: 1;
            text-align: center; }
            article section.s-features > ul li .container .text p {
              font-size: 26px;
              line-height: 1.4; }
              article section.s-features > ul li .container .text p em {
                font-weight: bold;
                color: #79c8ac; }
        article section.s-features > ul li:nth-child(3) .container .img img, article section.s-features > ul li:nth-child(4) .container .img img {
          max-width: 85px; }
    @media only screen and (max-width: 979px) {
      article section.s-features {
        padding: 32vw 0 37vw;
        margin: -23vw 0 0; }
        article section.s-features > p {
          margin: 0 0 1vw; }
          article section.s-features > p span {
            font-size: 4.5vw;
            padding: 0 4vw; }
        article section.s-features > h2 {
          font-size: 5vw;
          margin: 0 0 4vw; }
        article section.s-features > ul {
          justify-content: center;
          width: 100%; }
          article section.s-features > ul li {
            width: 43vw;
            padding: 3vw 0 5vw;
            margin: 0 0 0 2.5vw; }
            article section.s-features > ul li:nth-child(even) {
              margin-left: 5vw; }
            article section.s-features > ul li:nth-child(n + 3) {
              margin-top: 6vw; }
            article section.s-features > ul li > header {
              margin: 0 0 3vw -2.5vw; }
              article section.s-features > ul li > header p.en {
                font-size: 2.5vw;
                padding: 0 0 1vw 8vw; }
              article section.s-features > ul li > header p.num {
                font-size: 7vw;
                margin: 0 0 0 2vw; }
            article section.s-features > ul li .container {
              flex-direction: column;
              padding: 0 4vw; }
              article section.s-features > ul li .container .img {
                width: 15vw; }
              article section.s-features > ul li .container .text {
                margin: 3vw 0 0; }
                article section.s-features > ul li .container .text p {
                  font-size: 4vw; }
            article section.s-features > ul li:nth-child(3) .container .img img, article section.s-features > ul li:nth-child(4) .container .img img {
              max-width: 13vw; } }
  article section.s-cause {
    padding: 1px 0 100px; }
    article section.s-cause .technical {
      width: 980px;
      position: relative;
      margin: -325px auto 100px;
      position: relative;
      z-index: 2; }
      article section.s-cause .technical::before {
        content: "";
        display: block;
        width: 90%;
        height: 60px;
        box-shadow: 0 25px 15px rgba(43, 43, 43, 0.15);
        position: absolute;
        left: 5%;
        bottom: -1px; }
      article section.s-cause .technical .inner {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        width: 978px;
        min-height: 508px;
        color: #fff;
        background: url(/assets/gynecology/laser/special-tightening/images/cause01.jpg) top center/cover no-repeat;
        margin: 0 auto;
        padding: 20px 0; }
        article section.s-cause .technical .inner > header {
          text-align: center;
          margin: 0 0 45px; }
          article section.s-cause .technical .inner > header p {
            font-size: 65px;
            font-weight: bold;
            line-height: 1; }
          article section.s-cause .technical .inner > header h3 {
            font-size: 22px;
            font-weight: bold; }
        article section.s-cause .technical .inner .text01 {
          font-size: 25px; }
        article section.s-cause .technical .inner .text02 {
          font-family: voluta-script-pro, sans-serif;
          font-weight: 400;
          font-style: normal;
          font-size: 62px;
          line-height: 1;
          margin: 35px 0 0; }
        article section.s-cause .technical .inner .btn {
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 50px 0 0; }
          article section.s-cause .technical .inner .btn a {
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 18px;
            font-weight: bold;
            text-align: center;
            color: #fff;
            text-decoration: none;
            padding: 5px 50px 22px;
            background: rgba(66, 169, 155, 0.9);
            border-radius: 100px;
            position: relative; }
            article section.s-cause .technical .inner .btn a::before {
              content: "";
              display: block;
              width: 17px;
              height: 17px;
              background: url(/assets/gynecology/laser/special-tightening/images/icon_arrow.svg) center right/auto 100% no-repeat;
              position: absolute;
              left: 50%;
              bottom: 7px;
              transform: translate(-50%, 0) rotate(90deg); }
    article section.s-cause .container {
      padding: 80px 0 90px;
      position: relative; }
      article section.s-cause .container::before {
        content: "";
        display: block;
        width: 60%;
        width: calc(50% + 200px);
        height: 100%;
        background: #f4f4f4;
        position: absolute;
        left: 0;
        top: 0; }
      article section.s-cause .container ul {
        width: 980px;
        position: relative;
        margin: 0 auto; }
        article section.s-cause .container ul li {
          display: flex; }
          article section.s-cause .container ul li + li {
            border-top: 1px solid #46baa9;
            margin-top: 70px;
            padding-top: 70px; }
          article section.s-cause .container ul li .img {
            width: 510px;
            padding: 0 55px 0 0;
            text-align: right; }
          article section.s-cause .container ul li .text {
            flex: 1; }
            article section.s-cause .container ul li .text > header {
              display: flex;
              justify-content: flex-start;
              align-items: flex-end;
              margin: 0 0 35px; }
              article section.s-cause .container ul li .text > header p {
                font-family: "DM Sans", sans-serif;
                font-optical-sizing: auto;
                font-style: normal;
                line-height: 1;
                font-size: 40px;
                font-weight: 400;
                color: #46baa9; }
              article section.s-cause .container ul li .text > header h3 {
                font-size: 25px;
                font-weight: bold;
                line-height: 1.3;
                padding: 0 0 0 20px; }
          article section.s-cause .container ul li.reverse {
            flex-direction: row-reverse; }
            article section.s-cause .container ul li.reverse .img {
              padding: 0 0 0 55px;
              text-align: left; }
    @media only screen and (max-width: 979px) {
      article section.s-cause {
        padding: 1px 0 12vw; }
        article section.s-cause .technical {
          width: 95%;
          margin: -30vw auto 8vw; }
          article section.s-cause .technical::before {
            height: 7vw;
            box-shadow: 0 3vw 2vw rgba(43, 43, 43, 0.15);
            bottom: -1px; }
          article section.s-cause .technical .inner {
            width: 100%;
            min-height: 63vw;
            padding: 3vw 2.5vw; }
            article section.s-cause .technical .inner > header {
              margin: 0 0 4vw; }
              article section.s-cause .technical .inner > header p {
                font-size: 8vw; }
              article section.s-cause .technical .inner > header h3 {
                font-size: 3.5vw; }
            article section.s-cause .technical .inner .text01 {
              font-size: 3.5vw; }
            article section.s-cause .technical .inner .text02 {
              font-size: 8vw;
              margin: 3vw 0 0; }
            article section.s-cause .technical .inner .btn {
              margin: 4vw 0 0; }
              article section.s-cause .technical .inner .btn a {
                font-size: 3vw;
                line-height: 1.4;
                padding: 1.5vw 7vw 3vw; }
                article section.s-cause .technical .inner .btn a::before {
                  width: 3.5vw;
                  height: 3.5vw;
                  bottom: 1vw; }
        article section.s-cause .container {
          padding: 8vw 0 10vw; }
          article section.s-cause .container::before {
            width: calc(50% + 20vw); }
          article section.s-cause .container ul {
            width: 95%; }
            article section.s-cause .container ul li {
              flex-direction: column; }
              article section.s-cause .container ul li + li {
                margin-top: 7vw;
                padding-top: 7vw; }
              article section.s-cause .container ul li .img {
                width: 100%;
                text-align: center;
                padding: 3vw 0 0; }
                article section.s-cause .container ul li .img img {
                  width: 65vw; }
              article section.s-cause .container ul li .text > header {
                margin: 0 0 4vw; }
                article section.s-cause .container ul li .text > header p {
                  font-size: 7vw; }
                article section.s-cause .container ul li .text > header h3 {
                  font-size: 4.5vw;
                  padding: 0 0 0 3vw; }
              article section.s-cause .container ul li.reverse {
                flex-direction: column; }
                article section.s-cause .container ul li.reverse .img {
                  padding: 3vw;
                  text-align: center; } }
  article section.s-laser {
    padding: 80px 0 100px;
    background: #97d3be;
    background: linear-gradient(90deg, #97d3be 0%, #a4e0dd 100%); }
    article section.s-laser > header p,
    article section.s-laser > header h2 {
      color: #fff; }
      article section.s-laser > header p em::before, article section.s-laser > header p em::after,
      article section.s-laser > header h2 em::before,
      article section.s-laser > header h2 em::after {
        border-color: #fff; }
    article section.s-laser > header p {
      background: none;
      -webkit-background-clip: inherit;
      -webkit-text-fill-color: inherit; }
    article section.s-laser .container {
      width: 980px;
      background: #fff;
      padding: 32px 20px 50px;
      margin: 0 auto; }
      article section.s-laser .container .clinic {
        font-weight: bold;
        text-align: center;
        background: #f4f4f4;
        padding: 15px 20px;
        margin: 0 0 15px; }
        article section.s-laser .container .clinic_index {
          font-size: 20px;
          font-weight: bold;
          border-bottom: 1px solid #46baa9;
          margin: 0 0 20px; }
        article section.s-laser .container .clinic_treatment {
          font-size: 20px; }
        article section.s-laser .container .clinic ul {
          display: flex;
          justify-content: space-around;
          flex-wrap: wrap;
          margin: 10px 0 0; }
          article section.s-laser .container .clinic ul li {
            width: 23%; }
            article section.s-laser .container .clinic ul li a {
              display: flex;
              justify-content: center;
              align-items: center;
              width: 100%;
              min-height: 50px;
              font-weight: bold;
              color: #fff;
              line-height: 1.2;
              text-decoration: none;
              border-radius: 100px;
              background: #54caa2;
              background: linear-gradient(90deg, #54caa2 0%, #3fb1ac 100%);
              padding: 5px 30px;
              position: relative; }
              article section.s-laser .container .clinic ul li a::before {
                content: "";
                display: block;
                width: 17px;
                height: 17px;
                background: url(/assets/gynecology/laser/special-tightening/images/icon_arrow.svg) center right/auto 100% no-repeat;
                position: absolute;
                right: 15px;
                top: 50%;
                transform: translate(0, -50%); }
            @media only screen and (max-width: 979px) {
              article section.s-laser .container .clinic ul li a {
                min-height: 8vw;
                padding: 1vw 5vw; }
                article section.s-laser .container .clinic ul li a::before {
                  width: 3vw;
                  height: 3vw;
                  right: 2vw; } }
      article section.s-laser .container .inner {
        padding: 0 40px; }
        article section.s-laser .container .inner .img {
          text-align: center;
          margin: 30px 0 0; }
        article section.s-laser .container .inner .text01 {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 785px;
          min-height: 72px;
          font-size: 18px;
          text-align: center;
          line-height: 1.5;
          background: #ffffff;
          background: linear-gradient(90deg, white 10%, #e2efeb 40%, #e2efeb 60%, white 90%);
          margin: 45px 0 0;
          position: relative; }
          article section.s-laser .container .inner .text01 span {
            display: contents; }
          article section.s-laser .container .inner .text01::before {
            content: "";
            display: block;
            width: 81px;
            height: 158px;
            background: url(/assets/gynecology/laser/special-tightening/images/laser02.png) center top/100% auto no-repeat;
            position: absolute;
            right: 0;
            top: 50%;
            transform: translate(0, -50%); }
        article section.s-laser .container .inner table {
          width: 100%;
          margin: 75px 0 0;
          border-collapse: collapse; }
          article section.s-laser .container .inner table tr th,
          article section.s-laser .container .inner table tr td {
            font-size: 18px;
            padding: 10px 20px;
            border: 1px solid #404040; }
          article section.s-laser .container .inner table tr th {
            font-size: 21px;
            font-weight: bold;
            text-align: center;
            background: #fffcd6; }
        article section.s-laser .container .inner h3 {
          font-size: 20px;
          text-align: center;
          background: #e2efeb;
          padding: 12px;
          margin: 55px 0 20px; }
        article section.s-laser .container .inner .price_wrap {
          display: flex;
          justify-content: center;
          align-items: center;
          flex-wrap: wrap;
          gap: 0 15px; }
          article section.s-laser .container .inner .price_wrap .price_inner {
            display: flex;
            justify-content: center;
            align-items: center; }
            article section.s-laser .container .inner .price_wrap .price_inner .price_left {
              margin-right: 15px; }
              article section.s-laser .container .inner .price_wrap .price_inner .price_left p {
                font-size: 17px;
                font-weight: bold;
                border: 1px solid #404040;
                padding: 5px 12px; }
            article section.s-laser .container .inner .price_wrap .price_inner .price_right .price {
              font-size: 68px;
              font-family: "Albert Sans", sans-serif;
              font-optical-sizing: auto;
              font-weight: 400;
              font-style: normal;
              line-height: 1;
              letter-spacing: -3px; }
              article section.s-laser .container .inner .price_wrap .price_inner .price_right .price > span {
                font-size: 35px;
                font-weight: bold;
                font-family: "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
                letter-spacing: 0;
                position: relative; }
                article section.s-laser .container .inner .price_wrap .price_inner .price_right .price > span > span {
                  font-size: 15px;
                  position: absolute;
                  left: 50%;
                  bottom: 40px;
                  transform: translate(-50%, 0);
                  white-space: nowrap; }
            article section.s-laser .container .inner .price_wrap .price_inner.monitor {
              color: #46baa9; }
              article section.s-laser .container .inner .price_wrap .price_inner.monitor .price_left p {
                border-color: #46baa9; }
        article section.s-laser .container .inner .btn {
          width: 300px;
          margin: 30px auto 0; }
          article section.s-laser .container .inner .btn a {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            min-height: 50px;
            font-weight: bold;
            color: #fff;
            line-height: 1.2;
            text-decoration: none;
            border-radius: 100px;
            background: #54caa2;
            background: linear-gradient(90deg, #54caa2 0%, #3fb1ac 100%);
            padding: 5px 30px;
            position: relative; }
            article section.s-laser .container .inner .btn a::before {
              content: "";
              display: block;
              width: 17px;
              height: 17px;
              background: url(/assets/gynecology/laser/special-tightening/images/icon_arrow.svg) center right/auto 100% no-repeat;
              position: absolute;
              right: 15px;
              top: 50%;
              transform: translate(0, -50%); }
          @media only screen and (max-width: 979px) {
            article section.s-laser .container .inner .btn a {
              min-height: 8vw;
              padding: 1vw 5vw; }
              article section.s-laser .container .inner .btn a::before {
                width: 3vw;
                height: 3vw;
                right: 2vw; } }
    article section.s-laser .range_index {
      font-size: 40px;
      font-weight: bold;
      color: #fff;
      text-align: center;
      letter-spacing: 0.25em;
      line-height: 1.4;
      margin: 70px 0 0; }
    article section.s-laser table.range {
      width: 850px;
      background: #fff;
      border-collapse: collapse;
      margin: 25px auto 0; }
      article section.s-laser table.range tr th,
      article section.s-laser table.range tr td {
        font-size: 23px;
        font-weight: bold;
        text-align: center;
        border: 1px solid #c9c8c8; }
      article section.s-laser table.range thead tr th {
        font-weight: bold;
        color: #46baa9;
        background: #fffcd6; }
        article section.s-laser table.range thead tr th:not(:first-child) {
          width: 400px; }
      article section.s-laser table.range tbody tr th {
        background: #fffcd6; }
        article section.s-laser table.range tbody tr th span {
          writing-mode: vertical-rl;
          white-space: pre;
          display: inline-block; }
        article section.s-laser table.range tbody tr th small {
          font-size: 19px; }
      article section.s-laser table.range tbody tr td.none {
        background-image: linear-gradient(to left top, transparent calc(50% - 0.5px), #c9c8c8 50%, #c9c8c8 calc(50% + 0.5px), transparent calc(50% + 1px)); }
    @media only screen and (max-width: 979px) {
      article section.s-laser {
        padding: 9vw 0 12vw; }
        article section.s-laser .container {
          width: 95%;
          padding: 4vw 3vw 6vw; }
          article section.s-laser .container .clinic {
            padding: 2.5vw 3vw;
            margin: 0 0 15px; }
            article section.s-laser .container .clinic_index {
              font-size: 4vw;
              margin: 0 0 2.5vw; }
            article section.s-laser .container .clinic_treatment {
              font-size: 4.5vw; }
            article section.s-laser .container .clinic ul {
              justify-content: space-between;
              margin: 1vw 0 0; }
              article section.s-laser .container .clinic ul li {
                width: 48.5%; }
                article section.s-laser .container .clinic ul li:nth-child(n + 3) {
                  margin-top: 2vw; }
          article section.s-laser .container .inner {
            padding: 0 3vw; }
            article section.s-laser .container .inner .img {
              margin: 4vw 0 0; }
            article section.s-laser .container .inner .text01 {
              width: 95%;
              min-height: 10vw;
              font-size: 3.5vw;
              margin: 8vw 0 0;
              padding: 1vw 0; }
              article section.s-laser .container .inner .text01::before {
                width: 12vw;
                height: 23vw;
                right: -11vw; }
            article section.s-laser .container .inner table {
              margin: 9vw 0 0; }
              article section.s-laser .container .inner table tr th,
              article section.s-laser .container .inner table tr td {
                font-size: 3vw;
                padding: 1.5vw 2.5vw; }
              article section.s-laser .container .inner table tr th {
                font-size: 3vw; }
            article section.s-laser .container .inner h3 {
              font-size: 4vw;
              padding: 1vw;
              margin: 7vw 0 3vw; }
            article section.s-laser .container .inner .price_wrap {
              flex-direction: column;
              gap: 0 3vw; }
              article section.s-laser .container .inner .price_wrap .price_inner .price_left {
                margin-right: 3vw; }
                article section.s-laser .container .inner .price_wrap .price_inner .price_left p {
                  font-size: 3vw;
                  padding: 0.5vw 1.5vw; }
              article section.s-laser .container .inner .price_wrap .price_inner .price_right .price {
                font-size: 12vw;
                letter-spacing: -0.05em; }
                article section.s-laser .container .inner .price_wrap .price_inner .price_right .price > span {
                  font-size: 6vw;
                  margin-left: 0.5vw; }
                  article section.s-laser .container .inner .price_wrap .price_inner .price_right .price > span > span {
                    font-size: 2.5vw;
                    bottom: 7vw; }
              article section.s-laser .container .inner .price_wrap .price_inner.monitor {
                margin: 2vw 0 0; }
            article section.s-laser .container .inner .btn {
              width: 60vw;
              margin: 4vw auto 0; }
        article section.s-laser .range_index {
          font-size: 7vw;
          margin: 8vw 0 0; }
        article section.s-laser table.range {
          width: 95%;
          margin: 3vw auto 0; }
          article section.s-laser table.range tr th,
          article section.s-laser table.range tr td {
            font-size: 4vw; }
          article section.s-laser table.range thead tr th {
            padding: 1vw; }
            article section.s-laser table.range thead tr th:not(:first-child) {
              width: 45%; }
          article section.s-laser table.range tbody tr th small {
            font-size: 3vw; } }
  article section.s-others {
    padding: 80px 0 0; }
    article section.s-others .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-others .container .others-box {
        margin-bottom: 20px; }
        article section.s-others .container .others-box a.others-ttl {
          display: flex;
          border-radius: 0px;
          min-height: 50px;
          background: #46baa9;
          text-align: center;
          text-decoration: none;
          color: #fff;
          font-size: 22px;
          padding: 4px 0 0;
          font-weight: bold;
          line-height: 1.2; }
          article section.s-others .container .others-box a.others-ttl span {
            border-bottom: 1px solid #fff; }
        article section.s-others .container .others-box .others-content {
          padding: 20px;
          border: 3px solid #46baa9; }
          article section.s-others .container .others-box .others-content .price_container .name {
            font-size: 20px;
            font-weight: bold;
            border-bottom: 1px solid #46baa9;
            color: #46baa9;
            text-align: center;
            margin: 20px auto 10px; }
          article section.s-others .container .others-box .others-content .price_container .menu {
            display: flex;
            justify-content: flex-end;
            align-items: center;
            font-size: 18px;
            color: #46baa9; }
            article section.s-others .container .others-box .others-content .price_container .menu + .menu {
              margin-top: 10px; }
            article section.s-others .container .others-box .others-content .price_container .menu.column {
              flex-wrap: wrap; }
              article section.s-others .container .others-box .others-content .price_container .menu.column .course {
                width: 100%; }
            article section.s-others .container .others-box .others-content .price_container .menu .course {
              padding: 0 1em; }
            article section.s-others .container .others-box .others-content .price_container .menu .yen {
              font-size: 2.5em;
              font-weight: bold;
              line-height: 1.2; }
              article section.s-others .container .others-box .others-content .price_container .menu .yen ruby {
                font-size: 0.6em; }
                article section.s-others .container .others-box .others-content .price_container .menu .yen ruby rt {
                  font-size: 0.4em; }
    @media screen and (max-width: 979px) {
      article section.s-others {
        padding: 9vw 0 0; }
        article section.s-others .container {
          width: 95%;
          padding: 4vw 3vw 6vw; }
          article section.s-others .container .others-box a.others-ttl {
            font-size: 1.8rem;
            display: inline-block; }
          article section.s-others .container .others-box .others-content .price_container .menu {
            justify-content: center;
            margin-top: 10px; }
            article section.s-others .container .others-box .others-content .price_container .menu.column {
              flex-wrap: nowrap; } }
  article section.s-banner {
    padding: 60px 0; }
    article section.s-banner .banner {
      width: 980px;
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0 30px;
      margin: 0 auto; }
    @media only screen and (max-width: 979px) {
      article section.s-banner {
        padding: 7vw 0; }
        article section.s-banner .banner {
          flex-direction: column;
          width: 95%;
          gap: 3vw 0; } }
  article section.s-comment {
    background: url(/assets/gynecology/laser/special-tightening/images/comment01.jpg) center top/cover no-repeat;
    padding: 80px 0 0; }
    article section.s-comment .container {
      width: 980px;
      margin: 0 auto;
      padding: 0 0 100px 405px;
      position: relative; }
      article section.s-comment .container .img {
        position: absolute;
        left: -20px;
        bottom: 0;
        z-index: 1; }
      article section.s-comment .container > * {
        position: relative; }
      article section.s-comment .container p {
        z-index: 2; }
        article section.s-comment .container p + p {
          margin-top: 1em; }
      article section.s-comment .container .name {
        display: flex;
        justify-content: flex-end;
        margin: 1em 0 0; }
        article section.s-comment .container .name p {
          font-size: 21px;
          font-weight: bold;
          line-height: 1.4; }
          article section.s-comment .container .name p em {
            font-size: 30px; }
    @media only screen and (max-width: 979px) {
      article section.s-comment {
        padding: 9vw 0 0;
        overflow: hidden; }
        article section.s-comment .container {
          width: 95%;
          margin: 0 auto;
          padding: 0 0 12vw; }
          article section.s-comment .container .img {
            width: 45vw;
            left: -7vw; }
          article section.s-comment .container p + p {
            margin-top: 1em; }
          article section.s-comment .container p:nth-child(n + 3) {
            margin-left: 40vw; }
          article section.s-comment .container .name p {
            font-size: 3.5vw; }
            article section.s-comment .container .name p em {
              font-size: 5vw; } }
  article section.s-clinic {
    padding: 80px 0 0; }
    article section.s-clinic .container {
      width: 980px;
      margin: 0 auto; }
      article section.s-clinic .container .text01 {
        font-size: 20px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        background: #46baa9;
        margin: 0 0 25px;
        padding: 5px; }
      article section.s-clinic .container .bc_01_047 .bc-item {
        padding-bottom: 40px;
        border-bottom: 1px solid #46baa9; }
        article section.s-clinic .container .bc_01_047 .bc-item:not(:first-child) {
          margin-top: 40px;
          padding-top: 0;
          border-top: none; }
        article section.s-clinic .container .bc_01_047 .bc-item > .map {
          vertical-align: top; }
          article section.s-clinic .container .bc_01_047 .bc-item > .map iframe {
            vertical-align: top; }
        article section.s-clinic .container .bc_01_047 .bc-item > .info {
          text-align: left; }
          article section.s-clinic .container .bc_01_047 .bc-item > .info > .name {
            font-weight: bold;
            color: #46baa9; }
          article section.s-clinic .container .bc_01_047 .bc-item > .info > .tel > .number {
            font-weight: bold;
            color: #46baa9; }
          article section.s-clinic .container .bc_01_047 .bc-item > .info > .tel > .freetel .-freetelcolor {
            fill: #46baa9 !important; }
    @media only screen and (max-width: 979px) {
      article section.s-clinic {
        padding: 9vw 0 0; }
        article section.s-clinic .container {
          width: 95%; }
          article section.s-clinic .container .text01 {
            font-size: 4vw;
            margin: 0 0 4vw;
            padding: 1vw; }
          article section.s-clinic .container .bc_01_047 .bc-item {
            padding: 0 2.5vw 5vw; }
            article section.s-clinic .container .bc_01_047 .bc-item:not(:first-child) {
              margin-top: 5vw; }
            article section.s-clinic .container .bc_01_047 .bc-item > .info {
              padding: 0; }
              article section.s-clinic .container .bc_01_047 .bc-item > .info > .name {
                font-size: 5vw;
                line-height: 1.5;
                margin: 0 0 2.5vw; }
              article section.s-clinic .container .bc_01_047 .bc-item > .info > .address {
                font-size: 3.5vw;
                margin: 0 0 2.5vw; }
              article section.s-clinic .container .bc_01_047 .bc-item > .info > .tel > .number {
                font-size: 6vw; }
              article section.s-clinic .container .bc_01_047 .bc-item > .info > .tel > .freetel {
                width: 8vw;
                height: 8vw;
                margin-right: 2vw; } }
