@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
html {
  font-size: 2.6666666667vw;
  scroll-padding-top: 7rem;
}

body {
  margin-inline: auto;
  color: #333333;
}

* {
  font-feature-settings: "palt";
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  z-index: 1;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  display: block;
}

video {
  max-width: 100%;
}

ul {
  list-style: none;
  padding-left: 0;
}

ul li {
  list-style: none;
}

a {
  cursor: pointer;
  text-decoration: none;
}

a:hover {
  cursor: pointer;
  opacity: 0.8;
}

a:hover,
a:focus {
  text-decoration: none !important;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

sup {
  font-size: 0.7em;
}

main {
  position: relative;
}

.pageTop_btn {
  width: 4.25rem;
  position: fixed;
  bottom: 0;
  right: 2rem;
  display: block;
  z-index: 999;
}
@media screen and (min-width: 960px) {
  .pageTop_btn {
    width: 50px;
    bottom: 0;
    right: 40px;
  }
}

.inner {
  margin-inline: auto;
  max-width: 100%;
  width: 100%;
  padding-left: 2rem;
  padding-right: 2rem;
}

.inner h2 {
  margin-top: 0;
  margin-bottom: 0;
}

header {
  border-bottom: 0.1rem solid #f6f6f6;
}
@media screen and (min-width: 960px) {
  header {
    border-bottom: 1px solid #f6f6f6;
  }
}
header img {
  margin: 0 auto;
}

footer {
  border-top: 0.1rem solid #f6f6f6;
}
@media screen and (min-width: 960px) {
  footer {
    border-top: 1px solid #f6f6f6;
  }
}
footer img {
  margin: 0 auto;
}

.f_sans {
  font-family: "NotoSansCJKjp", "Noto Sans JP", sans-serif;
}

.f_serif {
  font-family: "Noto Serif JP", serif;
}

.f_roboto {
  font-family: "Roboto", sans-serif;
}

.accordion__item {
  padding-top: 1.7rem;
  /* 35 */
  padding-bottom: 1.7rem;
  padding-left: 1.2rem;
  padding-right: 1.2rem;
}

.accordion__item:not(:last-child) {
  border-bottom: #f2f2f2 2px solid;
}

.fw100 {
  font-weight: 100;
}

.fw200 {
  font-weight: 200;
}

.fw300 {
  font-weight: 300;
}

.fw400 {
  font-weight: 400 !important;
}

.fw500 {
  font-weight: 500;
}

.fw600 {
  font-weight: 600;
}

.fw700 {
  font-weight: 700;
}

.fw800 {
  font-weight: 800;
}

.fw900 {
  font-weight: 900;
}

.fwb {
  font-weight: bold !important;
}

.fwn {
  font-weight: normal;
}

.lh10 {
  line-height: 1;
}

.lh11 {
  line-height: 1.1;
}

.lh12 {
  line-height: 1.2;
}

.lh13 {
  line-height: 1.3;
}

.lh14 {
  line-height: 1.4 !important;
}

.lh15 {
  line-height: 1.5;
}

.lh16 {
  line-height: 1.6;
}

.lh17 {
  line-height: 1.7;
}

.lh18 {
  line-height: 1.8;
}

.lh19 {
  line-height: 1.9;
}

.lh20 {
  line-height: 2;
}

.lh21 {
  line-height: 2.1;
}

.lh22 {
  line-height: 2.2;
}

.lh23 {
  line-height: 2.3;
}

.lh24 {
  line-height: 2.4;
}

.lh25 {
  line-height: 2.5;
}

.lh26 {
  line-height: 2.6;
}

.lh27 {
  line-height: 2.7;
}

.lh28 {
  line-height: 2.8;
}

.lh29 {
  line-height: 2.9;
}

.md\:fz2012 {
  font-size: 0.6rem;
  /* 12 */
}

.md\:fz2013 {
  font-size: 0.6rem;
  /* 13 */
}

.md\:fz2014 {
  font-size: 0.7rem;
  /* 14 */
}

.md\:fz2015 {
  font-size: 0.7rem;
  /* 15 */
}

.md\:fz2016 {
  font-size: 0.8rem;
  /* 16 */
}

.md\:fz2017 {
  font-size: 0.8rem;
  /* 17 */
}

.md\:fz2018 {
  font-size: 0.9rem;
  /* 18 */
}

.md\:fz2019 {
  font-size: 0.9rem;
  /* 19 */
}

.md\:fz2020 {
  font-size: 1rem;
  /* 20 */
}

.md\:fz2021 {
  font-size: 1rem;
  /* 21 */
}

.md\:fz2022 {
  font-size: 1.1rem;
  /* 22 */
}

.md\:fz2023 {
  font-size: 1.1rem;
  /* 23 */
}

.md\:fz2024 {
  font-size: 1.2rem;
  /* 24 */
}

.md\:fz2025 {
  font-size: 1.2rem;
  /* 25 */
}

.md\:fz2026 {
  font-size: 1.3rem;
  /* 26 */
}

.md\:fz2027 {
  font-size: 1.3rem;
  /* 27 */
}

.md\:fz2028 {
  font-size: 1.4rem;
  /* 28 */
}

.md\:fz2029 {
  font-size: 1.4rem;
  /* 29 */
}

.md\:fz2030 {
  font-size: 1.5rem;
  /* 30 */
}

.md\:fz2031 {
  font-size: 1.5rem;
  /* 31 */
}

.md\:fz2032 {
  font-size: 1.6rem;
  /* 32 */
}

.md\:fz2033 {
  font-size: 1.6rem;
  /* 33 */
}

.md\:fz2034 {
  font-size: 1.7rem;
  /* 34 */
}

.md\:fz2035 {
  font-size: 1.7rem;
  /* 35 */
}

.md\:fz2036 {
  font-size: 1.8rem;
  /* 36 */
}

.md\:fz2037 {
  font-size: 1.8rem;
  /* 37 */
}

.md\:fz2038 {
  font-size: 1.9rem;
  /* 38 */
}

.md\:fz2039 {
  font-size: 1.9rem;
  /* 39 */
}

.md\:fz2040 {
  font-size: 2rem;
  /* 40 */
}

.md\:fz2041 {
  font-size: 2rem;
  /* 41 */
}

.md\:fz2042 {
  font-size: 2.1rem;
  /* 42 */
}

.md\:fz2043 {
  font-size: 2.1rem;
  /* 43 */
}

.md\:fz2044 {
  font-size: 2.2rem;
  /* 44 */
}

.md\:fz2045 {
  font-size: 2.2rem;
  /* 45 */
}

.md\:fz2046 {
  font-size: 2.3rem;
  /* 46 */
}

.md\:fz2047 {
  font-size: 2.3rem;
  /* 47 */
}

.md\:fz2048 {
  font-size: 2.4rem;
  /* 48 */
}

.md\:fz2049 {
  font-size: 2.4rem;
  /* 49 */
}

.md\:fz2050 {
  font-size: 2.5rem;
  /* 50 */
}

.md\:fz2051 {
  font-size: 2.5rem;
  /* 51 */
}

.md\:fz2052 {
  font-size: 2.6rem;
  /* 52 */
}

.md\:fz2053 {
  font-size: 2.6rem;
  /* 53 */
}

.md\:fz2054 {
  font-size: 2.7rem;
  /* 54 */
}

.md\:fz2055 {
  font-size: 2.7rem;
  /* 55 */
}

.md\:fz2056 {
  font-size: 2.8rem;
  /* 56 */
}

.md\:fz2057 {
  font-size: 2.8rem;
  /* 57 */
}

.md\:fz2058 {
  font-size: 2.9rem;
  /* 58 */
}

.md\:fz2059 {
  font-size: 2.9rem;
  /* 59 */
}

.md\:fz2060 {
  font-size: 3rem;
  /* 60 */
}

.md\:fz2061 {
  font-size: 3rem;
  /* 61 */
}

.md\:fz2062 {
  font-size: 3.1rem;
  /* 62 */
}

.md\:fz2063 {
  font-size: 3.1rem;
  /* 63 */
}

.md\:fz2064 {
  font-size: 3.2rem;
  /* 64 */
}

.md\:fz2065 {
  font-size: 3.2rem;
  /* 65 */
}

.md\:fz2066 {
  font-size: 3.3rem;
  /* 66 */
}

.md\:fz2067 {
  font-size: 3.3rem;
  /* 67 */
}

.md\:fz2068 {
  font-size: 3.4rem;
  /* 68 */
}

.md\:fz2069 {
  font-size: 3.4rem;
  /* 69 */
}

.md\:fz2070 {
  font-size: 3.5rem;
  /* 70 */
}

.md\:fz2071 {
  font-size: 3.5rem;
  /* 71 */
}

.md\:fz2072 {
  font-size: 3.6rem;
  /* 72 */
}

.md\:fz2073 {
  font-size: 3.6rem;
  /* 73 */
}

.md\:fz2074 {
  font-size: 3.7rem;
  /* 74 */
}

.md\:fz2075 {
  font-size: 3.7rem;
  /* 75 */
}

.md\:fz2076 {
  font-size: 3.8rem;
  /* 76 */
}

.md\:fz2077 {
  font-size: 3.8rem;
  /* 77 */
}

.md\:fz2078 {
  font-size: 3.9rem;
  /* 78 */
}

.md\:fz2079 {
  font-size: 3.9rem;
  /* 79 */
}

.fz12 {
  font-size: 12px;
  /* 960 : 12 */
}

.fz13 {
  font-size: 13px;
  /* 960 : 13 */
}

.fz14 {
  font-size: 14px;
  /* 960 : 14 */
}

.fz15 {
  font-size: 15px;
  /* 960 : 15 */
}

.fz16 {
  font-size: 16px;
  /* 960 : 16 */
}

.fz17 {
  font-size: 17px;
  /* 960 : 17 */
}

.fz18 {
  font-size: 18px;
  /* 960 : 18 */
}

.fz19 {
  font-size: 19px;
  /* 960 : 19 */
}

.fz20 {
  font-size: 20px;
  /* 960 : 20 */
}

.fz21 {
  font-size: 21px;
  /* 960 : 21 */
}

.fz22 {
  font-size: 22px;
  /* 960 : 22 */
}

.fz23 {
  font-size: 23px;
  /* 960 : 23 */
}

.fz24 {
  font-size: 24px;
  /* 960 : 24 */
}

.fz25 {
  font-size: 25px;
  /* 960 : 25 */
}

.fz26 {
  font-size: 26px;
  /* 960 : 26 */
}

.fz27 {
  font-size: 27px;
  /* 960 : 27 */
}

.fz28 {
  font-size: 28px;
  /* 960 : 28 */
}

.fz29 {
  font-size: 29px;
  /* 960 : 29 */
}

.fz30 {
  font-size: 30px;
  /* 960 : 30 */
}

.fz31 {
  font-size: 31px;
  /* 960 : 31 */
}

.fz32 {
  font-size: 32px;
  /* 960 : 32 */
}

.fz33 {
  font-size: 33px;
  /* 960 : 33 */
}

.fz34 {
  font-size: 34px;
  /* 960 : 34 */
}

.fz35 {
  font-size: 35px;
  /* 960 : 35 */
}

.fz36 {
  font-size: 36px;
  /* 960 : 36 */
}

.fz37 {
  font-size: 37px;
  /* 960 : 37 */
}

.fz38 {
  font-size: 38px;
  /* 960 : 38 */
}

.fz39 {
  font-size: 39px;
  /* 960 : 39 */
}

.fz40 {
  font-size: 40px;
  /* 960 : 40 */
}

.fz41 {
  font-size: 41px;
  /* 960 : 41 */
}

.fz42 {
  font-size: 42px;
  /* 960 : 42 */
}

.fz43 {
  font-size: 43px;
  /* 960 : 43 */
}

.fz44 {
  font-size: 44px;
  /* 960 : 44 */
}

.fz45 {
  font-size: 45px;
  /* 960 : 45 */
}

.fz46 {
  font-size: 46px;
  /* 960 : 46 */
}

.fz47 {
  font-size: 47px;
  /* 960 : 47 */
}

.fz48 {
  font-size: 48px;
  /* 960 : 48 */
}

.fz49 {
  font-size: 49px;
  /* 960 : 49 */
}

.fz50 {
  font-size: 50px;
  /* 960 : 50 */
}

.fz51 {
  font-size: 51px;
  /* 960 : 51 */
}

.fz52 {
  font-size: 52px;
  /* 960 : 52 */
}

.fz53 {
  font-size: 53px;
  /* 960 : 53 */
}

.fz54 {
  font-size: 54px;
  /* 960 : 54 */
}

.fz55 {
  font-size: 55px;
  /* 960 : 55 */
}

.fz56 {
  font-size: 56px;
  /* 960 : 56 */
}

.fz57 {
  font-size: 57px;
  /* 960 : 57 */
}

.fz58 {
  font-size: 58px;
  /* 960 : 58 */
}

.fz59 {
  font-size: 59px;
  /* 960 : 59 */
}

.fz60 {
  font-size: 60px;
  /* 960 : 60 */
}

.fz61 {
  font-size: 61px;
  /* 960 : 61 */
}

.fz62 {
  font-size: 62px;
  /* 960 : 62 */
}

.fz63 {
  font-size: 63px;
  /* 960 : 63 */
}

.fz64 {
  font-size: 64px;
  /* 960 : 64 */
}

.fz65 {
  font-size: 65px;
  /* 960 : 65 */
}

.fz66 {
  font-size: 66px;
  /* 960 : 66 */
}

.fz67 {
  font-size: 67px;
  /* 960 : 67 */
}

.fz68 {
  font-size: 68px;
  /* 960 : 68 */
}

.fz69 {
  font-size: 69px;
  /* 960 : 69 */
}

.fz70 {
  font-size: 70px;
  /* 960 : 70 */
}

.fz71 {
  font-size: 71px;
  /* 960 : 71 */
}

.fz72 {
  font-size: 72px;
  /* 960 : 72 */
}

.fz73 {
  font-size: 73px;
  /* 960 : 73 */
}

.fz74 {
  font-size: 74px;
  /* 960 : 74 */
}

.fz75 {
  font-size: 75px;
  /* 960 : 75 */
}

.fz76 {
  font-size: 76px;
  /* 960 : 76 */
}

.fz77 {
  font-size: 77px;
  /* 960 : 77 */
}

.fz78 {
  font-size: 78px;
  /* 960 : 78 */
}

.fz79 {
  font-size: 79px;
  /* 960 : 79 */
}

.fz-2011 {
  font-size: 1rem;
  /* 20 */
  line-height: 1.5;
  font-weight: 400;
}

.fz-2012 {
  font-size: 1rem;
  /* 20 */
  line-height: 1.5;
  font-weight: 400;
}

.fz-2412 {
  font-size: 1.2rem;
  /* 24 */
  letter-spacing: 0.045em;
  line-height: 1.3;
  font-weight: 400;
}

.fz-2415 {
  font-size: 1.2rem;
  /* 24 */
  letter-spacing: 0.06em;
  line-height: 1.5;
  font-weight: 400;
}

.fz-2615 {
  font-size: 1.3rem;
  /* 26 */
  letter-spacing: 0.015em;
  line-height: 1;
  font-weight: 400;
}

.fz-2615b {
  font-size: 1.3rem;
  /* 26 */
  line-height: 1;
  font-weight: 600;
}

.fz-2815 {
  font-size: 1.4rem;
  /* 28 */
  letter-spacing: 0.06em;
  line-height: 1.8;
  font-weight: 400;
}

.fz-2818 {
  font-size: 1.4rem;
  /* 28 */
  letter-spacing: 0.06em;
  line-height: 1.9;
  font-weight: 400;
}

.fz-2818s {
  font-size: 1.2rem;
  /* 24 */
  letter-spacing: -0.015em;
  line-height: 1.3;
  font-weight: 400;
}

.fz-3016 {
  font-size: 1.5rem;
  /* 30 */
  letter-spacing: 0.015em;
  line-height: 1.6;
  font-weight: 400;
}

.fz-3020 {
  font-size: 1.5rem;
  /* 30 */
  letter-spacing: 0.015em;
  line-height: 1.3;
  font-weight: 600;
}

.fz-3215 {
  font-size: 1.6rem;
  /* 32 */
  line-height: 1.1;
  font-weight: 400;
}

.fz-3218 {
  font-size: 1.6rem;
  /* 32 */
  letter-spacing: 0.06em;
  line-height: 1.1;
  font-weight: 600;
}

.fz-3218n {
  font-size: 1.6rem;
  /* 32 */
  letter-spacing: 0.045em;
  line-height: 1.6;
  font-weight: 400;
}

.fz-3624 {
  font-size: 1.8rem;
  /* 36 */
  letter-spacing: 0.06em;
  line-height: 1.6;
  font-weight: 600;
}

.fz-3628 {
  font-size: 1.8rem;
  /* 36 */
  letter-spacing: -0.015em;
  line-height: 1;
  font-weight: 600;
}

.fz-3724 {
  font-size: 1.5rem;
  /* 30 */
  letter-spacing: 0.025em;
  line-height: 1;
  font-weight: 400;
}

.fz-4020 {
  font-size: 2rem;
  /* 40 */
  letter-spacing: -0.015em;
  line-height: 1.2;
  font-weight: 600;
}

.fz-4824 {
  font-size: 2.4rem;
  /* 48 */
  letter-spacing: -0.015em;
  line-height: 1;
  font-weight: 600;
}

.fz-6832 {
  font-size: 3.4rem;
  /* 68 */
  letter-spacing: -0.015em;
  line-height: 1;
  font-weight: 600;
}

.fz-4836 {
  font-size: 2.4rem;
  /* 48 */
  letter-spacing: 0.06em;
  line-height: 1.5;
  font-weight: 600;
}

.fz-5436 {
  font-size: 2.7rem;
  /* 54 */
  letter-spacing: 0.015em;
  line-height: 1.1;
  font-weight: 600;
}

.fz-7448 {
  font-size: 3.7rem;
  /* 74 */
  line-height: 1;
  font-weight: 600;
}

.c-gray_bg {
  background: #edf1f4;
}

.c-red {
  color: #ad0026;
}

.c-red_bg {
  background: #ad0026;
}

.c-red_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #ad0026 10%, #ad0026 90%, transparent 100%);
}

