@charset "UTF-8";
/*
//////////////////////////////////////////////////////////////////////////////////////////////
setting - custom property
//////////////////////////////////////////////////////////////////////////////////////////////
*/
@media screen and (min-width: 768px) {
  .underson_240430 {
    --width-primary: 140rem;
    --width-secondary: 66rem;
    --fz-text_fv_title-secondary: 2rem;
    --fz-text_fv_title-primary: 2.3rem;
    --fz-text_profile_title-writer: 1.4rem;
    --fz-text_profile_title-name: 1.8rem;
    --fz-text_profile_lead: 1.4rem;
    --fz-text_profile_contact: 1.4rem;
    --fz-text_style_recommend: 1.4rem;
    --fz-text_style_item: 1.6rem;
    --fz-text_style_title: 1.8rem;
    --fz-text_style_lead: 1.4rem;
    margin-bottom: 12rem;
  }
  .underson_240430 .c-btn_white {
    background-color: var(--color-white);
  }
}
@media screen and (max-width: 767px) {
  .lp {
    padding-bottom: calc(68*(100vw / 750));
  }
  .underson_240430 {
    --width-primary: calc(750*100vw/750);
    --width-secondary: calc(660*100vw/750);
    --fz-text_fv_title-secondary: calc(30*100vw/750);
    --fz-text_fv_title-primary: calc(40*100vw/750);
    --fz-text_profile_title-writer: calc(24*100vw/750);
    --fz-text_profile_title-name: calc(32*100vw/750);
    --fz-text_profile_lead: calc(24*100vw/750);
    --fz-text_profile_contact: calc(24*100vw/750);
    --fz-text_style_recommend: calc(21*100vw/750);
    --fz-text_style_item: calc(28*100vw/750);
    --fz-text_style_title: calc(32*100vw/750);
    --fz-text_style_lead: calc(24*100vw/750);
    margin-bottom: calc(0*100vw/750);
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
component - text
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .c-text_fv_title-secondary {
  font-size: var(--fz-text_fv_title-secondary);
  line-height: 2.4;
  letter-spacing: 0.13em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
}
.underson_240430 .c-text_fv_title-primary {
  font-size: var(--fz-text_fv_title-primary);
  line-height: 2.0869565217;
  letter-spacing: 0.13em;
  font-family: var(--font-ja);
  font-weight: var(--fw-regular);
  color: var(--color-text);
}
.underson_240430 .c-text_fv_title-primary > span {
  display: inline-block;
  font-size: var(--fz-text_fv_title-primary);
  line-height: 2.0869565217;
  letter-spacing: 0.13em;
  font-family: var(--font-en);
  font-weight: var(--fw-medium);
  color: var(--color-text);
}
.underson_240430 .c-text_profile_title-writer {
  font-size: var(--fz-text_profile_title-writer);
  line-height: 2.4285714286;
  letter-spacing: 0.05em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
  font-feature-settings: initial;
}
.underson_240430 .c-text_profile_title-name {
  font-size: var(--fz-text_profile_title-name);
  line-height: 1.8888888889;
  letter-spacing: 0.05em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
}
.underson_240430 .c-text_profile_title-name > span {
  font-size: 1.4rem;
  line-height: 2.1;
  letter-spacing: 0.05em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
}
.underson_240430 .c-text_profile_lead {
  font-size: var(--fz-text_profile_lead);
  line-height: 2;
  letter-spacing: 0.075em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
  margin-block: 1.4rem 1.6rem;
}
.underson_240430 .c-text_profile_contact {
  font-size: var(--fz-text_profile_contact);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  font-family: var(--font-en);
  font-weight: var(--fw-light);
  color: var(--color-text);
}
.underson_240430 .c-text_style_recommend {
  width: fit-content;
  display: flex;
  background-color: var(--color-text);
  padding: 0.5rem 1.3rem 0.4rem;
  font-size: var(--fz-text_style_recommend);
  line-height: 1;
  letter-spacing: 0.13em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-white);
}
.underson_240430 .c-text_style_recommend > span {
  padding-left: 0.3rem;
  font-size: var(--fz-text_style_recommend);
  line-height: 1;
  letter-spacing: 0.03em;
  font-family: var(--font-en);
  font-weight: var(--fw-regular);
  color: var(--color-white);
}
.underson_240430 .c-text_style_item {
  font-size: var(--fz-text_style_item);
  line-height: 1.625;
  letter-spacing: 0.1em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
}
.underson_240430 .c-text_style_title {
  font-size: var(--fz-text_style_title);
  line-height: 2.3333333333;
  letter-spacing: 0.05em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
  text-decoration: underline;
  text-decoration-skip-ink: none;
  text-underline-offset: 0.8rem;
  font-feature-settings: initial;
  text-decoration-color: #979797;
}
.underson_240430 .c-text_style_lead {
  font-size: var(--fz-text_style_lead);
  line-height: 2;
  letter-spacing: 0.075em;
  font-family: var(--font-ja);
  font-weight: var(--fw-medium);
  color: var(--color-text);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .underson_240430 .c-text_fv_title-secondary {
    line-height: 2.5666666667;
    letter-spacing: 0.115em;
  }
  .underson_240430 .c-text_fv_title-primary {
    line-height: 2.05;
    letter-spacing: 0.115em;
  }
  .underson_240430 .c-text_fv_title-primary > span {
    line-height: 2.05;
    letter-spacing: 0.115em;
  }
  .underson_240430 .c-text_profile_title-writer {
    line-height: 1.8;
  }
  .underson_240430 .c-text_profile_title-name {
    line-height: 1.59375;
  }
  .underson_240430 .c-text_profile_title-name > span {
    font-size: calc(24*100vw/750);
    line-height: 1.8;
  }
  .underson_240430 .c-text_profile_lead {
    margin-block: calc(26* 100vw / 750) calc(28* 100vw / 750);
    text-align: justify;
  }
  .underson_240430 .c-text_profile_contact {
    line-height: 1.4583333333;
  }
  .underson_240430 .c-text_style_recommend {
    margin-inline: auto;
    padding: calc(9* 100vw / 750) calc(25* 100vw / 750);
    letter-spacing: 0.12em;
  }
  .underson_240430 .c-text_style_item {
    line-height: 1.5714285714;
    letter-spacing: 0.125em;
  }
  .underson_240430 .c-text_style_title {
    line-height: 2.25;
    letter-spacing: 0.09em;
    text-underline-offset: calc(14*100vw/750);
    text-decoration-thickness: 1px;
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
component - image
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .c-profile_image {width: 22rem;}
.underson_240430 .c-style_image0101 {width: 30rem;}
.underson_240430 .c-style_image0201 {width: 30rem;}
.underson_240430 .c-style_image0301 {width: 42rem;}
.underson_240430 .c-style_image0302 {width: 42rem;}
.underson_240430 .c-style_image0303 {width: 42rem;}
@media screen and (max-width: 767px) {
  .underson_240430 .c-profile_image {width: calc(380*100vw/750);;}
  .underson_240430 .c-style_image0101 {width: calc(660*100vw/750);;}
  .underson_240430 .c-style_image0201 {width: calc(660*100vw/750);;}
  .underson_240430 .c-style_image0301 {width: calc(660*100vw/750);;}
  .underson_240430 .c-style_image0302 {width: calc(660*100vw/750);;}
  .underson_240430 .c-style_image0303 {width: calc(660*100vw/750);;}
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - firstview
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-firstview {
  width: 90rem;
  margin-inline: auto;
  text-align: center;
}
.underson_240430 .p-firstview_inner {
  --row: 6.5rem;
}
.underson_240430 .p-firstview_title {
  --row: 0.2rem;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-firstview {
    width: var(--width-primary);
  }
  .underson_240430 .p-firstview_inner {
    --row: calc(58*100vw/750);
  }
  .underson_240430 .p-firstview_title {
    --row: calc(0*100vw/750);
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - common
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-style_inner,
.underson_240430 .p-profile_inner {
  width: var(--width-secondary);
  margin-inline: auto;
}
.underson_240430 .p-style_text {
  --row: 1.8rem;
}
.underson_240430 .p-style_text_product {
  --row: 1rem;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-style_text {
    --row: calc(31*100vw/750);
    text-align: center;
  }
  .underson_240430 .p-style_text_product {
    --row: calc(22*100vw/750);
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - profile
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-profile {
  margin-top: 10.3rem;
}
.underson_240430 .p-profile_inner {
  position: relative;
  background-color: var(--color-button);
}
.underson_240430 .p-profile_inner::before {
  position: absolute;
  content: "PROFILE";
  font-size: 1.6rem;
  line-height: 2.625;
  letter-spacing: 0.17em;
  color: var(--color-white);
  font-family: var(--font-en);
  font-weight: var(--fw-regular);
  top: 15.7rem;
  right: -3.8rem;
  transform: rotate(90deg);
}
.underson_240430 .p-profile_wrapper {
  padding: 4rem 4.5rem 4rem 3.9rem;
  padding-block: 4rem;
  --column: 4.05rem;
}
.underson_240430 .c-profile_image {
  grid-column: 1;
}
.underson_240430 .p-profile_text {
  grid-column: 2;
  margin-top: 2.35rem;
}
.underson_240430 .p-profile_text_title {
  display: flex;
  align-items: center;
  column-gap: 0.7rem;
}
.underson_240430 .c-text_profile_title-name {
  display: flex;
  align-items: end;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-profile {
    margin-top: calc(116* 100vw / 750);
  }
  .underson_240430 .p-profile_inner::before {
    font-size: calc(38* 100vw / 750);
    line-height: 2.2105263158;
    letter-spacing: 0.2em;
    top: calc(64* 100vw / 750);
    right: calc(-96* 100vw / 750);
  }
  .underson_240430 .p-profile .p-profile_wrapper {
    padding: calc(60*100vw/750) calc(65*100vw/750) calc(55*100vw/750);
    --column: calc(0*100vw/750);
    --row: calc(51* 100vw / 750);
    justify-content: center;
  }
  .underson_240430 .c-profile_image {
    grid-column: 1;
    margin-inline: auto;
  }
  .underson_240430 .p-profile_text {
    grid-column: 1;
    margin-top: calc(0*100vw/750);
  }
  .underson_240430 .p-profile_text_title {
    column-gap: calc(12*100vw/750);
    text-align: center;
    justify-content: center;
    align-items: end;
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - style01
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-style01 {
  margin-top: 10rem;
}
.underson_240430 .p-style01 .p-style_wrapper {
  grid-template-columns: 31.5rem 30rem;
  --column: 4.5rem;
}
.underson_240430 .p-style01 .p-style_wrap01 {
  grid-column: 2;
  grid-row: 1;
}
.underson_240430 .p-style01 .p-style_wrap02 {
  grid-column: 1;
  grid-row: 1;
}
.underson_240430 .p-style01 .c-text_style_lead {
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-style01 {
    margin-top: calc(140*100vw/750);
  }
  .underson_240430 .p-style01 .p-style_wrap01 {
    margin-top: calc(0*100vw/750);
  }
  .underson_240430 .p-style01 .p-style_wrap02 {
    margin-top: calc(90*100vw/750);
  }
  .underson_240430 .p-style01 .c-text_style_lead {
    margin-top: calc(10*100vw/750);
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - style02
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-style02 {
  margin-top: 10rem;
}
.underson_240430 .p-style02 .p-style_wrapper {
  grid-template-columns: 30rem 31.5rem;
  --column: 4.5rem;
}
.underson_240430 .p-style02 .c-text_style_lead {
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-style02 {
    margin-top: calc(126*100vw/750);
  }
  .underson_240430 .p-style02 .p-style_wrapper {
    --column: calc(0*100vw/750);
  }
  .underson_240430 .p-style02 .c-text_style_lead {
    margin-top: calc(10*100vw/750);
  }
  .underson_240430 .p-style02 .p-style_wrap02 {
    margin-top: calc(60*100vw/750);
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
project - style03
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.underson_240430 .p-style03 {
  margin-block: 9.4rem 12rem;
}
.underson_240430 .p-style03 .p-style_image {
  width: 42rem;
  margin-inline: auto;
  --row: 6rem;
}
@media screen and (max-width: 767px) {
  .underson_240430 .p-style03 {
    margin-block: calc(130*100vw/750) calc(180*100vw/750);
  }
  .underson_240430 .p-style03 .p-style_image {
    width: calc(660*100vw/750);;
    --row: calc(0*100vw/750);
  }
}