@charset "UTF-8";

/*all----------------------------*/
html {
  font-size: 62.5%;
}

body {
  -webkit-tap-highlight-color: transparent;
}

#Wrap {
  width: auto;
}

footer {
  position: relative;
  z-index: 2;
}

.nav-top {
  display: none;
  z-index: 5;
}

:root {
  --font_sans: "Noto Sans JP", sans-serif;
  --font_serif: "Noto Serif JP", serif;
  --font_cursive: "La Belle Aurore", cursive;
  --color_01: #00693E;
  --color_02: #E7F3E7;
  --color_03: #E7F3F3;
  --color_04: #FFF1DE;
  --color_05: #FFEFF1;
  --color_bg: #FFFDEF;
  --color_regular: #333;
}

.LP_page * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1;
  letter-spacing: .05em;
}

.LP_page {
  padding: 4rem 0 10rem;
  background: var(--color_bg);
  font-family: var(--font_sans);
  color: var(--color_regular);
  overflow-x: clip;
  opacity: 0;
  transition: opacity 1s;
}

.LP_page.active {
  opacity: 1;
}

.LP_page picture {
  display: block;
  font-size: 0;
}

.LP_page a {
  display: block;
}

.LP_page a:hover {
  opacity: 1 !important;
}

.LP_page img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.LP_page .activePoint,
.LP_page .activeDelay {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 1s, transform 1s;
}

.LP_page .activeDelay.delay1 {
  transition-delay: .2s;
}

.LP_page .activeDelay.delay2 {
  transition-delay: .4s;
}

.LP_page .activeDelay.delay3 {
  transition-delay: .6s;
}

.LP_page .activeDelay.delay4 {
  transition-delay: .8s;
}

.LP_page .activePoint.active,
.LP_page .activePoint.active > .activeDelay {
  opacity: 1;
  transform: unset;
}
/*----------------------------all*/

/*main title, main lead----------*/
.main_ttl {
  margin-bottom: 4rem;
}

.main_ttl .logo {
  display: block;
  width: 17rem;
  margin: 0 auto 2.5rem;
}

.main_ttl .ttl {
  display: block;
  width: 63rem;
  margin: 0 auto;
}

.main_lead_ttl {
  margin-bottom: 2.5rem;
  font-family: var(--font_serif);
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

.main_lead {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  line-height: 2;
  text-align: center;
}

/*----------main title, main lead*/

/*about--------------------------*/
.each_sec {
  padding: 5rem 0;
}

.each_sec .sec_ttl {
  margin-bottom: 3rem;
  font-family: var(--font_cursive);
  font-size: 6rem;
  font-weight: 400;
  letter-spacing: 0;
  text-align: center;
}

.each_sec .sec_ttl span {
  display: block;
  transform: rotate(-6deg);
}

.about_table {
  display: flex;
  justify-content: center;
  gap: 3rem;
  margin-bottom: 4rem;
}

.about_table li {
  position: relative;
  padding: 1rem 1.5rem;
  font-family: var(--font_serif);
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 500;
  cursor: pointer;
  transition: background-color .3s, box-shadow .3s;
}

.about_table li.selected {
  box-shadow: 0 0 5px rgba(0, 0, 0, .2);
}

.about_table li.selected:nth-of-type(1) {
  background: var(--color_02);
}

.about_table li.selected:nth-of-type(2) {
  background: var(--color_03);
}

.about_table li.selected:nth-of-type(3) {
  background: var(--color_04);
}

.about_table li::before,
.about_table li::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: var(--color_01);
  content: "";
}

.about_table li::before {
  width: .4rem;
}

.about_table li::after {
  width: .1rem;
  margin-left: .7rem;
}

.about_list.loading {
  height: 42rem;
  overflow: hidden;
}

.about_list .slick-track {
  display: flex;
}

.about_list .slick-slide {
  height: auto !important;
}

.each_about {
  position: relative;
  z-index: 1;
  width: 80rem;
  margin: 0 2.5rem;
  padding: 3rem 6rem 4rem;
}

.each_about::before,
.each_about::after {
  position: absolute;
  z-index: -1;
  left: 0;
  width: 100%;
  height: 51%;
  mask-image: url(../img/bg_horizontal.svg);
  mask-size: 100% auto;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(../img/bg_horizontal.svg);
  -webkit-mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
  content: "";
}

.each_about::before {
  top: 0;
  mask-position: top center;
  -webkit-mask-position: top center;
}

.each_about::after {
  bottom: 0;
  mask-position: bottom center;
  -webkit-mask-position: bottom center;
}

.about_001::before,
.about_001::after {
  background: var(--color_02);
}

.about_002::before,
.about_002::after {
  background: var(--color_03);
}