.c-red_border {
  border-color: #ad0026 !important;
}

.c-pink {
  color: #fef6f4;
}

.c-pink_bg {
  background: #fef6f4;
}

.c-pink_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #fef6f4 10%, #fef6f4 90%, transparent 100%);
}

.c-pink_border {
  border-color: #fef6f4 !important;
}

.c-ivory {
  color: #faf4ef;
}

.c-ivory_bg {
  background: #faf4ef;
}

.c-ivory_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #faf4ef 10%, #faf4ef 90%, transparent 100%);
}

.c-ivory_border {
  border-color: #faf4ef !important;
}

.c-beige {
  color: #f8e6bb;
}

.c-beige_bg {
  background: #f8e6bb;
}

.c-beige_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f8e6bb 10%, #f8e6bb 90%, transparent 100%);
}

.c-beige_border {
  border-color: #f8e6bb !important;
}

.c-basemake {
  color: #f7f5e6;
}

.c-basemake_bg {
  background: #f7f5e6;
}

.c-basemake_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f7f5e6 10%, #f7f5e6 90%, transparent 100%);
}

.c-blue {
  color: #7787b6;
}

.c-blue_bg {
  background-color: #7787b6;
}

.c-basemake_border {
  border-color: #f7f5e6 !important;
}

.c-pointmake {
  color: #f2eae8;
}

