.sec-start-anchor a,
.sec-wig-type .card,
.sec-wig-style .tabs-label label,
.sec-hair-problems-nav .card,
#fixed-banner,
.sec-trial-accordion .accordion,
.sec-price .tabs-label label,
.sec-price-plan .button-wrap button {
  border-radius: min(6px,  calc(6 / 960 * 100vw));
}

.sec-price .tabs-label,
.sec-wig-style .tabs-label {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(4px,  calc(4 / 960 * 100vw));
}

.sec-price .tabs-label label,
.sec-wig-style .tabs-label label {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border: 1px solid var(--color-navy);
  background: var(--color-white);
  color: var(--color-navy);
  transition: background 0.3s, color 0.3s;
  padding: min(10px,  calc(10 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
  margin-bottom: min(20px,  calc(20 / 960 * 100vw));
  font-weight: 700;
  line-height: 1.8;
  font-size: 14px;
}

.sec-price .tabs-label label,
.sec-wig-style .tabs-label label {
  transition: opacity 0.3s;
}

.sec-price-point,
.sec-wig-point {
  display: flex;
  width: 100%;
  gap: min(15px,  calc(15 / 960 * 100vw));
}

.sec-price-point .item,
.sec-wig-point .item {
  flex: 1 1 auto;
  border: 1px solid var(--color-navy);
  background: var(--color-white);
}

.sec-price-point .point,
.sec-wig-point .point {
  color: var(--color-white);
  background: var(--color-navy);
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: min(4px,  calc(4 / 960 * 100vw));
  padding: min(6px,  calc(6 / 960 * 100vw)) min(14px,  calc(14 / 960 * 100vw));
}

.sec-price-point .unit,
.sec-wig-point .unit,
.sec-price-point .no,
.sec-wig-point .no {
  line-height: 1.5;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  letter-spacing: 0;
}

.sec-price-point .unit,
.sec-wig-point .unit {
  font-size: 14px;
}

.sec-price-point .no,
.sec-wig-point .no {
  font-size: 20px;
}

.sec-price-point .content,
.sec-wig-point .content {
  color: var(--color-navy);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: min(12px,  calc(12 / 960 * 100vw));
  padding: min(16px,  calc(16 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw));
}

.sec-price-point .cause,
.sec-wig-point .cause {
  background: var(--color-bg-gray);
  padding: 0 min(8px,  calc(8 / 960 * 100vw));
}

.sec-price-graph,
.sec-wig-graph {
  border: 1px solid var(--color-navy);
  background: var(--color-white);
  display: flex;
  align-items: center;
  gap: min(48px,  calc(48 / 960 * 100vw));
  padding: min(32px,  calc(32 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-price-graph .graph,
.sec-wig-graph .graph {
  width: min(442px,  calc(442 / 960 * 100vw));
}

.sec-price-graph .texts,
.sec-wig-graph .texts {
  flex: 1;
}

.sec-price-graph .text,
.sec-wig-graph .text {
  line-height: 1.5;
  font-size: 22px;
}

.sec-price-graph .caution,
.sec-wig-graph .caution {
  margin-top: min(16px,  calc(16 / 960 * 100vw));
}

.sec-start-lead {
  display: flex;
  align-items: flex-start;
  gap: min(40px,  calc(40 / 960 * 100vw));
}

.sec-start-lead .texts {
  flex: 1;
}

.sec-start-lead .image {
  width: min(380px,  calc(380 / 960 * 100vw));
}

.sec-start-anchor {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-start-anchor a {
  overflow: hidden;
  border: 1px solid var(--color-navy);
  display: flex;
  flex-direction: column;
}

.sec-start-anchor a .no {
  text-align: center;
  color: var(--color-navy);
  font-weight: 700;
  padding: min(4px,  calc(4 / 960 * 100vw)) 0;
}

.sec-start-anchor a .text {
  position: relative;
  line-height: 1.5;
  color: var(--color-white);
  background: var(--color-navy);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
  padding: min(12px,  calc(12 / 960 * 100vw)) min(42px,  calc(42 / 960 * 100vw)) min(16px,  calc(16 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw));
  font-size: 16px;
}

.sec-start-anchor a .text::after {
  content: "";
  mask-image: url(../img/common/icon/ic_link_arrow.svg);
  mask-repeat: no-repeat;
  mask-size: contain;
  background: var(--color-white);
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  right: min(10px,  calc(10 / 960 * 100vw));
  width: min(24px,  calc(24 / 960 * 100vw));
}

.sec-start-anchor a {
  transition: opacity 0.3s;
}

.sec-start-steps {
  display: flex;
  flex-direction: column;
  gap: min(48px,  calc(48 / 960 * 100vw));
}

.sec-start-steps .step {
  position: relative;
  margin-left: auto;
  width: min(876px,  calc(876 / 960 * 100vw));
}

.sec-start-steps .step::after {
  content: "";
  background: var(--color-navy);
  aspect-ratio: 1;
  position: absolute;
  top: min(20px,  calc(20 / 960 * 100vw));
  left: max(-36px,  calc(-36 / 960 * 100vw));
  width: min(12px,  calc(12 / 960 * 100vw));
}

.sec-start-steps .step:not(:last-child)::before {
  content: "";
  width: 2px;
  background-image: repeating-linear-gradient(180deg, var(--color-navy), var(--color-navy) 2px, transparent 2px, transparent 10px);
  position: absolute;
  height: calc(100% + min(48px,  calc(48 / 960 * 100vw)));
  left: max(-31px,  calc(-31 / 960 * 100vw));
  top: min(20px,  calc(20 / 960 * 100vw));
}

.sec-start-steps .title {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--color-navy);
  gap: min(16px,  calc(16 / 960 * 100vw));
  padding: min(12px,  calc(12 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw)) min(14px,  calc(14 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw));
}

.sec-start-steps .title::before {
  content: "";
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  aspect-ratio: 1;
  background: var(--color-navy);
  position: absolute;
  top: min(25px,  calc(25 / 960 * 100vw));
  left: max(-15px,  calc(-15 / 960 * 100vw));
  width: min(16px,  calc(16 / 960 * 100vw));
}

.sec-start-steps .title .no {
  font-weight: 700;
  color: var(--color-navy);
  background: var(--color-white);
  padding: 0 min(6px,  calc(6 / 960 * 100vw));
}

.sec-start-steps .title .text {
  flex: 1;
  color: var(--color-white);
}

.sec-start-steps .content {
  background: var(--color-bg-gray);
  display: flex;
  flex-direction: column;
  gap: min(56px,  calc(56 / 960 * 100vw));
  padding: min(48px,  calc(48 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-start-steps .leads .lead {
  color: var(--color-navy);
}

.sec-start-steps .button-wrap {
  display: flex;
  flex-direction: column;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-start-steps .texts-image {
  display: flex;
  gap: min(40px,  calc(40 / 960 * 100vw));
}

.sec-start-steps .texts-image .texts {
  flex: 1;
}

.sec-start-steps .texts-image .caution {
  margin-top: min(8px,  calc(8 / 960 * 100vw));
}

.sec-start-steps .texts-image .image {
  width: min(300px,  calc(300 / 960 * 100vw));
}

.sec-start-cut .content {
  background: var(--color-bg-gray);
  display: flex;
  flex-direction: column;
  gap: min(48px,  calc(48 / 960 * 100vw));
  padding: min(48px,  calc(48 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-service-lead .images {
  display: flex;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-service-lead .data {
  flex: 1;
  border: 1px solid var(--color-navy);
  padding: min(32px,  calc(32 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw));
}

.sec-service-lead .graph {
  margin-bottom: min(20px,  calc(20 / 960 * 100vw));
}

.sec-service-lead .caution {
  color: var(--color-navy);
  margin-top: min(16px,  calc(16 / 960 * 100vw));
}

.sec-service-lead .image {
  width: min(542px,  calc(542 / 960 * 100vw));
}

.sec-wig-type {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-wig-type a {
  transition: opacity 0.3s;
}

.sec-wig-type .card {
  position: relative;
  display: flex;
  overflow: hidden;
  flex-direction: column;
  background: var(--color-bg-gray);
}

.sec-wig-type .catch {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(12px,  calc(12 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-wig-type .content {
  flex: 1;
  padding: min(20px,  calc(20 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-wig-type .type-name {
  color: var(--color-navy);
  line-height: 1.5;
  font-size: 22px;
}

.sec-wig-type .tag {
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-align: center;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-wig-type .tag li {
  border: 1px solid var(--color-text);
  padding: min(4px,  calc(4 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-wig-type .cmn-card-arrow {
  right: 0 !important;
  bottom: 0 !important;
  border-radius: min(4px,  calc(4 / 960 * 100vw)) min(4px,  calc(4 / 960 * 100vw)) min(6px,  calc(6 / 960 * 100vw)) min(4px,  calc(4 / 960 * 100vw));
}

.sec-wig-type-wrap .cmn-button-2col {
  margin-top: min(32px,  calc(32 / 960 * 100vw));
}

.sec-wig-lead .title,
.sec-extension-lead .title {
  color: var(--color-navy);
}

.sec-wig-feature {
  border: 1px solid var(--color-navy);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-wig-feature .feature-type1 .image {
  width: min(574px,  calc(574 / 960 * 100vw));
  margin: 0 auto;
}

.sec-wig-price {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-wig-price .item {
  background: var(--color-bg-gray);
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-wig-price .title {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(2px,  calc(2 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-wig-price .caution {
  color: var(--color-navy);
}

.sec-wig-style .cmn-heading:has(.tags) {
  margin-bottom: min(40px,  calc(40 / 960 * 100vw));
}

.sec-wig-style input#style1,
.sec-wig-style input#style2,
.sec-wig-style input#style3 {
  display: none;
}

.sec-wig-style #style1:checked ~ .tabs-label label[for=style1],
.sec-wig-style #style2:checked ~ .tabs-label label[for=style2],
.sec-wig-style #style3:checked ~ .tabs-label label[for=style3] {
  color: var(--color-white);
  background: var(--color-navy);
  pointer-events: none;
}

.sec-wig-style .style-panel {
  display: none;
}

.sec-wig-style #style1:checked ~ .style-panel.style1,
.sec-wig-style #style2:checked ~ .style-panel.style2,
.sec-wig-style #style3:checked ~ .style-panel.style3 {
  display: block;
}

.sec-wig-style .button-wrap {
  display: none;
}

.sec-wig-style .content {
  opacity: 1;
  display: flex;
}

.sec-wig-style input#style1-content,
.sec-wig-style input#style2-content,
.sec-wig-style input#style3-content,
.sec-wig-style input#style4-content {
  display: none;
}

.sec-extension-feature {
  border: 1px solid var(--color-navy);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-extension-feature .feature-type1 {
  display: flex;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-extension-feature .feature-type1 .texts {
  flex: 1;
}

.sec-extension-feature .feature-type1 .image {
  width: min(356px,  calc(356 / 960 * 100vw));
}

.sec-extension-feature .feature-type2 {
  background: var(--color-bg-gray);
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-extension-feature .feature-type2 .title {
  color: var(--color-navy);
}

.sec-extension-feature .feature-type2 .image {
  margin: 0 auto;
  width: min(444px,  calc(444 / 960 * 100vw));
}

.sec-extension-feature .feature-type3 {
  background: var(--color-bg-gray);
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-extension-feature .feature-type3 .title {
  color: var(--color-navy);
}

.sec-extension-feature .feature-type3 .content {
  display: flex;
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-extension-feature .feature-type3 .image {
  width: min(324px,  calc(324 / 960 * 100vw));
}

.sec-extension-feature .feature-type3 .texts {
  flex: 1;
}

.sec-extension-example {
  border: 1px solid var(--color-navy);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw)) min(60px,  calc(60 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-extension-example .image-slider {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  width: min(540px,  calc(540 / 960 * 100vw));
}

.sec-extension-example .image-slider .viewer {
  position: relative;
  width: auto;
  aspect-ratio: 1080/658;
  overflow: hidden;
  width: 100%;
  margin-bottom: min(8px,  calc(8 / 960 * 100vw));
}

.sec-extension-example .image-slider .viewer img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 1s ease;
}

.sec-extension-example .image-slider .viewer img.is-active {
  opacity: 1;
}

.sec-extension-example .image-slider .bar {
  position: relative;
  width: 100%;
  height: min(12px,  calc(12 / 960 * 100vw));
  margin-bottom: min(3px,  calc(3 / 960 * 100vw));
}

.sec-extension-example .image-slider .bar::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  background: var(--color-bg-gray);
  width: 100%;
  border-radius: min(2px,  calc(2 / 960 * 100vw));
  height: min(4px,  calc(4 / 960 * 100vw));
}

.sec-extension-example .image-slider .bar .track {
  position: absolute;
  inset: 0;
}

.sec-extension-example .image-slider .bar .handle {
  background: var(--color-navy);
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  aspect-ratio: 1;
  cursor: grab;
  touch-action: none;
  width: min(12px,  calc(12 / 960 * 100vw));
}

.sec-extension-example .image-slider .number {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  color: var(--color-navy);
  font-weight: 700;
  font-size: 12px;
}

.sec-extension-example .image-slider .number span {
  position: absolute;
  top: 0;
}

.sec-extension-example .image-slider .number span:nth-child(1) {
  left: 0;
}

.sec-extension-example .image-slider .number span:nth-child(2) {
  left: calc(20% - 0.75em);
}

.sec-extension-example .image-slider .number span:nth-child(3) {
  left: calc(40% - 0.75em);
}

.sec-extension-example .image-slider .number span:nth-child(4) {
  left: calc(60% - 1em);
}

.sec-extension-example .image-slider .number span:nth-child(5) {
  left: calc(80% - 1.5em);
}

.sec-extension-example .image-slider .number span:nth-child(6) {
  right: 0;
}

.sec-extension-price {
  background: var(--color-bg-gray);
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-cut-anchor {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-cut-anchor .item {
  background: var(--color-bg-gray);
  display: flex;
  flex-direction: column;
  gap: min(24px,  calc(24 / 960 * 100vw));
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-cut-anchor .texts {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-align: center;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-cut-anchor .title {
  color: var(--color-navy);
  font-weight: 700;
  line-height: 1.5;
  font-size: 18px;
}

.sec-cut-anchor .cmn-button .button {
  padding-top: min(16px,  calc(16 / 960 * 100vw));
  padding-bottom: min(16px,  calc(16 / 960 * 100vw));
}

.sec-cut-combinations {
  display: flex;
  flex-direction: column;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-cut-combinations .item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(40px,  calc(40 / 960 * 100vw));
}

.sec-cut-combinations .item::after {
  content: "";
  mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  aspect-ratio: 1;
  width: min(28px,  calc(28 / 960 * 100vw));
}

.sec-cut-combinations .menu {
  color: var(--color-navy);
  background: var(--color-white);
  font-weight: 700;
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw));
}

.sec-cut-feature {
  border: 1px solid var(--color-navy);
  background: var(--color-white);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-cut-feature .feature-type1 {
  background: var(--color-bg-gray);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-cut-feature .feature-type1 .title {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 {
  background: var(--color-bg-gray);
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .lead {
  color: var(--color-navy);
  text-align: center;
}

.sec-cut-feature .feature-type2 .items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(62px,  calc(62 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .items .item:first-child {
  position: relative;
}

.sec-cut-feature .feature-type2 .items .item:first-child::after {
  content: "";
  mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: max(-56px,  calc(-56 / 960 * 100vw));
  aspect-ratio: 1;
  width: min(50px,  calc(50 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .title {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .steps > div {
  display: flex;
  align-items: flex-start;
  gap: min(15px,  calc(15 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .steps dt {
  color: var(--color-white);
  background: var(--color-navy);
  padding: 0 min(6px,  calc(6 / 960 * 100vw));
}

.sec-cut-feature .feature-type2 .steps dd {
  flex: 1;
}

.sec-cut-feature .feature-type3 {
  background: var(--color-bg-gray);
  padding: min(32px,  calc(32 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .lead {
  color: var(--color-navy);
  text-align: center;
}

.sec-cut-feature .feature-type3 .title {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .steps > div {
  display: flex;
  align-items: flex-start;
  gap: min(15px,  calc(15 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .steps dt {
  display: flex;
  align-items: center;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .steps dt .no {
  color: var(--color-white);
  background: var(--color-navy);
  padding: 0 min(6px,  calc(6 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .steps dt .content {
  color: var(--color-navy);
}

.sec-cut-feature .feature-type3 .steps dd {
  flex: 1;
  display: flex;
  gap: min(15px,  calc(15 / 960 * 100vw));
}

.sec-cut-feature .feature-type3 .steps dd .text {
  flex: 1;
}

.sec-cut-feature .feature-type3 .steps dd .image {
  width: min(247px,  calc(247 / 960 * 100vw));
}

.sec-cut-price {
  border: 1px solid var(--color-navy);
  background: var(--color-white);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-cut-price .table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.sec-cut-price .table th,
.sec-cut-price .table td {
  padding: min(12px,  calc(12 / 960 * 100vw));
}

.sec-cut-price .table th {
  text-align: center;
  font-weight: 700;
  color: var(--color-white);
  background: var(--color-table-gray);
}

.sec-cut-price .table td {
  color: var(--color-navy);
  background: var(--color-bg-gray);
}

.sec-cut-price .price {
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
  gap: min(10px,  calc(10 / 960 * 100vw));
}

.cmn-bg-navy .sec-hair-problems-lead {
  color: var(--color-white);
}

.sec-hair-problems-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-hair-problems-nav .card {
  position: relative;
  background: var(--color-white);
  padding: min(20px,  calc(20 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

.sec-hair-problems-nav .title {
  position: relative;
  display: flex;
  align-items: center;
  gap: min(20px,  calc(20 / 960 * 100vw));
  padding-bottom: min(18px,  calc(18 / 960 * 100vw));
}

.sec-hair-problems-nav .title::after {
  --percent: 8.1%;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 100%;
  background: linear-gradient(90deg, var(--color-navy) 0%, var(--color-navy) var(--percent), var(--color-line-purple) var(--percent), var(--color-line-purple) 100%);
}

.sec-hair-problems-nav .title .text {
  flex: 1;
  color: var(--color-navy);
}

.sec-hair-problems-nav .title .icon {
  width: min(76px,  calc(76 / 960 * 100vw));
}

.sec-hair-problems-nav a {
  transition: opacity 0.3s;
}

.sec-hair-problems-anchor.anchor-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-hair-problems-anchor .item {
  background: var(--color-white);
}

.sec-hair-problems-anchor .title {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(16px,  calc(16 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-hair-problems-anchor .content {
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-hair-problems-anchor .texts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-hair-problems-anchor .texts li {
  display: flex;
  gap: min(12px,  calc(12 / 960 * 100vw));
}

.sec-hair-problems-anchor .texts li::before {
  content: "";
  flex-shrink: 0;
  mask: url(../img/common/icon/ic_link_check.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  aspect-ratio: 1;
  width: min(24px,  calc(24 / 960 * 100vw));
  margin-top: min(3px,  calc(3 / 960 * 100vw));
}

.sec-hair-problems-anchor.anchor-2col .texts {
  grid-template-columns: 1fr;
}

.sec-hair-problems-anchor .cmn-button .button {
  max-width: min(500px,  calc(500 / 960 * 100vw));
}

.cmn-container:has(.sec-hair-problems-qa.with-bg) {
  padding-top: 0;
}

.sec-hair-problems-qa.with-bg {
  position: relative;
  z-index: 1;
}

.sec-hair-problems-qa.with-bg::before {
  content: "";
  background: var(--color-navy);
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: min(70px,  calc(70 / 960 * 100vw));
}

.sec-hair-problems-qa .qa {
  background: var(--color-bg-gray);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(120px,  calc(120 / 960 * 100vw)) min(64px,  calc(64 / 960 * 100vw)) min(120px,  calc(120 / 960 * 100vw));
}

.sec-hair-problems-qa .title {
  display: flex;
  align-items: flex-start;
  color: var(--color-navy);
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-hair-problems-qa .title::before {
  content: "Q";
  flex-shrink: 0;
  color: var(--color-white);
  background: var(--color-navy);
  display: flex;
  justify-content: center;
  aspect-ratio: 1;
  width: min(32px,  calc(32 / 960 * 100vw));
  font-size: 18px;
}

.sec-hair-problems-qa .answer {
  background: var(--color-white);
  display: flex;
  align-items: flex-start;
  gap: min(20px,  calc(20 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-hair-problems-qa .image {
  aspect-ratio: 1;
  width: min(50px,  calc(50 / 960 * 100vw));
}

.sec-hair-problems-qa .text {
  flex: 1;
}

.sec-hair-problems-qa .text strong {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: var(--color-orange);
}

#fixed-banner {
  position: fixed;
  z-index: 9000;
  transform: translateZ(0);
  color: var(--color-navy);
  background: var(--color-white);
  filter: drop-shadow(0 0 min(20px,  calc(20 / 960 * 100vw)) rgba(10, 0, 86, 0.2));
  bottom: min(20px,  calc(20 / 960 * 100vw));
  right: min(20px,  calc(20 / 960 * 100vw));
  padding: min(16px,  calc(16 / 960 * 100vw)) 0 min(18px,  calc(18 / 960 * 100vw)) 0;
}

#fixed-banner .initial {
  display: flex;
  align-items: center;
  gap: min(16px,  calc(16 / 960 * 100vw));
  padding: 0 min(16px,  calc(16 / 960 * 100vw)) 0 min(56px,  calc(56 / 960 * 100vw));
}

#fixed-banner .open {
  flex: 1;
  display: flex;
  justify-content: center;
}

#fixed-banner .open span {
  font-weight: 700;
}

#fixed-banner .close {
  mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  aspect-ratio: 1;
  transform: rotate(45deg);
  width: min(30px,  calc(30 / 960 * 100vw));
}

#fixed-banner .expansion {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s;
}

#fixed-banner .expansion .inner {
  display: flex;
  flex-direction: column;
  gap: min(12px,  calc(12 / 960 * 100vw));
  padding: min(20px,  calc(20 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) 0 min(24px,  calc(24 / 960 * 100vw));
}

#fixed-banner.is-open .expansion {
  max-height: min(250px,  calc(250 / 960 * 100vw));
}

.sec-trial-accordion {
  display: flex;
  flex-direction: column;
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-trial-accordion .accordion {
  overflow: hidden;
}

.sec-trial-accordion .accordion .summary .icon::after {
  transition: transform 0.3s;
}

.sec-trial-accordion .accordion .detail {
  height: 0;
  overflow: hidden;
}

.sec-trial-accordion .accordion[data-open=true] .summary .icon::after {
  transform: translate(-50%, -50%);
}

.sec-trial-accordion .summary {
  background: var(--color-white);
  display: flex;
  gap: min(16px,  calc(16 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-accordion .summary .texts {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.sec-trial-accordion .summary .campaign {
  color: var(--color-navy);
  background: var(--color-orange);
  font-weight: 700;
  text-align: center;
  padding: min(6px,  calc(6 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
  margin-bottom: min(16px,  calc(16 / 960 * 100vw));
  margin-right: max(-44px,  calc(-44 / 960 * 100vw));
}

.sec-trial-accordion .summary .sub-title {
  color: var(--color-navy);
}

.sec-trial-accordion .summary .title {
  color: var(--color-navy);
}

.sec-trial-accordion .summary .price-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: min(32px,  calc(32 / 960 * 100vw));
  margin-top: min(20px,  calc(20 / 960 * 100vw));
}

.sec-trial-accordion .summary .price {
  display: flex;
}

.sec-trial-accordion .summary .price dt {
  color: var(--color-white);
  background: var(--color-navy);
  padding: min(4px,  calc(4 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-trial-accordion .summary .price dd {
  flex: 1;
  color: var(--color-navy);
  background: var(--color-bg-gray);
  padding: min(4px,  calc(4 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw));
}

.sec-trial-accordion .summary .icon {
  align-self: center;
  position: relative;
  aspect-ratio: 1;
  border: 1px solid var(--color-navy);
  border-radius: min(4px,  calc(4 / 960 * 100vw));
  width: min(28px,  calc(28 / 960 * 100vw));
}

.sec-trial-accordion .summary .icon::before,
.sec-trial-accordion .summary .icon::after {
  content: "";
  background: var(--color-navy);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 1px;
  width: min(12px,  calc(12 / 960 * 100vw));
}

.sec-trial-accordion .summary .icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.sec-trial-accordion .detail .accordion-tree {
  background: var(--color-white);
  padding: min(16px,  calc(16 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-accordion .detail .accordion-content {
  display: flex;
  flex-direction: column;
  gap: min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type1 {
  display: flex;
  gap: min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type1 .texts {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type1 .text {
  line-height: 1.5;
  font-size: 14px;
}

.sec-trial-accordion .detail .trial-type1 .caution li:not(:last-child) {
  margin-bottom: min(4px,  calc(4 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type1 .image {
  width: min(300px,  calc(300 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type2 {
  border: 1px solid var(--color-navy);
  display: flex;
  align-items: center;
  gap: min(40px,  calc(40 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-accordion .detail .trial-type2 .text {
  flex: 1;
  line-height: 1.5;
  font-size: 18px;
}

.sec-trial-accordion .detail .trial-type2 .image {
  width: min(455px,  calc(455 / 960 * 100vw));
}

.sec-trial-accordion .button-wrap {
  display: flex;
  justify-content: center;
}

.sec-trial-accordion .button-wrap button {
  transition: opacity 0.3s;
}

.sec-trial-accordion .button-wrap button {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color-navy);
  border: 1px solid var(--color-navy);
  line-height: 1.8;
  font-weight: 700;
  padding: min(8px,  calc(8 / 960 * 100vw)) min(16px,  calc(16 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
  border-radius: min(4px,  calc(4 / 960 * 100vw));
  gap: min(4px,  calc(4 / 960 * 100vw));
  font-size: 16px;
}

.sec-trial-accordion .button-wrap button::after {
  content: "";
  mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  aspect-ratio: 1;
  width: min(20px,  calc(20 / 960 * 100vw));
}

.sec-trial-accordion .button-wrap._only_sp {
  display: none;
}

.sec-trial-accordion .close-content::after {
  transform: rotate(45deg);
}

.sec-trial-accordion .open-content {
  pointer-events: auto;
}

.sec-trial-recommend {
  border: 1px solid var(--color-navy);
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-trial-recommend .recommend {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-trial-recommend .card {
  background: var(--color-bg-gray);
  display: flex;
  flex-direction: column;
  gap: min(16px,  calc(16 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw));
}

.sec-trial-recommend .title {
  display: flex;
  align-items: center;
  gap: min(20px,  calc(20 / 960 * 100vw));
}

.sec-trial-recommend .title .text {
  flex: 1;
  color: var(--color-navy);
}

.sec-trial-recommend .title .icon {
  width: min(50px,  calc(50 / 960 * 100vw));
}

.sec-trial-consultation {
  background: var(--color-white);
  display: flex;
  align-items: center;
}

.sec-trial-consultation .image {
  width: min(440px,  calc(440 / 960 * 100vw));
}

.sec-trial-consultation .text {
  flex: 1;
  padding: 0 min(32px,  calc(32 / 960 * 100vw));
}

#fixed-buttons {
  position: fixed;
  z-index: 9000;
  transform: translateZ(0);
  display: grid;
  grid-template-columns: 1fr;
  gap: min(6px,  calc(6 / 960 * 100vw));
  background: var(--color-white);
  filter: drop-shadow(0 0 min(20px,  calc(20 / 960 * 100vw)) rgba(10, 0, 86, 0.2));
  bottom: min(20px,  calc(20 / 960 * 100vw));
  right: min(20px,  calc(20 / 960 * 100vw));
  padding: min(16px,  calc(16 / 960 * 100vw));
}

#fixed-buttons .cmn-button .button {
  width: 100% !important;
  display: flex;
  align-items: center;
  padding: min(16px,  calc(16 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw)) min(16px,  calc(16 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

#fixed-buttons .cmn-button .button .button-content {
  flex: 1;
}

#fixed-buttons .cmn-button .button-text {
  font-size: 14px;
}

.sec-price input#wig,
.sec-price input#extension,
.sec-price input#cut {
  display: none;
}

.sec-price #wig:checked ~ .tabs-label label[for=wig],
.sec-price #extension:checked ~ .tabs-label label[for=extension],
.sec-price #cut:checked ~ .tabs-label label[for=cut] {
  color: var(--color-white);
  background: var(--color-navy);
  pointer-events: none;
}

.sec-price .price-panel {
  display: none;
}

.sec-price #wig:checked ~ .price-panel.price1,
.sec-price #extension:checked ~ .price-panel.price2,
.sec-price #cut:checked ~ .price-panel.price3 {
  display: flex;
}

.sec-price-point .item {
  border: none;
}

.sec-price-point .cause {
  padding: min(4px,  calc(4 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-price-graph {
  border: none;
  justify-content: center;
}

.sec-price-graph .graph {
  width: min(320px,  calc(320 / 960 * 100vw));
}

.sec-price-graph .texts {
  flex: initial;
}

.type-h4 {
  color: var(--color-white);
  background: var(--color-navy);
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw));
  margin-bottom: min(16px,  calc(16 / 960 * 100vw));
}

.type-h5 {
  color: var(--color-navy);
  border-bottom: 1px solid var(--color-navy);
  padding-bottom: min(10px,  calc(10 / 960 * 100vw));
  margin-bottom: min(4px,  calc(4 / 960 * 100vw));
}

.sec-price-plan {
  background: var(--color-white);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(120px,  calc(120 / 960 * 100vw));
}

.sec-price-plan hr.type-dot {
  display: block;
  height: 2px;
  border: none;
  background: repeating-linear-gradient(to right, var(--color-line-purple) 0px, var(--color-line-purple) 2px, transparent 2px, transparent 10px);
  margin: min(24px,  calc(24 / 960 * 100vw)) 0;
}

.sec-price-plan hr.type-transparent {
  display: block;
  border: none;
  margin: min(12px,  calc(12 / 960 * 100vw)) 0;
}

.sec-price-plan .price-type1.cmn-gap-ss hr.type-dot {
  margin-bottom: min(8px,  calc(8 / 960 * 100vw));
}

.sec-price-plan .price-type3 {
  display: flex;
  align-items: flex-start;
  gap: min(32px,  calc(32 / 960 * 100vw));
}

.sec-price-plan .price-type3 .texts {
  flex: 1;
}

.sec-price-plan .price-type3 .image {
  width: min(300px,  calc(300 / 960 * 100vw));
}

.sec-price-plan .price-type4 .price {
  gap: min(10px,  calc(10 / 960 * 100vw));
}

.sec-price-plan .table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.sec-price-plan .table.maintenance tr:not(:last-child) {
  border-bottom: min(4px,  calc(4 / 960 * 100vw)) solid var(--color-white);
}

.sec-price-plan .table tr.initial {
  border-bottom: min(8px,  calc(8 / 960 * 100vw)) solid var(--color-white);
}

.sec-price-plan .table tr.monthly {
  border-bottom: min(4px,  calc(4 / 960 * 100vw)) solid var(--color-white);
}

.sec-price-plan .table th {
  text-align: center;
  color: var(--color-white);
  background: var(--color-table-gray);
  padding: min(12px,  calc(12 / 960 * 100vw));
}

.sec-price-plan .table th .cmn-text-m {
  font-weight: 700;
}

.sec-price-plan .table th .cmn-text-ss {
  font-weight: 500;
}

.sec-price-plan .table th .cmn-text-m + .cmn-text-ss {
  margin-top: min(6px,  calc(6 / 960 * 100vw));
}

.sec-price-plan .table td {
  background: var(--color-bg-gray);
  padding: min(12px,  calc(12 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw));
}

.sec-price-plan .price {
  display: flex;
  justify-content: flex-end;
  align-items: last baseline;
  gap: min(2px,  calc(2 / 960 * 100vw));
}

.sec-price-plan .price.column {
  align-items: flex-end;
  flex-direction: column;
}

.sec-price-plan .price .special {
  color: var(--color-navy);
}

.sec-price-plan .price .repletion {
  text-align: right;
}

.sec-price-plan .guarantee .point {
  border: 1px solid var(--color-navy);
  display: flex;
  flex-direction: column;
}

.sec-price-plan .guarantee .title {
  color: var(--color-white);
  background: var(--color-navy);
  line-height: 1.5;
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw)) min(14px,  calc(14 / 960 * 100vw));
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  letter-spacing: 0;
  font-size: 14px;
}

.sec-price-plan .guarantee .texts {
  padding: min(16px,  calc(16 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw));
}

.sec-price-plan .guarantee .texts .text1 {
  text-align: center;
  margin-bottom: min(12px,  calc(12 / 960 * 100vw));
}

.sec-price-plan .guarantee .texts .text1 span {
  color: var(--color-navy);
  border-bottom: min(5px,  calc(5 / 960 * 100vw)) solid var(--color-orange);
}

.sec-price-plan .accordion .detail {
  height: 0;
  overflow: hidden;
}

.sec-price-plan .button-wrap {
  display: flex;
  justify-content: center;
}

.sec-price-plan .button-wrap button {
  transition: opacity 0.3s;
}

.sec-price-plan .button-wrap button {
  display: flex;
  align-items: center;
  color: var(--color-navy);
  border: 1px solid var(--color-navy);
  line-height: 1.5;
  font-weight: 700;
  width: min(428px,  calc(428 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(48px,  calc(48 / 960 * 100vw));
  gap: min(4px,  calc(4 / 960 * 100vw));
  font-size: 16px;
}

.sec-price-plan .button-wrap button span {
  flex: 1;
  text-align: center;
}

.sec-price-plan .button-wrap button::after {
  content: "";
  mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  aspect-ratio: 1;
  width: min(24px,  calc(24 / 960 * 100vw));
}

.sec-price-plan .button-wrap._only_sp {
  display: none;
}

.sec-price-plan .close-content::after {
  transform: rotate(45deg);
}

.sec-price-plan .open-content {
  pointer-events: auto;
}

.sec-price-payment {
  background: var(--color-white);
  padding: min(48px,  calc(48 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-price-payment.type-wig .profile .texts {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-price-payment.type-wig .profile .texts > dl {
  display: flex;
  flex-direction: column;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-price-payment.type-extension .profile .texts {
  flex: 1;
}

.sec-price-payment.type-extension .profile .texts > dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-price-payment .profile {
  display: flex;
  align-items: center;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-price-payment .profile .images {
  display: flex;
  align-items: center;
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-price-payment .profile .image {
  border-radius: 50%;
  aspect-ratio: 1;
  width: min(84px,  calc(84 / 960 * 100vw));
}

.sec-price-payment .profile .name {
  flex: 1;
  line-height: 1.5;
  color: var(--color-navy);
  font-size: 22px;
}

.sec-price-payment .profile .texts > dl > div {
  display: flex;
}

.sec-price-payment .profile .texts > dl > div.service dt,
.sec-price-payment .profile .texts > dl > div.plan dt {
  width: 4.8em;
}

.sec-price-payment .profile .texts > dl > div.type dt,
.sec-price-payment .profile .texts > dl > div.maintenance dt {
  width: 6.8em;
}

.sec-price-payment .profile .texts > dl dt {
  font-weight: 700;
  white-space: nowrap;
  display: flex;
  justify-content: space-between;
}

.sec-price-payment .profile .texts > dl dt::after {
  content: ":";
  display: inline-block;
  margin-left: 0.2em;
  margin-right: 0.3em;
}

.sec-price-payment .profile .texts > dl dd {
  flex: 1;
}

.sec-price-payment .payment {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(16px,  calc(16 / 960 * 100vw));
  padding-top: min(30px,  calc(30 / 960 * 100vw));
}

.sec-price-payment .payment::before {
  content: "";
  position: absolute;
  top: min(3px,  calc(3 / 960 * 100vw));
  left: 0;
  width: 100%;
  height: 2px;
  background: repeating-linear-gradient(to right, var(--color-navy), var(--color-navy) 2px, transparent 2px, transparent 10px);
}

.sec-price-payment .payment .step {
  position: relative;
  background: var(--color-bg-gray);
}

.sec-price-payment .payment .step::before {
  content: "";
  position: absolute;
  top: max(-11.5px,  calc(-11.5 / 960 * 100vw));
  left: min(8px,  calc(8 / 960 * 100vw));
  background: var(--color-navy);
  clip-path: polygon(100% 100%, 0 0, 0 100%);
  aspect-ratio: 1;
  width: min(12px,  calc(12 / 960 * 100vw));
}

.sec-price-payment .payment .step::after {
  content: "";
  position: absolute;
  top: max(-30px,  calc(-30 / 960 * 100vw));
  left: 0;
  background: var(--color-navy);
  aspect-ratio: 1;
  width: min(8px,  calc(8 / 960 * 100vw));
}

.sec-price-payment .payment .title {
  color: var(--color-white);
  background: var(--color-navy);
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
  padding: min(8px,  calc(8 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
  gap: min(16px,  calc(16 / 960 * 100vw));
}

.sec-price-payment .payment .title .month {
  display: flex;
  align-items: baseline;
}

.sec-price-payment .payment .title .no {
  line-height: 1.1;
  font-weight: 700;
  font-size: 28px;
}

.sec-price-payment .payment .title .unit {
  line-height: 1.4;
  font-weight: 700;
  font-size: 14px;
}

.sec-price-payment .payment .content {
  padding: min(16px,  calc(16 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

.sec-price-payment .payment .content .sub-title {
  color: var(--color-navy);
  border-bottom: 1px solid var(--color-line-purple);
  padding-bottom: min(6px,  calc(6 / 960 * 100vw));
}

.sec-price-payment .payment .content .table {
  border-collapse: collapse;
  width: 100%;
}

.sec-price-payment .payment .content .table.maintenance tr:not(:last-child) td {
  border-bottom: min(4px,  calc(4 / 960 * 100vw)) solid var(--color-bg-gray);
}

.sec-price-payment .payment .content .table tr.initial {
  border-bottom: min(8px,  calc(8 / 960 * 100vw)) solid var(--color-bg-gray);
}

.sec-price-payment .payment .content .table th {
  width: 8.8em;
  font-weight: 700;
  text-align: center;
  color: var(--color-white);
  background: var(--color-table-gray);
  padding: min(4px,  calc(4 / 960 * 100vw)) min(6px,  calc(6 / 960 * 100vw)) min(6px,  calc(6 / 960 * 100vw)) min(6px,  calc(6 / 960 * 100vw));
}

.sec-price-payment .payment .content .table td {
  background: var(--color-white);
  padding: min(0px,  calc(0 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw)) min(2px,  calc(2 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw));
}

.sec-price-payment .payment .content .price {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: min(2px,  calc(2 / 960 * 100vw));
}

.sec-price-payment .payment .content .price .special {
  color: var(--color-navy);
}

.sec-price-payment .payment .content .price.center {
  align-items: center;
}

.sec-price-list h3 {
  text-align: center;
  color: var(--color-navy);
}

.sec-price-list .type-h5 {
  margin-bottom: 0 !important;
}

.sec-price-list .list-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(20px,  calc(20 / 960 * 100vw));
}

.sec-price-list .table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.sec-price-list .table th,
.sec-price-list .table td {
  border: 1px solid var(--color-text);
  text-align: center;
  padding: min(8px,  calc(8 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

.sec-price-list .table th.pos-left,
.sec-price-list .table td.pos-left {
  text-align: left;
}

.sec-price-list .table th.pos-right,
.sec-price-list .table td.pos-right {
  text-align: right;
}

.sec-price-list .table th {
  font-weight: 700;
}

.sec-price-list .table th.th-type1 {
  color: var(--color-white);
  background: var(--color-navy);
  line-height: 1.2;
  font-size: 14px;
}

.sec-price-list .table th.th-type2 {
  color: var(--color-white);
  background: var(--color-table-gray);
  line-height: 1.2;
  font-size: 12px;
}

.sec-price-list .table th.th-type3 {
  color: var(--color-text);
  background: var(--color-bg-gray);
  font-weight: 500;
  line-height: 1.2;
  font-size: 12px;
}

.sec-price-list .table td .text {
  line-height: 1.2;
  font-size: 12px;
}

.sec-price-list .table td .price {
  line-height: 1.2;
  font-size: 16px;
}

.sec-price-list .table td .repletion {
  line-height: 1.2;
  font-size: 12px;
}

.sec-price-list .table td .strikethrough {
  text-decoration: line-through;
  line-height: 1.2;
  font-size: 12px;
}

.sec-price-list .box {
  text-align: center;
  border: 1px solid var(--color-text);
  padding: min(12px,  calc(12 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

.sec-price-list .caution-list {
  display: flex;
  flex-direction: column;
  gap: min(4px,  calc(4 / 960 * 100vw));
}

.sec-price-list .caution-list li {
  text-indent: -1em;
  margin-left: 1em;
}

.sec-quality {
  background: var(--color-white);
}

.sec-quality .container {
  padding: min(40px,  calc(40 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw)) min(64px,  calc(64 / 960 * 100vw)) min(80px,  calc(80 / 960 * 100vw));
}

.sec-quality .content {
  display: flex;
  gap: min(40px,  calc(40 / 960 * 100vw));
}

.sec-quality .content .texts {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: min(10px,  calc(10 / 960 * 100vw));
}

.sec-quality .content h3 {
  color: var(--color-navy);
}

.sec-quality .content .image {
  width: min(300px,  calc(300 / 960 * 100vw));
}

.sec-quality .products {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-quality .products .product {
  background: var(--color-bg-gray);
}

.sec-quality .products .texts {
  display: flex;
  flex-direction: column;
  gap: min(8px,  calc(8 / 960 * 100vw));
  padding: min(20px,  calc(20 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
}

.sec-quality .products h4 {
  color: var(--color-navy);
}

@media print, screen and (min-width: 769px) {
  .sec-trial-accordion .accordion .summary {
    cursor: pointer;
    transition: opacity 0.3s;
  }
}

@media print and (hover: hover), screen and (min-width: 769px) and (hover: hover) {
  .sec-trial-accordion .accordion .summary:hover {
    opacity: 0.6;
  }
}

@media screen and (min-width: 769px) and (-ms-high-contrast: active), screen and (min-width: 769px) and (-ms-high-contrast: none) {
  .sec-trial-accordion .accordion .summary:hover {
    opacity: 0.6;
  }
}

@media only screen and (max-width: 768.8px) {
  .sec-start-anchor a,
  .sec-wig-type .card,
  .sec-wig-style .tabs-label label,
  .sec-hair-problems-nav .card,
  #fixed-banner,
  .sec-trial-accordion .accordion,
  .sec-price .tabs-label label,
  .sec-price-plan .button-wrap button {
    border-radius: 1.6vw;
  }

  .sec-price .tabs-label,
  .sec-wig-style .tabs-label {
    gap: 0.8vw;
  }

  .sec-price .tabs-label label,
  .sec-wig-style .tabs-label label {
    font-size: 1.4rem;
  }

  .sec-price .tabs-label label,
  .sec-wig-style .tabs-label label {
    line-height: 1.5;
    padding: 3.2vw 2.1333333333vw 3.7333333333vw 2.1333333333vw;
    margin-bottom: 4.2666666667vw;
  }

  .sec-price-point,
  .sec-wig-point {
    flex-direction: column;
    gap: 4.2666666667vw;
  }

  .sec-price-point .item,
  .sec-wig-point .item {
    display: flex;
  }

  .sec-price-point .point,
  .sec-wig-point .point {
    flex-direction: column;
    gap: 0;
    align-items: center;
    padding: 4.2666666667vw 3.7333333333vw 3.2vw 3.7333333333vw;
  }

  .sec-price-point .unit,
  .sec-wig-point .unit {
    font-size: 1.4rem;
  }

  .sec-price-point .no,
  .sec-wig-point .no {
    font-size: 2rem;
  }

  .sec-price-point .content,
  .sec-wig-point .content {
    flex: 1;
    gap: 1.6vw;
    padding: 5.3333333333vw;
  }

  .sec-price-point .cause,
  .sec-wig-point .cause {
    padding: 1.0666666667vw 0;
  }

  .sec-price-point .service .cmn-hd-l,
  .sec-wig-point .service .cmn-hd-l {
    font-weight: 700;
  }

  .sec-price-graph,
  .sec-wig-graph {
    flex-direction: column;
    gap: 5.3333333333vw;
    padding: 8.5333333333vw 5.3333333333vw;
  }

  .sec-price-graph .graph,
  .sec-wig-graph .graph {
    width: auto;
  }

  .sec-price-graph .text,
  .sec-wig-graph .text {
    font-size: 1.4rem;
  }

  .sec-price-graph .text,
  .sec-wig-graph .text {
    line-height: 1.8;
  }

  .sec-price-graph .caution,
  .sec-wig-graph .caution {
    margin-top: 2.1333333333vw;
  }

  .sec-start-lead {
    flex-direction: column-reverse;
    gap: 6.4vw;
  }

  .sec-start-lead .image {
    width: auto;
  }

  .sec-start-anchor {
    grid-template-columns: 1fr;
    gap: 3.2vw;
  }

  .sec-start-anchor a {
    flex-direction: row;
    align-items: center;
  }

  .sec-start-anchor a .no {
    flex-shrink: 0;
    padding: 6.4vw 3.2vw 6.4vw 4.2666666667vw;
  }

  .sec-start-anchor a .text {
    font-size: 1.6rem;
  }

  .sec-start-anchor a .text {
    justify-content: flex-start;
    text-align: left;
    width: 100%;
    padding: 6.4vw 10.1333333333vw 6.4vw 5.3333333333vw;
  }

  .sec-start-anchor a .text::after {
    right: 2.1333333333vw;
    width: 6.4vw;
  }

  .sec-start-steps {
    gap: 12.8vw;
  }

  .sec-start-steps .step {
    width: 79.7333333333vw;
  }

  .sec-start-steps .step::after {
    top: 3.2vw;
    left: -7.4666666667vw;
    width: 2.1333333333vw;
  }

  .sec-start-steps .step:not(:last-child)::before {
    height: calc(100% + 12.8vw);
    left: -6.6666666667vw;
    top: 4vw;
  }

  .sec-start-steps .title {
    gap: 4.2666666667vw;
    padding: 4.2666666667vw 5.3333333333vw;
  }

  .sec-start-steps .title::before {
    top: 4.2666666667vw;
    left: -3.4666666667vw;
    width: 3.7333333333vw;
  }

  .sec-start-steps .title .no {
    padding: 0.5333333333vw 1.6vw;
  }

  .sec-start-steps .content {
    gap: 10.6666666667vw;
    padding: 8.5333333333vw 5.3333333333vw;
  }

  .sec-start-steps .button-wrap {
    gap: 4.2666666667vw;
  }

  .sec-start-steps .texts-image {
    flex-direction: column-reverse;
    gap: 6.4vw;
  }

  .sec-start-steps .texts-image .caution {
    margin-top: 2.1333333333vw;
  }

  .sec-start-steps .texts-image .image {
    width: auto;
  }

  .sec-start-cut .content {
    gap: 6.4vw;
    padding: 8.5333333333vw 5.3333333333vw;
  }

  .sec-service-lead .images {
    flex-direction: column;
    gap: 6.4vw;
  }

  .sec-service-lead .data {
    padding: 8.5333333333vw 5.3333333333vw;
  }

  .sec-service-lead .graph {
    margin-bottom: 5.3333333333vw;
  }

  .sec-service-lead .caution {
    margin-top: 2.1333333333vw;
  }

  .sec-service-lead .image {
    width: auto;
  }

  .sec-wig-type {
    gap: 2.9333333333vw;
  }

  .sec-wig-type .catch {
    padding: 2.1333333333vw;
  }

  .sec-wig-type .content {
    padding: 4.2666666667vw 4.2666666667vw 7.4666666667vw 4.2666666667vw;
  }

  .sec-wig-type .type-name {
    font-size: 1.8rem;
  }

  .sec-wig-type .tag {
    margin-top: auto;
    grid-template-columns: 1fr;
    gap: 1.6vw;
  }

  .sec-wig-type .tag li {
    padding: 0.5333333333vw 2.1333333333vw;
  }

  .sec-wig-type .cmn-card-arrow {
    border-radius: 1.0666666667vw 1.0666666667vw 1.6vw 1.0666666667vw;
    right: 1.0666666667vw;
    bottom: 1.0666666667vw;
    width: 4.8vw;
  }

  .sec-wig-type .cmn-card-arrow::after {
    width: 3.4666666667vw;
  }

  .sec-wig-type-wrap .cmn-button-2col {
    margin-top: 4.2666666667vw;
    grid-template-columns: 1fr 1fr;
    gap: 2.9333333333vw;
  }

  .sec-wig-type-wrap .cmn-button-2col .button {
    padding: 3.2vw 2.1333333333vw 3.2vw 6.4vw;
  }

  .sec-wig-lead .lead-price,
  .sec-extension-lead .lead-price {
    font-size: 1.4rem;
  }

  .sec-wig-feature {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-wig-feature .feature-type1 .image {
    width: auto;
  }

  .sec-wig-price {
    grid-template-columns: 1fr;
    gap: 6.4vw;
  }

  .sec-wig-price .item {
    padding: 4.2666666667vw 5.3333333333vw 6.4vw 5.3333333333vw;
  }

  .sec-wig-price .title {
    padding: 0.5333333333vw 2.1333333333vw;
  }

  .sec-wig-style .cmn-heading:has(.tags) {
    margin-bottom: 10.6666666667vw;
  }

  .sec-wig-style .content {
    max-height: 0;
    margin-bottom: -8.5333333333vw;
    overflow: hidden;
    transition: max-height 0.2s, margin-bottom 0.5s;
  }

  .sec-wig-style #style1-content:checked + .content,
  .sec-wig-style #style2-content:checked + .content,
  .sec-wig-style #style3-content:checked + .content,
  .sec-wig-style #style4-content:checked + .content {
    max-height: 266.6666666667vw;
    margin-bottom: 0;
  }

  .sec-wig-style .button-wrap {
    display: flex;
    flex-direction: column;
  }

  .sec-wig-style .open-content,
  .sec-wig-style .close-content {
    display: flex;
    align-items: center;
    gap: 1.6vw;
    border-radius: 1.6vw;
    font-size: 1.6rem;
    line-height: 1.8;
    text-align: center;
    border: 1px solid var(--color-navy);
    color: var(--color-navy);
    background: var(--color-white);
    padding: 3.2vw 2.1333333333vw 3.2vw 6.4vw;
  }

  .sec-wig-style .open-content::after,
  .sec-wig-style .close-content::after {
    content: "";
    flex-shrink: 0;
    aspect-ratio: 1;
    width: 6.4vw;
    mask: url(../img/common/icon/ic_link_plus.svg) no-repeat;
    mask-size: contain;
    background: var(--color-navy);
  }

  .sec-wig-style .open-content span,
  .sec-wig-style .close-content span {
    flex: 1;
  }

  .sec-wig-style .close-content::after {
    transform: rotate(45deg);
  }

  .sec-wig-style .close-content {
    display: none;
  }

  .sec-wig-style #style1-content:checked ~ .button-wrap[for=style1-content] .open-content,
  .sec-wig-style #style2-content:checked ~ .button-wrap[for=style2-content] .open-content,
  .sec-wig-style #style3-content:checked ~ .button-wrap[for=style3-content] .open-content,
  .sec-wig-style #style4-content:checked ~ .button-wrap[for=style4-content] .open-content {
    display: none;
  }

  .sec-wig-style #style1-content:checked ~ .button-wrap[for=style1-content] .close-content,
  .sec-wig-style #style2-content:checked ~ .button-wrap[for=style2-content] .close-content,
  .sec-wig-style #style3-content:checked ~ .button-wrap[for=style3-content] .close-content,
  .sec-wig-style #style4-content:checked ~ .button-wrap[for=style4-content] .close-content {
    display: flex;
  }

  .sec-extension-feature {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-extension-feature .feature-type1 {
    flex-direction: column-reverse;
    gap: 8.5333333333vw;
  }

  .sec-extension-feature .feature-type1 .image {
    width: auto;
  }

  .sec-extension-feature .feature-type2 {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-extension-feature .feature-type2 .image {
    width: auto;
  }

  .sec-extension-feature .feature-type3 {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-extension-feature .feature-type3 .content {
    flex-direction: column;
    gap: 6.4vw;
  }

  .sec-extension-feature .feature-type3 .image {
    width: auto;
  }

  .sec-extension-example {
    padding: 6.4vw 5.3333333333vw 10.6666666667vw 5.3333333333vw;
  }

  .sec-extension-example .image-slider {
    width: 100%;
  }

  .sec-extension-example .image-slider .viewer {
    margin-bottom: 2.1333333333vw;
  }

  .sec-extension-example .image-slider .bar {
    height: 4.8vw;
    margin-bottom: 0.8vw;
  }

  .sec-extension-example .image-slider .bar::before {
    border-radius: 0.5333333333vw;
    height: 1.0666666667vw;
  }

  .sec-extension-example .image-slider .bar .handle {
    width: 4.8vw;
  }

  .sec-extension-example .image-slider .number {
    font-size: 1.2rem;
  }

  .sec-extension-price {
    padding: 4.2666666667vw 5.3333333333vw;
  }

  .sec-cut-anchor {
    column-gap: 2.9333333333vw;
    row-gap: 10.6666666667vw;
  }

  .sec-cut-anchor .item {
    gap: 2.1333333333vw;
    background: none;
    padding: 0;
  }

  .sec-cut-anchor .texts {
    gap: 3.2vw;
    background: var(--color-bg-gray);
    padding: 5.3333333333vw 4.2666666667vw;
  }

  .sec-cut-anchor .title {
    font-size: 1.4rem;
  }

  .sec-cut-anchor .title {
    line-height: 1.8;
  }

  .sec-cut-anchor .text {
    text-align: left;
  }

  .sec-cut-anchor .cmn-button .button {
    padding-top: 3.2vw;
    padding-bottom: 4.2666666667vw;
  }

  .sec-cut-anchor .cmn-button .button .button-text {
    font-size: 1.4rem;
  }

  .sec-cut-combinations {
    gap: 4.2666666667vw;
  }

  .sec-cut-combinations .item {
    gap: 8.5333333333vw;
  }

  .sec-cut-combinations .item::after {
    width: 6.9333333333vw;
  }

  .sec-cut-combinations .menu {
    padding: 2.1333333333vw 3.2vw;
  }

  .sec-cut-feature {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-cut-feature .feature-type1 {
    grid-template-columns: 1fr;
    gap: 8.5333333333vw;
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-cut-feature .feature-type1 .title {
    padding: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type2 {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-cut-feature .feature-type2 .items {
    grid-template-columns: 1fr;
    gap: 16.5333333333vw;
  }

  .sec-cut-feature .feature-type2 .items .item:first-child::after {
    width: 13.3333333333vw;
    top: auto;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: -14.9333333333vw;
  }

  .sec-cut-feature .feature-type2 .title {
    padding: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type2 .steps > div {
    flex-direction: column;
    gap: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type2 .steps dt {
    padding: 0.5333333333vw 1.6vw;
  }

  .sec-cut-feature .feature-type3 {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-cut-feature .feature-type3 .title {
    padding: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type3 .steps > div {
    flex-direction: column;
    gap: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type3 .steps dt {
    gap: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type3 .steps dt .no {
    padding: 0.5333333333vw 1.6vw;
  }

  .sec-cut-feature .feature-type3 .steps dd {
    flex-direction: column;
    gap: 2.1333333333vw;
  }

  .sec-cut-feature .feature-type3 .steps dd .image {
    width: auto;
  }

  .sec-cut-price {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-cut-price .table th,
  .sec-cut-price .table td {
    padding: 3.2vw;
  }

  .sec-cut-price .price {
    flex-direction: column-reverse;
    align-items: flex-end;
    gap: 0;
  }

  .sec-hair-problems-nav {
    grid-template-columns: 1fr;
    gap: 8.5333333333vw;
  }

  .sec-hair-problems-nav .card {
    padding: 5.3333333333vw 5.3333333333vw 10.1333333333vw 5.3333333333vw;
  }

  .sec-hair-problems-nav .title {
    flex-direction: column;
    gap: 5.3333333333vw;
    padding-bottom: 4.2666666667vw;
  }

  .sec-hair-problems-nav .title::after {
    --percent: 10.5%;
  }

  .sec-hair-problems-nav .title .icon {
    width: 18.1333333333vw;
  }

  .sec-hair-problems-anchor.anchor-2col {
    grid-template-columns: 1fr;
    gap: 12.8vw;
  }

  .sec-hair-problems-anchor .title {
    padding: 3.2vw 5.3333333333vw;
  }

  .sec-hair-problems-anchor .content {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-hair-problems-anchor .texts {
    grid-template-columns: 1fr;
    gap: 3.2vw;
  }

  .sec-hair-problems-anchor .texts li {
    gap: 2.1333333333vw;
  }

  .sec-hair-problems-anchor .texts li::before {
    width: 5.3333333333vw;
  }

  .sec-hair-problems-anchor .cmn-button .button {
    max-width: none;
  }

  .sec-hair-problems-qa.with-bg::before {
    height: 25.6vw;
  }

  .sec-hair-problems-qa .qa {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-hair-problems-qa .title {
    gap: 3.2vw;
  }

  .sec-hair-problems-qa .title::before {
    font-size: 1.8rem;
  }

  .sec-hair-problems-qa .title::before {
    width: 8.5333333333vw;
  }

  .sec-hair-problems-qa .answer {
    gap: 3.2vw;
    padding: 4.2666666667vw;
  }

  .sec-hair-problems-qa .image {
    width: 11.2vw;
  }

  #fixed-banner {
    filter: drop-shadow(0 0 5.3333333333vw rgba(10, 0, 86, 0.2));
    width: 91.4666666667vw;
    bottom: 5.3333333333vw;
    right: 4.2666666667vw;
    padding: 4.2666666667vw 0 4.8vw 0;
  }

  #fixed-banner .initial {
    gap: 4.2666666667vw;
    padding: 0 4.2666666667vw 0 14.9333333333vw;
  }

  #fixed-banner .close {
    width: 8vw;
  }

  #fixed-banner .expansion .inner {
    gap: 4.2666666667vw;
    padding: 5.3333333333vw 6.4vw 0 6.4vw;
  }

  #fixed-banner.is-open .expansion {
    max-height: 80vw;
  }

  .sec-trial-accordion {
    gap: 4.2666666667vw;
  }

  .sec-trial-accordion .accordion .summary {
    pointer-events: none;
  }

  .sec-trial-accordion .summary {
    flex-direction: column;
    gap: 6.4vw;
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-trial-accordion .summary .campaign {
    padding: 1.6vw 2.1333333333vw;
    margin-bottom: 4.2666666667vw;
    margin-right: 0;
  }

  .sec-trial-accordion .summary .price-wrap {
    grid-template-columns: 1fr;
    gap: 6.4vw;
    margin-top: 6.4vw;
  }

  .sec-trial-accordion .summary .price dt {
    display: flex;
    align-items: center;
    padding: 1.6vw 2.1333333333vw;
  }

  .sec-trial-accordion .summary .price dd {
    font-size: 1.8rem;
    padding: 1.0666666667vw 3.2vw;
  }

  .sec-trial-accordion .detail .accordion-tree {
    padding: 0 5.3333333333vw 6.4vw 5.3333333333vw;
  }

  .sec-trial-accordion .detail .accordion-content {
    gap: 6.4vw;
  }

  .sec-trial-accordion .detail .trial-type1 {
    flex-direction: column;
    gap: 6.4vw;
  }

  .sec-trial-accordion .detail .trial-type1 .texts {
    display: contents;
  }

  .sec-trial-accordion .detail .trial-type1 .texts .text {
    order: 1;
  }

  .sec-trial-accordion .detail .trial-type1 .text {
    font-size: 1.4rem;
  }

  .sec-trial-accordion .detail .trial-type1 .text {
    line-height: 1.8;
  }

  .sec-trial-accordion .detail .trial-type1 .caution {
    order: 3;
  }

  .sec-trial-accordion .detail .trial-type1 .caution li:not(:last-child) {
    margin-bottom: 1.0666666667vw;
  }

  .sec-trial-accordion .detail .trial-type1 .image {
    width: auto;
    order: 2;
  }

  .sec-trial-accordion .detail .trial-type2 {
    align-items: flex-start;
    flex-direction: column;
    gap: 4.2666666667vw;
    padding: 4.2666666667vw 6.4vw 6.4vw 6.4vw;
  }

  .sec-trial-accordion .detail .trial-type2 .text {
    font-size: 1.4rem;
  }

  .sec-trial-accordion .detail .trial-type2 .text {
    line-height: 1.8;
  }

  .sec-trial-accordion .detail .trial-type2 .image {
    width: auto;
  }

  .sec-trial-accordion .button-wrap button {
    font-size: 1.6rem;
  }

  .sec-trial-accordion .button-wrap button {
    width: 76.5333333333vw;
    padding: 3.2vw 2.1333333333vw 3.2vw 6.4vw;
    border-radius: 1.6vw;
    gap: 1.6vw;
  }

  .sec-trial-accordion .button-wrap button span {
    flex: 1;
    text-align: center;
  }

  .sec-trial-accordion .button-wrap button::after {
    width: 6.4vw;
  }

  .sec-trial-accordion .button-wrap._only_sp {
    display: flex;
  }

  .sec-trial-accordion .button-wrap._only_sp:has(button[style="display: none;"]) {
    display: none;
  }

  .sec-trial-accordion .close-content {
    margin-top: 3.2vw;
  }

  .sec-trial-recommend {
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-trial-recommend .recommend {
    grid-template-columns: 1fr;
    gap: 4.2666666667vw;
  }

  .sec-trial-recommend .card {
    gap: 4.2666666667vw;
    padding: 6.4vw 5.3333333333vw;
  }

  .sec-trial-recommend .title {
    gap: 5.3333333333vw;
  }

  .sec-trial-recommend .title .icon {
    width: 13.3333333333vw;
  }

  .sec-trial-consultation {
    flex-direction: column;
  }

  .sec-trial-consultation .image {
    width: auto;
  }

  .sec-trial-consultation .text {
    padding: 6.4vw 5.3333333333vw;
  }

  #fixed-buttons {
    grid-template-columns: 1fr 1fr;
    gap: 1.6vw;
    filter: drop-shadow(0 0 5.3333333333vw rgba(10, 0, 86, 0.2));
    width: 100vw;
    bottom: 0;
    right: 0;
    padding: 2.1333333333vw;
  }

  #fixed-buttons .cmn-button .button {
    padding: 3.2vw 2.1333333333vw 3.2vw 6.4vw;
  }

  #fixed-buttons .cmn-button .button-text {
    font-size: 1.2rem;
  }

  .sec-price-point .content {
    gap: 3.2vw;
  }

  .sec-price-point .cause {
    padding: 1.6vw 2.1333333333vw;
  }

  .sec-price-point .cmn-hd-m {
    font-weight: 700;
    font-size: 2.8rem;
  }

  .sec-price-graph .graph {
    width: 65.8666666667vw;
  }

  .sec-price-graph .texts .cmn-text-l {
    font-size: 1.4rem;
  }

  .type-h4 {
    padding: 2.1333333333vw;
    margin-bottom: 4.2666666667vw;
  }

  .type-h5 {
    padding-bottom: 2.6666666667vw;
    margin-bottom: 1.0666666667vw;
  }

  .sec-price-plan {
    padding: 10.6666666667vw 5.3333333333vw;
  }

  .sec-price-plan hr.type-dot {
    margin: 6.4vw 0;
  }

  .sec-price-plan hr.type-transparent {
    margin: 3.2vw 0;
  }

  .sec-price-plan .price-type1.cmn-gap-ss hr.type-dot {
    margin-bottom: 2.1333333333vw;
  }

  .sec-price-plan .price-type3 {
    flex-direction: column;
    gap: 10.6666666667vw;
  }

  .sec-price-plan .price-type3 .image {
    width: auto;
  }

  .sec-price-plan .price-type4 .price {
    flex-direction: column-reverse;
    align-items: flex-end;
    gap: 0;
  }

  .sec-price-plan .table.maintenance tr:not(:last-child) {
    border-width: 1.0666666667vw;
  }

  .sec-price-plan .table tr.initial {
    border-width: 2.1333333333vw;
  }

  .sec-price-plan .table tr.monthly {
    border-width: 1.0666666667vw;
  }

  .sec-price-plan .table th {
    padding: 3.2vw;
  }

  .sec-price-plan .table th .cmn-text-ss {
    font-size: 1rem;
  }

  .sec-price-plan .table th .cmn-text-m + .cmn-text-ss {
    margin-top: 1.6vw;
  }

  .sec-price-plan .table td {
    padding: 1.6vw 2.1333333333vw;
  }

  .sec-price-plan .price {
    gap: 0.5333333333vw;
  }

  .sec-price-plan .guarantee .point {
    flex-direction: row;
  }

  .sec-price-plan .guarantee .title {
    font-size: 1.4rem;
  }

  .sec-price-plan .guarantee .title {
    padding: 2.1333333333vw 3.7333333333vw;
    display: flex;
    align-items: center;
  }

  .sec-price-plan .guarantee .texts {
    flex: 1;
    padding: 5.3333333333vw;
  }

  .sec-price-plan .guarantee .texts .text1 {
    margin-bottom: 3.2vw;
  }

  .sec-price-plan .guarantee .texts .text1 span {
    border-width: 1.3333333333vw;
  }

  .sec-price-plan .button-wrap button {
    font-size: 1.6rem;
  }

  .sec-price-plan .button-wrap button {
    width: 76.5333333333vw;
    padding: 3.2vw 2.1333333333vw 3.2vw 6.4vw;
    gap: 1.6vw;
  }

  .sec-price-plan .button-wrap button::after {
    width: 6.4vw;
  }

  .sec-price-plan .button-wrap._only_sp {
    display: flex;
  }

  .sec-price-plan .button-wrap._only_sp:has(button[style="display: none;"]) {
    display: none;
  }

  .sec-price-payment {
    padding: 10.6666666667vw 5.3333333333vw;
  }

  .sec-price-payment.type-wig .profile .texts {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .sec-price-payment.type-wig .profile .texts > dl {
    gap: 1.6vw;
  }

  .sec-price-payment.type-extension .profile .texts > dl {
    grid-template-columns: 1fr;
    gap: 1.6vw;
  }

  .sec-price-payment .profile {
    align-items: flex-start;
    gap: 5.3333333333vw;
  }

  .sec-price-payment .profile .images {
    flex-direction: column;
    gap: 2.1333333333vw;
    width: 21.3333333333vw;
  }

  .sec-price-payment .profile .image {
    width: 21.3333333333vw;
  }

  .sec-price-payment .profile .name {
    font-size: 2.2rem;
  }

  .sec-price-payment .profile .name {
    text-align: center;
  }

  .sec-price-payment .profile .texts > dl > div {
    flex-direction: column;
    gap: 0;
  }

  .sec-price-payment .profile .texts > dl > div.service dt,
  .sec-price-payment .profile .texts > dl > div.plan dt {
    width: auto;
  }

  .sec-price-payment .profile .texts > dl > div.type dt,
  .sec-price-payment .profile .texts > dl > div.maintenance dt {
    width: auto;
  }

  .sec-price-payment .profile .texts > dl dt::after {
    display: none;
  }

  .sec-price-payment .payment {
    grid-template-columns: 1fr;
    gap: 8.5333333333vw;
    padding-top: 0;
    padding-left: 7.4666666667vw;
  }

  .sec-price-payment .payment::before {
    top: 0;
    left: 0.8vw;
    width: 2px;
    height: calc(100% - 3.2vw);
    transform: translateY(3.2vw);
    background-image: repeating-linear-gradient(180deg, var(--color-navy), var(--color-navy) 2px, transparent 2px, transparent 10px);
  }

  .sec-price-payment .payment .step::before {
    top: 4.8vw;
    left: -3.0666666667vw;
    clip-path: polygon(100% 0, 0 0, 100% 100%);
    width: 3.2vw;
  }

  .sec-price-payment .payment .step::after {
    top: 3.2vw;
    left: -7.4666666667vw;
    width: 2.1333333333vw;
  }

  .sec-price-payment .payment .title {
    padding: 1.0666666667vw 4.2666666667vw;
    gap: 4.2666666667vw;
  }

  .sec-price-payment .payment .title .no {
    font-size: 3rem;
  }

  .sec-price-payment .payment .title .unit {
    font-size: 1.4rem;
  }

  .sec-price-payment .payment .content {
    padding: 4.2666666667vw 5.3333333333vw 5.3333333333vw 5.3333333333vw;
  }

  .sec-price-payment .payment .content .sub-title {
    padding-bottom: 1.6vw;
  }

  .sec-price-payment .payment .content .table.maintenance tr:not(:last-child) td {
    border-width: 1.0666666667vw;
  }

  .sec-price-payment .payment .content .table tr.initial {
    border-width: 2.1333333333vw;
  }

  .sec-price-payment .payment .content .table th {
    width: 9.5em;
    padding: 1.0666666667vw 1.6vw 1.6vw 1.6vw;
  }

  .sec-price-payment .payment .content .table td {
    padding: 0vw 3.2vw 1.0666666667vw 3.2vw;
  }

  .sec-price-payment .payment .content .price {
    gap: 0.5333333333vw;
  }

  .sec-price-payment .payment .content .price {
    align-items: flex-end;
    gap: 0;
  }

  .sec-price-list .list-2col {
    grid-template-columns: 1fr;
    gap: 6.4vw;
  }

  .sec-price-list .table.firsttime:not(:last-child) {
    margin-bottom: -4.2666666667vw;
  }

  .sec-price-list .table th,
  .sec-price-list .table td {
    padding: 2.1333333333vw;
  }

  .sec-price-list .table th.th-type1 {
    font-size: 1.4rem;
  }

  .sec-price-list .table th.th-type2 {
    font-size: 1.2rem;
  }

  .sec-price-list .table th.th-type3 {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .text {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .price {
    font-size: 1.6rem;
  }

  .sec-price-list .table td .repletion {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .strikethrough {
    font-size: 1.2rem;
  }

  .sec-price-list .box {
    padding: 3.2vw 4.2666666667vw;
  }

  .sec-price-list .caution-list {
    gap: 2.1333333333vw;
  }

  .sec-quality .container {
    padding: 8.5333333333vw 5.3333333333vw 10.6666666667vw 5.3333333333vw;
  }

  .sec-quality .content {
    flex-direction: column-reverse;
    gap: 6.4vw;
  }

  .sec-quality .content .texts {
    gap: 2.1333333333vw;
  }

  .sec-quality .content .image {
    width: auto;
  }

  .sec-quality .products {
    grid-template-columns: 1fr;
    gap: 10.6666666667vw;
  }

  .sec-quality .products .texts {
    gap: 2.6666666667vw;
    padding: 6.4vw 5.3333333333vw;
  }
}

@media screen and (min-width: 769px) and (max-width: 959.8px) {
  .sec-price .tabs-label label,
  .sec-wig-style .tabs-label label {
    font-size: 1.4rem;
  }

  .sec-price-point .unit,
  .sec-wig-point .unit {
    font-size: 1.4rem;
  }

  .sec-price-point .no,
  .sec-wig-point .no {
    font-size: 2rem;
  }

  .sec-price-graph .text,
  .sec-wig-graph .text {
    font-size: 2.2rem;
  }

  .sec-start-anchor a .text {
    font-size: 1.6rem;
  }

  .sec-wig-type .type-name {
    font-size: 2.2rem;
  }

  .sec-extension-example .image-slider .number {
    font-size: 1.2rem;
  }

  .sec-cut-anchor .title {
    font-size: 1.8rem;
  }

  .sec-hair-problems-qa .title::before {
    font-size: 1.8rem;
  }

  .sec-trial-accordion .detail .trial-type1 .text {
    font-size: 1.4rem;
  }

  .sec-trial-accordion .detail .trial-type2 .text {
    font-size: 1.8rem;
  }

  .sec-trial-accordion .button-wrap button {
    font-size: 1.6rem;
  }

  #fixed-buttons .cmn-button .button-text {
    font-size: 1.4rem;
  }

  .sec-price-plan .guarantee .title {
    font-size: 1.4rem;
  }

  .sec-price-plan .button-wrap button {
    font-size: 1.6rem;
  }

  .sec-price-payment .profile .name {
    font-size: 2.2rem;
  }

  .sec-price-payment .payment .title .no {
    font-size: 2.8rem;
  }

  .sec-price-payment .payment .title .unit {
    font-size: 1.4rem;
  }

  .sec-price-list .table th.th-type1 {
    font-size: 1.4rem;
  }

  .sec-price-list .table th.th-type2 {
    font-size: 1.2rem;
  }

  .sec-price-list .table th.th-type3 {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .text {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .price {
    font-size: 1.6rem;
  }

  .sec-price-list .table td .repletion {
    font-size: 1.2rem;
  }

  .sec-price-list .table td .strikethrough {
    font-size: 1.2rem;
  }
}

@media (hover: hover) {
  .sec-price .tabs-label label:hover,
  .sec-wig-style .tabs-label label:hover {
    opacity: 0.6;
  }

  .sec-start-anchor a:hover {
    opacity: 0.6;
  }

  .sec-wig-type a:hover {
    opacity: 0.6;
  }

  .sec-hair-problems-nav a:hover {
    opacity: 0.6;
  }

  .sec-trial-accordion .button-wrap button:hover {
    opacity: 0.6;
  }

  .sec-price-plan .button-wrap button:hover {
    opacity: 0.6;
  }
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .sec-price .tabs-label label:hover,
  .sec-wig-style .tabs-label label:hover {
    opacity: 0.6;
  }

  .sec-start-anchor a:hover {
    opacity: 0.6;
  }

  .sec-wig-type a:hover {
    opacity: 0.6;
  }

  .sec-hair-problems-nav a:hover {
    opacity: 0.6;
  }

  .sec-trial-accordion .button-wrap button:hover {
    opacity: 0.6;
  }

  .sec-price-plan .button-wrap button:hover {
    opacity: 0.6;
  }
}