.about_003::before,
.about_003::after {
  background: var(--color_04);
}

.content_ttl {
  font-family: var(--font_serif);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}

.each_about .content_ttl {
  margin-bottom: 2.5rem;
}

.each_about > div {
  display: flex;
  align-items: center;
  gap: 3.5rem;
}

.each_about .about_img {
  width: 26rem;
}

.each_about .about_txt {
  flex: 1;
  font-size: 1.4rem;
  line-height: 1.75;
}

.each_about .about_txt .notes {
  font-size: 1.1rem;
}

.each_about .about_txt .align_right {
  display: block;
  margin-top: .8rem;
  text-align: right;
}

.about_list .slick-prev {
  margin-left: -41.5rem;
  border-bottom: solid var(--color_regular);
  border-left: solid var(--color_regular);
}

.about_list .slick-next {
  margin-left: 41.5rem;
  border-top: solid var(--color_regular);
  border-right: solid var(--color_regular);
}

.about_list .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 3rem;
  height: 3rem;
  border-width: .1rem;
  content: "";
}

.about_list .slick-arrow::before {
  display: none;
}
/*--------------------------about*/

/*staff review-------------------*/
.review_area .content_ttl {
  margin-bottom: 5.5rem;
}

.review_table {
  display: flex;
  justify-content: center;
  gap: 2.5rem;
  margin-bottom: 4rem;
}

.review_table li a {
  position: relative;
  display: flex;
  gap: 1rem;
  width: 23rem;
  padding-left: 1rem;
  background: #fff;
  box-shadow: 1px 3px 5px rgba(0, 0, 0, .2);
}

.review_table li .staff_img {
  position: relative;
  width: 10rem;
  height: fit-content;
  margin-top: -1rem;
}

.review_table li .staff_img::before {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: .8rem;
  height: .8rem;
  margin-top: .5rem;
  border-right: solid var(--color_regular);
  border-bottom: solid var(--color_regular);
  border-width: .1rem;
  content: "";
  transition: margin .3s;
}

.review_table li a:hover .staff_img::before {
  margin-top: 1rem;
}

.staff_skin-type {
  position: relative;
  z-index: 1;
  width: fit-content;
}

.review_table li .staff_skin-type {
  position: absolute;
  top: 0;
  left: 0;
  margin: -2rem 0 0 10rem;
}

.review_table li a:hover .staff_skin-type {
  transform: rotate(8deg);
}

.staff_skin-type::before,
.staff_skin-type::after {
  position: absolute;
  z-index: -1;
  left: 0;
  width: 100%;
  height: 51%;
  mask-image: url(../img/bg_horizontal.svg);
  mask-size: 100% auto;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(../img/bg_horizontal.svg);
  -webkit-mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
  content: "";
}

.staff_skin-type::before {
  top: 0;
  margin: .3rem 0 0 .3rem;
  mask-position: top center;
  -webkit-mask-position: top center;
}

.staff_skin-type::after {
  bottom: 0;
  margin: 0 0 -.3rem .3rem;
  mask-position: bottom center;
  -webkit-mask-position: bottom center;
}

.staff_skin-type.sensitiveSkin::before,
.staff_skin-type.sensitiveSkin::after {
  background: var(--color_03);
}

.staff_skin-type.mixedSkin::before,
.staff_skin-type.mixedSkin::after {
  background: var(--color_04);
}

.staff_skin-type.drySkin::before,
.staff_skin-type.drySkin::after {
  background: var(--color_02);
}

.staff_skin-type span {
  position: relative;
  display: block;
  border: solid var(--color_01);
  border-width: .1rem;
  padding: .6rem 2.5rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--color_01);
}

.staff_skin-type span::after {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: .4rem;
  height: .4rem;
  margin: -.4rem 0 0 .6rem;
  border: solid var(--color_01);
  border-width: .1rem;
  border-radius: 50%;
  background: var(--color_bg);
  content: "";
}

.staff_skin-type span::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: rotate(-34deg);
  transform-origin: center left;
  width: .6rem;
  height: .2rem;
  margin-top: .2rem;
  border-radius: 1rem;
  background: var(--color_01);
  content: "";
}

.staff_name_wrap {
  flex: 1;
  display: flex;
  align-items: center;
  height: 11.5rem;
}

.staff_name {
  font-size: 1.2rem;
  line-height: 1.5;
}

.staff_name_wrap .staff_name {
  padding-bottom: 1rem;
}

.staff_name .num {
  font-family: var(--font_serif);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0;
}

.each_staff {
  width: 110rem;
  margin: 0 auto;
  padding: 6rem 10rem 0;
}