.c-pointmake_bg {
  background: #f2eae8;
}

.c-pointmake_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f2eae8 10%, #f2eae8 90%, transparent 100%);
}

.c-pointmake_border {
  border-color: #f2eae8 !important;
}

.c-skincare {
  color: #f4f6f5;
}

.c-skincare_bg {
  background: #f4f6f5;
}

.c-skincare_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f4f6f5 10%, #f4f6f5 90%, transparent 100%);
}

.c-skincare_border {
  border-color: #f4f6f5 !important;
}

.c-bodycare {
  color: #f0f1e9;
}

.c-bodycare_bg {
  background: #f0f1e9;
}

.c-bodycare_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f0f1e9 10%, #f0f1e9 90%, transparent 100%);
}

.c-bodycare_border {
  border-color: #f0f1e9 !important;
}

.c-base01 {
  color: #333;
}

.c-base01_bg {
  background: #333;
}

.c-base01_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #333 10%, #333 90%, transparent 100%);
}

.c-base01_border {
  border-color: #333 !important;
}

.c-base02 {
  color: #595757;
}

.c-base02_bg {
  background: #595757;
}

.c-base02_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #595757 10%, #595757 90%, transparent 100%);
}

.c-base02_border {
  border-color: #595757 !important;
}

.c-base03 {
  color: #a5a5a5;
}

.c-base03_bg {
  background: #a5a5a5;
}

.c-base03_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #a5a5a5 10%, #a5a5a5 90%, transparent 100%);
}

.c-base03_border {
  border-color: #a5a5a5 !important;
}

.c-base04 {
  color: #ccc;
}

.c-base04_bg {
  background: #ccc;
}

.c-base04_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #ccc 10%, #ccc 90%, transparent 100%);
}

.c-base04_border {
  border-color: #ccc !important;
}

.c-base05 {
  color: #f2f2f2;
}

.c-base05_bg {
  background: #f2f2f2;
}

.c-base05_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #f2f2f2 10%, #f2f2f2 90%, transparent 100%);
}

.c-base05_border {
  border-color: #f2f2f2 !important;
}

.c-white {
  color: #fff;
}

.c-white_bg {
  background: #fff;
}

