@font-face {
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/materialicons/v70/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2) format("woff2")
}
.StudioCanvas {
  height: auto;
  min-height: 100vh;
  display: flex
}
.StudioCanvas > .sd {
  overflow: hidden;
  min-height: 100vh
}
a, abbr, address, article, aside, audio, b, blockquote, body, button, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, input, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, select, small, span, strong, sub, summary, sup, table, tbody, td, textarea, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  list-style: none;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  transition: .3s cubic-bezier(.4, .4, 0, 1);
  color: #333;
  word-spacing: 1px;
  -webkit-backface-visibility: hidden
}
nav ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
  content: none
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}
ins {
  text-decoration: none
}
ins, mark {
  background-color: #ff9;
  color: #000
}
mark {
  font-style: italic;
  font-weight: 700
}
del {
  text-decoration: line-through
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}
input, select {
  vertical-align: middle
}
textarea {
  resize: none
}
.clearfix:after {
  content: "";
  clear: both;
  display: block
}
[slot=after] button {
  overflow-anchor: none
}
body, body.beauty {
  margin: 0;
  padding: 0;
  background: #f1f1f1;
  text-align: center;
  /* font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif; */
  font-family: 'Noto Sans JP', sans-serif;
}
@media screen and (min-width: 480px) {
  .pc {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 480px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}
p {
  color: #333;
  font-size: 15px;
  font-weight: 400;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.num {
  font-size: 120%;
  font-weight: 800;
}
.tax {
  font-size: 80%;
  font-weight: normal;
}
header {
  background: #fff;
  width: 100%;
  display: block;
  padding: 15px;
  position: fixed;
  z-index: 10;
  box-shadow: none;
  transition: ease .6s;
}
.trainer header, .guide header {
  padding: 15px;
}
.shadow {
  box-shadow: 1px 1px 5px #ccc;
  transition: ease .6s;
  padding-bottom: 14px;
}
.header_content {
  margin: 0 auto;
  min-width: 1000px;
  max-width: 1400px;
}
.header_items {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header_mainInfo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: calc(100% - 238px);
}
.nav_box {
  /*width: 60%;*/
  width: auto;
  display: flex;
  justify-content: space-around;
  /* margin-right: 4vw; */
  /* max-width: 540px; */
}
.global_nav {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  justify-content: flex-end;
  margin-right: 32px;
}
.global_nav_item {
  margin: 0 32px 0 0;
  line-height: 2.4;
}
.global_nav_item:last-child {
  margin: 0;
}
.global_nav_item a {
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.1em;
  margin: 0;
  padding-bottom: 2px;
  transition: ease .6s;
  border-bottom: 2px solid #fff;
}
.global_nav_item a:hover, .global_nav_item a.current-page {
  border-bottom: 2px solid #28b183;
  transition: ease .6s;
}
.global_nav_item .roll-down {
  position: relative;
  transition: margin .5s ease, padding .5s ease;
  cursor: pointer;
}
.roll-down.active {
  margin-bottom: -1rem;
  padding-bottom: 1rem;
}
.global_nav_item .roll-down > span {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1em;
  position: relative;
}
.global_nav_item .roll-down > span::after {
  content: "";
  display: inline-block;
  position: relative;
  background: url("img/btn_arrow.svg") no-repeat;
  background-size: 100% auto;
  width: 14px;
  height: 8px;
  margin-left: 8px;
  transition: ease .5s;
}
.global_nav_item .roll-down.active > span::after {
  transform: rotate(180deg);
  transition: ease .5s;
}
.global_nav_item .roll-down .global_nav_child {
  position: absolute;
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
  top: 100%;
  padding: 5px 35px 12px 23px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  transition: opacity .5s ease, visibility .5s ease;
  margin-top: -5px;
}
.global_nav_item .roll-down.active .global_nav_child {
  visibility: visible;
  pointer-events: auto;
  opacity: 1;
  z-index: 9000;
}
.global_nav_child {
  text-align: left;
}
.global_nav_item .global_nav_child_item a {
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  color: #3A3A3C;
  line-height: 2.5;
  border-bottom: none;
  transition: ease .6s;
}
.global_nav_item .global_nav_child_item a:hover {
  color: #29B183;
  transition: ease .6s;
  border-bottom: none;
}
.logo_box {
  display: flex;
  align-items: center;
  /* margin-right: 1.5vw; */
}
.header_img {
  background: url("img/s-154x150_66f79967-cc9b-43ca-8de0-38e19d08398f.svg") no-repeat;
  height: 55px;
  width: 55px;
  max-width: 100%;
  display: block;
}
.header_title {
  margin: 0px;
}
.header_title a {
  color: #00b17c;
  font-size: 22px;
  line-height: 2.0;
  font-style: normal;
  height: auto;
  letter-spacing: normal;
  padding: 0 0.3rem;
  text-align: left;
  display: block;
}
.top .header_title a {
    font-size: 18px;
    line-height: 1.3;
}
.beauty .header_title a {
    font-size: 18px;
    line-height: 1.3;
}
.top .header_title a > span {
  font-size: 15px;
  color: inherit;
}
.beauty .header_title a > span {
    font-size: 15px;
    color: inherit;
}
.header_txt {
  color: #333333;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  height: auto;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
  text-align: left;
  transition: ease .6s;
  opacity: 1;
  padding-left: 4px;
}
.shadow .header_content .header_txt {
  opacity: 0;
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  transition: ease .6s;
}
.spacer {
  padding: 0 0.1rem;
}
.btn_box {
  display: flex;
  align-items: center;
  height: 100%;
  width: auto;
}
a.request {
  display: block;
  position: relative;
  background: #fff;
  color: #28b183;
  border-radius: 100vh;
  padding: 5px 0 0 22px;
  margin-right: 9px;
  font-weight: 700;
  font-size: 14px;
  text-align: left;
  line-height: 2.0;
  width: 144px;
  height: 42px;
  border: 2px solid #28b183;
}
a.request::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #28b183;
  border-right: 2px solid #28b183;
  position: absolute;
  top: 50%;
  right: 1.3vw;
  transform: translateY(-50%) rotate(45deg);
}
a.trial {
  display: block;
  position: relative;
  background: -moz-linear-gradient(left, #00A871, #00C483);
  background: -webkit-linear-gradient(left, #00A871, #00C483);
  background: linear-gradient(to right, #00A871, #00C483);
  padding: 7px 0 0 25px;
  border-radius: 100vh;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  text-align: left;
  line-height: 2.0;
  width: 175px;
  height: 42px;
}
a.trial::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: 1.3vw;
  transform: translateY(-50%) rotate(45deg);
}
.onlySp {
  display: none;
}
@media screen and (max-width: 768px) {
  header {
    padding: 0;
  }
  .trainer header, .guide header {
    padding: 0;
  }
  .shadow {
    padding-bottom: 0;
  }
  .header_content {
    width: 100%;
    min-width: unset;
    max-width: unset;
  }
  .header_img {
    height: 30px;
    width: 30px;
  }
  .logo_box {
    margin-right: 0;
  }
  .header_title a {
    font-size: 16px;
    line-height: 1.43;
    letter-spacing: -0.05em;
    font-weight: 700;
  }
  .beauty .header_title a,
  .top .header_title a {
    font-size: clamp(14px, 3.76vw, 16px);
    line-height: 1.0;
  }
  .beauty .header_title a > span,
  .top .header_title a > span {
    font-size: clamp(8px, 2.67vw, 11px);
    color: inherit;
}
  .header_txt {
    font-size: 1.7vw;
    font-style: normal;
    background: #F5F5F5;
    padding: 8px;
    margin-bottom: 0;
    z-index: 90;
    position: relative;
  }
  .header_items {
    position: relative;
    z-index: 100;
    background: #fff;
  }
  .header_items, .menu-content_header_items {
    padding: 8px 1vw 6px;
  }
  .header_mainInfo {
    flex-grow: 1;
    width: auto;
  }
  .nav_box.pc-visible {
    display: none;
  }
  .nav_box.sp-visible {
    display: block;
  }
  .nav_box span {
    display: inline-block;
    width: 23%;
    max-width: 23%;
    vertical-align: top;
  }
  a.trial {
    font-size: 11px;
    min-width: unset;
    width: 120px;
    height: 32px;
    padding: 4px 0 0 17px;
    opacity: 1;
    pointer-events: auto;
    transition: all 0.5s;
  }
  .active a.trial {
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s;
  }
  a.trial:after {
    display: none;
  }
  a.request.sp_fix {
    position: fixed;
    top: 38%;
    right: 0;
    margin-right: 0;
    border-radius: 10px 0 0 10px;
    border-right: none;
    width: 32px;
    height: auto;
    padding: 1rem 9px;
    line-height: 1.09;
    font-size: 0.875rem;
    min-width: unset;
    transition: all 0.5s;
    transition: all 1s;
    opacity: 0;
    transform: translateX(40px);
  }
  a.request.sp_fix:after {
    display: none;
  }
  a.request.sp_fix.emerge {
    opacity: 1;
    transform: translateX(0);
    transition: all 0.5s;
  }
  .active a.request.sp_fix.emerge {
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s;
  }
  .onlySp {
    display: inline;
    color: inherit;
    line-height: 1.06;
  }
  .overlay.on {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 79;
    background: #fff;
  }
  .menu_btn_box {
    display: block;
    margin: 0 0 0 3.47vw;
    height: 19.12px;
    width: 24px;
    background: url(img/sp_menu.svg) no-repeat center;
    background-size: 100% auto;
  }
  .active .menu_btn_box {
    height: 19.12px;
    width: 24px;
    display: block;
    background: url(img/sp_menu_close.svg) no-repeat center;
    background-size: 84% auto;
  }
  .menu-content {
    background: #fff;
    margin: 0px;
    opacity: 0;
    pointer-events: none;
    padding: 0px 0px 60px 0px;
    transform: translate(0px, -1px);
    width: 100%;
    height: auto;
    position: fixed;
    left: 0;
    top: -130%;
    bottom: -1px;
    /*leftの値を変更してメニューを画面外へ*/
    z-index: 80;
    transition: all 0.5s;
    -webkit-transition: -webkit-transform all 0.5s;
    /*アニメーション設定*/
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .menu-content::-webkit-scrollbar {
    display: none;
  }
  .shadow .menu-content.active {
    top: 47px;
    opacity: 1;
    pointer-events: auto;
    transition: all 0.5s;
  }
  .menu-content.active {
    top: 86.43px;
    opacity: 1;
    pointer-events: auto;
    transition: all 0.5s;
  }
  .menu-content_header_items {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 26px;
  }
  .menu-content .menu-list {
    width: 81%;
    margin: auto;
    max-width: 425px;
  }
  .menu-content .menu-list .menu-list_item > a, .menu-list_item .no-link {
    display: inline-block;
    font-weight: 500;
    font-size: 16px;
    line-height: 3.1;
    text-align: left;
    color: #3A3A3C;
    letter-spacing: normal;
    border-top: 1px solid #ddd;
    padding: 0 0 0 6px;
    width: 100%;
  }
  .menu-list_bnrSection {
    margin-bottom: 24px;
  }
  .menu-list_bnrSection_item {
    margin-bottom: 5px;
  }
  .menu-list_bnrSection_item a > img {
    display: inline-block;
    width: 100%;
    border-radius: 6px;
  }
  .menu-list_btnSection {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
  }
  .menu-list_btnSection li {
    width: calc(50% - 6px);
    height: 68px;
  }
  .menu-list_btnSection_item a {
    display: block;
    border: 1.5px solid #29B183;
    border-radius: 5px;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.48;
    letter-spacing: 0.05em;
    color: #29B183;
    width: 100%;
    height: 100%;
    padding: 9.5px 0 0 13.5px;
    text-align: left;
    position: relative;
  }
  .menu-list_btnSection_item a::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 8px;
    height: 14px;
    background: url("img/btn_arrow_right_bold.svg") no-repeat;
    background-size: 100% auto;
    top: 37px;
    right: 14px;
  }
  li.menu-list_btnSection_item:nth-child(2) a {
    padding-top: 21px;
  }
  .btn_box .emerge {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .header_items {
    padding: 10px 3.47vw;
  }
  .shadow .menu-content.active {
    top: 53px;
  }
  .header_txt {
    font-size: 2.93vw;
    padding: 8px 5px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 320px) {
  .header_title a {
    font-size: 12px;
    padding: 1px;
  }
  .header_items {
    padding: 10px 1.47vw;
  }
  .header_img {
    height: 30px;
    width: 30px;
  }
}
.menu-content span {
  display: inline-block;
  vertical-align: middle;
}
.menu-content .icon_advice, .menu-content .icon_trainer, .menu-content .icon_beauty {
  height: 45px;
  width: 45px;
  display: inline-block;
  background-size: contain;
  margin: 0px -2px -18px 0px;
}
.menu-content .icon_trainer {
  margin-left: -16px;
}
.menu-content .div_sns {
  font-size: 20px;
  margin: 0 10px;
}
.menu-content .div_sns a {
  margin: 0 7px;
}
.menu-content img {
  width: 30px;
  margin: 0px 5px 0px 5px;
  vertical-align: middle;
}
.menu-content .btn_close {
  width: 23px;
}
section {
  display: block;
  margin: 0 auto;
  z-index: 0;
}
/*@keyframes fadein_contact {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}*/
/*.sec_box {
  margin: 20px 0;
  background-color: #fff;
  text-align: left;
  color: #33333;
  font-size: 15px;
  font-style: normal;
  font-weight: 800;
}*/
.sec_detail_wrap {
  text-align: center;
}
.main_sec {
  padding-top: 135px;
  background: #fff;
  min-width: 1200px;
}
.top .main_sec {
  padding-top: 122px;
  background: url("./img/top_bg.svg") no-repeat top right #fff;
  background-size: 65% auto;
}
.main_sec_inner {
  height: 850px;
  position: relative;
  z-index: 1;
  max-width: 1500px;
  margin: 0 auto;
}
.main_sec_inner::after {
  content: "";
  background: url("./img/main_top_kv.png") no-repeat left center;
  background-size: 100% auto;
  width: 55%;
    height: auto;
    aspect-ratio: 17 / 15;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  z-index: 0;
}
.main_sec_content {
  display: flex;
  flex-wrap: wrap;
  width: 1180px;
  margin: 0 auto;
  /*padding: 3rem 0 5.8125rem;*/
  z-index: 1;
  position: relative;
  height: 100%;
  max-width: 1200px;
}
.top .main_sec_content {
  display: flex;
  height: 100%;
  width: 100%;
  max-width: unset;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
/*.top .main_sec_content {
  padding: 0;
  width: 100%;
}*/
.trainer .main_sec_content {
  background: #fafafa;
  padding-bottom: 0;
  height: 590px;
  padding: 0;
  margin: 4vw auto 0;
}
.beauty .main_sec_content .img_box, .trainer .main_sec_content .img_box {
  display: flex;
  align-items: end;
  width: 55%;
}
.txt_box {
  width: 40%;
  box-sizing: border-box;
  padding: 2.375rem 2rem 2rem;
}
.top .txt_box {
  width: 590px;
  text-align: left;
  margin-left: 0px;
  padding: 75px 0 0 50px;
}
.img_box {
  width: 48%;
}
.img_box img {
  display: inline-block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.guide .main_header {
  font-weight: 700;
  font-size: 2.1875rem;
  text-align: left;
  line-height: 1.4;
  font-family: 'Noto Sans JP', sans-serif;
}
.guide .main_header .tracking {
  letter-spacing: -0.05em;
}
.top .sub_header {
  font-weight: 700;
  font-size: 16px;
  line-height: 34px;
  color: #00A871;
  margin: 0 0 40px 0;
  letter-spacing: normal;
  width: 450px;
  height: 34px;
  left: 100px;
  top: 142px;
  text-align: center;
  background: rgba(0, 168, 113, 0.1);
  border-radius: 60px;
}
.top .main_header {
  text-align: left;
    font-size: 63px;
    margin-bottom: 15px;
    line-height: 1.3;
}
.top .main_header .upper,
.top .main_header .lower {
  position: relative;
  font-weight: 700;
}
.top .main_header .lower {
  font-weight: 900;
  /*background: linear-gradient(0deg, #f1a369 0% 30%, transparent 30%);*/
  color: #29b183;
  font-feature-settings: "palt";
}
.top_exTxt {
  font-weight: 700;
  font-size: 21px;
  line-height: 1.6;
  margin-bottom: 19px;
  position: relative;
}
.top_exTxt.second {
  margin-bottom: 40px;
}
.top_exTxt.second::after {
  content: "";
  width: 200px;
  height: 38px;
  background: #E9E9E9;
  position: absolute;
  transform: skewX(344deg);
  z-index: -1;
  top: -1px;
  right: 111px;
}
.top_exTxt2 {
  width: 580px;
  box-sizing: border-box;
  background: #F5F5F5;
  border-radius: 20px;
  position: relative;
  padding: 10px 20px;
  margin: 0 0 20px -10px;
}
.top_exTxt2 p {
  font-weight: 700;
  font-size: 15px;
  line-height: 180%;
  letter-spacing: 0.03em;
  text-align: left;
}

.top_exTxt2 img {
  width: 128px;
  height: auto;
  position: absolute;
  top: 15px;
  right: 20px;
}
.exList_leadTxt {
  text-align: left;
  font-weight: 600;
  font-size: 14px;
    margin-bottom: 23px;
  position: relative;
  padding-block: 5px 9px;
    border-bottom: 1px solid #333;
    padding-inline: 50px 0px;
}
p.exList_leadTxt::before {
  content: "";
  display: block;
  position: absolute;
  width: 26px;
  height: auto;
  aspect-ratio: 1 / 1.8;
  background: url("./img/top_icon_mob.png") no-repeat;
  background-size: 100% auto;
  top: 0;
  left: 7px;
}
p.exList_leadTxt::after {
  content: "";
  display: block;
  position: absolute;
  width: 48px;
  height: auto;
  aspect-ratio: 3 / 2;
  background: url("./img/top_icon_pc.png") no-repeat;
  background-size: 100% auto;
  top: 9px;
  right: 1px;
}
.annotation {
    font-size: 0.7em;
    vertical-align: super;
  text-align: left;
}
.top_exList {
  margin-bottom: 20px;
    background: rgb(244 244 244 / 58%);
    padding: 12px 25px 7px;
}
.top_exList li {
  font-size: 17px;
    margin-bottom: 25px;
    color: #333;
    font-weight: 700;
    padding-left: 21px;
    position: relative;
}
.top_exList li::after {
  content: "";
  position: absolute;
  width: 17px;
  height: 15px;
  background: url("img/ic_check.svg") no-repeat;
  background-size: 100% auto;
  left: 0;
  top: 4px;
  display: inline-block;
}
.trainer .main_header {
  font-size: 1.7rem;
}
.sub_header {
  font-weight: 700;
  font-size: 1.0625rem;
  margin-bottom: 48px;
  margin-top: 28px;
  text-align: left;
  letter-spacing: 0.05em;
  line-height: 1.154;
}
.sub_header > span {
  font-size: 1.625rem;
  letter-spacing: 0.03em;
  padding-left: 0.2em;
  position: relative;
  z-index: 1;
}
.sub_header > span::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 9px;
  background: -moz-linear-gradient(0.31deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  background: -webkit-linear-gradient(0.31deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  background: linear-gradient(89.69deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  bottom: -3px;
  right: 0;
  z-index: 0;
}
.sub_txt {
  font-weight: 600;
  font-size: 0.875rem;
  text-align: left;
  line-height: 2;
  margin-bottom: 2.5rem;
}
.main_sec_btn_box {
  text-align: left;
  margin-bottom: 35px;
}
.main_sec_btn_box p {
  width: 250px;
  position: relative;
  padding: 15px 0 15px 0;
  font-weight: 700;
  font-size: 13px;
  text-align: center;
  color: #25A878;
  display: block;
  margin-left: 10px;
}
.main_sec_btn_box p::before, .main_sec_btn_box p::after {
  position: absolute;
  top: 15px;
  height: 25px;
  content: '';
}
.main_sec_btn_box p::before {
  border-left: solid 2px;
  left: 0;
  transform: rotate(-30deg);
}
.main_sec_btn_box p::after {
  border-right: solid 2px;
  right: 0;
  transform: rotate(30deg);
}
.main_sec_btn_box a.trial {
  background: -moz-linear-gradient(left, #00A670, #00C85C);
  background: -webkit-linear-gradient(left, #00A670, #00C85C);
  background: linear-gradient(to right, #00A670, #00C85C);
  margin-bottom: 1.25rem;
  padding: 11px 0 0 36px;
  font-weight: 700;
  font-size: 16px;
  line-height: 2.0;
  width: 260px;
  height: 56px;
}
.main_sec_btn_box a {
  display: inline-block;
}
.main_sec_btn_box a.trial span {
  font-weight: 700;
  font-size: 16px;
  line-height: 2.0;
  color: #fff;
}
.main_sec_btn_box a.trial::after {
  right: 29px;
}
.main_sec_btn_box a.request {
  margin-right: 0;
  padding: 8px 0 0 70px;
  font-weight: 700;
  font-size: 16px;
  line-height: 2.0;
  width: 260px;
  height: 52px;
  margin-left: 15px;
}
.main_sec_btn_box a.request::after {
  right: 68px;
  top: 25px;
}
.main_doctor_box {
  position: relative;
  margin-bottom: 20px;
}
.main_doctor_box a {
  background: #FFFFFF;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
  line-height: 44px;
  height: 44px;
  width: 537px;
  box-sizing: border-box;
  display: block;
  text-align: right;
  font-weight: 700;
  font-size: 14px;
  padding-right: 83px;
  position: relative;
}
.main_doctor_box a::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  position: absolute;
  top: 50%;
  right: 1.3vw;
  transform: translateY(-50%) rotate(135deg);
}
.main_doctor_box img {
  position: absolute;
  left: 36px;
  bottom: 0;
  width: 80px;
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
p.sliderHeader {
    font-weight: 600;
    font-size: 18px;
    display: block;
    background: #d4efe6;
    padding: 10px;
}
.slide-img__wrap {
  display: flex;
  overflow: hidden;
}
.slide-img__list {
  display: flex;
  list-style: none;
}
.slide-img__list--left {
  animation: infinity-scroll-left 60s infinite linear 0.2s both;
}
.slide-img__item {
  width: calc(100vw / 5);
}
.slide-img__item > img {
  width: 100%;
}
/* -------------
top bnrSection
--------------- */
.top_bnrSec {
  padding: 26px 0 0;
  background: #fff;
}
.top_bnrSec img {
  display: inline-block;
  width: 800px;
  margin: 0 auto;
}
.top_bnrSec a img {
  opacity: 1;
  transition: ease .6s;
}
.top_bnrSec a:hover img {
  opacity: 0.8;
}
/* -------------
user_section
--------------- */
.user_sec {
  /*padding-bottom: 19px;*/
  background: #fff;
  padding: 48px 0 30px;
}
.user_num {
  text-align: center;
  width: 100%;
  font-style: normal;
  font-weight: 700;
  font-size: 13px;
  line-height: 0.9;
}
.user_num_upper {
  margin-bottom: 9px;
  display: inline-block;
}
.user_num_lower .num {
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 40px;
  line-height: 0.9;
  color: #29b183;
  vertical-align: sub;
}
.user_num_lower .num > span {
  letter-spacing: -0.05em;
  font-family: 'Roboto', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 40px;
  line-height: 0.9;
  color: #29b183;
}
.user_num_lower .txt {
  font-weight: 700;
  font-size: 25px;
  line-height: 0.9;
  color: #29b183;
  display: inline-block;
  margin-left: 5px;
  letter-spacing: -0.01em;
  font-feature-settings: "palt";
}
.user_num_lower::before, .user_num_lower::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 22px;
  height: 38px;
  background: url(img/line-left-bold.svg) no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
  margin-right: 1px;
  bottom: 9px;
}
.user_num_lower::after {
  background: url(img/line-right-bold.svg) no-repeat;
  background-size: 100% auto;
  margin-left: 3px;
  margin-right: 0;
}
.user_sec_header {
  font-weight: 700;
  font-size: 21px;
  line-height: 1.8;
  text-align: center;
  color: #3A3A3C;
}
.user_sec_header > span {
  display: inline-block;
}
.company_list {
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
.company_list_item {
  height: 96px;
  width: auto;
  margin-right: 25px;
}
.company_list_item:last-child {
  margin-right: 0;
}
.company_list_item img {
  display: inline-block;
  height: 100%;
  width: auto;
}
/* -------------
beauty_page
--------------- */
.beauty {
  background: #fff1f0 !important;
}
.beauty .main_sec {
  padding-top: 104px;
  background: #fff;
}
.beauty_main_sec_inner {
  background: url("./img/beauty_top_main.jpg") no-repeat center top #fff;
  background-size: cover;
  height: 630px;
}
.beauty_main_sec_content {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  height: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.beauty_txt_box {
  width: 733px;
}
.beauty_txt_box img {
  display: inline-block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.beauty_sub_header {
  width: 488px;
  background: rgba(227, 118, 130, 0.85);
  border-radius: 2px;
  padding: 11px 0 9px;
  font-family: 'Noto Serif JP', serif;
  font-weight: 600;
  font-size: 21px;
  line-height: 30px;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
  margin: 0 auto 13px;
}
.beauty_main_header {
  margin: 0 auto 13px;
}
.beauty_main_header span {
  display: inline-block;
  text-align: left;
  font-family: 'Noto Serif JP', serif;
  font-style: normal;
  font-weight: 600;
  font-size: 44px;
  line-height: 1.32;
  letter-spacing: 0.05em;
  color: #E37682;
  text-shadow: 0px 0px 15px #ffffff, 0px 0px 15px #ffffff, 0px 0px 15px #ffffff, 0px 0px 15px #ffffff, 0px 0px 15px #ffffff, 0px 0px 10px #ffffff, 0px 0px 10px #ffffff;
}
.beauty_main_sec_btn_box {
  padding: 31px 0 34px;
  background: linear-gradient(90deg, #E37691 0%, #DF7373 100%);
}
.beauty_main_sec_btn_box_header {
  font-weight: 700;
  font-size: 21px;
  line-height: 1.62;
  text-align: center;
  color: #FFFFFF;
  margin-bottom: 29px;
}
.beauty_main_sec_btn_box_inner {
  display: flex;
  justify-content: center;
}
.beauty_main_sec_btn_box_inner > span {
  display: block;
  border: 2px solid #fff;
  width: 300px;
  height: 58px;
  border-radius: 100vh;
}
.beauty_main_sec_btn_box_inner > span:nth-child(1) {
  margin-right: 34px;
}
.beauty_main_sec_btn_box_inner a.trial, .beauty_main_sec_btn_box_inner a.request {
  width: 100%;
  height: 100%;
  padding: 0;
}
.beauty_main_sec_btn_box_inner a.trial > span, .beauty_main_sec_btn_box_inner a.request > span {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.44;
}
.beauty_main_sec_btn_box_inner a.trial > span {
  color: #fff;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  text-align: center;
}
.beauty_main_sec_btn_box_inner a.request > span {
  color: #24A878;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  text-align: center;
}
.beauty_main_sec_btn_box_inner a.trial::after, .beauty_main_sec_btn_box_inner a.request::after {
  display: none;
}
.beauty_main_sec_btn_box_inner a.trial > span::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: relative;
  top: 2px;
  left: 11px;
  transform: translateY(-50%) rotate(45deg);
}
.beauty_main_sec_btn_box_inner a.request > span::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #24A878;
  border-right: 2px solid #24A878;
  position: relative;
  top: 2px;
  left: 11px;
  transform: translateY(-50%) rotate(45deg);
}
span.sp-unvb {
  color: inherit;
}
.user_img_box {
  margin-bottom: 33px;
}
.user_img_list {
  width: 100%;
}
.user_img_list_item.slick-slide {
  width: 240px;
  height: auto;
  transition: none;
}
.user_img_list_item {
  width: 240px;
  height: auto;
  display: inline-block;
}
.slick-slider div {
  transition: none;
}
.user_img_list_item img {
  display: inline-block;
  width: 100%;
  vertical-align: bottom;
}
.beauty_user_sec_header {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.8;
  text-align: center;
  color: #3A3A3C;
  margin: 7px auto 38px;
}
.case_window {
  background: #FFFFFF;
  border: 1px solid #EEEEEE;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  margin: 0 auto;
  width: 640px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 19px 16px 18px;
}
.case_window_logoBox {
  width: 103px;
  margin-right: 19px;
}
.case_window_logoBox img {
  display: inline-block;
  width: 100%;
  height: auto;
}
.case_window_txtBox {
  width: 445px;
  position: relative;
}
.case_window_txtBox::after {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 14px;
  background: url("./img/btn_arrow_right_bold.svg") no-repeat center;
  background-size: 100% auto;
  top: 50%;
  right: -37px;
  transform: translateY(-50%);
}
.case_window_txtBox p {
  font-weight: 400;
  font-size: 15px;
  line-height: 1.87;
  text-align: left;
  color: #333333;
  font-feature-settings: "palt";
}
.beauty .user_sec {
  padding: 0 0 50px;
}
/* -------------
trainer_page
--------------- */
.trainer .main_sec {
  padding-top: 104px;
  background: #fff;
}
.trainer_main_sec_inner {
  height: 630px;
  position: relative;
  z-index: 1;
}
.trainer_main_sec_inner::after {
  content: "";
  background: url("./img/trainer_top_main.jpg") no-repeat left top #fff;
  background-size: cover;
  width: 50%;
  height: 623px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}
.trainer_main_sec_content {
  display: flex;
  height: 100%;
  max-width: 1200px;
  margin: 0 auto;
  z-index: 1;
  position: relative;
}
.trainer_main_sec_content:after {
  content: "";
  background: url("./img/trainer_top_img.png") no-repeat bottom center;
  background-size: 100% auto;
  width: 61.25%;
  max-width: 735px;
  height: 314px;
  position: absolute;
  display: block;
  bottom: 6px;
  right: 58px;
}
.trainer_txt_box {
  width: 510px;
  padding-top: 62px;
  text-align: left;
  margin-left: 15px
}
.trainer_sub_header {
  background: rgba(0, 168, 113, 0.1);
  border-radius: 60px;
  font-weight: 700;
  font-size: 16px;
  line-height: 2.0;
  color: #00A871;
  margin-bottom: 35px;
  display: inline-block;
  padding: 0 18px;
}
.trainer_main_header {
  text-align: left;
  margin-bottom: 28px;
}
.trainer_main_header .upper {
  font-weight: 700;
  font-size: 24px;
  line-height: 1.6;
  color: #333;
}
.trainer_main_header .lower {
  font-weight: 700;
  font-size: 36px;
  line-height: 1.6;
  color: #333;
  text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff;
}
.trainer_txt {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.89;
  color: #25A878;
  text-align: left;
  margin-bottom: 40px;
}
.trainer_txt_box a.request {
  margin-left: 0;
  padding: 8px 0 0 58px;
}
.trainer_txt_box a.request::after {
  right: 49px;
  top: 25px;
}
.trainer .user_img_box {
  margin-bottom: 61px;
}
.trainer .user_sec {
  padding: 0 0 47px;
}
.sp-visible {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .main_sec, .top .main_sec, .beauty .main_sec, .trainer .main_sec {
    padding: 81px 0 0;
    min-width: unset;
    background: url(./img/top_bg.svg) no-repeat top 60px right #fff;
    background-size: 80% auto;
  }
  .trainer .main_header, .guide .main_header {
    margin-bottom: 0;
  }
  .main_sec_inner { /*only top*/
    height: auto;
    position: relative;
    z-index: 1;
  }
  .main_sec_inner::after {
    display: none;
  }
  .main_sec_content {
    max-width: unset;
    min-width: unset;
    width: 100%;
    padding: 36px 0 60px;
  }
  .top .main_sec_content {
    height: auto;
    padding: 0;
  }
  .trainer .main_sec_content {
    height: auto;
  }
  .top .main_header .upper::after, .top .main_header .lower::after {
    display: none;
  }
  .main_header {
    font-weight: 700;
    font-size: 26px;
    margin-bottom: 315px;
    text-align: center;
    line-height: 1.3;
  }
  .top_exTxt2 {
    width: auto;
    background: none;
    position: relative;
    padding: 0;
    margin: 0 20px 20px 20px;
  }
  .top_exTxt2 p {
    font-weight: 700;
    font-size: 12px;
    line-height: 180%;
    letter-spacing: 0.03em;
    text-align: left;
  }
  .top_exTxt2 img {
    width: 97px;
    height: auto;
    position: absolute;
    top: 9px;
    right: 10px;
  }
  .top_exList {
    /*background: #FFFFFF;*/
    border-radius: 20px;
    position: relative;
    margin: 20px 10px 20px 10px;
    padding: 7px 2vw 8px 2vw;
    box-shadow: 0px 1px 10px -2px rgb(0 0 0 / 20%);
  }
  p.annotation {
    font-size: clamp(9.6px, 2.3vw, 11px);
    padding: 0 2vw;
    text-align: justify;
    margin-block-end: 22px;
}
  .exList_leadTxt {
    font-size: clamp(9.8px, 2.1vw, 15px);
    padding-inline: 9vw 11vw;
  }
  p.exList_leadTxt::before {
    width: 5vw;
    top: 50%;
    transform: translateY(-50%);
  }
  p.exList_leadTxt::after {
    width: 11vw;
    top: 50%;
    transform: translateY(-50%);
  }
  .top_exList li {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 11px;
    color: #25A878;
    font-weight: 700;
    padding-left: 24px;
    position: relative;
  }
  .top_exList li::after {
    content: "";
    position: absolute;
    width: 12px;
    height: 11px;
    background: url(img/ic_check.svg) no-repeat;
    background-size: 100% auto;
    left: 3px;
    top: 4px;
    display: inline-block;
  }
  .sub_header {
    text-align: center;
    margin-bottom: 1rem;
    line-height: 2.0;
  }
  .top .main_header {
    padding-left: 15px;
    font-size: clamp(30px, 8vw, 58px);
    margin-bottom: 13px;
    line-height: 1.3;
  }
  .top .sub_header {
    text-align: left;
    font-size: clamp(12px, 4vw, 17px);
    margin: 0 0 20px 12px;
    letter-spacing: normal;
    width: auto;
    height: auto;
    padding: 0 2vw;
    display: inline-block;
  }
  .top .main_sec_content:after {
    display: none;
  }
  .sub_txt {
    font-size: 1.15rem;
    line-height: 1.8;
    width: 430px;
    margin: 1rem auto 2.5rem;
  }
  .txt_box, .img_box {
    width: 100%;
    padding: 0 1rem;
    margin-left: 0;
  }
  .top .top_spImg {
    width: 100%;
    margin-bottom: 7px;
    overflow: hidden;
    text-align: center;
  }
  .top .top_spImg img {
    display: inline-block;
    width: 100%;
  }
  .top .main_sec_content:after {
    display: none;
  }
  .top_exTxt.second::after {
    display: none;
  }
  .top_exTxt {
    text-align: left;
    font-size: 18px;
    line-height: 1.39;
    padding: 0 16px;
    position: relative;
    max-width: 400px;
    margin: 0 auto 8px;
  }
  .top_exTxt.second {
    margin-bottom: 32px;
  }
  .top_exTxt.second::before {
    content: "";
    display: block;
    position: relative;
    width: 40px;
    height: 19px;
    background: url("./img/trainer_top_main_icon.png") no-repeat;
    background-size: 100% auto;
    max-width: 400px;
    margin: 0 auto 8px;
  }
  .top .txt_box {
    text-align: left;
    padding: 22px 0 0 0;
    width: 100%;
    margin-left: 0;
  }
  .main_sec_btn_box {
    margin: 0 auto 40px auto;
    text-align: center;
  }
  .main_sec_btn_box p {
    width: 250px;
    position: relative;
    padding: 15px 0 15px 0;
    font-weight: 700;
    font-size: 13px;
    text-align: center;
    color: #25A878;
    display: block;
    margin: 0 auto;
  }
  .main_sec_btn_box p::before, .main_sec_btn_box p::after {
    position: absolute;
    top: 15px;
    height: 25px;
    content: '';
  }
  .main_sec_btn_box p::before {
    border-left: solid 2px;
    left: 0;
    transform: rotate(-30deg);
  }
  .main_sec_btn_box p::after {
    border-right: solid 2px;
    right: 0;
    transform: rotate(30deg);
  }
  .main_sec_btn_box a.request {
    font-size: 16px;
    margin: 0 auto;
    padding: 0 4vw 0 0px;
    width: 280px;
    height: 60px;
    font-weight: 700;
    line-height: 2.0;
    letter-spacing: 0.05em;
    border: 2px solid #28b183;
    color: #00A871;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .main_sec_btn_box a.request::after {
    right: 74px;
    top: 29px;
  }
  .main_sec_btn_box a.trial {
    font-size: 4.27vw;
    margin: 0 auto 1.25rem;
    padding: 0 4vw 0 0px;
    width: 280px;
    height: 60px;
    font-weight: 700;
    line-height: 2.0;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .main_sec_btn_box a.trial .filter-shadow {
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.25));
    color: inherit;
    font-size: 14px;
  }
  .main_sec_btn_box a.trial:after {
    display: block;
    right: 45px;
    top: 31px;
  }
  .main_doctor_box {
    position: relative;
  }
  .main_doctor_box a {
    background: #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 8px;
    line-height: 1.5;
    padding: 7px 0 0 30vw;
    height: 54px;
    width: auto;
    box-sizing: border-box;
    display: block;
    text-align: left;
    font-weight: 700;
    font-size: 12px;
    position: relative;
    margin: 0 20px;
  }
  .main_doctor_box a::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: translateY(-50%) rotate(135deg);
  }
  .main_doctor_box img {
    position: absolute;
    left: 10vw;
    bottom: 0;
    width: 70px;
  }
  .slide-img__wrap {
    display: flex;
    overflow: hidden;
  }
  .slide-img__list {
    display: flex;
    list-style: none;
  }
  .slide-img__list--left {
    animation: infinity-scroll-left 60s infinite linear 0.2s both;
  }
  .slide-img__item {
    width: calc(100vw / 3);
  }
  .slide-img__item > img {
    width: 100%;
  }
  .user_sec_header {
    font-weight: 700;
    font-size: 17px;
    line-height: 1.6;
  }
  .user_sec_header > span {
    display: none;
  }
  .user_sec {
    padding: 30px 0 30px;
  }
  .user_num {
    text-align: center;
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 13px;
    line-height: 0.9;
  }
  .user_num_upper {
    margin-bottom: 9px;
    display: inline-block;
  }
  .user_num_lower .num {
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 0.9;
    color: #29b183;
    vertical-align: sub;
  }
  .user_num_lower .num > span {
    letter-spacing: -0.05em;
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 0.9;
    color: #29b183;
  }
  .user_num_lower .txt {
    font-weight: 700;
    font-size: 25px;
    line-height: 0.9;
    color: #29b183;
    display: inline-block;
    margin-left: 5px;
    letter-spacing: -0.01em;
    font-feature-settings: "palt";
  }
  .user_num_lower::before, .user_num_lower::after {
    content: "";
    display: inline-block;
    position: relative;
    width: 22px;
    height: 38px;
    background: url(img/line-left-bold.svg) no-repeat;
    background-size: 86% auto;
    vertical-align: middle;
    margin-right: 1px;
    bottom: 3px;
  }
  .user_num_lower::after {
    background: url(img/line-right-bold.svg) no-repeat;
    background-size: 86% auto;
    margin-left: 3px;
    margin-right: 0;
  }
  .company_list {
    display: block;
    margin: 0 auto;
    width: 100%;
  }
  .company_list_item.slick-slide {
    height: 100px;
    width: auto;
    display: inline-block;
    margin-right: 22px;
    transition: none;
  }
  p.sliderHeader {
    font-size: clamp(12px, 3vw, 15px);
  }
  
  .slick-slider div {
    transition: none;
  }
  .company_list_item:last-child {
    margin-right: 0;
  }
  .nav_box {
    max-width: unset;
    margin-right: 0;
    width: auto;
  }
  .global_nav {
    /*sp時mainsection内*/
    width: 190px;
    margin: 2rem auto;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .global_nav_item {
    margin: 0;
  }
  .global_nav_item a {
    width: 100%;
    font-size: 1.0rem;
    color: #28b183;
    line-height: 2.3;
    padding-left: 1.3rem;
    position: relative;
    margin-right: 0;
  }
  .global_nav_item a:before {
    content: "";
    display: block;
    position: absolute;
    width: 6px;
    height: 6px;
    border-top: 2px solid #28b183;
    border-right: 2px solid #28b183;
    transform: rotate(45deg);
    top: 4px;
    left: 0;
  }
  .trainer .global_nav_item a {
    border-bottom: 2px solid #fafafa;
  }
  .global_nav_item a.current-page {
    border-bottom: 1px solid #28b183;
  }
  /* -------------
beauty_page
--------------- */
  .beauty_main_sec_inner {
    background: url("./img/beauty_top_main_sp.jpg") no-repeat right top;
    background-size: cover;
    height: auto;
  }
  .beauty_txt_box {
    width: 67.5%;
    padding-top: 42px;
  }
  .beauty_sub_header {
    width: 100%;
    font-size: 13px;
    line-height: 0.68;
    margin: 0 auto 14px;
  }
  .beauty_main_header {
    display: flex;
    justify-content: center;
    margin: 0 auto 25px;
  }
  .beauty_main_header span {
    display: block;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: -0.04em;
    text-align: left;
  }
  .beauty_main_sec_btn_box {
    padding: 20px 0 23px;
  }
  .beauty_main_sec_btn_box_header {
    font-size: 13px;
    line-height: 1.85;
    margin-bottom: 15px;
  }
  .beauty_main_sec_btn_box_inner > span:nth-child(1) {
    margin-right: 3.47vw;
  }
  .beauty_main_sec_btn_box_inner > span {
    width: 164px;
    height: 44px;
  }
  .beauty_main_sec_btn_box_inner a.trial > span {
    font-size: 13px;
  }
  .beauty_main_sec_btn_box_inner a.request > span {
    font-size: 13px;
  }
  .beauty_main_sec_btn_box_inner a.trial > span::after {
    display: none;
  }
  .beauty_main_sec_btn_box_inner a.request > span::after {
    display: none;
  }
  .beauty_user_sec_header {
    font-weight: 400;
    font-size: 12px;
    line-height: 1.67;
    margin: 3px 0 15px;
  }
  .case_window {
    width: 90%;
    padding: 15px 4vw;
  }
  .case_window_logoBox {
    width: 42vw;
    margin-right: 12px;
  }
  .case_window_txtBox p {
    font-size: 13px;
    line-height: 1.54;
    width: 55.4vw;
  }
  .case_window_txtBox::after {
    display: none;
  }
  .beauty .user_sec {
    padding: 0 0 42px;
  }
  .user_img_list_item.slick-slide {
    width: 176px;
    height: auto;
    transition: none;
  }
  .user_img_list_item {
    width: 240px;
    height: auto;
    display: inline-block;
  }
  span.sp-unvb {
    display: none;
  }
  /* -------------
trainer_page
--------------- */
  .trainer_main_sec_inner {
    height: auto;
    position: relative;
    z-index: 1;
  }
  .trainer_main_sec_inner::after {
    display: none;
    /*background: url(./img/trainer_top_main_sp.jpg) no-repeat left center #fff;
    background-size: cover;
    width: 100%;
    height: 280px;
    top: unset;
    right: unset;
    bottom: 0;
    left: 0;
    z-index: 0;*/
  }
  .trainer_txt_box {
    text-align: left;
    padding-top: 22px;
    width: 100%;
    margin-left: 0;
  }
  .trainer_sub_header {
    font-size: 11px;
    line-height: 2.18;
    margin-bottom: 14px;
    display: inline-block;
    padding: 0 18px;
    margin-left: 3.2vw;
  }
  .trainer_main_header {
    margin-bottom: 20px;
    padding-left: 3.7vw;
  }
  .trainer_main_header .upper {
    font-size: 16px;
  }
  .trainer_main_header .lower {
    font-size: 24px;
  }
  .trainer_top_spImg {
    width: 100%;
    margin-bottom: 14px;
  }
  .trainer_top_spImg img {
    display: inline-block;
    width: 100%;
  }
  .trainer_main_sec_content:after {
    display: none;
  }
  .trainer_txt {
    text-align: center;
    font-size: 13px;
    line-height: 1.84;
    margin-bottom: 16px;
  }
  .trainer_main_sec_btn_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 30px;
  }
  .trainer_main_sec_btn_box a.request {
    font-size: 13px;
    width: 160px;
    height: 40px;
    padding: 0;
    line-height: 36px;
    text-align: center;
    margin-right: 0;
  }
  .trainer_main_sec_btn_box a.request::after {
    display: none;
  }
  .trainer_main_sec_btn_box a.trial {
    font-size: 13px;
    width: 160px;
    height: 40px;
    padding: 0;
    line-height: 40px;
    text-align: center;
    margin-right: 17px;
  }
  .trainer .user_img_box {
    margin-bottom: 26px;
  }
  .trainer .user_sec_header {
    font-weight: 400;
    font-size: 12px;
    line-height: 1.6;
  }
  .trainer .user_sec {
    padding-bottom: 21px;
  }
  .pc-visible {
    display: none !important;
  }
  .sp-visible {
    display: block !important;
  }
  .top_bnrSec {
    padding: 0 2vw 25px;
  }
  .top_bnrSec a img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 640px) {}
@media screen and (max-width: 480px) {
  .main_header {
    font-weight: 700;
    font-size: 6.93vw;
    margin-bottom: 65.3vw;
    text-align: center;
    line-height: 1.3;
  }
  .sub_txt {
    font-size: 1.15rem;
    line-height: 1.8;
    width: 430px;
    margin: 1rem auto 2.5rem;
  }
  .sub_header {
    text-align: center;
    margin-bottom: 1rem;
    margin-top: 22px;
    font-size: 4.0vw;
    line-height: 2.0;
  }
  .sub_header > span {
    font-size: 5.86vw;
    z-index: 2;
    padding-left: 0;
  }
  .sub_header > span::after {
    height: 7px;
    bottom: -3px;
    z-index: -1;
  }
  .sub_txt {
    font-size: 1.0rem;
    line-height: 1.8;
    width: 90%;
  }
  .user_sec_header {
    font-weight: 700;
    font-size: 4.53vw;
    line-height: 1.6;
  }
  .beauty_main_header span {
    display: block;
    font-size: 6.4vw;
    line-height: 1.5;
    letter-spacing: -0.04em;
    text-align: left;
  }
  .beauty_main_sec_btn_box_header {
    font-size: 3.47vw;
    line-height: 1.85;
    margin-bottom: 15px;
  }
  .beauty_main_sec_btn_box_inner a.trial > span {
    font-size: 3.47vw;
  }
  .beauty_main_sec_btn_box_inner a.request > span {
    font-size: 3.47vw;
  }
  .trainer_main_header .lower {
    font-size: 6.4vw;
  }
  .trainer_txt {
    font-size: 3.46vw;
  }
  .trainer .user_sec_header {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 425px) {
  .top .sub_header {
    font-size: 2.59vw;
    padding: 0 4vw;
    width: auto;
    text-align: left;
    display: inline-block;
    margin: 0 0 14px 3.29vw;
  }
  .top .main_header {
    font-size: 10.5vw;
    padding: 0 0 0 3.29vw;
    line-height: 1.3;
    margin-left: 0;
    margin-bottom: 7px;
  }
  .top_exTxt {
    font-size: 4.53vw;
    font-size: 18px;
    padding: 0 2vw;
  }
  .top .user_sec_header {
    font-size: 3.2vw;
  }
  .top_exTxt2 {
    width: auto;
    background: none;
    position: relative;
    padding: 0;
    margin: 0 5vw 5vw 5vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .top_exTxt2 p {
    font-size: 3.2vw;
  }
  .top_exTxt2 img {
    width: 24vw;
    height: auto;
    right: 0px;
    top: 0;
    position: relative;
  }
}
@media screen and (max-width: 375px) {
  .top_exTxt {
    font-size: 4.53vw;
    padding: 0 2vw;
  }
}
@media screen and (max-width: 320px) {
  .trainer_main_sec_btn_box a.trial {
    margin-right: 4.53vw;
    width: 42.6vw;
  }
  .trainer_main_sec_btn_box a.request {
    width: 42.6vw;
    margin-right: 0;
  }
}
.btn_contact {
  color: #fff;
  align-content: center;
  align-items: center;
  background: #333333;
  border-radius: 4px;
  box-shadow: 7px 5px 10px rgba(51, 51, 51, 0.15);
  flex: none;
  flex-direction: row;
  flex-wrap: nowrap;
  height: auto;
  justify-content: space-around;
  margin: 23px 0px 0px 0px;
  padding: 10px 30px 10px 45px;
  width: auto;
  max-width: 100%;
  cursor: pointer;
  display: inline-block;
}
.btn_contact a {
  color: #FFF;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  height: auto;
  letter-spacing: 0.06em;
  margin: 0px 0px 0px 20px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: calc(100% - 20px);
  justify-content: center;
}
.btn_contact img {
  width: 38px;
  vertical-align: middle;
}
/* intro section */
.introduction {
  background: #EFFCF8;
  padding: 40px 0 90px;
  min-width: 1200px;
}
.introduction_read {
  margin-bottom: 50px;
  font-weight: 400;
  font-size: 16px;
  line-height: 2.0;
  margin-top: -30px;
  letter-spacing: unset;
}
.introduction_read a {
  text-decoration: underline;
  color: #25A878;
  font-weight: 700;
}
.sec_header {
  font-weight: 700;
  font-size: 26px;
  line-height: 1.538;
  text-align: center;
  color: #3A3A3C;
  position: relative;
  margin-bottom: 67px;
}
.sec_header::after {
  content: "";
  display: block;
  position: relative;
  width: 70px;
  height: 4px;
  background: #29B183;
  top: 18px;
  margin: 0 auto 20px;
}
.introduction_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.introduction_item {
  width: 350px;
  background: #FFFFFF;
  border-radius: 10px;
  padding: 10px 0 59px;
  margin: 0 35px 0 0;
  box-shadow: 0px 0px 15px rgba(41, 177, 131, 0.3);
}
#msg {
  width: 1120px;
  margin: 0 auto;
}
#msg .introduction_item {
  box-shadow: none;
}
.introduction_item:nth-child(3n) {
  margin: 0;
}
.introduction_item img {
  display: inline-block;
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}
.introduction_item h3 {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 22px;
}
.introduction_item p {
  font-weight: 400;
  font-size: 15px;
  line-height: 200%;
  text-align: justify;
  color: #333;
  padding: 0 30px;
  letter-spacing: initial;
}
.introduction_item.wide_item { /* trainer.html */
  width: 1120px;
  margin-right: 0;
  margin-top: 50px;
  display: flex;
  padding: 35px;
}
.introduction_item.wide_item .left_img {
  width: 280px;
  margin-right: 28px;
}
.introduction_item.wide_item .left_img img {
  display: inline-block;
  width: 100%;
}
.introduction_item.wide_item .left_img p {
  font-size: 12px;
  padding: 0;
  text-align: center;
}
.introduction_item.wide_item .right_txt {
  width: 747px;
}
.introduction_item.wide_item .right_txt h3 {
  text-align: left;
  margin-bottom: 14px;
  display: block;
}
.introduction_item.wide_item .right_txt p {
  padding: 0;
}
.txt_link {
  text-decoration-line: underline;
  color: #29B183;
  font-weight: 700;
}
.txt_link.no_border {
  text-decoration: none;
  font-weight: 500;
  text-align: left;
  font-size: 15px;
}
.introduction_movie {
  background: #fff;
  padding: 53px 0 87px;
  min-width: 1200px;
}
.intro_movie_cover {
  background: #F4F4F4;
  padding: 20px 25px;
  width: 690px;
  margin: 0 auto;
}
.sec_reason {
  align-content: stretch;
  align-items: stretch;
  flex: none;
  flex-direction: row;
  flex-wrap: wrap;
  height: auto;
  justify-content: center;
  margin: 0px auto 0px;
  width: calc(80% - 74px);
  min-width: 768px;
  padding: 4rem 0px;
}
.sec_reason h1, .sec_reason h2 {
  font-size: 32px;
  font-style: normal;
  font-weight: 800;
  margin: 50px auto;
  line-height: 1.5;
}
.sec_explain {
  margin: 57px auto 58px;
  min-width: 1200px;
}
.explain_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 1125px;
  margin: 0 auto;
}
.explain_inner li {
  width: 48%;
  background: #fff;
  padding: 16px 25px 30px;
  border: solid 1px #ccc;
  border-radius: 20px;
}
.sec_explain .explain_titie {
  font-size: 20px;
  margin: 10px auto;
  line-height: 1.5;
  font-weight: 800;
}
.sec_explain p {
  text-align: justify;
  font-feature-settings: "palt";
  word-break: break-all;
  letter-spacing: initial;
  line-height: 1.8;
}
.img_Introduction {
  margin-top: 30px;
  width: 100%;
}
.sec_app {
  background-color: #fff;
  display: inline-block;
  border-radius: 16px;
  vertical-align: top;
  padding: 20px 0 10px;
  width: 46%;
  margin: auto;
}
.sec_tool {
  background-color: #fff;
  display: inline-block;
  border-radius: 16px;
  vertical-align: top;
  padding: 20px 0 10px;
  margin-left: 20px;
  width: 48%;
}
.sec_app span, .sec_tool span {
  align-content: center;
  align-items: center;
  background: #333333;
  border-radius: 4px;
  flex: none;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  margin: 0px 0px 0px 0px;
  padding: 10px 40px 10px 40px;
  width: auto;
  max-width: 100%;
  color: #FFFFFF;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.06em;
  display: inline-block;
}
.sec_app h1, .sec_app h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 17px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_tool h1, .sec_tool h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 17px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_app p, .sec_tool p {
  border-radius: 0;
  color: #00b17c;
  flex: none;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: normal;
  line-height: 1.2;
  margin: 0px 0px 0px 0px;
  opacity: 1;
  padding: 0 0 0 0;
  text-align: center;
  width: auto;
  z-index: 0;
  max-width: 100%;
  justify-content: center;
  height: 40px;
  vertical-align: middle;
}
.sec_tool img {
  flex: none;
  height: auto;
  width: 95%;
  max-width: 95%;
  margin-bottom: 10px;
}
.bnr_box {
  position: fixed;
  right: 0;
  bottom: 20px;
  width: 360px;
  background: #fff;
  z-index: 10;
  border-radius: 20px 0px 0px 20px;
  padding: 0 20px 0 20px;
  box-sizing: border-box;
  text-align: left;
  box-shadow: 0px 0px 35px rgba(0, 0, 0, 0.12);
}
.bnr_box img {
  width: 115px;
  float: left;
}
.bnr_box p {
  padding-top: 7px;
  margin-left: 125px;
  text-align: left;
  font-weight: 700;
  font-size: 16px;
  line-height: 140%;
  color: #25A878;
  display: block;
  letter-spacing: inherit;
}
.bnr_box p span {
  width: 180px;
  height: 30px;
  background: #009F66;
  border-radius: 12px;
  font-weight: 700;
  font-size: 13px;
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  color: #FFFFFF;
  margin-top: 7px;
}
.banner-close {
  font-weight: bold;
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 99999;
  padding: 5px 5px;
  border: none;
  cursor: pointer;
  background: #fff;
  color: #999;
}
.banner {
  display: none;
}
@media screen and (max-width: 1119px) {
  .introduction_item {
    width: 31vw;
    margin-right: 2.12vw;
    padding-bottom: 4vw;
  }
  .introduction_item.wide_item {
    width: 97.24vw;
  }
  .introduction_item h3 {
    font-size: 1.6vw;
  }
  .introduction_item p {
    padding: 0 2.8vw;
  }
}
@media screen and (max-width: 768px) {
  #msg {
    width: 91%;
    margin: 0 auto;
  }
  #msg.introduction_inner {
    flex-direction: column;
    padding: 0 0;
  }
  #msg .introduction_item {
    box-shadow: none;
  }
  .introduction {
    min-width: unset;
    width: 100%;
    padding: 41px 0 52px;
  }
  .introduction_inner {
    flex-direction: column;
    padding: 0 20px;
  }
  .introduction_item, .introduction_item:nth-child(3n) {
    width: 100%;
    max-width: 350px;
    margin: 0 auto 28px;
    padding-bottom: 17px;
  }
  #msg .introduction_item {
    max-width: 100%;
  }
  .introduction_item:nth-child(3n) {
    margin-bottom: 0;
  }
  .introduction_item.wide_item { /* trainer.html */
    width: 100%;
    margin: 28px auto 0;
    padding: 32px 22px 27px;
    flex-wrap: wrap;
  }
  .introduction_item.wide_item .left_img {
    width: 100%;
    margin: 0 0 19px 0;
  }
  .introduction_item.wide_item .left_img img {
    width: 90%;
  }
  .introduction_item.wide_item .right_txt {
    width: 100%;
  }
  .introduction_item.wide_item .left_img h3 {
    text-align: left;
    margin-bottom: 20px;
  }
  .introduction_item.wide_item .right_txt h3 {
    display: none;
  }
  .introduction_read {
    font-weight: 400;
    font-size: 13px;
    line-height: 1.8;
    margin: -20px 20px 20px 20px;
    text-align: left;
  }
  .sec_header {
    font-size: 21px;
    margin-bottom: 57px;
  }
  .sec_header::after {
    content: "";
    display: block;
    position: relative;
    width: 45px;
    height: 5px;
    background: #29B183;
    top: 21px;
    margin: 0 auto 20px;
  }
  .introduction_item h3 {
    font-size: 18px;
  }
  .introduction_item p {
    padding: 0 22px;
    font-size: 13px;
  }
  .introduction_movie {
    background: #fff;
    padding: 35px 0 80px;
  }
  .introduction_movie {
    min-width: unset;
  }
  .intro_movie_cover {
    background: #ffffff;
    padding: 0px 13px;
    width: 100%;
    margin: 0 auto;
  }
  .intro_movie_inner {
    background: #ffffff;
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin: 0 auto;
  }
  .intro_movie_inner iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .sec_explain {
    margin-top: 30px;
    width: 91%;
    min-width: unset;
  }
  .explain_inner {
    margin-top: 0;
    width: 100%;
  }
  .explain_inner li {
    width: 100%;
    margin-bottom: 30px;
  }
  .bnr_box {
    position: fixed;
    right: 10px;
    bottom: 10px;
    width: 360px;
    height: 110px;
    background: #fff;
    z-index: 10;
    border-radius: 10px;
    padding: 15px 15px 0 20px;
    box-sizing: border-box;
    text-align: left;
    box-shadow: 0px 0px 35px rgba(0, 0, 0, 0.12);
  }
  .bnr_box img {
    width: 95px;
    height: auto;
    float: left;
  }
  .bnr_box p {
    padding-top: 5px;
    margin-left: clamp(95px, 17vw, 110px);
    text-align: left;
    font-weight: 700;
    font-size: clamp(12px, 3.8vw, 15px);
    line-height: 140%;
    color: #25A878;
    display: block;
    letter-spacing: inherit;
  }
  .bnr_box p > .pc {
    display: none !important;
}
  .bnr_box p span {
    width: 170px;
    height: 28px;
    background: #009F66;
    border-radius: 12px;
    font-weight: 700;
    font-size: 11px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    color: #FFFFFF;
    margin-top: 10px;
  }
  .banner-close {
    font-weight: bold;
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 99999;
    padding: 5px 5px;
    border: none;
    background-color: #EEEEEE;
    border-radius: 25px;
    cursor: pointer;
  }
}
@media screen and (max-width: 640px) {
  .sec_reason {
    width: calc(100% - 30px);
    max-width: calc(100% - 30px);
    min-width: unset;
  }
}
@media screen and (max-width: 480px) {
  .sec_reason {
    width: calc(100% - 30px);
    max-width: calc(100% - 30px);
  }
  .sec_reason h1, .sec_reason h2 {
    font-size: 24px;
    margin: 30px auto;
    line-height: 1.7em;
  }
  .img_Introduction {
    width: 85%;
    margin: 30px auto 0;
  }
  .sec_explain {
    margin: 50px auto 0;
  }
  .sec_app, .sec_tool {
    width: 100%;
  }
  .sec_tool {
    margin: 30px 0px 0px 0px;
  }
  .sec_app h1, .sec_tool h1, .sec_app h2, .sec_tool h2 {
    font-size: 20px;
    line-height: 1.3em;
    margin: 15px 0px 15px 0px;
  }
  .sec_app span, .sec_tool span {
    padding: 10px 10px 10px 10px;
  }
  .sec_app p, .sec_tool p {
    font-size: 15px;
  }
  .bnr_box {
    position: fixed;
    right: 10px;
    bottom: 10px;
    width: 90vw;
    height: auto;
    background: #fff;
    z-index: 9;
    border-radius: 20px;
    padding: 0 5vw 0 4.2vw;
    box-sizing: border-box;
    text-align: left;
    box-shadow: 0px 0px 35px rgba(0, 0, 0, 0.12);
    aspect-ratio: 3.27 / 1;
  }
  .bnr_box a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .bnr_box img {
    display: inline-block;
    width: auto;
    height: 100%;
    padding-top: 9px;
  }
  .bnr_box p {
    padding-top: 5px;
    margin-left: 0;
    text-align: left;
    font-weight: 700;
    font-size: clamp(12px, 3.8vw, 15px);
    line-height: 140%;
    color: #25A878;
    display: block;
    letter-spacing: inherit;
  }
  .bnr_box p span {
    width: auto;
    height: 28px;
    background: #009F66;
    border-radius: 12px;
    font-weight: 700;
    font-size: 11px;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    color: #FFFFFF;
    margin-top: 7px;
  }
  .banner-close {
    font-weight: bold;
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 99999;
    padding: 5px 5px;
    border: none;
    background-color: #EEEEEE;
    border-radius: 25px;
    cursor: pointer;
  }
}
.sec_app .frame_app {
  flex: none;
  width: 95%;
  max-width: 95%;
  position: relative;
  padding-bottom: 70%;
  height: 0;
  overflow: hidden;
  margin: 0 auto 20px;
}
.sec_data {
  width: 100%;
  background-color: #fff;
  display: inline-block;
  border-radius: 16px;
  padding: 40px 0;
  margin: 40px 0;
}
.sec_data span {
  align-content: center;
  align-items: center;
  background: #333333;
  border-radius: 4px;
  flex: none;
  flex-direction: row;
  flex-wrap: nowrap;
  height: auto;
  justify-content: center;
  margin: 0px 0px 0px 0px;
  padding: 10px 40px 10px 40px;
  width: auto;
  max-width: 100%;
  color: #FFFFFF;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.06em;
  display: inline-block;
}
.sec_data h1, .sec_data h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 17px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_data ul {
  display: inline-block;
  vertical-align: top;
  height: 504px;
  width: 25%;
}
.sec_data li {
  height: 80px;
  padding: 0px 0 0 80px;
  text-align: left;
  color: #333333;
  font-size: 14px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: normal;
  line-height: 1.5;
  width: auto;
  z-index: 0;
  max-width: 100%;
  justify-content: flex-start;
  margin: 20% 0 35%;
}
li.li_graph {
  background: url(img/s-150x150_8fa27444-20e3-4e3b-a0ad-2059aeb64857.svg) no-repeat left center;
  padding-top: 18px;
}
li.li_advice {
  background: url(img/s-150x150_c4360841-d0a3-4276-a607-7dbbfb3b5efc.svg) no-repeat left center;
}
li.li_grasp {
  background: url(img/s-150x150_1cddc55a-6a2c-4337-a5fd-30e07b53cfe3.svg) no-repeat left center;
  padding-top: 30px;
}
img.img_data {
  width: 70%;
  max-width: 100%;
  display: inline-block;
  text-align: right;
  float: right;
}
@media screen and (max-width: 480px) {
  .sec_data {
    padding: 40px 0 10px 0;
  }
  .sec_data span {
    padding: 10px 10px 10px 10px;
  }
  .sec_data h1 {
    font-size: 20px;
    line-height: 1.3em;
    margin: 15px 0px 15px 0px;
  }
  .sec_data ul {
    display: block;
    width: 100%;
    height: 320px;
  }
  .sec_data li {
    height: 100px;
    font-size: 14px;
    margin: 20% 0 0;
    text-align: center;
  }
  .li_graph p {
    text-align: center;
    padding-left: -20px;
  }
  .li_graph #text {
    margin: -20px;
  }
  li.li_graph {
    background: url(img/s-150x150_8fa27444-20e3-4e3b-a0ad-2059aeb64857.svg) no-repeat;
    height: 55px;
    padding: 55px 0px 0px 10px;
    background-position: top;
    background-position: center;
    margin-top: 0;
  }
  li.li_advice {
    background: url(img/s-150x150_c4360841-d0a3-4276-a607-7dbbfb3b5efc.svg) no-repeat left center;
    height: 55px;
    padding: 55px 0px 0px 10px;
    background-position: top;
    background-position: center;
    margin-top: 13%;
  }
  li.li_grasp {
    background: url(img/s-150x150_1cddc55a-6a2c-4337-a5fd-30e07b53cfe3.svg) no-repeat left center;
    height: 55px;
    padding: 55px 0px 0px 10px;
    background-position: top;
    background-position: center;
  }
  img.img_data {
    width: 100%;
    max-width: 100%;
    text-align: right;
    float: right;
  }
}
.sec_merit {
  width: 79%;
  margin: 80px auto;
}
.guide .sec_merit {
  padding-bottom: 80px;
}
.sec_merit h1, .sec_merit h2 {
  font-size: 32px;
  font-style: normal;
  font-weight: 800;
  margin-bottom: 30px;
}
.sec_merit {
  margin-bottom: 0;
  min-width: 1200px;
}
img.img_list {
  width: 30%;
  display: inline-block;
  margin: 10px;
}
.img_merit {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .sec_merit {
    width: 100%;
    margin: 30px auto;
    min-width: unset;
  }
}
@media screen and (max-width: 480px) {
  .sec_merit {
    width: 100%;
    margin: 30px auto;
    min-width: unset;
  }
  .guide .sec_merit {
    padding-bottom: 40px;
  }
  .sec_merit h1 {
    font-size: 24px;
    line-height: 1.3em;
  }
  img.img_list {
    width: 40% !important;
    display: inline-block;
    margin: 2px !important;
  }
  img.img_merit {
    display: none;
  }
}
.sec_recommend {
  width: 100%;
  min-width: 1200px;
  background-color: #f1f1f1;
  padding: 50px 0 0;
}
.recommend_coverBox {
  background: #fff;
  border-radius: 20px;
  max-width: 1120px;
  padding: 67px 80px;
  margin: 0 auto;
}
.recommend_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 0px;
}
.recommend_item {
  width: 290px;
  border-radius: 10px;
  padding: 0 0 0;
  margin: 0 35px 0 0;
}
.recommend_item:nth-child(3n) {
  margin: 0;
}
.recommend_item_header {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 13px;
}
.recommend_headerIcon {
  width: 100px;
  margin-right: 20px;
}
.recommend_headerIcon img {
  display: block;
  width: 100%;
  height: auto;
}
.recommend_headerTxt {
  width: 156px;
  color: #29B183;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.45;
  position: relative;
  text-align: left;
}
.item02-guide .recommend_headerTxt {
  width: 102px;
}
.item01-trainer .recommend_headerTxt {
  width: 155px;
  letter-spacing: -0.07em;
}
.item03-beauty .recommend_headerTxt {
  width: 63px;
}
.box_user {
  background: #f4f4f4;
  padding: 0 20px;
  border-radius: 8px;
  height: 78px;
  display: flex;
  align-items: center;
  margin-bottom: 21px;
}
.item03-beauty .box_user {
  padding: 0 13px;
}
.box_user > span {
  display: block;
  font-size: 12px;
  font-weight: 500;
  text-align: left;
  line-height: 1.67;
}
.recommend_checkedList {
  margin-bottom: 28px;
  min-height: 188.39px
}
.recommend_checkedList li {
  font-size: 14px;
  text-align: left;
  line-height: 1.6;
  margin-bottom: 18px;
  padding-left: 32px;
  position: relative;
}
.recommend_checkedList li::after {
  content: "";
  position: absolute;
  width: 23px;
  height: 20px;
  background: url("img/checked_list.svg") no-repeat;
  background-size: 100% auto;
  left: 0;
  top: 0;
  display: inline-block;
}
.recommend_moreBtn {
  display: block;
  font-size: 14px;
  font-weight: 700;
  width: 156px;
  height: 46px;
  text-align: left;
  padding: 14px 0 0 25px;
  border: 1px solid #3a3a3c;
  border-radius: 100vh;
  margin: 0 auto;
  position: relative;
}
.recommend_moreBtn::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background: url("img/btn_arrow_right_black.svg") no-repeat;
  background-size: 100% auto;
  display: block;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
}
.recommend_msgBox h3 {
  font-size: 18px;
  font-weight: 700;
  line-height: 2.22;
  margin-bottom: 22px;
}
.recommend_msgBox p {
  font-size: 15px;
  font-weight: 400;
  line-height: 2.0;
  text-align: left;
  letter-spacing: normal;
}
@media screen and (max-width: 768px) {
  .sec_recommend {
    min-width: unset;
  }
  .recommend_coverBox {
    width: 91%;
    max-width: unset;
    padding: 42px 5vw 44px;
  }
  .recommend_item {
    margin: 0 0 39px;
    width: 100%;
    max-width: 350px;
  }
  .recommend_item_header {
    justify-content: flex-start;
  }
  .recommend_headerTxt {
    font-size: 19px;
  }
  .recommend_headerIcon {
    margin-right: 28px;
  }
  .item01-trainer .recommend_headerIcon {
    margin-right: 18px;
  }
  .box_user {
    padding: 8px 15px;
    height: auto;
  }
  .item03-beauty .box_user {
    padding: 8px 15px;
  }
  .recommend_checkedList {
    margin-bottom: 28px;
    min-height: unset;
  }
  .recommend_checkedList li {
    padding-left: 28px;
    margin-bottom: 14px;
  }
  .recommend_checkedList li::after {
    left: 3px;
    top: 2px;
  }
  .recommend_msgBox h3 {
    line-height: 1.8;
    margin-bottom: 17px;
  }
  .recommend_msgBox p {
    font-size: 13px;
  }
  .recommend_moreBtn {
    display: block;
    font-size: 14px;
    font-weight: 700;
    width: 180px;
    height: 50px;
    text-align: left;
    padding: 17px 0 0 40px;
    border: 1px solid #3a3a3c;
    border-radius: 100vh;
    margin: 0 auto;
    position: relative;
  }
}
.sec_press {
  width: 100%;
  margin-bottom: 80px;
}
.sec_press h1, .sec_press h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 100px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_press ul {
  width: 70%;
  margin: auto;
}
.sec_press li {
  text-align: left;
  align-content: center;
  align-items: center;
  background: #ffffff;
  border-radius: 16px;
  flex: none;
  flex-direction: row;
  flex-wrap: wrap;
  height: auto;
  justify-content: flex-start;
  margin: 10px 37px 20px 37px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 20px 30px 15px 50px;
  width: calc(100% - 74px);
  max-width: calc(100% - 74px);
}
.sec_press p {
  text-align: left;
  border-radius: 0;
  color: #111111;
  flex: none;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.43;
  margin: 20px 0px 0px 0px;
  opacity: 1;
  padding: 0px 0px 0px 0px;
  text-align: justify;
  width: auto;
  max-width: 100%;
}
.sec_press span {
  border-bottom: 3px solid #00b17c;
  border-left: 0px solid #00b17c;
  border-radius: 0;
  border-right: 0px solid #00b17c;
  border-top: 0px solid #00b17c;
  color: #111111;
  flex: none;
  font-family: Oswald;
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin: 0px 0px 24px 0px;
  opacity: 1;
  padding: 0px 0px 0px 0px;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}
.sec_press img, .sec_faq img {
  width: 20px;
  margin-top: 5px;
  max-width: 100%;
}
.sec_press a {
  border-bottom: 0px solid #000;
  border-left: 0px solid #000;
  border-radius: 0;
  border-right: 0px solid #000;
  border-top: 0px solid #000;
  color: #111111;
  flex: none;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.43;
  margin: 0px 5px 0px 30px;
  opacity: 1;
  padding: 0px 0px 0px 0px;
  text-align: justify;
  width: auto;
  max-width: calc(100% - 5px);
}
.sec_advice h1, .sec_advice h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 17px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_advice {
  width: 79%;
  /*min-width: 1024px;*/
  margin: auto;
  text-align: left;
}
.sec_advice_box {
  background: #FFFFFF;
  border-radius: 16px;
  margin: 10px auto 20px;
  padding: 25px 30px 25px 30px;
  width: 100%;
  max-width: 1120px;
}
.sec_advice h1, .sec_advice h2 {
  align-content: flex-start;
  align-items: flex-start;
  background: rgba(0, 0, 0, 0.0);
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: center;
  margin: 100px 0px 0px 0px;
  width: 100%;
  max-width: 100%;
}
.sec_advice_box h1, .sec_advice_box h2 {
  font-size: 25px;
  text-align: left;
  align-content: flex-start;
  align-items: flex-start;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: center;
  margin: 0px 0px 0px 0px;
  width: 100%;
  max-width: 100%;
  padding: 0rem 1rem;
  border-left: 4px solid #00b17c;
  margin-bottom: 20px;
}
.sec_advice_box div {
  border-radius: 0;
  color: #111111;
  flex: none;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2;
  margin: 15px 0px 0px 0px;
  opacity: 1;
  padding: 0px 0px 0px 0px;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}
.sec_advice_box ul {
  margin-top: 40px;
}
.sec_advice_box .li_q {
  font-weight: 800;
  margin-top: 6%;
}
.sec_advice_box li {
  margin-bottom: 10px;
}
/*.sec_advice_box h2{ */
.sec_advice_box h3 {
  flex: none;
  font-size: 18px;
  letter-spacing: -0.02em;
  line-height: 1.52;
  width: auto;
  max-width: 100%;
  color: #00b17c;
}
.sec_advice_box table, .sec_advice_box td, .sec_advice_box tr {
  padding: 2%;
  border: solid 3px #f1f1f1;
}
.sec_advice_box table {
  margin-bottom: 20px;
  width: 80%;
}
@media screen and (max-width:768px) {
  .sec_advice {
    width: 100%;
    min-width: unset;
  }
  .sec_press {
    width: 100%;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 480px) {
  .sec_press h1, .sec_advice h1, .sec_press h2, .sec_advice h2 {
    font-size: 24px;
    margin: 50px 0px 21px 0px;
  }
  .sec_press ul, .sec_advice {
    width: 95%;
    min-width: unset;
  }
  .sec_press li, .sec_advice_box {
    margin: 10px 20px 20px 3px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 20px 30px 15px 50px;
    width: calc(100% - 10px);
    max-width: calc(100% - 10px);
  }
  .sec_press p {
    font-size: 13px;
  }
  .sec_press span {
    font-size: 13px;
    font-family: Oswald;
  }
  .sec_press a {
    font-size: 14px;
    letter-spacing: -0.02em;
    margin-left: 10px;
  }
  .sec_advice_box h1, .sec_advice_box h2 {
    margin: 0px;
  }
  .sec_advice_box div {
    font-size: 14px;
  }
  /* .sec_advice_box h2{ */
  .sec_advice_box h3 {
    font-size: 13px;
    margin-top: 20px;
  }
}
.sec_faq .link {
  text-align: right;
  margin-top: 30px;
}
/*******もっと見る******/
.div_more {
  width: 70%;
  margin: auto;
}
.div_more ul {
  width: 100%;
}
.acd-check {
  display: none;
}
.acd-label {
  text-align: center;
  align-content: center;
  align-items: center;
  background: #ffffff;
  border-radius: 16px;
  font-weight: 800;
  flex: none;
  flex-direction: row;
  flex-wrap: wrap;
  height: auto;
  justify-content: flex-start;
  margin: 10px 37px 20px 37px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 20px 30px 15px 50px;
  width: calc(100% - 74px);
  max-width: calc(100% - 74px);
  display: block;
}
.acd-content {
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content {
  height: 100%;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}
@media screen and (max-width: 480px) {
  .div_more {
    width: 95%;
  }
  .acd-label {
    margin: 0px;
    padding: 20px;
    width: calc(100%);
    max-width: calc(100%);
  }
  .acd-content {
    padding: 0px;
  }
  .acd-check:checked + .acd-label + .acd-content {
    padding: 0px;
  }
}
.sec_case {
  width: 79%;
  margin: auto;
  min-width: 1200px;
}
.sec_case h1, .sec_case h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 100px 0px 21px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_case div.div_case {
  align-content: center;
  align-items: center;
  background: #FFFFFF;
  border-radius: 16px;
  box-shadow: none;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: center;
  margin: 10px 10px 10px 10px;
  padding: 20px 20px 20px 20px;
  width: calc(30% - 20px);
  max-width: calc(30% - 20px);
  text-align: left;
  display: inline-block;
  vertical-align: top;
  height: 100%;
}
.sec_case .p_date {
  flex: none;
  font-size: 15px;
  height: auto;
  border-bottom: 3px solid #00b17c;
  border-left: 0px solid #00b17c;
  border-radius: 0;
  border-right: 0px solid #00b17c;
  border-top: 0px solid #00b17c;
  color: #111111;
  flex: none;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.2;
  margin: 20px 0px 14px 0px;
  opacity: 1;
  padding: 0px 0px 0px 0px;
  text-align: left;
  max-width: 100%;
  justify-content: flex-start;
  display: inline-block;
  text-align: left;
}
.sec_case img.link-icon {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}
.sec_case div.div_more {
  width: calc(100% - 40px);
  max-width: calc(100% - 40px);
  display: block;
}
.sec_case h3 {
  color: #00b17c;
  font-size: 11px;
  font-weight: 700;
  height: auto;
  letter-spacing: normal;
  line-height: 1;
  margin: 0px 0px 10px 0px;
  text-align: left;
  width: auto;
  max-width: 100%;
  justify-content: flex-start;
}
.sec_case p.p_detail {
  text-align: left;
  width: 800;
  font-size: 15px;
}
.sec_case div img.img_cap {
  max-width: 100%;
  width: 100%;
  display: block;
  height: auto;
}

.linkBtn_gymList {
  margin: 30px auto 80px;
}
.linkBtn_gymList a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: #fff;
  color: #28b183;
  border-radius: 100vh;
  margin: 0 auto;
  font-weight: 700;
  font-size: 14px;
  text-align: left;
  line-height: 2.0;
  height: 64px;
  border: 2px solid #28b183;
  width: 580px;
}
.linkBtn_gymList a::after {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #28b183;
    border-right: 2px solid #28b183;
    position: relative;
    transform: translateY(-50%) rotate(45deg);
    margin-left: 20px;
    top: 4px;
}
@media screen and (max-width:768px) {
  .sec_case {
    width: 100%;
    min-width: unset;
  }
  .linkBtn_gymList a {
    width: 90%;
    line-height: 1.6;
    height: 70px;
  }
  .linkBtn_gymList a::after {
    margin-left: 4vw;
  }
}
@media screen and (max-width: 480px) {
  .sec_case {
    width: 90%;
  }
  .sec_case div.div_case {
    width: calc(100% - 0px);
    max-width: calc(100% - 0px);
    margin: 10px 10px 10px 0px;
  }
  .sec_case div.div_more {
    width: calc(100% - 0px);
    max-width: calc(100% - 0px);
    display: block;
  }
  .linkBtn_gymList a {
    width: 100%;
  }
  
}
footer {
  padding: 71px 0 0;
  background: #fff;
  min-width: 1200px;
}
.footer_inner {
  width: 1180px;
  margin: 0 auto;
}
.fotter_upperSec, .footer_lowerSec {
  display: flex;
}
.fotter_upperSec {
  padding: 0 0 40px;
  border-bottom: 1px solid #ddd;
}
.footer_lowerSec {
  padding: 40px 0 67px;
}
.f_calomealLogo {
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.08em;
  color: #29B183;
  text-align: left;
  padding-left: 59px;
  background: url(./img/footer_logo.svg) no-repeat left center;
  background-size: 47px 49px;
  margin-right: 80px;
  height: 47px;
  line-height: 1.2;
}
.f_calomealLogo > span {
  font-size: 12px;
  line-height: 1.9;
  letter-spacing: -0.03em;
  color: #595E5E;
  display: block;
}
.footer_lowerSec > .footer_logoBox {
  width: 220px;
  margin-right: 50px;
}
.f_lltLogo {}
.f_lltLogo img {
  display: inline-block;
  width: 100%;
}
.footerNav {
  width: 200px;
}
.footerNav1 {
  width: 400px;
}
.footerNav.long {
  width: 218px;
}
.footerNav li {
  text-align: left;
}
.footerNav li a {
  text-align: left;
  font-weight: 400;
  font-size: 15px;
  line-height: 2.6;
  color: #3A3A3C;
}
.corp-2 {
  margin-top: 39px;
  width: 280px;
}
.footerNav_noLink_item {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 39px;
  color: #3A3A3C;
}
.footerNav_child > li {
  position: relative;
}
.footerNav_child > li::before {
  content: "・";
  display: inline-block;
  font-size: 17px;
  padding-right: 3px;
}
.footer_btnBox {
  width: 676px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.footer_btnBox .sec_action_apdxTxt {
  left: 0;
  margin-bottom: 18px;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.05em;
}
.footer_btnBox a.trial {
  width: 214px;
  height: 67px;
  line-height: 67px;
  padding: 0;
  text-align: center;
  display: inline-block;
  margin-right: 14px;
}
.footer_btnBox a.trial .filter-shadow {
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.25));
  color: inherit;
}
.footer_btnBox a.request {
  width: 214px;
  line-height: 63px;
  height: 67px;
  padding: 0;
  text-align: center;
  display: inline-block;
  margin-right: 0;
}
.snsBox {
  width: 210px;
  display: inline-flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.snsBox a:nth-child(1) {
  margin-right: 25.43px;
}
.snsBox a:nth-child(2) {
  margin-right: 22px;
}
.snsBox a:nth-child(3) {
  margin-right: 22px;
}
.footer_info {
  background: #3A3A3C;
  padding: 20px 0 17px;
}
.footer_info_inner {
  width: 1180px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer_info_list li {
  display: inline-block;
  margin-right: 28px;
}
.footer_info_list li a {
  color: #fff;
  display: inline-block;
  font-size: 13px;
  font-weight: 400;
  line-height: 3;
}
.copyright {
  color: #fff;
  font-size: 10px;
}
@media screen and (max-width: 768px) {
  footer {
    padding: 40px 0 0;
    min-width: unset;
  }
  .footer_inner {
    width: 100%;
  }
  .fotter_upperSec, .footer_lowerSec {
    flex-wrap: wrap;
    flex-direction: column;
    padding: 0 9.9vw;
  }
  .fotter_upperSec {
    padding: 0 9.9vw 46px;
  }
  .footer_lowerSec {
    padding: 32px 9.9vw 53px;
  }
  .footer_btnBox {
    width: 100%;
    margin-top: 15px;
    flex-direction: column;
  }
  .f_calomealLogo {
    display: block;
    font-size: 18px;
    letter-spacing: -0.08em;
    background-size: 42px auto;
    margin-bottom: 22px;
    padding-left: 52px;
  }
  .f_calomealLogo > span {
    font-size: 11px;
    line-height: 2.2;
    letter-spacing: -0.05em;
  }
  .footer_lowerSec > .footer_logoBox {
    width: 100%;
    margin: 0 0 37px;
  }
  .f_lltLogo img {
    width: 222px;
  }
  .footerNav {
    width: 100%;
    margin-bottom: 8px;
  }
  .footerNav li a {
    line-height: 2.8;
  }
  .corp-1 {
    margin-bottom: 0;
  }
  .corp-2 {
    margin: 0 auto 26px;
  }
  .footerNav.long {
    margin-bottom: 48px;
  }
  .footer_btnBox .sec_action_apdxTxt {
    font-size: 16px;
    margin-bottom: 17px;
  }
  .footer_btnBox a.request {
    padding: 0 14px 0 0;
    font-size: 15px;
    width: 280px;
  }
  .footer_btnBox a.trial {
    margin: 0 auto 29px;
    font-size: 15px;
    width: 280px;
  }
  .footer_btnBox a.trial .filter-shadow.sp-position {
    padding-right: 18px;
  }
  .footer_btnBox a.request::after {
    top: 52%;
    right: 73px;
    transform: translateY(-50%) rotate(45deg);
  }
  .footer_btnBox a.trial::after {
    display: inline-block;
    right: 59.5px;
  }
  .snsBox {
    width: 100%;
    display: inline-flex;
    align-items: flex-end;
    justify-content: center;
  }
  .snsBox a:nth-child(1) {
    margin-right: 35px;
  }
  .snsBox a:nth-child(2) {
    margin-right: 37px;
  }
  .snsBox a:nth-child(3) {
    margin-right: 33px;
  }
  .footer_info {
    padding: 21px 9.9vw 22px
  }
  .footer_info_inner {
    width: 100%;
    flex-wrap: wrap;
  }
  .footer_info_list {
    width: 100%;
    text-align: left;
    margin-bottom: 29px;
  }
  .footer_info_list li a {
    line-height: 2.8;
  }
}
/****guide****/
.sec_trouble {
  width: 79%;
  margin: 80px auto;
}
.sec_trouble .img_trouble {
  width: 118px;
  max-width: 100%;
}
.sec_trouble h1 {
  font-size: 32px;
  font-style: normal;
  font-weight: 800;
  margin-bottom: 30px;
}
.sec_store .div_store img {
  width: 222px;
  max-width: 90%;
  padding: 10px 10px 10px;
}
.sec_store {
  padding: 50px 0px 19px 0px;
  width: 100%;
  z-index: -1;
  max-width: 100%;
}
img.img_list {
  width: 30%;
  display: inline-block;
  margin: 10px;
}
.sec_store h1 {
  color: #333;
  font-size: 20px;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_store .img_dl {
  display: block;
  margin: auto;
}
.sec_remuneration {
  align-content: flex-start;
  align-items: flex-start;
  background: #69e1f5;
  flex: none;
  flex-direction: row;
  flex-wrap: wrap;
  height: auto;
  justify-content: center;
  margin: 0px auto 0px auto;
  padding: 23px 0px 20px 0px;
  width: 100%;
  z-index: -2;
  max-width: 100%;
  min-width: 1200px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .sec_remuneration {
    min-width: unset;
  }
}
@media screen and (max-width: 480px) {
  .nav_box.guide .a_advice {
    border-bottom: 2px solid #000;
    margin: 10px 3px 0 11px;
  }
  .guide.sec_detail {
    height: auto;
  }
  .sec_trouble {
    width: 90%;
    max-width: 100%;
    margin: 3rem auto 0;
    padding-bottom: 40px;
  }
  .sec_trouble .img_trouble {
    display: inline-block;
    width: 75px;
  }
  .sec_trouble h1 {
    display: inline-block;
    font-size: 22px;
    margin: 24px 19px 10px 7px;
    max-width: calc(100% - 26px);
    vertical-align: top;
  }
  .sec_store .div_store .img_store {
    width: 45%;
    max-width: 45%;
    padding: 10px 10px 10px;
  }
  .sec_store h1 {
    margin: auto;
    width: 50%;
    font-size: 15px;
  }
  .sec_store .img_dl {
    width: 300px;
  }
  .sec_store .div_store img {
    width: 70%;
  }
}
.sec_remuneration .p_remuneration {
  color: #000000;
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_remuneration h1 {
  margin-bottom: 30px;
  color: #000000;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_remuneration img.img_remuneration {
  width: 100px;
  max-width: 90%;
  padding: 10px 10px 10px;
}
.div_remuneration img {
  border-radius: 0px;
  height: auto;
  padding: 0 0 0 0;
  margin: 10px 5px;
  width: 310px;
  max-width: 100%;
}
#popup1 {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + #popup1 {
  display: block;
}
#popup2 {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + #popup2 {
  display: block;
}
#popup3 {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + #popup3 {
  display: block;
}
.div_remuneration .div_popup {
  align-content: center;
  align-items: center;
  text-align: center;
  background: #f1f1f1;
  border-radius: 10px;
  box-shadow: 0px 6px 15px 0px rgba(0, 0, 0, 0.2);
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: center;
  opacity: 1;
  margin: auto;
  padding: 0px 0px 20px;
  width: 727px;
  max-width: calc(100% - 30px);
}
.div_remuneration .div_popup img {
  background: rgb(160, 160, 160);
  border-bottom: 0px solid rgb(0, 0, 0);
  border-left: 0px solid rgb(0, 0, 0);
  border-right: 0px solid rgb(0, 0, 0);
  border-top: 0px solid rgb(0, 0, 0);
  flex: none;
  height: auto;
  margin: 11px 0px 13px 0px;
  width: 70%;
  max-width: 70%;
}
.div_remuneration .div_popup i {
  font-family: Material Icons;
  font-weight: 400;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  margin: 10px auto;
}
.div_remuneration .btn_close {
  align-content: flex-end;
  align-items: flex-end;
  background: rgba(0, 0, 0, 0.0);
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: 30px;
  justify-content: flex-start;
  margin: 0px 0px 0px 0px;
  width: 95%;
  max-width: 95%;
  text-align: right;
}
.div_remuneration .p_title {
  color: #10936c;
  font-size: 16px;
  font-weight: 800;
  height: auto;
  line-height: 1.4;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.div_remuneration .p_detail {
  width: 150px;
  align-content: center;
  align-items: center;
  background: #ffe005;
  border-bottom: 3px solid rgb(255, 224, 5);
  border-left: 0px solid rgb(255, 224, 5);
  border-radius: 17px;
  border-right: 0px solid rgb(255, 224, 5);
  border-top: 0px solid rgb(255, 224, 5);
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  margin: 0px auto;
  padding: 7px 30px 5px 30px;
  max-width: 100%;
  color: #000000;
  font-size: 13px;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}
.div_remuneration .p_support {
  font-size: 13px;
}
.sec_image {
  width: 70%;
  margin: 100px auto;
  text-align: center;
}
.sec_image div {
  align-content: flex-start;
  align-items: flex-start;
  background: #FFFFFF;
  border-radius: 16px;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: flex-start;
  margin: 10px 37px 20px 37px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 25px 30px 25px 30px;
  width: calc(100% - 74px);
  max-width: calc(100% - 74px);
}
.sec_image span {
  align-content: center;
  align-items: center;
  background: #333333;
  border-radius: 4px;
  flex: none;
  flex-direction: row;
  flex-wrap: nowrap;
  height: auto;
  width: auto;
  justify-content: center;
  margin: 0px 0px 0px 0px;
  padding: 10px 40px 10px 40px;
  max-width: 100%;
  color: #FFFFFF;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  height: auto;
}
.sec_image h2 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 50px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_image img {
  width: 90%;
}
.sec_onlineimage {
  width: 70%;
  margin: auto;
  text-align: center;
}
.sec_onlineimage div {
  align-content: flex-start;
  align-items: flex-start;
  background: #FFFFFF;
  border-radius: 16px;
  flex: none;
  flex-direction: column;
  flex-wrap: nowrap;
  height: auto;
  justify-content: flex-start;
  margin: 10px 37px 20px 37px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 25px 30px 25px 30px;
  width: calc(100% - 74px);
  max-width: calc(100% - 74px);
}
.sec_onlineimage span {
  align-content: center;
  align-items: center;
  background: #333333;
  border-radius: 4px;
  flex: none;
  flex-direction: row;
  flex-wrap: nowrap;
  height: auto;
  width: auto;
  justify-content: center;
  margin: 0px 0px 0px 0px;
  padding: 10px 40px 10px 40px;
  max-width: 100%;
  color: #FFFFFF;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  height: auto;
}
.sec_onlineimage h1 {
  color: #333333;
  font-size: 30px;
  font-style: normal;
  font-weight: 800;
  height: auto;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin: 50px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  width: auto;
  max-width: 100%;
  justify-content: center;
}
.sec_onlineimage img {
  width: 90%;
}
@media screen and (max-width: 480px) {
  .sec_image, .sec_onlineimage {
    width: 100%;
    margin: 50px auto;
    text-align: center;
  }
  .sec_image h1 {
    font-size: 24px;
  }
  .sec_image h2, .sec_onlineimage h1 {
    font-size: 20px;
    margin: 20px auto;
  }
  .sec_image div, .sec_onlineimage div {
    margin: 10px 15px 20px 15px;
    width: calc(100% - 35px);
    max-width: calc(100% - 35px);
  }
  .sec_introductionimage img.img_list, .sec_onlineimage img.img_list {
    width: 100% !important;
    display: inline-block;
    margin: 2px !important;
  }
}
/****.trainer****/
.sec_box.trainer {
  background: #fafafa;
  margin-top: 0;
}
.sec_box.trainer .btn_contact {
  background: #ffe200;
  color: #333333;
}
.trainer .sec_case {
  width: 90%;
  margin: auto;
}
@media screen and (max-width: 480px) {
  .trainer .sec_img {
    height: auto;
    width: 100%;
    left: 0;
    top: 65px;
  }
  .trainer .sec_img img {
    height: 100%;
    width: 100%;
  }
  .trainer .sec_detail {
    margin: 10px auto;
    height: auto;
  }
  .trainer .sec_detail div {
    line-height: 1.8em;
    font-size: 12px;
  }
  .trainer .sec_detail_wrap {
    height: 630px;
  }
  .trainer .btn_contact, .trainer .txt_ad {
    display: none;
  }
}
@media screen and (max-width: 375px) {
  .trainer .sec_detail_wrap {
    height: 590px;
  }
}
.beauty .sec_case {
  width: 90%;
  margin: auto;
}
@media screen and (max-width: 375px) {
  .beauty .sec_detail_wrap {
    height: 590px;
  }
}
/*******faq******/
.faq header {
  margin: 0px;
}
.faq .sec_advice_box {
  margin-top: 50px;
}
.faq .sec_advice_box h2 {
  margin-bottom: -30px;
}
@media screen and (max-width: 480px) {
  .faq header {
    margin-top: 0px;
  }
  .faq .sec_advice_box h2 {
    margin-bottom: 0px;
  }
}
.sec_howToMovie {
  position: relative;
  z-index: 20;
}
.openBtn {
  background: #fff;
  border-radius: 15px;
  width: 185px;
  position: fixed;
  right: 40px;
  bottom: 12vh;
  box-shadow: -1px 2px 10px 3px rgb(51 51 51 / 20%);
  padding: 13px 10px 7px 10px;
  z-index: 100;
  cursor: pointer;
}
.openBtn_inner {
  position: relative;
}
.openBtn .open_modal img {
  width: 100%;
}
.hide_openBtn {
  display: block;
  position: absolute;
  top: -18px;
  right: -18px;
  width: 28px;
  height: auto;
}
.howToMovie_header {
  color: #3A3A3C;
  font-size: 0.8125rem;
  margin-bottom: 10px;
}
.howToMovie_header::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 11px;
  height: 15.89px;
  background: url(img/line-left.svg) no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
  margin-right: 6px;
}
.howToMovie_header::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 11px;
  height: 15.89px;
  background: url(img/line-right.svg) no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
  margin-left: 3px;
}
.hide {
  display: none;
  transition: all 1s;
}
.modalWindow {
  display: none;
  position: fixed;
  /*background: rgb(0 0 0 / 60%);*/
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  transition: all 1s;
}
.modal-visible {
  display: block;
  transition: all 1s;
}
.modal_inner {
  position: relative;
  width: 100%;
  height: 100%;
}
img.close_modal {
  width: 50px;
  height: auto;
  display: block;
  position: absolute;
  top: -22px;
  right: -22px;
}
.iframe_cover {
  position: absolute;
  width: 650px;
  height: 365px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#modal-content .inner #player {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
#modal-overlay {
  z-index: 19;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 768px) {
  .openBtn {
    width: 138px;
    border-radius: 15px 0 0 15px;
    right: 0;
    bottom: 30px;
    box-shadow: -1px 2px 10px 3px rgb(51 51 51 / 20%);
    padding: 6px 6px 4px 8px;
    opacity: 0;
  }
  .howToMovie_header {
    font-size: 0.625rem;
    margin-bottom: 6px;
  }
  .howToMovie_header::before, .howToMovie_header::after {
    display: none;
  }
  .iframe_cover {
    width: 465px;
    height: 261.5px;
  }
  img.close_modal {
    width: 32px;
    height: auto;
    display: block;
    position: absolute;
    top: -13px;
    right: -12px;
  }
  .hide_openBtn {
    display: block;
    position: absolute;
    top: -26px;
    right: -3px;
  }
  .emerge {
    opacity: 1;
    transform: translateY(0);
    transition: all 1s;
  }
}
@media screen and (max-width: 480px) {
  .openBtn {
    width: 31.5%;
    border-radius: 15px 0 0 15px;
    right: 0;
    bottom: 70px;
    box-shadow: -1px 2px 10px 3px rgb(51 51 51 / 20%);
    padding: 6px 6px 4px 8px;
    opacity: 0;
    transform: translateY(50px);
    transition: all 1s;
  }
  .openBtn .open_modal img {
    width: 100%;
  }
  .hide_openBtn {
    display: block;
    position: absolute;
    top: -26px;
    right: -3px;
  }
  .emerge {
    opacity: 1;
    transform: translateY(0);
    transition: all 1s;
  }
  .howToMovie_header {
    font-size: 0.625rem;
    margin-bottom: 6px;
  }
  .howToMovie_header::before, .howToMovie_header::after {
    display: none;
  }
  .iframe_cover {
    width: 85%;
    height: auto;
    position: relative;
    --aspect-ratio: 16 / 9;
    padding-top: calc((1 / (var(--aspect-ratio))) * 100%);
  }
  @supports (aspect-ratio: 1) {
    .iframe_cover {
      aspect-ratio: var(--aspect-ratio);
      padding-top: initial;
    }
  }
  img.close_modal {
    width: 32px;
    height: auto;
    display: block;
    position: absolute;
    top: -13px;
    right: -12px;
  }
}
.sec_faq {
  margin: 10px auto 83px;
  width: 100%;
  min-width: 1200px;
  background: none;
  padding: 0;
  max-width: unset;
}
.sec_faq .faq_coverBox {
  max-width: 1120px;
  background: #FFFFFF;
  border-radius: 16px;
  padding: 31px 25px 34px;
  margin: 0 auto;
}
.sec_faq .qa_cover {
  background: rgb(229 229 229 / 30%);
  border-radius: 20px;
  padding: 27px 53px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  width: 891px;
  margin: 0 auto 22px;
  letter-spacing: 0.03em;
  text-align: left;
}
dl.faq_list {
  margin-top: 64px;
}
dt.question_item {
  width: 293px;
  position: relative;
  font-weight: 700;
  font-size: 20px;
  line-height: 150%;
  color: #29B183;
  padding-left: 85px;
}
dt.question_item::before {
  content: "";
  display: block;
  position: absolute;
  background: url(./img/q.svg) no-repeat center;
  background-size: 100% auto;
  width: 62px;
  height: 62px;
  left: 0;
}
dd.answer_item {
  width: 426px;
  position: relative;
  font-weight: 400;
  font-size: 15px;
  line-height: 180%;
  color: #3A3A3C;
  padding-left: 42PX;
}
dd.answer_item::before {
  content: "";
  display: block;
  position: absolute;
  background: url(./img/a.svg) no-repeat center;
  background-size: 100% auto;
  width: 30px;
  height: 30px;
  left: 0;
}
a.more_btn {
  font-weight: 700;
  font-size: 14px;
  line-height: 200%;
  color: #29B183;
  border: 1px solid #29b183;
  border-radius: 100vh;
  padding: 17px 73px 17px 57px;
  display: block;
  margin: 31px auto 0;
  width: 335px;
  position: relative;
}
a.more_btn::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(./img/btn_arrow.svg) no-repeat center;
  background-size: 100% auto;
  width: 14px;
  height: 8px;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 8px;
}
.more_btn_pc_visible {
  display: inline;
  color: inherit;
  font-size: inherit;
}
@media screen and (max-width: 768px) {
  .sec_faq {
    min-width: unset;
    background: #f1f1f1;
    margin: 0 0 0 0;
    padding: 0;
    width: 100%;
  }
  .sec_faq .faq_coverBox {
    background: #f1f1f1;
    padding: 70px 4.2vw 68px;
  }
  .sec_faq .qa_cover {
    background: #fff;
  }
  dt.question_item {
    margin-bottom: 24px;
  }
  dd.answer_item {
    width: 293px;
  }
}
@media screen and (max-width:640px) {
  .sec_advice {
    min-width: unset;
    width: 95%;
  }
  .beauty .sec_advice_box.sec_faq {
    background: #fff1f0;
  }
  .sec_advice_box div.qa_cover {
    padding: 32px 5.86vw 28px;
    background: #fff;
  }
  .sec_advice_box.sec_faq h2 {
    text-align: center;
    padding: 0;
    font-size: 5.87vw;
    border-left: none;
    position: relative;
  }
  .sec_advice_box.sec_faq h2::after {
    content: "";
    display: block;
    position: relative;
    width: 45px;
    height: 3px;
    background: #29b183;
    bottom: -15px;
    margin: 0 auto;
  }
  dt.question_item {
    width: 100%;
    font-size: 4.8vw;
    margin-bottom: 24px;
    padding-left: 20vw;
  }
  dt.question_item::before {
    width: 16.53vw;
    height: 16.53vw;
    top: -4px;
  }
  dd.answer_item {
    width: 100%;
    font-size: 3.73vw;
    padding-left: 9.6vw;
  }
  dd.answer_item::before {
    width: 8vw;
    height: 8vw;
    top: -1px;
  }
  a.more_btn {
    width: 234px;
    text-align: center;
    background: #fff;
    padding: 10px 0;
  }
  a.more_btn::after {
    margin-left: 47px;
  }
  .more_btn_pc_visible {
    display: none;
  }
}
/* price section */
.sec_advice_box.price {
  padding-bottom: 58px;
}
.sec_advice_box div.price_inner {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 35px;
  align-items: center;
}
.sec_advice_box div.price_col_1 {
  width: 35%;
  text-align: center;
}
.sec_advice_box div.price_col_1 .faq_ttl {
  font-size: 33px;
  line-height: 180%;
  text-align: center;
  color: #3a3a3c;
}
.sec_advice_box div.price_comment {
  font-size: 19px;
  line-height: 140%;
  color: #3A3A3C;
}
.sec_advice_box div.price_comment {
  font-size: 19px;
  line-height: 140%;
  color: #3A3A3C;
  background: url(./img/price_border.svg) no-repeat;
  background-size: 100% auto;
}
.sec_advice_box div.price_col_2 {
  width: 65%;
}
.sec_advice_box div.price_col_2 .faq_ttl {
  font-size: 25px;
  line-height: 36px;
  color: #3A3A3C;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
}
.txt_green {
  font-size: 83px;
  color: #29B183;
  font-family: 'Arial';
  margin-top: 10px;
}
.txt_yen {
  font-size: 28px;
}
.price_comment {
  font-size: 19px;
  line-height: 140%;
  color: inherit;
  font-weight: 700;
  margin-top: 10px;
  position: relative;
  letter-spacing: initial;
}
.price_comment::after {
  content: "";
  display: block;
  position: absolute;
  background: url(./img/price_border.svg) no-repeat center;
  background-size: 100% auto;
  width: 63%;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sec_advice_box ul.price_list {
  margin: 10px auto 17px;
  width: 433px;
}
.price_list li {
  font-family: 'Arial';
  font-style: normal;
  font-weight: 700;
  font-size: 27px;
  line-height: 180%;
  text-align: right;
  color: #333333;
  border-bottom: 2px solid #DDDDDD;
  margin-bottom: 0;
  font-feature-settings: "palt";
  justify-content: center;
  padding: 0 50px;
}
.price_list li .unit {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-size: 15px;
  line-height: 280%;
  color: #333333;
  margin-right: 7px;
  margin-left: 3px;
}
.price_list li .price {
  font-family: 'Arial';
  font-style: normal;
  font-weight: 700;
  font-size: 33px;
  line-height: 180%;
  color: #29B183;
  margin-right: 1px;
}
.sec_advice_box ul.price_apdx {
  width: 60%;
  margin: 0 auto;
  margin-top: 15px;
}
.price_apdx li {
  font-size: 14px;
  font-weight: 400;
  line-height: 180%;
  color: #3A3A3C;
  margin-bottom: 0;
}
.price_apdx li::before {
  content: "●";
  font-size: 12px;
  position: relative;
  display: inline;
  color: #29b183;
  margin-right: 5px;
}
.sec_advice_box div.price_bnr_sec {
  background: linear-gradient(89deg, #00A670 35.55%, rgba(0, 200, 92, 0.69) 139.65%);
  border-radius: 20px;
  width: 760px;
  /* height: 170px; */
  margin: 0 auto;
  position: relative;
}
.sec_advice_box div.price_bnr_sec::after {
  content: "";
  background: url(./img/price_bnr.svg) no-repeat left bottom;
  background-size: auto 103%;
  width: 155px;
  height: 179px;
  display: block;
  position: absolute;
  bottom: -7px;
}
.sec_advice_box div.bnr_inner {
  padding: 17px 21px;
  padding-left: 170px;
  margin-top: 0;
}
.bnr_ttl {
  font-weight: 700;
  font-size: 27px;
  line-height: 200%;
  color: #FFFFFF;
}
.en_txt {
  position: relative;
  color: #fff;
  font-size: 29px;
  letter-spacing: 0.05em;
}
.en_txt::after {
  content: "";
  display: block;
  position: absolute;
  width: 105%;
  height: 9px;
  background: -moz-linear-gradient(-0.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
  background: -webkit-linear-gradient(-0.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
  background: linear-gradient(90.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
}
.bnr_ttl > .small_txt {
  line-height: 200%;
  letter-spacing: 0.1em;
  color: #fff;
  font-size: 18px;
}
.sec_advice_box div.bnr_contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 18px;
}
.bnr_detail {
  font-weight: 700;
  font-size: 17px;
  line-height: 150%;
  color: #FFFFFF;
  text-align: left;
  width: 356px;
  letter-spacing: initial;
}
.bnr_detail span {
  font-size: 14px;
  color: #fff;
  font-feature-settings: "palt";
}
.bnr_innerBtn span {
  width: 200px;
  height: 50px;
  font-weight: 700;
  font-size: 14px;
  line-height: 200%;
  color: #00A871;
  text-align: center;
  background: #FFFFFF;
  border: 2px solid #29B183;
  border-radius: 100vh;
  display: table-cell;
  vertical-align: middle;
  letter-spacing: initial;
  position: relative;
}
.bnr_innerBtn span::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(./img/btn_arrow_right.svg) no-repeat center;
  background-size: 100% auto;
  width: 6.12px;
  height: 10px;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 8px;
}
.bnr_innerBtn a.more_btn::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(./img/btn_arrow.svg) no-repeat center;
  background-size: 100% auto;
  width: 14px;
  height: 8px;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 8px;
}
@media screen and (max-width: 768px) {
  .price_comment::after {
    width: 28vw;
  }
  .bnr_innerBtn {
    margin-top: 17px;
  }
}
@media screen and (max-width: 640px) {
  .sec_advice_box.price h2 {
    margin-top: 27px;
    margin-left: 13.3vw;
    font-size: 6.67vw;
  }
  .sec_advice_box.price h3 {
    margin-top: 0;
  }
  .sec_advice_box div.price_col_1, .sec_advice_box div.price_col_2 {
    width: 100%;
  }
  .sec_advice_box div.price_col_2 {
    margin-top: 37.5px;
  }
  .sec_advice_box ul.price_list {
    width: 100%;
  }
  .sec_advice_box.price {
    padding: 0;
    margin-bottom: 32px;
  }
  .sec_advice_box div.price_col_1 .faq_ttl {
    font-size: 28px;
  }
  .txt_green {
    font-size: 78px;
    margin: 0px 7px 0 11px;
  }
  .price_comment {
    font-size: 14px;
    margin-top: 21px;
  }
  .price_comment::after {
    width: 149px;
    height: 100%;
  }
  .sec_advice_box div.price_inner {
    padding: 0 6.67vw 25px;
    margin-bottom: 0;
  }
  .price_list li {
    font-size: 5.33vw;
    text-align: right;
    padding: 0;
  }
  .price_list li:first-child {
    border-top: 2px solid #DDDDDD;
  }
  .price_list li .unit {
    font-size: 3.73vw;
    margin: 0 4.53vw 0 0.27vw;
  }
  .price_list li .price {
    font-size: 5.87vw;
    margin-right: 0.27vw;
  }
  .sec_advice_box ul.price_apdx {
    width: 100%;
  }
  .price_apdx li {
    font-size: 3.2vw;
    letter-spacing: initial;
  }
  .price_apdx li::before {
    font-size: 2.67vw;
    margin-right: 1.87vw;
  }
  .sec_advice_box div.price_bnr_sec {
    border-radius: 0;
    width: 100%;
    height: auto;
    padding: 25px 3.2vw 19px 7.2vw;
  }
  .sec_advice_box div.bnr_inner {
    padding: 0;
  }
  .sec_advice_box div.price_bnr_sec::after {
    content: "";
    background: url(./img/price_bnr.svg) no-repeat left bottom;
    background-size: 100% auto;
    width: 21.5vw;
    height: 21.86vw;
    display: block;
    position: absolute;
    top: 21px;
    left: 15px;
  }
  .bnr_ttl {
    padding-left: 20.5vw;
    font-size: 5.33vw;
    letter-spacing: initial;
    line-height: 180%;
  }
  .en_txt {
    font-size: 6.13vw;
    letter-spacing: initial;
  }
  .en_txt::after {
    content: "";
    display: block;
    position: absolute;
    width: 105%;
    height: 7px;
    background: -moz-linear-gradient(-0.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
    background: -webkit-linear-gradient(-0.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
    background: linear-gradient(90.07deg, rgba(255, 218, 26, 0) -58.75%, rgba(255, 218, 26, 0.79) 33.57%, rgba(255, 218, 26, 0.55) 90.27%);
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
  }
  .bnr_ttl > .small_txt {
    font-size: 4.8vw;
  }
  .bnr_detail {
    width: 100%;
    margin-bottom: 13px;
    font-size: 3.73vw;
  }
  .bnr_detail span {
    font-size: 3.73vw;
  }
  .bnr_innerBtn {
    width: 224px;
    margin: 0 auto;
  }
  .bnr_innerBtn span {
    width: 224px;
  }
}
@media screen and (max-width: 320px) {
  .price_list li span:last-of-type {
    margin-right: 0;
  }
}
/* ****** sec_function ***** */
.function {
  background: #EFFCF8;
  padding: 64px 0 0;
  min-width: 1200px;
}
.function_inner {
  margin-bottom: 95px;
}
.function_item {
  max-width: 1120px;
  background: #fff;
  border-radius: 20px;
  padding: 0 0 0 84px;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 46px;
}
.function_item.item2 {
  flex-direction: row-reverse;
  padding: 45px 70px 0 0;
}
.function_item.item3 {
  padding: 45px 0 0 70px;
}
.function_item_imgBox {
  width: 61.3%;
  display: flex;
  align-items: end;
}
.function_item_txtBox {
  width: 35.4%;
  padding-top: 41px;
  text-align: left;
}
.item1 .function_item_txtBox {
  padding-top: 76px;
}
.item2 .function_item_imgBox, .item3 .function_item_imgBox {
  width: 50%;
}
.item2 .function_item_txtBox, .item3 .function_item_txtBox {
  width: 43.5%;
  padding-top: 8px;
}
.function_item_imgBox img {
  width: 100%;
  height: auto;
  display: block;
}
.item1 .function_item_imgBox img, .item3 .function_item_imgBox img {
  border-radius: 0 0 20px 0;
}
.item1 .function_item_imgBox img {
  margin-top: 35px;
}
.item1 .function_item_txtBox {
  width: 355px;
}
.item1 .function_item_imgBox {
  width: 673px;
}
.item2 .function_item_imgBox img {
  border-radius: 0 0 0 20px;
}
.function_item_header {
  font-size: 22px;
  line-height: 1.6;
  margin-bottom: 27px;
  text-align: left;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.sec_action_inner .function_item_header {
  text-align: center;
  letter-spacing: initial;
  margin-bottom: 30px;
}
.function_item_txtBox p {
  text-align: justify;
  font-size: 15px;
  line-height: 2.0;
  letter-spacing: initial;
  margin-bottom: 34px;
}
.connection_img {
  position: relative;
  top: 7px;
}
.connection_img img {
  width: 524px;
  margin: 0 auto;
}
.sec_action_inner {
  width: 725px;
  margin: 0 auto;
}
.function_bottom.sec_action {
  background: #fff;
  padding: 34px 0 47px;
}
.sec_action_btn_box {
  display: flex;
  width: 725px;
  margin: 0 auto 30px;
  justify-content: space-between;
}
.sec_action_btn_box a.request, .sec_action_btn_box a.trial {
  width: 344px;
  height: 70px;
  font-size: 20px;
  padding: 14px 0 0 93px;
}
.sec_action_btn_box a.request {
  border: 2px solid #28b183;
}
.sec_action_btn_box a.request span {
  color: #24A878;
}
.sec_action_btn_box a.trial {
  padding: 14px 0 0 80px;
}
.sec_action_btn_box a.trial .filter-shadow {
  color: inherit;
}
.sec_action_btn_box a.request::after, .sec_action_btn_box a.trial::after {
  width: 9px;
  height: 9px;
  right: 50px;
}
.sec_action_apdxTxt {
  position: relative;
  left: 26.5%;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.sec_action_apdxTxt .red {
  color: #FF871A;
  font-weight: 500;
}
.sec_action_apdxTxt .red .num {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: bold;
  font-size: 19px;
  color: inherit;
}
.sec_action_apdxTxt::before, .sec_action_apdxTxt::after {
  content: "";
  display: inline-block;
  position: relative;
  width: 11px;
  height: 15.89px;
  background: url(img/line-left.svg) no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
  margin-right: 6px;
}
.sec_action_apdxTxt::after {
  background: url(img/line-right.svg) no-repeat;
  margin-left: 6px;
}
.msg_box {
  display: flex;
  width: 600px;
  margin: 0 auto 18.3px;
  justify-content: space-between;
}
.msg_box_header {
  letter-spacing: 0.02em;
  position: relative;
  margin-bottom: 25px;
  font-size: 22px;
}
.msg_box_header::after {
  content: "";
  display: block;
  position: absolute;
  width: 104%;
  height: 7px;
  background: -moz-linear-gradient(0.31deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  background: -webkit-linear-gradient(0.31deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  background: linear-gradient(89.69deg, rgba(255, 232, 29, 0) -39.43%, rgba(255, 246, 26, 0.66) 40.3%, rgba(255, 246, 26, 0.658999) 40.32%, rgba(255, 216, 10, 0.55) 89.26%);
  bottom: -14px;
  left: 50%;
  transform: translate(-50%);
  z-index: 0;
}
.msg_box_txtBox {
  padding-top: 58px;
}
.msg_box_txtBox p {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.msg_detail {
  line-height: 2.0;
  text-align: center;
}
.pc-position {
  display: inline-block;
}
.sp-position {
  display: none;
}
@media screen and (max-width: 768px) {
  .function {
    min-width: unset;
    width: 100%;
  }
  .function_item {
    width: 90%;
    justify-content: center;
    padding: 0;
    max-width: 400px;
    flex-wrap: wrap;
  }
  .item1 .function_item_imgBox img {
    margin-top: 0;
  }
  .item2 .function_item_txtBox, .item3 .function_item_txtBox {
    padding: 0;
  }
  .function_item_txtBox, .function_item.item2, .function_item.item3 {
    padding: 0;
    padding-top: 30px;
  }
  .function_item_txtBox, .item2 .function_item_txtBox, .item3 .function_item_txtBox {
    width: 86%;
  }
  .item1 .function_item_txtBox {
    padding-top: 30px;
  }
  .item2 .function_item_txtBox, .item3 .function_item_txtBox {
    margin-bottom: 34px;
  }
  .function_item_imgBox, .item2 .function_item_imgBox, .item3 .function_item_imgBox {
    width: 100%;
  }
  .function_item_imgBox {
    padding: 0 0 0 3.85vw;
  }
  .item2 .function_item_imgBox {
    padding: 0 4.74vw 0 0;
  }
  .function_item_header {
    text-align: center;
    font-size: 18px;
    margin-bottom: 19px;
  }
  .function_item_txtBox p {
    margin-bottom: 11px;
  }
  .txt_link.no_border {
    font-size: 13px;
  }
  .function_inner {
    margin-bottom: 60px;
  }
  .connection_img img {
    width: 91.5%;
    max-width: 500px;
    margin: 0 auto;
  }
  .function_bottom.sec_action {
    padding: 44px 0 79px;
  }
  .sec_action_inner {
    width: 100%;
  }
  .sec_action_inner .function_item_header {
    line-height: 1.8;
    margin-bottom: 38px;
  }
  .sec_action_btn_box {
    display: flex;
    width: 100%;
    margin: 0 auto 40px;
    align-content: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .sec_action_btn_box a.request {
    margin-right: 0;
    padding: 12px 0 0 80px;
    width: 280px;
    height: 60px;
    font-weight: 700;
    font-size: 16px;
    line-height: 2.0;
    letter-spacing: 0.05em;
    border: 2px solid #28b183;
  }
  .sec_action_btn_box a.trial {
    margin-bottom: 23px;
    padding: 14px 0 0 70px;
    width: 280px;
    height: 60px;
    font-weight: 700;
    font-size: 15px;
    line-height: 2.0;
    letter-spacing: 0.05em;
  }
  .sec_action_btn_box a.trial::after, .sec_action_btn_box a.request::after {
    display: block;
    width: 6px;
    height: 6px;
    right: 59.5px;
  }
  .sec_action_btn_box a.request::after {
    right: 73px;
    top: 29px;
  }
  .sec_action_btn_box a.trial .filter-shadow {
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.25));
    color: inherit;
  }
  .pc-position {
    display: none;
  }
  .sp-position {
    display: inline-block;
  }
  .sec_action_apdxTxt {
    left: 0;
    margin-bottom: 9px;
    font-size: 14px;
    letter-spacing: 0.05em;
  }
  .sec_action_apdxTxt .red .num {
    font-size: 17px;
    font-weight: bold;
    vertical-align: initial;
    letter-spacing: -0.07em;
  }
  .msg_box {
    width: 100%;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    position: relative;
  }
  .msg_box_header {
    font-size: 21px;
    line-height: 1.5;
    margin-bottom: 34px;
  }
  .msg_box_header::after {
    bottom: -10px;
    width: 83%;
  }
  .msg_box_txtBox {
    padding-top: 24px;
  }
  .msg_box_txtBox p {
    font-size: 17px;
    letter-spacing: initial;
  }
  .msg_detail {
    font-size: 13px;
    width: 78%;
    max-width: 400px;
    margin: 0 auto;
    text-align: left;
    letter-spacing: initial;
  }
}
@media screen and (max-width: 425px) {
  .function_item_header {
    font-size: 4.24vw;
  }
}