.each_staff:nth-of-type(n+2) {
  margin-top: 8rem;
  border-top: dotted rgba(51, 51, 51, .5);
  border-width: .1rem;
}

.staff_profile_wrap {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 3.5rem;
  margin-bottom: -6rem;
}

.staff_profile_wrap .staff_img {
  width: 21rem;
  border-radius: 50%;
  overflow: clip;
}

.staff_profile_wrap .txt_wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 15rem;
}

.staff_profile_wrap .staff_skin-type {
  margin-bottom: 1.2rem;
}

.staff_profile_wrap .staff_skin-type::before {
  margin: .4rem 0 0 .4rem;
}

.staff_profile_wrap .staff_skin-type::after {
  margin: 0 0 -.4rem .4rem;
}

.staff_profile_wrap .staff_skin-type span {
  padding: 1.1rem 3.6rem 1rem;
  font-size: 2rem;
}

.staff_profile_wrap .staff_skin-type span::after {
  width: .7rem;
  height: .7rem;
  margin: -.5rem 0 0 .8rem;
}

.staff_profile_wrap .staff_skin-type span::before {
  width: .8rem;
  height: .2rem;
  margin-top: .4rem;
}

.staff_profile_wrap .staff_name {
  font-size: 1.6rem;
}

.staff_profile_wrap .staff_name .num {
  margin-right: 1rem;
  font-size: 3rem;
}

.staff_comment {
  width: 63rem;
  border-radius: 2rem;
  border: dotted rgba(0, 105, 62, .5);
  border-width: .1rem;
  margin: 0 auto 5.5rem;
  padding: 3.5rem 5rem;
  background: #fff;
  font-size: 1.4rem;
  line-height: 1.75;
}

.review_list {
  margin-bottom: 10rem;
  padding: 0 13.5rem;
}

.review_list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.review_list li:nth-of-type(n+2) {
  margin-top: 3rem;
}

.review_list li:nth-of-type(odd) .review_img {
  order: 2;
}

.review_img {
  position: relative;
  z-index: 1;
  width: 28rem;
}

.review_img::before {
  position: absolute;
  z-index: -1;
  top: 0;
  width: 31rem;
  height: 31rem;
  mask-image: url(../img/bg_square.svg);
  mask-size: cover;
  mask-repeat: no-repeat;
  mask-position: center center;
  -webkit-mask-image: url(../img/bg_square.svg);
  -webkit-mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  content: "";
}

.review_list li:nth-of-type(odd) .review_img::before {
  left: 0;
  transform: rotate(5deg);
}

.review_list li:nth-of-type(even) .review_img::before {
  right: 0;
  transform: rotate(-5deg);
}

#Staff01 .review_list li:nth-of-type(1) .review_img::before {
  background: var(--color_02);
}

#Staff01 .review_list li:nth-of-type(2) .review_img::before {
  background: var(--color_04);
}

#Staff02 .review_list li:nth-of-type(1) .review_img::before {
  background: var(--color_03);
}

#Staff02 .review_list li:nth-of-type(2) .review_img::before {
  background: var(--color_02);
}

#Staff03 .review_list li:nth-of-type(1) .review_img::before {
  background: var(--color_04);
}

#Staff03 .review_list li:nth-of-type(2) .review_img::before {
  background: var(--color_03);
}

#Staff04 .review_list li:nth-of-type(1) .review_img::before {
  background: var(--color_02);
}

#Staff04 .review_list li:nth-of-type(2) .review_img::before {
  background: var(--color_03);
}

.review_txt {
  position: relative;
  z-index: 2;
  flex: 1;
}

.review_txt dt {
  position: relative;
  margin-bottom: .8rem;
  padding-bottom: .8rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
}

.review_list li:nth-of-type(even) dt {
  text-align: right;
}

.review_txt dt::before {
  position: absolute;
  bottom: 0;
  width: calc(100% + 2rem);
  height: .1rem;
  background: var(--color_01);
  content: "";
}

.review_list li:nth-of-type(odd) .review_txt dt::before {
  left: 0;
}

.review_list li:nth-of-type(even) .review_txt dt::before {
  right: 0;
}

.review_txt dd {
  width: 30rem;
  font-size: 1.4rem;
  line-height: 1.75;
}

.review_list li:nth-of-type(even) dd {
  margin: 0 0 0 auto;
}

.itm_list_wrap {
  position: relative;
  z-index: 1;
  padding: 4rem 0;
}

.itm_list_wrap::before,
.itm_list_wrap::after {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 51%;
  mask-image: url(../img/bg_horizontal.svg);
  mask-size: 100% auto;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(../img/bg_horizontal.svg);
  -webkit-mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat;
  content: "";
}

.itm_list_wrap::before {
  top: 0;
  mask-position: top center;
  -webkit-mask-position: top center; 
}