.c-white_bg-gr {
  background: linear-gradient(90deg, transparent 0%, #fff 10%, #fff 90%, transparent 100%);
}

.c-white_border {
  border-color: #fff !important;
}

.border {
  border: 1px solid;
}

.border2 {
  border: 2px solid;
}

.border-top {
  border-top: 1px solid;
}

.border-bottom {
  border-bottom: 1px solid;
}

.border-left {
  border-left: 4px solid;
}

.border-color-red {
  border-color: #ad0026;
}

.border-color-gray {
  border-color: #ccc;
}

.border-radius {
  border-radius: 1vw;
}

.border-radius-full {
  border-radius: 10em;
}

.list-tag {
  display: inline-block;
  padding: 0 0.2em;
}

.list-style-none {
  padding-left: 1.3em;
  list-style: none !important;
}

.list-style-none li {
  list-style: none !important;
  padding-bottom: 0.4em;
  text-indent: -1.3em;
}

.list-style-dot {
  padding-left: 1.3em;
}

.list-style-dot li {
  list-style: disc;
  padding-bottom: 0.4em;
}

.list-style-square {
  padding-left: 1.3em;
  list-style: none !important;
}

.list-style-square li {
  list-style: none !important;
  padding-bottom: 0.4em;
  text-indent: -1.3em;
}

.list-style-square li::before {
  content: "■";
}

.list-style-circle {
  padding-left: 1.3em;
  list-style: none !important;
}

.list-style-circle li {
  list-style: none !important;
  padding-bottom: 0.4em;
  text-indent: -1.3em;
}

.list-style-circle li::before {
  content: "●";
  color: #ad0026;
  padding-right: 0.3em;
}

.list-style-kome {
  padding-left: 1.3em;
  list-style: none !important;
}

.list-style-kome li {
  list-style: none !important;
  padding-bottom: 0.4em;
  text-indent: -1.3em;
}

.list-style-kome li::before {
  content: "※";
}

.list-style-num {
  padding-left: 1.3em;
}

.list-style-num li {
  list-style: decimal;
  padding-bottom: 0.4em;
}

.list-style-num-inner {
  padding-left: 1.3em;
}

.list-style-num-inner li {
  list-style-type: none;
  counter-increment: cnt;
  padding-bottom: 0.4em;
  text-indent: -1.3em;
}

.list-style-num-inner li::before {
  content: "（" counter(cnt) "）";
}

.tac {
  text-align: center;
}

.tal {
  text-align: left;
}

.tar {
  text-align: right !important;
}

.talc {
  text-align: left;
}

.tacl {
  text-align: center;
}

.m0 {
  margin: 0;
}

.ma {
  margin: auto;
}

.mt10 {
  margin-top: 1rem;
}

.mb10 {
  margin-bottom: 1rem;
}

.ml10 {
  margin-left: 1rem;
}

.mr10 {
  margin-right: 1rem;
}

.mt20 {
  margin-top: 2rem;
}

.mb20 {
  margin-bottom: 2rem;
}

.ml20 {
  margin-left: 2rem;
}

.mr20 {
  margin-right: 2rem;
}

.mt30 {
  margin-top: 3rem;
}

.mb30 {
  margin-bottom: 3rem;
}

.ml30 {
  margin-left: 3rem;
}

.mr30 {
  margin-right: 3rem;
}

.mt40 {
  margin-top: 4rem;
}

.mb40 {
  margin-bottom: 4rem;
}

.ml40 {
  margin-left: 4rem;
}

.mr40 {
  margin-right: 4rem;
}

.mt50 {
  margin-top: 5rem;
}

.mb50 {
  margin-bottom: 5rem;
}

.ml50 {
  margin-left: 5rem;
}

.mr50 {
  margin-right: 5rem;
}

.mt60 {
  margin-top: 6rem;
}

.mb60 {
  margin-bottom: 6rem;
}

.ml60 {
  margin-left: 6rem;
}

.mr60 {
  margin-right: 6rem;
}

.pt10 {
  padding-top: 1rem;
  /* 20 */
}

.pb10 {
  padding-bottom: 1rem;
}

.pl10 {
  padding-left: 1rem;
}

.pr10 {
  padding-right: 1rem;
}

.pt20 {
  padding-top: 2rem;
  /* 40 */
}

.pb20 {
  padding-bottom: 2rem;
}

.pl20 {
  padding-left: 2rem;
}

.pr20 {
  padding-right: 2rem;
}

.pt25 {
  padding-top: 2.5rem;
  /* 50 */
}

.pb25 {
  padding-bottom: 2.5rem;
}

.pl25 {
  padding-left: 2.5rem;
}

.pr25 {
  padding-right: 2.5rem;
}

.pt30 {
  padding-top: 3rem;
  /* 60 */
}

.pb30 {
  padding-bottom: 3rem;
}

.pl30 {
  padding-left: 3rem;
}

.pr30 {
  padding-right: 3rem;
}

.pt40 {
  padding-top: 4rem;
  /* 80 */
}

.pb40 {
  padding-bottom: 4rem;
}

.pl40 {
  padding-left: 4rem;
}

.pr40 {
  padding-right: 4rem;
}

.pt50 {
  padding-top: 5rem;
  /* 100 */
}

.pb50 {
  padding-bottom: 5rem;
}

.pl50 {
  padding-left: 5rem;
}

.pr50 {
  padding-right: 5rem;
}

.pt60 {
  padding-top: 6rem;
  /* 120 */
}

.pb60 {
  padding-bottom: 6rem;
}

.pl60 {
  padding-left: 6rem;
}

.pr60 {
  padding-right: 6rem;
}

.pt70 {
  padding-top: 7rem;
  /* 140 */
}

.pb70 {
  padding-bottom: 7rem;
}

.pb7030 {
  padding-bottom: 3.5rem;
}

.pl70 {
  padding-left: 7rem;
}

.pr70 {
  padding-right: 7rem;
}

.pt120 {
  padding-top: 12.1rem;
  /* 240 */
}

.pb120 {
  padding-bottom: 12.1rem;
}

.por {
  position: relative;
}

.poa {
  position: absolute;
}

.grid {
  display: -ms-grid;
  display: grid;
}

.grid-center {
  display: -ms-grid;
  display: grid;
  place-items: center;
}

.flex {
  display: flex;
}

.flex-dir_c {
  flex-direction: column;
}

.flex-dir_cr {
  flex-direction: column;
}

.flex-dir_r {
  flex-direction: row;
}

.flex-dir_rc {
  flex-direction: row;
}

.aic {
  align-items: center;
}

.aifs {
  align-items: flex-start;
}

.aife {
  align-items: flex-end;
}

.jcfs {
  justify-content: flex-start;
}

.jcsb {
  justify-content: space-between;
}

.jcc {
  justify-content: center;
}

.fldrr {
  flex-direction: row-reverse;
}

.gap10 {
  gap: 1.3333333333vw;
}

.gap20 {
  gap: 2.6666666667vw;
}

.gap30 {
  gap: 4vw;
}

.gap40 {
  gap: 5.3333333333vw;
}

.line-text {
  background-image: linear-gradient(180deg, transparent 0%, transparent 80%, #f8e6bb 90%, #f8e6bb 100%);
}

@media screen and (min-width: 960px) {
  html {
    font-size: 10px;
    scroll-padding-top: 104px;
  }
  .sp {
    display: none;
  }
  .pcbreak {
    pointer-events: none;
  }
  .inner {
    max-width: 980px;
    padding: 0;
  }
  .accordion__item {
    padding-top: 35px;
  }
  .accordion__item {
    padding-bottom: 35px;
  }
  .accordion__item {
    padding-left: 24px;
  }
  .accordion__item {
    padding-right: 24px;
  }
  .fz-2011 {
    font-size: 11px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    font-weight: 400;
  }
  .fz-2012 {
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-weight: 400;
  }
  .fz-2412 {
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    font-weight: 400;
  }
  .fz-2415 {
    font-size: 15px;
    letter-spacing: 0.12em;
    line-height: 2.4;
    font-weight: 400;
  }
  .fz-2615 {
    font-size: 15px;
    letter-spacing: 0.03em;
    line-height: 1;
    font-weight: 400;
  }
  .fz-2815 {
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    font-weight: 400;
  }
  .fz-2818 {
    font-size: 18px;
    letter-spacing: 0.12em;
    line-height: 2;
    font-weight: 400;
  }
  .fz-2818s {
    font-size: 18px;
    letter-spacing: -0.03em;
    line-height: 1.2;
    font-weight: 400;
  }
  .fz-3016 {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 1.7;
    font-weight: 400;
  }
  .fz-3020 {
    font-size: 20px;
    letter-spacing: 0.03em;
    line-height: 1.6;
    font-weight: 600;
  }
  .fz-3215 {
    font-size: 15px;
    line-height: 1.3;
    font-weight: 400;
  }
  .fz-3218 {
    font-size: 18px;
    letter-spacing: 0.12em;
    line-height: 2;
    font-weight: 600;
  }
  .fz-3218n {
    font-size: 18px;
    letter-spacing: 0.09em;
    line-height: 1.6;
    font-weight: 400;
  }
  .fz-3624 {
    font-size: 24px;
    letter-spacing: 0.12em;
    line-height: 2.5;
    font-weight: 600;
  }
  .fz-3628 {
    font-size: 28px;
    letter-spacing: 0.03em;
    line-height: 1;
    font-weight: 600;
  }
  .fz-3724 {
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 400;
  }
  .fz-4020 {
    font-size: 20px;
    letter-spacing: -0.03em;
    line-height: 1.4;
    font-weight: 600;
  }
  .fz-4824 {
    font-size: 24px;
    letter-spacing: -0.03em;
    line-height: 1;
    font-weight: 600;
  }
  .fz-6832 {
    font-size: 32px;
    letter-spacing: -0.03em;
    line-height: 0.8;
    font-weight: 600;
  }
  .fz-4836 {
    font-size: 36px;
    letter-spacing: 0.12em;
    line-height: 1.6;
    font-weight: 600;
  }
  .fz-5436 {
    font-size: 36px;
    letter-spacing: 0.03em;
    line-height: 0.8;
    font-weight: 600;
  }
  .fz-7448 {
    font-size: 48px;
    line-height: 1;
    font-weight: 600;
  }
  .border-radius {
    border-radius: 10px;
  }
  .talc {
    text-align: center;
  }
  .tacl {
    text-align: left;
  }
  .tarc {
    text-align: center;
  }
  .mt10 {
    margin-top: 10px;
  }
  .mb10 {
    margin-bottom: 10px;
  }
  .ml10 {
    margin-left: 10px;
  }
  .mr10 {
    margin-right: 10px;
  }
  .mt20 {
    margin-top: 20px;
  }
  .mb20 {
    margin-bottom: 20px;
  }
  .ml20 {
    margin-left: 20px;
  }
  .mr20 {
    margin-right: 20px;
  }
  .mt30 {
    margin-top: 30px;
  }
  .mb30 {
    margin-bottom: 30px;
  }
  .ml30 {
    margin-left: 30px;
  }
  .mr30 {
    margin-right: 30px;
  }
  .mt40 {
    margin-top: 40px;
  }
  .mb40 {
    margin-bottom: 40px;
  }
  .ml40 {
    margin-left: 40px;
  }
  .mr40 {
    margin-right: 40px;
  }
  .mt50 {
    margin-top: 50px;
  }
  .mb50 {
    margin-bottom: 50px;
  }
  .ml50 {
    margin-left: 50px;
  }
  .mr50 {
    margin-right: 50px;
  }
  .mt60 {
    margin-top: 60px;
  }
  .mb60 {
    margin-bottom: 60px;
  }
  .ml60 {
    margin-left: 60px;
  }
  .mr60 {
    margin-right: 60px;
  }
  .pt10 {
    padding-top: 10px;
  }
  .pb10 {
    padding-bottom: 10px;
  }
  .pl10 {
    padding-left: 10px;
  }
  .pr10 {
    padding-right: 10px;
  }
  .pt20 {
    padding-top: 20px;
  }
  .pb20 {
    padding-bottom: 20px;
  }
  .pl20 {
    padding-left: 20px;
  }
  .pr20 {
    padding-right: 20px;
  }
  .pt25 {
    padding-top: 25px;
  }
  .pb25 {
    padding-bottom: 25px;
  }
  .pl25 {
    padding-left: 25px;
  }
  .pr25 {
    padding-right: 25px;
  }
  .pt30 {
    padding-top: 30px;
  }
  .pb30 {
    padding-bottom: 30px;
  }
  .pl30 {
    padding-left: 30px;
  }
  .pr30 {
    padding-right: 30px;
  }
  .pt40 {
    padding-top: 40px;
  }
  .pb40 {
    padding-bottom: 40px;
  }
  .pl40 {
    padding-left: 40px;
  }
  .pr40 {
    padding-right: 40px;
  }
  .pt50 {
    padding-top: 50px;
  }
  .pb50 {
    padding-bottom: 50px;
  }
  .pl50 {
    padding-left: 50px;
  }
  .pr50 {
    padding-right: 50px;
  }
  .pt60 {
    padding-top: 60px;
  }
  .pb60 {
    padding-bottom: 60px;
  }
  .pl60 {
    padding-left: 60px;
  }
  .pr60 {
    padding-right: 60px;
  }
  .pt70 {
    padding-top: 70px;
  }
  .pb70 {
    padding-bottom: 70px;
  }
  .pb7030 {
    padding-bottom: 30px;
  }
  .pl70 {
    padding-left: 70px;
  }
  .pr70 {
    padding-right: 70px;
  }
  .pt120 {
    padding-top: 120px;
  }
  .pb120 {
    padding-bottom: 120px;
  }
  .flex-dir_cr {
    flex-direction: row;
  }
  .flex-dir_rc {
    flex-direction: column;
  }
  .gap10 {
    gap: 10px;
  }
  .gap20 {
    gap: 20px;
  }
  .gap30 {
    gap: 30px;
  }
  .gap40 {
    gap: 40px;
  }
}
@media screen and (max-width: 959px) {
  .pc {
    display: none;
  }
}
/*----------------------------------------------
  新規パーツ
/*----------------------------------------------*/
@media (min-width: 960px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.border-radius02 {
  border-radius: 2px;
}

@media screen and (min-width: 960px) {
  .pc_flex {
    display: flex;
  }
}

@media screen and (min-width: 960px) {
  .pc_tac {
    text-align: center;
  }
}

@media screen and (min-width: 960px) {
  .pc_tal {
    text-align: left;
  }
}

@media screen and (min-width: 960px) {
  .pc_tar {
    text-align: right;
  }
}

@media screen and (max-width: 959px) {
  .sp_tac {
    text-align: center;
  }
}

@media screen and (max-width: 959px) {
  .sp_tal {
    text-align: left;
  }
}

@media screen and (max-width: 959px) {
  .sp_tar {
    text-align: right;
  }
}

.fz-1220 {
  font-size: 1rem;
}
@media screen and (min-width: 960px) {
  .fz-1220 {
    font-size: 1.2rem;
  }
}

.fz-1224 {
  font-size: 1.2rem;
}
@media screen and (min-width: 960px) {
  .fz-1224 {
    font-size: 1.2rem;
  }
}

.fz-1424 {
  font-size: 1.2rem;
}
@media screen and (min-width: 960px) {
  .fz-1424 {
    font-size: 1.4rem;
  }
}

.fz-1414 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-1414 {
    font-size: 14px;
  }
}

.fz-1428 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-1428 {
    font-size: 14px;
  }
}

.fz-1628 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-1628 {
    font-size: 1.6rem;
  }
}

