/* stylelint-disable rule-empty-line-before */
/* stylelint-disable no-descending-specificity */
@media (max-width: 1399px) {
  html {
    font-size: 0.7142857143vw;
  }
}

.main-area .main-inner {
  width: initial;
  max-width: initial;
}

@media (max-width: 767px) {
  .celford_btn a {
    width: 84vw;
    margin-top: 20vw;
    margin-bottom: 20vw;
  }
}
@media (min-width: 768px) {
  .celford_btn a {
    width: 100rem;
    margin-top: 11.9rem;
    margin-bottom: 12rem;
    letter-spacing: 0.01em;
  }
}

.lp-philosophy {
  --color-primary: #000;
  --color-secondary: #507cc7;
  --color-accent: #ebf1f8;
  --color-gray: #b2b2b2;
  --color-white: #fff;
  --font-yu-mincho: "yu-mincho-pr6n", sans-serif;
  --font-garamond: "garamond-premier-pro", serif;
  --font-crimson: "Crimson Text", serif;
}
.lp-philosophy * {
  box-sizing: border-box;
  font-feature-settings: "palt";
  line-height: var(--line-height, 1);
  text-align: var(--text-align, center);
  letter-spacing: var(--letter-spacing, 0.05em);
}
.lp-philosophy a {
  display: inline-block;
}
.lp-philosophy img,
.lp-philosophy picture {
  display: block;
}
.lp-philosophy img,
.lp-philosophy svg {
  width: 100%;
  height: auto;
  image-rendering: optimizequality;
}
@media (max-width: 767px) {
  .lp-philosophy {
    --rate: 100vw / 750;
  }
  .lp-philosophy .hidden-sp {
    display: none;
  }
}
@media (min-width: 768px) {
  .lp-philosophy {
    --rate: 0.1rem;
    padding-top: calc(52 * var(--rate));
  }
  .lp-philosophy .hidden-pc {
    display: none;
  }
}
.lp-philosophy .main-visual__content {
  position: relative;
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__content {
    padding-bottom: calc(65 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__content {
    max-width: calc(660 * var(--rate));
    padding-bottom: calc(53 * var(--rate));
    margin-inline: auto;
  }
}
.lp-philosophy .main-visual__content::before {
  position: absolute;
  right: 0;
  left: 0;
  z-index: 2;
  margin-inline: auto;
  pointer-events: none;
  content: "";
  border: 1px solid var(--color-secondary);
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__content::before {
    top: calc(13 * var(--rate));
    width: calc(100% - 40 * var(--rate));
    height: calc(100% - 15 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__content::before {
    top: calc(9 * var(--rate));
    width: calc(100% - 30 * var(--rate));
    height: calc(100% - 11 * var(--rate));
  }
}
.lp-philosophy .main-visual__subtitle {
  --letter-spacing: 0.01em;
  position: relative;
  z-index: 3;
  display: inline-block;
  font-family: var(--font-garamond);
  font-weight: 400;
  background-color: var(--color-white);
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__subtitle {
    padding-inline: calc(24 * var(--rate));
    font-size: calc(34 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__subtitle {
    padding-inline: calc(13 * var(--rate));
    font-size: calc(20 * var(--rate));
  }
}
.lp-philosophy .main-visual__title {
  font-family: var(--font-garamond);
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__title {
    margin-top: calc(23 * var(--rate));
    font-size: calc(56 * var(--rate));
    --line-height: 1.25;
    --letter-spacing: 0.025em;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__title {
    margin-top: calc(25 * var(--rate));
    font-size: calc(34 * var(--rate));
    --line-height: 1.3235294118;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__image {
    margin-top: calc(16 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__image {
    margin-top: calc(19 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__description {
    margin-top: calc(48 * var(--rate));
    font-size: calc(24 * var(--rate));
    line-height: 2.2;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__description {
    margin-top: calc(53 * var(--rate));
    font-size: calc(13 * var(--rate));
    line-height: 2.1538461538;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .main-visual__video {
    margin-top: calc(119 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .main-visual__video {
    max-width: calc(800 * var(--rate));
    margin-inline: auto;
    margin-top: calc(99 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery {
    margin-top: calc(120 * var(--rate));
  }
}
.lp-philosophy .embroidery__title {
  --line-height: 1.75;
  --letter-spacing: 0.13em;
  font-family: var(--font-yu-mincho);
  font-weight: 600;
  color: var(--color-secondary);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__title {
    font-size: var(--embroidery-title, calc(40 * var(--rate)));
    --letter-spacing: 0.1em;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__title {
    font-size: var(--embroidery-title, calc(20 * var(--rate)));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__description {
    font-size: calc(24 * var(--rate));
    line-height: 2.2;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__description {
    font-size: calc(13 * var(--rate));
    line-height: 2.1538461538;
  }
}
.lp-philosophy .embroidery__intro, .lp-philosophy .embroidery__steps {
  display: grid;
  justify-content: center;
}
.lp-philosophy .embroidery__intro {
  background-color: var(--color-accent);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__intro {
    padding-block: calc(56 * var(--rate)) calc(68 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__intro {
    grid-template-rows: calc(380 * var(--rate)) calc(27 * var(--rate)) auto calc(12 * var(--rate)) auto;
    grid-template-columns: calc(92 * var(--rate)) calc(560 * var(--rate)) calc(92 * var(--rate));
    padding-block: calc(45 * var(--rate)) calc(42 * var(--rate));
    margin-top: calc(100 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__intro-heading {
    width: calc(521 * var(--rate));
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__intro-heading {
    grid-row: 1;
    grid-column: 1;
    width: calc(82 * var(--rate));
  }
}
.lp-philosophy .embroidery__intro-image {
  margin-inline: auto;
  border: 1px solid var(--color-white);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__intro-image {
    width: calc(720 * var(--rate));
    padding: calc(13 * var(--rate));
    margin-top: calc(18 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__intro-image {
    grid-row: 1;
    grid-column: 2;
    width: calc(560 * var(--rate));
    padding: calc(9 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__intro .embroidery__title {
    margin-top: calc(45 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__intro .embroidery__title {
    grid-row: 3;
    grid-column: 2;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__intro .embroidery__description {
    margin-top: calc(21 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__intro .embroidery__description {
    grid-row: 5;
    grid-column: 2;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps {
    margin-top: calc(143 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps {
    row-gap: calc(120 * var(--rate));
    margin-top: calc(120 * var(--rate));
  }
}
.lp-philosophy .embroidery__steps .embroidery-step {
  display: grid;
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step {
    justify-content: center;
  }
}
.lp-philosophy .embroidery__steps .embroidery-step__label {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: var(--font-garamond);
  font-style: italic;
  font-weight: 500;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label {
    row-gap: calc(20 * var(--rate));
    font-size: calc(50 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label {
    row-gap: calc(7 * var(--rate));
    font-size: calc(24 * var(--rate));
  }
}
.lp-philosophy .embroidery__steps .embroidery-step__label span {
  display: block;
}
.lp-philosophy .embroidery__steps .embroidery-step__label i {
  position: relative;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label i {
    width: calc(30 * var(--rate));
    height: calc(30 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label i {
    width: calc(15 * var(--rate));
    height: calc(15 * var(--rate));
  }
}
.lp-philosophy .embroidery__steps .embroidery-step__label i::before {
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  background-color: var(--color-primary);
  transform: rotate(-45deg);
  transform-origin: center;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label i::before {
    top: calc(15 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step__label i::before {
    top: calc(10 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:first-child {
    grid-template-rows: calc(30 * var(--rate)) calc(46 * var(--rate)) calc(9 * var(--rate)) calc(58 * var(--rate)) calc(16 * var(--rate)) auto;
    grid-template-columns: calc(370 * var(--rate)) calc(80 * var(--rate)) calc(480 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:first-child .embroidery-step__label {
    grid-row: 2;
    grid-column: 1;
    justify-self: center;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step:first-child .embroidery-step__image {
    margin-top: calc(30 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:first-child .embroidery-step__image {
    grid-row: 1/7;
    grid-column: 3;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:first-child .embroidery__title {
    grid-row: 4;
    grid-column: 1;
  }
}
.lp-philosophy .embroidery__steps .embroidery-step:first-child .embroidery__description {
  grid-row: 6;
  grid-column: 1;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child {
    margin-top: calc(113 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child {
    grid-template-rows: calc(65 * var(--rate)) calc(46 * var(--rate)) calc(9 * var(--rate)) calc(58 * var(--rate)) calc(16 * var(--rate)) auto calc(30 * var(--rate)) calc(480 * var(--rate));
    grid-template-columns: calc(180 * var(--rate)) calc(100 * var(--rate)) calc(100 * var(--rate)) calc(120 * var(--rate)) calc(180 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery-step__label {
    grid-row: 2;
    grid-column: 4/6;
    justify-self: center;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery-step__image:first-of-type {
    padding-inline: calc(85 * var(--rate));
    margin-top: calc(28 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery-step__image:first-of-type {
    grid-row: 1/7;
    grid-column: 1/3;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery-step__image:last-of-type {
    padding-inline: calc(35 * var(--rate));
    margin-top: calc(38 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery-step__image:last-of-type {
    grid-row: 8;
    grid-column: 2/5;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery__title {
    grid-row: 4;
    grid-column: 4/6;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery-step:last-child .embroidery__description {
    grid-row: 6;
    grid-column: 4/6;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery__title {
    margin-top: calc(8 * var(--rate));
    --embroidery-title: calc(38 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__steps .embroidery__title {
    --embroidery-title: calc(18 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__steps .embroidery__description {
    margin-top: calc(36 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product {
    margin-top: calc(175 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product {
    margin-top: calc(117 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-title {
  --line-height: 1.25;
  --letter-spacing: 0.06em;
  position: relative;
}
.lp-philosophy .embroidery__product-title > span {
  position: relative;
  display: inline-block;
  font-family: var(--font-garamond);
  background-color: var(--color-white);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-title > span {
    padding-inline: calc(20 * var(--rate));
    font-size: calc(50 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-title > span {
    padding-inline: calc(24 * var(--rate));
    font-size: calc(26 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-title::before {
  position: absolute;
  left: 0;
  width: 100%;
  content: "";
  background-color: var(--color-secondary);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-title::before {
    top: calc(27 * var(--rate));
    height: 1px;
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-title::before {
    top: calc(13 * var(--rate));
    height: 2px;
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-subtitle {
    margin-top: calc(28 * var(--rate));
    font-size: calc(28 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-subtitle {
    margin-top: calc(14 * var(--rate));
    font-size: calc(15 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-image {
  --line-height: 0;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-image {
    margin-top: calc(61 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-image {
    max-width: calc(600 * var(--rate));
    margin-inline: auto;
    margin-top: calc(30 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-price {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-price {
    column-gap: calc(40 * var(--rate));
    margin-top: calc(19 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-price {
    column-gap: calc(20 * var(--rate));
    margin-top: calc(10 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-link {
  --letter-spacing: 0.025em;
  font-family: var(--font-crimson);
  border-bottom: 1px solid var(--color-gray);
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-link {
    padding-bottom: calc(3 * var(--rate));
    font-size: calc(24 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-link {
    padding-bottom: calc(2 * var(--rate));
    font-size: calc(13 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-type {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-type {
    column-gap: calc(10 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-type {
    column-gap: calc(5 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-type--logo {
    width: calc(50 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-type--logo {
    width: calc(28 * var(--rate));
  }
}
.lp-philosophy .embroidery__product-type--tag {
  --letter-spacing: 0.025em;
  font-family: var(--font-garamond);
  font-weight: 400;
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product-type--tag {
    font-size: calc(22 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product-type--tag {
    padding-top: calc(3 * var(--rate));
    font-size: calc(11 * var(--rate));
  }
}
@media (max-width: 767px) {
  .lp-philosophy .embroidery__product .embroidery__description {
    margin-top: calc(48 * var(--rate));
  }
}
@media (min-width: 768px) {
  .lp-philosophy .embroidery__product .embroidery__description {
    margin-top: calc(23 * var(--rate));
  }
}

/*# sourceMappingURL=style.css.map */