.itm_list_wrap::after {
  bottom: 0;
  mask-position: bottom center;
  -webkit-mask-position: bottom center;
}

#Staff01 .itm_list_wrap::before,
#Staff01 .itm_list_wrap::after {
  background: var(--color_03);
}

#Staff02 .itm_list_wrap::before,
#Staff02 .itm_list_wrap::after {
  background: var(--color_04);
}

#Staff03 .itm_list_wrap::before,
#Staff03 .itm_list_wrap::after {
  background: var(--color_02);
}

#Staff04 .itm_list_wrap::before,
#Staff04 .itm_list_wrap::after {
  background: var(--color_04);
}

.itm_list_wrap h3 {
  position: relative;
  margin-bottom: 2rem;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
}

.itm_list_wrap h3 .txt_eng {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%) rotate(-2deg);
  margin-bottom: 1rem;
  font-family: var(--font_cursive);
  font-size: 4.6rem;
  font-weight: 400;
  opacity: .8;
  white-space: nowrap;
}

.itm_list {
  display: flex;
  gap: 2rem;
  overflow-x: scroll;
  padding: 1rem 3rem;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.itm_list::-webkit-scrollbar {
  display:none;
}

.itm_list.centered {
  justify-content: center;
}

.itm_list li a {
  display: flex;
  flex-direction: column;
  width: 19rem;
  height: 100%;
  background: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, .2);
}

.itm_list li .txt_wrap {
  flex: 1;
  position: relative;
  padding-bottom: 4rem;
}

.itm_list li .itm_cat {
  margin-bottom: .8rem;
  padding: .2rem 1rem;
  background: #E5E5E5;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
}

.itm_list li .txt_wrap > div {
  padding: 0 1rem;
}

.itm_list li .itm_name {
  margin-bottom: .8rem;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 500;
}

.itm_list li .itm_price {
  font-size: 1.4rem;
}

.itm_list li .itm_price .txt_S {
  font-size: 1.1rem;
}

.itm_list li .itm_link {
  position: absolute;
  bottom: 0;
  right: 0;
  width: fit-content;
  margin: 0 1rem 1rem 0;
  padding-bottom: .8rem;
}

.itm_list li .itm_link::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: .2rem;
  background: var(--color_01);
  content: "";
  transform-origin: center left;
}

.itm_list li .itm_link::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: .1rem;
  margin-bottom: .4rem;
  background: var(--color_01);
  content: "";
  transform-origin: center left;
}

.itm_list li a:hover .itm_link::before,
.itm_list li a:hover .itm_link::after {
  animation: .8s line forwards;
  transform: scaleX(0);
}

.itm_list li a:hover .itm_link::after {
  animation-delay: .2s;
}

@keyframes line {
  0% {
    transform: scaleX(0);
  }

  100% {
    transform: scaleX(1);
  }
}

.itm_list li .itm_link span {
  padding-right: 2rem;
  font-family: var(--font_serif);
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--color_01);
}

.itm_list li .itm_link span::before {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 1.2rem;
  height: .1rem;
  background: var(--color_01);
  content: "";
  transition: margin .3s;
}

.itm_list li .itm_link span::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
  width: .6rem;
  height: .6rem;
  border-top: solid var(--color_01);
  border-right: solid var(--color_01);
  border-width: .1rem;
  content: "";
  transition: margin .3s;
  box-sizing: border-box;
}

.itm_list li a:hover .itm_link span::before,
.itm_list li a:hover .itm_link span::after {
  margin-right: -.5rem;
}
/*-------------------staff review*/

/*conversion button--------------*/
.btn_conversion_wrap {
  width: fit-content;
  margin: 5rem auto 0;
}

.btn_conversion_wrap a {
  position: relative;
  display: flex;
  align-items: center;
  width: 60rem;
  height: 10rem;
  padding-left: 24.5rem;
  background: #fff;
  box-shadow: 1px 3px 6px rgba(0, 0, 0, .2);
}

.btn_conversion_wrap a::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 22.4rem;
  height: 100%;
  background: url(../img/img_001.jpg) center center/ cover no-repeat;
  content: "";
}

.btn_conversion_wrap a span {
  position: relative;
  padding-right: 10.5rem;
  font-family: var(--font_serif);
  font-size: 2rem;
  font-weight: 500;
  color: var(--color_01);
}

.btn_conversion_wrap a span::before {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 8.4rem;
  height: .1rem;
  background: var(--color_01);
  content: "";
  transition: margin .3s;
}

.btn_conversion_wrap a:hover span::before,
.btn_conversion_wrap a:hover span::after {
  margin-right: -1rem;
}