.fz-1812 {
  line-height: 1.556;
  font-size: 0.9rem;
  letter-spacing: -0.02em;
}
@media screen and (min-width: 960px) {
  .fz-1812 {
    line-height: 1.667;
    font-size: 12px;
    letter-spacing: 0;
  }
}

.fz-1816 {
  font-size: 0.9rem;
}
@media screen and (min-width: 960px) {
  .fz-1816 {
    font-size: 16px;
  }
}

.fz-2014 {
  font-size: 1rem;
}
@media screen and (min-width: 960px) {
  .fz-2014 {
    font-size: 14px;
  }
}

.fz-2036 {
  font-size: 1.8rem;
}
@media screen and (min-width: 960px) {
  .fz-2036 {
    font-size: 2rem;
  }
}

.fz-2026 {
  line-height: 1.4615;
  font-size: 1em;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 960px) {
  .fz-2026 {
    line-height: 1.8;
    font-size: 26px;
  }
}

.fz-2214 {
  font-size: 1.1rem;
}
@media screen and (min-width: 960px) {
  .fz-2214 {
    font-size: 14px;
  }
}

.fz-2414 {
  font-size: 1.2rem;
}
@media screen and (min-width: 960px) {
  .fz-2414 {
    font-size: 14px;
    letter-spacing: 0.05em;
  }
}

.fz-2418 {
  font-size: 1.2rem;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .fz-2418 {
    font-size: 18px;
  }
}

.fz-2434 {
  font-size: 1.7rem;
}
@media screen and (min-width: 960px) {
  .fz-2434 {
    font-size: 2.4rem;
  }
}

.fz-2516 {
  font-size: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 1.32;
}
@media screen and (min-width: 960px) {
  .fz-2516 {
    font-size: 16px;
  }
}

.fz-2615 {
  font-size: 1.3rem;
}
@media screen and (min-width: 960px) {
  .fz-2615 {
    font-size: 15px;
  }
}

.fz-2614 {
  line-height: 1.615;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 960px) {
  .fz-2614 {
    line-height: 1.85;
    font-size: 14px;
    letter-spacing: 0.08em;
  }
}

.fz-2616 {
  font-size: 1.3rem;
  letter-spacing: 0.06em;
  line-height: 1.769;
  font-weight: 300;
}
@media screen and (min-width: 960px) {
  .fz-2616 {
    font-size: 16px;
    letter-spacing: 0.09em;
  }
}

.fz-2618 {
  font-size: 1.3rem;
}
@media screen and (min-width: 960px) {
  .fz-2618 {
    font-size: 18px;
  }
}

.fz-2428 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-2428 {
    font-size: 2.4rem;
  }
}

.fz-2620 {
  font-size: 1.3rem;
  line-height: 1.46;
}
@media screen and (min-width: 960px) {
  .fz-2620 {
    font-size: 20px;
    line-height: 1.8;
  }
}

.fz-2814 {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 1.714;
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .fz-2814 {
    font-size: 14px;
    line-height: 1.857;
    letter-spacing: 0.06em;
  }
}

.fz-2816 {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.714;
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .fz-2816 {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.09em;
  }
}

.fz-2816b {
  font-size: 1.4rem;
  letter-spacing: 0.09em;
  line-height: 1.8;
  font-weight: 600;
}
@media screen and (min-width: 960px) {
  .fz-2816b {
    font-size: 16px;
  }
}

.fz-2820 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-2820 {
    font-size: 20px;
  }
}

.fz-2822 {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .fz-2822 {
    font-size: 22px;
  }
}

.fz-2824 {
  line-height: 1.64;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .fz-2824 {
    line-height: 1.416;
    font-size: 24px;
    letter-spacing: 0.09em;
  }
}

.fz-3016 {
  font-size: 1.5rem;
  line-height: 1.4;
}
@media screen and (min-width: 960px) {
  .fz-3016 {
    font-size: 16px;
    line-height: 1.5;
  }
}

.fz-3020 {
  font-size: 1.5rem;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .fz-3020 {
    font-size: 20px;
  }
}

.fz-3022 {
  font-size: 1.5rem;
}
@media screen and (min-width: 960px) {
  .fz-3022 {
    font-size: 22px;
  }
}

.fz-3018 {
  line-height: 1.667;
  font-size: 1.5rem;
  letter-spacing: 0.09em;
}
@media screen and (min-width: 960px) {
  .fz-3018 {
    font-size: 18px;
  }
}

.fz-3216 {
  font-size: 1.6rem;
}
@media screen and (min-width: 960px) {
  .fz-3216 {
    font-size: 16px;
  }
}

.fz-3220 {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .fz-3220 {
    font-size: 20px;
    line-height: 1.4;
  }
}

.fz-3222 {
  line-height: 1.642;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .fz-3222 {
    line-height: 1.454;
    font-size: 22px;
    letter-spacing: 0;
  }
}

.fz-3224 {
  line-height: 1.56;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .fz-3224 {
    line-height: 1.41;
    font-size: 24px;
    letter-spacing: 0.09em;
  }
}

.fz-3420 {
  font-size: 1.7rem;
}
@media screen and (min-width: 960px) {
  .fz-3420 {
    font-size: 20px;
  }
}

.fz-3422 {
  font-size: 1.7rem;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .fz-3422 {
    font-size: 22px;
  }
}

.fz-3448 {
  font-size: 2.4rem;
}
@media screen and (min-width: 960px) {
  .fz-3448 {
    font-size: 34px;
  }
}

.fz-3625 {
  font-size: 1.8rem;
}
@media screen and (min-width: 960px) {
  .fz-3625 {
    font-size: 25px;
  }
}

.fz-3630 {
  font-size: 1.8rem;
  line-height: 1.556;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .fz-3630 {
    font-size: 30px;
    line-height: 1.6;
  }
}

.fz-3632 {
  font-size: 1.8rem;
  letter-spacing: 0.06em;
  line-height: 1.6;
  font-weight: 600;
}
@media screen and (min-width: 960px) {
  .fz-3632 {
    font-size: 32px;
    letter-spacing: 0.09em;
  }
}

.fz-3646 {
  line-height: 2;
  font-size: 2.3rem;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .fz-3646 {
    line-height: 2.22222222;
    font-size: 36px;
    letter-spacing: 0.1em;
  }
}

.fz-4028 {
  line-height: 1.6;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 960px) {
  .fz-4028 {
    line-height: 1.67;
    font-size: 28px;
    letter-spacing: 0.01em;
  }
}

.fz-4834 {
  font-size: 2.4rem;
  line-height: 1.208;
  letter-spacing: 0.09em;
}
@media screen and (min-width: 960px) {
  .fz-4834 {
    font-size: 34px;
  }
}

.pb7040 {
  padding-bottom: 3.5rem;
}
@media screen and (min-width: 960px) {
  .pb7040 {
    padding-bottom: 40px;
  }
}

.pb9060 {
  padding-bottom: 4.5rem;
}
@media screen and (min-width: 960px) {
  .pb9060 {
    padding-bottom: 60px;
  }
}

.pb100 {
  padding-bottom: 5rem;
}
@media screen and (min-width: 960px) {
  .pb100 {
    padding-bottom: 100px;
  }
}

.pb11060 {
  padding-bottom: 5.5rem;
}
@media screen and (min-width: 960px) {
  .pb11060 {
    padding-bottom: 60px;
  }
}

.pb130120 {
  padding-bottom: 6.5rem;
}
@media screen and (min-width: 960px) {
  .pb130120 {
    padding-bottom: 120px;
  }
}

.pb170100 {
  padding-bottom: 8.5rem;
}
@media screen and (min-width: 960px) {
  .pb170100 {
    padding-bottom: 100px;
  }
}

.pt3020 {
  padding-top: 1.5rem;
}
@media screen and (min-width: 960px) {
  .pt3020 {
    padding-top: 20px;
  }
}

.pb3020 {
  padding-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .pb3020 {
    padding-bottom: 20px;
  }
}

.pb3045 {
  padding-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .pb3045 {
    padding-bottom: 45px;
  }
}

.pb7080 {
  padding-bottom: 3.5rem;
}
@media screen and (min-width: 960px) {
  .pb7080 {
    padding-bottom: 80px;
  }
}

.pt3080 {
  padding-top: 1.5rem;
}
@media screen and (min-width: 960px) {
  .pt3080 {
    padding-top: 80px;
  }
}

.pt6038 {
  padding-top: 3rem;
}
@media screen and (min-width: 960px) {
  .pt6038 {
    padding-top: 38px;
  }
}

.pt6040 {
  padding-top: 3rem;
}
@media screen and (min-width: 960px) {
  .pt6040 {
    padding-top: 40px;
  }
}

.pt6050 {
  padding-top: 3rem;
}
@media screen and (min-width: 960px) {
  .pt6050 {
    padding-top: 50px;
  }
}

.pt90 {
  padding-top: 4.5rem;
}
@media screen and (min-width: 960px) {
  .pt90 {
    padding-top: 90px;
  }
}

.pt9060 {
  padding-top: 4.5rem;
}
@media screen and (min-width: 960px) {
  .pt9060 {
    padding-top: 60px;
  }
}

.pl4060 {
  padding-left: 2rem;
}
@media screen and (min-width: 960px) {
  .pl4060 {
    padding-left: 60px;
  }
}

.pr4060 {
  padding-right: 2rem;
}
@media screen and (min-width: 960px) {
  .pr4060 {
    padding-right: 60px;
  }
}

.mt8060 {
  margin-top: 4rem;
}
@media screen and (min-width: 960px) {
  .mt8060 {
    margin-top: 60px;
  }
}

.mb2040 {
  margin-bottom: 1rem;
}
@media screen and (min-width: 960px) {
  .mb2040 {
    margin-bottom: 40px;
  }
}

.mb2218 {
  margin-bottom: 1.1rem;
}
@media screen and (min-width: 960px) {
  .mb2218 {
    margin-bottom: 18px;
  }
}

.mb4426 {
  margin-bottom: 2.2rem;
}
@media screen and (min-width: 960px) {
  .mb4426 {
    margin-bottom: 26px;
  }
}

.mb4520 {
  margin-bottom: 2.25rem;
}
@media screen and (min-width: 960px) {
  .mb4520 {
    margin-bottom: 20px;
  }
}

.mb4020 {
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .mb4020 {
    margin-bottom: 20px;
  }
}

.mb4025 {
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .mb4025 {
    margin-bottom: 25px;
  }
}

.mb4030 {
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .mb4030 {
    margin-bottom: 30px;
  }
}

.mb5030 {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 960px) {
  .mb5030 {
    margin-bottom: 30px;
  }
}

.mb5040 {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 960px) {
  .mb5040 {
    margin-bottom: 40px;
  }
}

.mb6050 {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .mb6050 {
    margin-bottom: 50px;
  }
}

.mb90 {
  margin-bottom: 4.5rem;
}
@media screen and (min-width: 960px) {
  .mb90 {
    margin-bottom: 90px;
  }
}

.mb9070 {
  margin-bottom: 4.5rem;
}
@media screen and (min-width: 960px) {
  .mb9070 {
    margin-bottom: 70px;
  }
}

.mb0040 {
  margin-bottom: 0;
}
@media screen and (min-width: 960px) {
  .mb0040 {
    margin-bottom: 40px;
  }
}

.mb3020 {
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .mb3020 {
    margin-bottom: 20px;
  }
}

.mb3420 {
  margin-bottom: 1.7rem;
}
@media screen and (min-width: 960px) {
  .mb3420 {
    margin-bottom: 20px;
  }
}

.mb3630 {
  margin-bottom: 1.8rem;
}
@media screen and (min-width: 960px) {
  .mb3630 {
    margin-bottom: 30px;
  }
}

.mb37 {
  margin-bottom: 1.85rem;
}
@media screen and (min-width: 960px) {
  .mb37 {
    margin-bottom: 37px;
  }
}

.mb3816 {
  margin-bottom: 1.9rem;
}
@media screen and (min-width: 960px) {
  .mb3816 {
    margin-bottom: 16px;
  }
}

.mb6030 {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .mb6030 {
    margin-bottom: 30px;
  }
}

.mb6080 {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .mb6080 {
    margin-bottom: 80px;
  }
}

.mb8067 {
  margin-bottom: 4rem;
}
@media screen and (min-width: 960px) {
  .mb8067 {
    margin-bottom: 67px;
  }
}

.mb8246 {
  margin-bottom: 4.1rem;
}
@media screen and (min-width: 960px) {
  .mb8246 {
    margin-bottom: 46px;
  }
}

.mb11090 {
  margin-bottom: 5.5rem;
}
@media screen and (min-width: 960px) {
  .mb11090 {
    margin-bottom: 90px;
  }
}

.mb12080 {
  margin-bottom: 6rem;
}
@media screen and (min-width: 960px) {
  .mb12080 {
    margin-bottom: 80px;
  }
}

.icon-arrow {
  position: relative;
}
.icon-arrow::before {
  content: "";
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  border-top: 0.1rem solid #616161;
  border-right: 0.1rem solid #616161;
  transform: translateY(-50%) rotate(45deg);
}
@media screen and (min-width: 960px) {
  .icon-arrow::before {
    width: 6px;
    height: 6px;
    right: 22px;
    border-top: 1px solid #616161;
    border-right: 1px solid #616161;
  }
}

.icon-cart {
  width: 18px;
  margin-right: 18px;
}
.icon-cart img {
  margin-right: 0.6rem;
  display: inline-block;
  vertical-align: baseline;
  width: 1.3rem;
}
@media screen and (min-width: 960px) {
  .icon-cart img {
    margin-right: 12px;
    width: 16px;
  }
}

.cont_btn {
  display: block;
  max-width: 24rem;
  width: 24rem;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding: 0.9rem 0;
  border-radius: 2px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #616161;
  transition: all 0.3s;
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  .cont_btn {
    max-width: 290px;
    width: 100%;
    padding: 13px 0;
    font-size: 16px;
  }
}
.cont_btn::before {
  display: block;
  width: 0.7rem;
  height: 0.7rem;
  position: absolute;
  top: 50%;
  right: 2.15rem;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  content: "";
}
@media screen and (min-width: 960px) {
  .cont_btn::before {
    width: 6px;
    height: 6px;
    right: 22px;
  }
}

.navitopicpath_ {
  width: 100%;
  padding-bottom: 3rem;
  font-family: "NotoSansCJKjp", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 960px) {
  .navitopicpath_ {
    padding-bottom: 86px;
  }
}
.navitopicpath_ .inner {
  padding: 0 1.5rem;
}
@media screen and (min-width: 960px) {
  .navitopicpath_ .inner {
    padding: 0;
  }
}
.navitopicpath_ .navi_listWrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.navitopicpath_ .navi_listWrap li {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.09em;
}
@media screen and (min-width: 960px) {
  .navitopicpath_ .navi_listWrap li {
    font-size: 12px;
  }
}
.navitopicpath_ .navi_listWrap li:not(:last-child):after {
  content: "/";
  padding: 0 0.6rem;
  line-height: 1;
}
@media screen and (min-width: 960px) {
  .navitopicpath_ .navi_listWrap li:not(:last-child):after {
    padding: 0 8px;
  }
}
.navitopicpath_ .navi_listWrap li a {
  color: #333;
}

.acseine_activitiesBox h3 {
  font-size: 1.7rem;
  line-height: 1.58;
  font-weight: 500;
  letter-spacing: -0.02em;
  margin-bottom: 2rem;
  margin-top: 0;
}
@media screen and (min-width: 960px) {
  .acseine_activitiesBox h3 {
    font-size: 30px;
    line-height: 1.6;
    margin-bottom: 30px;
    letter-spacing: 0.06em;
  }
}
.acseine_activitiesBox .inner > div.c-pink_bg {
  padding: 4rem 2rem 6rem;
}
@media screen and (min-width: 960px) {
  .acseine_activitiesBox .inner > div.c-pink_bg {
    padding: 54px 110px 80px;
  }
}
.acseine_activitiesBox .inner > div.c-pink_bg p {
  letter-spacing: -0.04em;
  margin: 0 1.5rem 2rem;
}
@media screen and (min-width: 960px) {
  .acseine_activitiesBox .inner > div.c-pink_bg p {
    letter-spacing: 0.01em;
    margin: 0 0 27px;
  }
}

@media screen and (min-width: 960px) {
  .counseling_listBox ul {
    display: flex;
    justify-content: center;
    gap: 40px;
  }
}
.counseling_listBox li {
  width: 100%;
  font-size: 1.3rem;
  line-height: 1.46;
  letter-spacing: 0.09em;
  box-shadow: 0 5px 9.5px 0.5px rgba(51, 51, 51, 0.1);
  margin-bottom: 2rem;
  padding: 1rem;
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li {
    max-width: 310px;
    font-size: 16px;
    line-height: 1.625;
    margin-bottom: 0;
    padding: 30px;
    display: block;
  }
}
.counseling_listBox li:last-child {
  margin-bottom: 0;
}
.counseling_listBox li .counseling_listImg {
  max-width: 26.6666666667vw;
  flex-shrink: 0;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li .counseling_listImg {
    max-width: 26.6666666667vw;
    margin-bottom: 17px;
  }
}
.counseling_listBox li p {
  font-weight: 500;
  letter-spacing: 0.05em !important;
}
.counseling_listBox li .cont_btn {
  padding: 0.8rem 0 0.95rem;
  max-width: 42.6666666667vw;
  font-size: 1.2rem;
  letter-spacing: 0.09em;
  margin-top: 1rem !important;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li .cont_btn {
    padding: 10px 0;
    max-width: 100%;
    font-size: 16px;
    letter-spacing: 0.08em;
    margin-top: 13px !important;
  }
}
.counseling_listBox li .cont_btn.icon-search {
  text-align: left;
  padding-left: 0.85rem;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li .cont_btn.icon-search {
    padding-left: 30px;
  }
}
.counseling_listBox li .cont_btn.icon-search::before {
  right: 7%;
}
.counseling_listBox li .cont_btn.icon-search img {
  display: inline-block;
  width: 3.3333333333vw;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li .cont_btn.icon-search img {
    width: 25px;
    margin-right: 6px;
  }
}
.counseling_listBox li .cont_btn::before {
  right: 1.15rem;
}
@media screen and (min-width: 960px) {
  .counseling_listBox li .cont_btn::before {
    right: 21px;
  }
}