.btn_conversion_wrap a span::after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
  width: 1.2rem;
  height: 1.2rem;
  border-top: solid var(--color_01);
  border-right: solid var(--color_01);
  border-width: .1rem;
  content: "";
  transition: margin .3s;
  box-sizing: border-box;
}
/*--------------conversion button*/

/*fixed nav----------------------*/
.fixed_nav_wrap {
  position: fixed;
  z-index: 3;
  bottom: 0;
  width: 100%;
  background: #fff;
  transform: translateY(100%);
  transition: transform .3s;
}

.fixed_nav_wrap.active {
  transform: unset;
}

.fixed_nav_wrap ul {
  display: flex;
  width: fit-content;
  margin: 0 auto;
  border-left: solid rgba(51, 51, 51, .3);
  border-right: solid rgba(51, 51, 51, .3);
  border-width: .1rem;
}

.fixed_nav_wrap li:nth-of-type(n+2) {
  border-left: solid rgba(51, 51, 51, .3);
  border-width: .1rem;
}

.fixed_nav_wrap li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: 22.5rem;
  height: 8rem;
}

.fixed_nav_wrap li a::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: .4rem;
  background: var(--color_01);
  content: "";
  pointer-events: none;
  transform-origin: center left;
  opacity: 0;
  transition: opacity .3s;
}

.fixed_nav_wrap li.selected a::before {
  animation: scalX .5s forwards;
  opacity: 1;
}

@keyframes scalX {
  0% {
    transform: scaleX(0);
  }

  100% {
    transform: scaleX(1);
  }
}

.fixed_nav_wrap .staff_img {
  width: 6rem;
  border-radius: 50%;
  overflow: clip;
}

.fixed_nav_wrap li a .txt_wrap {
  width: fit-content;
}

.fixed_nav_wrap .staff_skin-type {
  margin-bottom: .8rem;
}

.fixed_nav_wrap li a:hover .staff_skin-type {
  transform: rotate(6deg);
}

.fixed_nav_wrap .staff_name {
  font-size: 1.1rem;
}

.fixed_nav_wrap .staff_name .num {
  margin-right: .4rem;
  font-size: 1.4rem;
}
/*----------------------fixed nav*/


/*Smart phone---------------------------------------------*/
@media screen and  (max-width:768px) {
/*all----------------------------*/
.LP_page .only_pc {
  display: none;
}

.LP_page {
  padding: calc(40 * (100vw / 430)) 0 calc(70 * (100vw / 430));
}

#share {
  z-index: 5 !important;
  transition: transform .3s;
}

#share.move {
  transform: translateY(calc(-50 * (100vw / 430)));
}

#share.hide {
  opacity: 0;
  pointer-events: none;
}

.share-txt {
  margin: 0 !important;
  padding-bottom: calc(20 * (100vw / 430));
  background: var(--color_bg);
}

.LP_page .activePoint {
  transform: translateY(calc(20 * (100vw / 430)));
}

/*main title, main lead----------*/
.main_ttl {
  margin-bottom: calc(40 * (100vw / 430));
}

.main_ttl .logo {
  width: calc(160 * (100vw / 430));
  margin: 0 auto calc(25 * (100vw / 430));
}

.main_ttl .ttl {
  width: calc(410 * (100vw / 430));
}

.main_lead_ttl {
  margin-bottom: calc(20 * (100vw / 430));
  font-size: calc(22 * (100vw / 430));
}