@media screen and (max-width: 959px) {
  .customerTelBox p:first-child {
    margin-bottom: 0.75rem;
  }
}
@media screen and (min-width: 960px) {
  .customerTelBox p:first-child {
    margin-right: 26px;
  }
}
.customerTelBox span {
  line-height: 1;
  font-size: 1.4rem;
  display: block;
  margin-bottom: 0.7rem;
}
@media screen and (min-width: 960px) {
  .customerTelBox span {
    font-size: 18px;
    margin-bottom: 10px;
  }
}
.customerTelBox a {
  color: #130f0d;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 960px) {
  .customerTelBox a {
    font-size: 46px;
  }
}

/*----------------------------------------------
  肌トラブルと化粧品 共通パーツ
/*----------------------------------------------*/
.troubleColumn.container {
  max-width: 100%;
}
.troubleColumn .section_intro {
  padding-bottom: 4.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .section_intro {
    padding-bottom: 90px;
  }
}
.troubleColumn .section_intro h2 {
  margin-top: 0.15rem;
  margin-bottom: 3.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .section_intro h2 {
    margin-bottom: 80px;
  }
}
.troubleColumn .c-base05_bg {
  padding: 2.75rem 0 8rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .c-base05_bg {
    padding: 62px 0 160px;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn .c-base05_bg .inner {
    max-width: 960px;
  }
}
.troubleColumn .has_imgBox div:has(img) {
  max-width: 28.5rem;
  width: 28.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .has_imgBox div:has(img) {
    max-width: 220px;
  }
}
.troubleColumn .column_pageBtn {
  max-width: 33.5rem;
  margin: 0 auto;
}
@media screen and (min-width: 960px) {
  .troubleColumn .column_pageBtn {
    max-width: 860px;
    gap: 20px;
    flex-wrap: wrap;
  }
}
.troubleColumn .column_pageBtn a {
  display: block;
  padding: 1.9rem 2.25rem;
  margin-bottom: 1.5rem;
  color: #616161;
  line-height: 1.28;
  letter-spacing: -0.01em;
  border-radius: 2px;
  border-color: #616161;
  transition: 0.6s;
}
@media screen and (min-width: 960px) {
  .troubleColumn .column_pageBtn a {
    padding: 20px 30px;
    margin-bottom: 0;
    max-width: calc((100% - 20px) / 2);
    width: 100%;
  }
}
.troubleColumn .column_pageBtn a:last-child {
  margin-bottom: 0;
}
.troubleColumn .column_pageBtn .icon-arrow::before {
  transform: translateY(-50%) rotate(135deg);
}
.troubleColumn .pageLink:hover {
  background: #616161;
  color: #fff;
}
.troubleColumn .pageLink:hover::before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.troubleColumn .pageLink .icon-arrow::before {
  transition: 0.6s;
}
.troubleColumn_contents {
  padding-top: 1rem;
  margin-bottom: 2.9rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn_contents {
    padding-top: 20px;
    margin-bottom: 66px;
  }
}
.troubleColumn_contents:last-child {
  margin-bottom: 0;
}
.troubleColumn_contents > h3 {
  margin-top: 0;
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn_contents > h3 {
    margin-bottom: 50px;
  }
}
.troubleColumn .troubleColumn_box {
  padding: 3rem 2.5rem;
  border-radius: 2px;
}
@media screen and (min-width: 960px) {
  .troubleColumn .troubleColumn_box {
    padding: 54px 8.3334%;
  }
}
.troubleColumn .troubleColumn_subTtl {
  color: #f198ae;
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .troubleColumn_subTtl {
    margin-bottom: 16px;
  }
}
.troubleColumn .troubleColumn_txtWrap p {
  margin-bottom: 2.4rem;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .troubleColumn .troubleColumn_txtWrap p {
    margin-bottom: 20px;
  }
}
.troubleColumn .troubleColumn_txtWrap p:last-child {
  margin-bottom: 0;
}
.troubleColumn .check_label {
  background-color: #fef6f4;
  position: relative;
  border-radius: 2px;
  padding: 1.05rem 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 960px) {
  .troubleColumn .check_label {
    padding: 18px 0;
  }
}
.troubleColumn .check_label span {
  background-color: #f198ae;
  color: #fff;
  min-width: 7.5rem;
  border-radius: 2px 0 2px 0;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.3rem 0;
}
@media screen and (min-width: 960px) {
  .troubleColumn .check_label span {
    min-width: 80px;
    padding: 4px 0;
  }
}
.troubleColumn .check_label p {
  text-align: center;
}
.troubleColumn .p_adjust {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .p_adjust {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn .has_imgBox {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn .has_imgBox .troubleColumn_txtWrap {
    max-width: 580px;
  }
}
.troubleColumn .fz-3630 {
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .troubleColumn .fz-3630 {
    line-height: 1.13333333;
  }
}
.troubleColumn .fz-3422 {
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 960px) {
  .troubleColumn .fz-2616 {
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn .pcTxt_miniBox {
    display: flex;
    flex-wrap: wrap;
    gap: 40px 7.5%;
  }
}
.troubleColumn .pcTxt_miniBox > div {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .pcTxt_miniBox > div {
    width: 46.25%;
    margin-bottom: 0;
  }
}
.troubleColumn .conclusion_box {
  width: 100%;
  margin: 0.5rem 0;
  padding: 2rem 1rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .conclusion_box {
    margin: 40px 0 10px;
    padding: 25px 20px;
  }
}
.troubleColumn .conclusion_box p {
  line-height: 1.334;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .troubleColumn .explanation_box {
    margin-top: 40px;
  }
}
.troubleColumn .explanation_box .explanation_ttl {
  border-color: #ccc;
  font-weight: 500;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .explanation_box .explanation_ttl {
    margin-bottom: 40px;
    padding-bottom: 10px;
  }
}
.troubleColumn .explanation_box .explanation_txtList li {
  font-size: 1.3rem;
  line-height: 1.57;
  letter-spacing: 0.05em;
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 0.6rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .explanation_box .explanation_txtList li {
    font-size: 16px;
    letter-spacing: 0.03em;
    padding-left: 18px;
    margin-bottom: 12px;
  }
}
.troubleColumn .explanation_box .explanation_txtList li:last-child {
  margin-bottom: 0;
}
.troubleColumn .explanation_box .explanation_txtList li::before {
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  background-color: #f198ae;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 0.4em;
  left: 0;
}
@media screen and (min-width: 960px) {
  .troubleColumn .explanation_box .explanation_txtList li::before {
    width: 14px;
    height: 14px;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn .explanation_box p:has(img) {
    max-width: 260px;
    width: 100%;
    margin-left: 7.5%;
    margin-top: -16px;
  }
}
.troubleColumn .indent {
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 960px) {
  .troubleColumn .troubleColumn_box p {
    margin-bottom: 20px;
  }
  .troubleColumn .troubleColumn_box p:last-child {
    margin-bottom: 0;
  }
}
.troubleColumn .accordionWrap {
  border: 1px solid #616161;
}
.troubleColumn .accordionWrap .accordion__btn {
  border-radius: 2px;
  width: 100%;
  padding: 1.85rem 0;
  font-size: 1.3rem;
  color: #616161;
  margin: 0 auto;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.1em;
  cursor: pointer;
  position: relative;
}
@media screen and (min-width: 960px) {
  .troubleColumn .accordionWrap .accordion__btn {
    width: 100%;
    padding: 17px 0;
    font-size: 16px;
    margin: 0 auto;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.09em;
  }
}
.troubleColumn .accordionWrap .accordion__btn.icon-arrow::before {
  width: 0.6rem;
  height: 0.6rem;
  right: 1.5rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .accordionWrap .accordion__btn.icon-arrow::before {
    width: 10px;
    height: 10px;
    right: 30px;
    border-top: 2px solid #616161;
    border-right: 2px solid #616161;
  }
}
.troubleColumn .accordionWrap .accordion__btn:hover {
  opacity: 0.8;
}
.troubleColumn .accordionWrap .accordion__btn.icon-arrow::before {
  transform: translateY(-50%) rotate(135deg);
}
.troubleColumn .accordionWrap .accordion__btn.active.icon-arrow::before {
  transform: translateY(-50%) rotate(-45deg);
}
.troubleColumn .accordionWrap .hidden_area {
  padding: 0.5rem 2.5rem 2rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn .accordionWrap .hidden_area {
    padding: 10px 50px 40px;
  }
}
.troubleColumn #faq .accordion__btn.mt0 {
  margin-top: 0;
}
.troubleColumn #faq .accordion__btn {
  cursor: pointer;
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  border-bottom: #616161 1px solid;
  padding-bottom: 1.25rem;
  margin: 1.75rem 0 0;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .accordion__btn {
    gap: 15px;
    padding-bottom: 15px;
    margin: 45px 0 0;
  }
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .accordion__btn:hover {
    opacity: 0.8;
  }
}
.troubleColumn #faq .accordion_q {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background: #616161;
  color: #ffffff;
  width: 3rem;
  height: 3rem;
  font-size: 1.3rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .accordion_q {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }
}
.troubleColumn #faq .icon-arrow::before {
  width: 0.6rem;
  height: 0.6rem;
  right: 0;
  top: 50%;
  border-top: 2px solid #616161;
  border-right: 2px solid #616161;
  transform: translateY(-50%) rotate(135deg);
  transition: 0.6s;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .icon-arrow::before {
    width: 10px;
    height: 10px;
    right: 22px;
  }
}
.troubleColumn #faq .active.icon-arrow::before {
  transform: translateY(-50%) rotate(-45deg);
}
.troubleColumn #faq .accordion_qTtl {
  padding-top: 0.5rem;
  max-width: 440px;
  width: 22rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .accordion_qTtl {
    padding-top: 5px;
    max-width: 680px;
    width: 100%;
  }
}
.troubleColumn #faq .hidden_area {
  padding-top: 1rem;
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .hidden_area {
    padding-top: 10px;
    margin-bottom: 40px;
  }
}
.troubleColumn #faq .fz_2820 {
  font-size: 1.4rem;
  line-height: 1.64285714;
  letter-spacing: -0.05em;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .fz_2820 {
    font-size: 20px;
    letter-spacing: 0;
  }
}
.troubleColumn #faq .fz_2616 {
  font-size: 1.3rem;
  line-height: 1.76923077;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 960px) {
  .troubleColumn #faq .fz_2616 {
    font-size: 16px;
  }
}

/*----------------------------------------------
  product_intro共通
/*----------------------------------------------*/
.product_intro {
  padding-bottom: 4rem;
}
@media screen and (min-width: 960px) {
  .product_intro {
    padding-bottom: 80px;
  }
}
.product_intro .inner {
  padding: 0 3.5rem;
  position: relative;
}
@media screen and (min-width: 960px) {
  .product_intro .inner {
    padding: 0;
    max-width: 860px;
  }
}
@media screen and (min-width: 960px) {
  .product_intro .product_introBox {
    max-width: 570px;
  }
}
.product_intro sup {
  font-size: 50%;
}
.product_intro h3 {
  color: #616161;
  margin: 0 0 2.25rem;
}
@media screen and (min-width: 960px) {
  .product_intro h3 {
    margin-bottom: 20px;
  }
}
.product_intro h3 img {
  display: inline-block;
  vertical-align: baseline;
  /* margin-right: 0.8rem; */
  margin-right: 1.6rem;
}
@media screen and (min-width: 960px) {
  .product_intro h3 img {
    /* margin-right: 10px; */
    margin-right: 20px;
  }
}
.product_intro h3 .border-bottom {
  border-color: #b0b0b0;
}
.product_intro h3 span {
  display: inline-block;
  margin-bottom: 0.55rem;
  padding-bottom: 0.2rem;
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .product_intro h3 span {
    margin-bottom: 7px;
    padding-bottom: 16px;
    line-height: 1;
  }
}
.product_intro h2 {
  color: #333;
  letter-spacing: 0.08em;
  /* line-height: 1.612; */
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .product_intro h2 {
    letter-spacing: 0.09em;
    /* line-height: 1.8; */
    margin-bottom: 23px;
  }
}
@media screen and (min-width: 960px) {
  .product_intro .product_img {
    max-width: 260px;
    position: absolute;
    top: 0;
    right: 0;
  }
}
.product_intro div > p {
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .product_intro div > p {
    margin-bottom: 16px;
    line-height: 1.875;
  }
}
.product_intro div > p:last-child {
  margin-bottom: 0;
}
.product_intro .cont_btn {
  max-width: 25rem;
  width: 25rem;
  margin: 2rem 0 0;
  text-align: left;
  background-color: #fff;
  font-size: 1.2rem;
  border: 1px solid #616161;
  color: #000;
  padding-left: 1.7rem;
  padding-right: 1.7rem;
}
@media screen and (min-width: 960px) {
  .product_intro .cont_btn {
    max-width: 300px;
    width: 100%;
    margin-top: 24px;
    font-size: 14px;
    padding-left: 26px;
    padding-right: 26px;
  }
}
.product_intro .cont_btn::before {
  border-color: #333;
}
.product_intro .cont_btn.icon-book img {
  display: inline-block;
  margin-right: 1.2rem;
  width: 2.6rem;
}
@media screen and (min-width: 960px) {
  .product_intro .cont_btn.icon-book img {
    margin-right: 15px;
    width: 30px;
  }
}

.bg_grayTtlBox {
  width: 31rem;
  margin: 0 auto 5.5rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox {
    width: 860px;
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .bg_grayTtlBoxInner {
    padding: 0 70px;
  }
}
.bg_grayTtlBox .bg_grayTtl {
  color: #616161;
  background-color: #f2f2f2;
  text-align: center;
  font-weight: bold;
  padding: 1.75rem 0;
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .bg_grayTtl {
    padding: 19px 0;
    margin-bottom: 35px;
  }
}
.bg_grayTtlBox .bg_grayTxt {
  line-height: 1.69;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .bg_grayTxt {
    line-height: 1.86;
    margin-bottom: 25px;
  }
}
.bg_grayTtlBox .column2_boxWrap {
  margin-top: 4.5rem;
  display: block;
  padding: 0 0rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .column2_boxWrap {
    display: flex;
    gap: 70px;
    padding: 0;
  }
}
.bg_grayTtlBox .column2_box {
  padding: 0 0.5rem;
  margin-bottom: 3rem;
}
.bg_grayTtlBox .column2_box:last-child {
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .column2_box:last-child {
    margin: 0;
  }
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .column2_box {
    padding: 0;
    margin-bottom: 0;
    width: 310px;
  }
}
.bg_grayTtlBox .column2_boxImg {
  margin-bottom: 1rem;
  display: block;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .column2_boxImg {
    margin-bottom: 20px;
  }
}
.bg_grayTtlBox .column2_boxTxt {
  line-height: 1.86;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .column2_boxTxt {
    line-height: 1.86;
  }
}
.bg_grayTtlBox .bg_grayTtlBoxNote {
  margin-top: 0rem;
  line-height: 1.4;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBox .bg_grayTtlBoxNote {
    margin-top: 25px;
  }
}

.series_bnrWrap {
  display: block;
  width: 33.5rem;
  margin: 5rem auto 5rem;
}
@media screen and (min-width: 960px) {
  .series_bnrWrap {
    width: 100%;
    margin-top: 75px;
  }
}
.series_bnrWrap .series_bnr {
  margin-bottom: 3rem;
  display: block;
}
@media screen and (min-width: 960px) {
  .series_bnrWrap .series_bnr {
    margin-bottom: 0;
    max-width: 415px;
    width: 100%;
  }
}
.series_bnrWrap .series_bnr img {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .series_bnrWrap {
    display: flex;
    gap: 30px;
    justify-content: center;
    margin-bottom: 110px;
  }
}

.bg_grayTtlBoxBtn {
  width: 25rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #616161;
  display: flex;
  align-items: center;
  border-radius: 2px;
  padding: 1rem 0;
  margin-top: 3.5rem;
  padding-right: 0.5rem;
}
@media screen and (min-width: 960px) {
  .bg_grayTtlBoxBtn {
    width: 300px;
    height: 50px;
    font-size: 14px;
    padding-right: 20px;
    margin-top: 35px;
  }
}

.icon-book img {
  width: 2.5rem;
  margin-right: 1rem;
}
@media screen and (min-width: 960px) {
  .icon-book img {
    width: 29px;
    margin-right: 20px;
  }
}

.series_cont {
  padding-top: 1.2rem;
  padding-bottom: 4.5rem;
}
@media screen and (min-width: 960px) {
  .series_cont {
    padding-top: 26px;
    padding-bottom: 80px;
  }
}

.series_cont .commentary_box {
  border-color: #7689b4;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_box {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.series_cont .commentary_box:not(:last-child) {
  padding-bottom: 2.1rem;
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_box:not(:last-child) {
    padding-bottom: 54px;
  }
}
.series_cont .commentary_box:not(:first-child) {
  padding-top: 2.5rem;
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_box:not(:first-child) {
    padding-top: 34px;
  }
  .series_cont .commentary_box:not(:first-child) .commentary_ttl {
    margin-bottom: 54px;
  }
}
.series_cont .commentary_ttl {
  line-height: 1.57;
  letter-spacing: 0.06em;
  color: #7787b6;
  font-weight: 600;
  margin-bottom: 1rem;
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_ttl {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_cont p:has(img) {
    max-width: 360px;
    flex-shrink: 0;
    width: 100%;
    margin-right: 5.556%;
  }
}
@media screen and (min-width: 960px) {
  .series_cont .commentary_cont .bg_grayTxt {
    margin-bottom: 0;
  }
}