.main_lead {
  margin-bottom: calc(15 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}

/*----------main title, main lead*/

/*about--------------------------*/
.each_sec {
  padding: calc(40 * (100vw / 430)) 0;
}

.each_sec .sec_ttl {
  margin-bottom: calc(20 * (100vw / 430));
  font-size: calc(42 * (100vw / 430));
}

.about_table {
  justify-content: flex-start;
  gap: calc(20 * (100vw / 430));
  margin-bottom: calc(25 * (100vw / 430));
  padding: calc(5 * (100vw / 430)) calc(15 * (100vw / 430));
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.about_table::-webkit-scrollbar {
  display:none;
}

.about_table li {
  padding: calc(10 * (100vw / 430)) calc(15 * (100vw / 430));
  font-size: calc(12 * (100vw / 430));
  white-space: nowrap;
}

.about_table li::before {
  width: calc(4 * (100vw / 430));
}

.about_table li::after {
  width: calc(1 * (100vw / 430));
  margin-left: calc(7 * (100vw / 430));
}

.about_list.loading {
  height: calc(490 * (100vw / 430));
}

.each_about {
  width: calc(340 * (100vw / 430));
  margin: 0 calc(15 * (100vw / 430));
  padding: calc(30 * (100vw / 430));
}

.each_about::before,
.each_about::after {
  mask-image: url(../img/bg_vertical.svg);
  -webkit-mask-image: url(../img/bg_vertical.svg);
}

.content_ttl {
  font-size: calc(17 * (100vw / 430));
}

.each_about .content_ttl {
  margin-bottom: calc(20 * (100vw / 430));
}

.each_about > div {
  display: block;
}

.each_about .about_img {
  float: left;
  width: calc(140 * (100vw / 430));
  margin-right: calc(20 * (100vw / 430));
}

.each_about .about_txt {
  font-size: calc(13 * (100vw / 430));
}

.each_about .about_txt .notes {
  font-size: calc(10 * (100vw / 430));
}

.each_about .about_txt .align_right {
  margin-top: calc(5 * (100vw / 430));
  line-height: 1.5;
}

.about_list .slick-prev {
  margin-left: calc(-180 * (100vw / 430));
}

.about_list .slick-next {
  margin-left: calc(180 * (100vw / 430));
}

.about_list .slick-arrow {
  width: calc(20 * (100vw / 430));
  height: calc(20 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}
/*--------------------------about*/

/*staff review-------------------*/
.review_area .content_ttl {
  margin-bottom: calc(50 * (100vw / 430));
}

.review_table {
 flex-wrap: wrap;
  gap: calc(30 * (100vw / 430)) calc(10 * (100vw / 430));
  margin-bottom: calc(40 * (100vw / 430));
}

.review_table li {
  width: calc((100% - calc(40 * (100vw / 430))) / 2);
}

.review_table li a {
  gap: calc(8 * (100vw / 430));
  width: 100%;
  padding-left: calc(8 * (100vw / 430));
}

.review_table li .staff_img {
  width: calc(80 * (100vw / 430));
  margin-top: calc(-10 * (100vw / 430));
}

.review_table li .staff_img::before {
  width: calc(8 * (100vw / 430));
  height: calc(8 * (100vw / 430));
  margin-top: calc(4 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}

.review_table li a:hover .staff_img::before {
  margin-top: calc(8 * (100vw / 430));
}

.review_table li .staff_skin-type {
  margin: calc(-15 * (100vw / 430)) 0 0 calc(75 * (100vw / 430));
}

.staff_skin-type::before {
  margin: calc(3 * (100vw / 430)) 0 0 calc(3 * (100vw / 430));
}

.staff_skin-type::after {
  margin: 0 0 calc(-3 * (100vw / 430)) calc(3 * (100vw / 430));
}

.staff_skin-type span {
  border-width: calc(1 * (100vw / 430));
  padding: calc(6 * (100vw / 430)) calc(18 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}

.staff_skin-type span::after {
  width: calc(4 * (100vw / 430));
  height: calc(4 * (100vw / 430));
  margin: calc(-4 * (100vw / 430)) 0 0 calc(6 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}

.staff_skin-type span::before {
  width: calc(6 * (100vw / 430));
  height: calc(2 * (100vw / 430));
  margin-top: calc(2 * (100vw / 430));
  border-radius: calc(10 * (100vw / 430));
}

.staff_name_wrap {
  height: calc(90 * (100vw / 430));
}

.staff_name {
  font-size: calc(11 * (100vw / 430));
}

.staff_name_wrap .staff_name {
  padding-bottom: 0;
}

.staff_name .num {
  font-size: calc(14 * (100vw / 430));
}

.each_staff {
  width: calc(400 * (100vw / 430));
  padding: calc(40 * (100vw / 430)) 0 0;
}

.each_staff:nth-of-type(n+2) {
  margin-top: calc(50 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}

.staff_profile_wrap {
  gap: calc(20 * (100vw / 430));
  margin-bottom: calc(-20 * (100vw / 430));
}

.staff_profile_wrap .staff_img {
  width: calc(150 * (100vw / 430));
}

.staff_profile_wrap .txt_wrap {
  height: calc(130 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type {
  margin-bottom: calc(10 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type::before {
  margin: calc(4 * (100vw / 430)) 0 0 calc(4 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type::after {
  margin: 0 0 calc(-4 * (100vw / 430)) calc(4 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type span {
  padding: calc(11 * (100vw / 430)) calc(36 * (100vw / 430)) calc(10 * (100vw / 430));
  font-size: calc(20 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type span::after {
  width: calc(7 * (100vw / 430));
  height: calc(7 * (100vw / 430));
  margin: calc(-5 * (100vw / 430)) 0 0 calc(8 * (100vw / 430));
}

.staff_profile_wrap .staff_skin-type span::before {
  width: calc(8 * (100vw / 430));
  height: calc(2 * (100vw / 430));
  margin-top: calc(4 * (100vw / 430));
}

.staff_profile_wrap .staff_name {
  font-size: calc(15 * (100vw / 430));
  line-height: 1.75;
}

.staff_profile_wrap .staff_name .num {
  margin-right: calc(8 * (100vw / 430));
  font-size: calc(24 * (100vw / 430));
}

.staff_comment {
  width: auto;
  border-radius: calc(20 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
  margin: 0 auto calc(50 * (100vw / 430));
  padding: calc(30 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}

.review_list {
  margin-bottom: calc(60 * (100vw / 430));
  padding: 0;
}

.review_list li {
  display: block;
}

.review_list li:nth-of-type(n+2) {
  margin-top: calc(50 * (100vw / 430));
}

.review_list li:nth-of-type(odd) .review_img {
  margin-left: auto;
  margin-right: calc(20 * (100vw / 430));
}

.review_list li:nth-of-type(even) .review_img {
  margin-left: calc(20 * (100vw / 430));
}

.review_img {
  width: calc(300 * (100vw / 430));
  margin-bottom: calc(15 * (100vw / 430));;
}

.review_img::before {
  width: calc(320 * (100vw / 430));
  height: calc(320 * (100vw / 430));
}

.review_txt {
  width: calc(290 * (100vw / 430));
}

.review_list li:nth-of-type(odd) .review_txt {
  margin-left: calc(10 * (100vw / 430));
}

.review_list li:nth-of-type(even) .review_txt {
  margin: 0 calc(10 * (100vw / 430)) 0 auto;
}

.review_txt dt {
  margin-bottom: calc(8 * (100vw / 430));
  padding-bottom: calc(8 * (100vw / 430));
  font-size: calc(17 * (100vw / 430));
}

.review_txt dt::before {
  width: 100%;
  height: calc(1 * (100vw / 430));
}

.review_txt dd {
  width: auto;
  font-size: calc(13 * (100vw / 430));
}

.itm_list_wrap {
  padding: calc(35 * (100vw / 430)) 0 calc(40 * (100vw / 430));
}

.itm_list_wrap::before,
.itm_list_wrap::after {
  mask-image: url(../img/bg_vertical.svg);
  -webkit-mask-image: url(../img/bg_vertical.svg);
}

.itm_list_wrap h3 {
  margin-bottom: calc(20 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}

.itm_list_wrap h3 .txt_eng {
  margin-bottom: calc(10 * (100vw / 430));
  font-size: calc(38 * (100vw / 430));
}

.itm_list {
  gap: calc(20 * (100vw / 430));
  padding: calc(10 * (100vw / 430)) calc(30 * (100vw / 430));
}

.itm_list li a {
  width: calc(200 * (100vw / 430));
}

.itm_list li .txt_wrap {
  padding-bottom: calc(40 * (100vw / 430));
}

.itm_list li .itm_cat {
  margin-bottom: calc(8 * (100vw / 430));
  padding: calc(2 * (100vw / 430)) calc(10 * (100vw / 430));
  font-size: calc(12 * (100vw / 430));
}

.itm_list li .txt_wrap > div {
  padding: 0 calc(10 * (100vw / 430));
}

.itm_list li .itm_name {
  margin-bottom: calc(8 * (100vw / 430));
  font-size: calc(14 * (100vw / 430));
}

.itm_list li .itm_price {
  font-size: calc(14 * (100vw / 430));
}

.itm_list li .itm_price .txt_S {
  font-size: calc(11 * (100vw / 430));
}

.itm_list li .itm_link {
  margin: 0 calc(10 * (100vw / 430)) calc(10 * (100vw / 430)) 0;
  padding-bottom: calc(8 * (100vw / 430))
}

.itm_list li .itm_link::before {
  height: calc(2 * (100vw / 430));
}

.itm_list li .itm_link::after {
  height: calc(1 * (100vw / 430));
  margin-bottom: calc(4 * (100vw / 430));
}

.itm_list li .itm_link span {
  padding-right: calc(20 * (100vw / 430));
  font-size: calc(15 * (100vw / 430));
}

.itm_list li .itm_link span::before {
  width: calc(12 * (100vw / 430));
  height: calc(1 * (100vw / 430));
}

.itm_list li .itm_link span::after {
  width: calc(6 * (100vw / 430));
  height: calc(6 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}

.itm_list li a:hover .itm_link span::before,
.itm_list li a:hover .itm_link span::after {
  margin-right: calc(-5 * (100vw / 430));
}

/*
.itm_list {
  display: block;
  overflow-x: auto;
  padding: 0 calc(20 * (100vw / 430));
}

.itm_list li:nth-of-type(n+2) {
  margin-top: calc(15 * (100vw / 430));
}

.itm_list li a {
  flex-direction: row;
  width: 100%;
}

.itm_list li .itm_img {
  width: calc(150 * (100vw / 430));
}

.itm_list li .txt_wrap {
  padding: calc(20 * (100vw / 430)) calc(15 * (100vw / 430)) calc(40 * (100vw / 430));
}

.itm_list li .itm_cat {
  margin-bottom: calc(10 * (100vw / 430));
  padding: calc(1 * (100vw / 430)) calc(10 * (100vw / 430));
  font-size: calc(12 * (100vw / 430));
}

.itm_list li .txt_wrap > div {
  padding: 0;
}

.itm_list li .itm_name {
  margin-bottom: calc(5 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}

.itm_list li .itm_price {
  font-size: calc(13 * (100vw / 430));
}

.itm_list li .itm_price .txt_S {
  font-size: calc(10 * (100vw / 430));
}

.itm_list li .itm_link {
  margin: 0 calc(15 * (100vw / 430)) calc(15 * (100vw / 430)) 0;
  padding-bottom: calc(8 * (100vw / 430));
}

.itm_list li .itm_link::before {
  height: calc(2 * (100vw / 430));
}

.itm_list li .itm_link::after {
  height: calc(1 * (100vw / 430));
  margin-bottom: calc(4 * (100vw / 430));
}

.itm_list li .itm_link span {
  padding-right: calc(50 * (100vw / 430));
  font-size: calc(15 * (100vw / 430));
}

.itm_list li .itm_link span::before {
  width: calc(40 * (100vw / 430));
  height: calc(1 * (100vw / 430));
}

.itm_list li .itm_link span::after {
  width: calc(6 * (100vw / 430));
  height: calc(6 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}

.itm_list li a:hover .itm_link span::before,
.itm_list li a:hover .itm_link span::after {
  margin-right: calc(-5 * (100vw / 430));
}
*/
/*-------------------staff review*/

/*conversion button--------------*/
.btn_conversion_wrap {
  margin: calc(35 * (100vw / 430)) auto 0;
}

.btn_conversion_wrap a {
  width: calc(400 * (100vw / 430));
  height: calc(76 * (100vw / 430));
  padding-left: calc(175 * (100vw / 430));
}

.btn_conversion_wrap a::before {
  width: calc(170 * (100vw / 430));
}

.btn_conversion_wrap a span {
  padding-right: calc(20 * (100vw / 430));
  font-size: calc(17 * (100vw / 430));
}

.btn_conversion_wrap a span::before {
  width: calc(16 * (100vw / 430));
  height: calc(1 * (100vw / 430));
}

.btn_conversion_wrap a:hover span::before,
.btn_conversion_wrap a:hover span::after {
  margin-right: calc(-8 * (100vw / 430));
}

.btn_conversion_wrap a span::after {
  width: calc(8 * (100vw / 430));
  height: calc(8 * (100vw / 430));
  border-width: calc(1 * (100vw / 430));
}
/*--------------conversion button*/

/*fixed nav----------------------*/
.fixed_nav_wrap ul {
  display: flex;
  justify-content: flex-start;
  width: 100vw;
  border: none;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.fixed_nav_wrap ul::-webkit-scrollbar {
  display:none;
}

.fixed_nav_wrap li:nth-of-type(n+2) {
  border-width: calc(1 * (100vw / 430));
}

.fixed_nav_wrap li a {
  gap: calc(8 * (100vw / 430));
  width: fit-content;
  height: calc(70 * (100vw / 430));
  padding: 0 calc(10 * (100vw / 430));
}

.fixed_nav_wrap li a::before {
  height: calc(4 * (100vw / 430));
}

.fixed_nav_wrap .staff_img {
  width: calc(50 * (100vw / 430));
}

.fixed_nav_wrap .txt_wrap {
  flex: 1;
  white-space: nowrap;
}

.fixed_nav_wrap .staff_skin-type {
  margin-bottom: calc(8 * (100vw / 430));
}

.fixed_nav_wrap .staff_name {
  font-size: calc(10 * (100vw / 430));
}

.fixed_nav_wrap .staff_name .num {
  margin-right: calc(3 * (100vw / 430));
  font-size: calc(13 * (100vw / 430));
}
/*----------------------fixed nav*/

}

/*---------------------------------------------Smart phone*/

/*PC------------------------------------------------------*/
@media screen and  (min-width:769px) {
  .only_sp {
    display: none;
  }

  #header_bottom .inner {
    width: 100%;
  }
}
/*------------------------------------------------------PC*/

/*レスポンシブ＆タブレット対応-------------------------------*/
@media screen and (max-width: 1600px){
  html {
    font-size: calc(10 * (100vw / 1600));
  }
}
/*-------------------------------レスポンシブ＆タブレット対応*/
